File diff r14951:e24469d4e684 → r14952:14ece20bc0d1
src/newgrf_text.cpp
Show inline comments
 
@@ -282,24 +282,27 @@ char *TranslateTTDPatchCodes(uint32 grfi
 
						d += Utf8Encode(d, SCC_NEWGRF_UNPRINT);
 
						d += Utf8Encode(d, *str++);
 
						break;
 
					case 6:
 
						d += Utf8Encode(d, SCC_NEWGRF_PRINT_HEX_BYTE);
 
						break;
 
					case 7:
 
						d += Utf8Encode(d, SCC_NEWGRF_PRINT_HEX_WORD);
 
						break;
 
					case 8:
 
						d += Utf8Encode(d, SCC_NEWGRF_PRINT_HEX_DWORD);
 
						break;
 
					case 0x0B:
 
						d += Utf8Encode(d, SCC_NEWGRF_PRINT_HEX_QWORD);
 
						break;
 

	
 
					default:
 
						grfmsg(1, "missing handler for extended format code");
 
						break;
 
				}
 
				break;
 

	
 
			case 0x9E: d += Utf8Encode(d, 0x20AC); break; // Euro
 
			case 0x9F: d += Utf8Encode(d, 0x0178); break; // Y with diaeresis
 
			case 0xA0: d += Utf8Encode(d, SCC_UPARROW); break;
 
			case 0xAA: d += Utf8Encode(d, SCC_DOWNARROW); break;
 
			case 0xAC: d += Utf8Encode(d, SCC_CHECKMARK); break;
 
@@ -641,24 +644,25 @@ uint RemapNewGRFStringControlCode(uint s
 
	if (_newgrf_textrefstack->used) {
 
		switch (scc) {
 
			default: NOT_REACHED();
 
			case SCC_NEWGRF_PRINT_SIGNED_BYTE:    *argv = _newgrf_textrefstack->PopSignedByte();    break;
 
			case SCC_NEWGRF_PRINT_SIGNED_WORD:    *argv = _newgrf_textrefstack->PopSignedWord();    break;
 
			case SCC_NEWGRF_PRINT_QWORD_CURRENCY: *argv = _newgrf_textrefstack->PopUnsignedQWord(); break;
 

	
 
			case SCC_NEWGRF_PRINT_DWORD_CURRENCY:
 
			case SCC_NEWGRF_PRINT_DWORD:          *argv = _newgrf_textrefstack->PopSignedDWord();   break;
 

	
 
			case SCC_NEWGRF_PRINT_HEX_BYTE:       *argv = _newgrf_textrefstack->PopUnsignedByte();  break;
 
			case SCC_NEWGRF_PRINT_HEX_DWORD:      *argv = _newgrf_textrefstack->PopUnsignedDWord(); break;
 
			case SCC_NEWGRF_PRINT_HEX_QWORD:      *argv = _newgrf_textrefstack->PopSignedQWord(); break;
 

	
 
			case SCC_NEWGRF_PRINT_HEX_WORD:
 
			case SCC_NEWGRF_PRINT_WORD_SPEED:
 
			case SCC_NEWGRF_PRINT_WORD_LITRES:
 
			case SCC_NEWGRF_PRINT_UNSIGNED_WORD:  *argv = _newgrf_textrefstack->PopUnsignedWord();  break;
 

	
 
			case SCC_NEWGRF_PRINT_DATE:
 
			case SCC_NEWGRF_PRINT_MONTH_YEAR:     *argv = _newgrf_textrefstack->PopSignedWord() + DAYS_TILL_ORIGINAL_BASE_YEAR; break;
 

	
 
			case SCC_NEWGRF_DISCARD_WORD:         _newgrf_textrefstack->PopUnsignedWord(); break;
 

	
 
			case SCC_NEWGRF_ROTATE_TOP_4_WORDS:   _newgrf_textrefstack->RotateTop4Words(); break;
 
@@ -673,24 +677,25 @@ uint RemapNewGRFStringControlCode(uint s
 

	
 
	switch (scc) {
 
		default: NOT_REACHED();
 
		case SCC_NEWGRF_PRINT_DWORD:
 
		case SCC_NEWGRF_PRINT_SIGNED_WORD:
 
		case SCC_NEWGRF_PRINT_SIGNED_BYTE:
 
		case SCC_NEWGRF_PRINT_UNSIGNED_WORD:
 
			return SCC_COMMA;
 

	
 
		case SCC_NEWGRF_PRINT_HEX_BYTE:
 
		case SCC_NEWGRF_PRINT_HEX_WORD:
 
		case SCC_NEWGRF_PRINT_HEX_DWORD:
 
		case SCC_NEWGRF_PRINT_HEX_QWORD:
 
			return SCC_HEX;
 

	
 
		case SCC_NEWGRF_PRINT_DWORD_CURRENCY:
 
		case SCC_NEWGRF_PRINT_QWORD_CURRENCY:
 
			return SCC_CURRENCY;
 

	
 
		case SCC_NEWGRF_PRINT_STRING_ID:
 
			return SCC_STRING1;
 

	
 
		case SCC_NEWGRF_PRINT_DATE:
 
			return SCC_DATE_LONG;