Exemple #1
0
 static System.Security.SecureString getPassword()
 {
     System.Security.SecureString pwd = new System.Security.SecureString();
     while (true)
     {
         System.ConsoleKeyInfo i = System.Console.ReadKey(true);
         if (i.Key == System.ConsoleKey.Enter)
         {
             System.Console.WriteLine();
             break;
         }
         else if (i.Key == System.ConsoleKey.Backspace)
         {
             if (pwd.Length > 0)
             {
                 pwd.RemoveAt(pwd.Length - 1);
                 System.Console.Write("\b \b");
             }
         }
         else
         {
             pwd.AppendChar(i.KeyChar);
             System.Console.Write("*");
         }
     }
     pwd.MakeReadOnly();
     return(pwd);
 }
		public void Map()
		{
			var ioProvider = new ConsoleIOProvider();
			var ioProviderSettings = new DefaultIOProviderSettings(Color.White);
			ioProvider.ApplySettings(ioProviderSettings);

			var consoleKey = new System.ConsoleKeyInfo('W', System.ConsoleKey.W, false, false, false);
			var actionType = ioProvider.Map(consoleKey);

			Assert.AreEqual(actionType, ActionType.Get(DefaultActionTypes.Up));
		}
Exemple #3
0
        static void Main(string[] args)
        {
            int     numberOfApples = 12;
            decimal pricePerApple  = 0.35M;

            WriteLine(
                format: "{0} apples costs {1:C}",
                arg0: numberOfApples,
                arg1: pricePerApple * numberOfApples);
            string formatted = string.Format(
                format: "{0} apples costs {1:C}",
                arg0: numberOfApples,
                arg1: pricePerApple * numberOfApples);

            //WriteToFile(formatted); // writes the string into a file
            WriteLine($"{numberOfApples} apples costs {pricePerApple * numberOfApples:C}");

            string applesText   = "Apples";
            int    applesCount  = 1234;
            string bananasText  = "Bananas";
            int    bananasCount = 56789;

            //{ index [, alignment ] [ : formatString ] }
            WriteLine(
                format: "{0,-8} {1,6:N0}",
                arg0: "Name",
                arg1: "Count");
            WriteLine(
                format: "{0,-8} {1,6:N0}",
                arg0: applesText,
                arg1: applesCount);
            WriteLine(
                format: "{0,-8} {1,6:N0}",
                arg0: bananasText,
                arg1: bananasCount);

            Write("Type your first name and press ENTER: ");
            string firstName = ReadLine();

            Write("Type your age and press ENTER: ");
            string age = ReadLine();

            WriteLine(
                $"Hello {firstName}, you look good for {age}.");

            Write("Press any key combination: ");
            System.ConsoleKeyInfo key = ReadKey();
            WriteLine();
            WriteLine("Key: {0}, Char: {1}, Modifiers: {2}",
                      arg0: key.Key,
                      arg1: key.KeyChar,
                      arg2: key.Modifiers);
        }
Exemple #4
0
        static System.Security.SecureString GetSecPswd(string prompt)
        {
            System.Security.SecureString password = new System.Security.SecureString();

            System.Console.ForegroundColor = System.ConsoleColor.Gray;
            System.Console.Write(prompt);
            System.Console.ForegroundColor = System.ConsoleColor.Magenta;

            while (true)
            {
                System.ConsoleKeyInfo cki = System.Console.ReadKey(true);
                if (cki.Key == System.ConsoleKey.Enter)
                {
                    System.Console.ForegroundColor = System.ConsoleColor.Gray;
                    System.Console.WriteLine();
                    return(password);
                }
                else if (cki.Key == System.ConsoleKey.Backspace)
                {
                    // remove the last asterisk from the screen...
                    if (password.Length > 0)
                    {
                        System.Console.SetCursorPosition(System.Console.CursorLeft - 1, System.Console.CursorTop);
                        System.Console.Write(" ");
                        System.Console.SetCursorPosition(System.Console.CursorLeft - 1, System.Console.CursorTop);
                        password.RemoveAt(password.Length - 1);
                    }
                }
                else if (cki.Key == System.ConsoleKey.Escape)
                {
                    System.Console.ForegroundColor = System.ConsoleColor.Gray;
                    System.Console.WriteLine();
                    return(password);
                }
                else if (System.Char.IsLetterOrDigit(cki.KeyChar) || System.Char.IsSymbol(cki.KeyChar))
                {
                    if (password.Length < 20)
                    {
                        password.AppendChar(cki.KeyChar);
                        System.Console.Write("*");
                    }
                    else
                    {
                        System.Console.Beep();
                    }
                }
                else
                {
                    System.Console.Beep();
                }
            }
        }
