Noticias

Importante: ¡Si quieres publicar tu juego no olvides leer este tema!

* Sponsor

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - AlexWood

Páginas: 1
1
Es relativamente simple, lo primero es, en el evento Create, determinar el punto de origen desde donde sale la granada y el punto final donde caerá la granada, y usar esos puntos para determinar la distancia y dirección en que la granada va a viajar, e inicializamos una variable z para la altura del vuelo de la granada:

Dest_x = mouse_x;
Dest_y = mouse_y;

Dist = point_distance(xstart,ystart,Dest_x,Dest_y);
Dir = point_direction(xstart,ystart,Dest_x,Dest_y);

z = 0;

Luego en cada paso movemos la instancia la cantidad apropiada y calculamos la altura que tendría la granada en ese paso:

Dist_Rem = point_distance(x,y,Dest_x,Dest_y)

x += lengthdir_x(min(Dist_Rem,8),Dir)
y += lengthdir_y(min(Dist_Rem,8),Dir)

z = sin((((Dist_Rem)/Dist))*pi)

El calculo de z es simple, tomamos la distancia que le falta a la granada por viajar y la dividimos entre la distancia total que debe viajar para normalizar el valor, tomamos dicho valor y lo multiplicamos por pi para poder aprovechar la parábola de la función matemática seno.

Ahora simplemente se dibuja manualmente el sprite del objeto, multiplicando z por el valor de la altura máxima que la granada puede alcanzar y restándole el resultado a al valor y. Recomendaría en lugar de usar un valor estático para la altura máxima usar un factor de la distancia total:

draw_sprite_ext(sprite_index,image_index,x,y-z*(Dist/3)

Dejo un ejemplo con el código:

2
Voy directo, he logrado hacer todos los movimientos y animaciones de mi personaje, pero me he dado cuenta que el salto es muy simple y que me gustaria uno mas parecido al de Mario

Ya saben que al saltar y oprimir la tecla Right y que al dejar de oprimirla el player valla cayendo y movimiendose poco a poco hacia la direccion de la ultima tecla, me seria util que alguien me explicara bien que es lo que tendria que hacer para lograr ese efecto

Páginas: 1

Warning: Parameter 1 to spoiler_buffer() expected to be a reference, value given in Unknown on line 0

Warning: Parameter 1 to custom_report_ob() expected to be a reference, value given in Unknown on line 0