private GameObject instance_InstantiateAbility(e_AbilityType _ability, Organism _org) // var Context ? { List <GameObject> correspondingPrefabs = (from prefab in this.abilityPrefabs where prefab.GetComponent <Ability>().Type == _ability select prefab).ToList(); if (correspondingPrefabs.Count < 1) { Debug.LogError("Ability Type : \"" + _ability.ToString() + "\" not found in TheSkillManager.\n" + "Please ensure present is referenced in the List"); return(null); } GameObject abilityPrefab = correspondingPrefabs[0]; GameObject abilityCreated = Instantiate(abilityPrefab, this.transform); abilityCreated.GetComponent <Skill>().Init(_org); return(abilityCreated); }
// -------------------------------- // Singleton static functions public static GameObject InstantiateAbility(e_AbilityType _ability, Organism _org) { return(Instance.instance_InstantiateAbility(_ability, _org)); }