sprite_merge


语法:

sprite_merge(ind1, ind2);

参数 描述
ind1 将要合并另一个精灵(ind2)的精灵索引。
ind2 将要被另一个精灵(ind1)合并的精灵的索引。


返回

N/A(无返回值)


描述

此函数将会把参数一(ind2)所代表的精灵合并进参数一所代表的精灵(ind1)。图像本身 不会 合并,真正合并的是图片的索引。精灵ind2的次级图像将被附加到精灵ind1的后面。注意如果两个精灵尺寸不同,那么它们会主动适应精灵ind1的尺寸。

改变是持续的,从此刻开始除非你关闭游戏或删除精灵,否则被合并的精灵将被改变。但合并另一个精灵的精灵将仍然保持一样。

注意: 无论是合并者还是被合并者,都不能成为游戏原始资源。如果你要合并游戏内置资源,你必须先将使用 sprite_duplicate 函数复制出两个新的资源,然后再合并这些新的
注意此函数只对 位图 精灵有用,并且对SWF或JSON(骨骼)精灵不起作用。


例如:

var tspr;
tspr[0] = spr_add(working_directory + "Sprite Assets\explode1.png", 16, true, true, 0, 0);
tspr[1] = sprite_duplicate(spr_Explosion);
sprite_merge(tspr[0], tspr[1]);
sprite_index = t_spr[0];
sprite_delete(tspr[1]);

上述函数将会将一个精灵加载进一个本地变量,并将它和另一个被复制出来的精灵合并。最后这个合并的精灵将会被指派给实例 sprite_index 同时被加载的图片将会被移除用来释放存储。注意在某些关键点,例如毁灭或房间结束事件 (Destroy or Room End events),你同样需要使用sprite_delete 去删除不再使用的精灵来释放存储。