C:如何检查coord [x] [y] == coord [x] [y]的时间?

时间:2016-02-21 00:36:13

标签: c object linked-list coordinates

我正在尝试制作一个迷宫游戏。

我的怪物是' M'和宝贝是' *'。

如果一个怪物' M'吃掉宝贝' *',我希望游戏能够打印出来的游戏' GAME OVER'并退出。

你如何检查(怪物[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!");
        }
    }
}

1 个答案:

答案 0 :(得分:0)

原来你必须使用嵌套的ifs作为&&不会工作!

if (obj->x == obj2->x) {
   if (obj->y == obj2->y) {
      printf("THE TREASURE IS FOREVER LOST!");
      free_mem();
      exit(0);
   }
}