Functions | Variables

# goal.cpp File Reference

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 "string_func.h"`
`#include "gui.h"`
`#include "network/network.h"`

Go to the source code of this file.

## Functions
CommandCost | CmdCreateGoal (TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
| Create a new goal.
CommandCost | CmdRemoveGoal (TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
| Remove a goal.
CommandCost | CmdGoalQuestion (TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
| Ask a goal related question.
CommandCost | CmdGoalQuestionAnswer (TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text)
| Reply to a goal question.
## Variables
GoalID | _new_goal_id
GoalPool | _goal_pool ("Goal")

## Detailed Description

Handling of goals.

Definition in file goal.cpp.

## Function Documentation

CommandCost CmdCreateGoal | ( | TileIndex | tile,
|  | DoCommandFlag | flags,
|  | uint32 | p1,
|  | uint32 | p2,
|  | const char * | text |
| ) |  |  |

Create a new goal.

Parameters:

  | tile | unused.
  | flags | type of operation
  | p1 | various bitstuffed elements p1 = (bit 0 - 7) - GoalType of destination. p1 = (bit 8 - 15) - Company for which this goal is.
  | p2 | GoalTypeID of destination.
  | text | Text of the goal.

Returns:
  the cost of this operation or an error

Definition at line 43 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, DC_EXEC, Goal::dst, GB(), GT_COMPANY, GT_INDUSTRY, GT_NONE, GT_TILE, GT_TOWN, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem< Tpool >::index, INVALID_COMPANY, InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_town_pool >::IsValidID(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_industry_pool >::IsValidID(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), IsValidTile(), OWNER_DEITY, StrEmpty(), Goal::text, Goal::type, and WC_GOALS_LIST.

CommandCost CmdGoalQuestion | ( | TileIndex | tile,
|  | DoCommandFlag | flags,
|  | uint32 | p1,
|  | uint32 | p2,
|  | const char * | text |
| ) |  |  |

Ask a goal related question.

Parameters:

  | tile | unused.
  | flags | type of operation
  | p1 | various bitstuffed elements p1 = (bit 0 - 15) - Unique ID to use for this question. p1 = (bit 16 - 23) - Company for which this question is.
  | p2 | Buttons of the question.
  | text | Text of the question.

Returns:
  the cost of this operation or an error

Definition at line 129 of file goal.cpp.

References _current_company, _local_company, CMD_ERROR, CountBits(), DC_EXEC, GB(), GOAL_QUESTION_BUTTON_COUNT, GOAL_QUESTION_TYPE_COUNT, INVALID_COMPANY, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), OWNER_DEITY, and StrEmpty().

CommandCost CmdGoalQuestionAnswer | ( | TileIndex | tile,
|  | DoCommandFlag | flags,
|  | uint32 | p1,
|  | uint32 | p2,
|  | const char * | text |
| ) |  |  |

Reply to a goal question.

Parameters:

  | tile | unused.
  | flags | type of operation
  | p1 | Unique ID to use for this question.
  | p2 | Button the company pressed
  | text | Text of the question.

Returns:
  the cost of this operation or an error

Definition at line 158 of file goal.cpp.

References _current_company, _local_company, _network_server, _networking, CMD_ERROR, DC_EXEC, DeleteWindowById(), GOAL_QUESTION_BUTTON_COUNT, Game::NewEvent(), OWNER_DEITY, and WC_GOAL_QUESTION.

CommandCost CmdRemoveGoal | ( | TileIndex | tile,
|  | DoCommandFlag | flags,
|  | uint32 | p1,
|  | uint32 | p2,
|  | const char * | text |
| ) |  |  |

Remove a goal.

Parameters:

  | tile | unused.
  | flags | type of operation
  | p1 | GoalID to remove.
  | p2 | unused.
  | text | unused.

Returns:
  the cost of this operation or an error

Definition at line 102 of file goal.cpp.

References _current_company, CMD_ERROR, DC_EXEC, Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::Get(), InvalidateWindowData(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_goal_pool >::IsValidID(), OWNER_DEITY, and WC_GOALS_LIST.