Werewolf流程分析
werewolf大致流程
首先是房主创建房间,创建成功以后房主开启web socket连接。
其他成员加入房间,加入房间后新成员和老成员的游戏玩家列表都会更新,然后新成员也要开启web socket连接。
然后,应该有一个房主锁定房间\解锁房间的按钮,效果是不允许再有新玩家加入房间。
然后,所有人的界面跳到选择座位,每个人选择以后服务器会返回是否选择成功。
房主默认是1号座位,所有人都选择成功以后,房主点击进入游戏设置界面,但是这里好像其他人需要点击下一步才可以(最好改成房主设置好以后所有人都直接跳到查看手牌的页面)。
房主设置好以后,点击下一步,所有人进入查看手牌页面。然后房主点击开始游戏,所有人进入游戏页面。游戏页面中应有语音和文字提示指示玩家操作。
游戏内流程
编号 | 状态内容 |
---|---|
1 | 游戏结束 |
2 | 等待玩家 |
3 | 房间锁定 |
4 | 角色设置 |
5 | 丘比特指定情侣 |
6 | 情侣互认 |
7 | 守卫守人 |
8 | 狼人杀人 |
9 | 女巫救人 |
10 | 预言家验人 |
11 | 玩家参与警长竞选 |
12 | 参选玩家发言 |
13 | 未参选玩家投票 |
14 | 白天发言 |
15 | 白天投票 |
16 | 猎人发动技能 |
17 | 遗言阶段 |
注意:
- 女巫、守卫、预言家等即使死亡,也要进入相应的状态,播放语音,自动跳转到下一个状态。
- 下一步的人数,根据房间状态判断,这个不知道写好没。
还有之前的遗留问题:
-
守卫接口未定义 守卫状态结束时需要将守卫守的人发过来
-
交警徽做成实时的,并且做成卡片写在tabview里
-
角色存活状态里将list改为role 有三种选择:guard wolf witch
-
丘比特选择完情侣将情侣信息实时发送给每个玩家,情侣不论什么阶段,一个人死了,另外一个人也会死(除了情侣一个人被狼人杀死,但是之后被女巫救活,这时两个人都不会死)
PS:不过这里情侣死了的话,你只要给我发死了的那个人的id就好,另外一个人我在本地自己判断他是不是死了,这样比较好保存数据
-
投票区分一下警长投票和白天投票
其中:
- 警长投票得票最多的人当选警长 警长的权利是在白天投票时一票顶两票
- 白天投票得票最多的人会死亡(如果死的是情侣,他的另一半也会死亡)