mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 04:22:39 +01:00
Autoinjector Embiggen (#11486)
This commit is contained in:
@@ -104,19 +104,26 @@
|
||||
/obj/item/reagent_containers/hypospray/autoinjector
|
||||
name = "autoinjector"
|
||||
desc = "A rapid and safe way to administer small amounts of drugs by untrained or trained personnel."
|
||||
icon_state = "autoinjector1"
|
||||
item_state = "autoinjector1"
|
||||
var/empty_state = "autoinjector0"
|
||||
flags = OPENCONTAINER
|
||||
desc_fluff = "Funded by the Stellar Corporate Conglomerate, produced by Zeng-Hu Pharmaceuticals, this autoinjector system was rebuilt from the ground up from the old variant to provide maximum user feedback."
|
||||
desc_info = "Autoinjectors are spent after using them. To re-use, use a screwdriver to open the back panel, then simply pour any desired reagent inside. Use in-hand, or click it while it's in your active hand to prepare it for reuse."
|
||||
icon_state = "autoinjector"
|
||||
item_state = "autoinjector"
|
||||
var/name_label
|
||||
var/spent = TRUE
|
||||
amount_per_transfer_from_this = 5
|
||||
possible_transfer_amounts = null
|
||||
volume = 5
|
||||
time = 0
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/Initialize()
|
||||
. =..()
|
||||
icon_state = empty_state
|
||||
item_state = empty_state
|
||||
. = ..()
|
||||
if(name_label)
|
||||
name_unlabel = name
|
||||
name = "[name] ([name_label])"
|
||||
verbs += /atom/proc/remove_label
|
||||
if(reagents_to_add)
|
||||
flags = 0
|
||||
spent = FALSE
|
||||
update_icon()
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/attack(var/mob/M, var/mob/user, target_zone)
|
||||
@@ -125,10 +132,17 @@
|
||||
return FALSE
|
||||
. = ..()
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/afterattack(mob/M, mob/user, proximity)
|
||||
. = ..()
|
||||
if(.)
|
||||
spent = TRUE
|
||||
update_icon()
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/attack_self(mob/user as mob)
|
||||
if(is_open_container())
|
||||
if(LAZYLEN(reagents.reagent_volumes))
|
||||
to_chat(user, SPAN_NOTICE("With a quick twist of \the [src]'s lid, you secure the reagents inside."))
|
||||
spent = FALSE
|
||||
flags &= ~OPENCONTAINER
|
||||
update_icon()
|
||||
else
|
||||
@@ -146,12 +160,18 @@
|
||||
. = ..()
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/update_icon()
|
||||
if(reagents.total_volume > 0 && !is_open_container())
|
||||
icon_state = initial(icon_state)
|
||||
item_state = initial(icon_state)
|
||||
else
|
||||
icon_state = empty_state
|
||||
item_state = empty_state
|
||||
cut_overlays()
|
||||
if(!is_open_container())
|
||||
var/mutable_appearance/backing_overlay = mutable_appearance(icon, "autoinjector_secured")
|
||||
add_overlay(backing_overlay)
|
||||
|
||||
icon_state = "[initial(icon_state)][spent]"
|
||||
item_state = "[initial(item_state)][spent]"
|
||||
|
||||
if(reagents.total_volume)
|
||||
var/mutable_appearance/reagent_overlay = mutable_appearance(icon, "autoinjector_reagents")
|
||||
reagent_overlay.color = reagents.get_color()
|
||||
add_overlay(reagent_overlay)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/examine(mob/user)
|
||||
..(user)
|
||||
@@ -162,11 +182,11 @@
|
||||
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/inaprovaline
|
||||
name = "autoinjector (inaprovaline)"
|
||||
name_label = "inaprovaline"
|
||||
reagents_to_add = list(/decl/reagent/inaprovaline = 5)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/emergency
|
||||
name = "autoinjector (emergency)"
|
||||
name_label = "emergency"
|
||||
reagents_to_add = list(/decl/reagent/inaprovaline = 2.5, /decl/reagent/dexalin = 2.5)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/emergency/Initialize()
|
||||
@@ -174,14 +194,14 @@
|
||||
desc += " This auto-injector is to be used in emergencies. It contains a small amount of inaprovaline and dexalin."
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/coagzolug
|
||||
name = "autoinjector (coagzolug)"
|
||||
name_label = "coagzolug"
|
||||
desc = "A rapid and safe way to administer small amounts of drugs by untrained or trained personnel. This one contains coagzolug, a quick-acting blood coagulant that will slow bleeding for as long as it's within the bloodstream."
|
||||
volume = 5
|
||||
flags = 0
|
||||
reagents_to_add = list(/decl/reagent/coagzolug = 5)
|
||||
|
||||
/obj/item/reagent_containers/hypospray/autoinjector/sideeffectbgone
|
||||
name = "sideeffects-be-gone! autoinjector"
|
||||
name_label = "sideeffects-be-gone!"
|
||||
desc = "A special cocktail designed to counter the side-effects of various drugs. Has 2 uses."
|
||||
volume = 30
|
||||
amount_per_transfer_from_this = 15
|
||||
|
||||
Reference in New Issue
Block a user