Package pilas :: Package actores :: Module texto_inferior
[hide private]
[frames] | no frames]

Source Code for Module pilas.actores.texto_inferior

 1  # -*- encoding: utf-8 -*- 
 2  # Pilas engine - A video game framework. 
 3  # 
 4  # Copyright 2010 - Hugo Ruscitti 
 5  # License: LGPLv3 (see http://www.gnu.org/licenses/lgpl.html) 
 6  # 
 7  # Website - http://www.pilas-engine.com.ar 
 8   
 9  import pilas 
10  from texto import Texto 
11   
12   
13 -class TextoInferior(Texto):
14 """Representa un texto al pie de la ventana. 15 16 Esta clase se utiliza desde el método "pilas.avisar()". 17 """ 18 anterior_texto = None 19
20 - def __init__(self, texto="None", x=0, y=0, magnitud=17, autoeliminar=False, retraso=5):
21 """Inicializa el texto. 22 23 :param texto: Texto a mostrar. 24 :param x: Posición horizontal. 25 :param y: Posición vertical. 26 :param magnitud: Tamaño del texto. 27 :param vertical: Si el texto será vertical u horizontal, como True o False. 28 """ 29 Texto.__init__(self, texto, x, y, magnitud) 30 izquierda, derecha, arriba, abajo = pilas.utils.obtener_bordes() 31 32 # Se asegura de que solo exista un texto inferior 33 if TextoInferior.anterior_texto: 34 TextoInferior.anterior_texto.eliminar() 35 36 self.z = -100 37 TextoInferior.anterior_texto = self 38 self._crear_sombra() 39 40 self.centro = ("centro", "centro") 41 self.izquierda = izquierda + 10 42 self.color = pilas.colores.blanco 43 self.abajo = abajo + 10 44 self.fijo = True 45 46 if autoeliminar: 47 pilas.escena_actual().tareas.una_vez(retraso, self.eliminar)
48
49 - def _crear_sombra(self):
50 """Genera una sombra para el texto.""" 51 izquierda, derecha, arriba, abajo = pilas.utils.obtener_bordes() 52 imagen = pilas.imagenes.cargar_superficie(derecha - izquierda, 40) 53 imagen.pintar(pilas.colores.negro_transparente) 54 55 self.sombra = pilas.actores.Actor(imagen) 56 self.sombra.z = self.z + 1 57 self.sombra.fijo = True 58 self.sombra.abajo = abajo 59 self.sombra.izquierda = izquierda
60
61 - def eliminar(self):
62 """Quita el texto de la escena.""" 63 Texto.eliminar(self) 64 self.sombra.eliminar()
65