Added BFFS! Synergy modifier / Indicator

closes #656
This commit is contained in:
Wofsauge committed 2024-05-23 19:55:57 +02:00
1 parent 0dc818abbd
commit 65f40a4171
4 files changed
+55 -3

No files matched your search

+11
View File
@@ -977,3 +977,14 @@ EID.descriptions[languageCode].ConditionalDescs = {
["5.300.15"] = "{{DemonBeggar}} Spawns a Devil Beggar", -- Temperance (Greed Mode effect)
["5.350.23"] = "{{Warning}} Dying in a {{SacrificeRoom}} Sacrifice Room while holding this trinket unlocks The Lost", -- Missing Poster (Unlock The Lost)
}
EID.descriptions[languageCode].BFFSSynergies = {
["NoEffect"] = "No Effect",
["DoubleDamage"] = "Damage doubled",
["5.100.273"] = "Doubles impact damage and increases explosive damage by 25", -- Bob's Brain
["5.100.266"] = "Spawns an extra Blue Spider", -- Juicy Sack
["5.100.360"] = "Shoots tears that deal 200% of your damage", -- Incubus
["5.100.417"] = "Increases radius, but not damage", -- Succubus
["5.100.537"] = "Increases pool size, but not damage", -- Lil Spewer
["5.100.539"] = "Spawns a champion variant of the enemy", -- Mystery Egg
}
+10
View File
@@ -1201,6 +1201,16 @@ local repConditions={
}
EID:updateDescriptionsViaTable(repConditions, EID.descriptions[languageCode].ConditionalDescs)
local repBFFSSynergies = {
["5.100.360"] = "Shoots tears that deal 150% of your damage. 200% for Lilith", -- Incubus
["5.100.610"] = "Spawns 4 rock waves in an x pattern. Doubles bird damage. Damage of waves unaffected.", -- Bird Cage
["5.100.569"] = "+2 full hearts when health is drained", -- Blood Oath
["5.100.178"] = "Double water damage and spawns a blue flame at point of impact", -- Holy Water
["5.100.276"] = "Fires additional shots in random directions and leaves a larger puddle of creep", -- Isaac's Heart
["5.100.612"] = "Gives the Lost Soul a Holy Mantle effect", -- Lost Soul
["5.100.635"] = "On use, fires 8 tears from the players position that have the same effects as his tears", -- Stitches
}
EID:updateDescriptionsViaTable(repBFFSSynergies, EID.descriptions[languageCode].BFFSSynergies)
-- If Debug enabled, add overwrite tables to the languagepack in order for the language completion script to be able to compare them
if EID.enableDebug then
+11 -1
View File
@@ -900,7 +900,10 @@ EID.ItemPoolTypeToMarkup = { [0] = "{{ItemPoolTreasure}}", "{{ItemPoolShop}}", "
EID.LocalModePositionOffset = {
Default = Vector(0, 20),
Shop = function(entity) if EID:EntitySanityCheck(entity) and not EID:IsGridEntity(entity) and entity:ToPickup() and entity:ToPickup():IsShopItem() then return Vector(0, 35) end end,
}
}
-- Items that dont have an effect with BFFS! item
EID.BFFSNoSynergy = {[11] = true, [81] = true, [238] = true, [239] = true, [243] = true, [265] = true, [268] = true, [269] = true, [278] = true, [280] = true, [281] = true, [387] = true, [404] = true, [405] = true, [431] = true, [436] = true, [469] = true, [472] = true, [492] = true, [516] = true, [528] = true, [542] = true, [543] = true }
-- Character IDs that aren't allowed to have Red Health: ???, The Lost, The Soul
EID.NoRedHeartsPlayerIDs = { [4] = true, [10] = true, [17] = true }
@@ -908,3 +911,10 @@ if REPENTANCE then
-- ???, The Lost, Black Judas, The Soul, Tainted Judas, Tainted ???, Tainted Lost, Tainted Forgotten, Tainted Bethany, Tainted Soul
EID.NoRedHeartsPlayerIDs = { [4] = true, [10] = true, [12] = true, [17] = true, [24] = true, [25] = true, [31] = true, [35] = true, [36] = true, [40] = true }
end
if REPENTANCE then
EID.BFFSNoSynergy[504] = true -- Brown Nugget
EID.BFFSNoSynergy[567] = true -- Paschal Candle
EID.BFFSNoSynergy[651] = true -- Star of Bethlehem
EID.BFFSNoSynergy[697] = true -- Vanishing Twin
end
+23 -2
View File
@@ -7,7 +7,7 @@ EID.inModifierPreview = false
EID.TabDescThisFrame = false
-- List of collectible IDs for us to check if a player owns them; feel free to add to this in mods that add description modifiers!
EID.collectiblesToCheck = { CollectibleType.COLLECTIBLE_VOID, CollectibleType.COLLECTIBLE_CAR_BATTERY }
EID.collectiblesToCheck = { CollectibleType.COLLECTIBLE_VOID, CollectibleType.COLLECTIBLE_CAR_BATTERY, CollectibleType.COLLECTIBLE_BFFS }
local maxSlot = 1
-- Repentance modifiers
if EID.isRepentance then
@@ -17,7 +17,8 @@ if EID.isRepentance then
CollectibleType.COLLECTIBLE_BINGE_EATER, CollectibleType.COLLECTIBLE_BOOK_OF_VIRTUES, CollectibleType.COLLECTIBLE_SPINDOWN_DICE,
CollectibleType.COLLECTIBLE_TAROT_CLOTH, CollectibleType.COLLECTIBLE_MOMS_BOX, 59, --Birthright Belial
CollectibleType.COLLECTIBLE_BLANK_CARD, CollectibleType.COLLECTIBLE_CLEAR_RUNE, CollectibleType.COLLECTIBLE_PLACEBO,
CollectibleType.COLLECTIBLE_FALSE_PHD, CollectibleType.COLLECTIBLE_ABYSS, CollectibleType.COLLECTIBLE_FLIP, CollectibleType.COLLECTIBLE_CAR_BATTERY, CollectibleType.COLLECTIBLE_GLOWING_HOUR_GLASS,
CollectibleType.COLLECTIBLE_FALSE_PHD, CollectibleType.COLLECTIBLE_ABYSS, CollectibleType.COLLECTIBLE_FLIP, CollectibleType.COLLECTIBLE_CAR_BATTERY,
CollectibleType.COLLECTIBLE_GLOWING_HOUR_GLASS, CollectibleType.COLLECTIBLE_BFFS
}
end
EID.collectiblesOwned = {}
@@ -290,6 +291,18 @@ local function BlackFeatherCallback(descObj)
return descObj
end
local function BFFSSynergiesCallback(descObj)
local description = EID:getDescriptionEntry("BFFSSynergies", descObj.fullItemString, true)
if EID.BFFSNoSynergy[descObj.ObjSubType] then
description = EID:getDescriptionEntry("BFFSSynergies", "NoEffect")
elseif description == nil then
description = EID:getDescriptionEntry("BFFSSynergies", "DoubleDamage")
end
EID:appendToDescription(descObj, "#{{Collectible247}} {{ColorOrange}}" .. description .. "{{CR}}")
return descObj
end
if EID.isRepentance then
-- Handle Birthright
local function BirthrightCallback(descObj)
@@ -914,6 +927,14 @@ local function EIDConditionsAB(descObj)
if EID.blackRuneOwned then table.insert(callbacks, BlackRuneCallback) end
end
if EID.collectiblesOwned[356] then table.insert(callbacks, CarBatteryCallback) end
-- BFF Synergy check
if EID.collectiblesOwned[247] then
local config = EID.itemConfig:GetCollectible(descObj.ObjSubType)
if config ~= nil and config.Type == ItemType.ITEM_FAMILIAR then
table.insert(callbacks, BFFSSynergiesCallback)
end
end
elseif descObj.ObjVariant == PickupVariant.PICKUP_TRINKET then
if descObj.ObjSubType == 80 then table.insert(callbacks, BlackFeatherCallback) end
end