[MIRROR] Fixes smoothing breaking if a map is loaded post init (#26553)

* Fixes smoothing breaking if a map is loaded post init (#81526)

## About The Pull Request

We'd finish a set of atom creation, then try and smooth those atoms The
problem is they might try and smooth with an uninitialized neighbor,
which wouldn't have its smoothing vars parsed.

This fixes that by pooling "to be smoothed" things into a list based off
the source of the init stoppage, which we then release when we're done.

Also fixes things staying in mapload, even during a sleep. This can
cause massive headaches so it's good to avoid.

This has a cost but it's minuscule (on the order of like 0.006s (6ms
over all of init), so I'm happy with it.

## Why It's Good For The Game

Closes #77040

## Changelog
🆑
fix: Maps loaded in after roundstart will no longer have broken
smoothing
/🆑

* Fixes smoothing breaking if a map is loaded post init

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
This commit is contained in:
SkyratBot
2024-02-19 01:23:33 +01:00
committed by GitHub
co-authored by LemonInTheDark
parent 3f3ad0e46d
commit f1928357e3
4 changed files with 43 additions and 13 deletions
+1 -1
View File
@@ -214,7 +214,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
//Sanitize
lastchangelog = sanitize_text(lastchangelog, initial(lastchangelog))
default_slot = sanitize_integer(default_slot, 1, max_save_slots, initial(default_slot))
toggles = sanitize_integer(toggles, 0, (2**24)-1, initial(toggles))
toggles = sanitize_integer(toggles, 0, SHORT_REAL_LIMIT-1, initial(toggles))
be_special = sanitize_be_special(SANITIZE_LIST(be_special))
key_bindings = sanitize_keybindings(key_bindings)
favorite_outfits = SANITIZE_LIST(favorite_outfits)