bueno soy nuevo en esto y estoy creando un personaje ya se puede mover a la derecha e izquierda sin problema pero cuando presiono para abajo el gif que le tengo designado queda en un loop ( se repite ) quisiera saber que puedo hacer para que se quede abajo con la imagen del  ultimo sprite mientras mantengo apretado abajo eso gracias de antemano

pd:no se nada de codigos  :P

hola..  puedes crear en tu personaje una variable..

img_max=5;//  pon aqui el numero de subimagen de tu sprite agachado  en la que quieras que se quede

y ahora en step:

if sprite index=spr_agacharse{  //cambialo por el nombre de tu sprite agachandose
  if image_index>img_max{image_index=img_max}// limitacion de la imagen
}

Cita de: omick en Enero 17, 2015, 03:39:30 AM
hola..  puedes crear en tu personaje una variable..

img_max=5;//  pon aqui el numero de subimagen de tu sprite agachado  en la que quieras que se quede

y ahora en step:

if sprite index=spr_agacharse{  //cambialo por el nombre de tu sprite agachandose
  if image_index>img_max{image_index=img_max}// limitacion de la imagen
}

tengo otro problema hice que el personaje se agachara pero no hace la animacion completa pasa de parado a agachado ocupando solamente el ultimo sprite se ¨spr_agachado¨

te dejo el codigo

if keyboard_check (vk_down)
{
image_index = 4
image_speed = 0.4
sprite_index = spr_agachado_derecha
}

if keyboard_check_released (vk_down)
{
sprite_index = spr_agachado_derecha
image_index = 0
image_speed = 0
}

Cita de: newfagnewfag en Enero 24, 2015, 06:04:39 AM
tengo otro problema hice que el personaje se agachara pero no hace la animacion completa pasa de parado a agachado ocupando solamente el ultimo sprite se ¨spr_agachado¨
No hace la animación porque eso lo que le estás indicando:

image_index = 4
En lugar de que la animación comience en la subimagen 0, luego avance a 1, 2, 3, etc, tú le estás indicando que en cuanto se presione la tecla de flecha abajo, cambie inmediatamente a la subimagen 4, por eso no se muestra la animación como debe ser.

No hace la animación porque eso lo que le estás indicando:

image_index = 4
En lugar de que la animación comience en la subimagen 0, luego avance a 1, 2, 3, etc, tú le estás indicando que en cuanto se presione la tecla de flecha abajo, cambie inmediatamente a la subimagen 4, por eso no se muestra la animación como debe ser.
[/quote]

ok, se le cambie a 0 y el personaje se queda quieto  :-\

Prueba poniendo otra condicion:

if keyboard_check (vk_down) and sprite_index!=spr_agachado_derecha{image_index = 0;image_speed = 0.4sprite_index = spr_agachado_derecha}

Cita de: omick en Enero 24, 2015, 07:19:18 AM
Prueba poniendo otra condicion:

if keyboard_check (vk_down) and sprite_index!=spr_agachado_derecha{image_index = 0;image_speed = 0.4sprite_index = spr_agachado_derecha}

tampoco help please  :'(

#7 Enero 24, 2015, 07:33:14 AM Ultima modificación: Enero 24, 2015, 07:47:14 AM por penumbra
Cita de: newfagnewfag en Enero 24, 2015, 07:08:51 AM
ok, se le cambie a 0 y el personaje se queda quieto  :-\
Como el código está en STEP, NO SE DEBE especificar ninguna subimagen en particular, sino darle simplemente velocidad a la animación. Para asegurar que la animación siempre comience en la subimagen 0, en el evento de tecla DOWN PRESSED se puede poner
[gml]image_index = 0[/gml]
que es el evento correcto para especificar un valor individual de subimagen, porque a diferencia de STEP, sólo se ejecuta una vez al presionar la tecla

En síntesis:

[STEP][gml]
if keyboard_check(vk_down) and sprite_index != spr_agachado_derecha
{
     sprite_index = spr_agachado_derecha
     image_speed = 0.4
}[/gml]

[Evento Tecla DOWN PRESS]
[gml]
image_index = 0
[/gml]

Como el código está en STEP, NO SE DEBE especificar ninguna subimagen en particular, sino darle simplemente velocidad a la animación. Para asegurar que la animación siempre comience en la subimagen 0, en el evento de tecla DOWN PRESSED se puede poner
[gml]image_index = 0[/gml]
que es el evento correcto para especificar un valor individual de subimagen, porque a diferencia de STEP, sólo se ejecuta una vez al presionar la tecla

En síntesis:

[STEP][gml]
if keyboard_check(vk_down) and sprite_index != spr_agachado_derecha
{
     sprite_index = spr_agachado_derecha
     image_speed = 0.4
}[/gml]

[Evento Tecla DOWN PRESS]
[gml]
image_index = 0
[/gml]
[/quote]

funciona  :), pero :o el sprite se repite  :-\

Sabía que esa iba a ser la próxima pregunta. Para solucionar eso, en STEP agrega esto

[gml]if (sprite_index == spr_agachado_derecha) and (image_index >= image_number - 1)
     image_speed = 0[/gml]

Cita de: penumbra en Enero 24, 2015, 08:02:19 AM
Sabía que esa iba a ser la próxima pregunta. Para solucionar eso, en STEP agrega esto

[gml]if (sprite_index == spr_agachado_derecha) and (image_index >= image_number - 1)
     image_speed = 0[/gml]

me funciono gracias pero tengo otra pregunta por que no me puedo agachar mas de una vez en el mismo lugar ?