The Witness: Add "Panel Keys" and "Obelisk Keys" item groups #4026
This commit is contained in:
parent
ad30e3264a
commit
089b3f17a7
|
@ -1,4 +1,4 @@
|
||||||
from typing import Dict, List, Set
|
from typing import Dict, List, Set, cast
|
||||||
|
|
||||||
from BaseClasses import ItemClassification
|
from BaseClasses import ItemClassification
|
||||||
|
|
||||||
|
@ -41,7 +41,19 @@ def populate_items() -> None:
|
||||||
ITEM_GROUPS.setdefault("Symbols", set()).add(item_name)
|
ITEM_GROUPS.setdefault("Symbols", set()).add(item_name)
|
||||||
elif definition.category is ItemCategory.DOOR:
|
elif definition.category is ItemCategory.DOOR:
|
||||||
classification = ItemClassification.progression
|
classification = ItemClassification.progression
|
||||||
ITEM_GROUPS.setdefault("Doors", set()).add(item_name)
|
|
||||||
|
first_entity_hex = cast(DoorItemDefinition, definition).panel_id_hexes[0]
|
||||||
|
entity_type = static_witness_logic.ENTITIES_BY_HEX[first_entity_hex]["entityType"]
|
||||||
|
|
||||||
|
if entity_type == "Door":
|
||||||
|
ITEM_GROUPS.setdefault("Doors", set()).add(item_name)
|
||||||
|
elif entity_type == "Panel":
|
||||||
|
ITEM_GROUPS.setdefault("Panel Keys", set()).add(item_name)
|
||||||
|
elif entity_type in {"EP", "Obelisk Side", "Obelisk"}:
|
||||||
|
ITEM_GROUPS.setdefault("Obelisk Keys", set()).add(item_name)
|
||||||
|
else:
|
||||||
|
raise ValueError(f"Couldn't figure out what type of door item {definition} is.")
|
||||||
|
|
||||||
elif definition.category is ItemCategory.LASER:
|
elif definition.category is ItemCategory.LASER:
|
||||||
classification = ItemClassification.progression_skip_balancing
|
classification = ItemClassification.progression_skip_balancing
|
||||||
ITEM_GROUPS.setdefault("Lasers", set()).add(item_name)
|
ITEM_GROUPS.setdefault("Lasers", set()).add(item_name)
|
||||||
|
|
Loading…
Reference in New Issue