Skip to content

Commit 79514ad

Browse files
authored
Evil Disease Cures (#6781)
1 parent 8324d4e commit 79514ad

File tree

6 files changed

+18
-1
lines changed

6 files changed

+18
-1
lines changed

code/__DEFINES/mobs.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,8 @@ GLOBAL_LIST_INIT(layers_to_offset, list(
926926
#define HEAL_CC_STATUS (1<<18)
927927
/// Deletes any restraints on the mob (handcuffs / legcuffs)
928928
#define HEAL_RESTRAINTS (1<<19)
929+
/// Heals any postive diseases
930+
#define HEAL_POSTIVE_DISEASES (1<<20)
929931

930932
/// Combination flag to only heal the main damage types.
931933
#define HEAL_DAMAGE (HEAL_BRUTE|HEAL_BURN|HEAL_TOX|HEAL_OXY|HEAL_CLONE|HEAL_STAM)

code/game/objects/items/storage/uplink_kits.dm

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -439,7 +439,7 @@
439439

440440
/obj/item/storage/box/syndie_kit/chemical/Initialize(mapload)
441441
. = ..()
442-
atom_storage.max_slots = 14
442+
atom_storage.max_slots = 15
443443

444444
/obj/item/storage/box/syndie_kit/chemical/PopulateContents()
445445
new /obj/item/reagent_containers/cup/bottle/polonium(src)
@@ -455,6 +455,7 @@
455455
new /obj/item/reagent_containers/cup/bottle/coniine(src)
456456
new /obj/item/reagent_containers/cup/bottle/curare(src)
457457
new /obj/item/reagent_containers/cup/bottle/amanitin(src)
458+
new /obj/item/reagent_containers/cup/bottle/antipathogenic_changeling(src)
458459
new /obj/item/reagent_containers/syringe(src)
459460

460461
/obj/item/storage/box/syndie_kit/nuke

code/modules/antagonists/monster_hunters/tools/blood_vial.dm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@
7777
/datum/status_effect/cursed_blood/on_apply()
7878
to_chat(owner, span_warning("You feel a great power surging through you!"))
7979
owner.add_movespeed_modifier(/datum/movespeed_modifier/cursed_blood)
80+
owner.fully_heal(HEAL_NEGATIVE_DISEASES)
8081
return TRUE
8182

8283
/datum/status_effect/cursed_blood/on_remove()

code/modules/mob/living/carbon/carbon.dm

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -939,6 +939,11 @@
939939
if(disease.severity != DISEASE_SEVERITY_POSITIVE)
940940
disease.cure(FALSE)
941941

942+
if(heal_flags & HEAL_POSTIVE_DISEASES)
943+
for(var/datum/disease/disease as anything in diseases)
944+
if(disease.severity == DISEASE_SEVERITY_POSITIVE)
945+
disease.cure(FALSE)
946+
942947
if(heal_flags & HEAL_WOUNDS)
943948
for(var/datum/wound/wound as anything in all_wounds)
944949
wound.remove_wound()

code/modules/reagents/chemistry/reagents/other_reagents.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2832,6 +2832,7 @@
28322832
drinker.adjustBruteLoss(-2 * REM * seconds_per_tick, FALSE)
28332833
drinker.adjustFireLoss(-2 * REM * seconds_per_tick, FALSE)
28342834
drinker.cause_pain(BODY_ZONES_ALL, -5 * REM * seconds_per_tick) // MONKESTATION ADDITION
2835+
drinker.fully_heal(HEAL_NEGATIVE_DISEASES)
28352836
if(drinker.blood_volume < BLOOD_VOLUME_NORMAL)
28362837
drinker.blood_volume += 3 * REM * seconds_per_tick
28372838
else
@@ -2840,6 +2841,7 @@
28402841
drinker.adjustFireLoss(2 * REM * seconds_per_tick, FALSE)
28412842
drinker.adjustOxyLoss(2 * REM * seconds_per_tick, FALSE)
28422843
drinker.adjustBruteLoss(2 * REM * seconds_per_tick, FALSE)
2844+
drinker.fully_heal(HEAL_POSTIVE_DISEASES)
28432845
..()
28442846
return TRUE
28452847

code/modules/reagents/reagent_containers/cups/bottle.dm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -527,3 +527,9 @@
527527
name = "bottle of laugh syrup"
528528
desc = "A pump bottle containing laugh syrup. The product of juicing Laughin' Peas. Fizzy, and seems to change flavour based on what it's used with!"
529529
list_reagents = list(/datum/reagent/consumable/laughsyrup = 50)
530+
531+
//Changeling stuff
532+
/obj/item/reagent_containers/cup/bottle/antipathogenic_changeling
533+
name = "Changeling Immunoglobulin bottle"
534+
desc = "A small bottle. Contains Changeling Immunoglobulin."
535+
list_reagents = list(/datum/reagent/medicine/antipathogenic/changeling = 30)

0 commit comments

Comments
 (0)