/// <summary> /// Creates a terrain node from an instances' attributes and byte array /// </summary> public TerrainNode(IntPtr pointer) { X = Functions.vp_int(pointer, IntAttributes.TerrainNodeX); Z = Functions.vp_int(pointer, IntAttributes.TerrainNodeZ); Revision = Functions.vp_int(pointer, IntAttributes.TerrainNodeRevision); var data = DataHandlers.GetData(pointer, DataAttributes.TerrainNodeData); Cells = DataHandlers.NodeDataTo2DArray(data); }
/// <summary> /// Creates a VPObject from a native instance's attributes /// </summary> internal VPObject(IntPtr pointer) { Action = Functions.vp_string(pointer, StringAttributes.ObjectAction); Description = Functions.vp_string(pointer, StringAttributes.ObjectDescription); Id = Functions.vp_int(pointer, IntAttributes.ObjectId); Model = Functions.vp_string(pointer, StringAttributes.ObjectModel); Time = DateTimeExt.FromUnixTimestampUTC(Functions.vp_int(pointer, IntAttributes.ObjectTime)); Type = Functions.vp_int(pointer, IntAttributes.ObjectType); Owner = Functions.vp_int(pointer, IntAttributes.ObjectUserId); Data = DataHandlers.GetData(pointer, DataAttributes.ObjectData); Position = Vector3.FromObject(pointer); Rotation = Rotation.FromObject(pointer); }