【问题标题】:Game Maker - Create Instance When Health Is 0Game Maker - 生命值为 0 时创建实例
【发布时间】:2016-10-13 21:21:33
【问题描述】:

我有五个对象:obj_Bossobj_bossHealthobj_GameOverobj_BtnOKobj_rec2

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

这是我的第一个方法:

obj_bossHealth,我有这些事件:

创建事件:set var global.bossHealth to 100

绘制事件:draw_healthbar

obj_Boss,我有这些事件:

obj_rec2的冲突:set var global.bossHealth relative to -1.5;销毁实例(其他)

No More Health:创建obj_GameOver 的实例;创建obj_BtnOK的实例

这是我的第二种方法:

obj_bossHealth,我有这些事件:

创建事件:set var global.bossHealth to 100

绘制事件:draw_healthbar

步骤事件:如果global.bossHealth is equal to 0 则创建obj_GameOver 的实例并创建obj_BtnOK 的实例

obj_Boss,我有这些事件:

obj_rec2的冲突:set var global.bossHealth relative to -1.5;销毁实例(其他)

两种方法的结果:

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

我添加一些图片:method1method2

【问题讨论】:

    标签: instance game-maker createinstance


    【解决方案1】:

    我已经知道我的错误了。

    我不能使用我的第一种方法。因为我创建了一个变量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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-20
      • 2020-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多