Class OccupancyUtils
Contains public functions related to the occupancy system.
Inheritance
System.Object
OccupancyUtils
Assembly: Eco.Gameplay.dll
Syntax
public static class OccupancyUtils : Object
Methods
GetOccupancyUnavailableBlocks(IEnumerable<BlockOccupancy>, Vector3i, Quaternion, Type[])
Check if a space (defined by occupancy, position and rotation) is empty or occupied.
Returns all block positions(not wrapped) that are blocking the occupancy.
Called when player is trying to place an object.
blockers
represents the block types that can block the placement of an object (e.g. water, solid ground, etc.).
Declaration
public static IEnumerable<Vector3i> GetOccupancyUnavailableBlocks(IEnumerable<BlockOccupancy> occupancy, Vector3i position, Quaternion rotation, Type[] blockers = null)
Parameters
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<Vector3i> |
|
GroundBelow(WorldObject)
Declaration
public static IEnumerable<Vector3i> GroundBelow(this WorldObject obj)
Parameters
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<Vector3i> |
|
GroundBelow(OccupancyInfo, Vector3i, Quaternion)
Returns positions of ground blocks below the occupancy blocks that have Y offset of 0,
if occupancy contains BuildingWorldObjectBlock types only return ground blocks below them
Declaration
public static IEnumerable<Vector3i> GroundBelow(OccupancyInfo occupancyInfo, Vector3i position, Quaternion rotation)
Parameters
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<Vector3i> |
|
IsBlockAvailable(WrappedWorldPosition3i)
Declaration
public static bool IsBlockAvailable(WrappedWorldPosition3i blockPosition)
Parameters
Returns
Type |
Description |
System.Boolean |
|
IsBlockAvailable(WrappedWorldPosition3i, Type[])
Declaration
public static bool IsBlockAvailable(WrappedWorldPosition3i blockPosition, Type[] blockers)
Parameters
Returns
Type |
Description |
System.Boolean |
|
IsBlockAvailable(Block)
Declaration
public static bool IsBlockAvailable(Block block)
Parameters
Type |
Name |
Description |
Block |
block |
|
Returns
Type |
Description |
System.Boolean |
|
IsBlockOccupied(Vector3i)
Declaration
public static bool IsBlockOccupied(Vector3i blockPosition)
Parameters
Type |
Name |
Description |
Vector3i |
blockPosition |
|
Returns
Type |
Description |
System.Boolean |
|
LocalToWorld(WorldObject, Ray)
Declaration
public static Ray LocalToWorld(this WorldObject obj, Ray offset)
Parameters
Returns
LocalToWorld(WorldObject, Vector3i)
Declaration
public static Vector3i LocalToWorld(this WorldObject obj, Vector3i offset)
Parameters
Returns
ToWorldPositions(Vector3i, IEnumerable<BlockOccupancy>, Quaternion)
Declaration
public static List<Vector3i> ToWorldPositions(Vector3i position, IEnumerable<BlockOccupancy> occupancy, Quaternion rotation)
Parameters
Returns
Type |
Description |
System.Collections.Generic.List<Vector3i> |
|