GameMaker Studio鼠标点击事件出错?

GameMaker Studio mouse click event goes wrong?

我已经使用 Gamemaker Studio 几个月了,但仍在学习中。今天遇到鼠标点击动作的问题:

我有 2 个对象,名为 button_1 和 button_2。我的主要目的是,当玩家点击button_1时,它会被button_2代替,然后点击button_2,它会被button_1代替。[=10] =]

所以我这样做了:

button_1: 事件:鼠标 "left button" -> 销毁自身并在同一位置创建对象 button_2

button_2: 事件:鼠标 "left button" -> 销毁自身并在同一位置创建对象 button_1

但是,当我点击 button_1 时,它会立即显示 button_1。我猜是位置问题,因为当我把2个按钮放得很远的时候还可以,但是如果它们重叠了,共享区域就会出问题。

你遇到过类似的问题吗?有解决办法吗?

我正在学习英语,请原谅我是否解释不清楚。提前致谢!

尝试使用 "Left Released" 操作而不是 "Left button"。

我发现 "Left button" 动作一次触发三次,所以我更喜欢使用 "Left Released" 动作,因为它只触发一次。

在按钮中使用mouse_clear(button),喜欢

mouse_clear(mb_left);
instance_create(x, y, button_2);
instance_destroy();

你做到了:

  • button_1:事件鼠标左键->销毁自身并在相同位置创建对象button_2
  • button_2:事件鼠标左键->销毁自身并在相同位置创建对象button_1

你的错误:

  • 事件应该是 "Left Pressed",而不是左键

我还推荐:

  • 在销毁旧实例之前创建新实例

如其他人所述,您应该使用 "Left Released" 事件而不是 "Left button"。

此外,你应该检查你在房间的同一个地方只有同一个对象的一个​​实例。我遇到了同样的问题(多次点击事件被触发),这是由 2 个或更多对象堆叠引起的,每个对象都触发了一个事件。