# 俄罗斯方块(Tetris)
一个使用纯 HTML/CSS/JavaScript 实现的经典俄罗斯方块游戏,无需任何依赖,直接在浏览器中打开即可游玩。
## 快速开始
双击 tetris.html 文件,在浏览器中打开即可开始游戏。
## 游戏截图
┌──────────────────────┐ ┌─────────────┐
│ │ │ 下一个方块 │
│ │ │ ┌───┐ │
│ │ │ │ ■ │ │
│ │ │ └───┘ │
│ ■■ │ ├─────────────┤
│ ■ │ │ 得分 │
│ ■ │ │ 1200 │
│ │ ├─────────────┤
│ │ │ 等级 │
│ │ │ 3 │
│ │ ├─────────────┤
│ │ │ 消除行数 │
│ │ │ 25 │
│ │ ├─────────────┤
│ │ │ [暂停] │
│ │ ├─────────────┤
│ │ │ 操作说明 │
└──────────────────────┘ └─────────────┘## 操作方式
| 按键 | 功能 |
|------|------|
| ← → | 左右移动方块 |
| ↑ | 旋转方块 |
| ↓ | 加速下落(每下落一格 +1 分) |
| 空格 | 直接落底(Hard Drop) |
| P | 暂停 / 继续游戏 |
## 游戏规则
### 基本玩法
- 方块从棋盘顶部下落,玩家通过移动和旋转将方块排列在底部
- 当一行被完全填满时,该行会被消除,上方所有行向下移动
- 方块堆叠到顶部时,游戏结束
### 七种方块
| 名称 | 形状 | 颜色 |
|------|------|------|
| I | ■■■■ | 青色 |
| O | ■■ / ■■ | 蓝色 |
| T | ■ / ■■■ | 橙色 |
| S | ■■ / ■■ | 黄色 |
| Z | ■■ / ■■ | 绿色 |
| J | ■ / ■■■ | 紫色 |
| L | ■ / ■■■ | 红色 |
### 计分规则
| 消除行数 | 得分 |
|----------|------|
| 1 行(Single) | 100 × 等级 |
| 2 行(Double) | 300 × 等级 |
| 3 行(Triple) | 500 × 等级 |
| 4 行(Tetris) | 800 × 等级 |
### 等级系统
- 每消除 10 行,等级提升 1 级
- 等级越高,方块下落速度越快
- 初始下落间隔:800ms
- 每升一级减少 70ms,最快为 50ms
## 技术特性
- 幽灵方块:半透明预览显示方块将落到的位置
- 踢墙修正:旋转时自动尝试左右偏移,避免因贴墙而无法旋转
- 下一个方块预览:右侧面板实时显示即将出现的方块
- 暂停功能:随时暂停游戏,保持当前状态
- 游戏结束遮罩:游戏结束时显示最终得分,一键重新开始
## 技术栈
- HTML5 Canvas 渲染
- 原生 JavaScript(ES6+)
- CSS3 动画与渐变
- 无任何第三方依赖
## 文件结构
test/
├── tetris.html # 游戏主文件(包含 HTML/CSS/JS)
└── README.md # 项目说明文件## 浏览器兼容性
支持所有现代浏览器(Chrome、Firefox、Edge、Safari)。
看了又看
验证报告

目前该文件尚无匹配的数据质量验证程序。我们将在后续版本中提供相应的验证支持,敬请谅解。





