[BOUNTY] Holy Light sect, dedicated to healing (#17924)

* you defy the light

* revive and be less bad flavor

* Update code/modules/religion/religion_sects.dm

Co-authored-by: Molti <108117184+Moltijoe@users.noreply.github.com>

---------

Co-authored-by: Molti <108117184+Moltijoe@users.noreply.github.com>
This commit is contained in:
ynot01
2023-02-17 15:41:40 -05:00
committed by GitHub
parent ad64a89f0a
commit a4229d8acb
6 changed files with 190 additions and 21 deletions

View File

@@ -391,6 +391,11 @@
alert_type = null
var/hand
var/deathTick = 0
var/efficiency = 1
/datum/status_effect/hippocraticOath/on_creation(mob/living/new_owner, _efficiency)
efficiency = _efficiency
. = ..()
/datum/status_effect/hippocraticOath/on_apply()
//Makes the user passive, it's in their oath not to harm!
@@ -426,8 +431,9 @@
if(iscarbon(owner))
var/mob/living/carbon/itemUser = owner
var/obj/item/heldItem = itemUser.get_item_for_held_index(hand)
if(heldItem == null || heldItem.type != /obj/item/rod_of_asclepius) //Checks to make sure the rod is still in their hand
if(heldItem == null || !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.efficiency = efficiency
newRod.activated()
if(!itemUser.has_hand_for_held_index(hand))
//If user does not have the corresponding hand anymore, give them one and return the rod to their hand
@@ -447,31 +453,31 @@
//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")
itemUser.adjustBruteLoss(-1.5)
itemUser.adjustFireLoss(-1.5)
itemUser.adjustToxLoss(-1.5, forced = TRUE) //Because Slime People are people too
itemUser.adjustOxyLoss(-1.5)
itemUser.adjustStaminaLoss(-1.5)
itemUser.adjustOrganLoss(ORGAN_SLOT_BRAIN, -1.5)
itemUser.adjustCloneLoss(-0.5) //Becasue apparently clone damage is the bastion of all health
itemUser.adjustBruteLoss(-1.5 * efficiency)
itemUser.adjustFireLoss(-1.5 * efficiency)
itemUser.adjustToxLoss(-1.5 * efficiency, forced = TRUE) //Because Slime People are people too
itemUser.adjustOxyLoss(-1.5 * efficiency)
itemUser.adjustStaminaLoss(-1.5 * efficiency)
itemUser.adjustOrganLoss(ORGAN_SLOT_BRAIN, -1.5 * efficiency)
itemUser.adjustCloneLoss(-0.5 * efficiency) //Becasue apparently clone damage is the bastion of all health
//Heal all those around you, unbiased
for(var/mob/living/L in view(7, owner))
if(L.health < L.maxHealth)
new /obj/effect/temp_visual/heal(get_turf(L), "#375637")
if(iscarbon(L))
L.adjustBruteLoss(-3.5)
L.adjustFireLoss(-3.5)
L.adjustToxLoss(-3.5, forced = TRUE) //Because Slime People are people too
L.adjustOxyLoss(-3.5)
L.adjustStaminaLoss(-3.5)
L.adjustOrganLoss(ORGAN_SLOT_BRAIN, -3.5)
L.adjustCloneLoss(-1) //Becasue apparently clone damage is the bastion of all health
L.adjustBruteLoss(-3.5 * efficiency)
L.adjustFireLoss(-3.5 * efficiency)
L.adjustToxLoss(-3.5 * efficiency, forced = TRUE) //Because Slime People are people too
L.adjustOxyLoss(-3.5 * efficiency)
L.adjustStaminaLoss(-3.5 * efficiency)
L.adjustOrganLoss(ORGAN_SLOT_BRAIN, -3.5 * efficiency)
L.adjustCloneLoss(-1 * efficiency) //Becasue apparently clone damage is the bastion of all health
else if(issilicon(L))
L.adjustBruteLoss(-3.5)
L.adjustFireLoss(-3.5)
L.adjustBruteLoss(-3.5 * efficiency)
L.adjustFireLoss(-3.5 * efficiency)
else if(isanimal(L))
var/mob/living/simple_animal/SM = L
SM.adjustHealth(-3.5, forced = TRUE)
SM.adjustHealth(-3.5 * efficiency, forced = TRUE)
/datum/status_effect/good_music
id = "Good Music"