pilgrim_disguise = [itm_pilgrim_hood,itm_pilgrim_disguise,itm_practice_staff, itm_throwing_daggers]
af_castle_lord = af_override_horse | af_override_weapons| af_require_civilian
## Prebattle Orders Begin
prebattle_orders_triggers = [
(0, 0, ti_once, [(party_slot_ge, "p_main_party", slot_party_prebattle_num_orders, 1)], [
(get_player_agent_no, ":player_agent"),
(agent_get_team, ":player_team", ":player_agent"),
(party_get_slot, ":num_of_orders", "p_main_party", slot_party_prebattle_num_orders),
(set_show_messages, 0),
(assign, ":delay_count", 0),
(try_for_range, ":i", 0, ":num_of_orders"),
(store_add, ":ith_order_slot", ":i", slot_party_prebattle_order_array_begin),
(party_get_slot, "
rder_index", "p_main_party", ":ith_order_slot"),
(ge, "
rder_index", 10),
#Take 3 digit order index and get component parts: group, type, order
(store_div, ":ith_order_group", "
rder_index", 100),
(store_mul, ":ith_order_type", ":ith_order_group", 100),
(val_sub, "
rder_index", ":ith_order_type"),
(store_div, ":ith_order_type", "
rder_index", 10),
(store_mul, ":ith_order", ":ith_order_type", 10),
(store_sub, ":ith_order", "
rder_index", ":ith_order"),
#Turn type and order into Native order
(assign, ":delay_order", 0),
(assign, ":num_repeats", 0),
(try_begin),
(eq, ":ith_order_type", 1), #Start Position: hold, follow, charge; mordr_ 0-2; 3=11 stand ground
(eq, ":ith_order", 3),
(assign, ":ith_order", 11), #Stand Ground
(else_try), (eq, ":ith_order_type", 2), #Other movement orders: mordr_ 3-8,
(try_begin),
(is_between, ":ith_order", 5, 7), #5 or 6; Forward/Back 10 Paces
(assign, ":delay_order", 1), #To fix bugs with these orders, they are delayed 3 seconds
(val_add, ":delay_count", 1),
(else_try),
(store_add, ":ith_repeat_slot", ":ith_order_slot", 60), #30 for partial version
(party_get_slot, ":num_repeats", "p_main_party", ":ith_repeat_slot"),
(try_end),
(else_try),
(eq, ":ith_order_type", 3), #Native Weapon Use orders: mordr_ 9,10,12,13
(try_begin),
(eq, ":ith_order", 0),
(assign, ":ith_order", 10), #Use Any Weapon
(else_try),
(eq, ":ith_order", 2),
(assign, ":ith_order", 12), #Hold Fire
(else_try),
(eq, ":ith_order", 3),
(assign, ":ith_order", 13), #Fire at Will
(try_end),
(else_try),
(is_between, ":ith_order_type", 5, 7), #5 or 6; Caba Weapon and Shield orders
(val_add, ":delay_count", 1), #To fix bugs with these orders, they are delayed 3 seconds
(else_try),
(eq, ":ith_order_type", 7), #Caba Skirmish
(eq, ":ith_order", 1), #Begin Skirmish, any other value would be an error
(team_set_order_listener, ":player_team", ":ith_order_group"),
(call_script, "script_order_skirmish_begin_end", skirmish),
(team_set_order_listener, ":player_team", -1),
(try_end),
(try_begin),
(is_between, ":ith_order_type", 1, 4),
(neq, ":delay_order", 1),
(val_max, ":num_repeats", 1),
(try_for_range, ":unused", 0, ":num_repeats"),
(team_give_order, ":player_team", ":ith_order_group", ":ith_order"),
(try_end),
(try_end),
(try_end), #End Order Slot Loop
(team_set_order_listener, ":player_team", grc_everyone), #Reset
(set_show_messages, 1),
(display_message, "@Everyone, you know what to do. To your positions!", 0xFFDDDD66),
(try_begin),
(eq, ":num_of_orders", 1),
(party_get_slot, ":first_order", "p_main_party_backup", slot_party_prebattle_order_array_begin),
(party_set_slot, "p_main_party", slot_party_prebattle_order_array_begin, ":first_order"),
(party_set_slot, "p_main_party_backup", slot_party_prebattle_order_array_begin, 0),
(try_end),
(try_begin),
(eq, ":delay_count", 0),
(party_set_slot, "p_main_party", slot_party_prebattle_num_orders, 0),
(try_end),
]),
(3, 0, ti_once, [(party_slot_ge, "p_main_party", slot_party_prebattle_num_orders, 1)], [
#To fix bugs with Move Forward/Back 10 Paces and Caba Weapon orders
#these orders are applied separately, after other orders
(get_player_agent_no, ":player_agent"),
(agent_get_team, ":player_team", ":player_agent"),
(party_get_slot, ":num_of_orders", "p_main_party", slot_party_prebattle_num_orders),
(set_show_messages, 0),
(try_for_range, ":i", 0, ":num_of_orders"),
(store_add, ":ith_order_slot", ":i", slot_party_prebattle_order_array_begin),
(party_get_slot, "
rder_index", "p_main_party", ":ith_order_slot"),
(ge, "
rder_index", 10),
#Take 3 digit order index and get component parts: group, type, order
(store_div, ":ith_order_group", "
rder_index", 100),
(store_mul, ":ith_order_type", ":ith_order_group", 100),
(val_sub, "
rder_index", ":ith_order_type"),
(store_div, ":ith_order_type", "
rder_index", 10),
(this_or_next|is_between, ":ith_order_type", 5, 7), #5 or 6; Caba Weapon and Shield orders
(eq, ":ith_order_type", 2), #Movement Orders
(store_mul, ":ith_order", ":ith_order_type", 10),
(store_sub, ":ith_order", "
rder_index", ":ith_order"),
(try_begin),
(eq, ":ith_order_type", 2),
(is_between, ":ith_order", 5, 7), #5 or 6; Only Forward/Back 10 Paces
(store_add, ":ith_repeat_slot", ":ith_order_slot", 60), #30 for partial version
(party_get_slot, ":num_repeats", "p_main_party", ":ith_repeat_slot"),
(val_max, ":num_repeats", 1),
(try_for_range, ":unused", 0, ":num_repeats"),
(team_give_order, ":player_team", ":ith_order_group", ":ith_order"),
(try_end),
(else_try),
(is_between, ":ith_order_type", 5, 7), #5 or 6; Caba Weapon and Shield orders
(team_set_order_listener, ":player_team", ":ith_order_group"),
(call_script, "script_order_weapon_type_switch", ":ith_order"),
(team_set_order_listener, ":player_team", -1), #Reset
(try_end),
(try_end),
(team_set_order_listener, ":player_team", grc_everyone), #Reset
(set_show_messages, 1),
(party_set_slot, "p_main_party", slot_party_prebattle_num_orders, 0),
]),
]
## Prebattle Orders End
## Caba'drin Orders Begin
caba_order_triggers = [
(ti_before_mission_start, 0, ti_once, [], [
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(party_set_slot, "p_main_party_backup", slot_party_gk_order, 0),
(try_for_range, ":i", slot_party_cabadrin_order_d0, slot_party_cabadrin_order_d8 + 1),
(party_set_slot, "p_main_party", ":i", 30),
(try_end),
]),
(0, 0, 0, [
(this_or_next|game_key_clicked, gk_group0_hear),
(this_or_next|game_key_clicked, gk_group1_hear),
(this_or_next|game_key_clicked, gk_group2_hear),
(this_or_next|game_key_clicked, gk_group3_hear),
(this_or_next|game_key_clicked, gk_group4_hear),
(this_or_next|game_key_clicked, gk_group5_hear),
(this_or_next|game_key_clicked, gk_group6_hear),
(this_or_next|game_key_clicked, gk_group7_hear),
(this_or_next|game_key_clicked, gk_group8_hear),
(this_or_next|game_key_clicked, gk_everyone_hear),
(this_or_next|game_key_clicked, gk_reverse_order_group),
(game_key_clicked, gk_everyone_around_hear),
], [
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(start_presentation, "prsnt_caba_order_display"),
]),
(ti_escape_pressed, 0, 0, [], [(party_set_slot, "p_main_party", slot_party_gk_order, 0),(is_presentation_active, "prsnt_caba_order_display"),(presentation_set_duration, 0),]),
(0, 0, 0, [(key_clicked, key_f9)], [
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, 0),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3),
(is_presentation_active, "prsnt_caba_order_display"),
(presentation_set_duration, 0),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
]),
(0, 0, 0, [(game_key_clicked, gk_order_1)], [
(try_begin),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3),
(party_set_slot, "p_main_party", slot_party_gk_order, gk_order_1),
(else_try),
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1), #HOLD
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #ADVANCE
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3), #HOLD FIRE
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
(try_end),
]),
(0, 0, 0, [(game_key_clicked, gk_order_2)], [
(try_begin),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3),
(party_set_slot, "p_main_party", slot_party_gk_order, gk_order_2),
(else_try),
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1), #FOLLOW
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #FALL BACK
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3), #FIRE AT WILL
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
(try_end),
]),
(0, 0, 0, [(game_key_clicked, gk_order_3)], [
(try_begin),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2),
(neg|party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3),
(party_set_slot, "p_main_party", slot_party_gk_order, gk_order_3),
(else_try),
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1), #CHARGE
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #SPREAD OUT
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3), #BLUNT WEAPONS
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
(try_end),
]),
(0, 0, 0, [(game_key_clicked, gk_order_4)], [
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1), #STAND GROUND
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #STAND CLOSER
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_3), #ANY WEAPON
(call_script, "script_order_set_slot_index", clear),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
]),
(0, 0, 0, [(game_key_clicked, gk_order_5)], [
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, 0),
(party_set_slot, "p_main_party", slot_party_gk_order, gk_order_5),
(start_presentation, "prsnt_caba_order_display"),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_1), #RETREAT
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #MOUNT
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_5), #One-Hander
(call_script, "script_order_weapon_type_switch", onehand),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_6), #Shield
(call_script, "script_order_weapon_type_switch", shield),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, k_order_7), #Begin Skirmish
(call_script, "script_order_skirmish_begin_end", skirmish),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
]),
(0, 0, 0, [(game_key_clicked, gk_order_6)], [
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, 0),
(party_set_slot, "p_main_party", slot_party_gk_order, gk_order_6),
(start_presentation, "prsnt_caba_order_display"),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_2), #DISMOUNT
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_5), #Two-Handers
(call_script, "script_order_weapon_type_switch", twohands),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_6), #No Shield
(call_script, "script_order_weapon_type_switch", noshield),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, k_order_7), #End Skirmish
(call_script, "script_order_skirmish_begin_end", end_skirmish),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
]),
(0, 0, 0, [(key_clicked, k_order_7)], [ #f7
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, 0),
(party_set_slot, "p_main_party", slot_party_gk_order, k_order_7),
(start_presentation, "prsnt_caba_order_display"),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_5), #Polearms
(call_script, "script_order_weapon_type_switch", polearm),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(else_try),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_6), #Free Shield
(call_script, "script_order_weapon_type_switch", free),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
]),
(0, 0, 0, [(key_clicked, k_order_
], [ #F8
(try_begin),
(party_slot_eq, "p_main_party", slot_party_gk_order, gk_order_5),
(call_script, "script_order_weapon_type_switch", ranged),
(party_set_slot, "p_main_party", slot_party_gk_order, 0),
(try_end),
]),
(0.5, 0, 0, [(call_script, "script_cf_order_skirmish_check")], [(call_script, "script_order_skirmish_skirmish")]),
]
## Caba'drin Orders End