Merge pull request #14319 from silicons/async_2
enforces SHOULD_NOT_SLEEP on Life(), fixes some more process() sleeps that might be causing controller lockups
This commit is contained in:
@@ -47,5 +47,5 @@ SUBSYSTEM_DEF(processing)
|
||||
* If you override this do not call parent, as it will return PROCESS_KILL. This is done to prevent objects that dont override process() from staying in the processing list
|
||||
*/
|
||||
/datum/proc/process(delta_time)
|
||||
set waitfor = FALSE
|
||||
// SHOULD_NOT_SLEEP(TRUE)
|
||||
return PROCESS_KILL
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* Splits off into PhysicalLife() and BiologicalLife(). Override those instead of this.
|
||||
*/
|
||||
/mob/living/proc/Life(seconds, times_fired)
|
||||
//SHOULD_NOT_SLEEP(TRUE)
|
||||
SHOULD_NOT_SLEEP(TRUE)
|
||||
if(mob_transforming)
|
||||
return
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
break
|
||||
var/msg = "[key_name_admin(src)] [ADMIN_JMP(src)] was found to have no .loc with an attached client, if the cause is unknown it would be wise to ask how this was accomplished."
|
||||
message_admins(msg)
|
||||
send2tgs_adminless_only("Mob", msg, R_ADMIN)
|
||||
INVOKE_ASYNC(GLOBAL_PROC, .proc/send2tgs_adminless_only, "Mob", msg, R_ADMIN)
|
||||
log_game("[key_name(src)] was found to have no .loc with an attached client.")
|
||||
|
||||
// This is a temporary error tracker to make sure we've caught everything
|
||||
|
||||
@@ -425,7 +425,9 @@
|
||||
/mob/living/simple_animal/pet/dog/corgi/Ian/BiologicalLife()
|
||||
if(!(. = ..()))
|
||||
return
|
||||
INVOKE_ASYNC(src, .proc/corgi_ai_behavior)
|
||||
|
||||
/mob/living/simple_animal/pet/dog/corgi/Ian/proc/corgi_ai_behavior()
|
||||
//Feeding, chasing food, FOOOOODDDD
|
||||
if(!stat && CHECK_MULTIPLE_BITFIELDS(mobility_flags, MOBILITY_STAND|MOBILITY_MOVE) && !buckled)
|
||||
turns_since_scan++
|
||||
|
||||
@@ -516,7 +516,7 @@
|
||||
trajectory = new(starting.x, starting.y, starting.z, pixel_x, pixel_y, Angle, pixel_increment_amount)
|
||||
fired = TRUE
|
||||
if(hitscan)
|
||||
process_hitscan()
|
||||
INVOKE_ASYNC(src, .proc/process_hitscan)
|
||||
return
|
||||
if(!(datum_flags & DF_ISPROCESSING))
|
||||
START_PROCESSING(SSprojectiles, src)
|
||||
|
||||
Reference in New Issue
Block a user