예제 #1
0
 static void Main(string[] args)
 {
     do
     {
         string[] commands = {       "help",
                                     "save",
                                     "sysinfo",
                                     "connect",
                                     "scan"
         };
         string[] commandsLong = {   "Zeigt alle verfügbaren Befehle an.",
                                     "Speichert das Spiel.",
                                     "Zeigt die Infos des PCs an auf dem der Befehl ausgeführt wird.",
                                     "Verbindet Sie mit einem anderen PC.",
                                     "Listet alle verfügbaren PCs im Netz auf."
         };
         string[] hOSheader = {      "\n",
                                     " ██░ ██  ▄▄▄       ▄████▄   ██ ▄█▀ ▒█████    ██████ ",
                                     "▓██░ ██▒▒████▄    ▒██▀ ▀█   ██▄█▒ ▒██▒  ██▒▒██    ▒ ",
                                     "▒██▀▀██░▒██  ▀█▄  ▒▓█    ▄ ▓███▄░ ▒██░  ██▒░ ▓██▄   ",
                                     "░▓█ ░██ ░██▄▄▄▄██ ▒▓▓▄ ▄██▒▓██ █▄ ▒██   ██░  ▒   ██▒",
                                     "░▓█▒░██▓ ▓█   ▓██▒▒ ▓███▀ ░▒██▒ █▄░ ████▓▒░▒██████▒▒",
                                     " ▒ ░░▒░▒ ▒▒   ▓▒█░░ ░▒ ▒  ░▒ ▒▒ ▓▒░ ▒░▒░▒░ ▒ ▒▓▒ ▒ ░",
                                     " ▒ ░▒░ ░  ▒   ▒▒ ░  ░  ▒   ░ ░▒ ▒░  ░ ▒ ▒░ ░ ░▒  ░ ░",
                                     " ░  ░░ ░  ░   ▒   ░        ░ ░░ ░ ░ ░ ░ ▒  ░  ░  ░  ",
                                     " ░  ░  ░      ░  ░░ ░      ░  ░       ░ ░        ░  ",
                                     "                  ░                                 ",
                                     "\n"
         };
         startScreen(hOSheader);
         if (searchSave().Length != 0)
         {
             string[] saves = new string[searchSave().Length + 1];
             for (int i = 0; i < searchSave().Length; i++)
             {
                 saves[i] = searchSave()[i];
             }
             saves[saves.Length - 1] = "Neuer Benutzer";
             Console.WriteLine("Willkommen bei hackOS. Bitte wählen Sie einen Benutzer um sich anzumelden.");
             Console.WriteLine();
             int selectedSave = menu(saves);
             if (selectedSave != saves.Length - 1)
             {
                 network network = new network();
                 network = loadSave(selectedSave);
                 startScreen(hOSheader);
                 do
                 {
                     Console.WriteLine("Benutzer: " + network.machines[0].user[0].name);
                     string password = enterPassword();
                     if (password == network.machines[0].user[0].password)
                     {
                         break;
                     }
                     else
                     {
                         Console.WriteLine("Falsches Passwort!");
                     }
                 } while (true);
                 startScreen(hOSheader);
                 do
                 {
                     consoleInfo(network.currentMachine.user[network.currentMachine.activeUser], network.currentMachine);
                     string command = Console.ReadLine();
                     switch (command)
                     {
                         case "help":
                             for(int i = 0; i < commands.Length; i++)
                             {
                                 Console.WriteLine(commands[i]);
                                 Console.SetCursorPosition(4, Console.CursorTop);
                                 Console.WriteLine(commandsLong[i]);
                             }
                             break;
                         case "save":
                             network.save(network);
                             break;
                         case "sysinfo":
                             sysInfo(network.currentMachine);
                             break;
                         case "connect":
                             network.connect();
                             break;
                         case "scan":
                             for(int i = 0; i < network.listMachines().Length; i++)
                             {
                                 Console.WriteLine(network.listMachines()[i].ip + "(" + network.listMachines()[i].name + ")");
                             }
                             break;
                         default:
                             Console.WriteLine("Unbekannter Befehl!");
                             break;
                     }
                 }
                 while (true);
             }
             else
             {
                 startScreen(hOSheader);
                 createNewSave();
             }
         }
         else
         {
             createNewSave();
         } 
     } while (true);
 }