From 14706a98f4f388048a822efe9b0ff798b5c8a65e Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Fri, 29 May 2020 17:48:58 -0700 Subject: [PATCH] fixes --- .../modules/mob/living/living_active_parry.dm | 20 +++++++++++++++---- .../mob/living/living_blocking_parrying.dm | 2 ++ 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/living_active_parry.dm b/code/modules/mob/living/living_active_parry.dm index 9ccb43ff45..3838dea84d 100644 --- a/code/modules/mob/living/living_active_parry.dm +++ b/code/modules/mob/living/living_active_parry.dm @@ -45,7 +45,7 @@ parry_start_time = world.time successful_parries = list() addtimer(CALLBACK(src, .proc/end_parry_sequence), full_parry_duration) - handle_parry_starting_effects() + handle_parry_starting_effects(data) return TRUE /** @@ -53,12 +53,15 @@ */ /mob/living/proc/end_parry_sequence() var/datum/block_parry_data/data = get_parry_data() + var/list/effect_text = list() if(!length(successful_parries)) // didn't parry anything successfully if(data.parry_failed_stagger_duration) Stagger(data.parry_failed_stagger_duration) + effect_text += "staggering themselves" if(data.parry_failed_clickcd_duration) changeNext_move(data.parry_failed_clickcd_duration) - handle_parry_ending_effects() + effect_text += "throwing themselves off balance" + handle_parry_ending_effects(data, effect_text) parrying = NOT_PARRYING parry_start_time = 0 successful_parries = null @@ -68,12 +71,20 @@ */ /mob/living/proc/handle_parry_starting_effects(datum/block_parry_data/data) new /obj/effect/abstract/parry/main(null, data, src) + playsound(src, data.parry_start_sound, 75, 1) + switch(parrying) + if(ITEM_PARRY) + visible_message("[src] swings [active_parry_item], !") + else + visible_message("[src] rushes forwards!") /** * Handles ending effects for parrying. */ -/mob/living/proc/handle_parry_ending_effects() - return +/mob/living/proc/handle_parry_ending_effects(datum/block_parry_data/data, list/failed_effect_text) + if(length(successful_parries)) + return + visible_message("[src] fails to connect their parry[failed_effect_text? english_list(failed_effect_text) : ""]!") /** * Gets this item's datum/block_parry_data @@ -261,6 +272,7 @@ var/mob/living/owner /obj/effect/abstract/parry/main + name = null icon_state = "parry_bm_hold" /obj/effect/abstract/parry/main/Initialize(mapload, datum/block_parry_data/data, mob/living/owner) diff --git a/code/modules/mob/living/living_blocking_parrying.dm b/code/modules/mob/living/living_blocking_parrying.dm index 81f6208793..2f75f11142 100644 --- a/code/modules/mob/living/living_blocking_parrying.dm +++ b/code/modules/mob/living/living_blocking_parrying.dm @@ -118,6 +118,8 @@ GLOBAL_LIST_EMPTY(block_parry_data) ) /// Enable default handling of audio/visual feedback var/parry_default_handle_feedback = TRUE + /// Parry start sound + var/parry_start_sound = 'sound/block_parry/sfx-parry.ogg' /// Sounds for parrying var/list/parry_sounds = list('sound/block_parry/block_metal1.ogg' = 1, 'sound/block_parry/block_metal1.ogg' = 1) /// Stagger duration post-parry if you fail to parry an attack