/// <inheritdoc cref="IGameLoopEvents.SaveLoaded"/> /// <param name="sender">The event sender.</param> /// <param name="e">The event arguments.</param> private void OnSaveLoaded(object sender, SaveLoadedEventArgs e) { if (Context.IsMainPlayer) { PyTkMigrator.MigrateItems("SleepyEye.TentTool, SleepyEye", _ => new TentTool()); } }
/// <inheritdoc cref="IGameLoopEvents.SaveLoaded"/> /// <param name="sender">The event sender.</param> /// <param name="e">The event arguments.</param> private void OnSaveLoaded(object sender, SaveLoadedEventArgs e) { if (Context.IsMainPlayer) { PyTkMigrator.MigrateItems("MoreGrassStarters.GrassStarterItem, MoreGrassStarters", data => { int which = data.GetOrDefault("whichGrass", int.Parse, defaultValue: this.MinGrassType); return(new GrassStarterItem(which)); }); PyTkMigrator.MigrateTerrainFeatures("MoreGrassStarters.CustomGrass, MoreGrassStarters", (feature, data) => { int type = data.GetOrDefault("Type", int.Parse, defaultValue: this.MinGrassType); int weedCount = data.GetOrDefault("WeedCount", int.Parse); return(new CustomGrass(type, weedCount)); }); } }
/********* ** Public methods *********/ /// <summary>Raised after the game reads the save data into <see cref="SaveGame.loaded"/>, but before it begins restoring it.</summary> /// <param name="modRegistry">The mod registry with which to check for PyTK.</param> public static void OnSaveParsed(IModRegistry modRegistry) { PyTkMigrator.MigrateBuildings(SaveGame.loaded, new() {