Move options back to client parameters

This commit is contained in:
deathcap 2016-02-01 21:07:32 -08:00
parent 58fd1eab35
commit a8bc7d1343
10 changed files with 19 additions and 28 deletions

View File

@ -6,9 +6,7 @@ var states = require('../states');
var assert = require('assert'); var assert = require('assert');
var minecraft_data = require('minecraft-data'); var minecraft_data = require('minecraft-data');
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
options.wait_connect = true; // don't let src/client/setProtocol proceed on socket 'connect' until 'connect_allowed' options.wait_connect = true; // don't let src/client/setProtocol proceed on socket 'connect' until 'connect_allowed'
debug('pinging',options.host); debug('pinging',options.host);
var pingOptions = {host: options.host, port: options.port}; var pingOptions = {host: options.host, port: options.port};
@ -33,8 +31,8 @@ module.exports = function(client) {
var versionInfos = minecraft_data.postNettyVersionsByProtocolVersion[protocolVersion]; var versionInfos = minecraft_data.postNettyVersionsByProtocolVersion[protocolVersion];
if (!versionInfos && versionInfos.length < 1) throw new Error(`unsupported/unknown protocol version: ${protocolVersion}, update minecraft-data`); if (!versionInfos && versionInfos.length < 1) throw new Error(`unsupported/unknown protocol version: ${protocolVersion}, update minecraft-data`);
var versionInfo = versionInfos[0]; // use newest var versionInfo = versionInfos[0]; // use newest
client.options.version = versionInfo.minecraftVersion; options.version = versionInfo.minecraftVersion;
client.options.protocolVersion = protocolVersion; options.protocolVersion = protocolVersion;
// Reinitialize client object with new version TODO: move out of its constructor? // Reinitialize client object with new version TODO: move out of its constructor?
client.version = versionInfo.majorVersion; client.version = versionInfo.majorVersion;

View File

@ -1,8 +1,7 @@
var yggdrasil = require('yggdrasil')({}); var yggdrasil = require('yggdrasil')({});
var UUID = require('uuid-1345'); var UUID = require('uuid-1345');
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
var clientToken = options.clientToken || UUID.v4().toString(); var clientToken = options.clientToken || UUID.v4().toString();
options.accessToken = null; options.accessToken = null;
options.haveCredentials = options.password != null || (clientToken != null && options.session != null); options.haveCredentials = options.password != null || (clientToken != null && options.session != null);

View File

@ -1,4 +1,4 @@
module.exports = function(client) { module.exports = function(client, options) {
client.once("compress", onCompressionRequest); client.once("compress", onCompressionRequest);
client.on("set_compression", onCompressionRequest); client.on("set_compression", onCompressionRequest);

View File

@ -3,8 +3,7 @@ var yggserver = require('yggdrasil').server({});
var ursa=require("../ursa"); var ursa=require("../ursa");
var debug = require("../debug"); var debug = require("../debug");
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
client.once('encryption_begin', onEncryptionKeyRequest); client.once('encryption_begin', onEncryptionKeyRequest);
function onEncryptionKeyRequest(packet) { function onEncryptionKeyRequest(packet) {

View File

@ -1,5 +1,4 @@
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
var keepAlive = options.keepAlive == null ? true : options.keepAlive; var keepAlive = options.keepAlive == null ? true : options.keepAlive;
if (!keepAlive) return; if (!keepAlive) return;

View File

@ -1,6 +1,6 @@
var states = require("../states"); var states = require("../states");
module.exports = function(client) { module.exports = function(client, options) {
client.once('success', onLogin); client.once('success', onLogin);
function onLogin(packet) { function onLogin(packet) {

View File

@ -1,8 +1,7 @@
var states = require("../states"); var states = require("../states");
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
client.on('connect', onConnect); client.on('connect', onConnect);
function onConnect() { function onConnect() {

View File

@ -1,8 +1,7 @@
var net = require('net'); var net = require('net');
var dns = require('dns'); var dns = require('dns');
module.exports = function(client) { module.exports = function(client, options) {
var options = client.options;
options.port = options.port || 25565; options.port = options.port || 25565;
options.host = options.host || 'localhost'; options.host = options.host || 'localhost';

View File

@ -25,16 +25,15 @@ function createClient(options) {
options.protocolVersion = version.version; options.protocolVersion = version.version;
var client = new Client(false, options.majorVersion); var client = new Client(false, options.majorVersion);
client.options = options;
tcp_dns(client); tcp_dns(client, options);
caseCorrect(client); caseCorrect(client, options);
if (options.version === false) autoVersion(client); if (options.version === false) autoVersion(client, options);
setProtocol(client); setProtocol(client, options);
keepalive(client); keepalive(client, options);
encrypt(client); encrypt(client, options);
play(client); play(client, options);
compress(client); compress(client, options);
return client; return client;
} }

View File

@ -15,7 +15,6 @@ function ping(options, cb) {
options.protocolVersion = version.version; options.protocolVersion = version.version;
var client = new Client(false,options.majorVersion); var client = new Client(false,options.majorVersion);
client.options = options;
client.on('error', function(err) { client.on('error', function(err) {
cb(err); cb(err);
}); });
@ -47,6 +46,6 @@ function ping(options, cb) {
client.state = states.STATUS; client.state = states.STATUS;
}); });
tcp_dns(client); tcp_dns(client, options);
options.connect(client); options.connect(client);
} }