Exemple #5
0
    public static void Main()
    {
        //입력된 데이터를 라닝단위로 읽는다.
        //키보드로부터 입력된 모든 데이터는 문자 또는 문자열 타입.
        //string str = System.Console.ReadLine();
        //System.Console.WriteLine(str);
        //위와 같은 방식으로 사용하면 사용이 모호하다.
        //아래처럼 프롬프트(사용자의 명령을 받아들일 준비가 되어있음)
        System.Console.Write("이름을 입력하세요 : ");
        string str = System.Console.ReadLine();

        System.Console.WriteLine(str);
        System.Console.Write("나이를 입력하세요 : ");
        uint age = System.Convert.ToUInt32(System.Console.ReadLine());

        System.Console.WriteLine(age);

        //문자 하나만 입력받기.
        char ch = (char)System.Console.Read();//문자하나만 입력받아서 int로 반환.

        System.Console.WriteLine(ch);

        //버퍼사용하지않고 바로 입력 : readkey


        //커서 위치 설정.
        int x = 40, y = 12;

        while (true)
        {
            System.Console.Clear();
            System.Console.SetCursorPosition(x, y);
            System.Console.Write('#');

            System.ConsoleKeyInfo kinfo = System.Console.ReadKey();
            switch (kinfo.Key)
            {
            case System.ConsoleKey.LeftArrow: --x; break;

            case System.ConsoleKey.RightArrow: ++x; break;

            case System.ConsoleKey.UpArrow: --y; break;

            case System.ConsoleKey.DownArrow: ++y; break;

            case System.ConsoleKey.Q: return;
            }
        }
    }
 /// <summary>
 /// Update the text entry with a key input then draw to the screen buffer.
 /// </summary>
 /// <param name="g"></param>
 /// <param name="keyInfo"></param>
 public override void Draw(Graphics g, System.ConsoleKeyInfo keyInfo)
 {
     if (keyInfo.Key != System.ConsoleKey.Backspace)
     {
         text += keyInfo.KeyChar;
     }
     else if (keyInfo.Key == System.ConsoleKey.Backspace)
     {
         if (text.Length > 0)
         {
             text = text.Remove(text.Length - 1);
         }
     }
     Draw(g);
 }
        static void Main(string[] args)
        {
            string username = Bot.GetMeAsync().Result.Username;

            System.Console.Title = username;

            Bot.OnMessage       += OnMessageReceived;
            Bot.OnCallbackQuery += BotOnCallbackQueryReceived;
            Bot.OnReceiveError  += BotOnReceiveError;

            Bot.StartReceiving();
            System.Console.WriteLine($"The Bot {username} has started receiving messages");
            System.Console.WriteLine("Press Q to quit...");
            while (true)
            {
                System.ConsoleKeyInfo cki = System.Console.ReadKey(true);
                if (cki.Key == System.ConsoleKey.Q)
                {
                    break;
                }
            }
            Bot.StopReceiving();
            System.Console.WriteLine($"The Bot {username} has stopped receiving messages");
        }
 public bool Equals(System.ConsoleKeyInfo obj)
 {
     throw null;
 }
