mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-10 09:54:52 +00:00
New branch test
This commit is contained in:
@@ -30,6 +30,8 @@
|
|||||||
|
|
||||||
#define STATUS_EFFECT_FLESHMEND /datum/status_effect/fleshmend //Very fast healing; suppressed by fire, and heals less fire damage
|
#define STATUS_EFFECT_FLESHMEND /datum/status_effect/fleshmend //Very fast healing; suppressed by fire, and heals less fire damage
|
||||||
|
|
||||||
|
#define STATUS_EFFECT_PANACEA /datum/status_effect/panacea //Anatomic panacea that directly heals, rather than injecting a small chemical cocktail
|
||||||
|
|
||||||
#define STATUS_EFFECT_EXERCISED /datum/status_effect/exercised //Prevents heart disease
|
#define STATUS_EFFECT_EXERCISED /datum/status_effect/exercised //Prevents heart disease
|
||||||
|
|
||||||
#define STATUS_EFFECT_HIPPOCRATIC_OATH /datum/status_effect/hippocraticOath //Gives you an aura of healing as well as regrowing the Rod of Asclepius if lost
|
#define STATUS_EFFECT_HIPPOCRATIC_OATH /datum/status_effect/hippocraticOath //Gives you an aura of healing as well as regrowing the Rod of Asclepius if lost
|
||||||
|
|||||||
@@ -580,4 +580,63 @@
|
|||||||
/datum/status_effect/regenerative_core/on_remove()
|
/datum/status_effect/regenerative_core/on_remove()
|
||||||
. = ..()
|
. = ..()
|
||||||
REMOVE_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, "regenerative_core")
|
REMOVE_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, "regenerative_core")
|
||||||
owner.updatehealth()
|
owner.updatehealth()
|
||||||
|
|
||||||
|
/datum/status_effect/panacea
|
||||||
|
id = "Anatomic Panacea"
|
||||||
|
duration = 100
|
||||||
|
tick_interval = 10
|
||||||
|
alert_type = /obj/screen/alert/status_effect/panacea
|
||||||
|
|
||||||
|
/obj/screen/alert/status_effect/panacea
|
||||||
|
name = "Panacea"
|
||||||
|
desc = "We purge the impurities from our body."
|
||||||
|
icon_state = "panacea"
|
||||||
|
|
||||||
|
// Changeling's anatomic panacea now in buff form. Directly fixes issues instead of injecting chems
|
||||||
|
/datum/status_effect/panacea/tick()
|
||||||
|
var/mob/living/carbon/M = owner
|
||||||
|
|
||||||
|
//Heal brain damage and toxyloss, alongside trauma
|
||||||
|
owner.adjustOrganLoss(ORGAN_SLOT_BRAIN, -8)
|
||||||
|
owner.adjustToxLoss(-6, forced = TRUE)
|
||||||
|
M.cure_trauma_type(resilience = TRAUMA_RESILIENCE_BASIC)
|
||||||
|
//Purges 50 rads per tick
|
||||||
|
if(owner.radiation > 0)
|
||||||
|
owner.radiation -= min(owner.radiation, 50)
|
||||||
|
//Mutadone effects
|
||||||
|
owner.jitteriness = 0
|
||||||
|
if(owner.has_dna())
|
||||||
|
M.dna.remove_all_mutations(mutadone = TRUE)
|
||||||
|
if(!QDELETED(owner)) //We were a monkey, now a human
|
||||||
|
..()
|
||||||
|
// Purges toxins
|
||||||
|
for(var/datum/reagent/toxin/R in owner.reagents.reagent_list)
|
||||||
|
owner.reagents.remove_reagent(R.type, 5)
|
||||||
|
//Antihol effects
|
||||||
|
M.reagents.remove_all_type(/datum/reagent/consumable/ethanol, 10, 0, 1)
|
||||||
|
M.drunkenness = max(M.drunkenness - 10, 0)
|
||||||
|
owner.dizziness = 0
|
||||||
|
owner.drowsyness = 0
|
||||||
|
owner.slurring = 0
|
||||||
|
owner.confused = 0
|
||||||
|
//Organ and disease cure moved from panacea.dm to buff proc
|
||||||
|
var/list/bad_organs = list(
|
||||||
|
owner.getorgan(/obj/item/organ/body_egg),
|
||||||
|
owner.getorgan(/obj/item/organ/zombie_infection))
|
||||||
|
for(var/o in bad_organs)
|
||||||
|
var/obj/item/organ/O = o
|
||||||
|
if(!istype(O))
|
||||||
|
continue
|
||||||
|
O.Remove()
|
||||||
|
if(iscarbon(owner))
|
||||||
|
var/mob/living/carbon/C = owner
|
||||||
|
C.vomit(0, toxic = TRUE)
|
||||||
|
O.forceMove(get_turf(owner))
|
||||||
|
if(isliving(owner))
|
||||||
|
var/mob/living/L = owner
|
||||||
|
for(var/thing in L.diseases)
|
||||||
|
var/datum/disease/D = thing
|
||||||
|
if(D.severity == DISEASE_SEVERITY_POSITIVE)
|
||||||
|
continue
|
||||||
|
D.cure()
|
||||||
@@ -3,41 +3,19 @@
|
|||||||
desc = "Expels impurifications from our form; curing diseases, removing parasites, sobering us, purging toxins and radiation, and resetting our genetic code completely."
|
desc = "Expels impurifications from our form; curing diseases, removing parasites, sobering us, purging toxins and radiation, and resetting our genetic code completely."
|
||||||
helptext = "Can be used while unconscious."
|
helptext = "Can be used while unconscious."
|
||||||
chemical_cost = 20
|
chemical_cost = 20
|
||||||
dna_cost = 1
|
dna_cost = 2
|
||||||
req_stat = UNCONSCIOUS
|
req_stat = UNCONSCIOUS
|
||||||
action_icon = 'icons/mob/actions/actions_changeling.dmi'
|
action_icon = 'icons/mob/actions/actions_changeling.dmi'
|
||||||
action_icon_state = "ling_anatomic_panacea"
|
action_icon_state = "ling_anatomic_panacea"
|
||||||
action_background_icon_state = "bg_ling"
|
action_background_icon_state = "bg_ling"
|
||||||
|
|
||||||
//Heals the things that the other regenerative abilities don't.
|
//Heals the things that the other regenerative abilities don't.
|
||||||
/obj/effect/proc_holder/changeling/panacea/sting_action(mob/user)
|
/obj/effect/proc_holder/changeling/panacea/sting_action(mob/living/user)
|
||||||
|
if(user.has_status_effect(STATUS_EFFECT_PANACEA))
|
||||||
|
to_chat(user, "<span class='warning'>We are already cleansing our impurities!</span>")
|
||||||
|
return
|
||||||
to_chat(user, "<span class='notice'>We cleanse impurities from our form.</span>")
|
to_chat(user, "<span class='notice'>We cleanse impurities from our form.</span>")
|
||||||
|
user.apply_status_effect(STATUS_EFFECT_PANACEA)
|
||||||
var/list/bad_organs = list(
|
|
||||||
user.getorgan(/obj/item/organ/body_egg),
|
|
||||||
user.getorgan(/obj/item/organ/zombie_infection))
|
|
||||||
|
|
||||||
for(var/o in bad_organs)
|
|
||||||
var/obj/item/organ/O = o
|
|
||||||
if(!istype(O))
|
|
||||||
continue
|
|
||||||
|
|
||||||
O.Remove()
|
|
||||||
if(iscarbon(user))
|
|
||||||
var/mob/living/carbon/C = user
|
|
||||||
C.vomit(0, toxic = TRUE)
|
|
||||||
O.forceMove(get_turf(user))
|
|
||||||
|
|
||||||
user.reagents.add_reagent(/datum/reagent/medicine/mutadone, 10)
|
|
||||||
user.reagents.add_reagent(/datum/reagent/medicine/pen_acid/pen_jelly, 20)
|
|
||||||
user.reagents.add_reagent(/datum/reagent/medicine/antihol, 10)
|
|
||||||
user.reagents.add_reagent(/datum/reagent/medicine/mannitol, 25)
|
|
||||||
|
|
||||||
if(isliving(user))
|
|
||||||
var/mob/living/L = user
|
|
||||||
for(var/thing in L.diseases)
|
|
||||||
var/datum/disease/D = thing
|
|
||||||
if(D.severity == DISEASE_SEVERITY_POSITIVE)
|
|
||||||
continue
|
|
||||||
D.cure()
|
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
|
//buffs.dm has the code for anatomic panacea
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 106 KiB After Width: | Height: | Size: 108 KiB |
Reference in New Issue
Block a user