diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi new file mode 100644 index 00000000000..08ad268499e Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/feet.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/feet.dmi new file mode 100644 index 00000000000..b4c27fd16b3 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/feet.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/hands.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/hands.dmi new file mode 100644 index 00000000000..2fd74f2bf11 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/hands.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/large-worn-icons/32x64/head.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/large-worn-icons/32x64/head.dmi new file mode 100644 index 00000000000..b09b411bde9 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/large-worn-icons/32x64/head.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/mask.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/mask.dmi new file mode 100644 index 00000000000..2bb8e8bc896 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/mask.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/suit.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/suit.dmi new file mode 100644 index 00000000000..f9c48cae180 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/suit.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/clothing/uniform.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/uniform.dmi new file mode 100644 index 00000000000..99538cfd75a Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/clothing/uniform.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_left.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_left.dmi new file mode 100644 index 00000000000..02dfe2b9154 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_left.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_right.dmi b/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_right.dmi new file mode 100644 index 00000000000..50e76d660b2 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_right.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/gloves.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/gloves.dmi new file mode 100644 index 00000000000..e122c34d6b4 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/gloves.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/hats.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/hats.dmi new file mode 100644 index 00000000000..942adc7da27 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/hats.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/masks.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/masks.dmi new file mode 100644 index 00000000000..6fbeea8321e Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/masks.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/shoes.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/shoes.dmi new file mode 100644 index 00000000000..4df4ebe0ef9 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/shoes.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/suits.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/suits.dmi new file mode 100644 index 00000000000..14eac9d3ff0 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/suits.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/clothing/uniform.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/uniform.dmi new file mode 100644 index 00000000000..6155d708cf8 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/clothing/uniform.dmi differ diff --git a/modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi b/modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi new file mode 100644 index 00000000000..444b2e82928 Binary files /dev/null and b/modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi differ diff --git a/modular_skyrat/modules/customization/modules/client/loadout/donator/_donator.dm b/modular_skyrat/modules/customization/modules/client/loadout/donator/_donator.dm new file mode 100644 index 00000000000..bcbc08863e3 --- /dev/null +++ b/modular_skyrat/modules/customization/modules/client/loadout/donator/_donator.dm @@ -0,0 +1,34 @@ +/datum/loadout_item/uniform/donator + category = LOADOUT_CATEGORY_UNIFORM + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/suit/donator + category = LOADOUT_CATEGORY_SUIT + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/gloves/donator + category = LOADOUT_CATEGORY_GLOVES + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/neck/donator + category = LOADOUT_CATEGORY_NECK + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/shoes/donator + category = LOADOUT_CATEGORY_SHOES + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/head/donator + category = LOADOUT_CATEGORY_HEAD + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/mask/donator + category = LOADOUT_CATEGORY_MASK + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/backpack/donator + category = LOADOUT_CATEGORY_BACKPACK + subcategory = LOADOUT_SUBCATEGORY_DONATOR + +/datum/loadout_item/backpack/donator/public + donator_only = TRUE diff --git a/modular_skyrat/modules/customization/modules/client/loadout/donator/backpack.dm b/modular_skyrat/modules/customization/modules/client/loadout/donator/backpack.dm index d627ef3254a..d401b7d2465 100644 --- a/modular_skyrat/modules/customization/modules/client/loadout/donator/backpack.dm +++ b/modular_skyrat/modules/customization/modules/client/loadout/donator/backpack.dm @@ -1,17 +1,12 @@ -/datum/loadout_item/backpack/donator - category = LOADOUT_CATEGORY_BACKPACK - subcategory = LOADOUT_SUBCATEGORY_DONATOR - donator_only = TRUE - -/datum/loadout_item/backpack/donator/coin +/datum/loadout_item/backpack/donator/public/coin name = "Iron Coin" path = /obj/item/coin/iron -/datum/loadout_item/backpack/donator/havana_cigar_case +/datum/loadout_item/backpack/donator/public/havana_cigar_case name = "Havanian Cigars" path = /obj/item/storage/fancy/cigarettes/cigars/havana cost = 3 -/datum/loadout_item/backpack/donator/vape +/datum/loadout_item/backpack/donator/public/vape name = "E-Cigarette" path = /obj/item/clothing/mask/vape diff --git a/modular_skyrat/modules/customization/modules/client/loadout/donator/personal/donator_personal.dm b/modular_skyrat/modules/customization/modules/client/loadout/donator/personal/donator_personal.dm new file mode 100644 index 00000000000..6bfa49c407c --- /dev/null +++ b/modular_skyrat/modules/customization/modules/client/loadout/donator/personal/donator_personal.dm @@ -0,0 +1,69 @@ +/datum/loadout_item/head/donator/drake_skull + name = "Skull of an ashdrake" + path = /obj/item/clothing/head/drake_skull + ckeywhitelist = list("random516") + +/datum/loadout_item/gloves/donator/blutigen_wraps + name = "Blutigen Wraps" + path = /obj/item/clothing/gloves/fingerless/blutigen_wraps + ckeywhitelist = list("random516") + +/datum/loadout_item/suit/donator/blutigen_kimono + name = "Blutigen Kimono" + path = /obj/item/clothing/suit/blutigen_kimono + ckeywhitelist = list("random516") + +/datum/loadout_item/uniform/donator/blutigen_undergarment + name = "Dragon Undergarment" + path = /obj/item/clothing/under/custom/blutigen_undergarment + ckeywhitelist = list("random516") + +/datum/loadout_item/uniform/donator/kilano_suit + name = "black and gold dress uniform" + path = /obj/item/clothing/under/custom/kilano + ckeywhitelist = list("netrakyram") + +/datum/loadout_item/gloves/donator/kilano_gloves + name = "black and gold gloves" + path = /obj/item/clothing/gloves/kilano + ckeywhitelist = list("netrakyram") + +/datum/loadout_item/shoes/donator/kilano_boots + name = "black and gold boots" + path = /obj/item/clothing/shoes/winterboots/kilano + ckeywhitelist = list("netrakyram") + +/datum/loadout_item/neck/donator/kiaracloak + name = "Kiara's cloak" + path = /obj/item/clothing/neck/cloak/inferno + ckeywhitelist = list("inferno707") + +/datum/loadout_item/neck/donator/kiaracollar + name = "Kiara's collar" + path = /obj/item/clothing/neck/human_petcollar/inferno + ckeywhitelist = list("inferno707") + +/datum/loadout_item/backpack/donator/kiaramedal + name = "Insignia of Steele" + path = /obj/item/clothing/accessory/medal/steele + ckeywhitelist = list("inferno707") + +/datum/loadout_item/mask/donator/hheart + name = "The Hollow Heart" + path = /obj/item/clothing/mask/hheart + ckeywhitelist = list("inferno707") + +/datum/loadout_item/backpack/donator/darksabre + name = "Dark Sabre" + path = /obj/item/toy/darksabre + ckeywhitelist = list("inferno707") + +/datum/loadout_item/backpack/donator/darksabresheath + name = "Dark Sabre Sheath" + path = /obj/item/storage/belt/sabre/darksabre + ckeywhitelist = list("inferno707") + +/datum/loadout_item/backpack/donator/darkarmor + name = "Dark Armor" + path = /obj/item/clothing/suit/armor/vest/darkcarapace + ckeywhitelist = list("inferno707") diff --git a/modular_skyrat/modules/customization/modules/client/preferences.dm b/modular_skyrat/modules/customization/modules/client/preferences.dm index 56108e6d5d8..15ea961e9e2 100644 --- a/modular_skyrat/modules/customization/modules/client/preferences.dm +++ b/modular_skyrat/modules/customization/modules/client/preferences.dm @@ -732,7 +732,7 @@ var/even = FALSE for(var/path in item_names) var/datum/loadout_item/LI = GLOB.loadout_items[path] - if(LI.ckeywhitelist && !LI.ckeywhitelist[user.ckey] && !user.client.holder) + if(LI.ckeywhitelist && !LI.ckeywhitelist[user.ckey]) continue var/background_cl = "#23273C" if(even) diff --git a/modular_skyrat/modules/customization/modules/clothing/~donator/donator_clothing.dm b/modular_skyrat/modules/customization/modules/clothing/~donator/donator_clothing.dm new file mode 100644 index 00000000000..2618e728222 --- /dev/null +++ b/modular_skyrat/modules/customization/modules/clothing/~donator/donator_clothing.dm @@ -0,0 +1,180 @@ +/**************SKYRAT REWARDS**************/ +//Donation reward for Random516 +/obj/item/clothing/head/drake_skull + name = "skull of an ashdrake" + desc = "How did they get this?" + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/hats.dmi' + icon_state = "drake_skull" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/large-worn-icons/32x64/head.dmi' + flags_cover = HEADCOVERSEYES + flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR + +//Donation reward for Random516 +/obj/item/clothing/gloves/fingerless/blutigen_wraps + name = "Blutigen Wraps" + desc = "The one who wears these had everything and yet lost it all..." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/gloves.dmi' + icon_state = "blutigen_wraps" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/hands.dmi' + +//Donation reward for Random516 +/obj/item/clothing/suit/blutigen_kimono + name = "Blutigen Kimono" + desc = "For the eyes bestowed upon this shall seek adventure..." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/suits.dmi' + icon_state = "blutigen_kimono" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/suit.dmi' + body_parts_covered = CHEST|GROIN|ARMS + mutant_variants = NONE + +//Donation reward for Random516 +/obj/item/clothing/under/custom/blutigen_undergarment + name = "Dragon Undergarments" + desc = "The Dragon wears the sexy?" + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/uniform.dmi' + icon_state = "blutigen_undergarment" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/uniform.dmi' + mutant_variants = NONE + fitted = FEMALE_UNIFORM_TOP + +//Donation reward for NetraKyram +/obj/item/clothing/under/custom/kilano + name = "black and gold dress uniform" + desc = "A light black and gold dress made out some sort of silky material." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/uniform.dmi' + icon_state = "kilanosuit" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/uniform.dmi' + mutant_variants = NONE + fitted = FEMALE_UNIFORM_TOP + +//Donation reward for NetraKyram +/obj/item/clothing/gloves/kilano + name = "black and gold gloves" + desc = "Some black and gold gloves, It seems like they're made to match something." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/gloves.dmi' + icon_state = "kilanogloves" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/hands.dmi' + +//Donation reward for NetraKyram +/obj/item/clothing/shoes/winterboots/kilano + name = "black and gold boots" + desc = "Some heavy furred boots, why would you need fur on a space station? Seems redundant." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/shoes.dmi' + icon_state = "kilanoboots" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/feet.dmi' + mutant_variants = NONE + + +/****************LEGACY REWARDS***************/ +//Donation reward for inferno707 +/obj/item/clothing/neck/cloak/inferno + name = "Kiara's Cloak" + desc = "The design on this seems a little too familiar." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + icon_state = "infcloak" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi' + w_class = WEIGHT_CLASS_SMALL + body_parts_covered = CHEST|GROIN|LEGS|ARMS + +//Donation reward for inferno707 +/obj/item/clothing/neck/human_petcollar/inferno + name = "Kiara's Collar" + desc = "A soft black collar that seems to stretch to fit whoever wears it." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + icon_state = "infcollar" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi' + tagname = null + +//Donation reward for inferno707 +/obj/item/clothing/accessory/medal/steele + name = "Insignia Of Steele" + desc = "An intricate pendant given to those who help a key member of the Steele Corporation." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + icon_state = "steele" + medaltype = "medal-silver" + +//Donation reward for inferno707 +/obj/item/toy/darksabre + name = "Kiara's Sabre" + desc = "This blade looks as dangerous as its owner." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi' + icon_state = "darksabre" + lefthand_file = 'modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_left.dmi' + righthand_file = 'modular_skyrat/modules/customization/icons/~donator/mob/inhands/donator_right.dmi' + +/obj/item/toy/darksabre/get_belt_overlay() + return mutable_appearance('modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi', "darksheath-darksabre") + +//Donation reward for inferno707 +/obj/item/storage/belt/sabre/darksabre + name = "Ornate Sheathe" + desc = "An ornate and rather sinister looking sabre sheathe." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi' + icon_state = "darksheath" + +/obj/item/storage/belt/sabre/darksabre/ComponentInitialize() + . = ..() + var/datum/component/storage/STR = GetComponent(/datum/component/storage) + STR.set_holdable(list( + /obj/item/toy/darksabre + )) + +/obj/item/storage/belt/sabre/darksabre/PopulateContents() + new /obj/item/toy/darksabre(src) + update_icon() + +//Donation reward for inferno707 +/obj/item/clothing/suit/armor/vest/darkcarapace + name = "Dark Armor" + desc = "A dark, non-functional piece of armor sporting a red and black finish." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/custom.dmi' + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/custom_w.dmi' + icon_state = "darkcarapace" + blood_overlay_type = "armor" + dog_fashion = /datum/dog_fashion/back + mutant_variants = NONE + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) + +//Donation reward for inferno707 +/obj/item/clothing/mask/hheart + name = "Hollow Heart" + desc = "It's an odd ceramic mask. Set in the internal side are several suspicious electronics branded by Steele Tech." + icon = 'modular_skyrat/modules/customization/icons/~donator/obj/clothing/masks.dmi' + icon_state = "hheart" + worn_icon = 'modular_skyrat/modules/customization/icons/~donator/mob/clothing/mask.dmi' + var/c_color_index = 1 + var/list/possible_colors = list("off", "blue", "red") + actions_types = list(/datum/action/item_action/hheart) + mutant_variants = NONE + +/obj/item/clothing/mask/hheart/Initialize() + . = ..() + update_icon() + +/obj/item/clothing/mask/hheart/update_icon() + . = ..() + icon_state = "hheart-[possible_colors[c_color_index]]" + +/datum/action/item_action/hheart + name = "Toggle Mode" + desc = "Toggle the color of the hollow heart." + +/obj/item/clothing/mask/hheart/ui_action_click(mob/user, action) + . = ..() + if(istype(action, /datum/action/item_action/hheart)) + if(!isliving(user)) + return + var/mob/living/ooser = user + var/the = possible_colors.len + var/index = 0 + if(c_color_index >= the) + index = 1 + else + index = c_color_index + 1 + c_color_index = index + update_icon() + ooser.update_inv_wear_mask() + ooser.update_action_buttons_icon() + to_chat(ooser, "You toggle the [src] to [possible_colors[c_color_index]].") diff --git a/tgstation.dme b/tgstation.dme index 72335dc0158..46d0fae8f72 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3296,7 +3296,9 @@ #include "modular_skyrat\modules\customization\modules\client\loadout\shoes.dm" #include "modular_skyrat\modules\customization\modules\client\loadout\suit.dm" #include "modular_skyrat\modules\customization\modules\client\loadout\uniform.dm" +#include "modular_skyrat\modules\customization\modules\client\loadout\donator\_donator.dm" #include "modular_skyrat\modules\customization\modules\client\loadout\donator\backpack.dm" +#include "modular_skyrat\modules\customization\modules\client\loadout\donator\personal\donator_personal.dm" #include "modular_skyrat\modules\customization\modules\clothing\clothing.dm" #include "modular_skyrat\modules\customization\modules\clothing\ears\ears.dm" #include "modular_skyrat\modules\customization\modules\clothing\hands\rings.dm" @@ -3312,6 +3314,7 @@ #include "modular_skyrat\modules\customization\modules\clothing\under\pants.dm" #include "modular_skyrat\modules\customization\modules\clothing\under\skirts_dresses.dm" #include "modular_skyrat\modules\customization\modules\clothing\under\sweaters.dm" +#include "modular_skyrat\modules\customization\modules\clothing\~donator\donator_clothing.dm" #include "modular_skyrat\modules\customization\modules\jobs\_job.dm" #include "modular_skyrat\modules\customization\modules\language\dwarf.dm" #include "modular_skyrat\modules\customization\modules\language\language_holder.dm"