我使用生成我的遊戲的隨機數:僞隨機數生成
System.Random rnd = new System.Random();
int TileType = rnd.Next (0, 8);
的問題是,這些數字是太過隨意。數字與瓦片有關,並且我沒有獲得20卷的特定瓦片。
我需要製作一個生成「假」隨機數的函數的指導。所以基本上我想確保我生成x卷的每個瓷磚類型。我想12可能是x的一個很好的起點,但希望能夠調整x。
如果有人能指出我在正確的方向,將不勝感激。
更新
繼承人什麼,我想現在。感謝@Golo以這種方式指向我。思考?
- 創建我想要的號碼列表。
- 添加更多的隨機數。
- Shuffle list -var shuffledList = unshuffledList.OrderBy(x => rand.Next())。ToList();
- 抓住第一個項目並從列表中移除。
- 空白時重建列表。
這應該意味着所有的數字都會頻繁出現,但是您仍然可以重複,因此它會保持隨機的感覺。
您正在尋找 「洗牌」 或 「加權隨機數」(根據您的喜好)。 –