using UnityEngine; public class PlayerUpgradeManager : MonoBehaviour, DayNightCycle.IDaytimeSensitive { public static PlayerUpgradeManager instance; public float playerDamageMultiplyer = 1f; public bool assassinsTraining; public bool godlyCurse; public bool magicArmor; public bool commander; public float godlyCurseDamageMultiplyer = 1.5f; private int damageIncreases; [SerializeField] private Equippable glassCanon; [SerializeField] private float glassCanon_dmgMulti = 1.5f; private void Awake() { instance = this; } private void Start() { if ((bool)DayNightCycle.Instance) { DayNightCycle.Instance.RegisterDaytimeSensitiveObject(this); } if (PerkManager.instance.CommanderModeActive) { playerDamageMultiplyer *= PerkManager.instance.commanderModeSelfDmgMulti; } if (PerkManager.instance.GlassCanonActive) { playerDamageMultiplyer *= PerkManager.instance.glassCanon_dmgMulti; } } public void OnDusk() { GetStrongerIfInWarriorMode(); } public void OnDawn_AfterSunrise() { } public void OnDawn_BeforeSunrise() { GetStrongerIfInWarriorMode(); } public void GetStrongerIfInWarriorMode() { while (PerkManager.instance.WarriorModeActive && damageIncreases < EnemySpawner.instance.Wavenumber) { damageIncreases++; playerDamageMultiplyer *= Mathf.Pow(PerkManager.instance.warriorModeSelfDmgMultiMax, 1f / (float)EnemySpawner.instance.WaveCount); } } }