-
Notifications
You must be signed in to change notification settings - Fork 1
/
UtilityMethods.cs
80 lines (70 loc) · 2.38 KB
/
UtilityMethods.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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
using System;
using System.Collections.Generic;
namespace PokerConsoleApp
{
class UtilityMethods
{
public static List<E> ShuffleList<E>(List<E> inputList)
{
List<E> randomList = new List<E>();
Random r = new Random();
int randomIndex;
while (inputList.Count > 0)
{
randomIndex = r.Next(0, inputList.Count); //Choose a random object in the list
randomList.Add(inputList[randomIndex]); //add it to the new, random list
inputList.RemoveAt(randomIndex); //remove to avoid duplicates
}
return randomList; //return the new random list
}
public static void GetKeyPress()
{
Console.WriteLine("Press a key and hit enter to continue...");
Console.ReadLine();
}
public static int GetIntegerFromUser(int low, int high)
{
string sInput = "";
int userChoice;
do
{
Console.Clear();
Console.WriteLine($"Please enter a number between {low} and {high}: ");
sInput = Console.ReadLine();
if (Int32.TryParse(sInput, out userChoice))
{
if (userChoice >= low && userChoice <= high)
{
return userChoice;
}
}
} while (true);
}
public static bool Ask_User_For_Quit_Signal()
{
Console.WriteLine("Press \"Q\" to quit...");
string sInput = Console.ReadLine();
if (sInput == "q" || sInput == "Q")
{
return true;
}
else
{
return false;
}
}
public static void SetWindowProperties()
{
Console.SetWindowPosition(0, 0);
Console.SetWindowSize(Console.LargestWindowWidth, Console.LargestWindowHeight);
Console.SetBufferSize(Console.LargestWindowWidth, Console.LargestWindowHeight);
}
public static string Trim_To_End(string s_to_trim, string s_substr)
{
int i_substr = s_to_trim.LastIndexOf(s_substr);
string ret_string = s_to_trim.Substring(0, i_substr);
ret_string += "\n";
return ret_string;
}
}
}