array_shuffle

此函数返回一个新的数组,其中原始数组(或其范围)的元素被随机重新排序。

当提供偏移量和长度时,返回的数组将具有与这些值给定的原始数组范围内相同的元素数。

注意 有关更改原始数组位置的函数,请参阅 array_shuffle_ext

注意 此函数将在每次重新运行游戏时将物品拖到相同的位置,因为 GameMaker 每次都会生成相同的初始随机种子,从而使调试代码变得容易得多。要避免这种行为,请在游戏开始时使用 randomise 。这只有在测试和调试游戏时才是正确的,因为最终的可执行包不会显示这种行为,并且在每次游戏中都是随机的。

语法:

array_shuffle(array, [offset], [length]);

参数类型描述
arrayArray要打乱的数组
offsetReal可选 要开始打乱的数组中的偏移量或起始索引。默认为 0。设置负值将从数组的末尾开始计数。然后,起始索引将是 array_length(array)+offset。请参阅:偏移量和长度
lengthReal可选 要打乱的元素数。默认为 (array_length(array)-1)。请参阅:偏移量和长度

 

返回:

Array

 

例子:

var _array = ["Everyday", "I", "'m", "shuffling"];
var _array_shuffled = array_shuffle(_array);
show_debug_message(_array_shuffled);

上面的代码首先创建了一个包含几个单词的数组 _array。然后,它使用 array_shuffle 对数组进行置乱,并将结果作为新数组返回,该数组存储在 _array_shuffled 中。最后,一条调试消息显示了混洗后的数组的内容。