Comunidad de diseño web y desarrollo en internet online

CALLAR Action script!

Citar            
MensajeEscrito el 23 May 2009 08:04 pm
jeej bueno mas o menos lo q dice el titulo..

tengo codigo en el primer fotograma de un layer llamado AS 3.0 MAIN.. estoy asiendo un juego. y cuando pierde. manda la cabeza lectora al segundo fotograma.
Aunque en el keyframe de la capa AS 3.0 MAIN no existe ni una sola linea de codigo (solo 1 que dice stop(); :P ).. me saltan cualquier cantidad de errores y el progrma sige generando partes del juego..

es algo simple pero no le encuentro la vuelta.. muchas gracias

Por feresr

70 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 May 2009 10:02 pm
puedes ser mas explicito en tu pregunta, y si puedes puedes subir el archivo .fla para darle una miradita y a lo mejor asi te ayudamos. :nif:

Por kriptonitex

17 de clabLevel



 

chrome
Citar            
MensajeEscrito el 23 May 2009 10:50 pm
debes poder expresarte mejor tus dudas, es decir, estaria mejor, que pusieras el código de tu clase y como la llamas, para ver cual es el error, ademas de poner q error te tira, ya que dependera de muchas variables, la ayuda que te podamos dar.
saludos

Por bubudrc

Claber

591 de clabLevel

1 tutorial

 

mayo 2006

firefox
Citar            
MensajeEscrito el 23 May 2009 10:58 pm
Bueno.. este es el juego q programe... funciona bien.. lo unico q me falta es q cuando el jugador pierda.. el juego deje de funcionar. y le comunique su score.




Para eso.. dije q cuando la bola se salga deL esenario.. llame a un gotoAndStop(2). para pasar al prox fotograma...

en el siguiente fotograma.. ai un keyFrame. con AS3. vacio.. sin embargo el programa sigue generando los barrotes.. y me saltan algunos errores... aca les dejo el codigo del fotograma 1.. pero no creo q les aga falta leerlo para darse cuenta lo q pregunto..

Código :

var gravedad:Number=0;
var aumentoGravedad:Number=.2;
var score:int=0;
var bola1:Bola = new Bola();
var newBarra:Barra;

addEventListener(Event.ENTER_FRAME,verificarEstado);

function verificarEstado(e:Event):void {
   if (bola1.y<0||bola1.y>stage.height) {
      gotoAndStop(2);
   }
}

addChild(bola1);
var velBarras=4;
bola1.velocidad=8;

var aguante:Timer=new Timer(1500,0);
aguante.start();
aguante.addEventListener(TimerEvent.TIMER,empezar);
function empezar(e:TimerEvent):void {
   bola1.addEventListener(Event.ENTER_FRAME,caer);
}
function caer(e:Event):void {
   bola1.y+=gravedad;
   gravedad+=aumentoGravedad;
}

var bReloj:Timer=new Timer(800);
bReloj.start();

bReloj.addEventListener(TimerEvent.TIMER,enviarBarra);

function enviarBarra(e:TimerEvent):void {
   newBarra= new Barra();
   addChild(newBarra);
   newBarra.x=Math.random()*(stage.stageWidth - newBarra.width);
   newBarra.addEventListener(Event.ENTER_FRAME,subirBarras);
}

function subirBarras(e:Event):void {
   e.target.y-=velBarras;

   if (score>300&&score<600) {
      velBarras=5;
      bola1.velocidad=10;
      aumentoGravedad=0.4;
   } else if (score>600 && score<900) {
      velBarras=7;
      bola1.velocidad=13;
      aumentoGravedad=0.6;
   } else if (score>1200) {
      velBarras=8;
      bola1.velocidad=15;
      aumentoGravedad=0.6;
   }

   if (e.currentTarget.hitTestObject(bola1)&& bola1.y <= (e.currentTarget.y +20)) {
      bola1.y=e.currentTarget.y;
      gravedad=0;
      score++;
      tScore.text=String(score);
   }

   if (e.currentTarget.y <= (-50)) {
      e.currentTarget.removeEventListener(Event.ENTER_FRAME,subirBarras);
      removeChild(MovieClip(e.currentTarget));
   }

}
stop();




en el fotograma 2.. ai un simple stop()..
Saludos! gracias de antemano..


PD: estoy usando 2 clases..

Por feresr

70 de clabLevel



 

msie
Citar            
MensajeEscrito el 23 May 2009 11:11 pm
es q no es necesario poner mi codigo.. la pregunta es simple. Si en un fotograma yo coloco codigo AS3. y paso al siguiente fotograma(q es un keyframe)... flash lee el codigo del primero?.

eso es todo.. gracias

Por feresr

70 de clabLevel



 

msie
Citar            
MensajeEscrito el 24 May 2009 02:00 pm
Lo que sucede es que se siguen ejecutando las funciones, en la parte donde pierde agregale esto antes del gotoAndStop(2):

Código ActionScript :

bReloj.stop();
aguante.stop()
removeEventListener(Event.ENTER_FRAME,verificarEstado);
removeChild(bola1);

Habia que detener el juego para que dejara de producir los eventos.
Nos comentas despues si funciona ^^

Por puga

44 de clabLevel



Genero:Masculino  

En un computador, muy muy lejano...

firefox
Citar            
MensajeEscrito el 24 May 2009 07:44 pm
gracias puga!.. sabia q era algo simplee :P.. funciona perfectamente.. !.

gracias a tdos por tomarse la molestia de responder.. :D

Por feresr

70 de clabLevel



 

msie

 

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