Funciones

screen : Manejo de la pantalla.

Funciones

nil screen.flip ()
 Actualiza la pantalla mostrando los cambios. Los cambios realizados en el búffer de dibujado se mostrarán en la pantalla actual, y el búffer de dibujado quedará completamente limpio de nuevo (negro).
nil screen.clear (color col)
 Limpia la pantalla.
nil screen.clip (int x, int y, int w, int h)
 Limita el área de dibujo.
nil screen.clip ()
 Quita la limitación de área de dibujo.
nil screen.print (number x, number y, string texto)
 Mostrar texto. (Blanco, tamaño normal, fuente predeterminada).
nil screen.print (fuente font, number x, number y, string texto)
 Mostrar texto. (Blanco, tamaño normal, fuente propia).
nil screen.print (number x, number y, string texto, color col)
 Mostrar texto. (Color, tamaño normal, fuente predeterminada).
nil screen.print (fuente font, number x, number y, string texto, color col)
 Mostrar texto. (Color, tamaño normal, fuente propia).
nil screen.print (number x, number y, string texto, number tam, color letras, color sombra)
 Mostrar texto con color y sombra, tamaño ajustable, fuente predeterminada.
nil screen.print (fuente font, number x, number y, string texto, number tam, color letras, color sombra)
 Mostrar texto con color y sombra, tamaño ajustable, fuente propia.
nil screen.print (number x, number y, string texto, number tam, color letras, color sombra, string alineado)
 Mostrar texto con color y sombra, tamaño ajustable, alineado, fuente predeterminada.
nil screen.print (fuente font, number x, number y, string texto, number tam, color letras, color sombra, string alineado)
 Mostrar texto con color y sombra, tamaño ajustable, alineado, fuente propia.
nil screen.print (number x, number y, string texto, number tam, color letras, color sombra, string alineado, int ancho)
 Mostrar texto con color y sombra, tamaño ajustable, alineado, con ancho, fuente predeterminada.
nil screen.print (fuente font, number x, number y, string texto, number tam, color letras, color sombra, string alineado, int ancho)
 Mostrar texto con color y sombra, tamaño ajustable, alineado, con ancho, fuente propia.
number screen.print (number x, number y, string texto, number tam, color letras, color sombra, string scroll, int ancho)
 Texto con scrolling automático, fuente predeterminada.
number screen.print (fuente font, number x, number y, string texto, number tam, color letras, color sombra, string scroll, int ancho)
 Texto con scrolling automático, fuente propia.
number screen.textwidth (string texto, number tam)
 Calcular ancho del texto con la fuente predeterminada.
number screen.textwidth (fuente font, string texto, number tam)
 Calcular ancho del texto con una fuente propia.
imagen screen.toimage ()
 Capturar pantalla.
imagen screen.buffertoimage ()
 Capturar pantalla. (El búffer).
nil screen.waitvblank ()
 Esperar hasta que termine el refresco vertical.
nil screen.waitvblankstart ()
 Esperar hasta que comienze el refresco vertical.
nil screen.enable ()
 Enciende la pantalla.

Excepciones:
En HBL esta función no hace nada.

nil screen.disable ()
 Apaga la pantalla.

Excepciones:
En HBL esta función no hace nada.

number screen.brightness ()
 Conocer el brillo de la pantalla.

Excepciones:
En HBL esta función devuelve -1.

nil screen.brightness (int brillo)
 Setear el brillo de la pantalla.
nil screen.sync ()
 Sincroniza la lista GU interna.
nil screen.frameskip (int frames)
 Activa el frameskip.
nil screen.frameskip ()
 Desctiva el frameskip.
nil screen.dithering (int activado)
 Activa / desactiva el suavizado.
nil screen.bilinear (int activado)
 Activa / desactiva el filtro bilinear.
nil screen.fps ()
 Framerate actual.

Descripción detallada

En este módulo se incorporan todas las funciones relacionadas la pantalla.


Documentación de las funciones

nil screen.flip (  ) 

Actualiza la pantalla mostrando los cambios. Los cambios realizados en el búffer de dibujado se mostrarán en la pantalla actual, y el búffer de dibujado quedará completamente limpio de nuevo (negro).

Devuelve:
Nada
nil screen.clear ( color  col  ) 

Limpia la pantalla.

Parámetros:
col Color a utilizar para limpiar la pantalla. Si no se especifica se limpiará de negro por defecto.
Devuelve:
Nada
nil screen.clip ( int  x,
int  y,
int  w,
int  h 
)

Limita el área de dibujo.

Cualquier comando que dibuje algo en la pantalla, sólo podrá modificar el rectángulo definido por x,y,w,h.
Es decir, cualquier cambio fuera de este rectángulo se omite.

