diff --git a/ArchipelagoRandomizer/DeathManager.cs b/ArchipelagoRandomizer/DeathManager.cs index d3f8a7f..a26fac8 100644 --- a/ArchipelagoRandomizer/DeathManager.cs +++ b/ArchipelagoRandomizer/DeathManager.cs @@ -13,7 +13,6 @@ internal class DeathManager : MonoBehaviour private DeathLinkService deathLinkService; private DamageablePlayer damageable; - private UIMenuPauseController pauseController; private readonly List deathMessages = [ "{name}'s last feather has fallen...", @@ -91,6 +90,11 @@ private void OnDeathReceived(DeathLink deathLink) private IEnumerator DoDeathReceived(DeathLink deathLink) { Logger.Log("Received death! You will die when next possible..."); + while (!PlayerGlobal.instance) + { + // if Player doesn't exist yet + yield return null; + } PlayerGlobal player = PlayerGlobal.instance; preventDeath = true; @@ -99,11 +103,6 @@ private IEnumerator DoDeathReceived(DeathLink deathLink) damageable = player.GetComponent(); } - if (pauseController == null) - { - pauseController = FindObjectOfType(); - } - while (!CanDie()) { yield return null; @@ -112,8 +111,8 @@ private IEnumerator DoDeathReceived(DeathLink deathLink) diedFromDeathLink = true; // Apply damage instead of calling Die method to avoid issues - damageable.SetHealth(1); - damageable.ReceiveDamage(1, 0, player.transform.position, player.transform.position, Damageable.DamageType.Hole, 1); + damageable.SetHealth(1f); + damageable.ReceiveDamage(10f, 0, player.transform.position, player.transform.position, Damageable.DamageType.Hole, 1); StartCoroutine(DeathCooldownTimer()); }