Codechange: Allow using more than 65536 NewGRF string IDs.

NewGRF string allocation allowed up to 524288 strings, however stringid was passed as uint16_t which limits to 2^16.
This commit is contained in:
Peter Nelson 2023-09-04 08:12:51 +01:00 committed by PeterN
parent 3e762af2d1
commit e4613fc04c
2 changed files with 2 additions and 2 deletions

View File

@ -636,7 +636,7 @@ const char *GetGRFStringFromGRFText(const GRFTextWrapper &text)
/**
* Get a C-string from a stringid set by a newgrf.
*/
const char *GetGRFStringPtr(uint16_t stringid)
const char *GetGRFStringPtr(uint32_t stringid)
{
assert(stringid < _grf_text.size());
assert(_grf_text[stringid].grfid != 0);

View File

@ -33,7 +33,7 @@ StringID AddGRFString(uint32_t grfid, uint16_t stringid, byte langid, bool new_s
StringID GetGRFStringID(uint32_t grfid, StringID stringid);
const char *GetGRFStringFromGRFText(const GRFTextList &text_list);
const char *GetGRFStringFromGRFText(const GRFTextWrapper &text);
const char *GetGRFStringPtr(uint16_t stringid);
const char *GetGRFStringPtr(uint32_t stringid);
void CleanUpStrings();
void SetCurrentGrfLangID(byte language_id);
std::string TranslateTTDPatchCodes(uint32_t grfid, uint8_t language_id, bool allow_newlines, const std::string &str, StringControlCode byte80 = SCC_NEWGRF_PRINT_WORD_STRING_ID);