>one fucking callback

This commit is contained in:
Hatterhat
2020-08-30 21:21:27 -05:00
parent 3b571e2edf
commit 0db189333a
3 changed files with 67 additions and 46 deletions
@@ -465,7 +465,7 @@
if(--remaining_uses < 1)
if(ishuman(loc))
var/mob/living/carbon/human/H = loc
H.visible_message("<span class='warning'>With a sickening crunch, [H] reforms [H.p_their()] shield into an arm!</span>", "<span class='notice'>We assimilate our shield into our body</span>", "<span class='italics>You hear organic matter ripping and tearing!</span>")
H.visible_message("<span class='warning'>With a sickening crunch, [H] reforms [H.p_their()] shield into an arm!</span>", "<span class='notice'>We assimilate our shield into our body.</span>", "<span class='italics>You hear organic matter ripping and tearing!</span>")
qdel(src)
/***************************************\
@@ -606,10 +606,10 @@
return 1
var/mob/living/carbon/human/H = user
if(istype(H.gloves, glove_type))
H.visible_message("<span class='warning'>[H] casts off [H.p_their()] [glove_name_simple]!</span>", "<span class='warning'>We cast off our [glove_name_simple].</span>", "<span class='italics'>You hear organic matter ripping and tearing!</span>")
H.visible_message("<span class='warning'>With a sickening crunch, [H] reforms [H.p_their()] [glove_name_simple] into hands!</span>", "<span class='warning'>We assimilate our [glove_name_simple].</span>", "<span class='italics'>You hear organic matter ripping and tearing!</span>")
H.temporarilyRemoveItemFromInventory(H.gloves, TRUE) //The qdel on dropped() takes care of it
H.update_inv_gloves()
playsound(H.loc, 'sound/effects/blobattack.ogg', 30, 1)
if(blood_on_castoff)
H.add_splatter_floor()
playsound(H.loc, 'sound/effects/splat.ogg', 50, 1) //So real sounds
@@ -632,7 +632,7 @@
user.dropItemToGround(user.gloves)
user.equip_to_slot_if_possible(new glove_type(user), SLOT_GLOVES, 1, 1, 1)
playsound(user, 'sound/effects/blobattack.ogg', 30, 1)
var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling)
changeling.chem_recharge_slowdown += recharge_slowdown
return TRUE
@@ -670,10 +670,10 @@
action_icon_state = "ling_gauntlets"
action_background_icon_state = "bg_ling"
glove_type = /obj/item/clothing/gloves/fingerless/pugilist/bone // just punch his head off dude
glove_type = /obj/item/clothing/gloves/fingerless/pugilist/cling // just punch his head off dude
glove_name_simple = "bone gauntlets"
/obj/item/clothing/gloves/fingerless/pugilist/bone
/obj/item/clothing/gloves/fingerless/pugilist/cling // switches between lesser GotNS and Big Punchy Rib Breaky Hands
name = "hewn bone gauntlets"
icon_state = "ling_gauntlets"
item_state = "ling_gauntlets"
@@ -684,50 +684,50 @@
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
armor = list("melee" = 20, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 35, "bio" = 35, "rad" = 35, "fire" = 0, "acid" = 0)
enhancement = 15 // first, do harm. all of it. all of the harm. just fuck em up.
var/wound_enhancement = 20
enhancement = 9 // first, do harm. all of it. all of the harm. just fuck em up.
wound_enhancement = 9
var/fast_enhancement = 9
var/fast_wound_enhancement = 9
var/slow_enhancement = 20
var/slow_wound_enhancement = 20
silent = TRUE
inherited_trait = TRAIT_CHUNKYFINGERS // dummy thicc bone hands
secondary_trait = TRAIT_STRONG_GRABBER // grab them and then punch their head off
var/tertiary_trait = TRAIT_MAULER // stamina damage? no thanks, bro
secondary_trait = TRAIT_MAULER // its only violence from here, bucko
var/fasthands = TRUE
/obj/item/clothing/gloves/fingerless/pugilist/bone/examine(mob/user)
/obj/item/clothing/gloves/fingerless/pugilist/cling/examine(mob/user)
. = ..()
. += "[src] are attacking with [fasthands ? "fast, precise strikes" : "crippling, damaging blows"]."
. += "[src] are formed to allow for [fasthands ? "fast, precise strikes" : "crippling, damaging blows"]."
. += "Alt-click them to change between rapid strikes and strong blows."
/obj/item/clothing/gloves/fingerless/pugilist/bone/AltClick(mob/user)
/obj/item/clothing/gloves/fingerless/pugilist/cling/AltClick(mob/user)
. = ..()
use_buffs(user, FALSE) // reset
fasthands = !fasthands
if(fasthands)
enhancement = initial(enhancement)
wound_enhancement = initial(enhancement)
enhancement = fast_enhancement
wound_enhancement = fast_wound_enhancement
else
enhancement = initial(enhancement) * 2 // punch the head off a man
wound_enhancement = initial(enhancement) * 2 // do it do it do it do it
to_chat(user, "<span class='notice'>With [src], you are now attacking with [fasthands ? "fast, precise strikes" : "crippling, damaging blows"].</span>")
enhancement = slow_enhancement // fuck em up kiddo
wound_enhancement = slow_wound_enhancement // really. fuck em up.
to_chat(user, "<span class='notice'>[src] are now formed to allow for [fasthands ? "fast, precise strikes" : "crippling, damaging blows"].</span>")
addtimer(CALLBACK(use_buffs(user, TRUE)), 0.1) // go fuckin get em
/obj/item/clothing/gloves/fingerless/pugilist/bone/Initialize()
/obj/item/clothing/gloves/fingerless/pugilist/cling/Initialize()
. = ..()
ADD_TRAIT(src, TRAIT_NODROP, CHANGELING_TRAIT)
/obj/item/clothing/gloves/fingerless/pugilist/bone/equipped(mob/user, slot)
/obj/item/clothing/gloves/fingerless/pugilist/cling/equipped(mob/user, slot)
. = ..()
if(slot == SLOT_GLOVES)
if(ishuman(user))
var/mob/living/carbon/human/H = user
ADD_TRAIT(H, tertiary_trait, GLOVE_TRAIT)
H.dna.species.punchwoundbonus += wound_enhancement
if(current_equipped_slot == SLOT_GLOVES)
to_chat(user, "<span class='notice'>With [src] formed around our arms, we are ready to fight.</span>")
/obj/item/clothing/gloves/fingerless/pugilist/bone/dropped(mob/user)
/obj/item/clothing/gloves/fingerless/pugilist/cling/dropped(mob/user)
. = ..()
REMOVE_TRAIT(user, tertiary_trait, GLOVE_TRAIT)
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.dna.species.punchwoundbonus -= wound_enhancement
return ..()
if(wornonce)
to_chat(user, "<span class='warning'>With [src] assimilated, we feel less ready to punch things.</span>")
/obj/item/clothing/gloves/fingerless/pugilist/bone/Touch(atom/target, proximity = TRUE)
/obj/item/clothing/gloves/fingerless/pugilist/cling/Touch(atom/target, proximity = TRUE)
if(!isliving(target))
return
var/mob/living/M = loc