From ea707a0bc528242a6d04b045baaed79080195651 Mon Sep 17 00:00:00 2001 From: Jarno Westhof Date: Sat, 6 Nov 2021 01:12:11 +0100 Subject: [PATCH] [TimeSpinner] Serverside DeathLink + Spoiler log extension --- worlds/timespinner/Options.py | 7 ++++++- worlds/timespinner/__init__.py | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/worlds/timespinner/Options.py b/worlds/timespinner/Options.py index 94770fd8..4fa1158c 100644 --- a/worlds/timespinner/Options.py +++ b/worlds/timespinner/Options.py @@ -42,6 +42,10 @@ class Inverted(Toggle): # "Require gasmask for Maw" # display_name = "Stinky Maw" +class DeathLink(Toggle): + "Participate in the DeathLink mechanic" + display_name = "DeathLink" + # Some options that are available in the timespinner randomizer arent currently implemented timespinner_options: Dict[str, Toggle] = { "StartWithJewelryBox": StartWithJewelryBox, @@ -53,7 +57,8 @@ timespinner_options: Dict[str, Toggle] = { "QuickSeed": QuickSeed, "SpecificKeycards": SpecificKeycards, "Inverted": Inverted, - #"StinkyMaw": StinkyMaw + #"StinkyMaw": StinkyMaw, + "DeathLink": DeathLink, } def is_option_enabled(world: MultiWorld, player: int, name: str) -> bool: diff --git a/worlds/timespinner/__init__.py b/worlds/timespinner/__init__.py index 11590249..4a982ff2 100644 --- a/worlds/timespinner/__init__.py +++ b/worlds/timespinner/__init__.py @@ -1,4 +1,4 @@ -from typing import Dict, List, Set +from typing import Dict, List, Set, TextIO from BaseClasses import Item, MultiWorld, Location from ..AutoWorld import World from .LogicMixin import TimespinnerLogic @@ -77,7 +77,11 @@ class TimespinnerWorld(World): slot_data["PersonalItems"] = get_personal_items(self.player, self.location_cache[self.player]) return slot_data + + def write_spoiler_header(self, spoiler_handle: TextIO): + spoiler_handle.write('Twin Pyramid Keys unlock: %s\n' % (self.pyramid_keys_unlock[self.player])) + def get_excluded_items_based_on_options(world: MultiWorld, player: int) -> Set[str]: excluded_items: Set[str] = set()