mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Adds quickdraw objects and syringe cases
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
|
||||
/obj/machinery/vending/medical/New()
|
||||
products += list(/obj/item/weapon/storage/box/khcrystal = 4,/obj/item/weapon/backup_implanter = 3,
|
||||
/obj/item/clothing/glasses/omnihud/med = 4, /obj/item/device/glasses_kit = 1)
|
||||
/obj/item/clothing/glasses/omnihud/med = 4, /obj/item/device/glasses_kit = 1, /obj/item/weapon/storage/quickdraw/syringe_case = 4)
|
||||
..()
|
||||
|
||||
//Custom vendors
|
||||
|
||||
@@ -108,6 +108,7 @@
|
||||
/obj/item/weapon/reagent_containers/glass/bottle,
|
||||
/obj/item/weapon/reagent_containers/pill,
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/storage/quickdraw/syringe_case, //VOREStation Addition - Adds syringe cases,
|
||||
/obj/item/weapon/flame/lighter/zippo,
|
||||
/obj/item/weapon/storage/fancy/cigarettes,
|
||||
/obj/item/weapon/storage/pill_bottle,
|
||||
|
||||
78
code/game/objects/items/weapons/storage/quickdraw_vr.dm
Normal file
78
code/game/objects/items/weapons/storage/quickdraw_vr.dm
Normal file
@@ -0,0 +1,78 @@
|
||||
// -----------------------------
|
||||
// Quickdraw storage
|
||||
// -----------------------------
|
||||
//These items are pouches and cases made to be kept in belts or pockets to quickly draw objects from
|
||||
//Largely inspired by the vest pouches on Colonial Marines
|
||||
|
||||
/obj/item/weapon/storage/quickdraw
|
||||
name = "quickdraw"
|
||||
desc = "This object should not appear"
|
||||
icon = 'icons/obj/storage_vr.dmi'
|
||||
|
||||
//Quickmode
|
||||
//When set to 0, this storage will operate as a regular storage, and clicking on it while equipped will open it as a storage
|
||||
//When set to 1, a click while it is equipped will instead move the first item inside it to your hand
|
||||
var/quickmode = 0
|
||||
|
||||
/obj/item/weapon/storage/quickdraw/attack_hand(mob/user as mob)
|
||||
if(src.loc == user) //If they aren't holding us, we do nothing special
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(quickmode)
|
||||
var/first_item = contents[1]
|
||||
if(first_item && !H.get_active_hand()) //Do we have anything to give you?
|
||||
H.put_in_hands(first_item)
|
||||
return
|
||||
|
||||
if(H.l_store == src && !H.get_active_hand()) //overrides
|
||||
src.open(user)
|
||||
return
|
||||
if(H.r_store == src && !H.get_active_hand())
|
||||
src.open(user)
|
||||
return
|
||||
..() //Nothing special happened, go call the other proc
|
||||
|
||||
|
||||
/obj/item/weapon/storage/quickdraw/verb/toggle_quickdraw()
|
||||
set name = "Switch Quickdraw Mode"
|
||||
set category = "Object"
|
||||
|
||||
quickmode = !quickmode
|
||||
switch (quickmode)
|
||||
if(1)
|
||||
to_chat(usr, "[src] now draws the first object inside.")
|
||||
if(0)
|
||||
to_chat(usr, "[src] now opens as a container.")
|
||||
|
||||
/obj/item/weapon/storage/quickdraw/AltClick(mob/user)
|
||||
..()
|
||||
if(src.loc == user) //Are they carrying us?
|
||||
toggle_quickdraw()
|
||||
|
||||
// -----------------------------
|
||||
// Syringe case
|
||||
// -----------------------------
|
||||
|
||||
/obj/item/weapon/storage/quickdraw/syringe_case
|
||||
name = "syringe case"
|
||||
desc = "A small case for safely carrying sharps around."
|
||||
icon_state = "syringe_case"
|
||||
|
||||
w_class = ITEMSIZE_SMALL
|
||||
max_w_class = ITEMSIZE_TINY
|
||||
max_storage_space = ITEMSIZE_TINY * 6 //Capable of holding six syringes
|
||||
|
||||
//Can hold syringes and autoinjectors, but also pills if you really wanted. Syringe-shaped objects like pens and cigarettes also fit, but why would you do that?
|
||||
can_hold = list(/obj/item/weapon/reagent_containers/syringe, /obj/item/weapon/reagent_containers/hypospray/autoinjector,
|
||||
/obj/item/weapon/reagent_containers/pill, /obj/item/weapon/pen, /obj/item/device/flashlight/pen, /obj/item/clothing/mask/smokable/cigarette)
|
||||
|
||||
quickmode = 1 //Starts in quickdraw mode
|
||||
//Preloaded for your convenience!
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/reagent_containers/syringe,
|
||||
/obj/item/weapon/reagent_containers/syringe
|
||||
)
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.6 KiB |
@@ -1112,6 +1112,7 @@
|
||||
#include "code\game\objects\items\weapons\storage\laundry_basket.dm"
|
||||
#include "code\game\objects\items\weapons\storage\lockbox.dm"
|
||||
#include "code\game\objects\items\weapons\storage\misc.dm"
|
||||
#include "code\game\objects\items\weapons\storage\quickdraw_vr.dm"
|
||||
#include "code\game\objects\items\weapons\storage\secure.dm"
|
||||
#include "code\game\objects\items\weapons\storage\storage.dm"
|
||||
#include "code\game\objects\items\weapons\storage\toolbox.dm"
|
||||
|
||||
Reference in New Issue
Block a user