pilas.actores.sonido

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

# Source Code for Module pilas.actores.sonido

     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 pilas.actores import Boton
    11

    12 -class Sonido(Boton):
    13      """Un icono de sonido en la parte inferior derecha de la pantalla.

    14

    15      Este actor se utilizará para habilitar el sonido o deshabilitarlo al

    16      hacer click sobre él.

    17      """
    18

    19 -    def __init__(self, x=0, y=0):
    20          """Inicializa actor que permite controlar el sonido."""
    21          # TODO: quitar x e y de los argumentos, ya se no se utilizan.

    22          Boton.__init__(self, x=0, y=0, ruta_normal = 'iconos/sonido_on.png',

    23                         ruta_press = 'iconos/sonido_off.png')
    24

    25          self.conectar_presionado(self.deshabilitar_sonido)
    26

    27          # Colocamos el boton en la esquina inferior derecha de la pantalla.

    28          self._ancho_mundo, self._alto_mundo = pilas.mundo.motor.obtener_area()
    29          self.x = (self._ancho_mundo / 2) - self.ancho
    30          self.y = -1 * (self._alto_mundo / 2) + self.alto
    31

    32          self.activado = True
    33

    34 -    def deshabilitar_sonido(self):
    35          """Alterna entre sonido habilitado o deshabilitado."""
    36          if self.activado:
    37              pilas.mundo.deshabilitar_musica()
    38              pilas.mundo.deshabilitar_sonido()
    39              self.pintar_presionado()
    40              pilas.avisar("Sonido deshabilitado")
    41              self.activado = False
    42          else:
    43              pilas.mundo.deshabilitar_musica(estado=False)
    44              pilas.mundo.deshabilitar_sonido(estado=False)
    45              self.pintar_normal()
    46              pilas.avisar("Sonido habilitado")
    47              self.activado = True
    48