Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Xuturk en Noviembre 12, 2009, 09:09:59 PM

Título: movimiento coche
Publicado por: Xuturk en Noviembre 12, 2009, 09:09:59 PM
Hola a todos de nuevo.

Tengo un problema con mi juego visto desde arriba al estilo gta 2 y el problema es el siguiente, la instancia coche (objeto) quiero que al pulsar la tecla arriba valla cojiendo velocidad, osea no siempre valla a la misma si no que aumenta hasta alcanzar un tope en el que se queda finalmente.

Despues los giros, lo que quiero es que la direccion del coche sea segun donde este mirando ,y que si dejas pulsada por ejemplo la tecla derecha, el coche aunque este andando empieza a rotar el sprite y la direccion del objeto hacia ese lado, y a pesar de pulsar arriba, si mira a la derecha valla a la derecha, luego el freno que frene, y si esta parado que de marcha atras.

Se que es bastante lo que pido, pero me gustaria conseguirlo si no es igual lo mas parecido, ya que he buscado mas y mas ejemplos, pero no consigo encontrar nada.

Muchas gracias y un saludo!
Título: Re: movimiento coche
Publicado por: pucara en Noviembre 12, 2009, 09:33:41 PM
Hola amigo, para que el auto agarre velocidad basta conque declares una variable local y le incrementes el valor al pulsar la tecla de acelerar.

i=0;
if(tecla_acelerador_pulsada){i+=1}
velocidad_auto+=i;


Estoy casi seguro que, al estar creando tu juego est?s pensando en el gta2, tus ganas de crear algo parecido seguro que te hace olvidar las limitaciones que a?n ten?s como programador.
Esto acaba casi siempre en juegos inacabados, frustraci?n y olvido. Es lo peor que te puede pasar, por tanto, te aconsejo que idees un juego sencillo, lo acabes y despu?s de aprender cosas nuevas, te metas con tu gta.

En cualquier caso, no te desanimes. Saludos.
Título: Re: movimiento coche
Publicado por: kaliman777 en Noviembre 12, 2009, 10:43:47 PM
Para que la velocidad incremente, no olvides marcar la casilla RELATIVE o si usas c?digos tambi?n.

Suerte.
Título: Re: movimiento coche
Publicado por: Xuturk en Noviembre 12, 2009, 11:05:32 PM
Muchas gracias lo primero jeje, mas o menos lo de la velocidad tenia una idea, pero con esto, me queda totalmente claro jeje, ahora a ver si encuentro a alguien que me pueda decir lo de los giros.

Lo de las limitaciones, la verdad que llevo ya casi 4 a?os haciendo juegos en gml jeje y vale que empece por d&d pero lo que es programar como tal se jeje, por que ademas en mis estudios solo doy programacion, lo que pasa es que no se me da bien encontrar las funciones ni siquiera en el manual y menos saber como usarlas o como obtener ideas a la hora de pasar lo que quiero a codigo, por eso prefiero preguntar a estar 3 dias con el problema en la cabeza, que con los de los estudios tengo suficientes jeje, pero muchas gracias por el consejo, le entiendo perfectamente por que tengo lo menos 10 juegos que deje a la mitad xD

Un saludo!
Título: Re: movimiento coche
Publicado por: pucara en Noviembre 12, 2009, 11:52:21 PM
No dejes nunca de preguntar, es la mejor forma de aprender, junto con programar y programar...


Saludos y suerte con tu juego!
Título: Re: movimiento coche
Publicado por: SP_Christian en Noviembre 13, 2009, 10:05:24 AM
Pon esto en el evnto step:


//----------------------------------------
//vel            = velocidad
//vel_max   = velocidad maxima
//accel        = aceleracion
//d_accel    = deceleracion
//angle       = direccion
//----------------------------------------

x+=cos(degtorad(angle))*vel;
y-=sin(degtorad(angle))*vel;

//----------------------------------------

up=keyboard_check(vk_up);
left=keyboard_check(vk_left);
right=keyboard_check(vk_right);

//----------------------------------------

if (up) vel=min(vel_max,vel+accel);
else vel=max(0,vel-d_accel);

if (left) angle+=2;
if (right) angle-=2;

//----------------------------------------


Y esto en el draw:

draw_sprite_ext(sprite0,0,x,y,1,1,angle,c_white,1)
No olvides declarar las variables xDD
Saludos


PD

Para las colisiones puede que esto te ayude un poco:
http://www.comunidadgm.org/index.php?topic=4277.0

Lo unico esque podras girar el coche y encastarlo en las paredes, con lo cual se quedara atascado xD
Título: Re: movimiento coche
Publicado por: 3dgeminis en Noviembre 13, 2009, 06:39:43 PM
Te dejo un ejemplo
A y D giras el auto . W y S son para avanzar y retroceder, y 5 en el teclado numerico es para frenar
Título: Re: movimiento coche
Publicado por: Xuturk en Noviembre 14, 2009, 11:08:38 AM
Muchisimas gracias por estas respuestas jeje, esto es lo wue buscaba, voy a probarlo por que veo quy hay bastante material con lo de las colisiones y cuando lo tenga comento otra vez y digo si lo he conseguido hacer a mi gusto o no jeje.

Un abrazo y gracias de nuevo :)