# Tetris Game 构建系统

这是一个统一的构建系统，支持 Windows、macOS 和 Linux 平台的应用打包，所有分发文件统一存放在 `dist/` 目录中。

## 🚀 快速开始

### 构建所有平台
```bash
make all
```

### 构建特定平台
```bash
make windows    # 构建 Windows 版本
make macos      # 构建 macOS 版本  
make linux      # 构建 Linux 版本
```

### 查看帮助
```bash
make help
```

## 📁 目录结构

构建完成后，`dist/` 目录结构如下：

```
dist/
├── TetrisGame-Windows-v1.0.zip     # Windows 分发包
├── TetrisGame-macOS-v1.0.dmg       # macOS 分发包
├── TetrisGame-Linux-v1.0.tar.gz    # Linux 分发包
├── windows/                        # Windows 构建临时目录
├── macos/                          # macOS 构建临时目录
└── linux/                          # Linux 构建临时目录
```

## 🛠️ 可用命令

### 基础命令
- `make help` - 显示帮助信息
- `make info` - 显示构建信息
- `make check-env` - 检查构建环境
- `make clean` - 清理所有构建文件

### 构建命令
- `make windows` - 构建 Windows 版本
- `make macos` - 构建 macOS 版本
- `make linux` - 构建 Linux 版本
- `make all` - 构建所有平台版本

### 验证命令
- `make verify` - 验证构建结果
- `make run` - 运行游戏（开发模式）
- `make test` - 运行测试

### 依赖管理
- `make deps` - 下载依赖

### 迁移命令
- `make migrate` - 迁移旧版本文件到 dist 目录

## 📦 分发包内容

### Windows 版本 (TetrisGame-Windows-v1.0.zip)
```
TetrisGame-Windows-v1.0/
├── TetrisGame.exe          # 主程序
├── 启动游戏.bat            # 中文启动脚本
├── README.txt              # 英文说明
├── 安装说明.txt            # 中文说明
└── assets/                 # 资源文件
    └── fonts/              # 字体文件
        ├── HYSongYunLangHeiW-1.ttf
        └── README.md
```

### macOS 版本 (TetrisGame-macOS-v1.0.dmg)
- 包含完整的 TetrisGame.app 应用包
- 支持拖拽到 Applications 文件夹安装
- 包含应用图标和中文显示名称

### Linux 版本 (TetrisGame-Linux-v1.0.tar.gz)
```
TetrisGame-Linux-v1.0/
├── tetris                  # 主程序
├── start_game.sh           # 启动脚本
├── README.txt              # 说明文档
└── assets/                 # 资源文件
    └── fonts/              # 字体文件
```

## 🔧 系统要求

### 构建环境
- Go 1.19 或更高版本
- macOS (用于构建 macOS 版本的 DMG)
- zip 命令 (用于创建 Windows 压缩包)
- tar 命令 (用于创建 Linux 压缩包)

### 运行环境
- **Windows**: Windows 10/11 (64-bit)
- **macOS**: macOS 10.15 或更高版本
- **Linux**: 64-bit Linux 发行版，支持 X11 或 Wayland

## 🎮 游戏控制

- **←→** 方向键：左右移动方块
- **↑** 方向键：旋转方块
- **↓** 方向键：快速下降
- **空格键**：瞬间下降到底部
- **L 键**：切换中英文界面
- **R 键**：游戏结束后重新开始

## 🌍 多语言支持

游戏支持中英文双语界面，按 L 键可以实时切换语言。

## 📝 版本信息

- **版本**: v1.0
- **构建时间**: 自动生成
- **Git 提交**: 自动检测

## 🔍 故障排除

### 构建失败
1. 检查 Go 环境：`go version`
2. 检查依赖：`make deps`
3. 清理重建：`make clean && make all`

### 字体问题
- 确保 `assets/fonts/` 目录存在
- 确保字体文件 `HYSongYunLangHeiW-1.ttf` 存在

### macOS DMG 创建失败
- 确保在 macOS 系统上运行
- 确保有足够的磁盘空间
- 检查 hdiutil 命令是否可用

## 📄 许可证

© 2025 Tetris Game. All rights reserved. 