Example #1
0
        private static void userMenu()
        {
            while (true)
            {
                Console.WriteLine("The current User is " + ClsTest.UserName);
                Console.WriteLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n~~~~User Menu~~~~\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\nPlease Choose from the below list" + "\n1) Edit User\n2) Delete User\n3) User Creates Character\n4) User Deletes Character\n5) Select Character to play game\n6) Admin Menu\n7) Log off\n8) Exit Program");
                var response = Console.ReadLine();
                switch (response)
                {
                case "1":     //Edit User
                    Console.WriteLine("Please enter a new username");
                    string editUserName = Console.ReadLine();
                    Console.WriteLine("Please enter a new password");
                    string editUserPassword = Console.ReadLine();
                    Console.WriteLine("Please enter a new email");
                    string  editUserEmail = Console.ReadLine();
                    DataSet editUser      = ClsTest.editUser(editUserName, editUserPassword, editUserEmail);
                    foreach (DataRow aRow in editUser.Tables[0].Rows)
                    {
                        if (aRow["Message"].ToString() == "User details have been updated") // sucess message
                        {
                            ClsTest.UserName = editUserName;                                // set username inside cls test
                            Console.WriteLine(aRow["Message"]);
                            userMenu();
                        }
                        else
                        {
                            Console.WriteLine(aRow["Message"]);
                            userMenu();
                        }
                    }

                    break;

                case "2":     //Delete User
                    Console.WriteLine("Are you sure you want to delete this user?\n\n1) Yes\n2) No");
                    string deleteUserResponse = Console.ReadLine();
                    if (deleteUserResponse == "1")
                    {
                        DataSet deleteUser = ClsTest.deleteUser();
                        foreach (DataRow aRow in deleteUser.Tables[0].Rows)
                        {
                            if (aRow["Message"].ToString() == ClsTest.UserName + " has been deleted") // sucess message
                            {
                                ClsTest.UserName = null;                                              // set username inside cls test
                                Console.WriteLine(aRow["Message"]);
                                menu();
                            }
                            else
                            {
                                Console.WriteLine(aRow["Message"]);
                                userMenu();
                            }
                        }
                    }
                    else
                    {
                        continue;
                    }

                    break;

                case "3":     //User Creates Character
                    Console.WriteLine("What is the name of the Character?");
                    string characterName = Console.ReadLine();
                    Console.WriteLine("Please choose 4 skills by typing in the number\n1) Miner\n2) Gatherer\n3) Fisher\n4) Woodcutter\n5)Archer\n6)Smith");
                    var skills = new List <string>();
                    for (int i = 0; i < 4; i++)     // loop 4 times
                    {
                        string skillResponse = Console.ReadLine();
                        switch (skillResponse)
                        {
                        case "1":
                            skills.Add("Miner");
                            break;

                        case "2":
                            skills.Add("Gatherer");
                            break;

                        case "3":
                            skills.Add("Fisher");
                            break;

                        case "4":
                            skills.Add("Woodcutter");
                            break;

                        case "5":
                            skills.Add("Archer");
                            break;

                        case "6":
                            skills.Add("Smith");
                            break;

                        default:
                            i--;
                            break;
                        }
                    }

                    var skill1          = skills.ElementAt(0);
                    var skill2          = skills.ElementAt(1);
                    var skill3          = skills.ElementAt(2);
                    var skill4          = skills.ElementAt(3);
                    var createCharacter = ClsTest.createCharacter(characterName, skill1, skill2, skill3, skill4);
                    foreach (DataRow aRow in createCharacter.Tables[0].Rows)
                    {
                        Console.WriteLine(aRow["Message"]);
                    }

                    continue;

                case "4":     //User Deletes Character
                    Console.WriteLine("These are you current Characters");
                    var currentCharaters = ClsTest.getAllUserCharacters();
                    foreach (DataRow aRow in currentCharaters.Tables[0].Rows)
                    {
                        Console.WriteLine(aRow["characterName"]);
                    }

                    Console.WriteLine("What is the name of the Character you want to delete?");
                    var characterToDelete = Console.ReadLine();
                    var deleteCharacter   = ClsTest.deleteCharacter(characterToDelete);
                    foreach (DataRow aRow in deleteCharacter.Tables[0].Rows)
                    {
                        Console.WriteLine(aRow["Message"]);
                    }

                    continue;

                case "5":     //Select Character to play game
                    Console.WriteLine("These are you current Characters");
                    var currentCharacters = ClsTest.getAllUserCharacters();
                    foreach (DataRow aRow in currentCharacters.Tables[0].Rows)
                    {
                        Console.WriteLine(aRow["characterName"]);
                    }

                    Console.WriteLine("What character do you want to play with?");
                    var chosenCharacter = Console.ReadLine();
                    var characterChoice = ClsTest.selectCharacter(chosenCharacter);
                    foreach (DataRow aRow in characterChoice.Tables[0].Rows)
                    {
                        if (aRow["Message"].ToString() == chosenCharacter + " is now active") // success message
                        {
                            ClsTest.CharacterName = chosenCharacter;                          // set character inside cls test
                            Console.WriteLine(aRow["Message"]);
                            characterMenu();
                        }
                        else
                        {
                            Console.WriteLine(aRow["Message"]);
                            userMenu();
                        }
                    }

                    break;

                case "6":     //Admin Menu
                    var adminCheck = ClsTest.checkIfAdmin();
                    foreach (DataRow aRow in adminCheck.Tables[0].Rows)
                    {
                        if (aRow["Message"].ToString() == ClsTest.UserName + " is an Admin")
                        {
                            Console.WriteLine(aRow["Message"]);
                            adminMenu();
                        }
                        else
                        {
                            Console.WriteLine(aRow["Message"]);
                            userMenu();
                        }
                    }

                    break;

                case "7":     //Log off
                    var userLogoff = ClsTest.userLogoff();
                    foreach (DataRow aRow in userLogoff.Tables[0].Rows)
                    {
                        Console.WriteLine(aRow["Message"]);
                    }

                    ClsTest.UserName = "";
                    menu();
                    break;

                case "8":     // Exit Program
                    Environment.Exit(0);
                    break;

                default:
                    continue;
                }

                break;
            }
        }