游戲開發(fā)之隨機概率的選擇算法
更新時間:2015年07月28日 17:30:25 作者:wrq147
這篇文章主要介紹了游戲開發(fā)之隨機概率的選擇算法,需要的朋友可以參考下
實現(xiàn)代碼超簡單,具體實現(xiàn)方法如下:
有時候當我們的游戲人物遇敵時,我們需我怪物隨機根據(jù)概率選擇處理方式,如下:
1、50%的機會友好的問候
2、25%的幾率走開
3、20%的機會立即攻擊
4、5%的機會提供金錢作為禮物
下面的這個算法就是跟據(jù)概率數(shù)組,返回選擇的概率索引號。
int Choose(float[] 概率數(shù)組) { float total=0; //首先計算出概率的總值,用來計算隨機范圍 for(int i=0;i<概率數(shù)組.length;i++) { total+=概率數(shù)組[i]; } Random rd = new Random(); float 隨機值=rd.Next(0,total); for(int i=0;i<概率數(shù)組.length;i++) { if(隨機值<概率數(shù)組[i]) { return i; } else { 隨機值-=概率數(shù)組[i]; } } return 概率數(shù)組.length-1; }
以上就是本文的全部內容,希望大家喜歡。
相關文章
利用Aspose.Word控件實現(xiàn)Word文檔的操作
偶然一次機會,一個項目的報表功能指定需要導出為Word文檔,因此尋找了很多篇文章,不過多數(shù)介紹的比較簡單一點,于是也參考了官方的幫助介紹,終于滿足了客戶的需求。下面我由淺入深來介紹這個控件在實際業(yè)務中的使用過程吧2013-05-05C#中的IEnumerable簡介及簡單實現(xiàn)實例
這篇文章主要介紹了C#中的IEnumerable簡介及簡單實現(xiàn)實例,本文講解了IEnumerable一些知識并給出了一個簡單的實現(xiàn),需要的朋友可以參考下2015-03-03C# 使用 Castle 實現(xiàn) AOP及如何用 Autofac 集成 Castle
這篇文章主要介紹了C# 使用 Castle 實現(xiàn) AOP及如何用 Autofac 集成 Castle,幫助大家更好的理解和學習使用c#,感興趣的朋友可以了解下2021-02-02