diff options
author | frosch <frosch@openttd.org> | 2011-08-20 23:16:49 +0000 |
---|---|---|
committer | frosch <frosch@openttd.org> | 2011-08-20 23:16:49 +0000 |
commit | aefee3d3753105bd1bb0e086dbe807e47688b331 (patch) | |
tree | 83c12b0c18cd5a9fe9142e368f9096fb0a637f64 | |
parent | 3edfd1c9d291a5a8e542414e0bea7e7809d2092b (diff) | |
download | openttd-aefee3d3753105bd1bb0e086dbe807e47688b331.tar.xz |
(svn r22780) -Fix: [NewGRF] String codes 84 and 87 print signed values.
-rw-r--r-- | src/newgrf_text.cpp | 5 | ||||
-rw-r--r-- | src/table/control_codes.h | 4 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/newgrf_text.cpp b/src/newgrf_text.cpp index 8aa4f935d..334fa9871 100644 --- a/src/newgrf_text.cpp +++ b/src/newgrf_text.cpp @@ -1014,7 +1014,6 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const switch (scc) { default: NOT_REACHED(); case SCC_NEWGRF_PRINT_BYTE_SIGNED: *argv = _newgrf_textrefstack.PopSignedByte(); break; - case SCC_NEWGRF_PRINT_WORD_SIGNED: *argv = _newgrf_textrefstack.PopSignedWord(); break; case SCC_NEWGRF_PRINT_QWORD_CURRENCY: *argv = _newgrf_textrefstack.PopSignedQWord(); break; case SCC_NEWGRF_PRINT_DWORD_CURRENCY: @@ -1023,9 +1022,11 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const case SCC_NEWGRF_PRINT_BYTE_HEX: *argv = _newgrf_textrefstack.PopUnsignedByte(); break; case SCC_NEWGRF_PRINT_QWORD_HEX: *argv = _newgrf_textrefstack.PopUnsignedQWord(); break; - case SCC_NEWGRF_PRINT_WORD_HEX: case SCC_NEWGRF_PRINT_WORD_SPEED: case SCC_NEWGRF_PRINT_WORD_VOLUME: + case SCC_NEWGRF_PRINT_WORD_SIGNED: *argv = _newgrf_textrefstack.PopSignedWord(); break; + + case SCC_NEWGRF_PRINT_WORD_HEX: case SCC_NEWGRF_PRINT_WORD_WEIGHT: case SCC_NEWGRF_PRINT_WORD_POWER: case SCC_NEWGRF_PRINT_WORD_STATION_NAME: diff --git a/src/table/control_codes.h b/src/table/control_codes.h index 4d86b5a30..55f148653 100644 --- a/src/table/control_codes.h +++ b/src/table/control_codes.h @@ -120,8 +120,8 @@ enum StringControlCode { SCC_NEWGRF_PRINT_WORD_STRING_ID, ///< Read 2 bytes from the stack as String ID SCC_NEWGRF_PRINT_WORD_DATE_LONG, ///< Read 2 bytes from the stack as base 1920 date SCC_NEWGRF_PRINT_WORD_DATE_SHORT, ///< Read 2 bytes from the stack as base 1920 date - SCC_NEWGRF_PRINT_WORD_SPEED, ///< Read 2 bytes from the stack as unsigned speed - SCC_NEWGRF_PRINT_WORD_VOLUME, ///< Read 2 bytes from the stack as unsigned volume + 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 unsigned 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 |