use protodef addProtocol

This commit is contained in:
Romain Beaumont 2017-04-22 14:10:47 +02:00
parent 2610273529
commit 87768f5d76
No known key found for this signature in database
GPG Key ID: DB60E388B3BCF286
2 changed files with 3 additions and 12 deletions

View File

@ -43,7 +43,7 @@
"lodash.merge": "^4.3.0",
"minecraft-data": "^2.14.0",
"prismarine-nbt": "^1.0.0",
"protodef": "^1.3.0",
"protodef": "^1.5.1",
"readable-stream": "^2.0.5",
"ursa-purejs": "^0.0.3",
"uuid-1345": "^0.99.6",

View File

@ -9,15 +9,6 @@ const states = require("../states");
const merge=require("lodash.merge");
const get=require("lodash.get");
function recursiveAddTypes(protocol,protocolData,path)
{
if(protocolData===undefined)
return;
if(protocolData.types)
protocol.addTypes(protocolData.types);
recursiveAddTypes(protocol,get(protocolData,path.shift()),path);
}
const protocols={};
function createProtocol(state,direction,version,customPackets)
@ -25,10 +16,10 @@ function createProtocol(state,direction,version,customPackets)
const key=state+";"+direction+";"+version;
if(protocols[key])
return protocols[key];
const proto = new ProtoDef();
const proto = new ProtoDef(false);
proto.addTypes(minecraft);
const mcData=require("minecraft-data")(version);
recursiveAddTypes(proto,merge(mcData.protocol,get(customPackets,[mcData.version.majorVersion])),[state,direction]);
proto.addProtocol(merge(mcData.protocol,get(customPackets,[mcData.version.majorVersion])),[state,direction]);
protocols[key]=proto;
return proto;
}