Class WorldChunkGrid
Inheritance
System.Object
WorldChunkGrid
Assembly: Eco.World.dll
Syntax
public abstract class WorldChunkGrid : ChunkGrid<PersistentChunk>, INetObject, INetObjectPriority
Constructors
WorldChunkGrid()
Declaration
WorldChunkGrid(NetObject, IChunkContainer<PersistentChunk>, Boolean)
Declaration
public WorldChunkGrid(NetObject owner, IChunkContainer<PersistentChunk> container, bool threadSafe)
Parameters
WorldChunkGrid(IChunkContainer<PersistentChunk>, Boolean)
Declaration
public WorldChunkGrid(IChunkContainer<PersistentChunk> container, bool threadSafe)
Parameters
Properties
Active
Declaration
public bool Active { get; set; }
Property Value
Type |
Description |
System.Boolean |
|
ChunkSize
Declaration
public Vector3i ChunkSize { get; }
Property Value
ID
Declaration
Property Value
Type |
Description |
System.Int32 |
|
InitialStateChannel
Declaration
public NetworkChannel InitialStateChannel { get; }
Property Value
NetObj
Declaration
public NetObject NetObj { get; }
Property Value
NetObjectCreationRealtime
Declaration
public double NetObjectCreationRealtime { get; set; }
Property Value
Type |
Description |
System.Double |
|
Priority
Declaration
public float Priority { get; }
Property Value
Type |
Description |
System.Single |
|
UpdateChannel
Declaration
public NetworkChannel UpdateChannel { get; }
Property Value
VoxelSize
Declaration
public Vector3i VoxelSize { get; }
Property Value
Methods
CalculateChunkEncasement(Action<Single>)
Declaration
public void CalculateChunkEncasement(Action<float> updateAction)
Parameters
Type |
Name |
Description |
System.Action<System.Single> |
updateAction |
|
DeleteBlock(WrappedWorldPosition3i, Boolean)
Declaration
public virtual void DeleteBlock(WrappedWorldPosition3i worldPos, bool checkForWaterFlow = true)
Parameters
FillCache(Vector2i, Array2D<Int32>, Array2D<Block>)
Completes arrays of top block position and top solid block type into arrays. It's faster than go column by column since it re-uses same chunk for all positions (and chunk look up is slow)
Declaration
public void FillCache(Vector2i chunkPos2D, Array2D<int> topBlockHeight, Array2D<Block> topSolidBlock)
Parameters
GetBlock(WrappedWorldPosition3i)
Declaration
public Block GetBlock(WrappedWorldPosition3i worldPos)
Parameters
Returns
GetMaxY(Vector2i)
Declaration
public int GetMaxY(Vector2i worldPos)
Parameters
Returns
Type |
Description |
System.Int32 |
|
GetTopBlockHeight(Vector2i)
Declaration
public int GetTopBlockHeight(Vector2i worldPos)
Parameters
Returns
Type |
Description |
System.Int32 |
|
GetTopSolidBlock(Vector2i)
Declaration
public Block GetTopSolidBlock(Vector2i worldPos)
Parameters
Returns
IsNotRelevant(INetObjectViewer)
Declaration
public virtual bool IsNotRelevant(INetObjectViewer viewer)
Parameters
Returns
Type |
Description |
System.Boolean |
|
IsRelevant(INetObjectViewer)
Declaration
public virtual bool IsRelevant(INetObjectViewer viewer)
Parameters
Returns
Type |
Description |
System.Boolean |
|
IsUpdated(INetObjectViewer)
Declaration
public virtual bool IsUpdated(INetObjectViewer viewer)
Parameters
Returns
Type |
Description |
System.Boolean |
|
ReceiveInitialState(BSONObject)
Declaration
public virtual void ReceiveInitialState(BSONObject bsonObj)
Parameters
ReceiveUpdate(BSONObject)
Declaration
public virtual void ReceiveUpdate(BSONObject bsonObj)
Parameters
SendInitialState(BSONObject, INetObjectViewer)
Declaration
public virtual void SendInitialState(BSONObject bsonObj, INetObjectViewer viewer)
Parameters
SendUpdate(BSONObject, INetObjectViewer)
Declaration
public virtual void SendUpdate(BSONObject bsonObj, INetObjectViewer viewer)
Parameters
SetBlock(Type, WrappedWorldPosition3i, PersistentChunk, Object[])
If you know the chunk you can pass it to avoid lookup for better performance
Declaration
public Block SetBlock(Type blockType, WrappedWorldPosition3i worldPos, PersistentChunk chunk = null, params object[] args)
Parameters
Returns
SetBlock(Type, WrappedWorldPosition3i, Object[])
Declaration
public Block SetBlock(Type blockType, WrappedWorldPosition3i worldPos, params object[] args)
Parameters
Returns
SetBlock<T>(WrappedWorldPosition3i, PersistentChunk, Object[])
If you know the chunk you can pass it to avoid lookup for better performance
Declaration
public Block SetBlock<T>(WrappedWorldPosition3i worldPos, PersistentChunk chunk = null, params object[] args)
where T : Block
Parameters
Returns
Type Parameters
SetBlock<T>(WrappedWorldPosition3i, Object[])
Declaration
public Block SetBlock<T>(WrappedWorldPosition3i worldPos, params object[] args)
where T : Block
Parameters
Returns
Type Parameters
SetBlocks(IEnumerable<BlockChange>)
Declaration
public void SetBlocks(IEnumerable<BlockChange> blocks)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<BlockChange> |
blocks |
|
Implements