X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.c;h=8e04c423a08aff5483a69d0921e9480c0d011a6b;hb=7a5e1469c7df6a9f07717f5a9c0e7b8d9a796a2c;hp=433f68134896aac251a6ea338c3f831509e7dc5c;hpb=395ed3b7853b446fa77768786eae09b215731570;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index 433f6813..8e04c423 100644 --- a/src/files.c +++ b/src/files.c @@ -273,6 +273,12 @@ static struct LevelFileConfigInfo chunk_config_INFO[] = &li.rate_time_over_score, FALSE }, + { + -1, -1, + TYPE_BOOLEAN, CONF_VALUE_8_BIT(14), + &li.bd_intermission, FALSE + }, + { -1, -1, -1, -1, @@ -563,6 +569,15 @@ static struct LevelFileConfigInfo chunk_config_ELEM[] = &li.initial_inventory_size[3], 1, MAX_INITIAL_INVENTORY_SIZE }, + // (these values are only valid for BD style levels) + { + EL_BD_PLAYER, -1, + TYPE_BOOLEAN, CONF_VALUE_8_BIT(1), + &li.bd_diagonal_movements, FALSE + }, + + // (the following values are related to various game elements) + { EL_EMERALD, -1, TYPE_INTEGER, CONF_VALUE_16_BIT(1), @@ -3710,6 +3725,9 @@ static void CopyNativeLevel_RND_to_BD(struct LevelInfo *level) cave->level_speed[0] = 160; // set cave speed + cave->intermission = level->bd_intermission; + cave->diagonal_movements = level->bd_diagonal_movements; + strncpy(cave->name, level->name, sizeof(GdString)); cave->name[sizeof(GdString) - 1] = '\0'; @@ -3735,6 +3753,9 @@ static void CopyNativeLevel_BD_to_RND(struct LevelInfo *level) level->score[SC_TIME_BONUS] = cave->level_timevalue[bd_level_nr]; level->score[SC_DIAMOND] = cave->diamond_value; + level->bd_intermission = cave->intermission; + level->bd_diagonal_movements = cave->diagonal_movements; + strncpy(level->name, cave->name, MAX_LEVEL_NAME_LEN); level->name[MAX_LEVEL_NAME_LEN] = '\0';