|
| static int | diff_applyInternal (const char *name, int oneshot) |
| | Applies a diff to the universe.
|
| | NONNULL (1) |
| int | diff_init (void) |
| | Loads available universe diffs.
|
| void | diff_freeData (UniDiffData_t *diff) |
| void | diff_exit (void) |
| | Clean up after diffs.
|
| int | diff_parse (UniDiffData_t *diff, char *filename) |
| int | diff_parsePhysFS (UniDiffData_t *diff, char *filename) |
| static int | diff_parseDoc (UniDiffData_t *diff, xmlDocPtr doc) |
| int | diff_isApplied (const char *name) |
| | Checks if a diff is currently applied.
|
| static UniDiff_t * | diff_get (const char *name) |
| | Gets a diff by name.
|
| int | diff_apply (const char *name) |
| | Applies a diff to the universe.
|
| void | diff_start (void) |
| | Starts applying a set of diffs.
|
| void | diff_end (void) |
| | Cleans up after applying a set of diffs.
|
| static void | diff_parseAttr (UniHunk_t *hunk, xmlNodePtr node) |
| | Parsess the attributes.
|
| static const char * | diff_getAttr (UniHunk_t *hunk, const char *name) |
| static AsteroidAnchor * | diff_getAsteroidsLabel (StarSystem *ssys, const char *label) |
| static AsteroidAnchor * | diff_getAsteroids (StarSystem *ssys, UniHunk_t *hunk) |
| static int | diff_parseSystem (UniDiffData_t *diff, xmlNodePtr node) |
| | Patches a system.
|
| static int | diff_parseTech (UniDiffData_t *diff, xmlNodePtr node) |
| | Patches a tech.
|
| static int | diff_parseSpob (UniDiffData_t *diff, xmlNodePtr node) |
| | Patches a spob.
|
| static int | diff_parseFaction (UniDiffData_t *diff, xmlNodePtr node) |
| | Patches a faction.
|
| int | diff_revertHunk (const UniHunk_t *hunk) |
| | Reverts a hunk.
|
| int | diff_patchHunk (UniHunk_t *hunk) |
| | Applies a hunk.
|
| static void | diff_hunkFailed (UniDiff_t *diff, const UniHunk_t *hunk) |
| | Adds a hunk to the failed list.
|
| static void | diff_hunkSuccess (UniDiff_t *diff, const UniHunk_t *hunk) |
| | Adds a hunk to the applied list.
|
| void | diff_remove (const char *name) |
| | Removes a diff from the universe.
|
| void | diff_clear (void) |
| | Removes all active diffs. (Call before economy_destroy().)
|
| static UniDiff_t * | diff_newDiff (void) |
| | Creates a new UniDiff_t for usage.
|
| static int | diff_removeDiff (UniDiff_t *diff) |
| | Removes a diff.
|
| static void | diff_cleanup (UniDiff_t *diff) |
| | Cleans up a diff.
|
| const char * | diff_hunkName (UniHunkType_t t) |
| | Gets the human readable name of a hunk.
|
| const char * | diff_hunkTag (UniHunkType_t t) |
| | Gets the XML tag of a hunk.
|
| void | diff_cleanupHunk (UniHunk_t *hunk) |
| | Cleans up a hunk.
|
| int | diff_save (xmlTextWriterPtr writer) |
| | Saves the active diffs.
|
| int | diff_load (xmlNodePtr parent) |
| | Loads the diffs.
|
| static int | diff_checkUpdateUniverse (void) |
| | Checks and updates the universe if necessary.
|
| void | unidiff_universeDefer (int enable) |
| | Sets whether or not to defer universe change stuff.
|
Handles the application and removal of 'diffs' to the universe.
Diffs allow changing spobs, factions, etc... in the universe. These are meant to be applied after the player triggers them, mostly through missions.
Definition in file unidiff.c.