Junio 10, 2013, 03:34:30 PM Ultima modificación: Junio 10, 2013, 05:20:28 PM por abramelin
tengo este codigo en el draw del jugador1, pero cuando salta me cambia el sprite (como si hiciera un flip y mirror) lo que quiero es que el script de sombra solo se ejecute cuando no este saltando, y cuando salte se vean los sprites sin afectar por el script ¿que tengo mal?


if salto=0
{
shadow_x=1;
shadow_y=183;
shadow_xsize=-1;
shadow_ysize=0.7;
shadow_alpha=0.5;
script_execute(scr_shadows);
draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,direction+180,image_blend,1)
}
else
{

sprite_exists(1)
}

al saltar el jugador desaparece, no se que sentencia poner, cuando choca con los bordes tambien se da la vuelta el sprite.... a ver si a alguien se le ocurre algo...

#1 Junio 10, 2013, 05:46:56 PM Ultima modificación: Junio 10, 2013, 06:09:39 PM por romon_28
El sprite del personaje es algo que, por lo general, tiene que estar visible. Para hacer eso tendrias que dibujarlo sin ninguna condicion de salto, asi:

if salto=0
{
shadow_x=1;
shadow_y=183;
shadow_xsize=-1;
shadow_ysize=0.7;
shadow_alpha=0.5;
script_execute(scr_shadows);
}

draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,direction+180,image_blend,1);

El script podrias usarlo en otro objeto asi que las variables de la sombra tendrian que estar en el mismo script, asi:

// Nombre del script: scr_shadows
// Modo de uso: scr_shadows( Salto );  --> Salto = 0 / 1
var shadow_x,shadow_xsize,shadow_xsize,shadow_alpha;
shadow_x=x+1;
if (!argument0)
{
shadow_y=y+183;
}
shadow_xsize=-1;
shadow_ysize=0.7;
shadow_alpha=0.5;

draw_sprite_ext(sprite_index,image_index,shadow_x,shadow_y,shadow_xsize,shadow_ysize,direction,0,shadow_alpha);

Por lo que el codigo anterior lo podemos cambiar por:

scr_shadows(salto);
draw_sprite_ext(sprite_index,image_index,x,y,image_xscale,image_yscale,direction+180,image_blend,1);

Como vez es mucho mas amigable y prolijo.

NOTA: shadow_y tiene que iniciar con 0, Asi: shadow_y=0;

#2 Junio 10, 2013, 07:35:09 PM Ultima modificación: Junio 10, 2013, 08:41:08 PM por abramelin
he probado tu codigo y esto es lo que me a pasado...
1º esta con tu codigo,2º con el codigo de antes, y 3º sin script

http://www.youtube.com/watch?v=w7hzx_QiAAY&feature=youtu.be

no se si he puesto algo mal, lo que quiero es que los sprites del salto se comporten como en la parte 3 (sin script), y que salga la sombra como en la parte 2



aaa es un juego de peleas... ya se cual es la solucion.. despues te la paso

Aca el ejemplo.
NOTA: Lo que esta en el evente step no tiene que ver directamente con la sombra.

gracias por el ejemplo, lo acabo de probar en mi juego y funciona bien para la sombra, pero el sprite del jugador no cambia, curiosamente en la sombra se ven todas las animaciones, pero no en el jugador.
lástima... me habia emocionado porque ademas este script se ve mucho mas sencillo.