diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 7a3872fdfa5..98b380867fc 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -17,11 +17,11 @@ All custom items with worn sprites must follow the contained sprite system: http switch(icon_state) if("pocket_watch_open") icon_state = "pocket_watch_close" - usr << "You close \the [src]." + to_chat(user, "You close \the [src].") desc = "The design of this pocket watch signals its age, however it seems to retain its pristine quality. The cover is gold, and there appears to be an elegant crest on the outside of the lid." if("pocket_watch_close") icon_state = "pocket_watch_open" - usr << "You open \the [src]." + to_chat(user, "You open \the [src].") desc = "Inside the pocket watch, there is a collection of numbers, displaying '[worldtime2text()]'. On the inside of the lid, there is another sequence of numbers etched into the lid itself." @@ -73,7 +73,7 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/glasses/fluff/nebula_glasses/attack_self(mob/user as mob) if(chip) user.put_in_hands(chip) - user << "You eject a small, concealed data chip from a small slot in the frames of \the [src]." + to_chat(user, "You eject a small, concealed data chip from a small slot in the frames of \the [src].") chip = null /obj/item/clothing/glasses/fluff/nebula_glasses/attackby(obj/item/weapon/W as obj, mob/user as mob) @@ -83,7 +83,7 @@ All custom items with worn sprites must follow the contained sprite system: http chip = W W.add_fingerprint(user) add_fingerprint(user) - user << "You slot the [W] back into its place in the frames of \the [src]." + to_chat(user, "You slot \the [W] back into its place in the frames of \the [src].") /obj/item/weapon/disk/fluff/nebula_chip //data chip - Roxy Wallace - nebulaflare name = "data chip" @@ -120,11 +120,11 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/weapon/fluff/kiara_altar/attack_self(mob/user as mob) if(src.icon_state == "kiara_altar1") src.icon_state = "kiara_altar2" - user << "You open the pocket altar, revealing its contents." + to_chat(user, "You open \the [src], revealing its contents.") desc = "A black tin box, you can see inside; a vial of herbs, a little bag of salt, some epoxy clay runes, a candle with match, a permanent marker and a tiny besom." else src.icon_state = "kiara_altar1" - user << "You close the pocket altar." + to_chat(user, "You close \the [src].") desc = "A black tin box with a symbol painted over it. It shimmers in the light." @@ -176,9 +176,9 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/weapon/cane/fluff/usiki_cane/attack_self(mob/user as mob) if(all_languages[LANGUAGE_UNATHI] in user.languages) - user << "This cane has the words \"A new and better life\" carved into one side in basic, and on the other side in Sinta'Unathi." + to_chat(user, "This cane has the words \"A new and better life\" carved into one side in basic, and on the other side in Sinta'Unathi.") else - user << "This cane has the words \"A new and better life\" carved into the side, the other side has some unreadable carvings." + to_chat(user, "This cane has the words \"A new and better life\" carved into the side, the other side has some unreadable carvings.") /obj/item/clothing/gloves/black/fluff/kathleen_glove //Black Left Glove - Kathleen Mistral - valkywalky2 @@ -332,14 +332,14 @@ All custom items with worn sprites must follow the contained sprite system: http active= !active if(active) playsound(user, 'sound/weapons/saberon.ogg', 50, 1) - user << "\The [src] is now energised." + to_chat(user, "\The [src] is now energised.") icon_state = "tigerclaw_active" item_state = icon_state slot_flags = null attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") else playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) - user << "\The [src] is now de-energised." + to_chat(user, "\The [src] is now de-energised.") icon_state = initial(icon_state) item_state = icon_state slot_flags = initial(slot_flags) @@ -369,13 +369,13 @@ All custom items with worn sprites must follow the contained sprite system: http if("fabian_coat_open") icon_state = "fabian_coat_closed" item_state = icon_state - usr << "You zip up \the [src]." + to_chat(usr, "You zip up \the [src].") if("fabian_coat_closed") icon_state = "fabian_coat_open" item_state = icon_state - usr << "You unzip \the [src]." + to_chat(usr, "You unzip \the [src].") else - usr << "You attempt to button-up the velcro on \the [src], before promptly realising how silly you are." + to_chat(usr, "You attempt to button-up the velcro on \the [src], before promptly realising how silly you are.") return usr.update_inv_wear_suit() @@ -541,7 +541,7 @@ All custom items with worn sprites must follow the contained sprite system: http set desc = "HNNNNG." if(last_special > world.time) - src << "Your chest still hurts badly!" + to_chat(src, "Your chest still hurts badly!") return last_special = world.time + 500 @@ -552,8 +552,8 @@ All custom items with worn sprites must follow the contained sprite system: http return F.take_damage(5) - src << "You feel a stabbing pain in your chest!" - playsound(src, 'sound/effects/Heart Beat.ogg', 20, 1) // shouldn't this be only to src? + to_chat(src, "You feel a stabbing pain in your chest!") + sound_to(src, 'sound/effects/Heart Beat.ogg') /obj/item/clothing/accessory/badge/fluff/caleb_badge //Worn Badge - Caleb Greene - notmegatron @@ -613,7 +613,7 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/mask/fluff/rur_collar/emag_act(var/remaining_charges, var/mob/user) if (!emagged) - user << "You short out \the [src]'s locking mechanism." + to_chat(user, "You short out \the [src]'s locking mechanism.") src.icon_state = "rur_collar_broken" src.canremove = TRUE src.emagged = TRUE @@ -814,7 +814,7 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/head/beret/engineering/fluff/ikrad_beret/attack_self(var/mob/user) if(letter) - user << "You remove \the [letter] from inside the [src]'s flap." + to_chat(user, "You remove \the [letter] from inside the [src]'s flap.") user.put_in_hands(letter) letter = null else @@ -822,7 +822,7 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/head/beret/engineering/fluff/ikrad_beret/attackby(var/obj/item/fluff/ikrad_letter/W, var/mob/user) if(!src.letter && istype(W)) - user << "You place \the [W] back inside the [src]'s flap." + to_chat(user, "You place \the [W] back inside the [src]'s flap.") user.drop_from_inventory(W,src) src.letter = W else @@ -882,13 +882,13 @@ All custom items with worn sprites must follow the contained sprite system: http set category = "Object" set src in usr - usr << "\icon[] []: The detective's credentials show:" - usr << "The investigator registered to the credentials is [investigator]." - usr << "The assignment registered on the card is [occupation]." - usr << "The birth date on the card displays [birth_year]." - usr << "The citizenship registered on the card is [citizenship]." - usr << "The systems that the credentials show the user is licensed to investigate in are [licensed_systems]." - usr << "Additional endorsements registered on the card show: [supplementary_endorsements]." + to_chat(usr, "\icon[] []: The detective's credentials show:") + to_chat(usr, "The investigator registered to the credentials is [investigator].") + to_chat(usr, "The assignment registered on the card is [occupation].") + to_chat(usr, "The birth date on the card displays [birth_year].") + to_chat(usr, "The citizenship registered on the card is [citizenship].") + to_chat(usr, "The systems that the credentials show the user is licensed to investigate in are [licensed_systems].") + to_chat(usr, "Additional endorsements registered on the card show: [supplementary_endorsements].") return @@ -1090,9 +1090,9 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/mask/fluff/corvo_cigarette/attack_self(mob/user) active= !active if(active) - user << "You turn \the [src] on." + to_chat(user, "You turn \the [src] on.") else - user << "You turn \the [src] off." + to_chat(user, "You turn \the [src] off.") update_icon() user.update_inv_l_hand(FALSE) @@ -1108,7 +1108,7 @@ All custom items with worn sprites must follow the contained sprite system: http /obj/item/clothing/mask/fluff/corvo_cigarette/examine(mob/user) if(..(user, 1)) - user << "It is [active ? "on" : "off"]." + to_chat(user, "It is [active ? "on" : "off"].") /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac/fluff/leonce_cognac //Old Earth Luxury Cognac - Francois Leonce - driecg36 @@ -1230,10 +1230,10 @@ All custom items with worn sprites must follow the contained sprite system: http if(src.icon_state == "leland_badge") src.icon_state = "leland_badge-info" - usr << "You open \the [src]." + to_chat(usr, "You open \the [src].") else src.icon_state = "leland_badge" - usr << "You close \the [src]." + to_chat(usr, "You close \the [src].") /obj/item/clothing/suit/storage/fluff/azala_coat //Azala's Gentleman's Coat - Azala Huz'kai - tomiixstarslasher @@ -2471,4 +2471,203 @@ All custom items with worn sprites must follow the contained sprite system: http H.UpdateDamageIcon() H.drop_from_inventory(src) - qdel(src) \ No newline at end of file + qdel(src) + + +/obj/item/clothing/glasses/threedglasses/fluff/grunnus_glasses //3D glasses - Paul Grunnus - moom241 + desc = "A pair of old, beat up looking glasses, with red and blue lenses. Pretty archaic, but some might call it fashionable." + icon = 'icons/obj/custom_items/grunnus_glasses.dmi' + icon_state = "grunnus_glasses" + item_state = "grunnus_glasses" + contained_sprite = TRUE + + +/obj/item/clothing/under/dress/fluff/ameline_dress //Dominian Culinary Dress - Ameline Hemory - dasfox + name = "traditional jumper dress" + desc = " The latest in Dominian dresses, this piece of clothing is similar to those worn by chefs on the planet of Moroz. With a pleated skirt and detachable sleeves, \ + it is on the less modest end of Morozi fashion." + icon = 'icons/obj/custom_items/ameline_dress.dmi' + icon_state = "ameline_dress" + item_state = "ameline_dress" + contained_sprite = TRUE + + +/obj/item/clothing/head/fluff/aavs_mask //Reflective Mask - Aavs Guwan - dronzthewolf + name = "reflective mask" + desc = "This odd mask and hood combination covers the wearer, and seems to be made of a one-way dome mirror and some old cloth or rope." + icon = 'icons/obj/custom_items/aavs_mask.dmi' + icon_state = "aavs_mask" + item_state = "aavs_mask" + contained_sprite = TRUE + flags_inv = HIDEEARS|HIDEFACE + body_parts_covered = HEAD|FACE|EYES + + +/obj/item/clothing/accessory/fluff/krin_shirt //Skull Shirt - Krin Volqux - paradoxspace + name = "skull shirt" + desc = "A shirt carrying the familiar skeletal logo of the Skrellian punk band \"GLORSH YOU ASSHOLE\" This appears to be for their 2461 \"Tri-Qyu Express\" tour." + icon = 'icons/obj/custom_items/krin_clothing.dmi' + icon_state = "krin_shirt" + item_state = "krin_shirt" + +/obj/item/clothing/suit/storage/fluff/krin_jacket //Polychromatic Jacket - Krin Volqux - paradoxspace + name = "polychromatic jacket" + desc = "What appears to be a modified canvas jacket, covered in small polychromatic patches and aftermarket spikes in holo colors, changing often. The keen eye can spot a \"Fourth Incident\" patch on the chest." + icon = 'icons/obj/custom_items/krin_clothing.dmi' + icon_state = "krin_jacket" + item_state = "krin_jacket" + contained_sprite = TRUE + +/obj/item/clothing/shoes/fluff/krin_shoes //Knee-high High-tops - Krin Volqux - paradoxspace + name = "knee-high high-tops" + desc = "These highest-tops stretch all the way up to the knees and then some. Drawn on the side in small Skrellian print is \"High tech, low life.\"" + icon = 'icons/obj/custom_items/krin_clothing.dmi' + item_state = "krin_shoes" + icon_state = "krin_shoes" + contained_sprite = TRUE + +/obj/item/weapon/storage/backpack/fluff/krin_bag //Broken Pack - Krin Volqux - paradoxspace + name = "broken pack" + desc = "What appears to be a technologically-advanced backpack, the electronics are fried from a distant malfunction. It smells like a disposals track. \ + A small \"Original Conglomerate\" patch has been applied to the strap, a popular moisturewave Idol group. It reads \"Not Dead Yet.\" next to a Neaera in a spacesuit." + icon = 'icons/obj/custom_items/krin_clothing.dmi' + item_state = "krin_bag" + icon_state = "krin_bag" + contained_sprite = TRUE + + +/obj/item/clothing/under/fluff/rollsuit() + set name = "Roll Down Jumpsuit" + set category = "Object" + + set src in usr + if (use_check(usr, USE_DISALLOW_SILICONS)) + return + + if(("[item_state]_d") in icon_states(src)) + to_chat(usr, "You cannot roll down \the [src]!") + return + + if(rolled_sleeves) + to_chat(usr, "You must roll up your [src]'s sleeves first!") + return + + rolled_down = !rolled_down + if(rolled_down) + body_parts_covered &= LOWER_TORSO|LEGS|FEET + item_state = "[item_state]_d" + else + body_parts_covered = initial(body_parts_covered) + item_state = initial(item_state) + update_clothing_icon() + +/obj/item/clothing/under/fluff/rollsleeves() + set name = "Roll Up Sleeves" + set category = "Object" + set src in usr + + if (use_check(usr, USE_DISALLOW_SILICONS)) + return + + if(("[item_state]_r") in icon_states(src)) + to_chat(usr, "You cannot roll up your [src]'s sleeves!") + return + + if(rolled_down) + to_chat(usr, "You must roll up your [src] first!") + return + + rolled_sleeves = !rolled_sleeves + if(rolled_sleeves) + body_parts_covered &= ~(ARMS|HANDS) + item_state = "[item_state]_r" + else + body_parts_covered = initial(body_parts_covered) + item_state = initial(item_state) + update_clothing_icon() + + +/obj/item/clothing/under/fluff/mira_uniform //Mira's Cloth Undersuit - Mira Akhandi - queenofyugoslavia + name = "dark clothes" + desc = "A set of dark under clothing, loosely fitting. The initials /M.A./ are stitched into the collar." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_uniform" + item_state = "mira_uniform" + contained_sprite = TRUE + +/obj/item/clothing/suit/storage/toggle/labcoat/fluff/mira_robes //Junior Alchemist Robes - Mira Akhandi - queenofyugoslavia + name = "junior alchemist robes" + desc = "A robe with a light silky gold colored belt around the waist. Placed upon the print is two red jewels pinned to it neatly." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_robes" + item_state = "mira_robes" + icon_open = "mira_robes_open" + icon_closed = "mira_robes" + contained_sprite = TRUE + +/obj/item/clothing/shoes/fluff/mira_boots //Mira Boots - Mira Akhandi - queenofyugoslavia + name = "dark boots" + desc = "A pair of black boots with tall laces." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_boots" + item_state = "mira_boots" + contained_sprite = TRUE + +/obj/item/clothing/under/fluff/mira_skirt //Mira's Skirt - Mira Akhandi - queenofyugoslavia + name = "suspended skirt" + desc = "A plaid skirt with suspenders, sewed into the side is the initials \"M.A.\"." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_skirt" + item_state = "mira_skirt" + contained_sprite = TRUE + +/obj/item/weapon/reagent_containers/glass/beaker/fluff/mira_beaker //Alchemist Flask - Mira Akhandi - queenofyugoslavia + name = "alchemist flask" + desc = "A large bottle used to mix chemicals inside." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_beaker" + +/obj/item/weapon/storage/backpack/fluff/mira_bag //Burlap Alchemist Bag - Mira Akhandi - queenofyugoslavia + name = "burlap bag" + desc = "A smallish burlup sack, modified to lug around belongings. Stiched into it is the letters '\"M.A.\"." //Alchemist Flask - Mira Akhandi - queenofyugoslavia + icon_state = "giftbag0" + item_state = "giftbag0" + +/obj/item/clothing/suit/fluff/mira_vest //Cut-off Vest - Mira Akhandi - queenofyugoslavia + name = "cut-off vest" + desc = "A short grey puffer vest." + icon = 'icons/obj/custom_items/mira_clothing.dmi' + icon_state = "mira_vest" + item_state = "mira_vest" + contained_sprite = TRUE + +/obj/item/weapon/cane/fluff/qrqil_cane //Energy Cane - Qrqil Qrrzix - yonnimer + name = "energy cane" + desc = "This silver-handled cane has letters carved into the sides." + icon = 'icons/obj/custom_items/qrqil_cane.dmi' + icon_state = "qrqil_cane" + item_state = "qrqil_cane" + contained_sprite = TRUE + var/active = FALSE + +/obj/item/weapon/cane/fluff/qrqil_cane/attack_self(mob/user) + active= !active + if(active) + playsound(user, 'sound/weapons/saberon.ogg', 50, 1) + to_chat(user, "\The [src] is now energised.") + item_state = icon_state + else + playsound(user, 'sound/weapons/saberoff.ogg', 50, 1) + to_chat(user, "\The [src] is now de-energised..") + + update_icon() + user.update_inv_l_hand(FALSE) + user.update_inv_r_hand() + +/obj/item/weapon/cane/fluff/qrqil_cane/update_icon() + if(active) + icon_state = "[icon_state]_active" + item_state = icon_state + else + icon_state = initial(icon_state) + item_state = icon_state \ No newline at end of file diff --git a/icons/obj/custom_items/aavs_mask.dmi b/icons/obj/custom_items/aavs_mask.dmi new file mode 100644 index 00000000000..e35b4102712 Binary files /dev/null and b/icons/obj/custom_items/aavs_mask.dmi differ diff --git a/icons/obj/custom_items/ameline_dress.dmi b/icons/obj/custom_items/ameline_dress.dmi new file mode 100644 index 00000000000..08a1e7cff24 Binary files /dev/null and b/icons/obj/custom_items/ameline_dress.dmi differ diff --git a/icons/obj/custom_items/grunnus_glasses.dmi b/icons/obj/custom_items/grunnus_glasses.dmi new file mode 100644 index 00000000000..0b36d283d4e Binary files /dev/null and b/icons/obj/custom_items/grunnus_glasses.dmi differ diff --git a/icons/obj/custom_items/krin_clothing.dmi b/icons/obj/custom_items/krin_clothing.dmi new file mode 100644 index 00000000000..4b01705f033 Binary files /dev/null and b/icons/obj/custom_items/krin_clothing.dmi differ diff --git a/icons/obj/custom_items/mira_clothing.dmi b/icons/obj/custom_items/mira_clothing.dmi new file mode 100644 index 00000000000..8dd362c1c86 Binary files /dev/null and b/icons/obj/custom_items/mira_clothing.dmi differ diff --git a/icons/obj/custom_items/qrqil_cane.dmi b/icons/obj/custom_items/qrqil_cane.dmi new file mode 100644 index 00000000000..2906c5a7e35 Binary files /dev/null and b/icons/obj/custom_items/qrqil_cane.dmi differ