🎮 游戏开发1 第 7 关

击败目标 ⚔️

Defeat Goal

👾 任务简报:
勇士,挡路的人太多了!在这一关,你需要告诉游戏系统:“除非打败所有敌人,否则不算赢!”

这就像是给游戏加了一个“通关条件”。

🛡️ 🆚 👹👹👹
# 1. 设置通关条件:击败所有敌人
game.addDefeatGoal()

# 2. 设置通关条件:玩家必须存活
game.addSurviveGoal()

# 3. 生成几个小怪物来测试
game.spawnXY("munchkin", 40, 25)
game.spawnXY("munchkin", 15, 15)
⚔️
🎮 游戏开发1 第 8 关

控制角色移动 🏃‍♂️

Character Movement

🕹️ 自动导航:
你不需要一直按键盘。我们可以编写代码,让英雄自动走向敌人。

在这个关卡里,我们生成了敌人,英雄会根据游戏内置的AI(人工智能)自动寻找并攻击最近的敌人。

# 生成一个英雄 "champion" (冠军)
game.spawnPlayerXY("champion", 20, 20)

# 只要加上这一行,英雄就知道要打怪!
game.addDefeatGoal()

# 在不同位置生成敌人
game.spawnXY("munchkin", 40, 10)
game.spawnXY("munchkin", 51, 40)
👣
🎮 游戏开发1 第 9 关

击败部分敌人 🎯

Defeat Some Enemies

🚪 越狱计划:
并不是每次都要打败所有人。有时候,你只需要打倒挡路的几个守卫就能逃跑!

重点:addDefeatGoal 的括号里写上数字。

🎯 目标:4
# 生成守护者玩家
game.spawnPlayerXY("guardian", 62, 25)

# 关键点来了!
# 括号里的 4 代表:击败 4 个敌人就算赢
game.addDefeatGoal(4)

# 哪怕地图上有100个敌人,
# 你打倒第4个的那一刻,你就胜利了!
🔓
🎮 游戏开发1 第 10 关

陷阱与药水 🧪

Fire Traps and Potions

⚖️ 风险与机遇:
游戏里不仅有敌人,还有环境元素。

  • 🔥 火焰陷阱: 踩上去会扣血 (HP -100!)
  • 🧪 生命药水: 喝下去会回血 (HP +50)
危险!
好东西!
game.spawnPlayerXY("samurai", 40, 50)

# 生成一个坏东西 (Trap)
game.spawnXY("fire-trap", 25, 40)

# 生成一个好东西 (Potion)
game.spawnXY("potion-small", 30, 39)

# 玩家需要绕过陷阱去吃药水!
🔥
🎮 游戏开发1 第 11 关

创建敌人单位 🏹

Create Enemy Units

🎪 怪物大集合:
如果你只放一种怪物,游戏会很无聊。我们可以召唤不同职业的敌人!

不同的字符串名字 = 不同的样子和攻击方式。

🤠 thrower (投矛) 💂 soldier (士兵) 🧝‍♀️ archer (弓箭)
# 远程单位:投矛手
game.spawnXY("thrower", 21, 34)

# 近战单位:士兵
game.spawnXY("soldier", 52, 31)

# 远程单位:弓箭手
game.spawnXY("archer", 62, 35)
🏰
🎮 游戏开发1 第 12 关

单位属性 📊

Unit Attributes

🧠 知己知彼:
不同的单位有不同的“属性”。

  • 士兵 (Soldier): 血厚 ❤️,但只能近距离打。
  • 弓箭手 (Archer): 攻击高 ⚔️,射程远,但血很少,容易死。
💂 士兵: ██████ (生命高)
🧝‍♀️ 弓手: ██ (生命低)
# 生成一个肉盾(士兵)在前面扛伤害
game.spawnXY("soldier", 20, 40)

# 生成两个弓箭手在后面输出
game.spawnXY("archer", 10, 30)
game.spawnXY("archer", 20, 30)

# 这就是战术布局!
📏