我正在創建一個遊戲,我想從名稱庫中爲16個不同行星生成一個名稱,並將它們分配給一個行星。我爲行星創建了一個數組,併爲下面的特點生成邏輯。將列表中的項目分配到數組中的項目
Planet[] planetArray = new Planet[16];
public static void NameGeneration()
{
List<String> planetNames = new List<String>()
{
"Bak'hur", "Etonia", "Laurellan",
"Ragki", "Metiope", "Defel",
"Liehne", "Rykhan", "Heito",
"Makha", "Cerbi", "Helios",
"Luruguan", "Chawnos", "T'hig",
"Blana", "Pergate V", "Shemon III",
"Yokteth", "Letry", "Last Besgino",
"Ayus", "Alterus", "Qurenos"
};
List<Tuple<int>> instances = new List<Tuple<int>>();
List<string> generatedNames = new List<string>();
Random random = new Random();
int planetName;
//generating 16 names
while(instances.Count < 16)
{
planetName = random.Next(0, planetNames.Count);
Tuple<int> tuple = new Tuple<int>(planetName);
if (instances.Contains(tuple))
{
instances.Add(tuple);
}
}
foreach (var tuple in instances)
{
generatedNames.Add(string.Format("{0}", planetNames[tuple.Item1]));
}
foreach (var n in generatedNames)
{
}
}
我真的不知道從哪裏何去何從,雖然我已經考慮從列表中選擇和手動分配,或者藏漢隨機化的星球,但我還是會停留在我的軌道。
任何幫助或提示,將不勝感激。謝謝。
瑞安
爲什麼'Tuple'而不是'int'? –
嘗試在你的方法中從外部聲明'new Random'。 – spajce
我使用Tuple,因爲我是編程新手,我的導師建議我使用它。 –