Exemple #9
0
        private static void Main(string[] args)
        {
            Logger.InitializeLogger(LogManager.GetLogger(typeof(Program)));
            Assembly        assembly        = Assembly.GetExecutingAssembly();
            FileVersionInfo fileVersionInfo = FileVersionInfo.GetVersionInfo(assembly.Location);

            System.Console.Title = $"OpenNos Import Console v{fileVersionInfo.ProductVersion}";
            string text = $"IMPORT CONSOLE VERSION {fileVersionInfo.ProductVersion} by OpenNos Team";

            if (args.Length == 0)
            {
                int offset = (System.Console.WindowWidth - text.Length) / 2;
                System.Console.WriteLine("===============================================================================");
                System.Console.SetCursorPosition(offset < 0 ? 0 : offset, System.Console.CursorTop);
                System.Console.WriteLine(text + "\n" +
                                         "===============================================================================\n");
            }

            DataAccessHelper.Initialize();
            System.ConsoleKeyInfo key = new System.ConsoleKeyInfo();
            Logger.Log.Warn(Language.Instance.GetMessageFromKey("NEED_TREE"));
            System.Console.BackgroundColor = System.ConsoleColor.Blue;
            System.Console.WriteLine("Root");
            System.Console.ResetColor();
            //System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_BCard.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_Item.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_MapIDData.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_monster.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_Skill.txt");
            //System.Console.WriteLine("-----BCard.dat");
            System.Console.WriteLine("-----Item.dat");
            System.Console.WriteLine("-----MapIDData.dat");
            System.Console.WriteLine("-----monster.dat");
            System.Console.WriteLine("-----Skill.dat");
            System.Console.WriteLine("-----packet.txt");
            System.Console.BackgroundColor = System.ConsoleColor.Blue;
            System.Console.WriteLine("-----map");
            System.Console.ResetColor();
            System.Console.WriteLine("----------0");
            System.Console.WriteLine("----------1");
            System.Console.WriteLine("----------...");

            try
            {
                Logger.Log.Warn(Language.Instance.GetMessageFromKey("ENTER_PATH"));
                string folder = "";
                if (args.Length == 0)
                {
                    folder = System.Console.ReadLine();
                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_ALL")} [Y/n]");
                    key = System.Console.ReadKey(true);
                }
                else
                {
                    foreach (string str in args)
                    {
                        folder += str + " ";
                    }
                }
                ImportFactory factory = new ImportFactory(folder);
                factory.ImportPackets();

                if (key.KeyChar != 'n')
                {
                    factory.ImportMaps();
                    factory.LoadMaps();
                    factory.ImportMapType();
                    factory.ImportMapTypeMap();
                    factory.ImportAccounts();
                    factory.ImportPortals();
                    factory.ImportItems();
                    factory.ImportSkills();
                    factory.ImportNpcMonsters();
                    factory.ImportMapNpcs();
                    factory.ImportMonsters();
                    factory.ImportShops();
                    factory.ImportTeleporters();
                    factory.ImportShopItems();
                    factory.ImportShopSkills();
                    factory.ImportRecipe();
                }
                else
                {
                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportMaps();
                        factory.LoadMaps();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPTYPES")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportMapType();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPTYPEMAPS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportMapTypeMap();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_ACCOUNTS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportAccounts();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_PORTALS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportPortals();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_ITEMS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportItems();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_NPCS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportNpcMonsters();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SKILLS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportSkills();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPNPCS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportMapNpcs();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MONSTERS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportMonsters();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SHOPS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportShops();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_TELEPORTERS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportTeleporters();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SHOPITEMS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportShopItems();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SHOPSKILLS")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportShopSkills();
                    }

                    System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_RECIPES")} [Y/n]");
                    key = System.Console.ReadKey(true);
                    if (key.KeyChar != 'n')
                    {
                        factory.ImportRecipe();
                    }
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("DONE")}");
                System.Threading.Thread.Sleep(5000);
            }
            catch (System.IO.DirectoryNotFoundException)
            {
                Logger.Log.Error(Language.Instance.GetMessageFromKey("AT_LEAST_ONE_FILE_MISSING"));
                System.Threading.Thread.Sleep(5000);
            }
        }
