Comunidad de diseño web y desarrollo en internet online

Juego de Pelea..casi listo y consulta

Citar            
MensajeEscrito el 15 Jul 2008 08:31 pm
Holas aqui despues de un tiempo pude realizar el juego de pelea que queria y que empezo como algo muy simple, aqui les dejo el enlace para que lo chequeen, a ver si esta semana lo completo realmente y lo posteo como debe ser(cuando lo ponga completo tiene su presentacion tipo tekken 3, pero estilo burla), y me dare un tiempo para publicar un tutorial en castellano creo que hay mucha gente que queria saber pero no hay tutoriales completos y para colmo estan en ingles:

http://es.geocities.com/yiyusforever/

player 1 :
se mueve y salta con las flechas
a=golpe suave
s=golpe fuerte
z=patada suave
x=patada fuerte
c=barrida
space+flecha abajo=hadoken
v+b=combo pios chicken...:)

player 2 (tecla. num)
se mueve y salta con las flechas del teclado numerico
7=golpe suave
9=golpe fuerte
1=patada suave
3=patada fuerte
0=barrida
5=hadoken
- (mas) + =combo de la refurinfunflais

Creo que por lo menos funciona, ahora la pregunta que tengo es como seria el codigo para que se defienda de los ataques, pues como veran no hay boton de defensa y eso me lleva a preguntar que codigo se puede usar para que el movie clip mantenga una accion mientras el boton queda presionado, osea se defienda o se agache todo el tiempo que presione el boton y cuando suelte termine la accion de defenderse o agacharse, ojala puedan ayudarme para darle un acabado mas decente al juego, saludos a todos y ojala me den una mano, aqui les dejo el codigo de un player, es medio rudimentario pero todavia estoy que aprendo AS:

Código :

onClipEvent(load)
{
velocidad = 10;
var ionke:MovieClip;
var wall:MovieClip;
   var fight=false;
}
onClipEvent(enterFrame)
{
if(fight==false){
//codes for movement
if (Key.isDown(Key.LEFT)) {
_x -= velocidad;
_xscale=-80;
if (_root.wall.hitTest(_x, _y, true)) _x += velocidad;
if (_root.pedro.hitTest(_x, _y, true)) _x += velocidad;
}
if (Key.isDown(Key.RIGHT)) {
_x += velocidad;
_xscale=80;
if (_root.wall.hitTest(_x, _y, true)) _x -= velocidad;
if (_root.pedro.hitTest(_x, _y, true)) _x -= velocidad;
}
}

//codes for actions
if(Key.isDown(65)){
gotoAndStop(2); //punch frame
fight=true;
}
else
if(Key.isDown(83)){
gotoAndStop(3); //punch2 frame
fight=true;
}
else
if(Key.isDown(90)){
gotoAndStop(4); //kick frame
fight=true;
}
else
if(Key.isDown(88)){
gotoAndStop(5); //kick2 frame
fight=true;
}
else
if(Key.isDown(38)){
gotoAndStop(6); //salto
fight=true;
}
else
 if (Key.isDown(Key.SPACE) && Key.isDown(Key.DOWN)){
gotoAndStop(7); //abuke space down
fight=true;
}
else
if(Key.isDown(40)){
gotoAndStop(8); //agache
fight=true;
}
else
if(Key.isDown(67)){
gotoAndStop(9); //patbaja
fight=true;
}
else
if (Key.isDown(66) && Key.isDown(86)){
gotoAndStop(10); //combopios 
fight=true;
}
   if (_root.pedro.hitTest(_root.ionke.pun1_ion.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(8);
         _x += 1;       }
   }
   if (_root.pedro.hitTest(_root.ionke.pun2_ion.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(8);
         _x += 1;       }
   }
   if (_root.pedro.hitTest(_root.ionke.pat1_ion.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(8);
         _x += 1;       }
   }
   if (_root.pedro.hitTest(_root.ionke.pat2_ion.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(8);
         _x += 1;       }
   }
   if (_root.pedro.hitTest(_root.ionke.ray_ion.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(10);
         _x += 1;       }
   
   }
   if (_root.pedro.hitTest(_root.ionke.combo_pios.hityonke)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(8);
         _x += 1;       }
   }
   if (_root.pedro.hitTest(_root.ionke.p_abajo.hit2)) { 
      tellTarget ("_parent.pedro") { 
         gotoAndStop(9);
         _x += 1;       }
   }
   
   else fight=false;
}

Por JC_esar

8 de clabLevel



Genero:Masculino  

opera
Citar            
MensajeEscrito el 16 Jul 2008 01:48 am
Solo una pequeña observación. Si quieres que tu tutorial y aporte sean perdurables, te recomendaría actualizar algunas cosas:

- Eventos onClipEvent (deprecated desde Flash 6), reemplazar por callbacks en la línea de tiempo, ejemplo this.onEnterFrame = function(){}
- tellTarget (deprecated desde Flash 5), remplazar por notación de puntos, ej parent.pedro.gotoAndStop(8)

Luego si formatearas (en Flash dale al botón formato, indenta todo el code, lo vuelves a poner con las etiquetas code como lo has puesto ahora) las líneas de código antes de los if (donde empiezan los hitTest) ayudaría mucho a la lectura de tu code

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 16 Jul 2008 04:51 am
Hola Jorge , gracias por lo consejos vere lo de actualizar el codigo para armar un tutorial, como te digo eso lo obtuve de muchos sitios y tuve que ordenarlo sin saber mucho de action pero ya estoy aprendiendo desde cero, mas bien , si tuvieses algun dato de como hacer para que el movie clip obedezca la accion mientras mantengo pulsada la tecla?..bueno saludos y suerte.

Por JC_esar

8 de clabLevel



Genero:Masculino  

opera
Citar            
MensajeEscrito el 16 Jul 2008 07:52 am
Puede que no sea la mejor idea pero se me ocurre que diseñes 4 posturas de "relax":
-En pie.
-Agachado
-Bloqueado
-Bloqueado agachado

Ahora pongamos que presionas abajo, con el gotoandplay vas a la animacion de agacharse y cuando termine te quedas en la posicion agachado.

Luego pones un listener que cuando la tecla se suelte regrese a la posicion en pie.

Por gabilan

18 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Jul 2008 07:46 am
Gracias , probare lo del listener a ver que tal funciona

Por JC_esar

8 de clabLevel



Genero:Masculino  

opera

 

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