public override void Init() { base.Init(); widgets = new Widget[] { Make(-140, -150, "Clouds colour", OnWidgetClick, g => g.Map.CloudsCol.ToRGBHexString(), (g, v) => g.Map.SetCloudsColour(FastColour.Parse(v))), Make(-140, -100, "Sky colour", OnWidgetClick, g => g.Map.SkyCol.ToRGBHexString(), (g, v) => g.Map.SetSkyColour(FastColour.Parse(v))), Make(-140, -50, "Fog colour", OnWidgetClick, g => g.Map.FogCol.ToRGBHexString(), (g, v) => g.Map.SetFogColour(FastColour.Parse(v))), Make(-140, 0, "Clouds speed", OnWidgetClick, g => g.Map.CloudsSpeed.ToString(), (g, v) => g.Map.SetCloudsSpeed(Single.Parse(v))), Make(-140, 50, "Clouds height", OnWidgetClick, g => g.Map.CloudHeight.ToString(), (g, v) => g.Map.SetCloudsLevel(Int32.Parse(v))), Make(140, -100, "Sunlight colour", OnWidgetClick, g => g.Map.Sunlight.ToRGBHexString(), (g, v) => g.Map.SetSunlight(FastColour.Parse(v))), Make(140, -50, "Shadow colour", OnWidgetClick, g => g.Map.Shadowlight.ToRGBHexString(), (g, v) => g.Map.SetShadowlight(FastColour.Parse(v))), Make(140, 0, "Weather", OnWidgetClick, g => g.Map.Weather.ToString(), (g, v) => g.Map.SetWeather((Weather)Enum.Parse(typeof(Weather), v))), Make(140, 50, "Water level", OnWidgetClick, g => g.Map.EdgeHeight.ToString(), (g, v) => g.Map.SetEdgeLevel(Int32.Parse(v))), MakeBack(false, titleFont, (g, w) => g.SetNewScreen(new OptionsGroupScreen(g))), null, null, null, }; widgets[7].Metadata = typeof(Weather); MakeDefaultValues(); MakeValidators(); }
public override void Init() { base.Init(); buttons = new ButtonWidget[] { Make(-140, -150, "Clouds colour", OnWidgetClick, g => g.Map.CloudsCol.ToRGBHexString(), (g, v) => g.Map.SetCloudsColour(FastColour.Parse(v))), Make(-140, -100, "Sky colour", OnWidgetClick, g => g.Map.SkyCol.ToRGBHexString(), (g, v) => g.Map.SetSkyColour(FastColour.Parse(v))), Make(-140, -50, "Fog colour", OnWidgetClick, g => g.Map.FogCol.ToRGBHexString(), (g, v) => g.Map.SetFogColour(FastColour.Parse(v))), Make(-140, 0, "Clouds speed", OnWidgetClick, g => g.Map.CloudsSpeed.ToString(), (g, v) => g.Map.SetCloudsSpeed(Single.Parse(v))), Make(-140, 50, "Clouds height", OnWidgetClick, g => g.Map.CloudHeight.ToString(), (g, v) => g.Map.SetCloudsLevel(Int32.Parse(v))), Make(140, -150, "Sunlight colour", OnWidgetClick, g => g.Map.Sunlight.ToRGBHexString(), (g, v) => g.Map.SetSunlight(FastColour.Parse(v))), Make(140, -100, "Shadow colour", OnWidgetClick, g => g.Map.Shadowlight.ToRGBHexString(), (g, v) => g.Map.SetShadowlight(FastColour.Parse(v))), Make(140, -50, "Weather", OnWidgetClick, g => g.Map.Weather.ToString(), (g, v) => g.Map.SetWeather((Weather)Enum.Parse(typeof(Weather), v))), Make(140, 0, "Water level", OnWidgetClick, g => g.Map.EdgeHeight.ToString(), (g, v) => g.Map.SetEdgeLevel(Int32.Parse(v))), MakeBack(false, titleFont, (g, w) => g.SetNewScreen(new PauseScreen(g))), null, null, }; buttons[7].Metadata = typeof(Weather); defaultIndex = buttons.Length - 2; okayIndex = buttons.Length - 1; defaultValues = new [] { Map.DefaultCloudsColour.ToRGBHexString(), Map.DefaultSkyColour.ToRGBHexString(), Map.DefaultFogColour.ToRGBHexString(), (1).ToString(), (game.Map.Height + 2).ToString(), Map.DefaultSunlight.ToRGBHexString(), Map.DefaultShadowlight.ToRGBHexString(), Weather.Sunny.ToString(), (game.Map.Height / 2).ToString(), }; validators = new MenuInputValidator[] { new HexColourValidator(), new HexColourValidator(), new HexColourValidator(), new RealValidator(0, 1000), new IntegerValidator(-10000, 10000), new HexColourValidator(), new HexColourValidator(), new EnumValidator(), new IntegerValidator(-2048, 2048), }; }