Pues tengo un problema con esta animacion que estoy haciendo con AS2 pues me dejaron en la escuela hacer un brazo mecanico que utileze las flechas de navegacion para moverlo y tomar con el algún elemento, asi que yo trate de hacer que tome un disco de una mesa y lo suelte sobre una tornamesa aqui coloque un movie clip llamado "msens" el cual se supone que cuando colisione con el movie clip "disco" empiese a escucharse la música, pero al hacer esto la música se sobre pone varias veces y se oye muy mal.
No se si alguno de ustedes me podria ayudar a resolver esto.
Gracias.
Este es el ejemplo clic aqui
Esta es mi codificacion:
Código ActionScript :
stop();
var suelo:Number = disco._y;
gravedad = 10;
elasticidad = 0.60;
//Aqui puse la funcion para la gravedad cuando se sulete el disco
function rebote(mc:MovieClip) {
if (mc._y+yvel>=suelo) {
mc._y = suelo;
yvel = -yvel;
} else {
mc._y += yvel;
}
yvel += gravedad;
yvel *= elasticidad;
}
onEnterFrame = function () {
// Estas son las teclas que utilizo para manipular el brazo mecanico
if (Key.isDown(Key.LEFT)) {
base.giro1._rotation -= 3;
} else if (Key.isDown(Key.RIGHT)) {
base.giro1._rotation += 3;
} else if (Key.isDown(Key.UP)) {
base.giro1.giro2._rotation -= 3;
} else if (Key.isDown(Key.DOWN)) {
base.giro1.giro2._rotation += 3;
} else if (Key.isDown(Key.SHIFT)) {
base.giro1.giro2.giro3._rotation -= 3;
} else if (Key.isDown(Key.CONTROL)) {
base.giro1.giro2.giro3._rotation += 3;
} else if (Key.isDown(Key.SPACE)) {
base.giro1.giro2.giro3.play();
}
if (base.giro1.giro2.giro3.sensible.hitTest(disco)) {
var punto:Object = {x:0, y:0};
base.giro1.giro2.giro3.sensible.localToGlobal(punto);
disco._x = punto.x;
disco._y = punto.y;
yvel = 0;
} else {
rebote(disco);
};
//Aqui esta el problema
//Esta es la parte de la musica
music = _root.disco.hitTest(_root.msens);
if (music == true){
var sonido = new Sound();
sonido.attachSound("music1");
sonido.start();
}
}else {
sonido.stop();
}
};
