mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 07:08:00 +01:00
# Conflicts: # _maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm # _maps/RandomRuins/SpaceRuins/garbagetruck2.dmm # _maps/map_files/CatwalkStation/CatwalkStation_2023.dmm # _maps/map_files/tramstation/tramstation.dmm # code/_onclick/hud/new_player.dm # code/datums/components/squashable.dm # code/datums/diseases/advance/symptoms/heal.dm # code/datums/diseases/chronic_illness.dm # code/datums/status_effects/buffs.dm # code/datums/status_effects/debuffs/drunk.dm # code/datums/status_effects/debuffs/stamcrit.dm # code/game/machinery/computer/crew.dm # code/game/objects/items/devices/scanners/health_analyzer.dm # code/game/objects/items/wall_mounted.dm # code/game/turfs/closed/indestructible.dm # code/modules/admin/view_variables/filterrific.dm # code/modules/antagonists/heretic/influences.dm # code/modules/cargo/orderconsole.dm # code/modules/client/preferences.dm # code/modules/events/space_vines/vine_mutations.dm # code/modules/mob/dead/new_player/new_player.dm # code/modules/mob/living/carbon/human/death.dm # code/modules/mob/living/carbon/human/species_types/jellypeople.dm # code/modules/mob/living/damage_procs.dm # code/modules/mob/living/living.dm # code/modules/mob_spawn/ghost_roles/mining_roles.dm # code/modules/mob_spawn/mob_spawn.dm # code/modules/projectiles/ammunition/energy/laser.dm # code/modules/projectiles/guns/ballistic/launchers.dm # code/modules/projectiles/guns/energy/laser.dm # code/modules/reagents/chemistry/machinery/chem_dispenser.dm # code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm # code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm # code/modules/reagents/chemistry/reagents/medicine_reagents.dm # code/modules/surgery/healing.dm # code/modules/unit_tests/designs.dm # icons/mob/inhands/items_lefthand.dmi # icons/mob/inhands/items_righthand.dmi # tgui/packages/tgui/interfaces/ChemDispenser.tsx
106 lines
4.7 KiB
Plaintext
106 lines
4.7 KiB
Plaintext
/datum/disease/chronic_illness
|
|
name = "Hereditary Manifold Sickness"
|
|
max_stages = 5
|
|
spread_text = "Non-communicable disease"
|
|
spread_flags = DISEASE_SPREAD_NON_CONTAGIOUS
|
|
disease_flags = CHRONIC
|
|
infectable_biotypes = MOB_ORGANIC | MOB_MINERAL | MOB_ROBOTIC
|
|
process_dead = TRUE
|
|
stage_prob = 0.25
|
|
cure_text = "Sansufentanyl"
|
|
cures = list(/datum/reagent/medicine/sansufentanyl)
|
|
infectivity = 0
|
|
agent = "Quantum Entanglement"
|
|
viable_mobtypes = list(/mob/living/carbon/human)
|
|
desc = "A disease discovered in an Interdyne laboratory caused by subjection to timestream correction technology."
|
|
bypasses_immunity = TRUE // BUBBER EDIT ADD
|
|
severity = DISEASE_SEVERITY_UNCURABLE
|
|
bypasses_immunity = TRUE
|
|
var/being_stealthy = TRUE // BUBBER EDIT ADD
|
|
|
|
/datum/disease/chronic_illness/stage_act(seconds_per_tick, times_fired)
|
|
. = ..()
|
|
if(!.)
|
|
return
|
|
|
|
switch(stage)
|
|
if(1)
|
|
carrier = FALSE // Go fuck yourself
|
|
being_stealthy = TRUE // BUBBER EDIT ADD
|
|
if(2)
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
to_chat(affected_mob, span_warning("You feel dizzy."))
|
|
affected_mob.adjust_confusion(6 SECONDS)
|
|
being_stealthy = FALSE // BUBBER EDIT ADD
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
to_chat(affected_mob, span_notice("You look at your hand. Your vision blurs."))
|
|
affected_mob.set_eye_blur_if_lower(10 SECONDS)
|
|
being_stealthy = FALSE // BUBBER EDIT ADD
|
|
if(3)
|
|
var/need_mob_update = FALSE
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
to_chat(affected_mob, span_danger("You feel a very sharp pain in your chest!"))
|
|
being_stealthy = FALSE // BUBBER EDIT ADD
|
|
if(prob(45))
|
|
affected_mob.vomit(VOMIT_CATEGORY_BLOOD, lost_nutrition = 20)
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
to_chat(affected_mob, span_userdanger("[pick("You feel your heart slowing...", "You relax and slow your heartbeat.")]"))
|
|
need_mob_update += affected_mob.adjust_stamina_loss(70, updating_stamina = FALSE)
|
|
being_stealthy = FALSE // BUBBER EDIT ADD
|
|
if(SPT_PROB(1, seconds_per_tick))
|
|
to_chat(affected_mob, span_danger("You feel a buzzing in your brain."))
|
|
SEND_SOUND(affected_mob, sound('sound/items/weapons/flash_ring.ogg'))
|
|
being_stealthy = FALSE // BUBBER EDIT ADD
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
need_mob_update += affected_mob.adjust_brute_loss(1, updating_health = FALSE)
|
|
if(need_mob_update)
|
|
affected_mob.updatehealth()
|
|
if(4)
|
|
var/need_mob_update = FALSE
|
|
if(prob(30))
|
|
affected_mob.playsound_local(affected_mob, 'sound/effects/singlebeat.ogg', 100, FALSE, use_reverb = FALSE)
|
|
if(SPT_PROB(1, seconds_per_tick))
|
|
to_chat(affected_mob, span_danger("You feel a gruesome pain in your chest!"))
|
|
if(prob(75))
|
|
affected_mob.vomit(VOMIT_CATEGORY_BLOOD, lost_nutrition = 45)
|
|
if(SPT_PROB(1, seconds_per_tick))
|
|
need_mob_update += affected_mob.adjust_stamina_loss(100, updating_stamina = FALSE)
|
|
affected_mob.visible_message(span_warning("[affected_mob] collapses!"))
|
|
if(prob(30))
|
|
to_chat(affected_mob, span_danger("Your vision blurs as you faint!"))
|
|
affected_mob.AdjustSleeping(1 SECONDS)
|
|
if(SPT_PROB(0.5, seconds_per_tick))
|
|
to_chat(affected_mob, span_danger("[pick("You feel as though your atoms are accelerating in place.", "You feel like you're being torn apart!")]"))
|
|
affected_mob.emote("scream")
|
|
need_mob_update += affected_mob.adjust_brute_loss(10, updating_health = FALSE)
|
|
if(need_mob_update)
|
|
affected_mob.updatehealth()
|
|
if(5)
|
|
switch(rand(1,2))
|
|
if(1)
|
|
to_chat(affected_mob, span_notice("You feel your atoms begin to realign. You're safe. For now."))
|
|
update_stage(1)
|
|
if(2)
|
|
to_chat(affected_mob, span_boldwarning("There is no place for you in this timeline."))
|
|
affected_mob.adjust_stamina_loss(100, forced = TRUE)
|
|
playsound(affected_mob.loc, 'sound/effects/magic/repulse.ogg', 100, FALSE)
|
|
affected_mob.emote("scream")
|
|
for(var/mob/living/viewers in viewers(3, affected_mob.loc))
|
|
viewers.flash_act()
|
|
new /obj/effect/decal/cleanable/plasma(affected_mob.loc)
|
|
new /obj/effect/decal/cleanable/ash(affected_mob.loc)
|
|
affected_mob.visible_message(span_warning("[affected_mob] is erased from the timeline!"), span_userdanger("You are ripped from the timeline!"))
|
|
affected_mob.investigate_log("has been dusted / deleted by [name].", INVESTIGATE_DEATHS)
|
|
affected_mob.ghostize(can_reenter_corpse = FALSE)
|
|
qdel(affected_mob)
|
|
|
|
//BUBBER EDIT BEGIN - Costly warning if it sneaks through to stage four.
|
|
/datum/disease/chronic_illness/update_stage(new_stage)
|
|
. = ..()
|
|
if(new_stage == 4 && being_stealthy)
|
|
to_chat(affected_mob, span_danger("[pick("You feel as though your atoms are accelerating in place.", "You feel like you're being torn apart!")]"))
|
|
affected_mob.emote("scream")
|
|
affected_mob.adjust_brute_loss(10)
|
|
being_stealthy = FALSE
|
|
// BUBBER EDIT END
|