mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-22 04:24:20 +01:00
Merge pull request #16895 from lewcc/vomit-comet
Nutriment Pump Implants make you projectile vomit when EMPed
This commit is contained in:
@@ -75,7 +75,7 @@
|
||||
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
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
)
|
||||
belt = /obj/item/gun/energy/gun/blueshield/pdw9
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
)
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/cyberimp/arm/flash
|
||||
@@ -160,7 +160,7 @@
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/arm/flash,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security
|
||||
)
|
||||
|
||||
@@ -196,7 +196,7 @@
|
||||
)
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/cyberimp/arm/telebaton,
|
||||
@@ -247,7 +247,7 @@
|
||||
mask = /obj/item/clothing/mask/gas
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/eyes/cybernetic/shield,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
)
|
||||
l_pocket = /obj/item/t_scanner
|
||||
r_pocket = /obj/item/melee/classic_baton/telescopic
|
||||
@@ -280,7 +280,7 @@
|
||||
)
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened,
|
||||
/obj/item/organ/internal/eyes/cybernetic/shield,
|
||||
@@ -338,7 +338,7 @@
|
||||
suit_store = /obj/item/gun/energy/gun
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/arm/surgery,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
)
|
||||
belt = /obj/item/defibrillator/compact/advanced/loaded
|
||||
|
||||
@@ -387,7 +387,7 @@
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/arm/surgery/l,
|
||||
/obj/item/organ/internal/cyberimp/arm/medibeam,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/medical,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
@@ -437,7 +437,7 @@
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
)
|
||||
|
||||
implants = list(/obj/item/implant/mindshield,
|
||||
@@ -454,7 +454,7 @@
|
||||
r_pocket = /obj/item/nullrod/ert
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/eyes/hud/security,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
@@ -505,7 +505,7 @@
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/arm/janitorial,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
)
|
||||
|
||||
/datum/outfit/job/centcom/response_team/janitorial/gamma
|
||||
@@ -526,7 +526,7 @@
|
||||
)
|
||||
|
||||
cybernetic_implants = list(
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus,
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened,
|
||||
/obj/item/organ/internal/cyberimp/arm/advmop,
|
||||
/obj/item/organ/internal/cyberimp/brain/anti_stun/hardened
|
||||
)
|
||||
|
||||
@@ -300,14 +300,22 @@
|
||||
var/hunger_threshold = NUTRITION_LEVEL_STARVING
|
||||
var/synthesizing = 0
|
||||
var/poison_amount = 5
|
||||
var/disabled_by_emp = FALSE
|
||||
slot = "stomach"
|
||||
origin_tech = "materials=2;powerstorage=2;biotech=2"
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/examine(mob/user)
|
||||
. = ..()
|
||||
if(emp_proof)
|
||||
. += " The implant has been hardened. It is invulnerable to EMPs."
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/on_life()
|
||||
if(!owner)
|
||||
return
|
||||
if(synthesizing)
|
||||
return
|
||||
if(disabled_by_emp)
|
||||
return
|
||||
if(owner.stat == DEAD)
|
||||
return
|
||||
if(owner.nutrition <= hunger_threshold)
|
||||
@@ -319,11 +327,20 @@
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/proc/synth_cool()
|
||||
synthesizing = FALSE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/proc/emp_cool()
|
||||
disabled_by_emp = FALSE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/emp_act(severity)
|
||||
if(!owner || emp_proof)
|
||||
return
|
||||
owner.vomit(100, FALSE, TRUE, 3, FALSE) // because when else do we ever use projectile vomiting
|
||||
owner.visible_message("<span class='warning'>The contents of [owner]'s stomach erupt violently from [owner.p_their()] mouth!</span>",
|
||||
"<span class='warning'>You feel like your insides are burning as you vomit profusely!</span>",
|
||||
"<span class='warning'>You hear vomiting and a sickening splattering against the floor!</span>")
|
||||
owner.reagents.add_reagent("????",poison_amount / severity) //food poisoning
|
||||
to_chat(owner, "<span class='warning'>You feel like your insides are burning.</span>")
|
||||
disabled_by_emp = TRUE // Disable the implant for a little bit so this effect actually matters
|
||||
synthesizing = FALSE
|
||||
addtimer(CALLBACK(src, .proc/emp_cool), 60 SECONDS)
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus
|
||||
name = "Nutriment pump implant PLUS"
|
||||
@@ -333,6 +350,13 @@
|
||||
hunger_threshold = NUTRITION_LEVEL_HUNGRY
|
||||
poison_amount = 10
|
||||
origin_tech = "materials=4;powerstorage=3;biotech=3"
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/hardened
|
||||
name = "hardened nutrient pump implant"
|
||||
emp_proof = TRUE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/nutriment/plus/hardened
|
||||
name = "hardened nutrient pump implant PLUS"
|
||||
emp_proof = TRUE
|
||||
|
||||
/obj/item/organ/internal/cyberimp/chest/reviver
|
||||
name = "Reviver implant"
|
||||
|
||||
Reference in New Issue
Block a user