Feature: Purchase land multiple tiles at a time
[openttd-github.git] / src / goal_type.h
blob27ec758a9d6d65161c74849bdd2649f94df8b438
1 /*
2 * This file is part of OpenTTD.
3 * 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.
4 * 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.
5 * 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/>.
6 */
8 /** @file goal_type.h basic types related to goals */
10 #ifndef GOAL_TYPE_H
11 #define GOAL_TYPE_H
13 #include "core/enum_type.hpp"
15 static const uint32 GOAL_QUESTION_BUTTON_COUNT = 18; ///< Amount of buttons available.
17 enum GoalQuestionType : byte {
18 GQT_QUESTION = 0,
19 GQT_INFORMATION = 1,
20 GQT_WARNING = 2,
21 GQT_ERROR = 3,
22 GQT_END = 4,
25 /** Types of goal destinations */
26 enum GoalType : byte {
27 GT_NONE, ///< Destination is not linked
28 GT_TILE, ///< Destination is a tile
29 GT_INDUSTRY, ///< Destination is an industry
30 GT_TOWN, ///< Destination is a town
31 GT_COMPANY, ///< Destination is a company
32 GT_STORY_PAGE, ///< Destination is a story page
35 typedef uint32 GoalTypeID; ///< Contains either tile, industry ID, town ID or company ID (or INVALID_GOALTYPE)
36 static const GoalTypeID INVALID_GOALTYPE = 0xFFFFFFFF; ///< Invalid/unknown index of GoalType
38 typedef uint16 GoalID; ///< ID of a goal
39 struct Goal;
40 static const GoalID INVALID_GOAL = 0xFFFF; ///< Constant representing a non-existing goal.
42 #endif /* GOAL_TYPE_H */