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

View file

@ -4,8 +4,6 @@ var util = require('util');
var path = require('path'); var path = require('path');
var requireIndex = require('requireindex'); var requireIndex = require('requireindex');
var serverPlugins = requireIndex(path.join(__dirname, 'lib', 'serverPlugins')); var serverPlugins = requireIndex(path.join(__dirname, 'lib', 'serverPlugins'));
var playerPlugins = requireIndex(path.join(__dirname, 'lib', 'playerPlugins'));
var Player=require("./lib/player");
require("longjohn"); require("longjohn");
module.exports = { module.exports = {
@ -44,13 +42,4 @@ MCServer.prototype.connect = function(options) {
self._server.on('listening', function() { self._server.on('listening', function() {
self.emit('listening',self._server.socketServer.address().port); 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();
});
}