private void CheckAndHandleTileImpact(int mapX, int mapY) { if (!_map.CellIsOccupied(mapX, mapY)) { return; } IBoxCollidable collisionTile = (IBoxCollidable)_map.GetTile(mapX, mapY); if ((collisionTile.Collidable) && (_collisionController.BoxAndCircularCollidersHaveCollided(collisionTile, this))) { collisionTile.HandleCollision(this); this.HandleCollision(collisionTile); } }