コード例 #1
0
 private void UnlockSkill(Skilltype skilltype)
 {
     if (!IsSkillUnlocked(skilltype))
     {
         unlockedSkillTypeList.Add(skilltype);
         OnSkillUnlocked?.Invoke(this, new OnSkillUnlockedEventArgs {
             skillType = skilltype
         });
         Debug.Log("Unlocked skill " + skilltype);
     }
 }
コード例 #2
0
 public bool TryUnlockSKill(Skilltype skilltype)
 {
     if (CanUnlock(skilltype))
     {
         UnlockSkill(skilltype);
         return(true);
     }
     else
     {
         return(false);
     }
 }
コード例 #3
0
    public Skilltype GetSkillRequirement(Skilltype skilltype)
    {
        switch (skilltype)
        {
        case Skilltype.HealthRegen:  return(Skilltype.PotionConsuming);

        case Skilltype.ManaRegen:    return(Skilltype.PotionConsuming);

        case Skilltype.Dash:         return(Skilltype.MoveSpeed);
        }
        return(Skilltype.None);
    }
コード例 #4
0
    public bool CanUnlock(Skilltype skilltype)
    {
        Skilltype skillRequirement = GetSkillRequirement(skilltype);

        if (skillRequirement != Skilltype.None)
        {
            if (IsSkillUnlocked(skillRequirement))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        else
        {
            return(true);
        }
    }
コード例 #5
0
 public bool IsSkillUnlocked(Skilltype skilltype)
 {
     return(unlockedSkillTypeList.Contains(skilltype));
 }