def guild_boss_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), unpar_type_id = red_unpar_data.get("unpar_type", 0), unpar_other_id = red_unpar_data.get("unpar_other_id", 0), unpar_level = red_unpar_data.get("unpar_level", 1), unpar_job = red_unpar_data.get("unpar_job", 1), blue_skill = blue_unpar_data.get("blue_skill", 0), blue_skill_level = blue_unpar_data.get("blue_skill_level", 0), fight_result = False, seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_GUILD_BOSS res = pvp_func(fight_data, fight_type, 0) print("guild_boss_start=====:", res, blue_units.keys()) for k, v in blue_units.items(): if k not in res[2]: del blue_units[k] else: blue_units[k].hp = res[2][k].hp if int(res[0]) == 1: return True return False
def mine_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), unpar_type_id = red_unpar_data.get("unpar_type", 0), unpar_other_id = red_unpar_data.get("unpar_other_id", 0), unpar_level = red_unpar_data.get("unpar_level", 1), unpar_job = red_unpar_data.get("unpar_job", 1), blue_skill = blue_unpar_data.get("blue_skill", 0), blue_skill_level = blue_unpar_data.get("blue_skill_level", 0), seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_MINE_PVE #res = pvp_func(fight_data, fight_type) #print("pvp_start=====:", res) res = pve_func(fight_data, fight_type, steps, level) print("pve_func result", res[0], res[1], res[2], res[3], res[4]) if int(res[0]) == 1: return True, res[1], res[2], res[3], res[4] return False, res[1], res[2], res[3], res[4]
def guild_pvp_start(red_groups, blue_groups, seed1, seed2): red = [] blue = [] for units in red_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) red.append(lua.table(group=lua.table_from(temp))) for units in blue_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) blue.append(lua.table(group=lua.table_from(temp))) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), seed1 = seed1, seed2 = seed2, ) fight_type = const.BATTLE_GUILD_ESCORT res = pvp_func(fight_data, fight_type, 0) if int(res[0]) == 1: return True return False
def world_boss_start(red_units, blue_units, red_unpar_data, blue_unpar_data, debuff_skill_no, damage_rate, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), unpar_type_id = red_unpar_data.get("unpar_type", 0), unpar_other_id = red_unpar_data.get("unpar_other_id", 0), unpar_level = red_unpar_data.get("unpar_level", 1), unpar_job = red_unpar_data.get("unpar_job", 1), blue_skill = blue_unpar_data.get("blue_skill", 0), blue_skill_level = blue_unpar_data.get("blue_skill_level", 0), seed1 = seed1, seed2 = seed2, debuff_skill_no = debuff_skill_no, damage_rate= damage_rate ) fight_type = const.BATTLE_PVB res = pvp_func(fight_data, fight_type, level) print("world_boss_start=====:", res, level) if int(res[0]) == 1: return {"result":True, "hp_left":res[1]} return {"result":False, "hp_left":res[1]}
def mine_pvp_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), unpar_type_id = red_unpar_data.get("unpar_type", 0), unpar_other_id = red_unpar_data.get("unpar_other_id", 0), unpar_level = red_unpar_data.get("unpar_level", 1), unpar_job = red_unpar_data.get("unpar_job", 1), blue_skill = blue_unpar_data.get("blue_skill", 0), blue_skill_level = blue_unpar_data.get("blue_skill_level", 0), seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_MINE_PVP res = pvp_func(fight_data, fight_type, level) print("pvp_start=====:", res) if int(res[0]) == 1: return True return False
def pvp_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), unpar_type_id=red_unpar_data.get("unpar_type", 0), unpar_other_id=red_unpar_data.get("unpar_other_id", 0), unpar_level=red_unpar_data.get("unpar_level", 1), unpar_job=red_unpar_data.get("unpar_job", 1), blue_skill=blue_unpar_data.get("blue_skill", 0), blue_skill_level=blue_unpar_data.get("blue_skill_level", 0), fight_result=False, seed1=seed1, seed2=seed2) fight_type = const.BATTLE_PVP res = pvp_func(fight_data, fight_type, level) print("pvp_start=====:", res) if int(res[0]) == 1: return True return False
def guild_pvp_start(red_groups, blue_groups, seed1, seed2): red = [] blue = [] for units in red_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) red.append(lua.table(group=lua.table_from(temp))) for units in blue_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) blue.append(lua.table(group=lua.table_from(temp))) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), seed1=seed1, seed2=seed2, ) fight_type = const.BATTLE_GUILD_ESCORT res = pvp_func(fight_data, fight_type, 0) if int(res[0]) == 1: return True return False
def guild_boss_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), unpar_type_id=red_unpar_data.get("unpar_type", 0), unpar_other_id=red_unpar_data.get("unpar_other_id", 0), unpar_level=red_unpar_data.get("unpar_level", 1), unpar_job=red_unpar_data.get("unpar_job", 1), blue_skill=blue_unpar_data.get("blue_skill", 0), blue_skill_level=blue_unpar_data.get("blue_skill_level", 0), fight_result=False, seed1=seed1, seed2=seed2) fight_type = const.BATTLE_GUILD_BOSS res = pvp_func(fight_data, fight_type, 0) print("guild_boss_start=====:", res, blue_units.keys()) for k, v in blue_units.items(): if k not in res[2]: del blue_units[k] else: blue_units[k].hp = res[2][k].hp if int(res[0]) == 1: return True return False
def world_boss_start(red_units, blue_units, red_unpar_data, blue_unpar_data, debuff_skill_no, damage_rate, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), unpar_type_id=red_unpar_data.get("unpar_type", 0), unpar_other_id=red_unpar_data.get("unpar_other_id", 0), unpar_level=red_unpar_data.get("unpar_level", 1), unpar_job=red_unpar_data.get("unpar_job", 1), blue_skill=blue_unpar_data.get("blue_skill", 0), blue_skill_level=blue_unpar_data.get("blue_skill_level", 0), seed1=seed1, seed2=seed2, debuff_skill_no=debuff_skill_no, damage_rate=damage_rate) fight_type = const.BATTLE_PVB res = pvp_func(fight_data, fight_type, level) print("world_boss_start=====:", res, level) if int(res[0]) == 1: return {"result": True, "hp_left": res[1]} return {"result": False, "hp_left": res[1]}
def mine_start(red_units, blue_units, red_unpar_data, blue_unpar_data, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), unpar_type_id=red_unpar_data.get("unpar_type", 0), unpar_other_id=red_unpar_data.get("unpar_other_id", 0), unpar_level=red_unpar_data.get("unpar_level", 1), unpar_job=red_unpar_data.get("unpar_job", 1), blue_skill=blue_unpar_data.get("blue_skill", 0), blue_skill_level=blue_unpar_data.get("blue_skill_level", 0), seed1=seed1, seed2=seed2) fight_type = const.BATTLE_MINE_PVE #res = pvp_func(fight_data, fight_type) #print("pvp_start=====:", res) res = pve_func(fight_data, fight_type, steps, level) print("pve_func result", res[0], res[1], res[2], res[3], res[4]) if int(res[0]) == 1: return True, res[1], res[2], res[3], res[4] return False, res[1], res[2], res[3], res[4]
def mine_start(red_units, blue_units, red_skill, red_skill_level, blue_skill, blue_skill_level, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), red_best_skill_id = red_skill, red_best_skill_level = red_skill_level, blue_best_skill_id = blue_skill, blue_best_skill_level = blue_skill_level, seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_MINE_PVE res = pvp_func(fight_data, fight_type) print("pvp_start=====:", res) res = pve_func(fight_data, fight_type, steps, level) if int(res) == 1: return True return False
def hjqy_start(red_units, blue_units, red_skill, red_skill_level, blue_skill, blue_skill_level, attack_type, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), red_skill = red_skill, red_skill_level = red_skill_level, blue_skill = blue_skill, blue_skill_level = blue_skill_level, seed1 = seed1, seed2 = seed2, attack_type = attack_type ) fight_type = const.BATTLE_HJQY res = pvp_func(fight_data, fight_type, level) print("hjqy_start=====:", res, level, blue_units.keys()) for k, v in blue_units.items(): if k not in res[2]: del blue_units[k] else: blue_units[k].hp = res[2][k].hp if int(res[0]) == 1: return True return False
def pve_start(red_units, blue_groups, red_skill, red_skill_level, blue_skill, blue_skill_level, f_unit, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for units in blue_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) blue.append(lua.table(group=lua.table_from(temp))) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), hero_unpar = red_skill, hero_unpar_level = red_skill_level, monster_unpar = blue_skill, #blue_skill_level = blue_skill_level, friend = construct_battle_unit(f_unit), fight_result = False, seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_PVE res = pve_func(fight_data, fight_type, steps, level) if int(res) == 1: return True return False
def pvp_start(red_units, blue_units, red_skill, red_skill_level, blue_skill, blue_skill_level, seed1, seed2, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for unit in blue_units.values(): blue.append(construct_battle_unit(unit)) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), red_skill = red_skill, red_skill_level = red_skill_level, blue_skill = blue_skill, blue_skill_level = blue_skill_level, fight_result = False, seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_PVP res = pvp_func(fight_data, fight_type, level) print("pvp_start=====:", res) if int(res[0]) == 1: return True return False
def pve_start(red_units, blue_groups, red_unpar_data, blue_unpar_data, f_unit, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for units in blue_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) blue.append(lua.table(group=lua.table_from(temp))) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red = lua.table_from(red), blue = lua.table_from(blue), unpar_type_id = red_unpar_data.get("unpar_type", 0), unpar_other_id = red_unpar_data.get("unpar_other_id", 0), unpar_level = red_unpar_data.get("unpar_level", 1), unpar_job = red_unpar_data.get("unpar_job", 1), monster_unpar = blue_unpar_data.get("blue_skill", 0), blue_skill_level = blue_unpar_data.get("blue_skill_level", 0), friend = construct_battle_unit(f_unit), fight_result = False, seed1 = seed1, seed2 = seed2 ) fight_type = const.BATTLE_PVE res = pve_func(fight_data, fight_type, steps, level) print("pve_func result", res[0], res[1], res[2], res[3], res[4]) round_to_kill_num = {} for k in range(1, len(res[4])+1): round_to_kill_num[k] = res[4][k] print("round, kill units num", k, res[4][k]) if int(res[0]) == 1: return True, res[1], res[2], res[3], round_to_kill_num return False, res[1], res[2], res[3], round_to_kill_num
def pve_start(red_units, blue_groups, red_unpar_data, blue_unpar_data, f_unit, seed1, seed2, step_infos, level): red = [] blue = [] for unit in red_units.values(): red.append(construct_battle_unit(unit)) for units in blue_groups: temp = [] for unit in units.values(): temp.append(construct_battle_unit(unit)) blue.append(lua.table(group=lua.table_from(temp))) temp = {} for step in step_infos: temp[step.step_id] = step.step_type print("pve_start steps %s" % temp) steps = lua.table_from(temp) fight_data = lua.table( red=lua.table_from(red), blue=lua.table_from(blue), unpar_type_id=red_unpar_data.get("unpar_type", 0), unpar_other_id=red_unpar_data.get("unpar_other_id", 0), unpar_level=red_unpar_data.get("unpar_level", 1), unpar_job=red_unpar_data.get("unpar_job", 1), monster_unpar=blue_unpar_data.get("blue_skill", 0), blue_skill_level=blue_unpar_data.get("blue_skill_level", 0), friend=construct_battle_unit(f_unit), fight_result=False, seed1=seed1, seed2=seed2) fight_type = const.BATTLE_PVE res = pve_func(fight_data, fight_type, steps, level) print("pve_func result", res[0], res[1], res[2], res[3], res[4]) round_to_kill_num = {} for k in range(1, len(res[4]) + 1): round_to_kill_num[k] = res[4][k] print("round, kill units num", k, res[4][k]) if int(res[0]) == 1: return True, res[1], res[2], res[3], round_to_kill_num return False, res[1], res[2], res[3], round_to_kill_num