轮stream使用socket.io&node.js

我正在尝试做一个基于回合的游戏,但我无法弄清楚我做错了什么。

我似乎无法禁用特定用户的button,即当不是那些人转动时,他们不应该被允许做任何事情,在这种情况下禁用绘制和站立button。 我如何使这个回合基于其他客户端被禁用?

用我现在的代码,这些button从来不会被禁用,对于任何客户端来说,它们总是可以玩的而不是轮到他们。

服务器端

var express = require('express') var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); var users = []; var index = 0; io.on('connection', function(socket) { socket.on('add-user', function(data) { users = [{ 'name': data, 'socket': socket.id, 'total': 0, }]; }); socket.on('game-start', function () { if(users[index].socket === socket.id) { console.log(users[index].socket); console.log(socket.id); users[index].name.turn = true; socket.emit('enable-button'); socket.on('draw', function() { ... game logic here ... }); socket.on('stand-button', function() { // move to next player. if (!users[index+1] == null) { index += 1; console.log(index); } }); } }); socket.on('disconnect', function() { for(var i = 0; i < users.length; i++) { if(users[i].socket === socket.id) { io.emit('chat message', users[i].name + ' has rage quit!'); break; } } }); }); 

客户端

 $('#stand').click(function() { socket.emit('stand-button'); $('#draw').prop("disabled", true); $('#stand').prop("disabled", true); }); socket.on('enable-button', function() { $('#draw').prop("disabled", false); $('#stand').prop("disabled", false); });