@gwigz/homunculus-core
Version:
A third-party framework for interacting with Linden Lab's virtual world "Second Life"
61 lines (60 loc) • 1.82 kB
TypeScript
/**
* ObjectShape 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 { S8, U8, U16, U32, UUID } from "../types";
import { type PacketMetadata } from "./packet";
export interface ObjectShapeData {
agentData?: {
agentId?: string;
sessionId?: string;
};
objectData?: {
objectLocalId: 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;
}[];
}
export declare const objectShapeMetadata: {
id: number;
name: string;
frequency: 2;
compression: true;
blocks: ({
name: string;
parameters: [string, typeof UUID][];
multiple?: undefined;
} | {
name: string;
parameters: ([string, typeof U32] | [string, typeof U8] | [string, typeof U16] | [string, typeof S8])[];
multiple: true;
})[];
};
export declare const objectShape: (data: ObjectShapeData, reliable?: boolean) => {
data: ObjectShapeData;
reliable: boolean | undefined;
metadata: PacketMetadata;
};
export declare const createObjectShapeDelegate: (config: Omit<import("..").DelegateConfig<ObjectShapeData>, "metadata">) => void;