X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fmisc.c;h=f6ea818788ea12d34855155862f717cae33209c7;hp=910a7e95ef1d18a725549daad837bbf26a3c9ded;hb=4f99eecc06f270aa3c8f536c0b3813c743d19ef5;hpb=632b8ce3e7c946dc6d5e9d1f93a1a8dcb38e510c diff --git a/src/libgame/misc.c b/src/libgame/misc.c index 910a7e95..f6ea8187 100644 --- a/src/libgame/misc.c +++ b/src/libgame/misc.c @@ -1550,7 +1550,13 @@ static void replaceArtworkListEntry(struct ArtworkListInfo *artwork_info, if (filename == NULL) { - Error(ERR_WARN, "cannot find artwork file '%s'", basename); + int error_mode = ERR_WARN; + + /* we can get away without sounds and music, but not without graphics */ + if (*listnode == NULL && artwork_info->type == ARTWORK_TYPE_GRAPHICS) + error_mode = ERR_EXIT; + + Error(error_mode, "cannot find artwork file '%s'", basename); return; } @@ -1597,6 +1603,17 @@ static void replaceArtworkListEntry(struct ArtworkListInfo *artwork_info, addNodeToList(&artwork_info->content_list, (*listnode)->source_filename, *listnode); } + else + { + int error_mode = ERR_WARN; + + /* we can get away without sounds and music, but not without graphics */ + if (artwork_info->type == ARTWORK_TYPE_GRAPHICS) + error_mode = ERR_EXIT; + + Error(error_mode, "cannot load artwork file '%s'", basename); + return; + } } static void LoadCustomArtwork(struct ArtworkListInfo *artwork_info,