local SimpleSkillTaskFactory = LuaClass("SimpleSkillTaskFactory") local SimpleSkillTask_Heal = require("Script.SimpleSkill.Task.SimpleSkillTask_Heal") local SimpleSkillTask_Dash = require("Script.SimpleSkill.Task.SimpleSkillTask_Dash") local SimpleSkillTask_Anger = require("Script.SimpleSkill.Task.SimpleSkillTask_Anger") local SimpleSkillTask_ShadowKill = require("Script.SimpleSkill.Task.SimpleSkillTask_ShadowKill") local SimpleSkillTask_Counter = require("Script.SimpleSkill.Task.SimpleSkillTask_Counter") local SimpleSkillTask_ElectricShock = require("Script.SimpleSkill.Task.SimpleSkillTask_ElectricShock") local SimpleSkillTask_DeathStrike = require("Script.SimpleSkill.Task.SimpleSkillTask_DeathStrike") local SimpleSkillTask_Roar = require("Script.SimpleSkill.Task.SimpleSkillTask_Roar") local SimpleSkillTask_LightWave = require("Script.SimpleSkill.Task.SimpleSkillTask_LightWave") local SimpleSkillTask_IceFrost = require("Script.SimpleSkill.Task.SimpleSkillTask_IceFrost") local SimpleSkillTask_Slash = require("Script.SimpleSkill.Task.SimpleSkillTask_Slash") local SimpleSkillTask_Stun = require("Script.SimpleSkill.Task.SimpleSkillTask_Stun") local SimpleSkillTask_Exhaust = require("Script.SimpleSkill.Task.SimpleSkillTask_Exhaust") local SimpleSkillTask_Penetration = require("Script.SimpleSkill.Task.SimpleSkillTask_Penetration") local SimpleSkillTask_StarFall = require("Script.SimpleSkill.Task.SimpleSkillTask_StarFall") local SimpleSkillTask_Ray = require("Script.SimpleSkill.Task.SimpleSkillTask_Ray") local SimpleSkillTask_Crack = require("Script.SimpleSkill.Task.SimpleSkillTask_Crack") local SimpleSkillTask_Weaken = require("Script.SimpleSkill.Task.SimpleSkillTask_Weaken") local SimpleSkillTask_Scabbing = require("Script.SimpleSkill.Task.SimpleSkillTask_Scabbing") local SimpleSkillTask_ToxicRain = require("Script.SimpleSkill.Task.SimpleSkillTask_ToxicRain") local SimpleSkillTask_Puncture = require("Script.SimpleSkill.Task.SimpleSkillTask_Puncture") local SimpleSkillTask_Seal = require("Script.SimpleSkill.Task.SimpleSkillTask_Seal") local SimpleSkillTask_AbsorbSoul = require("Script.SimpleSkill.Task.SimpleSkillTask_AbsorbSoul") local SimpleSkillTask_Tread = require("Script.SimpleSkill.Task.SimpleSkillTask_Tread") local SimpleSkillTask_Stomp = require("Script.SimpleSkill.Task.SimpleSkillTask_Stomp") local SimpleSkillTask_StrongWind = require("Script.SimpleSkill.Task.SimpleSkillTask_StrongWind") local SimpleSkillTask_FireDomain = require("Script.SimpleSkill.Task.SimpleSkillTask_FireDomain") local SimpleSkillTask_Flowing = require("Script.SimpleSkill.Task.SimpleSkillTask_Flowing") local SimpleSkillTask_Tear = require("Script.SimpleSkill.Task.SimpleSkillTask_Tear") local SimpleSkillTask_StickStrike = require("Script.SimpleSkill.Task.SimpleSkillTask_StickStrike") local SimpleSkillTask_Shuttle = require("Script.SimpleSkill.Task.SimpleSkillTask_Shuttle") local SimpleSkillTask_Bombing = require("Script.SimpleSkill.Task.SimpleSkillTask_Bombing") SimpleSkillTaskFactory.TaskList = { [ESkillName.Heal] = SimpleSkillTask_Heal, [ESkillName.Dash] = SimpleSkillTask_Dash, [ESkillName.Anger] = SimpleSkillTask_Anger, [ESkillName.ShadowKill] = SimpleSkillTask_ShadowKill, [ESkillName.Slash] = SimpleSkillTask_Slash, [ESkillName.Stun] = SimpleSkillTask_Stun, [ESkillName.Exhaust] = SimpleSkillTask_Exhaust, [ESkillName.Penetration] = SimpleSkillTask_Penetration, [ESkillName.Counter] = SimpleSkillTask_Counter, [ESkillName.ElectricShock] = SimpleSkillTask_ElectricShock, [ESkillName.StarFall] = SimpleSkillTask_StarFall, [ESkillName.Ray] = SimpleSkillTask_Ray, [ESkillName.Crack] = SimpleSkillTask_Crack, [ESkillName.Weaken] = SimpleSkillTask_Weaken, [ESkillName.Scabbing] = SimpleSkillTask_Scabbing, [ESkillName.DeathStrike] = SimpleSkillTask_DeathStrike, [ESkillName.Roar] = SimpleSkillTask_Roar, [ESkillName.LightWave] = SimpleSkillTask_LightWave, [ESkillName.IceFrost] = SimpleSkillTask_IceFrost, [ESkillName.ToxicRain] = SimpleSkillTask_ToxicRain, [ESkillName.Puncture] = SimpleSkillTask_Puncture, [ESkillName.Seal] = SimpleSkillTask_Seal, [ESkillName.AbsorbSoul] = SimpleSkillTask_AbsorbSoul, [ESkillName.Tread] = SimpleSkillTask_Tread, [ESkillName.Stomp] = SimpleSkillTask_Stomp, [ESkillName.StrongWind] = SimpleSkillTask_StrongWind, [ESkillName.FireDomain] = SimpleSkillTask_FireDomain, [ESkillName.Flowing] = SimpleSkillTask_Flowing, [ESkillName.Tear] = SimpleSkillTask_Tear, [ESkillName.StickStrike] = SimpleSkillTask_StickStrike, [ESkillName.Shuttle] = SimpleSkillTask_Shuttle, [ESkillName.Bombing] = SimpleSkillTask_Bombing, } ---@param SkillName ESkillName ---@return SkillTask function SimpleSkillTaskFactory.GetTaskBySkillName(SkillName) return SimpleSkillTaskFactory.TaskList[SkillName] end return SimpleSkillTaskFactory;