Class ChunkColumn
Welt-Modell einer Säule aus IChunks.
Vererbung
Implementiert
Namespace: OctoAwesome
Assembly: OctoAwesome.dll
Syntax
public class ChunkColumn : object, IChunkColumn
Konstructoren
ChunkColumn()
Erzeugt eine neue Instanz einer ChunkColumn.
Deklaration
public ChunkColumn()
ChunkColumn(IChunk[], Int32, Index2)
Erzeugt eine neue Instanz einer ChunkColumn.
Deklaration
public ChunkColumn(IChunk[] chunks, int planet, Index2 columnIndex)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| IChunk[] | chunks | Die Chunks für die Säule |
| System.Int32 | planet | Der Index des Planeten |
| Index2 | columnIndex | Die Position der Säule |
Eigenschaften
ChangeCounter
Deklaration
public int ChangeCounter { get; set; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| System.Int32 |
Chunks
Die Chunks der Säule.
Deklaration
public IChunk[] Chunks { get; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| IChunk[] |
Entities
Auflistung aller sich in dieser Column befindenden Entitäten.
Deklaration
public IEntityList Entities { get; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| IEntityList |
Heights
Höhen innerhalb der Chunk-Säule (oberste Blöcke)
Deklaration
public int[, ] Heights { get; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| System.Int32[,] |
Index
Die Position der Säule.
Deklaration
public Index2 Index { get; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| Index2 |
Planet
Der Index des Planeten.
Deklaration
public int Planet { get; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| System.Int32 |
Populated
Gibt an, ob die ChunkColumn schon von einem IMapPopulator bearbeitet wurde.
Deklaration
public bool Populated { get; set; }
Wert der Eigenschaft
| Typ | Beschreibung |
|---|---|
| System.Boolean |
Methoden
CalculateHeights()
Errechnet die obersten Blöcke der Säule.
Deklaration
public void CalculateHeights()
Deserialize(Stream, IDefinitionManager, Int32, Index2)
Deserialisiert die Chunksäule aus dem angegebenen Stream.
Deklaration
public void Deserialize(Stream stream, IDefinitionManager definitionManager, int planetId, Index2 columnIndex)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| Stream | stream | Quellstream |
| IDefinitionManager | definitionManager | Der verwendete DefinitionManager |
| System.Int32 | planetId | Der Index des Planeten |
| Index2 | columnIndex | Die Position der Säule |
GetBlock(Index3)
Liefet den Block an der angegebenen Koordinate zurück.
Deklaration
public ushort GetBlock(Index3 index)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| Index3 | index | Koordinate des Blocks innerhalb des Chunkgs |
R�ckgabewert
| Typ | Beschreibung |
|---|---|
| System.UInt16 | Die Block-ID an der angegebenen Koordinate |
GetBlock(Int32, Int32, Int32)
Liefet den Block an der angegebenen Koordinate zurück.
Deklaration
public ushort GetBlock(int x, int y, int z)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks |
R�ckgabewert
| Typ | Beschreibung |
|---|---|
| System.UInt16 | Block-ID der angegebenen Koordinate |
GetBlockMeta(Int32, Int32, Int32)
Gibt die Metadaten des Blocks an der angegebenen Koordinate zurück.
Deklaration
public int GetBlockMeta(int x, int y, int z)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks innerhalb des Chunks |
R�ckgabewert
| Typ | Beschreibung |
|---|---|
| System.Int32 | Die Metadaten des angegebenen Blocks |
GetBlockResources(Int32, Int32, Int32)
Liefert alle Ressourcen im Block an der angegebenen Koordinate zurück.
Deklaration
public ushort[] GetBlockResources(int x, int y, int z)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks innerhalb des Chunks |
R�ckgabewert
| Typ | Beschreibung |
|---|---|
| System.UInt16[] | Ein Array aller Ressourcen des Blocks |
Serialize(Stream, IDefinitionManager)
Serialisiert die Chunksäule in den angegebenen Stream.
Deklaration
public void Serialize(Stream stream, IDefinitionManager definitionManager)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| Stream | stream | Zielstream |
| IDefinitionManager | definitionManager | Der verwendete DefinitionManager |
SetBlock(Index3, UInt16, Int32)
Überschreibt den Block an der angegebenen Position.
Deklaration
public void SetBlock(Index3 index, ushort block, int meta = 0)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| Index3 | index | Koordinate des Zielblocks innerhalb des Chunks. |
| System.UInt16 | block | Neuer Block oder null, falls der vorhandene Block gelöscht werden soll |
| System.Int32 | meta | (Optional) Metainformationen für den Block |
SetBlock(Int32, Int32, Int32, UInt16, Int32)
Überschreibt den Block an der angegebenen Koordinate.
Deklaration
public void SetBlock(int x, int y, int z, ushort block, int meta = 0)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.UInt16 | block | Die neue Block-ID |
| System.Int32 | meta | (Optional) Metainformationen für den Block |
SetBlockMeta(Int32, Int32, Int32, Int32)
Überschreibt den Block an der angegebenen Koordinate.
Deklaration
public void SetBlockMeta(int x, int y, int z, int meta)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | meta | (Optional) Metainformationen für den Block |
SetBlockResources(Int32, Int32, Int32, UInt16[])
Ändert die Ressourcen des Blocks an der angegebenen Koordinate
Deklaration
public void SetBlockResources(int x, int y, int z, ushort[] resources)
Parameter
| Typ | Name | Beschreibung |
|---|---|---|
| System.Int32 | x | X-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | y | Y-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.Int32 | z | Z-Anteil der Koordinate des Blocks innerhalb des Chunks |
| System.UInt16[] | resources | Ein |
Ereignisse
Changed
Deklaration
public event Action<IChunkColumn, IChunk, int> Changed
Ereignistyp
| Typ | Beschreibung |
|---|---|
| Action<IChunkColumn, IChunk, System.Int32> |