mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 19:44:09 +01:00
Prep stuff for Erro's big medic update
•Sleepers are now OP and heal every kind of damage by the press of a simple button •Cloning through the cloner 25-30% faster. Or so I think, I can't test out cloning by myself, but my change is safe enough. Message me directly if any bugs occur. •Dermaline: New healing drug that's gonna be better than kelotane once Erro nerfs it. Right now it's just a bit more powerful. •No more reagent metabolising or having healing/damaging affects on corpses. Again, this is a kind of a radical change. PM me if any serious bugs occur. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1763 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -911,6 +911,8 @@ datum
|
||||
description = "Lexorin temporarily stops respiration. Causes tissue damage."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
if(prob(33))
|
||||
M.take_organ_damage(1, 0)
|
||||
@@ -925,17 +927,34 @@ datum
|
||||
description = "Kelotane is a drug used to treat burns."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
M:heal_organ_damage(0,2)
|
||||
..()
|
||||
return
|
||||
|
||||
dermaline
|
||||
name = "Dermaline"
|
||||
id = "dermaline"
|
||||
description = "Dermaline is the next step in burn medication. Works twice as good as kelotane and enables the body to restore even the direst heat-damaged tissue."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0) //THE GUY IS **DEAD**! BEREFT OF ALL LIFE HE RESTS IN PEACE etc etc. He does NOT metabolise shit anymore, god DAMN
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
M:heal_organ_damage(0,3)
|
||||
..()
|
||||
return
|
||||
|
||||
dexalin
|
||||
name = "Dexalin"
|
||||
id = "dexalin"
|
||||
description = "Dexalin is used in the treatment of oxygen deprivation."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return //See above, down and around. --Agouri
|
||||
if(!M) M = holder.my_atom
|
||||
M:oxyloss = max(M:oxyloss-2, 0)
|
||||
if(holder.has_reagent("lexorin"))
|
||||
@@ -949,6 +968,8 @@ datum
|
||||
description = "Dexalin Plus is used in the treatment of oxygen deprivation. Its highly effective."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
M:oxyloss = 0
|
||||
if(holder.has_reagent("lexorin"))
|
||||
@@ -962,6 +983,8 @@ datum
|
||||
description = "Tricordrazine is a highly potent stimulant, originally derived from cordrazine. Can be used to treat a wide range of injuries."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
if(M:oxyloss && prob(40)) M:oxyloss--
|
||||
if(M:bruteloss && prob(40)) M:heal_organ_damage(1,0)
|
||||
@@ -976,7 +999,7 @@ datum
|
||||
description = "It's magic. We don't have to explain it."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(!M) M = holder.my_atom
|
||||
if(!M) M = holder.my_atom ///This can even heal dead people.
|
||||
M:cloneloss = 0
|
||||
M:oxyloss = 0
|
||||
M:radiation = 0
|
||||
@@ -1074,6 +1097,8 @@ datum
|
||||
description = "Arithrazine is an unstable medication used for the most extreme cases of radiation poisoning."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return //See above, down and around. --Agouri
|
||||
if(!M) M = holder.my_atom
|
||||
M:radiation = max(M:radiation-7,0)
|
||||
if(M:toxloss) M:toxloss--
|
||||
@@ -1113,6 +1138,8 @@ datum
|
||||
description = "Bicaridine is an analgesic medication and can be used to treat blunt trauma."
|
||||
reagent_state = LIQUID
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(M.stat == 2.0)
|
||||
return
|
||||
if(!M) M = holder.my_atom
|
||||
M:heal_organ_damage(2,0)
|
||||
..()
|
||||
|
||||
@@ -178,6 +178,13 @@ datum
|
||||
required_catalysts = list("plasma" = 5)
|
||||
result_amount = 1
|
||||
|
||||
dermaline
|
||||
name = "Dermaline"
|
||||
id = "dermaline"
|
||||
result = "dermaline"
|
||||
required_reagents = list("oxygen" = 1, "phosphorus" = 1, "kelotane" = 1)
|
||||
result_amount = 3
|
||||
|
||||
dexalinp
|
||||
name = "Dexalin Plus"
|
||||
id = "dexalinp"
|
||||
|
||||
@@ -543,7 +543,7 @@
|
||||
src.occupant.paralysis = 4
|
||||
|
||||
//Slowly get that clone healed and finished.
|
||||
src.occupant.cloneloss = max(src.occupant.cloneloss-1, 0)
|
||||
src.occupant.cloneloss = max(src.occupant.cloneloss-2, 0)
|
||||
|
||||
//Premature clones may have brain damage.
|
||||
src.occupant.brainloss = max(src.occupant.brainloss-1, 0)
|
||||
@@ -553,7 +553,7 @@
|
||||
src.occupant.reagents.add_reagent("inaprovaline", 60)
|
||||
|
||||
//Also heal some oxyloss ourselves because inaprovaline is so bad at preventing it!!
|
||||
src.occupant.oxyloss = max(src.occupant.oxyloss-2, 0)
|
||||
src.occupant.oxyloss = max(src.occupant.oxyloss-4, 0)
|
||||
|
||||
use_power(7500) //This might need tweaking.
|
||||
return
|
||||
|
||||
@@ -59,9 +59,12 @@
|
||||
dat += text("[]\t-Toxin Content %: []</FONT><BR>", (occupant.toxloss < 60 ? "<font color='blue'>" : "<font color='red'>"), occupant.toxloss)
|
||||
dat += text("[]\t-Burn Severity %: []</FONT><BR>", (occupant.fireloss < 60 ? "<font color='blue'>" : "<font color='red'>"), occupant.fireloss)
|
||||
dat += text("<HR>Paralysis Summary %: [] ([] seconds left!)<BR>", occupant.paralysis, round(occupant.paralysis / 4))
|
||||
dat += text("Rejuvenation chemicals: [] units<BR>", occupant.reagents.get_reagent_amount("inaprovaline"))
|
||||
dat += text("Inaprovaline units: [] units<BR>", occupant.reagents.get_reagent_amount("inaprovaline"))
|
||||
dat += text("Soporific: [] units<BR>", occupant.reagents.get_reagent_amount("stoxin"))
|
||||
dat += text("<HR><A href='?src=\ref[];refresh=1'>Refresh meter readings each second</A><BR><A href='?src=\ref[];rejuv=1'>Inject Rejuvenators</A><BR><A href='?src=\ref[];stox=1'>Inject Soporific</A>", src, src, src)
|
||||
dat += text("Dermaline: [] units<BR>", occupant.reagents.get_reagent_amount("dermaline"))
|
||||
dat += text("Bicaridine: [] units<BR>", occupant.reagents.get_reagent_amount("bicaridine"))
|
||||
dat += text("Dexalin: [] units<BR>", occupant.reagents.get_reagent_amount("dexalin"))
|
||||
dat += text("<HR><A href='?src=\ref[];refresh=1'>Refresh meter readings each second</A><BR><A href='?src=\ref[];inap=1'>Inject Inaprovaline</A><BR><A href='?src=\ref[];stox=1'>Inject Soporific</A><BR><A href='?src=\ref[];derm=1'>Inject Dermaline</A><BR><A href='?src=\ref[];bic=1'>Inject Bicaridine</A><BR><A href='?src=\ref[];dex=1'>Inject Dexalin</A>", src, src, src, src, src, src)
|
||||
else
|
||||
dat += "The sleeper is empty."
|
||||
dat += text("<BR><BR><A href='?src=\ref[];mach_close=sleeper'>Close</A>", user)
|
||||
@@ -75,10 +78,16 @@
|
||||
if ((usr.contents.Find(src) || ((get_dist(src, usr) <= 1) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon/ai)))
|
||||
usr.machine = src
|
||||
if (src.connected)
|
||||
if (href_list["rejuv"])
|
||||
src.connected.inject(usr)
|
||||
if (href_list["inap"])
|
||||
src.connected.inject_inap(usr)
|
||||
if (href_list["stox"])
|
||||
src.connected.inject_stox(usr)
|
||||
if (href_list["derm"])
|
||||
src.connected.inject_dermaline(usr)
|
||||
if (href_list["bic"])
|
||||
src.connected.inject_bicaridine(usr)
|
||||
if (href_list["dex"])
|
||||
src.connected.inject_dexalin(usr)
|
||||
if (href_list["refresh"])
|
||||
src.updateUsrDialog()
|
||||
src.add_fingerprint(usr)
|
||||
@@ -239,24 +248,50 @@
|
||||
src.icon_state = "sleeper_0"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/inject(mob/user as mob)
|
||||
/obj/machinery/sleeper/proc/inject_inap(mob/user as mob)
|
||||
if (src.occupant)
|
||||
if (src.occupant.reagents.get_reagent_amount("inaprovaline") + 30 < 60)
|
||||
if (src.occupant.reagents.get_reagent_amount("inaprovaline") + 30 <= 60)
|
||||
src.occupant.reagents.add_reagent("inaprovaline", 30)
|
||||
user << text("Occupant now has [] units of rejuvenation in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("inaprovaline"))
|
||||
user << text("Occupant now has [] units of Inaprovaline in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("inaprovaline"))
|
||||
else
|
||||
user << "No occupant!"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/inject_stox(mob/user as mob)
|
||||
if (src.occupant)
|
||||
if (src.occupant.reagents.get_reagent_amount("stoxin") + 20 < 40)
|
||||
if (src.occupant.reagents.get_reagent_amount("stoxin") + 20 <= 40)
|
||||
src.occupant.reagents.add_reagent("stoxin", 20)
|
||||
user << text("Occupant now has [] units of soporific in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("stoxin"))
|
||||
user << text("Occupant now has [] units of soporifics in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("stoxin"))
|
||||
else
|
||||
user << "No occupant!"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/inject_dermaline(mob/user as mob)
|
||||
if (src.occupant)
|
||||
if (src.occupant.reagents.get_reagent_amount("dermaline") + 20 <= 40)
|
||||
src.occupant.reagents.add_reagent("dermaline", 20)
|
||||
user << text("Occupant now has [] units of Dermaline in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("dermaline"))
|
||||
else
|
||||
user << "No occupant!"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/inject_bicaridine(mob/user as mob) //GRAND AGOURI MARKER
|
||||
if (src.occupant)
|
||||
if (src.occupant.reagents.get_reagent_amount("bicaridine") + 10 <= 20)
|
||||
src.occupant.reagents.add_reagent("bicaridine", 10)
|
||||
user << text("Occupant now has [] units of Bicaridine in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("bicaridine"))
|
||||
else
|
||||
user << "No occupant!"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/inject_dexalin(mob/user as mob) //GRAND AGOURI MARKER
|
||||
if (src.occupant)
|
||||
if (src.occupant.reagents.get_reagent_amount("dexalin") + 20 <= 40)
|
||||
src.occupant.reagents.add_reagent("dexalin", 20)
|
||||
user << text("Occupant now has [] units of Dexalin in his/her bloodstream.", src.occupant.reagents.get_reagent_amount("dexalin"))
|
||||
else
|
||||
user << "No occupant!"
|
||||
return
|
||||
|
||||
/obj/machinery/sleeper/proc/check(mob/user as mob)
|
||||
if (src.occupant)
|
||||
|
||||
+22
-1
@@ -45,7 +45,28 @@ Stuff which is in development and not yet visible to players or just code relate
|
||||
(is. code improvements for expandability, etc.) should not be listed here. They
|
||||
should be listed in the changelog upon commit tho. Thanks. -->
|
||||
|
||||
<b><font color='blue'>7 June 2011.</font><b>
|
||||
<b><font color='blue'>4 July 2011.</font><b>
|
||||
<ul>
|
||||
<li><b>Agouri updated:</b>
|
||||
<ul>
|
||||
Medical stuff overhaul in preparation of Erro's big Medic update:
|
||||
<li>Sleepers are now able to heal every kind of damage. Drag your ass to medbay and ask a doctor to get you in one.</li>
|
||||
<li>A lil' bit faster cloning (about 30% faster) due to popular demand.</li>
|
||||
<li>Sleepers are now all located in the inner part of medbay, except for the examination room one.</li>
|
||||
<li>Added Dermaline, burn-healing drug that outpowers kelotane (and kelotane is getting a major nerf, so be sure to know how to get this). Recipe is on the wiki if you need to make it.</li>
|
||||
<li>Drugs no longer heal or metabolise when injected in dead bodies, fuck. Thank god you guys missed this major bug or we'd have cloning-by-injecting-healing-drugs.</li>
|
||||
<li>Reminder to coders: Goddamn, update the changelog.
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><b>Matty updated:</b>
|
||||
<ul>
|
||||
<li>New engineering backpacks. Enjoy!</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<b><font color='blue'>18 June 2011.</font><b>
|
||||
<ul>
|
||||
<li><b>Agouri updated:</b>
|
||||
<ul>
|
||||
|
||||
+5576
-5577
File diff suppressed because it is too large
Load Diff
+1
-2
@@ -130,7 +130,6 @@
|
||||
#define FILE_DIR "icons/turf"
|
||||
#define FILE_DIR "interface"
|
||||
#define FILE_DIR "maps"
|
||||
#define FILE_DIR "maps/backup"
|
||||
#define FILE_DIR "sound"
|
||||
#define FILE_DIR "sound/ambience"
|
||||
#define FILE_DIR "sound/announcer"
|
||||
@@ -822,5 +821,5 @@
|
||||
#include "code\WorkInProgress\recycling\scrap.dm"
|
||||
#include "code\WorkInProgress\recycling\sortingmachinery.dm"
|
||||
#include "interface\skin.dmf"
|
||||
#include "maps\TestingMap.dmm"
|
||||
#include "maps\tgstation.2.0.7.dmm"
|
||||
// END_INCLUDE
|
||||
|
||||
Reference in New Issue
Block a user