multiple map buffers for map editing: "xmaps"
An xmap holds everything related to map editing at a certain moment: it is a map editing snapshot. It contains the name, the header, the geometry, the entities, the extra headers, the undo/redo data and the cameraposition from the moment, the snapshot was taken. Xmaps are held in memory and, if persistentxmaps is set to "1", are saved at game end and restored at game start. xmap_list lists all xmaps currently in memory xmap_store <nickname> create a snapshot and store it under the given nickname (nicknames have to qualify as valid filenames) xmap_restore <nickname> restores the named snapshot. Also creates a backup snapshot of the current editing data. xmap_restore restores the last automatic backup snapshot. Automatic snapshots are taken, a) before a snapshot is restored, b) before a new map is loaded (if there were unsaved edits on the map) and c) when the game ends (if there were unsaved edits). xmap_delete <nickname> deletes the named snapshot. Unsaved edits are flagged in the HUD with an "U" in the lower right corner of the screen. The files with the persistent xmaps are stored in mapediting/xmaps. After they were restored at game start, the files are moved to mapediting/xmaps/backups. Xmap files are cubescript files.
This commit is contained in:
@@ -347,6 +347,7 @@ void mapmsg(char *s)
|
||||
filterrichtext(text, s);
|
||||
filterservdesc(text, text);
|
||||
copystring(hdr.maptitle, text, 128);
|
||||
unsavededits = 1;
|
||||
}
|
||||
|
||||
void getmapmsg(void)
|
||||
|
||||
Reference in New Issue
Block a user