public override void Draw(GameTime time) { // While transitioning all black if (transitionMs > 0) { SpriteBatch.GraphicsDevice.Clear(Color.Black); return; } int bgW = sprBackground.Width; int bgH = TileMap.getPixelHeight(); int bgX = offset.X % (bgW * 2); int bgY = offset.Y % (bgH * 2); SpriteBatch.Draw(sprBackground, new Rectangle(bgX, bgY, bgW, bgH), Color.White); // # Draw a second one in front of first to wrap around bgX += bgW; SpriteBatch.Draw(sprBackground, new Rectangle(bgX, bgY, bgW, bgH), Color.White); // Draw map TileMap.draw(SpriteBatch, offset, time.ElapsedGameTime); // Draw hotbar HotBar.draw(SpriteBatch); }