Freeciv-3.2: /fast/freeciv/nightly/S3_2/server/savegame/savegame3.c File Reference

Freeciv-3.2

Loading...
Searching...
No Matches
Data Structures | Macros | Functions | Variables
savegame3.c File Reference
`#include <ctype.h>`
`#include <stdarg.h>`
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <string.h>`
`#include "bitvector.h"`
`#include "fcintl.h"`
`#include "idex.h"`
`#include "log.h"`
`#include "mem.h"`
`#include "rand.h"`
`#include "registry.h"`
`#include "shared.h"`
`#include "support.h"`
`#include "timing.h"`
`#include "achievements.h"`
`#include "ai.h"`
`#include "capability.h"`
`#include "citizens.h"`
`#include "city.h"`
`#include "counters.h"`
`#include "game.h"`
`#include "government.h"`
`#include "map.h"`
`#include "mapimg.h"`
`#include "movement.h"`
`#include "multipliers.h"`
`#include "packets.h"`
`#include "research.h"`
`#include "rgbcolor.h"`
`#include "sex.h"`
`#include "specialist.h"`
`#include "unit.h"`
`#include "unitlist.h"`
`#include "version.h"`
`#include "barbarian.h"`
`#include "citizenshand.h"`
`#include "citytools.h"`
`#include "cityturn.h"`
`#include "diplhand.h"`
`#include "maphand.h"`
`#include "meta.h"`
`#include "notify.h"`
`#include "plrhand.h"`
`#include "report.h"`
`#include "ruleset.h"`
`#include "sanitycheck.h"`
`#include "savecompat.h"`
`#include "score.h"`
`#include "settings.h"`
`#include "spacerace.h"`
`#include "srv_main.h"`
`#include "stdinhand.h"`
`#include "techtools.h"`
`#include "unittools.h"`
`#include "advdata.h"`
`#include "advbuilding.h"`
`#include "infracache.h"`
`#include "mapgen.h"`
`#include "mapgen_utils.h"`
`#include "script_server.h"`
`#include "aitraits.h"`
`#include "difficulty.h"`
`#include "savegame3.h"`

Go to the source code of this file.

## Data Structures

struct | savedata
struct | treaty_cb_data

## Macros

#define | ACTIVITY_OLD_POLLUTION_SG3 (ACTIVITY_LAST + 1)
#define | ACTIVITY_OLD_FALLOUT_SG3 (ACTIVITY_OLD_POLLUTION_SG3 + 1)
#define | ACTIVITY_LAST_SAVEGAME3 (ACTIVITY_OLD_FALLOUT_SG3 + 1)
#define | SAVE_MAP_CHAR(ptile, GET_XY_CHAR, secfile, secpath, ...)
#define | LOAD_MAP_CHAR(ch, ptile, SET_XY_CHAR, secfile, secpath, ...)
#define | halfbyte_iterate_extras(e, num_extras_types)
#define | halfbyte_iterate_extras_end
#define | TOKEN_SIZE 10
#define | PART_SIZE (3*256)
#define | PART_ADJUST (3)

## Functions

