public void Save() { var gon = new GonObject(); gon.InsertChild(nameof(NumLevels), GonObject.Manip.FromInt(NumLevels)); gon.InsertChild(nameof(NumAreas), GonObject.Manip.FromInt(NumAreas)); gon.InsertChild(nameof(DoMusic), GonObject.Manip.FromBool(DoMusic)); gon.InsertChild(nameof(DoPalettes), GonObject.Manip.FromBool(DoPalettes)); gon.InsertChild(nameof(MusicPerLevel), GonObject.Manip.FromBool(MusicPerLevel)); gon.InsertChild(nameof(DoShaders), GonObject.Manip.FromBool(DoShaders)); gon.InsertChild(nameof(DoParticles), GonObject.Manip.FromBool(DoParticles)); gon.InsertChild(nameof(DoOverlays), GonObject.Manip.FromBool(DoOverlays)); gon.InsertChild(nameof(DoTileGraphics), GonObject.Manip.FromBool(DoTileGraphics)); gon.InsertChild(nameof(DoNevermoreTilt), GonObject.Manip.FromBool(DoNevermoreTilt)); gon.InsertChild(nameof(DoExodusWobble), GonObject.Manip.FromBool(DoExodusWobble)); gon.InsertChild(nameof(DoNPCs), GonObject.Manip.FromBool(DoNPCs)); gon.InsertChild(nameof(UseAreaTileset), GonObject.Manip.FromBool(UseAreaTileset)); gon.InsertChild(nameof(CacheRuns), GonObject.Manip.FromInt(CacheRuns)); gon.InsertChild(nameof(AreaType), GonObject.Manip.FromString(AreaType)); gon.InsertChild(nameof(RepeatTolerance), GonObject.Manip.FromInt(RepeatTolerance)); gon.InsertChild(nameof(AltLevel), GonObject.Manip.FromString(AltLevel)); gon.InsertChild(nameof(GenerateCustomParticles), GonObject.Manip.FromBool(GenerateCustomParticles)); gon.InsertChild(nameof(MaxParticles), GonObject.Manip.FromInt(MaxParticles)); gon.InsertChild(nameof(GameDirectory), GonObject.Manip.FromString(GameDirectory)); gon.InsertChild(nameof(MaxParticleEffects), GonObject.Manip.FromInt(MaxParticleEffects)); gon.InsertChild(nameof(ManualLoad), GonObject.Manip.FromBool(ManualLoad)); gon.InsertChild(nameof(DoCorruptions), GonObject.Manip.FromBool(DoCorruptions)); gon.InsertChild(nameof(MirrorMode), GonObject.Manip.FromBool(MirrorMode)); gon.InsertChild(nameof(DeadRacer), GonObject.Manip.FromBool(DeadRacer)); gon.InsertChild(nameof(CartLives), GonObject.Manip.FromInt(CartLives)); gon.InsertChild(nameof(DoPhysics), GonObject.Manip.FromBool(DoPhysics)); gon.InsertChild(nameof(PlatformPhysics), GonObject.Manip.FromBool(PlatformPhysics)); gon.InsertChild(nameof(PlayerPhysics), GonObject.Manip.FromBool(PlayerPhysics)); gon.InsertChild(nameof(WaterPhysics), GonObject.Manip.FromBool(WaterPhysics)); gon.InsertChild(nameof(LowGravPhysics), GonObject.Manip.FromBool(LowGravPhysics)); gon.InsertChild(nameof(LevelMerge), GonObject.Manip.FromBool(LevelMerge)); gon.InsertChild(nameof(ToolsInDirectory), GonObject.Manip.FromString(ToolsInDirectory)); gon.InsertChild(nameof(ToolsOutDirectory), GonObject.Manip.FromString(ToolsOutDirectory)); gon.InsertChild(nameof(RandomizeAreaType), GonObject.Manip.FromBool(RandomizeAreaType)); gon.InsertChild(nameof(CRSmart), GonObject.Manip.FromBool(CRSmart)); gon.InsertChild(nameof(CROverlays), GonObject.Manip.FromBool(CROverlays)); gon.InsertChild(nameof(CRTumors), GonObject.Manip.FromBool(CRTumors)); gon.InsertChild(nameof(CRAddTiles), GonObject.Manip.FromInt(CRAddTiles)); gon.InsertChild(nameof(CRAddEnemies), GonObject.Manip.FromInt(CRAddEnemies)); gon.InsertChild(nameof(CRSpikeStrips), GonObject.Manip.FromBool(CRSpikeStrips)); gon.InsertChild(nameof(CRCrumbles), GonObject.Manip.FromBool(CRCrumbles)); gon.InsertChild(nameof(CRCrushers), GonObject.Manip.FromBool(CRCrushers)); gon.InsertChild(nameof(CRChaos), GonObject.Manip.FromBool(CRChaos)); gon.InsertChild(nameof(CRWaterLevels), GonObject.Manip.FromBool(CRWaterLevels)); gon.InsertChild(nameof(UserName), GonObject.Manip.FromString(UserName)); gon.Save("data/text/settings.gon"); }
public static void SaveShadersList(List <Shader> ShadersList) { if (ShadersList != null) { var gon = new GonObject(); foreach (var shader in ShadersList) { var item = new GonObject(); item.InsertChild(GonObject.Manip.FromBool(shader.Enabled, "enabled")); item.InsertChild(GonObject.Manip.FromString(shader.Content, "content")); gon.InsertChild(shader.Name, item); } gon.Save($"data/text/shaders.gon"); } }