Anuncios Google

[LuaDEV] Fade In, Fade off, y cambios de tamaño o animacion de la fuente.

Bien, mis siguientes preguntas son:

 

  • Como puedo hacer un Fade In y Fade off (pantalla negra entra y/o sale)?

 

  • Puedo hacer que mis letras aparezcan una por una, como un juego de rol, o algo asi por el estilo? Ó conseguir hacer que la fuente vaya cambiando de tamaño en un periodo de 5 segundos por ejemplo.?

 

Gracias! :D

 


En un par de proyectos:

Current: Fantasymind  [||                  ] PROGRESS: 10%

Next: FAR STARS


Twitter: @Cere_Ender


 


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Fácil, usando la función

  • Fácil, usando la función image.blend() y un ciclo for el canal alpha. Insisto, es fácil, pero si no se te ocurre cómo, te sugiero revises mi librería.
  • Aparecer letras una por una... necesitarás las funciones string.len() y string.sub() (búscalas en la documentación si no las conoces). Es muy sencillo usar string.sub:
    texto = "una cadena xD"
     
    for i=1, texto:len() do
       screen.print(50,50,texto:sub(1,i))
          os.sleep(2) --2 segundos de espera
             screen.flip()
    end

    Claro, depende de ti hacer algo más elaborado ;)

    Cambiar el tamaño de la fuente cada 5 segundos... recomiendo usar timers para lograr el retraso deseado (aquí un ejemplo de timers). Después... es cosa de indicar un tamaño de fuente diferente (ver la documentación para saber todos los parámetros adicionales de screen.print)

De esta forma quedara mas

De esta forma quedara mas 'profesional' y elegante.

Imagen de Cere_Ender

me da error:   script.lua:6:

vale, y eso del canal alpha como se maneja? ._.

Revisa el código de esta

Revisa el código de esta librería (se me olvidó poner el link arriba xD)

Lo verás en el código, el canal alpha indica transparencia. Si mal no recuerdo, 255 es totalmente visible y 0 es totalmente transparente. Te recomiendo revises la documentación de LuaDEV sobre la función image.blend (es lo mismo que el blit, pero maneja transparencia)

Imagen de markef

.

Recuerdas bien xd 255 es lo máximo.
Un ejemplo del canal alpha:

color = color.new(r,g,b,alpha);

Ejemplo práctico

rojo = color.new(255,0,0,150);
blanco = color.new(255,255,255,100);
 
while (true) do
 
screen.print(100,100,"Hola SceneBeta",0.7,blanco,rojo);
 
screen.flip();
 
end;
 


Dicen que soy programador... Eso dicen.

Imagen de Cere_Ender

Es genial!  pero esto dentro

Es genial! 

pero esto dentro del bucle while true do? o es otro tipo de bucle? ._.

 

Recomiendo ponerlo así ( el

Recomiendo ponerlo así ( el os.sleep después del flip ya que así se verá la última letra) :

texto = "una cadena xD"
 
for i=1, texto:len() do
	screen.print(50,50,texto:sub(1,i))
	screen.flip()
	os.sleep(0.25) -- 250 milisegundos de espera
end

 

Y eso ya es un bucle por lo que si no quieres que se repita infinitamente no lo pongas en el while. 

Imagen de markef

.

Sehh, puedes conseguir el efecto haciendo un degradado a las letras (transparente-negro) de izquierda a derecha, o tener las imágenes de las letras almazenadas en una carpeta e irlas bliteando...

Un saludo. 


Dicen que soy programador... Eso dicen.

Imagen de barney77

Mucho mejor haciendo un for y

Mucho mejor haciendo un for y image.blend().

Imagen de markef

Pues

Pues eso jajaja He dicho lo mismo que RG, solo que el lo ha puesto en código.

Salu2! 

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.