mirror of
https://github.com/Minestom/Minestom.git
synced 2024-11-17 08:05:25 +01:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
f9fcfb6009
@ -625,6 +625,15 @@ public abstract class Entity implements Viewable, EventHandler, DataContainer {
|
||||
this.boundingBox = new BoundingBox(this, x, y, z);
|
||||
}
|
||||
|
||||
/**
|
||||
* Convenience method to get the entity current chunk
|
||||
*
|
||||
* @return the entity chunk
|
||||
*/
|
||||
public Chunk getChunk() {
|
||||
return instance.getChunkAt(lastX, lastZ);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the entity current instance
|
||||
*
|
||||
|
@ -80,7 +80,7 @@ public class InstanceContainer extends Instance {
|
||||
this.storageLocation = storageLocation;
|
||||
this.chunkLoader = new MinestomBasicChunkLoader(storageLocation);
|
||||
|
||||
// Get instance data from the saved data if a StorageFolder is defined
|
||||
// Get instance data from the saved data if a StorageLocation is defined
|
||||
if (storageLocation != null) {
|
||||
// Retrieve instance data
|
||||
this.uniqueId = storageLocation.getOrDefault(UUID_KEY, UUID.class, uniqueId);
|
||||
@ -324,7 +324,7 @@ public class InstanceContainer extends Instance {
|
||||
callback.accept(chunk);
|
||||
} else {
|
||||
if (hasEnabledAutoChunkLoad()) {
|
||||
// Load chunk from StorageFolder or with ChunkGenerator
|
||||
// Load chunk from StorageLocation or with ChunkGenerator
|
||||
retrieveChunk(chunkX, chunkZ, callback);
|
||||
} else {
|
||||
// Chunk not loaded, return null
|
||||
@ -361,7 +361,7 @@ public class InstanceContainer extends Instance {
|
||||
* @param callback the callback
|
||||
*/
|
||||
public void saveInstance(Runnable callback) {
|
||||
Check.notNull(getStorageLocation(), "You cannot save the instance if no StorageFolder has been defined");
|
||||
Check.notNull(getStorageLocation(), "You cannot save the instance if no StorageLocation has been defined");
|
||||
|
||||
this.storageLocation.set(UUID_KEY, getUniqueId(), UUID.class);
|
||||
final Data data = getData();
|
||||
@ -386,13 +386,13 @@ public class InstanceContainer extends Instance {
|
||||
|
||||
@Override
|
||||
public void saveChunkToStorage(Chunk chunk, Runnable callback) {
|
||||
Check.notNull(getStorageLocation(), "You cannot save the chunk if no StorageFolder has been defined");
|
||||
Check.notNull(getStorageLocation(), "You cannot save the chunk if no StorageLocation has been defined");
|
||||
chunkLoader.saveChunk(chunk, callback);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void saveChunksToStorage(Runnable callback) {
|
||||
Check.notNull(getStorageLocation(), "You cannot save the instance if no StorageFolder has been defined");
|
||||
Check.notNull(getStorageLocation(), "You cannot save the instance if no StorageLocation has been defined");
|
||||
if (chunkLoader.supportsParallelSaving()) {
|
||||
ExecutorService parallelSavingThreadPool = new MinestomThread(MinecraftServer.THREAD_COUNT_PARALLEL_CHUNK_SAVING, MinecraftServer.THREAD_NAME_PARALLEL_CHUNK_SAVING, true);
|
||||
getChunks().forEach(c -> parallelSavingThreadPool.execute(() -> {
|
||||
|
Loading…
Reference in New Issue
Block a user