7.4 KiB
7.4 KiB
“打飞机”小程序App原型设计需求文档
1. 概述
本文档旨在为“打飞机”小程序的核心界面提供清晰的设计需求,主要面向UI/UX设计人员,用于指导原型设计。文档充分考虑了手机触摸屏的操作特性。核心界面包括“准备页面”和“打击页面”。
2. 核心页面设计需求
2.1 准备页面
页面目标: 玩家在此页面中通过触控操作完成飞机的布局,并确认进入“准备就绪”状态。
2.1.1 界面核心元素
-
游戏棋盘 (10x10 网格):
- 功能: 用于放置飞机的主要区域。
- 设计要求:
- 应为一个 10x10 的网格布局,每个格子大小一致,适合触控点击。
- 格子有清晰的边框。
- 触控反馈: 点击格子时,应有视觉反馈(如背景色瞬时变化或涟漪效果)。
- 坐标标识:在棋盘的上方和左侧应有坐标轴,上方为字母(A-J),左侧为数字(1-10)。
-
飞机状态与选择区:
- 功能: 展示可用的飞机,并允许玩家选择要操作的飞机。
- 设计要求:
- 提供三个按钮,分别代表“飞机1”、“飞机2”、“飞机3”。
- 当一架飞机被成功放置到棋盘上后,对应的按钮应变为“选中”或“已放置”状态(如改变颜色或样式)。
- 当玩家在棋盘上点击已放置的飞机时,此区域对应的飞机按钮也应同步显示为“当前选中”状态。
- 如果所有飞机都已放置,此区域的按钮都应处于“已放置”状态。
-
布局操作按钮组 (针对触控优化):
- 功能: 控制飞机的放置、移动和旋转。
- 设计要求:
- 方向控制: “上、下、左、右”四个方向按钮,用于在添加飞机前,预设飞机的机头朝向。此为第一种放置方式的辅助按钮。
- 移动控制: 提供四个方向箭头按钮(上、下、左、右),用于在棋盘上移动当前选中的飞机。
- 旋转控制: 提供一个旋转按钮,用于顺时针旋转当前选中的飞机。
- 删除按钮: 用于删除当前在棋盘上选中的飞机。
-
准备确认按钮组:
- 功能: 玩家完成布局后,进行最终确认。
- 设计要求:
- 完成按钮:
- 当棋盘上没有满3架飞机时,此按钮应为“禁用”状态。
- 当3架飞机都已放置好后,此按钮变为“可用”状态。
- 删除按钮: (此处有重复,建议整合)一个“清空”或“重置”按钮,用于一键清除所有已放置的飞机,方便重新布局。
- 完成按钮:
-
状态提示区:
- 功能: 向玩家反馈当前的游戏状态。
- 设计要求:
- 在页面底部或一个显著位置,显示文本信息,如“请放置三架飞机”、“已准备,等待对手中...”、“对手已准备就绪”。
2.1.2 交互流程
-
进入页面: 默认显示一个空的10x10棋盘。
-
放置飞机:
-
直接点击机身
- 玩家直接点击棋盘上的一个空白格子。
- 系统以此格为飞机的中心点(或机身的一部分),自动生成一架默认朝向(例如,机头朝上)的飞机。
- 如果空间不足以放置飞机,应给出提示(如格子闪烁红色或toast提示),且不放置飞机。
-
通用规则:
- 飞机成功放置后,“飞机x”按钮状态改变,表示一架飞机已被使用。
- 当3架飞机都放置完毕后,放置功能自动禁用。
-
-
选择与操作飞机:
- 单击棋盘上已放置的飞机,该飞机进入“选中”状态(如高亮或边框变化),此时可对它进行移动或旋转。
- 使用移动和旋转按钮调整“选中”飞机的位置和形态。
- 点击“删除”按钮,移除选中的飞机。
-
完成准备:
- 当3架飞机全部放置后,“完成”按钮激活。
- 玩家点击“完成”,布局操作按钮全部变为“禁用”状态,页面提示“已准备,等待对手中...”。
2.2 打击页面
页面目标: 玩家在此页面通过触控选择坐标进行攻击,并查看攻击结果。
2.2.1 界面核心元素
-
攻击棋盘 (10x10 网格):
- 功能: 展示对手的区域,供玩家选择打击坐标。
- 设计要求:
- 与准备页面的棋盘样式基本一致,带坐标轴,格子大小易于触控。
- 格子状态: 需要清晰地区分以下几种状态:
- 未打击: 默认状态。
- 待确认打击: 玩家点击格子后,在按下“打击”按钮前的状态(如背景变为“巧克力色”)。棋盘上同时只能有一个“待确认”的格子。
- 未命中: 打击后,服务器返回结果为“未命中”的状态(如显示一个“X”或特定图标)。
- 命中: 打击后,服务器返回结果为“命中”的状态(如格子变色,显示火焰等)。
- 击毁: 打击后,服务器返回结果为“击毁”的状态(如显示更强烈的击毁效果,并将该飞机的其余所有“命中”格子一同标记为“已击毁”)。
-
操作与状态区:
- 功能: 执行打击操作和显示信息。
- 设计要求:
- 打击按钮:
- 当玩家在棋盘上选择了一个“待确认打击”的格子后,此按钮变为“可用”状态。
- 点击后,按钮进入“加载中/打击中...”状态,直到服务器返回结果。
- 状态提示: 显示当前回合信息,如“轮到你攻击”、“等待对手攻击...”。
- 攻击结果反馈: 每次攻击后,应有弹窗或醒目提示,明确告知玩家“命中”、“未命中”或“击毁”。
- 打击按钮:
-
我方飞机布局参考图 (可选但建议):
- 功能: 在打击页面的一个角落或侧边,以缩略图形式展示玩家自己在准备阶段的飞机布局。
- 设计要求:
- 这是一个只读视图,不可交互。
- 当自己的飞机被对手击中时,此参考图上的对应位置也应同步更新状态。
2.2.2 交互流程
- 进入页面: 轮到玩家攻击时,进入此页面。显示一个干净的10x10攻击棋盘。
- 选择目标: 玩家在棋盘上点击一个目标格子,该格子变为“待确认打击”状态,“打击”按钮激活。如果玩家点击其他格子,则新的格子变为“待确认”,旧的格子恢复默认。
- 确认打击: 玩家点击“打击”按钮。
- 等待结果: 按钮禁用,棋盘暂时不可点击,等待服务器返回结果。
- 展示结果:
- 服务器返回结果后,棋盘上对应的格子根据结果(命中/未命中/击毁)更新其视觉状态。
- 弹出提示,告知玩家打击结果。
- 回合结束: 页面自动跳转到“等待页面”,或直接在当前页面显示“等待对手攻击...”的遮罩,直到下一回合开始。