Noah Petherbridge
6be2f86b58
* For the doodad tool: skip the assets embed folder, the doodad binary doesn't need to include all the game's doodads/levelpacks/etc. and can save on file size. * In `doodad resave`, .doodad files with Vacuum() and upgrade their chunker from the MapAccessor to the RLEAccessor. * Fix a rare concurrent map read/write error in OptimizeChunkerAccessors.
15 lines
408 B
Go
15 lines
408 B
Go
package doodads
|
|
|
|
// Vacuum runs any maintenance or migration tasks for the level at time of save.
|
|
//
|
|
// It will prune broken links between actors, or migrate internal data structures
|
|
// to optimize storage on disk of its binary data.
|
|
func (m *Doodad) Vacuum() error {
|
|
// Let the Chunker optimize accessor types.
|
|
for _, layer := range m.Layers {
|
|
layer.Chunker.OptimizeChunkerAccessors()
|
|
}
|
|
|
|
return nil
|
|
}
|