0
幫助!我試圖創建一個記憶遊戲,我不太確定如何隨機化這些形狀在x和y位置的位置。它們不能重疊,因此每次用戶啓動程序時,它們都必須隨機分配到12個不同的位置。如何在特定位置隨機交換形狀的位置
幫助!我試圖創建一個記憶遊戲,我不太確定如何隨機化這些形狀在x和y位置的位置。它們不能重疊,因此每次用戶啓動程序時,它們都必須隨機分配到12個不同的位置。如何在特定位置隨機交換形狀的位置
存儲你的X和陣列y位置
var xArray=new Array();
var yArray=new Array();
xArray[0]=50;
yArray[0]=50;
xArray[1]=100;
yArray[1]=50;
xArray[2]=150;
yArray[2]=50;
...
爲每個形狀創建值的數組
var valueArray=new Array(0,1,2.....);
洗牌此數組中的值 - as3 random array - randomize array - actionscript 3
設置你形狀的位置
shape0.x=xArray[valueArray[0]];
shape0.y=yArray[valueArray[0]];
shape1.x=xArray[valueArray[1]];
shape1.y=yArray[valueArray[1]];
shape2.x=xArray[valueArray[2]];
shape2.y=yArray[valueArray[2]];
試試看:
function randomSort(a:*, b:*):Number
{
if (Math.random() < 0.5) return -1;
else return 1;
}
// Push 12 positions as new Point() in an array.
var positions:Array = [ new Point(12, 42), new Point(43, 56), new Point(43,87) ]; // ...add 12 positions
var mcs:Array = [mc1, mc2, mc3]; // ...add 12 mcs
positions.sort(randomSort);
// link randomized position to MovieClips:
for (var i:int = 0, l:int = positions.length; i < l, i++) {
var mc:MovieClip = mcs[i];
var point:Point = positions[i];
mc.x = point.x;
mc.y = point.y;
}