Rewrite regenerateChunkRegion

This commit is contained in:
PhiPro95 committed 2020-06-29 01:03:26 +02:00
1 parent b9f2e68ddb
commit 0c1dba0157
19 files changed
+876 -208

No files matched your search

@@ -0,0 +1,8 @@
package carpet.fakes;
import net.minecraft.world.chunk.ChunkNibbleArray;
public interface ChunkLightProviderInterface
{
int callGetCurrentLevelFromArray(ChunkNibbleArray array, long blockPos);
}
@@ -1,6 +1,7 @@
package carpet.fakes;
import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap;
import net.minecraft.server.world.ChunkHolder;
import net.minecraft.server.world.ChunkTicket;
import net.minecraft.util.SortedArraySet;
import net.minecraft.util.math.ChunkPos;
@@ -8,5 +9,8 @@ import net.minecraft.util.math.ChunkPos;
public interface ChunkTicketManagerInterface
{
void changeSpawnChunks(ChunkPos pos, int distance);
Long2ObjectOpenHashMap<SortedArraySet<ChunkTicket<?>>> getTicketsByPosition();
void replaceHolder(ChunkHolder oldHolder, ChunkHolder newHolder);
}
@@ -0,0 +1,10 @@
package carpet.fakes;
import net.minecraft.world.chunk.light.ChunkLightProvider;
public interface LightStorageInterface extends Lighting_scarpetChunkCreationInterface
{
void processRemoveLightData(long pos);
void processRelight(ChunkLightProvider<?, ?> lightProvider, long pos);
}
@@ -0,0 +1,8 @@
package carpet.fakes;
public interface Lighting_scarpetChunkCreationInterface
{
void removeLightData(long pos);
void relight(long pos);
}
@@ -1,11 +1,17 @@
package carpet.fakes;
import java.util.concurrent.CompletableFuture;
import net.minecraft.util.math.ChunkPos;
import net.minecraft.world.chunk.Chunk;
public interface ServerLightingProviderInterface
{
void publicUpdateChunkStatus(ChunkPos pos);
void flush();
void invokeUpdateChunkStatus(ChunkPos pos);
void removeLightData(Chunk chunk);
CompletableFuture<Void> relight(Chunk chunk);
void resetLight(Chunk chunk, ChunkPos pos);
}
@@ -1,11 +1,13 @@
package carpet.fakes;
import net.minecraft.util.math.ChunkPos;
import java.util.List;
import java.util.Map;
import net.minecraft.util.math.ChunkPos;
public interface ThreadedAnvilChunkStorageInterface
{
Map<String, Integer> regenerateChunkRegion(List<ChunkPos> requestedChunks);
void releaseRelightTicket(ChunkPos pos);
}