def activate(self): self.activated = True res.fadeoutMusic() self.maps = [] self.change_delay = 8000 # seconds until map moves to next point self.map_fadeout = 60.0 # must be a float self.last_update = 0 self.surfaceQueue = queue() self.subpixelQueue = queue() self.hotspots = cycle(([300,500], [750, 800], [350, 260], [700, 340], [120, 1000], [800, 830], [480, 900])) self.overworld = res.loadImage("overworld.png") self.menu = cMenu(Rect((42,20), sd.get_size()), 20, 5, 'vertical', 100, [('New Game', self.new_game), ('Battle Test', self.continue_game), ('Introduction', self.show_intro), ('Quit Game', self.quit_game)], font="northwoodhigh.ttf", font_size=24) self.menu.ready() self.change_map()
def activate(self): import spells def name(spell): if spell.uses >= 1: i = loaded_spells.index(spell) return "{0} ({1})".format( spell.name, spell.uses - self.history[(caller, i)]) else: return spell.name caller = self.parent.party[0][self.parent.member_focus] loaded_spells = spells.load("all") self.items = [ (name(s), self.select_spell, s) for s in loaded_spells ] self.menu = cMenu(Rect((10,60),sd.get_size()), 20, 0, 'vertical', 100, self.items, font="fonts/dpcomic.ttf", font_size=16, banner_style="normal") self.menu.callback = self.update_spell_card for i, spell in enumerate(loaded_spells): if spell.uses >= 1: if self.history[(caller, i)] >= spell.uses: self.menu.disable(i) self.menu.ready(self.last_selection[caller]) self.update_spell_card(self.menu.selection) self.parent.timer.set_alarm(self.select_delay)
def draw(self, surface): # fade in the dialog box background if self.state == 0: surface.blit(self.bkg, (10,160)) self.counter += 1 if self.counter == 6: self.bkg.set_alpha(0) self.bkg = self.bkg.convert() elif self.counter == 7: surface.fill((128,128,128), (14, 146, self.bkg.get_size())) print "fill" self.counter = 0 self.state = 1 self.bkg = None # fade in the title, if any elif self.state == 1: if self.title != None: surface.blit(self.title_image, (15,150)) self.counter += 1 if self.counter == 3: self.state = 2 self.counter = 0 self.title_image = None else: self.state = 2 # quickly write the text elif self.state == 2: x = 20 if self.title != None: y = 168 else: y = 167 for line in wrap(self.text, self.wrap_width): banner = TextBanner(line, size=self.text_size) surface.blit(banner.render(self.background), (x,y)) y += banner.font.size(line)[1] self.menu = cMenu(Rect((25,210),(280, 30)), 5, 5, 'horizontal', 10, [('Yes', self.yes), ('No', self.no)], font="fonts/dpcomic.ttf", font_size=16) self.menu.ready() self.wait_sound.stop() self.wait_sound.play() self.state = 3 elif self.state == 3: self.menu.draw(surface)
def reactivate(self): if self.game: self.menu = cMenu(((32,20), sd.get_size()), 20, -5, 'vertical', 100, [('New Game', self.new_game), ('Continue', self.continue_game), #('Save', self.save_game), #('Reload', self.load_game), #('Save and Quit', self.savequit_game), ('Quit', self.quit_game)], font="visitor1.ttf", font_size=20) else: self.menu = cMenu(((32,20), sd.get_size()), 20, -5, 'vertical', 100, [('New Game', self.new_game), #('Continue', self.load_game), ('Introduction', self.show_intro), ('Quit', self.quit_game)], font="visitor1.ttf", font_size=20) self.menu.ready() self.redraw = True res.playMusic("oneslymove.ogg")
def activate(self): import spells def name(spell): if spell.uses >= 1: i = loaded_spells.index(spell) return "{0} ({1})".format( spell.name, spell.uses - self.history[(caller, i)]) else: return spell.name caller = self.parent.party[0][self.parent.member_focus] loaded_spells = spells.load("all") self.items = [(name(s), self.select_spell, s) for s in loaded_spells] self.menu = cMenu(Rect((10, 60), sd.get_size()), 20, 0, 'vertical', 100, self.items, font="fonts/dpcomic.ttf", font_size=16, banner_style="normal") self.menu.callback = self.update_spell_card for i, spell in enumerate(loaded_spells): if spell.uses >= 1: if self.history[(caller, i)] >= spell.uses: self.menu.disable(i) self.menu.ready(self.last_selection[caller]) self.update_spell_card(self.menu.selection) self.parent.timer.set_alarm(self.select_delay)