Glitched Crown support additions (#736)
- always check cycle with RGON -- this allows soul of isaac or everything jar. still 5+ entries are needed to show summary list - add option to disable summary list
This commit is contained in:
4 files changed
+29
-1
No files matched your search
@@ -509,6 +509,10 @@ EID.UserConfig = {
|
|||||||
-- REPENTANCE ONLY!!!
|
-- REPENTANCE ONLY!!!
|
||||||
-- Default = false
|
-- Default = false
|
||||||
["SpindownDiceSkipLocked"] = false,
|
["SpindownDiceSkipLocked"] = false,
|
||||||
|
-- Show summary list for Glitched Crown, 5 item names are shown first, and press tap to cycle descriptions
|
||||||
|
-- REPENTANCE ONLY!!!
|
||||||
|
-- Default = true
|
||||||
|
["GlitchedCrownSummary"] = true,
|
||||||
|
|
||||||
-- Error message displayed when an error occurs
|
-- Error message displayed when an error occurs
|
||||||
-- Default = [Effect not defined]
|
-- Default = [Effect not defined]
|
||||||
@@ -651,6 +655,7 @@ EID.DefaultConfig = {
|
|||||||
["SpindownDiceDisplayID"] = false,
|
["SpindownDiceDisplayID"] = false,
|
||||||
["SpindownDiceDisplayName"] = false,
|
["SpindownDiceDisplayName"] = false,
|
||||||
["SpindownDiceSkipLocked"] = false,
|
["SpindownDiceSkipLocked"] = false,
|
||||||
|
["GlitchedCrownSummary"] = true,
|
||||||
["SaveGameNumber"] = 0,
|
["SaveGameNumber"] = 0,
|
||||||
["HideUncollectedItemDescriptions"] = false,
|
["HideUncollectedItemDescriptions"] = false,
|
||||||
["ItemCollectionIndicator"] = true,
|
["ItemCollectionIndicator"] = true,
|
||||||
|
|||||||
@@ -2396,7 +2396,27 @@ end
|
|||||||
EID.GlitchedCrownCheck = {}
|
EID.GlitchedCrownCheck = {}
|
||||||
-- Watch pedestals for being a Glitched Crown style pedestal that flips between items too quickly to display descriptions for
|
-- Watch pedestals for being a Glitched Crown style pedestal that flips between items too quickly to display descriptions for
|
||||||
function EID:WatchForGlitchedCrown()
|
function EID:WatchForGlitchedCrown()
|
||||||
|
if REPENTOGON then
|
||||||
|
-- In REPENTOGON, always check even without Glitched Crown, allowing to check 5+ Soul of Isaac usage, or Everything Jar
|
||||||
|
local curRoomIndex = game:GetLevel():GetCurrentRoomDesc().ListIndex
|
||||||
|
EID.GlitchedCrownCheck[curRoomIndex] = EID.GlitchedCrownCheck[curRoomIndex] or {}
|
||||||
|
|
||||||
|
for _, entity in ipairs(Isaac.FindByType(5, 100, -1, true, false)) do
|
||||||
|
-- Use InitSeed and Index to prevent any Diplopia weirdness
|
||||||
|
EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index] = EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index] or {}
|
||||||
|
local pickup = entity:ToPickup()
|
||||||
|
local cycle = pickup:GetCollectibleCycle()
|
||||||
|
if #cycle > 1 then
|
||||||
|
for i, subType in ipairs(cycle) do
|
||||||
|
EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index][subType] = EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index][subType] or {EID.GameUpdateCount + i, EID.GameUpdateCount + i}
|
||||||
|
-- update the last frame seen for the pedestal's current collectible ID
|
||||||
|
EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index][subType][2] = EID.GameUpdateCount + i
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
if not EID.collectiblesOwned[689] then return end
|
if not EID.collectiblesOwned[689] then return end
|
||||||
|
|
||||||
local curRoomIndex = game:GetLevel():GetCurrentRoomDesc().ListIndex
|
local curRoomIndex = game:GetLevel():GetCurrentRoomDesc().ListIndex
|
||||||
EID.GlitchedCrownCheck[curRoomIndex] = EID.GlitchedCrownCheck[curRoomIndex] or {}
|
EID.GlitchedCrownCheck[curRoomIndex] = EID.GlitchedCrownCheck[curRoomIndex] or {}
|
||||||
|
|
||||||
@@ -2409,6 +2429,7 @@ function EID:WatchForGlitchedCrown()
|
|||||||
-- update the last frame seen for the pedestal's current collectible ID
|
-- update the last frame seen for the pedestal's current collectible ID
|
||||||
EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index][entity.SubType][2] = EID.GameUpdateCount
|
EID.GlitchedCrownCheck[curRoomIndex][entity.InitSeed..entity.Index][entity.SubType][2] = EID.GameUpdateCount
|
||||||
end
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Replaces Variable placeholders in string with a given value
|
-- Replaces Variable placeholders in string with a given value
|
||||||
|
|||||||
@@ -477,6 +477,8 @@ if MCMLoaded then
|
|||||||
{infoText = "Changes Health Ups and removes healing effect text when playing as a character that can't have red health"})
|
{infoText = "Changes Health Ups and removes healing effect text when playing as a character that can't have red health"})
|
||||||
EID:AddBooleanSetting("Display", "DisplayTCainSalvageResults", "Show Tainted Cain Salvage Results",
|
EID:AddBooleanSetting("Display", "DisplayTCainSalvageResults", "Show Tainted Cain Salvage Results",
|
||||||
{repOnly = true, infoText = "As Tainted Cain, replaces pedestal descriptions with what they will turn into on touch"})
|
{repOnly = true, infoText = "As Tainted Cain, replaces pedestal descriptions with what they will turn into on touch"})
|
||||||
|
EID:AddBooleanSetting("Display", "GlitchedCrownSummary", "Show Glitched Crown Summary",
|
||||||
|
{repOnly = true, infoText = "With Glitched Crown, show summary list for cycling pedestals"})
|
||||||
|
|
||||||
|
|
||||||
--------Obstruction---------
|
--------Obstruction---------
|
||||||
|
|||||||
@@ -989,7 +989,7 @@ if EID.isRepentance then
|
|||||||
-- Using magic numbers here in case it's slightly faster, and because the callback names give context
|
-- Using magic numbers here in case it's slightly faster, and because the callback names give context
|
||||||
-- Check Birthright first because it overwrites the description instead of appending to it
|
-- Check Birthright first because it overwrites the description instead of appending to it
|
||||||
if descObj.ObjSubType == 619 then table.insert(callbacks, BirthrightCallback) end
|
if descObj.ObjSubType == 619 then table.insert(callbacks, BirthrightCallback) end
|
||||||
if EID.collectiblesOwned[689] then table.insert(callbacks, GlitchedCrownCallback) end
|
if (REPENTOGON or EID.collectiblesOwned[689]) and EID.Config["GlitchedCrownSummary"] then table.insert(callbacks, GlitchedCrownCallback) end
|
||||||
|
|
||||||
-- Glowing Hourglass overwrites the description when used three times
|
-- Glowing Hourglass overwrites the description when used three times
|
||||||
if REPENTOGON and descObj.ObjSubType == 422 then table.insert(callbacks, GlowingHourglassCallback) end
|
if REPENTOGON and descObj.ObjSubType == 422 then table.insert(callbacks, GlowingHourglassCallback) end
|
||||||
|
|||||||
Reference in new issue
Block a user