Feature #804 ยป 0014-Generate-enum-action_result-by-generate_enums.py.patch
ai/default/daicity.c | ||
---|---|---|
case ACTRES_TELEPORT_CONQUER:
|
||
case ACTRES_HOMELESS:
|
||
case ACTRES_ENABLER_CHECK:
|
||
case ACTRES_UNUSED_1:
|
||
fc_assert_msg(action_id_get_target_kind(act_id) == ATK_CITY,
|
||
"Action not aimed at cities");
|
||
break;
|
common/actions.c | ||
---|---|---|
* Lua? */
|
||
chance = ACTPROB_NOT_IMPLEMENTED;
|
||
break;
|
||
case ACTRES_UNUSED_1:
|
||
chance = ACTPROB_NOT_IMPLEMENTED;
|
||
break;
|
||
}
|
||
/* Non signal action probabilities should be in range. */
|
common/actres.c | ||
---|---|---|
{ ACT_TGT_COMPL_SIMPLE, ABK_STANDARD, /* ACTRES_COLLECT_RANSOM */
|
||
TRUE, ACTIVITY_LAST, DRT_NONE,
|
||
EC_NONE, ERM_NONE, ATK_UNITS },
|
||
{ ACT_TGT_COMPL_FLEXIBLE, ABK_NONE, /* ACTRES_UNUSED_1 */
|
||
FALSE, ACTIVITY_LAST, DRT_NONE,
|
||
EC_NONE, ERM_NONE, RS_DEFAULT_USER_ACTION_TARGET_KIND },
|
||
{ ACT_TGT_COMPL_SIMPLE, ABK_NONE, /* ACTRES_TRANSPORT_DEBOARD */
|
||
FALSE, ACTIVITY_LAST, DRT_NONE,
|
||
EC_NONE, ERM_NONE, ATK_UNIT },
|
common/actres.h | ||
---|---|---|
* break;
|
||
*/
|
||
#define ASSERT_UNUSED_ACTRES_CASES \
|
||
case ACTRES_UNUSED_1: \
|
||
fc_assert_msg(FALSE, "ACTRES_UNUSED_1"); \
|
||
break;
|
||
/* When making changes to this, update also atk_helpnames at actions.c */
|
||
#define SPECENUM_NAME action_target_kind
|
common/fc_types.h | ||
---|---|---|
#define SPECENUM_COUNT ACTIVITY_LAST
|
||
#include "specenum_gen.h"
|
||
/* Values used in the network protocol. */
|
||
/* Update also properties table on actres.c when touching this. */
|
||
#define SPECENUM_NAME action_result
|
||
#define SPECENUM_VALUE0 ACTRES_ESTABLISH_EMBASSY
|
||
#define SPECENUM_VALUE0NAME "Unit Establish Embassy"
|
||
#define SPECENUM_VALUE1 ACTRES_SPY_INVESTIGATE_CITY
|
||
#define SPECENUM_VALUE1NAME "Unit Investigate City"
|
||
#define SPECENUM_VALUE2 ACTRES_SPY_POISON
|
||
#define SPECENUM_VALUE2NAME "Unit Poison City"
|
||
#define SPECENUM_VALUE3 ACTRES_SPY_STEAL_GOLD
|
||
#define SPECENUM_VALUE3NAME "Unit Steal Gold"
|
||
#define SPECENUM_VALUE4 ACTRES_SPY_SABOTAGE_CITY
|
||
#define SPECENUM_VALUE4NAME "Unit Sabotage City"
|
||
#define SPECENUM_VALUE5 ACTRES_SPY_TARGETED_SABOTAGE_CITY
|
||
#define SPECENUM_VALUE5NAME "Unit Targeted Sabotage City"
|
||
#define SPECENUM_VALUE6 ACTRES_SPY_SABOTAGE_CITY_PRODUCTION
|
||
#define SPECENUM_VALUE6NAME "Unit Sabotage City Production"
|
||
#define SPECENUM_VALUE7 ACTRES_SPY_STEAL_TECH
|
||
#define SPECENUM_VALUE7NAME "Unit Steal Tech"
|
||
#define SPECENUM_VALUE8 ACTRES_SPY_TARGETED_STEAL_TECH
|
||
#define SPECENUM_VALUE8NAME "Unit Targeted Steal Tech"
|
||
#define SPECENUM_VALUE9 ACTRES_SPY_INCITE_CITY
|
||
#define SPECENUM_VALUE9NAME "Unit Incite City"
|
||
#define SPECENUM_VALUE10 ACTRES_TRADE_ROUTE
|
||
#define SPECENUM_VALUE10NAME "Unit Establish Trade Route"
|
||
#define SPECENUM_VALUE11 ACTRES_MARKETPLACE
|
||
#define SPECENUM_VALUE11NAME "Unit Enter Marketplace"
|
||
#define SPECENUM_VALUE12 ACTRES_HELP_WONDER
|
||
#define SPECENUM_VALUE12NAME "Unit Help Wonder"
|
||
#define SPECENUM_VALUE13 ACTRES_SPY_BRIBE_UNIT
|
||
#define SPECENUM_VALUE13NAME "Unit Bribe Unit"
|
||
#define SPECENUM_VALUE14 ACTRES_SPY_SABOTAGE_UNIT
|
||
#define SPECENUM_VALUE14NAME "Unit Sabotage Unit"
|
||
#define SPECENUM_VALUE15 ACTRES_CAPTURE_UNITS
|
||
#define SPECENUM_VALUE15NAME "Unit Capture Units"
|
||
#define SPECENUM_VALUE16 ACTRES_FOUND_CITY
|
||
#define SPECENUM_VALUE16NAME "Unit Found City"
|
||
#define SPECENUM_VALUE17 ACTRES_JOIN_CITY
|
||
#define SPECENUM_VALUE17NAME "Unit Join City"
|
||
#define SPECENUM_VALUE18 ACTRES_STEAL_MAPS
|
||
#define SPECENUM_VALUE18NAME "Unit Steal Maps"
|
||
#define SPECENUM_VALUE19 ACTRES_BOMBARD
|
||
#define SPECENUM_VALUE19NAME "Unit Bombard"
|
||
#define SPECENUM_VALUE20 ACTRES_SPY_NUKE
|
||
#define SPECENUM_VALUE20NAME "Unit Suitcase Nuke"
|
||
#define SPECENUM_VALUE21 ACTRES_NUKE
|
||
#define SPECENUM_VALUE21NAME "Unit Nuke"
|
||
#define SPECENUM_VALUE22 ACTRES_NUKE_UNITS
|
||
#define SPECENUM_VALUE22NAME "Unit Nuke Units"
|
||
#define SPECENUM_VALUE23 ACTRES_DESTROY_CITY
|
||
#define SPECENUM_VALUE23NAME "Unit Destroy City"
|
||
#define SPECENUM_VALUE24 ACTRES_EXPEL_UNIT
|
||
#define SPECENUM_VALUE24NAME "Unit Expel Unit"
|
||
#define SPECENUM_VALUE25 ACTRES_DISBAND_UNIT_RECOVER
|
||
#define SPECENUM_VALUE25NAME "Unit Disband Recover"
|
||
#define SPECENUM_VALUE26 ACTRES_DISBAND_UNIT
|
||
#define SPECENUM_VALUE26NAME "Unit Disband"
|
||
#define SPECENUM_VALUE27 ACTRES_HOME_CITY
|
||
#define SPECENUM_VALUE27NAME "Unit Home City"
|
||
#define SPECENUM_VALUE28 ACTRES_UPGRADE_UNIT
|
||
#define SPECENUM_VALUE28NAME "Unit Upgrade"
|
||
#define SPECENUM_VALUE29 ACTRES_PARADROP
|
||
#define SPECENUM_VALUE29NAME "Unit Paradrop"
|
||
#define SPECENUM_VALUE30 ACTRES_AIRLIFT
|
||
#define SPECENUM_VALUE30NAME "Unit Airlift"
|
||
#define SPECENUM_VALUE31 ACTRES_ATTACK
|
||
#define SPECENUM_VALUE31NAME "Unit Attack"
|
||
#define SPECENUM_VALUE32 ACTRES_STRIKE_BUILDING
|
||
#define SPECENUM_VALUE32NAME "Unit Surgical Strike Building"
|
||
#define SPECENUM_VALUE33 ACTRES_STRIKE_PRODUCTION
|
||
#define SPECENUM_VALUE33NAME "Unit Surgical Strike Production"
|
||
#define SPECENUM_VALUE34 ACTRES_CONQUER_CITY
|
||
#define SPECENUM_VALUE34NAME "Unit Conquer City"
|
||
#define SPECENUM_VALUE35 ACTRES_HEAL_UNIT
|
||
#define SPECENUM_VALUE35NAME "Unit Heal Unit"
|
||
#define SPECENUM_VALUE36 ACTRES_TRANSFORM_TERRAIN
|
||
#define SPECENUM_VALUE36NAME "Unit Transform Terrain"
|
||
#define SPECENUM_VALUE37 ACTRES_CULTIVATE
|
||
#define SPECENUM_VALUE37NAME "Unit Cultivate"
|
||
#define SPECENUM_VALUE38 ACTRES_PLANT
|
||
#define SPECENUM_VALUE38NAME "Unit Plant"
|
||
#define SPECENUM_VALUE39 ACTRES_PILLAGE
|
||
#define SPECENUM_VALUE39NAME "Unit Pillage"
|
||
#define SPECENUM_VALUE40 ACTRES_FORTIFY
|
||
#define SPECENUM_VALUE40NAME "Unit Fortify"
|
||
#define SPECENUM_VALUE41 ACTRES_ROAD
|
||
#define SPECENUM_VALUE41NAME "Unit Build Road"
|
||
#define SPECENUM_VALUE42 ACTRES_CONVERT
|
||
#define SPECENUM_VALUE42NAME "Unit Convert"
|
||
#define SPECENUM_VALUE43 ACTRES_BASE
|
||
#define SPECENUM_VALUE43NAME "Unit Build Base"
|
||
#define SPECENUM_VALUE44 ACTRES_MINE
|
||
#define SPECENUM_VALUE44NAME "Unit Build Mine"
|
||
#define SPECENUM_VALUE45 ACTRES_IRRIGATE
|
||
#define SPECENUM_VALUE45NAME "Unit Build Irrigation"
|
||
#define SPECENUM_VALUE46 ACTRES_COLLECT_RANSOM
|
||
#define SPECENUM_VALUE46NAME "Collect Ransom"
|
||
/* TODO: Rearrange action results to get rid of this */
|
||
#define SPECENUM_VALUE47 ACTRES_UNUSED_1
|
||
#define SPECENUM_VALUE47NAME "Unused1"
|
||
#define SPECENUM_VALUE48 ACTRES_TRANSPORT_DEBOARD
|
||
#define SPECENUM_VALUE48NAME "Unit Transport Deboard"
|
||
#define SPECENUM_VALUE49 ACTRES_TRANSPORT_UNLOAD
|
||
#define SPECENUM_VALUE49NAME "Unit Transport Unload"
|
||
#define SPECENUM_VALUE50 ACTRES_TRANSPORT_DISEMBARK
|
||
#define SPECENUM_VALUE50NAME "Unit Transport Disembark"
|
||
#define SPECENUM_VALUE51 ACTRES_TRANSPORT_BOARD
|
||
#define SPECENUM_VALUE51NAME "Unit Transport Board"
|
||
#define SPECENUM_VALUE52 ACTRES_TRANSPORT_EMBARK
|
||
#define SPECENUM_VALUE52NAME "Unit Transport Embark"
|
||
#define SPECENUM_VALUE53 ACTRES_SPY_SPREAD_PLAGUE
|
||
#define SPECENUM_VALUE53NAME "Unit Spread Plague"
|
||
#define SPECENUM_VALUE54 ACTRES_SPY_ATTACK
|
||
#define SPECENUM_VALUE54NAME "Unit Spy Attack"
|
||
#define SPECENUM_VALUE55 ACTRES_CONQUER_EXTRAS
|
||
#define SPECENUM_VALUE55NAME "Unit Conquer Extras"
|
||
#define SPECENUM_VALUE56 ACTRES_HUT_ENTER
|
||
#define SPECENUM_VALUE56NAME "Unit Enter Hut"
|
||
#define SPECENUM_VALUE57 ACTRES_HUT_FRIGHTEN
|
||
#define SPECENUM_VALUE57NAME "Unit Frighten Hut"
|
||
#define SPECENUM_VALUE58 ACTRES_UNIT_MOVE
|
||
#define SPECENUM_VALUE58NAME "Unit Move"
|
||
#define SPECENUM_VALUE59 ACTRES_PARADROP_CONQUER
|
||
#define SPECENUM_VALUE59NAME "Unit Paradrop Conquer"
|
||
#define SPECENUM_VALUE60 ACTRES_HOMELESS
|
||
#define SPECENUM_VALUE60NAME "Unit Make Homeless"
|
||
#define SPECENUM_VALUE61 ACTRES_WIPE_UNITS
|
||
#define SPECENUM_VALUE61NAME "Wipe Units"
|
||
#define SPECENUM_VALUE62 ACTRES_SPY_ESCAPE
|
||
#define SPECENUM_VALUE62NAME "Unit Spy Escape"
|
||
#define SPECENUM_VALUE63 ACTRES_TRANSPORT_LOAD
|
||
#define SPECENUM_VALUE63NAME "Unit Transport Load"
|
||
#define SPECENUM_VALUE64 ACTRES_CLEAN
|
||
#define SPECENUM_VALUE64NAME "Clean"
|
||
/* TODO: Move close to "Move" */
|
||
#define SPECENUM_VALUE65 ACTRES_TELEPORT
|
||
#define SPECENUM_VALUE65NAME "Teleport"
|
||
#define SPECENUM_VALUE66 ACTRES_TELEPORT_CONQUER
|
||
#define SPECENUM_VALUE66NAME "Teleport Conquer"
|
||
/* Hardcoded action that's just controlled by enablers */
|
||
#define SPECENUM_VALUE67 ACTRES_ENABLER_CHECK
|
||
/* All consequences are handled as (ruleset) action data. */
|
||
#define SPECENUM_COUNT ACTRES_LAST
|
||
#include "specenum_gen.h"
|
||
#define ACTRES_NONE ACTRES_LAST
|
||
/* Used in the network protocol. */
|
gen_headers/enums/fc_types_enums.def | ||
---|---|---|
SAME_REGION "Same Region"
|
||
SAME_TCLASS "Same Terrain Class"
|
||
end
|
||
/* Values used in the network protocol.
|
||
* Update also properties table on actres.c when touching this. */
|
||
enum action_result
|
||
prefix ACTRES_
|
||
count LAST
|
||
values
|
||
ESTABLISH_EMBASSY "Unit Establish Embassy"
|
||
SPY_INVESTIGATE_CITY "Unit Investigate City"
|
||
SPY_POISON "Unit Poison City"
|
||
SPY_STEAL_GOLD "Unit Steal Gold"
|
||
SPY_SABOTAGE_CITY "Unit Sabotage City"
|
||
SPY_TARGETED_SABOTAGE_CITY "Unit Targeted Sabotage City"
|
||
SPY_SABOTAGE_CITY_PRODUCTION "Unit Sabotage City Production"
|
||
SPY_STEAL_TECH "Unit Steal Tech"
|
||
SPY_TARGETED_STEAL_TECH "Unit Targeted Steal Tech"
|
||
SPY_INCITE_CITY "Unit Incite City"
|
||
TRADE_ROUTE "Unit Establish Trade Route"
|
||
MARKETPLACE "Unit Enter Marketplace"
|
||
HELP_WONDER "Unit Help Wonder"
|
||
SPY_BRIBE_UNIT "Unit Bribe Unit"
|
||
SPY_SABOTAGE_UNIT "Unit Sabotage Unit"
|
||
CAPTURE_UNITS "Unit Capture Units"
|
||
FOUND_CITY "Unit Found City"
|
||
JOIN_CITY "Unit Join City"
|
||
STEAL_MAPS "Unit Steal Maps"
|
||
BOMBARD "Unit Bombard"
|
||
SPY_NUKE "Unit Suitcase Nuke"
|
||
NUKE "Unit Nuke"
|
||
NUKE_UNITS "Unit Nuke Units"
|
||
DESTROY_CITY "Unit Destroy City"
|
||
EXPEL_UNIT "Unit Expel Unit"
|
||
DISBAND_UNIT_RECOVER "Unit Disband Recover"
|
||
DISBAND_UNIT "Unit Disband"
|
||
HOME_CITY "Unit Home City"
|
||
UPGRADE_UNIT "Unit Upgrade"
|
||
PARADROP "Unit Paradrop"
|
||
AIRLIFT "Unit Airlift"
|
||
ATTACK "Unit Attack"
|
||
STRIKE_BUILDING "Unit Surgical Strike Building"
|
||
STRIKE_PRODUCTION "Unit Surgical Strike Production"
|
||
CONQUER_CITY "Unit Conquer City"
|
||
HEAL_UNIT "Unit Heal Unit"
|
||
TRANSFORM_TERRAIN "Unit Transform Terrain"
|
||
CULTIVATE "Unit Cultivate"
|
||
PLANT "Unit Plant"
|
||
PILLAGE "Unit Pillage"
|
||
FORTIFY "Unit Fortify"
|
||
ROAD "Unit Build Road"
|
||
CONVERT "Unit Convert"
|
||
BASE "Unit Build Base"
|
||
MINE "Unit Build Mine"
|
||
IRRIGATE "Unit Build Irrigation"
|
||
COLLECT_RANSOM "Collect Ransom"
|
||
TRANSPORT_DEBOARD "Unit Transport Deboard"
|
||
TRANSPORT_UNLOAD "Unit Transport Unload"
|
||
TRANSPORT_DISEMBARK "Unit Transport Disembark"
|
||
TRANSPORT_BOARD "Unit Transport Board"
|
||
TRANSPORT_EMBARK "Unit Transport Embark"
|
||
SPY_SPREAD_PLAGUE "Unit Spread Plague"
|
||
SPY_ATTACK "Unit Spy Attack"
|
||
CONQUER_EXTRAS "Unit Conquer Extras"
|
||
HUT_ENTER "Unit Enter Hut"
|
||
HUT_FRIGHTEN "Unit Frighten Hut"
|
||
UNIT_MOVE "Unit Move"
|
||
PARADROP_CONQUER "Unit Paradrop Conquer"
|
||
HOMELESS "Unit Make Homeless"
|
||
WIPE_UNITS "Wipe Units"
|
||
SPY_ESCAPE "Unit Spy Escape"
|
||
TRANSPORT_LOAD "Unit Transport Load"
|
||
CLEAN "Clean"
|
||
/* TODO: Move close to "Move" */
|
||
TELEPORT "Teleport"
|
||
TELEPORT_CONQUER "Teleport Conquer"
|
||
/* Hardcoded action that's just controlled by enablers */
|
||
ENABLER_CHECK
|
||
end
|