Show / Hide Table of Contents

# Class GameObject

This class represents a GameObject in FFXIV.

##### Inheritance

System.Object
GameObject
EventObj
Character

##### Implements

System.IEquatable<GameObject>

##### Inherited Members

System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)

###### Namespace: Dalamud.Game.ClientState.Objects.Types

###### Assembly: Dalamud.dll

##### Syntax

    public class GameObject : IEquatable<GameObject>

### Fields

| Improve this Doc View Source

#### InvalidGameObjectId

IDs of non-networked GameObjects.

##### Declaration

    public const uint InvalidGameObjectId = 3758096384U

##### Field Value

Type | Description
--- | ---
System.UInt32 |

### Properties

| Improve this Doc View Source

#### Address

Gets the address of the game object in memory.

##### Declaration

    public IntPtr Address { get; }

##### Property Value

Type | Description
--- | ---
System.IntPtr |

| Improve this Doc View Source

#### DataId

Gets the data ID for linking to other respective game data.

##### Declaration

    public uint DataId { get; }

##### Property Value

Type | Description
--- | ---
System.UInt32 |

| Improve this Doc View Source

#### HitboxRadius

Gets the hitbox radius of this GameObject.

##### Declaration

    public float HitboxRadius { get; }

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### IsDead

Gets a value indicating whether the object is dead or alive.

##### Declaration

    public bool IsDead { get; }

##### Property Value

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Name

Gets the name of this GameObject.

##### Declaration

    public SeString Name { get; }

##### Property Value

Type | Description
--- | ---
SeString |

| Improve this Doc View Source

#### ObjectId

Gets the object ID of this GameObject.

##### Declaration

    public uint ObjectId { get; }

##### Property Value

Type | Description
--- | ---
System.UInt32 |

| Improve this Doc View Source

#### ObjectIndex

Gets the index of this object in the object table.

##### Declaration

    public ushort ObjectIndex { get; }

##### Property Value

Type | Description
--- | ---
System.UInt16 |

| Improve this Doc View Source

#### ObjectKind

Gets the entity kind of this GameObject. See the ObjectKind enum for possible values.

##### Declaration

    public ObjectKind ObjectKind { get; }

##### Property Value

Type | Description
--- | ---
ObjectKind |

| Improve this Doc View Source

#### OwnerId

Gets the ID of this GameObject's owner.

##### Declaration

    public uint OwnerId { get; }

##### Property Value

Type | Description
--- | ---
System.UInt32 |

| Improve this Doc View Source

#### Position

Gets the position of this GameObject.

##### Declaration

    public Vector3 Position { get; }

##### Property Value

Type | Description
--- | ---
System.Numerics.Vector3 |

| Improve this Doc View Source

#### Rotation

Gets the rotation of this GameObject. This ranges from -pi to pi radians.

##### Declaration

    public float Rotation { get; }

##### Property Value

Type | Description
--- | ---
System.Single |

| Improve this Doc View Source

#### Struct

Gets the underlying structure.

##### Declaration

    protected GameObject*Struct { get; }

##### Property Value

Type | Description
--- | ---
GameObject* |

| Improve this Doc View Source

#### SubKind

Gets the sub kind of this Actor.

##### Declaration

    public byte SubKind { get; }

##### Property Value

Type | Description
--- | ---
System.Byte |

| Improve this Doc View Source

#### TargetObject

Gets the target object of the game object.

##### Declaration

    public virtual GameObject TargetObject { get; }

##### Property Value

Type | Description
--- | ---
GameObject |

##### Remarks

This iterates the actor table, it should be used with care.

| Improve this Doc View Source

#### TargetObjectId

Gets the current target of the game object.

##### Declaration

    public virtual ulong TargetObjectId { get; }

##### Property Value

Type | Description
--- | ---
System.UInt64 |

| Improve this Doc View Source

#### YalmDistanceX

Gets the X distance from the local player in yalms.

##### Declaration

    public byte YalmDistanceX { get; }

##### Property Value

Type | Description
--- | ---
System.Byte |

| Improve this Doc View Source

#### YalmDistanceZ

Gets the Y distance from the local player in yalms.

##### Declaration

    public byte YalmDistanceZ { get; }

##### Property Value

Type | Description
--- | ---
System.Byte |

### Methods

| Improve this Doc View Source

#### Equals(Object)

##### Declaration

    public override bool Equals(object obj)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Object | obj |

##### Returns

Type | Description
--- | ---
System.Boolean |

##### Overrides

System.Object.Equals(System.Object)
| Improve this Doc View Source

#### GetHashCode()

##### Declaration

    public override int GetHashCode()

##### Returns

Type | Description
--- | ---
System.Int32 |

##### Overrides

System.Object.GetHashCode()
| Improve this Doc View Source

#### IsValid()

Gets a value indicating whether this actor is still valid in memory.

##### Declaration

    public bool IsValid()

##### Returns

Type | Description
--- | ---
System.Boolean | True or false.

| Improve this Doc View Source

#### IsValid(GameObject)

Gets a value indicating whether this actor is still valid in memory.

##### Declaration

    public static bool IsValid(GameObject actor)

##### Parameters

Type | Name | Description
--- | --- | ---
GameObject | actor | The actor to check.

##### Returns

Type | Description
--- | ---
System.Boolean | True or false.

| Improve this Doc View Source

#### ToString()

##### Declaration

    public override string ToString()

##### Returns

Type | Description
--- | ---
System.String |

##### Overrides

System.Object.ToString()

### Operators

| Improve this Doc View Source

#### Equality(GameObject, GameObject)

##### Declaration

    public static bool operator ==(GameObject gameObject1, GameObject gameObject2)

##### Parameters

Type | Name | Description
--- | --- | ---
GameObject | gameObject1 |
GameObject | gameObject2 |

##### Returns

Type | Description
--- | ---
System.Boolean |

| Improve this Doc View Source

#### Implicit(GameObject to Boolean)

This allows you to `if (obj) {...}` to check for validity.

##### Declaration

    public static implicit operator bool (GameObject gameObject)

##### Parameters

Type | Name | Description
--- | --- | ---
GameObject | gameObject | The actor to check.

##### Returns

Type | Description
--- | ---
System.Boolean | True or false.

| Improve this Doc View Source

#### Inequality(GameObject, GameObject)

##### Declaration

    public static bool operator !=(GameObject actor1, GameObject actor2)

##### Parameters

Type | Name | Description
--- | --- | ---
GameObject | actor1 |
GameObject | actor2 |

##### Returns

Type | Description
--- | ---
System.Boolean |

### Explicit Interface Implementations

| Improve this Doc View Source

#### IEquatable<GameObject>.Equals(GameObject)

##### Declaration

    bool IEquatable<GameObject>.Equals(GameObject other)

##### Parameters

Type | Name | Description
--- | --- | ---
GameObject | other |

##### Returns

Type | Description
--- | ---
System.Boolean |

### Implements

System.IEquatable<T>