Game Maker - 健康为0时创建实例

Game Maker - Create Instance When Health Is 0

我有五个对象:obj_Bossobj_bossHealthobj_GameOverobj_BtnOKobj_rec2

这就是我想要的。当obj_Boss没有生命值时,会出现obj_GameOverobj_BtnOK

这是我的第一个方法:

obj_bossHealth 中,我有这些事件:

Create Event: set var global.bossHealth to 100

Draw Event: draw_healthbar

obj_Boss 中,我有这些事件:

Collision with obj_rec2: set var global.bossHealth relative to -1.5; destroy the instance (other)

No More Health: create instance of obj_GameOver; create instance of obj_BtnOK

这是我的第二种方法:

obj_bossHealth 中,我有这些事件:

Create Event: set var global.bossHealth to 100

Draw Event: draw_healthbar

Step Event: if global.bossHealth is equal to 0 then create instance of obj_GameOver and create instance of obj_BtnOK

obj_Boss 中,我有这些事件:

Collision with obj_rec2: set var global.bossHealth relative to -1.5; destroy the instance (other)

两种方法的结果:

obj_GameOverobj_BtnOK 不会出现。我怎样才能解决这个问题?请解释你的答案。谢谢。

我添加一些图片:method1 method2

我已经知道我的错误了。

我无法使用第一种方法。因为我创建了一个变量 global.bossHealth 并在每次碰撞时将该变量减少 1.5 。但是,我放置了事件 No More Health,它的值仍然是 100

我使用第二种方法。在我的问题中,我将 global.bossHealth 减少 1.5。但是,100 不能被 1.5 整除。因此,条件 if global.bossHealth is equal to 0 永远不会 True。我更改 Step Event 中的操作。我把 if global.bossHealth is equal to 0 改成了 if global.bossHealth is less than or equal to 0。其中 less than 0 可以是 True.