diff --git a/code/modules/customitems/item_defines.dm b/code/modules/customitems/item_defines.dm index 54fad15dc98..2a9f8d2b2a7 100644 --- a/code/modules/customitems/item_defines.dm +++ b/code/modules/customitems/item_defines.dm @@ -2040,3 +2040,134 @@ All custom items with worn sprites must follow the contained sprite system: http icon_state = "omega_jacket" item_state = "omega_jacket" contained_sprite = TRUE + +/obj/item/journal/fluff/kathira // Blue Leather-Bound Journal - Kathira El-Hashem - TheGreyWolf + name = "blue leather-bound journal" + desc = "A blue journal emblazoned with the New Kingdom of Adhomai's flag across the cover." + closed_desc = " The pages within are a mix of clearly indexed case files, and study notes alongside less clearly indexed pages that appears to be fragmented thoughts, not unlike a diary. The very first page of the journal reads 'dedicated to Qirandri Mrorirhaldarr' and is signed 'Mrradar Sanufar' underneath." + icon = 'icons/obj/custom_items/kathira_journal.dmi' + icon_override = 'icons/obj/custom_items/kathira_journal.dmi' + icon_state = "kath_journal" + item_state = "kath_journal" + color = null + +/obj/item/organ/internal/augment/fluff/kath_legbrace // Leg Support Augment - Kathira El-Hashem - thegreywolf + name = "leg support augment" + desc = "A leg augment to aid in the mobility of an otherwise disabled leg." + icon = 'icons/obj/custom_items/kathira_legbrace.dmi' + icon_override = 'icons/obj/custom_items/kathira_legbrace.dmi' + on_mob_icon = 'icons/obj/custom_items/kathira_legbrace.dmi' + icon_state = "kathira_legbrace" + item_state = "kathira_legbrace_onmob" + parent_organ = BP_R_LEG + supports_limb = TRUE + min_broken_damage = 15 + min_bruised_damage = 5 + var/last_drop = 0 + +/obj/item/organ/internal/augment/fluff/kath_legbrace/process() + if(QDELETED(src) || !owner) + return + if(last_drop + 6 SECONDS > world.time) + return + if(owner.lying || owner.buckled_to || length(owner.grabbed_by)) + return + + if(is_bruised()) + if(is_broken()) + collapse(40, 3, 110) + else + collapse() + +/obj/item/organ/internal/augment/fluff/kath_legbrace/proc/collapse(var/prob_chance = 20, var/weaken_strength = 2, var/pain_strength = 40) + if(prob(prob_chance)) + var/obj/item/organ/external/E = owner.organs_by_name[parent_organ] + owner.Weaken(weaken_strength) + last_drop = world.time + owner.custom_pain("Something inside your [E.name] hurts too much to stand!", pain_strength, TRUE, E, TRUE) + owner.visible_message("[owner] collapses!") + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak // Handsewn Idris Cloak - Kathira El-Hashem - TheGreyWolf + name = "handsewn Idris cloak" + desc = "A carefully handsewn cloak proudly emblazoned with the symbol of Idris Banking in silver treading and the words ‘Astronomical Figures. Unlimited Power.’ Embroidered beneath it.\nOn close examination, the inside of the cloak appears to be colored differently." + icon = 'icons/obj/custom_items/kathira_cloak.dmi' + icon_override = 'icons/obj/custom_items/kathira_cloak.dmi' + icon_state = "idris_cloak" + item_state = "idris_cloak" + var/style = "nka_cloak" + var/name2 = "handmade royalist cloak" + var/desc2 = "A blue cloak with the symbol of the New Kingdom of Adhomai proudly displayed on the back.\nUpon closer examination it appears to be a patchwork of older textile and newer fabrics, with the inside of the cloak appearing to be colored differently." + var/changed = FALSE + + var/hoodtype = /obj/item/clothing/head/winterhood/fluff/kathira_hood + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/Initialize() + . = ..() + new hoodtype(src) + +/obj/item/clothing/head/winterhood/fluff/kathira_hood + name = "handsewn hood" + desc = "A hood attached to a cloak." + icon = 'icons/obj/custom_items/kathira_cloak.dmi' + icon_override = 'icons/obj/custom_items/kathira_cloak.dmi' + icon_state = "idris_cloak_hood" + contained_sprite = TRUE + flags_inv = HIDEEARS | BLOCKHAIR | HIDEEARS + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/update_icon(var/hooded = FALSE) + var/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/K = get_accessory(/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak) + K.icon_state = "[K.changed ? K.style : initial(K.icon_state)]" + SEND_SIGNAL(K, COMSIG_ITEM_STATE_CHECK, args) + K.item_state = "[K.icon_state][hooded ? "_up" : ""]" + K.name = "[K.changed ? K.name2 : initial(K.name)]" + K.desc = "[K.changed ? K.desc2 : initial(K.desc)]" + K.accessory_mob_overlay = null + . = ..() + SEND_SIGNAL(K, COMSIG_ITEM_ICON_UPDATE) + if(usr) + usr.update_inv_w_uniform() + usr.update_inv_wear_suit() + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_cloak() + set name = "Change Cloak" + set category = "Object" + set src in usr + + if(use_check_and_message(usr)) + return + + var/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/K = get_accessory(/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak) + if(!K) + return + + usr.visible_message(SPAN_NOTICE("[usr] swiftly pulls \the [K] inside out, changing its appearance.")) + K.changed = !K.changed + K.update_icon() + SEND_SIGNAL(K, COMSIG_ITEM_REMOVE, K) + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/on_attached(obj/item/clothing/S, mob/user as mob) + ..() + has_suit.verbs += /obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_cloak + has_suit.verbs += /obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_hood + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/on_removed(mob/user as mob) + if(has_suit) + has_suit.verbs -= /obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_cloak + has_suit.verbs -= /obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_hood + ..() + +/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/verb/change_hood() + set name = "Toggle Hood" + set category = "Object" + set src in usr + + if(use_check_and_message(usr)) + return + + var/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak/K = get_accessory(/obj/item/clothing/accessory/poncho/tajarancloak/fluff/kathira_cloak) + if(!K) + return + + SEND_SIGNAL(K, COMSIG_ITEM_UPDATE_STATE, K) + K.update_icon() + diff --git a/html/changelogs/thegreywolf-kathiracustom.yml b/html/changelogs/thegreywolf-kathiracustom.yml new file mode 100644 index 00000000000..582b597a54c --- /dev/null +++ b/html/changelogs/thegreywolf-kathiracustom.yml @@ -0,0 +1,6 @@ +author: TheGreyWolf + +delete-after: True + +changes: + - rscadd: "Added Kathira El-Hashem's custom items." diff --git a/icons/obj/coatrack.dmi b/icons/obj/coatrack.dmi index 068197e06b7..76c37d8e7dd 100644 Binary files a/icons/obj/coatrack.dmi and b/icons/obj/coatrack.dmi differ diff --git a/icons/obj/custom_items/kathira_cloak.dmi b/icons/obj/custom_items/kathira_cloak.dmi new file mode 100644 index 00000000000..0dfb17a8ec9 Binary files /dev/null and b/icons/obj/custom_items/kathira_cloak.dmi differ diff --git a/icons/obj/custom_items/kathira_journal.dmi b/icons/obj/custom_items/kathira_journal.dmi new file mode 100644 index 00000000000..374da01e98d Binary files /dev/null and b/icons/obj/custom_items/kathira_journal.dmi differ diff --git a/icons/obj/custom_items/kathira_legbrace.dmi b/icons/obj/custom_items/kathira_legbrace.dmi new file mode 100644 index 00000000000..519cf879a3c Binary files /dev/null and b/icons/obj/custom_items/kathira_legbrace.dmi differ