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

44 lines
1.1 KiB
TypeScript

// This file has been automatically generated by writePacketClasses.js
import {UUID} from '../UUID';
import Long = require('long');
import {MessageFlags} from '../../enums/MessageFlags';
import {Packet} from '../Packet';
export class GroupRoleUpdatePacket implements Packet
{
name = 'GroupRoleUpdate';
flags = MessageFlags.FrequencyLow;
id = 4294902138;
AgentData: {
AgentID: UUID;
SessionID: UUID;
GroupID: UUID;
};
RoleData: {
RoleID: UUID;
Name: string;
Description: string;
Title: string;
Powers: Long;
UpdateType: number;
}[];
getSize(): number
{
return ((this.calculateVarVarSize(this.RoleData, 'Name', 1) + this.calculateVarVarSize(this.RoleData, 'Description', 1) + this.calculateVarVarSize(this.RoleData, 'Title', 1) + 25) * this.RoleData.length) + 49;
}
calculateVarVarSize(block: object[], paramName: string, extraPerVar: number): number
{
let size = 0;
block.forEach((bl: any) =>
{
size += bl[paramName].length + extraPerVar;
});
return size;
}
}