load player plugin in login.js server plugin, fix #11

This commit is contained in:
Romain Beaumont 2015-08-27 22:39:45 +02:00
parent 52f6cdffbe
commit 6509f513a8
3 changed files with 25 additions and 15 deletions

View file

@ -34,14 +34,15 @@
- [serv.players](#servplayers)
- [serv.uuidToPlayer](#servuuidtoplayer)
- [serv.world](#servworld)
- [serv.entities](#serventities)
- [Events](#events)
- ["error" (error)](#error-error)
- ["listening" (port)](#listening-port)
- ["newPlayer" (player)](#newplayer-player)
- [Methods](#methods)
- [serv.createLog()](#servcreatelog)
- [serv.log(message)](#servlogmessage)
- [serv.broadcast(message[,color])](#servbroadcastmessagecolor)
- [serv.entities](#serventities)
- [Player](#player)
- [Properties](#properties-1)
- [player.entity](#playerentity)
@ -197,6 +198,10 @@ Fires when there is an error.
Fires when the server is listening.
#### "newPlayer" (player)
Fires when `player` login, allow external player plugins.
### Methods
#### serv.createLog()
@ -211,9 +216,6 @@ logs a `message`
broadcasts `message` to all the players with the optional `color`.
#### serv.entities
All of the entities
## Player
### Properties

View file

@ -4,8 +4,6 @@ var util = require('util');
var path = require('path');
var requireIndex = require('requireindex');
var serverPlugins = requireIndex(path.join(__dirname, 'lib', 'serverPlugins'));
var playerPlugins = requireIndex(path.join(__dirname, 'lib', 'playerPlugins'));
var Player=require("./lib/player");
require("longjohn");
module.exports = {
@ -44,13 +42,4 @@ MCServer.prototype.connect = function(options) {
self._server.on('listening', function() {
self.emit('listening',self._server.socketServer.address().port);
});
self._server.on('login', function (client) {
var player=new Player();
player._client=client;
for(var pluginName in playerPlugins) {
playerPlugins[pluginName](self, player, options);
}
player.login();
});
};

View file

@ -0,0 +1,19 @@
var path = require('path');
var requireIndex = require('requireindex');
var playerPlugins = requireIndex(path.join(__dirname,'..', 'playerPlugins'));
var Player=require("../player");
module.exports = inject;
function inject(serv,options)
{
serv._server.on('login', function (client) {
var player=new Player();
player._client=client;
for(var pluginName in playerPlugins) {
playerPlugins[pluginName](serv, player, options);
}
serv.emit("newPlayer",player);
player.login();
});
}