From aa3d4e377fddf077e2b8cc77f17c1eefd5f97b5e Mon Sep 17 00:00:00 2001 From: Eltrac Date: Thu, 13 Mar 2025 10:55:24 +0800 Subject: refactor: remove body:draw method --- render/draws/objects.lua | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'render/draws/objects.lua') diff --git a/render/draws/objects.lua b/render/draws/objects.lua index eb474a4..aa948d6 100644 --- a/render/draws/objects.lua +++ b/render/draws/objects.lua @@ -1,4 +1,5 @@ local enemyData = require "data.enemyData" +local graphics = require "utils.graphics" require "data.directions" local draws = {} @@ -19,14 +20,17 @@ function draws.player() index = moving[G.player.facing][cf] end - G.player.body:drawQuad("apple", index, G.player.x, G.player.y) - utils.resetGraphics() + local r = G.player.body.r + local graphicR = r * G.player.body.zoom + local x, y = G.player.x - r, G.player.y - r + sprite.drawQuad("apple", index, x, y, graphicR, graphicR, 0) + graphics.reset() end function draws.bullets() for k, bullet in pairs(G.currentRoom.objects.shots) do local x, y, angle = bullet.x, bullet.y, bullet.orientation - bullet.body:drawSprite(bullet.type, x, y, angle, config.bulletSize) + sprite.draw(bullet.type, x, y, angle, config.bulletSize, config.bulletSize) end end @@ -35,11 +39,7 @@ function draws.enemies() local data = enemyData[enemy.type] if data.sprite then -- show enemy size - if config.debug then - love.graphics.setColor({0.5,0.5,0.5}) - enemy.body:draw(enemy.x, enemy.y) - utils.resetGraphics() - end + -- add filter to indicate enemy status if enemy.stunned then @@ -50,13 +50,13 @@ function draws.enemies() -- draw sprite local index = data.sprite.frames[enemy:facing()][enemy.frameTimer.currentFrame] - enemy.body:drawQuad(data.sprite.name, index, enemy.x, enemy.y, nil, data.sprite.zoom) - utils.resetGraphics() - elseif data.appearance.color then - love.graphics.setColor(data.appearance.color or {1,1,1}) - enemy.body:draw(enemy.x, enemy.y) + local r = enemy.body.r + local graphicR = r * enemy.body.zoom + local x, y = enemy.x - r, enemy.y - r + sprite.drawQuad(data.sprite.name, index, x, y, graphicR, graphicR, 0) + graphics.reset() end - utils.resetGraphics() + graphics.reset() end end @@ -70,8 +70,8 @@ function draws.obstacles() for _, obstacle in ipairs(G.currentRoom.objects.obstacles) do if obstacle ~= nil then love.graphics.setColor(0.85,0.85,0.85) - obstacle.body:draw(obstacle.x, obstacle.y) - utils.resetGraphics() + graphics.drawRect(obstacle) + graphics.reset() end end end -- cgit v1.2.3