Freeciv-3.1: /fast/freeciv/nightly/S3_1/common/actions.h File Reference

Freeciv-3.1

Loading...
Searching...
No Matches
Data Structures | Macros | Functions | Variables
actions.h File Reference
`#include "fc_types.h"`
`#include "map_types.h"`
`#include "metaknowledge.h"`
`#include "requirements.h"`
`#include "specenum_gen.h"`
`#include "speclist.h"`

Go to the source code of this file.

## Data Structures

struct | action
struct | action_enabler
struct | action_auto_perf

## Macros

#define | SPECENUM_NAME action_actor_kind
#define | SPECENUM_VALUE0 AAK_UNIT
#define | SPECENUM_VALUE0NAME N_("a unit")
#define | SPECENUM_COUNT AAK_COUNT
#define | SPECENUM_NAME action_target_kind
#define | SPECENUM_VALUE0 ATK_CITY
#define | SPECENUM_VALUE0NAME "City"
#define | SPECENUM_VALUE1 ATK_UNIT
#define | SPECENUM_VALUE1NAME "Unit"
#define | SPECENUM_VALUE2 ATK_UNITS
#define | SPECENUM_VALUE2NAME "Stack"
#define | SPECENUM_VALUE3 ATK_TILE
#define | SPECENUM_VALUE3NAME "Tile"
#define | SPECENUM_VALUE4 ATK_EXTRAS
#define | SPECENUM_VALUE4NAME "Extras"
#define | SPECENUM_VALUE5 ATK_SELF
#define | SPECENUM_VALUE5NAME "Self"
#define | SPECENUM_COUNT ATK_COUNT
#define | SPECENUM_NAME action_sub_target_kind
#define | SPECENUM_VALUE0 ASTK_NONE
#define | SPECENUM_VALUE0NAME N_("nothing")
#define | SPECENUM_VALUE1 ASTK_BUILDING
#define | SPECENUM_VALUE1NAME N_("buildings in")
#define | SPECENUM_VALUE2 ASTK_TECH
#define | SPECENUM_VALUE2NAME N_("techs from")
#define | SPECENUM_VALUE3 ASTK_EXTRA
#define | SPECENUM_VALUE3NAME N_("extras on")
#define | SPECENUM_VALUE4 ASTK_EXTRA_NOT_THERE
#define | SPECENUM_VALUE4NAME N_("create extras on")
#define | SPECENUM_COUNT ASTK_COUNT
#define | SPECENUM_NAME gen_action
#define | SPECENUM_VALUE0 ACTION_ESTABLISH_EMBASSY
#define | SPECENUM_VALUE0NAME "Establish Embassy"
#define | SPECENUM_VALUE1 ACTION_ESTABLISH_EMBASSY_STAY
#define | SPECENUM_VALUE1NAME "Establish Embassy Stay"
#define | SPECENUM_VALUE2 ACTION_SPY_INVESTIGATE_CITY
#define | SPECENUM_VALUE2NAME "Investigate City"
#define | SPECENUM_VALUE3 ACTION_INV_CITY_SPEND
#define | SPECENUM_VALUE3NAME "Investigate City Spend Unit"
#define | SPECENUM_VALUE4 ACTION_SPY_POISON
#define | SPECENUM_VALUE4NAME "Poison City"
#define | SPECENUM_VALUE5 ACTION_SPY_POISON_ESC
#define | SPECENUM_VALUE5NAME "Poison City Escape"
#define | SPECENUM_VALUE6 ACTION_SPY_STEAL_GOLD
#define | SPECENUM_VALUE6NAME "Steal Gold"
#define | SPECENUM_VALUE7 ACTION_SPY_STEAL_GOLD_ESC
#define | SPECENUM_VALUE7NAME "Steal Gold Escape"
#define | SPECENUM_VALUE8 ACTION_SPY_SABOTAGE_CITY
#define | SPECENUM_VALUE8NAME "Sabotage City"
#define | SPECENUM_VALUE9 ACTION_SPY_SABOTAGE_CITY_ESC
#define | SPECENUM_VALUE9NAME "Sabotage City Escape"
#define | SPECENUM_VALUE10 ACTION_SPY_TARGETED_SABOTAGE_CITY
#define | SPECENUM_VALUE10NAME "Targeted Sabotage City"
#define | SPECENUM_VALUE11 ACTION_SPY_TARGETED_SABOTAGE_CITY_ESC
#define | SPECENUM_VALUE11NAME "Targeted Sabotage City Escape"
#define | SPECENUM_VALUE12 ACTION_SPY_SABOTAGE_CITY_PRODUCTION
#define | SPECENUM_VALUE12NAME "Sabotage City Production"
#define | SPECENUM_VALUE13 ACTION_SPY_SABOTAGE_CITY_PRODUCTION_ESC
#define | SPECENUM_VALUE13NAME "Sabotage City Production Escape"
#define | SPECENUM_VALUE14 ACTION_SPY_STEAL_TECH
#define | SPECENUM_VALUE14NAME "Steal Tech"
#define | SPECENUM_VALUE15 ACTION_SPY_STEAL_TECH_ESC
#define | SPECENUM_VALUE15NAME "Steal Tech Escape Expected"
#define | SPECENUM_VALUE16 ACTION_SPY_TARGETED_STEAL_TECH
#define | SPECENUM_VALUE16NAME "Targeted Steal Tech"
#define | SPECENUM_VALUE17 ACTION_SPY_TARGETED_STEAL_TECH_ESC
#define | SPECENUM_VALUE17NAME "Targeted Steal Tech Escape Expected"
#define | SPECENUM_VALUE18 ACTION_SPY_INCITE_CITY
#define | SPECENUM_VALUE18NAME "Incite City"
#define | SPECENUM_VALUE19 ACTION_SPY_INCITE_CITY_ESC
#define | SPECENUM_VALUE19NAME "Incite City Escape"
#define | SPECENUM_VALUE20 ACTION_TRADE_ROUTE
#define | SPECENUM_VALUE20NAME "Establish Trade Route"
#define | SPECENUM_VALUE21 ACTION_MARKETPLACE
#define | SPECENUM_VALUE21NAME "Enter Marketplace"
#define | SPECENUM_VALUE22 ACTION_HELP_WONDER
#define | SPECENUM_VALUE22NAME "Help Wonder"
#define | SPECENUM_VALUE23 ACTION_SPY_BRIBE_UNIT
#define | SPECENUM_VALUE23NAME "Bribe Unit"
#define | SPECENUM_VALUE24 ACTION_CAPTURE_UNITS
#define | SPECENUM_VALUE24NAME "Capture Units"
#define | SPECENUM_VALUE25 ACTION_SPY_SABOTAGE_UNIT
#define | SPECENUM_VALUE25NAME "Sabotage Unit"
#define | SPECENUM_VALUE26 ACTION_SPY_SABOTAGE_UNIT_ESC
#define | SPECENUM_VALUE26NAME "Sabotage Unit Escape"
#define | SPECENUM_VALUE27 ACTION_FOUND_CITY
#define | SPECENUM_VALUE27NAME "Found City"
#define | SPECENUM_VALUE28 ACTION_JOIN_CITY
#define | SPECENUM_VALUE28NAME "Join City"
#define | SPECENUM_VALUE29 ACTION_STEAL_MAPS
#define | SPECENUM_VALUE29NAME "Steal Maps"
#define | SPECENUM_VALUE30 ACTION_STEAL_MAPS_ESC
#define | SPECENUM_VALUE30NAME "Steal Maps Escape"
#define | SPECENUM_VALUE31 ACTION_SPY_NUKE
#define | SPECENUM_VALUE31NAME "Suitcase Nuke"
#define | SPECENUM_VALUE32 ACTION_SPY_NUKE_ESC
#define | SPECENUM_VALUE32NAME "Suitcase Nuke Escape"
#define | SPECENUM_VALUE33 ACTION_NUKE
#define | SPECENUM_VALUE33NAME "Explode Nuclear"
#define | SPECENUM_VALUE34 ACTION_NUKE_CITY
#define | SPECENUM_VALUE34NAME "Nuke City"
#define | SPECENUM_VALUE35 ACTION_NUKE_UNITS
#define | SPECENUM_VALUE35NAME "Nuke Units"
#define | SPECENUM_VALUE36 ACTION_DESTROY_CITY
#define | SPECENUM_VALUE36NAME "Destroy City"
#define | SPECENUM_VALUE37 ACTION_EXPEL_UNIT
#define | SPECENUM_VALUE37NAME "Expel Unit"
#define | SPECENUM_VALUE38 ACTION_DISBAND_UNIT_RECOVER
#define | SPECENUM_VALUE38NAME "Disband Unit Recover"
#define | SPECENUM_VALUE39 ACTION_DISBAND_UNIT
#define | SPECENUM_VALUE39NAME "Disband Unit"
#define | SPECENUM_VALUE40 ACTION_HOME_CITY
#define | SPECENUM_VALUE40NAME "Home City"
#define | SPECENUM_VALUE41 ACTION_HOMELESS
#define | SPECENUM_VALUE41NAME "Unit Make Homeless"
#define | SPECENUM_VALUE42 ACTION_UPGRADE_UNIT
#define | SPECENUM_VALUE42NAME "Upgrade Unit"
#define | SPECENUM_VALUE43 ACTION_CONVERT
#define | SPECENUM_VALUE43NAME "Convert Unit"
#define | SPECENUM_VALUE44 ACTION_AIRLIFT
#define | SPECENUM_VALUE44NAME "Airlift Unit"
#define | SPECENUM_VALUE45 ACTION_ATTACK
#define | SPECENUM_VALUE45NAME "Attack"
#define | SPECENUM_VALUE46 ACTION_SUICIDE_ATTACK
#define | SPECENUM_VALUE46NAME "Suicide Attack"
#define | SPECENUM_VALUE47 ACTION_STRIKE_BUILDING
#define | SPECENUM_VALUE47NAME "Surgical Strike Building"
#define | SPECENUM_VALUE48 ACTION_STRIKE_PRODUCTION
#define | SPECENUM_VALUE48NAME "Surgical Strike Production"
#define | SPECENUM_VALUE49 ACTION_CONQUER_CITY
#define | SPECENUM_VALUE49NAME "Conquer City"
#define | SPECENUM_VALUE50 ACTION_CONQUER_CITY2
#define | SPECENUM_VALUE50NAME "Conquer City 2"
#define | SPECENUM_VALUE51 ACTION_CONQUER_CITY3
#define | SPECENUM_VALUE51NAME "Conquer City 3"
#define | SPECENUM_VALUE52 ACTION_CONQUER_CITY4
#define | SPECENUM_VALUE52NAME "Conquer City 4"
#define | SPECENUM_VALUE53 ACTION_BOMBARD
#define | SPECENUM_VALUE53NAME "Bombard"
#define | SPECENUM_VALUE54 ACTION_BOMBARD2
#define | SPECENUM_VALUE54NAME "Bombard 2"
#define | SPECENUM_VALUE55 ACTION_BOMBARD3
#define | SPECENUM_VALUE55NAME "Bombard 3"
#define | SPECENUM_VALUE56 ACTION_FORTIFY
#define | SPECENUM_VALUE56NAME "Fortify"
#define | SPECENUM_VALUE57 ACTION_CULTIVATE
#define | SPECENUM_VALUE57NAME "Cultivate"
#define | SPECENUM_VALUE58 ACTION_PLANT
#define | SPECENUM_VALUE58NAME "Plant"
#define | SPECENUM_VALUE59 ACTION_TRANSFORM_TERRAIN
#define | SPECENUM_VALUE59NAME "Transform Terrain"
#define | SPECENUM_VALUE60 ACTION_ROAD
#define | SPECENUM_VALUE60NAME "Build Road"
#define | SPECENUM_VALUE61 ACTION_IRRIGATE
#define | SPECENUM_VALUE61NAME "Build Irrigation"
#define | SPECENUM_VALUE62 ACTION_MINE
#define | SPECENUM_VALUE62NAME "Build Mine"
#define | SPECENUM_VALUE63 ACTION_BASE
#define | SPECENUM_VALUE63NAME "Build Base"
#define | SPECENUM_VALUE64 ACTION_PILLAGE
#define | SPECENUM_VALUE64NAME "Pillage"
#define | SPECENUM_VALUE65 ACTION_CLEAN_POLLUTION
#define | SPECENUM_VALUE65NAME "Clean Pollution"
#define | SPECENUM_VALUE66 ACTION_CLEAN_FALLOUT
#define | SPECENUM_VALUE66NAME "Clean Fallout"
#define | SPECENUM_VALUE67 ACTION_TRANSPORT_BOARD
#define | SPECENUM_VALUE67NAME "Transport Board"
#define | SPECENUM_VALUE68 ACTION_TRANSPORT_ALIGHT
#define | SPECENUM_VALUE68NAME "Transport Alight"
#define | SPECENUM_VALUE69 ACTION_TRANSPORT_EMBARK
#define | SPECENUM_VALUE69NAME "Transport Embark"
#define | SPECENUM_VALUE70 ACTION_TRANSPORT_EMBARK2
#define | SPECENUM_VALUE70NAME "Transport Embark 2"
#define | SPECENUM_VALUE71 ACTION_TRANSPORT_EMBARK3
#define | SPECENUM_VALUE71NAME "Transport Embark 3"
#define | SPECENUM_VALUE72 ACTION_TRANSPORT_DISEMBARK1
#define | SPECENUM_VALUE72NAME "Transport Disembark"
#define | SPECENUM_VALUE73 ACTION_TRANSPORT_DISEMBARK2
#define | SPECENUM_VALUE73NAME "Transport Disembark 2"
#define | SPECENUM_VALUE74 ACTION_TRANSPORT_DISEMBARK3
#define | SPECENUM_VALUE74NAME "Transport Disembark 3"
#define | SPECENUM_VALUE75 ACTION_TRANSPORT_DISEMBARK4
#define | SPECENUM_VALUE75NAME "Transport Disembark 4"
#define | SPECENUM_VALUE76 ACTION_TRANSPORT_UNLOAD
#define | SPECENUM_VALUE76NAME "Transport Unload"
#define | SPECENUM_VALUE77 ACTION_SPY_SPREAD_PLAGUE
#define | SPECENUM_VALUE77NAME "Spread Plague"
#define | SPECENUM_VALUE78 ACTION_SPY_ATTACK
#define | SPECENUM_VALUE78NAME "Spy Attack"
#define | SPECENUM_VALUE79 ACTION_CONQUER_EXTRAS
#define | SPECENUM_VALUE79NAME "Conquer Extras"
#define | SPECENUM_VALUE80 ACTION_CONQUER_EXTRAS2
#define | SPECENUM_VALUE80NAME "Conquer Extras 2"
#define | SPECENUM_VALUE81 ACTION_CONQUER_EXTRAS3
#define | SPECENUM_VALUE81NAME "Conquer Extras 3"
#define | SPECENUM_VALUE82 ACTION_CONQUER_EXTRAS4
#define | SPECENUM_VALUE82NAME "Conquer Extras 4"
#define | SPECENUM_VALUE83 ACTION_HUT_ENTER
#define | SPECENUM_VALUE83NAME "Enter Hut"
#define | SPECENUM_VALUE84 ACTION_HUT_ENTER2
#define | SPECENUM_VALUE84NAME "Enter Hut 2"
#define | SPECENUM_VALUE85 ACTION_HUT_ENTER3
#define | SPECENUM_VALUE85NAME "Enter Hut 3"
#define | SPECENUM_VALUE86 ACTION_HUT_ENTER4
#define | SPECENUM_VALUE86NAME "Enter Hut 4"
#define | SPECENUM_VALUE87 ACTION_HUT_FRIGHTEN
#define | SPECENUM_VALUE87NAME "Frighten Hut"
#define | SPECENUM_VALUE88 ACTION_HUT_FRIGHTEN2
#define | SPECENUM_VALUE88NAME "Frighten Hut 2"
#define | SPECENUM_VALUE89 ACTION_HUT_FRIGHTEN3
#define | SPECENUM_VALUE89NAME "Frighten Hut 3"
#define | SPECENUM_VALUE90 ACTION_HUT_FRIGHTEN4
#define | SPECENUM_VALUE90NAME "Frighten Hut 4"
#define | SPECENUM_VALUE91 ACTION_HEAL_UNIT
#define | SPECENUM_VALUE91NAME "Heal Unit"
#define | SPECENUM_VALUE92 ACTION_HEAL_UNIT2
#define | SPECENUM_VALUE92NAME "Heal Unit 2"
#define | SPECENUM_VALUE93 ACTION_PARADROP
#define | SPECENUM_VALUE93NAME "Paradrop Unit"
#define | SPECENUM_VALUE94 ACTION_PARADROP_CONQUER
#define | SPECENUM_VALUE94NAME "Paradrop Unit Conquer"
#define | SPECENUM_VALUE95 ACTION_PARADROP_FRIGHTEN
#define | SPECENUM_VALUE95NAME "Paradrop Unit Frighten"
#define | SPECENUM_VALUE96 ACTION_PARADROP_FRIGHTEN_CONQUER
#define | SPECENUM_VALUE96NAME "Paradrop Unit Frighten Conquer"
#define | SPECENUM_VALUE97 ACTION_PARADROP_ENTER
#define | SPECENUM_VALUE97NAME "Paradrop Unit Enter"
#define | SPECENUM_VALUE98 ACTION_PARADROP_ENTER_CONQUER
#define | SPECENUM_VALUE98NAME "Paradrop Unit Enter Conquer"
#define | SPECENUM_VALUE99 ACTION_UNIT_MOVE
#define | SPECENUM_VALUE99NAME "Unit Move"
#define | SPECENUM_VALUE100 ACTION_UNIT_MOVE2
#define | SPECENUM_VALUE100NAME "Unit Move 2"
#define | SPECENUM_VALUE101 ACTION_UNIT_MOVE3
#define | SPECENUM_VALUE101NAME "Unit Move 3"
#define | SPECENUM_VALUE102 ACTION_USER_ACTION1
#define | SPECENUM_VALUE102NAME "User Action 1"
#define | SPECENUM_VALUE103 ACTION_USER_ACTION2
#define | SPECENUM_VALUE103NAME "User Action 2"
#define | SPECENUM_VALUE104 ACTION_USER_ACTION3
#define | SPECENUM_VALUE104NAME "User Action 3"
#define | SPECENUM_VALUE105 ACTION_USER_ACTION4
#define | SPECENUM_VALUE105NAME "User Action 4"
#define | SPECENUM_BITVECTOR bv_actions
#define | SPECENUM_COUNT ACTION_COUNT
#define | SPECENUM_NAME_UPDATER
#define | ACTION_ANY ACTION_COUNT
#define | ACTION_NONE ACTION_COUNT
#define | MAX_NUM_ACTIONS ACTION_COUNT
#define | NUM_ACTIONS MAX_NUM_ACTIONS
#define | SPECENUM_NAME action_battle_kind
#define | SPECENUM_VALUE0 ABK_NONE
#define | SPECENUM_VALUE0NAME N_("no battle")
#define | SPECENUM_VALUE1 ABK_STANDARD
#define | SPECENUM_VALUE1NAME N_("battle")
#define | SPECENUM_VALUE2 ABK_DIPLOMATIC
#define | SPECENUM_VALUE2NAME N_("diplomatic battle")
#define | SPECENUM_COUNT ABK_COUNT
#define | SPECENUM_NAME moves_actor_kind
#define | SPECENUM_VALUE0 MAK_STAYS
#define | SPECENUM_VALUE0NAME N_("stays")
#define | SPECENUM_VALUE1 MAK_REGULAR
#define | SPECENUM_VALUE1NAME N_("regular")
#define | SPECENUM_VALUE2 MAK_TELEPORT
#define | SPECENUM_VALUE2NAME N_("teleport")
#define | SPECENUM_VALUE3 MAK_ESCAPE
#define | SPECENUM_VALUE3NAME N_("escape")
#define | SPECENUM_VALUE4 MAK_FORCED
#define | SPECENUM_VALUE4NAME N_("forced")
#define | SPECENUM_VALUE5 MAK_UNREPRESENTABLE
#define | SPECENUM_VALUE5NAME N_("unrepresentable")
#define | SPECENUM_NAME action_requester
#define | SPECENUM_VALUE0 ACT_REQ_PLAYER
#define | SPECENUM_VALUE0NAME N_("the player")
#define | SPECENUM_VALUE1 ACT_REQ_RULES
#define | SPECENUM_VALUE1NAME N_("the game rules")
#define | SPECENUM_VALUE2 ACT_REQ_SS_AGENT
#define | SPECENUM_VALUE2NAME N_("a server agent")
#define | SPECENUM_COUNT ACT_REQ_COUNT
#define | ACTION_DISTANCE_LAST_NON_SIGNAL 128016
#define | ACTION_DISTANCE_UNLIMITED (ACTION_DISTANCE_LAST_NON_SIGNAL + 1)
#define | ACTION_DISTANCE_MAX ACTION_DISTANCE_UNLIMITED
#define | SPECENUM_NAME act_tgt_compl
#define | SPECENUM_VALUE0 ACT_TGT_COMPL_SIMPLE
#define | SPECENUM_VALUE0NAME N_("simple")
#define | SPECENUM_VALUE1 ACT_TGT_COMPL_FLEXIBLE
#define | SPECENUM_VALUE1NAME N_("flexible")
#define | SPECENUM_VALUE2 ACT_TGT_COMPL_MANDATORY
#define | SPECENUM_VALUE2NAME N_("mandatory")
#define | action_has_result(_act_, _res_) ((_act_)->result == (_res_))
#define | enabler_get_action(_enabler_) action_by_number(_enabler_->action)
#define | SPECLIST_TAG action_enabler
#define | SPECLIST_TYPE struct action_enabler
#define | action_enabler_list_iterate(action_enabler_list, aenabler) TYPED_LIST_ITERATE(struct action_enabler, action_enabler_list, aenabler)
#define | action_enabler_list_iterate_end LIST_ITERATE_END
#define | action_enabler_list_re_iterate(action_enabler_list, aenabler)
#define | action_enabler_list_re_iterate_end
#define | action_iterate(_act_)
#define | action_iterate_end
#define | SPECLIST_TAG action
#define | SPECLIST_TYPE struct action
#define | action_list_iterate(_list_, _act_) TYPED_LIST_ITERATE(struct action, _list_, _act_)
#define | action_list_iterate_end LIST_ITERATE_END
#define | action_by_result_iterate(_paction_, _result_)
#define | action_by_result_iterate_end
#define | action_by_activity_iterate(_paction_, _activity_)
#define | action_by_activity_iterate_end
#define | action_array_iterate(_act_list_, _act_id_)
#define | action_array_iterate_end
#define | action_enablers_iterate(_enabler_)
#define | action_enablers_iterate_end
#define | SPECENUM_NAME action_auto_perf_cause
#define | SPECENUM_VALUE0 AAPC_UNIT_UPKEEP
#define | SPECENUM_VALUE0NAME "Unit Upkeep"
#define | SPECENUM_VALUE1 AAPC_UNIT_MOVED_ADJ
#define | SPECENUM_VALUE1NAME "Moved Adjacent"
#define | SPECENUM_VALUE2 AAPC_POST_ACTION
#define | SPECENUM_VALUE2NAME "After Successful Action"
#define | SPECENUM_VALUE3 AAPC_CITY_GONE
#define | SPECENUM_VALUE3NAME "City Gone"
#define | SPECENUM_VALUE4 AAPC_UNIT_STACK_DEATH
#define | SPECENUM_VALUE4NAME "Unit Stack Dead"
#define | SPECENUM_COUNT AAPC_COUNT
#define | action_auto_perf_iterate(_act_perf_)
#define | action_auto_perf_iterate_end
#define | action_auto_perf_by_cause_iterate(_cause_, _act_perf_)
#define | action_auto_perf_by_cause_iterate_end } action_auto_perf_iterate_end
#define | action_auto_perf_actions_iterate(_autoperf_, _act_id_) action_array_iterate(_autoperf_->alternatives, _act_id_)
#define | action_auto_perf_actions_iterate_end action_array_iterate_end
#define | ACTION_AUTO_UPKEEP_FOOD 0
#define | ACTION_AUTO_UPKEEP_GOLD 1
#define | ACTION_AUTO_UPKEEP_SHIELD 2
#define | ACTION_AUTO_MOVED_ADJ 3
#define | ACTION_AUTO_POST_BRIBE 4
#define | ACTION_AUTO_POST_ATTACK 5
#define | ACTION_AUTO_ESCAPE_CITY 6
#define | ACTION_AUTO_ESCAPE_STACK 7
#define | action_id_get_actor_kind(act_id) action_get_actor_kind(action_by_number(act_id))
#define | action_id_get_target_kind(act_id) action_get_target_kind(action_by_number(act_id))
#define | action_id_get_sub_target_kind(act_id) action_get_sub_target_kind(action_by_number(act_id))
#define | action_has_result_safe(paction, result) (paction && action_has_result(paction, result))
#define | action_id_has_result_safe(act_id, result)
#define | action_id_has_complex_target(act_id) action_has_complex_target(action_by_number(act_id))
#define | action_id_requires_details(act_id) action_requires_details(action_by_number(act_id))
#define | action_id_get_act_time(act_id, actor_unit, tgt_tile, tgt_extra)
#define | action_id_distance_accepted(act_id, distance) action_distance_accepted(action_by_number(act_id), distance)
#define | action_id_distance_inside_max(act_id, distance) action_distance_inside_max(action_by_number(act_id), distance)
#define | action_id_get_role(act_id) action_get_role(action_by_number(act_id))
#define | action_id_get_activity(act_id) actres_get_activity(action_by_number(act_id)->result)
#define | ACTPROB_IMPOSSIBLE action_prob_new_impossible()
#define | ACTPROB_CERTAIN action_prob_new_certain()
#define | ACTPROB_NA action_prob_new_not_relevant()
#define | ACTPROB_NOT_IMPLEMENTED action_prob_new_not_impl()
#define | ACTPROB_NOT_KNOWN action_prob_new_unknown()
#define | ACTION_ODDS_PCT_DICE_ROLL_NA 110
#define | action_id_univs_not_blocking(act_id, act_uni, tgt_uni) action_univs_not_blocking(action_by_number(act_id), act_uni, tgt_uni)

