diff options
| author | Eltrac <hi@guhub.cn> | 2025-03-11 09:37:23 +0800 |
|---|---|---|
| committer | Eltrac <hi@guhub.cn> | 2025-03-11 09:37:23 +0800 |
| commit | 89a8e09c0d0958d0dff4eb8ca1f5d7e0eb4a1c6e (patch) | |
| tree | 3fe9bf27fa3e13828aeb13705c54abf5a68482b2 /objects/Enemy.lua | |
| parent | 24abb521363788162da14ba7716fce6c9ba551a8 (diff) | |
feat: add sticky heart
Diffstat (limited to 'objects/Enemy.lua')
| -rw-r--r-- | objects/Enemy.lua | 15 |
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 |
