summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/object_cmd.cpp3
-rw-r--r--src/object_type.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/src/object_cmd.cpp b/src/object_cmd.cpp
index e6100c78d..59fc3f5c4 100644
--- a/src/object_cmd.cpp
+++ b/src/object_cmd.cpp
@@ -205,7 +205,8 @@ CommandCost CmdBuildObject(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3
{
CommandCost cost(EXPENSES_PROPERTY);
- ObjectType type = (ObjectType)GB(p1, 0, 8);
+ ObjectType type = (ObjectType)GB(p1, 0, 16);
+ if (type >= NUM_OBJECTS) return CMD_ERROR;
uint8 view = GB(p2, 0, 2);
const ObjectSpec *spec = ObjectSpec::Get(type);
if (!spec->IsAvailable()) return CMD_ERROR;
diff --git a/src/object_type.h b/src/object_type.h
index 9716b360e..1ebb24d53 100644
--- a/src/object_type.h
+++ b/src/object_type.h
@@ -24,7 +24,7 @@ static const ObjectType OBJECT_HQ = 4; ///< HeadQuarter of a play
static const ObjectType NUM_OBJECTS_PER_GRF = 255; ///< Number of supported objects per NewGRF; limited to 255 to allow extending Action3 with an extended byte later on.
static const ObjectType NEW_OBJECT_OFFSET = 5; ///< Offset for new objects
-static const ObjectType NUM_OBJECTS = 256; ///< Number of supported objects overall
+static const ObjectType NUM_OBJECTS = 64000; ///< Number of supported objects overall
static const ObjectType INVALID_OBJECT_TYPE = 0xFFFF; ///< An invalid object
/** Unique identifier for an object. */