2

在我的游戏中,如果玩家穿过一扇门,我想让文字出现一秒钟然后淡出。

我正在使用 GameMaker:Studio 1.4

4

2 回答 2

2

例如obj_text,使用以下事件创建一个对象:

  • 创建事件:

    alpha = 1;
    fade_out = false;
    alarm[0] = 60; // Time in frames
    
  • 警报 0 事件:

    fade_out = true;
    
  • 步骤事件:

    if (fade_out) {
        alpha -= 0.05;
    }
    
    if (alpha <= 0) {
        instance_destroy();
    }
    
  • 抽奖活动:

    draw_set_alpha(alpha);
    draw_text(x, y, "You went through a door");
    draw_set_alpha(1);
    

当玩家通过一扇门时,只需使用instance_create(x, y, obj_text)来显示文字。

于 2018-09-23T15:12:43.497 回答
0
  1. 创建一个新对象,例如“obj_text”。
  2. 创建事件:

    count = 0
    alpha = 1
    delay = 1 // in seconds
    
  3. 步骤事件:

    if (count == room_speed * delay) {
        alpha -= 0.05
        draw_set_alpha(alpha)
        if (image_alpha <= 0) {
            instance_destroy();
        }
    }
    else {
        count += 1
    }
    draw_text(x, y, "You went through a door")
    draw_set_alpha(1);
    

    当玩家穿过门时,您只需使用

    instance_create( x, y, obj_text)
    

    显示文本。

您可以更改延迟的值以定义文本在开始淡出之前应显示多长时间。

于 2018-08-10T15:25:24.423 回答