mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-02-06 22:37:22 +00:00
(svn r9367) -Fix (r9315): If a new house doesn't have a corresponding action 3, the
graphics for the substitute (original) house should be drawn instead.
This commit is contained in:
parent
b82ed41a19
commit
7812f7fd0a
@ -1256,6 +1256,7 @@ static bool TownHouseChangeInfo(uint hid, int numinfo, int prop, byte **bufp, in
|
||||
housespec[i]->enabled = true;
|
||||
housespec[i]->local_id = hid + i;
|
||||
housespec[i]->substitute_id = subs_id;
|
||||
housespec[i]->grffile = _cur_grffile;
|
||||
housespec[i]->random_colour[0] = 0x04; // those 4 random colours are the base colour
|
||||
housespec[i]->random_colour[1] = 0x08; // for all new houses
|
||||
housespec[i]->random_colour[2] = 0x0C; // they stand for red, blue, orange and green
|
||||
@ -2316,7 +2317,6 @@ static void FeatureMapSpriteGroup(byte *buf, int len)
|
||||
}
|
||||
|
||||
hs->spritegroup = _cur_grffile->spritegroups[groupid];
|
||||
hs->grffile = _cur_grffile;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
@ -127,8 +127,15 @@ static void DrawTile_Town(TileInfo *ti)
|
||||
HouseID house_id = GetHouseType(ti->tile);
|
||||
|
||||
if (house_id >= NEW_HOUSE_OFFSET) {
|
||||
DrawNewHouseTile(ti, house_id);
|
||||
return;
|
||||
/* Houses don't necessarily need new graphics. If they don't have a
|
||||
* spritegroup associated with them, then the sprite for the substitute
|
||||
* house id is drawn instead. */
|
||||
if (GetHouseSpecs(house_id)->spritegroup != NULL) {
|
||||
DrawNewHouseTile(ti, house_id);
|
||||
return;
|
||||
} else {
|
||||
house_id = GetHouseSpecs(house_id)->substitute_id;
|
||||
}
|
||||
}
|
||||
|
||||
/* Retrieve pointer to the draw town tile struct */
|
||||
|
Loading…
Reference in New Issue
Block a user