private static void CheckBulletIntersections(Player shooter) { for ( int i=0; i < shooter.bullets.Length; i++ ) { if ( shooter.bullets[i].isActive ) { //should be a while loop foreach ( Player otherPlayer in currentPlayers.Values ) { if ( shooter.playerNumber != otherPlayer.playerNumber ) { if ( otherPlayer.ship.isActive ) { if ( shooter.bullets[i].BoundingBox.Intersects ( otherPlayer.ship.BoundingBox ) ) { Console.WriteLine ( "Player {0} killed Player {1}", shooter.playerNumber, otherPlayer.playerNumber ); otherPlayer.ship.isActive = false; shooter.bullets[i].isActive = false; otherPlayer.WasDestroyed = true; //Player destroyed message netDataManager.SendPlayerDestroyed ( otherPlayer.playerNumber, shooter.playerNumber ); //Player score message shooter.AddPoints ( 1000 ); //add this to queue netDataManager.SendPlayerAddPoints ( shooter ); break; } } } } } } }