public void ActivateSkill(Skill skill) { Skill usingSkill = SkillEvents.SkillUsed(new Skill(skill)); if (player.CurrentMana >= usingSkill.skillMana) { player.AddMana(-usingSkill.skillMana); StatusBar.Instance.ManaBarFlash(); switch (usingSkill.skillType) { case Skill.SkillType.Active: { PlayerActivesController.Instance.AddActive(usingSkill); break; } case Skill.SkillType.Utility: { SkillPassiveEffects.ApplySkillEffect(skill.skillID); break; } case Skill.SkillType.Magical: { if (skill.skillStyle == Skill.SkillStyle.Projectile) { CastSkillProjectile(usingSkill); } break; } } } }
public bool RankUpSkill(Skill skill) { if (player.SkillPoints > 0) { player.SkillPoints -= 1; skill.skillRank += 1; SkillPassiveEffects.ApplyRankUpBonus(skill.skillID); return(true); } else { SoundDatabase.PlaySound(33); EventNotifier.Instance.MakeEventNotifier("Not enough skill points!"); return(false); } }