Fixes Xeno Stuns

This commit is contained in:
Fox-McCloud
2016-11-05 00:46:07 -04:00
parent fc22354185
commit c0e4b5bdc9
7 changed files with 15 additions and 37 deletions
@@ -27,7 +27,7 @@
var/heat_protection = 0.5
var/leaping = 0
ventcrawler = 2
var/list/alien_organs = list()
/mob/living/carbon/alien/New()
@@ -163,8 +163,8 @@
show_stat_emergency_shuttle_eta()
/mob/living/carbon/alien/SetStunned(amount)
..(amount)
/mob/living/carbon/alien/SetStunned(amount, updating = 1, force = 0)
..()
if(!(status_flags & CANSTUN) && amount)
// add some movement delay
move_delay_add = min(move_delay_add + round(amount / 2), 10) // a maximum delay of 10
@@ -108,7 +108,7 @@
sleep(2)//Runtime prevention (infinite bump() calls on hulks)
step_towards(src,L)
else
weakened = 2
Weaken(2, 1, 1)
toggle_leap(0)
pounce_cooldown = !pounce_cooldown
@@ -116,7 +116,7 @@
pounce_cooldown = !pounce_cooldown
else if(A.density && !A.CanPass(src))
visible_message("<span class ='danger'>[src] smashes into [A]!</span>", "<span class ='alertalien'>[src] smashes into [A]!</span>")
weakened = 2
Weaken(2, 1, 1)
if(leaping)
leaping = 0
@@ -66,8 +66,8 @@
return 1
//UNCONSCIOUS. NO-ONE IS HOME
if( (getOxyLoss() > 50) || (config.health_threshold_crit >= health) )
if( health <= 20 && prob(1) )
if((getOxyLoss() > 50) || (config.health_threshold_crit >= health))
if(health <= 20 && prob(1))
spawn(0)
emote("gasp")
if(!reagents.has_reagent("epinephrine"))
@@ -75,14 +75,12 @@
Paralyse(3)
if(paralysis)
AdjustParalysis(-1)
blinded = 1
stat = UNCONSCIOUS
else if(sleeping)
AdjustSleeping(-1)
blinded = 1
stat = UNCONSCIOUS
if( prob(10) && health )
if(prob(10) && health)
spawn(0)
emote("hiss")
//CONSCIOUS
@@ -110,17 +108,6 @@
else if(ear_damage < 25) //ear damage heals slowly under this threshold. otherwise you'll need earmuffs
AdjustEarDamage(-0.05)
//Other
if(stunned)
AdjustStunned(-1)
if(!stunned)
update_icons()
if(weakened)
weakened = max(weakened-1,0)
if(!weakened)
update_icons()
if(stuttering)
AdjustStuttering(-1)
@@ -35,11 +35,9 @@
Paralyse(3)
if(paralysis)
AdjustParalysis(-2)
blinded = 1
stat = UNCONSCIOUS
else if(sleeping)
AdjustSleeping(-1)
blinded = 1
stat = UNCONSCIOUS
if( prob(10) && health )
@@ -70,13 +68,6 @@
else if(ear_damage < 25) //ear damage heals slowly under this threshold.
AdjustEarDamage(-0.05)
//Other
if(stunned)
AdjustStunned(-1)
if(weakened)
AdjustWeakened(-1)
if(stuttering)
AdjustStuttering(-1)
+1 -1
View File
@@ -742,7 +742,7 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/unary/vent_pump,
/mob/living/carbon/resist_fire()
fire_stacks -= 5
weakened = max(weakened, 3)//We dont check for CANWEAKEN, I don't care how immune to weakening you are, if you're rolling on the ground, you're busy.
Weaken(3, 1, 1) //We dont check for CANWEAKEN, I don't care how immune to weakening you are, if you're rolling on the ground, you're busy.
update_canmove()
spin(32,2)
visible_message("<span class='danger'>[src] rolls on the floor, trying to put themselves out!</span>", \
+3 -3
View File
@@ -117,14 +117,14 @@
/mob/living/proc/handle_stunned()
if(stunned)
AdjustStunned(-1)
AdjustStunned(-1, updating = 1, force = 1)
if(!stunned)
update_icons()
return stunned
/mob/living/proc/handle_weakened()
if(weakened)
AdjustWeakened(-1)
AdjustWeakened(-1, updating = 1, force = 1)
if(!weakened)
update_icons()
return weakened
@@ -151,7 +151,7 @@
/mob/living/proc/handle_paralysed()
if(paralysis)
AdjustParalysis(-1)
AdjustParalysis(-1, updating = 1, force = 1)
return paralysis
/mob/living/proc/handle_sleeping()
+3 -3
View File
@@ -320,9 +320,9 @@
setBrainLoss(0)
setStaminaLoss(0)
SetSleeping(0)
SetParalysis(0)
SetStunned(0)
SetWeakened(0)
SetParalysis(0, 1, 1)
SetStunned(0, 1, 1)
SetWeakened(0, 1, 1)
SetSlowed(0)
SetLoseBreath(0)
SetDizzy(0)