Example #1
0
class Mundo(object):
    """Representa un objeto unico que mantiene en funcionamiento al motor.

    Mundo tiene como responsabilidad iniciar los componentes del
    motor y mantener el bucle de juego.
    """

    def __init__(self, motor, ancho, alto, titulo, rendimiento=60, gravedad=(0, -10), pantalla_completa=False, centrado=True):
        self.gestor_escenas = Gestor()

        self.motor = motor
        self.motor.iniciar_ventana(ancho, alto, titulo, pantalla_completa, self.gestor_escenas, rendimiento, centrado)

        self.gravedad = gravedad

    def crear_motor_fisica(self):
        return fisica.crear_motor_fisica(self.motor.obtener_area(), gravedad=self.gravedad)

    def reiniciar(self):
        self.gestor_escenas.limpiar()
        self.gestor_escenas.cambiar_escena(Normal())

    def terminar(self):
        self.motor.terminar()

    def ejecutar_bucle_principal(self, ignorar_errores=False):
        "Mantiene en funcionamiento el motor completo."
        self.motor.ejecutar_bucle_principal(self, ignorar_errores)

    def agregar_tarea_una_vez(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.una_vez(time_out, function, params)

    def agregar_tarea_siempre(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.siempre(time_out, function, params)

    def agregar_tarea(self, time_out, funcion, *parametros):
        return self.gestor_escenas.escena_actual().tareas.condicional(time_out, funcion, parametros)

    def deshabilitar_sonido(self, estado=True):
        self.motor.deshabilitar_sonido(estado)

    def deshabilitar_musica(self, estado=True):
        self.motor.deshabilitar_musica(estado)

    @property
    @dev.deprecated(se_desactiva_en="0.79", se_elimina_en="0.8",
                    reemplazo="pilas.utils.agregar_tarea, agregar_tarea_una_vez o agregar_tarea_siempre")
    def tareas(self):
        return self.gestor_escenas.escena_actual().tareas

    @property
    @dev.deprecated(se_desactiva_en="0.79", se_elimina_en="0.8",
                    reemplazo="pilas.escena_actual().camara")
    def camara(self):
        return self.gestor_escenas.escena_actual().camara

    @property
    def colisiones(self):
        return self.gestor_escenas.escena_actual().colisiones

    @property
    def control(self):
        return self.gestor_escenas.escena_actual().control
Example #2
0
class Mundo(object):
    """Representa un objeto unico que mantiene en funcionamiento al motor.

    Mundo tiene como responsabilidad iniciar los componentes del
    motor y mantener el bucle de juego.
    """

    def __init__(self, motor, ancho, alto, titulo, rendimiento=60, area_fisica=None,
                 gravedad=(0, -10), pantalla_completa=False, centrado=True):

        self.gestor_escenas = Gestor()

        self.motor = motor
        self.motor.iniciar_ventana(ancho, alto, titulo, pantalla_completa, self.gestor_escenas, rendimiento, centrado)

        self.area_fisica = area_fisica
        self.gravedad = gravedad

    def crear_motor_fisica(self):
        if self.area_fisica != None:
            return fisica.crear_motor_fisica(self.area_fisica, gravedad=self.gravedad)
        else:
            return fisica.crear_motor_fisica(self.obtener_area(), gravedad=self.gravedad)

    def reiniciar(self):
        self.gestor_escenas.limpiar()
        self.gestor_escenas.cambiar_escena(Normal())
        self.motor.canvas.depurador.reiniciar()

    def terminar(self):
        self.motor.terminar()

    def ejecutar_bucle_principal(self):
        "Mantiene en funcionamiento el motor completo."
        self.motor.ejecutar_bucle_principal()

    def agregar_tarea_una_vez(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.una_vez(time_out, function, params)

    def agregar_tarea_siempre(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.siempre(time_out, function, params)

    def agregar_tarea(self, time_out, funcion, *parametros):
        return self.gestor_escenas.escena_actual().tareas.condicional(time_out, funcion, parametros)

    def deshabilitar_sonido(self, estado=True):
        self.motor.deshabilitar_sonido(estado)

    def deshabilitar_musica(self, estado=True):
        self.motor.deshabilitar_musica(estado)

    def definir_gravedad(self, x, y):
        """Define la gravedad del motor de física.

        :param x: Aceleración horizontal.
        :param y: Aceleración vertical.
        """
        self.gestor_escenas.escena_actual().fisica.definir_gravedad(x, y)

    def obtener_area(self):
        return (self.motor.ancho_original, self.motor.alto_original)

    @property
    @dev.deprecated(se_desactiva_en="0.79", se_elimina_en="0.8",
                    reemplazo="pilas.utils.agregar_tarea, agregar_tarea_una_vez o agregar_tarea_siempre")
    def tareas(self):
        return self.gestor_escenas.escena_actual().tareas

    @property
    @dev.deprecated(se_desactiva_en="0.79", se_elimina_en="0.8",
                    reemplazo="pilas.escena_actual().camara")
    def camara(self):
        return self.gestor_escenas.escena_actual().camara

    @property
    def colisiones(self):
        return self.gestor_escenas.escena_actual().colisiones

    @property
    def control(self):
        return self.gestor_escenas.escena_actual().control
Example #3
0
class Mundo(object):
    """Representa un objeto unico que mantiene en funcionamiento al motor.

    Mundo tiene como responsabilidad iniciar los componentes del
    motor y mantener el bucle de juego.
    """

    def __init__(self, motor, ancho, alto, titulo, rendimiento=60, gravedad=(0, -10), pantalla_completa=False):
        self.gestor_escenas = Gestor()

        self.motor = motor
        self.motor.iniciar_ventana(ancho, alto, titulo, pantalla_completa, self.gestor_escenas, rendimiento)

        self.gravedad = gravedad

    def crear_motor_fisica(self):
        return fisica.crear_motor_fisica(self.motor.obtener_area(), gravedad=self.gravedad)

    def reiniciar(self):
        self.gestor_escenas.limpiar()
        self.gestor_escenas.cambiar_escena(Normal())

    def terminar(self):
        self.motor.terminar()

    def ejecutar_bucle_principal(self, ignorar_errores=False):
        "Mantiene en funcionamiento el motor completo."
        self.motor.ejecutar_bucle_principal(self, ignorar_errores)

    def agregar_tarea_una_vez(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.una_vez(time_out, function, params)

    def agregar_tarea_siempre(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.siempre(time_out, function, params)

    def agregar_tarea(self, time_out, funcion, *parametros):
        return self.gestor_escenas.escena_actual().tareas.condicional(time_out, funcion, parametros)

    def deshabilitar_sonido(self, estado=True):
        self.motor.deshabilitar_sonido(estado)

    def deshabilitar_musica(self, estado=True):
        self.motor.deshabilitar_musica(estado)

    def get_tareas_deprecated(self):
        print "CUIDADO: Acceder al atributo 'tareas' esta desaconsejado."
        print "\t utilice en su lugar: pilas.utils.agregar_tarea, agregar_tarea_una_vez o agregar_tarea_siempre"
        return self.gestor_escenas.escena_actual().tareas

    def get_camara_deprecated(self):
        print "CUIDADO: Acceder al atributo 'camara' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().camara"
        return self.gestor_escenas.escena_actual().camara

    def get_colisiones_deprecated(self):
        print "CUIDADO: Acceder al atributo 'colisiones' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().colisiones"
        return self.gestor_escenas.escena_actual().colisiones

    def get_control_deprecated(self):
        print "CUIDADO: Acceder al atributo 'control' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().control"
        return self.gestor_escenas.escena_actual().control

    tareas = property(get_tareas_deprecated)
    camara = property(get_camara_deprecated)
    colisiones = property(get_colisiones_deprecated)
    control = property(get_control_deprecated)
Example #4
0
class Mundo(object):
    """Representa un objeto unico que mantiene en funcionamiento al motor.

    Mundo tiene como responsabilidad iniciar los componentes del
    motor y mantener el bucle de juego.
    """

    def __init__(self, motor, ancho, alto, titulo, fps=60, gravedad=(0, -10), pantalla_completa=False):
        self.gestor_escenas = Gestor()

        self.motor = motor
        self.motor.iniciar_ventana(ancho, alto, titulo, pantalla_completa, self.gestor_escenas)

        self.gravedad = gravedad

    def crear_motor_fisica(self):
        return fisica.crear_motor_fisica(self.motor.obtener_area(), gravedad=self.gravedad)

    def reiniciar(self):
        self.gestor_escenas.limpiar()
        self.gestor_escenas.cambiar_escena(Normal())

    def terminar(self):
        self.motor.terminar()

    def ejecutar_bucle_principal(self, ignorar_errores=False):
        "Mantiene en funcionamiento el motor completo."
        self.motor.ejecutar_bucle_principal(self, ignorar_errores)

    def agregar_tarea_una_vez(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.una_vez(time_out, function, params)

    def agregar_tarea_siempre(self, time_out, function, *params):
        return self.gestor_escenas.escena_actual().tareas.siempre(time_out, function, params)

    def agregar_tarea(self, time_out, funcion, *parametros):
        return self.gestor_escenas.escena_actual().tareas.condicional(time_out, funcion, parametros)

    def deshabilitar_sonido(self, estado=True):
        self.motor.deshabilitar_sonido(estado)

    def deshabilitar_musica(self, estado=True):
        self.motor.deshabilitar_musica(estado)

    def get_tareas_deprecated(self):
        print "CUIDADO: Acceder al atributo 'tareas' esta desaconsejado."
        print "\t utilice en su lugar: pilas.utils.agregar_tarea, agregar_tarea_una_vez o agregar_tarea_siempre"
        return self.gestor_escenas.escena_actual().tareas

    def get_camara_deprecated(self):
        print "CUIDADO: Acceder al atributo 'camara' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().camara"
        return self.gestor_escenas.escena_actual().camara

    def get_colisiones_deprecated(self):
        print "CUIDADO: Acceder al atributo 'colisiones' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().colisiones"
        return self.gestor_escenas.escena_actual().colisiones

    def get_control_deprecated(self):
        print "CUIDADO: Acceder al atributo 'control' esta desaconsejado."
        print "\t utilice en su lugar: pilas.escena_actual().control"
        return self.gestor_escenas.escena_actual().control

    tareas = property(get_tareas_deprecated)
    camara = property(get_camara_deprecated)
    colisiones = property(get_colisiones_deprecated)
    control = property(get_control_deprecated)