diff --git a/main.lua b/main.lua
index 1c8182dc..a84ab1c3 100644
--- a/main.lua
+++ b/main.lua
@@ -289,32 +289,37 @@ function EID:renderQuestionMark()
end
function EID:renderIndicator(entity)
+ if EID.Config["Indicator"] == "none" then
+ return
+ end
local repDiv = 1
if REPENTANCE then
repDiv = 255
end
+ local sprite = entity:GetSprite()
+ local entityPos = Game():GetRoom():WorldToScreenPosition(entity.Position)
if EID.Config["Indicator"] == "blink" then
local c = 255 - math.floor(255 * ((entity.FrameCount % 40) / 40))
- entity:SetColor(Color(1, 1, 1, 1, c/repDiv, c/repDiv, c/repDiv), 1, 1, false, false)
- entity:Render(nullVector)
- entity:SetColor(Color(1, 1, 1, 1, 0, 0, 0), 2, 1, false, false)
+ sprite.Color = Color(1, 1, 1, 1, c/repDiv, c/repDiv, c/repDiv)
+ sprite:Render(entityPos, nullVector, nullVector)
+ sprite.Color = Color(1, 1, 1, 1, 0, 0, 0)
elseif EID.Config["Indicator"] == "border" then
local c = 255 - math.floor(255 * ((entity.FrameCount % 40) / 40))
- entity:SetColor(Color(1, 1, 1, 1, c/repDiv, c/repDiv, c/repDiv), 1, 1, false, false)
- entity:Render(Vector(0, 1))
- entity:Render(Vector(0, -1))
- entity:Render(Vector(1, 0))
- entity:Render(Vector(-1, 0))
- entity:SetColor(Color(1, 1, 1, 1, 0, 0, 0), 2, 1, false, false)
- entity:Render(nullVector)
+ sprite.Color = Color(1, 1, 1, 1, c/repDiv, c/repDiv, c/repDiv)
+ sprite:Render(entityPos + Vector(0, 1), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(0, -1), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(1, 0), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(-1, 0), nullVector, nullVector)
+ sprite.Color = Color(1, 1, 1, 1, 0, 0, 0)
+ sprite:Render(entityPos, nullVector, nullVector)
elseif EID.Config["Indicator"] == "highlight" then
- entity:SetColor(Color(1, 1, 1, 1, 255/repDiv, 255/repDiv, 255/repDiv), 1, 1, false, false)
- entity:Render(Vector(0, 1))
- entity:Render(Vector(0, -1))
- entity:Render(Vector(1, 0))
- entity:Render(Vector(-1, 0))
- entity:SetColor(Color(1, 1, 1, 1, 0, 0, 0), 2, 1, false, false)
- entity:Render(nullVector)
+ sprite.Color = Color(1, 1, 1, 1, 255/repDiv, 255/repDiv, 255/repDiv)
+ sprite:Render(entityPos + Vector(0, 1), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(0, -1), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(1, 0), nullVector, nullVector)
+ sprite:Render(entityPos + Vector(-1, 0), nullVector, nullVector)
+ sprite.Color = Color(1, 1, 1, 1, 0, 0, 0)
+ sprite:Render(entityPos, nullVector, nullVector)
elseif EID.Config["Indicator"] == "arrow" then
ArrowSprite:Update()
local ArrowOffset = Vector(0, -35)
diff --git a/metadata.xml b/metadata.xml
index 586913d7..14766f49 100644
--- a/metadata.xml
+++ b/metadata.xml
@@ -86,7 +86,7 @@ https://moddingofisaac.com/mod/1079/external-item-descriptions
- Jake for the sweet [b]German[/b] language pack
- [url=https://steamcommunity.com/id/whytefang/]adc[/url] for creating an awesome new Languagepack and providing ideas for new functionalities
- 3.37
+ 3.38
Public