diff --git a/VpSharp/src/Entities/VirtualParadiseZoneObject.cs b/VpSharp/src/Entities/VirtualParadiseZoneObject.cs
new file mode 100644
index 0000000..b7f82ab
--- /dev/null
+++ b/VpSharp/src/Entities/VirtualParadiseZoneObject.cs
@@ -0,0 +1,18 @@
+namespace VpSharp.Entities;
+
+///
+/// Represents a zone object.
+///
+public sealed class VirtualParadiseZoneObject : VirtualParadiseObject
+{
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ /// The owning client.
+ /// The object ID.
+ /// is .
+ internal VirtualParadiseZoneObject(VirtualParadiseClient client, int id)
+ : base(client, id)
+ {
+ }
+}
diff --git a/VpSharp/src/Internal/ObjectType.cs b/VpSharp/src/Internal/ObjectType.cs
index 40d8bde..802a453 100644
--- a/VpSharp/src/Internal/ObjectType.cs
+++ b/VpSharp/src/Internal/ObjectType.cs
@@ -4,5 +4,6 @@ internal enum ObjectType
{
Model,
ParticleEmitter = 2,
- Path
+ Path,
+ Zone
}
diff --git a/VpSharp/src/VirtualParadiseClient.Objects.cs b/VpSharp/src/VirtualParadiseClient.Objects.cs
index 306553d..b8bd1c8 100644
--- a/VpSharp/src/VirtualParadiseClient.Objects.cs
+++ b/VpSharp/src/VirtualParadiseClient.Objects.cs
@@ -216,6 +216,7 @@ private async Task ExtractObjectAsync(nint sender)
ObjectType.Model => new VirtualParadiseModelObject(this, id),
ObjectType.ParticleEmitter => new VirtualParadiseParticleEmitterObject(this, id),
ObjectType.Path => new VirtualParadisePathObject(this, id),
+ ObjectType.Zone => new VirtualParadiseZoneObject(this, id),
_ => throw new NotSupportedException(ExceptionMessages.UnsupportedObjectType)
};