public void ResetPlayer()
 {
     level = 1;
     experienceForLevelUp = 100;
     playerStats.attack.Reset();
     playerStats.attackSpeed.Reset();
     playerStats.updateAttackSpeed();
     playerStats.healtPoints.Reset();
     playerStats.updateHealth();
     playerStats.movementSpeed.Reset();
     playerStats.updateMovementSpeed();
     reborn();
 }
    void activateSkill(Skills skill)
    {
        skill_select_canvas.SetActive(false);
        switch (skill)
        {
        case Skills.ProjectileFront:
            player_attack.shootDoubleFront = true;
            skills_remaining.Remove(Skills.ProjectileFront);
            break;

        case Skills.ProjectileDiagonal:
            player_attack.shootDiagonal = true;
            skills_remaining.Remove(Skills.ProjectileDiagonal);
            break;

        case Skills.ProjectileBack:
            player_attack.shootBack = true;
            skills_remaining.Remove(Skills.ProjectileBack);
            break;

        case Skills.SpecialSplashDamage:
            player_attack.splashDamage = true;
            skills_remaining.Remove(Skills.SpecialSplashDamage);
            break;

        case Skills.SpecialBigProjectiles:
            player_attack.bigBullet = true;
            skills_remaining.Remove(Skills.SpecialBigProjectiles);
            break;

        case Skills.EffectPoison:
            skills_remaining.Remove(Skills.EffectPoison);
            player_attack.statusEffekt[(int)Status_effects.EffectName.Poison] = true;
            player_attack.effectDamage[(int)Status_effects.EffectName.Poison] = player_stats.attack.GetValue();
            break;

        case Skills.EffectFire:
            player_attack.statusEffekt[(int)Status_effects.EffectName.Fire] = true;
            player_attack.effectDamage[(int)Status_effects.EffectName.Fire] = player_stats.attack.GetValue();
            skills_remaining.Remove(Skills.EffectFire);
            break;

        case Skills.EffectIce:
            player_attack.statusEffekt[(int)Status_effects.EffectName.Ice] = true;
            player_attack.effectDamage[(int)Status_effects.EffectName.Ice] = 0;
            skills_remaining.Remove(Skills.EffectIce);
            break;

        case Skills.StatAttack:
            player_stats.attack.AddModifier(incStatAttack);
            break;

        case Skills.StatAttackSpeed:
            player_stats.attackSpeed.AddModifier(incStatAttackSpeed);
            player_stats.updateAttackSpeed();
            break;

        case Skills.StatHP:
            player_stats.healtPoints.AddModifier(incStatHP);
            player_stats.updateHealth();
            player_stats.GainHealth((int)incStatHP);
            break;

        case Skills.StatMovementspeed:
            player_stats.movementSpeed.AddModifier(incStatMovementspeed);
            player_stats.updateMovementSpeed();
            break;

        default:
            Debug.Log("skill not found: " + skill);
            break;
        }
        if (skill_ctr > 0)
        {
            skill_ctr -= 1;
            SelectSkill();
        }
    }