//////////////////////////////////////////////////////////////////////////////// /// Pills. //////////////////////////////////////////////////////////////////////////////// /obj/item/reagent_containers/pill name = "pill" desc = "a pill." icon = 'icons/obj/chemical.dmi' icon_state = null item_state = "pill" possible_transfer_amounts = null w_class = WEIGHT_CLASS_TINY slot_flags = SLOT_EARS volume = 60 drop_sound = 'sound/items/drop/food.ogg' pickup_sound = 'sound/items/pickup/food.ogg' storage_slot_sort_by_name = TRUE contained_sprite = TRUE /obj/item/reagent_containers/pill/New() ..() if(!icon_state) icon_state = "pill[rand(1, 20)]" /obj/item/reagent_containers/pill/attack(mob/living/target_mob, mob/living/user, target_zone) //TODO: replace with standard_feed_mob() call. if(target_mob == user) if(!target_mob.can_eat(src)) return target_mob.visible_message("[target_mob] swallows a pill.", SPAN_NOTICE("You swallow \the [src]."), null, 2) if(reagents.total_volume) reagents.trans_to_mob(target_mob, reagents.total_volume, CHEM_INGEST) qdel(src) return 1 else if(istype(target_mob, /mob/living/carbon/human)) if(!target_mob.can_force_feed(user, src)) return user.visible_message(SPAN_WARNING("[user] attempts to force [target_mob] to swallow \the [src]!")) user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) if(!do_mob(user, target_mob)) return user.visible_message(SPAN_WARNING("[user] forces [target_mob] to swallow \the [src].")) var/contained = reagentlist() target_mob.attack_log +="\[[time_stamp()]\] Has been fed [name] by [key_name(user)] Reagents: [contained]" user.attack_log += "\[[time_stamp()]\] Fed [name] to [key_name(target_mob)] Reagents: [contained]" msg_admin_attack("[key_name_admin(user)] fed [key_name_admin(target_mob)] with [name] Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)",ckey=key_name(user),ckey_target=key_name(target_mob)) if(reagents.total_volume) reagents.trans_to_mob(target_mob, reagents.total_volume, CHEM_INGEST) qdel(src) return 1 return 0 /obj/item/reagent_containers/pill/afterattack(obj/target, mob/user, proximity) if(proximity && target.is_open_container() && target.reagents) if(!target.reagents.total_volume) to_chat(user, SPAN_NOTICE("You can't dissolve \the [src] in an empty [target].")) return to_chat(user, SPAN_NOTICE("You dissolve \the [src] in [target].")) user.attack_log += "\[[time_stamp()]\] Spiked \a [target] with a pill. Reagents: [reagentlist()]" msg_admin_attack("[user.name] ([user.ckey]) spiked \a [target] with a pill. Reagents: [reagentlist()] (INTENT: [uppertext(user.a_intent)]) (JMP)",ckey=key_name(user),ckey_target=key_name(target)) reagents.trans_to(target, reagents.total_volume) for(var/mob/O in viewers(2, user)) O.show_message(SPAN_WARNING("[user] puts something in \the [target]."), 1) qdel(src) return . = ..() /obj/item/reagent_containers/pill/attackby(obj/item/attacking_item, mob/user) if(is_sharp(attacking_item) || istype(attacking_item, /obj/item/card/id)) var/obj/item/reagent_containers/powder/J = new /obj/item/reagent_containers/powder(loc) user.visible_message( SPAN_WARNING("\The [user] gently cuts up \the [src] with \a [attacking_item]!"), SPAN_NOTICE("You gently cut up \the [src] with \the [attacking_item]."), SPAN_WARNING("You hear quiet grinding.") ) playsound(loc, 'sound/effects/chop.ogg', 50, 1) if(reagents) reagents.trans_to_obj(J, reagents.total_volume) J.get_appearance() qdel(src) return ..() //////////////////////////////////////////////////////////////////////////////// /// Pills. END //////////////////////////////////////////////////////////////////////////////// //Pills /obj/item/reagent_containers/pill/antitox name = "10u Dylovene Pill" desc = "Neutralizes many common toxins." icon_state = "pill17" reagents_to_add = list(/singleton/reagent/dylovene = 10) /obj/item/reagent_containers/pill/tox name = "Toxins Pill" desc = "Highly toxic." icon_state = "pill5" reagents_to_add = list(/singleton/reagent/toxin = 50) /obj/item/reagent_containers/pill/cyanide icon_state = "pill5" reagents_to_add = list(/singleton/reagent/toxin/cyanide = 50) /obj/item/reagent_containers/pill/cyanide/antagonist_hints(mob/user, distance, is_adjacent) . += ..() . += "A cyanide pill. Deadly if swallowed." /obj/item/reagent_containers/pill/adminordrazine name = "Adminordrazine Pill" desc = "It's magic. We don't have to explain it." icon_state = "pill16" reagents_to_add = list(/singleton/reagent/adminordrazine = 50) /obj/item/reagent_containers/pill/stox name = "15u Soporific Pill" desc = "Commonly used to treat insomnia." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/soporific = 15) /obj/item/reagent_containers/pill/kelotane name = "10u Kelotane Pill" desc = "Used to treat minor burns." icon_state = "pill11" reagents_to_add = list(/singleton/reagent/kelotane = 10) /obj/item/reagent_containers/pill/perconol name = "10u Perconol Pill" desc = "A light painkiller available over-the-counter." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/perconol = 10) /obj/item/reagent_containers/pill/mortaphenyl name = "10u Mortaphenyl Pill" desc = "A mortaphenyl pill, it's a potent painkiller." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/mortaphenyl = 10) /obj/item/reagent_containers/pill/corophenidate name = "2u Corophenidate Pill" desc = "Improves the ability to concentrate." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/corophenidate = 2) /obj/item/reagent_containers/pill/emoxanyl name = "2u Emoxanyl Pill" desc = "Used to treat anxiety disorders, depression and epilepsy." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/emoxanyl = 2) /obj/item/reagent_containers/pill/minaphobin name = "2u Minaphobin Pill" desc = "Used to treat anxiety disorders and depression." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/minaphobin = 2) /obj/item/reagent_containers/pill/nerospectan name = "2u Nerospectan Pill" desc = "Used to treat a large variety of disorders including tourettes, depression, anxiety and psychosis." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/nerospectan = 2) /obj/item/reagent_containers/pill/neurapan name = "2u Neurapan Pill" desc = "Used to treat a large variety of disorders including tourettes, depression, anxiety and psychosis." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/neurapan = 2) /obj/item/reagent_containers/pill/neurostabin name = "2u Neurostabin Pill" desc = "Used to treat psychosis and muscle weakness." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/mental/neurostabin = 2) /obj/item/reagent_containers/pill/orastabin name = "2u Orastabin Pill" desc = "Used to treat anxiety disorders and speech impediments." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/orastabin = 2) /obj/item/reagent_containers/pill/parvosil name = "2u Parvosil Pill" desc = "Used to treat anxiety disorders such as phobias and social anxiety." icon_state = "pill22" reagents_to_add = list(/singleton/reagent/mental/parvosil = 2) /obj/item/reagent_containers/pill/inaprovaline name = "10u Inaprovaline Pill" desc = "Used to stabilize heart activity." icon_state = "pill20" reagents_to_add = list(/singleton/reagent/inaprovaline = 10) /obj/item/reagent_containers/pill/dexalin name = "15u Dexalin Pill" desc = "Used to treat oxygen deprivation." icon_state = "pill16" reagents_to_add = list(/singleton/reagent/dexalin = 15) /obj/item/reagent_containers/pill/dexalin_plus name = "15u Dexalin Plus Pill" desc = "Used to treat extreme oxygen deprivation." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/dexalin/plus = 15) /obj/item/reagent_containers/pill/dermaline name = "10u Dermaline Pill" desc = "Used to treat severe burn wounds." icon_state = "pill12" reagents_to_add = list(/singleton/reagent/dermaline = 10) /obj/item/reagent_containers/pill/dylovene name = "15u Dylovene Pill" desc = "A broad-spectrum anti-toxin." icon_state = "pill13" reagents_to_add = list(/singleton/reagent/dylovene = 15) /obj/item/reagent_containers/pill/butazoline name = "10u Butazoline Pill" desc = "Used to treat major injuries and bleeding." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/butazoline = 10) /obj/item/reagent_containers/pill/bicaridine name = "10u Bicaridine Pill" desc = "Used to treat minor injuries and bleeding." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/bicaridine = 10) /obj/item/reagent_containers/pill/happy name = "Happy Pill" desc = "Happy happy joy joy!" icon_state = "pill_happy" reagents_to_add = list(/singleton/reagent/drugs/mms = 15, /singleton/reagent/sugar = 15) /obj/item/reagent_containers/pill/zoom name = "Zoom Pill" desc = "Zoooom!" icon_state = "pill18" reagents_to_add = list(/singleton/reagent/drugs/impedrezene = 5, /singleton/reagent/synaptizine = 5, /singleton/reagent/hyperzine = 5) /obj/item/reagent_containers/pill/joy name = "Joy Pill" desc = "Peace, at last." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/drugs/joy = 5) /obj/item/reagent_containers/pill/heroin name = "heroin pill" desc = "The pain will pass..." icon_state = "pill7" reagents_to_add = list(/singleton/reagent/drugs/heroin = 5) /obj/item/reagent_containers/pill/cocaine name = "cocaine tablet" desc = "For those long nights out." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/drugs/cocaine = 10) /obj/item/reagent_containers/pill/contemplus name = "\improper Contemplus tablet" desc = "For that essay that is due tomorrow." icon_state = "pill19" reagents_to_add = list(/singleton/reagent/drugs/cocaine/contemplus = 10) /obj/item/reagent_containers/pill/spotlight name = "\improper Spotlight tablet" desc = "For that acting audition today." icon_state = "pill2" reagents_to_add = list(/singleton/reagent/drugs/cocaine/spotlight = 10) /obj/item/reagent_containers/pill/sparkle name = "\improper Sparkle tablet" desc = "For those long nights out at the club." icon_state = "pill20" reagents_to_add = list(/singleton/reagent/drugs/cocaine/sparkle = 10) /obj/item/reagent_containers/pill/thetamycin name = "15u Thetamycin Pill" desc = "Used to treat infections and septicaemia." icon_state = "pill19" reagents_to_add = list(/singleton/reagent/thetamycin = 15) /obj/item/reagent_containers/pill/bio_vitamin //Biogenerator Version name = "Vitamin Pill" desc = "Contains a meal's worth of nutrients." icon_state = "pill11" reagents_to_add = list(/singleton/reagent/nutriment = 20) /obj/item/reagent_containers/pill/bio_vitamin/Initialize() . = ..() var/juice = pick(/singleton/reagent/drink/banana, /singleton/reagent/drink/berryjuice, /singleton/reagent/drink/grapejuice, /singleton/reagent/drink/lemonjuice, /singleton/reagent/drink/limejuice, /singleton/reagent/drink/orangejuice, /singleton/reagent/drink/watermelonjuice) reagents.add_reagent(juice, 5) /obj/item/reagent_containers/pill/bio_vitamin/cheap //Vending machine version name = "Vitamin Pill" desc = "Has all the vitamins a person needs." reagents_to_add = list(/singleton/reagent/nutriment = 2) /obj/item/reagent_containers/pill/rmt name = "15u Regenerative-Muscular Tissue Supplement Pill" desc = "Commonly abbreviated to RMT, it contains chemicals rampantly used by those seeking to remedy the effects of prolonged zero-gravity adaptations." icon_state = "pill19" reagents_to_add = list(/singleton/reagent/rmt = 15) /obj/item/reagent_containers/pill/cetahydramine name = "5u Cetahydramine Pill" desc = "Used to treat coughing, sneezing and itching." icon_state = "pill19" reagents_to_add = list(/singleton/reagent/cetahydramine = 5) /obj/item/reagent_containers/pill/skrell_nootropic name = "5u Co'qnixq Wuxi Pill" desc = "Used to treat dementia." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/drugs/skrell_nootropic = 5) /obj/item/reagent_containers/pill/hyronalin name = "7u Hyronalin" desc = "Used to treat radiation poisoning." icon_state = "pill1" reagents_to_add = list(/singleton/reagent/hyronalin = 7) /obj/item/reagent_containers/pill/antirad name = "AntiRad" desc = "Used to treat radiation poisoning." icon_state = "yellow" reagents_to_add = list(/singleton/reagent/hyronalin = 5, /singleton/reagent/dylovene = 10) /obj/item/reagent_containers/pill/sugariron name = "10u Sugar-Iron" desc = "Used to help the body naturally replenish blood." icon_state = "pill1" reagents_to_add = list(/singleton/reagent/iron = 5, /singleton/reagent/sugar = 10) /obj/item/reagent_containers/pill/antidexafen name = "15u Antidexafen" desc = "Common cold mediciation. Safe for babies!" icon_state = "pill4" reagents_to_add = list(/singleton/reagent/antidexafen = 10, /singleton/reagent/drink/lemonjuice = 5, /singleton/reagent/nutriment/mint = REM*0.2) /obj/item/reagent_containers/pill/antiparasitic name = "5u Helmizole" desc = "An antiparasitic used to treat worms." icon_state = "pill11" reagents_to_add = list(/singleton/reagent/antiparasitic = 5) /obj/item/reagent_containers/pill/asinodryl name = "10u Asinodryl" desc = "An antiemetic which prevents vomiting." icon_state = "pill20" reagents_to_add = list(/singleton/reagent/asinodryl = 10) /obj/item/reagent_containers/pill/steramycin name = "5u Steramycin" desc = "A prophylactic antibiotic that kills infections before they start." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/steramycin = 5) /obj/item/reagent_containers/pill/cleaner_tablet name = "dissolvable cleaner tablet" desc = "An advanced formula dissolvable tablet laden with the cutting edge of Idris chemical science. Smells like dried bleach. It's probably just bleach." icon_state = "cleanertablet" reagents_to_add = list(/singleton/reagent/spacecleaner = 15) /obj/item/reagent_containers/pill/ryetalyn name = "10u Ryetalyn Pill" desc = "A medicine used to treat genetic conditions, including benign and malignant tumours." icon_state = "pill11" reagents_to_add = list(/singleton/reagent/ryetalyn = 10) /obj/item/reagent_containers/pill/caffeine name = "5u Caffeine Pill" desc = "A stimulant used to help with alertness and fatigue." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/caffeine = 5) /obj/item/reagent_containers/pill/nicotine name = "5u Nicotine Pill" desc = "A pill used to treat nicotine addiction." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/mental/nicotine = 5) /obj/item/reagent_containers/pill/colorspace name = "5u Colorspace Pill" desc = "A recreational drug, legal in Biesel." icon_state = "pill8" reagents_to_add = list(/singleton/reagent/drugs/colorspace = 5) /obj/item/reagent_containers/pill/snowflake name = "5u Snowflake Pill" desc = "A recreational drug, legal in Biesel, despite the dangers of overdoses." icon_state = "pill18" reagents_to_add = list(/singleton/reagent/drugs/snowflake = 5) /obj/item/reagent_containers/pill/psilocybin name = "5u Psilocybin Pill" desc = "A strong psychotropic derived from certain species of mushroom." icon_state = "pill10" reagents_to_add = list(/singleton/reagent/drugs/psilocybin = 5) /obj/item/reagent_containers/pill/psi_protect name = "5u Psi-protect Pill" desc = "A pill used to protect against ADPI and treat various psionic disorders" icon_state = "pill10" reagents_to_add = list(/singleton/reagent/drugs/psiblock = 5) /obj/item/reagent_containers/pill/psi_protect/yomi_genetics reagents_to_add = list(/singleton/reagent/drugs/psiblock/yomi_genetics = 5) /obj/item/reagent_containers/pill/psi_protect/yomi_genetics/cheap reagents_to_add = list(/singleton/reagent/drugs/psiblock/yomi_genetics/cheap = 5) /obj/item/reagent_containers/pill/psi_protect/yomi_genetics/expensive reagents_to_add = list(/singleton/reagent/drugs/psiblock/yomi_genetics/expensive = 5)