Skip to content

Commit 8c71102

Browse files
committed
managerize the rest of the lighting data
1 parent c887eb6 commit 8c71102

File tree

3 files changed

+39
-4
lines changed

3 files changed

+39
-4
lines changed

src/main/java/com/falsepattern/chunk/internal/ChunkAPI.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.falsepattern.chunk.internal.vanilla.BiomeManager;
1212
import com.falsepattern.chunk.internal.vanilla.BlockIDManager;
1313
import com.falsepattern.chunk.internal.vanilla.BlocklightManager;
14+
import com.falsepattern.chunk.internal.vanilla.LightingManager;
1415
import com.falsepattern.chunk.internal.vanilla.MetadataManager;
1516
import com.falsepattern.chunk.internal.vanilla.SkylightManager;
1617

@@ -28,6 +29,7 @@ public class ChunkAPI {
2829
public void init(FMLInitializationEvent event) {
2930
ChunkDataRegistry.registerDataManager(new BlockIDManager());
3031
ChunkDataRegistry.registerDataManager(new MetadataManager());
32+
ChunkDataRegistry.registerDataManager(new LightingManager());
3133
ChunkDataRegistry.registerDataManager(new BlocklightManager());
3234
ChunkDataRegistry.registerDataManager(new SkylightManager());
3335
ChunkDataRegistry.registerDataManager(new BiomeManager());

src/main/java/com/falsepattern/chunk/internal/mixin/mixins/common/vanilla/AnvilChunkLoaderMixin.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,7 @@ private void writeChunkToNBT(Chunk chunk, World world, NBTTagCompound nbt) {
4242
nbt.setInteger("xPos", chunk.xPosition);
4343
nbt.setInteger("zPos", chunk.zPosition);
4444
nbt.setLong("LastUpdate", world.getTotalWorldTime());
45-
nbt.setIntArray("HeightMap", chunk.heightMap);
4645
nbt.setBoolean("TerrainPopulated", chunk.isTerrainPopulated);
47-
nbt.setBoolean("LightPopulated", chunk.isLightPopulated);
4846
nbt.setLong("InhabitedTime", chunk.inhabitedTime);
4947
writeSections(chunk, nbt);
5048
writeCustomData(chunk, nbt);
@@ -63,9 +61,7 @@ private Chunk readChunkFromNBT(World world, NBTTagCompound nbt) {
6361
int x = nbt.getInteger("xPos");
6462
int z = nbt.getInteger("zPos");
6563
Chunk chunk = new Chunk(world, x, z);
66-
chunk.heightMap = nbt.getIntArray("HeightMap");
6764
chunk.isTerrainPopulated = nbt.getBoolean("TerrainPopulated");
68-
chunk.isLightPopulated = nbt.getBoolean("LightPopulated");
6965
chunk.inhabitedTime = nbt.getLong("InhabitedTime");
7066
readSections(chunk, nbt);
7167
readCustomData(chunk, nbt);
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/*
2+
* Copyright (c) 2023 FalsePattern
3+
* This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
4+
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/
5+
* or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
6+
*/
7+
8+
package com.falsepattern.chunk.internal.vanilla;
9+
10+
import com.falsepattern.chunk.api.ChunkDataManager;
11+
12+
import net.minecraft.nbt.NBTTagCompound;
13+
import net.minecraft.world.chunk.Chunk;
14+
15+
public class LightingManager extends VanillaManager implements ChunkDataManager.ChunkNBTDataManager {
16+
@Override
17+
public String id() {
18+
return "lighting";
19+
}
20+
21+
@Override
22+
public void writeChunkToNBT(Chunk chunk, NBTTagCompound nbt) {
23+
nbt.setIntArray("HeightMap", chunk.heightMap);
24+
nbt.setBoolean("LightPopulated", chunk.isLightPopulated);
25+
}
26+
27+
@Override
28+
public void readChunkFromNBT(Chunk chunk, NBTTagCompound nbt) {
29+
chunk.heightMap = nbt.getIntArray("HeightMap");
30+
chunk.isLightPopulated = nbt.getBoolean("LightPopulated");
31+
}
32+
33+
@Override
34+
public boolean chunkPrivilegedAccess() {
35+
return true;
36+
}
37+
}

0 commit comments

Comments
 (0)