Ayuda > F.A.Q.
Desvanecer pantalla
(1/1)
eduardo960:
Para hacer efecto de transición de room en el que la pantalla se desvanezca lentamente, necesitamos crear un objeto que dibuje un rectángulo negro a lo largo y ancho de la view.
Crea un o_transicion, y dale el valor de Persistent. Esto hará que el objeto no se borre cuando se haga el cambio de room.
Ahora coloca esto en el Evento Create:
--- Código: ---alpha = 0 //valor actual de transparencia del rectángulo
paso = 0 //el paso en la transición
objetivo = 0 //el room hacia el que cambiará la transición
--- Fin del código ---
Ahora gradualmente aumentaremos el valor de alpha para que el rectángulo se dibuje más opaco y, en consecuencia, la pantalla se verá cada vez más oscura. Esto lo colocaremos en el Evento Draw.
--- Código: ---if(paso = 0 and alpha >= 1) //cuando se termine de oscurecer la pantalla
{
room_goto(objetivo)
paso = 1 //ir al siguiente paso
//tiempo de espera para cambiar al siguiente room:
alarm[0] = room_speed*1 //1 segundo
}
if(paso = 2 and alpha <= 0) //cuando se haya hecho el cambio de room y se termino la transición
{
instance_destroy() //eliminar el objeto
}
if(paso = 0){
//puedes aumentar o reducir este valor para que la transición sea más rápida o más lenta , correspondientemente.
alpha += 0.05
}
else if(paso = 2)
{
alpha -= 0.05
}
//dibujar el rectangulo negro en la pantalla
draw_set_alpha(alpha)
draw_set_color(c_black)
draw_rectangle(view_xview,view_yview,view_xview+view_wview,view_yview+view_hview,false)
--- Fin del código ---
Para que funcione nuestra "pausa" a la mitad de la transicíón, coloca esto en el Evento Alarm 0.
--- Código: ---paso = 2
--- Fin del código ---
Para activar la transición usa este código:
--- Código: ---_id = instance_create(0,0,o_transicion)
_id.objetivo = room1 //coloca aqui el nombre del cuarto al que se cambiará
--- Fin del código ---
Navegación
Ir a la versión completa