From 2d25c822e321b130b6b10931b25dee0c16c8e28b Mon Sep 17 00:00:00 2001
From: shellspeed1 <46614774+shellspeed1@users.noreply.github.com>
Date: Wed, 11 Dec 2019 02:47:33 -0800
Subject: [PATCH] redone
---
.../research/designs/medical_designs.dm | 13 +++++++
code/modules/research/techweb/all_nodes.dm | 3 +-
.../reagent container/hypospraymkii.dm | 36 +++++++++++++------
3 files changed, 40 insertions(+), 12 deletions(-)
diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm
index 5a8fc03d..8510055b 100644
--- a/code/modules/research/designs/medical_designs.dm
+++ b/code/modules/research/designs/medical_designs.dm
@@ -906,3 +906,16 @@
build_path = /obj/item/bodypart/r_arm/robot/surplus_upgraded
category = list("Medical Designs")
departmental_flags = DEPARTMENTAL_FLAG_MEDICAL
+
+
+
+/datum/design/adv_r_arm
+ name = "Disposable Hypospray MK.II"
+ desc = "A cheaply made hypospray"
+ id = "disposable_hypospray"
+ build_type = PROTOLATHE
+ materials = list(MAT_METAL = 100, MAT_PLASTIC = 500)
+ construction_time = 40
+ build_path = /obj/item/hypospray/mkii/disposable
+ category = list("Medical Designs")
+ departmental_flags = DEPARTMENTAL_FLAG_MEDICAL
\ No newline at end of file
diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm
index 2f51b33e..3463eb75 100644
--- a/code/modules/research/techweb/all_nodes.dm
+++ b/code/modules/research/techweb/all_nodes.dm
@@ -11,7 +11,8 @@
design_ids = list("basic_matter_bin", "basic_cell", "basic_scanning", "basic_capacitor", "basic_micro_laser", "micro_mani",
"destructive_analyzer", "circuit_imprinter", "experimentor", "rdconsole", "design_disk", "tech_disk", "rdserver", "rdservercontrol", "mechfab",
"space_heater", "xlarge_beaker", "sec_rshot", "sec_bshot", "sec_slug", "sec_Islug", "sec_dart", "sec_38", "sec_38lethal",
- "rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass","chem_pack","medkit_cabinet")
+ "rglass","plasteel","plastitanium","plasmaglass","plasmareinforcedglass","titaniumglass","plastitaniumglass","chem_pack","medkit_cabinet",
+ "disposable_hypospray")
/datum/techweb_node/mmi
id = "mmi"
diff --git a/modular_citadel/code/modules/reagents/reagent container/hypospraymkii.dm b/modular_citadel/code/modules/reagents/reagent container/hypospraymkii.dm
index 6cd9e1ba..de334f31 100644
--- a/modular_citadel/code/modules/reagents/reagent container/hypospraymkii.dm
+++ b/modular_citadel/code/modules/reagents/reagent container/hypospraymkii.dm
@@ -34,6 +34,7 @@
var/inject_self = SELF_INJECT
var/quickload = FALSE
var/penetrates = FALSE
+ var/reloadable = TRUE
/obj/item/hypospray/mkii/brute
start_vial = /obj/item/reagent_containers/glass/bottle/vial/small/preloaded/bicaridine
@@ -53,6 +54,16 @@
/obj/item/hypospray/mkii/enlarge
spawnwithvial = FALSE
+//A vial-loaded hypospray. Cartridge-based!
+/obj/item/hypospray/mkii/disposable
+ name = "disposable hypospray mk.II"
+ icon = 'modular_citadel/icons/obj/hypospraymkii.dmi'
+ icon_state = "hypo2"
+ desc = "A cheaply made knock off verson of the MKII hypospray. You cannot remove a hypovial from it making it nonreusable."
+ w_class = WEIGHT_CLASS_TINY
+ spawnwithvial = FALSE
+ reloadable = FALSE
+
/obj/item/hypospray/mkii/CMO
name = "hypospray mk.II deluxe"
allowed_containers = list(/obj/item/reagent_containers/glass/bottle/vial/tiny, /obj/item/reagent_containers/glass/bottle/vial/small, /obj/item/reagent_containers/glass/bottle/vial/large)
@@ -96,21 +107,24 @@
/obj/item/hypospray/mkii/examine(mob/user)
. = ..()
- to_chat(user, "[vial] has [vial.reagents.total_volume]u remaining.")
to_chat(user, "[src] is set to [mode ? "Inject" : "Spray"] contents on application.")
/obj/item/hypospray/mkii/proc/unload_hypo(obj/item/I, mob/user)
- if((istype(I, /obj/item/reagent_containers/glass/bottle/vial)))
- var/obj/item/reagent_containers/glass/bottle/vial/V = I
- V.forceMove(user.loc)
- user.put_in_hands(V)
- to_chat(user, "You remove [vial] from [src].")
- vial = null
- update_icon()
- playsound(loc, 'sound/weapons/empty.ogg', 50, 1)
+ if (reloadable == TRUE)
+ if((istype(I, /obj/item/reagent_containers/glass/bottle/vial)))
+ var/obj/item/reagent_containers/glass/bottle/vial/V = I
+ V.forceMove(user.loc)
+ user.put_in_hands(V)
+ to_chat(user, "You remove [vial] from [src].")
+ vial = null
+ update_icon()
+ playsound(loc, 'sound/weapons/empty.ogg', 50, 1)
+ else
+ to_chat(user, "This hypo isn't loaded!")
+ return
else
- to_chat(user, "This hypo isn't loaded!")
- return
+ if((istype(I, /obj/item/reagent_containers/glass/bottle/vial)))
+ to_chat(user, "You cannot remove [vial] from [src] without destroying both.")
/obj/item/hypospray/mkii/attackby(obj/item/I, mob/living/user)
if((istype(I, /obj/item/reagent_containers/glass/bottle/vial) && vial != null))