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.",
void treaty_remove(struct treaty *ptreaty)
void treaty_add(struct treaty *ptreaty)
static struct treaty_list * treaties
bool diplomacy_possible(const struct player *pplayer1, const struct player *pplayer2)
void clause_infos_init(void)
struct treaty * find_treaty(struct player *plr0, struct player *plr1)
void clause_infos_free(void)
void init_treaty(struct treaty *ptreaty, struct player *plr0, struct player *plr1)
bool add_clause(struct treaty *ptreaty, struct player *pfrom, enum clause_type type, int val, struct player *client_player)
void treaties_iterate(treaty_cb cb, void *data)
bool clause_enabled(enum clause_type type)
static struct clause_info clause_infos[CLAUSE_COUNT]
void clear_treaty(struct treaty *ptreaty)
bool remove_clause(struct treaty *ptreaty, struct player *pfrom, enum clause_type type, int val)
bool could_intel_with_player(const struct player *pplayer, const struct player *aplayer)
struct clause_info * clause_info_get(enum clause_type type)
bool could_meet_with_player(const struct player *pplayer, const struct player *aplayer)
#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)
void(* treaty_cb)(struct treaty *, void *data)
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 req_context *other_context, const struct requirement_vector *reqs, const enum req_problem_type prob_type)
struct packet_game_info info
struct requirement_vector receiver_reqs
struct requirement_vector giver_reqs
struct requirement_vector either_reqs
enum diplomacy_mode diplomacy
struct clause_list * clauses
struct advance * valid_advance_by_number(const Tech_type_id id)