Comunidad de diseño web y desarrollo en internet online

ayuda con arrastre de movie clip

Citar            
MensajeEscrito el 03 Jun 2009 09:28 am
Buenas,necesito ayudaaaaaaa,tengo un movie clip que lo arrastro por donde quiero y si lo suelto en una zona que no tiene colision vuelve a su posicion original,pero si paso por la zona colisionada(donde tengo otro movie clip) se situa en las coordenadas que yo le ordeno.
lo que necesito es que ademas de que se situe en las coordenadas que le indico,avance seguidamente de frame sin tener que pulsar ni actuar con nada.

graciasss


onClipEvent (load) {
var x = this._x;
var y = this._y;
}

onClipEvent (enterFrame) {
//si soltamos el rectángulo y no ha colisionado con la caja
if (this.soltar == "si") {
//aplicamos una fórmula de easing para que vuelva a su sitio
distancia_x = Math.round((Number(x)-Number(this._x))/2);
distancia_y = Math.round((Number(y)-Number(this._y))/2);
if (Math.abs(distancia_x)<=1 and Math.abs(distancia_y)<=1) {
} else {
this._x = this._x+distancia_x;
this._y = this._y+distancia_y;
}
}
}
//al presionar
on (press) {
//cambiamos el valor de la variable soltar
soltar = "no";
//y empezamoa a arrastrar el clip
startDrag(this, false);
this._parent.instancia_mc.gotoAndPlay(2);
}

//al soltar
on (release, releaseOutside) {
//dejamos de arrastrar
stopDrag();
//evaluamos si colisiona con la zona
if (this.hitTest(this._parent.destino_mc)) {
//si es asi vamos al paso 2
this._x=33
this._y=277
this.enabled=false;

} else {
//si no colisiona cambiamos el valor de la variable soltar
//para que al evento enterFrame ejecute la fórmula de easing
soltar = "si";
}
}

Por nerka

6 de clabLevel



 

msie7
Citar            
MensajeEscrito el 03 Jun 2009 09:29 am

nerka escribió:

Buenas,necesito ayudaaaaaaa,tengo un movie clip que lo arrastro por donde quiero y si lo suelto en una zona que no tiene colision vuelve a su posicion original,pero si paso por la zona colisionada(donde tengo otro movie clip) se situa en las coordenadas que yo le ordeno.
lo que necesito es que ademas de que se situe en las coordenadas que le indico,avance seguidamente de frame sin tener que pulsar ni actuar con nada.

ese es el codigo que he puesto para que actue como anteriormente os he explicado,que tendria que añadir??

graciasss


onClipEvent (load) {
var x = this._x;
var y = this._y;
}

onClipEvent (enterFrame) {
//si soltamos el rectángulo y no ha colisionado con la caja
if (this.soltar == "si") {
//aplicamos una fórmula de easing para que vuelva a su sitio
distancia_x = Math.round((Number(x)-Number(this._x))/2);
distancia_y = Math.round((Number(y)-Number(this._y))/2);
if (Math.abs(distancia_x)<=1 and Math.abs(distancia_y)<=1) {
} else {
this._x = this._x+distancia_x;
this._y = this._y+distancia_y;
}
}
}
//al presionar
on (press) {
//cambiamos el valor de la variable soltar
soltar = "no";
//y empezamoa a arrastrar el clip
startDrag(this, false);
this._parent.instancia_mc.gotoAndPlay(2);
}

//al soltar
on (release, releaseOutside) {
//dejamos de arrastrar
stopDrag();
//evaluamos si colisiona con la zona
if (this.hitTest(this._parent.destino_mc)) {
//si es asi vamos al paso 2
this._x=33
this._y=277
this.enabled=false;

} else {
//si no colisiona cambiamos el valor de la variable soltar
//para que al evento enterFrame ejecute la fórmula de easing
soltar = "si";
}
}

Por nerka

6 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.