diff options
author | peter1138 <peter1138@openttd.org> | 2007-03-10 09:23:33 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2007-03-10 09:23:33 +0000 |
commit | ec5b2c600b0a3c24f1dfb1192104e00e2dca384e (patch) | |
tree | c5de5ed636d84f3e23861ff9bdbd6c7695f82828 /src | |
parent | b57ef910f891554b2277b2816e7afb7001cb897e (diff) | |
download | openttd-ec5b2c600b0a3c24f1dfb1192104e00e2dca384e.tar.xz |
(svn r9092) -Codechange: (NewGRF) (re r8885) Also set cargo type as invalid if the chosen type is not available in the current climate.
Diffstat (limited to 'src')
-rw-r--r-- | src/newgrf.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp index ea30c6eec..4d04904c7 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -365,7 +365,7 @@ static bool RailVehicleChangeInfo(uint engine, int numinfo, int prop, byte **buf FOR_EACH_OBJECT { uint8 ctype = grf_load_byte(&buf); - if (ctype < NUM_CARGO) { + if (ctype < NUM_CARGO && HASBIT(_cargo_mask, ctype)) { rvi[i].cargo_type = ctype; } else { rvi[i].cargo_type = CT_INVALID; @@ -557,7 +557,7 @@ static bool RoadVehicleChangeInfo(uint engine, int numinfo, int prop, byte **buf FOR_EACH_OBJECT { uint8 cargo = grf_load_byte(&buf); - if (cargo < NUM_CARGO) { + if (cargo < NUM_CARGO && HASBIT(_cargo_mask, cargo)) { rvi[i].cargo_type = cargo; } else { rvi[i].cargo_type = CT_INVALID; @@ -671,7 +671,7 @@ static bool ShipVehicleChangeInfo(uint engine, int numinfo, int prop, byte **buf FOR_EACH_OBJECT { uint8 cargo = grf_load_byte(&buf); - if (cargo < NUM_CARGO) { + if (cargo < NUM_CARGO && HASBIT(_cargo_mask, cargo)) { svi[i].cargo_type = cargo; } else { svi[i].cargo_type = CT_INVALID; |