Ejemplo n.º 1
0
 def reproducir_animacion(self, animacion):
     """
     Gestiona la reproducción de animaciones, imágenes y texto en esta pantalla.
     @param animacion: Indica la animación que debe reproducirse.
     @type animacion: int
     """
     if animacion <= 0:
         self.limpiar_grupos()            
         self.parent.changeState(pantalla3.estado(self.parent))
         
     if animacion == 1:
         self.elemento_actual = -1
         self.grupo_anim.remove(self.anim4_1)
         self.grupo_palabras.empty()     
         
         if self.parent.config.activar_lector:
             if self.entrada_primera_vez:
                 self.spserver.processtext2(cont["texto4_2"], self.parent.config.activar_lector)
                 self.entrada_primera_vez=False
             else:
                 self.spserver.processtext(cont["texto4_2"], self.parent.config.activar_lector)
             self.grupo_fondotexto.add(self.caja_texto)
             self.grupo_palabras.add(self.texto4_2.img_palabras)
             self.txt_actual = self.texto4_2.img_palabras
             self.chequeo_palabra(self.txt_actual)
             self.anim4.continuar()   
         
     # Anim
     if animacion == 2:
         self.elemento_actual = -1
         self.lista_palabra = []
         self.grupo_palabras.empty()
         self.grupo_fondotexto.empty()
         self.anim4.detener()
         self.grupo_anim.add(self.anim4_1)
         self.anim4_1.update()          
         self.anim4_1.stop = False
         self.anim4_1.continuar()
         self.spserver.processtext(cont["anim4_1"], self.parent.config.activar_lector)
     
     # Explicacion
     if animacion == 3:
         self.elemento_actual = -1
         self.grupo_anim.empty()
         self.grupo_palabras.empty()
         self.grupo_anim.add(self.anim4)
         self.anim4.continuar()
         self.grupo_fondotexto.add(self.caja_texto)
         self.grupo_palabras.add(self.texto4_3.img_palabras)
         self.txt_actual = self.texto4_3.img_palabras
         self.chequeo_palabra(self.txt_actual)
         self.spserver.processtext(cont["texto4_3"], self.parent.config.activar_lector)
     
     # Anim
     if animacion == 4:
         self.elemento_actual = -1
         self.lista_palabra = []
         self.grupo_palabras.empty()
         self.grupo_fondotexto.empty()
         self.anim4.detener()
         self.grupo_anim.add(self.anim4_2)
         self.anim4_2.update()          
         self.anim4_2.stop = False
         self.anim4_2.continuar()
         self.spserver.processtext(cont["anim4_2"], self.parent.config.activar_lector)
     
     # Explicacion
     if animacion == 5:
         self.elemento_actual = -1
         self.grupo_anim.empty()
         self.grupo_palabras.empty()
         self.grupo_anim.add(self.anim4)
         self.anim4.continuar()
         self.grupo_fondotexto.add(self.caja_texto)
         self.grupo_palabras.add(self.texto4_4.img_palabras)
         self.txt_actual = self.texto4_4.img_palabras
         self.chequeo_palabra(self.txt_actual)
         self.spserver.processtext(cont["texto4_4"], self.parent.config.activar_lector)
     
     # Anim
     if animacion == 6:
         self.elemento_actual = -1
         self.lista_palabra = []
         self.grupo_palabras.empty()
         self.grupo_fondotexto.empty()
         self.anim4.detener()
         self.grupo_anim.add(self.anim4_3)
         self.anim4_3.update()          
         self.anim4_3.stop = False            
         self.anim4_3.continuar()
         self.spserver.processtext(cont["anim4_3"], self.parent.config.activar_lector)
         
     # Explicacion
     if animacion == 7:
         self.elemento_actual = -1
         self.grupo_anim.empty()
         self.grupo_palabras.empty()
         self.grupo_anim.add(self.anim4)
         self.anim4.continuar()
         self.grupo_fondotexto.add(self.caja_texto)
         self.grupo_botones.add(self.sig)
         self.grupo_palabras.add(self.texto4_5.img_palabras)
         self.txt_actual = self.texto4_5.img_palabras
         self.chequeo_palabra(self.txt_actual)
         self.spserver.processtext(cont["texto4_5"], self.parent.config.activar_lector)  
   
     if animacion == 8:
         self.elemento_actual = -1
         self.lista_palabra = []
         self.grupo_tooltip.empty()
         self.grupo_palabras.empty()
         self.grupo_fondotexto.empty()
         self.anim4.detener()
         self.grupo_anim.add(self.anim4_4)
         self.anim4_4.update()          
         self.anim4_4.stop = False
         self.anim4_4.continuar()
         self.grupo_botones.remove(self.sig)
         self.spserver.processtext(cont["anim4_4"], self.parent.config.activar_lector)
