public static Game_Options read(BinaryReader reader) { Game_Options result = new Game_Options(); byte[] data = result.Data.read(reader); if (Global.LOADED_VERSION.older_than(0, 6, 10, 0)) { if (Global.LOADED_VERSION.older_than(0, 5, 0, 9)) { data[(int)Constants.Options.Grid] = (byte)(data[(int)Constants.Options.Grid] == 0 ? 8 : 0); } // Volume removed in 0.6.10.0 var volumeRemoved = data .Take((int)Constants.Options.Auto_Turn_End + 1) .Concat(data.Skip((int)Constants.Options.Auto_Turn_End + 3)) .ToArray(); data = volumeRemoved; } result.Data = data; if (result.Data.Length != DATA_COUNT) { result.reset_options(); throw new EndOfStreamException("Options Data does not contain the correct amount of entries"); } return(result); }
private static Save_File_Data LoadFileV0_4_4_0(BinaryReader reader) { return(new Save_File_Data { Options = Game_Options.read(reader), File = Save_File.read(reader) }); }
/* ReadSuspend */ private static void load_v_0_4_7_0(BinaryReader reader) { // Create a new Game_Temp Global.game_temp = new Game_Temp(); Global.game_battalions = new Game_Battalions(); Global.game_battalions.read(reader); Global.game_actors = new Game_Actors(); Global.game_actors.read(reader); Global.read_game_system(reader); Global.game_options = Game_Options.read(reader); Global.player = new Player(); Global.player.read(reader); //@Yeti: // Why does this read into the active game state object, instead of generating a new one Global.game_state.read(reader); Global.game_map = new Game_Map(); Global.game_map.read(reader); Global.read_events(reader); }