Files
CHOMPStation2/code/datums/observation/stat_set.dm
2020-03-23 22:47:44 -04:00

25 lines
680 B
Plaintext

// Observer Pattern Implementation: Stat Set
// Registration type: /mob/living
//
// Raised when: A /mob/living changes stat, using the set_stat() proc
//
// Arguments that the called proc should expect:
// /mob/living/stat_mob: The mob whose stat changed
// /old_stat: Status before the change.
// /new_stat: Status after the change.
GLOBAL_DATUM_INIT(stat_set_event, /decl/observ/stat_set, new)
/decl/observ/stat_set
name = "Stat Set"
expected_type = /mob/living
/****************
* Stat Handling *
****************/
/mob/living/set_stat(var/new_stat)
var/old_stat = stat
. = ..()
if(stat != old_stat)
GLOB.stat_set_event.raise_event(src, old_stat, new_stat)