# HG changeset patch # User frosch # Date 1305145417 0 # Node ID 809d132fc74f35c2c6bee080ee606cb639a8348c # Parent bfc4a902068fa67b838a3c1cc1ed26ac48385491 (svn r22444) -Add: When GRFs are disabled via Action E or due to GRM failure, also display an error in the GUI. diff --git a/src/lang/english.txt b/src/lang/english.txt --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -2471,6 +2471,8 @@ STR_NEWGRF_ERROR_MULTIPLE_ACTION_8 :Contains multiple Action 8 entries STR_NEWGRF_ERROR_READ_BOUNDS :Read past end of pseudo-sprite STR_NEWGRF_ERROR_MISSING_SPRITES :{WHITE}The currently used base graphics set is missing a number of sprites.{}Please update the base graphics set +STR_NEWGRF_ERROR_GRM_FAILED :Requested GRF resources not available +STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{2:RAW_STRING} was disabled by {4:RAW_STRING} # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Caution! diff --git a/src/newgrf.cpp b/src/newgrf.cpp --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -5758,7 +5758,7 @@ if (op != 4 && op != 5) { /* Deactivate GRF */ grfmsg(0, "ParamSet: GRM: Unable to allocate %d %s, deactivating", count, type); - DisableGrf(); + DisableGrf(STR_NEWGRF_ERROR_GRM_FAILED); return UINT_MAX; } @@ -5833,7 +5833,7 @@ /* Check if the allocated sprites will fit below the original sprite limit */ if (_cur_spriteid + count >= 16384) { grfmsg(0, "ParamSet: GRM: Unable to allocate %d sprites; try changing NewGRF order", count); - DisableGrf(); + DisableGrf(STR_NEWGRF_ERROR_GRM_FAILED); return; } @@ -6110,7 +6110,7 @@ /* Unset activation flag */ if (file != NULL && file != _cur_grfconfig) { grfmsg(2, "GRFInhibit: Deactivating file '%s'", file->filename); - GRFError *error = DisableGrf(STR_NULL, file); + GRFError *error = DisableGrf(STR_NEWGRF_ERROR_FORCEFULLY_DISABLED, file); error->data = strdup(_cur_grfconfig->GetName()); } }