@gwigz/homunculus-core
Version:
A third-party framework for interacting with Linden Lab's virtual world "Second Life"
101 lines (100 loc) • 3.04 kB
TypeScript
/**
* ChildAgentUpdate 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 { Bool, F32, Quaternion, U8, U32, U64, UUID, Variable1, Variable2, Vector3 } from "../types";
import { type PacketMetadata } from "./packet";
export interface ChildAgentUpdateData {
agentData: {
regionHandle: number | bigint;
viewerCircuitCode: number;
agentId?: string;
sessionId?: string;
agentPos: Vector3;
agentVel: Vector3;
center: Vector3;
size: Vector3;
atAxis: Vector3;
leftAxis: Vector3;
upAxis: Vector3;
changedGrid: boolean;
far: number;
aspect: number;
throttles: string | Buffer;
locomotionState: number;
headRotation: Quaternion;
bodyRotation: Quaternion;
controlFlags: number;
energyLevel: number;
godLevel?: number;
alwaysRun: boolean;
preyAgent: string;
agentAccess: number;
agentTextures: string | Buffer;
activeGroupId: string;
};
groupData?: {
groupId: string;
groupPowers: number | bigint;
acceptNotices: boolean;
}[];
animationData?: {
animation: string;
objectId: string;
}[];
granterBlock?: {
granterId: string;
}[];
nVPairData?: {
nVPairs: string | Buffer;
}[];
visualParam?: {
paramValue: number;
}[];
agentAccess?: {
agentLegacyAccess: number;
agentMaxAccess: number;
}[];
agentInfo?: {
flags: number;
}[];
}
export declare const childAgentUpdateMetadata: {
id: number;
name: string;
trusted: true;
compression: true;
blocks: ({
name: string;
parameters: ([string, typeof UUID] | [string, typeof Vector3] | [string, typeof Quaternion] | [string, typeof Variable1] | [string, typeof Bool] | [string, typeof F32] | [string, typeof U64] | [string, typeof Variable2])[];
multiple?: undefined;
} | {
name: string;
parameters: ([string, typeof UUID] | [string, typeof Bool] | [string, typeof U64])[];
multiple: true;
} | {
name: string;
parameters: [string, typeof Variable2][];
multiple: true;
} | {
name: string;
parameters: [string, typeof U8][];
multiple: true;
} | {
name: string;
parameters: [string, typeof U32][];
multiple: true;
})[];
};
export declare const childAgentUpdate: (data: ChildAgentUpdateData, reliable?: boolean) => {
data: ChildAgentUpdateData;
reliable: boolean | undefined;
metadata: PacketMetadata;
};
export declare const createChildAgentUpdateDelegate: (config: Omit<import("..").DelegateConfig<ChildAgentUpdateData>, "metadata">) => void;