def render_main(self): with Group("global", "全局", (self._global, models.Global)): ModelInput("energy") ModelInput("vigour") ModelInput("health") ModelInput("skill") ModelInput("atk").set_help("更换装备、升级、保存载入还原,下同") ModelInput("defense") ModelInput("critical_buff") ModelInput("critical") ModelInput("attr_wood") ModelInput("attr_fire") ModelInput("attr_earth") ModelInput("attr_metal") ModelInput("attr_water") self.lazy_group(StaticGroup("代码插入"), self.render_assembly_functions) # with Group("movement", "移动", (self._movement, models.Movement)): # ModelInput("air_time") # ModelInput("jump_height") # ModelInput("move_speed_mult") # ModelCoordWidget('coord', savable=True) with Group("movement", "变量", self.variable_model): ModelInput("jump_height", "跳跃高度")
def render_main(self): person = (self._person, models.Character) with Group("player", "全局", self._global): ModelInput("money.money", "金钱") with Group("player", "角色", person): Choice("角色", tuple("play%d" % i for i in range(1, 5)), self.weak.on_person_change) ModelInput("health") ModelInput("health_max") ModelCoordWidget("coord", labels=('X坐标', 'Z坐标', 'Y坐标'), savable=True) ModelCheckBox("invincible") self.lazy_group( Group("person_items", "角色物品", person, serializable=False, cols=4), self.render_person_items) self.lazy_group( Group("saved_items", "整理界面物品", self._saved_items, serializable=False, cols=6), self.render_saved_items) # self.lazy_group(StaticGroup("物品箱/宝物箱"), self.render_inventory_treasure_items) self.lazy_group(StaticGroup("代码插入"), self.render_assembly_functions)
def render_main(self): with Group("global", "全局", self._global): ModelInput("growth_points", "成长点数") ModelInput("money_1p", "1p金钱") ModelInput("money_2p", "2p金钱") with Group("player", "我方角色", self.person, cols=4) as group: Choice("角色", ("1P", "2P"), self.on_person_change) for addr, name in models.PERSON_ATTRS: ModelInput(name) with group.footer: dialog_style = {'width': 1200, 'height': 900} with DialogGroup("items", "道具", self.itemholder, cols=4, dialog_style=dialog_style) as dialog_group: indexs = (0, 8, 1, 9, 2, 10, 3, 11, 4, 12, 5, 13, 6, 14, 7, 15) with ModelSelect.choices_cache: for i in indexs: ModelSelect("items.%d" % i, "道具%02d" % (i + 1), choices=datasets.ITEMS) with DialogGroup("skills", "技能", self.skillholder, dialog_style=dialog_style): values = [1 << i for i in range(7, -1, -1)] for i, labels in enumerate(datasets.SKILL_ITEMS): ModelFlagWidget("have_%s" % (i + 1), "拥有", labels=labels, values=values, checkbtn=True, cols=4) ModelFlagWidget("active_%s" % (i + 1), "激活", labels=labels, values=values, checkbtn=True, cols=4) with Group("enemy", "敌人", None, cols=4) as group: for addr, name in models.ENEMY_ATTRS: Input(name, None, addr, size=1) with StaticGroup("快捷键"): ui.Text("恢复HP: alt+h")
def render_main(self): with Group("player", "角色", self._global): ModelCheckBox("x_invincible", "X无敌", enable=0xFF, disable=0) ModelCheckBox("zero_invincible", "ZEOR无敌", enable=0xFF, disable=0) ModelCheckBox("axl_invincible", "AXL无敌", enable=0xFF, disable=0) ModelInput("hp_axl", "AXL HP") ModelInput("hpmax_axl", "AXL最大HP") ModelInput("hp_x", "X HP") ModelInput("hpmax_x", "X最大HP") ModelInput("hp_zero", "ZERO HP") ModelInput("hpmax_zero", "ZERO最大HP") with Group("global", "全局", self._global): ModelInput("metal", "金属") ModelInput("resurgence", "复活晶片") ModelInput("joint_attack", "双人合击气槽") ModelCheckBox("zero_jump", "ZERO无限跳", enable=0x02, disable=0) ModelCheckBox("all_weapon", "解锁全部武器", enable=0xFF, disable=0) ModelCheckBox("super_x", "超级装甲X", enable=0xFF, disable=0) ModelCheckBox("back_zero_white_axl", "暗黑ZERO和坠天使AXL", enable=0xFF, disable=0) ModelCheckBox("ultimate_x", "终极装甲X", enable=0xFF, disable=0)
def render_main(self): with Group("global", "全局", self._global): ModelInput("money", "金钱") ModelInput("exp", "驾驶员经验") with Group("player", "我方角色", self.person, cols=4): Choice("角色", datasets.PARTNERS, self.on_person_change) ModelInput("ability", "机体类型(海陆空)及变身能力") ModelInput("spiritual_type", "精神类型") ModelSelect("robot", "机体图", choices=datasets.ROBOTS) ModelInput("map_y", "地图X坐标") ModelInput("map_x", "地图Y坐标") ModelInput("map_avatar", "地图头像") ModelSelect("weapon_1", "上武器", choices=datasets.WEAPONS) ModelSelect("weapon_2", "下武器", choices=datasets.WEAPONS) ModelInput("mobile", "机动") ModelInput("strength", "强度") ModelInput("defense", "防卫") ModelInput("speed", "速度") ModelInput("hp", "HP") ModelInput("hpmax", "HP上限") ModelInput("move", "行动次数") ModelInput("spiritual", "精神") ModelInput("spiritual_max", "精神上限") self.lazy_group(Group("items", "道具", None), self.render_items) # self.lazy_group(Group("weapons", "武器", self.weapon), self.render_weapons) # with Group("enemy", "敌人", None, cols=4): # for addr, name in models.ENEMY_ATTRS: # Input(name, None, addr, size=1) with StaticGroup("快捷键"): ui.Text("恢复HP: alt+h")
def render_main(self): with Group("global", "全局", self._global): ModelInput("turn").set_help('0~1,下面会一直累加(慎用)') ModelInput("minutes") ModelInput("seconds_1") ModelInput("seconds_0") ModelInput("our_points") ModelInput("enemy_points") ModelInput("basketry_left_top") ModelInput("basketry_left_middle") ModelInput("basketry_left_bottom") ModelInput("basketry_right_top") ModelInput("basketry_right_middle") ModelInput("basketry_right_bottom") ModelInput("ball_owner").set_help('球在人手里(0~3),地上或空中(6)') with Group("player", "我方角色", self.person) as group: Choice("角色", ("1P", "2P", "3P", "4P"), self.on_person_change) # ModelInput("jump") # ModelInput("power") ModelInput("character").set_help('0~3') with ModelSelect.choices_cache: ModelSelect("equip_1", instance=self.equip_holder, choices=datasets.ITEMS) ModelSelect("equip_2", instance=self.equip_holder, choices=datasets.ITEMS) ModelSelect("equip_3", instance=self.equip_holder, choices=datasets.ITEMS) with StaticGroup("快捷键"): ui.Text("B: 获得球") ui.Text("N: 左边耐久置0") ui.Text("M: 球筐耐久恢复")
def render_main(self): person = self.person chariot = self.chariot with Group("global", "全局", self._global): ModelInput("money", "金钱") ModelInput("battlein", "遇敌率") ModelCheckBox("battlein", "不遇敌", enable=0xFF, disable=0) with Group("player", "角色", person, cols=4): Choice("角色", datasets.PERSONS, self.on_person_change) ModelInput("level", "等级") ModelInput("hpmax", "HP上限") ModelInput("hp", "HP") ModelInput("atk", "攻击") ModelInput("defense", "守备") ModelInput("strength", "强度") ModelInput("intelli", "智力") ModelInput("stamina", "体力") ModelInput("speed", "速度") ModelInput("battle", "战斗") ModelInput("drive", "驾驶") ModelInput("fix", "修理") ModelInput("exp", "经验") self.lazy_group(Group("human_items", "角色装备/物品", person, cols=4), self.render_human_items) self.lazy_group(Group("chariot", "战车", chariot, cols=4), self.render_chariot) self.lazy_group(Group("chariot_items", "战车装备/物品", chariot, cols=4), self.render_chariot_items) with StaticGroup("快捷键"): ui.Text("左移: alt+left\n" "右移: alt+right\n" "上移: alt+up\n" "下移: alt+right\n" "恢复HP: alt+h")
def render_main(self): character = (self._character, models.Character) team_config = (self._team_config, models.TeamConfig) weapon = (self._current_weapon, models.Weapon) with Group("global", "全局", self._global): self.render_global() self.lazy_group(Group("character", "角色", character, cols=4), self.render_character) self.lazy_group(Group("character_ext", "角色额外", character), self.render_character_ext) self.lazy_group(Group("vehicle", "载具", self._global), self.render_vehicle) self.lazy_group(Group("ammo", "弹药", self._global, cols=4), self.render_ammo) self.lazy_group(Group("weapon", "武器", weapon, cols=4), self.render_weapon) self.lazy_group(Group("team", "团队", team_config, cols=4), self.render_team) self.lazy_group( Groups("技能", self.weak.onNotePageChange, addr=team_config), self.render_skill) self.lazy_group(Group("drop_rates", "掉落率", None), self.render_drop_rates) self.lazy_group(StaticGroup("代码插入"), self.render_assembly_functions) self.lazy_group( Group("assembly_variable", "代码变量", self.variable_model), self.render_assembly_variable) self.lazy_group(StaticGroup("快捷键"), self.render_hotkeys)
def render_main(self): with Group("player", "角色", self.weak._player): self.render_player() self.lazy_group(Group("vehicle", "载具", self.weak._vehicle), self.render_vehicle) self.lazy_group(Group("weapon", "武器槽", None), self.render_weapon) self.lazy_group(Group("global", "全局", 0, cols=4), self.render_global) self.lazy_group(StaticGroup("快捷键"), self.render_hotkey) self.lazy_group(StaticGroup("功能"), self.render_func) self.lazy_group(StaticGroup("工具"), self.render_tool)
def render_main(self): with Group("global", "全局", self._global, horizontal=False): self.render_global() self.lazy_group(Group("shop", "商店购物", self._global), self.render_shop) self.backpack_group = Group("store", "背包", self._global, hasheader=True, cols=4) self.lazy_group(self.backpack_group, self.render_backpack) self.pokemon_group = StaticGroup("宝可梦") self.lazy_group(self.pokemon_group, self.render_pokemon)
def render_main(self): datasets = self.datasets weak = self.weak with Group("global", "全局", self._global, cols=4): ModelInput("money") ModelInput("stamp") self.render_global_ext() self.lazy_group(Group("person", "角色", self.person, cols=4), self.render_person) self.lazy_group(Group("person_ext", "角色额外", self.person, cols=4), self.render_person_ext) self.lazy_group(Group("chariot", "战车", self.chariot, cols=4), self.render_chariot) self.lazy_group( Group("chariot_items", "战车物品/装备", self.chariot, cols=2 if self.has_holes else 4), self.render_chariot_items) self.lazy_group(Group("chariot_special_bullets", "特殊炮弹", self.chariot), self.render_chariot_special_bullets) self.lazy_group(Group("battle_status", "战斗状态", self._global, cols=4), self.render_battle_status) self.lazy_group(Group("enemy", "敌人", self.enemy, cols=4), self.render_enemy) self.lazy_group(Groups("包裹", self.weak.onNotePageChange), self.render_package_group) self.render_ext() with StaticGroup("功能"): self.render_functions(('enemy_weak', ))
def render_main(self): with Group("player", "角色", self.weak._player): self.render_player() self.lazy_group(Group("vehicle", "载具", self.weak._vehicle), self.render_vehicle) self.lazy_group(Group("weapon", "武器槽", None), self.render_weapon) self.lazy_group(Group("global", "全局", self), self.render_global) self.lazy_group(StaticGroup("快捷键"), self.render_hotkey) self.lazy_group(StaticGroup("载具模型"), self.render_vehicle_model) self.lazy_group(StaticGroup("功能"), self.render_func) with Group(None, "设置", None, hasfooter=False): self.render_config()
def render_main(self): with Group("global", "全局", self._global): ModelInput("hp") ModelInput("hpmax") ModelInput("cpmax") ModelInput("exp") ModelInput("mp") ModelInput("dark") ModelInput("atk") ModelInput("battle_hp") ModelInput("battle_hpmax") ModelCheckBox("riku_enable") self.battle_cards_group = Group("battle_cards", "战斗卡片", self._global, cols=4) self.lazy_group(self.battle_cards_group, self.render_battle_cards)
def render_sub_skill(data): i = 0 for page in data: with Group(None, page[0], cols=4): for item in page[1]: ModelInput('skill_mgr.skills.%d.status' % i, item) i += 1
def render_main(self): self._global = self.Global(0, self.handler) with Group("global", "全局", self._global): for item in self.fields: input = ModelInput(item.name) if item.max: input.set_help('max:%d' % item.max)
def render_main(self): with Group("global", "全局", self._global): ModelInput("lives") ModelInput("continues") ModelInput("score") ModelSelect("weapon", choices=WEAPONS) ModelCheckBox("invincible") ModelCheckBox("hit_anywhere")
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelInput("invincible", "无敌时间(max:85)") ModelInput("hp", "血量(max:6)") ModelInput("lives", "生命(max:9)") ModelInput("money", "金钱")
def render_main(self): with Group("global", "全局", self._global): ModelInput("money") ModelInput("turn") ModelInput("after_money") ModelInput("after_exp") ModelSelect("chapter", choices=datasets.CHAPTERS) with Group("robot", "机体", self.robot, cols=4): self.render_robot() with Group("pilot", "机师", self.pilot, cols=4): self.render_pilot() with StaticGroup("功能"): self.render_functions(('all_intensified_parts', 'all_mini_games', 'all_skill_chip', 'all_move_10'))
def render_main(self): with Group("global", "全局", self._global, cols=4): ModelInput("hp") ModelInput("hpmax") ModelInput("rupees") ModelInput("rupeesmax") ModelInput("bomb") ModelInput("array") ModelInput("conch") ModelSelect("weapon_a", choices=WEAPONS) ModelSelect("weapon_b", choices=WEAPONS) ModelSelect("bodysize", choices=("大", "小"), values=(0, 0x80)) ModelCheckBox("all_scrolls") ModelCheckBox("all_skills") ModelCheckBox("all_map") self.lazy_group(Group("items", "物品", self._global), self.render_items)
def render_battle_cards(self): with ModelSelect.choices_cache: for i in range(self.BATTLE_CARDS_PAGE_LENGTH): ModelSelect("battle_cards.%d+battle_cards_offset.card_type" % i, "", choices=BATTLE_CARDS) ModelSelect("battle_cards.%d+battle_cards_offset.card_value" % i, "", choices=map(str, range(10))) with Group.active_group().footer: Pagination(self.on_battle_cards_page, self.BATTLE_CARDS_PAGE_TOTAL)
def render_weapon(self): player = self.weak._player self.weapon_views = [] for i in range(1, len(self.WEAPON_LIST)): self.weapon_views.append( WeaponWidget(player, "weapon%d" % i, "武器槽%d" % i, i, self.SLOT_NO_AMMO, self.WEAPON_LIST)) with Group.active_group().footer: ui.Button(label="一键最大", onclick=self.weapon_max)
def render_package_group(self): datasets = self.datasets def on_page_change(self, page, item=None): setattr(self._global, "{}_offset".format(item['key']), (page - 1) * self.IREM_PAGE_LENGTH) item['group'].read() def render_items(self, item=None): with ModelSelect.choices_cache: for i in range(self.IREM_PAGE_LENGTH): ModelSelect("{0}.{1}+{0}_offset.item".format( item['key'], i), "", choices=item['source'].choices, values=item['source'].values) ModelInput( "{0}.{1}+{0}_offset.count".format(item['key'], i), "数量") with Group.active_group().footer: Pagination(partial(on_page_change, self.weak, item=item), item['page_count']) for item in ( { 'key': 'humen_items', 'label': '道具', 'source': datasets.HUMEN_ITEM, 'page_count': 25 }, { 'key': 'potions', 'label': '恢复道具', 'source': datasets.POTION, 'page_count': 3 }, { 'key': 'battle_items', 'label': '战斗道具', 'source': datasets.BATTLE_ITEM, 'page_count': 6 }, { 'key': 'equips', 'label': '装备', 'source': datasets.ALL_EQUIP, 'page_count': 45 }, ): item['group'] = Group(item['key'], item['label'], self._global, cols=4) self.lazy_group(item['group'], partial(render_items, self.weak, item=item)) setattr(self._global, "{}_offset".format(item['key']), 0)
def render_pokemon(self): # pokemon = self.weak._pokemon active_pokemon = self._active_pokemon ui.RadioBox("带着的宝可梦", className="expand", choices=tuple(str(i) for i in range(1, 7)), onselect=self.on_active_pokemo_swith) with Groups(None, self.weak.onNotePageChange): with Group("basic", "基本", active_pokemon): ModelInput("breedInfo.bIntimate", "亲密度", spin=True, max=255) ModelSelect("breedInfo.wBreed", "种族", choices=self.datasets.BREED_NAMES) ModelInput("Header.dwChar", "性格值", hex=True) ModelInput("Header.dwID", "ID", hex=True) ModelSelect("personality", "性格", choices=self.datasets.PERSONALITYS, onselect=self.on_personality_select) ui.Text("性格描述", className="vcenter") self.personality_desc = ui.Text("", className="vcenter") ModelSelect("breedInfo.wItem", "手持道具", choices=self.datasets.ITEMS) ModelInput("breedInfo.dwExp", "经验值") with Group("basic", "能力", active_pokemon): pass with Group("basic", "技能", active_pokemon): pass with Group("basic", "缎带", active_pokemon): pass with Group("basic", "其它", active_pokemon): pass with ui.Horizontal(className="expand"): ui.Button("读入", className="btn_sm", onclick=self.read_active_pokemon) ui.Button("写回", className="btn_sm", onclick=self.write_active_pokemon)
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelCheckBox("invincible_1", "1P无敌", enable=0xff, disable=0) ModelCheckBox("invincible_2", "2P无敌", enable=0xff, disable=0) ModelSelect("weapon_1", "1P武器", choices=BULLETS, values=BULLET_VALUES) ModelSelect("weapon_2", "2P武器", choices=BULLETS, values=BULLET_VALUES) ModelInput("lives_1", "1P生命") ModelInput("lives_2", "2P生命")
def render_train_items(self): datasets = self.datasets with ModelSelect.choices_cache: for i in range(10): ModelSelect("train_items.%d+train_items_offset.item" % i, "", choices=datasets.ITEMS) ModelInput("train_items.%d+train_items_offset.count" % i, "数量") with Group.active_group().footer: Pagination(self.on_train_items_page, self.TRAIN_ITEMS_PAGE_TOTAL)
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelInput("hp", "HP") ModelInput("hpmax", "最大HP") ModelCheckBox("invincible", "无敌", enable=0xFF, disable=0) ModelSelect("dragon", "当前龙", choices=DRAGONS) with StaticGroup("功能"): self.render_functions(('hp_max', 'all_dragons', 'all_tools'))
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelInput("bomb_count") ModelInput("bomb_power") ModelInput("level") ModelInput("invincible") ModelCheckBox("through_bomb") ModelCheckBox("timebomb") ModelCheckBox("through_wall")
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelInput("lives_1", "1P生命") ModelInput("lives_2", "2P生命") ModelCheckBox("invincible_1", "1P无敌", enable=0xFF, disable=0) ModelCheckBox("invincible_2", "2P无敌", enable=0xFF, disable=0) # ModelInput("level", "关卡(0-4)") ModelFlagWidget("medicine_1", "1P药水效果", labels=MEDICINE) ModelFlagWidget("medicine_2", "2P药水效果", labels=MEDICINE)
def render_main(self): self._global = Global(0, self.handler) with Group("global", "全局", self._global): ModelInput("hp", "HP(max:47)") ModelInput("star", "星星") ModelInput("lives", "生命") # ModelInput("credits", "分数") ModelCheckBox("invincible", "闪光无敌") ModelCheckBox("invincible2", "状态无敌") ModelInput("form", "形态") ModelSelect("ability", "能力", choices=ABILITY)
def render_main(self): with Group("global", "全局", self._global): ModelInput("time", "时间") ModelInput("money", "金钱") ModelInput("get_money", "战后金钱") ModelInput("get_exp", "战后经验") ModelInput("battlein", "遇敌率") ModelCoordWidget("town_pos", "城镇坐标", length=2, type=int, savable=True, preset=self.coords) ModelCoordWidget("map_pos", "地图坐标", length=2, type=int, savable=True, preset=self.coords) self.lazy_group(Group("player", "角色", self.person, cols=4), self.render_person) self.skills_group = Group("skills", "角色精神力", self.person) self.lazy_group(self.skills_group, self.render_skills) self.lazy_group(Group("skills", "角色物品", self.person, cols=4), self.render_items) self.lazy_group(Group("djinnis", "角色精灵", self.person), self.render_djinnis) self.lazy_group(StaticGroup("快捷键"), self.render_hotkeys)