X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Ffiles.c;h=9a769335fd40cabd8dd10eedf4da418464aa1e5e;hb=e357e3c70da663bb319196a3b24328ea5801f643;hp=0a170578461ea44d0a42021d707c8299c9844229;hpb=fce2b199f289e67a471d3bfe0bafe9decee86420;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index 0a170578..9a769335 100644 --- a/src/files.c +++ b/src/files.c @@ -7062,7 +7062,8 @@ static int SaveLevel_GRPX(FILE *file, struct LevelInfo *level, int element) return chunk_size; } -static void SaveLevelFromFilename(struct LevelInfo *level, char *filename) +static void SaveLevelFromFilename(struct LevelInfo *level, char *filename, + boolean save_as_template) { int chunk_size; int i; @@ -7126,7 +7127,7 @@ static void SaveLevelFromFilename(struct LevelInfo *level, char *filename) } /* if not using template level, check for non-default custom/group elements */ - if (!level->use_custom_template) + if (!level->use_custom_template || save_as_template) { for (i = 0; i < NUM_CUSTOM_ELEMENTS; i++) { @@ -7162,14 +7163,14 @@ void SaveLevel(int nr) { char *filename = getDefaultLevelFilename(nr); - SaveLevelFromFilename(&level, filename); + SaveLevelFromFilename(&level, filename, FALSE); } void SaveLevelTemplate() { - char *filename = getDefaultLevelFilename(-1); + char *filename = getLocalLevelTemplateFilename(); - SaveLevelFromFilename(&level, filename); + SaveLevelFromFilename(&level, filename, TRUE); } boolean SaveLevelChecked(int nr) @@ -7974,11 +7975,11 @@ void SaveScore(int nr) #define NUM_GLOBAL_SETUP_TOKENS 43 /* editor setup */ -#define SETUP_TOKEN_EDITOR_EL_CHARS 0 -#define SETUP_TOKEN_EDITOR_EL_STEEL_CHARS 1 -#define SETUP_TOKEN_EDITOR_EL_CUSTOM 2 -#define SETUP_TOKEN_EDITOR_EL_USER_DEFINED 3 -#define SETUP_TOKEN_EDITOR_EL_DYNAMIC 4 +#define SETUP_TOKEN_EDITOR_EL_CLASSIC 0 +#define SETUP_TOKEN_EDITOR_EL_CUSTOM 1 +#define SETUP_TOKEN_EDITOR_EL_USER_DEFINED 2 +#define SETUP_TOKEN_EDITOR_EL_DYNAMIC 3 +#define SETUP_TOKEN_EDITOR_EL_HEADLINES 4 #define SETUP_TOKEN_EDITOR_SHOW_ELEMENT_TOKEN 5 #define NUM_EDITOR_SETUP_TOKENS 6 @@ -8166,11 +8167,11 @@ static struct TokenInfo global_setup_tokens[] = static struct TokenInfo editor_setup_tokens[] = { - { TYPE_SWITCH, &sei.el_chars, "editor.el_chars" }, - { TYPE_SWITCH, &sei.el_steel_chars, "editor.el_steel_chars" }, + { TYPE_SWITCH, &sei.el_classic, "editor.el_classic" }, { TYPE_SWITCH, &sei.el_custom, "editor.el_custom" }, { TYPE_SWITCH, &sei.el_user_defined, "editor.el_user_defined" }, { TYPE_SWITCH, &sei.el_dynamic, "editor.el_dynamic" }, + { TYPE_SWITCH, &sei.el_headlines, "editor.el_headlines" }, { TYPE_SWITCH, &sei.show_element_token,"editor.show_element_token" }, }; @@ -8375,13 +8376,16 @@ static void setSetupInfoToDefaults(struct SetupInfo *si) si->editor.el_dx_boulderdash = TRUE; si->editor.el_chars = TRUE; si->editor.el_steel_chars = TRUE; + + si->editor.el_classic = TRUE; si->editor.el_custom = TRUE; - si->editor.el_headlines = TRUE; - si->editor.el_user_defined = FALSE; - si->editor.el_dynamic = TRUE; + si->editor.el_user_defined = FALSE; + si->editor.el_dynamic = TRUE; + + si->editor.el_headlines = TRUE; - si->editor.show_element_token = FALSE; + si->editor.show_element_token = FALSE; si->shortcut.save_game = DEFAULT_KEY_SAVE_GAME; si->shortcut.load_game = DEFAULT_KEY_LOAD_GAME;