diff options
Diffstat (limited to 'GameCode/AutoRevive.cs')
| -rw-r--r-- | GameCode/AutoRevive.cs | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/GameCode/AutoRevive.cs b/GameCode/AutoRevive.cs deleted file mode 100644 index 63c2d75..0000000 --- a/GameCode/AutoRevive.cs +++ /dev/null @@ -1,91 +0,0 @@ -using UnityEngine; -using UnityEngine.Events; - -[RequireComponent(typeof(Hp))] -public class AutoRevive : MonoBehaviour, DayNightCycle.IDaytimeSensitive -{ - [HideInInspector] - public UnityEvent onReviveTrigger = new UnityEvent(); - - private Hp hp; - - public float reviveAfterBeingKnockedOutFor = 20f; - - private float hasBeenKnockedOutFor; - - private bool ringOfResurection; - - private bool quickReviveAvailable = true; - - private bool godOfDeathActive; - - [SerializeField] - private Equippable ringOfResurectionPerk; - - private float ReviveAfterBeingKnockedOutFor - { - get - { - if (ringOfResurection && quickReviveAvailable) - { - return 2f; - } - return reviveAfterBeingKnockedOutFor; - } - } - - public float TimeTillRevive - { - get - { - if (hasBeenKnockedOutFor <= 0f) - { - return -1f; - } - return ReviveAfterBeingKnockedOutFor - hasBeenKnockedOutFor; - } - } - - public void OnDusk() - { - } - - public void OnDawn_AfterSunrise() - { - quickReviveAvailable = true; - } - - public void OnDawn_BeforeSunrise() - { - } - - private void Start() - { - godOfDeathActive = PerkManager.instance.GodOfDeathActive; - if (godOfDeathActive) - { - reviveAfterBeingKnockedOutFor *= PerkManager.instance.godOfDeath_playerRespawnMultiplyer; - } - hp = GetComponent<Hp>(); - ringOfResurection = PerkManager.IsEquipped(ringOfResurectionPerk); - DayNightCycle.Instance.RegisterDaytimeSensitiveObject(this); - } - - private void Update() - { - if (hp.KnockedOut) - { - hasBeenKnockedOutFor += Time.deltaTime; - if (hasBeenKnockedOutFor >= ReviveAfterBeingKnockedOutFor) - { - hp.Revive(); - onReviveTrigger.Invoke(); - quickReviveAvailable = false; - } - } - else - { - hasBeenKnockedOutFor = 0f; - } - } -} |
