<<夜行動>> <<>> <<{Screenshot from 2018-08-02 23-30-23.png} *役職のあるプレイヤーのみ夜行動画面を表示 *ウルフずきんのみチャットの送受信が可能 (他の役職では入力・送信部分が非表示) <<>> *moji(job) **プレイヤーの役職に応じて文を表示 **赤ずきん、パンずきん、サイコずきんは待機画面(stay_night.html)へ移動 *yoru(btn) **ボタンが押されると確認ダイアログを表示 **サーバへプレイヤーの役職と押されたボタン番号を送信 **エスパーずきん、ゴーストずきんの場合は受信した情報をダイアログで表示 **待機画面へ移動 <<<夜行動 act_req (app.js)>>> 受信した役職とボタン番号に応じて動く *エスパーずきん、ゴーストずきんの場合 **押されたボタン番号に応じたプレイヤーの名前とウルフずきんかどうかを送信 *スーパーずきん、ウルフずきんの場合 **それぞれ違う番号が選ばれると、ウルフずきんの選んだプレイヤーが脱落 **同じ番号が選ばれると、そのプレイヤーは生存
    //夜行動
    socket.on("act_req", function(data){
	var j = data.act;
	var b = data.target;
	var uname, ujob;
	var x = live();
	for(var i = 0; i < numOfuser; i++){ 
	    if(user[i].work == 5 && user[i].lod == 0){
		knight++;
	    }
	}
	if(j == 3){ //エスパー
	    uname = user[b].name;
	    if(user[b].work == 7){
		ujob = "ウルフずきん";
	    }else{
		ujob = "あかずきん陣営";
	    }
	    io.to(socket.id).emit("esper", {uname: uname, ujob: ujob});
	}else if(j == 4){ //ゴースト
	    uname = user[b].name;
	    if(user[b].work == 7){
		ujob = "ウルフずきん";
	    }else{
		ujob = "あかずきん陣営";
	    }
	    io.to(socket.id).emit("ghost", {uname: uname, ujob: ujob});
	}else if(j == 5){ //スーパー
	    s = b;
	}else if(j == 7 && f == 0){ //ウルフ
	    w = b;
	    f++;
	}
	if(knight != 0){
	    if(s != 20 && w != 30){
		if(s != w){
	            user[w].lod = 2;
	            new_dead = user[w].name;
		    nx = x-1;
		}else{
		    nx = x;
		}
	    }
	}else{
	    if(w != 30){
	        user[w].lod = 2;
	        new_dead = user[w].name;
		nx = x-1;
	    }
	}
    });