コード例 #1
0
        public bool saveChunks(bool flag, IProgressUpdate iprogressupdate)
        {
            int i = 0;

            for (int j = 0; j < field_727_f.size(); j++)
            {
                var chunk = (Chunk)field_727_f.get(j);
                if (flag && !chunk.neverSave)
                {
                    func_375_a(chunk);
                }
                if (!chunk.needsSaving(flag))
                {
                    continue;
                }
                func_373_b(chunk);
                chunk.isModified = false;
                if (++i == 24 && !flag)
                {
                    return(false);
                }
            }

            if (flag)
            {
                if (field_729_d == null)
                {
                    return(true);
                }
                field_729_d.saveExtraData();
            }
            return(true);
        }
コード例 #2
0
        public bool saveChunks(bool flag, IProgressUpdate iprogressupdate)
        {
            int i = 0;
            int j = 0;

            if (iprogressupdate != null)
            {
                for (int k = 0; k < chunks.Length; k++)
                {
                    if (chunks[k] != null && chunks[k].needsSaving(flag))
                    {
                        j++;
                    }
                }
            }
            int l = 0;

            for (int i1 = 0; i1 < chunks.Length; i1++)
            {
                if (chunks[i1] == null)
                {
                    continue;
                }
                if (flag && !chunks[i1].neverSave)
                {
                    saveExtraChunkData(chunks[i1]);
                }
                if (!chunks[i1].needsSaving(flag))
                {
                    continue;
                }
                saveChunk(chunks[i1]);
                chunks[i1].isModified = false;
                if (++i == 2 && !flag)
                {
                    return(false);
                }
                if (iprogressupdate != null && ++l % 10 == 0)
                {
                    iprogressupdate.setLoadingProgress((l * 100) / j);
                }
            }

            if (flag)
            {
                if (chunkLoader == null)
                {
                    return(true);
                }
                chunkLoader.saveExtraData();
            }
            return(true);
        }