static void | savegame3_save_real (struct section_file *file, const char *save_reason, bool scenario)
static struct loaddata * | loaddata_new (struct section_file *file)
static void | loaddata_destroy (struct loaddata *loading)
static struct savedata * | savedata_new (struct section_file *file, const char *save_reason, bool scenario)
static void | savedata_destroy (struct savedata *saving)
static enum unit_orders | char2order (char order)
static char | order2char (enum unit_orders order)
static enum direction8 | char2dir (char dir)
static char | dir2char (enum direction8 dir)
static char | activity2char (int activity)
static enum unit_activity | char2activity (char activity)
static char * | quote_block (const void *const data, int length)
static int | unquote_block (const char *const quoted_, void *dest, int dest_length)
static void | worklist_load (struct section_file *file, int wlist_max_length, struct worklist *pwl, const char *path,...)
static void | worklist_save (struct section_file *file, const struct worklist *pwl, int max_length, const char *path,...)
static void | unit_ordering_calc (void)
static void | unit_ordering_apply (void)
static void | sg_extras_set_dbv (struct dbv *extras, char ch, struct extra_type **idx)
static void | sg_extras_set_bv (bv_extras *extras, char ch, struct extra_type **idx)
static char | sg_extras_get_dbv (struct dbv *extras, struct extra_type *presource, const int *idx)
static char | sg_extras_get_bv (bv_extras extras, struct extra_type *presource, const int *idx)
static struct terrain * | char2terrain (char ch)
static char | terrain2char (const struct terrain *pterrain)
static Tech_type_id | technology_load (struct section_file *file, const char *path, int plrno)
static void | technology_save (struct section_file *file, const char *path, int plrno, Tech_type_id tech)
static void | sg_load_savefile (struct loaddata *loading)
static void | sg_save_savefile (struct savedata *saving)
static void | sg_save_savefile_options (struct savedata *saving, const char *option)
static void | sg_load_game (struct loaddata *loading)
static void | sg_save_game (struct savedata *saving)
static void | sg_load_ruledata (struct loaddata *loading)
static void | sg_save_ruledata (struct savedata *saving)
static void | sg_load_random (struct loaddata *loading)
static void | sg_save_random (struct savedata *saving)
static void | sg_load_script (struct loaddata *loading)
static void | sg_save_script (struct savedata *saving)
static void | sg_load_scenario (struct loaddata *loading)
static void | sg_save_scenario (struct savedata *saving)
static void | sg_load_settings (struct loaddata *loading)
static void | sg_save_settings (struct savedata *saving)
static void | sg_load_counters (struct loaddata *loading)
static void | sg_save_counters (struct savedata *saving)
static void | sg_load_map (struct loaddata *loading)
static void | sg_save_map (struct savedata *saving)
static void | sg_load_map_tiles (struct loaddata *loading)
static void | sg_save_map_tiles (struct savedata *saving)
static void | sg_load_map_tiles_extras (struct loaddata *loading)
static void | sg_save_map_tiles_extras (struct savedata *saving)
static void | sg_load_map_startpos (struct loaddata *loading)
static void | sg_save_map_startpos (struct savedata *saving)
static void | sg_load_map_owner (struct loaddata *loading)
static void | sg_save_map_owner (struct savedata *saving)
static void | sg_load_map_worked (struct loaddata *loading)
static void | sg_save_map_worked (struct savedata *saving)
static void | sg_load_map_known (struct loaddata *loading)
static void | sg_save_map_known (struct savedata *saving)
static void | sg_load_players_basic (struct loaddata *loading)
static void | sg_load_players (struct loaddata *loading)
static void | sg_load_player_main (struct loaddata *loading, struct player *plr)
static void | sg_load_player_cities (struct loaddata *loading, struct player *plr)
static bool | sg_load_player_city (struct loaddata *loading, struct player *plr, struct city *pcity, const char *citystr, int wlist_max_length, int routes_max)
static void | sg_load_player_city_citizens (struct loaddata *loading, struct player *plr, struct city *pcity, const char *citystr)
static void | sg_load_player_units (struct loaddata *loading, struct player *plr)
static bool | sg_load_player_unit (struct loaddata *loading, struct player *plr, struct unit *punit, int orders_max_length, const char *unitstr)
static void | sg_load_player_units_transport (struct loaddata *loading, struct player *plr)
static void | sg_load_player_attributes (struct loaddata *loading, struct player *plr)
static void | sg_load_player_vision (struct loaddata *loading, struct player *plr)
static bool | sg_load_player_vision_city (struct loaddata *loading, struct player *plr, struct vision_site *pdcity, const char *citystr)
static void | sg_save_players (struct savedata *saving)
static void | sg_save_player_main (struct savedata *saving, struct player *plr)
static void | sg_save_player_cities (struct savedata *saving, struct player *plr)
static void | sg_save_player_units (struct savedata *saving, struct player *plr)
static void | sg_save_player_attributes (struct savedata *saving, struct player *plr)
static void | sg_save_player_vision (struct savedata *saving, struct player *plr)
static void | sg_load_researches (struct loaddata *loading)
static void | sg_save_researches (struct savedata *saving)
static void | sg_load_event_cache (struct loaddata *loading)
static void | sg_save_event_cache (struct savedata *saving)
static void | sg_load_treaties (struct loaddata *loading)
static void | sg_save_treaties (struct savedata *saving)
static void | sg_load_history (struct loaddata *loading)
static void | sg_save_history (struct savedata *saving)
static void | sg_load_mapimg (struct loaddata *loading)
static void | sg_save_mapimg (struct savedata *saving)
static void | sg_load_sanitycheck (struct loaddata *loading)
static void | sg_save_sanitycheck (struct savedata *saving)
void | savegame3_save (struct section_file *sfile, const char *save_reason, bool scenario)
void | savegame3_load (struct section_file *file)
static void | treaty_save (struct Treaty *ptr, void *data_in)

