forest-ice-fire-game:基于 HTML5 Canvas 的双人合作平台跳跃游戏项目

森林冰火人游戏

分支1Tags0
文件最后提交记录最后更新时间
15 天前
15 天前
15 天前
15 天前
15 天前

森林冰火人游戏 (Forest Ice Fire)

基于 HTML5 Canvas 的双人合作闯关平台跳跃游戏

🎮 游戏介绍

森林冰火人是一款经典的双人合作闯关游戏。玩家分别控制火男孩和冰女孩,利用各自的能力穿越障碍,收集宝石,最终到达各自的终点门。

🕹️ 操作方式

角色 移动 跳跃 特性
🔥 火男孩 A / D W 可穿过火池,碰到水会死
💧 冰女孩 ← / → ↑ 可穿过水池,碰到火会死
  • ☠️ 毒池:两人碰到都会死
  • 两人都到达各自终点门才算通关
  • 收集宝石获得更高评价

🎯 游戏特色

  • 3个关卡,难度递增:森林入口 → 冰火陷阱 → 森林神殿
  • 物理引擎:重力、跳跃、摩擦力、碰撞检测
  • 移动平台:需要时机配合的垂直移动平台
  • 粒子系统:火焰拖尾、水花效果、宝石收集特效
  • 森林主题:动态背景、树木装饰
  • 完整UI:开始菜单、关卡选择、通关祝贺、失败重试

🛠️ 技术栈

  • HTML5 Canvas 渲染
  • 原生 JavaScript(无任何依赖)
  • 面向对象设计(Player 类封装)
  • requestAnimationFrame 游戏循环

📂 文件结构

forest-ice-fire-game/
├── index.html    # 游戏入口页面
├── game.js       # 游戏核心逻辑
└── README.md     # 项目说明

🚀 运行方式

直接用浏览器打开 index.html 即可游玩,或启动本地服务器:

python3 -m http.server 8080
# 然后访问 http://localhost:8080

🎨 设计思路

角色设计

  • 火男孩:红色身体,头顶火焰动画,产生火焰粒子
  • 冰女孩:蓝色身体,头顶水滴动画,产生水花粒子
  • 角色有行走腿部动画和朝向变化

关卡设计

  • 第一关:基础平台跳跃,学习火水障碍机制
  • 第二关:引入毒池和移动平台,需要时机配合
  • 第三关:综合挑战,多层平台、多种障碍、双移动平台

物理系统

  • 重力加速度:0.55 px/frame²
  • 跳跃初速度:-12 px/frame
  • 移动速度:3.5 px/frame
  • 摩擦系数:0.8(地面减速)

📝 开发日志

详细的技术路线和心得分享请见 BLOG.md。

License

MIT