summaryrefslogtreecommitdiff
path: root/objects/Enemy.lua
diff options
context:
space:
mode:
authorEltrac <hi@guhub.cn>2025-03-11 09:37:23 +0800
committerEltrac <hi@guhub.cn>2025-03-11 09:37:23 +0800
commit89a8e09c0d0958d0dff4eb8ca1f5d7e0eb4a1c6e (patch)
tree3fe9bf27fa3e13828aeb13705c54abf5a68482b2 /objects/Enemy.lua
parent24abb521363788162da14ba7716fce6c9ba551a8 (diff)
feat: add sticky heart
Diffstat (limited to 'objects/Enemy.lua')
-rw-r--r--objects/Enemy.lua15
1 files changed, 15 insertions, 0 deletions
diff --git a/objects/Enemy.lua b/objects/Enemy.lua
index 76371b2..08ce832 100644
--- a/objects/Enemy.lua
+++ b/objects/Enemy.lua
@@ -41,6 +41,17 @@ function Enemy:move(dt)
self.stunned = self.stunned - dt
return false
end
+
+ if self.sticky and self.sticky > 0 then
+ self.sticky = self.sticky - dt
+ if not self.originalSpeed then
+ self.originalSpeed = self.speed
+ end
+ self.speed = self.originalSpeed / (self.sticky + 1)
+ elseif self.originalSpeed then
+ self.speed = self.originalSpeed
+ end
+
if self.movePattern == "vertical" then
self:moveVertical(G.player.x, dt)
else self:moveTo(G.player.x, G.player.y, dt)
@@ -117,4 +128,8 @@ function Enemy:stun(duration)
self.stunned = duration
end
+function Enemy:getSticky(duration)
+ self.sticky = duration
+end
+
return Enemy