mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-18 11:44:42 +02:00
CLOSES #623, CLOSES #624, CLOSES #636, CLOSES #637, CLOSES #639, CLOSES #650, CLOSES #697, CLOSES #704, CLOSES #722
This commit is contained in:
@@ -155,6 +155,14 @@ FieldDefaults.FIELD = {
|
||||
"EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1" } },
|
||||
},
|
||||
},
|
||||
-- Floors whose door callback a version does not have. Yellow dropped
|
||||
-- RocketHideoutB4FDoorCallbackScript entirely (pokeyellow
|
||||
-- scripts/RocketHideoutB4F.asm goes straight to EnableAutoTextBoxDrawing)
|
||||
-- and its .blk ships the same open $0e doorway, so B4F's lift gate is
|
||||
-- never barred there. Every manifest still carries the row above, so
|
||||
-- this is what stops a Yellow cache walling Giovanni off behind two
|
||||
-- guard flags Jessie & James never set (#650).
|
||||
skipMaps = { yellow = { ROCKET_HIDEOUT_B4F = true } },
|
||||
},
|
||||
-- VermilionGymSetDoorTile opens the motorized door once both locks are hit
|
||||
hiddenExtras = {
|
||||
|
||||
@@ -8,6 +8,7 @@ local Camera = require("src.render.Camera")
|
||||
local Collision = require("src.world.Collision")
|
||||
local Encounter = require("src.world.Encounter")
|
||||
local FieldDefaults = require("src.world.FieldDefaults")
|
||||
local GameVersion = require("src.core.GameVersion")
|
||||
local Logger = require("src.core.Logger")
|
||||
local Map = require("src.world.Map")
|
||||
local MapLoader = require("src.world.MapLoader")
|
||||
@@ -224,6 +225,13 @@ function OverworldState:stampClosedDoors()
|
||||
"closedDoors")
|
||||
local floorDoors = self.map and closedDoors and closedDoors[self.map.id]
|
||||
if not floorDoors then return end
|
||||
-- ...and floors the running version has no callback for: Yellow's B4F
|
||||
-- lift gate stands open from the first visit, since Jessie & James take
|
||||
-- the two guard slots there and set neither guard flag (#650)
|
||||
local skipMaps = FieldDefaults.fieldValue(Game.data, "cardKeyDoors",
|
||||
"skipMaps")
|
||||
local skipped = skipMaps and skipMaps[GameVersion.get()]
|
||||
if skipped and skipped[self.map.id] then return end
|
||||
local stamped, unlocked = false, false
|
||||
for _, door in ipairs(floorDoors) do
|
||||
local open
|
||||
|
||||
Reference in New Issue
Block a user