# Pipe Rotate · 旋转管道

点击格子让管道顺时针旋转 90°，在 30 秒内把水从绿色起点引到红色终点。

## 启动方式
双击 `build/index.html` → 点击任意位置开始 → 旋转管道接通水路

## 怎么玩
1. 每关有一张管道网格（4×4 → 5×5 → 6×6 → 7×7）
2. **1.5 秒 GET READY** 倒计时，水流尚未开始（玩家可预先旋转）
3. 水流从绿色 **S 起点** 自动开始，速度 **1 格 / 0.5s**
4. 单击格子 → 管道顺时针旋转 90°（200ms 缓动动画）
5. **被水流过的格子不可再旋转**（彩底高亮提示）
6. 水流抵达红色 **E 终点** → 通关 → 自动进入下一关
7. 水流走到死路 / 30 秒倒计时归零 → 失败 → 可重试或重玩

## 5 种管道
| 类型 | 形状 | 开口数 | 有效旋转 |
|---|---|---:|---:|
| STRAIGHT 直管 | ─ │ | 2 对侧 | 2 |
| ELBOW 弯管 | └ ┘ ┐ ┌ | 2 相邻 | 4 |
| TEE 丁字 | ┬ ┤ ┴ ├ | 3 | 4 |
| CROSS 十字 | ┼ | 4 | 1（无意义） |
| TERMINAL 终端 | 起点/终点 | 1 | 固定（不可旋） |

## 操作
| 输入 | 行为 |
|---|---|
| 鼠标单击 / 触屏点击 | 旋转该格管道 90° CW |
| 水浸过的格子 | 锁定，无法旋转 |
| 起点 / 终点 | 固定方向，无法旋转 |

## 5 关设计
| 关 | 网格 | 主要新元素 | 最少旋转 |
|---:|---:|---|---:|
| 1 | 4×4 | 基础 L 形路径 | 6 |
| 2 | 5×5 | 蛇形长路径 | 10 |
| 3 | 5×5 | 引入 TEE 丁字分流 | 11 |
| 4 | 6×6 | 引入 CROSS 十字 | 12 |
| 5 | 7×7 | TEE + CROSS 复合大关 | 14 |

## 得分
- 通关基础 100 分
- + 剩余时间秒数 × 10 分
- 每关最少步数自动保存到 localStorage

## 调参
`CONFIG`：
- `FILL_TIME_MS`：每格充水时间（默认 500ms）
- `LEVEL_TIME_MS`：每关总时长（默认 30000ms）
- `GET_READY_MS`：每关准备时长（默认 1500ms）
- `ROTATE_ANIM_MS`：旋转动画时长（默认 220ms）

## 参考来源
- **Pipe Mania**（1989, LucasArts）—— 经典管道游戏品类鼻祖
- **Pipe Push Puzzle**（Steam）—— 现代 3D 重制
- TapTap 数字华容道（8.6）/ 推箱子（8.1）—— 网格解谜高分代表
- 泞之翼 2（9.3）—— 解谜品类高分潜力验证
