Foros del Web » Creando para Internet » Flash y Actionscript »

Problema con on click....help...

Estas en el tema de Problema con on click....help... en el foro de Flash y Actionscript en Foros del Web. Estoy desarrollando un juego de disparo, estilo Doom, que con el cursor del mouse "mato" enemigos Mi problema es que dejo los "enemigos como botones" ...
  #1 (permalink)  
Antiguo 07/09/2003, 14:48
 
Fecha de Ingreso: abril-2003
Mensajes: 79
Antigüedad: 21 años
Puntos: 0
Problema con on click....help...

Estoy desarrollando un juego de disparo, estilo Doom, que con el cursor del mouse "mato" enemigos Mi problema es que dejo los "enemigos como botones" y el estado "down" es un movieclip del enemigo que cae muerto y el gran problema, como podrán ver en el ejempl que subí, es que hay que MANTENER APRETADO EL MAUSE para que el enmigo caiga... y la idea es dar un "tiro" rapido y el enemigo caiga con un solo click viendo e ejemplo entenderan mejor mi GRAN problema...

http://www.deleite.cl/Mono.swf

Gracias por su ayuda again....
__________________
*Tratando de Aprender de los errores.....
  #2 (permalink)  
Antiguo 07/09/2003, 19:19
 
Fecha de Ingreso: julio-2002
Mensajes: 217
Antigüedad: 21 años, 9 meses
Puntos: 0
usa el buscador sobre el tema

hitest

hay varios ejemplos por aqui!!!
  #3 (permalink)  
Antiguo 07/09/2003, 19:26
Supersonic
Invitado
 
Mensajes: n/a
Puntos:
el soldado es un movie clip cierto? pues para que caiga, ya le indicaste que lo haga con un OnMousePress, cero que con solo ponerle un stop() al final del movie en que esta el soldado es suficiente....
Lo que yo personalmente haria es:

