Freeciv-3.3
Loading...
Searching...
No Matches
Data Structures | Macros | Enumerations | Functions
daidata.h File Reference
#include "support.h"
#include "fc_types.h"
#include "tech.h"
#include "srv_main.h"
#include "advtools.h"
#include "specenum_gen.h"

Go to the source code of this file.

Data Structures

struct  ai_dip_intel
 
struct  ai_plr
 

Macros

#define SPECENUM_NAME   war_reason
 
#define SPECENUM_VALUE0   DAI_WR_BEHAVIOUR
 
#define SPECENUM_VALUE0NAME   "Behaviour"
 
#define SPECENUM_VALUE1   DAI_WR_SPACE
 
#define SPECENUM_VALUE1NAME   "Space"
 
#define SPECENUM_VALUE2   DAI_WR_EXCUSE
 
#define SPECENUM_VALUE2NAME   "Excuse"
 
#define SPECENUM_VALUE3   DAI_WR_HATRED
 
#define SPECENUM_VALUE3NAME   "Hatred"
 
#define SPECENUM_VALUE4   DAI_WR_ALLIANCE
 
#define SPECENUM_VALUE4NAME   "Alliance"
 
#define SPECENUM_VALUE5   DAI_WR_NONE
 
#define SPECENUM_VALUE5NAME   "None"
 

Enumerations

enum  winning_strategy { WIN_OPEN , WIN_WAR , WIN_SPACE , WIN_CAPITAL }
 

Functions

void dai_data_init (struct ai_type *ait, struct player *pplayer)
 
void dai_data_close (struct ai_type *ait, struct player *pplayer)
 
void dai_data_phase_begin (struct ai_type *ait, struct player *pplayer, bool is_new_phase)
 
void dai_data_phase_finished (struct ai_type *ait, struct player *pplayer)
 
bool is_ai_data_phase_open (struct ai_type *ait, struct player *pplayer)
 
struct ai_plrdai_plr_data_get (struct ai_type *ait, struct player *pplayer, bool *caller_closes)
 
struct ai_dip_inteldai_diplomacy_get (struct ai_type *ait, const struct player *plr1, const struct player *plr2)
 
void dai_gov_value (struct ai_type *ait, struct player *pplayer, struct government *gov, adv_want *val, bool *override)
 
void dai_adjust_policies (struct ai_type *ait, struct player *pplayer)
 

Macro Definition Documentation

◆ SPECENUM_NAME

#define SPECENUM_NAME   war_reason

Definition at line 38 of file daidata.h.

◆ SPECENUM_VALUE0

#define SPECENUM_VALUE0   DAI_WR_BEHAVIOUR

Definition at line 39 of file daidata.h.

◆ SPECENUM_VALUE0NAME

#define SPECENUM_VALUE0NAME   "Behaviour"

Definition at line 40 of file daidata.h.

◆ SPECENUM_VALUE1

#define SPECENUM_VALUE1   DAI_WR_SPACE

Definition at line 41 of file daidata.h.

◆ SPECENUM_VALUE1NAME

#define SPECENUM_VALUE1NAME   "Space"

Definition at line 42 of file daidata.h.

◆ SPECENUM_VALUE2

#define SPECENUM_VALUE2   DAI_WR_EXCUSE

Definition at line 43 of file daidata.h.

◆ SPECENUM_VALUE2NAME

#define SPECENUM_VALUE2NAME   "Excuse"

Definition at line 44 of file daidata.h.

◆ SPECENUM_VALUE3

#define SPECENUM_VALUE3   DAI_WR_HATRED

Definition at line 45 of file daidata.h.

◆ SPECENUM_VALUE3NAME

#define SPECENUM_VALUE3NAME   "Hatred"

Definition at line 46 of file daidata.h.

◆ SPECENUM_VALUE4

#define SPECENUM_VALUE4   DAI_WR_ALLIANCE

Definition at line 47 of file daidata.h.

◆ SPECENUM_VALUE4NAME

#define SPECENUM_VALUE4NAME   "Alliance"

Definition at line 48 of file daidata.h.

◆ SPECENUM_VALUE5

#define SPECENUM_VALUE5   DAI_WR_NONE

Definition at line 49 of file daidata.h.

◆ SPECENUM_VALUE5NAME

#define SPECENUM_VALUE5NAME   "None"

Definition at line 50 of file daidata.h.

Enumeration Type Documentation

◆ winning_strategy

Enumerator
WIN_OPEN 
WIN_WAR 
WIN_SPACE 
WIN_CAPITAL 

Definition at line 31 of file daidata.h.

Function Documentation

◆ dai_adjust_policies()

void dai_adjust_policies ( struct ai_type ait,
struct player pplayer 
)

Adjust multiplier values.

Definition at line 442 of file daidata.c.

Referenced by dai_do_last_activities().

◆ dai_data_close()

void dai_data_close ( struct ai_type ait,
struct player pplayer 
)

Deinitialize ai data structure

Definition at line 104 of file daidata.c.

Referenced by dai_player_free(), and texai_player_free().

◆ dai_data_init()

void dai_data_init ( struct ai_type ait,
struct player pplayer 
)

Initialize ai data structure

Definition at line 59 of file daidata.c.

Referenced by dai_player_alloc(), and texai_player_alloc().

◆ dai_data_phase_begin()

void dai_data_phase_begin ( struct ai_type ait,
struct player pplayer,
bool  is_new_phase 
)

Make and cache lots of calculations needed for other functions.

Definition at line 142 of file daidata.c.

Referenced by cai_data_phase_begin(), dai_plr_data_get(), and texwai_phase_begin().

◆ dai_data_phase_finished()

void dai_data_phase_finished ( struct ai_type ait,
struct player pplayer 
)

◆ dai_diplomacy_get()

struct ai_dip_intel * dai_diplomacy_get ( struct ai_type ait,
const struct player plr1,
const struct player plr2 
)

◆ dai_gov_value()

void dai_gov_value ( struct ai_type ait,
struct player pplayer,
struct government gov,
adv_want val,
bool override 
)

Set value of the government.

Definition at line 524 of file daidata.c.

Referenced by cai_gov_value(), and texwai_gov_value().

◆ dai_plr_data_get()

struct ai_plr * dai_plr_data_get ( struct ai_type ait,
struct player pplayer,
bool caller_closes 
)

Get current default ai data related to player. If close is set, data phase will be opened even if it's currently closed, and the boolean will be set accordingly to tell caller that phase needs closing.

Definition at line 308 of file daidata.c.

Referenced by contemplate_terrain_improvements(), dai_auto_settler_reset(), dai_diplomacy_actions(), dai_diplomacy_begin_new_phase(), dai_goldequiv_clause(), dai_player_copy(), dai_treaty_accepted(), dai_war_desire(), domestic_advisor_choose_build(), kill_something_with(), tdc_plr_get(), tdc_plr_set(), and texai_city_worker_wants().

◆ is_ai_data_phase_open()

bool is_ai_data_phase_open ( struct ai_type ait,
struct player pplayer 
)

Return whether data phase is currently open. Data phase is open between dai_data_phase_begin() and dai_data_phase_finished() calls.

Definition at line 132 of file daidata.c.