08 · 概念挑战. 真炼金术
先读关卡目标,观察地图,再运用本课知识。
扣哒世界 · 计算机科学3 · C++ · 第8–13关
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
先读关卡目标,观察地图,再运用本课知识。
学习路线:读目标 → 看图解 → 写代码 → 运行检查
CodeCombat 的地图是一个巨大的网格。每个点都由 (X, Y) 决定。
在 C++ 中,物品(Item)和敌人(Enemy)都是对象。对象里面存着数据,叫属性。
使用 点号 (.) 来访问属性:
直接通过属性链访问坐标,快速移动收集金币!
item.pos.x 就是金币的横坐标。
Follow the properties
在白兔和伪装者关卡中,我们可以先把坐标存在变量里,方便多次使用。
有时候直接瞄准是不够的!我们需要预判或者修正位置。
在风向校正关卡中,大炮需要瞄准敌人下方一点点。
object.pos.x (横坐标)object.pos.y (纵坐标)
y - 4 (向下移)x + 10 (向右移)
hero.say(x + "," + y);
扣哒世界 · 计算机科学3 · C++ · 第8–13关
位置用横坐标 x、纵坐标 y 表示;目标坐标表示地点,不是要走的步数。
hero.moveXY(30, 40);
在 C++ 中,物品(Item)和敌人(Enemy)都是对象。对象里面存着数据,叫属性。
auto item = hero.findNearestItem();
直接通过属性链访问坐标,快速移动收集金币!
auto item = hero.findNearestItem();
在白兔和伪装者关卡中,我们可以先把坐标存在变量里,方便多次使用。
auto item = hero.findNearestItem();
有时候直接瞄准是不够的!我们需要预判或者修正位置。
hero.say(aimX + "," + aimY);
本节课关卡:8. 概念挑战. 真炼金术;9. 币屑;10. 白兔;11. 伪装者;12. 概念挑战. 富有且安全;13. 组合挑战. 风向校正