/***********\ * 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(); }
/// <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(); } }