diff --git a/code/game/machinery/medical_kiosk.dm b/code/game/machinery/medical_kiosk.dm
index ad43e11106..40bff7c76e 100644
--- a/code/game/machinery/medical_kiosk.dm
+++ b/code/game/machinery/medical_kiosk.dm
@@ -3,11 +3,14 @@
#define EXTERNAL_BLEEDING 0x4
#define SERIOUS_EXTERNAL_DAMAGE 0x8
#define SERIOUS_INTERNAL_DAMAGE 0x10
-#define RADIATION_DAMAGE 0x20
-#define TOXIN_DAMAGE 0x40
-#define OXY_DAMAGE 0x80
-#define HUSKED_BODY 0x100
-#define WEIRD_ORGANS 0x200 //CHOMPedit malignant
+#define ACUTE_RADIATION_DOSE 0x20
+#define CHRONIC_RADIATION_DOSE 0x40
+#define TOXIN_DAMAGE 0x80
+#define OXY_DAMAGE 0x100
+#define HUSKED_BODY 0x200
+#define INFECTION 0x400
+#define VIRUS 0x800
+#define WEIRD_ORGANS 0x1000 //CHOMPedit malignant
/obj/machinery/medical_kiosk
name = "medical kiosk"
@@ -121,12 +124,16 @@
problems |= INTERNAL_BLEEDING
else
problems |= EXTERNAL_BLEEDING
+ if(E.germ_level >= INFECTION_LEVEL_ONE) //Do NOT check for the germ_level on the mob, it'll be innacurate.
+ problems |= INFECTION
for(var/obj/item/organ/internal/I in user)
if(I.status & (ORGAN_BROKEN|ORGAN_DEAD|ORGAN_DESTROYED))
problems |= SERIOUS_INTERNAL_DAMAGE
if(I.status & ORGAN_BLEEDING)
problems |= INTERNAL_BLEEDING
+ if(I.germ_level >= INFECTION_LEVEL_ONE) //Do NOT check for the germ_level on the mob, it'll be innacurate.
+ problems |= INFECTION
//CHOMPedit begin- malignants
if(istype(I,/obj/item/organ/internal/malignant))
problems |= WEIRD_ORGANS
@@ -140,9 +147,15 @@
if(user.getOxyLoss() > 0)
problems |= OXY_DAMAGE
if(user.radiation > 0)
- problems |= RADIATION_DAMAGE
+ problems |= ACUTE_RADIATION_DOSE
+ if(user.accumulated_rads > 0)
+ problems |= CHRONIC_RADIATION_DOSE
if(user.getFireLoss() > 40 || user.getBruteLoss() > 40)
problems |= SERIOUS_EXTERNAL_DAMAGE
+ if(ishuman(user))
+ var/mob/living/carbon/human/our_user = user
+ if(our_user.has_virus())
+ problems |= VIRUS
if(!problems)
if(user.getHalLoss() > 0)
@@ -151,18 +164,30 @@
return "
" + span_notice("No anatomical issues detected.")
var/problem_text = ""
+ //Let's do this list from 'most severe' to 'least severe'
+ if(problems & INTERNAL_BLEEDING) //Will kill you quick and you NEED medical treatment.
+ problem_text += "
" + span_bolddanger("Internal bleeding detected - seek medical attention immediately!")
+ if(problems & INFECTION) //Will kill you quick and you NEED medical treatment.
+ problem_text += "
" + span_bolddanger("Infection detected - see a medical professional immediately!")
+
if(problems & BROKEN_BONES)
problem_text += "
" + span_warning("Broken bones detected - see a medical professional and move as little as possible.")
- if(problems & INTERNAL_BLEEDING)
- problem_text += "
" + span_danger("Internal bleeding detected - seek medical attention, ASAP!")
if(problems & EXTERNAL_BLEEDING)
- problem_text += "
" + span_warning("External bleeding detected - advising pressure with cloth and bandaging.")
+ problem_text += "
" + span_warning("External bleeding detected - advising pressure with cloth and bandaging or direct pressure until medical staff can assist.")
+
if(problems & SERIOUS_EXTERNAL_DAMAGE)
problem_text += "
" + span_danger("Severe anatomical damage detected - seek medical attention.")
if(problems & SERIOUS_INTERNAL_DAMAGE)
problem_text += "
" + span_danger("Severe internal damage detected - seek medical attention.")
- if(problems & RADIATION_DAMAGE)
- problem_text += "
" + span_danger("Exposure to ionizing radiation detected - seek medical attention.")
+
+ if(problems & ACUTE_RADIATION_DOSE)
+ problem_text += "
" + span_danger("Acute exposure to ionizing radiation detected - seek medical attention.")
+ else if(problems & CHRONIC_RADIATION_DOSE) //We don't care about telling them about chronic rads if they have acute rads!
+ problem_text += "
" + span_warning("Chronic Exposure to ionizing radiation detected - medical attention is advises.")
+
+ if(problems & VIRUS)
+ problem_text += "
" + span_boldwarning("Viral illness detected - seek out medical attention and quarantine from others!")
+
if(problems & TOXIN_DAMAGE)
problem_text += "
" + span_warning("Exposure to toxic materials detected - induce vomiting if you have consumed anything recently.")
if(problems & OXY_DAMAGE)
@@ -197,8 +222,11 @@
#undef EXTERNAL_BLEEDING
#undef SERIOUS_EXTERNAL_DAMAGE
#undef SERIOUS_INTERNAL_DAMAGE
-#undef RADIATION_DAMAGE
+#undef ACUTE_RADIATION_DOSE
+#undef CHRONIC_RADIATION_DOSE
#undef TOXIN_DAMAGE
#undef OXY_DAMAGE
#undef HUSKED_BODY
+#undef INFECTION
+#undef VIRUS
#undef WEIRD_ORGANS // CHOMPedit - malignants