Files
node-metaverse/lib/classes/packets/InventoryDescendents.ts
2017-11-24 03:32:37 +00:00

66 lines
1.7 KiB
TypeScript

// This file has been automatically generated by writePacketClasses.js
import {UUID} from '../UUID';
import {MessageFlags} from '../../enums/MessageFlags';
import {Packet} from '../Packet';
export class InventoryDescendentsPacket implements Packet
{
name = 'InventoryDescendents';
flags = MessageFlags.Trusted | MessageFlags.Zerocoded | MessageFlags.FrequencyLow;
id = 4294902038;
AgentData: {
AgentID: UUID;
FolderID: UUID;
OwnerID: UUID;
Version: number;
Descendents: number;
};
FolderData: {
FolderID: UUID;
ParentID: UUID;
Type: number;
Name: string;
}[];
ItemData: {
ItemID: UUID;
FolderID: UUID;
CreatorID: UUID;
OwnerID: UUID;
GroupID: UUID;
BaseMask: number;
OwnerMask: number;
GroupMask: number;
EveryoneMask: number;
NextOwnerMask: number;
GroupOwned: boolean;
AssetID: UUID;
Type: number;
InvType: number;
Flags: number;
SaleType: number;
SalePrice: number;
Name: string;
Description: string;
CreationDate: number;
CRC: number;
}[];
getSize(): number
{
return ((this.calculateVarVarSize(this.FolderData, 'Name', 1) + 33) * this.FolderData.length) + ((this.calculateVarVarSize(this.ItemData, 'Name', 1) + this.calculateVarVarSize(this.ItemData, 'Description', 1) + 136) * this.ItemData.length) + 58;
}
calculateVarVarSize(block: object[], paramName: string, extraPerVar: number): number
{
let size = 0;
block.forEach((bl: any) =>
{
size += bl[paramName].length + extraPerVar;
});
return size;
}
}