# 狼人杀投票工具 **Repository Path**: uniyoungchen/werewolf-kill-voting-tool ## Basic Information - **Project Name**: 狼人杀投票工具 - **Description**: 本工具为俱乐部活动与技术学习交流专用,欢迎各位大佬指导优化意见。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: prod - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2022-02-21 - **Last Updated**: 2025-03-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## :wolf:基于 uniapp 、vue2的狼人杀投票助手工具(适配移动端H5、小程序) 本工具为俱乐部活动与技术学习交流专用,欢迎各位大佬指导优化意见。 #### :m:整体开发进度 90% - [x] 游戏列表页 - [x] 首页主视图 - [x] 登录页 - [x] 进入游戏-玩家 - [x] 选择座位-玩家 - [x] 进行中游戏投票-玩家 - [x] 结束游戏复盘-玩家 - [x] 创建游戏-主持人 - [x] 分配座位-主持人 - [x] 玩家行为录入-主持人 - [ ] 页面跳转鉴权 - [x] 字体格式优化 - [ ] 接口调试 #### :open_file_folder:技术栈 - ***Uniapp移动端基础框架*** - ***Uni-ui原生扩展组件*** - ***Vue2.js+VueX状态管理*** - **Sass** #### :mag_right:后端接口 https://gitee.com/ApprenticeKyle/sagittarius #### :game_die:存储的数据(枚举值) 玩家信息:name,id,logo 角色阵营:human, third_part, werewolf 角色身份:bc, cupid, guarder, hunter, seer, villager, werewolf, white_wolf_king, witch, wolf_beauty, wolf_king 角色职能:priesthood, villager, werewolf 游戏过程中的玩家-角色信息-角色状态:alive, ghost, init, out 游戏流程:day_1, day_10, day_2, day_3, day_4, day_5, day_6, day_7, day_8, day_9, first_night, night_1, night_10, night_2, night_3, night_4, night_5, night_6, night_7, night_8, night_9, police_election, police_election_bak 投票状态:not_need_vote, not_start, vote_finish, votin 玩家行为:campaign_police, cupid_combine, exile_vote, exit_campaign_police, guarder_guard, hunter_shoot, mvp_vote, police_call_exile, police_move, police_vote, seer_check, svp_vote, werewolf_attack, werewolf_boom, white_wolf_king_shoot, witch_poison, witch_rescue, wolf_beauty_charm 游戏结局:all_priesthood_out, all_villager_out, all_werewolf_out, red_absolute_advantage, unknown #### 功能模块介绍 ###### **注册登录** ###### **新建游戏、游戏配置(主持人)** ###### 玩家座位和状态管理 ###### 玩家身份信息管理 ###### **加入游戏(玩家)** ###### 座位选择 ###### 角色信息录入 ###### **游戏进度管理(主持人)** ###### 游戏进度控制 ###### 玩家角色行为管理 ###### 开启投票 ###### **游戏投票(玩家)** ###### 选择其他玩家投票 #### 项目难点 - uniapp项目(学习部分新语法、部分语法不兼容) - OAuth微信登录接口授权 - 后端回传数据基本为英文,需要数据处理展示为对应中文(这里应该是在调接口的方法中直接处理数据翻译后放到state) - 游戏状态管理与用户角色权限划分,回合切换轮转与投票判断 - 未登录用户不能开展投票 new stage ~ 首夜:录入行为~ end night~new stage 第一天:警长竞选投票~new stage 第一晚:录入行为~ end night new stage 第二天:投票~new stage 第二晚:录入行为~ end night new stage 第三天:投票~new stage 第三晚:录入行为~ end night new stage 第四天:狼人自爆(状态为无需投票)~new stage 第四晚:录入行为~ end night new stage #### **后续迭代更新计划** - 重构优化项目代码,减少渲染性能消耗 - 接收参数后封装英文转中文方法,优化数据处理逻辑 - 使用VantUI或Uview组件库美化整体界面风格(换肤) - 完善个人中心页面功能 - 玩家可自行添加对方身份标记,方便在游戏中进行判断 #### 项目**主视觉** image-20220221021052164