diff --git a/isometric-park-fna/Components/Dialog.cs b/isometric-park-fna/Components/Dialog.cs --- a/isometric-park-fna/Components/Dialog.cs +++ b/isometric-park-fna/Components/Dialog.cs @@ -12,8 +12,10 @@ public struct DialogComponent : IComponent/*, IHasEntity*/ { public string Knot; public string CurrentDialog; - // public Entity Entity {get; set;} public string CurrentSpeaker; public List Options; + public bool Hydrated { get { + return (this.CurrentDialog != null) + && (this.CurrentSpeaker != null); }} } } diff --git a/isometric-park-fna/Engines/UIEngine.cs b/isometric-park-fna/Engines/UIEngine.cs --- a/isometric-park-fna/Engines/UIEngine.cs +++ b/isometric-park-fna/Engines/UIEngine.cs @@ -150,7 +150,7 @@ //Don't try to use entity we just destroyed: && (entity.ID != choiceMessage.Entity.ID) - && (GetComponent(entity).CurrentDialog == null)) + && (!GetComponent(entity).Hydrated)) { lowestID = entity.ID; lowestEntity = entity; diff --git a/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs b/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs --- a/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs +++ b/isometric-park-fna/Renderers/ImGuiWindowRenderer.cs @@ -136,7 +136,7 @@ } } - if (dialogNode.CurrentDialog != null) + if (dialogNode.Hydrated) { var show = true; var paused = true;