Comunidad de diseño web y desarrollo en internet online

ayuda sobre un juego que estoy programandop

Citar            
MensajeEscrito el 04 Feb 2010 12:52 pm
Hola amigos,
ya esta aqui el pesado de turno XD, estoy programando un tower defender "a mi manera" osea pensandolo yo hasta que me quedo atascado como ahora.... snif snif :cry:

Tengo un boton hecho que crea una torre y puedes dejarla en cualquier lado mientras no sea el camino ni el menu. Hasta ahi bien. Mi problemilla es como plantear el ataque de las torres. Osea cuando un enemigo pasa por el radiod e la torre la torre deberia girar y disparar asu cordenada....

Si alguien es tan amable en ayudarme en eso ^^

Espero sus respuestas, y GRACIAS POR TODO!!! :D :lol: :P

Por keyzero86

15 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Feb 2010 03:05 pm
Puesto que "cada vez" tenemos que controlar si un enemigo se acerca, lo primero que tenemos que hacer es crear un onEnterFrame
Para saber si está cerca, si tenemos una variable que haga referencia al "enemigo" la llamamos enemigo y la variable que hace referencia a la "torre" la llamamos "torre" tendremos que
1.-La distancia al cuadrado será

Código ActionScript :

dist2=(enemigo.x-torre.x)*(enemigo.x-torre.x)+(enemigo.y-torre.y)*(enemigo.y-torre.y)

Se suele usar el cuadrado de la distancia, en lugar de la distancia por no hacer una operación de más. Vamos, nos da igual escribir

Código ActionScript :

if (dist2>100){....}
//que
if (Math.sqrt(dist2)>10){....}

2.-El ángulo lo calcularemos usando Math.atan2

Código ActionScript :

angulo_rad=Math.atan2(enemigo.y-torre.y,enemigo.x-torre.x)

El ángulo es en radianes y la rotation se mide en grados, así que deberemos convertir ese ángulo

Código ActionScript :

angulo_grados=angulo_rad*180/Math.PI

Por Eliseo2

710 de clabLevel



 

firefox

 

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