Files
Paradise/code/modules/mob/update_status.dm
Crazylemon64 3db4229918 First big chunk of the refactor
mid-refactor of `take_overall_damage`

Fully refactors the (?:take|heal)_(?:overall|organ)_damage procs

Allows the dead to examine

Removes the `blinded` var

Refactor cyborg components so vision loss is instant

Robot life/death updates instantly

Adds instant updates for damage overlays and HUD icons for humans

Final reconciliation with the species refactor

Adds a stat debugging system and debugging logs

Also fixes instant death on species change

"Debugging logs" are used for stuff an admin wouldn't care about but
someone debugging would

I used it to fix people dying instantly when changing species due to
temporary deletion of the brain

Fox's requests

Adds a more careful updating system to our reagents system
2018-10-07 17:52:04 -07:00

66 lines
1.7 KiB
Plaintext

// These are procs that cause immediate updates to features of the mob - prefixed with `update_`
// Procs that have a stacking effect depending on how many times they are called
// do not belong in this file - those go in `life.dm` instead, with the prefix `handle_`
// OVERLAY/SIGHT PROCS
// These return 0 if they are not applying an overlay, and 1 if they are
// Call this to immediately apply blindness effects, instead of
// waiting for the next `Life` tick
/mob/proc/update_blind_effects()
// No handling for this on the mob level
return 0
/mob/proc/update_blurry_effects()
// No handling for this on the mob level
return 0
/mob/proc/update_druggy_effects()
// No handling for this on the mob level
return 0
/mob/proc/update_nearsighted_effects()
// No handling for this on the mob level
return 0
/mob/proc/update_sleeping_effects()
// No handling for this on the mob level
return 0
/mob/proc/update_tint_effects()
// No handling for this on the mob level
return 0
// Procs that give information about the status of the mob
/mob/proc/can_hear()
return 1
/mob/proc/has_vision(information_only = FALSE)
return 1
/mob/proc/can_speak()
return 1
/mob/proc/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, ignore_lying = FALSE)
return FALSE
/mob/proc/restrained(ignore_grab)
// All are created free
return 0
// Procs that update other things about the mob
// Does various animations - Jitter, Flying, Spinning
/mob/proc/update_animations()
if(flying)
animate(src, pixel_y = pixel_y + 5 , time = 10, loop = 1, easing = SINE_EASING)
animate(pixel_y = pixel_y - 5, time = 10, loop = 1, easing = SINE_EASING)
/mob/proc/update_stat()
return
/mob/proc/update_canmove()
return 1