SC2: Fix missing brackets in Zerg The Host logic (#5657)

* SC2: Fix missing brackets in Zerg The Host logic

* Allow usage of SoA any race LotV and add additional brackets
This commit is contained in:
Ziktofel
2025-11-23 19:37:50 +01:00
committed by GitHub
parent c2f76d81ab
commit 2d15c23681

View File

@@ -2947,7 +2947,7 @@ class SC2Logic:
)
)
or (
self.spear_of_adun_presence == SpearOfAdunPresence.option_everywhere
self.spear_of_adun_presence in (SpearOfAdunPresence.option_everywhere, SpearOfAdunPresence.option_any_race_lotv)
and state.has(item_names.SOA_TIME_STOP, self.player)
or self.advanced_tactics
and (state.has_any((item_names.SOA_SHIELD_OVERCHARGE, item_names.SOA_SOLAR_BOMBARDMENT), self.player))
@@ -2963,29 +2963,43 @@ class SC2Logic:
and self.zerg_base_buster(state)
and self.zerg_big_monsters(state)
and (
(self.morph_brood_lord(state) or self.morph_guardian(state))
and (
(self.morph_devourer(state) and state.has(item_names.MUTALISK, self.player))
or state.has_all((item_names.INFESTED_LIBERATOR, item_names.INFESTED_LIBERATOR_CLOUD_DISPERSAL), self.player)
)
or (
state.has_all(
(
item_names.MUTALISK,
item_names.MUTALISK_SEVERING_GLAIVE,
item_names.MUTALISK_VICIOUS_GLAIVE,
item_names.MUTALISK_SUNDERING_GLAIVE,
item_names.MUTALISK_RAPID_REGENERATION,
),
self.player,
(
(
(self.morph_brood_lord(state) or self.morph_guardian(state))
and (
self.morph_devourer(state) and state.has(item_names.MUTALISK, self.player)
or state.has_all(
(
item_names.INFESTED_LIBERATOR,
item_names.INFESTED_LIBERATOR_CLOUD_DISPERSAL
),
self.player
)
)
)
or (
state.has_all(
(
item_names.MUTALISK,
item_names.MUTALISK_SEVERING_GLAIVE,
item_names.MUTALISK_VICIOUS_GLAIVE,
item_names.MUTALISK_SUNDERING_GLAIVE,
item_names.MUTALISK_RAPID_REGENERATION,
),
self.player,
)
)
)
or (
self.spear_of_adun_presence in (SpearOfAdunPresence.option_everywhere, SpearOfAdunPresence.option_any_race_lotv)
and (
state.has(item_names.SOA_TIME_STOP, self.player)
or (self.advanced_tactics
and (state.has_any((item_names.SOA_SHIELD_OVERCHARGE, item_names.SOA_SOLAR_BOMBARDMENT),
self.player))
)
)
)
)
or (
self.spear_of_adun_presence == SpearOfAdunPresence.option_everywhere
and state.has(item_names.SOA_TIME_STOP, self.player)
or self.advanced_tactics
and (state.has_any((item_names.SOA_SHIELD_OVERCHARGE, item_names.SOA_SOLAR_BOMBARDMENT), self.player))
)
)