Hola tengo esta duda ¿Como funciona el evento step? por que osea el evento  step en si ejecuta una acción todo el tiempo que dure la instancia que tenga el evento pero este el begin step y end step, cual es la definición de begin y end en el evento step? mas exactamente
cuando yo pongo un begin step (primer paso) primer paso antes de que?

Cita de: 7sixerCF en Febrero 24, 2014, 12:52:06 AM
Hola tengo esta duda ¿Como funciona el evento step? por que osea el evento  step en si ejecuta una acción todo el tiempo que dure la instancia que tenga el evento pero este el begin step y end step, cual es la definición de begin y end en el evento step? mas exactamente
cuando yo pongo un begin step (primer paso) primer paso antes de que?

Yo mas o menos creo saber para que (No lo he investigado)

Digamos que los step son 1 minuto, conformado por 60 segundos, como funcionarian en estos steps?
Begin Step: se ejecuta en 0 segundos (Primero que todos)
Step Event: se ejecuta en 30 segundos (Originalmente, la mitad)
End Step: se ejecuta en 60 segundos (El final, antes de volver a comenzar en el begin)

Corriganme si estoy mal xDD no conozco mucho de esto, ya que lo unico que importa es simplemente el step......

no creo que sea haci nunca hay que relacionar step con segundos al menos eso ley en el foro del yoyogame ya que también busque por hay pero no entendí muy bien la respuesta xD, yo creo que estas totalmente mal el step no ocurre a los 30 segundos ocurre en todo momento...

#3 Febrero 24, 2014, 02:56:20 AM Ultima modificación: Febrero 24, 2014, 03:12:27 AM por ivn_eze
Citarno creo que sea haci nunca hay que relacionar step con segundos al menos eso ley en el foro del yoyogame ya que también busque por hay pero no entendí muy bien la respuesta xD, yo creo que estas totalmente mal el step no ocurre a los 30 segundos ocurre en todo momento...

nop, no ocurre en todo momento.
eso depende de la configuracion de la room.
si configuras la velocidad de la room a 10 steps, significa que se produciran 10 steps por segundo.

ej: si la velocidad del room son 50 steps por segundo ; habra un intervalo de 0,2 segundos ente steps

vale ambos estábamos equivocados pero nadie sabe cuando ocurre end step y begin step u.u

#5 Febrero 24, 2014, 03:05:55 AM Ultima modificación: Febrero 24, 2014, 03:21:53 AM por penumbra
Cita de: 7sixerCF en Febrero 24, 2014, 12:52:06 AM
begin step (primer paso) primer paso antes de que?
Antes del evento Step.

Cita de: 7sixerCF en Febrero 24, 2014, 02:57:51 AM
vale ambos estábamos equivocados pero nadie sabe cuando ocurre end step y begin step u.u


¿Por qué tanto desprecio al manual? Pareciera que es pecado consultarlo. Aunque no lo crean, ahí viene cuando ocurre begin y end step  :-X

Citar
El evento step sucede a cada paso/frame del juego. Aquí puedes colocar acciones que requieren ejecutarse continuamente.  Para ser más preciso, hay tres diferentes eventos step. Normalmente solo necesitas el evento por defecto. Pero usando el menú puedes también seleccionar el inicio y el final del evento step. El inicio del evento step es ejecutado al inicio de cada paso, antes de que ocurra cualquier otro evento. El evento step normal es ejecutado justo antes de que se coloquen las instancias en sus nuevas posiciones. El final del evento step se ejecuta al final de cada paso, justo antes de que se dibuje la escena.

Orden de eventos:
http://docs.yoyogames.com/source/dadiospice/000_using%20gamemaker/events/index.html

Y dejo esto que puede aclarar mejor begin y end step
Object1 - Begin Step
  Object2 - Begin Step
  Object1 - Alarm 0
  Object2 - Alarm 0
  Object1 - keyboard and mouse
  Object2 - keyboard and mouse
  Object1 - Keyboard and mouse press
  Object2 - Keyboard and mouse press
  Object1 - Keyboard and mouse release
  Object2 - Keyboard and mouse release
  Object1 - Step
  Object2 - Step
  Object1 - End Of Path
  Object2 - End Of Path
  Object1 - Outside room
  Object2 - Outside room
  Object1 - Intersect Boundary
  Object2 - Intersect Boundary
  Collision events*
  Object1 - End Step
  Object2 - End Step
  Object1 - Draw
  Object2 - Draw
  Object1 - Animation End**
  Object2 - Animation End**

