2010-08-02 21:35:59 +00:00
/*
* This file is part of OpenTTD .
* OpenTTD is free software ; you can redistribute it and / or modify it under the terms of the GNU General Public License as published by the Free Software Foundation , version 2.
* OpenTTD is distributed in the hope that it will be useful , but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE .
* See the GNU General Public License for more details . You should have received a copy of the GNU General Public License along with OpenTTD . If not , see < http : //www.gnu.org/licenses/>.
*/
2010-08-08 11:12:34 +00:00
/** @file object_type.h Types related to object tiles. */
2010-08-02 21:35:59 +00:00
2010-08-08 10:59:30 +00:00
# ifndef OBJECT_TYPE_H
# define OBJECT_TYPE_H
2010-08-02 21:35:59 +00:00
2010-08-08 10:59:30 +00:00
/** Types of objects. */
2010-08-28 17:29:12 +00:00
typedef uint16 ObjectType ;
static const ObjectType OBJECT_TRANSMITTER = 0 ; ///< The large antenna
static const ObjectType OBJECT_LIGHTHOUSE = 1 ; ///< The nice lighthouse
static const ObjectType OBJECT_STATUE = 2 ; ///< Statue in towns
static const ObjectType OBJECT_OWNED_LAND = 3 ; ///< Owned land 'flag'
static const ObjectType OBJECT_HQ = 4 ; ///< HeadQuarter of a player
2013-10-12 16:31:31 +00:00
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.
2010-08-28 17:29:12 +00:00
static const ObjectType NEW_OBJECT_OFFSET = 5 ; ///< Offset for new objects
2013-10-12 16:31:55 +00:00
static const ObjectType NUM_OBJECTS = 64000 ; ///< Number of supported objects overall
2010-08-28 17:29:12 +00:00
static const ObjectType INVALID_OBJECT_TYPE = 0xFFFF ; ///< An invalid object
2010-08-02 21:35:59 +00:00
2010-08-13 12:45:26 +00:00
/** Unique identifier for an object. */
2013-10-12 16:35:50 +00:00
typedef uint32 ObjectID ;
2010-08-13 12:45:26 +00:00
struct Object ;
2010-08-08 10:59:30 +00:00
struct ObjectSpec ;
2010-08-02 21:35:59 +00:00
2013-10-12 16:35:50 +00:00
static const ObjectID INVALID_OBJECT = 0xFFFFFFFF ; ///< An invalid object
2010-08-28 18:49:39 +00:00
2010-08-08 11:12:34 +00:00
# endif /* OBJECT_TYPE_H */