## Variables

bool | sg_success
static const char | savefile_options_default []

## Macro Definition Documentation

## ◆ ACTIVITY_LAST_SAVEGAME3

#define ACTIVITY_LAST_SAVEGAME3 (ACTIVITY_OLD_FALLOUT_SG3 + 1)

Definition at line 153 of file savegame3.c.

## ◆ ACTIVITY_OLD_FALLOUT_SG3

#define ACTIVITY_OLD_FALLOUT_SG3 (ACTIVITY_OLD_POLLUTION_SG3 + 1)

Definition at line 152 of file savegame3.c.

## ◆ ACTIVITY_OLD_POLLUTION_SG3

#define ACTIVITY_OLD_POLLUTION_SG3 (ACTIVITY_LAST + 1)

Definition at line 151 of file savegame3.c.

## ◆ halfbyte_iterate_extras

#define halfbyte_iterate_extras | ( |  | e,
|  |  | num_extras_types
| ) |  |

Value:
{ \
int e; \
for (e = 0; 4 * e < (num_extras_types); e++) {
incite_cost
char * incite_cost
Definition comments.c:74

Definition at line 255 of file savegame3.c.

## ◆ halfbyte_iterate_extras_end

#define halfbyte_iterate_extras_end

Value:
} \
}

Definition at line 260 of file savegame3.c.

## ◆ LOAD_MAP_CHAR

#define LOAD_MAP_CHAR | ( |  | ch,
|  |  | ptile,
|  |  | SET_XY_CHAR,
|  |  | secfile,
|  |  | secpath,
|  |  | ...
| ) |  |

Definition at line 219 of file savegame3.c.

## ◆ PART_ADJUST

#define PART_ADJUST (3)

## ◆ PART_SIZE

#define PART_SIZE (3*256)

## ◆ SAVE_MAP_CHAR

#define SAVE_MAP_CHAR | ( |  | ptile,
|  |  | GET_XY_CHAR,
|  |  | secfile,
|  |  | secpath,
|  |  | ...
| ) |  |

