1. 程式人生 > >遊戲 簡單概率演算法

遊戲 簡單概率演算法

  • 有時候我們要在場景中生成寶箱或者陷阱,控制相應的生成機率
  • 思路: 利用Random.range(0,100)來生成一個隨機數字,然後判斷隨機數是否小於某概率數字,如果小於則生成,否則不生成
  • 注意,Random.range(0,100),不包括100,所以才從0開始的
  • 後續有其他演算法,再新增
int trapPr = 30; //陷阱生成概率為30
//返回1生成陷阱
//返回0不生成
private int CraeateTrap()
{
	int pr = Random.range(0, 100);
	if(pr<trapPr)
	{
	 return 1;
	}
	return 0;
}
  • 有時候直接設定概率為目標值會難度太大,可以採用逐步增加概率的方式
int trapPr = -1;  //設定概率初始值為-1
int trapMax = 30;//陷阱生成概率為30

//增加概率
private void AddPr()
{
	if(trapPr<=trapMax) //超過最大概率值後就不再增加
	{
		trapPr+=2;
	}
}
//返回1生成陷阱
//返回0不生成
private int CraeateTrap()
{
	int pr = Random.range(0, 100);
	if(pr<trapPr)
	{
	 return 1;
	}
	return 0;
}