summaryrefslogtreecommitdiff
path: root/objects/Enemy.lua
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-02-19 16:00:23 +0800
committerEltrac <hi@guhub.cn>2025-02-19 16:00:23 +0800
commit3522cba95a69497f27f897d253f045a7e7b8ec75 (patch)
treed69ab265d6000a627a76b89d3e9100461c004478 /objects/Enemy.lua
parent959e37dc868ba4a1d58b08e1acf97a18e5dc9b87 (diff)
refactor: organize project structure
- change the way modules are imported, defining module directly in globals - move enemy data and heart data into individual files and /data directory
Diffstat (limited to 'objects/Enemy.lua')
-rw-r--r--objects/Enemy.lua48
1 files changed, 2 insertions, 46 deletions
diff --git a/objects/Enemy.lua b/objects/Enemy.lua
index 03f1f9f..d65d0d9 100644
--- a/objects/Enemy.lua
+++ b/objects/Enemy.lua
@@ -1,55 +1,13 @@
Enemy = {}
Enemy.__index = Enemy
-EnemyData = {
- lancer = {
- size = 12,
- speed = 25,
- appearance = {
- color = { 0, 1, 1 }
- },
- drops = {
- { type = "blueheart", amount = 1, chances = 1 },
- { type = "blueheart", amount = 1, chances = 0.25 }
- },
- },
- gorilla = {
- size = 25,
- speed = 10,
- appearance = {
- color = { 224/255, 122/255, 95/255 }
- }
- ,
- drops = {
- { type = "bigheart", amount = 1, chances = 1 }
- },
- },
- fairy = {
- size = 8,
- speed = 60,
- appearance = {
- color = { 251/255, 243/255, 185/255 }
- }
- ,
- drops = {
- { type = "yellowheart", amount = 2, chances = 1 },
- { type = "shinyheart", amount = 1, chances = 0.2 }
- },
- }
-}
-
-EnemyTypes = {}
-for type, _ in pairs(EnemyData) do
- table.insert(EnemyTypes, type)
-end
-
function Enemy:new(type, room, x, y)
local obj = {
type = type,
x = x or math.random(room:getX(), room:getX() + room:getWidth()),
y = y or math.random(room:getY(), room:getY() + room:getHeight()),
- r = EnemyData[type].size,
- speed = EnemyData[type].speed,
+ r = enemyData[type].size,
+ speed = enemyData[type].speed,
}
setmetatable(obj, Enemy)
@@ -70,5 +28,3 @@ function Enemy:moveTowardPlayer(dt)
self.y = self.y - self.speed*dt
end
end
-
-return Enemy