Package pilas :: Module mundo
[hide private]
[frames] | no frames]

Source Code for Module pilas.mundo

 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  from pilas import control 
10  from pilas import fisica 
11  from pilas.escena import Gestor, Normal 
12   
13   
14 -class Mundo(object):
15 """Representa un objeto unico que mantiene en funcionamiento al motor. 16 17 Mundo tiene como responsabilidad iniciar los componentes del 18 motor y mantener el bucle de juego. 19 """ 20
21 - def __init__(self, motor, ancho, alto, titulo, rendimiento=60, gravedad=(0, -10), pantalla_completa=False):
22 self.gestor_escenas = Gestor() 23 24 self.motor = motor 25 self.motor.iniciar_ventana(ancho, alto, titulo, pantalla_completa, self.gestor_escenas, rendimiento) 26 27 self.gravedad = gravedad
28
29 - def crear_motor_fisica(self):
30 return fisica.crear_motor_fisica(self.motor.obtener_area(), gravedad=self.gravedad)
31
32 - def reiniciar(self):
33 self.gestor_escenas.limpiar() 34 self.gestor_escenas.cambiar_escena(Normal())
35
36 - def terminar(self):
37 self.motor.terminar()
38
39 - def ejecutar_bucle_principal(self, ignorar_errores=False):
40 "Mantiene en funcionamiento el motor completo." 41 self.motor.ejecutar_bucle_principal(self, ignorar_errores)
42
43 - def agregar_tarea_una_vez(self, time_out, function, *params):
44 return self.gestor_escenas.escena_actual().tareas.una_vez(time_out, function, params)
45
46 - def agregar_tarea_siempre(self, time_out, function, *params):
47 return self.gestor_escenas.escena_actual().tareas.siempre(time_out, function, params)
48
49 - def agregar_tarea(self, time_out, funcion, *parametros):
50 return self.gestor_escenas.escena_actual().tareas.condicional(time_out, funcion, parametros)
51
52 - def deshabilitar_sonido(self, estado=True):
53 self.motor.deshabilitar_sonido(estado)
54
55 - def deshabilitar_musica(self, estado=True):
56 self.motor.deshabilitar_musica(estado)
57
58 - def get_tareas_deprecated(self):
59 print "CUIDADO: Acceder al atributo 'tareas' esta desaconsejado." 60 print "\t utilice en su lugar: pilas.utils.agregar_tarea, agregar_tarea_una_vez o agregar_tarea_siempre" 61 return self.gestor_escenas.escena_actual().tareas
62
63 - def get_camara_deprecated(self):
64 print "CUIDADO: Acceder al atributo 'camara' esta desaconsejado." 65 print "\t utilice en su lugar: pilas.escena_actual().camara" 66 return self.gestor_escenas.escena_actual().camara
67
69 print "CUIDADO: Acceder al atributo 'colisiones' esta desaconsejado." 70 print "\t utilice en su lugar: pilas.escena_actual().colisiones" 71 return self.gestor_escenas.escena_actual().colisiones
72
73 - def get_control_deprecated(self):
74 print "CUIDADO: Acceder al atributo 'control' esta desaconsejado." 75 print "\t utilice en su lugar: pilas.escena_actual().control" 76 return self.gestor_escenas.escena_actual().control
77 78 tareas = property(get_tareas_deprecated) 79 camara = property(get_camara_deprecated) 80 colisiones = property(get_colisiones_deprecated) 81 control = property(get_control_deprecated)
82