游戏制作者 - 检查与子图像的碰撞

时间:2016-05-20 23:55:55

标签: mouse collision-detection game-maker

我有一个obj_roulette,其中包含4个子图像,value 2-5image_number 0-3。轮盘赌的值结果存储为var global.roulette

然后,我制作了许多obj_meteorite,其中包含4个子图像,从上面生成random x valuerandom image_number。玩家可以用鼠标左键单击它们。

这就是我想要的:

If image_number obj_roulette is 0, and player shoot obj_meteorite with image_number 0, score +10. If image_number obj_roulette is 0, and player shoot obj_meteorite with image_number 1, score -10.

我不知道如何检查mouse_x/mouse_y和对象image_number之间的冲突,以及如何匹配obj_roulette image_numberobj_meteorite {{ 1}}。

是否使用碰撞检查?如果是,那么这些链接中的示例可能会有所帮助: link 1 link 2

请解释你的答案。感谢。

1 个答案:

答案 0 :(得分:0)

我认为这是一种用鼠标点击并准确点击鼠标所在位置的游戏。正如我从你的问题中理解的那样。如果单击鼠标并且obj_roulette的image_index与obj_meteorite相同,则需要在分数中添加10。如果没有,您想从分数中减去10。您需要帮助将伪代码转换为gml。

// Check if obj_meteorite was clicked
if (mouse_check_button_released(mb_left) && position_meeting(mouse_x, mouse_y, obj_meteorite))
{
    // Check wheter or not obj_meteorite's and obj_roulette's image_index is the same
    if (obj_meteorite.image_index == obj_roulette.image_index)
    {
        // Add 10 to the score
        score += 10;
    }
    else
    {
        // Subtract 10 from the score
        score -= 10;
    }
}

如果这不是您想要的,我建议您编辑问题以使其更清晰。最好很快解释一下你的游戏实际上是什么。