## Functions

const char * | gen_action_name_update_cb (const char *old_name)
struct action_list * | action_list_by_result (enum action_result result)
struct action_list * | action_list_by_activity (enum unit_activity activity)
void | actions_init (void)
void | actions_rs_pre_san_gen (void)
void | actions_free (void)
bool | actions_are_ready (void)
bool | action_id_exists (const action_id act_id)
static struct action * | action_by_number (action_id act_id)
struct action * | action_by_rule_name (const char *name)
enum action_actor_kind | action_get_actor_kind (const struct action *paction)
enum action_target_kind | action_get_target_kind (const struct action *paction)
enum action_sub_target_kind | action_get_sub_target_kind (const struct action *paction)
enum action_battle_kind | action_get_battle_kind (const struct action *pact)
int | action_number (const struct action *action)
bool | action_has_complex_target (const struct action *paction)
bool | action_requires_details (const struct action *paction)
int | action_get_act_time (const struct action *paction, const struct unit *actor_unit, const struct tile *tgt_tile, const struct extra_type *tgt_extra)
bool | action_creates_extra (const struct action *paction, const struct extra_type *pextra)
bool | action_removes_extra (const struct action *paction, const struct extra_type *pextra)
bool | action_id_is_rare_pop_up (action_id act_id)
bool | action_distance_accepted (const struct action *action, const int distance)
bool | action_distance_inside_max (const struct action *action, const int distance)
bool | action_would_be_blocked_by (const struct action *blocked, const struct action *blocker)
int | action_get_role (const struct action *paction)
enum unit_activity | actres_get_activity (enum action_result result)
const char * | action_rule_name (const struct action *action)
const char * | action_id_rule_name (action_id act_id)
const char * | action_name_translation (const struct action *action)
const char * | action_id_name_translation (action_id act_id)
const char * | action_get_ui_name_mnemonic (action_id act_id, const char *mnemonic)
const char * | action_prepare_ui_name (action_id act_id, const char *mnemonic, const struct act_prob prob, const char *custom)
const char * | action_ui_name_ruleset_var_name (int act)
const char * | action_ui_name_default (int act)
const char * | action_min_range_ruleset_var_name (int act)
int | action_min_range_default (enum action_result result)
const char * | action_max_range_ruleset_var_name (int act)
int | action_max_range_default (enum action_result result)
const char * | action_target_kind_ruleset_var_name (int act)
enum action_target_kind | action_target_kind_default (enum action_result result)
bool | action_result_legal_target_kind (enum action_result result, enum action_target_kind tgt_kind)
const char * | action_target_kind_help (enum action_target_kind kind)
const char * | action_actor_consuming_always_ruleset_var_name (action_id act)
const char * | action_blocked_by_ruleset_var_name (const struct action *act)
const char * | action_post_success_forced_ruleset_var_name (const struct action *act)
bool | action_ever_possible (action_id action)
struct action_enabler_list * | action_enablers_for_action (action_id action)
struct action_enabler * | action_enabler_new (void)
void | action_enabler_free (struct action_enabler *enabler)
struct action_enabler * | action_enabler_copy (const struct action_enabler *original)
void | action_enabler_add (struct action_enabler *enabler)
bool | action_enabler_remove (struct action_enabler *enabler)
struct req_vec_problem * | action_enabler_suggest_repair_oblig (const struct action_enabler *enabler)
struct req_vec_problem * | action_enabler_suggest_repair (const struct action_enabler *enabler)
struct req_vec_problem * | action_enabler_suggest_improvement (const struct action_enabler *enabler)
req_vec_num_in_item | action_enabler_vector_number (const void *enabler, const struct requirement_vector *vec)
struct requirement_vector * | action_enabler_vector_by_number (const void *enabler, req_vec_num_in_item vec)
const char * | action_enabler_vector_by_number_name (req_vec_num_in_item vec)
bool | action_enabler_utype_possible_actor (const struct action_enabler *ae, const struct unit_type *act_utype)
bool | action_enabler_possible_actor (const struct action_enabler *ae)
struct action * | action_is_blocked_by (const struct action *act, const struct unit *actor_unit, const struct tile *target_tile, const struct city *target_city, const struct unit *target_unit)
bool | is_action_enabled_unit_on_city (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit, const struct city *target_city)
bool | is_action_enabled_unit_on_unit (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit, const struct unit *target_unit)
bool | is_action_enabled_unit_on_units (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit, const struct tile *target_tile)
bool | is_action_enabled_unit_on_tile (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit, const struct tile *target_tile, const struct extra_type *target_extra)
bool | is_action_enabled_unit_on_extras (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit, const struct tile *target, const struct extra_type *tgt_extra)
bool | is_action_enabled_unit_on_self (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit)
struct act_prob | action_prob_vs_city (const struct civ_map *nmap, const struct unit *actor, const action_id act_id, const struct city *victim)
struct act_prob | action_prob_vs_unit (const struct civ_map *nmap, const struct unit *actor, const action_id act_id, const struct unit *victim)
struct act_prob | action_prob_vs_units (const struct unit *actor, const action_id act_id, const struct tile *victims)
struct act_prob | action_prob_vs_tile (const struct unit *actor, const action_id act_id, const struct tile *victims, const struct extra_type *target_extra)
struct act_prob | action_prob_vs_extras (const struct unit *actor, const action_id act_id, const struct tile *target, const struct extra_type *tgt_extra)
struct act_prob | action_prob_self (const struct unit *actor, const action_id act_id)
struct act_prob | action_prob_unit_vs_tgt (const struct action *paction, const struct unit *act_unit, const struct city *tgt_city, const struct unit *tgt_unit, const struct tile *tgt_tile, const struct extra_type *sub_tgt)
struct act_prob | action_speculate_unit_on_city (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat, const struct city *target)
struct act_prob | action_speculate_unit_on_unit (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat, const struct unit *target)
struct act_prob | action_speculate_unit_on_units (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat, const struct tile *target)
struct act_prob | action_speculate_unit_on_tile (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat, const struct tile *target_tile, const struct extra_type *target_extra)
struct act_prob | action_speculate_unit_on_extras (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat, const struct tile *target_tile, const struct extra_type *target_extra)
struct act_prob | action_speculate_unit_on_self (action_id act_id, const struct unit *actor, const struct city *actor_home, const struct tile *actor_tile, bool omniscient_cheat)
bool | action_prob_possible (const struct act_prob probability)
bool | action_prob_certain (const struct act_prob probability)
bool | are_action_probabilitys_equal (const struct act_prob *ap1, const struct act_prob *ap2)
int | action_prob_cmp_pessimist (const struct act_prob ap1, const struct act_prob ap2)
double | action_prob_to_0_to_1_pessimist (const struct act_prob ap)
struct act_prob | action_prob_and (const struct act_prob *ap1, const struct act_prob *ap2)
struct act_prob | action_prob_fall_back (const struct act_prob *ap1, const struct act_prob *ap2)
const char * | action_prob_explain (const struct act_prob prob)
struct act_prob | action_prob_new_impossible (void)
struct act_prob | action_prob_new_not_relevant (void)
struct act_prob | action_prob_new_not_impl (void)
struct act_prob | action_prob_new_unknown (void)
struct act_prob | action_prob_new_certain (void)
int | action_dice_roll_initial_odds (const struct action *paction)
int | action_dice_roll_odds (const struct player *act_player, const struct unit *act_unit, const struct city *tgt_city, const struct player *tgt_player, const struct action *paction)
bool | action_actor_utype_hard_reqs_ok (const struct action *result, const struct unit_type *actor_unittype)
bool | action_univs_not_blocking (const struct action *paction, struct universal *actor_uni, struct universal *target_uni)
bool | action_immune_government (struct government *gov, action_id act)
bool | is_action_possible_on_city (action_id act_id, const struct player *actor_player, const struct city *target_city)
bool | action_maybe_possible_actor_unit (const struct civ_map *nmap, const action_id wanted_action, const struct unit *actor_unit)
bool | action_mp_full_makes_legal (const struct unit *actor, const action_id act_id)
bool | action_is_in_use (struct action *paction)
void | action_list_end (action_id *act_list, int size)
void | action_list_add_all_by_result (action_id *act_list, int *position, enum action_result result)
const struct action_auto_perf * | action_auto_perf_by_number (const int num)
struct action_auto_perf * | action_auto_perf_slot_number (const int num)

## Variables

struct action ** | _actions

## Macro Definition Documentation

## ◆ ACTION_ANY

#define ACTION_ANY ACTION_COUNT

Definition at line 290 of file actions.h.

## ◆ action_array_iterate

#define action_array_iterate | ( |  | _act_list_,
|  |  | _act_id_
| ) |  |

Value:
{ \
int _pos_; \
\
for (_pos_ = 0; _pos_ < NUM_ACTIONS; _pos_++) { \
const action_id _act_id_ = _act_list_[_pos_]; \
\
if (_act_id_ == ACTION_NONE) { \
/* No more actions in this list. */ \
break; \
}
NUM_ACTIONS
#define NUM_ACTIONS
Definition actions.h:297
ACTION_NONE
#define ACTION_NONE
Definition actions.h:293
action_id
int action_id
Definition fc_types.h:359

Definition at line 504 of file actions.h.

## ◆ action_array_iterate_end

#define action_array_iterate_end

Value:
} \
}

Definition at line 516 of file actions.h.

## ◆ ACTION_AUTO_ESCAPE_CITY

#define ACTION_AUTO_ESCAPE_CITY 6

