/** * Tick logic for running game */ private void GameRunningTickLogic() { Movement(); logic.CollisionCheck(); TimerCounter++; logic.NextLevel(); CreditBlink(); if (TimerCounter % 100 == 0 && logic.IsGameOver() == false) { alienbullets = logic.GenerateAlienBullet(); } if (TimerCounter % 400 == 0 && gameover == false) { alienbullets = logic.GenerateAlienBullet(); } // Flap the images to give them a moving look alienGroup = logic.AnimateAliens(TimerCounter); Invalidate(); if (logic.IsGameOver() == false) { //move by factor of speed logic.MoveAlienByFactorAndDirection(ClientRectangle.Width, TimerCounter); logic.moveUFO(); } logic.CheckForLanding(ClientRectangle.Bottom); if (logic.UFOOutOfBound()) { logic.ResetUFO(); } Invalidate(); }