strings.c
changeset 1621 890ab08b9855
parent 1542 62a03537ad0b
child 1625 c2849df304da
equal deleted inserted replaced
1620:a8b502e4b25f 1621:890ab08b9855
    14 static char *StationGetSpecialString(char *buff);
    14 static char *StationGetSpecialString(char *buff);
    15 static char *GetSpecialTownNameString(char *buff, int ind);
    15 static char *GetSpecialTownNameString(char *buff, int ind);
    16 static char *GetSpecialPlayerNameString(char *buff, int ind);
    16 static char *GetSpecialPlayerNameString(char *buff, int ind);
    17 
    17 
    18 static char *DecodeString(char *buff, const char *str);
    18 static char *DecodeString(char *buff, const char *str);
       
    19 static char *FormatNoCommaNumber(char *buff, int32 number);
    19 
    20 
    20 extern const char _openttd_revision[];
    21 extern const char _openttd_revision[];
    21 
    22 
    22 typedef struct LanguagePack {
    23 typedef struct LanguagePack {
    23 	uint32 ident;
    24 	uint32 ident;
   148 		case 0x30D1:
   149 		case 0x30D1:
   149 			return StationGetSpecialString(buffr);
   150 			return StationGetSpecialString(buffr);
   150 
   151 
   151 		case STR_SPEC_SCREENSHOT_NAME:
   152 		case STR_SPEC_SCREENSHOT_NAME:
   152 			return DecodeString(buffr, _screenshot_name);
   153 			return DecodeString(buffr, _screenshot_name);
       
   154 	}
       
   155 
       
   156 	if (string >> 12 == 1) {
       
   157 		// black number encoded in the string ID
       
   158 		*buffr++ = 31; // BLACK
       
   159 		return FormatNoCommaNumber(buffr, string & 0xFFF);
   153 	}
   160 	}
   154 
   161 
   155 	switch (tab) {
   162 	switch (tab) {
   156 		case 4:
   163 		case 4:
   157 			if (index >= 0xC0) return GetSpecialTownNameString(buffr, index - 0xC0);
   164 			if (index >= 0xC0) return GetSpecialTownNameString(buffr, index - 0xC0);