pleins de trucs
This commit is contained in:
38
scripts/battle/waves/movingarena.lua
Normal file
38
scripts/battle/waves/movingarena.lua
Normal file
@@ -0,0 +1,38 @@
|
||||
local MovingArena, super = Class(Wave)
|
||||
|
||||
function MovingArena:init()
|
||||
super.init(self)
|
||||
|
||||
-- Initialize timer
|
||||
self.siner = 0
|
||||
end
|
||||
|
||||
function MovingArena:onStart()
|
||||
-- Get the arena object
|
||||
local arena = Game.battle.arena
|
||||
|
||||
-- Spawn spikes on top of arena
|
||||
self:spawnBulletTo(Game.battle.arena, "arenahazard", arena.width / 2, 0, math.rad(0))
|
||||
|
||||
-- Spawn spikes on bottom of arena (rotated 180 degrees)
|
||||
self:spawnBulletTo(Game.battle.arena, "arenahazard", arena.width / 2, arena.height, math.rad(180))
|
||||
|
||||
-- Store starting arena position
|
||||
self.arena_start_x = arena.x
|
||||
self.arena_start_y = arena.y
|
||||
end
|
||||
|
||||
function MovingArena:update()
|
||||
-- Increment timer for arena movement
|
||||
self.siner = self.siner + DT
|
||||
|
||||
-- Calculate the arena Y offset
|
||||
local offset = math.sin(self.siner * 1.5) * 60
|
||||
|
||||
-- Move the arena
|
||||
Game.battle.arena:setPosition(self.arena_start_x, self.arena_start_y + offset)
|
||||
|
||||
super.update(self)
|
||||
end
|
||||
|
||||
return MovingArena
|
||||
Reference in New Issue
Block a user