public MapRenderer(IntPtr mapRenderWindowHandle, IntPtr tileSetRenderHandle, MapEditor.MapEditorProperties mapEditorProperties)
{
_mapRenderWindow = new RenderWindow(mapRenderWindowHandle);
_tileSetRenderWindow = new RenderWindow(tileSetRenderHandle);
_mapRenderWindow.MouseButtonPressed += mapRenderWindow_MouseButtonPressed;
_mapRenderWindow.MouseMoved += mapRenderWindow_MouseMoved;
_tileSetRenderWindow.MouseButtonPressed += tileSetRenderWindow_MouseButtonPressed;
_tileSetRenderWindow.MouseMoved += tileSetRenderWindow_MouseMoved;
_tileSetRenderWindow.MouseButtonReleased += tileSetRenderWindow_MouseButtonReleased;
_mapEditorProperties = mapEditorProperties;
_mapEditorProperties.CurrentLayer = World.Map.Layers.Ground;
_mapEditorProperties.MapView = new View(this._mapRenderWindow.DefaultView);
_mousePositionText = new Text("", new Font(AppDomain.CurrentDomain.BaseDirectory + "/Data/Graphics/Fonts/MainFont.ttf"), 20);
this.LoadTileSets();
_tileSetView = this._tileSetRenderWindow.DefaultView;
this.Running = true;
this._mapRenderWindow.SetActive(false);
this._tileSetRenderWindow.SetActive(false);
new Thread(UpdateLoop).Start();
}