From 97cc920a9f99b23317387ef392040786728eee20 Mon Sep 17 00:00:00 2001 From: Little Cat Date: Tue, 10 Jan 2023 20:16:08 -0400 Subject: [PATCH] spellbook: Teleport to factories. --- toontown/coghq/CogHQLoader.py | 2 +- toontown/spellbook/MagicWordIndex.py | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/toontown/coghq/CogHQLoader.py b/toontown/coghq/CogHQLoader.py index 713551b..b64b7b7 100644 --- a/toontown/coghq/CogHQLoader.py +++ b/toontown/coghq/CogHQLoader.py @@ -18,7 +18,7 @@ class CogHQLoader(StateData.StateData): self.parentFSMState = parentFSMState self.placeDoneEvent = 'cogHQLoaderPlaceDone' self.townBattleDoneEvent = 'town-battle-done' - self.fsm = ClassicFSM.ClassicFSM('CogHQLoader', [State.State('start', None, None, ['quietZone', 'cogHQExterior', 'cogHQBossBattle']), + self.fsm = ClassicFSM.ClassicFSM('CogHQLoader', [State.State('start', None, None, ['quietZone', 'cogHQExterior', 'factoryInterior', 'cogHQBossBattle']), State.State('cogHQExterior', self.enterCogHQExterior, self.exitCogHQExterior, ['quietZone', 'cogHQLobby']), State.State('cogHQLobby', self.enterCogHQLobby, self.exitCogHQLobby, ['quietZone', 'cogHQExterior', 'cogHQBossBattle']), State.State('cogHQBossBattle', self.enterCogHQBossBattle, self.exitCogHQBossBattle, ['quietZone']), diff --git a/toontown/spellbook/MagicWordIndex.py b/toontown/spellbook/MagicWordIndex.py index 8ee1667..d01e34e 100644 --- a/toontown/spellbook/MagicWordIndex.py +++ b/toontown/spellbook/MagicWordIndex.py @@ -397,6 +397,19 @@ class Quests(MagicWord): else: return "Valid commands: \"finish\"" +class Factory(MagicWord): + desc = "Quickly start a Sellbot Factory." + execLocation = MagicWordConfig.EXEC_LOC_SERVER + arguments = [('sideEnterace', int, False, 0)] + + def handleWord(self, invoker, avId, toon, *args): + if not hasattr(self.air, "factoryMgr"): + return "No factory manager." + + from toontown.toonbase import ToontownGlobals + zoneId = self.air.factoryMgr.createFactory(ToontownGlobals.SellbotFactoryInt, 1 if args[0] > 0 else 0, [avId]) + return "Created factory, teleporting...", avId, ["cogHQLoader", "factoryInterior", "", ToontownGlobals.SellbotHQ, zoneId, 0] + class BossBattle(MagicWord): aliases = ["boss"] desc = "Create a new or manupliate the current boss battle."