Parámetros:
x Posición X.
y Posición Y.
w Ancho.
h Alto.
Devuelve:
Nada
nil screen.clip (  ) 

Quita la limitación de área de dibujo.

Esta función es lo mismo que hacer screen.clip(0,0,480,272)

Devuelve:
Nada
nil screen.print ( number  x,
number  y,
string  texto 
)

Mostrar texto. (Blanco, tamaño normal, fuente predeterminada).

Parámetros:
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
Devuelve:
Nada
nil screen.print ( fuente  font,
number  x,
number  y,
string  texto 
)

Mostrar texto. (Blanco, tamaño normal, fuente propia).

Parámetros:
font Un objeto de fuente.
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
Devuelve:
Nada
nil screen.print ( number  x,
number  y,
string  texto,
color  col 
)

Mostrar texto. (Color, tamaño normal, fuente predeterminada).

Parámetros:
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
col Color del texto.
Devuelve:
Nada
nil screen.print ( fuente  font,
number  x,
number  y,
string  texto,
color  col 
)

Mostrar texto. (Color, tamaño normal, fuente propia).

Parámetros:
font Un objeto de fuente.
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
col Color del texto.
Devuelve:
Nada
nil screen.print ( number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra 
)

Mostrar texto con color y sombra, tamaño ajustable, fuente predeterminada.

Parámetros:
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
Devuelve:
Nada
nil screen.print ( fuente  font,
number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra 
)

Mostrar texto con color y sombra, tamaño ajustable, fuente propia.

Parámetros:
font Un objeto de fuente.
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
Devuelve:
Nada
nil screen.print ( number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  alineado 
)

Mostrar texto con color y sombra, tamaño ajustable, alineado, fuente predeterminada.

Parámetros:
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
alineado Uno de lo siguientes:

  • "left" - Alinear a la izquierda (por defecto)
  • "center" - Alinear al centro.
  • "right" - Alinear a la derecha.
  • "full" - Ajuste completo.
Devuelve:
Nada
nil screen.print ( fuente  font,
number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  alineado 
)

Mostrar texto con color y sombra, tamaño ajustable, alineado, fuente propia.

Parámetros:
font Un objeto de fuente.
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
alineado Uno de lo siguientes:

  • "left" - Alinear a la izquierda (por defecto)
  • "center" - Alinear al centro.
  • "right" - Alinear a la derecha.
  • "full" - Ajuste completo.
Devuelve:
Nada
nil screen.print ( number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  alineado,
int  ancho 
)

Mostrar texto con color y sombra, tamaño ajustable, alineado, con ancho, fuente predeterminada.

Parámetros:
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
alineado Uno de lo siguientes:

  • "left" - Alinear a la izquierda (por defecto)
  • "center" - Alinear al centro.
  • "right" - Alinear a la derecha.
  • "full" - Ajuste completo.
ancho El texto se escribirá en un bloque ajustado por este parámetro.
Devuelve:
Nada
nil screen.print ( fuente  font,
number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  alineado,
int  ancho 
)

Mostrar texto con color y sombra, tamaño ajustable, alineado, con ancho, fuente propia.

Parámetros:
font Un objeto de fuente.
x Coordenada X.
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
alineado Uno de lo siguientes:

  • "left" - Alinear a la izquierda (por defecto)
  • "center" - Alinear al centro.
  • "right" - Alinear a la derecha.
  • "full" - Ajuste completo.
ancho El texto se escribirá en un bloque ajustado por este parámetro.
Devuelve:
Nada
number screen.print ( number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  scroll,
int  ancho 
)

Texto con scrolling automático, fuente predeterminada.

Ejemplo:
x = 10; -- iniciación.
while true do
x = screen.print(10,10,"texto",0.77,color.new(255,0,0),color.new(0,0,0),"scroll_through",300);
screen.flip();
end

Parámetros:
x Coordenada X. (utilizar la salida de la función en la próxima llamada).
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
scroll Uno de lo siguientes:

  • "scroll_left" - Letras se desplazan hacia la izquierda.
  • "scroll_right" - Letras se desplazan hacia la derecha.
  • "scroll_through" - Letras se desplazan hacia la izquierda, a través. Estilo Winamp.
ancho El ancho del scroller.
Devuelve:
Un número, que deberá ser pasado de nuevo como coordenada X.
number screen.print ( fuente  font,
number  x,
number  y,
string  texto,
number  tam,
color  letras,
color  sombra,
string  scroll,
int  ancho 
)

Texto con scrolling automático, fuente propia.

Ejemplo:
x = 10; -- iniciación.
while true do
x = screen.print(10,10,"texto",0.77,color.new(255,0,0),color.new(0,0,0),"scroll_through",300);
screen.flip();
end

