0455-Bomb-放置炸弹
环境
- Time 2024-03-20
- Zig 0.12.0-dev.3152+90c1a2c41
- WSL-Ubuntu 22.04.3 LTS
- raylib 5.0
前言
说明
参考资料:
- 《游戏开发:世嘉新人培训教材》
- 图片素材:https://www.ituring.com.cn/book/1742
目标
如果在空地上按空格键,则放置一个炸弹到地面。
setBomb
在 map.zig 中,新增一个放置炸弹的函数。
pub fn setBomb(self: *WorldMap, role: Role) void {
const pos = role.getCell();
const cell = &self.data[pos.x + pos.y * width];
if (!cell.contains(.wall) and !cell.contains(.brick))
cell.insert(.bomb);
}
play.zig
处理空格按键。
if (engine.isPressed(engine.Key.space)) {
self.map.setBomb(self.map.player1().*);
}
效果

总结
实现了放置炸弹。

浙公网安备 33010602011771号