Exemple #10
0
        private static void ShowContextMenu()
        {
            string file_path = file_manager_current_files[
                file_manager_element_index -
                file_manager_current_directories.Length];
            string file_extenssion;

            if (file_path.Contains("."))
            {
                string[] all_extensions = file_path.Split('.');
                file_extenssion =
                    all_extensions.Length > 1 ?
                    all_extensions[all_extensions.Length - 1] :
                    all_extensions[1];
            }
            else
            {
                file_extenssion = "txt";
            }

            bool Run = true;

            context_menu_current_option = 0;
            while (Run)
            {
                System.Console.Clear();
                FileManagerShow();
                ShowContextMenuOptions();
                System.ConsoleKeyInfo key = System.Console.ReadKey();
                switch (key.Key)
                {
                case System.ConsoleKey.UpArrow:
                {
                    if (context_menu_current_option > 0)
                    {
                        --context_menu_current_option;
                    }
                }
                break;

                case System.ConsoleKey.DownArrow:
                {
                    if (context_menu_current_option < 4)
                    {
                        ++context_menu_current_option;
                    }
                }
                break;

                case System.ConsoleKey.Enter:
                {
                    /*
                     *
                     #########################################################
                     ### На данный момент мы запускаемся в текущем потоке, ###
                     ### нужно создавать отдельный процесс под приложения  ###
                     #########################################################
                     #
                     */
                    Run = false;
                    switch (context_menu_current_option)
                    {
                    case 0:
                    {
                        context_menu_current_option = 0;
                        switch (file_extenssion)
                        {
                        case "txt":
                        case "sh":
                        case "c":
                        case "cpp":
                        case "lua":
                        case "python":
                        case "cs":
                        case "java":
                        case "pdb":
                        case "gitignore":
                        case "md":
                        case "cache":
                        {
                            System.Diagnostics.Process
                            .Start(
                                exe_path +
                                "/scripts/text_editor_script", file_path);
                        }
                        break;

                        case "exe":
                        {
                            System.Diagnostics.Process
                            .Start(
                                exe_path +
                                "/scripts/mono_run_script", file_path);
                            System.Console.WriteLine("Started: ", file_path);
                            System.Console.Read();
                        }
                        break;

                        case "dll":
                        {
                        }
                        break;

                        case "sln":
                        {
                            System.Diagnostics.Process
                            .Start(
                                exe_path +
                                "/scripts/monodevelop_run_script", file_path);
                        }
                        break;

                        case "mkv":
                        {
                            var proc_info = new System.Diagnostics.ProcessStartInfo();
                            proc_info.FileName =
                                exe_path + "/scripts/mpv_script";
                            proc_info.Arguments = file_path;
                            System.Diagnostics.Process
                            .Start(proc_info);
                        }
                        break;
                        }
                    }
                    break;

                    case 1:
                    {
                        context_menu_current_option = 0;
                    }
                    break;

                    case 2:
                    {
                        context_menu_current_option = 0;
                    }
                    break;

                    case 3:
                    {
                        context_menu_current_option = 0;
                    }
                    break;

                    case 4:
                    {
                        context_menu_current_option = 0;
                        var last_write_date = System.IO.File.GetLastWriteTime(file_path);
                        var creation_time   = System.IO.File.GetCreationTime(file_path);
                        System.Console.WriteLine("File attribute: {0}", System.IO.File.GetAttributes(file_path.ToString()));
                        System.Console.WriteLine("Last write time: {0} {1}", last_write_date.ToShortDateString(), last_write_date.ToShortTimeString());
                        System.Console.WriteLine("Creation time: {0} {1}", creation_time.ToShortDateString(), creation_time.ToShortTimeString());
                        System.Console.Read();
                    }
                    break;
                    }
                }
                break;

                case System.ConsoleKey.Backspace:
                case System.ConsoleKey.Escape:
                {
                    Run = false;
                } break;
                }
            }
        }
Exemple #11
0
        private static string FileManager()
        {
            string choosen_file = string.Empty;

            file_manager_run             = true;
            System.Console.CursorVisible = false;
            while (file_manager_run)
            {
                System.Console.Clear();
                FileManagerShow();
                System.ConsoleKeyInfo consoleInfo = System.Console.ReadKey();
                switch (consoleInfo.Key)
                {
                case System.ConsoleKey.Enter:
                {
                    FileManagerUpdate();
                    if (file_manager_element_index < file_manager_current_directories.Length &&
                        file_manager_current_directories.Length != 0)
                    {
                        System
                        .IO
                        .Directory
                        .SetCurrentDirectory(file_manager_current_directories[file_manager_element_index]);
                        file_manager_current_directory = System.IO.Directory.GetCurrentDirectory();
                        file_manager_element_index     = 0;
                    }
                    else
                    {
                        //call .method ShowContextMenu
                        ShowContextMenu();
                        file_manager_element_index = 0;
                    }
                }
                break;

                case System.ConsoleKey.Backspace:
                {
                    FileManagerUpdate();
                    string new_current_directory =
                        System.IO
                        .Directory
                        .GetCurrentDirectory();
                    if (new_current_directory.Length > 5)
                    {
                        new_current_directory =
                            new_current_directory.Substring(0,
                                                            new_current_directory.LastIndexOf("/"));
                        System.IO
                        .Directory.SetCurrentDirectory(new_current_directory);
                        file_manager_current_directory = System.IO.Directory.GetCurrentDirectory();
                        file_manager_element_index     = 0;
                    }
                }
                break;

                case System.ConsoleKey.DownArrow:
                {
                    if (file_manager_element_index < (file_manager_elements_count - 1))
                    {
                        ++file_manager_element_index;
                    }
                }
                break;

                case System.ConsoleKey.UpArrow:
                {
                    if (file_manager_element_index != 0)
                    {
                        --file_manager_element_index;
                    }
                }
                break;

                case System.ConsoleKey.Escape:
                {
                    file_manager_run = false;
                }
                break;
                }
            }
            return(choosen_file);
        }
