diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm index 619815590de..fe234055c22 100644 --- a/code/game/objects/items/weapons/holy_weapons.dm +++ b/code/game/objects/items/weapons/holy_weapons.dm @@ -14,6 +14,7 @@ var/alignment_required var/alignment_prohibited var/sanctify_force = 0 + var/sound_played = FALSE /obj/item/nullrod/suicide_act(mob/user) user.visible_message("[user] is killing [user.p_them()]self with \the [src.name]! It looks like [user.p_theyre()] trying to get closer to god!") @@ -30,13 +31,24 @@ /obj/item/nullrod/pickup(mob/living/user) . = ..() - if(sanctify_force && (!user.mind || !user.mind.isholy)) - user.adjustBruteLoss(force) - user.adjustFireLoss(sanctify_force) - user.Weaken(5) - user.unEquip(src, 1) - to_chat(user, "[src] slips out of your grip as you pick it up, bouncing upwards and smacking you in the face!") - playsound(get_turf(user), 'sound/effects/hit_punch.ogg', 50, 1, -1) + if(sanctify_force) + if(!user.mind || !user.mind.isholy) + user.adjustBruteLoss(force) + user.adjustFireLoss(sanctify_force) + user.Weaken(5) + user.unEquip(src, 1) + user.visible_message("[src] slips out of the grip of [user] as they try to pick it up, bouncing upwards and smacking [user.p_them()] in the face!", \ + "[src] slips out of your grip as you pick it up, bouncing upwards and smacking you in the face!") + playsound(get_turf(user), 'sound/effects/hit_punch.ogg', 50, 1, -1) + spawn() + throw_at(get_edge_target_turf(user, pick(alldirs)), rand(1, 3), 5) + else + if(!sound_played) + sound_played = TRUE + SEND_SOUND(user, 'sound/effects/hallelujah.ogg') + user.visible_message("[src] glows with power as [user] picks it up!", \ + "[src] glows with power as you pick it up!") + /obj/item/nullrod/attack_self(mob/user) if(user.mind && (user.mind.isholy) && !reskinned) diff --git a/sound/effects/hallelujah.ogg b/sound/effects/hallelujah.ogg new file mode 100644 index 00000000000..f022c1d5939 Binary files /dev/null and b/sound/effects/hallelujah.ogg differ