Namespace Eco.Gameplay.Utils
Classes
AttributeCache<T>
AuthUtils
Static utility methods for working with the authorization component.
BlockUtils
ClientCanSelectAndAddAttribute
ClientSetViewExtensions
CommandsUtil
ConfirmDeleteAttribute
ControllerUtils
CountdownExtensions
Functions that modify immutable countdowns to return a new countdown.
DateTimeExtensions
DateTimeUtils
DeltaControllerHashSet<T>
Set of controllers supporting delta updates. It need to register all consumers (clients) who work with set (i.e. when Player login/logout) and then regular callSyncDeltas() to sync updates and initial states for new consumers.
DeltaControllerHashSetBase
Base class factored out just so we can call an RPC (because RPCs dont work on generic types without it)
EditOptions
FloatExtensions
GameplayDebugUtils
GameSet
IHasEditablePropertiesExtensions
Invitations
ItemTracker
LaborUtils
ListFactory
MessagingUtils
NotificationsUtils
PartitionedData<TPartition, TEntry>
Partitioned data is used for high update frequency data such as Chat and Notifications. For each new day, a new data partition will be created and since each individual data partition is IStorage, they are saved separately and that heavily enhances serialization speed, because only the active partition needs to be saved on updates as the previous ones are locked.
PhysicsDebugCommands
Commands that are related to debugging physics and making failure tests.
Picker
PickerObject
A picker that targets objects. Contract clauses use this to determine the target of their operation.
PickerProperty
A picker that targets a property. Contract clauses use this to determine the target of their operation.
PickerTracker
PickerUtils
PlayerUseTracking
PopupEditAttribute
Tag properties with this to allow clients to call an 'EditProperty' RPC to open a popup that edits them.
PreservedValue
PreservedValue.ValueRequester
ProfanityUtils
Utility functions for interacting with Eco's profanity check system.
RecipeUtils
ResultExtensions
RouteManagerUtil
Route Manager helper methods specific to Eco.Gameplay.
SimpleEntry
SimpleEntry.NamingOptions
SingleEditingUser
SpawnLocationUtil
StackExtensions
SyncedString
SyncedStringList
TestUtils
TimedSet<T>
TooltipUtil
UserCommands
XMLUtils
Interfaces
IDataPartition<T>
This interface provides a minimalistic list interface and acts as a unified base for both the partitioned data and each individual data partition.
IHasClientControlledContainers
IHasCreationTime
When creating an entity to be used with PartitionedData<TPartition, TEntry> it needs to have a creation time entry to determine if a new data partition should be created alongside a new entry.
IHasEditableProperties
IHasTeleportOption
IPlayerUseTracking
Interface for things that get callbacks and track the using players (world objects).
IRemovableEntry
Any entry that implement that should be able to remove it from its collection. By example can be used to remove directly entries from some registrar.
ISingleEditingUser
This is used when we want an object to be edited by only one user at one time (but can be viewed by multiple users concurrently which we add to the UsingPlayers list).
IStoredDataPartition<T>
A minimalistic list interface with thread safe entries list for storage purposes.