Definition at line 620 of file actions.h.

## ◆ ACTION_AUTO_ESCAPE_STACK

#define ACTION_AUTO_ESCAPE_STACK 7

Definition at line 621 of file actions.h.

## ◆ ACTION_AUTO_MOVED_ADJ

#define ACTION_AUTO_MOVED_ADJ 3

Definition at line 617 of file actions.h.

## ◆ action_auto_perf_actions_iterate

#define action_auto_perf_actions_iterate | ( |  | _autoperf_,
|  |  | _act_id_
| ) |  | action_array_iterate(_autoperf_->alternatives, _act_id_)

Definition at line 606 of file actions.h.

## ◆ action_auto_perf_actions_iterate_end

#define action_auto_perf_actions_iterate_end action_array_iterate_end

Definition at line 609 of file actions.h.

## ◆ action_auto_perf_by_cause_iterate

#define action_auto_perf_by_cause_iterate | ( |  | _cause_,
|  |  | _act_perf_
| ) |  |

Value:
action_auto_perf_iterate(_act_perf_) { \
if (_act_perf_->cause != _cause_) { \
continue; \
}
action_auto_perf_iterate
#define action_auto_perf_iterate(_act_perf_)
Definition actions.h:581

Definition at line 597 of file actions.h.

## ◆ action_auto_perf_by_cause_iterate_end

#define action_auto_perf_by_cause_iterate_end } action_auto_perf_iterate_end

Definition at line 603 of file actions.h.

## ◆ action_auto_perf_iterate

#define action_auto_perf_iterate | ( |  | _act_perf_ | ) |

Value:
{ \
int _ap_num_; \
\
for (_ap_num_ = 0; \
_ap_num_ < MAX_NUM_ACTION_AUTO_PERFORMERS \
&& (action_auto_perf_by_number(_ap_num_)->cause \
!= AAPC_COUNT); \
_ap_num_++) { \
const struct action_auto_perf *_act_perf_ \
= action_auto_perf_by_number(_ap_num_);
action_auto_perf_by_number
const struct action_auto_perf * action_auto_perf_by_number(const int num)
Definition actions.c:7369
MAX_NUM_ACTION_AUTO_PERFORMERS
#define MAX_NUM_ACTION_AUTO_PERFORMERS
Definition fc_types.h:54
action_auto_perf
Definition actions.h:568
action_auto_perf::cause
enum action_auto_perf_cause cause
Definition actions.h:570

Definition at line 581 of file actions.h.

## ◆ action_auto_perf_iterate_end

#define action_auto_perf_iterate_end

Value:
} \
}

Definition at line 593 of file actions.h.

## ◆ ACTION_AUTO_POST_ATTACK

#define ACTION_AUTO_POST_ATTACK 5

Definition at line 619 of file actions.h.

## ◆ ACTION_AUTO_POST_BRIBE

#define ACTION_AUTO_POST_BRIBE 4

Definition at line 618 of file actions.h.

## ◆ ACTION_AUTO_UPKEEP_FOOD

#define ACTION_AUTO_UPKEEP_FOOD 0

Definition at line 614 of file actions.h.

## ◆ ACTION_AUTO_UPKEEP_GOLD

#define ACTION_AUTO_UPKEEP_GOLD 1

Definition at line 615 of file actions.h.

## ◆ ACTION_AUTO_UPKEEP_SHIELD

#define ACTION_AUTO_UPKEEP_SHIELD 2

Definition at line 616 of file actions.h.

## ◆ action_by_activity_iterate

#define action_by_activity_iterate | ( |  | _paction_,
|  |  | _activity_
| ) |  |

Value:
{ \
action_list_iterate(action_list_by_activity(_activity_), _paction_) {
action_list_by_activity
struct action_list * action_list_by_activity(enum unit_activity activity)
Definition actions.c:9362

Definition at line 496 of file actions.h.

## ◆ action_by_activity_iterate_end

#define action_by_activity_iterate_end

Value:
} action_list_iterate_end; \
}
action_list_iterate_end
#define action_list_iterate_end
Definition actions.h:483

Definition at line 500 of file actions.h.

## ◆ action_by_result_iterate

#define action_by_result_iterate | ( |  | _paction_,
|  |  | _result_
| ) |  |

Value:
{ \
action_list_iterate(action_list_by_result(_result_), _paction_) { \
action_list_by_result
struct action_list * action_list_by_result(enum action_result result)
Definition actions.c:9352

Definition at line 488 of file actions.h.

## ◆ action_by_result_iterate_end

#define action_by_result_iterate_end

Value:
} action_list_iterate_end; \
}

Definition at line 492 of file actions.h.

## ◆ ACTION_DISTANCE_LAST_NON_SIGNAL

#define ACTION_DISTANCE_LAST_NON_SIGNAL 128016

Definition at line 350 of file actions.h.

## ◆ ACTION_DISTANCE_MAX

#define ACTION_DISTANCE_MAX ACTION_DISTANCE_UNLIMITED

Definition at line 354 of file actions.h.

## ◆ ACTION_DISTANCE_UNLIMITED

#define ACTION_DISTANCE_UNLIMITED (ACTION_DISTANCE_LAST_NON_SIGNAL + 1)

Definition at line 352 of file actions.h.

## ◆ action_enabler_list_iterate

#define action_enabler_list_iterate | ( |  | action_enabler_list,
|  |  | aenabler
| ) |  | TYPED_LIST_ITERATE(struct action_enabler, action_enabler_list, aenabler)

Definition at line 455 of file actions.h.

## ◆ action_enabler_list_iterate_end

#define action_enabler_list_iterate_end LIST_ITERATE_END

Definition at line 457 of file actions.h.

## ◆ action_enabler_list_re_iterate

#define action_enabler_list_re_iterate | ( |  | action_enabler_list,
|  |  | aenabler
| ) |  |

Value:
action_enabler_list_iterate(action_enabler_list, aenabler) { \
if (!aenabler->ruledit_disabled) {
action_enabler_list_iterate
#define action_enabler_list_iterate(action_enabler_list, aenabler)
Definition actions.h:455

Definition at line 459 of file actions.h.

## ◆ action_enabler_list_re_iterate_end

#define action_enabler_list_re_iterate_end

Value:
} \
} action_enabler_list_iterate_end
action_enabler_list_iterate_end
#define action_enabler_list_iterate_end
Definition actions.h:457

Definition at line 463 of file actions.h.

## ◆ action_enablers_iterate

#define action_enablers_iterate | ( |  | _enabler_ | ) |

Value:
{ \
action_iterate(_act_) { \
action_enabler_list_iterate( \
action_enablers_for_action(_act_), _enabler_) {
action_enablers_for_action
struct action_enabler_list * action_enablers_for_action(action_id action)
Definition actions.c:2475

Definition at line 520 of file actions.h.

## ◆ action_enablers_iterate_end

#define action_enablers_iterate_end

Value:
} action_enabler_list_iterate_end; \
} action_iterate_end; \
}
action_iterate_end
#define action_iterate_end
Definition actions.h:472

Definition at line 526 of file actions.h.

## ◆ action_has_result

#define action_has_result | ( |  | _act_,
|  |  | _res_
| ) |  | ((_act_)->result == (_res_))

Definition at line 448 of file actions.h.

## ◆ action_has_result_safe

#define action_has_result_safe | ( |  | paction,
|  |  | result
| ) |  | (paction && action_has_result(paction, result))

Definition at line 666 of file actions.h.

## ◆ action_id_distance_accepted

#define action_id_distance_accepted | ( |  | act_id,
|  |  | distance
| ) |  | action_distance_accepted(action_by_number(act_id), distance)

Definition at line 696 of file actions.h.

## ◆ action_id_distance_inside_max

#define action_id_distance_inside_max | ( |  | act_id,
|  |  | distance
| ) |  | action_distance_inside_max(action_by_number(act_id), distance)

Definition at line 701 of file actions.h.

## ◆ action_id_get_act_time

#define action_id_get_act_time | ( |  | act_id,
|  |  | actor_unit,
|  |  | tgt_tile,
|  |  | tgt_extra
| ) |  |

Value:
action_get_act_time(action_by_number(act_id), \
actor_unit, tgt_tile, tgt_extra)
action_get_act_time
int action_get_act_time(const struct action *paction, const struct unit *actor_unit, const struct tile *tgt_tile, const struct extra_type *tgt_extra)
Definition actions.c:2173
action_by_number
static struct action * action_by_number(action_id act_id)
Definition actions.h:638
actor_unit
struct unit * actor_unit
Definition dialogs_g.h:54

Definition at line 683 of file actions.h.

## ◆ action_id_get_activity

#define action_id_get_activity | ( |  | act_id | ) | actres_get_activity(action_by_number(act_id)->result)

Definition at line 712 of file actions.h.

## ◆ action_id_get_actor_kind

#define action_id_get_actor_kind | ( |  | act_id | ) | action_get_actor_kind(action_by_number(act_id))

Definition at line 651 of file actions.h.

## ◆ action_id_get_role

#define action_id_get_role | ( |  | act_id | ) | action_get_role(action_by_number(act_id))

Definition at line 708 of file actions.h.

## ◆ action_id_get_sub_target_kind

#define action_id_get_sub_target_kind | ( |  | act_id | ) | action_get_sub_target_kind(action_by_number(act_id))

Definition at line 659 of file actions.h.

## ◆ action_id_get_target_kind

#define action_id_get_target_kind | ( |  | act_id | ) | action_get_target_kind(action_by_number(act_id))

Definition at line 655 of file actions.h.

## ◆ action_id_has_complex_target

#define action_id_has_complex_target | ( |  | act_id | ) | action_has_complex_target(action_by_number(act_id))

Definition at line 673 of file actions.h.

## ◆ action_id_has_result_safe

#define action_id_has_result_safe | ( |  | act_id,
|  |  | result
| ) |  |

Value:
(action_by_number(act_id) \
&& action_has_result(action_by_number(act_id), result))
action_has_result
#define action_has_result(_act_, _res_)
Definition actions.h:448

Definition at line 668 of file actions.h.

## ◆ action_id_requires_details

#define action_id_requires_details | ( |  | act_id | ) | action_requires_details(action_by_number(act_id))

Definition at line 676 of file actions.h.

## ◆ action_id_univs_not_blocking

#define action_id_univs_not_blocking | ( |  | act_id,
|  |  | act_uni,
|  |  | tgt_uni
| ) |  | action_univs_not_blocking(action_by_number(act_id), act_uni, tgt_uni)

Definition at line 950 of file actions.h.

## ◆ action_iterate

#define action_iterate | ( |  | _act_ | ) |

Value:
{ \
action_id _act_; \
for (_act_ = 0; _act_ < NUM_ACTIONS; _act_++) {

Definition at line 467 of file actions.h.

## ◆ action_iterate_end

#define action_iterate_end

Value:
} \
}

Definition at line 472 of file actions.h.

## ◆ action_list_iterate

#define action_list_iterate | ( |  | _list_,
|  |  | _act_
| ) |  | TYPED_LIST_ITERATE(struct action, _list_, _act_)

Definition at line 481 of file actions.h.

## ◆ action_list_iterate_end

#define action_list_iterate_end LIST_ITERATE_END

Definition at line 483 of file actions.h.

## ◆ ACTION_NONE

#define ACTION_NONE ACTION_COUNT

Definition at line 293 of file actions.h.

## ◆ ACTION_ODDS_PCT_DICE_ROLL_NA

#define ACTION_ODDS_PCT_DICE_ROLL_NA 110

Definition at line 934 of file actions.h.

## ◆ ACTPROB_CERTAIN

#define ACTPROB_CERTAIN action_prob_new_certain()

Definition at line 928 of file actions.h.

## ◆ ACTPROB_IMPOSSIBLE

#define ACTPROB_IMPOSSIBLE action_prob_new_impossible()

Definition at line 927 of file actions.h.

## ◆ ACTPROB_NA

#define ACTPROB_NA action_prob_new_not_relevant()

Definition at line 929 of file actions.h.

## ◆ ACTPROB_NOT_IMPLEMENTED

#define ACTPROB_NOT_IMPLEMENTED action_prob_new_not_impl()

Definition at line 930 of file actions.h.

## ◆ ACTPROB_NOT_KNOWN

#define ACTPROB_NOT_KNOWN action_prob_new_unknown()

Definition at line 931 of file actions.h.

## ◆ enabler_get_action

#define enabler_get_action | ( |  | _enabler_ | ) | action_by_number(_enabler_->action)

Definition at line 450 of file actions.h.

## ◆ MAX_NUM_ACTIONS

#define MAX_NUM_ACTIONS ACTION_COUNT

Definition at line 296 of file actions.h.

## ◆ NUM_ACTIONS

#define NUM_ACTIONS MAX_NUM_ACTIONS

Definition at line 297 of file actions.h.

## ◆ SPECENUM_BITVECTOR

#define SPECENUM_BITVECTOR bv_actions

Definition at line 284 of file actions.h.

## ◆ SPECENUM_COUNT [1/7]

#define SPECENUM_COUNT AAK_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [2/7]

#define SPECENUM_COUNT ATK_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [3/7]

#define SPECENUM_COUNT ASTK_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [4/7]

#define SPECENUM_COUNT ACTION_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [5/7]

#define SPECENUM_COUNT ABK_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [6/7]

#define SPECENUM_COUNT ACT_REQ_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_COUNT [7/7]

#define SPECENUM_COUNT AAPC_COUNT

Definition at line 30 of file actions.h.

## ◆ SPECENUM_NAME [1/9]

#define SPECENUM_NAME action_actor_kind

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [2/9]

#define SPECENUM_NAME action_target_kind

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [3/9]

#define SPECENUM_NAME action_sub_target_kind

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [4/9]

#define SPECENUM_NAME gen_action

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [5/9]

#define SPECENUM_NAME action_battle_kind

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [6/9]

#define SPECENUM_NAME moves_actor_kind

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [7/9]

#define SPECENUM_NAME action_requester

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [8/9]

#define SPECENUM_NAME act_tgt_compl

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME [9/9]

#define SPECENUM_NAME action_auto_perf_cause

Definition at line 27 of file actions.h.

## ◆ SPECENUM_NAME_UPDATER

#define SPECENUM_NAME_UPDATER

Definition at line 286 of file actions.h.

## ◆ SPECENUM_VALUE0 [1/9]

#define SPECENUM_VALUE0 AAK_UNIT

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [2/9]

#define SPECENUM_VALUE0 ATK_CITY

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [3/9]

#define SPECENUM_VALUE0 ASTK_NONE

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [4/9]

#define SPECENUM_VALUE0 ACTION_ESTABLISH_EMBASSY

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [5/9]

#define SPECENUM_VALUE0 ABK_NONE

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [6/9]

#define SPECENUM_VALUE0 MAK_STAYS

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [7/9]

#define SPECENUM_VALUE0 ACT_REQ_PLAYER

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [8/9]

#define SPECENUM_VALUE0 ACT_TGT_COMPL_SIMPLE

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0 [9/9]

#define SPECENUM_VALUE0 AAPC_UNIT_UPKEEP

Definition at line 28 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [1/9]

#define SPECENUM_VALUE0NAME N_("a unit")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [2/9]

#define SPECENUM_VALUE0NAME "City"

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [3/9]

#define SPECENUM_VALUE0NAME N_("nothing")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [4/9]

#define SPECENUM_VALUE0NAME "Establish Embassy"

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [5/9]

#define SPECENUM_VALUE0NAME N_("no battle")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [6/9]

#define SPECENUM_VALUE0NAME N_("stays")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [7/9]

#define SPECENUM_VALUE0NAME N_("the player")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [8/9]

#define SPECENUM_VALUE0NAME N_("simple")

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE0NAME [9/9]

#define SPECENUM_VALUE0NAME "Unit Upkeep"

Definition at line 29 of file actions.h.

## ◆ SPECENUM_VALUE1 [1/8]

#define SPECENUM_VALUE1 ATK_UNIT

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [2/8]

#define SPECENUM_VALUE1 ASTK_BUILDING

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [3/8]

#define SPECENUM_VALUE1 ACTION_ESTABLISH_EMBASSY_STAY

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [4/8]

#define SPECENUM_VALUE1 ABK_STANDARD

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [5/8]

#define SPECENUM_VALUE1 MAK_REGULAR

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [6/8]

#define SPECENUM_VALUE1 ACT_REQ_RULES

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [7/8]

#define SPECENUM_VALUE1 ACT_TGT_COMPL_FLEXIBLE

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE1 [8/8]

#define SPECENUM_VALUE1 AAPC_UNIT_MOVED_ADJ

Definition at line 37 of file actions.h.

## ◆ SPECENUM_VALUE10

#define SPECENUM_VALUE10 ACTION_SPY_TARGETED_SABOTAGE_CITY

Definition at line 91 of file actions.h.

## ◆ SPECENUM_VALUE100

#define SPECENUM_VALUE100 ACTION_UNIT_MOVE2

Definition at line 272 of file actions.h.

## ◆ SPECENUM_VALUE100NAME

#define SPECENUM_VALUE100NAME "Unit Move 2"

Definition at line 273 of file actions.h.

## ◆ SPECENUM_VALUE101

#define SPECENUM_VALUE101 ACTION_UNIT_MOVE3

Definition at line 274 of file actions.h.

## ◆ SPECENUM_VALUE101NAME

#define SPECENUM_VALUE101NAME "Unit Move 3"

Definition at line 275 of file actions.h.

## ◆ SPECENUM_VALUE102

#define SPECENUM_VALUE102 ACTION_USER_ACTION1

Definition at line 276 of file actions.h.

## ◆ SPECENUM_VALUE102NAME

#define SPECENUM_VALUE102NAME "User Action 1"

Definition at line 277 of file actions.h.

## ◆ SPECENUM_VALUE103

#define SPECENUM_VALUE103 ACTION_USER_ACTION2

Definition at line 278 of file actions.h.

