diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index c44c3e1688..60e02feab6 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -60,7 +60,7 @@ user << "\The [H] needs at least two wrists before you can cuff them together!" return 0 - if(istype(H.gloves,/obj/item/clothing/gloves/rig) && !elastic) // Can't cuff someone who's in a deployed hardsuit. + if(istype(H.gloves,/obj/item/clothing/gloves/gauntlets/rig) && !elastic) // Can't cuff someone who's in a deployed hardsuit. user << "\The [src] won't fit around \the [H.gloves]!" return 0 @@ -76,7 +76,7 @@ user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) user.do_attack_animation(H) - + user.visible_message("\The [user] has put [cuff_type] on \the [H]!") // Apply cuffs. @@ -169,4 +169,4 @@ var/last_chew = 0 item_state = null icon = 'icons/obj/bureaucracy.dmi' breakouttime = 200 - cuff_type = "duct tape" + cuff_type = "duct tape" diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 6b2e8e6e4f..524302182e 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -212,7 +212,7 @@ siemens_coefficient = 0.75 var/wired = 0 var/obj/item/weapon/cell/cell = 0 - var/clipped = 0 + var/overgloves = 0 body_parts_covered = HANDS slot_flags = SLOT_GLOVES attack_verb = list("challenged") diff --git a/code/modules/clothing/gloves/arm_guards.dm b/code/modules/clothing/gloves/arm_guards.dm index ada10f274a..8e51754c94 100644 --- a/code/modules/clothing/gloves/arm_guards.dm +++ b/code/modules/clothing/gloves/arm_guards.dm @@ -3,6 +3,7 @@ desc = "These arm guards will protect your hands and arms." body_parts_covered = HANDS|ARMS slowdown = 1 + overgloves = 1 w_class = 3 /obj/item/clothing/gloves/arm_guard/mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0) diff --git a/code/modules/clothing/gloves/gauntlets.dm b/code/modules/clothing/gloves/gauntlets.dm new file mode 100644 index 0000000000..94956ec714 --- /dev/null +++ b/code/modules/clothing/gloves/gauntlets.dm @@ -0,0 +1,44 @@ +/* + * WORKS FOR RIGS, NOT AS A STANDALONE RIGHT NOW + * + * TODO: FIX QUICK_EQUIP SO IT DOESN'T EQUIP THESE TO YOUR BACK WHEN YOU HAVE NO GLOVES + * CHECK SLOWDOWN ON EQUIP/UNEQUIP + * ADD SPRITES FOR ANY ACTUAL GAUNTLET ITEMS, THE BASE GLOVE ITEM HAS NO SPRITE, FOR GOOD REASON + */ + +/obj/item/clothing/gloves/gauntlets //Used to cover gloves, otherwise act as gloves. + name = "gauntlets" + desc = "These gloves go over regular gloves." + overgloves = 1 + var/obj/item/clothing/gloves/gloves = null //Undergloves + var/mob/living/carbon/human/wearer = null //For glove procs + +/obj/item/clothing/gloves/gauntlets/mob_can_equip(mob/user) + var/mob/living/carbon/human/H = user + if(H.gloves) + gloves = H.gloves + if(gloves.overgloves) + user << "You are unable to wear \the [src] as \the [H.gloves] are in the way." + gloves = null + return 0 + H.drop_from_inventory(gloves) + gloves.forceMove(src) + + if(!..()) + if(gloves) + if(H.equip_to_slot_if_possible(gloves, slot_gloves)) + gloves = null + return 0 + if(gloves) + user << "You slip \the [src] on over \the [gloves]." + wearer = H + return 1 + +/obj/item/clothing/gloves/gauntlets/dropped() + var/mob/living/carbon/human/H = wearer + if(gloves) + if(!H.equip_to_slot_if_possible(gloves, slot_gloves)) + gloves.forceMove(get_turf(src)) + src.gloves = null + wearer = null + ..() \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index 4d90082708..2ea17ca87b 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -36,7 +36,7 @@ var/chest_type = /obj/item/clothing/suit/space/rig var/helm_type = /obj/item/clothing/head/helmet/space/rig var/boot_type = /obj/item/clothing/shoes/magboots/rig - var/glove_type = /obj/item/clothing/gloves/rig + var/glove_type = /obj/item/clothing/gloves/gauntlets/rig var/cell_type = /obj/item/weapon/cell/high var/air_type = /obj/item/weapon/tank/oxygen diff --git a/code/modules/clothing/spacesuits/rig/rig_pieces.dm b/code/modules/clothing/spacesuits/rig/rig_pieces.dm index 62c0f21761..2921ad5a24 100644 --- a/code/modules/clothing/spacesuits/rig/rig_pieces.dm +++ b/code/modules/clothing/spacesuits/rig/rig_pieces.dm @@ -17,7 +17,7 @@ ) species_restricted = null -/obj/item/clothing/gloves/rig +/obj/item/clothing/gloves/gauntlets/rig name = "gauntlets" item_flags = THICKMATERIAL body_parts_covered = HANDS @@ -128,7 +128,7 @@ species_restricted = null gender = PLURAL -/obj/item/clothing/gloves/lightrig +/obj/item/clothing/gloves/gauntlets/lightrig name = "gloves" flags = THICKMATERIAL body_parts_covered = HANDS diff --git a/code/modules/clothing/spacesuits/rig/suits/light.dm b/code/modules/clothing/spacesuits/rig/suits/light.dm index f33200a242..f81110013e 100644 --- a/code/modules/clothing/spacesuits/rig/suits/light.dm +++ b/code/modules/clothing/spacesuits/rig/suits/light.dm @@ -15,13 +15,13 @@ chest_type = /obj/item/clothing/suit/space/rig/light helm_type = /obj/item/clothing/head/helmet/space/rig/light boot_type = /obj/item/clothing/shoes/magboots/rig/light - glove_type = /obj/item/clothing/gloves/rig/light + glove_type = /obj/item/clothing/gloves/gauntlets/rig/light /obj/item/clothing/suit/space/rig/light name = "suit" breach_threshold = 18 //comparable to voidsuits -/obj/item/clothing/gloves/rig/light +/obj/item/clothing/gloves/gauntlets/rig/light name = "gloves" /obj/item/clothing/shoes/magboots/rig/light @@ -43,7 +43,7 @@ helm_type = /obj/item/clothing/head/lightrig/hacker chest_type = /obj/item/clothing/suit/lightrig/hacker - glove_type = /obj/item/clothing/gloves/lightrig/hacker + glove_type = /obj/item/clothing/gloves/gauntlets/lightrig/hacker boot_type = /obj/item/clothing/shoes/lightrig/hacker initial_modules = list( @@ -68,7 +68,7 @@ siemens_coefficient = 0.4 flags = NOSLIP //All the other rigs have magboots anyways, hopefully gives the hacker suit something more going for it. -/obj/item/clothing/gloves/lightrig/hacker +/obj/item/clothing/gloves/gauntlets/lightrig/hacker siemens_coefficient = 0 /obj/item/weapon/rig/light/ninja @@ -81,7 +81,7 @@ slowdown = 0 chest_type = /obj/item/clothing/suit/space/rig/light/ninja - glove_type = /obj/item/clothing/gloves/rig/light/ninja + glove_type = /obj/item/clothing/gloves/gauntlets/rig/light/ninja cell_type = /obj/item/weapon/cell/hyper req_access = list(access_syndicate) @@ -103,7 +103,7 @@ ..() -/obj/item/clothing/gloves/rig/light/ninja +/obj/item/clothing/gloves/gauntlets/rig/light/ninja name = "insulated gloves" siemens_coefficient = 0 diff --git a/polaris.dme b/polaris.dme index 558150a41d..ee7aaf5835 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1091,6 +1091,7 @@ #include "code\modules\clothing\gloves\arm_guards.dm" #include "code\modules\clothing\gloves\boxing.dm" #include "code\modules\clothing\gloves\color.dm" +#include "code\modules\clothing\gloves\gauntlets.dm" #include "code\modules\clothing\gloves\miscellaneous.dm" #include "code\modules\clothing\head\collectable.dm" #include "code\modules\clothing\head\hardhat.dm"