diff options
| author | Eltrac <hi@guhub.cn> | 2025-03-13 20:55:59 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-03-13 20:55:59 +0800 |
| commit | c60db6bc43b2f2a81cc8f1086f1d70d5ce93508b (patch) | |
| tree | bccc2973da4d7f0049f163b132222bb45778ed88 /render/draws/objects.lua | |
| parent | ef200e9aaeff9d2a8194df3561ee3cf6996ea571 (diff) | |
feat(sprite): stun and sticky effects are demonstrated with an sprite
Diffstat (limited to 'render/draws/objects.lua')
| -rw-r--r-- | render/draws/objects.lua | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/render/draws/objects.lua b/render/draws/objects.lua index 1e1ed46..0c95a0e 100644 --- a/render/draws/objects.lua +++ b/render/draws/objects.lua @@ -97,13 +97,6 @@ function draws.enemies() for _, enemy in pairs(G.currentRoom.objects.enemies) do local data = enemyData[enemy.type] if data.sprite then - -- add filter to indicate enemy status - if enemy.stunned then - love.graphics.setColor({1,0.7,0.5}) - elseif enemy.sticky then - love.graphics.setColor({0.5,0.5,0.5}) - end - -- handle quad index local index = data.sprite.frames[enemy:facing()][enemy.frameTimer.currentFrame] if enemy.type == "pokob" then @@ -118,11 +111,21 @@ function draws.enemies() end end - -- draw sprite + -- arguments local r = enemy.r local graphicR = r * enemy.zoom local x, y = enemy.x - r, enemy.y - r + + -- draw sprite sprite.drawQuad(data.sprite.name, index, x, y, graphicR, graphicR, 0) + + -- draw effects + if enemy.sticky then + sprite.draw("spiderweb", x, y, 0, r*2, r*2) + elseif enemy.stunned then + sprite.draw("stunningstars", x, y, 0, r*2, r*2) + end + graphics.reset() end graphics.reset() |