## ◆ SPECENUM_VALUE103NAME

#define SPECENUM_VALUE103NAME "User Action 2"

Definition at line 279 of file actions.h.

## ◆ SPECENUM_VALUE104

#define SPECENUM_VALUE104 ACTION_USER_ACTION3

Definition at line 280 of file actions.h.

## ◆ SPECENUM_VALUE104NAME

#define SPECENUM_VALUE104NAME "User Action 3"

Definition at line 281 of file actions.h.

## ◆ SPECENUM_VALUE105

#define SPECENUM_VALUE105 ACTION_USER_ACTION4

Definition at line 282 of file actions.h.

## ◆ SPECENUM_VALUE105NAME

#define SPECENUM_VALUE105NAME "User Action 4"

Definition at line 283 of file actions.h.

## ◆ SPECENUM_VALUE10NAME

#define SPECENUM_VALUE10NAME "Targeted Sabotage City"

Definition at line 92 of file actions.h.

## ◆ SPECENUM_VALUE11

#define SPECENUM_VALUE11 ACTION_SPY_TARGETED_SABOTAGE_CITY_ESC

Definition at line 93 of file actions.h.

## ◆ SPECENUM_VALUE11NAME

#define SPECENUM_VALUE11NAME "Targeted Sabotage City Escape"

Definition at line 94 of file actions.h.

## ◆ SPECENUM_VALUE12

#define SPECENUM_VALUE12 ACTION_SPY_SABOTAGE_CITY_PRODUCTION

Definition at line 95 of file actions.h.

## ◆ SPECENUM_VALUE12NAME

#define SPECENUM_VALUE12NAME "Sabotage City Production"

Definition at line 96 of file actions.h.

## ◆ SPECENUM_VALUE13

#define SPECENUM_VALUE13 ACTION_SPY_SABOTAGE_CITY_PRODUCTION_ESC

Definition at line 97 of file actions.h.

## ◆ SPECENUM_VALUE13NAME

#define SPECENUM_VALUE13NAME "Sabotage City Production Escape"

Definition at line 98 of file actions.h.

## ◆ SPECENUM_VALUE14

#define SPECENUM_VALUE14 ACTION_SPY_STEAL_TECH

Definition at line 99 of file actions.h.

## ◆ SPECENUM_VALUE14NAME

#define SPECENUM_VALUE14NAME "Steal Tech"

Definition at line 100 of file actions.h.

## ◆ SPECENUM_VALUE15

#define SPECENUM_VALUE15 ACTION_SPY_STEAL_TECH_ESC

Definition at line 101 of file actions.h.

## ◆ SPECENUM_VALUE15NAME

#define SPECENUM_VALUE15NAME "Steal Tech Escape Expected"

Definition at line 102 of file actions.h.

## ◆ SPECENUM_VALUE16

#define SPECENUM_VALUE16 ACTION_SPY_TARGETED_STEAL_TECH

Definition at line 103 of file actions.h.

## ◆ SPECENUM_VALUE16NAME

#define SPECENUM_VALUE16NAME "Targeted Steal Tech"

Definition at line 104 of file actions.h.

## ◆ SPECENUM_VALUE17

#define SPECENUM_VALUE17 ACTION_SPY_TARGETED_STEAL_TECH_ESC

Definition at line 105 of file actions.h.

## ◆ SPECENUM_VALUE17NAME

#define SPECENUM_VALUE17NAME "Targeted Steal Tech Escape Expected"

Definition at line 106 of file actions.h.

## ◆ SPECENUM_VALUE18

#define SPECENUM_VALUE18 ACTION_SPY_INCITE_CITY

Definition at line 107 of file actions.h.

## ◆ SPECENUM_VALUE18NAME

#define SPECENUM_VALUE18NAME "Incite City"

Definition at line 108 of file actions.h.

## ◆ SPECENUM_VALUE19

#define SPECENUM_VALUE19 ACTION_SPY_INCITE_CITY_ESC

Definition at line 109 of file actions.h.

## ◆ SPECENUM_VALUE19NAME

#define SPECENUM_VALUE19NAME "Incite City Escape"

Definition at line 110 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [1/8]

#define SPECENUM_VALUE1NAME "Unit"

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [2/8]

#define SPECENUM_VALUE1NAME N_("buildings in")

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [3/8]

#define SPECENUM_VALUE1NAME "Establish Embassy Stay"

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [4/8]

#define SPECENUM_VALUE1NAME N_("battle")

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [5/8]

#define SPECENUM_VALUE1NAME N_("regular")

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [6/8]

#define SPECENUM_VALUE1NAME N_("the game rules")

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [7/8]

#define SPECENUM_VALUE1NAME N_("flexible")

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE1NAME [8/8]

#define SPECENUM_VALUE1NAME "Moved Adjacent"

Definition at line 38 of file actions.h.

## ◆ SPECENUM_VALUE2 [1/8]

#define SPECENUM_VALUE2 ATK_UNITS

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [2/8]

#define SPECENUM_VALUE2 ASTK_TECH

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [3/8]

#define SPECENUM_VALUE2 ACTION_SPY_INVESTIGATE_CITY

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [4/8]

#define SPECENUM_VALUE2 ABK_DIPLOMATIC

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [5/8]

#define SPECENUM_VALUE2 MAK_TELEPORT

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [6/8]

#define SPECENUM_VALUE2 ACT_REQ_SS_AGENT

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [7/8]

#define SPECENUM_VALUE2 ACT_TGT_COMPL_MANDATORY

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE2 [8/8]

#define SPECENUM_VALUE2 AAPC_POST_ACTION

Definition at line 39 of file actions.h.

## ◆ SPECENUM_VALUE20

#define SPECENUM_VALUE20 ACTION_TRADE_ROUTE

Definition at line 111 of file actions.h.

## ◆ SPECENUM_VALUE20NAME

#define SPECENUM_VALUE20NAME "Establish Trade Route"

Definition at line 112 of file actions.h.

## ◆ SPECENUM_VALUE21

#define SPECENUM_VALUE21 ACTION_MARKETPLACE

Definition at line 113 of file actions.h.

## ◆ SPECENUM_VALUE21NAME

#define SPECENUM_VALUE21NAME "Enter Marketplace"

Definition at line 114 of file actions.h.

## ◆ SPECENUM_VALUE22

#define SPECENUM_VALUE22 ACTION_HELP_WONDER

Definition at line 115 of file actions.h.

## ◆ SPECENUM_VALUE22NAME

#define SPECENUM_VALUE22NAME "Help Wonder"

Definition at line 116 of file actions.h.

## ◆ SPECENUM_VALUE23

#define SPECENUM_VALUE23 ACTION_SPY_BRIBE_UNIT

Definition at line 117 of file actions.h.

## ◆ SPECENUM_VALUE23NAME

#define SPECENUM_VALUE23NAME "Bribe Unit"

Definition at line 118 of file actions.h.

## ◆ SPECENUM_VALUE24

#define SPECENUM_VALUE24 ACTION_CAPTURE_UNITS

Definition at line 119 of file actions.h.

## ◆ SPECENUM_VALUE24NAME

#define SPECENUM_VALUE24NAME "Capture Units"

Definition at line 120 of file actions.h.

## ◆ SPECENUM_VALUE25

#define SPECENUM_VALUE25 ACTION_SPY_SABOTAGE_UNIT

Definition at line 121 of file actions.h.

## ◆ SPECENUM_VALUE25NAME

#define SPECENUM_VALUE25NAME "Sabotage Unit"

Definition at line 122 of file actions.h.

## ◆ SPECENUM_VALUE26

#define SPECENUM_VALUE26 ACTION_SPY_SABOTAGE_UNIT_ESC

Definition at line 123 of file actions.h.

## ◆ SPECENUM_VALUE26NAME

#define SPECENUM_VALUE26NAME "Sabotage Unit Escape"

Definition at line 124 of file actions.h.

## ◆ SPECENUM_VALUE27

#define SPECENUM_VALUE27 ACTION_FOUND_CITY

Definition at line 125 of file actions.h.

## ◆ SPECENUM_VALUE27NAME

#define SPECENUM_VALUE27NAME "Found City"

Definition at line 126 of file actions.h.

## ◆ SPECENUM_VALUE28

#define SPECENUM_VALUE28 ACTION_JOIN_CITY

Definition at line 127 of file actions.h.

## ◆ SPECENUM_VALUE28NAME

#define SPECENUM_VALUE28NAME "Join City"

Definition at line 128 of file actions.h.

## ◆ SPECENUM_VALUE29

#define SPECENUM_VALUE29 ACTION_STEAL_MAPS

Definition at line 129 of file actions.h.

## ◆ SPECENUM_VALUE29NAME

#define SPECENUM_VALUE29NAME "Steal Maps"

Definition at line 130 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [1/8]

#define SPECENUM_VALUE2NAME "Stack"

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [2/8]

#define SPECENUM_VALUE2NAME N_("techs from")

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [3/8]

#define SPECENUM_VALUE2NAME "Investigate City"

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [4/8]

#define SPECENUM_VALUE2NAME N_("diplomatic battle")

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [5/8]

#define SPECENUM_VALUE2NAME N_("teleport")

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [6/8]

#define SPECENUM_VALUE2NAME N_("a server agent")

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [7/8]

#define SPECENUM_VALUE2NAME N_("mandatory")

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE2NAME [8/8]

#define SPECENUM_VALUE2NAME "After Successful Action"

Definition at line 40 of file actions.h.

## ◆ SPECENUM_VALUE3 [1/5]

#define SPECENUM_VALUE3 ATK_TILE

Definition at line 41 of file actions.h.

## ◆ SPECENUM_VALUE3 [2/5]

#define SPECENUM_VALUE3 ASTK_EXTRA

Definition at line 41 of file actions.h.

## ◆ SPECENUM_VALUE3 [3/5]

#define SPECENUM_VALUE3 ACTION_INV_CITY_SPEND

Definition at line 41 of file actions.h.

## ◆ SPECENUM_VALUE3 [4/5]

#define SPECENUM_VALUE3 MAK_ESCAPE

Definition at line 41 of file actions.h.

## ◆ SPECENUM_VALUE3 [5/5]

#define SPECENUM_VALUE3 AAPC_CITY_GONE

Definition at line 41 of file actions.h.

## ◆ SPECENUM_VALUE30

#define SPECENUM_VALUE30 ACTION_STEAL_MAPS_ESC

Definition at line 131 of file actions.h.

## ◆ SPECENUM_VALUE30NAME

#define SPECENUM_VALUE30NAME "Steal Maps Escape"

Definition at line 132 of file actions.h.

## ◆ SPECENUM_VALUE31

#define SPECENUM_VALUE31 ACTION_SPY_NUKE

Definition at line 133 of file actions.h.

## ◆ SPECENUM_VALUE31NAME

#define SPECENUM_VALUE31NAME "Suitcase Nuke"

Definition at line 134 of file actions.h.

## ◆ SPECENUM_VALUE32

#define SPECENUM_VALUE32 ACTION_SPY_NUKE_ESC

Definition at line 135 of file actions.h.

## ◆ SPECENUM_VALUE32NAME

#define SPECENUM_VALUE32NAME "Suitcase Nuke Escape"

Definition at line 136 of file actions.h.

## ◆ SPECENUM_VALUE33

#define SPECENUM_VALUE33 ACTION_NUKE

Definition at line 137 of file actions.h.

## ◆ SPECENUM_VALUE33NAME

#define SPECENUM_VALUE33NAME "Explode Nuclear"

Definition at line 138 of file actions.h.

## ◆ SPECENUM_VALUE34

#define SPECENUM_VALUE34 ACTION_NUKE_CITY

Definition at line 139 of file actions.h.

## ◆ SPECENUM_VALUE34NAME

#define SPECENUM_VALUE34NAME "Nuke City"

Definition at line 140 of file actions.h.

## ◆ SPECENUM_VALUE35

#define SPECENUM_VALUE35 ACTION_NUKE_UNITS

Definition at line 141 of file actions.h.

## ◆ SPECENUM_VALUE35NAME

#define SPECENUM_VALUE35NAME "Nuke Units"

Definition at line 142 of file actions.h.

## ◆ SPECENUM_VALUE36

#define SPECENUM_VALUE36 ACTION_DESTROY_CITY

Definition at line 143 of file actions.h.

## ◆ SPECENUM_VALUE36NAME

#define SPECENUM_VALUE36NAME "Destroy City"

Definition at line 144 of file actions.h.

## ◆ SPECENUM_VALUE37

#define SPECENUM_VALUE37 ACTION_EXPEL_UNIT

Definition at line 145 of file actions.h.

## ◆ SPECENUM_VALUE37NAME

#define SPECENUM_VALUE37NAME "Expel Unit"

Definition at line 146 of file actions.h.

## ◆ SPECENUM_VALUE38

#define SPECENUM_VALUE38 ACTION_DISBAND_UNIT_RECOVER

Definition at line 147 of file actions.h.

## ◆ SPECENUM_VALUE38NAME

#define SPECENUM_VALUE38NAME "Disband Unit Recover"

Definition at line 148 of file actions.h.

## ◆ SPECENUM_VALUE39

#define SPECENUM_VALUE39 ACTION_DISBAND_UNIT

Definition at line 149 of file actions.h.

## ◆ SPECENUM_VALUE39NAME

#define SPECENUM_VALUE39NAME "Disband Unit"

Definition at line 150 of file actions.h.

## ◆ SPECENUM_VALUE3NAME [1/5]

#define SPECENUM_VALUE3NAME "Tile"

Definition at line 42 of file actions.h.

## ◆ SPECENUM_VALUE3NAME [2/5]

#define SPECENUM_VALUE3NAME N_("extras on")

Definition at line 42 of file actions.h.

## ◆ SPECENUM_VALUE3NAME [3/5]

#define SPECENUM_VALUE3NAME "Investigate City Spend Unit"

Definition at line 42 of file actions.h.

## ◆ SPECENUM_VALUE3NAME [4/5]

#define SPECENUM_VALUE3NAME N_("escape")

Definition at line 42 of file actions.h.

## ◆ SPECENUM_VALUE3NAME [5/5]

#define SPECENUM_VALUE3NAME "City Gone"

Definition at line 42 of file actions.h.

## ◆ SPECENUM_VALUE4 [1/5]

#define SPECENUM_VALUE4 ATK_EXTRAS

Definition at line 43 of file actions.h.

## ◆ SPECENUM_VALUE4 [2/5]

#define SPECENUM_VALUE4 ASTK_EXTRA_NOT_THERE

Definition at line 43 of file actions.h.

## ◆ SPECENUM_VALUE4 [3/5]

#define SPECENUM_VALUE4 ACTION_SPY_POISON

Definition at line 43 of file actions.h.

## ◆ SPECENUM_VALUE4 [4/5]

#define SPECENUM_VALUE4 MAK_FORCED

Definition at line 43 of file actions.h.

## ◆ SPECENUM_VALUE4 [5/5]

#define SPECENUM_VALUE4 AAPC_UNIT_STACK_DEATH

Definition at line 43 of file actions.h.

## ◆ SPECENUM_VALUE40

#define SPECENUM_VALUE40 ACTION_HOME_CITY

Definition at line 151 of file actions.h.

## ◆ SPECENUM_VALUE40NAME

#define SPECENUM_VALUE40NAME "Home City"

Definition at line 152 of file actions.h.

## ◆ SPECENUM_VALUE41

#define SPECENUM_VALUE41 ACTION_HOMELESS

Definition at line 153 of file actions.h.

## ◆ SPECENUM_VALUE41NAME

#define SPECENUM_VALUE41NAME "Unit Make Homeless"

Definition at line 154 of file actions.h.

## ◆ SPECENUM_VALUE42

#define SPECENUM_VALUE42 ACTION_UPGRADE_UNIT

Definition at line 155 of file actions.h.

## ◆ SPECENUM_VALUE42NAME

#define SPECENUM_VALUE42NAME "Upgrade Unit"

Definition at line 156 of file actions.h.

## ◆ SPECENUM_VALUE43

#define SPECENUM_VALUE43 ACTION_CONVERT

Definition at line 157 of file actions.h.

## ◆ SPECENUM_VALUE43NAME

#define SPECENUM_VALUE43NAME "Convert Unit"

Definition at line 158 of file actions.h.

## ◆ SPECENUM_VALUE44

#define SPECENUM_VALUE44 ACTION_AIRLIFT

Definition at line 159 of file actions.h.

## ◆ SPECENUM_VALUE44NAME

#define SPECENUM_VALUE44NAME "Airlift Unit"

Definition at line 160 of file actions.h.

## ◆ SPECENUM_VALUE45

#define SPECENUM_VALUE45 ACTION_ATTACK

Definition at line 161 of file actions.h.

## ◆ SPECENUM_VALUE45NAME

#define SPECENUM_VALUE45NAME "Attack"

Definition at line 162 of file actions.h.

## ◆ SPECENUM_VALUE46

#define SPECENUM_VALUE46 ACTION_SUICIDE_ATTACK

Definition at line 163 of file actions.h.

## ◆ SPECENUM_VALUE46NAME

#define SPECENUM_VALUE46NAME "Suicide Attack"

Definition at line 164 of file actions.h.

## ◆ SPECENUM_VALUE47

#define SPECENUM_VALUE47 ACTION_STRIKE_BUILDING

Definition at line 165 of file actions.h.

## ◆ SPECENUM_VALUE47NAME

#define SPECENUM_VALUE47NAME "Surgical Strike Building"

Definition at line 166 of file actions.h.

## ◆ SPECENUM_VALUE48

#define SPECENUM_VALUE48 ACTION_STRIKE_PRODUCTION

Definition at line 167 of file actions.h.

## ◆ SPECENUM_VALUE48NAME

#define SPECENUM_VALUE48NAME "Surgical Strike Production"

Definition at line 168 of file actions.h.

## ◆ SPECENUM_VALUE49

#define SPECENUM_VALUE49 ACTION_CONQUER_CITY

