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_; } ; } } }
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(); }
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); }
public void SetPlayerClass(DestroyableEntity playerclass) { class_ = playerclass; }