OpenTTD Source 20241224-master-gf74b0cf984
|
Handling of goals. More...
#include "stdafx.h"
#include "company_func.h"
#include "industry.h"
#include "town.h"
#include "window_func.h"
#include "goal_base.h"
#include "core/pool_func.hpp"
#include "game/game.hpp"
#include "command_func.h"
#include "company_base.h"
#include "story_base.h"
#include "string_func.h"
#include "gui.h"
#include "network/network.h"
#include "network/network_base.h"
#include "network/network_func.h"
#include "goal_cmd.h"
#include "safeguards.h"
Go to the source code of this file.
Functions | |
std::tuple< CommandCost, GoalID > | CmdCreateGoal (DoCommandFlag flags, CompanyID company, GoalType type, GoalTypeID dest, const std::string &text) |
Create a new goal. | |
CommandCost | CmdRemoveGoal (DoCommandFlag flags, GoalID goal) |
Remove a goal. | |
CommandCost | CmdSetGoalDestination (DoCommandFlag flags, GoalID goal, GoalType type, GoalTypeID dest) |
Update goal destination of a goal. | |
CommandCost | CmdSetGoalText (DoCommandFlag flags, GoalID goal, const std::string &text) |
Update goal text of a goal. | |
CommandCost | CmdSetGoalProgress (DoCommandFlag flags, GoalID goal, const std::string &text) |
Update progress text of a goal. | |
CommandCost | CmdSetGoalCompleted (DoCommandFlag flags, GoalID goal, bool completed) |
Update completed state of a goal. | |
CommandCost | CmdGoalQuestion (DoCommandFlag flags, uint16_t uniqueid, uint32_t target, bool is_client, uint32_t button_mask, GoalQuestionType type, const std::string &text) |
Ask a goal related question. | |
CommandCost | CmdGoalQuestionAnswer (DoCommandFlag flags, uint16_t uniqueid, uint8_t button) |
Reply to a goal question. | |
Variables | |
GoalPool | _goal_pool ("Goal") |
Handling of goals.
Definition in file goal.cpp.
std::tuple< CommandCost, GoalID > CmdCreateGoal | ( | DoCommandFlag | flags, |
CompanyID | company, | ||
GoalType | type, | ||
GoalTypeID | dest, | ||
const std::string & | text | ||
) |
Create a new goal.
flags | type of operation |
company | Company for which this goal is. |
type | GoalType of destination. |
dest | GoalTypeID of destination. |
text | Text of the goal. |
Definition at line 78 of file goal.cpp.
References _current_company, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::CanAllocateItem(), CMD_ERROR, Goal::company, Goal::completed, DC_EXEC, Goal::dst, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::GetNumItems(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_COMPANY, INVALID_GOAL, InvalidateWindowClassesData(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), OWNER_DEITY, Goal::text, Goal::type, WC_GOALS_LIST, and WC_MAIN_TOOLBAR.
CommandCost CmdGoalQuestion | ( | DoCommandFlag | flags, |
uint16_t | uniqueid, | ||
uint32_t | target, | ||
bool | is_client, | ||
uint32_t | button_mask, | ||
GoalQuestionType | type, | ||
const std::string & | text | ||
) |
Ask a goal related question.
flags | type of operation |
uniqueid | Unique ID to use for this question. |
target | Company or client for which this question is. |
is_client | Question target: false - company, true - client. |
button_mask | Buttons of the question. |
type | Question type. |
text | Text of the question. |
Definition at line 248 of file goal.cpp.
References _current_company, _local_company, _network_own_client_id, _network_server, CMD_ERROR, CountBits(), DC_EXEC, NetworkClientInfo::GetByClientID(), GOAL_QUESTION_BUTTON_COUNT, INVALID_COMPANY, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), OWNER_DEITY, and ShowGoalQuestion().
CommandCost CmdGoalQuestionAnswer | ( | DoCommandFlag | flags, |
uint16_t | uniqueid, | ||
uint8_t | button | ||
) |
Reply to a goal question.
flags | type of operation |
uniqueid | Unique ID to use for this question. |
button | Button the company pressed |
Definition at line 292 of file goal.cpp.
References _current_company, _local_company, _network_server, _networking, CloseWindowById(), CMD_ERROR, DC_EXEC, GOAL_QUESTION_BUTTON_COUNT, Game::NewEvent(), OWNER_DEITY, and WC_GOAL_QUESTION.
CommandCost CmdRemoveGoal | ( | DoCommandFlag | flags, |
GoalID | goal | ||
) |
Remove a goal.
flags | type of operation |
goal | GoalID to remove. |
Definition at line 114 of file goal.cpp.
References _current_company, CMD_ERROR, Goal::company, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::GetNumItems(), INVALID_COMPANY, InvalidateWindowClassesData(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, WC_GOALS_LIST, and WC_MAIN_TOOLBAR.
CommandCost CmdSetGoalCompleted | ( | DoCommandFlag | flags, |
GoalID | goal, | ||
bool | completed | ||
) |
Update completed state of a goal.
flags | type of operation |
goal | GoalID to update. |
completed | completed state of goal. |
Definition at line 218 of file goal.cpp.
References _current_company, CMD_ERROR, Goal::company, Goal::completed, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), INVALID_COMPANY, InvalidateWindowClassesData(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, and WC_GOALS_LIST.
CommandCost CmdSetGoalDestination | ( | DoCommandFlag | flags, |
GoalID | goal, | ||
GoalType | type, | ||
GoalTypeID | dest | ||
) |
Update goal destination of a goal.
flags | type of operation |
goal | GoalID to update. |
type | GoalType of destination. |
dest | GoalTypeID of destination. |
Definition at line 143 of file goal.cpp.
References _current_company, CMD_ERROR, Goal::company, DC_EXEC, Goal::dst, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, and Goal::type.
CommandCost CmdSetGoalProgress | ( | DoCommandFlag | flags, |
GoalID | goal, | ||
const std::string & | text | ||
) |
Update progress text of a goal.
flags | type of operation |
goal | GoalID to update. |
text | Progress text of the goal. |
Definition at line 192 of file goal.cpp.
References _current_company, CMD_ERROR, Goal::company, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), INVALID_COMPANY, InvalidateWindowClassesData(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, Goal::progress, and WC_GOALS_LIST.
CommandCost CmdSetGoalText | ( | DoCommandFlag | flags, |
GoalID | goal, | ||
const std::string & | text | ||
) |
Update goal text of a goal.
flags | type of operation |
goal | GoalID to update. |
text | Text of the goal. |
Definition at line 165 of file goal.cpp.
References _current_company, CMD_ERROR, Goal::company, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), INVALID_COMPANY, InvalidateWindowClassesData(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, Goal::text, and WC_GOALS_LIST.