Value:
{ \
char _line[wld.map.xsize + 1]; \
int _nat_x, _nat_y; \
\
for (_nat_y = 0; _nat_y < wld.map.ysize; _nat_y++) { \
for (_nat_x = 0; _nat_x < wld.map.xsize; _nat_x++) { \
struct tile *ptile = native_pos_to_tile(&(wld.map), _nat_x, _nat_y); \
fc_assert_action(ptile != NULL, continue); \
_line[_nat_x] = (GET_XY_CHAR); \
sg_failure_ret(fc_isprint(_line[_nat_x] & 0x7f), \
"Trying to write invalid map data at position " \
"(%d, %d) for path %s: '%c' (%d)", _nat_x, _nat_y, \
secpath, _line[_nat_x], _line[_nat_x]); \
} \
_line[wld.map.xsize] = '\0'; \
secfile_insert_str(secfile, _line, secpath, ## __VA_ARGS__, _nat_y); \
} \
}
wld
struct world wld
Definition game.c:63
native_pos_to_tile
struct tile * native_pos_to_tile(const struct civ_map *nmap, int nat_x, int nat_y)
Definition map.c:443
civ_map::xsize
int xsize
Definition map_types.h:78
civ_map::ysize
int ysize
Definition map_types.h:78
tile
Definition tile.h:50
world::map
struct civ_map map
Definition world_object.h:38
fc_isprint
bool fc_isprint(char c)
Definition support.c:1243

Definition at line 172 of file savegame3.c.

## ◆ TOKEN_SIZE

#define TOKEN_SIZE 10

Definition at line 276 of file savegame3.c.

## Function Documentation

## ◆ activity2char()

static char activity2char | ( | int | activity | ) |

static

Returns a character identifier for an activity. See also char2activity().

activity type is 'int', and not 'enum_activity' for supporting deprecated values (..._OLD_...)

Definition at line 821 of file savegame3.c.

Referenced by char2activity(), sg_save_player_cities(), and sg_save_player_units().

## ◆ char2activity()

static enum unit_activity char2activity | ( | char | activity | ) |

static

Returns an activity for a character identifier. See also activity2char().

Definition at line 872 of file savegame3.c.

Referenced by sg_load_player_city(), and sg_load_player_unit().

## ◆ char2dir()

static enum direction8 char2dir | ( | char | dir | ) |

static

Returns a direction for a character identifier. See also dir2char.

Definition at line 759 of file savegame3.c.

Referenced by sg_load_player_city(), and sg_load_player_unit().

## ◆ char2order()

static enum unit_orders char2order | ( | char | order | ) |

static

Returns an order for a character identifier. See also order2char.

Definition at line 708 of file savegame3.c.

Referenced by sg_load_player_city(), and sg_load_player_unit().

## ◆ char2terrain()

static struct terrain * char2terrain | ( | char | ch | ) |

static

Dereferences the terrain character. See terrains[].identifier example: char2terrain('a') => T_ARCTIC

Definition at line 1225 of file savegame3.c.

Referenced by sg_load_map_tiles(), and sg_load_player_vision().

## ◆ dir2char()

static char dir2char | ( | enum direction8 | dir | ) |

static

Returns a character identifier for a direction. See also char2dir.

Definition at line 788 of file savegame3.c.

Referenced by sg_save_player_cities(), and sg_save_player_units().

## ◆ loaddata_destroy()

static void loaddata_destroy | ( | struct loaddata * | loading | ) |

static

Free resources allocated for loaddata item.

Definition at line 621 of file savegame3.c.

Referenced by savegame3_load().

## ◆ loaddata_new()

static struct loaddata * loaddata_new | ( | struct section_file * | file | ) |

static

Create new loaddata item for given section file.

Definition at line 582 of file savegame3.c.

Referenced by savegame3_load().

## ◆ order2char()

static char order2char | ( | enum unit_orders | order | ) |

static

Returns a character identifier for an order. See also char2order.

Definition at line 735 of file savegame3.c.

Referenced by sg_save_player_cities(), and sg_save_player_units().

## ◆ quote_block()

static char * quote_block | ( | const void *const | data,
|  | int | length
| ) |  |

static

Quote the memory block denoted by data and length so it consists only of " a-f0-9:". The returned string has to be freed by the caller using free().

Definition at line 895 of file savegame3.c.

Referenced by sg_save_player_attributes().

## ◆ savedata_destroy()

static void savedata_destroy | ( | struct savedata * | saving | ) |

static

Free resources allocated for savedata item

Definition at line 696 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ savedata_new()

static struct savedata * savedata_new | ( | struct section_file * | file,
|  | const char * | save_reason,
|  | bool | scenario
| ) |  |

static

Create new savedata item for given file.

Definition at line 677 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ savegame3_load()

void savegame3_load | ( | struct section_file * | file | ) |

Really loading the savegame.

Definition at line 456 of file savegame3.c.

Referenced by savegame_load().

## ◆ savegame3_save()

void savegame3_save | ( | struct section_file * | sfile,
|  | const char * | save_reason,
|  | bool | scenario
| ) |  |

Main entry point for saving a game in savegame3 format.

Definition at line 429 of file savegame3.c.

Referenced by savegame_save().

## ◆ savegame3_save_real()

static void savegame3_save_real | ( | struct section_file * | file,
|  | const char * | save_reason,
|  | bool | scenario
| ) |  |

static

Really save the game to a file.

Definition at line 525 of file savegame3.c.

Referenced by savegame3_save().

## ◆ sg_extras_get_bv()

static char sg_extras_get_bv | ( | bv_extras | extras,
|  | struct extra_type * | presource,
|  | const int * | idx
| ) |  |

static

Helper function for saving extras into a savegame.

Extras are packed in four to a character in hex notation. 'index' specifies which set of extras are included in this character.

Definition at line 1196 of file savegame3.c.

Referenced by sg_save_map_tiles_extras().

## ◆ sg_extras_get_dbv()

static char sg_extras_get_dbv | ( | struct dbv * | extras,
|  | struct extra_type * | presource,
|  | const int * | idx
| ) |  |

static

Helper function for saving extras into a savegame.

Extras are packed in four to a character in hex notation. 'index' specifies which set of extras are included in this character.

Definition at line 1163 of file savegame3.c.

Referenced by sg_save_player_vision().

## ◆ sg_extras_set_bv()

static void sg_extras_set_bv | ( | bv_extras * | extras,
|  | char | ch,
|  | struct extra_type ** | idx
| ) |  |

static

Helper function for loading extras from a savegame.

'ch' gives the character loaded from the savegame. Extras are packed in four to a character in hex notation. 'index' is a mapping of savegame bit -> base bit.

Definition at line 1131 of file savegame3.c.

Referenced by sg_load_map_tiles_extras().

## ◆ sg_extras_set_dbv()

static void sg_extras_set_dbv | ( | struct dbv * | extras,
|  | char | ch,
|  | struct extra_type ** | idx
| ) |  |

static

Helper function for loading extras from a savegame.

'ch' gives the character loaded from the savegame. Extras are packed in four to a character in hex notation. 'index' is a mapping of savegame bit -> base bit.

Definition at line 1098 of file savegame3.c.

Referenced by sg_load_player_vision().

## ◆ sg_load_counters()

static void sg_load_counters | ( | struct loaddata * | loading | ) |

static

Load '[counters]'.

Definition at line 2697 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_event_cache()

static void sg_load_event_cache | ( | struct loaddata * | loading | ) |

static

Load '[event_cache]'.

Definition at line 7620 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_game()

static void sg_load_game | ( | struct loaddata * | loading | ) |

static

Load '[game]'.

Definition at line 2086 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_history()

static void sg_load_history | ( | struct loaddata * | loading | ) |

static

Load '[history]'.

Definition at line 7775 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_map()

static void sg_load_map | ( | struct loaddata * | loading | ) |

static

Load '[map'].

