Some more advanced improvements to recruitment formula...

...and small one for debug_print
This commit is contained in:
Bartek Waresiak 2008-07-31 15:19:01 +00:00
parent 12638c9765
commit 93e97f5ac9
2 changed files with 34 additions and 18 deletions

View File

@ -528,25 +528,41 @@ def initialize_weapon_specials_map(ai*)
[] []
); );
def create_recruits_map(ai*)
if(my_leader.loc = loc(11,23), if(vars.recruits_map_creator != turn,
if( my_side.gold>20,
initialize_weapon_specials_map(self) +
[ [
recruit( set_var('recruits_map_creator', turn ),
unit_chooser( set_var('recruits_map',
self, recruitment_list_builder(
recruitment_list_builder( eval(ai),
eval(self), evaluate_attackers(ai),
evaluate_attackers(self), evaluate_defenders(ai)
evaluate_defenders(self)
)
) )
) )
], ],
fallback('') []
);
if(vars.turn_initialized = turn,
if(my_leader.loc = loc(11,23),
if( debug_print('Najtanszy rekrut: ', choose(
vars.recruits_map,
-key.cost
)).key.cost <
my_side.gold,
recruit(
unit_chooser(
self,
vars.recruits_map
)
),
fallback('')
),
if(vars.check = turn,
[set_var('check', 0), fallback('')],
[set_var('check', turn), move(my_leader.loc, nearest_keep(my_leader.loc))])
), ),
if(vars.check = turn, [set_var('turn_initialized', turn)] +
[set_var('check', 0), fallback('')], initialize_weapon_specials_map(self) +
[set_var('check', turn), move(my_leader.loc, nearest_keep(my_leader.loc))]) create_recruits_map(self)
) )

View File

@ -277,13 +277,13 @@ private:
if( args().size() == 1) if( args().size() == 1)
{ {
var1.serialize_to_string(str1); str1 = var1.to_debug_string();
std::cout<< str1 << std::endl; std::cout<< str1 << std::endl;
return var1; return var1;
} else { } else {
str1 = var1.string_cast(); str1 = var1.string_cast();
const variant var2 = args()[1]->evaluate(variables); const variant var2 = args()[1]->evaluate(variables);
var2.serialize_to_string(str2); str2 = var2.to_debug_string();
std::cout<< str1 << str2 << std::endl; std::cout<< str1 << str2 << std::endl;
return var2; return var2;
} }