获取单个随机数。
unity中的随机可以直接使用API“Random.Range(min,max)”随机两数之间的中间数,注意左闭右开!
获取打乱排序后的数组。
游戏中有时会有需求获取随机的数组,如卡牌游戏,又或者前段事件大火的羊了个羊的洗牌道具都使用了洗牌算法。洗牌算法也算比较简单,传入数组本体即可。
public static void ShuffleFunc(ref List<int> nums)
{
// Random myRandom = new Random();
for (int i = 0; i < nums.Count; i++)
{
int temp = nums[i];
int randomIndex = Random.Range(0,nums.Count);
nums[i] = nums[randomIndex];
nums[randomIndex] = temp;
}
}
带权随机一个数
在随机道具时有时想要品质高的道具更难以获得,这时就可以使用带权随机的方法。简易的带权随机。
private void Start()
{
int[] ids = {1,2,3,4,5};
int[] nums = {5,4,3,2,1};
int id = Weight