Comunidad de diseño web y desarrollo en internet online

plataformas

Citar            
MensajeEscrito el 13 Nov 2006 02:14 pm
tengo este codigo, y me va muy bien, excepto q cuando pulso espacio solo se ve el fotograma 20y no se sigue reproduciendo asta el 25:


Código :

onClipEvent (load) { 
   var grav:Number = 0; 
   var run:Number = 5; 
   var wlk:Number = 2.5; 
   var speed:Number = run; 
   var jumpHeight:Number = 12; 
   var dbl:Number = 10; 
   var tri:Number = 10; 
   var djump:Boolean = false; 
   var tjump:Boolean = false; 
   var thro:Boolean = false; 
   var slow:Number = .7; 
   var slowspd:Number = speed/2; 
   var setspeed:Number = speed; 
   var scale:Number = _xscale; 
   var ex:Number = 5; 
   this.gotoAndStop(2); 
} 
onClipEvent (enterFrame) { 
   grav++; 
   _y += grav; 
   if (Key.isDown(65)) { 
      setspeed = wlk; 
   } else { 
      setspeed = run; 
   } 
   while (_root.ground.hitTest(_x, _y, true)) { 
      djump = false; 
      tjump = false; 
      _y--; 
      grav = 0; 
   } 
   if (_root.water.hitTest(_x, _y, true)) { 
      grav *= slow*1.25; 
      speed = slowspd; 
   } else { 
      speed = setspeed; 
   } 
   if (Key.isDown(Key.RIGHT)) { 
      _x += speed; 
      _xscale = scale; 
      if (_root.ground.hitTest(_x, _y+3, true)) { 
         this.play(); 
      } else { 
         if (djump == false) { 
            this.gotoAndStop(10); 
         } else if (tjump == false) { 
            this.gotoAndStop(11); 
         } else { 
            this.gotoAndStop(11); 
         } 
      } 
   } else if (Key.isDown(Key.LEFT)) { 
      _x -= speed; 
      _xscale = -scale; 
      if (_root.ground.hitTest(_x, _y+3, true)) { 
         this.play(); 
      } else { 
         if (djump == false) { 
            this.gotoAndStop(10); 
         } else if (tjump == false) { 
            this.gotoAndStop(11); 
         } else { 
            this.gotoAndStop(11); 
         } 
      } 
   } else { 
      if (_root.ground.hitTest(_x, _y+3, true) && !Key.isDown(68) && !Key.isDown(83)) { 
         this.gotoAndStop(1); 
      } 
   } 
   if (Key.isDown(68) && !Key.isDown(Key.UP) && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT) && !Key.isDown(83) && _root.ground.hitTest(_x, _y+3, true)) { 
      this.gotoAndStop(8); 
   } 
   if (Key.isDown(83) && !Key.isDown(Key.RIGHT) && !Key.isDown(Key.LEFT) && !Key.isDown(Key.UP) && !Key.isDown(68) && _root.ground.hitTest(_x, _y+3, true) && _currentframe != 6) { 
      this.gotoAndPlay(20); 
   } else if (Key.isDown(83) && grav>1) { 
      this.gotoAndStop(20); 
   } 
   if (Key.isDown(Key.UP) && _root.ground.hitTest(_x, _y+3, true)) { 
      grav = -jumpHeight; 
      _y -= 4; 
      this.gotoAndStop(10); 
   } else if (Key.isDown(Key.UP) && djump == false && grav>0 && tjump == false) { 
      grav = -dbl; 
      djump = true; 
      this.gotoAndStop(11); 
   } else if (Key.isDown(68) && tjump == false && grav>1) { 
      grav = -tri; 
      tjump = true; 
      this.gotoAndStop(11); 
   } 
   if (_root.ground.hitTest(_x+(_width/2)+ex, _y-(_height/2), true) || _root.ground.hitTest(_x+(_width/2)+ex, _y-(_height/6), true) || _root.ground.hitTest(_x+(_width/2)+ex, _y-_height, true)) { 
      _x -= speed; 
   } 
   if (_root.ground.hitTest(_x-(_width/2)-ex, _y-(_height/2), true) || _root.ground.hitTest(_x-(_width/2)-ex, _y-(_height/6), true) || _root.ground.hitTest(_x-(_width/2)-ex, _y-_height, true)) { 
      _x += speed; 
   } 
   if (_root.ground.hitTest(_x, _y-_height-15, true)) { 
      grav = 1; 
   } 
} 
onClipEvent (enterFrame) { 
   if (Key.isDown(Key.SPACE)) { 
      if (_root.ground.hitTest(_x, _y+3, true)) { 
         this.gotoAndPlay(20); 
      } else { 
         if (djump == false) { 
            this.gotoAndStop(10); 
         } else if (tjump == false) { 
            this.gotoAndStop(11); 
         } else { 
            this.gotoAndStop(11); 
         } 
      } 
   } 
}

Por cucaracha

16 de clabLevel



 

opera
Citar            
MensajeEscrito el 13 Nov 2006 02:33 pm
Eso es por que en el onEnterFrame tienes:

Código :

 this.gotoAndPlay(20); 

de manera que siempre te esta mandando el clip al fotograma 20 y nunca pasará al 21...
coloca la animación que quieras ver dentro de un clip en este fotograma

Por Zguillez

BOFH

10744 de clabLevel

85 tutoriales
17 articulos
3 ejemplos

Genero:Masculino   Bastard Operators From Hell Héroes Team Cristalab Editores

BCN

firefox
Citar            
MensajeEscrito el 13 Nov 2006 07:23 pm
ok muchas gracias :) :) aunq sigue igual :( :( aki dejo el archivo:

http://www.megaupload.com/es/?d=EJALVN7H

Por cucaracha

16 de clabLevel



 

opera
Citar            
MensajeEscrito el 13 Nov 2006 08:36 pm
No puedes poner dos enterframe en el clip. Yo siempre recomiendo poner todo el código en los fotogramas, pero si lo que quieres es que al pulsar space haga cosas distintas, tendrás que mirar sobre el objeto Key y sus listeners.

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 13 Nov 2006 08:51 pm
q tengo q modificar para meterlo en el fotograma???????????

Por cucaracha

16 de clabLevel



 

opera
Citar            
MensajeEscrito el 13 Nov 2006 10:04 pm
A ver, empieza por leer esto , así sabrás donde usar y no usar this. Luego el onClipEvent(enterframe){} (sólo uno, dos no funcionan) que pones será elNombreDeInstanciaDeTuClip.onEnterFrame=fuction(){}, y el onLoad lo mismo o lo pones directamente al principio, que da igual, teniendo en cuenta en qué ámbito quieres declarar cada variable.

Por Zah

BOFH

4290 de clabLevel

27 tutoriales
5 articulos

  Bastard Operators From Hell Editores

Zaragoza, España

firefox
Citar            
MensajeEscrito el 14 Nov 2006 07:31 am
ya me furula(lo e cambiao a la tecla A), pero solo se reproduce al dejarla pulsada no cuando le das solo 1 vez.

Por cucaracha

16 de clabLevel



 

opera

 

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