UNPKG

@gwigz/homunculus-core

Version:

A third-party framework for interacting with Linden Lab's virtual world "Second Life"

88 lines (87 loc) 2.74 kB
/** * ObjectUpdate Packet * * This file is used to help our packet serialization and deserialization * process, and to create new packets on the fly. * * ⚠️ Do not edit this file manually, it is generated by the `codegen` script! * * @see {@link http://wiki.secondlife.com/wiki/Message_Layout} */ import { Color4, F32, U16, U64, UUID, Variable1, Variable2, Vector3 } from "../types"; import { type PacketMetadata } from "./packet"; export interface ObjectUpdateData { regionData?: { regionHandle: number | bigint; timeDilation: number; }; objectData?: { id: number; state: number; fullId: string; crc: number; pCode: number; material: number; clickAction: number; scale: Vector3; objectData: string | Buffer; parentId: number; updateFlags: number; pathCurve: number; profileCurve: number; pathBegin: number; pathEnd: number; pathScaleX: number; pathScaleY: number; pathShearX: number; pathShearY: number; pathTwist: number; pathTwistBegin: number; pathRadiusOffset: number; pathTaperX: number; pathTaperY: number; pathRevolutions: number; pathSkew: number; profileBegin: number; profileEnd: number; profileHollow: number; textureEntry: string | Buffer; textureAnim: string | Buffer; nameValue: string | Buffer; data: string | Buffer; text: string | Buffer; textColor: Color4; mediaUrl: string | Buffer; pSBlock: string | Buffer; extraParams: string | Buffer; sound: string; ownerId: string; gain: number; flags: number; radius: number; jointType: number; jointPivot: Vector3; jointAxisOrAnchor: Vector3; }[]; } export declare const objectUpdateMetadata: { id: number; name: string; trusted: true; compression: true; blocks: ({ name: string; parameters: ([string, typeof U16] | [string, typeof U64])[]; multiple?: undefined; } | { name: string; parameters: ([string, typeof UUID] | [string, typeof Vector3] | [string, typeof Variable1] | [string, typeof F32] | [string, typeof Variable2] | [string, typeof Color4])[]; multiple: true; })[]; }; export declare const objectUpdate: (data: ObjectUpdateData, reliable?: boolean) => { data: ObjectUpdateData; reliable: boolean | undefined; metadata: PacketMetadata; }; export declare const createObjectUpdateDelegate: (config: Omit<import("..").DelegateConfig<ObjectUpdateData>, "metadata">) => void;