Update messages
This commit is contained in:
@@ -304,6 +304,8 @@ export * from './messages/GrantGodlikePowers';
|
||||
export * from './messages/GodlikeMessage';
|
||||
export * from './messages/EstateOwnerMessage';
|
||||
export * from './messages/GenericMessage';
|
||||
export * from './messages/GenericStreamingMessage';
|
||||
export * from './messages/LargeGenericMessage';
|
||||
export * from './messages/MuteListRequest';
|
||||
export * from './messages/UpdateMuteListEntry';
|
||||
export * from './messages/RemoveMuteListEntry';
|
||||
@@ -786,6 +788,8 @@ messages[<number>Message.GrantGodlikePowers] = 'GrantGodlikePowersMessage';
|
||||
messages[<number>Message.GodlikeMessage] = 'GodlikeMessageMessage';
|
||||
messages[<number>Message.EstateOwnerMessage] = 'EstateOwnerMessageMessage';
|
||||
messages[<number>Message.GenericMessage] = 'GenericMessageMessage';
|
||||
messages[<number>Message.GenericStreamingMessage] = 'GenericStreamingMessageMessage';
|
||||
messages[<number>Message.LargeGenericMessage] = 'LargeGenericMessageMessage';
|
||||
messages[<number>Message.MuteListRequest] = 'MuteListRequestMessage';
|
||||
messages[<number>Message.UpdateMuteListEntry] = 'UpdateMuteListEntryMessage';
|
||||
messages[<number>Message.RemoveMuteListEntry] = 'RemoveMuteListEntryMessage';
|
||||
|
||||
64
lib/classes/messages/GenericStreamingMessage.ts
Normal file
64
lib/classes/messages/GenericStreamingMessage.ts
Normal file
@@ -0,0 +1,64 @@
|
||||
// This file has been automatically generated by writeMessageClasses.js
|
||||
|
||||
import { MessageFlags } from '../../enums/MessageFlags';
|
||||
import { MessageBase } from '../MessageBase';
|
||||
import { Message } from '../../enums/Message';
|
||||
|
||||
export class GenericStreamingMessageMessage implements MessageBase
|
||||
{
|
||||
name = 'GenericStreamingMessage';
|
||||
messageFlags = MessageFlags.Trusted | MessageFlags.FrequencyHigh;
|
||||
id = Message.GenericStreamingMessage;
|
||||
|
||||
MethodData: {
|
||||
Method: number;
|
||||
};
|
||||
DataBlock: {
|
||||
Data: Buffer;
|
||||
};
|
||||
|
||||
getSize(): number
|
||||
{
|
||||
return (this.DataBlock['Data'].length + 2) + 2;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
writeToBuffer(buf: Buffer, pos: number): number
|
||||
{
|
||||
const startPos = pos;
|
||||
buf.writeUInt16LE(this.MethodData['Method'], pos);
|
||||
pos += 2;
|
||||
buf.writeUInt16LE(this.DataBlock['Data'].length, pos);
|
||||
pos += 2;
|
||||
this.DataBlock['Data'].copy(buf, pos);
|
||||
pos += this.DataBlock['Data'].length;
|
||||
return pos - startPos;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
readFromBuffer(buf: Buffer, pos: number): number
|
||||
{
|
||||
const startPos = pos;
|
||||
let varLength = 0;
|
||||
const newObjMethodData: {
|
||||
Method: number
|
||||
} = {
|
||||
Method: 0
|
||||
};
|
||||
newObjMethodData['Method'] = buf.readUInt16LE(pos);
|
||||
pos += 2;
|
||||
this.MethodData = newObjMethodData;
|
||||
const newObjDataBlock: {
|
||||
Data: Buffer
|
||||
} = {
|
||||
Data: Buffer.allocUnsafe(0)
|
||||
};
|
||||
varLength = buf.readUInt16LE(pos);
|
||||
pos += 2;
|
||||
newObjDataBlock['Data'] = buf.slice(pos, pos + varLength);
|
||||
pos += varLength;
|
||||
this.DataBlock = newObjDataBlock;
|
||||
return pos - startPos;
|
||||
}
|
||||
}
|
||||
|
||||
125
lib/classes/messages/LargeGenericMessage.ts
Normal file
125
lib/classes/messages/LargeGenericMessage.ts
Normal file
@@ -0,0 +1,125 @@
|
||||
// This file has been automatically generated by writeMessageClasses.js
|
||||
|
||||
import { UUID } from '../UUID';
|
||||
import { MessageFlags } from '../../enums/MessageFlags';
|
||||
import { MessageBase } from '../MessageBase';
|
||||
import { Message } from '../../enums/Message';
|
||||
|
||||
export class LargeGenericMessageMessage implements MessageBase
|
||||
{
|
||||
name = 'LargeGenericMessage';
|
||||
messageFlags = MessageFlags.Deprecated | MessageFlags.FrequencyLow;
|
||||
id = Message.LargeGenericMessage;
|
||||
|
||||
AgentData: {
|
||||
AgentID: UUID;
|
||||
SessionID: UUID;
|
||||
TransactionID: UUID;
|
||||
};
|
||||
MethodData: {
|
||||
Method: Buffer;
|
||||
Invoice: UUID;
|
||||
};
|
||||
ParamList: {
|
||||
Parameter: Buffer;
|
||||
}[];
|
||||
|
||||
getSize(): number
|
||||
{
|
||||
return (this.MethodData['Method'].length + 1) + this.calculateVarVarSize(this.ParamList, 'Parameter', 2) + 65;
|
||||
}
|
||||
|
||||
calculateVarVarSize(block: { [key: string]: any }[], paramName: string, extraPerVar: number): number
|
||||
{
|
||||
let size = 0;
|
||||
for (const bl of block)
|
||||
{
|
||||
size += bl[paramName].length + extraPerVar;
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
writeToBuffer(buf: Buffer, pos: number): number
|
||||
{
|
||||
const startPos = pos;
|
||||
this.AgentData['AgentID'].writeToBuffer(buf, pos);
|
||||
pos += 16;
|
||||
this.AgentData['SessionID'].writeToBuffer(buf, pos);
|
||||
pos += 16;
|
||||
this.AgentData['TransactionID'].writeToBuffer(buf, pos);
|
||||
pos += 16;
|
||||
buf.writeUInt8(this.MethodData['Method'].length, pos++);
|
||||
this.MethodData['Method'].copy(buf, pos);
|
||||
pos += this.MethodData['Method'].length;
|
||||
this.MethodData['Invoice'].writeToBuffer(buf, pos);
|
||||
pos += 16;
|
||||
const count = this.ParamList.length;
|
||||
buf.writeUInt8(this.ParamList.length, pos++);
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
buf.writeUInt16LE(this.ParamList[i]['Parameter'].length, pos);
|
||||
pos += 2;
|
||||
this.ParamList[i]['Parameter'].copy(buf, pos);
|
||||
pos += this.ParamList[i]['Parameter'].length;
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
readFromBuffer(buf: Buffer, pos: number): number
|
||||
{
|
||||
const startPos = pos;
|
||||
let varLength = 0;
|
||||
const newObjAgentData: {
|
||||
AgentID: UUID,
|
||||
SessionID: UUID,
|
||||
TransactionID: UUID
|
||||
} = {
|
||||
AgentID: UUID.zero(),
|
||||
SessionID: UUID.zero(),
|
||||
TransactionID: UUID.zero()
|
||||
};
|
||||
newObjAgentData['AgentID'] = new UUID(buf, pos);
|
||||
pos += 16;
|
||||
newObjAgentData['SessionID'] = new UUID(buf, pos);
|
||||
pos += 16;
|
||||
newObjAgentData['TransactionID'] = new UUID(buf, pos);
|
||||
pos += 16;
|
||||
this.AgentData = newObjAgentData;
|
||||
const newObjMethodData: {
|
||||
Method: Buffer,
|
||||
Invoice: UUID
|
||||
} = {
|
||||
Method: Buffer.allocUnsafe(0),
|
||||
Invoice: UUID.zero()
|
||||
};
|
||||
varLength = buf.readUInt8(pos++);
|
||||
newObjMethodData['Method'] = buf.slice(pos, pos + varLength);
|
||||
pos += varLength;
|
||||
newObjMethodData['Invoice'] = new UUID(buf, pos);
|
||||
pos += 16;
|
||||
this.MethodData = newObjMethodData;
|
||||
if (pos >= buf.length)
|
||||
{
|
||||
return pos - startPos;
|
||||
}
|
||||
const count = buf.readUInt8(pos++);
|
||||
this.ParamList = [];
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
const newObjParamList: {
|
||||
Parameter: Buffer
|
||||
} = {
|
||||
Parameter: Buffer.allocUnsafe(0)
|
||||
};
|
||||
varLength = buf.readUInt16LE(pos);
|
||||
pos += 2;
|
||||
newObjParamList['Parameter'] = buf.slice(pos, pos + varLength);
|
||||
pos += varLength;
|
||||
this.ParamList.push(newObjParamList);
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,10 +25,14 @@ export class MapBlockReplyMessage implements MessageBase
|
||||
Agents: number;
|
||||
MapImageID: UUID;
|
||||
}[];
|
||||
Size: {
|
||||
SizeX: number;
|
||||
SizeY: number;
|
||||
}[];
|
||||
|
||||
getSize(): number
|
||||
{
|
||||
return this.calculateVarVarSize(this.Data, 'Name', 1) + ((27) * this.Data.length) + 21;
|
||||
return this.calculateVarVarSize(this.Data, 'Name', 1) + ((27) * this.Data.length) + ((4) * this.Size.length) + 22;
|
||||
}
|
||||
|
||||
calculateVarVarSize(block: { [key: string]: any }[], paramName: string, extraPerVar: number): number
|
||||
@@ -49,7 +53,7 @@ export class MapBlockReplyMessage implements MessageBase
|
||||
pos += 16;
|
||||
buf.writeUInt32LE(this.AgentData['Flags'], pos);
|
||||
pos += 4;
|
||||
const count = this.Data.length;
|
||||
let count = this.Data.length;
|
||||
buf.writeUInt8(this.Data.length, pos++);
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
@@ -68,6 +72,15 @@ export class MapBlockReplyMessage implements MessageBase
|
||||
this.Data[i]['MapImageID'].writeToBuffer(buf, pos);
|
||||
pos += 16;
|
||||
}
|
||||
count = this.Size.length;
|
||||
buf.writeUInt8(this.Size.length, pos++);
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
buf.writeUInt16LE(this.Size[i]['SizeX'], pos);
|
||||
pos += 2;
|
||||
buf.writeUInt16LE(this.Size[i]['SizeY'], pos);
|
||||
pos += 2;
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
|
||||
@@ -92,7 +105,7 @@ export class MapBlockReplyMessage implements MessageBase
|
||||
{
|
||||
return pos - startPos;
|
||||
}
|
||||
const count = buf.readUInt8(pos++);
|
||||
let count = buf.readUInt8(pos++);
|
||||
this.Data = [];
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
@@ -131,6 +144,27 @@ export class MapBlockReplyMessage implements MessageBase
|
||||
pos += 16;
|
||||
this.Data.push(newObjData);
|
||||
}
|
||||
if (pos >= buf.length)
|
||||
{
|
||||
return pos - startPos;
|
||||
}
|
||||
count = buf.readUInt8(pos++);
|
||||
this.Size = [];
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
const newObjSize: {
|
||||
SizeX: number,
|
||||
SizeY: number
|
||||
} = {
|
||||
SizeX: 0,
|
||||
SizeY: 0
|
||||
};
|
||||
newObjSize['SizeX'] = buf.readUInt16LE(pos);
|
||||
pos += 2;
|
||||
newObjSize['SizeY'] = buf.readUInt16LE(pos);
|
||||
pos += 2;
|
||||
this.Size.push(newObjSize);
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -69,10 +69,14 @@ export class ParcelPropertiesMessage implements MessageBase
|
||||
RegionAllowAccessBlock: {
|
||||
RegionAllowAccessOverride: boolean;
|
||||
};
|
||||
ParcelEnvironmentBlock: {
|
||||
ParcelEnvironmentVersion: number;
|
||||
RegionAllowEnvironmentOverride: boolean;
|
||||
};
|
||||
|
||||
getSize(): number
|
||||
{
|
||||
return (this.ParcelData['Bitmap'].length + 2 + this.ParcelData['Name'].length + 1 + this.ParcelData['Desc'].length + 1 + this.ParcelData['MusicURL'].length + 1 + this.ParcelData['MediaURL'].length + 1) + 240;
|
||||
return (this.ParcelData['Bitmap'].length + 2 + this.ParcelData['Name'].length + 1 + this.ParcelData['Desc'].length + 1 + this.ParcelData['MusicURL'].length + 1 + this.ParcelData['MediaURL'].length + 1) + 245;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
@@ -175,6 +179,9 @@ export class ParcelPropertiesMessage implements MessageBase
|
||||
buf.writeUInt8((this.ParcelData['RegionDenyTransacted']) ? 1 : 0, pos++);
|
||||
buf.writeUInt8((this.AgeVerificationBlock['RegionDenyAgeUnverified']) ? 1 : 0, pos++);
|
||||
buf.writeUInt8((this.RegionAllowAccessBlock['RegionAllowAccessOverride']) ? 1 : 0, pos++);
|
||||
buf.writeInt32LE(this.ParcelEnvironmentBlock['ParcelEnvironmentVersion'], pos);
|
||||
pos += 4;
|
||||
buf.writeUInt8((this.ParcelEnvironmentBlock['RegionAllowEnvironmentOverride']) ? 1 : 0, pos++);
|
||||
return pos - startPos;
|
||||
}
|
||||
|
||||
@@ -393,6 +400,17 @@ export class ParcelPropertiesMessage implements MessageBase
|
||||
};
|
||||
newObjRegionAllowAccessBlock['RegionAllowAccessOverride'] = (buf.readUInt8(pos++) === 1);
|
||||
this.RegionAllowAccessBlock = newObjRegionAllowAccessBlock;
|
||||
const newObjParcelEnvironmentBlock: {
|
||||
ParcelEnvironmentVersion: number,
|
||||
RegionAllowEnvironmentOverride: boolean
|
||||
} = {
|
||||
ParcelEnvironmentVersion: 0,
|
||||
RegionAllowEnvironmentOverride: false
|
||||
};
|
||||
newObjParcelEnvironmentBlock['ParcelEnvironmentVersion'] = buf.readInt32LE(pos);
|
||||
pos += 4;
|
||||
newObjParcelEnvironmentBlock['RegionAllowEnvironmentOverride'] = (buf.readUInt8(pos++) === 1);
|
||||
this.ParcelEnvironmentBlock = newObjParcelEnvironmentBlock;
|
||||
return pos - startPos;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,10 +44,19 @@ export class RegionInfoMessage implements MessageBase
|
||||
RegionInfo3: {
|
||||
RegionFlagsExtended: Long;
|
||||
}[];
|
||||
RegionInfo5: {
|
||||
ChatWhisperRange: number;
|
||||
ChatNormalRange: number;
|
||||
ChatShoutRange: number;
|
||||
ChatWhisperOffset: number;
|
||||
ChatNormalOffset: number;
|
||||
ChatShoutOffset: number;
|
||||
ChatFlags: number;
|
||||
}[];
|
||||
|
||||
getSize(): number
|
||||
{
|
||||
return (this.RegionInfo['SimName'].length + 1) + (this.RegionInfo2['ProductSKU'].length + 1 + this.RegionInfo2['ProductName'].length + 1) + ((8) * this.RegionInfo3.length) + 96;
|
||||
return (this.RegionInfo['SimName'].length + 1) + (this.RegionInfo2['ProductSKU'].length + 1 + this.RegionInfo2['ProductName'].length + 1) + ((8) * this.RegionInfo3.length) + ((28) * this.RegionInfo5.length) + 97;
|
||||
}
|
||||
|
||||
// @ts-ignore
|
||||
@@ -100,7 +109,7 @@ export class RegionInfoMessage implements MessageBase
|
||||
pos += 4;
|
||||
buf.writeUInt32LE(this.RegionInfo2['HardMaxObjects'], pos);
|
||||
pos += 4;
|
||||
const count = this.RegionInfo3.length;
|
||||
let count = this.RegionInfo3.length;
|
||||
buf.writeUInt8(this.RegionInfo3.length, pos++);
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
@@ -109,6 +118,25 @@ export class RegionInfoMessage implements MessageBase
|
||||
buf.writeInt32LE(this.RegionInfo3[i]['RegionFlagsExtended'].high, pos);
|
||||
pos += 4;
|
||||
}
|
||||
count = this.RegionInfo5.length;
|
||||
buf.writeUInt8(this.RegionInfo5.length, pos++);
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatWhisperRange'], pos);
|
||||
pos += 4;
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatNormalRange'], pos);
|
||||
pos += 4;
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatShoutRange'], pos);
|
||||
pos += 4;
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatWhisperOffset'], pos);
|
||||
pos += 4;
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatNormalOffset'], pos);
|
||||
pos += 4;
|
||||
buf.writeFloatLE(this.RegionInfo5[i]['ChatShoutOffset'], pos);
|
||||
pos += 4;
|
||||
buf.writeUInt32LE(this.RegionInfo5[i]['ChatFlags'], pos);
|
||||
pos += 4;
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
|
||||
@@ -225,7 +253,7 @@ export class RegionInfoMessage implements MessageBase
|
||||
{
|
||||
return pos - startPos;
|
||||
}
|
||||
const count = buf.readUInt8(pos++);
|
||||
let count = buf.readUInt8(pos++);
|
||||
this.RegionInfo3 = [];
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
@@ -238,6 +266,47 @@ export class RegionInfoMessage implements MessageBase
|
||||
pos += 8;
|
||||
this.RegionInfo3.push(newObjRegionInfo3);
|
||||
}
|
||||
if (pos >= buf.length)
|
||||
{
|
||||
return pos - startPos;
|
||||
}
|
||||
count = buf.readUInt8(pos++);
|
||||
this.RegionInfo5 = [];
|
||||
for (let i = 0; i < count; i++)
|
||||
{
|
||||
const newObjRegionInfo5: {
|
||||
ChatWhisperRange: number,
|
||||
ChatNormalRange: number,
|
||||
ChatShoutRange: number,
|
||||
ChatWhisperOffset: number,
|
||||
ChatNormalOffset: number,
|
||||
ChatShoutOffset: number,
|
||||
ChatFlags: number
|
||||
} = {
|
||||
ChatWhisperRange: 0,
|
||||
ChatNormalRange: 0,
|
||||
ChatShoutRange: 0,
|
||||
ChatWhisperOffset: 0,
|
||||
ChatNormalOffset: 0,
|
||||
ChatShoutOffset: 0,
|
||||
ChatFlags: 0
|
||||
};
|
||||
newObjRegionInfo5['ChatWhisperRange'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatNormalRange'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatShoutRange'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatWhisperOffset'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatNormalOffset'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatShoutOffset'] = buf.readFloatLE(pos);
|
||||
pos += 4;
|
||||
newObjRegionInfo5['ChatFlags'] = buf.readUInt32LE(pos);
|
||||
pos += 4;
|
||||
this.RegionInfo5.push(newObjRegionInfo5);
|
||||
}
|
||||
return pos - startPos;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -304,6 +304,8 @@ export enum Message
|
||||
GodlikeMessage = 4294902019,
|
||||
EstateOwnerMessage = 4294902020,
|
||||
GenericMessage = 4294902021,
|
||||
GenericStreamingMessage = 31,
|
||||
LargeGenericMessage = 4294902190,
|
||||
MuteListRequest = 4294902022,
|
||||
UpdateMuteListEntry = 4294902023,
|
||||
RemoveMuteListEntry = 4294902024,
|
||||
|
||||
9214
tools/message_template.msg
Executable file
9214
tools/message_template.msg
Executable file
File diff suppressed because it is too large
Load Diff
@@ -8403,6 +8403,48 @@
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "RegionInfo5",
|
||||
"type": "Variable",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "ChatWhisperRange",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatNormalRange",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatShoutRange",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatWhisperOffset",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatNormalOffset",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatShoutOffset",
|
||||
"type": "F32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "ChatFlags",
|
||||
"type": "U32",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -12684,6 +12726,23 @@
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ParcelEnvironmentBlock",
|
||||
"type": "Single",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "ParcelEnvironmentVersion",
|
||||
"type": "S32",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "RegionAllowEnvironmentOverride",
|
||||
"type": "BOOL",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -16275,6 +16334,104 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "GenericStreamingMessage",
|
||||
"frequency": "High",
|
||||
"id": "31",
|
||||
"flags": [
|
||||
"Trusted",
|
||||
"Unencoded"
|
||||
],
|
||||
"blocks": [
|
||||
{
|
||||
"name": "MethodData",
|
||||
"type": "Single",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "Method",
|
||||
"type": "U16",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "DataBlock",
|
||||
"type": "Single",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "Data",
|
||||
"type": "Variable",
|
||||
"size": "2"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "LargeGenericMessage",
|
||||
"frequency": "Low",
|
||||
"id": "430",
|
||||
"flags": [
|
||||
"NotTrusted",
|
||||
"Unencoded",
|
||||
"UDPDeprecated"
|
||||
],
|
||||
"blocks": [
|
||||
{
|
||||
"name": "AgentData",
|
||||
"type": "Single",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "AgentID",
|
||||
"type": "LLUUID",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "SessionID",
|
||||
"type": "LLUUID",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "TransactionID",
|
||||
"type": "LLUUID",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "MethodData",
|
||||
"type": "Single",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "Method",
|
||||
"type": "Variable",
|
||||
"size": "1"
|
||||
},
|
||||
{
|
||||
"name": "Invoice",
|
||||
"type": "LLUUID",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ParamList",
|
||||
"type": "Variable",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "Parameter",
|
||||
"type": "Variable",
|
||||
"size": "2"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "MuteListRequest",
|
||||
"frequency": "Low",
|
||||
@@ -25039,6 +25196,23 @@
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Size",
|
||||
"type": "Variable",
|
||||
"count": 1,
|
||||
"params": [
|
||||
{
|
||||
"name": "SizeX",
|
||||
"type": "U16",
|
||||
"size": 1
|
||||
},
|
||||
{
|
||||
"name": "SizeY",
|
||||
"type": "U16",
|
||||
"size": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
@@ -68,7 +68,7 @@ function getBlocks(str)
|
||||
return block;
|
||||
}
|
||||
|
||||
fs.readFile('./msg_template.msg', (err, data) =>
|
||||
fs.readFile('./message_template.msg', (err, data) =>
|
||||
{
|
||||
if (err)
|
||||
{
|
||||
@@ -81,7 +81,7 @@ fs.readFile('./msg_template.msg', (err, data) =>
|
||||
//Remove all comments
|
||||
const lines = msgTemplate.split('\n');
|
||||
let newLines = [];
|
||||
for (const line of lines)
|
||||
for (let line of lines)
|
||||
{
|
||||
let pos = line.indexOf('//');
|
||||
if (pos !== -1)
|
||||
|
||||
Reference in New Issue
Block a user