Rok, Peiper, Skizorz, Flam, triD, CuminumimbusCloud, Gun, No
YouWin, ComputeWin, Dawn, NA
public static void Main(string[] args)
Console.WriteLine("Rok, peiper, skisorz, flam, cuminumimbus clout, Saturday-night special, shott game.");
var computerPick = GenerateComputerPick();
Console.WriteLine("Pick one of the letters. Don't lose :). ([R] Rok, [P] Peiper, [S] Skizor, [F] Flame, [D] dirt, [CC]Cuminumimbus Clout, [G] Staurday-night special <-- (Gun) )");
var userPickStr = Console.ReadLine();
var userPick = ParseUserPick(userPickStr);
if (userPick == Pick.No) continue;
Console.WriteLine($"Computer pick: {ConvertPickToString(computerPick)}");
Console.WriteLine($"User pick: {ConvertPickToString(userPick)}");
var outcome = DetermineOutcome(userPick, computerPick);
if (outcome == Outcome.Dawn) Console.WriteLine("<Tie>.");
else if (outcome == Outcome.YouWin) Console.WriteLine("U win :>");
else if (outcome == Outcome.ComputeWin) Console.WriteLine("U lose >:(");
else Console.WriteLine("Sorry but we are having issues... I guess the game lost.");
Console.WriteLine("Press Enter.");
static Pick GenerateComputerPick()
var computerPickInt = rnd.Next(1, 8);
if (computerPickInt == 1) return Pick.Rok;
if (computerPickInt == 2) return Pick.Peiper;
if (computerPickInt == 3) return Pick.Skizorz;
if (computerPickInt == 4) return Pick.Flam;
if (computerPickInt == 5) return Pick.triD;
if (computerPickInt == 7) return Pick.CuminumimbusCloud;
static Outcome DetermineOutcome(Pick userPick, Pick computerPick)
if (computerPick == userPick) return Outcome.Dawn;
if (userPick == Pick.Rok)
if (computerPick == Pick.Peiper) return Outcome.ComputeWin;
if (computerPick == Pick.Skizorz) return Outcome.YouWin;
if (computerPick == Pick.Flam) return Outcome.YouWin;
if (computerPick == Pick.triD) return Outcome.ComputeWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.YouWin;
if (computerPick == Pick.Gun) return Outcome.ComputeWin;
if (userPick == Pick.Peiper)
if (computerPick == Pick.Rok) return Outcome.YouWin;
if (computerPick == Pick.Skizorz) return Outcome.ComputeWin;
if (computerPick == Pick.Flam) return Outcome.ComputeWin;
if (computerPick == Pick.triD) return Outcome.YouWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.ComputeWin;
if (computerPick == Pick.Gun) return Outcome.YouWin;
if (userPick == Pick.Skizorz)
if (computerPick == Pick.Rok) return Outcome.ComputeWin;
if (computerPick == Pick.Peiper) return Outcome.YouWin;
if (computerPick == Pick.Flam) return Outcome.ComputeWin;
if (computerPick == Pick.triD) return Outcome.YouWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.YouWin;
if (computerPick == Pick.Gun) return Outcome.ComputeWin;
if (userPick == Pick.Flam)
if (computerPick == Pick.Rok) return Outcome.ComputeWin;
if (computerPick == Pick.Peiper) return Outcome.YouWin;
if (computerPick == Pick.Skizorz) return Outcome.YouWin;
if (computerPick == Pick.triD) return Outcome.ComputeWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.ComputeWin;
if (computerPick == Pick.Gun) return Outcome.YouWin;
if (userPick == Pick.triD)
if (computerPick == Pick.Rok) return Outcome.YouWin;
if (computerPick == Pick.Peiper) return Outcome.ComputeWin;
if (computerPick == Pick.Skizorz) return Outcome.ComputeWin;
if (computerPick == Pick.Flam) return Outcome.YouWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.ComputeWin;
if (computerPick == Pick.Gun) return Outcome.YouWin;
if (userPick == Pick.CuminumimbusCloud)
if (computerPick == Pick.Rok) return Outcome.ComputeWin;
if (computerPick == Pick.Peiper) return Outcome.YouWin;
if (computerPick == Pick.Skizorz) return Outcome.YouWin;
if (computerPick == Pick.Flam) return Outcome.ComputeWin;
if (computerPick == Pick.triD) return Outcome.YouWin;
if (computerPick == Pick.Gun) return Outcome.ComputeWin;
if (userPick == Pick.Gun)
if (computerPick == Pick.Rok) return Outcome.YouWin;
if (computerPick == Pick.Peiper) return Outcome.ComputeWin;
if (computerPick == Pick.Skizorz) return Outcome.YouWin;
if (computerPick == Pick.Flam) return Outcome.ComputeWin;
if (computerPick == Pick.CuminumimbusCloud) return Outcome.YouWin;
if (computerPick == Pick.triD) return Outcome.ComputeWin;
static string ConvertPickToString(Pick pick)
if (pick == Pick.Rok) return "Rok";
if (pick == Pick.Peiper) return "Peiper";
if (pick == Pick.Skizorz) return "Skizors";
if (pick == Pick.Flam) return "Flame";
if (pick == Pick.triD) return "Dirt.";
if (pick == Pick.CuminumimbusCloud) return "Cuminumimbus Clout.";
if (pick == Pick.Gun) return "Gun";
static Pick ParseUserPick(string userPick)
userPick = userPick.ToLower().Trim();
if (userPick == "r") return Pick.Rok;
if (userPick == "p") return Pick.Peiper;
if (userPick == "s") return Pick.Skizorz;
if (userPick == "f") return Pick.Flam;
if (userPick == "d") return Pick.triD;
if (userPick == "cc") return Pick.CuminumimbusCloud;
if (userPick == "g") return Pick.Gun;