public void ChargeCommand(ChargeCommand.Commands command) { switch (command) { case FireSafety.ChargeCommand.Commands.PressureX1: // Увеличить давление на 1 turret.Pressure(1); break; case FireSafety.ChargeCommand.Commands.PressureX2: // Увеличить давление на 2 turret.Pressure(2); break; case FireSafety.ChargeCommand.Commands.Refuel: Refuel(); break; case FireSafety.ChargeCommand.Commands.Charge: turret.Charge(); break; default: break; } }
public Action(MoveCommand.Commands moveCommand = MoveCommand.Commands.None, ChargeCommand.Commands chargeCommand = ChargeCommand.Commands.None, TurretCommand.Commands turretCommand = TurretCommand.Commands.None) { commands = new Command[(int)Types.Count]; commands[(int)Types.Move] = new MoveCommand(moveCommand); commands[(int)Types.Charge] = new ChargeCommand(chargeCommand); commands[(int)Types.Turret] = new TurretCommand(turretCommand); }
private static void DgvAlgorithm_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e) { DataGridViewRow row = ((DataGridView)sender).Rows[e.RowIndex]; // Собираем команды с добавленного DataGridViewRow MoveCommand.Commands moveCommand = Utilities.ToMoveCommand(row.Cells[1].Value.ToString()); ChargeCommand.Commands chargeCommand = Utilities.ToChargeCommand(row.Cells[2].Value.ToString()); TurretCommand.Commands turretCommand = Utilities.ToTurretCommand(row.Cells[3].Value.ToString()); // Добавляем Action в соответствующий алгоритм танка Action action = new Action(moveCommand, chargeCommand, turretCommand); ParallelAlgorithm.GetInstance().InsertAction((int)((DataGridView)sender).Tag, action, e.RowIndex); }
public static string ToChargeString(ChargeCommand.Commands value) { switch (value) { case ChargeCommand.Commands.PressureX1: return(Properties.Resources.ChargeCommandPressure1); case ChargeCommand.Commands.PressureX2: return(Properties.Resources.ChargeCommandPressure2); case ChargeCommand.Commands.Charge: return(Properties.Resources.ChargeCommandCharge); case ChargeCommand.Commands.Refuel: return(Properties.Resources.ChargeCommandRefuel); case ChargeCommand.Commands.None: return(Properties.Resources.ChargeCommandNone); } throw new Exception($"Строкового представления {value} в перечислении ChargeCommand.Commands не существует."); }