【新春创造营】超级金牌大厨,我会做菜!

# :man_cook: 项目文档:春节金牌大厨 (Spring Festival Master Chef)

## 1. 项目简介

这是一个基于 Web 技术的互动模拟烹饪小游戏。旨在通过游戏化的方式,让用户体验中国春节传统美食(水饺、红烧肉、清蒸鱼、全家福汤)的制作过程。摆脱了枯燥的食谱阅读,用户必须亲自控制火候、添加调料,增加了趣味性和参与感。

## 2. 核心功能

### 2.1 游戏化场景

* **选菜大厅**:展示四道经典年夜饭菜品,包含难度星级和完成状态标记。

* **沉浸式厨房**:模拟真实的灶台环境,包含锅具动画、操作按钮区和状态提示栏。

### 2.2 核心玩法机制 (状态机)

每一道菜都被拆解为严格的步骤序列。用户必须按照正确的逻辑顺序点击操作按钮,否则会导致烹饪失败。

* **示例逻辑(水饺)**:烧水 → 水开下饺子 → 沸腾点凉水 → 熟透捞出 → 装盘。

* **示例逻辑(红烧肉)**:倒油 → 下肉煸炒 → 调色调味 → 加水慢炖 → 大火收汁。

### 2.3 视觉与反馈

* **动态 Emoji**:使用 Emoji 组合(如 `:dumpling::sweat_droplets:`)模拟食物在锅中的状态变化。

* **CSS 动画**:

\*   \`shake\`:模拟炒菜时的颠锅动作。

\*   \`floatUp\`:模拟操作时的特效图标上浮。

* **结果判定**:

\*   \*\*成功\*\*:解锁菜品成就,点亮星星。

\*   \*\*失败\*\*:弹出趣味性的失败原因(如“锅糊了”),并给出正确提示。

## 3. 技术实现细节

### 3.1 技术栈

* **HTML5**:构建语义化结构。

* **CSS3**:使用 Flexbox/Grid 布局,CSS Variables 管理主题色,Keyframes 实现物理动画。

* **Vanilla JavaScript (ES6+)**:无第三方库依赖,使用原生 JS 处理游戏逻辑。

### 3.2 关键代码结构

* **数据结构 (`recipes` 对象)**:存储所有菜品的名称、步骤文字、正确操作指令 (`valid`) 和失败提示 (`hint`)。

* **场景切换**:通过添加/移除 DOM 元素的 class (`.active`) 来实现单页应用 (SPA) 的流畅切换。

* **事件处理**:统一的 `handleAction(action)` 函数,对比用户输入与当前步骤的预设指令。

## 4. 交互亮点

1. **容错机制**:并非单纯的点击游戏,具有一定的策略性(如需要判断什么时候改小火)。

2. **成就系统**:顶部的计分板 (`已解锁名菜: x/4`) 激励用户完成所有挑战。

3. **即时反馈**:点击任何按钮都有视觉(图标上浮)和逻辑(进度条推进)的双重反馈。

-–

*版本号:v2.0_Interactive*

*开发者:AI Web Expert*

@10008873411 快来快来!马上要截止了,刚好上车!

这个好玩啊!看私信哦