diff --git a/src/client/caseCorrect.js b/src/client/caseCorrect.js index 8b99b72..d27f4b9 100644 --- a/src/client/caseCorrect.js +++ b/src/client/caseCorrect.js @@ -16,7 +16,7 @@ module.exports = function(client, options) { client.username = session.selectedProfile.name; accessToken = session.accessToken; client.emit('session'); - client.connect(options.port, options.host); + options.connect(client); } }; @@ -38,6 +38,6 @@ module.exports = function(client, options) { } else { // assume the server is in offline mode and just go for it. client.username = options.username; - client.connect(options.port, options.host); + options.connect(client); } }; diff --git a/src/createClient.js b/src/createClient.js index d610c1c..201124b 100644 --- a/src/createClient.js +++ b/src/createClient.js @@ -12,26 +12,25 @@ var play = require('./client/play'); module.exports=createClient; -Client.prototype.connect = function(port, host) { - var self = this; - if(port == 25565 && net.isIP(host) === 0) { - dns.resolveSrv("_minecraft._tcp." + host, function(err, addresses) { - if(addresses && addresses.length > 0) { - self.setSocket(net.connect(addresses[0].port, addresses[0].name)); - } else { - self.setSocket(net.connect(port, host)); - } - }); - } else { - self.setSocket(net.connect(port, host)); - } -}; - function createClient(options) { assert.ok(options, "options is required"); options.port = options.port || 25565; options.host = options.host || 'localhost'; + options.connect = (client) => { + if(options.port == 25565 && net.isIP(host) === 0) { + dns.resolveSrv("_minecraft._tcp." + options.host, function(err, addresses) { + if(addresses && addresses.length > 0) { + client.setSocket(net.connect(addresses[0].port, addresses[0].name)); + } else { + client.setSocket(net.connect(options.port, options.host)); + } + }); + } else { + client.setSocket(net.connect(options.port, options.host)); + } + }; + assert.ok(options.username, "username is required"); var optVersion = options.version || require("./version").defaultVersion; diff --git a/src/ping.js b/src/ping.js index cf03f2f..c61bd8f 100644 --- a/src/ping.js +++ b/src/ping.js @@ -42,5 +42,6 @@ function ping(options, cb) { client.state = states.STATUS; }); + // TODO: update client.connect(port, host); }