Java 类net.minecraft.util.IProgressUpdate 实例源码

项目:DecompiledMinecraft    文件:MinecraftServer.java   
/**
 * 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());
                }
            }
        }
    }
}
项目:DecompiledMinecraft    文件:MinecraftServer.java   
/**
 * 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());
                }
            }
        }
    }
}
项目:BaseClient    文件:MinecraftServer.java   
/**
 * 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());
                }
            }
        }
    }
}
项目:BaseClient    文件:MinecraftServer.java   
/**
 * 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());
                }
            }
        }
    }
}
项目:Backmemed    文件:MinecraftServer.java   
/**
 * 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());
            }
        }
    }
}
项目:CustomWorldGen    文件:MinecraftServer.java   
/**
 * 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());
            }
        }
    }
}
项目:Jiffy    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:Jiffy    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:Resilience-Client-Source    文件:WorldServer.java   
/**
 * 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);
    }
}
项目:NeptuneMod    文件:MixinWorldServer_Performance.java   
/**
 * @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
    }
}
项目:RuneCraftery    文件:ChunkProviderServer.java   
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;
}
项目:RuneCraftery    文件:MinecraftServer.java   
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());
            }
         }
      }

   }
}
项目:RuneCraftery    文件:WorldServer.java   
/**
 * 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));
    }
}
项目:BetterNutritionMod    文件:WorldServer.java   
/**
 * 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));
    }
}
项目:DecompiledMinecraft    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:DecompiledMinecraft    文件:AnvilSaveConverter.java   
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);
    }
}
项目:DecompiledMinecraft    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:DecompiledMinecraft    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:DecompiledMinecraft    文件:AnvilSaveConverter.java   
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);
    }
}
项目:DecompiledMinecraft    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:BaseClient    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:BaseClient    文件:AnvilSaveConverter.java   
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);
    }
}
项目:BaseClient    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:BaseClient    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:BaseClient    文件:AnvilSaveConverter.java   
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);
    }
}
项目:BaseClient    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:UniversalRemote    文件:WorldServerProxy.java   
@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);
    }
}
项目:Backmemed    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:Backmemed    文件:AnvilSaveConverter.java   
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);
    }
}
项目:CustomWorldGen    文件:WorldServer.java   
/**
 * 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);
            }
        }
    }
}
项目:CustomWorldGen    文件:AnvilSaveConverter.java   
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);
    }
}
项目:Resilience-Client-Source    文件:AnvilSaveConverter.java   
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);
    }
}
项目:Resilience-Client-Source    文件:ChunkProviderServer.java   
/**
 * 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;
}
项目:Resilience-Client-Source    文件:MinecraftServer.java   
/**
 * 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());
                }
            }
        }
    }
}
项目:Cauldron    文件:WorldServer.java   
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);
            }
        }
    }
}
项目:Cauldron    文件:AnvilSaveConverter.java   
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);
    }
}
项目:Cauldron    文件:ChunkProviderServer.java   
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;
}
项目:Cauldron    文件:MinecraftServer.java   
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_) {}
        });
    }
}
项目:Cauldron    文件:MinecraftServer.java   
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
    }
}
项目:Cauldron    文件:WorldServer.java   
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);
            }
        }
    }
}