def main_next(self): if self.check_probs(): self.profile.information['case'] += 1 self.case += 1 self.fix_probs() self.profile.save(self.save_dir) self.profile = Profile() if not os.path.exists( self.save_dir) else Profile.read_save(self.save_dir) # if self.case == 8: # cutscene = Cutscene(self.director, 2) # self.director.replace(cutscene) # else: # if victory: self.remove(self.MGLayer.ch_layer) self.scroller.remove(self.MGLayer) # instantiate new Main Game Layer self.MGLayer = MainGameLayer(self.director, self.scroller, self, self.case, self.profile, self.dna) self.scroller.add(self.MGLayer, z=1) self.director.pop()
def __init__(self, director, state): self.director = director self.state = state self.dna = GameBackground('../res/main_game_backgrounds/main.png') # self.bg = GameBackground('../res/main_game_backgrounds/background.png') super().__init__() self.save_dir = 'profiles/save.json' if self.state == 'newgame': self.profile = Profile() else: self.profile = Profile() if not os.path.exists( self.save_dir) else Profile.read_save(self.save_dir) self.popups = {} self.shown_popup = None # for name in os. self.popups['finish_helicase'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/finish_helicase.png'), position=(640, 360)) self.popups['fail_helicase'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/fail_helicase.png'), position=(640, 360)) self.popups['finish_pp'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/finish_pp.png'), position=(640, 360)) self.popups['fail_pp'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/fail_pp.png'), position=(640, 360)) self.popups['finish_ligase'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/finish_ligase.png'), position=(640, 360)) self.popups['fail_ligase'] = cocos.sprite.Sprite( pyglet.image.load('../res/popups/fail_ligase.png'), position=(640, 360)) for pop in self.popups.values(): self.add(pop, 4) pop.do(Hide()) self.case = self.profile.information['case'] self.pos = [600, 0] self.life_num = self.profile.get_lives() print('new life number', self.life_num) self.lives = cocos.sprite.Sprite( pyglet.image.load('../res/lives_' + str(self.life_num) + '.png'), position=(224, 637)) self.scroller = cocos.layer.ScrollingManager() self.MGLayer = MainGameLayer(self.director, self.scroller, self, self.case, self.profile, self.dna) back_button = Button(1199, 658, '../res/back_button.png', self, self.back) back_button.setHasHighlight('../res/back_button_h.png') left_button = Button(1050, 90, '../res/BUTTON LEFT.png', self, self.set_pos_left) left_button.setHasHighlight('../res/BUTTON LEFT HIGHLIGHTED.png') right_button = Button(1190, 90, '../res/BUTTON RIGHT.png', self, self.set_pos_right) right_button.setHasHighlight('../res/BUTTON RIGHT HIGHLIGHTED.png') self.add(back_button, z=1) self.add(left_button, z=1) self.add(right_button, z=1) self.add(self.lives, z=1) self.scroller.add(self.MGLayer, z=0) self.add(self.scroller, z=0) # initial view position self.scroller.set_focus(*self.pos)