Definition at line 169 of file actions.h.

## ◆ SPECENUM_VALUE49NAME

#define SPECENUM_VALUE49NAME "Conquer City"

Definition at line 170 of file actions.h.

## ◆ SPECENUM_VALUE4NAME [1/5]

#define SPECENUM_VALUE4NAME "Extras"

Definition at line 44 of file actions.h.

## ◆ SPECENUM_VALUE4NAME [2/5]

#define SPECENUM_VALUE4NAME N_("create extras on")

Definition at line 44 of file actions.h.

## ◆ SPECENUM_VALUE4NAME [3/5]

#define SPECENUM_VALUE4NAME "Poison City"

Definition at line 44 of file actions.h.

## ◆ SPECENUM_VALUE4NAME [4/5]

#define SPECENUM_VALUE4NAME N_("forced")

Definition at line 44 of file actions.h.

## ◆ SPECENUM_VALUE4NAME [5/5]

#define SPECENUM_VALUE4NAME "Unit Stack Dead"

Definition at line 44 of file actions.h.

## ◆ SPECENUM_VALUE5 [1/3]

#define SPECENUM_VALUE5 ATK_SELF

Definition at line 46 of file actions.h.

## ◆ SPECENUM_VALUE5 [2/3]

#define SPECENUM_VALUE5 ACTION_SPY_POISON_ESC

Definition at line 46 of file actions.h.

## ◆ SPECENUM_VALUE5 [3/3]

#define SPECENUM_VALUE5 MAK_UNREPRESENTABLE

Definition at line 46 of file actions.h.

## ◆ SPECENUM_VALUE50

#define SPECENUM_VALUE50 ACTION_CONQUER_CITY2

Definition at line 171 of file actions.h.

## ◆ SPECENUM_VALUE50NAME

#define SPECENUM_VALUE50NAME "Conquer City 2"

Definition at line 172 of file actions.h.

## ◆ SPECENUM_VALUE51

#define SPECENUM_VALUE51 ACTION_CONQUER_CITY3

Definition at line 173 of file actions.h.

## ◆ SPECENUM_VALUE51NAME

#define SPECENUM_VALUE51NAME "Conquer City 3"

Definition at line 174 of file actions.h.

## ◆ SPECENUM_VALUE52

#define SPECENUM_VALUE52 ACTION_CONQUER_CITY4

Definition at line 175 of file actions.h.

## ◆ SPECENUM_VALUE52NAME

#define SPECENUM_VALUE52NAME "Conquer City 4"

Definition at line 176 of file actions.h.

## ◆ SPECENUM_VALUE53

#define SPECENUM_VALUE53 ACTION_BOMBARD

Definition at line 177 of file actions.h.

## ◆ SPECENUM_VALUE53NAME

#define SPECENUM_VALUE53NAME "Bombard"

Definition at line 178 of file actions.h.

## ◆ SPECENUM_VALUE54

#define SPECENUM_VALUE54 ACTION_BOMBARD2

Definition at line 179 of file actions.h.

## ◆ SPECENUM_VALUE54NAME

#define SPECENUM_VALUE54NAME "Bombard 2"

Definition at line 180 of file actions.h.

## ◆ SPECENUM_VALUE55

#define SPECENUM_VALUE55 ACTION_BOMBARD3

Definition at line 181 of file actions.h.

## ◆ SPECENUM_VALUE55NAME

#define SPECENUM_VALUE55NAME "Bombard 3"

Definition at line 182 of file actions.h.

## ◆ SPECENUM_VALUE56

#define SPECENUM_VALUE56 ACTION_FORTIFY

Definition at line 183 of file actions.h.

## ◆ SPECENUM_VALUE56NAME

#define SPECENUM_VALUE56NAME "Fortify"

Definition at line 184 of file actions.h.

## ◆ SPECENUM_VALUE57

#define SPECENUM_VALUE57 ACTION_CULTIVATE

Definition at line 185 of file actions.h.

## ◆ SPECENUM_VALUE57NAME

#define SPECENUM_VALUE57NAME "Cultivate"

Definition at line 186 of file actions.h.

## ◆ SPECENUM_VALUE58

#define SPECENUM_VALUE58 ACTION_PLANT

Definition at line 187 of file actions.h.

## ◆ SPECENUM_VALUE58NAME

#define SPECENUM_VALUE58NAME "Plant"

Definition at line 188 of file actions.h.

## ◆ SPECENUM_VALUE59

#define SPECENUM_VALUE59 ACTION_TRANSFORM_TERRAIN

Definition at line 189 of file actions.h.

## ◆ SPECENUM_VALUE59NAME

#define SPECENUM_VALUE59NAME "Transform Terrain"

Definition at line 190 of file actions.h.

## ◆ SPECENUM_VALUE5NAME [1/3]

#define SPECENUM_VALUE5NAME "Self"

Definition at line 47 of file actions.h.

## ◆ SPECENUM_VALUE5NAME [2/3]

#define SPECENUM_VALUE5NAME "Poison City Escape"

Definition at line 47 of file actions.h.

## ◆ SPECENUM_VALUE5NAME [3/3]

#define SPECENUM_VALUE5NAME N_("unrepresentable")

Definition at line 47 of file actions.h.

## ◆ SPECENUM_VALUE6

#define SPECENUM_VALUE6 ACTION_SPY_STEAL_GOLD

Definition at line 83 of file actions.h.

## ◆ SPECENUM_VALUE60

#define SPECENUM_VALUE60 ACTION_ROAD

Definition at line 191 of file actions.h.

## ◆ SPECENUM_VALUE60NAME

#define SPECENUM_VALUE60NAME "Build Road"

Definition at line 192 of file actions.h.

## ◆ SPECENUM_VALUE61

#define SPECENUM_VALUE61 ACTION_IRRIGATE

Definition at line 193 of file actions.h.

## ◆ SPECENUM_VALUE61NAME

#define SPECENUM_VALUE61NAME "Build Irrigation"

Definition at line 194 of file actions.h.

## ◆ SPECENUM_VALUE62

#define SPECENUM_VALUE62 ACTION_MINE

Definition at line 195 of file actions.h.

## ◆ SPECENUM_VALUE62NAME

#define SPECENUM_VALUE62NAME "Build Mine"

Definition at line 196 of file actions.h.

## ◆ SPECENUM_VALUE63

#define SPECENUM_VALUE63 ACTION_BASE

Definition at line 197 of file actions.h.

## ◆ SPECENUM_VALUE63NAME

#define SPECENUM_VALUE63NAME "Build Base"

Definition at line 198 of file actions.h.

## ◆ SPECENUM_VALUE64

#define SPECENUM_VALUE64 ACTION_PILLAGE

Definition at line 199 of file actions.h.

## ◆ SPECENUM_VALUE64NAME

#define SPECENUM_VALUE64NAME "Pillage"

Definition at line 200 of file actions.h.

## ◆ SPECENUM_VALUE65

#define SPECENUM_VALUE65 ACTION_CLEAN_POLLUTION

Definition at line 201 of file actions.h.

## ◆ SPECENUM_VALUE65NAME

#define SPECENUM_VALUE65NAME "Clean Pollution"

Definition at line 202 of file actions.h.

## ◆ SPECENUM_VALUE66

#define SPECENUM_VALUE66 ACTION_CLEAN_FALLOUT

Definition at line 203 of file actions.h.

## ◆ SPECENUM_VALUE66NAME

#define SPECENUM_VALUE66NAME "Clean Fallout"

Definition at line 204 of file actions.h.

## ◆ SPECENUM_VALUE67

#define SPECENUM_VALUE67 ACTION_TRANSPORT_BOARD

Definition at line 205 of file actions.h.

## ◆ SPECENUM_VALUE67NAME

#define SPECENUM_VALUE67NAME "Transport Board"

Definition at line 206 of file actions.h.

## ◆ SPECENUM_VALUE68

#define SPECENUM_VALUE68 ACTION_TRANSPORT_ALIGHT

Definition at line 208 of file actions.h.

## ◆ SPECENUM_VALUE68NAME

#define SPECENUM_VALUE68NAME "Transport Alight"

Definition at line 209 of file actions.h.

## ◆ SPECENUM_VALUE69

#define SPECENUM_VALUE69 ACTION_TRANSPORT_EMBARK

Definition at line 210 of file actions.h.

## ◆ SPECENUM_VALUE69NAME

#define SPECENUM_VALUE69NAME "Transport Embark"

Definition at line 211 of file actions.h.

## ◆ SPECENUM_VALUE6NAME

#define SPECENUM_VALUE6NAME "Steal Gold"

Definition at line 84 of file actions.h.

## ◆ SPECENUM_VALUE7

#define SPECENUM_VALUE7 ACTION_SPY_STEAL_GOLD_ESC

Definition at line 85 of file actions.h.

## ◆ SPECENUM_VALUE70

#define SPECENUM_VALUE70 ACTION_TRANSPORT_EMBARK2

Definition at line 212 of file actions.h.

## ◆ SPECENUM_VALUE70NAME

#define SPECENUM_VALUE70NAME "Transport Embark 2"

Definition at line 213 of file actions.h.

## ◆ SPECENUM_VALUE71

#define SPECENUM_VALUE71 ACTION_TRANSPORT_EMBARK3

Definition at line 214 of file actions.h.

## ◆ SPECENUM_VALUE71NAME

#define SPECENUM_VALUE71NAME "Transport Embark 3"

Definition at line 215 of file actions.h.

## ◆ SPECENUM_VALUE72

#define SPECENUM_VALUE72 ACTION_TRANSPORT_DISEMBARK1

Definition at line 216 of file actions.h.

## ◆ SPECENUM_VALUE72NAME

#define SPECENUM_VALUE72NAME "Transport Disembark"

Definition at line 217 of file actions.h.

## ◆ SPECENUM_VALUE73

#define SPECENUM_VALUE73 ACTION_TRANSPORT_DISEMBARK2

Definition at line 218 of file actions.h.

## ◆ SPECENUM_VALUE73NAME

#define SPECENUM_VALUE73NAME "Transport Disembark 2"

Definition at line 219 of file actions.h.

## ◆ SPECENUM_VALUE74

#define SPECENUM_VALUE74 ACTION_TRANSPORT_DISEMBARK3

Definition at line 220 of file actions.h.

## ◆ SPECENUM_VALUE74NAME

#define SPECENUM_VALUE74NAME "Transport Disembark 3"

Definition at line 221 of file actions.h.

## ◆ SPECENUM_VALUE75

#define SPECENUM_VALUE75 ACTION_TRANSPORT_DISEMBARK4

Definition at line 222 of file actions.h.

## ◆ SPECENUM_VALUE75NAME

#define SPECENUM_VALUE75NAME "Transport Disembark 4"

Definition at line 223 of file actions.h.

## ◆ SPECENUM_VALUE76

#define SPECENUM_VALUE76 ACTION_TRANSPORT_UNLOAD

Definition at line 224 of file actions.h.

## ◆ SPECENUM_VALUE76NAME

#define SPECENUM_VALUE76NAME "Transport Unload"

Definition at line 225 of file actions.h.

## ◆ SPECENUM_VALUE77

#define SPECENUM_VALUE77 ACTION_SPY_SPREAD_PLAGUE

Definition at line 226 of file actions.h.

## ◆ SPECENUM_VALUE77NAME

#define SPECENUM_VALUE77NAME "Spread Plague"

Definition at line 227 of file actions.h.

## ◆ SPECENUM_VALUE78

#define SPECENUM_VALUE78 ACTION_SPY_ATTACK

Definition at line 228 of file actions.h.

## ◆ SPECENUM_VALUE78NAME

#define SPECENUM_VALUE78NAME "Spy Attack"

Definition at line 229 of file actions.h.

## ◆ SPECENUM_VALUE79

#define SPECENUM_VALUE79 ACTION_CONQUER_EXTRAS

Definition at line 230 of file actions.h.

## ◆ SPECENUM_VALUE79NAME

#define SPECENUM_VALUE79NAME "Conquer Extras"

Definition at line 231 of file actions.h.

## ◆ SPECENUM_VALUE7NAME

#define SPECENUM_VALUE7NAME "Steal Gold Escape"

Definition at line 86 of file actions.h.

## ◆ SPECENUM_VALUE8

#define SPECENUM_VALUE8 ACTION_SPY_SABOTAGE_CITY

Definition at line 87 of file actions.h.

## ◆ SPECENUM_VALUE80

#define SPECENUM_VALUE80 ACTION_CONQUER_EXTRAS2

Definition at line 232 of file actions.h.

## ◆ SPECENUM_VALUE80NAME

#define SPECENUM_VALUE80NAME "Conquer Extras 2"

Definition at line 233 of file actions.h.

## ◆ SPECENUM_VALUE81

#define SPECENUM_VALUE81 ACTION_CONQUER_EXTRAS3

Definition at line 234 of file actions.h.

## ◆ SPECENUM_VALUE81NAME

#define SPECENUM_VALUE81NAME "Conquer Extras 3"

Definition at line 235 of file actions.h.

## ◆ SPECENUM_VALUE82

#define SPECENUM_VALUE82 ACTION_CONQUER_EXTRAS4

Definition at line 236 of file actions.h.

## ◆ SPECENUM_VALUE82NAME

#define SPECENUM_VALUE82NAME "Conquer Extras 4"

Definition at line 237 of file actions.h.

## ◆ SPECENUM_VALUE83

#define SPECENUM_VALUE83 ACTION_HUT_ENTER

Definition at line 238 of file actions.h.

## ◆ SPECENUM_VALUE83NAME

#define SPECENUM_VALUE83NAME "Enter Hut"

Definition at line 239 of file actions.h.

## ◆ SPECENUM_VALUE84

#define SPECENUM_VALUE84 ACTION_HUT_ENTER2

Definition at line 240 of file actions.h.

## ◆ SPECENUM_VALUE84NAME

#define SPECENUM_VALUE84NAME "Enter Hut 2"

Definition at line 241 of file actions.h.

## ◆ SPECENUM_VALUE85

#define SPECENUM_VALUE85 ACTION_HUT_ENTER3

Definition at line 242 of file actions.h.

## ◆ SPECENUM_VALUE85NAME

#define SPECENUM_VALUE85NAME "Enter Hut 3"

Definition at line 243 of file actions.h.

## ◆ SPECENUM_VALUE86

#define SPECENUM_VALUE86 ACTION_HUT_ENTER4

Definition at line 244 of file actions.h.

## ◆ SPECENUM_VALUE86NAME

#define SPECENUM_VALUE86NAME "Enter Hut 4"

Definition at line 245 of file actions.h.

## ◆ SPECENUM_VALUE87

#define SPECENUM_VALUE87 ACTION_HUT_FRIGHTEN

Definition at line 246 of file actions.h.

## ◆ SPECENUM_VALUE87NAME

#define SPECENUM_VALUE87NAME "Frighten Hut"

Definition at line 247 of file actions.h.

## ◆ SPECENUM_VALUE88

#define SPECENUM_VALUE88 ACTION_HUT_FRIGHTEN2

Definition at line 248 of file actions.h.

## ◆ SPECENUM_VALUE88NAME

#define SPECENUM_VALUE88NAME "Frighten Hut 2"

Definition at line 249 of file actions.h.

## ◆ SPECENUM_VALUE89

#define SPECENUM_VALUE89 ACTION_HUT_FRIGHTEN3

Definition at line 250 of file actions.h.

## ◆ SPECENUM_VALUE89NAME

#define SPECENUM_VALUE89NAME "Frighten Hut 3"

Definition at line 251 of file actions.h.

## ◆ SPECENUM_VALUE8NAME

#define SPECENUM_VALUE8NAME "Sabotage City"

Definition at line 88 of file actions.h.

## ◆ SPECENUM_VALUE9

#define SPECENUM_VALUE9 ACTION_SPY_SABOTAGE_CITY_ESC

Definition at line 89 of file actions.h.

## ◆ SPECENUM_VALUE90

#define SPECENUM_VALUE90 ACTION_HUT_FRIGHTEN4

Definition at line 252 of file actions.h.

## ◆ SPECENUM_VALUE90NAME

#define SPECENUM_VALUE90NAME "Frighten Hut 4"

Definition at line 253 of file actions.h.

## ◆ SPECENUM_VALUE91

#define SPECENUM_VALUE91 ACTION_HEAL_UNIT

Definition at line 254 of file actions.h.

## ◆ SPECENUM_VALUE91NAME

#define SPECENUM_VALUE91NAME "Heal Unit"

Definition at line 255 of file actions.h.

## ◆ SPECENUM_VALUE92

#define SPECENUM_VALUE92 ACTION_HEAL_UNIT2

Definition at line 256 of file actions.h.

## ◆ SPECENUM_VALUE92NAME

#define SPECENUM_VALUE92NAME "Heal Unit 2"

Definition at line 257 of file actions.h.

## ◆ SPECENUM_VALUE93

#define SPECENUM_VALUE93 ACTION_PARADROP

Definition at line 258 of file actions.h.

## ◆ SPECENUM_VALUE93NAME

#define SPECENUM_VALUE93NAME "Paradrop Unit"

Definition at line 259 of file actions.h.

## ◆ SPECENUM_VALUE94

#define SPECENUM_VALUE94 ACTION_PARADROP_CONQUER

Definition at line 260 of file actions.h.

## ◆ SPECENUM_VALUE94NAME

#define SPECENUM_VALUE94NAME "Paradrop Unit Conquer"

Definition at line 261 of file actions.h.

## ◆ SPECENUM_VALUE95

#define SPECENUM_VALUE95 ACTION_PARADROP_FRIGHTEN

Definition at line 262 of file actions.h.

## ◆ SPECENUM_VALUE95NAME

#define SPECENUM_VALUE95NAME "Paradrop Unit Frighten"

Definition at line 263 of file actions.h.

## ◆ SPECENUM_VALUE96

