feat: World.SetBlock writes through to IChunkModificationStore

This commit is contained in:
2026-06-01 10:29:01 +02:00
parent 7c310ebc6a
commit 6a68953c9a
4 changed files with 149 additions and 40 deletions

View File

@@ -1,11 +1,16 @@
using OpenTK.Mathematics;
using OpenTK.Mathematics;
using VoxelEngine.World.Blocks;
using VoxelEngine.World.Persistence;
namespace VoxelEngine.World;
public interface IWorld
{
public void SetChunk(Vector3i chunkPos, Chunk.Chunk chunk);
public Chunk.Chunk? GetChunk(Vector3i chunkPos);
public IBlock GetBlock(int worldX, int worldY, int worldZ);
}
IChunkModificationStore ModificationStore { get; }
void SetChunk(Vector3i chunkPos, Chunk.Chunk chunk);
void RemoveChunk(Vector3i chunkPos);
Chunk.Chunk? GetChunk(Vector3i chunkPos);
IBlock GetBlock(int worldX, int worldY, int worldZ);
bool SetBlock(int worldX, int worldY, int worldZ, ushort blockId);
}