Definition at line 2809 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_map_known()

static void sg_load_map_known | ( | struct loaddata * | loading | ) |

static

Load tile known status

Definition at line 3497 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_map_owner()

static void sg_load_map_owner | ( | struct loaddata * | loading | ) |

static

Load tile owner information

Definition at line 3167 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_map_startpos()

static void sg_load_map_startpos | ( | struct loaddata * | loading | ) |

static

Load starting positions for the players from a savegame file. There should be at least enough for every player.

Definition at line 3025 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_map_tiles()

static void sg_load_map_tiles | ( | struct loaddata * | loading | ) |

static

Load tiles of the map.

Definition at line 2899 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_map_tiles_extras()

static void sg_load_map_tiles_extras | ( | struct loaddata * | loading | ) |

static

Load extras to map

Definition at line 2967 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_map_worked()

static void sg_load_map_worked | ( | struct loaddata * | loading | ) |

static

Load worked tiles information

Definition at line 3414 of file savegame3.c.

Referenced by sg_load_map().

## ◆ sg_load_mapimg()

static void sg_load_mapimg | ( | struct loaddata * | loading | ) |

static

Load '[mapimg]'.

Definition at line 7820 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_player_attributes()

static void sg_load_player_attributes | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Load player (client) attributes data

Definition at line 6824 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_cities()

