mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 04:27:35 +01:00
Stamina damage no longer bypass some checks (#23447)
* adjusting stamina damage no longer bypass some checks * no illness changes * i surrender on this, let it be
This commit is contained in:
@@ -207,14 +207,14 @@
|
||||
|
||||
if(deviation == DEVIATION_FULL)
|
||||
target.Confused(6 SECONDS)
|
||||
target.adjustStaminaLoss(20)
|
||||
target.apply_damage(20, STAMINA)
|
||||
else if(deviation == DEVIATION_PARTIAL)
|
||||
target.KnockDown(5 SECONDS)
|
||||
target.Confused(6 SECONDS)
|
||||
target.adjustStaminaLoss(40)
|
||||
target.apply_damage(40, STAMINA)
|
||||
else
|
||||
target.Confused(10 SECONDS)
|
||||
target.adjustStaminaLoss(70)
|
||||
target.apply_damage(70, STAMINA)
|
||||
target.KnockDown(12 SECONDS)
|
||||
target.AdjustSilence(8 SECONDS)
|
||||
target.flash_eyes(1, TRUE, TRUE)
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
/obj/effect/hallucination/chaser/attacker/proc/attack(was_weakened)
|
||||
dir = get_dir(src, target)
|
||||
attack_effects()
|
||||
target.adjustStaminaLoss(damage)
|
||||
target.apply_damage(damage, STAMINA)
|
||||
if(!was_weakened && target.IsWeakened())
|
||||
on_knockdown()
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
target.visible_message("<span class='warning'>[user] strikes [target]'s abdomen, neck and back consecutively</span>", \
|
||||
"<span class='userdanger'>[user] strikes your abdomen, neck and back consecutively!</span>")
|
||||
playsound(get_turf(target), 'sound/weapons/cqchit2.ogg', 50, 1, -1)
|
||||
target.adjustStaminaLoss(70)
|
||||
target.apply_damage(70, STAMINA)
|
||||
target.apply_damage(20, BRUTE)
|
||||
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Consecutive", ATKLOG_ALL)
|
||||
return MARTIAL_COMBO_DONE
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
playsound(get_turf(user), 'sound/weapons/genhit1.ogg', 25, 1, -1)
|
||||
var/atom/throw_target = get_edge_target_turf(target, user.dir)
|
||||
target.throw_at(throw_target, 1, 8, user)
|
||||
target.adjustStaminaLoss(40)
|
||||
target.apply_damage(40, STAMINA)
|
||||
target.adjustBrainLoss(10)
|
||||
target.Silence(3 SECONDS)
|
||||
add_attack_logs(user, target, "Kicked in the head with martial-art [src] : Kick", ATKLOG_ALL)
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
var/obj/item/I = target.get_active_hand()
|
||||
if(I && target.drop_item())
|
||||
user.put_in_hands(I)
|
||||
target.adjustStaminaLoss(40)
|
||||
target.apply_damage(40, STAMINA)
|
||||
playsound(get_turf(user), 'sound/weapons/cqchit1.ogg', 5, 1, -1)
|
||||
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Pressure", ATKLOG_ALL)
|
||||
return MARTIAL_COMBO_DONE
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
switch(stam_damage)
|
||||
if(0 to 40)
|
||||
target.Immobilize(4 SECONDS)
|
||||
target.adjustStaminaLoss(35)
|
||||
target.apply_damage(35, STAMINA)
|
||||
if(41 to 80)
|
||||
target.Stun(6 SECONDS)
|
||||
if(81 to 120)
|
||||
target.adjustStaminaLoss(40)
|
||||
target.apply_damage(40, STAMINA)
|
||||
|
||||
CQC.restraining = TRUE
|
||||
addtimer(CALLBACK(CQC, TYPE_PROC_REF(/datum/martial_art/cqc, drop_restraining)), 5 SECONDS, TIMER_UNIQUE)
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"<span class='userdanger'>[user] slams your chest! You can't breathe!</span>")
|
||||
playsound(get_turf(user), 'sound/effects/hit_punch.ogg', 50, 1, -1)
|
||||
target.AdjustLoseBreath(10 SECONDS)
|
||||
target.adjustStaminaLoss(30)
|
||||
target.apply_damage(30, STAMINA)
|
||||
add_attack_logs(user, target, "Melee attacked with martial-art [src] : Lung Punch", ATKLOG_ALL)
|
||||
user.mind.martial_art.in_stance = FALSE
|
||||
return MARTIAL_COMBO_DONE_CLEAR_COMBOS
|
||||
|
||||
@@ -444,7 +444,7 @@
|
||||
H.visible_message("<span class='warning'>[pick(fluffmessages)]</span>", \
|
||||
"<span class='userdanger'>[pick(fluffmessages)]</span>")
|
||||
playsound(get_turf(user), 'sound/effects/woodhit.ogg', 75, 1, -1)
|
||||
H.adjustStaminaLoss(rand(13,20))
|
||||
H.apply_damage(rand(13,20), STAMINA)
|
||||
if(prob(10))
|
||||
H.visible_message("<span class='warning'>[H] collapses!</span>", \
|
||||
"<span class='userdanger'>Your legs give out!</span>")
|
||||
|
||||
@@ -670,7 +670,7 @@
|
||||
to_chat(target, "<span class='userdanger'>[user] shatters [src] over you!</span>")
|
||||
target.apply_damage((ishostile(target) ? 75 : 35), BRUTE, BODY_ZONE_CHEST, TRUE)
|
||||
target.KnockDown(5 SECONDS)
|
||||
target.adjustStaminaLoss(60) //Takes 4 hits to do, breaks your weapon. Perfectly fine.
|
||||
target.apply_damage(60, STAMINA) //Takes 4 hits to do, breaks your weapon. Perfectly fine.
|
||||
user.do_attack_animation(target, ATTACK_EFFECT_SMASH)
|
||||
playsound(src, 'sound/effects/glassbr3.ogg', 100, TRUE)
|
||||
if(ishuman(user))
|
||||
|
||||
@@ -124,7 +124,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
|
||||
visible_message("<span class='danger'>[C]'s glasses block the sand!</span>")
|
||||
return
|
||||
C.EyeBlurry(12 SECONDS)
|
||||
C.adjustStaminaLoss(15)//the pain from your eyes burning does stamina damage
|
||||
C.apply_damage(15, STAMINA)//the pain from your eyes burning does stamina damage
|
||||
C.AdjustConfused(10 SECONDS)
|
||||
to_chat(C, "<span class='userdanger'>[src] gets into your eyes! The pain, it burns!</span>")
|
||||
qdel(src)
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
if(ishuman(L))
|
||||
var/mob/living/carbon/human/H = L
|
||||
H.apply_effect(10 SECONDS, KNOCKDOWN, H.run_armor_check(null, MELEE))
|
||||
H.adjustStaminaLoss(40)
|
||||
H.apply_damage(40, STAMINA)
|
||||
else
|
||||
L.Weaken(10 SECONDS)
|
||||
sleep(2)//Runtime prevention (infinite bump() calls on hulks)
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
if(..()) //successful slime attack
|
||||
if(M.powerlevel > 0)
|
||||
do_sparks(5, TRUE, src)
|
||||
adjustStaminaLoss(M.powerlevel * 5) //5-50 stamina damage, at starting power level 10 this means 50, 35, 20 on consecutive hits - stamina crit in 3 hits
|
||||
apply_damage(M.powerlevel * 5, STAMINA) //5-50 stamina damage, at starting power level 10 this means 50, 35, 20 on consecutive hits - stamina crit in 3 hits
|
||||
KnockDown(M.powerlevel SECONDS)
|
||||
Stuttering(M.powerlevel SECONDS)
|
||||
visible_message("<span class='danger'>[M] has shocked [src]!</span>", "<span class='userdanger'>[M] has shocked you!</span>")
|
||||
|
||||
@@ -672,7 +672,7 @@ emp_act
|
||||
var/obj/item/organ/external/affecting = get_organ(ran_zone(M.zone_selected))
|
||||
playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1)
|
||||
apply_effect(10 SECONDS, KNOCKDOWN, run_armor_check(affecting, MELEE))
|
||||
adjustStaminaLoss(M.alien_disarm_damage)
|
||||
apply_damage(M.alien_disarm_damage, STAMINA)
|
||||
add_attack_logs(M, src, "Alien tackled")
|
||||
visible_message("<span class='danger'>[M] has tackled down [src]!</span>", "<span class='hear'>You hear aggressive shuffling!</span>")
|
||||
|
||||
@@ -722,7 +722,7 @@ emp_act
|
||||
var/dmg = rand(M.force/2, M.force)
|
||||
switch(M.damtype)
|
||||
if("brute")
|
||||
adjustStaminaLoss(dmg)
|
||||
apply_damage(dmg, STAMINA)
|
||||
if(M.force > 35) // durand and other heavy mechas
|
||||
KnockDown(6 SECONDS)
|
||||
else if(M.force > 20 && !IsKnockedDown()) // lightweight mechas like gygax
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
playsound(loc, 'sound/effects/eleczap.ogg', 50, 1, -1)
|
||||
explosion(loc, -1, 0, 2, 2)
|
||||
else
|
||||
adjustStaminaLoss(shock_damage)
|
||||
apply_damage(shock_damage, STAMINA)
|
||||
visible_message(
|
||||
"<span class='danger'>[src] was shocked by \the [source]!</span>", \
|
||||
"<span class='userdanger'>You feel a powerful shock coursing through your body!</span>", \
|
||||
|
||||
@@ -567,7 +567,7 @@
|
||||
addtimer(VARSET_CALLBACK(src, icon_state, "[lasercolor]ed209[on]"), 2)
|
||||
var/threat = C.assess_threat(src)
|
||||
C.SetStuttering(10 SECONDS)
|
||||
C.adjustStaminaLoss(60)
|
||||
C.apply_damage(60, STAMINA)
|
||||
baton_delayed = TRUE
|
||||
C.apply_status_effect(STATUS_EFFECT_DELAYED, 2.5 SECONDS, CALLBACK(C, TYPE_PROC_REF(/mob/living/, KnockDown), 10 SECONDS), COMSIG_LIVING_CLEAR_STUNS)
|
||||
addtimer(VARSET_CALLBACK(src, baton_delayed, FALSE), BATON_COOLDOWN)
|
||||
|
||||
@@ -257,7 +257,7 @@
|
||||
if(ishuman(C) && harmbaton) // Bots with harmbaton enabled become shitcurity. - Dave
|
||||
C.apply_damage(10, BRUTE)
|
||||
C.SetStuttering(10 SECONDS)
|
||||
C.adjustStaminaLoss(60)
|
||||
C.apply_damage(60, STAMINA)
|
||||
baton_delayed = TRUE
|
||||
C.apply_status_effect(STATUS_EFFECT_DELAYED, 2.5 SECONDS, CALLBACK(C, TYPE_PROC_REF(/mob/living/, KnockDown), 10 SECONDS), COMSIG_LIVING_CLEAR_STUNS)
|
||||
addtimer(VARSET_CALLBACK(src, baton_delayed, FALSE), BATON_COOLDOWN)
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
. = ..()
|
||||
if(. && ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
H.adjustStaminaLoss(8)
|
||||
H.apply_damage(8, STAMINA)
|
||||
|
||||
/mob/living/simple_animal/hostile/carp/death(gibbed)
|
||||
. = ..()
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
living_target.throw_at(get_edge_target_turf(living_target, dir), rand(1, 2), 7, src)
|
||||
return
|
||||
|
||||
living_target.adjustStaminaLoss(stamina_damage)
|
||||
living_target.apply_damage(stamina_damage, STAMINA)
|
||||
visible_message("<span class='warning'>[src] knocks [living_target] down!</span>")
|
||||
|
||||
/mob/living/simple_animal/hostile/gorilla/update_icon_state()
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
owner.adjustToxLoss(30)
|
||||
if(time >= 90 && prob(15))
|
||||
to_chat(owner, pick("<span class='danger'>Something hurts.</span>", "<span class='danger'>Someone is thinking, but it's not you.</span>", "<span class='danger'>You feel at peace.</span>", "<span class='danger'>Close your eyes.</span>"))
|
||||
owner.adjustStaminaLoss(50)
|
||||
owner.apply_damage(50, STAMINA)
|
||||
if(time >= EGG_INCUBATION_DEAD_CYCLE && owner.stat == DEAD || time >= EGG_INCUBATION_LIVING_CYCLE)
|
||||
Pop()
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
if(L.reagents.has_reagent("terror_black_toxin", 100))
|
||||
return ..()
|
||||
var/inject_target = pick("chest", "head")
|
||||
L.adjustStaminaLoss(30)
|
||||
L.apply_damage(30, STAMINA)
|
||||
L.attack_animal(src)
|
||||
if(L.can_inject(null, FALSE, inject_target, FALSE) || (HAS_TRAIT(L, TRAIT_HANDS_BLOCKED) && HAS_TRAIT(L, TRAIT_IMMOBILIZED)))
|
||||
L.reagents.add_reagent("terror_black_toxin", 30) // inject our special poison
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
/mob/living/simple_animal/hostile/poison/terror_spider/prince/spider_specialattack(mob/living/carbon/human/L)
|
||||
L.KnockDown(10 SECONDS)
|
||||
L.adjustStaminaLoss(40)
|
||||
L.apply_damage(40, STAMINA)
|
||||
return ..()
|
||||
|
||||
/mob/living/simple_animal/hostile/poison/terror_spider/prince/Initialize(mapload)
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
var/inject_target = pick("chest","head")
|
||||
L.attack_animal(src)
|
||||
L.KnockDown(10 SECONDS)
|
||||
L.adjustStaminaLoss(30)
|
||||
L.apply_damage(30, STAMINA)
|
||||
if(L.can_inject(null, FALSE, inject_target, FALSE) || (HAS_TRAIT(L, TRAIT_HANDS_BLOCKED) && HAS_TRAIT(L, TRAIT_IMMOBILIZED)))
|
||||
if(!IsTSInfected(L) && ishuman(L))
|
||||
visible_message("<span class='danger'>[src] buries its long fangs deep into the [inject_target] of [L]!</span>")
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
var/mob/living/carbon/human/M = target
|
||||
if(istype(M.wear_suit))
|
||||
if(M.wear_suit.type in suit_types)
|
||||
M.adjustStaminaLoss(34)
|
||||
M.apply_damage(34, STAMINA)
|
||||
return 1
|
||||
|
||||
/obj/item/projectile/beam/lasertag/omni
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
if(method == REAGENT_TOUCH)
|
||||
volume = ..()
|
||||
M.apply_damage(0.6*volume, BRUTE)
|
||||
M.adjustStaminaLoss(volume)
|
||||
M.apply_damage(volume, STAMINA)
|
||||
if(iscarbon(M))
|
||||
M.emote("scream")
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
if(method == REAGENT_TOUCH)
|
||||
volume = ..()
|
||||
M.apply_damage(0.4*volume, BURN)
|
||||
M.adjustStaminaLoss(volume)
|
||||
M.apply_damage(volume, STAMINA)
|
||||
if(M.reagents)
|
||||
M.reagents.add_reagent("frostoil", 0.4*volume)
|
||||
|
||||
|
||||
@@ -23,9 +23,9 @@
|
||||
return
|
||||
switch(severity)
|
||||
if(1)
|
||||
owner?.adjustStaminaLoss(20)
|
||||
owner?.apply_damage(20, STAMINA)
|
||||
if(2)
|
||||
owner?.adjustStaminaLoss(10)
|
||||
owner?.apply_damage(10, STAMINA)
|
||||
to_chat(owner, "<span class='userdanger'>Your [name] malfunctions, causing fatigue!</span>")
|
||||
|
||||
/obj/item/organ/external/groin
|
||||
|
||||
Reference in New Issue
Block a user