From 84dee07404ec41cd9d50d28cbe93b69943ccdf95 Mon Sep 17 00:00:00 2001 From: Wofsauge Date: Sat, 29 May 2021 03:01:27 +0200 Subject: [PATCH] Added charge indicator for timed and special charging items --- descriptions/rep/en_us.lua | 4 ++-- main.lua | 23 ++++++++++++++++++----- resources/gfx/eid_inline_icons.anm2 | 8 +++++--- resources/gfx/eid_inline_icons.png | Bin 28813 -> 28876 bytes 4 files changed, 25 insertions(+), 10 deletions(-) diff --git a/descriptions/rep/en_us.lua b/descriptions/rep/en_us.lua index 17eb01f2..05810c7c 100644 --- a/descriptions/rep/en_us.lua +++ b/descriptions/rep/en_us.lua @@ -114,7 +114,7 @@ local repCollectibles={ [328] = {"328", "The Negative", "↑ +1.0 Damage up#Damages all enemies in the room when getting hit and at half a red heart or none"}, -- The Negative [330] = {"330", "Soy Milk", "↑ Very high Tears up: (fire rate x 5.5)#↓ -80% Damage down#Drastically reduces knockback"}, -- Soy Milk [331] = {"331", "Godhead", "Homing tears#↑ +0.5 Damage up#↑ +0.5 Range up#↓ -0.3 Tears down#↓ -0.3 Shot Speed down#↑ +0.8 Tear Height#Tears gain a damaging aura"}, -- Godhead - [336] = {"336", "Dead Onion", "Piercing + spectral tears#↓ -1.5 Range up#↓ -0.4 Shot Speed down#↑ +50% Tear size"}, -- Dead Onion + [336] = {"336", "Dead Onion", "Piercing + spectral tears#↓ -1.5 Range down#↓ -0.4 Shot Speed down#↑ +50% Tear size"}, -- Dead Onion [339] = {"339", "Safety Pin", "↑ +1.5 Range up#↑ +0.16 Shot Speed up#+1 Black Heart#↑ +0.5 Tear Height"}, -- Safety Pin [342] = {"342", "Blue Cap", "↑ +1 Health up#↑ +0.7 Tears up#↓ -16% Shot Speed down#Heals 2 red hearts"}, -- Blue Cap [344] = {"344", "Match Book", "+1 Black Heart#Spawns 2-3 Bomb pickups#Spawns the Match Stick {{Trinket41}} Trinket"}, -- Match Book @@ -497,7 +497,7 @@ local repCards={ [29] = {"29", "Ace of Spades", "Turns all pickups, chests and non-boss enemies into keys"}, -- Ace of Spades [30] = {"30", "Ace of Hearts", "Turns all pickups, chests and non-boss enemies into hearts"}, -- Ace of Hearts [39] = {"39", "Algiz", "Invincibility for 20 seconds"}, -- Algiz - [51] = {"51", "Holy Card", "Grants the Holy Mantle effect#(Next damage you take is 0)äEffect lasts until damage is taken"}, -- Holy card + [51] = {"51", "Holy Card", "Grants the Holy Mantle effect#(Next damage you take is 0)#Effect lasts until damage is taken"}, -- Holy card [55] = {"55", "Rune Shard", "Activates a random rune effect#The rune effect is weaker"}, -- Rune Shard [56] = {"56", "0 - The Fool?", "Drops all your hearts and pickups on the floor#Only half a heart left afterwards#Pickups can spawn as {{Collectible74}} {{Collectible19}} collectibles if amount is sufficient"}, -- 0 - The Fool? diff --git a/main.lua b/main.lua index 1ff0ee7c..016f3b33 100644 --- a/main.lua +++ b/main.lua @@ -29,6 +29,8 @@ EID.IconSprite:Load("gfx/eid_transform_icons.anm2", true) EID.InlineIconSprite = Sprite() EID.InlineIconSprite:Load("gfx/eid_inline_icons.anm2", true) +EID.InlineIconSprite2 = Sprite() +EID.InlineIconSprite2:Load("gfx/eid_inline_icons.anm2", true) EID.CardPillSprite = Sprite() EID.CardPillSprite:Load("gfx/eid_cardspills.anm2", true) @@ -218,11 +220,22 @@ function EID:printDescription(desc) end EID.IconSprite:Play(EID.ItemTypeAnm2Names[itemType]) EID:renderIcon(EID.IconSprite, renderPos.X + offsetX * EID.Config["Scale"], renderPos.Y + offsetY * EID.Config["Scale"]) - if itemType == 3 then -- Display Charge - EID.IconSprite:Play(EID.itemConfig:GetCollectible(desc.ID).MaxCharges) - EID:renderIcon(EID.IconSprite, renderPos.X + offsetX * EID.Config["Scale"], renderPos.Y + offsetY * EID.Config["Scale"]) - offsetX = offsetX + 11 - elseif itemType == 4 then -- familiar + if itemType == 3 then + -- Display Charge + offsetX = offsetX + 1 + local curItemConfig = EID.itemConfig:GetCollectible(desc.ID) + if REPENTANCE and curItemConfig.ChargeType == ItemConfig.CHARGE_TIMED then + EID.InlineIconSprite2:SetFrame("pickups", 10) -- Timer Icon + elseif REPENTANCE and (curItemConfig.ChargeType == ItemConfig.CHARGE_SPECIAL or desc.ID == CollectibleType.COLLECTIBLE_BLANK_CARD or desc.ID == CollectibleType.COLLECTIBLE_PLACEBO or + desc.ID == CollectibleType.COLLECTIBLE_CLEAR_RUNE or desc.ID == CollectibleType.COLLECTIBLE_D_INFINITY) then + EID.InlineIconSprite2:SetFrame("numbers", 13) + else + EID.InlineIconSprite2:SetFrame("numbers", curItemConfig.MaxCharges) + end + EID:renderIcon(EID.InlineIconSprite2, renderPos.X + offsetX * EID.Config["Scale"], renderPos.Y + offsetY * EID.Config["Scale"]) + offsetX = offsetX + 8 + elseif itemType == 4 then + -- familiar offsetX = offsetX + 8 end if not EID.Config["ShowItemName"] then diff --git a/resources/gfx/eid_inline_icons.anm2 b/resources/gfx/eid_inline_icons.anm2 index 452f0fd4..c78e9982 100644 --- a/resources/gfx/eid_inline_icons.anm2 +++ b/resources/gfx/eid_inline_icons.anm2 @@ -1,5 +1,5 @@ - + @@ -13,7 +13,7 @@ - + @@ -32,6 +32,7 @@ + @@ -119,7 +120,7 @@ - + @@ -135,6 +136,7 @@ + diff --git a/resources/gfx/eid_inline_icons.png b/resources/gfx/eid_inline_icons.png index 233dbabf3965cdcfa15b6b6e1daaded045cbb5cd..e20261e94446c7342e48453bbc3d555c043187af 100644 GIT binary patch delta 9376 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 beRKr5Ez|g<>J&YJke9s7C+YI{(4hYXG<_Fd