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/>.
8 /** @file story_cmd.h Command definitions related to stories. */
13 #include "command_type.h"
14 #include "company_type.h"
15 #include "story_type.h"
16 #include "vehicle_type.h"
18 std::tuple
<CommandCost
, StoryPageID
> CmdCreateStoryPage(DoCommandFlag flags
, CompanyID company
, const std::string
&text
);
19 std::tuple
<CommandCost
, StoryPageElementID
> CmdCreateStoryPageElement(DoCommandFlag flags
, TileIndex tile
, StoryPageID page_id
, StoryPageElementType type
, uint32_t reference
, const std::string
&text
);
20 CommandCost
CmdUpdateStoryPageElement(DoCommandFlag flags
, TileIndex tile
, StoryPageElementID page_element_id
, uint32_t reference
, const std::string
&text
);
21 CommandCost
CmdSetStoryPageTitle(DoCommandFlag flags
, StoryPageID page_id
, const std::string
&text
);
22 CommandCost
CmdSetStoryPageDate(DoCommandFlag flags
, StoryPageID page_id
, TimerGameCalendar::Date date
);
23 CommandCost
CmdShowStoryPage(DoCommandFlag flags
, StoryPageID page_id
);
24 CommandCost
CmdRemoveStoryPage(DoCommandFlag flags
, StoryPageID page_id
);
25 CommandCost
CmdRemoveStoryPageElement(DoCommandFlag flags
, StoryPageElementID page_element_id
);
26 CommandCost
CmdStoryPageButton(DoCommandFlag flags
, TileIndex tile
, StoryPageElementID page_element_id
, VehicleID reference
);
28 DEF_CMD_TRAIT(CMD_CREATE_STORY_PAGE
, CmdCreateStoryPage
, CMD_DEITY
| CMD_STR_CTRL
, CMDT_OTHER_MANAGEMENT
)
29 DEF_CMD_TRAIT(CMD_CREATE_STORY_PAGE_ELEMENT
, CmdCreateStoryPageElement
, CMD_DEITY
| CMD_STR_CTRL
, CMDT_OTHER_MANAGEMENT
)
30 DEF_CMD_TRAIT(CMD_UPDATE_STORY_PAGE_ELEMENT
, CmdUpdateStoryPageElement
, CMD_DEITY
| CMD_STR_CTRL
, CMDT_OTHER_MANAGEMENT
)
31 DEF_CMD_TRAIT(CMD_SET_STORY_PAGE_TITLE
, CmdSetStoryPageTitle
, CMD_DEITY
| CMD_STR_CTRL
, CMDT_OTHER_MANAGEMENT
)
32 DEF_CMD_TRAIT(CMD_SET_STORY_PAGE_DATE
, CmdSetStoryPageDate
, CMD_DEITY
, CMDT_OTHER_MANAGEMENT
)
33 DEF_CMD_TRAIT(CMD_SHOW_STORY_PAGE
, CmdShowStoryPage
, CMD_DEITY
, CMDT_OTHER_MANAGEMENT
)
34 DEF_CMD_TRAIT(CMD_REMOVE_STORY_PAGE
, CmdRemoveStoryPage
, CMD_DEITY
, CMDT_OTHER_MANAGEMENT
)
35 DEF_CMD_TRAIT(CMD_REMOVE_STORY_PAGE_ELEMENT
, CmdRemoveStoryPageElement
, CMD_DEITY
, CMDT_OTHER_MANAGEMENT
)
36 DEF_CMD_TRAIT(CMD_STORY_PAGE_BUTTON
, CmdStoryPageButton
, CMD_DEITY
, CMDT_OTHER_MANAGEMENT
)
38 #endif /* STORY_CMD_H */