Merge branch 'master' into jgrpp
# Conflicts: # src/saveload/company_sl.cpp
This commit is contained in:
@@ -13,6 +13,7 @@
|
||||
#include "script_error.hpp"
|
||||
#include "../../core/bitmath_func.hpp"
|
||||
#include "../../string_func.h"
|
||||
#include "../../strings_func.h"
|
||||
|
||||
#include "../../safeguards.h"
|
||||
|
||||
@@ -31,17 +32,17 @@ ScriptError::ScriptErrorMapString ScriptError::error_map_string = ScriptError::S
|
||||
|
||||
/* static */ ScriptErrorType ScriptError::StringToError(StringID internal_string_id)
|
||||
{
|
||||
uint index = GB(internal_string_id, 11, 5);
|
||||
switch (GB(internal_string_id, 11, 5)) {
|
||||
case 26: case 28: case 29: case 30: // NewGRF strings.
|
||||
return ERR_NEWGRF_SUPPLIED_ERROR;
|
||||
uint index = GetStringIndex(internal_string_id);
|
||||
switch (GetStringTab(internal_string_id)) {
|
||||
case TEXT_TAB_NEWGRF_START:
|
||||
case TEXT_TAB_GAMESCRIPT_START:
|
||||
return ERR_NEWGRF_SUPPLIED_ERROR; // NewGRF strings.
|
||||
|
||||
/* DO NOT SWAP case 14 and 4 because that will break StringToError due
|
||||
* to the index dependency that relies on FALL THROUGHs. */
|
||||
case 14: if (index < 0xE4) break; // Player name
|
||||
case 4: if (index < 0xC0) break; // Town name
|
||||
case 15: // Custom name
|
||||
case 31: // Dynamic strings
|
||||
case TEXT_TAB_SPECIAL:
|
||||
if (index < 0xE4) break; // Player name
|
||||
/* FALL THROUGH */
|
||||
case TEXT_TAB_TOWN:
|
||||
if (index < 0xC0) break; // Town name
|
||||
/* These strings are 'random' and have no meaning.
|
||||
* They actually shouldn't even be returned as error messages. */
|
||||
return ERR_UNKNOWN;
|
||||
|
@@ -98,7 +98,7 @@ typedef uint8 IndustryType; ///< The ID of an industry-type.
|
||||
typedef OverflowSafeInt64 Money; ///< Money, stored in a 32bit/64bit safe way. For scripts money is always in pounds.
|
||||
typedef uint16 SignID; ///< The ID of a sign.
|
||||
typedef uint16 StationID; ///< The ID of a station.
|
||||
typedef uint16 StringID; ///< The ID of a string.
|
||||
typedef uint32 StringID; ///< The ID of a string.
|
||||
typedef uint16 SubsidyID; ///< The ID of a subsidy.
|
||||
typedef uint16 StoryPageID; ///< The ID of a story page.
|
||||
typedef uint16 StoryPageElementID; ///< The ID of a story page element.
|
||||
|
Reference in New Issue
Block a user