def __init__(self): super().__init__() self.sprites = get_sprites() self.director = Director(self) self.machine = Machine(self.scr, self.sprites) self.HUD = HUD(self.scr, self) self.dis = Dis(self.scr) self.moneys = 8654105 self.constructors = {"dollars": Dollar, "coins": Coin} self.maxes = {"Machine": 0, "dollars":5, "coins": 5} self.current_values = {"Machine": 0, "dollars": 1, "coins": 0} self.prices = {"Machine": [100, 250, 500], "dollars": [50, 100, 200], "coins": [200, 500, 1000]} self.values = {"Machine": [None, None, None], "dollars": [2, 5, 10], "coins": [5, 10, 20]} self.levels = {"Machine": -1, "dollars": -1, "coins": -1} self.names = ["Machine", "dollars", "coins"] self.unlocked = {"Machine": True, "dollars": True, "coins": False} dollars = Group(name="dollars") coins = Group(name="coins") machine = Group(name="Machine") self.groups = [machine, dollars, coins] self.thresholds = {100: False} self.main_menu = Scenes.get_money_main(self.scr, self.__game_n_load, self.game, self.del_data) self.shop_menu = Scenes.get_money_shop(self) self.letters = Letters(self, self.scr, self.thresholds, self.sprites) self.active_letter = Letter_Placeholder() return
def __init__(self): super().__init__() self.money = Money() self.blit_money = self.money.start self.menu = Scenes.get_games_menu(self) self.settings = Scenes.get_settings(self) self.credits = Scenes.get_credits(self) self.settings_else = Scenes.get_settings_else(self) return
def __init__(self, scr, sprites, save, load): buy_bg = pygame.transform.scale(sprites['buy_bg'], (1280, 520)) self.money_bg, self.pulldown, self.buy_bg, self.buttons = Scenes.get_HUD( scr, sprites, self.pull_menu, buy_bg, save, load) self.moneys = 0 self.money = Scenes.get_money(scr) self.factor = 20 self.moving = 0 # start down while testing self.moving = self.factor self.down = False self.max = 500 self.current = 0 return
def addScense(self, tid, name): '''添加一个场景服务器 @param tid: int gate中连接的动态id @param name: str 场景服务器的名称 ''' scenes = Scenes(tid, name) self.scenesDict[tid] = scenes
def __init__(self): self._arts = Arts() self._vars = Vars() self._scn_gen = SceneGenerator() self._abv_gnd = 0 self._e1 = Enemy() _, self._width = Scenes().get_init_dim() self._em = 0 self._mario_place = 0 self._b1 = Bullet() self._bsjump_cord = 20 self._bsjump_corddef = self._bsjump_cord self._pipe_place = ((self._width * 4) - 10)
def unlock(self, unlocks): for un in unlocks: self.unlocked[un] = unlocks[un] self.shop_menu = Scenes.get_money_shop(self) return
def load(self): # my patent-pending brilliant loading function try: data = json.load(open("data.json", "r")) self.moneys = data[0] for key, _, _, _ in zip(maxes := data[1], values := data[2], levels := data[3], unlocked := data[4]): self.maxes[key] = maxes[key] self.current_values[key] = values[key] self.levels[key] = levels[key] self.unlocked[key] = unlocked[key] for key in data[5]: self.thresholds[key] = data[5][key] self.active_letter = self.letters.get_active( self.moneys, self.thresholds) self.shop_menu = Scenes.get_money_shop(self) except Exception as e: # loading can fail in various unfun ways print(e) pass return def increase_maxes(self): for key in self.maxes: self.maxes[key] += 1 return def buy(self, button): # a few logic rules for the buying process if self.moneys - button.price >= 0: self.moneys -= button.price