Mercurial > hg > openttd
changeset 3650:dfb952f78e05 draft
(svn r4561) - NewGRF: implement most of callback 0x23: additional text in vehicle purchase windows.
author | peter1138 <peter1138@openttd.org> |
---|---|
date | Sun, 23 Apr 2006 22:33:10 +0000 |
parents | 42d25288b84c |
children | 2223302eff46 |
files | newgrf_callbacks.h vehicle_gui.c vehicle_gui.h |
diffstat | 3 files changed, 17 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/newgrf_callbacks.h +++ b/newgrf_callbacks.h @@ -24,6 +24,10 @@ CBID_VEHICLE_REFIT_CAPACITY = 0x15, CBID_TRAIN_ARTIC_ENGINE = 0x16, + + /* This callback is called from vehicle purchase lists. It returns a value to be + * used as a custom string ID in the 0xD000 range. */ + CBID_VEHICLE_ADDITIONAL_TEXT = 0x23, }; /**
--- a/vehicle_gui.c +++ b/vehicle_gui.c @@ -19,7 +19,9 @@ #include "vehicle_gui.h" #include "viewport.h" #include "train.h" +#include "newgrf_callbacks.h" #include "newgrf_engine.h" +#include "newgrf_text.h" Sorting _sorting; @@ -256,6 +258,16 @@ return cargo; } +/* Display additional text from NewGRF in the purchase information window */ +int ShowAdditionalText(int x, int y, int w, EngineID engine) +{ + uint16 callback = GetVehicleCallback(CBID_VEHICLE_ADDITIONAL_TEXT, 0, 0, engine, NULL); + if (callback == CALLBACK_FAILED) return 0; + + DrawStringTruncated(x, y, GetGRFStringID(GetEngineGRFID(engine), 0xD000 + callback), 16, w); + return 10; +} + /************ Sorter functions *****************/ int CDECL GeneralOwnerSorter(const void *a, const void *b) {