Merge pull request #1430 from mwerezak/living-life-fix-polaris

Human Life Fixes
This commit is contained in:
EmperorJon
2016-04-20 13:22:18 +01:00
6 changed files with 54 additions and 74 deletions

View File

@@ -43,8 +43,6 @@
silent = 0
else
updatehealth()
handle_stunned()
handle_weakened()
if(health <= 0)
death()
blinded = 1
@@ -52,7 +50,6 @@
return 1
if(paralysis && paralysis > 0)
handle_paralysed()
blinded = 1
stat = UNCONSCIOUS
if(halloss > 0)

View File

@@ -157,8 +157,6 @@
src << "\red All systems restored."
emp_damage -= 1
//Other
handle_statuses()
return 1
/mob/living/carbon/brain/handle_regular_hud_updates()

View File

@@ -868,6 +868,7 @@
return //TODO: DEFERRED
//DO NOT CALL handle_statuses() from this proc, it's called from living/Life() as long as this returns a true value.
/mob/living/carbon/human/handle_regular_status_updates()
if(!handle_some_updates())
return 0
@@ -921,19 +922,16 @@
animate_tail_reset()
adjustHalLoss(-3)
if(paralysis)
AdjustParalysis(-1)
else if(sleeping)
speech_problem_flag = 1
handle_dreams()
if (mind)
//Are they SSD? If so we'll keep them asleep but work off some of that sleep var in case of stoxin or similar.
if(client || sleeping > 3)
AdjustSleeping(-1)
if( prob(2) && health && !hal_crit )
spawn(0)
emote("snore")
if(sleeping)
speech_problem_flag = 1
handle_dreams()
if (mind)
//Are they SSD? If so we'll keep them asleep but work off some of that sleep var in case of stoxin or similar.
if(client || sleeping > 3)
AdjustSleeping(-1)
if( prob(2) && health && !hal_crit )
spawn(0)
emote("snore")
//CONSCIOUS
else
stat = CONSCIOUS
@@ -1010,9 +1008,6 @@
jitteriness = max(0, jitteriness - 3)
adjustHalLoss(-1)
//Other
handle_statuses()
if (drowsyness)
drowsyness--
eye_blurry = max(2, eye_blurry)

View File

@@ -106,14 +106,11 @@
else
if (src.paralysis || src.stunned || src.weakened || (status_flags && FAKEDEATH)) //Stunned etc.
if (src.stunned > 0)
AdjustStunned(-1)
src.stat = 0
if (src.weakened > 0)
AdjustWeakened(-1)
src.lying = 0
src.stat = 0
if (src.paralysis > 0)
AdjustParalysis(-1)
src.blinded = 0
src.lying = 0
src.stat = 0

View File

@@ -47,7 +47,7 @@
if(handle_regular_status_updates()) // Status & health update, are we dead or alive etc.
handle_disabilities() // eye, ear, brain damages
handle_status_effects() //all special effects, stunned, weakened, jitteryness, hallucination, sleeping, etc
handle_statuses() //all special effects, stunned, weakened, jitteryness, hallucination, sleeping, etc
handle_actions()
@@ -94,19 +94,55 @@
stat = CONSCIOUS
return 1
//this updates all special effects: stunned, sleeping, weakened, druggy, stuttering, etc..
/mob/living/proc/handle_status_effects()
if(paralysis)
paralysis = max(paralysis-1,0)
/mob/living/proc/handle_statuses()
handle_stunned()
handle_weakened()
handle_paralysed()
handle_stuttering()
handle_silent()
handle_drugged()
handle_slurring()
/mob/living/proc/handle_stunned()
if(stunned)
stunned = max(stunned-1,0)
AdjustStunned(-1)
if(!stunned)
update_icons()
return stunned
/mob/living/proc/handle_weakened()
if(weakened)
weakened = max(weakened-1,0)
if(!weakened)
update_icons()
return weakened
/mob/living/proc/handle_stuttering()
if(stuttering)
stuttering = max(stuttering-1, 0)
return stuttering
/mob/living/proc/handle_silent()
if(silent)
silent = max(silent-1, 0)
return silent
/mob/living/proc/handle_drugged()
if(druggy)
druggy = max(druggy-1, 0)
return druggy
/mob/living/proc/handle_slurring()
if(slurring)
slurring = max(slurring-1, 0)
return slurring
/mob/living/proc/handle_paralysed()
if(paralysis)
AdjustParalysis(-1)
if(!paralysis)
update_icons()
return paralysis
/mob/living/proc/handle_disabilities()
//Eyes

View File

@@ -914,49 +914,6 @@ mob/proc/yank_out_object()
anchored = 0
return 1
/mob/living/proc/handle_statuses()
handle_stunned()
handle_weakened()
handle_stuttering()
handle_silent()
handle_drugged()
handle_slurring()
/mob/living/proc/handle_stunned()
if(stunned)
AdjustStunned(-1)
return stunned
/mob/living/proc/handle_weakened()
if(weakened)
weakened = max(weakened-1,0) //before you get mad Rockdtben: I done this so update_canmove isn't called multiple times
return weakened
/mob/living/proc/handle_stuttering()
if(stuttering)
stuttering = max(stuttering-1, 0)
return stuttering
/mob/living/proc/handle_silent()
if(silent)
silent = max(silent-1, 0)
return silent
/mob/living/proc/handle_drugged()
if(druggy)
druggy = max(druggy-1, 0)
return druggy
/mob/living/proc/handle_slurring()
if(slurring)
slurring = max(slurring-1, 0)
return slurring
/mob/living/proc/handle_paralysed() // Currently only used by simple_animal.dm, treated as a special case in other mobs
if(paralysis)
AdjustParalysis(-1)
return paralysis
//Check for brain worms in head.
/mob/proc/has_brain_worms()