local FighterControllerParent = require "scenes.battlesystem.controllers.parent" local EnnemyController = FighterControllerParent:extend() local Villain = require "scenes.battlesystem.controllers.fighters.villain" local battleutils = require "game.utils.battle" function EnnemyController:new(owner, battleData) self.super.new(self, owner) self:initVillains(battleData) end function EnnemyController:initVillains(battleData) for i,ennemyBaseData in ipairs(battleData.ennemies) do local ennData = battleutils.getEnnemyData(ennemyBaseData) if (ennData.type == "normal") then self:addVillain(ennData) elseif (ennData.type == "boss") then self:addBoss(ennData) else print("unknown type " .. ennData.type) end end end function EnnemyController:addVillain(ennData) for i=1, ennData.number do self:add(Villain(self, ennData.category, ennData.name, self:count() + 1)) end end function EnnemyController:addBoss(ennData) local boss = Villain(self, ennData.category, ennData.name, self:count() + 1) boss:setBonus(ennData.pvFactor, ennData.statFactor) boss.isBoss = true boss:setCheapEffect(ennData.cheapEffect) self:add(boss) end return EnnemyController