我正在尝试制作一个迷宫游戏。
我有“ M”的怪物和“ *”的宝物。
如果怪物“ M”吃掉了宝物“ *”,我希望游戏打印“ GAME OVER”并退出。
如何检查if(monster [x] [y] ==宝物[x] [y])?
我是否需要创建一个新方法get_co_ord(struct game_object * object,unsigned x,unsigned y)?
还是有更简单的方法?
void monster_move() {
list_node *monster = monster_position;
list_node *treasure = treasure_position;
game_object *obj;
game_object *obj2;
while (monster) {
obj = monster->object;
obj2 = treasure->object;
monster = monster->next;
if (obj->x == obj2->x && obj->y == obj2->y) {
printf("THE TREASURE IS FOREVER LOST!");
}
}
}
最佳答案
事实证明,您必须使用嵌套的ifs,因为&&无法正常工作!
if (obj->x == obj2->x) {
if (obj->y == obj2->y) {
printf("THE TREASURE IS FOREVER LOST!");
free_mem();
exit(0);
}
}
关于c - C:如何检查何时coord [xy] == coords [x] [y]?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35530869/