public void RemoveASkill(int skillID) { if (SkillDeck.Count == 0) { SkillDeck = SkillDiscardPile; SkillDiscardPile = new List <int>(); } int r = SkillDeck.Count.Random(); SkillHashes.Insert(0, SkillDeck[r]); SkillDeck.RemoveAt(r); SkillDiscardPile.Add(SkillHashes[skillID + 1]); SkillHashes.RemoveAt(skillID + 1); ssAnimEvent?.Invoke(ssAnimDuration); //Debug.Log("skill: " + SkillDiscardPile[SkillDiscardPile.Count - 1] + " was removed"); }
public void ShiftASkill() { if (SkillDeck.Count == 0) { SkillDeck = SkillDiscardPile; SkillDiscardPile = new List <int>(); } int r = SkillDeck.Count.Random(); SkillHashes.Insert(0, SkillDeck[r]); ssAnimEvent?.Invoke(ssAnimDuration); SkillDeck.RemoveAt(r); if (SkillHashes.Count <= defaultSkillCount) { return; } SkillDiscardPile.Add(SkillHashes[defaultSkillCount]); SkillHashes.RemoveAt(defaultSkillCount); //Debug.Log("skill: " + SkillDiscardPile[SkillDiscardPile.Count - 1] + " was shifted"); }
public void AddASkillToMind(int insertID, int skillHash) { SkillHashes.Insert(insertID, skillHash); SkillHashes.RemoveAt(defaultSkillCount); }