diff -r abea5b669f74 -r 04f306272df7 newgrf.c --- a/newgrf.c Wed Jan 26 12:51:04 2005 +0000 +++ b/newgrf.c Wed Jan 26 17:36:59 2005 +0000 @@ -589,15 +589,15 @@ case 0x09: { /* Helicopter */ FOR_EACH_OBJECT { uint8 heli = grf_load_byte(&buf); - - avi[i].subtype = (heli == 0) ? 0 : 1; + avi[i].subtype &= ~0x01; // remove old property + avi[i].subtype &= (heli == 0) ? 0 : 1; } } break; case 0x0A: { /* Large */ FOR_EACH_OBJECT { uint8 large = grf_load_byte(&buf); - - avi[i].subtype = (large == 1) ? 3 : 1; + avi[i].subtype &= ~0x02; // remove old property + avi[i].subtype &= (large == 1) ? 2 : 0; } } break; case 0x0B: { /* Cost factor */