Exemple #12
0
 public bool Equals(System.ConsoleKeyInfo obj)
 {
     return(default(bool));
 }
Exemple #13
0
 /// <summary>
 /// Draws the widget to the current frame, after evaluating updating input.
 /// </summary>
 /// <param name="g">The Graphics to draw to</param>
 /// <param name="keyInfo">The User input to be handled.</param>
 public virtual void Draw(Graphics g, System.ConsoleKeyInfo keyInfo)
 {
     throw new System.NotImplementedException();
 }
Exemple #14
0
        private static void Main(string[] args)
        {
            Logger.InitializeLogger(LogManager.GetLogger(typeof(Program)));
            Assembly        assembly        = Assembly.GetExecutingAssembly();
            FileVersionInfo fileVersionInfo = FileVersionInfo.GetVersionInfo(assembly.Location);

            System.Console.Title = $"OpenNos Import Console v{fileVersionInfo.ProductVersion}";
            System.Console.WriteLine("===============================================================================\n"
                                     + $"                 IMPORT CONSOLE VERSION {fileVersionInfo.ProductVersion} by OpenNos Team\n" +
                                     "===============================================================================\n");

            DataAccessHelper.Initialize();

            Logger.Log.Warn(Language.Instance.GetMessageFromKey("NEED_TREE"));
            System.Console.BackgroundColor = System.ConsoleColor.Blue;
            System.Console.WriteLine("Root");
            System.Console.ResetColor();
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_Item.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_MapIDData.txt");
            System.Console.WriteLine($"-----_code_{System.Configuration.ConfigurationManager.AppSettings["language"]}_monster.txt");
            System.Console.WriteLine($"-----Item.dat");
            System.Console.WriteLine($"-----MapIDData.dat");
            System.Console.WriteLine($"-----monster.dat");
            System.Console.WriteLine($"-----packet.txt");
            System.Console.BackgroundColor = System.ConsoleColor.Blue;
            System.Console.WriteLine("-----map");
            System.Console.ResetColor();
            System.Console.WriteLine("----------0");
            System.Console.WriteLine("----------1");
            System.Console.WriteLine("----------...");
            Logger.Log.Warn(Language.Instance.GetMessageFromKey("ENTER_PATH"));
            string        folder  = System.Console.ReadLine();
            ImportFactory factory = new ImportFactory(folder);

            factory.ImportPackets();

            //Confirmation

            System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_ALL")} [Y/n]");
            System.ConsoleKeyInfo key = System.Console.ReadKey(true);
            if (key.KeyChar != 'n')
            {
                factory.ImportMaps();
                factory.loadMaps();
                factory.ImportPortals();
                factory.ImportNpcMonsters();
                factory.ImportMapNpcs();
                factory.ImportMonsters();
                factory.ImportShops();
                factory.ImportItems();
                factory.ImportShopItems();
            }
            else
            {
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPS")} [Y/n]");
                System.ConsoleKeyInfo key1 = System.Console.ReadKey(true);
                if (key1.KeyChar != 'n')
                {
                    factory.ImportMaps();
                }
                factory.loadMaps();
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_PORTALS")} [Y/n]");
                System.ConsoleKeyInfo key2 = System.Console.ReadKey(true);
                if (key2.KeyChar != 'n')
                {
                    factory.ImportPortals();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_NPCS")} [Y/n]");
                System.ConsoleKeyInfo key3 = System.Console.ReadKey(true);
                if (key3.KeyChar != 'n')
                {
                    factory.ImportNpcMonsters();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MAPNPCS")} [Y/n]");
                System.ConsoleKeyInfo key4 = System.Console.ReadKey(true);
                if (key3.KeyChar != 'n')
                {
                    factory.ImportMapNpcs();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_MONSTERS")} [Y/n]");
                System.ConsoleKeyInfo key5 = System.Console.ReadKey(true);
                if (key3.KeyChar != 'n')
                {
                    factory.ImportMonsters();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SHOPS")} [Y/n]");
                System.ConsoleKeyInfo key6 = System.Console.ReadKey(true);
                if (key4.KeyChar != 'n')
                {
                    factory.ImportShops();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_ITEMS")} [Y/n]");
                System.ConsoleKeyInfo key7 = System.Console.ReadKey(true);
                if (key5.KeyChar != 'n')
                {
                    factory.ImportItems();
                }
                System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("PARSE_SHOPITEMS")} [Y/n]");
                System.ConsoleKeyInfo key8 = System.Console.ReadKey(true);
                if (key6.KeyChar != 'n')
                {
                    factory.ImportShopItems();
                }
            }
            System.Console.WriteLine($"{Language.Instance.GetMessageFromKey("DONE")}");
            Thread.Sleep(5000);
        }
