###################################
# Garedyr blokowanie pociskow v2.1#
###################################
common_blokowanie_pociskow = (
ti_on_agent_hit, 0, 0, [],
[
(store_trigger_param_1, ":agent"),
(store_trigger_param, ":pocisk", 5),
(agent_is_human, ":agent"),
(agent_is_alive, ":agent"),
(agent_get_horse, ":kon", ":agent"),
(agent_get_defend_action, ":akcja", ":agent"),
(this_or_next|eq, ":akcja", 1), #parowanie
(eq, ":akcja", 2), #blokowanie
(agent_get_wielded_item, ":bron", ":agent"),
(gt, ":bron", 0),
(item_get_type, ":typ", ":bron"),
(eq, ":typ", itp_type_two_handed_wpn), #mozna blokowac tylko dwurecznym mieczem
(neq, ":pocisk", -1),
(item_get_type, ":typ_broni_dealer_agenta", ":pocisk"),
(try_begin),
(this_or_next|eq, ":typ_broni_dealer_agenta", itp_type_arrows),
(eq, ":typ_broni_dealer_agenta", itp_type_bolts),
(particle_system_burst, "psys_fire_sparks_1", pos0, 15),
(agent_play_sound, ":agent", "snd_hit_metal_metal"),
(try_begin),
(eq, ":kon", -1),
(store_random_in_range, ":random", 1, 5),
(try_begin),
(eq, ":random", 1),
(agent_set_animation, ":agent", "anim_parried_slashright_twohanded", 1),
(else_try),
(eq, ":random", 2),
(agent_set_animation, ":agent", "anim_parried_slashleft_twohanded", 1),
(else_try),
(eq, ":random", 3),
(agent_set_animation, ":agent", "anim_parried_overswing_twohanded", 1),
(else_try),
(agent_set_animation, ":agent", "anim_parried_overswing_twohanded", 1),
(try_end),
(else_try),
(store_random_in_range, ":random", 1, 3),
(try_begin),
(eq, ":random", 1),
(agent_set_animation, ":agent", "anim_parried_slash_horseback_right", 1),
(else_try),
(agent_set_animation, ":agent", "anim_parried_slash_horseback_left", 1),
(try_end),
(try_end),
(set_trigger_result, 0), #nadpisanie obrazen nowa wartoscia
(try_end),
])
Teraz wystarczy wkleić commona do dowolnej misji, w której chcemy mieć możliwość blokowania pocisków.
Przykład użycia w lead_charge:
(
"lead_charge",mtf_battle_mode,charge,
"You lead your men to battle.",
[
(1,mtef_defenders|mtef_team_0,0,aif_start_alarmed,12,[]),
(0,mtef_defenders|mtef_team_0,0,aif_start_alarmed,0,[]),
(4,mtef_attackers|mtef_team_1,0,aif_start_alarmed,12,[]),
(4,mtef_attackers|mtef_team_1,0,aif_start_alarmed,0,[]),
],
[
#---------------------------------------------
#Garedyr begin
common_blokowanie_pociskow,
#Garedyr end
#---------------------------------------------
EDIT
Uwzględniłem uwagi Daedalusa. Dziękuję mu za opinię oraz podanie nowych rzeczy, które zostały olane przez Taleworlds ;)