diff options
| author | Eltrac <hi@guhub.cn> | 2025-03-04 12:09:06 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-03-04 12:09:06 +0800 |
| commit | 27684077b587edc1c61e57ffd5740409e87f9c01 (patch) | |
| tree | c4fb5f8738ffc38144ae54fa05aa52cc05946197 /main.lua | |
| parent | e7b8b3c3113cbdb652a27dce888e6b5a1c97f9a4 (diff) | |
refactor: calling renderer
Diffstat (limited to 'main.lua')
| -rw-r--r-- | main.lua | 51 |
1 files changed, 32 insertions, 19 deletions
@@ -1,43 +1,56 @@ require "config" -require "render.sprite" - require "logic.bullets" require "logic.player" require "logic.enemies" require "logic.loot" require "logic.map" -require "utils.renderer" require "utils.utils" -function love.load() - love.window.setIcon(love.image.newImageData("resources/sprites/redheart.png")) - love.window.setTitle("Heart Hunter") +require "render.sprite" +local Renderer = require "render.renderer" - sprite.load() +-- initializers - renderer = Renderer:new() +local function initRenderer() + RenderManager = Renderer:new() local drawObject = require "render.draws.objects" local drawUI = require "render.draws.ui" local drawBackground = require "render.draws.background" - renderer:add("background", nil, drawBackground.room) - renderer:add("background", nil, drawBackground.doors) - renderer:add("background", nil, drawBackground.obstacles) - renderer:add("objects", nil, drawObject.loot) - renderer:add("objects", nil, drawObject.player) - renderer:add("objects", nil, drawObject.enemies) - renderer:add("objects", nil, drawObject.bullets) - renderer:add("ui", nil, drawUI.ammoBar) - renderer:add("ui", nil, drawUI.roomClearedCounter) - math.randomseed(os.time()) + local renderees = { + {"background", drawBackground.room}, + {"background", drawBackground.doors}, + {"background", drawBackground.obstacles}, + {"objects", drawObject.loot}, + {"objects", drawObject.player}, + {"objects", drawObject.enemies}, + {"objects", drawObject.bullets}, + {"ui", drawUI.ammoBar}, + {"ui", drawUI.roomClearedCounter} + } + for _, renderee in ipairs(renderees) do + RenderManager:add(renderee[1], nil, renderee[2]) + end +end + +-- entry functions + +function love.load() + love.window.setIcon(love.image.newImageData("resources/sprites/redheart.png")) + love.window.setTitle("Heart Hunter") + + sprite.load() + initRenderer() + + math.randomseed(os.time()) initGame() end function love.draw() - renderer:draw() + RenderManager:draw() end local controller = require "logic.controller" |
