Skip to content
Merged
2 changes: 1 addition & 1 deletion archipelago/Logic.py
Original file line number Diff line number Diff line change
Expand Up @@ -1538,7 +1538,7 @@ def CanFreeChunky(self):
return self.IsKong(self.settings.chunky_freeing_kong) or self.settings.free_trade_items
# Otherwise you need the right slam level (usually 1)
else:
return self.hasMoveSwitchsanity(Switches.FactoryFreeKong, level=Levels.FranticFactory, default_slam_level=1) and (self.slope_resets or self.handstand)
return self.hasMoveSwitchsanity(Switches.FactoryFreeKong, level=Levels.FranticFactory, default_slam_level=1)

def CanOpenForestLobbyGoneDoor(self):
"""Check if the player can open the door to the gone pad in forest lobby."""
Expand Down
3 changes: 2 additions & 1 deletion randomizer/Enums/Events.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,7 @@
"HelmLobbyW1aTagged": 206,
"HelmLobbyW1bTagged": 207,
"KilledRabbit": 208,
"LankyMushroomSlamSwitch": 209
"LankyMushroomSlamSwitch": 209,
"ChunkyFreed": 210
}
}
2 changes: 1 addition & 1 deletion randomizer/Logic.py
Original file line number Diff line number Diff line change
Expand Up @@ -974,7 +974,7 @@ def CanFreeChunky(self):
return self.IsKong(self.settings.chunky_freeing_kong) or self.settings.free_trade_items
# Otherwise you need the right slam level (usually 1)
else:
return self.hasMoveSwitchsanity(Switches.FactoryFreeKong, level=Levels.FranticFactory, default_slam_level=1) and (self.slope_resets or self.handstand)
return self.hasMoveSwitchsanity(Switches.FactoryFreeKong, level=Levels.FranticFactory, default_slam_level=1)

def CanOpenForestLobbyGoneDoor(self):
"""Check if the player can open the door to the gone pad in forest lobby."""
Expand Down
6 changes: 3 additions & 3 deletions randomizer/LogicFiles/FranticFactory.py
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,8 @@
]),

Regions.BeyondHatch: Region("Beyond Hatch", HintRegion.Storage, Levels.FranticFactory, True, -1, [
LocationLogic(Locations.ChunkyKong, lambda l: l.CanFreeChunky()),
LocationLogic(Locations.FactoryLankyFreeChunky, lambda l: l.CanFreeChunky()),
LocationLogic(Locations.ChunkyKong, lambda l: Events.ChunkyFreed in l.Events),
LocationLogic(Locations.FactoryLankyFreeChunky, lambda l: Events.ChunkyFreed in l.Events),
LocationLogic(Locations.FactoryChunkyDarkRoom, lambda l: ((l.punch and l.chunky) or l.CanPhase()) and ((l.punch and l.CanSlamSwitch(Levels.FranticFactory, 1)) or l.generalclips) and l.ischunky),
LocationLogic(Locations.RainbowCoin_Location02, lambda l: (l.punch and l.chunky) or l.CanPhase()),
LocationLogic(Locations.FactoryKasplatStorage, lambda l: not l.settings.kasplat_rando),
Expand Down Expand Up @@ -173,7 +173,7 @@
]),

Regions.FactoryStoragePipe: Region("Factory Storage Pipe", HintRegion.Storage, Levels.FranticFactory, False, None, [], [
# If we were to move the switch to Chunky's cage back up this pipe, the event would go here.
Event(Events.ChunkyFreed, lambda l: l.CanFreeChunky())
], [
TransitionFront(Regions.BeyondHatch, lambda _: True),
]),
Expand Down
3 changes: 2 additions & 1 deletion randomizer/Patching/ApplyRandomizer.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@
from randomizer.Patching.KongRando import apply_kongrando_cosmetic
from randomizer.Patching.Library.Generic import setItemReferenceName, addNewScript, IsItemSelected, getProgHintBarrierItem, getHintRequirementBatch, IsDDMSSelected
from randomizer.Patching.Library.Assets import CompTextFiles, ItemPreview
from randomizer.Patching.Library.Image import getImageFile
from randomizer.Patching.MiscSetupChanges import (
randomize_setup,
updateKrushaMoveNames,
Expand Down Expand Up @@ -673,7 +674,6 @@
randomize_coins(spoiler, ROM_COPY)
place_mayhem_coins(spoiler, ROM_COPY)
ApplyShopRandomizer(spoiler, ROM_COPY)
showWinCondition(spoiler.settings, ROM_COPY)
remove5DSCameraPoint(spoiler, ROM_COPY)
alterTextboxRequirements(spoiler)
spoiler.arcade_item_reward = Items.NintendoCoin
Expand Down Expand Up @@ -729,6 +729,7 @@
applyKongModelSwaps(spoiler.settings, ROM_COPY)
updateHelmFaces(spoiler.settings, ROM_COPY)
updateSnidePanel(spoiler.settings, ROM_COPY)
showWinCondition(spoiler.settings, ROM_COPY)

patchAssembly(ROM_COPY, spoiler)
ApplyMirrorMode(spoiler.settings, ROM_COPY)
Expand Down
1 change: 1 addition & 0 deletions typings/randomizer/Enums/Events.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -208,4 +208,5 @@ export enum Events {
HelmLobbyW1bTagged = 207,
KilledRabbit = 208,
LankyMushroomSlamSwitch = 209,
ChunkyFreed = 210,
}
1 change: 1 addition & 0 deletions typings/randomizer/Enums/Events.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -210,3 +210,4 @@ class Events(IntEnum):
HelmLobbyW1bTagged = 207
KilledRabbit = 208
LankyMushroomSlamSwitch = 209
ChunkyFreed = 210