Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/FGR_T0202.py
diff options
context:
space:
mode:
Diffstat (limited to 'FGR_T0202.py')
-rw-r--r--FGR_T0202.py125
1 files changed, 51 insertions, 74 deletions
diff --git a/FGR_T0202.py b/FGR_T0202.py
index 5a4b86b..5872cda 100644
--- a/FGR_T0202.py
+++ b/FGR_T0202.py
@@ -6,60 +6,62 @@
# https://sites.google.com/site/sugaractivities/
# http://codigosdeejemplo.blogspot.com/
-import pygame, gc, sys, random, gtk, pygtk
+import pygame
+import gc
+import gobject
+import sys
+import random
+import gtk
from pygame.locals import *
-
import Globals as G
gc.enable()
-
import BiblioJAM
from BiblioJAM.JAMButton import JAMButton
from BiblioJAM.JAMLabel import JAMLabel
import BiblioJAM.JAMGlobals as JAMG
-class FGR_T0202():
- def __init__(self, main):
- # Variables para JAMatrix
- self.ventana= None
- self.name= "Caminando a la Escuela II"
- self.estado= False
-
- self.main= main
- self.ventana= self.main.ventana
-
+class FGR_T0202(gtk.Widget):
+ __gsignals__ = {"run_grupo":(gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (gobject.TYPE_STRING,gobject.TYPE_INT))}
+ def __init__(self):
+ gtk.Widget.__init__(self)
+ self.ventana = None
+ self.nombre = "Caminando a la Escuela II"
+ self.estado = False
# Variables del Juego
- self.fondo= None
- self.reloj= None
- self.puntos= 0
+ self.fondo = None
+ self.reloj = None
+ self.puntos = 0
# Sprites
- self.textos= None
- self.botonesmenu= None
- self.controles= None
- self.seniales= None
- self.senial_select= None
+ self.textos = None
+ self.botonesmenu = None
+ self.controles = None
+ self.seniales = None
+ self.senial_select = None
# sonidos
- self.sonido_error= None
- self.sonido_exito= None
- self.sound_select= None
+ self.sonido_error = None
+ self.sonido_exito = None
+ self.sound_select = None
# Escalado
- self.ventana_real= None
- self.resolucionreal= None
- self.VA= None
- self.VH= None
+ self.ventana_real = None
+ self.resolucionreal = None
+ self.VA = None
+ self.VH = None
+ self.load()
+ self.estado = "Intro"
def run(self):
- self.preset()
-
- from BiblioJAM.JAMatrix import JAMatrix
- matrix= JAMatrix(self, self.ventana_real, self.resolucionreal)
- matrix.set_imagen_matrix(None)
- matrix.carga_game()
-
- self.estado= "Intro"
- self.switch()
+ if self.estado== "Intro":
+ self.controles.stop()
+ self.fondo = self.fondo1
+ return self.run_menu()
+ elif self.estado== "Game":
+ self.puntos= 0
+ self.fondo = self.fondo2
+ self.reset()
+ return self.run_juego()
def run_menu(self):
self.ventana.blit(self.fondo, (0,0))
@@ -107,18 +109,6 @@ class FGR_T0202():
#self.victory()
#self.game_over(None)
- def switch(self):
- if self.estado== "Intro":
- self.controles.stop()
- self.fondo = self.fondo1
- self.set_event_intro()
- return self.run_menu()
- elif self.estado== "Game":
- self.puntos= 0
- self.fondo = self.fondo2
- self.reset()
- return self.run_juego()
-
def reset(self):
self.puntos= 0
self.controles.init()
@@ -204,7 +194,10 @@ class FGR_T0202():
return self.salir(False)
# ----------- SETEOS -------------
- def preset(self):
+ def load(self):
+ pygame.event.set_blocked([JOYAXISMOTION, JOYBALLMOTION, JOYHATMOTION, JOYBUTTONUP, JOYBUTTONDOWN, KEYUP, USEREVENT])
+ pygame.event.set_allowed([MOUSEMOTION, MOUSEBUTTONUP, MOUSEBUTTONDOWN, KEYDOWN, VIDEORESIZE, VIDEOEXPOSE, QUIT, ACTIVEEVENT])
+ pygame.mouse.set_visible(True)
A, B= G.RESOLUCION
self.ventana = pygame.Surface( (A, B), flags=HWSURFACE )
self.ventana_real= pygame.display.get_surface()
@@ -213,8 +206,6 @@ class FGR_T0202():
self.resolucionreal= (C,D)
self.VA= float(C)/float(A)
self.VH= float(D)/float(B)
-
- def load(self):
self.fondo1, self.fondo2= G.get_Fondos_FGR_T0202()
self.textos= Textos_Intro()
self.botonesmenu= ButtonsMenu(self)
@@ -223,12 +214,6 @@ class FGR_T0202():
self.sonido_error, self.sonido_exito= G.get_Sonidos()
self.sound_select= JAMG.get_sound_select()
self.reloj = pygame.time.Clock()
- self.estado= True
-
- def set_event_intro(self):
- pygame.event.set_blocked([JOYAXISMOTION, JOYBALLMOTION, JOYHATMOTION, JOYBUTTONUP, JOYBUTTONDOWN, KEYUP, USEREVENT])
- pygame.event.set_allowed([MOUSEMOTION, MOUSEBUTTONUP, MOUSEBUTTONDOWN, KEYDOWN, VIDEORESIZE, VIDEOEXPOSE, QUIT, ACTIVEEVENT])
- pygame.mouse.set_visible(True)
# ----------- EVENTOS en MENU ---------------
def handle_event_Intro(self):
@@ -331,7 +316,7 @@ class FGR_T0202():
dialog.clear(self.ventana, self.fondo)
self.ventana_real.blit(pygame.transform.scale(self.ventana, self.resolucionreal), (0,0))
pygame.display.update()
- return self.switch()
+ return self.run()
else:
dialog.clear(self.ventana, self.fondo)
self.ventana_real.blit(pygame.transform.scale(self.ventana, self.resolucionreal), (0,0))
@@ -345,11 +330,14 @@ class FGR_T0202():
# ----------- EVENTOS en JUEGO ---------------
def salir(self, valor= None):
+ '''
if valor: self.estado= True
if not valor: self.estado= False
pygame.mixer.music.unpause()
self.seniales.empty()
- self.controles.empty()
+ self.controles.empty()'''
+ self.estado = False
+ self.emit("run_grupo", "grupo2", self.puntos)
# -------- CONTROLES ----------
class Controles(pygame.sprite.OrderedUpdates):
@@ -388,7 +376,7 @@ class Controles(pygame.sprite.OrderedUpdates):
cartel_titulo.rect.y= -60
self.add(cartel_titulo)
- self.titulo= JAMLabel(self.main.name)
+ self.titulo= JAMLabel(self.main.nombre)
self.titulo.set_text(color=JAMG.get_blanco())
fuente, tamanio= JAMG.get_Font_fawn()
self.titulo.set_font_from_file(fuente, tamanio= 40)
@@ -426,7 +414,7 @@ class Controles(pygame.sprite.OrderedUpdates):
def switching_game(self, button):
self.main.estado= "Intro"
- return self.main.switch()
+ return self.main.run()
def init(self):
sound= self.sonidos_reloj[0]
@@ -726,7 +714,7 @@ class ButtonsMenu(pygame.sprite.OrderedUpdates):
def switching(self, button):
self.main.estado= "Game"
pygame.event.clear()
- return self.main.switch()
+ return self.main.run()
# --------- Botones en Menu (Salir y Jugar) ------------------
# --------- Mensaje Final ---------
@@ -832,15 +820,4 @@ class Mensaje(pygame.sprite.OrderedUpdates):
self.label2.rect.x= self.x_final_label2
self.label1.rect.x= self.x_final_label1
self.estado= False
-# --------- Mensaje Final ---------
-
-class Main():
- def __init__(self):
- pygame.init()
- pygame.display.set_mode(G.RESOLUCION , 0, 0)
- self.ventana= pygame.display.get_surface()
- FGR_T0202(self)
-
-if __name__ == "__main__":
- Main()