實現代碼超簡單,具體實現方法如下:
有時候當我們的游戲人物遇敵時,我們需我怪物隨機根據概率選擇處理方式,如下:
1、50%的機會友好的問候
2、25%的幾率走開
3、20%的機會立即攻擊
4、5%的機會提供金錢作為禮物
下面的這個算法就是跟據概率數組,返回選擇的概率索引號。
int Choose(float[] 概率數組){ float total=0; //首先計算出概率的總值,用來計算隨機范圍 for(int i=0;i<概率數組.length;i++) { total+=概率數組[i]; } Random rd = new Random(); float 隨機值=rd.Next(0,total); for(int i=0;i<概率數組.length;i++) { if(隨機值<概率數組[i]) { return i; } else { 隨機值-=概率數組[i]; } } return 概率數組.length-1;}
以上就是本文的全部內容,希望大家喜歡。
新聞熱點
疑難解答