mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 20:21:32 -06:00
[OC2] DeathLink (#1470)
This commit is contained in:
@@ -1,14 +1,20 @@
|
||||
from enum import Enum
|
||||
from enum import IntEnum
|
||||
from typing import TypedDict
|
||||
from Options import DefaultOnToggle, Range, Choice
|
||||
|
||||
|
||||
class LocationBalancingMode(Enum):
|
||||
class LocationBalancingMode(IntEnum):
|
||||
disabled = 0
|
||||
compromise = 1
|
||||
full = 2
|
||||
|
||||
|
||||
class DeathLinkMode(IntEnum):
|
||||
disabled = 0
|
||||
death_only = 1
|
||||
death_and_overcook = 2
|
||||
|
||||
|
||||
class OC2OnToggle(DefaultOnToggle):
|
||||
@property
|
||||
def result(self) -> bool:
|
||||
@@ -31,6 +37,23 @@ class LocationBalancing(Choice):
|
||||
default = LocationBalancingMode.compromise.value
|
||||
|
||||
|
||||
class DeathLink(Choice):
|
||||
"""DeathLink is an opt-in feature for Multiworlds where individual death events are propogated to all games with DeathLink enabled.
|
||||
|
||||
- Disabled: Death will behave as it does in the original game.
|
||||
|
||||
- Death Only: A DeathLink broadcast will be sent every time a chef falls into a stage hazard. All local chefs will be killed when any one perishes.
|
||||
|
||||
- Death and Overcook: Same as above, but an additional broadcast will be sent whenever the kitchen catches on fire from burnt food.
|
||||
"""
|
||||
auto_display_name = True
|
||||
display_name = "DeathLink"
|
||||
option_disabled = DeathLinkMode.disabled.value
|
||||
option_death_only = DeathLinkMode.death_only.value
|
||||
option_death_and_overcook = DeathLinkMode.death_and_overcook.value
|
||||
default = DeathLinkMode.disabled.value
|
||||
|
||||
|
||||
class AlwaysServeOldestOrder(OC2OnToggle):
|
||||
"""Modifies the game so that serving an expired order doesn't target the ticket with the highest tip. This helps
|
||||
players dig out of a broken tip combo faster."""
|
||||
@@ -131,6 +154,9 @@ overcooked_options = {
|
||||
# generator options
|
||||
"location_balancing": LocationBalancing,
|
||||
|
||||
# deathlink
|
||||
"deathlink": DeathLink,
|
||||
|
||||
# randomization options
|
||||
"shuffle_level_order": ShuffleLevelOrder,
|
||||
"include_horde_levels": IncludeHordeLevels,
|
||||
|
||||
Reference in New Issue
Block a user