#define SPECENUM_VALUE96 ACTION_PARADROP_FRIGHTEN_CONQUER

Definition at line 264 of file actions.h.

## ◆ SPECENUM_VALUE96NAME

#define SPECENUM_VALUE96NAME "Paradrop Unit Frighten Conquer"

Definition at line 265 of file actions.h.

## ◆ SPECENUM_VALUE97

#define SPECENUM_VALUE97 ACTION_PARADROP_ENTER

Definition at line 266 of file actions.h.

## ◆ SPECENUM_VALUE97NAME

#define SPECENUM_VALUE97NAME "Paradrop Unit Enter"

Definition at line 267 of file actions.h.

## ◆ SPECENUM_VALUE98

#define SPECENUM_VALUE98 ACTION_PARADROP_ENTER_CONQUER

Definition at line 268 of file actions.h.

## ◆ SPECENUM_VALUE98NAME

#define SPECENUM_VALUE98NAME "Paradrop Unit Enter Conquer"

Definition at line 269 of file actions.h.

## ◆ SPECENUM_VALUE99

#define SPECENUM_VALUE99 ACTION_UNIT_MOVE

Definition at line 270 of file actions.h.

## ◆ SPECENUM_VALUE99NAME

#define SPECENUM_VALUE99NAME "Unit Move"

Definition at line 271 of file actions.h.

## ◆ SPECENUM_VALUE9NAME

#define SPECENUM_VALUE9NAME "Sabotage City Escape"

Definition at line 90 of file actions.h.

## ◆ SPECLIST_TAG [1/2]

#define SPECLIST_TAG action_enabler

Definition at line 452 of file actions.h.

## ◆ SPECLIST_TAG [2/2]

#define SPECLIST_TAG action

Definition at line 452 of file actions.h.

## ◆ SPECLIST_TYPE [1/2]

#define SPECLIST_TYPE struct action_enabler

Definition at line 453 of file actions.h.

## ◆ SPECLIST_TYPE [2/2]

#define SPECLIST_TYPE struct action

Definition at line 453 of file actions.h.

## Function Documentation

## ◆ action_actor_consuming_always_ruleset_var_name()

const char * action_actor_consuming_always_ruleset_var_name | ( | action_id | act | ) |

Return actor consuming always ruleset variable name for the action or NULL if actor consuming always can't be set in the ruleset.

TODO: make actions generic and put actor consuming always in a field of the action.

Definition at line 8899 of file actions.c.

Referenced by load_action_actor_consuming_always(), and save_action_actor_consuming_always().

## ◆ action_actor_utype_hard_reqs_ok()

bool action_actor_utype_hard_reqs_ok | ( | const struct action * | paction,
|  | const struct unit_type * | actor_unittype
| ) |  |

Returns TRUE if the specified unit type can perform the specified action given that an action enabler later will enable it.

This is done by checking the action result's hard requirements. Hard requirements must be TRUE before an action can be done. The reason why is usually that code dealing with the action assumes that the requirements are true. A requirement may also end up here if it can't be expressed in a requirement vector or if its absence makes the action pointless.

Parameters

  paction | the action to check the hard reqs for
  actor_unittype | the unit type that may be able to act

Returns
  TRUE iff the specified unit type can perform the wanted action given that an action enabler later will enable it.

Definition at line 3520 of file actions.c.

Referenced by action_enabler_suggest_improvement(), action_enabler_utype_possible_actor(), action_has_possible_actor_hard_reqs(), expl_act_not_enabl(), and unit_can_act_cache_set().

## ◆ action_auto_perf_by_number()

const struct action_auto_perf * action_auto_perf_by_number | ( | const int | num | ) |

Returns action auto performer rule number num.

Used in action_auto_perf_iterate()

WARNING: If the cause of the returned action performer rule is AAPC_COUNT it means that it is unused.

Definition at line 7369 of file actions.c.

Referenced by save_action_auto_actions(), save_action_auto_uflag_block(), and save_game_ruleset().

## ◆ action_auto_perf_slot_number()

struct action_auto_perf * action_auto_perf_slot_number | ( | const int | num | ) |

Returns action auto performer rule slot number num so it can be filled.

Definition at line 7353 of file actions.c.

Referenced by action_auto_perf_by_number(), handle_ruleset_action_auto(), load_action_post_success_force(), load_ruleset_cities(), load_ruleset_game(), rscompat_postprocess(), and sanity_check_ruleset_data().

## ◆ action_blocked_by_ruleset_var_name()

const char * action_blocked_by_ruleset_var_name | ( | const struct action * | act | ) |

Return action blocked by ruleset variable name for the action or NULL if actor consuming always can't be set in the ruleset.

TODO: make actions generic and put blocked by actions in a field of the action.

Definition at line 9034 of file actions.c.

Referenced by load_action_blocked_by_list(), and save_action_blocked_by().

## ◆ action_by_number()

static struct action * action_by_number | ( | action_id | act_id | ) |

inlinestatic

Return the action with the given id.

Returns NULL if no action with the given id exists.

Definition at line 638 of file actions.h.

Referenced by action_by_rule_name(), action_enabler_possible_actor(), action_enabler_suggest_improvement(), action_enabler_suggest_repair_oblig(), action_enabler_utype_possible_actor(), action_entry(), action_entry(), action_entry(), action_entry_update(), action_entry_update(), action_immune_government(), action_is_blocked_by(), action_is_hostile(), action_list_add_all_by_result(), action_maybe_possible_actor_unit(), action_prob(), action_prob_vs_city_full(), action_prob_vs_units_full(), action_selection_refresh(), action_target_neg_util(), adv_gov_action_immunity_want(), adv_unit_move(), ae_suggest_repair_if_no_oblig(), api_find_action(), api_find_action_type_by_id(), api_methods_action_target_kind(), can_unit_do_activity_targeted_at(), city_gold_worth(), go_act_menu::create(), dai_choose_trade_route(), dai_diplomat_city(), dai_evaluate_tile_for_air_attack(), dai_manage_paratrooper(), dai_unit_move(), dai_upgrade_units(), do_unit_paradrop_to(), enabler_first_self_contradiction(), enabler_tile_tgt_local_diplrel_implies_claimed(), execute_orders(), expl_act_not_enabl(), find_something_to_kill(), fix_enabler_item::fix_enabler_item(), get_caravan_enter_city_trade_bonus(), handle_city_sabotage_list(), handle_ruleset_action(), handle_unit_action_answer(), handle_unit_action_query(), handle_unit_type_upgrade(), helptext_building(), helptext_government(), helptext_unit(), illegal_action(), is_action_possible(), key_unit_action_select_tgt(), load_action_actor_consuming_always(), load_action_kind(), load_action_range(), load_action_range_max(), load_action_ui_name(), load_ruleset_game(), need_war_player_hlp(), pf_danger_map_iterate(), pf_fuel_map_attack_is_possible(), pf_fuel_map_iterate(), pf_normal_map_iterate(), popup_action_selection(), real_menus_init(), real_menus_update(), request_action_details_callback(), rscompat_enabler_add_obligatory_hard_reqs(), rscompat_old_slow_invasions_3_1(), rscompat_postprocess(), ruleset_purge_redundant_reqs_enablers(), ruleset_purge_unused_enablers(), sanity_check_ruleset_data(), save_action_actor_consuming_always(), save_action_auto_actions(), save_action_blocked_by(), save_action_kind(), save_action_max_range(), save_action_range(), save_action_ui_name(), save_bv_actions(), save_game_ruleset(), send_ruleset_actions(), settler_evaluate_improvements(), simple_action_callback(), simple_action_callback(), single_invader(), tai_tile_worker_task_select(), texai_tile_worker_task_select(), unit_activity_targeted_internal(), unit_can_act_cache_set(), unit_order_activity_to_action(), unit_order_list_is_sane(), unit_perform_action(), unit_upgrade_price(), universal_by_number(), universal_kind_values(), universal_value_initial(), update_unit_activity(), upgrade_unit_order_targets(), utype_act_takes_all_mp_cache_set(), utype_act_takes_all_mp_ustate_cache_set(), utype_can_create_extra(), utype_can_do_action_sub_result(), utype_can_remove_extra(), and utype_may_do_escape_action().

## ◆ action_by_rule_name()

struct action * action_by_rule_name | ( | const char * | name | ) |

Return the action with the given name.

Returns NULL if no action with the given name exists.

Definition at line 1708 of file actions.c.

Referenced by api_find_action_by_name(), api_find_action_type_by_name(), tab_enabler::edit_type(), load_ruleset_game(), sg_load_savefile(), and universal_value_from_str().

## ◆ action_creates_extra()

bool action_creates_extra | ( | const struct action * | paction,
|  | const struct extra_type * | pextra
| ) |  |

Returns TRUE iff the specified action can create the specified extra.

Definition at line 2224 of file actions.c.

Referenced by go_act_menu::create(), execute_orders(), helptext_unit(), real_menus_init(), real_menus_update(), unit_order_list_is_sane(), and utype_can_create_extra().

## ◆ action_dice_roll_initial_odds()

int action_dice_roll_initial_odds | ( | const struct action * | paction | ) |

Returns the initial odds of an action not failing its dice roll.

Definition at line 6983 of file actions.c.

Referenced by action_dice_roll_odds(), effect_list_sanity_cb(), and helptext_unit().

## ◆ action_dice_roll_odds()

int action_dice_roll_odds | ( | const struct player * | act_player,
|  | const struct unit * | act_unit,
|  | const struct city * | tgt_city,
|  | const struct player * | tgt_player,
|  | const struct action * | paction
| ) |  |

Returns the odds of an action not failing its dice roll.

Definition at line 7068 of file actions.c.

Referenced by action_failed_dice_roll(), and action_prob_pre_action_dice_roll().

## ◆ action_distance_accepted()

bool action_distance_accepted | ( | const struct action * | action,
|  | const int | distance
| ) |  |

Returns TRUE iff the specified distance between actor and target is within the range acceptable to the specified action.

Definition at line 1844 of file actions.c.

Referenced by is_action_possible().

## ◆ action_distance_inside_max()

bool action_distance_inside_max | ( | const struct action * | action,
|  | const int | distance
| ) |  |

Returns TRUE iff the specified distance between actor and target is sm,aller or equal to the max range accepted by the specified action.

Definition at line 1833 of file actions.c.

Referenced by action_distance_accepted(), expl_act_not_enabl(), and sanity_check_ruleset_data().

## ◆ action_enabler_add()

void action_enabler_add | ( | struct action_enabler * | enabler | ) |

Add an action enabler to the current ruleset.

Definition at line 2442 of file actions.c.

Referenced by tab_enabler::add_now(), tab_enabler::edit_type(), effect_to_enabler(), handle_ruleset_action_enabler(), load_ruleset_game(), rscompat_enabler_add_obligatory_hard_reqs(), rscompat_old_slow_invasions_3_1(), rscompat_postprocess(), and slow_invasion_enablers().

## ◆ action_enabler_copy()

struct action_enabler * action_enabler_copy | ( | const struct action_enabler * | original | ) |

Create a new copy of an existing action enabler.

Definition at line 2427 of file actions.c.

Referenced by fix_enabler_item::fix_enabler_item(), rscompat_enabler_add_obligatory_hard_reqs(), rscompat_postprocess(), and slow_invasion_enablers().

## ◆ action_enabler_free()

void action_enabler_free | ( | struct action_enabler * | enabler | ) |

Free resources allocated for the action enabler.

Definition at line 2415 of file actions.c.

Referenced by actions_free(), and fix_enabler_item::~fix_enabler_item().

## ◆ action_enabler_new()

struct action_enabler * action_enabler_new | ( | void |  | ) |

Create a new action enabler.

Definition at line 2396 of file actions.c.

Referenced by action_enabler_copy(), tab_enabler::add_now(), effect_to_enabler(), handle_ruleset_action_enabler(), load_ruleset_game(), rscompat_old_slow_invasions_3_1(), and rscompat_postprocess().

## ◆ action_enabler_possible_actor()

bool action_enabler_possible_actor | ( | const struct action_enabler * | ae | ) |

Returns TRUE iff the specified action enabler may have an actor that it may be enabled for in the current ruleset. An enabler can't be enabled if no potential actor fulfills both its action's hard requirements and its own actor requirement vector, actor_reqs. Note that the answer may be "no" even if this function returns TRUE. It may just be unable to detect it.

Parameters

  ae | the action enabler to check

Returns
  TRUE if the enabler may be enabled at all

Definition at line 7274 of file actions.c.

Referenced by ruleset_purge_unused_enablers().

## ◆ action_enabler_remove()

bool action_enabler_remove | ( | struct action_enabler * | enabler | ) |

Remove an action enabler from the current ruleset.

Returns TRUE on success.

Definition at line 2459 of file actions.c.

Referenced by tab_enabler::edit_type(), and rscompat_postprocess().

## ◆ action_enabler_suggest_improvement()

struct req_vec_problem * action_enabler_suggest_improvement | ( | const struct action_enabler * | enabler | ) |

Returns a suggestion to improve the specified action enabler or NULL if nothing to improve is found to be needed. It is the responsibility of the caller to free the suggestion when it is done with it. A possible improvement isn't always an error.

Parameters

  enabler | the enabler to improve

Returns
  a suggestion to improve the specified action enabler

Definition at line 2904 of file actions.c.

Referenced by enabler_problem_level(), fix_enabler_item::find_next_problem(), and sanity_check_ruleset_data().

## ◆ action_enabler_suggest_repair()

struct req_vec_problem * action_enabler_suggest_repair | ( | const struct action_enabler * | enabler | ) |

Returns a suggestion to fix the specified action enabler or NULL if no fix is found to be needed. It is the responsibility of the caller to free the suggestion with req_vec_problem_free() when it is done with it.

Definition at line 2838 of file actions.c.

Referenced by action_enabler_suggest_improvement(), enabler_problem_level(), fix_enabler_item::find_next_problem(), rscompat_enabler_add_obligatory_hard_reqs(), and sanity_check_ruleset_data().

## ◆ action_enabler_suggest_repair_oblig()

struct req_vec_problem * action_enabler_suggest_repair_oblig | ( | const struct action_enabler * | enabler | ) |

Returns a suggestion to add an obligatory hard requirement to an action enabler or NULL if no hard obligatory reqs were missing. It is the responsibility of the caller to free the suggestion when it is done with it.

Parameters

  enabler | the action enabler to suggest a fix for.

Returns
  a problem with fix suggestions or NULL if no obligatory hard requirement problems were detected.

Definition at line 2598 of file actions.c.

Referenced by action_enabler_suggest_repair().

## ◆ action_enabler_utype_possible_actor()

bool action_enabler_utype_possible_actor | ( | const struct action_enabler * | ae,
|  | const struct unit_type * | act_utype
| ) |  |

Returns TRUE iff the specified action enabler may be active for an actor of the specified unit type in the current ruleset. Note that the answer may be "no" even if this function returns TRUE. It may just be unable to detect it.

Parameters

  ae | the action enabler to check
  act_utype | the candidate actor unit type

Returns
  TRUE if the enabler may be active for act_utype

Definition at line 7247 of file actions.c.

Referenced by action_enabler_possible_actor().

## ◆ action_enabler_vector_by_number()

struct requirement_vector * action_enabler_vector_by_number | ( | const void * | enabler,
|  | req_vec_num_in_item | number
| ) |  |

Returns a writable pointer to the specified requirement vector in the action enabler or NULL if the action enabler doesn't have a requirement vector with that requirement vector number.

Parameters

  enabler | the action enabler that may own the vector.
  number | the item's requirement vector number.

Returns
  a pointer to the specified requirement vector.

Definition at line 2991 of file actions.c.

Referenced by rscompat_enabler_add_obligatory_hard_reqs(), and fix_enabler_item::vector_getter().

## ◆ action_enabler_vector_by_number_name()

const char * action_enabler_vector_by_number_name | ( | req_vec_num_in_item | vec | ) |

Returns the name of the given requirement vector number n in an action enabler or NULL if enablers don't have a requirement vector with that number.

Parameters

  vec | the requirement vector to name

Returns
  the requirement vector name or NULL.

Definition at line 3015 of file actions.c.

Referenced by rscompat_enabler_add_obligatory_hard_reqs(), and fix_enabler_item::vector_namer().

## ◆ action_enabler_vector_number()

req_vec_num_in_item action_enabler_vector_number | ( | const void * | enabler,
|  | const struct requirement_vector * | vec
| ) |  |

Returns the requirement vector number of the specified requirement vector in the specified action enabler.

Parameters

  enabler | the action enabler that may own the vector.
  vec | the requirement vector to number.

Returns
  the requirement vector number the vector has in this enabler.

Definition at line 2968 of file actions.c.

Referenced by action_enabler_suggest_improvement(), action_enabler_suggest_repair(), ae_suggest_repair_if_no_oblig(), enabler_first_self_contradiction(), and enabler_tile_tgt_local_diplrel_implies_claimed().

## ◆ action_enablers_for_action()

struct action_enabler_list * action_enablers_for_action | ( | action_id | action | ) |

Get all enablers for an action in the current ruleset.

Definition at line 2475 of file actions.c.

Referenced by action_enabled_local(), action_enabler_add(), action_enabler_remove(), action_ever_possible(), action_immune_government(), action_is_in_use(), action_may_happen_unit_on_city(), action_maybe_possible_actor_unit(), action_univs_not_blocking(), adjust_improvement_wants_by_effects(), city_production_caravan_shields_init(), does_nation_block_action(), does_terrain_block_action(), helptext_building(), helptext_unit(), is_action_enabled(), is_target_possible(), is_universal_needed(), tab_misc::refresh_stats(), rscompat_enablers_add_obligatory_hard_reqs(), rscompat_postprocess(), ruleset_purge_redundant_reqs_enablers(), ruleset_purge_unused_enablers(), sanity_check_ruleset_data(), slow_invasion_enablers(), utype_may_act_move_frags(), and utype_may_act_tgt_city_tile().

