mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-27 06:00:23 +01:00
Patch fix, Neurotoxins, and Paralysis (#18853)
* Makes zombie powder and lich powder somewhat more useful Also makes the scanners act mostly the same with fakedeath * Makes patches actually apply via touch I killed myself during testing with bicaridaze * Make things respect fakedeath * Some more fixes * Makes paralysis apply in more places Also makes paralysis no longer make you unable to see emotes. Makes it so you can not /me, but you can /subtle while paralyzed * Adds another method for zombie powder mix
This commit is contained in:
@@ -80,17 +80,14 @@
|
||||
var/analyzed_results = ""
|
||||
if(M.status_flags & FAKEDEATH)
|
||||
OX = fake_oxy > 50 ? span_bold("[fake_oxy]") : fake_oxy
|
||||
dat += span_notice("Analyzing Results for [M]:")
|
||||
dat += "<br>"
|
||||
dat += span_notice("Overall Status: dead")
|
||||
dat += "<br>"
|
||||
TX = 0 //This is a dead giveaway if they're using zombiepowder.
|
||||
analyzed_results += "Analyzing Results for [M]:\n\t Overall Status: dead<br>"
|
||||
else
|
||||
analyzed_results += "Analyzing Results for [M]:\n\t Overall Status: [M.stat > 1 ? "dead" : "[round((M.health/M.getMaxHealth())*100) ]% healthy"]<br>"
|
||||
analyzed_results += "\tKey: [span_cyan("Suffocation")]/[span_green("Toxin")]/[span_orange("Burns")]/[span_red("Brute")]<br>"
|
||||
analyzed_results += "\tDamage Specifics: [span_cyan("[OX]")] - [span_green("[TX]")] - [span_orange("[BU]")] - [span_red("[BR]")]<br>"
|
||||
analyzed_results += "Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)<br>"
|
||||
if(!(M.status_flags & FAKEDEATH))
|
||||
analyzed_results = span_notice(analyzed_results)
|
||||
analyzed_results = span_notice(analyzed_results)
|
||||
dat += analyzed_results
|
||||
if(M.timeofdeath && (M.stat == DEAD || (M.status_flags & FAKEDEATH)))
|
||||
dat += span_notice("Time of Death: [worldtime2stationtime(M.timeofdeath)]")
|
||||
@@ -134,6 +131,7 @@
|
||||
BR = M.getBruteLoss() > 50 ? "[span_red(span_bold("Severe anatomical damage detected"))]" : "Subject brute-force injury status O.K"
|
||||
if(M.status_flags & FAKEDEATH)
|
||||
OX = fake_oxy > 50 ? span_warning("Severe oxygen deprivation detected") : "Subject bloodstream oxygen level normal"
|
||||
TX = 0 //This is a dead giveaway if they're using zombiepowder.
|
||||
dat += "[OX] | [TX] | [BU] | [BR]<br>"
|
||||
if(M.radiation)
|
||||
if(advscan >= 2 && showadvscan == 1)
|
||||
|
||||
@@ -127,36 +127,37 @@
|
||||
return
|
||||
|
||||
if (isliving(usr) || isobserver(usr))
|
||||
var/mob/user = usr
|
||||
|
||||
if (istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech. why?
|
||||
if(istype(user.loc,/obj/mecha)) // stops inventory actions in a mech. why?
|
||||
return
|
||||
|
||||
if(over_object == usr && Adjacent(usr)) // this must come before the screen objects only block
|
||||
src.open(usr)
|
||||
if(over_object == user && Adjacent(user)) // this must come before the screen objects only block
|
||||
open(user)
|
||||
return
|
||||
|
||||
if (!( istype(over_object, /atom/movable/screen) ))
|
||||
if(!(istype(over_object, /atom/movable/screen)))
|
||||
return ..()
|
||||
|
||||
//makes sure that the storage is equipped, so that we can't drag it into our hand from miles away.
|
||||
//there's got to be a better way of doing this.
|
||||
if (!(src.loc == usr) || (src.loc && src.loc.loc == usr))
|
||||
if(!(loc == user) || (loc && loc.loc == user))
|
||||
return
|
||||
|
||||
if (( usr.restrained() ) || ( usr.stat ))
|
||||
if(user.restrained() || user.stat || user.is_paralyzed() || !user.incapacitated(INCAPACITATION_KNOCKOUT))
|
||||
return
|
||||
|
||||
if ((src.loc == usr) && !(istype(over_object, /atom/movable/screen)) && !usr.unEquip(src))
|
||||
if((loc == user) && !(istype(over_object, /atom/movable/screen)) && !user.unEquip(src))
|
||||
return
|
||||
|
||||
switch(over_object.name)
|
||||
if("r_hand")
|
||||
usr.unEquip(src)
|
||||
usr.put_in_r_hand(src)
|
||||
user.unEquip(src)
|
||||
user.put_in_r_hand(src)
|
||||
if("l_hand")
|
||||
usr.unEquip(src)
|
||||
usr.put_in_l_hand(src)
|
||||
src.add_fingerprint(usr)
|
||||
user.unEquip(src)
|
||||
user.put_in_l_hand(src)
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/item/storage/click_alt(mob/user)
|
||||
if(user in is_seeing)
|
||||
|
||||
Reference in New Issue
Block a user