Show / Hide Table of Contents

Class RoomData

Inheritance
System.Object
RoomData
Implements
IEditablePluginData
ISimplePluginData
IStorage
ISerializable
Namespace: Eco.Gameplay.Rooms
Assembly: Eco.Gameplay.dll
Syntax
[ChatCommandHandler]
public class RoomData : Singleton<RoomData>, IEditablePluginData, ISimplePluginData, IStorage, ISerializable

Constructors

RoomData()

Declaration
public RoomData()

Fields

OnRoomsChanged

Declaration
public static ThreadSafeAction<IEnumerable<Room>> OnRoomsChanged
Field Value
Type Description
ThreadSafeAction<System.Collections.Generic.IEnumerable<Room>>

Properties

Atmosphere

Declaration
public Atmosphere Atmosphere { get; set; }
Property Value
Type Description
Atmosphere

DidPostFixSweep

Declaration
public bool DidPostFixSweep { get; set; }
Property Value
Type Description
System.Boolean

EditObject

Declaration
public object EditObject { get; set; }
Property Value
Type Description
System.Object

OnQueuedEvent

Declaration
public static AutoResetEvent OnQueuedEvent { get; }
Property Value
Type Description
System.Threading.AutoResetEvent

ParamChanged

Declaration
public ThreadSafeAction<object, string> ParamChanged { get; set; }
Property Value
Type Description
ThreadSafeAction<System.Object, System.String>

RoomConfig

Declaration
public RoomConfig RoomConfig { get; }
Property Value
Type Description
RoomConfig

Rooms

Declaration
public ThreadSafeList<Room> Rooms { get; }
Property Value
Type Description
ThreadSafeList<Room>

Methods

GetCategory()

Declaration
public string GetCategory()
Returns
Type Description
System.String

GetDisplayText()

Declaration
public string GetDisplayText()
Returns
Type Description
System.String

GetEmptySpace(Vector3i, User)

Search for an empty space that fits a rectangle with a given size, use user position as initial position.

Declaration
public Vector3i GetEmptySpace(Vector3i size, User user)
Parameters
Type Name Description
Vector3i size
User user
Returns
Type Description
Vector3i

GetEmptySpace(Vector3i, WrappedPosition3i)

Search for an empty space that fits a rectangle with a given size, use given position as initial position.

Declaration
public Vector3i GetEmptySpace(Vector3i size, WrappedPosition3i initialPos)
Parameters
Type Name Description
Vector3i size
WrappedPosition3i initialPos
Returns
Type Description
Vector3i

GetEnclosedRoomForWorldObject(WorldObject)

Returns the room only if all the blocks of the World Object are inside the same room.

Declaration
public Room GetEnclosedRoomForWorldObject(WorldObject worldObject)
Parameters
Type Name Description
WorldObject worldObject
Returns
Type Description
Room

GetNearestRoom(Vector3)

Declaration
public Room GetNearestRoom(Vector3 testPos)
Parameters
Type Name Description
System.Numerics.Vector3 testPos
Returns
Type Description
Room

GetRoom(Vector3i)

Declaration
public Room GetRoom(Vector3i testPos)
Parameters
Type Name Description
Vector3i testPos
Returns
Type Description
Room

GetRoom(WrappedWorldPosition3i)

Declaration
public Room GetRoom(WrappedWorldPosition3i testPos)
Parameters
Type Name Description
WrappedWorldPosition3i testPos
Returns
Type Description
Room

GetRoomById(Int32)

Declaration
public Room GetRoomById(int id)
Parameters
Type Name Description
System.Int32 id
Returns
Type Description
Room

GetRoomsPosAsList()

Declaration
public List<Vector3i> GetRoomsPosAsList()
Returns
Type Description
System.Collections.Generic.List<Vector3i>

GetStatus()

Declaration
public string GetStatus()
Returns
Type Description
System.String

Initialize()

Declaration
public void Initialize()

IsOutside(Vector3i)

Declaration
public bool IsOutside(Vector3i firstPos)
Parameters
Type Name Description
Vector3i firstPos
Returns
Type Description
System.Boolean

OnCreate()

Declaration
public void OnCreate()

OnEditObjectChanged(Object, String)

Declaration
public void OnEditObjectChanged(object o, string param)
Parameters
Type Name Description
System.Object o
System.String param

PosRoomValue(Vector3i)

Declaration
public float PosRoomValue(Vector3i pos)
Parameters
Type Name Description
Vector3i pos
Returns
Type Description
System.Single

QueuePositionsTest(IEnumerable<Vector3i>)

Declaration
public static void QueuePositionsTest(IEnumerable<Vector3i> positions)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<Vector3i> positions

QueueRoomTest(WrappedWorldPosition3i)

Queue up this position to be checked against all Rooms to determine if a Room has changed.

Declaration
public static void QueueRoomTest(WrappedWorldPosition3i pos)
Parameters
Type Name Description
WrappedWorldPosition3i pos

QueueRoomValueRecalculation(Int32)

Queue up this RoomID to recalculate the relevant Room's RoomValue.

Declaration
public static void QueueRoomValueRecalculation(int roomID)
Parameters
Type Name Description
System.Int32 roomID

ScanChangesForRooms()

Declaration
public void ScanChangesForRooms()

SyncRoomCheckerSettings()

Declaration
public void SyncRoomCheckerSettings()

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String

UpdateRoomValues(IEnumerable<Room>)

Declaration
public void UpdateRoomValues(IEnumerable<Room> rooms)
Parameters
Type Name Description
System.Collections.Generic.IEnumerable<Room> rooms

Implements

IEditablePluginData
ISimplePluginData
IStorage
ISerializable

Extension Methods

TagUtils.TagNames(Object, Boolean)
TagUtils.TagDisplayNames(Object, Boolean)
ClientSetViewExtensions.SetClassOfProperty(Object, Player, String, String, Int32)
TypeTooltipExtensions.UILinkGeneric(Object)
☀
☾
In This Article
Back to top
Copyright (c) Strange Loop Games 2021
☀
☾