protected virtual void Start() { int lvl = GameplayController.Instance.currentWorldLevel; //calculating stats acording to the template double attackDamage = enemyStatsTempalte.startingAttackDamage + lvl * enemyStatsTempalte.attackDamageAddedOnPromotion; double attackSpeed = enemyStatsTempalte.startingAttackSpeed + lvl * enemyStatsTempalte.attackSpeedAddedOnPromotion; double health = enemyStatsTempalte.startingMaxHealth + lvl * enemyStatsTempalte.healthAddedOnPromotion; double speed = enemyStatsTempalte.startingSpeed + lvl * enemyStatsTempalte.speedAddedOnPromotion; double attackRange = enemyStatsTempalte.startingAttackRange + lvl * enemyStatsTempalte.attackRangeAddedOnPromotion; double sightRange = enemyStatsTempalte.startingSightRange + lvl * enemyStatsTempalte.sightRangeAddedOnPromotion; double maximumHealth = enemyStatsTempalte.startingMaxHealth + lvl * enemyStatsTempalte.healthAddedOnPromotion; //setting them stats.AddStat(new Statistic(Stat.AttackDamage, attackDamage)); stats.AddStat(new Statistic(Stat.AttackSpeed, attackSpeed)); stats.AddStat(new Statistic(Stat.Health, health)); stats.AddStat(new Statistic(Stat.Speed, speed)); stats.AddStat(new Statistic(Stat.AttackRange, attackRange)); stats.AddStat(new Statistic(Stat.SightRange, sightRange)); stats.AddStat(new Statistic(Stat.MaximumHealth, maximumHealth)); stats.AddStat(new Statistic(Stat.Lvl, lvl)); }
private void Awake() { ; stats = gameObject.AddComponent <StatBlock>(); stats.AddStat(new Statistic(Stat.HealthRegeneration, 0)); stats.AddStat(new Statistic(Stat.StaminaRegeneration, 0)); stats.AddStat(new Statistic(Stat.Stamina, 0)); stats.AddStat(new Statistic(Stat.MaximumStamina, 0)); stats.AddStat(new Statistic(Stat.Speed, 0)); stats.AddStat(new Statistic(Stat.Health, 0)); stats.AddStat(new Statistic(Stat.MaximumHealth, 0)); stats.AddStat(new Statistic(Stat.AttackDamage, 0)); stats.AddStat(new Statistic(Stat.AttackSpeed, 0)); stats.AddStat(new Statistic(Stat.Experimence, 0)); stats.AddStat(new Statistic(Stat.Lvl, 0)); stats.AddStat(new Statistic(Stat.RequiredExperimence, 0)); stats.AddStat(new Statistic(Stat.Gold, 0)); EventManager.Instance.AddListener <OnGameLoaded>(LoadPlayerDataFromSave); EventManager.Instance.AddListener <OnGameSaved>(SavePlayerStatsData); EventManager.Instance.AddListener <OnPauseStart>(StartPause); EventManager.Instance.AddListener <OnPauseEnd>(EndPause); EventManager.Instance.AddListener <OnNewGame>(PlayerNewGame); }