发表于: 2017-06-22 02:03:24
1 870
今天主要做的还是任务4的部分
1. 玩家被杀死的两个方式,一个是投票杀死,一个是杀手杀死,体现在解密页面里
if (playerStatus[i].day == day) {
if (playerStatus[i].status == "dead") {
$(".container").append(
playerStatus[i].num + "号玩家被杀死了,真实身份是" + playerStatus[i].identity
);
$(".date").append(playerStatus[i].day);
}
if (playerStatus[i].status == "voted") {
$(".container").append(
playerStatus[i].num + "号玩家被投票杀死了,真实身份是" + playerStatus[i].identity
);
$(".date").append(playerStatus[i].day);
}
}
针对这个情况完善了两个if判断方式,被杀手杀死的就是dead,被投票杀死的就是voted,day天数加一
2. 最终比对死去玩家数量,平民玩家数量和杀手玩家数量判断胜负
var killer = 0;
var folk = 0;
var victim = 0;
定义初始值为0
for (var a=0; a<playerStatus.length; a++) {
if (playerStatus[a].status == "dead" || playerStatus[a].status == "voted" ) {
victim++;
}
if (status == "alive") {
if (playerStatus[a].identity == "平民") {
folk++;
} else {
killer++;
}
}
}
判断玩家身份计算这三类玩家数量并用sessionstorage存储
3. 用杀人页面同样的思路写了投票页面的js文件
var suspect;
定义被投票杀掉的人,因为直接调用sessionstorage的内容,不必额外添加属性
if (suspect != undefined) {
cards[suspect].style.background = "#fbb435";
playerStatus[suspect].status = "alive";
}
$(this).css("backgroundColor","#ff0000");
suspect = this.index;
playerStatus[this.index].status = "voted";
console.log(playerStatus);
}
运用this.index确定投票杀掉的玩家编号
遇到的问题
1. 投票页面,已经死掉的人不能再投
// if (playerStatus[b].status == "dead" || (playerStatus[b].status == "voted") {
// playerStatus[b].style.background = "#c0c0c0";
// playerStatus[b].style.cursor = "not-allowed";
// }
或运算直接出了bug,完全用不了,明天仔细理一下这里的逻辑
2. console了一下存储,发现从投票页面跳转之后天数就错了,要重新改一下天数计算
明天计划继续任务4
评论