map_export now saves welded airlocks and paper on noticeboards (#91960)

When using `map-export`:
- Exports the welded state of an airlock to the welded airlock mapping
helper
- Exports the paper inside of a noticeboard to pop out and be saved on
the same turf

Both `airlocks` and `noticeboards` handle the outside objects already in
their `Initialization()` procs so I didn't have to change anything. Also
I cleaned up the paper code and added some better code documentation to
`on_object_saved()`.

We convert this:

![dreamseeker_h4gQeOTaSC](https://github.com/user-attachments/assets/356b976f-b597-4492-96b0-7169b22e1845)

To this:

![StrongDMM_lQ5B1i8lH5](https://github.com/user-attachments/assets/b5360967-3e36-4e32-b94d-a51245eab867)

## Why It's Good For The Game
There weren't any good examples of using `on_object_saved()` and the
documentation was lacking so I wanted to include some proof of concept
for a few objects. Also airlocks already save their welded state, but I
think it looks better to have it as a mapping helper since it shows up
in StrongDMM instead of being a VV edit.
This commit is contained in:
Tim
2025-07-15 09:39:23 -05:00
committed by Roxy
parent f676b7b2d1
commit 087f993fb1
3 changed files with 24 additions and 9 deletions
+4 -1
View File
@@ -45,7 +45,10 @@ ADMIN_VERB(map_export, R_DEBUG, "Map Export", "Select a part of the map by coord
/**
* A procedure for saving non-standard properties of an object.
* For example, saving ore into a silo, and further spavn by coordinates of metal stacks objects
* Examples:
* Saving material stacks (ie. ore in a silo)
* Saving variables that can be shown as mapping helpers (ie. welded airlock mapping helper)
* Saving objects inside of another object (ie. paper inside a noticeboard)
*/
/obj/proc/on_object_saved()
return null