//////////////////////////////////////////////////////////////////////////////// /// Pills. //////////////////////////////////////////////////////////////////////////////// /obj/item/reagent_containers/pill name = "pill" desc = "a pill." icon = 'icons/obj/chemical.dmi' item_icons = list( slot_l_hand_str = 'icons/mob/items/stacks/lefthand_medical.dmi', slot_r_hand_str = 'icons/mob/items/stacks/righthand_medical.dmi', ) icon_state = null item_state = "pill" possible_transfer_amounts = null w_class = ITEMSIZE_TINY slot_flags = SLOT_EARS volume = 60 drop_sound = 'sound/items/drop/food.ogg' pickup_sound = 'sound/items/pickup/food.ogg' New() ..() if(!icon_state) icon_state = "pill[rand(1, 20)]" attack(mob/M as mob, mob/user as mob, def_zone) //TODO: replace with standard_feed_mob() call. if(M == user) if(!M.can_eat(src)) return M.visible_message("[M] swallows a pill.", SPAN_NOTICE("You swallow \the [src]."), null, 2) if(reagents.total_volume) reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) qdel(src) return 1 else if(istype(M, /mob/living/carbon/human)) if(!M.can_force_feed(user, src)) return user.visible_message(SPAN_WARNING("[user] attempts to force [M] to swallow \the [src]!")) user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) if(!do_mob(user, M)) return user.visible_message(SPAN_WARNING("[user] forces [M] to swallow \the [src].")) var/contained = reagentlist() M.attack_log += text("\[[time_stamp()]\] Has been fed [name] by [key_name(user)] Reagents: [contained]") user.attack_log += text("\[[time_stamp()]\] Fed [name] to [key_name(M)] Reagents: [contained]") msg_admin_attack("[key_name_admin(user)] fed [key_name_admin(M)] with [name] Reagents: [contained] (INTENT: [uppertext(user.a_intent)]) (JMP)",ckey=key_name(user),ckey_target=key_name(M)) if(reagents.total_volume) reagents.trans_to_mob(M, reagents.total_volume, CHEM_INGEST) qdel(src) return 1 return 0 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 += text("\[[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 . = ..() //////////////////////////////////////////////////////////////////////////////// /// 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(/datum/reagent/dylovene = 10) /obj/item/reagent_containers/pill/tox name = "Toxins Pill" desc = "Highly toxic." icon_state = "pill5" reagents_to_add = list(/datum/reagent/toxin = 50) /obj/item/reagent_containers/pill/cyanide name = "Cyanide Pill" desc = "Don't swallow this." icon_state = "pill5" reagents_to_add = list(/datum/reagent/toxin/cyanide = 50) /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(/datum/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(/datum/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(/datum/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(/datum/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(/datum/reagent/mortaphenyl = 10) /obj/item/reagent_containers/pill/corophenidate name = "5u Corophenidate Pill" desc = "Improves the ability to concentrate." icon_state = "pill8" reagents_to_add = list(/datum/reagent/mental/corophenidate = 5) /obj/item/reagent_containers/pill/minaphobin name = "5u Minaphobin Pill" desc = "Used to treat anxiety disorders and depression." icon_state = "pill8" reagents_to_add = list(/datum/reagent/mental/minaphobin = 5) /obj/item/reagent_containers/pill/inaprovaline name = "10u Inaprovaline Pill" desc = "Used to stabilize heart activity." icon_state = "pill20" reagents_to_add = list(/datum/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(/datum/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(/datum/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(/datum/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(/datum/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(/datum/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(/datum/reagent/bicaridine = 10) /obj/item/reagent_containers/pill/happy name = "Happy Pill" desc = "Happy happy joy joy!" icon_state = "pill18" reagents_to_add = list(/datum/reagent/space_drugs = 15, /datum/reagent/sugar = 15) /obj/item/reagent_containers/pill/zoom name = "Zoom Pill" desc = "Zoooom!" icon_state = "pill18" reagents_to_add = list(/datum/reagent/impedrezene = 10, /datum/reagent/synaptizine = 5, /datum/reagent/hyperzine = 5) obj/item/reagent_containers/pill/tranquility name = "Tranquility Pill" desc = "Peace, at last." icon_state = "pill8" reagents_to_add = list(/datum/reagent/mental/neurapan = 15, /datum/reagent/impedrezene = 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(/datum/reagent/thetamycin = 15) /obj/item/reagent_containers/pill/bio_vitamin name = "Vitamin Pill" desc = "Contains a meal's worth of nutrients." icon_state = "pill11" reagents_to_add = list(/datum/reagent/nutriment = 20) /obj/item/reagent_containers/pill/bio_vitamin/Initialize() reagents_to_add += list(pick(/datum/reagent/drink/banana, /datum/reagent/drink/berryjuice, /datum/reagent/drink/grapejuice, /datum/reagent/drink/lemonjuice, /datum/reagent/drink/limejuice, /datum/reagent/drink/orangejuice, /datum/reagent/drink/watermelonjuice) = 1) . = ..() /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(/datum/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(/datum/reagent/cetahydramine = 5)