[MIRROR] More redspace modifier tweaks (#12131)

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2025-12-18 06:05:26 -05:00
committed by GitHub
co-authored by Cameron Lennox
parent 765fcd057f
commit 8fd4fe2285
13 changed files with 592 additions and 19 deletions
+26 -7
View File
@@ -12,32 +12,51 @@
drop_sound = 'sound/items/drop/sword.ogg'
pickup_sound = 'sound/items/pickup/sword.ogg'
/obj/item/nullrod/attack(mob/M as mob, mob/living/user as mob) //Paste from old-code to decult with a null rod.
/obj/item/nullrod/attack(mob/M as mob, mob/living/user as mob)
add_attack_logs(user,M,"Hit with [src] (nullrod)")
user.setClickCooldown(user.get_attack_speed(src))
user.do_attack_animation(M)
if (!user.IsAdvancedToolUser())
if(!user.IsAdvancedToolUser())
to_chat(user, span_danger("You don't have the dexterity to do this!"))
return
if ((CLUMSY in user.mutations) && prob(50))
if((CLUMSY in user.mutations) && prob(50))
to_chat(user, span_danger("The rod slips out of your hand and hits your head."))
user.take_organ_damage(10)
user.Paralyse(20)
return
if (M.stat !=2)
if(M.stat != DEAD)
if(user?.mind?.assigned_role != JOB_CHAPLAIN)
to_chat(user, span_danger("You feel that only a chaplain can wield the null rod's true power!"))
..()
return
if(ishuman(M))
var/mob/living/carbon/human/infected = M
if(infected.has_modifier_of_type(/datum/modifier/redspace_corruption))
infected.remove_modifiers_of_type(/datum/modifier/redspace_corruption)
to_chat(user, "You wave [src] over [infected]'s head, and feel a dark presence leave [M.p_their()] body.")
to_chat(infected, "[user] waves [src] over your head and you feel a dark presence leave your body.")
if(infected.HasDisease(/datum/disease/fleshy_spread))
for(var/datum/disease/fleshy_spread/disease in infected.GetViruses())
disease.cure()
break
to_chat(user, "You wave [src] over [infected]'s head, curing them of their infection.")
to_chat(infected, "[user] waves [src] over your head, curing you of your infection.")
//Chaplain null rod removes ALL unholy traits.
REMOVE_TRAITS_IN(M, UNHOLY_TRAIT)
if(cult && (M.mind in cult.current_antagonists) && prob(33))
to_chat(M, span_danger("The power of [src] clears your mind of the cult's influence!"))
to_chat(user, span_danger("You wave [src] over [M]'s head and see their eyes become clear, their mind returning to normal."))
cult.remove_antagonist(M.mind)
M.visible_message(span_danger("\The [user] waves \the [src] over \the [M]'s head."))
else if(prob(10))
to_chat(user, span_danger("The rod slips in your hand."))
..()
else
to_chat(user, span_danger("The rod appears to do nothing."))
M.visible_message(span_danger("\The [user] waves \the [src] over \the [M]'s head."))