/** * par1 indicates if a log message should be output. */ protected void saveAllWorlds(boolean dontLog) { if (!this.worldIsBeingDeleted) { for (WorldServer worldserver : this.worldServers) { if (worldserver != null) { if (!dontLog) { logger.info("Saving chunks for level \'" + worldserver.getWorldInfo().getWorldName() + "\'/" + worldserver.provider.getDimensionName()); } try { worldserver.saveAllChunks(true, (IProgressUpdate)null); } catch (MinecraftException minecraftexception) { logger.warn(minecraftexception.getMessage()); } } } } }
/** * par1 indicates if a log message should be output. */ public void saveAllWorlds(boolean isSilent) { for (WorldServer worldserver : this.worldServers) { if (worldserver != null) { if (!isSilent) { LOG.info("Saving chunks for level \'{}\'/{}", new Object[] {worldserver.getWorldInfo().getWorldName(), worldserver.provider.getDimensionType().getName()}); } try { worldserver.saveAllChunks(true, (IProgressUpdate)null); } catch (MinecraftException minecraftexception) { LOG.warn(minecraftexception.getMessage()); } } } }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(final boolean saveAll, final IProgressUpdate progress) throws MinecraftException { if (this.chunkProvider.canSave()) { if (progress != null) { progress.displayProgressMessage("Saving level"); } this.saveLevel(); if (progress != null) { progress.resetProgresAndWorkingMessage("Saving chunks"); } this.chunkProvider.saveChunks(saveAll, progress); MinecraftForge.EVENT_BUS.post(new WorldEvent.Save(this)); for (final Chunk chunk : this.theChunkProviderServer.func_152380_a()) { if (chunk != null && !this.thePlayerManager.func_152621_a(chunk.xPosition, chunk.zPosition)) { this.theChunkProviderServer.unloadChunksIfNotNearSpawn(chunk.xPosition, chunk.zPosition); } } } }
/** * Two modes of operation: if passed true, save all Chunks in one go. If * passed false, save up to two chunks. Return true if all chunks have been * saved. */ public boolean saveChunks(final boolean saveAll, final IProgressUpdate notUsed) { int saveLimit = saveAll ? 0 : 25; for (int i = 0; i < this.newLoadedChunk; i++) { final Chunk chunk = this.theLoadedChunks[i]; if (saveAll) this.safeSaveExtraChunkData(chunk); if (chunk.needsSaving(saveAll)) { this.safeSaveChunk(chunk); chunk.isModified = false; if (--saveLimit == 0) return false; } } return true; }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(boolean par1, IProgressUpdate par2IProgressUpdate) throws MinecraftException { if (this.chunkProvider.canSave()) { if (par2IProgressUpdate != null) { par2IProgressUpdate.displayProgressMessage("Saving level"); } this.saveLevel(); if (par2IProgressUpdate != null) { par2IProgressUpdate.resetProgresAndWorkingMessage("Saving chunks"); } this.chunkProvider.saveChunks(par1, par2IProgressUpdate); } }
/** * @author jamierocks - 25th October 2016 * @reason Disable vanilla ChunkGC */ @Overwrite public void saveAllChunks(boolean p_73044_1_, IProgressUpdate progressCallback) throws MinecraftException { if (this.chunkProvider.canSave()) { if (progressCallback != null) { progressCallback.displaySavingString("Saving level"); } this.saveLevel(); if (progressCallback != null) { progressCallback.displayLoadingString("Saving chunks"); } this.chunkProvider.saveChunks(p_73044_1_, progressCallback); // Neptune - Disable vanilla ChunkGC // for (net.minecraft.world.chunk.Chunk chunk : Lists.newArrayList(this.theChunkProviderServer.func_152380_a())) { // if (chunk != null && !this.thePlayerManager.hasPlayerInstance(chunk.xPosition, chunk.zPosition)) { // this.theChunkProviderServer.dropChunk(chunk.xPosition, chunk.zPosition); // } // } // Neptune - end } }
public boolean func_73151_a(boolean p_73151_1_, IProgressUpdate p_73151_2_) { int var3 = 0; for(int var4 = 0; var4 < this.field_73245_g.size(); ++var4) { Chunk var5 = (Chunk)this.field_73245_g.get(var4); if(p_73151_1_) { this.func_73243_a(var5); } if(var5.func_76601_a(p_73151_1_)) { this.func_73242_b(var5); var5.field_76643_l = false; ++var3; if(var3 == 24 && !p_73151_1_) { return false; } } } return true; }
protected void func_71267_a(boolean p_71267_1_) { if(!this.field_71290_O) { WorldServer[] var2 = this.field_71305_c; int var3 = var2.length; for(int var4 = 0; var4 < var3; ++var4) { WorldServer var5 = var2[var4]; if(var5 != null) { if(!p_71267_1_) { this.func_98033_al().func_98233_a("Saving chunks for level \'" + var5.func_72912_H().func_76065_j() + "\'/" + var5.field_73011_w.func_80007_l()); } try { var5.func_73044_a(true, (IProgressUpdate)null); } catch (MinecraftException var7) { this.func_98033_al().func_98236_b(var7.getMessage()); } } } } }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(boolean par1, IProgressUpdate par2IProgressUpdate) throws MinecraftException { if (this.chunkProvider.canSave()) { if (par2IProgressUpdate != null) { par2IProgressUpdate.displayProgressMessage("Saving level"); } this.saveLevel(); if (par2IProgressUpdate != null) { par2IProgressUpdate.resetProgresAndWorkingMessage("Saving chunks"); } this.chunkProvider.saveChunks(par1, par2IProgressUpdate); MinecraftForge.EVENT_BUS.post(new WorldEvent.Save(this)); } }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(boolean p_73044_1_, IProgressUpdate progressCallback) throws MinecraftException { if (this.chunkProvider.canSave()) { if (progressCallback != null) { progressCallback.displaySavingString("Saving level"); } this.saveLevel(); if (progressCallback != null) { progressCallback.displayLoadingString("Saving chunks"); } this.chunkProvider.saveChunks(p_73044_1_, progressCallback); for (Chunk chunk : Lists.newArrayList(this.theChunkProviderServer.func_152380_a())) { if (chunk != null && !this.thePlayerManager.hasPlayerInstance(chunk.xPosition, chunk.zPosition)) { this.theChunkProviderServer.dropChunk(chunk.xPosition, chunk.zPosition); } } } }
private void convertFile(File p_75813_1_, Iterable<File> p_75813_2_, WorldChunkManager p_75813_3_, int p_75813_4_, int p_75813_5_, IProgressUpdate p_75813_6_) { for (File file1 : p_75813_2_) { this.convertChunks(p_75813_1_, file1, p_75813_3_, p_75813_4_, p_75813_5_, p_75813_6_); ++p_75813_4_; int i = (int)Math.round(100.0D * (double)p_75813_4_ / (double)p_75813_5_); p_75813_6_.setLoadingProgress(i); } }
/** * Two modes of operation: if passed true, save all Chunks in one go. If passed false, save up to two chunks. * Return true if all chunks have been saved. */ public boolean saveChunks(boolean p_73151_1_, IProgressUpdate progressCallback) { int i = 0; List<Chunk> list = Lists.newArrayList(this.loadedChunks); for (int j = 0; j < ((List)list).size(); ++j) { Chunk chunk = (Chunk)list.get(j); if (p_73151_1_) { this.saveChunkExtraData(chunk); } if (chunk.needsSaving(p_73151_1_)) { this.saveChunkData(chunk); chunk.setModified(false); ++i; if (i == 24 && !p_73151_1_) { return false; } } } return true; }
@Override public void saveAllChunks(boolean all, IProgressUpdate progressCallback) throws MinecraftException { if (m_proxyWorld != null && Util.isPrefixInCallStack(m_modPrefix)) { m_proxyWorld.saveAllChunks(all, progressCallback); } else if (m_realWorld != null) { m_realWorld.saveAllChunks(all, progressCallback); } else { super.saveAllChunks(all, progressCallback); } }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(boolean p_73044_1_, @Nullable IProgressUpdate progressCallback) throws MinecraftException { ChunkProviderServer chunkproviderserver = this.getChunkProvider(); if (chunkproviderserver.canSave()) { if (progressCallback != null) { progressCallback.displaySavingString("Saving level"); } this.saveLevel(); if (progressCallback != null) { progressCallback.displayLoadingString("Saving chunks"); } chunkproviderserver.saveChunks(p_73044_1_); for (Chunk chunk : Lists.newArrayList(chunkproviderserver.getLoadedChunks())) { if (chunk != null && !this.thePlayerManager.contains(chunk.xPosition, chunk.zPosition)) { chunkproviderserver.unload(chunk); } } } }
private void convertFile(File baseFolder, Iterable<File> regionFiles, BiomeProvider p_75813_3_, int p_75813_4_, int p_75813_5_, IProgressUpdate progress) { for (File file1 : regionFiles) { this.convertChunks(baseFolder, file1, p_75813_3_, p_75813_4_, p_75813_5_, progress); ++p_75813_4_; int i = (int)Math.round(100.0D * (double)p_75813_4_ / (double)p_75813_5_); progress.setLoadingProgress(i); } }
/** * Saves all chunks to disk while updating progress bar. */ public void saveAllChunks(boolean p_73044_1_, @Nullable IProgressUpdate progressCallback) throws MinecraftException { ChunkProviderServer chunkproviderserver = this.getChunkProvider(); if (chunkproviderserver.canSave()) { if (progressCallback != null) { progressCallback.displaySavingString("Saving level"); } this.saveLevel(); if (progressCallback != null) { progressCallback.displayLoadingString("Saving chunks"); } chunkproviderserver.saveChunks(p_73044_1_); net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.event.world.WorldEvent.Save(this)); for (Chunk chunk : Lists.newArrayList(chunkproviderserver.getLoadedChunks())) { if (chunk != null && !this.thePlayerManager.contains(chunk.xPosition, chunk.zPosition)) { chunkproviderserver.unload(chunk); } } } }
private void convertFile(File par1File, Iterable par2Iterable, WorldChunkManager par3WorldChunkManager, int par4, int par5, IProgressUpdate par6IProgressUpdate) { Iterator var7 = par2Iterable.iterator(); while (var7.hasNext()) { File var8 = (File)var7.next(); this.convertChunks(par1File, var8, par3WorldChunkManager, par4, par5, par6IProgressUpdate); ++par4; int var9 = (int)Math.round(100.0D * (double)par4 / (double)par5); par6IProgressUpdate.setLoadingProgress(var9); } }
/** * Two modes of operation: if passed true, save all Chunks in one go. If passed false, save up to two chunks. * Return true if all chunks have been saved. */ public boolean saveChunks(boolean par1, IProgressUpdate par2IProgressUpdate) { int var3 = 0; for (int var4 = 0; var4 < this.loadedChunks.size(); ++var4) { Chunk var5 = (Chunk)this.loadedChunks.get(var4); if (par1) { this.safeSaveExtraChunkData(var5); } if (var5.needsSaving(par1)) { this.safeSaveChunk(var5); var5.isModified = false; ++var3; if (var3 == 24 && !par1) { return false; } } } return true; }
/** * par1 indicates if a log message should be output. */ protected void saveAllWorlds(boolean par1) { if (!this.worldIsBeingDeleted) { WorldServer[] var2 = this.worldServers; int var3 = var2.length; for (int var4 = 0; var4 < var3; ++var4) { WorldServer var5 = var2[var4]; if (var5 != null) { if (!par1) { logger.info("Saving chunks for level \'" + var5.getWorldInfo().getWorldName() + "\'/" + var5.provider.getDimensionName()); } try { var5.saveAllChunks(true, (IProgressUpdate)null); } catch (MinecraftException var7) { logger.warn(var7.getMessage()); } } } } }
public void saveAllChunks(boolean p_73044_1_, IProgressUpdate p_73044_2_) throws MinecraftException { if (this.chunkProvider.canSave()) { if (p_73044_2_ != null) { p_73044_2_.displayProgressMessage("Saving level"); } this.saveLevel(); if (p_73044_2_ != null) { p_73044_2_.resetProgresAndWorkingMessage("Saving chunks"); } this.chunkProvider.saveChunks(p_73044_1_, p_73044_2_); MinecraftForge.EVENT_BUS.post(new WorldEvent.Save(this)); ArrayList arraylist = Lists.newArrayList(this.theChunkProviderServer.func_152380_a()); Iterator iterator = arraylist.iterator(); while (iterator.hasNext()) { Chunk chunk = (Chunk)iterator.next(); if (chunk != null && !this.thePlayerManager.func_152621_a(chunk.xPosition, chunk.zPosition)) { this.theChunkProviderServer.unloadChunksIfNotNearSpawn(chunk.xPosition, chunk.zPosition); } } } }
private void convertFile(File p_75813_1_, Iterable p_75813_2_, WorldChunkManager p_75813_3_, int p_75813_4_, int p_75813_5_, IProgressUpdate p_75813_6_) { Iterator iterator = p_75813_2_.iterator(); while (iterator.hasNext()) { File file2 = (File)iterator.next(); this.convertChunks(p_75813_1_, file2, p_75813_3_, p_75813_4_, p_75813_5_, p_75813_6_); ++p_75813_4_; int k = (int)Math.round(100.0D * (double)p_75813_4_ / (double)p_75813_5_); p_75813_6_.setLoadingProgress(k); } }
public boolean saveChunks(boolean p_73151_1_, IProgressUpdate p_73151_2_) { int i = 0; // Cauldron start - use thread-safe method for iterating loaded chunks Object[] chunks = this.loadedChunks.toArray(); for (int j = 0; j < chunks.length; ++j) { Chunk chunk = (Chunk)chunks[j]; //Cauldron end if (p_73151_1_) { this.safeSaveExtraChunkData(chunk); } if (chunk.needsSaving(p_73151_1_)) { this.safeSaveChunk(chunk); chunk.isModified = false; ++i; if (i == 24 && !p_73151_1_) { return false; } } } return true; }
protected void convertMapIfNeeded(String p_71237_1_) { if (this.getActiveAnvilConverter().isOldMapFormat(p_71237_1_)) { logger.info("Converting map!"); this.setUserMessage("menu.convertingLevel"); this.getActiveAnvilConverter().convertMapFormat(p_71237_1_, new IProgressUpdate() { private long field_96245_b = System.currentTimeMillis(); private static final String __OBFID = "CL_00001417"; public void displayProgressMessage(String p_73720_1_) {} public void setLoadingProgress(int p_73718_1_) { if (System.currentTimeMillis() - this.field_96245_b >= 1000L) { this.field_96245_b = System.currentTimeMillis(); MinecraftServer.logger.info("Converting... " + p_73718_1_ + "%"); } } @SideOnly(Side.CLIENT) public void resetProgressAndMessage(String p_73721_1_) {} @SideOnly(Side.CLIENT) public void func_146586_a() {} public void resetProgresAndWorkingMessage(String p_73719_1_) {} }); } }
protected void saveAllWorlds(boolean p_71267_1_) throws MinecraftException // CraftBukkit - added throws { if (!this.worldIsBeingDeleted) { // CraftBukkit start for (int j = 0; j < this.worlds.size(); ++j) { WorldServer worldserver = this.worlds.get(j); if (worldserver != null) { if (!p_71267_1_) { logger.info("Saving chunks for level \'" + worldserver.getWorldInfo().getWorldName() + "\'/" + worldserver.provider.getDimensionName()); } worldserver.saveAllChunks(true, (IProgressUpdate) null); worldserver.flush(); WorldSaveEvent event = new WorldSaveEvent(worldserver.getWorld()); this.server.getPluginManager().callEvent(event); // Cauldron start - save world configs if (worldserver.cauldronConfig != null) { worldserver.cauldronConfig.save(); } if (worldserver.tileentityConfig != null) { worldserver.tileentityConfig.save(); } // Cauldron end } } // CraftBukkit end } }