Med Pill Blue Pill (#4404)

* Fixes 4412
* Rebalanced medical gear spawns
* Pill bottle code touched up
This commit is contained in:
mistyLuminescence
2017-12-23 22:45:24 +00:00
committed by Atermonera
parent 828b927a4d
commit c986d57c34
8 changed files with 239 additions and 178 deletions

View File

@@ -177,6 +177,7 @@
w_class = ITEMSIZE_SMALL
can_hold = list(/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/dice,/obj/item/weapon/paper)
allow_quick_gather = 1
allow_quick_empty = 1
use_to_pickup = 1
use_sound = null
max_storage_space = ITEMSIZE_COST_TINY * 14
@@ -186,138 +187,166 @@
name = "bottle of Dylovene pills"
desc = "Contains pills used to counter toxins."
New()
..()
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
new /obj/item/weapon/reagent_containers/pill/antitox( src )
/obj/item/weapon/storage/pill_bottle/antitox/New() //25u each
..()
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
new /obj/item/weapon/reagent_containers/pill/antitox(src)
/obj/item/weapon/storage/pill_bottle/bicaridine
name = "bottle of Bicaridine pills"
desc = "Contains pills used to stabilize the severely injured."
/obj/item/weapon/storage/pill_bottle/bicaridine/New()
..()
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
..()
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
/obj/item/weapon/storage/pill_bottle/dexalin_plus
name = "bottle of Dexalin Plus pills"
desc = "Contains pills used to treat extreme cases of oxygen deprivation."
/obj/item/weapon/storage/pill_bottle/dexalin_plus/New()
..()
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
..()
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
new /obj/item/weapon/reagent_containers/pill/dexalin_plus(src)
/obj/item/weapon/storage/pill_bottle/dermaline
name = "bottle of Dermaline pills"
desc = "Contains pills used to treat burn wounds."
/obj/item/weapon/storage/pill_bottle/dermaline/New()
..()
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
..()
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
/obj/item/weapon/storage/pill_bottle/dylovene
name = "bottle of Dylovene pills"
desc = "Contains pills used to treat toxic substances in the blood."
/obj/item/weapon/storage/pill_bottle/dylovene/New()
..()
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
/obj/item/weapon/storage/pill_bottle/dylovene/New() //15u each
..()
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
new /obj/item/weapon/reagent_containers/pill/dylovene(src)
/obj/item/weapon/storage/pill_bottle/inaprovaline
name = "bottle of Inaprovaline pills"
desc = "Contains pills used to stabilize patients."
New()
..()
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
new /obj/item/weapon/reagent_containers/pill/inaprovaline( src )
/obj/item/weapon/storage/pill_bottle/inaprovaline/New()
..()
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
new /obj/item/weapon/reagent_containers/pill/inaprovaline(src)
/obj/item/weapon/storage/pill_bottle/kelotane
name = "bottle of kelotane pills"
desc = "Contains pills used to treat burns."
New()
..()
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
new /obj/item/weapon/reagent_containers/pill/kelotane( src )
/obj/item/weapon/storage/pill_bottle/kelotane/New()
..()
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
new /obj/item/weapon/reagent_containers/pill/kelotane(src)
/obj/item/weapon/storage/pill_bottle/spaceacillin
name = "bottle of Spaceacillin pills"
desc = "A theta-lactam antibiotic. Effective against many diseases likely to be encountered in space."
/obj/item/weapon/storage/pill_bottle/spaceacillin/New()
..()
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
..()
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
new /obj/item/weapon/reagent_containers/pill/spaceacillin(src)
/obj/item/weapon/storage/pill_bottle/tramadol
name = "bottle of Tramadol pills"
desc = "Contains pills used to relieve pain."
New()
..()
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
new /obj/item/weapon/reagent_containers/pill/tramadol( src )
/obj/item/weapon/storage/pill_bottle/tramadol/New()
..()
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
new /obj/item/weapon/reagent_containers/pill/tramadol(src)
/obj/item/weapon/storage/pill_bottle/citalopram
name = "bottle of Citalopram pills"
desc = "Contains pills used to stabilize a patient's mood."
New()
..()
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
new /obj/item/weapon/reagent_containers/pill/citalopram( src )
/obj/item/weapon/storage/pill_bottle/citalopram/New()
..()
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
new /obj/item/weapon/reagent_containers/pill/citalopram(src)
/obj/item/weapon/storage/pill_bottle/carbon
name = "bottle of Carbon pills"
desc = "Contains pills used to neutralise chemicals in the stomach."
/obj/item/weapon/storage/pill_bottle/carbon/New()
..()
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
new /obj/item/weapon/reagent_containers/pill/carbon(src)
/obj/item/weapon/storage/pill_bottle/iron
name = "bottle of Iron pills"
desc = "Contains pills used to aid in blood regeneration."
/obj/item/weapon/storage/pill_bottle/iron/New()
..()
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)
new /obj/item/weapon/reagent_containers/pill/iron(src)