Parámetros:
font Un objeto de fuente.
x Coordenada X. (utilizar la salida de la función en la próxima llamada).
y Coordenada Y.
texto Texto a mostrar.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
letras Color del texto.
sombra Color de la sombra del texto.
scroll Uno de lo siguientes:

  • "scroll_left" - Letras se desplazan hacia la izquierda.
  • "scroll_right" - Letras se desplazan hacia la derecha.
  • "scroll_through" - Letras se desplazan hacia la izquierda, a través. Estilo Winamp.
ancho El ancho del scroller.
Devuelve:
Un número, que deberá ser pasado de nuevo como coordenada X.
number screen.textwidth ( string  texto,
number  tam 
)

Calcular ancho del texto con la fuente predeterminada.

Parámetros:
texto Texto a calcular.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
Devuelve:
El ancho en píxeles, que ocuparía en pantalla este texto.
number screen.textwidth ( fuente  font,
string  texto,
number  tam 
)

Calcular ancho del texto con una fuente propia.

Parámetros:
font Un objeto de fuente.
texto Texto a calcular.
tam Un número representando el tamaño de la fuente. Valores recomendados entre 0.5 y 1.5
Devuelve:
El ancho en píxeles, que ocuparía en pantalla este texto.
imagen screen.toimage (  ) 

Capturar pantalla.

Devuelve una imágen, con lo que se vé en pantalla.

Devuelve:
Devuelve una imagen, del módulo image, con lo que hay actualmente en la pantalla.
Un objeto del tipo imágen.
imagen screen.buffertoimage (  ) 

Capturar pantalla. (El búffer).

Devuelve una imágen, con lo que no se vé en pantalla (el búffer).

El búffer contiene todos los cambios realizados a la pantalla desde el último flip realizado.

Devuelve:
Devuelve una imagen, del módulo image, con lo que hay actualmente en el búffer.

Es decir, lo que hay entre un screen.flip() y esta función, cualquier cambio realizado a la pantalla, pero no actualizado, queda en el búffer.

Devuelve:
Un objeto del tipo imágen.
nil screen.waitvblank (  ) 

Esperar hasta que termine el refresco vertical.

Devuelve:
Nada.
nil screen.waitvblankstart (  ) 

Esperar hasta que comienze el refresco vertical.

Devuelve:
Nada.
nil screen.enable (  ) 

Enciende la pantalla.

Excepciones:
En HBL esta función no hace nada.

Devuelve:
Nada.
nil screen.disable (  ) 

Apaga la pantalla.

Excepciones:
En HBL esta función no hace nada.

Devuelve:
Nada.
number screen.brightness (  ) 

Conocer el brillo de la pantalla.

Excepciones:
En HBL esta función devuelve -1.

Devuelve:
Un número con el valor del brillo de la pantalla.
nil screen.brightness ( int  brillo  ) 

Setear el brillo de la pantalla.

Parámetros:
brillo El nuevo brillo de la pantalla. (De 10 a 90 son valores adecuados)
Excepciones:
En HBL esta función no hace nada.
Devuelve:
Nada.
nil screen.sync (  ) 

Sincroniza la lista GU interna.

Esta función no será requerida, ni su uso será frecuente. Tan sólo se debería usar cuando se dibujan diversos modelos 3D con gran cantidad de polígonos, y la lista actual no tiene el tamaño suficiente como para pintarlo. Es decir, si tras varios model.blit se cuelga, pero no se cuelgan por separado, será necesario intercalar un screen.sync() entre los blits.

Devuelve:
Nada.
nil screen.frameskip ( int  frames  ) 

Activa el frameskip.

Sólo recomendado si tu juego va lento gráficamente, y ni aumentando la cpu consigues que vaya rápido. Esta función se saltará los suficientes frames para que el homebrew corra de nuevo a gran velocidad.

Parámetros:
frames Número máximo de frames a saltar.
Devuelve:
Nada.
nil screen.frameskip (  ) 

Desctiva el frameskip.

Devuelve:
Nada.
nil screen.dithering ( int  activado  ) 

Activa / desactiva el suavizado.

Utilizar esta función sólo con módos de pantalla inferiores a RGBA8888. (32 bits)

Parámetros:
activado Pasar 1 para activar, 0 para desactivar.
Devuelve:
Nada.
nil screen.bilinear ( int  activado  ) 

Activa / desactiva el filtro bilinear.

Esta función suavizará imágenes al rotarlas.

Parámetros:
activado Pasar 1 para activar, 0 para desactivar.
Devuelve:
Nada.
nil screen.fps (  ) 

Framerate actual.

Devuelve:
Devuelve el número de frames por segundo de media actual.