static void sg_load_player_cities | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Load city data

Definition at line 4948 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_city()

static bool sg_load_player_city | ( | struct loaddata * | loading,
|  | struct player * | plr,
|  | struct city * | pcity,
|  | const char * | citystr,
|  | int | wlist_max_length,
|  | int | routes_max
| ) |  |

static

Load data for one city. sg_save_player_city() is not defined.

Definition at line 5067 of file savegame3.c.

Referenced by sg_load_player_cities().

## ◆ sg_load_player_city_citizens()

static void sg_load_player_city_citizens | ( | struct loaddata * | loading,
|  | struct player * | plr,
|  | struct city * | pcity,
|  | const char * | citystr
| ) |  |

static

Load nationality data for one city.

Definition at line 5514 of file savegame3.c.

Referenced by sg_load_player_cities().

## ◆ sg_load_player_main()

static void sg_load_player_main | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Main player data loading function

Definition at line 4132 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_unit()

static bool sg_load_player_unit | ( | struct loaddata * | loading,
|  | struct player * | plr,
|  | struct unit * | punit,
|  | int | orders_max_length,
|  | const char * | unitstr
| ) |  |

static

Load one unit. sg_save_player_unit() is not defined.

Definition at line 6031 of file savegame3.c.

Referenced by sg_load_player_units().

## ◆ sg_load_player_units()

static void sg_load_player_units | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Load unit data

Definition at line 5962 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_units_transport()

static void sg_load_player_units_transport | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Load the transport status of all units. This is separated from the other code as all units must be known.

Definition at line 6515 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_vision()

static void sg_load_player_vision | ( | struct loaddata * | loading,
|  | struct player * | plr
| ) |  |

static

Load vision data

Definition at line 6987 of file savegame3.c.

Referenced by sg_load_players().

## ◆ sg_load_player_vision_city()

static bool sg_load_player_vision_city | ( | struct loaddata * | loading,
|  | struct player * | plr,
|  | struct vision_site * | pdcity,
|  | const char * | citystr
| ) |  |

static

Load data for one seen city. sg_save_player_vision_city() is not defined.

Definition at line 7175 of file savegame3.c.

Referenced by sg_load_player_vision().

## ◆ sg_load_players()

static void sg_load_players | ( | struct loaddata * | loading | ) |

static

Load '[player]'.

Definition at line 3876 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_players_basic()

static void sg_load_players_basic | ( | struct loaddata * | loading | ) |

static

Load '[player]' (basic data).

Definition at line 3616 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_random()

static void sg_load_random | ( | struct loaddata * | loading | ) |

static

Load '[random]'.

Definition at line 2389 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_researches()

static void sg_load_researches | ( | struct loaddata * | loading | ) |

static

Load '[research]'.

Definition at line 7450 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_ruledata()

static void sg_load_ruledata | ( | struct loaddata * | loading | ) |

static

Load '[ruledata]'.

Definition at line 2062 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_sanitycheck()

static void sg_load_sanitycheck | ( | struct loaddata * | loading | ) |

static

Sanity check for loaded game.

Definition at line 7885 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_savefile()

static void sg_load_savefile | ( | struct loaddata * | loading | ) |

static

Load '[savefile]'.

Definition at line 1334 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_scenario()

static void sg_load_scenario | ( | struct loaddata * | loading | ) |

static

Load '[scenario]'.

Definition at line 2494 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_script()

static void sg_load_script | ( | struct loaddata * | loading | ) |

static

Load '[script]'.

Definition at line 2468 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_settings()

static void sg_load_settings | ( | struct loaddata * | loading | ) |

static

Load '[settings]'.

Definition at line 2659 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_load_treaties()

static void sg_load_treaties | ( | struct loaddata * | loading | ) |

static

Load '[treaty_xxx]'.

Definition at line 7651 of file savegame3.c.

Referenced by savegame3_load().

## ◆ sg_save_counters()

static void sg_save_counters | ( | struct savedata * | saving | ) |

static

