Minor Gravity Fixes (#74285)

## About The Pull Request

Fixes forced gravity not updating a mob (trait was added too early,
before hook signals are registered)
Fixes spawning a mob in space not causing floats (default grav was 0, so
== null was wrong)
Runs shake_everyone() (Our gravity gen reaction hook) AFTER gravity
changes, ensuring mobs hook into it

## Why It's Good For The Game

Closes #74271 
Closes #74272 (Caused by being in nograv but not floating)
Closes #74274 
## Changelog
🆑
fix: Fixes a bunch of minor gravity bugs, report em if you see more
yeah?
/🆑
This commit is contained in:
LemonInTheDark
2023-03-27 16:06:40 -06:00
committed by GitHub
parent 4aca93c7c2
commit 6ee43f9fb1
3 changed files with 12 additions and 12 deletions
+2 -1
View File
@@ -13,12 +13,13 @@
src.gravity = gravity
src.ignore_turf_gravity = ignore_turf_gravity
ADD_TRAIT(target, TRAIT_FORCED_GRAVITY, REF(src))
RegisterSignal(target, COMSIG_ATOM_HAS_GRAVITY, PROC_REF(gravity_check))
if(isturf(target))
RegisterSignal(target, COMSIG_TURF_HAS_GRAVITY, PROC_REF(turf_gravity_check))
ADD_TRAIT(target, TRAIT_FORCED_GRAVITY, REF(src))
/datum/element/forced_gravity/Detach(datum/source)
. = ..()
var/static/list/signals_b_gone = list(COMSIG_ATOM_HAS_GRAVITY, COMSIG_TURF_HAS_GRAVITY)