狼人杀

1,最近在做狼人杀的项目,用的是node.js 加 websocket 通讯。

下面给大家分享一段代码。 //简单的一个心跳包。

var reconn = setTimeout(function () {//收到消息后开始发送pingValue

  // console.log("pingValue", roomInfo.pingValue, roomInfo.pingRetValue);
  if (roomInfo.pingValue == roomInfo.pingRetValue) {
    roomInfo.pingValue = roomInfo.pingRetValue + 1
    data.ping = new cmd.PingCmd(roomInfo.pingValue);
//      console.log(roomInfo.pingValue)
    ws.send(JSON.stringify(data.ping));
  } else {
    var newWs = new WebSocket(url);
    newWs.onopen = ws.onopen;
    newWs.onmessage = ws.onmessage;
    ws = newWs;
    console.log("ws conne")
  }
  setTimeout(arguments.callee, 3000);
}, 3000);

为什么要写心跳包,因为再链接服务器的时候,会一直加载"ws conne"。与服务器断开,通讯失败。所以控制再3秒内

游戏规划:两个主要阵营是:好人 VS 狼人;
好人包含神职(预言家,女巫,猎人,守卫等)和村民;
输赢采用屠边规则,好人杀掉所有狼人算赢,狼人杀掉所有村民或者所有神职算胜利;
其他诸如神职的技能等都大同小异,随处可以了解到。

在这里我不想说太多的话了,还有bug还要改 (

显示 :守卫守  【5】护玩家  ,狼人杀死【5】号玩家   。 【5】号玩家没死

显示 :昨晚被杀害的玩家是。    玩家发表遗言。然而5号玩家并没有死,发表JB遗言)
原文地址:https://www.cnblogs.com/Zhangqwr/p/8631802.html