Save [counters].

Definition at line 2750 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_event_cache()

static void sg_save_event_cache | ( | struct savedata * | saving | ) |

static

Save '[event_cache]'.

Definition at line 7631 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_game()

static void sg_save_game | ( | struct savedata * | saving | ) |

static

Save '[game]'.

Definition at line 2259 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_history()

static void sg_save_history | ( | struct savedata * | saving | ) |

static

Save '[history]'.

Definition at line 7801 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_map()

static void sg_save_map | ( | struct savedata * | saving | ) |

static

Save 'map'.

Definition at line 2859 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_map_known()

static void sg_save_map_known | ( | struct savedata * | saving | ) |

static

Save tile known status for whole map and all players

Definition at line 3553 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_map_owner()

static void sg_save_map_owner | ( | struct savedata * | saving | ) |

static

Save tile owner information

Definition at line 3288 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_map_startpos()

static void sg_save_map_startpos | ( | struct savedata * | saving | ) |

static

Save the map start positions.

Definition at line 3112 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_map_tiles()

static void sg_save_map_tiles | ( | struct savedata * | saving | ) |

static

Save all map tiles

Definition at line 2939 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_map_tiles_extras()

static void sg_save_map_tiles_extras | ( | struct savedata * | saving | ) |

static

Save information about extras on map

Definition at line 2999 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_map_worked()

static void sg_save_map_worked | ( | struct savedata * | saving | ) |

static

Save worked tiles information

Definition at line 3458 of file savegame3.c.

Referenced by sg_save_map().

## ◆ sg_save_mapimg()

static void sg_save_mapimg | ( | struct savedata * | saving | ) |

static

Save '[mapimg]'.

Definition at line 7860 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_player_attributes()

static void sg_save_player_attributes | ( | struct savedata * | saving,
|  | struct player * | plr
| ) |  |

static

Save player (client) attributes data.

Definition at line 6904 of file savegame3.c.

Referenced by sg_save_players().

## ◆ sg_save_player_cities()

static void sg_save_player_cities | ( | struct savedata * | saving,
|  | struct player * | plr
| ) |  |

static

Save cities data

Definition at line 5562 of file savegame3.c.

Referenced by sg_save_players().

## ◆ sg_save_player_main()

static void sg_save_player_main | ( | struct savedata * | saving,
|  | struct player * | plr
| ) |  |

static

Main player data saving function.

Definition at line 4622 of file savegame3.c.

Referenced by sg_save_players().

## ◆ sg_save_player_units()

static void sg_save_player_units | ( | struct savedata * | saving,
|  | struct player * | plr
| ) |  |

static

Save unit data

Definition at line 6568 of file savegame3.c.

Referenced by sg_save_players().

## ◆ sg_save_player_vision()

static void sg_save_player_vision | ( | struct savedata * | saving,
|  | struct player * | plr
| ) |  |

static

Save vision data

Definition at line 7286 of file savegame3.c.

Referenced by sg_save_players().

## ◆ sg_save_players()

static void sg_save_players | ( | struct savedata * | saving | ) |

static

Save '[player]'.

Definition at line 4071 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_random()

static void sg_save_random | ( | struct savedata * | saving | ) |

static

Save '[random]'.

Definition at line 2430 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_researches()

static void sg_save_researches | ( | struct savedata * | saving | ) |

static

Save '[research]'.

Definition at line 7556 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_ruledata()

static void sg_save_ruledata | ( | struct savedata * | saving | ) |

static

Save '[ruledata]'.

Definition at line 2239 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_sanitycheck()

static void sg_save_sanitycheck | ( | struct savedata * | saving | ) |

static

Sanity check for saved game.

Definition at line 8058 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_savefile()

static void sg_save_savefile | ( | struct savedata * | saving | ) |

static

Save '[savefile]'.

Definition at line 1773 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_savefile_options()

static void sg_save_savefile_options | ( | struct savedata * | saving,
|  | const char * | option
| ) |  |

static

Save options for this savegame. sg_load_savefile_options() is not defined.

Definition at line 2039 of file savegame3.c.

