The Witness: Panel Hunt Plando (#3549)

* Add panel hunt plando option

* Keys are strs

* oops

* better message

* ,

* this doesn ot need to be here

* don't replace pre picked panels

* Update options.py

* rebase error

* rebase error

* oops

* Mypy

* ruff

* another rebase error

* actually this is a stupid change too

* bring over that change™️

* Update entity_hunt.py

* Update entity_hunt.py

* Update entity_hunt.py
This commit is contained in:
NewSoupVi
2024-12-12 19:42:14 +01:00
committed by GitHub
parent f5e3677ef1
commit d7736950cd
2 changed files with 59 additions and 12 deletions

View File

@@ -5,6 +5,7 @@ from schema import And, Schema
from Options import (
Choice,
DefaultOnToggle,
LocationSet,
OptionDict,
OptionError,
OptionGroup,
@@ -17,6 +18,7 @@ from Options import (
from .data import static_logic as static_witness_logic
from .data.item_definition_classes import ItemCategory, WeightedItemDefinition
from .entity_hunt import ALL_HUNTABLE_PANELS
class DisableNonRandomizedPuzzles(Toggle):
@@ -268,6 +270,16 @@ class PanelHuntDiscourageSameAreaFactor(Range):
default = 40
class PanelHuntPlando(LocationSet):
"""
Specify specific hunt panels you want for your panel hunt game.
"""
display_name = "Panel Hunt Plando"
valid_keys = [static_witness_logic.ENTITIES_BY_HEX[panel_hex]["checkName"] for panel_hex in ALL_HUNTABLE_PANELS]
class PuzzleRandomization(Choice):
"""
Puzzles in this randomizer are randomly generated. This option changes the difficulty/types of puzzles.
@@ -477,6 +489,7 @@ class TheWitnessOptions(PerGameCommonOptions):
panel_hunt_required_percentage: PanelHuntRequiredPercentage
panel_hunt_postgame: PanelHuntPostgame
panel_hunt_discourage_same_area_factor: PanelHuntDiscourageSameAreaFactor
panel_hunt_plando: PanelHuntPlando
early_caves: EarlyCaves
early_symbol_item: EarlySymbolItem
elevators_come_to_you: ElevatorsComeToYou
@@ -505,6 +518,7 @@ witness_option_groups = [
PanelHuntTotal,
PanelHuntPostgame,
PanelHuntDiscourageSameAreaFactor,
PanelHuntPlando,
], start_collapsed=True),
OptionGroup("Locations", [
ShuffleDiscardedPanels,