diff --git a/code/modules/client/preference/loadout/loadout_shoes.dm b/code/modules/client/preference/loadout/loadout_shoes.dm new file mode 100644 index 00000000000..97e64e74f83 --- /dev/null +++ b/code/modules/client/preference/loadout/loadout_shoes.dm @@ -0,0 +1,8 @@ +/datum/gear/shoes + subtype_path = /datum/gear/shoes + slot = slot_shoes + sort_category = "Shoes" + +/datum/gear/shoes/sandals + display_name = "sandals" + path = /obj/item/clothing/shoes/sandal \ No newline at end of file diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 22fa3e2376c..afc11b0acf8 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -179,34 +179,14 @@ BLIND // can't see anything attack_verb = list("challenged") var/transfer_prints = FALSE var/pickpocket = 0 //Master pickpocket? - var/clipped = 0 strip_delay = 20 put_on_delay = 40 - species_restricted = list("exclude","Unathi","Tajaran","Wryn") species_fit = list("Vox") sprite_sheets = list( "Vox" = 'icons/mob/species/vox/gloves.dmi', "Drask" = 'icons/mob/species/drask/gloves.dmi' ) -/obj/item/clothing/gloves/attackby(obj/item/weapon/W, mob/user, params) - if(istype(W, /obj/item/weapon/wirecutters)) - if(!clipped) - playsound(src.loc, 'sound/items/Wirecutter.ogg', 100, 1) - user.visible_message("[user] snips the fingertips off [src].","You snip the fingertips off [src].") - clipped = 1 - name = "mangled [name]" - desc = "[desc] They have had the fingertips cut off of them." - if("exclude" in species_restricted) - species_restricted -= "Unathi" - species_restricted -= "Tajaran" - update_icon() - else - to_chat(user, "[src] have already been clipped!") - return - else - ..() - /obj/item/clothing/gloves/proc/Touch() return @@ -370,7 +350,6 @@ BLIND // can't see anything permeability_coefficient = 0.50 slowdown = SHOES_SLOWDOWN - species_restricted = list("exclude","Unathi","Tajaran","Wryn") species_fit = list("Vox") sprite_sheets = list( "Vox" = 'icons/mob/species/vox/shoes.dmi' @@ -403,9 +382,6 @@ BLIND // can't see anything item_state = "[item_state]_opentoe" name = "mangled [name]" desc = "[desc] They have had their toes opened up." - if("exclude" in species_restricted) - species_restricted -= "Unathi" - species_restricted -= "Tajaran" update_icon() else to_chat(user, "[src] have already had their toes cut open!") diff --git a/code/modules/clothing/gloves/boxing.dm b/code/modules/clothing/gloves/boxing.dm index fd54295c477..77a4076347d 100644 --- a/code/modules/clothing/gloves/boxing.dm +++ b/code/modules/clothing/gloves/boxing.dm @@ -4,7 +4,6 @@ icon_state = "boxing" item_state = "boxing" put_on_delay = 60 - species_restricted = null /obj/item/clothing/gloves/boxing/green icon_state = "boxinggreen" diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index a50e56382a1..76bfbdfd394 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -59,16 +59,28 @@ min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT + var/can_be_cut = 1 - hos - item_color = "hosred" //Exists for washing machines. Is not different from black gloves in any way. +/obj/item/clothing/gloves/color/black/hos + item_color = "hosred" //Exists for washing machines. Is not different from black gloves in any way. - ce - item_color = "chief" //Exists for washing machines. Is not different from black gloves in any way. +/obj/item/clothing/gloves/color/black/ce + item_color = "chief" //Exists for washing machines. Is not different from black gloves in any way. - thief - pickpocket = 1 +/obj/item/clothing/gloves/color/black/thief + pickpocket = 1 + +/obj/item/clothing/gloves/color/black/attackby(obj/item/weapon/W as obj, mob/user as mob, params) + if(istype(W, /obj/item/weapon/wirecutters)) + if(can_be_cut && icon_state == initial(icon_state))//only if not dyed + to_chat(user, "You snip the fingertips off of [src].") + playsound(user.loc,'sound/items/Wirecutter.ogg', rand(10,50), 1) + var/obj/item/clothing/gloves/fingerless/F = new/obj/item/clothing/gloves/fingerless(user.loc) + if(pickpocket) + F.pickpocket = 1 + qdel(src) + ..() /obj/item/clothing/gloves/color/orange name = "orange gloves" diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm index d98ee1d0154..feae32b9085 100644 --- a/code/modules/clothing/gloves/miscellaneous.dm +++ b/code/modules/clothing/gloves/miscellaneous.dm @@ -7,10 +7,8 @@ transfer_prints = TRUE cold_protection = HANDS min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT - species_restricted = null strip_delay = 40 put_on_delay = 20 - clipped = 1 /obj/item/clothing/gloves/cyborg desc = "beep boop borp" diff --git a/code/modules/clothing/gloves/rings.dm b/code/modules/clothing/gloves/rings.dm index 4a0af4392fa..590efa7cd91 100644 --- a/code/modules/clothing/gloves/rings.dm +++ b/code/modules/clothing/gloves/rings.dm @@ -8,22 +8,22 @@ icon = 'icons/obj/clothing/rings.dmi' var/material = "iron" var/stud = 0 - species_restricted = null - - New() - ..() - update_icon() +/obj/item/clothing/gloves/ring/New() + ..() update_icon() - if(stud) - icon_state = "d_[initial(icon_state)]" - else - icon_state = initial(icon_state) - examine(mob/user) - ..(user) - to_chat(user, "This one is made of [material].") - if(stud) - to_chat(user, "It is adorned with a single gem.") + +/obj/item/clothing/gloves/ring/update_icon() + if(stud) + icon_state = "d_[initial(icon_state)]" + else + icon_state = initial(icon_state) + +/obj/item/clothing/gloves/ring/examine(mob/user) + ..(user) + to_chat(user, "This one is made of [material].") + if(stud) + to_chat(user, "It is adorned with a single gem.") /obj/item/clothing/gloves/ring/attackby(obj/item/I as obj, mob/user as mob, params) if(istype(I, /obj/item/stack/sheet/mineral/diamond)) @@ -69,10 +69,11 @@ icon_state = "redring" /obj/item/clothing/gloves/ring/plastic/random - New() - var/c = pick("white","blue","red") - name = "[c] plastic ring" - icon_state = "[c]ring" + +/obj/item/clothing/gloves/ring/plastic/random/New() + var/c = pick("white","blue","red") + name = "[c] plastic ring" + icon_state = "[c]ring" // weird /obj/item/clothing/gloves/ring/glass diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 0f37d2133aa..2c6bdeddf87 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -8,7 +8,6 @@ actions_types = list(/datum/action/item_action/toggle) strip_delay = 70 put_on_delay = 70 - species_restricted = null /obj/item/clothing/shoes/magboots/attack_self(mob/user) if(magpulse) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 3eb380d703f..229daee5c93 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -7,7 +7,6 @@ flags = NOSLIP origin_tech = "syndicate=3" var/list/clothing_choices = list() - species_restricted = null silence_steps = 1 /obj/item/clothing/shoes/mime @@ -22,7 +21,6 @@ icon_state = "jackboots" item_state = "jackboots" armor = list(melee = 25, bullet = 25, laser = 25, energy = 25, bomb = 50, bio = 10, rad = 0) - species_restricted = null //Syndicate tech means even Tajarans can kick ass with these strip_delay = 70 /obj/item/clothing/shoes/combat/swat //overpowered boots for death squads @@ -38,7 +36,6 @@ icon_state = "wizard" strip_delay = 50 put_on_delay = 50 - species_restricted = null /obj/item/clothing/shoes/sandal/marisa desc = "A pair of magic, black shoes." @@ -54,7 +51,6 @@ slowdown = SHOES_SLOWDOWN+1 strip_delay = 50 put_on_delay = 50 - species_restricted = null /obj/item/clothing/shoes/galoshes/dry name = "absorbent galoshes" @@ -74,7 +70,6 @@ slowdown = SHOES_SLOWDOWN+1 item_color = "clown" var/footstep = 1 //used for squeeks whilst walking - species_restricted = null silence_steps = 1 shoe_sound = "clownstep" @@ -97,7 +92,6 @@ can_cut_open = 0 icon_state = "jacksandal" item_color = "jacksandal" - species_restricted = null /obj/item/clothing/shoes/workboots name = "work boots" @@ -116,7 +110,6 @@ min_cold_protection_temperature = SHOES_MIN_TEMP_PROTECT heat_protection = FEET max_heat_protection_temperature = SHOES_MAX_TEMP_PROTECT - species_restricted = null /obj/item/clothing/shoes/cyborg name = "cyborg boots" @@ -128,7 +121,6 @@ desc = "Fluffy!" icon_state = "slippers" item_state = "slippers" - species_restricted = null /obj/item/clothing/shoes/slippers_worn name = "worn bunny slippers" @@ -149,7 +141,6 @@ item_state = "roman" strip_delay = 100 put_on_delay = 100 - species_restricted = null /obj/item/clothing/shoes/centcom name = "dress shoes" @@ -198,14 +189,12 @@ desc = "Medical sandals that nerds wear." icon_state = "medsandal" item_color = "medsandal" - species_restricted = null /obj/item/clothing/shoes/sandal/fancy name = "Fancy Sandals" desc = "FANCY!!." icon_state = "fancysandal" item_color = "fancysandal" - species_restricted = null /obj/item/clothing/shoes/cursedclown name = "cursed clown shoes" diff --git a/code/modules/mob/living/carbon/human/species/station.dm b/code/modules/mob/living/carbon/human/species/station.dm index 0c0b952fc2f..6268652f828 100644 --- a/code/modules/mob/living/carbon/human/species/station.dm +++ b/code/modules/mob/living/carbon/human/species/station.dm @@ -81,11 +81,6 @@ /datum/species/unathi/handle_death(var/mob/living/carbon/human/H) H.stop_tail_wagging(1) -/datum/species/unathi/equip(var/mob/living/carbon/human/H) - if(H.mind.assigned_role != "Clown") - H.unEquip(H.shoes) - H.equip_or_collect(new /obj/item/clothing/shoes/sandal(H), slot_shoes) - /datum/species/tajaran name = "Tajaran" name_plural = "Tajaran" @@ -148,11 +143,6 @@ /datum/species/tajaran/handle_death(var/mob/living/carbon/human/H) H.stop_tail_wagging(1) -/datum/species/tajaran/equip(var/mob/living/carbon/human/H) - if(H.mind.assigned_role != "Clown") - H.unEquip(H.shoes) - H.equip_or_collect(new /obj/item/clothing/shoes/sandal(H), slot_shoes) - /datum/species/vulpkanin name = "Vulpkanin" name_plural = "Vulpkanin" diff --git a/paradise.dme b/paradise.dme index 482bfa9f419..f7b71ee7958 100644 --- a/paradise.dme +++ b/paradise.dme @@ -1130,8 +1130,10 @@ #include "code\modules\client\preference\loadout\gear_tweaks.dm" #include "code\modules\client\preference\loadout\loadout.dm" #include "code\modules\client\preference\loadout\loadout_accessories.dm" +#include "code\modules\client\preference\loadout\loadout_cosmetics.dm" #include "code\modules\client\preference\loadout\loadout_general.dm" #include "code\modules\client\preference\loadout\loadout_hat.dm" +#include "code\modules\client\preference\loadout\loadout_shoes.dm" #include "code\modules\client\preference\loadout\loadout_suit.dm" #include "code\modules\client\preference\loadout\loadout_uniform.dm" #include "code\modules\clothing\clothing.dm"