Added force_save_all_chunks() method to TerrainWorld.

This commit is contained in:
Relintai 2025-04-07 17:30:29 +02:00
parent c64e9e1131
commit 9fefe64c3b
2 changed files with 10 additions and 0 deletions

View File

@ -602,6 +602,12 @@ void TerrainWorld::chunk_generate(Ref<TerrainChunk> chunk) {
chunk->build();
}
void TerrainWorld::force_save_all_chunks() {
ERR_FAIL_COND(!_world_chunk_data_manager.is_valid());
_world_chunk_data_manager->save_all_chunks(this);
}
Vector<Variant> TerrainWorld::chunks_get() {
VARIANT_ARRAY_GET(_chunks_vector);
}
@ -1788,6 +1794,8 @@ void TerrainWorld::_bind_methods() {
ClassDB::bind_method(D_METHOD("chunks_clear"), &TerrainWorld::chunks_clear);
ClassDB::bind_method(D_METHOD("force_save_all_chunks"), &TerrainWorld::force_save_all_chunks);
ClassDB::bind_method(D_METHOD("chunks_get"), &TerrainWorld::chunks_get);
ClassDB::bind_method(D_METHOD("chunks_set"), &TerrainWorld::chunks_set);
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "chunks", PROPERTY_HINT_NONE, "23/20:TerrainChunk", PROPERTY_USAGE_DEFAULT, "TerrainChunk"), "chunks_set", "chunks_get");

View File

@ -169,6 +169,8 @@ public:
void chunk_generate(Ref<TerrainChunk> chunk);
void force_save_all_chunks();
Vector<Variant> chunks_get();
void chunks_set(const Vector<Variant> &chunks);