Files
GS13NG/code/modules/clothing/gloves/miscellaneous.dm
Chayse Ramsay 97c3b2eda7 Prevents runtime spam from Hugs of the North Star
Also fixes an unintended oversight of the Gloves of the North Star, with them causing the warcry upon picking up any item or clicking on any item in harm intent.
2019-08-14 18:29:35 +01:00

107 lines
3.9 KiB
Plaintext

/obj/item/clothing/gloves/fingerless
name = "fingerless gloves"
desc = "Plain black gloves without fingertips for the hard working."
icon_state = "fingerless"
item_state = "fingerless"
item_color = null //So they don't wash.
transfer_prints = TRUE
strip_delay = 40
equip_delay_other = 20
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
/obj/item/clothing/gloves/botanic_leather
name = "botanist's leather gloves"
desc = "These leather gloves protect against thorns, barbs, prickles, spikes and other harmful objects of floral origin. They're also quite warm."
icon_state = "leather"
item_state = "ggloves"
permeability_coefficient = 0.9
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 30)
/obj/item/clothing/gloves/combat
name = "combat gloves"
desc = "These tactical gloves are fireproof and shock resistant."
icon_state = "combat"
item_state = "blackgloves"
siemens_coefficient = 0
permeability_coefficient = 0.05
strip_delay = 80
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
heat_protection = HANDS
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50)
/obj/item/clothing/gloves/bracer
name = "bone bracers"
desc = "For when you're expecting to get slapped on the wrist. Offers modest protection to your arms."
icon_state = "bracers"
item_state = "bracers"
item_color = null //So they don't wash.
transfer_prints = TRUE
strip_delay = 40
equip_delay_other = 20
body_parts_covered = ARMS
cold_protection = ARMS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
armor = list("melee" = 15, "bullet" = 35, "laser" = 35, "energy" = 20, "bomb" = 35, "bio" = 35, "rad" = 35, "fire" = 0, "acid" = 0)
/obj/item/clothing/gloves/rapid
name = "Gloves of the North Star"
desc = "Just looking at these fills you with an urge to beat the shit out of people."
icon_state = "rapid"
item_state = "rapid"
transfer_prints = TRUE
var/warcry = "AT"
/obj/item/clothing/gloves/rapid/Touch(mob/living/target,proximity = TRUE)
if(!istype(target))
return
var/mob/living/M = loc
if(M.a_intent == INTENT_HARM)
M.changeNext_move(CLICK_CD_RAPID)
M.adjustStaminaLoss(-2) //Restore 2/3 of the stamina used assuming empty stam buffer. With proper stamina buffer management, this results in a net gain of +.5 stamina per click.
if(warcry)
M.say("[warcry]", ignore_spam = TRUE, forced = "north star warcry")
.= FALSE
/obj/item/clothing/gloves/rapid/attack_self(mob/user)
var/input = stripped_input(user,"What do you want your battlecry to be? Max length of 6 characters.", ,"", 7)
if(input)
warcry = input
/obj/item/clothing/gloves/rapid/hug
name = "Hugs of the North Star"
desc = "Just looking at these fills you with an urge to hug the shit out of people"
warcry = "owo" //Shouldn't ever come into play
/obj/item/clothing/gloves/rapid/hug/Touch(mob/living/target,proximity = TRUE)
if(!istype(target))
return
var/mob/living/M = loc
if(M.a_intent == INTENT_HELP)
if(target.health >= 0 && !HAS_TRAIT(target, TRAIT_FAKEDEATH)) //Can't hug people who are dying/dead
if(target.on_fire || target.lying ) //No spamming extinguishing, helping them up, or other non-hugging/patting help interactions
return
else
M.changeNext_move(CLICK_CD_RAPID)
. = FALSE
/obj/item/clothing/gloves/rapid/hug/attack_self(mob/user)
return FALSE