X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;fp=src%2Finit.c;h=45945dcd2d2f7868056be394ef789c4b34bf293c;hb=895d5cb33db251c933445778400bb3e50b76d4ab;hp=af11e4c7a5242329fcab1d5c112ddf05c50b90bb;hpb=d1a0dcb34b3d1c33e8cc283fe4dee238c94b84f8;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index af11e4c7..45945dcd 100644 --- a/src/init.c +++ b/src/init.c @@ -722,14 +722,23 @@ static void InitGlobalAnimGraphicInfo(void) struct GraphicInfo *g = &graphic_info[graphic]; struct FileInfo *image = getImageListEntryFromImageID(graphic); char **parameter_raw = image->parameter; - int p = GFX_ARG_DRAW_MASKED; - int draw_masked = get_graphic_parameter_value(parameter_raw[p], - image_config_suffix[p].token, - image_config_suffix[p].type); + int p1 = GFX_ARG_DRAW_MASKED; + int p2 = GFX_ARG_DRAW_ORDER; + int draw_masked = get_graphic_parameter_value(parameter_raw[p1], + image_config_suffix[p1].token, + image_config_suffix[p1].type); + int draw_order = get_graphic_parameter_value(parameter_raw[p2], + image_config_suffix[p2].token, + image_config_suffix[p2].type); // if ".draw_masked" parameter is undefined, use default value "TRUE" if (draw_masked == ARG_UNDEFINED_VALUE) g->draw_masked = TRUE; + + // if ".draw_order" parameter is undefined, set back to "undefined" + // (used to be able to inherit draw order from main animation later) + if (draw_order == ARG_UNDEFINED_VALUE) + g->draw_order = ARG_UNDEFINED_VALUE; } #if 0 @@ -1657,6 +1666,10 @@ static void set_graphic_parameters_ext(int graphic, int *parameter, if (parameter[GFX_ARG_DRAW_MASKED] != ARG_UNDEFINED_VALUE) g->draw_masked = parameter[GFX_ARG_DRAW_MASKED]; + // use a different default value for global animations (corrected later) + if (graphic >= IMG_GLOBAL_ANIM_1 && graphic <= IMG_GLOBAL_ANIM_32) + g->draw_order = ARG_UNDEFINED_VALUE; + // used for toon animations and global animations if (parameter[GFX_ARG_DRAW_ORDER] != ARG_UNDEFINED_VALUE) g->draw_order = parameter[GFX_ARG_DRAW_ORDER];