Comunidad de diseño web y desarrollo en internet online

Rebote con escena..

Citar            
MensajeEscrito el 22 Abr 2009 01:43 pm
Hola gente miren.. en el curso de action hicimos una vez un ejercicio donde una pelotita rebotaba con las paredes del escenario según la velocidad y el ángulo con q la tiraras.. usando startDrag y un coeficiente.. una vez le hice unas modificaciones y dejo de funcionar.. y ahora lo necesito para hacer algo similar.. si me pueden ayudar.. les agradezco ya que como estoy en cero con fisica y matem.. no tengo idea de como hacerlo xD.. este es el código que tengo por el momento y que no funca. Saludos.

es un mc "obj" con un boton dentro

el código del obj es:

Código :

onClipEvent (enterFrame) {

      //guardo pos anterior antes de mover
      posxant = _root.obj._x;
      posyant = _root.obj._y;
      
                //pongo objeto en mouse
      _root.obj._x = _root._xmouse;
      _root.obj._y = _root._ymouse;

      //guardo actual
      posxact = _root._xmouse;
      posyact = _root._ymouse;

      //calculo resta
      vectx = posxact-posxant;
      vecty = posyact-posyant;

      _root.obj._x += vectx;z
      _root.obj._y += vecty;
      
                vectx *= 0.98;
      vecty *= 0.98;
      
                if (_root.obj._x<=0 || _root.obj._x>=Stage.width) {
         vectx *= -1;
      }
      if (_root.obj._y<=0 || _root.obj._y>=Stage.height) {
         vecty *= -1;
      }
   }


y el del botón:

Código :

on(press){
   _root.arrastro=1;
}
on(release, releaseOutside){
   _root.arrastro=0;
}


Si lo prueban van a ver que pasa cualquier cosa.. y la verdad q no tengo idea de como estaba hecho antes... nose para que usaba el _root.arrastro.. tampoco está definido el Drag.. nose.. espero que me puedan ayudar gente, dependo de ustedes gracias. =(

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox
Citar            
MensajeEscrito el 22 Abr 2009 05:01 pm
bue lo resolví.. el codigo del clip tiene q quedar asi:

Código :

onClipEvent (enterFrame) {

   //guardo pos anterior antes de mover
   posxant = this._x;
   posyant = this._y;
   //guardo actual 
   posxact = _root._xmouse;
   posyact = _root._ymouse;

   this._x = 300;
   this._y = 300;
   
   if (this.apBot == 1) {

      this._x = posxant-_root._xmouse/2;
      this._y = posyant-_root._ymouse/2;


      //calculo resta
      vectx = posxact-posxant;
      vecty = posyact-posyant;

   } else {

      this._x += vectx;
      this._y += vecty;
      vectx *= 0.98;
      vecty *= 0.98;
   }
   if (_root.obj._x<=0 || _root.obj._x>=Stage.width) {
      vectx *= -1;
   }
   if (_root.obj._y<=0 || _root.obj._y>=Stage.height) {
      vecty *= -1;
   }
}


y el del botón:

Código :

on (press) {
   this.apBot = 1;
}
on (release, releaseOutside) {
   this.apBot = 0;
}


capaz q les interesa. Saludos

Por Freeki

Claber

183 de clabLevel



Genero:Masculino  

Desarrollador Web Uy

firefox

 

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