summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/newgrf_text.cpp7
-rw-r--r--src/table/control_codes.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/newgrf_text.cpp b/src/newgrf_text.cpp
index e0b713982..ae48aa3eb 100644
--- a/src/newgrf_text.cpp
+++ b/src/newgrf_text.cpp
@@ -309,6 +309,9 @@ char *TranslateTTDPatchCodes(uint32 grfid, const char *str)
case 0x0C:
d += Utf8Encode(d, SCC_NEWGRF_PRINT_WORD_STATION_NAME);
break;
+ case 0x0D:
+ d += Utf8Encode(d, SCC_NEWGRF_PRINT_WORD_WEIGHT);
+ break;
default:
grfmsg(1, "missing handler for extended format code");
@@ -720,6 +723,7 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const
case SCC_NEWGRF_PRINT_HEX_WORD:
case SCC_NEWGRF_PRINT_WORD_SPEED:
case SCC_NEWGRF_PRINT_WORD_VOLUME:
+ case SCC_NEWGRF_PRINT_WORD_WEIGHT:
case SCC_NEWGRF_PRINT_WORD_STATION_NAME:
case SCC_NEWGRF_PRINT_UNSIGNED_WORD: *argv = _newgrf_textrefstack->PopUnsignedWord(); break;
@@ -771,6 +775,9 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const
case SCC_NEWGRF_PRINT_WORD_VOLUME:
return SCC_VOLUME;
+ case SCC_NEWGRF_PRINT_WORD_WEIGHT:
+ return SCC_WEIGHT;
+
case SCC_NEWGRF_PRINT_WORD_STATION_NAME:
return SCC_STATION_NAME;
diff --git a/src/table/control_codes.h b/src/table/control_codes.h
index ed6e9947f..ba3d041af 100644
--- a/src/table/control_codes.h
+++ b/src/table/control_codes.h
@@ -121,6 +121,7 @@ enum StringControlCode {
SCC_NEWGRF_PRINT_MONTH_YEAR, ///< Read 2 bytes from the stack as base 1920 date
SCC_NEWGRF_PRINT_WORD_SPEED, ///< Read 2 bytes from the stack as signed speed
SCC_NEWGRF_PRINT_WORD_VOLUME, ///< Read 2 bytes from the stack as signed volume
+ SCC_NEWGRF_PRINT_WORD_WEIGHT, ///< Read 2 bytes from the stack as signed weight
SCC_NEWGRF_PRINT_WORD_STATION_NAME, ///< Read 2 bytes from the stack as station name
SCC_NEWGRF_PRINT_QWORD_CURRENCY, ///< Read 8 bytes from the stack as currency
SCC_NEWGRF_PRINT_HEX_BYTE, ///< Read 1 byte from the stack and print it as hex