Class WorldPosition3i
Inheritance
System.Object
WorldPosition3i
Implements
System.IComparable
System.IComparable<System.Int32>
Assembly: Eco.Shared.dll
Syntax
public sealed class WorldPosition3i : ValueType, IComparable, IComparable<int>, IEquatable<WorldPosition3i>
Constructors
WorldPosition3i(Vector3i)
Declaration
public WorldPosition3i(Vector3i vec)
Parameters
WorldPosition3i(Int32, Int32)
Declaration
public WorldPosition3i(int x, int z)
Parameters
| Type |
Name |
Description |
| System.Int32 |
x |
|
| System.Int32 |
z |
|
WorldPosition3i(Int32, Int32, Int32)
Declaration
public WorldPosition3i(int x, int y, int z)
Parameters
| Type |
Name |
Description |
| System.Int32 |
x |
|
| System.Int32 |
y |
|
| System.Int32 |
z |
|
Fields
Invalid
Declaration
public static readonly WorldPosition3i Invalid
Field Value
MaxSupportedWorldHeight
Declaration
public const int MaxSupportedWorldHeight = 320
Field Value
| Type |
Description |
| System.Int32 |
|
MaxWorldHeightForCurrentWorldSize
Declaration
public static int MaxWorldHeightForCurrentWorldSize
Field Value
| Type |
Description |
| System.Int32 |
|
MaxWorldHeightInChunkPosition
Declaration
public const int MaxWorldHeightInChunkPosition = 32
Field Value
| Type |
Description |
| System.Int32 |
|
Properties
A2DIndex
Declaration
public int A2DIndex { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
IsValid
Declaration
public bool IsValid { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
MaxChunkY
Declaration
public static int MaxChunkY { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
X
Declaration
public int X { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
XZ
Declaration
public Vector2i XZ { get; }
Property Value
Y
Declaration
public int Y { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Z
Declaration
public int Z { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Methods
Add(Vector2i)
Declaration
public WorldPosition3i Add(Vector2i dir)
Parameters
Returns
Add(Int32, Int32)
Declaration
public WorldPosition3i Add(int x, int z)
Parameters
| Type |
Name |
Description |
| System.Int32 |
x |
|
| System.Int32 |
z |
|
Returns
AddX(Int32)
Declaration
public WorldPosition3i AddX(int val)
Parameters
| Type |
Name |
Description |
| System.Int32 |
val |
|
Returns
AddZ(Int32)
Declaration
public WorldPosition3i AddZ(int val)
Parameters
| Type |
Name |
Description |
| System.Int32 |
val |
|
Returns
ClampAndCast(Vector3i)
Declaration
public static WorldPosition3i ClampAndCast(Vector3i pos)
Parameters
Returns
CompareTo(Int32)
Declaration
public int CompareTo(int value)
Parameters
| Type |
Name |
Description |
| System.Int32 |
value |
|
Returns
| Type |
Description |
| System.Int32 |
|
CompareTo(Object)
Declaration
public int CompareTo(object value)
Parameters
| Type |
Name |
Description |
| System.Object |
value |
|
Returns
| Type |
Description |
| System.Int32 |
|
Distance(WorldPosition3i, WorldPosition3i)
Declaration
public static float Distance(WorldPosition3i a, WorldPosition3i b)
Parameters
Returns
| Type |
Description |
| System.Single |
|
DistanceSq(WorldPosition3i, WorldPosition3i)
Declaration
public static int DistanceSq(WorldPosition3i a, WorldPosition3i b)
Parameters
Returns
| Type |
Description |
| System.Int32 |
|
Equals(WorldPosition3i)
Declaration
public bool Equals(WorldPosition3i other)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Equals(Object)
Declaration
public override bool Equals(object other)
Parameters
| Type |
Name |
Description |
| System.Object |
other |
|
Returns
| Type |
Description |
| System.Boolean |
|
FromWrapped(Vector3i)
Creates WorldPosition3i from pre-wrapped position. Be careful when use this method, if used with unwrapped value may return wrong position.
Declaration
public static WorldPosition3i FromWrapped(Vector3i wrapped)
Parameters
Returns
FromWrapped(Int32, Int32, Int32)
Creates WorldPosition3i from pre-wrapped position. Be careful when use this method, if used with unwrapped value may return wrong position.
Declaration
public static WorldPosition3i FromWrapped(int x, int y, int z)
Parameters
| Type |
Name |
Description |
| System.Int32 |
x |
|
| System.Int32 |
y |
|
| System.Int32 |
z |
|
Returns
GetDelta(WorldPosition3i, WorldPosition3i)
Declaration
public static Vector3i GetDelta(WorldPosition3i to, WorldPosition3i from)
Parameters
Returns
GetHashCode()
Declaration
public override int GetHashCode()
Returns
| Type |
Description |
| System.Int32 |
|
Initialize(Vector3i)
Declaration
public static void Initialize(Vector3i worldSize)
Parameters
| Type |
Name |
Description |
| Vector3i |
worldSize |
|
InitWithHeight(Int32)
Initialize world height. Server does this from configs, and client reuses same method when receiving chunk data from server
Declaration
public static void InitWithHeight(int sizeY)
Parameters
| Type |
Name |
Description |
| System.Int32 |
sizeY |
|
NeighborsXZ()
Declaration
public IEnumerable<WorldPosition3i> NeighborsXZ()
Returns
SpiralOutXZIter(Int32)
Declaration
public IEnumerable<WorldPosition3i> SpiralOutXZIter(int size)
Parameters
| Type |
Name |
Description |
| System.Int32 |
size |
|
Returns
ToString()
Declaration
public override string ToString()
Returns
| Type |
Description |
| System.String |
|
TryAddY(Int32, out WorldPosition3i)
Declaration
public bool TryAddY(int val, out WorldPosition3i newPos)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
TryCreate(Vector3i, out WorldPosition3i)
Declaration
public static bool TryCreate(Vector3i pos, out WorldPosition3i worldPosition)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
TryCreate(Int32, Int32, Int32, out WorldPosition3i)
Declaration
public static bool TryCreate(int x, int y, int z, out WorldPosition3i worldPosition)
Parameters
| Type |
Name |
Description |
| System.Int32 |
x |
|
| System.Int32 |
y |
|
| System.Int32 |
z |
|
| WorldPosition3i |
worldPosition |
|
Returns
| Type |
Description |
| System.Boolean |
|
TryCreate(Vector3, out WorldPosition3i)
Declaration
public static bool TryCreate(Vector3 pos, out WorldPosition3i worldPosition)
Parameters
| Type |
Name |
Description |
| System.Numerics.Vector3 |
pos |
|
| WorldPosition3i |
worldPosition |
|
Returns
| Type |
Description |
| System.Boolean |
|
TryCreateWrapped(Vector3i, out WorldPosition3i)
Tries to create WorldPosition3i from pre-wrapped position, but with potentially out-of-world-grid-bounds Y. When used with unwrapped X and Z will result in invalid position.
Declaration
public static bool TryCreateWrapped(Vector3i wrapped, out WorldPosition3i worldPosition)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
TryCreateWrapped(Int32, Int32, Int32, out WorldPosition3i)
Tries to create WorldPosition3i from pre-wrapped position, but with potentially out-of-world-grid-bounds Y. When used with unwrapped X and Z will result in invalid position.
Declaration
public static bool TryCreateWrapped(int wrappedX, int y, int wrappedZ, out WorldPosition3i worldPosition)
Parameters
| Type |
Name |
Description |
| System.Int32 |
wrappedX |
|
| System.Int32 |
y |
|
| System.Int32 |
wrappedZ |
|
| WorldPosition3i |
worldPosition |
|
Returns
| Type |
Description |
| System.Boolean |
|
WorldXZIter(Int32)
Declaration
public static IEnumerable<WorldPosition3i> WorldXZIter(int y = 0)
Parameters
| Type |
Name |
Description |
| System.Int32 |
y |
|
Returns
X_Z()
Declaration
public WorldPosition3i X_Z()
Returns
X_Z(Int32)
Declaration
public WorldPosition3i X_Z(int y)
Parameters
| Type |
Name |
Description |
| System.Int32 |
y |
|
Returns
XZFullNeighbors(out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i)
Get all neighbors available for pathfinding
Declaration
public void XZFullNeighbors(out WorldPosition3i n, out WorldPosition3i ne, out WorldPosition3i e, out WorldPosition3i se, out WorldPosition3i s, out WorldPosition3i sw, out WorldPosition3i w, out WorldPosition3i nw)
Parameters
XZJumpNeighbors(out WorldPosition3i, out WorldPosition3i, out WorldPosition3i, out WorldPosition3i)
Jump is only allowed in 4 directions from one 3x3 block to another. This returns all four neighbors to jump
Declaration
public void XZJumpNeighbors(out WorldPosition3i n, out WorldPosition3i e, out WorldPosition3i s, out WorldPosition3i w)
Parameters
XZNeighbors()
Declaration
public WorldPosition3i[] XZNeighbors()
Returns
Operators
Equality(WorldPosition3i, WorldPosition3i)
Declaration
public static bool operator ==(WorldPosition3i a, WorldPosition3i b)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Explicit(Vector3i to WorldPosition3i)
Declaration
public static explicit operator WorldPosition3i(Vector3i w)
Parameters
Returns
Explicit(WorldPosition3i to Vector2)
Declaration
public static explicit operator Vector2(WorldPosition3i w)
Parameters
Returns
Explicit(WorldPosition3i to Vector2i)
Declaration
public static explicit operator Vector2i(WorldPosition3i w)
Parameters
Returns
Explicit(WorldPosition3i to Vector3i)
Declaration
public static explicit operator Vector3i(WorldPosition3i w)
Parameters
Returns
Explicit(WorldPosition3i to Int32)
Declaration
public static explicit operator int (WorldPosition3i vec)
Parameters
Returns
| Type |
Description |
| System.Int32 |
|
Explicit(WorldPosition3i to Vector3)
Declaration
public static explicit operator Vector3(WorldPosition3i w)
Parameters
Returns
| Type |
Description |
| System.Numerics.Vector3 |
|
Explicit(Int32 to WorldPosition3i)
Declaration
public static explicit operator WorldPosition3i(int i)
Parameters
| Type |
Name |
Description |
| System.Int32 |
i |
|
Returns
Inequality(WorldPosition3i, WorldPosition3i)
Declaration
public static bool operator !=(WorldPosition3i a, WorldPosition3i b)
Parameters
Returns
| Type |
Description |
| System.Boolean |
|
Implements
System.IComparable
System.IComparable<>
System.IEquatable<>
Extension Methods