("action_train_party",[],"Train party members.",
[
(store_skill_level, ":player_trainer", skl_trainer, "trp_player"),
(val_max, ":player_trainer", 1),
(val_mul, ":player_trainer", 500),
(assign, ":xp_gain", 0),
(party_get_num_companion_stacks, ":num_stack", "p_main_party"),
(try_for_range_backwards, ":i_stack", 0, ":num_stack"),
(party_stack_get_troop_id, ":troop_id", "p_main_party", ":i_stack"),
(party_stack_get_size, ":stack_size", "p_main_party", ":i_stack"),
(store_mul, ":xp_gain", ":player_trainer", ":stack_size"),
(neg|is_between, ":troop_id", heroes_begin, heroes_end),
(neq, ":troop_id", "trp_player"),
(party_add_xp_to_stack, "p_main_party", ":i_stack", ":xp_gain"),
(assign, reg33, ":xp_gain"),
(display_message, "@Party gained {reg33} experiences."),
(try_end),
]
),