X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Ffiles.c;h=b48fcf4a1482b38942301fbadb8396be182513f0;hb=53eb378f7b2264e792eedf961575e07e3e587528;hp=433f68134896aac251a6ea338c3f831509e7dc5c;hpb=395ed3b7853b446fa77768786eae09b215731570;p=rocksndiamonds.git diff --git a/src/files.c b/src/files.c index 433f6813..b48fcf4a 100644 --- a/src/files.c +++ b/src/files.c @@ -563,6 +563,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 +3719,8 @@ static void CopyNativeLevel_RND_to_BD(struct LevelInfo *level) cave->level_speed[0] = 160; // set cave speed + cave->diagonal_movements = level->bd_diagonal_movements; + strncpy(cave->name, level->name, sizeof(GdString)); cave->name[sizeof(GdString) - 1] = '\0'; @@ -3735,6 +3746,8 @@ 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_diagonal_movements = cave->diagonal_movements; + strncpy(level->name, cave->name, MAX_LEVEL_NAME_LEN); level->name[MAX_LEVEL_NAME_LEN] = '\0';