sc2: Fixing mission levels not counting towards the level 35 threshold to unlock primal kerrigan (#3109)
This commit is contained in:
parent
c8fd42f938
commit
56ec0e902d
|
@ -957,13 +957,13 @@ def caclulate_soa_options(ctx: SC2Context) -> int:
|
|||
|
||||
return options
|
||||
|
||||
def kerrigan_primal(ctx: SC2Context, items: typing.Dict[SC2Race, typing.List[int]]) -> bool:
|
||||
def kerrigan_primal(ctx: SC2Context, kerrigan_level: int) -> bool:
|
||||
if ctx.kerrigan_primal_status == KerriganPrimalStatus.option_always_zerg:
|
||||
return True
|
||||
elif ctx.kerrigan_primal_status == KerriganPrimalStatus.option_always_human:
|
||||
return False
|
||||
elif ctx.kerrigan_primal_status == KerriganPrimalStatus.option_level_35:
|
||||
return items[SC2Race.ZERG][type_flaggroups[SC2Race.ZERG]["Level"]] >= 35
|
||||
return kerrigan_level >= 35
|
||||
elif ctx.kerrigan_primal_status == KerriganPrimalStatus.option_half_completion:
|
||||
total_missions = len(ctx.mission_id_to_location_ids)
|
||||
completed = len([(mission_id * VICTORY_MODULO + get_location_offset(mission_id)) in ctx.checked_locations
|
||||
|
@ -1138,7 +1138,7 @@ class ArchipelagoBot(bot.bot_ai.BotAI):
|
|||
|
||||
async def updateZergTech(self, current_items, kerrigan_level):
|
||||
zerg_items = current_items[SC2Race.ZERG]
|
||||
kerrigan_primal_by_items = kerrigan_primal(self.ctx, current_items)
|
||||
kerrigan_primal_by_items = kerrigan_primal(self.ctx, kerrigan_level)
|
||||
kerrigan_primal_bot_value = 1 if kerrigan_primal_by_items else 0
|
||||
await self.chat_send("?GiveZergTech {} {} {} {} {} {} {} {} {} {} {} {}".format(
|
||||
kerrigan_level, kerrigan_primal_bot_value, zerg_items[0], zerg_items[1], zerg_items[2],
|
||||
|
|
Loading…
Reference in New Issue