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 loaddataloaddata_new (struct section_file *file)
 
static void loaddata_destroy (struct loaddata *loading)
 
static struct savedatasavedata_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 charquote_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 terrainchar2terrain (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++) {
char * incite_cost
Definition comments.c:75

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_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); \
"Trying to write invalid map data at position " \
"(%d, %d) for path %s: '%c' (%d)", _nat_x, _nat_y, \
} \
_line[wld.map.xsize] = '\0'; \
} \
}
struct world wld
Definition game.c:63
struct tile * native_pos_to_tile(const struct civ_map *nmap, int nat_x, int nat_y)
Definition map.c:443
int xsize
Definition map_types.h:78
int ysize
Definition map_types.h:78
Definition tile.h:50
struct civ_map map
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 7635 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 7790 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 3498 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 3168 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 3026 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 2900 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 2968 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 3415 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 7838 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 6837 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 4949 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 5068 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 5517 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 4133 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 6038 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 5969 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 6524 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 7000 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 7190 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 3877 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 3617 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 7465 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 7903 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 7666 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 7646 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 7819 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 2860 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 3554 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 3289 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 3113 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 2940 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 3000 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 3459 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 7878 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 6917 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 5565 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 4623 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 6577 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 7301 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 4072 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 7571 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 8076 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 7776 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 7749 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().