_loc_2 = Math.floor(Math.random() * 4) + 1;
Cone.text = "" + _loc_2;
_loc_3 = Math.floor(Math.random() * 4) + 5;
Ctwo.text = "" + _loc_3;
_loc_4 = Math.floor(Math.random() * 2) + 9;
Cthree.text = "" + _loc_4;
_loc_5 = Math.floor(Math.random() * 2) + 11;
Cfour.text = "" + _loc_5;
_loc_6 = Math.floor(Math.random() * 3) + 13;
Cfive.text = "" + _loc_6;
我需要将其更改为此随机1到15但没有生成重复的数字,
_loc_2 = Math.floor(Math.random() * 15) + 1;
Cone.text = "" + _loc_2;
_loc_3 = Math.floor(Math.random() * 15) + 1;
Ctwo.text = "" + _loc_3;
_loc_4 = Math.floor(Math.random() * 15) + 1;
Cthree.text = "" + _loc_4;
_loc_5 = Math.floor(Math.random() * 15) + 1;
Cfour.text = "" + _loc_5;
_loc_6 = Math.floor(Math.random() * 15) + 1;
Cfive.text = "" + _loc_6;
可以在动作脚本中完成吗?
提前谢谢 戴夫答案 0 :(得分:1)
所以你想以随机顺序生成数字1-15而不重复?
可能有很多方法可以做到这一点,但这里有一个我的头脑:
var numberSource:Array = [];
function initArray(maxValue:int):void {
for (var i:int = 0; i < maxValue; i++) {
numberSource[i] = i + 1;
}
}
function getNumber():int {
var index:int = int(Math.random * (numberSource.length - 1));
return numberSource.splice(index, 1);
}
所以你要调用initArray(15),然后调用getNumber(),每次弹出一个值并返回它。你永远不应该得到重复,你应该最终获得每个数字。我没有对此进行测试,因此可能存在某种故障,但至少应该给你一个好的起点! :)