Exemple #15
0
 public static System.ConsoleKeyInfo ReadKeyInfo()
 {
     Last_Key_Pressed = System.Console.ReadKey(true);
     return(Last_Key_Pressed);
 }
Exemple #16
0
        /// <summary>
        /// Will wait for the command keys being sent.
        /// </summary>
        private void ReadCommandKeys()
        {
            //reset the cancellation token.
            _cancellationToken = new CancellationTokenSource();
            //update the busy status
            var busyStatus = new Task(BusyIndicator, _cancellationToken.Token);

            //start the status workers.
            busyStatus.Start();

            //this will be our worker thread.
            System.ConsoleKeyInfo cki = new System.ConsoleKeyInfo();
            //Clear the console.
            Con.Clear();

            //make room for the status' on the top of the page.
            Con.WriteLine(" ");
            Con.WriteLine(" ");
            Con.WriteLine(" ");
            Con.WriteLine(" ");

            //Instructions
            Con.WriteLine("Use your keyboard to control the drone, use the ESC key to exit");

            Con.WriteLine(" ");
            Con.ForegroundColor = System.ConsoleColor.Green;
            Con.WriteLine("W - Pitch Forward");
            Con.WriteLine("S - Pitch Back");
            Con.WriteLine("A - Roll Left");
            Con.WriteLine("D - Roll Right");
            Con.WriteLine(" ");

            Con.ForegroundColor = System.ConsoleColor.Blue;
            Con.WriteLine("Up Arrow    - Yaw Upwards");
            Con.WriteLine("Down Arrow  - Yaw Downwards");
            Con.WriteLine("Left Arrow  - Pitch Left");
            Con.WriteLine("Right Arrow - Pitch Right");
            Con.WriteLine(" ");

            Con.ForegroundColor = System.ConsoleColor.Yellow;
            Con.WriteLine("E - Emergency Land");
            Con.WriteLine("H - Hover");
            Con.WriteLine("T - Takeoff");
            Con.WriteLine("L - Land");

            do
            {
                cki = Con.ReadKey(true);
                //time to check the key that was pressed.

                switch (cki.Key)
                {
                case CKey.W:
                    _client.Progress(flightMode, pitch: PITCHVAL);
                    break;

                case CKey.S:
                    _client.Progress(flightMode, pitch: -PITCHVAL);
                    break;

                case CKey.A:
                    _client.Progress(flightMode, roll: -ROLLVAL);
                    break;

                case CKey.D:
                    _client.Progress(flightMode, roll: ROLLVAL);
                    break;

                case CKey.UpArrow:
                    _client.Progress(flightMode, gaz: GAZVAL);
                    break;

                case CKey.DownArrow:
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    break;

                case CKey.LeftArrow:
                    _client.Progress(flightMode, yaw: -YAWVAL);
                    break;

                case CKey.RightArrow:
                    _client.Progress(flightMode, yaw: YAWVAL);
                    break;

                case CKey.Spacebar:
                    //jump!
                    _client.Progress(flightMode, gaz: GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    Thread.Sleep(450);
                    _client.Progress(flightMode, gaz: -GAZVAL);
                    Thread.Sleep(450);

                    break;

                case CKey.T:
                    _client.Takeoff();
                    break;

                case CKey.L:
                    _client.Land();
                    break;

                case CKey.H:
                    _client.Hover();
                    break;

                case CKey.E:
                    _client.Emergency();
                    break;

                case CKey.Escape:
                    break;
                }
            } while (cki.Key != CKey.Escape);

            //Tell the busyStatus to cancel and stop.
            _cancellationToken.Cancel();
        }