From a227e768f99dfe08d7e283ada1c1367ed1c00dcf Mon Sep 17 00:00:00 2001 From: mattsc Date: Thu, 5 Dec 2019 12:18:33 -0800 Subject: [PATCH] ai_helper.get_cheapest_recruit_cost: add extra recruits --- data/ai/lua/ai_helper.lua | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/data/ai/lua/ai_helper.lua b/data/ai/lua/ai_helper.lua index 2a8533401c5..a50f694ed58 100644 --- a/data/ai/lua/ai_helper.lua +++ b/data/ai/lua/ai_helper.lua @@ -1284,8 +1284,20 @@ function ai_helper.has_weapon_special(unit, special) end function ai_helper.get_cheapest_recruit_cost() - local cheapest_unit_cost = math.huge + local recruit_ids = {} for _,recruit_id in ipairs(wesnoth.sides[wesnoth.current.side].recruit) do + table.insert(recruit_ids, recruit_id) + end + + local leaders = wesnoth.get_units { side = wesnoth.current.side, canrecruit = 'yes' } + for _,l in ipairs(leaders) do + for _,recruit_id in ipairs(l.extra_recruit) do + table.insert(recruit_ids, recruit_id) + end + end + + local cheapest_unit_cost = math.huge + for _,recruit_id in ipairs(recruit_ids) do if wesnoth.unit_types[recruit_id].cost < cheapest_unit_cost then cheapest_unit_cost = wesnoth.unit_types[recruit_id].cost end