# towerDefence **Repository Path**: putaoZT/tower-defence ## Basic Information - **Project Name**: towerDefence - **Description**: 塔防游戏 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-03-24 - **Last Updated**: 2026-03-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Pixel Defense - 像素塔防游戏
![Pixel Defense](https://img.shields.io/badge/version-1.0.0-blue.svg) ![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue.svg) ![Vite](https://img.shields.io/badge/Vite-5.x-646CFF.svg) ![License](https://img.shields.io/badge/license-MIT-green.svg) 一款基于浏览器的像素风格塔防游戏,使用纯前端技术实现,支持 PWA 离线运行。 [在线演示](#) | [文档](./doc-cc/README.md) | [开发计划](./doc-cc/06-开发计划.md)
## 📸 游戏截图
### 主菜单 ![主菜单](./docs/images/td-fp.png) ### 关卡选择 ![关卡选择](./docs/images/td-level.png) ### 战斗界面 ![战斗界面](./docs/images/td1.png)
## 🎮 游戏特性 ### 核心玩法 - **6种防御塔**:弓箭塔、魔法塔、炮塔、冰霜塔、电击塔、毒素塔 - **9种敌人类型**:小兵、快速兵、重甲兵、魔抗兵、飞行兵、自爆兵、召唤师、BOSS、精英BOSS - **10个精心设计的关卡**:逐步解锁,难度递增 - **塔升级系统**:每种塔可升级至5级,获得更强能力和特效 - **技能系统**:5种主动技能(陨石、火焰风暴、冰冻、加速、护盾) ### 扩展功能 - **30+成就系统**:进度、战斗、建造、隐藏成就 - **每日挑战**:5种挑战类型,每日刷新 - **无尽模式**:无限波次生存挑战 - **本地存档**:IndexedDB + localStorage 自动保存 ### 技术特点 - 🎨 复古像素美术风格 - ⚡ 60 FPS 流畅运行 - 💾 PWA 支持,可离线运行 - 📱 响应式设计,支持桌面和移动端 ## 🚀 快速开始 ### 环境要求 - Node.js 18+ - npm 或 yarn ### 安装依赖 ```bash npm install ``` ### 开发模式 ```bash npm run dev ``` 访问 http://localhost:3000 ### 构建生产版本 ```bash npm run build ``` 构建产物位于 `dist/` 目录。 ## 📁 项目结构 ``` towerDefense/ ├── src/ │ ├── assets/ # 静态资源 │ │ ├── sprites/ # 精灵图 │ │ ├── audio/ # 音效 │ │ └── fonts/ # 字体 │ ├── config/ # 配置文件 │ │ ├── towers.json # 塔配置 │ │ ├── enemies.json # 敌人配置 │ │ ├── skills.json # 技能配置 │ │ ├── levels.json # 关卡配置 │ │ └── achievements.json # 成就配置 │ ├── core/ # 核心引擎 │ │ ├── Game.ts # 游戏主类 │ │ ├── Scene.ts # 场景管理 │ │ ├── Renderer.ts # 渲染器 │ │ ├── Input.ts # 输入处理 │ │ ├── Audio.ts # 音频管理 │ │ └── Timer.ts # 时间管理 │ ├── entities/ # 游戏实体 │ │ ├── Tower.ts # 塔基类 │ │ ├── towers/ # 具体塔实现 │ │ ├── Enemy.ts # 敌人基类 │ │ ├── enemies/ # 具体敌人实现 │ │ ├── Projectile.ts # 弹射物 │ │ └── Effect.ts # 特效 │ ├── systems/ # 游戏系统 │ │ ├── WaveSystem.ts # 波次系统 │ │ ├── EconomySystem.ts # 经济系统 │ │ ├── CombatSystem.ts # 战斗系统 │ │ ├── PathSystem.ts # 路径系统 │ │ └── SkillSystem.ts # 技能系统 │ ├── ui/ # UI组件 │ │ ├── HUD.ts # 战斗UI │ │ ├── Menu.ts # 菜单 │ │ └── Dialog.ts # 对话框 │ ├── managers/ # 管理器 │ │ ├── SaveManager.ts # 存档管理 │ │ └── AudioManager.ts # 音频管理 │ └── main.ts # 入口文件 ├── public/ # 公共资源 ├── doc-cc/ # 设计文档 ├── package.json ├── tsconfig.json └── vite.config.ts ``` ## 🎯 游戏玩法 ### 防御塔介绍 | 塔类型 | 特点 | 适合目标 | |--------|------|----------| | 🏹 弓箭塔 | 高攻速,可穿透 | 通用输出 | | 🔮 魔法塔 | 高伤破甲,溅射 | 重甲敌人 | | 💣 炮塔 | AOE伤害,击退 | 密集怪群 | | ❄️ 冰霜塔 | 减速控制 | 控场辅助 | | ⚡ 电击塔 | 连锁伤害 | 多目标 | | ☠️ 毒素塔 | 持续伤害 | 高血量敌人 | ### 敌人类型 | 敌人 | 特点 | 应对策略 | |------|------|----------| | 👹 小兵 | 基础单位 | 任意塔 | | 🏃 快速兵 | 高移速 | 冰霜塔 | | 🛡️ 重甲兵 | 高护甲 | 魔法塔 | | 🧙 魔抗兵 | 高魔抗 | 弓箭塔 | | 🦅 飞行兵 | 空中单位 | 弓箭/魔法塔 | | 💥 自爆兵 | 死亡爆炸 | 远程塔 | | 🧙‍♂️ 召唤师 | 召唤小怪 | 优先击杀 | | 👿 BOSS | 超高血量 | 集火输出 | ### 操作方式 - **鼠标左键**:选择/确认 - **ESC**:暂停游戏 - **1x/2x/3x**:调整游戏速度 ## 🛠️ 开发命令 ```bash # 开发 npm run dev # 构建 npm run build # 预览构建产物 npm run preview # 代码检查 npm run lint # 代码格式化 npm run format ``` ## 📊 开发进度 - [x] P0: 项目初始化 - [x] P1: 核心引擎 - [x] P2: 实体系统 - [x] P3: 游戏系统 - [ ] P4: UI系统 - [ ] P5: 内容填充 - [ ] P6: 扩展功能 - [ ] P7: 优化发布 ## 📄 许可证 MIT License ## 🙏 致谢 - 使用 [Vite](https://vitejs.dev/) 构建 - 使用 [TypeScript](https://www.typescriptlang.org/) 开发 - 像素素材来源于开源资源 ---
Made with ❤️ by Claude Code