From f6031caf8f61d8db8eee6b615e414ff8eec0e5f4 Mon Sep 17 00:00:00 2001 From: vampirebat74 <36343755+vampirebat74@users.noreply.github.com> Date: Sat, 23 Dec 2023 02:04:43 -0500 Subject: [PATCH] Fixes charge weapons (#1754) fixes dimensional ripple removes an uncecessary faction check Co-authored-by: Mr.Heavenly --- code/game/objects/items/ego_weapons/he.dm | 1 + .../objects/items/ego_weapons/non_abnormality/_charge.dm | 4 +++- code/game/objects/items/ego_weapons/subtype/charge.dm | 2 +- code/modules/projectiles/projectile/ego_bullets/waw.dm | 7 +++---- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/code/game/objects/items/ego_weapons/he.dm b/code/game/objects/items/ego_weapons/he.dm index 707832b173ca..c4e29c1af343 100644 --- a/code/game/objects/items/ego_weapons/he.dm +++ b/code/game/objects/items/ego_weapons/he.dm @@ -1025,6 +1025,7 @@ name = "dimensional ripple" desc = "They should've died after bleeding so much. You usually don't quarantine a corpse...." icon_state = "warp2" + force = 24 lefthand_file = 'icons/mob/inhands/weapons/ego_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/ego_righthand.dmi' inhand_x_dimension = 32 diff --git a/code/game/objects/items/ego_weapons/non_abnormality/_charge.dm b/code/game/objects/items/ego_weapons/non_abnormality/_charge.dm index c0c757c50f29..f529ae48dd66 100644 --- a/code/game/objects/items/ego_weapons/non_abnormality/_charge.dm +++ b/code/game/objects/items/ego_weapons/non_abnormality/_charge.dm @@ -13,7 +13,9 @@ . = ..() if(!.) return FALSE - if(charge<20 && target.stat != DEAD) + if((target.stat == DEAD) || target.status_flags & GODMODE) + return FALSE + if(charge<20) charge+=1 /obj/item/ego_weapon/city/charge/proc/release_charge(mob/living/target, mob/living/user) diff --git a/code/game/objects/items/ego_weapons/subtype/charge.dm b/code/game/objects/items/ego_weapons/subtype/charge.dm index 948eddfba882..63e9aee119ef 100644 --- a/code/game/objects/items/ego_weapons/subtype/charge.dm +++ b/code/game/objects/items/ego_weapons/subtype/charge.dm @@ -13,7 +13,7 @@ . = ..() if(!.) return FALSE - if((target.stat == DEAD) || (GODMODE in target.status_flags))//if the target is dead or godmode + if((target.stat == DEAD) || target.status_flags & GODMODE)//if the target is dead or godmode return FALSE if(charge<20) charge+=1 diff --git a/code/modules/projectiles/projectile/ego_bullets/waw.dm b/code/modules/projectiles/projectile/ego_bullets/waw.dm index 84092bf26491..be0a324f9074 100644 --- a/code/modules/projectiles/projectile/ego_bullets/waw.dm +++ b/code/modules/projectiles/projectile/ego_bullets/waw.dm @@ -251,12 +251,11 @@ /obj/projectile/ego_bullet/ego_warring/on_hit(atom/target, blocked = FALSE) . = ..() var/obj/item/gun/ego_gun/warring/bow = fired_from - var/mob/living/user = firer - var/mob/living/carbon/human/H = target + var/mob/living/L = target if(!isliving(target)) return - if(user.faction_check_mob(H))//player faction - return + if((L.stat == DEAD) || L.status_flags & GODMODE)//if the target is dead or godmode + return FALSE bow.Build_Charge() return