* Fixes a closet harddel
PopulateContents is called in init which means that the closet is being
qdelled but it's contents are not being properly removed when the
prob(1) is called and it returns the qdel hint. This returns the qdel
hint BEFORE parents init is called to stop this from happening
* okay im just stupid
* moves it
* Update code/modules/unit_tests/closets.dm
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
* Update code/modules/unit_tests/closets.dm
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
About The Pull Request
Closets now initialize their contents once in dump_contents(). This saves more than 1.6 seconds of init time (all /obj/structure/closet now initialize in 84ms).
Not sure what assumptions this will break, there's a lot of closets, so separate PR.
cl
del: You can no longer see maint spawners before the round starts (but your rounds start faster now :) )
/cl
Ok, I'm fixing a few issues with certain crates, namely the abandoned one and the burial mound:
An oversight with the skittish trait letting players dive into burial mounds, which are technically a subtype of crates.
A runtime that made abandoned crates not update their lock lights when unlocked (the togglelock call was missing the user arg). This one was my fault.
An oversight with abandoned crates not resetting the number of attempts left and not nulling the last attempted code when re-locked. Idem.
Burial mounds somehow getting lock lights overlays.
Also i'm taking this opportunity to make the closets unit test not early return at the first encountered failure (at the time I made it I didn't know TEST_ASSERT & co would early return on failure) since we want this unit test to finish looping through all non-blacklisted closets.