Mercurial > hg > openttd
changeset 5060:d3c28305504d draft
(svn r7113) -Codechange: [NewStations] Add support for copying custom station layouts
author | peter1138 <peter1138@openttd.org> |
---|---|
date | Wed, 08 Nov 2006 12:17:14 +0000 |
parents | 64de9e340548 |
children | a9066aa40688 |
files | newgrf.c newgrf_station.h |
diffstat | 2 files changed, 11 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/newgrf.c +++ b/newgrf.c @@ -952,6 +952,8 @@ FOR_EACH_OBJECT { StationSpec *statspec = _cur_grffile->stations[stid + i]; + statspec->copied_layouts = false; + while (buf < *bufp + len) { byte length = grf_load_byte(&buf); byte number = grf_load_byte(&buf); @@ -1001,11 +1003,16 @@ break; case 0x0F: /* Copy custom layout */ - /* TODO */ FOR_EACH_OBJECT { - grf_load_byte(&buf); + StationSpec *statspec = _cur_grffile->stations[stid + i]; + byte srcid = grf_load_byte(&buf); + const StationSpec *srcstatspec = _cur_grffile->stations[srcid]; + + statspec->lengths = srcstatspec->lengths; + statspec->platforms = srcstatspec->platforms; + statspec->layouts = srcstatspec->layouts; + statspec->copied_layouts = true; } - ret = true; break; case 0x10: /* Little/lots cargo threshold */