Referenced by sg_save_savefile().

## ◆ sg_save_scenario()

static void sg_save_scenario | ( | struct savedata * | saving | ) |

static

Save '[scenario]'.

Definition at line 2582 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_script()

static void sg_save_script | ( | struct savedata * | saving | ) |

static

Save '[script]'.

Definition at line 2479 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_settings()

static void sg_save_settings | ( | struct savedata * | saving | ) |

static

Save [settings].

Definition at line 2675 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ sg_save_treaties()

static void sg_save_treaties | ( | struct savedata * | saving | ) |

static

Save all treaties.

Definition at line 7761 of file savegame3.c.

Referenced by savegame3_save_real().

## ◆ technology_load()

static Tech_type_id technology_load | ( | struct section_file * | file,
|  | const char * | path,
|  | int | plrno
| ) |  |

static

Load technology from path_name and if doesn't exist (because savegame is too old) load from path.

Definition at line 1261 of file savegame3.c.

Referenced by sg_load_researches().

## ◆ technology_save()

static void technology_save | ( | struct section_file * | file,
|  | const char * | path,
|  | int | plrno,
|  | Tech_type_id | tech
| ) |  |

static

Save technology in secfile entry called path_name.

Definition at line 1297 of file savegame3.c.

Referenced by sg_save_researches().

## ◆ terrain2char()

static char terrain2char | ( | const struct terrain * | pterrain | ) |

static

References the terrain character. See terrains[].identifier example: terrain2char(T_ARCTIC) => 'a'

Definition at line 1248 of file savegame3.c.

Referenced by sg_save_map_tiles(), and sg_save_player_vision().

## ◆ treaty_save()

static void treaty_save | ( | struct Treaty * | ptr,
|  | void * | data_in
| ) |  |

static

Save '[treaty_xxx]'.

Definition at line 7734 of file savegame3.c.

Referenced by sg_save_treaties().

## ◆ unit_ordering_apply()

static void unit_ordering_apply | ( | void |  | ) |

static

For each city and tile, sort unit lists according to ord_city and ord_map values.

Definition at line 1077 of file savegame3.c.

Referenced by sg_load_players().

## ◆ unit_ordering_calc()

static void unit_ordering_calc | ( | void |  | ) |

static

Assign values to ord_city and ord_map for each unit, so the values can be saved.

Definition at line 1048 of file savegame3.c.

Referenced by sg_save_players().

## ◆ unquote_block()

static int unquote_block | ( | const char *const | quoted_,
|  | void * | dest,
|  | int | dest_length
| ) |  |

static

Unquote a string. The unquoted data is written into dest. If the unquoted data will be larger than dest_length the function aborts. It returns the actual length of the unquoted block.

Definition at line 916 of file savegame3.c.

Referenced by sg_load_player_attributes().

## ◆ worklist_load()

static void worklist_load | ( | struct section_file * | file,
|  | int | wlist_max_length,
|  | struct worklist * | pwl,
|  | const char * | path,
|  |  | ...
| ) |  |

static

Load the worklist elements specified by path to the worklist pointed to by 'pwl'. 'pwl' should be a pointer to an existing worklist.

Definition at line 964 of file savegame3.c.

Referenced by sg_load_player_city().

## ◆ worklist_save()

static void worklist_save | ( | struct section_file * | file,
|  | const struct worklist * | pwl,
|  | int | max_length,
|  | const char * | path,
|  |  | ...
| ) |  |

static

Save the worklist elements specified by path from the worklist pointed to by 'pwl'. 'pwl' should be a pointer to an existing worklist.

Definition at line 1010 of file savegame3.c.

Referenced by sg_save_player_cities().

## Variable Documentation

## ◆ savefile_options_default

const char savefile_options_default[]

static

Initial value:
=
" +version3"

Definition at line 278 of file savegame3.c.

Referenced by sg_save_savefile().

## ◆ sg_success

bool sg_success

extern

Definition at line 34 of file savecompat.c.

Referenced by savegame3_load(), savegame3_save_real(), and sg_load_savefile().