我有一个带有value 2-5和image_number 0-3的obj_roulette,它包含4个子图像。轮盘赌产生的值存储为var global.roulette。
然后,我用random x value和random image_number制作了许多obj_meteorite,其中也包含4个子图像。玩家可以用鼠标左键点击来射击他们。
这就是我想要的:
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和object image_number之间的冲突,以及如何匹配obj_roulette image_number和obj_meteorite image_number。
它是否使用碰撞检查?如果是,则这些链接中的示例可能会有所帮助:link 1 link 2
请解释你的答案。谢谢。
发布于 2016-05-24 02:32:23
我假设这是一种游戏,你用鼠标点击,并准确地点击鼠标被点击的地方。正如我从你的问题中理解的那样。如果单击鼠标并且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;
}
}如果这不是你想要的,我建议修改你的问题,让它更清楚。最好简短地解释一下你的游戏到底是关于什么的。
https://stackoverflow.com/questions/37357459
复制相似问题