【问题标题】:GameMaker: How to freeze enemies temporarily?GameMaker:如何暂时冻结敌人?
【发布时间】:2017-07-07 10:51:07
【问题描述】:

我尝试设置Enemy.path_speed=0,然后设置警报[0]=5,当它到达alarm[0] 时,它只需再次设置Enemy.path_speed=100(默认值)。但它不起作用。敌人永远被冻结。还有什么办法可以在我击中空间时暂时冻结敌人?

【问题讨论】:

    标签: game-maker


    【解决方案1】:

    path_speed = 0path_speed = 100 不是个好主意。例如,物体可以有不同的速度。我使用速度因子,例如speed = normal_speed * k,其中k 为 1 表示正常速度,0 表示完全停止。

    敌人创建事件:

    spd = irandom_range(5, 10) // different speed, just as example
    path_start(path0, spd, 1, true)
    path_position = random(1)
    k = 1
    

    Enemy Step 事件:

    path_speed = spd * k
    

    Controller Space 按键事件:

    with (o_enemy)
         k = 0
    
    alarm[0] = 3 * room_speed
    

    控制器 Alarm0 事件:

    with (o_enemy)
         k = 1
    

    完成gm-project

    【讨论】:

      【解决方案2】:

      你刚刚设置了闹钟。你永远不会减少它。所以你的陈述永远不会是真的,因此物体不会移动。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-11
        • 2021-05-03
        相关资源
        最近更新 更多