diff --git a/Dalamud/Game/ClientState/Objects/ObjectTable.cs b/Dalamud/Game/ClientState/Objects/ObjectTable.cs index 529fdfaec..df045be1c 100644 --- a/Dalamud/Game/ClientState/Objects/ObjectTable.cs +++ b/Dalamud/Game/ClientState/Objects/ObjectTable.cs @@ -7,7 +7,6 @@ using Dalamud.Game.ClientState.Objects.SubKinds; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.IoC; using Dalamud.IoC.Internal; -using JetBrains.Annotations; using Serilog; namespace Dalamud.Game.ClientState.Objects @@ -65,6 +64,9 @@ namespace Dalamud.Game.ClientState.Objects /// A game object or null. public GameObject? SearchById(uint objectId) { + if (objectId is GameObject.InvalidGameObjectId or 0) + return null; + foreach (var obj in this) { if (obj == null) diff --git a/Dalamud/Game/ClientState/Objects/Types/GameObject.cs b/Dalamud/Game/ClientState/Objects/Types/GameObject.cs index b0504fbcc..da4794109 100644 --- a/Dalamud/Game/ClientState/Objects/Types/GameObject.cs +++ b/Dalamud/Game/ClientState/Objects/Types/GameObject.cs @@ -162,7 +162,7 @@ namespace Dalamud.Game.ClientState.Objects.Types /// This iterates the actor table, it should be used with care. /// // TODO: Fix for non-networked GameObjects - public virtual GameObject? TargetObject => this.TargetObjectId != InvalidGameObjectId ? Service.Get().SearchById(this.TargetObjectId) : null; + public virtual GameObject? TargetObject => Service.Get().SearchById(this.TargetObjectId); /// /// Gets the underlying structure.