Files
feifei/开发文档-第2关.md
2026-10-13 20:40:09 +08:00

90 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 第 2 关开发文档:1-2 右手基准键 JKL;
对应规划:`分关难度规划.md` → 第 1 章 · 基准键入门 → **1-2**。
完全复用第 1 关引擎、页面、判定、音效与进度存储。**只改键位与文案。**
细则见 `开发文档-第1关.md`,本文只写差异。
---
## 1. 与 1-1 的差异
| 项 | 1-1 | 1-2 |
|----|-----|-----|
| 字符集 | `a s d f` | `j k l ;` |
| 手 | 左手 | 右手 |
| 键盘启用键 | ASDF | JKL; |
| 通关后解锁 | 1-2 | 1-3 |
其余全部相同:40 键、连续同一字符不超过 3 次、打错不前进、Backspace 无效、正确率 ≥ 90%(最多错 4 次)、不卡速度、强制显示键盘、卡通配色、打对/打错音效、`localStorage` 键名 `typing-progress-v1`。
---
## 2. 指法映射
与左手镜像,同色表示同一根手指类型:
| 键 | 手指 | 颜色(与 1-1 对应) |
|----|------|---------------------|
| `J` | 右手食指 | 蓝(同 F) |
| `K` | 右手中指 | 绿(同 D) |
| `L` | 右手无名指 | 黄(同 S) |
| `;` | 右手小指 | 橙(同 A) |
---
## 3. 关卡配置
```js
{
id: "1-2",
chapter: 1,
title: "右手基准键 JKL;",
charset: ["j", "k", "l", ";"],
length: 40,
allowSpace: false,
caseSensitive: true,
passAccuracy: 0.90,
passKpm: null,
unlockNext: "1-3",
showKeyboard: true,
generate: "random-from-charset",
playable: true
}
```
`;` 使用 `event.key === ";"`。Shift 产生的 `:` 视为错误。
---
## 4. 文案
| 位置 | 文案 |
|------|------|
| 选关卡片标题 | 1-2 右手基准键 |
| 选关卡片副标 | 只打 J K L ;,正确率 90% 即可通关 |
| 练习顶栏 | 第 2 关 · 右手基准键 JKL; |
| 指法提示 | 食指放 J,小指放分号。请看着屏幕,不要看键盘。 |
| 键盘下方 | 右手:食指 J · 中指 K · 无名指 L · 小指 ; |
| 通关 | 通关!右手基准键已经记住了。 |
| 未通关 | 再练一次。先求正确,再求速度。 |
| 解锁提示 | 已解锁 1-3 左右交替 |
---
## 5. 解锁
- 通关 1-1 后 1-2 可进入(已有逻辑)
- 通关 1-2 后写入 `unlocked: 1-3`;1-3 本关仍不实现玩法,仅解锁外观
- 重打失败不锁回
---
## 6. 验收(相对 1-1 增量)
- [ ] 题目仅含 `j k l ;`,长度 40
- [ ] 键盘仅 JKL; 高亮可用,其余禁用
- [ ] 通关 1-1 后可点进 1-2
- [ ] 正确率 ≥ 90% 通关并解锁 1-3
- [ ] 判定、音效、结算与 1-1 一致