Diciembre 12, 2010, 11:53:54 AM Ultima modificación: Diciembre 16, 2010, 01:04:41 PM por unbleached
hola buenas....me explico....tengo creado un soldado (visto desde arriba) y he conseguido moverlo con los cursores de esta manera
up----speed = 1
down--speed = 0  
left--direction += 2
right-direction -= 2

y en el steep he puesto: image_angle = direction
                       

asi que cuando pulsas up el tio camina......cuando pulsas down el tio camina para atras y cuando pulsas rigth y left el soldado rota sobre si mismo en esa direccion.

Ahora me gustaria con otras dos teclas que el soldado se moviera lateralmente...hacia su izquierda o su derecha....

Alguna idea? muchisimas gracias.Saludos

en step
[gml]

if keyboard_check(vk_right){
x+=4
sprite_index = soldado_right
}
if keyboard_check(vk_left){
x-=4
sprite_index = soldado_left
}[/gml]
Hola de nuevo

poniendo esto en el step del soldado lo que pasa es que cuando pulso right no solo rota hacia la derecha sino que se desplza lateralmente

yo lo que querria es usando otras dos teclas diferentes (por ejemp: el 1 y el 2 del tecldo numerico)el soldado se desplace lateralmente sin rotar.Un saludo y gracias por tu ayuda. igualmente seguire investigando

Cita de: unbleached en Diciembre 12, 2010, 01:12:56 PM
poniendo esto en el step del soldado lo que pasa es que cuando pulso right no solo rota hacia la derecha sino que se desplza lateralmente

yo lo que querria es usando otras dos teclas diferentes (por ejemp: el 1 y el 2 del tecldo numerico)el soldado se desplace lateralmente sin rotar.Un saludo y gracias por tu ayuda. igualmente seguire investigando
le cambias la letra o usas (ord) ejemplo
[gml]
if keyboard_check(ord("D")){
x+=4
sprite_index = soldado_der
}
if keyboard_check(ord("A")){
x-=4
sprite_index = soldado_izq
}
[/gml]
se mueve lateralmente ahora con a y d
Hola de nuevo

jejeje muchas gracias por tu rapida ayuda pero....sigue sin ser exactamente eso


cuando hago lo que tu me dices lo que pasa es que cuando apreto  "d" el soldado se desplaza hacia la derecha de la pantalla, indistintamente de la direccion que el soldado este mirando....yo lo que quiero es que se desplace a su derecha, no a la derecha de la pantalla.No tiene por que ser la derecha del soldado la parte derecha de la pantalla.ejemplo: si mi soldado esta mirando abajo,cuando aprete "d" lo que quiero que pase es que se mueva hacia su derecha...osea nuestra izquierda en este caso(ya que el soldado esta mirando hacia abajo).Y como tu dices siemppre q apreto "d" el soldado se mueve hacia mi derecha.Igualmente muchisimas gracias.


if keyboard_check(vk_right){
x+=4
}
if keyboard_check(vk_left){
x-=4
}

prueba con eso

gracias por la ayuda pero asi no consigo lo que necesito......con este codigo el soldado se mueve hacia la izquierda o derecha de la pantalla.Vale pero eso no es lo que necesito.Lo que yo quiero es  que el soldado se mueva hacia su derecha o izquierda (no hacia la mia)

imaginaros...con este codigo.....este donde este mirando el soldado...siempre se movera en el eje x...sumando o restando x.....yo quiero que se desplace lateralmente sobre su eje...que no tiene porque ser el eje x.

un saludo y gracias

Yo soy tu y cambiaria rotundamente el concepto del movimiento del soldado. Como lo tienes ahora, se parece mas al movimiento de un coche: acelero y freno y giro. A la hora de la jugabilidad se hace bastante ortopedico mover rapidamente al soldado. Yo moveria al soldado en las 4 direcciones y que girara apuntando siempre al rat?n. La verdad que se consigue un muy buen resultado de esta forma.Siempre y cuando quieras apuntar con el rat?n.

Si no sabes como hacerlo te lo explico.
???NO SE ESTANQUEN, DEN EL PASO A FLASH (AS3.0)!!!

no no no....no me rendire....se que es posible.

No tengo intencion de disparar donde se?ale el raton.Con lo cual dejando esta opcion en el olvido,si muevo el soldado solo en los dos ejes es imposible (por ejemplo) salir de una esquina andando hacia west y disparando hacia norte.Igualmente seguire investigando y muchisimas gracias por vuestra ayuda.

tengo una idea de como hacerlo pero no se si se puede hacer un codigo con eso xD
deja y te digo


Te dejo lo que pude hacer porque quiero ponerme a jugar y despues le sigo, pero por mientras te dejo mas o menos un semi resultado. :'(


buena tio...ahora solo falta que el soldado no se gire....muy muy buena.gracias ya casi lo tenemos .saludos

Creo que solucione el problema, lo unico malo es que lo hice todo con gml, pero espero que te ayude :D

El movimiento queda fijo con Shift y disparas con la tecla Espacio (no le agregue delay al disparo, porque no importa en este caso)

* Quisas este algo desordenado, fue porque arregle los problemas apenas iban pasando xD