Bug #123 » 0010-Let-server-decide-if-the-other-party-meets-clause-re.patch
client/gui-gtk-3.0/diplodlg.c | ||
---|---|---|
return;
|
||
}
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value);
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value,
|
||
client_player());
|
||
update_diplomacy_dialog(pdialog);
|
||
gui_dialog_alert(pdialog->dialog);
|
||
}
|
client/gui-gtk-3.22/diplodlg.c | ||
---|---|---|
return;
|
||
}
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value);
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value,
|
||
client_player());
|
||
update_diplomacy_dialog(pdialog);
|
||
gui_dialog_alert(pdialog->dialog);
|
||
}
|
client/gui-gtk-4.0/diplodlg.c | ||
---|---|---|
return;
|
||
}
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value);
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value,
|
||
client_player());
|
||
update_diplomacy_dialog(pdialog);
|
||
gui_dialog_alert(pdialog->dialog);
|
||
}
|
client/gui-qt/diplodlg.cpp | ||
---|---|---|
w = gui()->game_tab_widget->widget(i);
|
||
dd = qobject_cast<diplo_dlg *>(w);
|
||
dw = dd->find_widget(counterpart);
|
||
add_clause(&dw->treaty, player_by_number(giver), type, value);
|
||
add_clause(&dw->treaty, player_by_number(giver), type, value,
|
||
client_player());
|
||
dw->update_wdg();
|
||
}
|
||
client/gui-sdl2/diplodlg.c | ||
---|---|---|
pclause->value);
|
||
} clause_list_iterate_end;
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value);
|
||
add_clause(&pdialog->treaty, player_by_number(giver), type, value,
|
||
client_player());
|
||
update_clauses_list(pdialog);
|
||
update_acceptance_icons(pdialog);
|
common/diptreaty.c | ||
---|---|---|
Add clause to treaty.
|
||
**************************************************************************/
|
||
bool add_clause(struct Treaty *ptreaty, struct player *pfrom,
|
||
enum clause_type type, int val)
|
||
enum clause_type type, int val,
|
||
struct player *client_player)
|
||
{
|
||
struct player *pto = (pfrom == ptreaty->plr0
|
||
? ptreaty->plr1 : ptreaty->plr0);
|
||
... | ... | |
}
|
||
if (type == CLAUSE_EMBASSY && player_has_real_embassy(pto, pfrom)) {
|
||
/* we already have embassy */
|
||
/* We already have embassy */
|
||
log_error("Illegal embassy clause: %s already have embassy with %s.",
|
||
nation_rule_name(nation_of_player(pto)),
|
||
nation_rule_name(nation_of_player(pfrom)));
|
||
... | ... | |
return FALSE;
|
||
}
|
||
if (!are_reqs_active(&(const struct req_context) { .player = pfrom },
|
||
pto, &clause_infos[type].giver_reqs, RPT_POSSIBLE)
|
||
|| !are_reqs_active(&(const struct req_context) { .player = pto },
|
||
pfrom, &clause_infos[type].receiver_reqs,
|
||
RPT_POSSIBLE)) {
|
||
return FALSE;
|
||
/* Leave it to the server to decide if the other party can meet
|
||
* the requirements. */
|
||
if (client_player == NULL || client_player == pfrom) {
|
||
if (!are_reqs_active(&(const struct req_context) { .player = pfrom },
|
||
pto, &clause_infos[type].giver_reqs, RPT_POSSIBLE)) {
|
||
return FALSE;
|
||
}
|
||
}
|
||
if (client_player == NULL || client_player == pto) {
|
||
if (!are_reqs_active(&(const struct req_context) { .player = pto },
|
||
pfrom, &clause_infos[type].receiver_reqs,
|
||
RPT_POSSIBLE)) {
|
||
return FALSE;
|
||
}
|
||
}
|
||
clause_list_iterate(ptreaty->clauses, old_clause) {
|
common/diptreaty.h | ||
---|---|---|
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);
|
||
enum clause_type type, int val,
|
||
struct player *client_player);
|
||
bool remove_clause(struct Treaty *ptreaty, struct player *pfrom,
|
||
enum clause_type type, int val);
|
||
void clear_treaty(struct Treaty *ptreaty);
|
server/diplhand.c | ||
---|---|---|
ptreaty = find_treaty(pplayer, pother);
|
||
if (ptreaty && add_clause(ptreaty, pgiver, type, value)) {
|
||
/*
|
||
* If we are trading cities, then it is possible that the
|
||
* dest is unaware of it's existence. We have 2 choices,
|
||
* forbid it, or lighten that area. If we assume that
|
||
if (ptreaty != NULL
|
||
&& add_clause(ptreaty, pgiver, type, value, NULL)) {
|
||
/*
|
||
* If we are trading cities, then it is possible that
|
||
* the dest is unaware of it's existence. We have 2 choices,
|
||
* forbid it, or lighten that area. If we assume that
|
||
* the giver knows what they are doing, then 2. is the
|
||
* most powerful option - I'll choose that for now.
|
||
* - Kris Bubendorfer
|
server/savegame/savegame2.c | ||
---|---|---|
"treaty%d.clause%d.value",
|
||
tidx, cidx);
|
||
add_clause(ptreaty, pgiver, type, value);
|
||
add_clause(ptreaty, pgiver, type, value, NULL);
|
||
}
|
||
}
|
||
}
|
server/savegame/savegame3.c | ||
---|---|---|
"treaty%d.clause%d.value",
|
||
tidx, cidx);
|
||
add_clause(ptreaty, pgiver, type, value);
|
||
add_clause(ptreaty, pgiver, type, value, NULL);
|
||
}
|
||
}
|
||
}
|
- « Previous
- 1
- 2
- Next »