## ◆ action_ever_possible()

bool action_ever_possible | ( | action_id | action | ) |

Is the action ever possible? Currently just checks that there's any action enablers for the action.

Definition at line 9309 of file actions.c.

Referenced by create_unit_menu(), dai_upgrade_units(), present_unit_callback(), and units_report_selection_callback().

## ◆ action_get_act_time()

int action_get_act_time | ( | const struct action * | paction,
|  | const struct unit * | actor_unit,
|  | const struct tile * | tgt_tile,
|  | const struct extra_type * | tgt_extra
| ) |  |

Returns the unit activity time (work) this action takes (requires) or ACT_TIME_INSTANTANEOUS if the action happens at once.

See update_unit_activity() and tile_activity_time()

Definition at line 2173 of file actions.c.

## ◆ action_get_actor_kind()

enum action_actor_kind action_get_actor_kind | ( | const struct action * | paction | ) |

Get the actor kind of an action.

Definition at line 1730 of file actions.c.

Referenced by action_enabler_possible_actor(), action_enabler_suggest_improvement(), action_enabler_utype_possible_actor(), action_get_role(), action_has_possible_actor_hard_reqs(), action_is_blocked_by(), api_edit_perform_action_unit_vs_city(), api_edit_perform_action_unit_vs_city_impr(), api_edit_perform_action_unit_vs_city_tech(), api_edit_perform_action_unit_vs_self(), api_edit_perform_action_unit_vs_tile(), api_edit_perform_action_unit_vs_tile_extra(), api_edit_perform_action_unit_vs_unit(), auto_settlers_speculate_can_act_at(), dai_action_choose_sub_tgt_unit_vs_city(), dai_action_value_unit_vs_city(), dai_diplomat_city(), effect_list_sanity_cb(), request_action_details_callback(), simple_action_callback(), simple_action_callback(), utype_is_moved_to_tgt_by_action(), utype_is_unmoved_by_action(), and utype_may_do_escape_action().

## ◆ action_get_battle_kind()

enum action_battle_kind action_get_battle_kind | ( | const struct action * | pact | ) |

Get the battle kind that can prevent an action.

Definition at line 1762 of file actions.c.

Referenced by action_prob_battle_then_dice_roll(), and helptext_unit().

## ◆ action_get_role()

int action_get_role | ( | const struct action * | paction | ) |

Get the unit type role corresponding to the ability to do the specified action.

Definition at line 2123 of file actions.c.

## ◆ action_get_sub_target_kind()

enum action_sub_target_kind action_get_sub_target_kind | ( | const struct action * | paction | ) |

Get the sub target kind of an action.

Definition at line 1751 of file actions.c.

Referenced by action_sub_target_id_for_action(), go_act_menu::create(), execute_orders(), helptext_unit(), real_menus_init(), real_menus_update(), simple_action_callback(), simple_action_callback(), unit_goto_and_callback(), and unit_goto_and_callback().

## ◆ action_get_target_kind()

enum action_target_kind action_get_target_kind | ( | const struct action * | paction | ) |

Get the target kind of an action.

Definition at line 1740 of file actions.c.

Referenced by action_is_blocked_by(), action_prob_unit_vs_tgt(), action_target_neg_util(), api_edit_perform_action_unit_vs_city(), api_edit_perform_action_unit_vs_city_impr(), api_edit_perform_action_unit_vs_city_tech(), api_edit_perform_action_unit_vs_self(), api_edit_perform_action_unit_vs_tile(), api_edit_perform_action_unit_vs_tile_extra(), api_edit_perform_action_unit_vs_unit(), api_methods_action_target_kind(), auto_settlers_speculate_can_act_at(), blocked_find_target_city(), blocked_find_target_tile(), dai_action_choose_sub_tgt_unit_vs_city(), dai_action_value_unit_vs_city(), dai_diplomat_city(), diplomat_infiltrate_tile(), effect_list_sanity_cb(), enabler_first_self_contradiction(), enabler_tile_tgt_local_diplrel_implies_claimed(), expl_act_not_enabl(), get_act_sel_action_custom_text(), helptext_unit(), is_action_possible(), need_war_player_hlp(), notify_actor_caught(), notify_actor_success(), notify_victim_caught(), notify_victim_success(), request_action_details_callback(), simple_action_callback(), simple_action_callback(), tai_tile_worker_task_select(), texai_tile_worker_task_select(), and unit_perform_action().

## ◆ action_get_ui_name_mnemonic()

const char * action_get_ui_name_mnemonic | ( | action_id | act_id,
|  | const char * | mnemonic
| ) |  |

Get the action name with a mnemonic ready to display in the UI.

Definition at line 1918 of file actions.c.

Referenced by real_menus_init(), and real_menus_update().

## ◆ action_has_complex_target()

bool action_has_complex_target | ( | const struct action * | paction | ) |

Returns TRUE iff the specified action allows the player to provide details in addition to actor and target. Returns FALSE if the action doesn't support any additional details.

Definition at line 1792 of file actions.c.

## ◆ action_id_exists()

bool action_id_exists | ( | const action_id | act_id | ) |

Returns TRUE iff the specified action ID refers to a valid action.

Definition at line 1697 of file actions.c.

Referenced by action_by_rule_name(), action_enabler_add(), action_enabler_remove(), action_enabler_suggest_repair_oblig(), action_enablers_for_action(), action_id_is_rare_pop_up(), action_mp_full_makes_legal(), action_prepare_ui_name(), action_target_neg_util(), tab_enabler::add_now(), ae_suggest_repair_if_no_oblig(), do_map_click(), does_nation_block_action(), does_terrain_block_action(), execute_orders(), handle_ruleset_action(), handle_ruleset_action_enabler(), handle_unit_action_answer(), key_unit_action_select_tgt(), request_unit_goto(), send_goto_route(), sg_load_player_unit(), unit_order_list_is_sane(), unit_perform_action(), unpackage_unit(), and utype_may_act_move_frags().

## ◆ action_id_is_rare_pop_up()

bool action_id_is_rare_pop_up | ( | action_id | act_id | ) |

Returns TRUE iff a unit's ability to perform this action will pop up the action selection dialog before the player asks for it only in exceptional cases.

An example of an exceptional case is when the player tries to move a unit to a tile it can't move to but can perform this action to.

Definition at line 1820 of file actions.c.

Referenced by action_tgt_tile(), may_unit_act_vs_city(), may_unit_act_vs_tile_extra(), and may_unit_act_vs_unit().

## ◆ action_id_name_translation()

const char * action_id_name_translation | ( | action_id | act_id | ) |

Get the action name used when displaying the action in the UI. Nothing is added to the UI name.

Definition at line 1910 of file actions.c.

Referenced by action_name_translation(), api_methods_action_name_translation(), unit_item::create_actions(), create_unit_menu(), create_units_order_widgets(), execute_orders(), helptext_building(), helptext_government(), helptext_unit(), illegal_action(), illegal_action_msg(), mr_menu::menus_sensitive(), popup_newcity_dialog(), present_unit_callback(), real_menus_update(), request_unit_goto(), mr_menu::setup_menus(), sg_load_player_unit(), and units_orders_city_dlg_callback().

## ◆ action_id_rule_name()

const char * action_id_rule_name | ( | action_id | act_id | ) |

Get the rule name of the action.

Definition at line 1899 of file actions.c.

Referenced by action_prepare_ui_name(), action_prob_self_full(), action_prob_vs_city_full(), action_prob_vs_extras_full(), action_prob_vs_tile_full(), action_prob_vs_unit_full(), action_prob_vs_units_full(), action_rule_name(), api_methods_action_rule_name(), handle_unit_orders(), is_action_enabled_unit_on_city_full(), is_action_enabled_unit_on_extras_full(), is_action_enabled_unit_on_self_full(), is_action_enabled_unit_on_tile_full(), is_action_enabled_unit_on_unit_full(), is_action_enabled_unit_on_units_full(), is_action_possible_on_city(), is_universal_needed(), menu_unit_goto_and_add_accel(), sanity_check_ruleset_data(), save_game_ruleset(), sg_save_savefile(), tab_enabler::tab_enabler(), unit_can_act_cache_set(), and unit_order_list_is_sane().

## ◆ action_immune_government()

bool action_immune_government | ( | struct government * | gov,
|  | action_id | act
| ) |  |

Will a player with the government gov be immune to the action act?

Definition at line 7105 of file actions.c.

Referenced by adv_gov_action_immunity_want(), and helptext_government().

## ◆ action_is_blocked_by()

struct action * action_is_blocked_by | ( | const struct action * | act,
|  | const struct unit * | actor_unit,
|  | const struct tile * | target_tile_arg,
|  | const struct city * | target_city_arg,
|  | const struct unit * | target_unit
| ) |  |

Returns the action that blocks the specified action or NULL if the specified action isn't blocked.

An action that can block another blocks when it is forced and possible.

Definition at line 3214 of file actions.c.

Referenced by action_prob_vs_city_full(), action_prob_vs_units_full(), expl_act_not_enabl(), and is_action_possible().

## ◆ action_is_in_use()

bool action_is_in_use | ( | struct action * | paction | ) |

Returns TRUE if the specified action may be enabled in the current ruleset.

Parameters

  paction | the action to check if is in use.

Returns
  TRUE if the action could be enabled in the current ruleset.

Definition at line 7330 of file actions.c.

Referenced by action_immune_government(), helptext_building(), helptext_unit(), ruleset_purge_unused_enablers(), save_action_actor_consuming_always(), save_action_auto_actions(), save_action_blocked_by(), save_action_kind(), save_action_post_success_force(), save_bv_actions(), and universal_never_there().

## ◆ action_list_add_all_by_result()

void action_list_add_all_by_result | ( | action_id * | act_list,
|  | int * | position,
|  | enum action_result | result
| ) |  |

Add all actions with the specified result to the specified action list starting at the specified position.

Parameters

  act_list | the list to add the actions to
  position | index in act_list that is updated as action are added
  result | all actions with this result are added.

Definition at line 7418 of file actions.c.

Referenced by adv_data_phase_init(), auto_settlers_ruleset_init(), dai_upgrade_units(), helptext_building(), and rscompat_postprocess().

## ◆ action_list_by_activity()

struct action_list * action_list_by_activity | ( | enum unit_activity | activity | ) |

Returns action list by activity.

Definition at line 9362 of file actions.c.

Referenced by unit_activity_handling_targeted().

## ◆ action_list_by_result()

struct action_list * action_list_by_result | ( | enum action_result | result | ) |

Returns action list by result.

Definition at line 9352 of file actions.c.

## ◆ action_list_end()

void action_list_end | ( | action_id * | act_list,
|  | int | size
| ) |  |

Terminate an action list of the specified size.

Parameters

  act_list | the list to end
  size | the number of elements to include in the list

Definition at line 7401 of file actions.c.

Referenced by adv_data_phase_init(), auto_settlers_ruleset_init(), dai_upgrade_units(), helptext_building(), rscompat_postprocess(), and save_action_auto_actions().

## ◆ action_max_range_default()

int action_max_range_default | ( | enum action_result | result | ) |

Return default max range for the action if it is ruleset settable.

Definition at line 8312 of file actions.c.

Referenced by load_action_range_max(), and save_action_max_range().

## ◆ action_max_range_ruleset_var_name()

const char * action_max_range_ruleset_var_name | ( | int | act | ) |

Return max range ruleset variable name for the action or NULL if max range can't be set in the ruleset.

TODO: make actions generic and put max_range in a field of the action.

Definition at line 8177 of file actions.c.

Referenced by load_action_range_max(), save_action_max_range(), and save_action_range().

## ◆ action_maybe_possible_actor_unit()

bool action_maybe_possible_actor_unit | ( | const struct civ_map * | nmap,
|  | const action_id | act_id,
|  | const struct unit * | actor_unit
| ) |  |

Returns TRUE if the wanted action (as far as the player knows) can be performed right now by the specified actor unit if an approriate target is provided.

Definition at line 7169 of file actions.c.

Referenced by act_prob_unseen_target(), can_unit_paradrop(), and handle_unit_get_actions().

## ◆ action_min_range_default()

int action_min_range_default | ( | enum action_result | result | ) |

Return default min range for the action if it is ruleset settable.

Definition at line 8095 of file actions.c.

Referenced by load_action_range(), and save_action_range().

## ◆ action_min_range_ruleset_var_name()

const char * action_min_range_ruleset_var_name | ( | int | act | ) |

Return min range ruleset variable name for the action or NULL if min range can't be set in the ruleset.

TODO: make actions generic and put min_range in a field of the action.

Definition at line 7966 of file actions.c.

Referenced by load_action_range(), and save_action_range().

## ◆ action_mp_full_makes_legal()

bool action_mp_full_makes_legal | ( | const struct unit * | actor,
|  | const action_id | act_id
| ) |  |

Returns TRUE if the specified action can't be done now but would have been legal if the unit had full movement.

Definition at line 7224 of file actions.c.

Referenced by execute_orders(), and expl_act_not_enabl().

## ◆ action_name_translation()

const char * action_name_translation | ( | const struct action * | action | ) |

Get the action name used when displaying the action in the UI. Nothing is added to the UI name.

This always returns the same static string, just modified according to the call. Copy the result if you want it to remain valid over another call to this function.

Definition at line 1890 of file actions.c.

Referenced by go_act_menu::create(), do_paradrop(), do_unit_strike_city_building(), do_unit_strike_city_production(), helptext_unit(), illegal_action_pay_price(), key_unit_action_select_tgt(), notify_actor_caught(), notify_actor_success(), notify_global_caught(), notify_global_success(), notify_victim_caught(), notify_victim_success(), req_text_insert(), spy_poison(), spy_spread_plague(), unit_do_help_build(), and universal_name_translation().

## ◆ action_number()

int action_number | ( | const struct action * | action | ) |

Get the universal number of the action.

Definition at line 1868 of file actions.c.

Referenced by action_blocked_by_ruleset_var_name(), action_post_success_forced_ruleset_var_name(), action_would_be_blocked_by(), adv_unit_move(), are_universals_equal(), dai_diplomat_city(), dai_unit_move(), is_action_req_active(), unit_activity_handling_targeted(), unit_order_activity_to_action(), and universal_number().

## ◆ action_post_success_forced_ruleset_var_name()

const char * action_post_success_forced_ruleset_var_name | ( | const struct action * | act | ) |

Return action post success forced action ruleset variable name for the action or NULL if it can't be set in the ruleset.

Definition at line 9176 of file actions.c.

Referenced by load_action_post_success_force(), and save_action_post_success_force().

## ◆ action_prepare_ui_name()

const char * action_prepare_ui_name | ( | action_id | act_id,
|  | const char * | mnemonic,
|  | const struct act_prob | prob,
|  | const char * | custom
| ) |  |

Get the UI name ready to show the action in the UI. It is possible to add a client specific mnemonic; it is assumed that if the mnemonic appears in the action name it can be escaped by doubling. Success probability information is interpreted and added to the text. A custom text can be inserted before the probability information.

The returned string is in statically allocated astring, and thus this function is not thread-safe.

Definition at line 1972 of file actions.c.

Referenced by action_entry(), action_entry(), action_entry(), action_entry_update(), action_entry_update(), action_get_ui_name_mnemonic(), and action_id_name_translation().

## ◆ action_prob_and()

struct act_prob action_prob_and | ( | const struct act_prob * | ap1,
|  | const struct act_prob * | ap2
| ) |  |

Returns ap1 and ap2 - as in both ap1 and ap2 happening. Said in math that is: P(A) * P(B)

Definition at line 6845 of file actions.c.

Referenced by action_prob_battle_then_dice_roll().

## ◆ action_prob_certain()

bool action_prob_certain | ( | const struct act_prob | probability | ) |

Returns TRUE iff the given action probability is certain that its action is possible.

Definition at line 6717 of file actions.c.

## ◆ action_prob_cmp_pessimist()

int action_prob_cmp_pessimist | ( | const struct act_prob | ap1,
|  | const struct act_prob | ap2
| ) |  |

Compare action probabilities. Prioritize the lowest possible value.

Definition at line 6767 of file actions.c.

Referenced by compare_units().

## ◆ action_prob_explain()

const char * action_prob_explain | ( | const struct act_prob | prob | ) |

Explain an action probability in a way suitable for a tool tip for the button that starts it.

Returns
  an explanation of what an action probability means

The returned string is in statically allocated astring, and thus this function is not thread-safe.

Definition at line 2083 of file actions.c.

Referenced by act_sel_action_tool_tip().

## ◆ action_prob_fall_back()

struct act_prob action_prob_fall_back | ( | const struct act_prob * | ap1,
|  | const struct act_prob * | ap2
| ) |  |

Returns ap1 with ap2 as fall back in cases where ap1 doesn't happen. Said in math that is: P(A) + P(A') * P(B)

This is useful to calculate the probability of doing action A or, when A is impossible, falling back to doing action B.

Definition at line 6915 of file actions.c.

Referenced by action_auto_perf_unit_prob().

## ◆ action_prob_new_certain()

struct act_prob action_prob_new_certain | ( | void |  | ) |

Returns the certain action probability.

Definition at line 6666 of file actions.c.

## ◆ action_prob_new_impossible()

struct act_prob action_prob_new_impossible | ( | void |  | ) |

Returns the impossible action probability.

Definition at line 6656 of file actions.c.

## ◆ action_prob_new_not_impl()

struct act_prob action_prob_new_not_impl | ( | void |  | ) |

Returns the "not implemented" action probability.

Definition at line 6686 of file actions.c.

## ◆ action_prob_new_not_relevant()

struct act_prob action_prob_new_not_relevant | ( | void |  | ) |

Returns the n/a action probability.

Definition at line 6676 of file actions.c.

## ◆ action_prob_new_unknown()

struct act_prob action_prob_new_unknown | ( | void |  | ) |

Returns the "user don't know" action probability.

Definition at line 6696 of file actions.c.

