Mostrar Mensajes

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

Mensajes - Bangaran

16
Hola compañeros

tengo ya un sistema de maquina de estados para moverme
en cuatro direcciones pero necesito que se mueva el personaje
en cuadricula 32x32 pero no logro hacerlo con los videos de
youtube

alguien podria por favor ayudarme a hacerlo pero con el codigo que ya tengo????

:GMS: :GMS: :GMS: :GMS:
EVENTO CREATE
[gml]///inicializacion
image_speed = 0;

enum ep{
    parado = scr_playerParado,
    caminando = scr_playerCaminando
}

dir = "abajo";          //direccion por defecto
estado = ep.parado;      //estado por defecto[/gml]

:GMS: :GMS: :GMS: :GMS:
EVENTO STEP
[gml]///captura movimiento por pantalla
vh = (-keyboard_check(vk_left) + keyboard_check(vk_right)) * v;
vv = (-keyboard_check(vk_up) + keyboard_check(vk_down)) * v;
//moverse en 4 direcciones
if (abs(vh) > 0)
{
    vv = 0;
}
else if (abs(vv) > 0)
{
    vh = 0;   
}
[/gml]
17
Preguntas y respuestas / Cambio de rooms RPG
Septiembre 28, 2019, 08:59:44 PM
Buenas tardes Amigos

Tengo una duda al cambio de room!! he visto muchos tutoriales y no he podido encontrar la solucion
los tutoriales que he visto para el cambio de room la mayoria son para juegos de plataforma o para
pasar por puertas!! mi juego es un rpg y al hacer cambio de room quisiera que fuera como el video
que coloco mas abajo!! he intentado algunas cosa pero por ejemplo si paso por una de las partes superior o
inferior me hace el cambio de room en el medio y la logica de un rpg es que siga por la misma linea por donde
camina!! ya he descargado tutoriales de la comunidad que son buenos pero son de version mas vieja y no funcionan
GMS1.4

si alguien me podria ayudar se lo agradeceria
18
Lo solucione de esta manera

Coloque un evento destroy y dentro del evento coloque :

instance_create (random_range (0, room_width),  random_range (0, room_height),   objeto_a_crear);

El enemigo muere y reaparece como a la 4 segundos

Alguien con este mismo código me pudiera decir cómo hago para q yo pueda escoger cuánto tiempo aparezca el enemigo????
19
Cómo podría hacer para que un enemigo al que hemos matado o vuelva a aparecer luego de cierto tiempo en algún lugar aleatorio de la room!??

Alguien podría ayudarme
20
Cita de: kostra en Septiembre 16, 2019, 08:22:06 AM
Create enemigo:
[gml]perseguir = false;[/gml]

Donde atacas al enemigo, probablemente tengas un colisión:
[gml]other.perseguir = true;[/gml]
si el evento lo tienes en el objeto enemigo, quita el "other."

