diff --git a/src/economy.cpp b/src/economy.cpp --- a/src/economy.cpp +++ b/src/economy.cpp @@ -815,7 +815,7 @@ Money GetTransportedGoodsIncome(uint num int result = GB(callback, 0, 14); /* Simulate a 15 bit signed value */ - if (HasBit(callback, 14)) result = 0x4000 - result; + if (HasBit(callback, 14)) result -= 0x4000; /* "The result should be a signed multiplier that gets multiplied * by the amount of cargo moved and the price factor, then gets