Begin y end step se pueden usar para ser más específicos de qué acciones ocurren en qué momento. Pero se puede programar un juego completo sin usarlos. Claro que tambien sirven para organizar mejor el código, si es que eres de los que te gusta "dispersar" el código.

No me quedo muy claro esta parte:

CitarEl inicio del evento step es ejecutado al inicio de cada paso, antes de que ocurra cualquier otro evento

¿En que se diferencia con el evento create?

Cita de: 7sixerCF en Febrero 24, 2014, 05:00:50 PM
No me quedo muy claro esta parte:

CitarEl inicio del evento step es ejecutado al inicio de cada paso, antes de que ocurra cualquier otro evento

¿En que se diferencia con el evento create?

En que CREATE no es un evento que se ejecute en cada paso, sino que se ejecuta una vez, al crear la instancia.

CitarEste evento ocurre cuando una instancia del objeto se crea, y es lo primero que sucede dentro de una instancia colocada en la habitación mediante el editor de habitaciones cuando se entra a una habitación. Esto significa que este evento es el lugar ideal para iniciar variables, comenzar lineas de tiempo, definir paths,... y en egenral, hacer cualquier cosa que sólo necesite ser realizada  una vez o sólamente cuando una instancia aparece en la habitación.
]


#9 Febrero 24, 2014, 07:57:55 PM Ultima modificación: Febrero 24, 2014, 08:17:00 PM por elviskelley
Lo explicare dando un ejemplo de algo que hice.

En el event create puedes declarar una variable ejemplo
target=0; //la usare para indicar el enemigo a perseguir.

ahora en el event step
if (distance_to_object(objEnemigo) < 96)
{target=instance_nearets(x,y,objEnemigo)}
//en este momento le indique que si un enemigo esta cerca a menos de 96pxl guarde la id del mas cercano.

event End step
if (!target = 0) then
{move_towards_point(target.x,target.y,speed) speed=2;}
else
{speed=0;}
// si hay alguna id de algun enemigo guardada lo perseguira.
/* Ahora hay un problema, inicialmente indique que guardara la id del enemigo si este estaba a menos de 96pxl
pero digamos que el enemigo corrio y esta ahora a 256pxl, de igual forma lo perseguira, asi que necesito resetear esa var*/

Asi que uso para resetearla el event Bengin step.
target=0; // con esto y en este orden sucedera lo siguiente.


/* Primero en el event bengin step la variable target se resetea a 0, osea se limpia. Luego en el event step se
compara si hay algun enemigo cerca y se guarda su ID en la variable target. Por ultimo en el event End step
se ordena perseguir al enemigo cuya ID se guardo en la variable target.
Como constantemente la variable target se resetea en el event bengin step, si el enemigo esta a mas de 96pxl
no lo perseguira, pues estara limpia y en 0. */
Yo compribe esto y es tal cual.
La fuente fue un ejemplo que encontre en el foro de yoyogames donde mostraba las diferencias entre los step event. Aunque no tengo ese ejemplo igual te hice uno para que lo entiendas, y si quieres experimentar quita el event Begin step y veras que sucede.-

Nota: Te lo dejo Adjunto para que lo veas, esta hecho en gm8  :GM8:

Gracial Elvis. Yo también lo miraré por que tampoco me aclaro...

#11 Febrero 25, 2014, 12:43:49 AM Ultima modificación: Febrero 25, 2014, 05:50:16 AM por vampy09
Cita de: penumbra en Febrero 24, 2014, 03:05:55 AM
¿Por qué tanto desprecio al manual? Pareciera que es pecado consultarlo..

Comparto tu opinion  :-X

Bueno espero que te ayude mi explicacion, trate de hacerla lo mas visual posible.
Saludos!




[EDIT]
*Un STEP no es lo mismo que el EVENTO STEP, BEGIN STEP, END STEP.*
The next best thing to knowing something,
is knowing where to find it.