Project

General

Profile

Feature #1235 ยป 0037-AI-Pass-civ_map-to-kill_something_with.patch

Marko Lindqvist, 02/05/2025 09:03 PM

View differences:

ai/default/daimilitary.c
to carry a land attack unit, instead of the land attack unit itself.
**************************************************************************/
static struct adv_choice *kill_something_with(struct ai_type *ait,
const struct civ_map *nmap,
struct player *pplayer,
struct city *pcity, struct unit *myunit,
struct adv_choice *choice)
......
struct adv_choice *best_choice;
struct ai_city *city_data = def_ai_city_data(pcity, ait);
struct ai_city *acity_data;
struct civ_map *nmap = &(wld.map);
best_choice = adv_new_choice();
best_choice->value.utype = unit_type_get(myunit);
......
virtualunit = unit_virtual_create(
pplayer, pcity, punittype,
city_production_unit_veteran_level(pcity, punittype));
choice = kill_something_with(ait, pplayer, pcity, virtualunit, choice);
choice = kill_something_with(ait, nmap, pplayer, pcity, virtualunit, choice);
unit_virtual_destroy(virtualunit);
}
......
punittype = dai_choose_attacker(ait, nmap, pcity, TC_LAND, allow_gold_upkeep);
if (punittype) {
virtualunit = unit_virtual_create(pplayer, pcity, punittype, 1);
choice = kill_something_with(ait, pplayer, pcity, virtualunit, choice);
choice = kill_something_with(ait, nmap, pplayer, pcity, virtualunit, choice);
unit_virtual_destroy(virtualunit);
}
    (1-1/1)