examples updated to work with 1.6.1

This commit is contained in:
Xabier de Zuazo 2013-07-09 08:11:09 +02:00
parent a4ba03d6a2
commit 8e02b4f0b0
3 changed files with 35 additions and 16 deletions

View file

@ -4,13 +4,14 @@ var client = mc.createClient({
password: process.env.MC_PASSWORD, password: process.env.MC_PASSWORD,
}); });
client.on('connect', function() { client.on('connect', function() {
console.info("connected"); console.info('connected');
}); });
client.on(0x03, function(packet) { client.on(0x03, function(packet) {
var match = packet.message.match(/^<(.+?)> (.*)$/); var jsonMsg = JSON.parse(packet.message);
if (! match) return; if (jsonMsg.translate == 'chat.type.announcement' || jsonMsg.translate == 'chat.type.text') {
var username = match[1]; var username = jsonMsg.using[0];
var msg = match[2]; var msg = jsonMsg.using[1];
if (username === client.username) return; if (username === client.username) return;
client.write(0x03, {message: msg}); client.write(0x03, {message: msg});
}
}); });

View file

@ -42,23 +42,34 @@ server.on('login', function(client) {
client.on(0x03, function(data) { client.on(0x03, function(data) {
var message = '<'+client.username+'>' + ' ' + data.message; var message = '<'+client.username+'>' + ' ' + data.message;
broadcast(message); broadcast(message, client, client.username);
console.log(message); console.log(message);
}); });
}); });
server.on('error', function(error) { server.on('error', function(error) {
console.log('Error:', error); console.log('Error:', error);
}); });
server.on('listening', function() { server.on('listening', function() {
console.log('Server listening on port', server.socketServer.address().port); console.log('Server listening on port', server.socketServer.address().port);
}); });
function broadcast(message, exclude) { function broadcast(message, exclude, username) {
var client; var client, translate, username;
translate = username ? 'chat.type.announcement' : 'chat.type.text';
username = username || 'Server';
for (var clientId in server.clients) { for (var clientId in server.clients) {
client = server.clients[clientId]; client = server.clients[clientId];
if (client !== exclude) client.write(0x03, { message: message }); if (client !== exclude) {
var msg = {
translate: translate,
using: [
username,
'Hello, world!'
]
};
client.write(0x03, { message: JSON.stringify(msg) });
}
} }
} }

View file

@ -33,13 +33,20 @@ server.on('login', function(client) {
onGround: true onGround: true
}); });
client.write(0x03, { message: 'Hello, world!' }); var msg = {
translate: 'chat.type.announcement',
using: [
'Server',
'Hello, world!'
]
};
client.write(0x03, { message: JSON.stringify(msg) });
}); });
server.on('error', function(error) { server.on('error', function(error) {
console.log('Error:', error); console.log('Error:', error);
}); });
server.on('listening', function() { server.on('listening', function() {
console.log('Server listening on port', server.socketServer.address().port); console.log('Server listening on port', server.socketServer.address().port);
}); });