Exemple #1
0
 private void TriggerStatChange()
 {
     if (OnPlayerStatChange != null)
     {
         OnPlayerStatChange.Invoke();
     }
 }
Exemple #2
0
 private void LevelUp()
 {
     //TODO display level
     //upgrade stats
     //Calculate next value better
     playerLevel++;
     exp           = 0;
     maxHealth     = (int)(maxHealth * 1.1f);
     health        = maxHealth;
     expForNextLvl = (int)(expForNextLvl * 1.25);
     levelPS.Play();
     UIUpdater.instance.displayLevelUp = true;
     OnPlayerStatChange.Invoke();
     OnLevelIncrease.Invoke(playerLevel);
 }
Exemple #3
0
    public override void TakeDamage(int damage, Vector2 attackerPos, float knockBack, bool isCrit)
    {
        if (!PlayerController2D.instance.isDashing)
        {
            if (health <= 0)
            {
                //Kill the player / game over state
                PlayerController2D.instance.dead = true;
            }

            //Reduce damage by defence
            damage = (int)(damage - ArmorSwitcher.instance.totalArmor);
            if (damage < 0)
            {
                damage = 0;
            }
            health -= damage;
            OnPlayerStatChange.Invoke();
            animator.SetTrigger("isHit");
            CameraShake.instance.ShakeCamera();
        }
    }