El Titulo expresa bien la situaci?n.
El problema es que quiero que B siga a A en fila (linea recta), pero que recorra los mismos movimientos que A, pero que se mantenga detr?s de A sin ocupar el mismo lugar que A
(no importa si despu?s A se mueve para atr?s y ocupan el mismo espacio, solo quiero que B se mantenga detr?s cuando est?n en movimiento, no s? si me explico)
Me facilitar?a mucho el que sea as? ya que me ahorro la IA. Ya prob? haciendo que siga a un punto pero se chocaba con otros objetos. Entonces, prob? con el potential_step (creo que se llamaba as?) y su inteligencia no es muy "adecuada" (el personaje parece idiota ?_? si encuentra una pared puede tomar el camino contrario y no para hasta que la pared termina)
Tambi?n prob? con las alarmas tomando el movimiento "retrasado", pero en alg?n momento, si yo me quedo quieto los dos personajes ocupan el mismo espacio.
Suponiento que el jugaro tenga un marco de 16x16
esto en el Objeto_A
if place_snap(16,16)
&& x!=xpreview
&& y!=ypreview
{
X=x
Y=y
}
el X e Y seran la ubicasion de objeto_B
Objeto_A.X=x
Objeto_A.Y=y
simple pero si no entendes... ya sabes.. volve a preguntar ?_?
lo que puedes hacer es:
create obj_A:
global.actions=timeline_add()
a=100 //tiempo en steps de retraso
with (obj_B) timeline_index=global.actions;
step obj_A:
a+=1;
timeline_moment_add(global.actions,a,"x="+string(x)+";y="+string(y)+";")
lo prob? y funka.
adjunto ejemplo en el que se muestra tambien como hacer otras acciones como golpear o saltar.
Gracias por contestar. Pens? que nadie sab?a. ;D
Cita de: romon_28 en Diciembre 03, 2009, 04:43:05 PM
Suponiento que el jugaro tenga un marco de 16x16
esto en el Objeto_A
if place_snap(16,16)
&& x!=xpreview
&& y!=ypreview
{
X=x
Y=y
}
el X e Y seran la ubicasion de objeto_B
Objeto_A.X=x
Objeto_A.Y=y
simple pero si no entendes... ya sabes.. volve a preguntar ?_?
En mi caso, yo pregunto no para que me resuelvan el problema tirandome el c?digo, sino para que me expliquen que es lo que hace el c?digo y poder aprender para no tener que volver a preguntar con un problema del mismo estilo.
Lo que llegu? a entender (aunque sea incorrecto) fu?:
cuando el A est? en un punto de la grilla de 16x16 y las posiciones X e Y no sean "xpreview" (creo que quisiste poner "xprevious") le d? las coordenadas al objeto B.
La variable place_snap no lo toma, y pens? que era place_snapped pero tampoco funcion?.
si me lo explic?s "a lo gaucho" se me har?a m?s f?cil.
Cita de: Ciberman en Diciembre 03, 2009, 07:46:52 PM
lo que puedes hacer es:
create obj_A:
global.actions=timeline_add()
a=100 //tiempo en steps de retraso
with (obj_B) timeline_index=global.actions;
step obj_A:
a+=1;
timeline_moment_add(global.actions,a,"x="+string(x)+";y="+string(y)+";")
lo prob? y funka.
adjunto ejemplo en el que se muestra tambien como hacer otras acciones como golpear o saltar.
Mir? el ejemplo y me volv? loco ;D :-[
As? que solo tom? de referencia el c?digo que me diste y funciona perfectamente, pero el problema es que en un momento, si A se queda quieto un rato, el tiempo de retraso hace que B ocupe el mismisimo lugar que A. Y lo que yo quiero es que haga ese movimiento pero que se frene antes de ocupar ese lugar.
Aunque la verdad, no entend? mucho el c?digo, ya que recien empiezo y no entiendo que es eso de "string"
Ahora que lo pienso es muy complicado de hacer todo esto. A menos que cuando est? a una distancia considerablemente cerca, el "seguimiento" se desactive.
Gracias a los dos por contestarme.