Fixes the Rod of Asclepius dupe exploit (#17112)

This commit is contained in:
Farie82
2021-12-03 15:06:51 +01:00
committed by GitHub
parent e837482575
commit 3c129736cd
4 changed files with 92 additions and 45 deletions
-28
View File
@@ -209,7 +209,6 @@
tick_interval = 25
examine_text = "<span class='notice'>They seem to have an aura of healing and helpfulness about them.</span>"
alert_type = null
var/hand
var/deathTick = 0
/// How many points the rod has to heal with, maxes at 50, or whatever heal_points_max is set to.
var/heal_points = 50
@@ -246,33 +245,6 @@
else
if(ishuman(owner))
var/mob/living/carbon/human/itemUser = owner
var/obj/item/heldItem = (hand == 1 ? itemUser.l_hand : itemUser.r_hand)
if(!heldItem || !istype(heldItem, /obj/item/rod_of_asclepius)) //Checks to make sure the rod is still in their hand
var/obj/item/rod_of_asclepius/newRod = new(itemUser.loc)
newRod.activated()
if(hand)
itemUser.drop_l_hand()
if(itemUser.put_in_l_hand(newRod))
to_chat(itemUser, "<span class='notice'>The Rod of Asclepius suddenly grows back out of your arm!</span>")
else
if(!itemUser.has_organ("l_arm"))
new /obj/item/organ/external/arm(itemUser)
new /obj/item/organ/external/hand(itemUser)
itemUser.update_body()
itemUser.put_in_l_hand(newRod)
to_chat(itemUser, "<span class='notice'>Your arm suddenly grows back with the Rod of Asclepius still attached!</span>")
else
itemUser.drop_r_hand()
if(itemUser.put_in_r_hand(newRod))
to_chat(itemUser, "<span class='notice'>The Rod of Asclepius suddenly grows back out of your arm!</span>")
else
if(!itemUser.has_organ("r_arm"))
new /obj/item/organ/external/arm/right(itemUser)
new /obj/item/organ/external/hand/right(itemUser)
itemUser.update_body()
itemUser.put_in_r_hand(newRod)
to_chat(itemUser, "<span class='notice'>Your arm suddenly grows back with the Rod of Asclepius still attached!</span>")
//Because a servant of medicines stops at nothing to help others, lets keep them on their toes and give them an additional boost.
if(itemUser.health < itemUser.maxHealth)
new /obj/effect/temp_visual/heal(get_turf(itemUser), "#375637")