From 477c4c01e738de230e599736bc160e7966ca74e3 Mon Sep 17 00:00:00 2001 From: private-tristan Date: Wed, 20 Dec 2023 20:27:32 -0500 Subject: [PATCH 1/2] nerfs window frames --- code/__DEFINES/xeno.dm | 2 +- code/game/objects/structures/window_frame.dm | 8 -------- .../carbon/xenomorph/abilities/ability_helper_procs.dm | 5 ----- .../carbon/xenomorph/abilities/runner/runner_powers.dm | 6 ------ 4 files changed, 1 insertion(+), 20 deletions(-) diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm index 630c9740dc80..2e9e5da9664b 100644 --- a/code/__DEFINES/xeno.dm +++ b/code/__DEFINES/xeno.dm @@ -27,7 +27,7 @@ /// Usually half a second's delay. #define xeno_miss_delay(X) (X.next_move = world.time + ((10 + X.caste.attack_delay + X.attack_speed_modifier) * 0.5)) -// Determines how xenos interact with walls, normal nothing, sharp can destroy normal walls and window frame, very sharp reinforced ones. +// Determines how xenos interact with walls. normal nothing, sharp can destroy normal walls, very sharp reinforced ones. #define CLAW_TYPE_NORMAL 1 #define CLAW_TYPE_SHARP 2 #define CLAW_TYPE_VERY_SHARP 3 diff --git a/code/game/objects/structures/window_frame.dm b/code/game/objects/structures/window_frame.dm index 2c165b424dad..fd0a30b157c0 100644 --- a/code/game/objects/structures/window_frame.dm +++ b/code/game/objects/structures/window_frame.dm @@ -135,18 +135,10 @@ . = ..() /obj/structure/window_frame/attack_alien(mob/living/carbon/xenomorph/user) - if(!reinforced && user.claw_type >= CLAW_TYPE_SHARP) user.animation_attack_on(src) playsound(src, 'sound/effects/metalhit.ogg', 25, 1) take_damage((max_health / XENO_HITS_TO_DESTROY_WINDOW_FRAME) + 1) return XENO_ATTACK_ACTION - else if (reinforced && user.claw_type >= CLAW_TYPE_SHARP) - user.animation_attack_on(src) - playsound(src, 'sound/effects/metalhit.ogg', 25, 1) - take_damage((max_health / XENO_HITS_TO_DESTROY_R_WINDOW_FRAME) + 1) - return XENO_ATTACK_ACTION - - . = ..() /obj/structure/window_frame/bullet_act(obj/projectile/P) bullet_ping(P) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/ability_helper_procs.dm b/code/modules/mob/living/carbon/xenomorph/abilities/ability_helper_procs.dm index 1fb0f3a92269..7f3d886deb3a 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/ability_helper_procs.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/ability_helper_procs.dm @@ -31,11 +31,6 @@ if(isobj(O)) I = O - if(istype(I, /obj/structure/window_frame)) - var/obj/structure/window_frame/WF = I - if(WF.reinforced && acid_type != /obj/effect/xenomorph/acid/strong) - to_chat(src, SPAN_WARNING("This [O.name] is too tough to be melted by our weak acid.")) - return wait_time = I.get_applying_acid_time() if(wait_time == -1) diff --git a/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_powers.dm b/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_powers.dm index dad3a992e404..b907a382dda1 100644 --- a/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_powers.dm +++ b/code/modules/mob/living/carbon/xenomorph/abilities/runner/runner_powers.dm @@ -77,12 +77,6 @@ if(isobj(affected_atom)) object = affected_atom - if(istype(object, /obj/structure/window_frame)) - var/obj/structure/window_frame/window_frame = object - if(window_frame.reinforced && acid_type != /obj/effect/xenomorph/acid/strong) - to_chat(src, SPAN_WARNING("This [object.name] is too tough to be melted by our weak acid.")) - return - wait_time = object.get_applying_acid_time() if(wait_time == -1) to_chat(src, SPAN_WARNING("We cannot dissolve [object].")) From db6e165da05cb405b2bda797d2ac41b3fb05ac1f Mon Sep 17 00:00:00 2001 From: private-tristan Date: Thu, 21 Dec 2023 18:38:08 -0500 Subject: [PATCH 2/2] Can only acid --- code/__DEFINES/xeno.dm | 2 +- code/game/objects/structures/window_frame.dm | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/xeno.dm b/code/__DEFINES/xeno.dm index 2e9e5da9664b..630c9740dc80 100644 --- a/code/__DEFINES/xeno.dm +++ b/code/__DEFINES/xeno.dm @@ -27,7 +27,7 @@ /// Usually half a second's delay. #define xeno_miss_delay(X) (X.next_move = world.time + ((10 + X.caste.attack_delay + X.attack_speed_modifier) * 0.5)) -// Determines how xenos interact with walls. normal nothing, sharp can destroy normal walls, very sharp reinforced ones. +// Determines how xenos interact with walls, normal nothing, sharp can destroy normal walls and window frame, very sharp reinforced ones. #define CLAW_TYPE_NORMAL 1 #define CLAW_TYPE_SHARP 2 #define CLAW_TYPE_VERY_SHARP 3 diff --git a/code/game/objects/structures/window_frame.dm b/code/game/objects/structures/window_frame.dm index fd0a30b157c0..2c165b424dad 100644 --- a/code/game/objects/structures/window_frame.dm +++ b/code/game/objects/structures/window_frame.dm @@ -135,10 +135,18 @@ . = ..() /obj/structure/window_frame/attack_alien(mob/living/carbon/xenomorph/user) + if(!reinforced && user.claw_type >= CLAW_TYPE_SHARP) user.animation_attack_on(src) playsound(src, 'sound/effects/metalhit.ogg', 25, 1) take_damage((max_health / XENO_HITS_TO_DESTROY_WINDOW_FRAME) + 1) return XENO_ATTACK_ACTION + else if (reinforced && user.claw_type >= CLAW_TYPE_SHARP) + user.animation_attack_on(src) + playsound(src, 'sound/effects/metalhit.ogg', 25, 1) + take_damage((max_health / XENO_HITS_TO_DESTROY_R_WINDOW_FRAME) + 1) + return XENO_ATTACK_ACTION + + . = ..() /obj/structure/window_frame/bullet_act(obj/projectile/P) bullet_ping(P)