# -*- coding: utf-8 -*- import pygame from api.GameState import CGameState from api.Game import CGame from api.Button import CButton from CreditsState import CCreditsState import api.Image as Image from game.PresentationState import CPresentationState from game.SelectPartidaState import CSelectPartidaState from game.Area1Game1 import CArea1Game1 from game.Area1Game3 import CArea1Game3 from game.Area1Game4 import CArea1Game4 from game.Area1Game5 import CArea1Game5 from game.Area1Game6 import CArea1Game6 from game.Area2Game2 import CArea2Game2 from gettext import gettext as _ OVER_COLOR = (255, 0, 0) NORMAL_COLOR = (255, 125, 50) class CMenuState(CGameState): mBackground = None mInstructions = None #mX = 10 mButtonA1G1= None mButtonA1G3 = None mButtonA1G6 = None mButtonCredits = None mButtonPlay = None mButtonHelp = None mButtonExit = None def init(self): CGameState.__init__(self) self.mBackground = Image.loadImage('assets/images/selectArea/background.jpg', False) CGame().setBackground(self.mBackground) self.mButtonPresentation = CButton() self.mButtonPresentation.bgColor = (0x99, 0x99, 0x66) self.mButtonPresentation.fgColor = (0xFF, 0xFF, 0xFF) self.mButtonPresentation.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 28) self.mButtonPresentation.set_center((200, 100)) self.mButtonPresentation.set_size((200, 40)) self.mButtonPresentation.set_text(unicode(_('Presentacion'), 'UTF-8')) CGame().addChild(self.mButtonPresentation) self.mButtonPlay = CButton() self.mButtonPlay.bgColor = NORMAL_COLOR self.mButtonPlay.fgColor = (0xFF, 0xFF, 0xFF) self.mButtonPlay.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 32) self.mButtonPlay.set_center((600, 370)) self.mButtonPlay.set_size((200, 40)) self.mButtonPlay.set_text(unicode(_('Jugar'), 'UTF-8')) CGame().addChild(self.mButtonPlay) self.mButtonCredits = CButton() self.mButtonCredits.bgColor = NORMAL_COLOR self.mButtonCredits.fgColor = (0xFF, 0xFF, 0xFF) self.mButtonCredits.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 32) self.mButtonCredits.set_center((600, 420)) self.mButtonCredits.set_size((200, 40)) self.mButtonCredits.set_text(unicode(_('Créditos'), 'UTF-8')) CGame().addChild(self.mButtonCredits) self.mButtonHelp = CButton() self.mButtonHelp.bgColor = NORMAL_COLOR self.mButtonHelp.fgColor = (0xFF, 0xFF, 0xFF) self.mButtonHelp.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 32) self.mButtonHelp.set_center((600, 470)) self.mButtonHelp.set_size((200, 40)) self.mButtonHelp.set_text(unicode(_('Ayuda'), 'UTF-8')) CGame().addChild(self.mButtonHelp) self.mButtonExit = CButton() self.mButtonExit.bgColor = NORMAL_COLOR self.mButtonExit.fgColor = (0xFF, 0xFF, 0xFF) self.mButtonExit.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 32) self.mButtonExit.set_center((600, 520)) self.mButtonExit.set_size((200, 40)) self.mButtonExit.set_text(unicode(_('Salir'), 'UTF-8')) CGame().addChild(self.mButtonExit) self.mButtonA1G1 = CButton() self.mButtonA1G1.bgColor = (0x99, 0x99, 0x66) self.mButtonA1G1.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA1G1.set_center((110, 370)) self.mButtonA1G1.set_size((200, 40)) self.mButtonA1G1.set_text('A1 - Juego 1') CGame().addChild(self.mButtonA1G1) self.mButtonA1G3 = CButton() self.mButtonA1G3.bgColor = (0x99, 0x99, 0x66) self.mButtonA1G3.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA1G3.set_center((110, 420)) self.mButtonA1G3.set_size((200, 40)) self.mButtonA1G3.set_text('A1 - Juego 3') CGame().addChild(self.mButtonA1G3) self.mButtonA1G4 = CButton() self.mButtonA1G4.bgColor = (0x99, 0x99, 0x66) self.mButtonA1G4.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA1G4.set_center((110, 470)) self.mButtonA1G4.set_size((200, 40)) self.mButtonA1G4.set_text('A1 - Juego 4') CGame().addChild(self.mButtonA1G4) self.mButtonA1G5 = CButton() self.mButtonA1G5.bgColor = (0x99, 0x99, 0x66) self.mButtonA1G5.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA1G5.set_center((110, 520)) self.mButtonA1G5.set_size((200, 40)) self.mButtonA1G5.set_text('A1 - Juego 5') CGame().addChild(self.mButtonA1G5) self.mButtonA1G6 = CButton() self.mButtonA1G6.bgColor = (0x99, 0x99, 0x66) self.mButtonA1G6.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA1G6.set_center((110, 570)) self.mButtonA1G6.set_size((200, 40)) self.mButtonA1G6.set_text('A1 - Juego 6') CGame().addChild(self.mButtonA1G6) self.mButtonA2G2 = CButton() self.mButtonA2G2.bgColor = (0x99, 0x99, 0x66) self.mButtonA2G2.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 20) self.mButtonA2G2.set_center((110, 620)) self.mButtonA2G2.set_size((200, 40)) self.mButtonA2G2.set_text('A2 - Juego 2') CGame().addChild(self.mButtonA2G2) def update(self): #print "menu update" CGameState.update(self) if self.mButtonPlay.mouseOver(): self.mButtonPlay.set_bgColor(OVER_COLOR) else: self.mButtonPlay.set_bgColor(NORMAL_COLOR) if self.mButtonCredits.mouseOver(): self.mButtonCredits.set_bgColor(OVER_COLOR) else: self.mButtonCredits.set_bgColor(NORMAL_COLOR) if self.mButtonHelp.mouseOver(): self.mButtonHelp.set_bgColor(OVER_COLOR) else: self.mButtonHelp.set_bgColor(NORMAL_COLOR) if self.mButtonExit.mouseOver(): self.mButtonExit.set_bgColor(OVER_COLOR) else: self.mButtonExit.set_bgColor(NORMAL_COLOR) if self.mButtonCredits.clicked(): print "clicked credits" #cs = CHelpState() cs = CCreditsState() CGame().setState(cs) return elif self.mButtonPresentation.clicked(): print "clicked presentation" presentation = CPresentationState() CGame().setState(presentation) return elif self.mButtonPlay.clicked(): print "clicked play" partida = CSelectPartidaState() CGame().setState(partida) return elif self.mButtonHelp.clicked(): print "clicked help" #cs = CHelpState() hp = CCreditsState() CGame().setState(hp) return elif self.mButtonExit.clicked(): print 'exit' CGame().destroy() exit() elif self.mButtonA1G1.clicked(): print "clicked A1G1" #cs = CHelpState() a1g1 = CArea1Game1() CGame().setState(a1g1) return elif self.mButtonA1G3.clicked(): print "clicked A1G3" #cs = CHelpState() a1g3 = CArea1Game3() CGame().setState(a1g3) return elif self.mButtonA1G4.clicked(): print "clicked A1G3" #cs = CHelpState() a1g4 = CArea1Game4() CGame().setState(a1g4) return elif self.mButtonA1G5.clicked(): print "clicked A1G5" #cs = CHelpState() a1g5 = CArea1Game5() CGame().setState(a1g5) return elif self.mButtonA1G6.clicked(): print "clicked A1G6" #cs = CHelpState() a1g6 = CArea1Game6() CGame().setState(a1g6) return elif self.mButtonA2G2.clicked(): print "clicked A2G2" #cs = CHelpState() a2g2 = CArea2Game2() CGame().setState(a2g2) return def destroy(self): CGameState.destroy(self) #self.mInstructions.destroy() self.mInstructions = None CGame().removeChild(self.mButtonCredits) CGame().removeChild(self.mButtonPresentation) CGame().removeChild(self.mButtonPlay) CGame().removeChild(self.mButtonHelp) CGame().removeChild(self.mButtonExit) CGame().removeChild(self.mButtonA1G1) CGame().removeChild(self.mButtonA1G3) CGame().removeChild(self.mButtonA1G4) CGame().removeChild(self.mButtonA1G5) CGame().removeChild(self.mButtonA1G6) CGame().removeChild(self.mButtonA2G2) self.mButtonCredits = None self.mButtonPlay = None self.mButtonExit = None self.mButtonExit = None self.mButtonA1G1 = None self.mButtonA1G3 = None self.mButtonA1G4 = None self.mButtonA1G5 = None self.mButtonA1G6 = None self.mButtonA2G2 = None self.mBackground = None print "CMenuState destroy"