Пример #1
0
        /***********\
         * PROCESS *
        \***********/
        private void Process(DataTable dataTable)
        {
            Stopwatch launchStopwatch = new Stopwatch();
            switch (dataTable.TableName)
            {
                case "REPLACE":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "REPLACE..... ");
                    try
                    {
                        Text.TextRemplacement replaceProcess = new Text.TextRemplacement(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = replaceProcess.Run();
                        _Logs += "\r\n== REPLACE PROCESS ==\r\n";
                        foreach(String logLine in replaceProcess.Log)
                            _Logs += logLine + "\r\n";
                        replaceProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {   ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== REPLACE ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "CUT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "CUT..... ");
                    try
                    {
                        Text.TextCut cutProcess = new Text.TextCut(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = cutProcess.Run();
                        _Logs += "\r\n== CUT PROCESS ==\r\n";
                        foreach (String logLine in cutProcess.Log)
                            _Logs += logLine + "\r\n";
                        cutProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== CUT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "COLUMNS":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "COLUMNS..... ");
                    try
                    {
                        Text.TextColumns columnsProcess = new Text.TextColumns(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = columnsProcess.Run();
                        _Logs += "\r\n== COLUMNS PROCESS ==\r\n";
                        foreach (String logLine in columnsProcess.Log)
                            _Logs += logLine + "\r\n";
                        columnsProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== COLUMNS ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "COLUMNDELETER":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "COLUMNDELETER..... ");
                    try
                    {
                        MyTextColumnsDeleter.TextColumnsDeleter columnDeleterProcess = new MyTextColumnsDeleter.TextColumnsDeleter(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = columnDeleterProcess.Run();
                        _Logs += "\r\n== COLUMNDELETER ==\r\n";
                        foreach (String logLine in columnDeleterProcess.Log)
                            _Logs += logLine + "\r\n";
                        columnDeleterProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== COLUMNDELETER ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "COLUMNMOVER":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "COLUMNMOVER..... ");
                    try
                    {
                        MyTextColumnsDeleter.ColumnMove columnMoverProcess = new MyTextColumnsDeleter.ColumnMove(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = columnMoverProcess.run();
                        foreach (String logLine in columnMoverProcess.Log)
                            _Logs += logLine + "\r\n";
                        columnMoverProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== COLUMNMOVER ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                        _Logs += "\r\n== COLUMNMOVER ==\r\n";

                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "EXPAND":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "EXPAND..... ");
                    try
                    {
                        Text.TextExpand expandProcess = new Text.TextExpand(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = expandProcess.Run();
                        _Logs += "\r\n== EXPAND PROCESS ==\r\n";
                        foreach (String logLine in expandProcess.Log)
                            _Logs += logLine + "\r\n";
                        expandProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== EXPAND ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "FILTER":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "FILTER..... ");
                    try
                    {
                        Text.TextFilter filterProcess = new Text.TextFilter(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = filterProcess.Run();
                        _Logs += "\r\n== FILTER PROCESS ==\r\n";
                        foreach (String logLine in filterProcess.Log)
                            _Logs += logLine + "\r\n";
                        filterProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== FILTER ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "LINEDEL":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "LINEDEL..... ");
                    try
                    {
                        LineDeleter.LineDeleter lineDeleterProcess = new LineDeleter.LineDeleter(_TabData, dataTable, _Config.Get_Headerlines(),_Config.Get_DataSeparator(), _CurrentFile);
                        _TabData = lineDeleterProcess.Run();
                        lineDeleterProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== LINEDEL ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "DATECONVERT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "DATECONVERT..... ");
                    try
                    {
                        Text.TextDateConvert dateConvertProcess = new Text.TextDateConvert(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = dateConvertProcess.Run();
                        _Logs += "\r\n== DATECONVERT PROCESS ==\r\n";
                        foreach (String logLine in dateConvertProcess.Log)
                            _Logs += logLine + "\r\n";
                        dateConvertProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== DATECONVERT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "TRANSLATE":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "TRANSLATE..... ");
                    try
                    {
                        Text.TextTranslate translateProcess = new Text.TextTranslate(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = translateProcess.Run();
                        _Logs += "\r\n== TRANSLATE PROCESS ==\r\n";
                        foreach (String logLine in translateProcess.Log)
                            _Logs += logLine + "\r\n";
                        translateProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== TRANSLATE ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "TRANSCRIPT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "TRANSCRIPT..... ");
                    try
                    {
                        Text.TextTranscript transcriptProcess = new Text.TextTranscript(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = transcriptProcess.Run();
                        _Logs += "\r\n== TRANSCRIPT PROCESS ==\r\n";
                        foreach (String logLine in transcriptProcess.Log)
                            _Logs += logLine + "\r\n";
                        transcriptProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== TRANSCRIPT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "DATEFORMAT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "DATEFORMAT..... ");
                    try
                    {
                        DateTime.Date dateformatProcess = new DateTime.Date(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines(), _CurrentFile);
                        _TabData = dateformatProcess.Run();
                        dateformatProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== DATEFORMAT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "TIMEFORMAT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "TIMEFORMAT..... ");
                    try
                    {
                        DateTime.TimeFormat timeformatProcess = new DateTime.TimeFormat(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = timeformatProcess.Run();
                        _Logs += "\r\n== TIMEFORMAT PROCESS ==\r\n";
                        foreach (String logLine in timeformatProcess.Log)
                            _Logs += logLine + "\r\n";
                        timeformatProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== TIMEFORMAT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "TIMECONVERT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "TIMECONVERT..... ");
                    try
                    {
                        DateTime.TimeConvert timeconvertProcess = new DateTime.TimeConvert(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = timeconvertProcess.Run();
                        _Logs += "\r\n== TIMECONVERT PROCESS ==\r\n";
                        foreach (String logLine in timeconvertProcess.Log)
                            _Logs += logLine + "\r\n";
                        timeconvertProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== TIMECONVERT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "WRITE":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "WRITE..... ");
                    try
                    {
                        Tools.Write writeProcess = new Tools.Write(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = writeProcess.Run();
                        _Logs += "\r\n== WRITE PROCESS ==\r\n";
                        foreach (String logLine in writeProcess.Log)
                            _Logs += logLine + "\r\n";
                        writeProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== WRITE ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "COPY":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "COPY..... ");
                    try
                    {
                        Text.TextCopy copyProcess = new Text.TextCopy(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = copyProcess.Run();
                        _Logs += "\r\n== COPY PROCESS ==\r\n";
                        foreach (String logLine in copyProcess.Log)
                            _Logs += logLine + "\r\n";
                        copyProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== COPY ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "CELLCOPY":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "CELLCOPY..... ");
                    try
                    {
                        Text.TextCellCopy cellcopyProcess = new Text.TextCellCopy(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = cellcopyProcess.Run();
                        _Logs += "\r\n== CELLCOPY PROCESS ==\r\n";
                        foreach (String logLine in cellcopyProcess.Log)
                            _Logs += logLine + "\r\n";
                        cellcopyProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== CELLCOPY ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "VALUECHECKER":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "VALUECHECKER..... ");
                    try
                    {
                        Controls.ControlValue valuecheckerProcess = new Controls.ControlValue(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines(), _Config.Get_TargetsNumber(), _Config.Get_DecimalSeparator());
                        _TabData = valuecheckerProcess.Run();
                        _Logs += "\r\n== VALUECHECKER PROCESS ==\r\n";
                        foreach (String logLine in valuecheckerProcess.Log)
                            _Logs += logLine + "\r\n";
                        valuecheckerProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== VALUECHECKER ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "VALUECORRECTOR":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "VALUECORRECTOR..... ");
                    try
                    {
                        Controls.CorrectValue valuecorrectorProcess = new Controls.CorrectValue(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_TargetsNumber(), _Config.Get_DecimalSeparator());
                        _TabData = valuecorrectorProcess.Run();
                        _Logs += "\r\n== VALUECORRECTOR PROCESS ==\r\n";
                        foreach (String logLine in valuecorrectorProcess.Log)
                            _Logs += logLine + "\r\n";
                        valuecorrectorProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== VALUECORRECTOR ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "QHFORMAT":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "QHFORMAT..... ");
                    try
                    {
                        QH.TotalTV qhformatProcess = new QH.TotalTV(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines(), _Config.Get_TargetsNumber());
                        _TabData = qhformatProcess.Run();
                        _Logs += "\r\n== QHFORMAT PROCESS ==\r\n";
                        foreach (String logLine in qhformatProcess.Log)
                            _Logs += logLine + "\r\n";
                        qhformatProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== QHFORMAT ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "REMOVER":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "REMOVER..... ");
                    try
                    {
                        Remover.RemDoublons removerProcess = new Remover.RemDoublons(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = removerProcess.Run();
                        _Logs += "\r\n== REMOVE DOUBLONS ==\r\nDone.";
                        removerProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== REMOVER ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "CALCUL":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "CALCUL..... ");
                    try
                    {
                        Numbers.Calculator calculProcess = new Numbers.Calculator(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = calculProcess.Run();
                        _Logs += "\r\n== CALCUL ==\r\n";
                        foreach (String logLine in calculProcess.Log)
                            _Logs += logLine + "\r\n";
                        calculProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== CALCUL ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "LEVELS":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "LEVELS..... ");
                    try
                    {
                        Levels.Levels levelsProcess = new Levels.Levels(_TabData, dataTable, _Config.Get_DataSeparator(), _Config.Get_Headerlines());
                        _TabData = levelsProcess.Run();
                        _Logs += "\r\n== LEVELS ==\r\n";
                        foreach (String logline in levelsProcess.Log)
                            _Logs += logline + "\r\n";
                        levelsProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== LEVELS ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "DUPLICATES":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "DUPLICATES..... ");
                    try
                    {
                        Text.RemoveDuplicate duplicatesProcess = new Text.RemoveDuplicate(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = duplicatesProcess.Run();
                        _Logs += "\r\n== DUPLICATES ==\r\n";
                        foreach (String logline in duplicatesProcess.Log)
                            _Logs += logline + "\r\n";
                        duplicatesProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== DUPLICATES ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;

                case "TRANSPOSE":
                    StartStopWatch(launchStopwatch);
                    UpdateRichTextBox("function", "TRANSPOSE..... ");
                    try
                    {
                        Transpose.Transpose transposeProcess = new Transpose.Transpose(_TabData, dataTable, _Config.Get_DataSeparator());
                        _TabData = transposeProcess.run();
                        _Logs += "\r\n== TRANSPOSE ==\r\n";
                        foreach (String logline in transposeProcess.log)
                            _Logs += logline + "\r\n";
                        transposeProcess = null;
                        UpdateRichTextBox("complete", "Complete!");
                    }
                    catch (Exception ex)
                    {
                        ComponentFactory.Krypton.Toolkit.KryptonMessageBox.Show("== TRANSPOSE ==\r\n" + ex.Message, "Analytics", MessageBoxButtons.OK);
                        UpdateRichTextBox("fail", "FAIL");
                    }
                    StopStopWatch(launchStopwatch);
                    break;
            }
            GC.Collect();
        }
Пример #2
0
        /// <summary>
        /// Movement for the character
        /// </summary>
        /// <param name="sender"> Event handler</param>
        /// <param name="args">Event handler</param>
        /// <param name="player"> The player character</param>
        /// <param name="gekozenLevel">The chosen level</param>
        /// <param name="level">the tilemap for the level</param>
        public async void movementCharacter(ICanvasAnimatedControl sender, CanvasAnimatedDrawEventArgs args, Player player, Levels.Levels level)
        {
            player.x += player.velX;
            player.y += player.velY;

            if (keyPressed(VirtualKey.A) && !keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x - 1, player.y, level.gekozenLevel);
                if (tile.CanWalk == true) //positive
                {
                    player.x -= player.move_speed;
                    player.returnStamina();
                }
            }
            if (keyPressed(VirtualKey.S) && !keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x, player.y + 33, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.y += player.move_speed;
                    player.returnStamina();
                }
            }
            if (keyPressed(VirtualKey.D) && !keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x + 33, player.y, level.gekozenLevel);
                if (tile.CanWalk == true) //positive
                {
                    player.x += player.move_speed;
                    player.returnStamina();
                }
            }
            if (keyPressed(VirtualKey.W) && !keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x, player.y - 2, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.y -= player.move_speed;
                    player.returnStamina();
                }
            }
            if (keyPressed(VirtualKey.A) && keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x - 1, player.y, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.x -= player.run();
                }
            }
            if (keyPressed(VirtualKey.S) && keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x, player.y + 33, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.y += player.run();
                }
            }
            if (keyPressed(VirtualKey.D) && keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x + 33, player.y, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.x += player.run();
                }
            }
            if (keyPressed(VirtualKey.W) && keyPressed(VirtualKey.Shift))
            {
                Tile tile = level.getPlayerTile(player.x, player.y - 1, level.gekozenLevel);
                if (tile.CanWalk == true)
                {
                    player.y -= player.run();
                }
            }//Drop item in hand
            if (keyPressed(VirtualKey.G))
            {
                mainPage.addItem(player);
            }
            //Pickup Item
            if (keyPressed(VirtualKey.H))
            {
                for (int i = 0; i < mainPage.weapons.Count; i++)
                {
                    System.Diagnostics.Debug.WriteLine("Player: " + player.x + ", " + player.y);
                    System.Diagnostics.Debug.Write(weapons);
                    if (mainPage.weapons[i] != null)
                    {
                        if ((mainPage.weapons[i].x) - 32 < player.x && player.x < (mainPage.weapons[i].x + 32))
                        {
                            if ((mainPage.weapons[i].y) - 32 < player.y && player.y < (mainPage.weapons[i].y + 32))
                            {
                                player.pickUpWeapon(mainPage.weapons[i]);
                                mainPage.removeItem(mainPage.weapons[i]);
                            }
                        }
                    }
                }
            }
            if (keyPressed(VirtualKey.R))
            {
                // The current weapon holds less bullets than it can
                if (player.currentWeapon.getAmmo() < player.currentWeapon.getMagazineSize())
                {
                    // The current weapon has additional ammo
                    if (player.currentWeapon.getAdditionalAmmo() > 0)
                    {
                        //await soundController.Play(SoundEfxEnum.RELOAD);
                        int difference = player.currentWeapon.getMagazineSize() - player.currentWeapon.getAmmo();
                        if (player.currentWeapon.getAdditionalAmmo() <= difference)
                        {
                            player.currentWeapon.setAmmo(player.currentWeapon.getAmmo() + player.currentWeapon.getAdditionalAmmo());
                            player.currentWeapon.setAdditionalAmmo(0);
                        }
                        else
                        {
                            player.currentWeapon.setAmmo(player.currentWeapon.getMagazineSize());
                            player.currentWeapon.setAdditionalAmmo(player.currentWeapon.getAdditionalAmmo() - difference);
                        }
                    }
                }
            }
            if (keyPressed(VirtualKey.Number1))
            {
                player.changeWeapon(1);
                mainPage.reloadArms();
            }
            if (keyPressed(VirtualKey.Number2))
            {
                player.changeWeapon(2);
                mainPage.reloadArms();
            }
            if (keyPressed(VirtualKey.Number3))
            {
                player.changeWeapon(3);
                mainPage.reloadArms();
            }
            if (keyPressed(VirtualKey.Space))
            {
                player.hit(1);
            }
            if (!keyPressed(VirtualKey.Shift))
            {
                player.returnStamina();
            }
        }