void GetNextSkill() { if (available_skills.Length == 0 || sum_of_weights == 0) { return; } int rng = Random.Range(0, sum_of_weights); for (int i = 0; i < available_skills.Length; i++) { rng -= available_skills[i].weight; if (rng < 0) { next_skill = EnemySkill.GetSkill(available_skills[i].skill); break; } } if (next_skill == null) { next_skill = EnemySkill.GetSkill(available_skills[available_skills.Length - 1].skill); } if (!next_skill.CanUse(this)) { next_skill = new Tantrum(); } skill_image.sprite = _skill_img.Get(next_skill.type); _m.SetHelpText(placement, _skill_img.Desc(next_skill.type)); }