zoukankan      html  css  js  c++  java
  • 狼人杀

    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遗言)
  • 相关阅读:
    创建百度地图实例
    IntelliJ IDEA使用(1)——IDEA配置JDK
    IntelliJ IDEA使用(2)——IDEA配置Tomcat
    怎样使用 GitHub?
    IntelliJ IDEA使用(3)——IDEA连接Git
    AS3.0杂记——Dictionary、Object与Array
    AIR文件操作:使用文件对象操作文件和目录 .
    As3.0 TextField
    关于乘机
    Html 嵌入 swf
  • 原文地址:https://www.cnblogs.com/Zhangqwr/p/8631802.html
Copyright © 2011-2022 走看看