private void PopulateSpellLists() { List<SingleTarget> SingleTargetSpells = new List<SingleTarget>(); List<AoE> AOESpells = new List<AoE>(); SingleTargetSpells.AddRange(GetSpellFromXML.Instance.SingleTargetSpellList()); AOESpells.AddRange(GetSpellFromXML.Instance.AOESpellList()); List<SingleTarget> ElementSingleTarget = new List<SingleTarget>(); List<AoE> ElementAOESpells = new List<AoE>(); string sElement = "arcane"; string outString = string.Empty; for (int i = 0; i < 4; i++) { foreach (SingleTarget ability in SingleTargetSpells) { if (sElement.Equals(ability.m_DamageType.ToString())) { ElementSingleTarget.Add(ability); } } foreach (AoE ability in AOESpells) { if (sElement.Equals(ability.m_DamageType.ToString())) { ElementAOESpells.Add(ability); } } AbilityLists abilityLists = new AbilityLists(ElementSingleTarget, ElementAOESpells); switch (i) { case 0: m_ArcaneSpells = abilityLists; sElement = "earth"; break; case 1: m_EarthSpells = abilityLists; sElement = "water"; break; case 2: m_WaterSpells = abilityLists; sElement = "fire"; break; case 3: m_FireSpells = abilityLists; break; } ElementSingleTarget = new List<SingleTarget>(); ElementAOESpells = new List<AoE>(); } }
// Unity /// <summary> /// Finds and sets all the components used in this script /// </summary> private void Awake() { gameManager = GameObject.Find("GameManager"); resourceManager = gameManager.GetComponent <ResourceManager>(); abilityLists = gameManager.GetComponentInChildren <AbilityLists>(); itemList = gameManager.GetComponentInChildren <ItemsList>(); timeBehaviour = gameManager.GetComponent <TimeBehaviour>(); audioSource = GetComponent <AudioSource>(); characterCollider = GetComponent <CapsuleCollider2D>(); characterAnimator = GetComponent <Animator>(); characterRB = GetComponent <Rigidbody2D>(); stats = GetComponent <Stats>(); }