public LoadScreen(ScreenManager manager, WorldBuilder builder, bool firstLoad)
     : base(manager)
 {
     this.builder = builder;
     this.firstLoad = firstLoad;
     Initialize();
 }
        protected override void LoadContent()
        {
            ppManager.LoadContent(GraphicsDevice, Content);

            BuildData data = new BuildData(Texture2D.FromFile(GraphicsDevice, "Content\\Heightmaps\\default.jpg"), 
                new Vector3(3.33f, 2.4f, 3.13f), Climate.Tropical, 0.8f, 0.04f, 2);

            WorldBuilder builder = new WorldBuilder(this, data);
            Thread builderThread = new Thread(new ThreadStart(builder.Build));
            builderThread.Start();

            ui.ScreenManager.ChangeScreen(new LoadScreen(ui.ScreenManager, builder, true));
        }
        private void BuildWorld()
        {
            Sim.Settings.Build.Default.Save();

            BuildData data = new BuildData();
            data.Heightmap = Textures.Heightmaps[bs.HMIndex];
            data.TerrainScale = new Vector3(bs.ScaleX, bs.ScaleY, bs.ScaleZ);
            data.Climate = (Climate)Enum.Parse(typeof(Climate), bs.Climate);
            data.TreeDensity = bs.TreeDensity;
            data.VegetationDensity = bs.VegDensity;
            data.Smoothing = bs.Smoothing;

            WorldBuilder builder = new WorldBuilder(manager.UI.Sim, data);
            Thread worldBuilderThread = new Thread(new ThreadStart(builder.Build));
            worldBuilderThread.Start();
            manager.ChangeScreen(new LoadScreen(manager, builder, false));
        }