pongo un el movieclip con la accion del soldado, dentro del movieclip le hago un loop ( por ejemplo el caminar consume 10 frames en el frame 10 le pongo un gotoAndPlay(1), asi el soldado se mantiene caminando, para hacer que caiga podria en el primer frame del stage :

_root.enemigo.onRelease = function(_root) {
if (soldado == muerto) {
_root.enemigo;
this.gotoAndPlay(11);
}
};


donde "enemigo" es la instancia del MC del soldado, ahora con esto le digo que cuando presionen sobre ese soldado deje de ejecutar el loop de caminar y continue a la seccion de la animacion donde cae ( en este caso hipotetico el frame 11). Por ultimo, para asegurarme de que no se levante el infame enemigo, le puse en el ultimo frame de la animacion ( cuando ya esta totalmente en el suelo y derrotado el maldito) esto:

stop();
_root.soldado = "muerto";


entonces, eso detiene la animacion y al poner la variable "soldado" como muerto le digo al if que estaba en el primer frame que no ejecute de nuevo la animacion....Para que aprenda a no meterse conmigo!!

Suerte!

Última edición por Supersonic; 07/09/2003 a las 19:29
  #4 (permalink)  
Antiguo 08/09/2003, 09:59
 
Fecha de Ingreso: septiembre-2003
Mensajes: 4
Antigüedad: 20 años, 7 meses
Puntos: 0
Cita:
Mensaje Original por Supersonic
el soldado es un movie clip cierto? pues para que caiga, ya le indicaste que lo haga con un OnMousePress, cero que con solo ponerle un stop() al final del movie en que esta el soldado es suficiente....
Lo que yo personalmente haria es:

pongo un el movieclip con la accion del soldado, dentro del movieclip le hago un loop ( por ejemplo el caminar consume 10 frames en el frame 10 le pongo un gotoAndPlay(1), asi el soldado se mantiene caminando, para hacer que caiga podria en el primer frame del stage :

_root.enemigo.onRelease = function(_root) {
if (soldado == muerto) {
_root.enemigo;
this.gotoAndPlay(11);
}
};


donde "enemigo" es la instancia del MC del soldado, ahora con esto le digo que cuando presionen sobre ese soldado deje de ejecutar el loop de caminar y continue a la seccion de la animacion donde cae ( en este caso hipotetico el frame 11). Por ultimo, para asegurarme de que no se levante el infame enemigo, le puse en el ultimo frame de la animacion ( cuando ya esta totalmente en el suelo y derrotado el maldito) esto:

stop();
_root.soldado = "muerto";


entonces, eso detiene la animacion y al poner la variable "soldado" como muerto le digo al if que estaba en el primer frame que no ejecute de nuevo la animacion....Para que aprenda a no meterse conmigo!!

Suerte!

Yo tengo que hacer algo muy similar y probe el script que adjuntas y no logro hacerlo funcionar.

Mi caso es similar. Tengo un Movie Clip "X" que tiene un loop y deseo pasar a un Movie Clip "Y" que tiene un stop al final (muy similar al caso de blackhawk, donde el enemigo está corriendo y finalmente muere y queda en el piso").

Al primer frame del stage del Movie Clip "X" (el del loop) le puse el script que posteo SuperSonic y simplemente no pasa nada. Le he dado hartas vueltas al asunto, he modificado el script y no pasa nada! , porfavor alguien que me ayude
  #5 (permalink)  
Antiguo 08/09/2003, 16:23
Supersonic
Invitado
 
Mensajes: n/a
Puntos:
rO_Ok : en tu caso lo que debes hacer es:
modificar el script segun tus propias instancias y luego en donde esta el "this.gotoAndPlay(11) enviarlo al movieclip donde cae el soldado.
El scrip que puse antes ya lo probe varias veces en diferentes situaciones y me funciona bien, eso si, las instancias tienen que estar en el stage porque de lo contrario no las puedes jalar ya que el script las busca desde el _root.

en todo caso les adjunto aca mi .Fla para que lo puedan estudiar y desmembrar a conveniencia! ( el trabajo artistico es realmente notable )

Bajenlo aca!

suerte!

Última edición por Supersonic; 08/09/2003 a las 17:08
  #6 (permalink)  
Antiguo 08/09/2003, 17:28
 
Fecha de Ingreso: septiembre-2003
Mensajes: 4
Antigüedad: 20 años, 7 meses
Puntos: 0
Sonrisa

Ya lo bajé y te resulta perfecto!!!!! voy a hecharle unos vistazos a los scripts

Gracias
  #7 (permalink)  
Antiguo 08/09/2003, 17:35
Supersonic
Invitado
 
Mensajes: n/a
Puntos:
OK,
pero recuerda! solo puedes usar los scripts, el dibujo es demasiado elaborado y profesional como para que lo reutilices

suerte!
  #8 (permalink)  
Antiguo 09/09/2003, 15:39
 
Fecha de Ingreso: septiembre-2003
Mensajes: 4
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola Supersonic, no sé qué tienen mis dedos pero hice todo lo que me dijiste con mi movie clip y cuando le doy un preview me lanza este error:

Scene=Scene 1, Layer=Layer 11, Frame=1: Line 1: Statement must appear within on/onClipEvent handler
stop();

Scene=Scene 1, Layer=Layer 11, Frame=1: Line 2: Statement must appear within on/onClipEvent handler
_root.enemigo.onPress = function(_root) {


Mi soldado si que es duro de matar , lo unico que hize fue copiar y pegar los scripts adjuntos en tu FLA, pero me lanza el error, a lo mejor es porque tengo que renombrar algunos elementos del script para que se ajuste a mi documeto

Saludos
  #9 (permalink)  
Antiguo 09/09/2003, 22:25
Supersonic
Invitado
 
Mensajes: n/a
Puntos:
claro! todos las instancias que puse eran para usar de ejemplo, pero debes ajustarlo a tu MC!! si no tienes ninguna instancia "soldado" como la puede controlar flash!

prueba ajustando todo y si tienes problema me pasas el .FLA para revisarlo!


suerte!
  #10 (permalink)  
Antiguo 10/09/2003, 17:17
 
Fecha de Ingreso: septiembre-2003
Mensajes: 4
Antigüedad: 20 años, 7 meses
Puntos: 0
Hoooooooooola lo he logrado! no me había percatado que los MC tienen una instancia" y hay que ponerles nombre , ahora me quedo percecto!

GRACIAS SUPERSONIC!!! cualquier cosa que te pueda ayudar mi msn es [email protected] , epero me contactes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:59.