diff options
| author | Eltrac <hi@guhub.cn> | 2025-02-28 09:13:02 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-02-28 09:13:02 +0800 |
| commit | 4b5b67470f1ac7d4e1edcac5e5ed9ed8b45eb04a (patch) | |
| tree | c91dadccad19a340a63535961f88aee4cf5570e5 /render | |
| parent | 6b293e32187292b0ac70e8ac87fba03daaf6ed32 (diff) | |
refactor: manage sprite resources only in sprite module
Diffstat (limited to 'render')
| -rw-r--r-- | render/sprite.lua | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/render/sprite.lua b/render/sprite.lua index f8aedd6..b15b5bc 100644 --- a/render/sprite.lua +++ b/render/sprite.lua @@ -1,15 +1,28 @@ sprite = {} +-- sprite resource management + +local sprites = {} +local quads = {} + local spriteTypes = heartTypes local spriteSheets = { { name = "apple", w = 32, h = 32 }, { name = "lancer", w = 32, h = 32 }, } -function sprite.load() - sprites = {} - quads = {} +function sprite.get(type) + return sprites[type] +end +function sprite.getQuad(type, index) + if index then + return quads[type][index] + else return quads[type] + end +end + +function sprite.load() love.graphics.setDefaultFilter("nearest", "nearest") -- load single-image sprite @@ -43,6 +56,8 @@ function sprite.load() end end +-- sprite drawer + function sprite.draw(type, x, y, angle, width, height) local sprite = sprites[type] love.graphics.draw(sprite, x, y, angle, |
