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 2696 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 7655 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 2085 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 7810 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 2808 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 3499 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 3169 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 3027 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 2901 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 2969 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 3416 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 7858 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 6845 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 4951 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 5070 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 5519 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 4135 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 6040 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 5971 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 6532 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 7008 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 7210 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 3879 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 3619 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 2388 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 7485 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 2061 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 7923 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 1333 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 2493 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 2467 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 2658 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 7686 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 2749 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 7666 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 2258 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 7839 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 2861 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 3556 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 3290 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 3114 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 2941 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 3001 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 3460 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 7898 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 6925 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 5567 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 4625 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 6585 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 7321 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 4074 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 2429 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 7591 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 2238 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 8097 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 1772 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 2038 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 2581 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 2478 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 2674 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 7796 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".

Definition at line 1260 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 1296 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 7769 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().