## ◆ action_prob_possible()

bool action_prob_possible | ( | const struct act_prob | probability | ) |

Returns TRUE iff the given action probability belongs to an action that may be possible.

Definition at line 6707 of file actions.c.

Referenced by action_entry(), action_entry(), action_entry(), action_entry_update(), action_entry_update(), action_prob_vs_units_full(), action_selection_refresh(), action_sub_target_id_for_action(), action_tgt_tile(), auto_attack_act(), auto_settlers_speculate_can_act_at(), can_unit_alight_or_be_unloaded(), can_unit_change_homecity_to(), create_advances_list(), create_improvements_list(), dai_diplomat_bribe_nearby(), dai_diplomat_city(), dai_manage_paratrooper(), do_disband_alternative(), do_unit_paradrop_to(), execute_orders(), get_act_sel_action_custom_text(), get_discounted_reward(), handle_city_name_suggestion_req(), handle_unit_actions(), handle_unit_get_actions(), illegal_action(), may_unit_act_vs_city(), may_unit_act_vs_tile_extra(), may_unit_act_vs_unit(), popup_action_selection(), popup_sabotage_dialog(), popup_sabotage_dialog(), request_unit_load(), settler_evaluate_improvements(), spy_steal_popup_shared(), spy_steal_shared(), tai_tile_worker_task_select(), texai_tile_worker_task_select(), unit_can_add_or_build_city(), unit_can_airlift_to(), unit_can_help_build_wonder_here(), and unit_survive_autoattack().

## ◆ action_prob_self()

struct act_prob action_prob_self | ( | const struct unit * | actor_unit,
|  | const action_id | act_id
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on itself.

Definition at line 6380 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), do_disband_alternative(), execute_orders(), and handle_unit_get_actions().

## ◆ action_prob_to_0_to_1_pessimist()

double action_prob_to_0_to_1_pessimist | ( | const struct act_prob | ap | ) |

Returns double in the range [0-1] representing the minimum of the given action probability.

Definition at line 6818 of file actions.c.

Referenced by unit_survive_autoattack().

## ◆ action_prob_unit_vs_tgt()

struct act_prob action_prob_unit_vs_tgt | ( | const struct action * | paction,
|  | const struct unit * | act_unit,
|  | const struct city * | tgt_city,
|  | const struct unit * | tgt_unit,
|  | const struct tile * | tgt_tile,
|  | const struct extra_type * | extra_tgt
| ) |  |

Returns the actor unit's probability of successfully performing the specified action against the action specific target.

Parameters

  paction | the action to perform
  act_unit | the actor unit
  tgt_city | the target for city targeted actions
  tgt_unit | the target for unit targeted actions
  tgt_tile | the target for tile and unit stack targeted actions
  extra_tgt | the target for extra sub targeted actions

Returns
  the action probability of performing the action

Definition at line 6402 of file actions.c.

Referenced by dai_manage_paratrooper(), do_unit_paradrop_to(), and illegal_action().

## ◆ action_prob_vs_city()

struct act_prob action_prob_vs_city | ( | const struct civ_map * | nmap,
|  | const struct unit * | actor_unit,
|  | const action_id | act_id,
|  | const struct city * | target_city
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on the target city.

Definition at line 5870 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), can_unit_change_homecity_to(), dai_diplomat_city(), do_disband_alternative(), execute_orders(), handle_unit_get_actions(), may_unit_act_vs_city(), unit_can_add_or_build_city(), unit_can_airlift_to(), and unit_can_help_build_wonder_here().

## ◆ action_prob_vs_extras()

struct act_prob action_prob_vs_extras | ( | const struct unit * | actor_unit,
|  | const action_id | act_id,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on the extras at the target tile.

Definition at line 6309 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), action_tgt_tile(), do_disband_alternative(), execute_orders(), handle_unit_get_actions(), and may_unit_act_vs_tile_extra().

## ◆ action_prob_vs_tile()

struct act_prob action_prob_vs_tile | ( | const struct unit * | actor_unit,
|  | const action_id | act_id,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on the target tile.

Definition at line 6225 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), action_sub_target_id_for_action(), action_tgt_tile(), do_disband_alternative(), execute_orders(), handle_city_name_suggestion_req(), handle_unit_get_actions(), may_unit_act_vs_tile_extra(), and unit_can_add_or_build_city().

## ◆ action_prob_vs_unit()

struct act_prob action_prob_vs_unit | ( | const struct civ_map * | nmap,
|  | const struct unit * | actor_unit,
|  | const action_id | act_id,
|  | const struct unit * | target_unit
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on the target unit.

Definition at line 5953 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), can_unit_alight_or_be_unloaded(), dai_diplomat_bribe_nearby(), do_disband_alternative(), execute_orders(), handle_unit_get_actions(), may_unit_act_vs_unit(), and request_unit_load().

## ◆ action_prob_vs_units()

struct act_prob action_prob_vs_units | ( | const struct unit * | actor_unit,
|  | const action_id | act_id,
|  | const struct tile * | target_tile
| ) |  |

Get the actor unit's probability of successfully performing the chosen action on all units at the target tile.

Definition at line 6141 of file actions.c.

Referenced by action_auto_perf_unit_prob(), action_prob_unit_vs_tgt(), action_tgt_tile(), do_disband_alternative(), execute_orders(), and handle_unit_get_actions().

## ◆ action_removes_extra()

bool action_removes_extra | ( | const struct action * | paction,
|  | const struct extra_type * | pextra
| ) |  |

Returns TRUE iff the specified action can remove the specified extra.

Definition at line 2312 of file actions.c.

Referenced by go_act_menu::create(), execute_orders(), helptext_unit(), real_menus_init(), real_menus_update(), unit_order_list_is_sane(), and utype_can_remove_extra().

## ◆ action_requires_details()

bool action_requires_details | ( | const struct action * | paction | ) |

Returns TRUE iff the specified action REQUIRES the player to provide details in addition to actor and target. Returns FALSE if the action doesn't support any additional details or if they can be set by Freeciv it self.

Definition at line 1805 of file actions.c.

## ◆ action_result_legal_target_kind()

bool action_result_legal_target_kind | ( | enum action_result | result,
|  | enum action_target_kind | tgt_kind
| ) |  |

Returns TRUE iff the specified action result works with the specified action target kind.

Definition at line 8613 of file actions.c.

Referenced by sanity_check_ruleset_data().

## ◆ action_rule_name()

const char * action_rule_name | ( | const struct action * | action | ) |

Get the rule name of the action.

Definition at line 1876 of file actions.c.

Referenced by action_enabler_suggest_improvement(), action_get_role(), action_new(), ae_suggest_repair_if_no_oblig(), autoadjust_ruleset_data(), blocked_find_target_city(), blocked_find_target_tile(), dai_diplomat_city(), enabler_first_self_contradiction(), enabler_tile_tgt_local_diplrel_implies_claimed(), execute_orders(), fix_enabler_item::fix_enabler_item(), paratroopers_mr_sub_to_effect(), tab_enabler::refresh(), rscompat_enabler_add_obligatory_hard_reqs(), rscompat_postprocess(), ruleset_purge_redundant_reqs_enablers(), ruleset_purge_unused_enablers(), sanity_check_ruleset_data(), save_action_blocked_by(), slow_invasion_effects(), universal_kind_values(), universal_rule_name(), tab_enabler::update_enabler_info(), utype_act_takes_all_mp_cache_set(), and utype_act_takes_all_mp_ustate_cache_set().

## ◆ action_speculate_unit_on_city()

struct act_prob action_speculate_unit_on_city | ( | const action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | const bool | omniscient_cheat,
|  | const struct city * | target
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action on the target city given the specified game state changes.

Definition at line 6459 of file actions.c.

Referenced by auto_settlers_speculate_can_act_at(), and get_discounted_reward().

## ◆ action_speculate_unit_on_extras()

struct act_prob action_speculate_unit_on_extras | ( | action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | bool | omniscient_cheat,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action to the extras at the target tile (and, if specified, specific extra) given the specified game state changes.

Definition at line 6594 of file actions.c.

Referenced by auto_settlers_speculate_can_act_at().

## ◆ action_speculate_unit_on_self()

struct act_prob action_speculate_unit_on_self | ( | action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | bool | omniscient_cheat
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action on itself given the specified game state changes.

Definition at line 6628 of file actions.c.

Referenced by auto_settlers_speculate_can_act_at().

## ◆ action_speculate_unit_on_tile()

struct act_prob action_speculate_unit_on_tile | ( | action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | bool | omniscient_cheat,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action on the target tile (and, if specified, extra) given the specified game state changes.

Definition at line 6560 of file actions.c.

Referenced by auto_settlers_speculate_can_act_at(), settler_evaluate_improvements(), tai_tile_worker_task_select(), and texai_tile_worker_task_select().

## ◆ action_speculate_unit_on_unit()

struct act_prob action_speculate_unit_on_unit | ( | action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | bool | omniscient_cheat,
|  | const struct unit * | target
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action on the target unit given the specified game state changes.

Definition at line 6494 of file actions.c.

## ◆ action_speculate_unit_on_units()

struct act_prob action_speculate_unit_on_units | ( | action_id | act_id,
|  | const struct unit * | actor,
|  | const struct city * | actor_home,
|  | const struct tile * | actor_tile,
|  | bool | omniscient_cheat,
|  | const struct tile * | target
| ) |  |

Returns a speculation about the actor unit's probability of successfully performing the chosen action on the target unit stack given the specified game state changes.

Definition at line 6527 of file actions.c.

Referenced by auto_settlers_speculate_can_act_at().

## ◆ action_target_kind_default()

enum action_target_kind action_target_kind_default | ( | enum action_result | result | ) |

Return default target kind for the action with the specified result.

Definition at line 8528 of file actions.c.

Referenced by action_new(), and load_action_kind().

## ◆ action_target_kind_help()

const char * action_target_kind_help | ( | enum action_target_kind | kind | ) |

Return description of the action target kind suitable to use in the helptext.

Definition at line 9342 of file actions.c.

Referenced by helptext_government(), and helptext_unit().

## ◆ action_target_kind_ruleset_var_name()

const char * action_target_kind_ruleset_var_name | ( | int | act | ) |

Return target kind ruleset variable name for the action or NULL if target kind can't be set in the ruleset.

TODO: make actions generic and put target_kind in a field of the action.

Definition at line 8398 of file actions.c.

Referenced by load_action_kind(), and save_action_kind().

## ◆ action_ui_name_default()

const char * action_ui_name_default | ( | int | act | ) |

Return default ui_name for the action

Definition at line 7664 of file actions.c.

Referenced by load_action_ui_name(), and save_action_ui_name().

## ◆ action_ui_name_ruleset_var_name()

const char * action_ui_name_ruleset_var_name | ( | int | act | ) |

Return ui_name ruleset variable name for the action.

TODO: make actions generic and put ui_name in a field of the action.

Definition at line 7438 of file actions.c.

Referenced by load_ruleset_game(), and save_game_ruleset().

## ◆ action_univs_not_blocking()

bool action_univs_not_blocking | ( | const struct action * | paction,
|  | struct universal * | actor_uni,
|  | struct universal * | target_uni
| ) |  |

Is there any action enablers of the given type not blocked by universals?

Definition at line 7377 of file actions.c.

## ◆ action_would_be_blocked_by()

bool action_would_be_blocked_by | ( | const struct action * | blocked,
|  | const struct action * | blocker
| ) |  |

Returns TRUE iff blocked will be illegal if blocker is legal.

Definition at line 1856 of file actions.c.

Referenced by action_is_blocked_by(), autoadjust_ruleset_data(), and helptext_unit().

## ◆ actions_are_ready()

bool actions_are_ready | ( | void |  | ) |

Returns TRUE iff the actions are initialized.

Doesn't care about action enablers.

Definition at line 1583 of file actions.c.

Referenced by action_prepare_ui_name(), and go_act_menu::update().

## ◆ actions_free()

void actions_free | ( | void |  | ) |

Free the actions and the action enablers.

Definition at line 1530 of file actions.c.

Referenced by game_ruleset_free().

## ◆ actions_init()

void actions_init | ( | void |  | ) |

Initialize the actions and the action enablers.

Definition at line 1460 of file actions.c.

Referenced by game_ruleset_init().

## ◆ actions_rs_pre_san_gen()

void actions_rs_pre_san_gen | ( | void |  | ) |

Generate action related data based on the currently loaded ruleset. Done before ruleset sanity checking and ruleset compatibility post processing.

Definition at line 1520 of file actions.c.

Referenced by handle_rulesets_ready(), and load_rulesetdir().

## ◆ actres_get_activity()

enum unit_activity actres_get_activity | ( | enum action_result | result | ) |

Returns the unit activity this action may cause or ACTIVITY_LAST if the action doesn't result in a unit activity.

Definition at line 2136 of file actions.c.

Referenced by action_get_act_time(), action_new(), action_sub_target_id_for_action(), do_action_activity(), do_action_activity_targeted(), is_extra_caused_by_action(), is_extra_removed_by_action(), settler_evaluate_improvements(), tai_tile_worker_task_select(), texai_tile_worker_task_select(), unit_order_activity_to_action(), and unit_perform_action().

## ◆ are_action_probabilitys_equal()

bool are_action_probabilitys_equal | ( | const struct act_prob * | ap1,
|  | const struct act_prob * | ap2
| ) |  |

Returns TRUE iff ap1 and ap2 are equal.

Definition at line 6758 of file actions.c.

Referenced by action_prob_and(), action_prob_fall_back(), send_packet_unit_actions_100(), and send_packet_unit_actions_101().

## ◆ gen_action_name_update_cb()

const char * gen_action_name_update_cb | ( | const char * | old_name | ) |

Specenum callback to update old enum names to current ones.

Definition at line 9317 of file actions.c.

Referenced by action_by_rule_name().

## ◆ is_action_enabled_unit_on_city()

bool is_action_enabled_unit_on_city | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit,
|  | const struct city * | target_city
| ) |  |

Returns TRUE if actor_unit can do wanted_action to target_city as far as action enablers are concerned.

See note in is_action_enabled() for why the action may still be disabled.

Definition at line 4755 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), api_edit_perform_action_unit_vs_city(), api_edit_perform_action_unit_vs_city_impr(), api_edit_perform_action_unit_vs_city_tech(), dai_caravan_goto(), dai_manage_caravan(), dai_unit_attack(), handle_unit_action_query(), handle_unit_type_upgrade(), unit_can_airlift_to(), and unit_do_disband_trad().

## ◆ is_action_enabled_unit_on_extras()

bool is_action_enabled_unit_on_extras | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Returns TRUE if actor_unit can do wanted_action to the extras at target_tile as far as action enablers are concerned.

See note in is_action_enabled() for why the action may still be disabled.

Definition at line 5073 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), api_edit_perform_action_unit_vs_tile(), api_edit_perform_action_unit_vs_tile_extra(), and dai_unit_attack().

## ◆ is_action_enabled_unit_on_self()

bool is_action_enabled_unit_on_self | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit
| ) |  |

Returns TRUE if actor_unit can do wanted_action to itself as far as action enablers are concerned.

See note in is_action_enabled() for why the action still may be disabled.

Definition at line 5145 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), api_edit_perform_action_unit_vs_self(), can_unit_do_activity_targeted_at(), and unit_do_disband_trad().

## ◆ is_action_enabled_unit_on_tile()

bool is_action_enabled_unit_on_tile | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit,
|  | const struct tile * | target_tile,
|  | const struct extra_type * | target_extra
| ) |  |

Returns TRUE if actor_unit can do wanted_action to the target_tile as far as action enablers are concerned.

See note in is_action_enabled() for why the action may still be disabled.

Definition at line 4996 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), adv_unit_move(), api_edit_perform_action_unit_vs_tile(), api_edit_perform_action_unit_vs_tile_extra(), can_unit_do_activity_targeted_at(), dai_manage_paratrooper(), dai_unit_attack(), dai_unit_move(), and unit_move_handling().

## ◆ is_action_enabled_unit_on_unit()

bool is_action_enabled_unit_on_unit | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit,
|  | const struct unit * | target_unit
| ) |  |

Returns TRUE if actor_unit can do wanted_action to target_unit as far as action enablers are concerned.

See note in is_action_enabled() for why the action may still be disabled.

Definition at line 4832 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), adv_unit_move(), api_edit_perform_action_unit_vs_unit(), can_unit_alight_or_be_unloaded(), dai_diplomat_bribe_nearby(), dai_hunter_try_launch(), dai_unit_attack(), dai_unit_move(), handle_unit_action_query(), unit_move_handling(), and unleash_barbarians().

## ◆ is_action_enabled_unit_on_units()

bool is_action_enabled_unit_on_units | ( | const struct civ_map * | nmap,
|  | const action_id | wanted_action,
|  | const struct unit * | actor_unit,
|  | const struct tile * | target_tile
| ) |  |

Returns TRUE if actor_unit can do wanted_action to all units on the target_tile as far as action enablers are concerned.

See note in is_action_enabled() for why the action may still be disabled.

Definition at line 4920 of file actions.c.

Referenced by action_auto_perf_unit_do(), action_auto_perf_unit_prob(), action_is_blocked_by(), api_edit_perform_action_unit_vs_tile(), api_edit_perform_action_unit_vs_tile_extra(), and dai_unit_attack().

## ◆ is_action_possible_on_city()

bool is_action_possible_on_city | ( | action_id | act_id,
|  | const struct player * | actor_player,
|  | const struct city * | target_city
| ) |  |

Returns TRUE if the wanted action can be done to the target city.

Definition at line 7146 of file actions.c.

Referenced by adjust_improvement_wants_by_effects(), dai_choose_diplomat_offensive(), find_city_to_diplomat(), and impr_protects_vs_actions().

## Variable Documentation

## ◆ _actions

struct action** _actions

extern

Definition at line 97 of file actions.c.

Referenced by action_by_number().