diff options
author | peter1138 <peter1138@openttd.org> | 2006-04-23 18:37:06 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2006-04-23 18:37:06 +0000 |
commit | 70bd867d7134c6eb44cdca80275d3015bb7807c3 (patch) | |
tree | e57b71a10c177e0c31af9cf1b413ab924f5d04e2 /newgrf.c | |
parent | baebc8d47e33e0c0a9a5cd3943afabeafabc19d9 (diff) | |
download | openttd-70bd867d7134c6eb44cdca80275d3015bb7807c3.tar.xz |
(svn r4551) - NewGRF: add string handling for newstations.
Diffstat (limited to 'newgrf.c')
-rw-r--r-- | newgrf.c | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -1716,7 +1716,6 @@ static void VehicleNewName(byte *buf, int len) * (completely new scenarios changing all graphics and logically also * factory names etc). We should then also support all languages (by * name), not only the original four ones. --pasky - * TODO: Support for custom station class/type names. * All of the above are coming. In Time. Some sooner than others :)*/ uint8 feature; @@ -1760,17 +1759,22 @@ static void VehicleNewName(byte *buf, int len) break; } -#if 0 - case GSF_STATION: + case GSF_STATION: { + byte station = GB(id, 0, 8); + if (station >= _cur_grffile->num_stations) { + grfmsg(GMS_WARN, "VehicleNewName: Attempt to name undefined station 0x%X, ignoring.", station); + break; + } + switch (GB(id, 8, 8)) { case 0xC4: { /* Station class name */ - StationClassID sclass = _cur_grffile->stations[GB(id, 0, 8)].sclass; - SetStationClassName(sclass, AddGRFString(_cur_grffile->grfid, id, lang, name)); + StationClassID sclass = _cur_grffile->stations[station].sclass; + SetStationClassName(sclass, AddGRFString(_cur_grffile->grfid, id, lang, new_scheme, name)); break; } case 0xC5: /* Station name */ - _cur_grffile->stations[GB(id, 0, 8)].name = AddGRFString(_cur_grffile->grfid, id, lang, name); + _cur_grffile->stations[station].name = AddGRFString(_cur_grffile->grfid, id, lang, new_scheme, name); break; default: @@ -1778,7 +1782,9 @@ static void VehicleNewName(byte *buf, int len) break; } break; + } +#if 0 case GSF_CANAL : case GSF_BRIDGE : case GSF_TOWNHOUSE : |