mirror of
https://github.com/yogstation13/Yogstation.git
synced 2025-02-26 09:04:50 +00:00
more buster fixes (#18596)
* Update buster_style.dm * Update code/datums/martial/buster_style.dm Co-authored-by: Redd <36747151+ReddicusDragon@users.noreply.github.com> * Update code/datums/martial/buster_style.dm Co-authored-by: Redd <36747151+ReddicusDragon@users.noreply.github.com> * Update code/datums/martial/buster_style.dm Co-authored-by: Redd <36747151+ReddicusDragon@users.noreply.github.com> * FIXED LIMB REMOVAL FORREAL --------- Co-authored-by: Redd <36747151+ReddicusDragon@users.noreply.github.com>
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
COOLDOWN_DECLARE(next_mop)
|
||||
COOLDOWN_DECLARE(next_grapple)
|
||||
COOLDOWN_DECLARE(next_slam)
|
||||
var/recalibration = /mob/living/carbon/human/proc/buster_recalibration
|
||||
var/old_density //so people grappling something arent pushed by it until it's thrown
|
||||
|
||||
//proc the moves will use for damage dealing
|
||||
@@ -363,7 +364,7 @@
|
||||
/datum/martial_art/buster_style/proc/slam(mob/living/user, mob/living/target)
|
||||
var/supdam = 20
|
||||
var/crashdam = 10
|
||||
var/walldam = 30
|
||||
var/walldam = 20
|
||||
var/turf/Z = get_turf(user)
|
||||
if(!COOLDOWN_FINISHED(src, next_slam))
|
||||
to_chat(user, span_warning("You can't do that yet!"))
|
||||
@@ -385,8 +386,8 @@
|
||||
playsound(user, 'sound/effects/gravhit.ogg', 20, 1)
|
||||
if(!istype(W, /turf/closed/wall/r_wall)) // Attempt to destroy the wall
|
||||
W.dismantle_wall(1)
|
||||
target.forceMove(Q) // Move the mob behind us
|
||||
else
|
||||
grab(user, target, walldam)
|
||||
target.forceMove(Z) // If we couldn't smash the wall, put them under our tile
|
||||
return // Stop here, don't apply any more damage or checks
|
||||
for(var/obj/D in Q.contents) // If there's dense objects behind us, apply damage to the mob for each one they are slammed into
|
||||
@@ -472,23 +473,36 @@
|
||||
destroys it but uses up the attack. Attacking a living target uses up the attack and sends them flying and dismembers their limb if its damaged enough. Has a 15 second \
|
||||
cooldown."
|
||||
|
||||
combined_msg += span_warning("You can't perform any of the moves if you have an occupied hand. Additionally, if your buster arm should become disabled, so shall\
|
||||
your moves.")
|
||||
combined_msg += span_warning("You can't perform any of the moves if you have an occupied hand. Additionally, if your buster arm should become disabled, so shall your moves.")
|
||||
|
||||
combined_msg += span_warning("Should your moves cease to function altogether, utilize the 'Recalibrate Arm' function.")
|
||||
|
||||
combined_msg += span_notice("<b>After landing an attack, you become resistant to damage slowdown and all incoming damage by 50% for 2 seconds.</b>")
|
||||
|
||||
to_chat(usr, examine_block(combined_msg.Join("\n")))
|
||||
|
||||
/mob/living/carbon/human/proc/buster_recalibration()
|
||||
set name = "Recalibrate Arm"
|
||||
set desc = "You recalibrate the arm to restore missing functionality."
|
||||
set category = "Buster Style"
|
||||
var/list/combined_msg = list()
|
||||
combined_msg += "<b><i>You recalibrate your arm in an attempt to restore its functionality.</i></b>"
|
||||
to_chat(usr, examine_block(combined_msg.Join("\n")))
|
||||
|
||||
usr.click_intercept = usr.mind.martial_art
|
||||
|
||||
/datum/martial_art/buster_style/teach(mob/living/carbon/human/H, make_temporary=0)
|
||||
..()
|
||||
var/datum/species/S = H.dna?.species
|
||||
ADD_TRAIT(H, TRAIT_SHOCKIMMUNE, type)
|
||||
S.add_no_equip_slot(H, SLOT_GLOVES)
|
||||
add_verb(H, recalibration)
|
||||
usr.click_intercept = src
|
||||
|
||||
/datum/martial_art/buster_style/on_remove(mob/living/carbon/human/H)
|
||||
var/datum/species/S = H.dna?.species
|
||||
REMOVE_TRAIT(H, TRAIT_SHOCKIMMUNE, type)
|
||||
S.remove_no_equip_slot(H, SLOT_GLOVES)
|
||||
remove_verb(H, recalibration)
|
||||
usr.click_intercept = null
|
||||
..()
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
var/mob/living/carbon/N = owner
|
||||
megabuster_action.Remove(N)
|
||||
buster_style.remove(N)
|
||||
N.click_intercept = null
|
||||
to_chat(owner, "[span_boldannounce("You've lost the ability to use Buster Style...")]")
|
||||
..()
|
||||
|
||||
@@ -81,6 +82,7 @@
|
||||
var/mob/living/carbon/N = owner
|
||||
megabuster_action.Remove(N)
|
||||
buster_style.remove(N)
|
||||
N.click_intercept = null
|
||||
to_chat(owner, "[span_boldannounce("You've lost the ability to use Buster Style...")]")
|
||||
..()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user