From f8a190b337c1917da63187d2a14a7533757e7835 Mon Sep 17 00:00:00 2001 From: Tostah <64234012+Tostah@users.noreply.github.com> Date: Sat, 6 Dec 2025 01:49:55 -0500 Subject: [PATCH] Stomp Stomp Stomp (#94075) ## About The Pull Request ![ezgif-8a2574d82c46a44a](https://github.com/user-attachments/assets/d3f8c92e-9b4b-41c1-8400-d55224b81aef) (the glass and grille being broken in a single hit is the change here) - The Paddy and Ripley are the only mechs without enough force to one-shot windows (they two-shot instead). Reinforced plasma windows, plastitanium, basically any window except basic reinforced (and weaker) takes a bit more to kill but not substantially more. ## Why It's Good For The Game If walls and reinforced walls can be beaten through in a single hit, then surely that same mech will have no problems bashing through a glass window. ## Changelog :cl: Balance: increases mech damage to windows to feel more realistic /:cl: --- .../vehicles/mecha/mech_melee_attack.dm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/code/modules/vehicles/mecha/mech_melee_attack.dm b/code/modules/vehicles/mecha/mech_melee_attack.dm index 6d868f52e36..ed16bb8f60d 100644 --- a/code/modules/vehicles/mecha/mech_melee_attack.dm +++ b/code/modules/vehicles/mecha/mech_melee_attack.dm @@ -68,9 +68,26 @@ return take_damage(mecha_attacker.force * 3, mecha_attacker.damtype, "melee", FALSE, get_dir(src, mecha_attacker)) // multiplied by 3 so we can hit objs hard but not be overpowered against mobs. /obj/structure/window/mech_melee_attack(obj/vehicle/sealed/mecha/mecha_attacker, mob/living/user) + if(!user.combat_mode) + return if(!can_be_reached()) return - return ..() + + mecha_attacker.do_attack_animation(src) + switch(mecha_attacker.damtype) + if(BRUTE) + playsound(src, mecha_attacker.brute_attack_sound, 50, TRUE) + if(BURN) + playsound(src, mecha_attacker.burn_attack_sound, 50, TRUE) + else + return + mecha_attacker.visible_message(span_danger("[mecha_attacker] smashes [src]!"), span_danger("You smash [src]!"), null, COMBAT_MESSAGE_RANGE) + // Additionally destroy any grilles + for(var/obj/structure/grille/grille in src.loc) + if(istype(grille)) + grille.take_damage(mecha_attacker.force * 10, mecha_attacker.damtype, "melee", FALSE, get_dir(src, mecha_attacker)) + ..() + return take_damage(mecha_attacker.force * 100, mecha_attacker.damtype, "melee", FALSE, get_dir(src, mecha_attacker)) /obj/vehicle/mech_melee_attack(obj/vehicle/sealed/mecha/mecha_attacker, mob/living/user) if(!user.combat_mode)