Ejemplo n.º 2
0
    def handleEvents(self, events):
        """
        Evalúa los eventos que se generan en esta pantalla.        

        @param events: Lista de los eventos.
        @type events: list
        """
        for event in events:
            self.teclasPulsadas = pygame.key.get_pressed()
            if event.type == pygame.QUIT:
                self.parent.quit()
                
            if event.type == pygame.KEYDOWN and event.key == pygame.K_F1:
                self.mostrar_ins()
            
            if event.type == pygame.KEYDOWN and not self.popup_ins.activo:
                self.chequeo_botones(self.grupo_botones)
                self.numero_elementos = len(self.lista_botones)
                self.lista_final = self.lista_botones
                
                if event.key == pygame.K_RIGHT:
                    self.controlador_lector_evento_K_RIGHT()
                    self.deteccion_movimiento = True
                    
                elif event.key == pygame.K_LEFT:
                    self.controlador_lector_evento_K_LEFT()
                
                elif self.deteccion_movimiento:          
                    if event.key == pygame.K_RETURN:
                        if self.x.tipo_objeto == "boton":
                            
                            if self.x.id == "plantas":
                                self.limpiar_grupos()
                                self.parent.changeState(pantalla3.estado(self.parent))
                                
                            elif self.x.id == "agri":
                                self.limpiar_grupos()
                                self.parent.changeState(pantalla8.estado(self.parent))
                                
                            elif self.x.id == "act1":
                                self.limpiar_grupos()
                                self.parent.pushState(actividad1.estado(self.parent))
                                
                            elif self.x.id == "act2":
                                self.limpiar_grupos()
                                self.parent.pushState(actividad2.actividad(self.parent))
                                
                            elif self.x.id == "repro":
                                self.limpiar_grupos()
                                self.parent.changeState(pantalla5.estado(self.parent))
                                
                            elif self.x.id == "config":
                                self.limpiar_grupos()
                                self.parent.pushState(menucfg.estado(self.parent, self.previa))
                                
                            elif self.x.id == "orientacion":
                                self.limpiar_grupos()
                                self.parent.pushState(pantalla11.estado(self.parent))
                                
            if pygame.sprite.spritecollideany(self.raton, self.grupo_botones) and not self.popup_ins.activo:
                sprite = pygame.sprite.spritecollide(self.raton, self.grupo_botones, False)
                if event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
                    self.spserver.stopserver()
                    if sprite[0].id == "orientacion":
                        self.limpiar_grupos()
                        self.parent.pushState(pantalla11.estado(self.parent))
                    elif sprite[0].id == "plantas":
                        self.limpiar_grupos()
                        self.parent.changeState(pantalla3.estado(self.parent))
                    elif sprite[0].id == "repro":
                        self.limpiar_grupos()
                        self.parent.changeState(pantalla5.estado(self.parent))
                    elif sprite[0].id == "agri":
                        self.limpiar_grupos()
                        self.parent.changeState(pantalla8.estado(self.parent))
                    elif sprite[0].id == "config":
                        self.limpiar_grupos()
                        self.parent.pushState(menucfg.estado(self.parent, self.previa))
                    elif sprite[0].id == "act1":
                        self.limpiar_grupos()
                        self.parent.pushState(actividad1.estado(self.parent))
                    elif sprite[0].id == "act2":
                        self.limpiar_grupos()
                        self.parent.pushState(actividad2.actividad(self.parent))
        self.minimag(events)