X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftools.c;h=fb1fc5ed620303db01503aedfb186a2113a50884;hb=d6cdd73c614433eb90eede7cf5cc512b0ef0b721;hp=fcc82f30f17919c995a146f877de3287c0607863;hpb=0a82d94ecb53afceb830366ca8f0a5ff09997109;p=rocksndiamonds.git diff --git a/src/tools.c b/src/tools.c index fcc82f30..fb1fc5ed 100644 --- a/src/tools.c +++ b/src/tools.c @@ -7230,12 +7230,56 @@ int map_action_SP_to_RND(int action_sp) int map_element_RND_to_MM(int element_rnd) { - return (element_rnd > 1000 ? element_rnd - 1000 : 0); + return (element_rnd >= EL_CHAR_START && + element_rnd <= EL_CHAR_END ? + EL_CHAR_START_NATIVE_MM + element_rnd - EL_CHAR_START : + + element_rnd >= EL_DF_START && + element_rnd <= EL_DF_END ? + EL_DF_START_NATIVE_MM + element_rnd - EL_DF_START : + + element_rnd >= EL_MM_START && + element_rnd <= EL_MM_END ? + EL_MM_START_NATIVE_MM + element_rnd - EL_MM_START : + + element_rnd >= EL_MM_RUNTIME_START && + element_rnd <= EL_MM_RUNTIME_END ? + EL_MM_RUNTIME_START_NATIVE_MM + element_rnd - EL_MM_RUNTIME_START : + + element_rnd >= EL_MM_DUMMY_START && + element_rnd <= EL_MM_DUMMY_END ? + EL_MM_DUMMY_START_NATIVE_MM + element_rnd - EL_MM_DUMMY_START : + + EL_EMPTY_NATIVE_MM); } int map_element_MM_to_RND(int element_mm) { - return 1000 + element_mm; + return (element_mm == EL_EMPTY_NATIVE_MM || + element_mm == EL_DF_EMPTY_NATIVE_MM ? + EL_EMPTY : + + element_mm >= EL_CHAR_START_NATIVE_MM && + element_mm <= EL_CHAR_END_NATIVE_MM ? + EL_CHAR_START + element_mm - EL_CHAR_START_NATIVE_MM : + + element_mm >= EL_DF_START_NATIVE_MM && + element_mm <= EL_DF_END_NATIVE_MM ? + EL_DF_START + element_mm - EL_DF_START_NATIVE_MM : + + element_mm >= EL_MM_START_NATIVE_MM && + element_mm <= EL_MM_END_NATIVE_MM ? + EL_MM_START + element_mm - EL_MM_START_NATIVE_MM : + + element_mm >= EL_MM_RUNTIME_START_NATIVE_MM && + element_mm <= EL_MM_RUNTIME_END_NATIVE_MM ? + EL_MM_RUNTIME_START + element_mm - EL_MM_RUNTIME_START_NATIVE_MM : + + element_mm >= EL_MM_DUMMY_START_NATIVE_MM && + element_mm <= EL_MM_DUMMY_END_NATIVE_MM ? + EL_MM_DUMMY_START + element_mm - EL_MM_DUMMY_START_NATIVE_MM : + + EL_EMPTY); } int get_next_element(int element)