View File

@@ -311,24 +311,24 @@
return 0 //Means the item is already in the storage item
if(storage_slots != null && contents.len >= storage_slots)
if(!stop_messages)
usr << "<span class='notice'>[src] is full, make some space.</span>"
to_chat(usr, "<span class='notice'>[src] is full, make some space.</span>")
return 0 //Storage item is full
if(can_hold.len && !is_type_in_list(W, can_hold))
if(!stop_messages)
if (istype(W, /obj/item/weapon/hand_labeler))
return 0
usr << "<span class='notice'>[src] cannot hold [W].</span>"
to_chat(usr, "<span class='notice'>[src] cannot hold [W].</span>")
return 0
if(cant_hold.len && is_type_in_list(W, cant_hold))
if(!stop_messages)
usr << "<span class='notice'>[src] cannot hold [W].</span>"
to_chat(usr, "<span class='notice'>[src] cannot hold [W].</span>")
return 0
if (max_w_class != null && W.w_class > max_w_class)
if(!stop_messages)
usr << "<span class='notice'>[W] is too long for \the [src].</span>"
to_chat(usr, "<span class='notice'>[W] is too long for \the [src].</span>")
return 0
var/total_storage_space = W.get_storage_cost()
@@ -337,12 +337,12 @@
if(total_storage_space > max_storage_space)
if(!stop_messages)
usr << "<span class='notice'>[src] is too full, make some space.</span>"
to_chat(usr, "<span class='notice'>[src] is too full, make some space.</span>")
return 0
if(W.w_class >= src.w_class && (istype(W, /obj/item/weapon/storage)))
if(!stop_messages)
usr << "<span class='notice'>[src] cannot hold [W] as it's a storage item of the same size.</span>"
to_chat(usr, "<span class='notice'>[src] cannot hold [W] as it's a storage item of the same size.</span>")
return 0 //To prevent the stacking of same sized storage items.
return 1
@@ -366,7 +366,7 @@
if(!prevent_warning)
for(var/mob/M in viewers(usr, null))
if (M == usr)
usr << "<span class='notice'>You put \the [W] into [src].</span>"
to_chat(usr, "<span class='notice'>You put \the [W] into [src].</span>")
else if (M in range(1)) //If someone is standing close enough, they can tell what it is...
M.show_message("<span class='notice'>\The [usr] puts [W] into [src].</span>")
else if (W && W.w_class >= 3) //Otherwise they can only see large or normal items from a distance...
@@ -515,7 +515,7 @@
set name = "Empty Contents"
set category = "Object"
if((!ishuman(usr) && (src.loc != usr)) || usr.stat || usr.restrained())
if(((!(ishuman(usr) || isrobot(usr))) && (src.loc != usr)) || usr.stat || usr.restrained())
return
var/turf/T = get_turf(src)
@@ -591,11 +591,9 @@
..()
/obj/item/weapon/storage/attack_self(mob/user as mob)
//Clicking on itself will empty it, if it has the verb to do that.
if(user.get_active_hand() == src)
if(src.verbs.Find(/obj/item/weapon/storage/verb/quick_empty))
src.quick_empty()
return 1
if((user.get_active_hand() == src) || (isrobot(user)) && allow_quick_empty)
src.quick_empty()
return 1 // Is this return even needed?
//Returns the storage depth of an atom. This is the number of storage items the atom is contained in before reaching toplevel (the area).
//Returns -1 if the atom was not found on container.