def __init__(self, parent): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador """ self.deteccion_movimiento = False self.parent = parent self.previa = True self.background = pygame.image.load(self.fondos + "fondo-partes2.png").convert() self.anim4 = animacion("anim4", self.anim + "animacion4.png", 8, 1, 0, 50, -1, True, 10) self.anim4_1 = animacion("anim4_1", self.anim + "animacion4-1.png", 5, 1, 430, 100, -1, False, 10) self.anim4_2 = animacion("anim4_2", self.anim + "animacion4-2.png", 9, 1, 430, 100, -1, False, 10) self.anim4_3 = animacion("anim4_3", self.anim + "animacion4-3.png", 10,1, 430, 100, -1, False, 10) self.anim4_4 = animacion("anim4_4", self.anim + "animacion4-4.png", 6, 1, 430, 100, -1, False, 10) self.cargar_botones() self.cargar_textos() self.caja_texto = imagen(self.fondos + "caja-texto.png", 0, 332) self.banner_partes = imagen(self.banners + "banner-partes.png", 0, 0) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.grupo_update.add(self.anim4, self.anim4_1, self.anim4_2, self.anim4_3, self.anim4_4) self.rect = pygame.Rect(0,0,0,0) self.reloj_anim = pygame.time.Clock() self.reloj_anim.tick(30) self.resume()
def __init__(self, parent, anim_actual = 0): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador @param anim_actual: Código de la ultima animación mostrada en esta pantalla. @type anim_actual: int """ self.deteccion_movimiento = False self.parent = parent self.previa = True self.anim_actual = anim_actual pygame.display.set_caption('Sembrando para el futuro') self.background = pygame.image.load(self.fondos + "fondo-agri.png").convert() self.anim8 = animacion("anim8", self.anim + "animacion8.png", 5, 1, 130, 110, -1, True, 8) self.anim8_0 = animacion("anim8_0", self.anim + "animacion8-0.png", 1, 1, 700, 150, -1, False, 18) self.caja_texto = imagen(self.fondos + "caja-texto.png", 0, 332) self.banner_agri = imagen(self.banners + "banner-agri.png", 0, 0) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.cargar_botones() self.cargar_textos() self.reloj_anim = pygame.time.Clock() self.reloj_anim.tick(30) self.rect = pygame.Rect(0, 0, 0, 0) self.tiempo = 0 self.tractor = -2 self.resume()
def __init__(self, parent, anim_actual = 0): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador @param anim_actual: Código de la ultima animación mostrada en esta pantalla. @type anim_actual: int """ self.deteccion_movimiento = False self.parent = parent self.previa = True self.anim_actual = anim_actual self.background = pygame.image.load(self.fondos + "fondo-repro.png").convert() self.anim5 = animacion("anim5", self.anim + "animacion5.png", 8, 1, 50, 50, -1, True, 10) self.anim5_0 = animacion("anim5_0", self.anim + "animacion5-0.png", 7,1, 560, 235, -1, False, 10) self.anim5_1 = animacion("anim5_1", self.anim + "animacion5-1.png", 7,1, 620, 235, -1, False, 10) self.anim5_2 = animacion("anim5_2", self.anim + "animacion5-2.png", 7,1, 520, 235, -1, False, 10) self.flores = animacion("flores", self.anim + "anim-flores.png", 8, 1, 530, 250, None, False, 12) self.cargar_botones() self.cargar_textos() self.caja_texto = imagen(self.fondos + "caja-texto.png", 0, 332) self.banner_repro = imagen(self.banners + "banner-repro.png", 0, 0) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.grupo_update.add(self.anim5, self.anim5_0, self.anim5_1, self.anim5_2) self.rect = pygame.Rect(0,0,0,0) self.reloj_anim = pygame.time.Clock() self.reloj_anim.tick(30) self.resume()
def __init__(self, parent, previa = False): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador @param previa: Si es True indica que esta pantalla esta apilada sobre otra. Si es False indica que esta pantalla fue cargada a través del método changeState del Manejador. @type previa: bool """ self.parent = parent self.spserver.processtext(u"Configuración de discapacidad auditiva.", False) self.previa = previa self.fondo_acc = pygame.image.load(self.fondos + "fondo-acc.png").convert() self.background = self.fondo_acc self.velocidad = boton("velocidad", "none", self.fondos + "velocidad.png", 1, 440, 360, None, False, 1) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.banner_acc_sordo = imagen(self.banners + "banner-acc-sordo.png", 0, 0) self.color_mujer = animacion("mujer", self.anim + "color-mujer.png", 9, 3, 730, 160, (21, 76, 75), True, 4) self.color_hombre = animacion("hombre", self.anim + "color-hombre.png", 9, 3, 730, 160, (21, 76, 75), True, 4) self.si = boton("si", "none", self.botones + "cuadro.png", 1, 430, 120, None, False, 1) self.no = boton("no", "none", self.botones + "cuadro.png", 1, 545, 120, None, False, 1) self.check_si = boton("check_si", "none", self.botones + "cuadro-1.png" , 1, 430, 120, None, False, 1) self.check_no = boton("check_no", "none", self.botones + "cuadro-1.png", 1, 540, 120, None, False, 1) self.boton_nina = boton("nina", "none", self.botones + "cuadro.png", 1, 430, 200, None, False, 1) self.boton_nino = boton("nino", "none", self.botones + "cuadro.png", 1, 540, 200, None, False, 1) self.boton_nina_sel = boton("nina_sel", "none", self.botones + "cuadro-1.png", 1, 430, 200, None, False, 1) self.boton_nino_sel = boton("nino_sel", "none", self.botones + "cuadro-1.png", 1, 540, 200, None, False, 1) self.puerta = boton("puerta", "Regresar", self.botones + "boton-puerta.png", 3, 60, 425, None, False, 1) self.guardar = boton("guardar", "Guardar", self.botones + "boton-guardar.png", 3, 860, 445, None, False, 1) self.hoja = boton("hoja", "Velocidad", self.botones + "hoja.png", 1, 499, 370 , None, False, 1) self.amarillo = boton("amarillo", "Amarillo", self.botones + "amarilla.png", 1, 425 , 295, None, False, 1) self.rosado = boton("rosado", "Rosado", self.botones + "rosada.png", 1, 485 , 295, None, False, 1) self.rojo = boton("rojo", "Rojo", self.botones + "roja.png", 1, 485 , 295, None, False, 1) self.v_hombre = boton("v-hombre", "Verde", self.botones + "verdeh.png", 1, 545 , 295, None, False, 1) self.v_mujer = boton("v-mujer", "Verde", self.botones + "verdem.png", 1, 545 , 295, None, False, 1) self.camisas_mujer = [self.amarillo, self.rosado, self.v_mujer] self.camisas_hombre = [self.amarillo, self.rojo, self.v_hombre] self.acc2_1 = texto(310, 70, u"1.- ¿Te gustaría hacer el recorrido con un intérprete virtual? ", 20,"normal", 700) self.acc2_2 = texto(400, 120, u"Sí No ", 20, "normal", 800) self.acc2_3 = texto(310, 150, u"2.- Selecciona el género del intérprete con el que desees hacer el recorrido. ", 20, "normal", 700) self.acc2_4 = texto(400, 200, u"F M ", 20, "normal", 800) self.acc2_5m = texto(310, 240, u"3.- Elige el color de la camisa del intérprete virtual. ", 20, "normal", 700) self.acc2_5f = texto(310, 240, u"3.- Elige el color de la camisa de la intérprete virtual. ", 20, "normal", 700) self.acc2_6m = texto(310, 330, u"4.- Elige la velocidad del intérprete virtual. ", 20, "normal", 800) self.acc2_6f = texto(310, 330, u"4.- Elige la velocidad de la intérprete virtual. ", 20, "normal", 800) self.acc2_7 = texto(200, 400, u"Pulsa sobre el botón guardar para salvar tu configuración. ", 20, "normal", 800) self.cargar_preferencias()
def nivel2(self): """ Carga las imágenes e inicializa los objetos del nivel 2 de la actividad número 2. """ pygame.event.clear self.nivel = 2 self.grupo_sprite.remove(self.boton_mesa) self.grupo_texto.empty() self.grupo_anim.empty() animacion1 = animacion("anim0_1", self.varios + "animacion4.png",10,1,-40,0,None,True,25) self.grupo_anim.add(animacion1) self.fondo = pygame.image.load(self.varios+"fondoact4.png").convert() self.pregunta = u" En una cesta hay 60 sobres de semillas, de ellos 1/5 son de pimentón, 1/2 son de girasol y el resto de perejil. ¿Cuántos sobres son de semillas de perejil? " texto = texto2(700, self.popup_instruccion_fija.tam, self.pregunta, self.parent.config.t_fuente, "normal", 985) self.grupo_texto.add(texto.img_palabras) self.pregunta_lector = u" En una cesta hay 60 sobres de semillas, de ellos un quinto son de pimentón, un medio son de girasol y el resto de perejil. ¿Cuántos sobres son de semilla de perejil? " self.rectangulo_texto.rect.y =self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente-5 self.intr_texto= cajatexto(730,self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente, "18" , self.screen,"medium") self.boton.mover_boton(666+(self.menu3.get_rect().w/2), self.popup_instruccion_fija.tam + texto.ancho_final +80) self.texto_bien = u" ¡Excelente! Para evitar la deforestación y contribuir con el cuidado del ambiente, cuando vayas de visita a los parques recoge los desechos que te hayan quedado durante tu visita. " self.texto_mal = u" Recuerda: un sobre esta representado en fracciones como 1/60. " self.texto_mal_lector = u" Recuerda: un sobre está representado en fracciones como 1 entre 60. " self.texto_vacio = u" Para continuar deberás contestar correctamente la pregunta. Si la casilla queda vacía no podrás avanzar al siguiente problema. " self.texto_ayuda = u" Al construir la ecuación utiliza los 60 sobres como la unidad. Luego de hallar el valor en fracciones transformala a números naturales. " self.nivel_cargado = 1 self.spserver.processtext(u"problema número 2:"+self.pregunta_lector + u"escribe tu respuesta y utiliza la tecla ENTER para confirmar" , self.parent.config.activar_lector) if self.teclado == 0: self.teclado = True
def nivel3 (self): """ Carga las imágenes e inicializa los objetos del nivel 3 de la actividad número 2. """ pygame.event.clear self.nivel=3 self.grupo_texto.empty() self.grupo_anim.empty() self.grupo_anim.empty() self.fondo = pygame.image.load(self.varios+"fondoact5.png").convert() animacion1 = animacion("anim_1", self.varios+"animacion5.png",6,1,-30,44,None,True,25) self.grupo_anim.add(animacion1) self.pregunta =u" Una distribuidora de flores recibió 12.831 bolívares por concepto de las ventas durante el mes de marzo. Si vendieron 987 flores, ¿Cuál es el costo de cada flor? " self.pregunta_l =u" Una distribuidora de flores recibió 12831 bolívares por concepto de las ventas durante el mes de marzo. Si vendieron 987 flores, ¿Cuál es el costo de cada flor? " texto = texto2(700, self.popup_instruccion_fija.tam, self.pregunta, self.parent.config.t_fuente, "normal", 985) self.grupo_texto.add(texto.img_palabras) self.rectangulo_texto.rect.y =self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente-5 self.intr_texto= cajatexto(730,self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente, "13" , self.screen,"medium") self.boton.mover_boton(666 +(self.menu3.get_rect().w/2), self.popup_instruccion_fija.tam + texto.ancho_final +80) self.texto_bien = u" ¡Muy bien! ¿Has hecho alguna vez un germinador con semillas de caraota? Con la ayuda de tu maestra o maestro investiga los pasos a seguir para que una semilla se reproduzca y se logre obtener una nueva planta. " self.texto_mal = u" Recuerda: debes separar en partes iguales para obtener el valor de cada flor. " self.texto_vacio = u" Para continuar deberás contestar correctamente la pregunta. Si la casilla queda vacía no podrás avanzar al siguiente problema. " self.texto_ayuda = u" Existe una operación básica que te permite repartir equitativamente una cantidad entre un cierto número. Es el proceso contrario a la multiplicación. " self.spserver.processtext(u"problema número 3:"+self.pregunta + u"escribe tu respuesta y utiliza la tecla ENTER para confirmar", self.parent.config.activar_lector) if self.teclado == 0: self.teclado = True
def nivel1(self): """ Carga las imágenes e inicializa los objetos del nivel 1 de la actividad número 2. """ self.nivel = 1 self.boton_x = pygame.sprite.Sprite() self.boton_x.image = pygame.image.load(self.varios + "cerrar.png").convert_alpha() self.boton_x.rect = (self.boton_x.image.get_rect()) self.boton_x.rect.move_ip(610,11) self.boton_mesa = pygame.sprite.Sprite() self.boton_mesa.image = pygame.image.load(self.varios + "mesa.png").convert_alpha() self.boton_mesa.rect = ((0,415),self.boton_mesa.image.get_size()) self.boton_ayuda= pygame.sprite.Sprite() self.boton_ayuda.image = pygame.image.load(self.varios + "ayuda.png").convert_alpha() self.boton_ayuda.rect = (self.boton_ayuda.image.get_rect()) self.boton_ayuda.rect.move_ip(985,500) self.rectangulo_texto = pygame.sprite.Sprite() self.rectangulo_texto.image = pygame.image.load(self.varios + "cuadro-texto.png").convert() self.rectangulo_texto.rect = self.rectangulo_texto.image.get_rect() self.grupo_sprite.add(self.boton_ayuda,self.boton_x,self.rectangulo_texto,self.boton_mesa) animacion1 = animacion("anim1", self.varios+"reloj.png",5,1,446,38,None,True,100) animacion2 = animacion("anim2",self.varios+"obreros.png",6,1,-76,-39, None,True,6) animacion3 = animacion("anim3", self.varios+"caja.png",8, 1,520,355, None,True,36) self.grupo_anim.add(animacion1,animacion2,animacion3) self.pregunta = u" Los trabajadores de una floristería tienen que empacar 3.215 flores en paquetes de 25 flores cada uno. "\ u"¿Cuántas flores sobran después de armar todos los paquetes? " self.pregunta_l = u" Los trabajadores de una floristería tienen que empacar 3215 flores en paquetes de 25 flores cada uno. "\ u"¿Cuántas flores sobran después de armar todos los paquetes? " texto = texto2(700, self.popup_instruccion_fija.tam, self.pregunta, self.parent.config.t_fuente , "normal", 985,0) self.grupo_texto.add(texto.img_palabras) self.rectangulo_texto.rect.move_ip(725,self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente-5) self.intr_texto= cajatexto(730,self.popup_instruccion_fija.tam + texto.ancho_final + self.parent.config.t_fuente, "15" , self.screen,"medium") self.boton.mover_boton(666+(self.menu3.get_rect().w/2), self.popup_instruccion_fija.tam + texto.ancho_final +80) self.texto_bien = u" ¡Muy bien! Sabías que... un trozo de tallo verde que sea introducido en la tierra para multiplicar una planta tiene por nombre esqueje. " self.texto_mal = u" Recuerda: si se reparte de forma equitativa las flores, podrás saber cuantas cajas lograrás armar. " self.texto_vacio = u" Para continuar deberás contestar correctamente la pregunta. Si la casilla queda vacía no podrás avanzar al siguiente problema. " self.texto_ayuda = u" Calcula el número total de flores que puedes armar en paquetes de 25 flores. " self.spserver.processtext(self.texto , self.parent.config.activar_lector) if self.teclado == 0: self.teclado = True
def __init__(self, parent): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador """ self.deteccion_movimiento = False self.parent = parent self.previa = True self.background = pygame.image.load(self.fondos + "fondo-repro2.png").convert() self.caja_texto = imagen(self.fondos + "caja-texto.png", 0, 332) self.anim6 = animacion("anim6", self.anim + "animacion6.png", 3, 1, 630, 50, -1, True, 10) self.anim6_2 = animacion("anim6_2", self.anim + "animacion6-2.png", 3, 1, 50, 200, -1, True, 10) self.anim6_3 = animacion("anim6_3", self.anim + "animacion6-3.png", 1, 1, 100, 100, -1, True, 2) self.anim6_4 = animacion("anim6_4", self.anim + "animacion6-4.png", 4, 1, 350, 80, -1, False, 18) self.anim6_5 = animacion("anim6_5", self.anim + "animacion6-5.png", 4, 1, 350, 80, -1, False, 22) self.anim6_6 = animacion("anim6_6", self.anim + "animacion6-6.png", 6, 1, 350, 80, -1, False, 18) self.cargar_botones() self.cargar_textos() self.banner_repro = imagen(self.banners + "banner-repro.png", 0, 0) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.rect = pygame.Rect(0,0,0,0) self.reloj_anim = pygame.time.Clock() self.reloj_anim.tick(30) self.resume()
def __init__(self, parent): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador """ self.deteccion_movimiento = False self.parent = parent self.previa = True self.background = pygame.image.load(self.fondos + "fondo-plantas.png").convert() self.anim1 = animacion("anim1", self.anim + "animacion3.png", 8, 1, 100, 200, -1, True, 5) self.caja_texto = imagen(self.fondos + "caja-texto.png", 0, 332) self.banner_plantas = imagen(self.banners + "banner-plantas.png", 0, 0) self.banner_inf = imagen(self.banners + "banner-inf.png", 0, 432) self.cargar_textos() self.cargar_botones() self.reloj_anim = pygame.time.Clock() self.reloj_anim.tick(30) self.resume()
def __init__(self, parent): """ Método inicializador de la clase. @param parent: Instancia del gestor de pantallas. @type parent: Manejador """ self.apla = pygame.image.load(self.pops + "aplaudiendo.png").convert_alpha() self.pensa = pygame.image.load(self.pops + "pensando.png").convert_alpha() poporquidea = pygame.image.load(self.pops + "orquidea.png").convert_alpha() popapamate = pygame.image.load(self.pops + "popupapamate.png").convert_alpha() poparaguaney = pygame.image.load(self.pops + "popuparaguaney.png").convert_alpha() popclorofila = pygame.image.load(self.pops + "popupclorofila.png").convert_alpha() popinjerto = pygame.image.load(self.pops + "popupinjerto.png").convert_alpha() poprepro = pygame.image.load(self.pops + "popupreproduccion.png").convert_alpha() popportu = pygame.image.load(self.pops + "portu.png").convert_alpha() popacodo = pygame.image.load(self.pops + "popuacodo.png").convert_alpha() popmango = pygame.image.load(self.pops + "popumango.png").convert_alpha() popyuca = pygame.image.load(self.pops + "popuyuca.png").convert_alpha() self.img_pistas = { 0: poparaguaney, 1: popapamate, 2: popclorofila, 3: poporquidea, 4: poprepro, 5: popyuca, 6: popmango, 7: popportu, 8: popacodo, 9: popinjerto } esc = pygame.image.load(self.pops + "esc.png").convert_alpha() raton = pygame.image.load(self.pops + "touch.png").convert_alpha() salir = pygame.image.load(self.pops + "boton-salir.png").convert_alpha() enter = pygame.image.load(self.pops + "enter.png").convert_alpha() teclado = pygame.image.load(self.pops + "flechas.png").convert_alpha() f1 = pygame.image.load(self.pops + "f1.png").convert_alpha() self.img_textos = {"ENTER" : enter, "TECLADO": teclado, "F1": f1, "ESC": esc, "SALIR": salir, "RATON":raton} self.raton = cursor() self.parent = parent self.visor = self.parent.screen pygame.display.set_caption('Siembra la semilla') self.flecha_verde = pygame.image.load(self.varios + "flecha-verde.png").convert_alpha() self.preguntas = prp() self.casa = imagen(self.varios + "casa.png", 0, 70) self.poste = imagen(self.varios + "poste.png", 880, 0) self.tractor = imagen(self.varios +"tractor.png", 840, 80) self.pala = objeto(590, 380, self.varios + "pala.png", "la pala. ") self.abono = objeto(900, 305, self.varios + "abono.png", "el abono. ") self.carre = objeto(200, 80, self.varios + "carre.png", "la carretilla. ") self.insec = objeto(760, 140, self.varios + "insec.png", u"el controlador biológico. ") self.regadera = objeto(792, 270, self.varios + "regadera.png", "la regadera. ") self.semillas = objeto(450, 200, self.varios + "semillas.png", "las semillas. ") self.nubes = animacion("nubes", self.varios + "nubes.png", 1, 1, 30, -15, -1, False, 18) self.salir = boton("salir", "Salir", self.botones + "boton-salir.png", 1, 830, 60, -1, False, 1) self.flecha = animacion("flecha", self.varios + "flecha-verde.png", 3, 1, 800, 350, -1, True, 6) self.flores = animacion("flores", self.varios + "campo-flores.png", 4, 1, 758, 290, -1, False, 18) self.siembra = animacion("siembra", self.varios + "cinta-campesino.png", 3, 1, 680, 250, -1, True, 9) self.granjero = personaje(200, 128, self.varios + "0.png", 2) self.popup_respuesta = PopUp(parent, ("Respuesta " ), "Aceptar", self.flecha_verde, self.grupo_popup) self.popup_pregunta = PopUp(parent, ("Pregunta ", "p1 ", "p2 ", "p3 " ), "Aceptar", 0, self.grupo_popup, 1) self.popup_ayuda = PopUp(parent, self.preguntas.instruc[0], "", self.img_textos , self.grupo_popup, 2, 512, 214, 100) self.popup_instruc = PopUp(parent, u" Pulsa la tecla F1 para activar o desactivar las instrucciones del juego. ", "", self.img_textos , self.grupo_popup, 2, 240, 482, -160) self.popup_final1 = PopUp(self.parent, (u" ¡Muy bien! Has finalizado el primer nivel. ", ), "Aceptar", self.apla, self.grupo_popup) self.update()