56 log_error(
"%s(): Unsupported diplomacy variant %d.",
156 log_error(
"Illegal clause type encountered.");
161 log_error(
"Illegal tech value %i in clause.", val);
171 log_error(
"Illegal treaty suggested between %s and %s - they "
172 "already have this treaty level.",
180 log_error(
"Illegal embassy clause: %s already have embassy with %s.",
static struct treaty_list * treaties
bool diplomacy_possible(const struct player *pplayer1, const struct player *pplayer2)
void clause_infos_init(void)
void clause_infos_free(void)
void clear_treaty(struct Treaty *ptreaty)
void init_treaty(struct Treaty *ptreaty, struct player *plr0, struct player *plr1)
void treaties_iterate(treaty_cb cb, void *data)
bool add_clause(struct Treaty *ptreaty, struct player *pfrom, enum clause_type type, int val, struct player *client_player)
bool clause_enabled(enum clause_type type)
void treaty_add(struct Treaty *ptreaty)
static struct clause_info clause_infos[CLAUSE_COUNT]
bool remove_clause(struct Treaty *ptreaty, struct player *pfrom, enum clause_type type, int val)
void treaty_remove(struct Treaty *ptreaty)
bool could_intel_with_player(const struct player *pplayer, const struct player *aplayer)
struct Treaty * find_treaty(struct player *plr0, struct player *plr1)
struct clause_info * clause_info_get(enum clause_type type)
bool could_meet_with_player(const struct player *pplayer, const struct player *aplayer)
void(* treaty_cb)(struct Treaty *, void *data)
#define clause_list_iterate_end
#define treaty_list_iterate(list, p)
#define clause_list_iterate(clauselist, pclause)
#define treaty_list_iterate_end
#define is_pact_clause(x)
int get_player_bonus(const struct player *pplayer, enum effect_type effect_type)
#define fc_assert(condition)
#define log_error(message,...)
const char * nation_rule_name(const struct nation_type *pnation)
struct nation_type * nation_of_player(const struct player *pplayer)
bool players_on_same_team(const struct player *pplayer1, const struct player *pplayer2)
bool player_has_real_embassy(const struct player *pplayer, const struct player *pplayer2)
bool team_has_embassy(const struct team *pteam, const struct player *tgt_player)
struct player_diplstate * player_diplstate_get(const struct player *plr1, const struct player *plr2)
bool player_has_embassy(const struct player *pplayer, const struct player *pplayer2)
bool are_reqs_active(const struct req_context *context, const struct player *other_player, const struct requirement_vector *reqs, const enum req_problem_type prob_type)
struct clause_list * clauses
struct packet_game_info info
struct requirement_vector receiver_reqs
struct requirement_vector giver_reqs
enum diplomacy_mode diplomacy
struct advance * valid_advance_by_number(const Tech_type_id id)