layer_set_target_room

此函数告诉 GameMaker所有其他层函数都应应用于给定房间 。通过这种方式,您可以在非当前房间的房间中按程序更改或生成图层和图层内容。

当您完成向房间添加图层或图层元素后,调用函数 layer_reset_target_room 重置房间目标,或使用 -1room 参数再次调用此函数。

警告 当定位另一个房间时,您可以使用所有常规图层函数, 您无法使用 instance_create_layerinstance_create_depth 创建实例,层函数 layer_add_instance 也不可用。

 

语法:

layer_set_target_room(room);

参数类型描述
roomRoom Asset所有其他层功能的目标房间,或当前房间的 -1

 

返回:

N/A

 

例子:

layer_set_target_room(rm_Game);
var l = layer_get_id("SpriteAssets");
repeat(50)
{
    var _x = irandom(1000);
    var _y = irandom(1000);
    layer_sprite_create(l, _x, _y, spr_Trees);
}
layer_reset_target_room();

上述代码将目标房间设置为"rm_Game"房间,然后获取该房间中名为"SpriteAssets"的层的层ID。然后,在将层目标重置为当前房间之前,使用该层ID向该层添加50个随机精灵资源。