예제 #1
0
 public void save(network _network)
 {
     if (File.Exists(Directory.GetCurrentDirectory() + _network.machines[0].user[0].name + ".save"))
     {
         File.Delete(Directory.GetCurrentDirectory() + _network.machines[0].user[0].name + ".save");
     }
     Stream saveStream = File.Create(_network.machines[0].user[0].name + ".save");
     BinaryFormatter serializer = new BinaryFormatter();
     serializer.Serialize(saveStream, _network);
     saveStream.Close();
 }
예제 #2
0
 public static void createNewSave()
 {
     string[] newUserDialog = { "Willkommen bei hackOS!", "Bitte legen Sie sich jetzt ein Benutzerkonto an." };
     printMultiLine(newUserDialog, false);
     Console.Write("Benutzer: ");
     string _name = Console.ReadLine();
     string _password = enterPassword();
     network _network = new network();
     _network.machines[0].user[0].name = _name;
     _network.machines[0].user[0].password = _password;
     Console.WriteLine();
     _network.save(_network);
 }
예제 #3
0
 public static int ipExists(string _ip , network _network)
 {
     for (int i = 0; i < _network.machines.Length; i++)
     {
         if (_network.machines[i].ip == _ip)
         {
             return i;
         }
     }
     return -1;
 }
예제 #4
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);
 }