* Initial work
* small fix
* another fix
* this better?
* proper type
* condensing this a bit
* functioning
* death reporting subsystemed
* fixed
* cleanup
* use proper sql sending
* listvar
* add more climbable things
* moving things while climbing them is considered shaking
* tabbing fix
* knockdown should stop climbing
* no need to bother
* spaces
* more climbable objects
* fix
* small fixes
* office climbables
* yet more stuff
* engineering things
* a few more
* it's funny
* fixes
* additional
* Moved to element
* some more stragglers
* unneeded
* more graceful
* cliffs require special handling
* don't do dumb init things
* unneeded sanitization, mass insert sanitizes
* some small condition fixes
* return if climbable
* incorporeal check
* stop using numbers directly
* .
---------
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
Instead of paintings lasting 1000 shifts before being deleted
Now the system will store up to 1000 paintings, and remove the one at the top of the list (the earliest/oldest one) first when the maximum number of paintings is exceeded.
Additionally, examining a painting that has been stored will move it to the bottom of the list, effectively renewing its lease in the system.
This should make it so that paintings aren't just arbitrarily being removed for being old, and, the paintings that actually get looked at should stick around.