html5围棋,五子棋(围棋) canvas node html5 js

client端

msg

服务器端

var io = require('socket.io')(10000);

var ROOM_LIST = {};

io.on('disconnect', function (socket) {

console.info('disconnect');

});

io.on('connection', function (socket) {

socket.on("login", function (data, callback) {

console.info('login:' + data);

var room = data.room;

var name = data.name;

console.info('1:' + room + '--' + name);

if (room == '' || name == '') {

callback({

code : -3,

msg : 'error'

});

}

var obj = {

socket : socket,

name : data.name,

lastLogin : new Date().getTime()

};

if (!ROOM_LIST[room]) {

ROOM_LIST[room] = {};

}

var roomSize = ROOM_LIST[room].size || 0;

if (roomSize == 2) {

callback({

code : -1,

msg : 'Room Full'

});

return;

}

if (roomSize == 0) {

ROOM_LIST[room].users = {};

ROOM_LIST[room].one = obj;

callback({

code : -2,

msg : 'Waiting for another user'

});

}

if (roomSize == 1) {

ROOM_LIST[room].two = obj;

ROOM_LIST[room].one.socket.emit('status', {

room : room,

status : 1,

toUser : name,

msg : "Begin -- It's your turn"

});

ROOM_LIST[room].two.socket.emit('status', {

room : room,

status : 2,

toUser : ROOM_LIST[room].one.name,

msg : 'Begin -- Wait Opponent'

});

}

ROOM_LIST[room].size = ++roomSize;

ROOM_LIST[room].users[name] = obj;

});

socket.on("private", function (data, callback) {

console.info(data);

var room = data.room;

var fromUser = data.fromUser;

var toUser = data.toUser;

if (ROOM_LIST[room] && ROOM_LIST[room].users && ROOM_LIST[room].users[toUser]) {

ROOM_LIST[room].users[toUser].socket.emit('private', {

room : room,

fromUser : fromUser,

toUser : toUser,

x : data.x,

y : data.y,

color : data.color

});

callback({});

} else {

callback({});

}

});

console.info('Server Start Success!');

});

下载地址   http://download.csdn.net/detail/rgbaflf/9435669

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值