sonic-radiance/sonic-radiance.love/scenes/battlesystem/controllers/fighters/systems/actions/parent.lua

57 lines
1.1 KiB
Lua

local ActionParent = Object:extend()
local ChoregraphySystem = require "scenes.battlesystem.controllers.fighters.systems.choregraphy"
function ActionParent:new(fighter)
self.fighter = fighter
self.target = nil
self.choregraphy = nil
self.isStarted = false
end
function ActionParent:update(dt)
if (self.choregraphy ~= nil) then
self.choregraphy:update(dt)
end
end
function ActionParent:loadChoregraphy(skillname)
local skill = game.skills:getSkillData(skillname)
self.choregraphy = ChoregraphySystem(self, skill.choregraphy)
end
function ActionParent:loadChoregraphyFromSkill(skill)
self.choregraphy = ChoregraphySystem(self, skill.choregraphy)
end
function ActionParent:needTarget()
-- needTarget, targetEnnemies
return false, false
end
function ActionParent:setTarget(target)
self.target = target
end
function ActionParent:start()
self.isStarted = true
self:startAction()
end
function ActionParent:choregraphyEnded()
self.choregraphy = nil
self:finishAction()
end
function ActionParent:startAction()
self:finishAction()
end
function ActionParent:finishAction()
self.fighter:finishAction()
end
return ActionParent