private void buttonSetup_Click(object sender, EventArgs e)
 {
     if (_setupGame.ShowDialog() == DialogResult.OK)
     {
         _stateGame = TypeStateGame.Created;
         ShowButtonControl();
     }
 }
 private void buttonPause_Click(object sender, EventArgs e)
 {
     switch (_stateGame)
     {
         case TypeStateGame.Started:
             timerControl.Enabled = false;
             _stateGame = TypeStateGame.Paused;
             break;
         case TypeStateGame.Paused:
             timerControl.Enabled = true;
             _stateGame = TypeStateGame.Started;
             break;
         default:
             break;
     }
     ShowButtonControl();
 }
 private void buttonStart_Click(object sender, EventArgs e)
 {
     switch (_stateGame)
     {
         case TypeStateGame.Created:
         case TypeStateGame.Restart:
             _time = _setupGame.GetTime();
             _battleField = new BattleField();
             _battleField.SetupGame(new List<Tank>(_setupGame.GetListTanks()));
             _bufferBmpGame = new Bitmap(_battleField.Size.Width, _battleField.Size.Height);
             _gfx = Graphics.FromImage(_bufferBmpGame);
             foreach (ObjectGame obj in _battleField.Objects)
             {
                 if (obj.Type == TypeObject.Background || obj.Type == TypeObject.Wall)
                 {
                     obj.Paint(_gfx);
                 }
             }
             timerControl.Enabled = true;
             _stateGame = TypeStateGame.Started;
             break;
         case TypeStateGame.Started:
         case TypeStateGame.Paused:
             timerControl.Enabled = false;
             _stateGame = TypeStateGame.Restart;
             break;
         default:
             break;
     }
     ShowButtonControl();
 }
 private void BattleFieldForm_Load(object sender, EventArgs e)
 {
     _setupGame = new SetupGame();
     _stateGame = TypeStateGame.UnCreate;
     ShowButtonControl();
 }
 private void timerControl_Tick(object sender, EventArgs e)
 {
     var result = _battleField.NextFrame();
     Paint();
     _time -= 1f / timerControl.Interval;
     ShowInformation();
     if (_time <= 0 || result == TypeResult.GameOver)
     {
         timerControl.Enabled = false;
         _stateGame = TypeStateGame.Restart;
         ShowButtonControl();
         MessageBox.Show("Game Over");
     }
 }