import boss import particle import credits import vector from settings import * from pygame.locals import * pygame.init() from utility import * readSettings() if settingList[SETTING_FULLSCREEN]: screen = utility.setFullscreen() else: screen = utility.setFullscreen(False) pygame.display.set_icon(utility.loadImage("icon")) pygame.display.set_caption("Trouble In CloudLand v1.1") screen.fill([0,0,0]) tempText = text.Text(FONT_PATH, 36, [255,255,255]) tempText.setText("Loading...") tempText.position = vector.vector2d((SCREEN_WIDTH / 2) - (tempText.image.get_width() / 2), (SCREEN_HEIGHT / 2) - (tempText.image.get_height() / 2)) tempText.update() tempText.draw(screen) pygame.display.flip() try:
def handleEvents(self): for event in pygame.event.get(): if (event.type == KEYDOWN and event.key == K_ESCAPE) or (event.type == MOUSEBUTTONDOWN and event.button == 3) or (event.type == ACTIVEEVENT and event.gain == 0): utility.dim(128,FILL_COLOR) """takingScreenShot = True while takingScreenShot: for shotEvent in pygame.event.get(): if (event.type == pygame.MOUSEBUTTONDOWN): takingScreenShot = False""" screenGrab = self.screen.copy() pauseMenuRunning = True while pauseMenuRunning: pauseMenu = menu.Menu(self.screen, self.musicList[self.worldNumber], screenGrab, [0, SCREEN_HEIGHT / 3, SCREEN_WIDTH, SCREEN_HEIGHT], ["Pause",128,SCREEN_WIDTH / 2, SCREEN_HEIGHT / 4], pauseMenuDictionary).displayMenu() if pauseMenu == OPTION_MENU: optionResult = True lastHighlighted = 0 while optionResult: optionMenuDictionary = {SOUND_MENU:["Sound Options", "Change Sound Options"], DISPLAY_MENU:["Video Options" ,"Change Video Options"], CHANGE_SENSITIVITY:["Mouse Sensitivity: " + getSensitivity(settingList[SENSITIVITY]), "Change Mouse Sensitivity"], EXIT_OPTIONS:["Back","Go Back to the Main Menu"]} sensitivityMenuDictionary = {0:["Very Low", "Change Sensitivty to Very Low"], 1:["Low", "Change Sensitivty to Low"], 2:["Normal", "Change Sensitivty to Normal"], 3:["High", "Change Sensitivty to High"], 4:["Very High", "Change Sensitivty to Very High"],} soundMenuDictionary = {TOGGLE_SFX:["Sound Effects: " + on(settingList[SFX]), "Turn " + on(not settingList[SFX]) + " Sound Effects"], TOGGLE_MUSIC:["Music: " + on(settingList[MUSIC]),"Turn " + on(not settingList[MUSIC]) + " Music"], EXIT_OPTIONS:["Back","Go Back to the Option Menu"]} displayMenuDictionary = {TOGGLE_PARTICLES:["Particles: " + able(settingList[PARTICLES]), "Turn " + on(not settingList[PARTICLES]) + " Particle Effects"], TOGGLE_FULLSCREEN:["Video Mode: " + getScreenMode(settingList[SETTING_FULLSCREEN]), "Switch To " + getScreenMode(not settingList[SETTING_FULLSCREEN]) + " Mode"], EXIT_OPTIONS:["Back","Go Back to the Main Menu"]} optionResult = menu.Menu(self.screen, self.musicList[self.worldNumber], screenGrab, [0, SCREEN_HEIGHT / 3, SCREEN_WIDTH, SCREEN_HEIGHT], ["Options",96,SCREEN_WIDTH / 2, SCREEN_HEIGHT / 4], optionMenuDictionary, lastHighlighted).displayMenu() if optionResult == SOUND_MENU: soundResult = True lastHighLighted = 0 while soundResult: soundResult = menu.Menu(self.screen, self.musicList[self.worldNumber], screenGrab, [0, SCREEN_HEIGHT / 3, SCREEN_WIDTH, SCREEN_HEIGHT], ["Sound Options",96,SCREEN_WIDTH / 2, SCREEN_HEIGHT / 4], soundMenuDictionary, lastHighlighted).displayMenu() if soundResult == TOGGLE_SFX: settingList[SFX] = not settingList[SFX] lastHighlighted = 0 elif soundResult == TOGGLE_MUSIC: settingList[MUSIC] = not settingList[MUSIC] if not settingList[MUSIC]: pygame.mixer.Channel(MUSIC_CHANNEL).stop() lastHighlighted = 1 elif soundResult == EXIT_OPTIONS: soundResult = False soundMenuDictionary = {TOGGLE_SFX:["Sound Effects: " + on(settingList[SFX]), "Turn " + on(not settingList[SFX]) + " Sound Effects"], TOGGLE_MUSIC:["Music: " + on(settingList[MUSIC]),"Turn " + on(not settingList[MUSIC]) + " Music"], EXIT_OPTIONS:["Back","Go Back to the Option Menu"]} if optionResult == DISPLAY_MENU: displayResult = True lastHighlighted = 0 while displayResult: displayResult = menu.Menu(self.screen, self.musicList[self.worldNumber], screenGrab, [0, SCREEN_HEIGHT / 3, SCREEN_WIDTH, SCREEN_HEIGHT], ["Video Options",96,SCREEN_WIDTH / 2, SCREEN_HEIGHT / 4], displayMenuDictionary, lastHighlighted).displayMenu() if displayResult == TOGGLE_PARTICLES: settingList[PARTICLES] = not settingList[PARTICLES] lastHighlighted = 0 elif displayResult == TOGGLE_FULLSCREEN: settingList[SETTING_FULLSCREEN] = not settingList[SETTING_FULLSCREEN] lastHighlighted = 1 pygame.mixer.quit() pygame.mixer.init() if settingList[SETTING_FULLSCREEN]: utility.setFullscreen() else: utility.setFullscreen(False) pygame.mouse.set_visible(False) elif displayResult == EXIT_OPTIONS: displayResult = False displayMenuDictionary = {TOGGLE_PARTICLES:["Particles: " + able(settingList[PARTICLES]), "Turn " + on(not settingList[PARTICLES]) + " Particle Effects"], TOGGLE_FULLSCREEN:["Video Mode: " + getScreenMode(settingList[SETTING_FULLSCREEN]), "Switch To " + getScreenMode(not settingList[SETTING_FULLSCREEN]) + " Mode"], EXIT_OPTIONS:["Back","Go Back to the Main Menu"]} elif optionResult == EXIT_OPTIONS: optionResult = False elif optionResult == CHANGE_SENSITIVITY: sensitivityResult = True lastHighlighted = 0 while sensitivityResult: sensitivityResult = menu.Menu(self.screen, self.musicList[self.worldNumber], screenGrab, [0, SCREEN_HEIGHT / 3, SCREEN_WIDTH, SCREEN_HEIGHT], ["Mouse Sensitivity",96,SCREEN_WIDTH / 2, SCREEN_HEIGHT / 4], sensitivityMenuDictionary, lastHighlighted).displayMenu() if sensitivityResult == 0: settingList[SENSITIVITY] = .5 elif sensitivityResult == 1: settingList[SENSITIVITY] = .75 sensitivityResult = False elif sensitivityResult == 2: settingList[SENSITIVITY] = 1 sensitivityResult = False elif sensitivityResult == 3: settingList[SENSITIVITY] = 1.25 sensitivityResult = False elif sensitivityResult == 4: settingList[SENSITIVITY] = 1.5 sensitivityResult = False elif pauseMenu == RESUME_GAME or pauseMenu == False: pauseMenuRunning = False pygame.mouse.get_rel() elif pauseMenu == EXIT_GAME: utility.fadeMusic() utility.playMusic(self.musicList[MENU_MUSIC], True) self.done = True pauseMenuRunning = False elif event.type == MOUSEMOTION and self.player.lives: mousein = [pygame.mouse.get_pos()[0] - 512.0, pygame.mouse.get_pos()[1] - 384.0] if mousein[0] != 0 and mousein[1] != 0: self.player.fire() self.player.velocity = (self.player.velocity + mousein) / 1.5 * settingList[SENSITIVITY]