X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=05619cc4c1fecfd35b7204760c04949fbceb1782;hb=7a821f79cb735d048869b503279c402800afa44a;hp=947d0ef0d4c1aec6d10836a1b4fc26b39e9932a7;hpb=5d25c2fc3934b3d7e6b02465361569d3a0033bae;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index 947d0ef0..05619cc4 100644 --- a/src/init.c +++ b/src/init.c @@ -554,22 +554,24 @@ void InitElementGraphicInfo() { for (act=0; act 0 && graphic_info[graphic].bitmap == NULL) element_info[i].graphic[act] = -1; - if (graphic_info[element_info[i].crumbled[act]].bitmap == NULL) + graphic = element_info[i].crumbled[act]; + if (graphic > 0 && graphic_info[graphic].bitmap == NULL) element_info[i].crumbled[act] = -1; for (dir=0; dir 0 && graphic_info[graphic].bitmap == NULL) element_info[i].direction_graphic[act][dir] = -1; graphic = element_info[i].direction_crumbled[act][dir]; - if (graphic_info[graphic].bitmap == NULL) + if (graphic > 0 && graphic_info[graphic].bitmap == NULL) element_info[i].direction_crumbled[act][dir] = -1; } } @@ -892,6 +894,10 @@ static void InitGraphicInfo() graphic_info = checked_calloc(num_images * sizeof(struct GraphicInfo)); +#if 0 + printf("::: graphic_info: %d entries\n", num_images); +#endif + #if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND) if (clipmasks_initialized) { @@ -915,9 +921,8 @@ static void InitGraphicInfo() int src_x, src_y; int first_frame, last_frame; -#if 1 - if (strcmp(image->token, "dynamite.EDITOR") == 0) - printf("::: image: '%s' [%d]\n", image->token, i); +#if 0 + printf("::: image: '%s' [%d]\n", image->token, i); #endif #if 0 @@ -930,11 +935,6 @@ static void InitGraphicInfo() /* now check if no animation frames are outside of the loaded image */ -#if 1 - if (graphic_info[i].bitmap == NULL) - printf("::: graphic_info['%s'].bitmap == NULL\n", image->token); -#endif - if (graphic_info[i].bitmap == NULL) continue; /* skip check for optional images that are undefined */ @@ -2835,6 +2835,12 @@ void InitElementPropertiesEngine(int engine_version) element_info[i].token_name, element_info[i].crumbled[ACTION_DEFAULT]); #endif + + /* ---------- CAN_CHANGE ----------------------------------------------- */ + SET_PROPERTY(i, EP_CAN_CHANGE, FALSE); /* default: cannot change */ + for (j=0; j < element_info[i].num_change_pages; j++) + if (element_info[i].change_page[j].can_change) + SET_PROPERTY(i, EP_CAN_CHANGE, TRUE); } #if 0 @@ -3247,7 +3253,7 @@ void InitLevelArtworkInfo() static void InitImages() { -#if 0 +#if 1 setLevelArtworkDir(artwork.gfx_first); #endif @@ -3273,7 +3279,7 @@ static void InitSound(char *identifier) if (identifier == NULL) identifier = artwork.snd_current->identifier; -#if 0 +#if 1 /* set artwork path to send it to the sound server process */ setLevelArtworkDir(artwork.snd_first); #endif @@ -3287,7 +3293,7 @@ static void InitMusic(char *identifier) if (identifier == NULL) identifier = artwork.mus_current->identifier; -#if 0 +#if 1 /* set artwork path to send it to the sound server process */ setLevelArtworkDir(artwork.mus_first); #endif