mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-14 16:44:33 +01:00
Adds Zombies (Admin-spawn) (#25381)
* fuck it good enough * Apply suggestions from code review Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> * TRIPLE-REVIEW * this should do it * wow * bruh * FIX * fix * yeah * sirryan review * aaaaa * Apply suggestions from code review Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com> Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> --------- Signed-off-by: Contrabang <91113370+Contrabang@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
@@ -305,7 +305,7 @@ GLOBAL_DATUM_INIT(welding_sparks, /mutable_appearance, mutable_appearance('icons
|
||||
if(throwing)
|
||||
throwing.finalize(FALSE)
|
||||
if(loc == user)
|
||||
if(!user.unEquip(src, silent = TRUE))
|
||||
if(HAS_TRAIT(user, TRAIT_I_WANT_BRAINS) || !user.unEquip(src, silent = TRUE))
|
||||
return 0
|
||||
|
||||
if(flags & ABSTRACT)
|
||||
|
||||
@@ -156,7 +156,7 @@
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/obj/item/organ/external/affecting = H.get_organ(user.zone_selected)
|
||||
for(var/obj/item/organ/external/E in H.bodyparts)
|
||||
if(E.open == ORGAN_ORGANIC_OPEN)
|
||||
if(E.open >= ORGAN_ORGANIC_OPEN)
|
||||
to_chat(user, "<span class='warning'>[E] is cut open, you'll need more than a bandage!</span>")
|
||||
return
|
||||
affecting.germ_level = 0
|
||||
|
||||
@@ -423,6 +423,162 @@
|
||||
</html>
|
||||
"})
|
||||
|
||||
/obj/item/book/manual/zombie_manual
|
||||
name = "Plague and You: Curing the Apocalypse"
|
||||
desc = "A guide covering the basics of curing zombies."
|
||||
icon_state = "bookCloning"
|
||||
author = "Cleanses-The-Plague"
|
||||
title = "Plague and You: Curing the Apocalypse"
|
||||
|
||||
pages = list({"<html><meta charset='utf-8'>
|
||||
<head>
|
||||
<style>
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
For years, we've seen "zombies" on the news and in movies, but have you ever thought how would would be cured?
|
||||
Each strain of the "Advanced Resurection Virus" or simply "Necrotizing Plague" has its own unique bio-signature.
|
||||
Therefore, each strain has a unique step of anti-virals, that each have progressively stronger effects on the plague.
|
||||
|
||||
<ol>
|
||||
<li><a href='#1'>Preparation</a></li>
|
||||
<li><a href='#2'>Containing a test subject</a></li>
|
||||
<li><a href='#3'>Creating Cures</a></li>
|
||||
<li><a href='#4'>Cure Effects</a></li>
|
||||
<li><a href='#5'>Known Recipes</a></li>
|
||||
</ol>
|
||||
|
||||
<a name='1' /><h4>Step 1: Preparation</h4>
|
||||
First step is knowledge. The necrotizing plague can only be spread through direct fluid contact with an infected individual. \
|
||||
Therefore, you should do your best to stay away from the claws and or teeth of zombies. Their claws are covered in a slimy fluid \
|
||||
that has a chance of transmitting the disease. Their bites are much more dangerous however, guaranteeing an infection of the plague. \
|
||||
Biohazard suits, riot gear, or other thick material are well suited for blocking these infectious attacks, but do not guaratee \
|
||||
complete immunity. <br>
|
||||
|
||||
To begin, we will need to gather a blood sample from a zombifed individual. To do this, first make sure the \
|
||||
zombie is dead and severely damaged. Damaged zombies will slowly heal, and re-awaken once they are healed. \
|
||||
Then use a syringe to extract a blood sample, and return to your virology lab. <br>
|
||||
|
||||
<a name='2' /><h4>Step 2: Containing a test subject</h4>
|
||||
With your new blood sample of the plague, place a monkey in a solitary pen, and infect it with the virus. This test subject \
|
||||
will provide us with a steady source of plague blood to experiment with. Lower-sapience creatures are normally not advanced enough to \
|
||||
actively seek out the flesh of living creatures, and are safe in captivity. Containing an active zombie is much harder and will require \
|
||||
a cell of pure walls or doors. Otherwise, the zombie will be able to break out of it's cell using its claws.
|
||||
|
||||
<a name='3' /><h4>Step 3: Creating Cures</h4>
|
||||
Now that a steady source of infected blood is available, we can begin making cures. There are 4 tiers of "cures" for the plague, \
|
||||
these are referred to as "Anti-Plague Sequences". By combining chemicals with the plague and viral symptoms, more advanced sequences \
|
||||
can be created. These sequences are M-RNA that alters protein synthesis of plague-infected individuals and alter B-lymphocytes to induce\
|
||||
specific anti-bodies, countering the effects of the virus. \
|
||||
There sequences are classified into 4 categories: Alpha, Beta, Gamma, and Omega. Alpha is the simplest, but weakest. \
|
||||
Omega is the most difficult to make as it requires all previous sequences and advanced chemicals. <br>
|
||||
Since each of zombie strains are unique, there is no known recipe for these, and will require experimentation. \
|
||||
However, several researchers have compiled chemicals that are commonly found in these cures in the "Known Recipes" section below.
|
||||
|
||||
<a name='4' /><h4>Step 5: Cure Effects</h4>
|
||||
Anti-Plague Sequence Alpha is the simplest anti-viral, but it still is the first step against the plague. \
|
||||
This cure prevents infection from scratches while in system of the user, and can cure stage 1 infections. <br>
|
||||
|
||||
Anti-Plague Sequence Beta is the second anti-viral, and is more complex to make. This sequence has been shown to cure \
|
||||
infections that are stage 3 or below. This sequence is sometimes able to cure bites from infected individuals. <br>
|
||||
|
||||
Anti-Plague Sequence Gamma is the third anti-viral. This sequence is difficult to manufacture, but is rewarding. \
|
||||
It cures all infections that are stage 5 and below, and stops the effects of stage 6 infections, but will not cure \
|
||||
stage 6 infections. This helps prevent the rotting of living people into the rotting and shambling corpses of zombies. <br>
|
||||
|
||||
Anti-Plague Sequence Omega is the full cure for the zombie plague. This advanced mix of viral symptoms and chemicals is \
|
||||
the final cure for any Advanced Resurection Virus. This cure prevents zombies from reviving when in their system, and will \
|
||||
slowly return their body to normal, non-infected state. <br>
|
||||
|
||||
<a name='5' /><h4>Step 6: Known Recipes</h4>
|
||||
<b>Anti-Plague Sequence Alpha</b>
|
||||
<ul>
|
||||
<li>1 unit of blood containing any zombie plague</li>
|
||||
<li>1 unit of Diphenhydramine</a></li>
|
||||
</ul>
|
||||
|
||||
<b>Anti-Plague Sequence Beta</b>
|
||||
<ul>
|
||||
<li>1 unit of blood containing zombie plague cured by Anti-Plague Sequence Alpha</li>
|
||||
<li>2 random chemicals from the list below, 1 unit of each (Unknown Random Recipe)
|
||||
<ul>
|
||||
<li>Yellow Vomit</li>
|
||||
<li>Space fungus</li>
|
||||
<li>Jenkem</li>
|
||||
<li>Charcoal</li>
|
||||
<li>Egg</li>
|
||||
<li>Saline-Glucose Solution</li>
|
||||
<li>Toxin</li>
|
||||
<li>Atropine</li>
|
||||
<li>Lye</li>
|
||||
<li>Sulphuric acid</li>
|
||||
<li>Fluorosulfuric Acid</li>
|
||||
<li>Soda Water</li>
|
||||
<li>Surge</li>
|
||||
<li>Ultra-Lube</li>
|
||||
<li>Happiness</li>
|
||||
<li>Morphine</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<b>Anti-Plague Sequence Gamma</b>
|
||||
<ul>
|
||||
<li>1 unit of blood containing zombie plague cured by Anti-Plague Sequence Beta</li>
|
||||
<li>1 unit of blood containing an advanced virus with the <b>"Necrotizing Fasciitis"</b> symptom</li>
|
||||
<li>3 random chemicals from the list below, 1 unit of each (Unknown Random Recipe)
|
||||
<ul>
|
||||
<li>Colorful Reagent</li>
|
||||
<li>Bacchus' Blessing</li>
|
||||
<li>Pentetic Acid</li>
|
||||
<li>Teporone</li>
|
||||
<li>Glyphosate</li>
|
||||
<li>Lazarus Reagent</li>
|
||||
<li>Omnizine</li>
|
||||
<li>Sarin</li>
|
||||
<li>Mitocholide</li>
|
||||
<li>Fliptonium</li>
|
||||
<li>Ants</li>
|
||||
<li>Chlorine Trifluoride</li>
|
||||
<li>Sorium</li>
|
||||
<li>"????" Reagent</li>
|
||||
<li>A ranesp</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<b>Anti-Plague Sequence Omega</b>
|
||||
<ul>
|
||||
<li>1 unit of blood containing zombie plague cured by Anti-Plague Sequence Gamma</li>
|
||||
<li>1 unit of blood containing an advanced virus with the <b>"Anti-Bodies Metabolism"</b> symptom</li>
|
||||
<li>2 of the chemicals from the list below, 1 unit of each (Unknown Random Recipe)
|
||||
<ul>
|
||||
<li>Entropic Polypnium</li>
|
||||
<li>Tinea Luxor</li>
|
||||
<li>earthsblood</li>
|
||||
<li>Bath Salts</li>
|
||||
<li>Rezadone</li>
|
||||
<li>Rotatium</li>
|
||||
<li>Krokodil</li>
|
||||
<li>Fliptonium</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<b>Anti-Plague Sequence Duplication</b>
|
||||
<ul>
|
||||
<li>1 unit of any Anti-Plague Sequence</li>
|
||||
<li>1 unit of Sulfonal</li>
|
||||
<li>1 unit of Sugar</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>Congratulations! You are now qualitifed in creating Anti-Plague Sequences for combatting Class-C resurrecting un-dead beings. \
|
||||
Please direct any further questions you have to your Chief Medical Officer.</p>
|
||||
</body>
|
||||
</html>"})
|
||||
|
||||
/obj/item/book/manual/ripley_build_and_repair
|
||||
name = "APLU \"Ripley\" Construction and Operation Manual"
|
||||
desc = "A guide from a little-known corporation on how to operate a heavy lifter mech. It's filled with disclaimers and pre-signed waivers."
|
||||
|
||||
@@ -424,23 +424,19 @@
|
||||
else
|
||||
. += "ledb"
|
||||
|
||||
/obj/item/storage/lockbox/vials/AltClick(mob/user)
|
||||
if(!Adjacent(user))
|
||||
return
|
||||
if(broken)
|
||||
to_chat(user, "<span class='warning'>It appears to be broken.</span>")
|
||||
return
|
||||
if(allowed(user))
|
||||
locked = !locked
|
||||
to_chat(user, "<span class='notice'>You [locked ? "lock" : "unlock"] [src].</span>")
|
||||
update_icon()
|
||||
else
|
||||
to_chat(user, "<span class='warning'>Access denied.</span>")
|
||||
|
||||
/obj/item/storage/lockbox/vials/attackby(obj/item/I, mob/user, params)
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/storage/lockbox/vials/zombie_cure
|
||||
name = "secure vial storage box - 'Anti-Plague Sequences'"
|
||||
|
||||
/obj/item/storage/lockbox/vials/zombie_cure/populate_contents()
|
||||
for(var/count in 1 to 4)
|
||||
var/obj/item/reagent_containers/glass/bottle/cure = new /obj/item/reagent_containers/glass/bottle(src)
|
||||
cure.reagents.add_reagent("zombiecure[count]", 50)
|
||||
var/datum/reagent/temp = GLOB.chemical_reagents_list["zombiecure[count]"]
|
||||
cure.name = "[lowertext(temp.name)] bottle"
|
||||
|
||||
|
||||
///Aquatic Starter Kit
|
||||
|
||||
@@ -22,16 +22,14 @@
|
||||
if(check_access(W))
|
||||
locked = !locked
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
to_chat(user, "<span class='warning'>You lock \the [src]!</span>")
|
||||
if(user.s_active)
|
||||
user.s_active.close(user)
|
||||
return
|
||||
else
|
||||
icon_state = icon_closed
|
||||
to_chat(user, "<span class='warning'>You unlock \the [src]!</span>")
|
||||
origin_tech = null //wipe out any origin tech if it's unlocked in any way so you can't double-dip tech levels at R&D.
|
||||
return
|
||||
update_icon()
|
||||
return
|
||||
else
|
||||
to_chat(user, "<span class='warning'>Access denied.</span>")
|
||||
return
|
||||
@@ -50,13 +48,25 @@
|
||||
if(broken)
|
||||
to_chat(user, "<span class='warning'>It appears to be broken.</span>")
|
||||
return
|
||||
if(!locked && user.s_active != src)
|
||||
return ..()
|
||||
if(allowed(user))
|
||||
locked = !locked
|
||||
to_chat(user, "<span class='notice'>You [locked ? "lock" : "unlock"] [src].</span>")
|
||||
icon_state = "[locked ? icon_locked : icon_closed]"
|
||||
update_icon()
|
||||
if(user.s_active == src)
|
||||
close(user)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>Access denied.</span>")
|
||||
|
||||
/obj/item/storage/lockbox/update_icon_state()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed // good variable name bro
|
||||
|
||||
/obj/item/storage/lockbox/show_to(mob/user as mob)
|
||||
if(locked)
|
||||
to_chat(user, "<span class='warning'>It's locked!</span>")
|
||||
@@ -76,9 +86,9 @@
|
||||
broken = TRUE
|
||||
locked = FALSE
|
||||
desc = "It appears to be broken."
|
||||
icon_state = icon_broken
|
||||
to_chat(user, "<span class='notice'>You unlock \the [src].</span>")
|
||||
origin_tech = null //wipe out any origin tech if it's unlocked in any way so you can't double-dip tech levels at R&D.
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/item/storage/lockbox/hear_talk(mob/living/M as mob, list/message_pieces)
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
return
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/datum/unarmed_attack/attack = H.dna.species.unarmed
|
||||
var/datum/unarmed_attack/attack = H.get_unarmed_attack()
|
||||
if(istype(attack, /datum/unarmed_attack/claws))
|
||||
var/datum/unarmed_attack/claws/C = attack
|
||||
if(!C.has_been_sharpened)
|
||||
|
||||
Reference in New Issue
Block a user