using System.Collections.Generic; using UnityEngine; // ReSharper disable once CheckNamespace namespace BlueWaterProject { public class SkillManager : Singleton { [SerializeField] private List skillPrefab = new(); private List skillList; protected override void OnAwake() { var skillNum = skillPrefab.Count; skillList = new List(skillNum); for (var i = 0; i < skillNum; i++) { var skill = skillPrefab[i].GetComponent(); AddSkill(skill); } } public void AddSkill(SkillBase skill) { if (!skillList.Contains(skill)) { skillList.Add(skill); } } public SkillBase FindSkill(string skillName) { return skillList.Find(s => s.skillName == skillName); } public SkillBase InstantiateSkill(string skillName) { var skill = FindSkill(skillName); return skill ? Instantiate(skill.gameObject, Vector3.zero, Quaternion.identity).GetComponent() : null; } // public void ActivateSkill(ISkillUser user, int skillIndex, SkillInputData inputData) // { // if (skillIndex >= 0 && skillIndex < skillList.Count) // { // user.ActivateSkill(skillList[skillIndex], inputData); // } // } } }