-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNameGenerator.cs
36 lines (32 loc) · 1.21 KB
/
NameGenerator.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
using System;
using System.Collections.Generic;
namespace Blackjack
{
public class NameGenerator
{
// Lijst met available names
private List<string> availableNames;
//gebruikte namen
private Queue<string> usedNames;
public NameGenerator()
{
availableNames = new List<string> { "Robert", "Melvin", "Bart", "Erik", "Marco", "Davor", "Niek" }; // namen om uit te kiezen
usedNames = new Queue<string>();
}
// Genereert een willekeurige naam en zet deze in de gebruikte namen list
public string GenerateRandomName()
{
if (availableNames.Count == 0)
{
availableNames.AddRange(usedNames); // Reset de lijst voor als game gereset wordt
usedNames.Clear();
}
Random rng = new Random();
int index = rng.Next(availableNames.Count);
string name = availableNames[index]; // Haal random naam
availableNames.RemoveAt(index); // verwijder gebruikte naam uit lijst met beschikbare namen
usedNames.Enqueue(name); // Voeg gebruikte naam toe aan de queue met gebruikte namen
return name;
}
}
}