(ti_on_agent_spawn, 0, 0, [],
[
(store_trigger_param_1, ":agent_no"),
(agent_is_human, ":agent_no"),
(agent_is_alive, ":agent_no"),
(agent_get_team, ":agent_team", ":agent_no"),
(try_begin),
(this_or_next|eq, ":agent_team", "$defender_team"),
(eq, ":agent_team", "$defender_team_2"),
(agent_set_accuracy_modifier, ":agent_no", 300),
(agent_get_troop_id, ":troop", ":agent_no"),
(troop_is_guarantee_ranged, ":troop"),
(assign, ":end", ek_head),
(try_for_range, ":slot", ek_item_0, ":end"),
(agent_get_item_slot, ":cur_weapon", ":agent_no", ":slot"),
(gt, ":cur_weapon", -1),
(item_get_type, ":type", ":cur_weapon"),
(eq, ":type", itp_type_thrown),
(agent_equip_item,":agent_no", ":cur_weapon"),
(agent_set_wielded_item, ":agent_no", ":cur_weapon"),
(assign, ":end", ek_item_0),
(try_end),
(else_try),
(this_or_next|eq, ":agent_team", "$attacker_team"),
(eq, ":agent_team", "$attacker_team_2"),
(agent_get_troop_id, ":troop", ":agent_no"),
(troop_is_guarantee_ranged, ":troop"),
(agent_set_accuracy_modifier, ":agent_no", 50),
(try_end),
]),