Step enemigo:[gml]if perseguir { //código perseguir }
else { //código caminar aleatorio }[/gml]


Gracias amigo me funciono correctamente como esperaba
bueno solo me queda ver que pasa con la maquina de estados porq me cancela el movimiento
del enemigo cuando comienza a perseguirme
21
Disculpen vuelvo a hacer la pregunta ya que no pude encontrar la solucion

Tengo la animacion de mi enemigo que se mueve aleatoriamente por toda la room
pero quiero que el me persiga y me ataque cuando el jugador lo ataque

Uso una maquina de estados!! les mostrae el step y el movimiento aleatorio para que tengan una idea
imagino que tendre que usar algunos if!!

adjunto las imagenes


22
Cita de: :StonerStanley: en Septiembre 14, 2019, 10:42:31 PM
Estoy seguro que es para el enemigo ya que usa la función "mp_potential_step();" que hace que la instancia u objeto que la ejecute intente alcanzar desde una posición inicial (la posición del enemigo) a la posición del posición final (la posición del enemigo) evitando sólidos con una velocidad establecida. La función es algo ineficiente para rooms muy "laberínticas" y estrechas, pero puede servir para rooms abiertas.

Si tienes una sistema de estados, no habrá ningún problema, pero eso sí, desactiva el anterior estado y vuelvelo a activa cuando sea necesario desactivarla.

Entiendo lo q dices amigo!! Pero me dice q lo coloque en el step pero es cuando de los códigos lo coloco ??
En el que hace el movimiento aleatorio?
23
Cita de: xStarLordx en Septiembre 12, 2019, 03:37:18 AM
Hola. Eso es algo sencillo puedes hacer algo como esto:
Evento Create:
bolHurt = false;

Evento Step:
if (place_meeting(x,y,"el nombre de el objeto con el que atacas"))
{
  bolHurt = true
}

if (bolHurt = true)
{
  mp_potential_step(objPlayer.x, objPlayer.y, la velocidad a la que quieres que se mueva, aqui va true si quieres que esquive todos los objetos o false pare que esquive solo los solidos)
}

PD:Puede que tenga algun error porque nunca lo he usado en ningun proyecto. Espero que te sirva.

hola disculpa por mi novatada pero eso codigo q me dices es para colocarlo en el objeto enemigo o jugador?? y si es en el enemigo y tengo una maquina de estados!! en cual de los codigos me recomiendas que lo coloque
24
Buenas Compañeros!! necesito de su ayuda  con un tema respecto a los enemigos!! uso GMS 1.4
ya tengo el codigo de mi enemigo para que se mueva aleatoria mente en la room
lo que quisiera es que mi enemigo me ataque solo si yo lo ataque a el y luego me persiga hasta que me mate o yo salga de la room

Si me pueden ayudar agradecido de ante mano
25
Cita de: 3dgeminis en Septiembre 04, 2019, 02:42:07 AM
Si sabes como hacer una maquina de estados lo puedes, se puede usar sin problemas.
si tengo una maquina de estados pero con mi codigo de movimiento se mueve en todas direcciones si me pudieras dar una idea de como modificar mi codigo de movimiento
vh = (-keyboard_check(vk_left) + keyboard_check(vk_right)) * v;
vv = (-keyboard_check(vk_up) + keyboard_check(vk_down)) * v;

de verdad me funciona muy bn solo que quiero q mi rpg se mueva en 4 direcciones
26
Cita de: 3dgeminis en Mayo 01, 2019, 10:06:40 PM
[gml]
///CREATE
velocidad=4
mover_vertical=true
mover_horizontal=true
[/gml]
[gml]
///STEP
///esta primera parte previene que se mueva en diagonal y no mezclar ambos ejes
if keyboard_check_pressed(vk_right) or keyboard_check_pressed(vk_left)
   {
    mover_horizontal=true
    mover_vertical=false
   }
if keyboard_check_pressed(vk_down) or keyboard_check_pressed(vk_up)
   {
    mover_horizontal=false
    mover_vertical=true
   }
 
///esta parte para evitar que el jugador se detenga cuando se presiona, por ejm., derecha e izquierda al mismo tiempo
if keyboard_check_pressed(vk_right) {keyboard_clear(vk_left)}
if keyboard_check_pressed(vk_left) {keyboard_clear(vk_right)}
if keyboard_check_pressed(vk_down) {keyboard_clear(vk_up)}
if keyboard_check_pressed(vk_up) {keyboard_clear(vk_down)}

///aqui solo se mueve; por ejm si se presiona derecha solo se movera si no se esta presionando arriba o abajo
if keyboard_check(vk_right) {x+=mover_horizontal*velocidad}
if keyboard_check(vk_left)  {x-=mover_horizontal*velocidad}
if keyboard_check(vk_down)  {y+=mover_vertical*velocidad}
if keyboard_check(vk_up)    {y-=mover_vertical*velocidad}
[/gml]

Hola disculpen se que este tema lo dejaron hace tiempo pero al igual que rick136 soy nuevo y quisiera saber si el sistema de 3dgeminis se puede usar en una maquina de estados)))