diff --git a/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/NonPlayer/CreatureNonPlayer.cs b/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/NonPlayer/CreatureNonPlayer.cs index 5aee21da0..0b5d95ab8 100644 --- a/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/NonPlayer/CreatureNonPlayer.cs +++ b/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/NonPlayer/CreatureNonPlayer.cs @@ -40,14 +40,8 @@ public override void Setup() base.Setup(); Selectable.Setup(); - if (!Loader.IsHidden) - { - Loader.ShowToMe(); - } - else - { - Loader.OnHide(); - } + Loader.OnShow += OnFirstTimeShown; + Loader.ShowToMe(); } public override void OnDie(DamageReason reason, string inflicter) @@ -81,6 +75,15 @@ public override void OnHide() Collider.enabled = false; Animator.enabled = false; } + + private void OnFirstTimeShown() + { + if (Loader.IsHidden) + { + Loader.OnHide(); + } + Loader.OnShow -= OnFirstTimeShown; + } #endregion } } \ No newline at end of file diff --git a/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/Player/CreaturePlayerRemote.cs b/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/Player/CreaturePlayerRemote.cs index f148346fa..327c2d036 100644 --- a/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/Player/CreaturePlayerRemote.cs +++ b/Assets/CreatureCreator/Scripts/Runtime/Behaviours/Creature/Creature/Player/CreaturePlayerRemote.cs @@ -39,14 +39,8 @@ public override void Setup() Selectable.Setup(); Namer.Setup(); - if (!Loader.IsHidden) - { - Loader.ShowToMe(); - } - else - { - Loader.OnHide(); - } + Loader.OnShow += OnFirstTimeShown; + Loader.ShowToMe(); } public override void OnDie(DamageReason reason, string inflicter) @@ -84,6 +78,15 @@ public override void OnHide() Namer.enabled = false; } + + private void OnFirstTimeShown() + { + if (Loader.IsHidden) + { + Loader.OnHide(); + } + Loader.OnShow -= OnFirstTimeShown; + } #endregion } } \ No newline at end of file