Changed DhChunk

This commit is contained in:
Morippi
2022-05-09 18:03:21 +02:00
parent a872547d72
commit 8e0566c4f1
@@ -1,49 +1,60 @@
package com.seibel.lod.core.objects.a7;
import com.seibel.lod.core.objects.a7.io.DHFolderHandler;
import com.seibel.lod.core.objects.a7.io.LevelToFileMatcher;
import com.seibel.lod.core.wrapperInterfaces.block.IBlockDetailWrapper;
import com.seibel.lod.core.wrapperInterfaces.world.IBiomeWrapper;
import com.seibel.lod.core.wrapperInterfaces.world.IWorldWrapper;
import java.io.File;
import java.util.HashMap;
public class DhChunk
{
public int CHUNK_SIZE = 16;
public int CHUNK_BLOCK_SIZE = 16;
public int CHUNK_BIOME_SIZE = 4;
public int blockVerticalSize;
public int biomeVerticalSize;
public IBlockDetailWrapper[] blockData;
public IBiomeWrapper[] biomeData;
public int[] verticalData;
public int verticalSize;
public int[] blockVerticalData;
public int[] biomeVerticalData;
public int chunkPosX;
public int chunkPosZ;
public byte generationMode;
public DhChunk(byte generationMode, int chunkPosX, int chunkPosZ, int verticalSize)
public DhChunk(byte generationMode, int chunkPosX, int chunkPosZ, int blockVerticalSize, int biomeVerticalSize)
{
this.verticalSize = verticalSize;
this.blockVerticalSize = blockVerticalSize;
this.biomeVerticalSize = biomeVerticalSize;
this.chunkPosX = chunkPosX;
this.chunkPosZ = chunkPosZ;
this.generationMode = generationMode;
this.blockData = new IBlockDetailWrapper[CHUNK_SIZE*CHUNK_SIZE*verticalSize];
this.biomeData = new IBiomeWrapper[CHUNK_SIZE*CHUNK_SIZE*verticalSize];
this.verticalData = new int[CHUNK_SIZE*CHUNK_SIZE*verticalSize];
this.blockData = new IBlockDetailWrapper[CHUNK_BLOCK_SIZE * CHUNK_BLOCK_SIZE * blockVerticalSize];
this.biomeData = new IBiomeWrapper[CHUNK_BLOCK_SIZE * CHUNK_BLOCK_SIZE * biomeVerticalSize];
this.blockVerticalData = new int[CHUNK_BIOME_SIZE * CHUNK_BIOME_SIZE * blockVerticalSize];
this.biomeVerticalData = new int[CHUNK_BIOME_SIZE * CHUNK_BIOME_SIZE * biomeVerticalSize];
}
public void addData(IBlockDetailWrapper block, IBiomeWrapper biome, int singelVerticalData, int relPosX, int relPosZ, int verticalIndex)
public void addBlockData(IBlockDetailWrapper block, int verticalData, int relPosX, int relPosZ, int verticalIndex)
{
int index = CHUNK_SIZE*verticalSize*relPosX + verticalSize*relPosZ + verticalIndex;
int index = CHUNK_BLOCK_SIZE * blockVerticalSize * relPosX + blockVerticalSize *relPosZ + verticalIndex;
blockData[index] = block;
blockVerticalData[index] = verticalData;
}
public void addBiomeData(IBiomeWrapper biome, int verticalData, int relPosX, int relPosZ, int verticalIndex)
{
int index = CHUNK_BIOME_SIZE * biomeVerticalSize*relPosX + biomeVerticalSize*relPosZ + verticalIndex;
biomeData[index] = biome;
verticalData[index] = singelVerticalData;
biomeVerticalData[index] = verticalData;
}
public long[] getData()
{
long[] data = new long[3];
//long data = something created using block biome and singelVerticalData;
return data;
}
}