+2004-04-07
+ * fixed bug with incorrectly initialized custom element editor graphics
+
+2004-04-04
+ * corrected set "Contributions_1995-2000/rnd_kjell_kristiansson":
+ - number of levels corrected from 18 to 17 in "levelinfo.conf"
+
2004-03-31
* fixed bug with destroyed robot wheel still attracting robots forever
* fixed bug with time gate switch deactivating after robot wheel time
-#define COMPILE_DATE_STRING "[2004-04-03 19:34]"
+#define COMPILE_DATE_STRING "[2004-04-07 00:46]"
redraw_mask |= REDRAW_ALL;
- ReinitializeElementListButtons(); /* only needed after setup changes */
+ ReinitializeElementListButtons(); /* custom element may look different */
#if 0
ModifyEditorElementList(); /* may be needed for custom elements */
#endif
pre-2.0 levels, where the game version is still taken from the
file format version used to store the level -- see above). */
+#if 1
+ /* player was faster than enemies in 1.0.0 and before */
+ if (level->file_version == FILE_VERSION_1_0)
+ level->double_speed = TRUE;
+#else
/* do some special adjustments to support older level versions */
if (level->file_version == FILE_VERSION_1_0)
{
/* player was faster than monsters in (pre-)1.0 levels */
level->double_speed = TRUE;
}
+#endif
- /* Default behaviour for EM style gems was "slippery" only in 2.0.1 */
+ /* default behaviour for EM style gems was "slippery" only in 2.0.1 */
if (level->game_version == VERSION_IDENT(2,0,1,0))
level->em_slippery_gems = TRUE;
int direction = element_to_graphic[i].direction;
boolean crumbled = element_to_graphic[i].crumbled;
int graphic = element_to_graphic[i].graphic;
+ int base_graphic = el2baseimg(element);
if (graphic_info[graphic].bitmap == NULL)
continue;
if ((action > -1 || direction > -1 || crumbled == TRUE) &&
- el2img(element) != -1)
+ base_graphic != -1)
{
- boolean base_redefined = getImageListEntry(el2img(element))->redefined;
+ boolean base_redefined = getImageListEntry(base_graphic)->redefined;
boolean act_dir_redefined = getImageListEntry(graphic)->redefined;
/* if the base graphic ("emerald", for example) has been redefined,
int element = element_to_special_graphic[i].element;
int special = element_to_special_graphic[i].special;
int graphic = element_to_special_graphic[i].graphic;
- boolean base_redefined = getImageListEntry(el2img(element))->redefined;
+ int base_graphic = el2baseimg(element);
+ boolean base_redefined = getImageListEntry(base_graphic)->redefined;
boolean special_redefined = getImageListEntry(graphic)->redefined;
/* if the base graphic ("emerald", for example) has been redefined,
return el_act_dir2img(element, ACTION_DEFAULT, direction);
}
+int el2baseimg(int element)
+{
+ return element_info[element].graphic[ACTION_DEFAULT];
+}
+
int el2img(int element)
{
element = GFX_ELEMENT(element);
int el_act_dir2img(int, int, int);
int el_act2img(int, int);
int el_dir2img(int, int);
+int el2baseimg(int);
int el2img(int);
int el2edimg(int);
int el2preimg(int);