示例#1
0
    void Awake()
    {
        if (instance_ == null)
        {
            instance_ = this;
        }
        else if (instance_ != this)
        {
            Destroy(gameObject);
        }

        if (PlayerPrefs.GetString("PlayerClass") == "")
        {
            class_ = classes_[Random.Range(0, classes_.Length)];
            SkillsManager.instance_.playerClass_ = class_;
            PlayerPrefs.SetString("PlayerClass", class_.name_);
        }
        else
        {
            string pclass = PlayerPrefs.GetString("PlayerClass");
            foreach (DestroyableEntity classname in classes_)
            {
                if (classname.name_ == pclass)
                {
                    class_ = classname;
                    SkillsManager.instance_.playerClass_ = class_;
                }
                ;
            }
        }
    }
示例#2
0
    public void AddXP(DestroyableEntity enemy)
    {
        // Just add XP based on the stats of the destroyed enemy, since they don't level up etc.
        float xpToAdd = (float)(enemy.health_ * 0.5) + (enemy.dodge_) + (enemy.attackRating_) + (enemy.criticalChance_) + (float)(enemy.damage_ * 0.5f) + (float)(enemy.armor_ * 0.5f) + (float)(enemy.armorPiercing_ * 0.5f) + (enemy.speed_);

        playerXP_ += (int)xpToAdd;
        LevelUp();
        MainUIManager.instance_.UpdateXP();
    }
示例#3
0
    public void UpdateStats(bool updateHealthAndEnergy = false)
    {
        int currentLevel = 1;

        if (playerController_ != null)
        {
            currentLevel = PlayerManager.currentPlayerLevel_;
            reference_   = PlayerManager.instance_.class_;
        }
        if (updateHealthAndEnergy)
        {
            health_ = reference_.Health(currentLevel);
            energy_ = reference_.Energy(currentLevel);
        }
        ;

        dodge_          = reference_.Dodge(currentLevel);
        attackRating_   = reference_.AttackRating(currentLevel);
        criticalChance_ = reference_.CriticalChance(currentLevel);
        damage_         = reference_.Damage(currentLevel);
        armor_          = reference_.Armor(currentLevel);
        armorPiercing_  = reference_.AP(currentLevel);
        speed_          = reference_.Speed(currentLevel);
    }
示例#4
0
 public void SetPlayerClass(DestroyableEntity playerclass)
 {
     class_ = playerclass;
 }