diff --git a/src/economy.cpp b/src/economy.cpp --- a/src/economy.cpp +++ b/src/economy.cpp @@ -1368,7 +1368,7 @@ int LoadUnloadVehicle(Vehicle *v, bool j for (; v != NULL; v = v->next) { GoodsEntry* ge; load_amount = EngInfo(v->engine_type)->load_amount; - if (_patches.gradual_loading) { + if (_patches.gradual_loading && HASBIT(EngInfo(v->engine_type)->callbackmask, CBM_LOAD_AMOUNT)) { uint16 cb_load_amount = GetVehicleCallback(CBID_VEHICLE_LOAD_AMOUNT, 0, 0, v->engine_type, v); if (cb_load_amount != CALLBACK_FAILED) load_amount = cb_load_amount & 0xFF; }