mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-11 07:03:30 +01:00
ERT idiotproofing and minor tweaks (#13834)
* makes ert more robust * renamed and tweaked * idiot proofing of ert * I cannot into git, oops * removed the anti-stun from code red erts again * removed implied src
This commit is contained in:
@@ -1053,7 +1053,7 @@
|
||||
/obj/item/storage/box/responseteam/New()
|
||||
..()
|
||||
new /obj/item/clothing/mask/breath(src)
|
||||
new /obj/item/tank/emergency_oxygen/engi(src)
|
||||
new /obj/item/tank/emergency_oxygen/engi/full(src)
|
||||
new /obj/item/flashlight/flare(src)
|
||||
new /obj/item/kitchen/knife/combat(src)
|
||||
new /obj/item/radio/centcom(src)
|
||||
|
||||
@@ -167,6 +167,11 @@
|
||||
icon_state = "emergency_engi"
|
||||
volume = 6
|
||||
|
||||
/obj/item/tank/emergency_oxygen/engi/full/New()
|
||||
..()
|
||||
air_contents.oxygen = (10*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
|
||||
|
||||
|
||||
/obj/item/tank/emergency_oxygen/engi/empty/New()
|
||||
..()
|
||||
air_contents.oxygen = null
|
||||
|
||||
@@ -16,15 +16,26 @@
|
||||
"Vox" = 'icons/mob/species/vox/helmet.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/ert/Initialize()
|
||||
var/mob/living/carbon/human/wearer = loc.loc //loc is the hardsuit, so its loc is the wearer
|
||||
if(ishuman(wearer))
|
||||
register_camera(wearer)
|
||||
..()
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/ert/attack_self(mob/user)
|
||||
if(camera || !has_camera)
|
||||
..(user)
|
||||
else
|
||||
camera = new /obj/machinery/camera(src)
|
||||
camera.network = list("ERT")
|
||||
GLOB.cameranet.removeCamera(camera)
|
||||
camera.c_tag = user.name
|
||||
to_chat(user, "<span class='notice'>User scanned as [camera.c_tag]. Camera activated.</span>")
|
||||
register_camera(user)
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/ert/proc/register_camera(mob/wearer)
|
||||
if(camera || !has_camera)
|
||||
return
|
||||
camera = new /obj/machinery/camera(src)
|
||||
camera.network = list("ERT")
|
||||
GLOB.cameranet.removeCamera(camera)
|
||||
camera.c_tag = wearer.name
|
||||
to_chat(wearer, "<span class='notice'>User scanned as [camera.c_tag]. Camera activated.</span>")
|
||||
|
||||
/obj/item/clothing/head/helmet/space/hardsuit/ert/examine(mob/user)
|
||||
. = ..()
|
||||
|
||||
@@ -128,6 +128,10 @@
|
||||
item_state = "p_suit"
|
||||
item_color = "purple"
|
||||
|
||||
/obj/item/clothing/under/color/purple/sensor //for jani ert
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
/obj/item/clothing/under/color/lightpurple
|
||||
name = "light purple jumpsuit"
|
||||
icon_state = "lightpurple"
|
||||
|
||||
@@ -48,6 +48,10 @@
|
||||
item_state = "bl_suit"
|
||||
item_color = "chapblack"
|
||||
|
||||
/obj/item/clothing/under/rank/chaplain/sensor
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
/obj/item/clothing/under/rank/chef
|
||||
desc = "It's an apron which is given only to the most <b>hardcore</b> chefs in space."
|
||||
name = "chef's uniform"
|
||||
|
||||
@@ -39,6 +39,10 @@
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 10, "fire" = 60, "acid" = 20)
|
||||
resistance_flags = NONE
|
||||
|
||||
/obj/item/clothing/under/rank/engineer/sensor
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
|
||||
/obj/item/clothing/under/rank/engineer/skirt
|
||||
desc = "It's an orange high visibility jumpskirt worn by engineers. It has minor radiation shielding."
|
||||
|
||||
@@ -124,6 +124,10 @@
|
||||
permeability_coefficient = 0.50
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 10, "rad" = 0, "fire" = 0, "acid" = 0)
|
||||
|
||||
/obj/item/clothing/under/rank/medical/sensor
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
/obj/item/clothing/under/rank/medical/skirt
|
||||
name = "medical doctor's jumpskirt"
|
||||
icon_state = "medicalf"
|
||||
|
||||
@@ -34,6 +34,10 @@
|
||||
armor = list("melee" = 10, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 30, "acid" = 30)
|
||||
strip_delay = 50
|
||||
|
||||
/obj/item/clothing/under/rank/security/sensor
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
/obj/item/clothing/under/rank/security/skirt
|
||||
name = "security officer's jumpskirt"
|
||||
desc = "Standard feminine fashion for Security Officers. It's made of sturdier material than the standard jumpskirts."
|
||||
|
||||
@@ -88,6 +88,10 @@
|
||||
item_state = "g_suit"
|
||||
item_color = "officer"
|
||||
|
||||
/obj/item/clothing/under/rank/centcom_officer/sensor
|
||||
sensor_mode = SENSOR_COORDS
|
||||
random_sensor = FALSE
|
||||
|
||||
/obj/item/clothing/under/rank/centcom_commander
|
||||
desc = "It's a jumpsuit worn by CentComm's highest-tier Commanders."
|
||||
name = "\improper CentComm officer's jumpsuit"
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
rt_job = "Emergency Response Team Leader"
|
||||
rt_mob_job = "ERT Commander"
|
||||
|
||||
uniform = /obj/item/clothing/under/rank/centcom_officer
|
||||
uniform = /obj/item/clothing/under/rank/centcom_officer/sensor
|
||||
back = /obj/item/storage/backpack/ert/commander
|
||||
|
||||
id = /obj/item/card/id/ert/commander
|
||||
@@ -56,12 +56,12 @@
|
||||
gloves = /obj/item/clothing/gloves/color/black
|
||||
suit = /obj/item/clothing/suit/armor/vest/ert/command
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
mask = /obj/item/clothing/mask/gas/sechailer
|
||||
|
||||
belt = /obj/item/gun/energy/gun
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/head/helmet/ert/command = 1,
|
||||
/obj/item/clothing/mask/gas/sechailer = 1,
|
||||
/obj/item/restraints/handcuffs = 1,
|
||||
/obj/item/storage/lockbox/mindshield = 1,
|
||||
/obj/item/flashlight = 1
|
||||
@@ -73,6 +73,7 @@
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/commander
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
@@ -80,7 +81,6 @@
|
||||
belt = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/gun/energy/ionrifle/carbine = 1,
|
||||
/obj/item/restraints/handcuffs = 1,
|
||||
/obj/item/clothing/shoes/magboots = 1,
|
||||
@@ -93,11 +93,11 @@
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/commander/gamma
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
suit_store = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
belt = /obj/item/gun/projectile/automatic/pistol/enforcer/lethal
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/restraints/handcuffs = 1,
|
||||
/obj/item/storage/lockbox/mindshield = 1,
|
||||
/obj/item/gun/energy/ionrifle/carbine = 1,
|
||||
@@ -107,7 +107,7 @@
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/cyberimp/arm/flash
|
||||
)
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
name = "RT Security"
|
||||
rt_job = "Emergency Response Team Officer"
|
||||
rt_mob_job = "ERT Security"
|
||||
uniform = /obj/item/clothing/under/rank/security
|
||||
uniform = /obj/item/clothing/under/rank/security/sensor
|
||||
back = /obj/item/storage/backpack/ert/security
|
||||
belt = /obj/item/storage/belt/security/response_team
|
||||
pda = /obj/item/pda/heads/ert/security
|
||||
@@ -130,12 +130,12 @@
|
||||
suit = /obj/item/clothing/suit/armor/vest/ert/security
|
||||
suit_store = /obj/item/gun/energy/gun/advtaser
|
||||
glasses = /obj/item/clothing/glasses/hud/security/sunglasses
|
||||
mask = /obj/item/clothing/mask/gas/sechailer
|
||||
|
||||
r_hand = /obj/item/gun/energy/laser
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/head/helmet/ert/security = 1,
|
||||
/obj/item/clothing/mask/gas/sechailer = 1,
|
||||
/obj/item/storage/box/zipties = 1,
|
||||
/obj/item/storage/box/teargas = 1,
|
||||
/obj/item/flashlight/seclite = 1
|
||||
@@ -149,6 +149,7 @@
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/security
|
||||
suit_store = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
glasses = /obj/item/clothing/glasses/sunglasses
|
||||
mask = /obj/item/clothing/mask/gas/sechailer
|
||||
|
||||
r_hand = /obj/item/gun/projectile/automatic/lasercarbine
|
||||
|
||||
@@ -159,11 +160,9 @@
|
||||
)
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer = 1,
|
||||
/obj/item/clothing/shoes/magboots = 1,
|
||||
/obj/item/storage/box/handcuffs = 1,
|
||||
/obj/item/storage/box/teargas = 1,
|
||||
/obj/item/grenade/flashbang = 1,
|
||||
/obj/item/grenade/flashbang = 2,
|
||||
/obj/item/ammo_box/magazine/laser = 2
|
||||
)
|
||||
|
||||
@@ -175,13 +174,13 @@
|
||||
belt = /obj/item/storage/belt/security/response_team_gamma
|
||||
suit_store = /obj/item/gun/energy/gun/nuclear
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
l_pocket = /obj/item/restraints/legcuffs/bola/energy
|
||||
r_pocket = /obj/item/extinguisher/mini
|
||||
|
||||
r_hand = /obj/item/gun/energy/immolator/multi
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/storage/box/handcuffs = 1,
|
||||
/obj/item/storage/box/flashbangs = 1,
|
||||
/obj/item/whetstone = 1,
|
||||
@@ -191,9 +190,9 @@
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/cyberimp/arm/telebaton,
|
||||
/obj/item/organ/internal/cyberimp/chest/reviver
|
||||
/obj/item/organ/internal/cyberimp/chest/reviver/hardened
|
||||
)
|
||||
|
||||
|
||||
@@ -217,12 +216,12 @@
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/engineer
|
||||
suit_store = /obj/item/tank/emergency_oxygen/engi
|
||||
glasses = /obj/item/clothing/glasses/meson
|
||||
mask = /obj/item/clothing/mask/gas
|
||||
|
||||
l_pocket = /obj/item/gun/energy/gun/mini
|
||||
r_pocket = /obj/item/melee/classic_baton/telescopic
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas = 1,
|
||||
/obj/item/t_scanner = 1,
|
||||
/obj/item/stack/sheet/glass/fifty = 1,
|
||||
/obj/item/stack/sheet/metal/fifty = 1,
|
||||
@@ -237,6 +236,7 @@
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/engineer/gamma
|
||||
suit_store = /obj/item/tank/emergency_oxygen/engi
|
||||
glasses = /obj/item/clothing/glasses/meson
|
||||
mask = /obj/item/clothing/mask/gas
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/eyes/shield,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
@@ -245,7 +245,6 @@
|
||||
r_pocket = /obj/item/melee/classic_baton/telescopic
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas = 1,
|
||||
/obj/item/rcd/preloaded = 1,
|
||||
/obj/item/rcd_ammo = 3,
|
||||
/obj/item/gun/energy/gun = 1
|
||||
@@ -259,12 +258,12 @@
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/engineer/gamma
|
||||
suit_store = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
glasses = /obj/item/clothing/glasses/meson/night
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
|
||||
l_pocket = /obj/item/t_scanner/extended_range
|
||||
r_pocket = /obj/item/melee/classic_baton/telescopic
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/rcd/combat = 1,
|
||||
/obj/item/rcd_ammo/large = 3
|
||||
)
|
||||
@@ -272,7 +271,7 @@
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/shield,
|
||||
/obj/item/organ/internal/cyberimp/arm/toolset
|
||||
)
|
||||
@@ -353,6 +352,7 @@
|
||||
gloves = /obj/item/clothing/gloves/combat
|
||||
suit = /obj/item/clothing/suit/space/hardsuit/ert/medical/gamma
|
||||
glasses = /obj/item/clothing/glasses/night
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
suit_store = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
|
||||
belt = /obj/item/defibrillator/compact/loaded
|
||||
@@ -361,7 +361,6 @@
|
||||
r_pocket = /obj/item/reagent_containers/hypospray/autoinjector
|
||||
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/bodyanalyzer/advanced = 1,
|
||||
/obj/item/extinguisher/mini = 1,
|
||||
/obj/item/roller = 1,
|
||||
@@ -375,7 +374,7 @@
|
||||
/obj/item/organ/internal/cyberimp/arm/medibeam,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/medical,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
|
||||
//////////////////// PARANORMAL ///////////////////
|
||||
@@ -390,11 +389,11 @@
|
||||
shoes = /obj/item/clothing/shoes/combat
|
||||
l_ear = /obj/item/radio/headset/ert/alt
|
||||
glasses = /obj/item/clothing/glasses/hud/security/sunglasses
|
||||
mask = /obj/item/clothing/mask/gas/sechailer/swat
|
||||
belt = /obj/item/storage/belt/security/response_team
|
||||
id = /obj/item/card/id/centcom
|
||||
pda = /obj/item/pda/centcom
|
||||
backpack_contents = list(
|
||||
/obj/item/clothing/mask/gas/sechailer/swat = 1,
|
||||
/obj/item/storage/box/zipties = 1,
|
||||
/obj/item/flashlight/seclite = 1
|
||||
)
|
||||
@@ -435,7 +434,7 @@
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
|
||||
//////////////////// JANITORIAL ///////////////////
|
||||
@@ -444,7 +443,7 @@
|
||||
name = "RT Janitor"
|
||||
rt_job = "Emergency Response Team Janitor"
|
||||
rt_mob_job = "ERT Janitor"
|
||||
uniform = /obj/item/clothing/under/color/purple
|
||||
uniform = /obj/item/clothing/under/color/purple/sensor
|
||||
back = /obj/item/storage/backpack/ert/janitor
|
||||
belt = /obj/item/storage/belt/janitor/full
|
||||
gloves = /obj/item/clothing/gloves/color/yellow
|
||||
@@ -500,5 +499,6 @@
|
||||
)
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/arm/advmop
|
||||
/obj/item/organ/internal/cyberimp/arm/advmop,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
#define STUN_SET_AMOUNT 2
|
||||
|
||||
/obj/item/organ/internal/cyberimp
|
||||
name = "cybernetic implant"
|
||||
desc = "a state-of-the-art implant that improves a baseline's functionality"
|
||||
@@ -128,15 +126,16 @@
|
||||
implant_color = "#FFFF00"
|
||||
slot = "brain_antistun"
|
||||
origin_tech = "materials=5;programming=4;biotech=5"
|
||||
var/stun_max_amount = 2
|
||||
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/on_life()
|
||||
..()
|
||||
if(crit_fail)
|
||||
return
|
||||
if(owner.stunned > STUN_SET_AMOUNT)
|
||||
owner.SetStunned(STUN_SET_AMOUNT)
|
||||
if(owner.weakened > STUN_SET_AMOUNT)
|
||||
owner.SetWeakened(STUN_SET_AMOUNT)
|
||||
if(owner.stunned > stun_max_amount)
|
||||
owner.SetStunned(stun_max_amount)
|
||||
if(owner.weakened > stun_max_amount)
|
||||
owner.SetWeakened(stun_max_amount)
|
||||
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/emp_act(severity)
|
||||
if(crit_fail || emp_proof)
|
||||
@@ -147,6 +146,12 @@
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/proc/reboot()
|
||||
crit_fail = FALSE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
name = "Hardened CNS Rebooter implant"
|
||||
desc = "A military-grade version of the standard implant, for NT's more elite forces."
|
||||
origin_tech = "materials=6;programming=5;biotech=5"
|
||||
emp_proof = TRUE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/brain/clown_voice
|
||||
name = "Comical implant"
|
||||
desc = "<span class='sans'>Uh oh.</span>"
|
||||
|
||||
Reference in New Issue
Block a user