Show / Hide Table of Contents

Class UserManager

Singleton instance containing all the users in the game, logged in or not.

Inheritance
System.Object
UserManager
Implements
ICategory
INamed
IController
IViewController
IHasUniversalID
IWorkerPlugin
IServerPlugin
IDisplayablePlugin
IGUIPlugin
IHasDisplayTabs
IDisplayTab
IConfigurablePlugin
IEditablePlugin
ISaveablePlugin
IInitializablePlugin
System.IDisposable
IThreadedPlugin
IShutdownablePlugin
Namespace: Eco.Gameplay.Players
Assembly: Eco.Gameplay.dll
Syntax
public sealed class UserManager : Simulation, ICategory, INamed, IController, IViewController, IHasUniversalID, IWorkerPlugin, IServerPlugin, IDisplayablePlugin, IGUIPlugin, IHasDisplayTabs, IDisplayTab, IConfigurablePlugin, IEditablePlugin, ISaveablePlugin, IInitializablePlugin, IDisposable, IThreadedPlugin, IShutdownablePlugin

Constructors

UserManager()

Declaration
public UserManager()

Fields

Initializer

Declaration
public static readonly Initializer Initializer
Field Value
Type Description
Initializer

ManagerInitializedEvent

Declaration
public static ThreadSafeAction ManagerInitializedEvent
Field Value
Type Description
ThreadSafeAction

MinUserNameLength

Minimum User name length accepted, different from other Registrars value, see RegistrarConstants

Declaration
public static readonly int MinUserNameLength
Field Value
Type Description
System.Int32

NewUserJoinedEvent

Declaration
public static ThreadSafeAction<User> NewUserJoinedEvent
Field Value
Type Description
ThreadSafeAction<User>

OnlineUsers

Declaration
public static ConcurrentHashSet<User> OnlineUsers
Field Value
Type Description
ConcurrentCollections.ConcurrentHashSet<User>

OnUserLoggedIn

Declaration
public static ThreadSafeAction<User> OnUserLoggedIn
Field Value
Type Description
ThreadSafeAction<User>

OnUserLoggedOut

Declaration
public static ThreadSafeAction<User> OnUserLoggedOut
Field Value
Type Description
ThreadSafeAction<User>

UserRegistrar

Declaration
public Registrar<User> UserRegistrar
Field Value
Type Description
Registrar<User>

Properties

Admins

Declaration
public static IEnumerable<User> Admins { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<User>

Config

Declaration
public static UserConfig Config { get; }
Property Value
Type Description
UserConfig

ContainedType

Declaration
public Type ContainedType { get; }
Property Value
Type Description
System.Type

Entries

Declaration
public IEnumerable<INamed> Entries { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<INamed>

MarkedUpName

Declaration
public LocString MarkedUpName { get; }
Property Value
Type Description
LocString

Name

Declaration
public string Name { get; set; }
Property Value
Type Description
System.String

Obj

Declaration
public static UserManager Obj { get; }
Property Value
Type Description
UserManager

OnlineUserCount

Declaration
public int OnlineUserCount { get; }
Property Value
Type Description
System.Int32

OnPlayerDefaultsChanged

Declaration
public static Action<User> OnPlayerDefaultsChanged { get; set; }
Property Value
Type Description
System.Action<User>

OnPlayerSkillsChanged

Declaration
public static Action<User> OnPlayerSkillsChanged { get; set; }
Property Value
Type Description
System.Action<User>

OnPlayerStatsChanged

Declaration
public static Action<User> OnPlayerStatsChanged { get; set; }
Property Value
Type Description
System.Action<User>

ParamChanged

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

PluginConfig

Declaration
public IPluginConfig PluginConfig { get; }
Property Value
Type Description
IPluginConfig

RegistrarName

Declaration
public LocString RegistrarName { get; }
Property Value
Type Description
LocString

RequireAuthentication

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

ShouldKickAFKUsers

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

TimeRequiredForAFKSeconds

Declaration
public float TimeRequiredForAFKSeconds { get; }
Property Value
Type Description
System.Single

TotalUserCount

Declaration
public int TotalUserCount { get; }
Property Value
Type Description
System.Int32

TwitchStreamerCount

Total number of Twitch enabled users currently logged into the server.

Declaration
public static int TwitchStreamerCount { get; }
Property Value
Type Description
System.Int32

TwitchUsers

System.Linq.Enumerable containing all currently logged in users with Twitch integration enabled.

Declaration
public static IEnumerable<User> TwitchUsers { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<User>

Usernames

Declaration
public static IEnumerable<string> Usernames { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<System.String>

Users

Declaration
public static IEnumerable<User> Users { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<User>

Methods

AuthorizeClientConnection(StrangeUser)

Checks if an incoming StrangeUser instance is authorized to connect.

Declaration
public bool AuthorizeClientConnection(StrangeUser session)
Parameters
Type Name Description
StrangeCloud.Service.Client.Contracts.StrangeUser session
Returns
Type Description
System.Boolean

CreateNewUser(StrangeUser, String)

Declaration
public User CreateNewUser(StrangeUser strangeUser, string username)
Parameters
Type Name Description
StrangeCloud.Service.Client.Contracts.StrangeUser strangeUser
System.String username
Returns
Type Description
User

Dispose()

Declaration
public void Dispose()

DoWork(CancellationToken)

Declaration
public Task DoWork(CancellationToken token)
Parameters
Type Name Description
System.Threading.CancellationToken token
Returns
Type Description
System.Threading.Tasks.Task

FindUser(String)

Declaration
public static User FindUser(string anything)
Parameters
Type Name Description
System.String anything
Returns
Type Description
User

FindUser(String, out UserIdType)

Declaration
public static User FindUser(string anything, out UserIdType type)
Parameters
Type Name Description
System.String anything
UserIdType type
Returns
Type Description
User

FindUserByAccount(StrangeUser)

Declaration
public static User FindUserByAccount(StrangeUser account)
Parameters
Type Name Description
StrangeCloud.Service.Client.Contracts.StrangeUser account
Returns
Type Description
User

FindUserById(Guid, String, String)

Declaration
public static User FindUserById(Guid strangeId, string steamId, string slgId)
Parameters
Type Name Description
System.Guid strangeId
System.String steamId
System.String slgId
Returns
Type Description
User

FindUserByID(Int32)

Declaration
public static User FindUserByID(int handle)
Parameters
Type Name Description
System.Int32 handle
Returns
Type Description
User

FindUserByName(String)

Declaration
public static User FindUserByName(string username)
Parameters
Type Name Description
System.String username
Returns
Type Description
User

FindUserBySlgId(String)

Declaration
public static User FindUserBySlgId(string slgId)
Parameters
Type Name Description
System.String slgId
Returns
Type Description
User

FindUserBySteamId(String)

Declaration
public static User FindUserBySteamId(string steamId)
Parameters
Type Name Description
System.String steamId
Returns
Type Description
User

FindUserByStrangeId(Guid)

Declaration
public static User FindUserByStrangeId(Guid strangeId)
Parameters
Type Name Description
System.Guid strangeId
Returns
Type Description
User

FindUserByStrangeId(String)

Declaration
public static User FindUserByStrangeId(string strangeId)
Parameters
Type Name Description
System.String strangeId
Returns
Type Description
User

GetById(Int32)

Declaration
public IHasID GetById(int id)
Parameters
Type Name Description
System.Int32 id
Returns
Type Description
IHasID

GetByName(String)

Declaration
public IHasID GetByName(string name)
Parameters
Type Name Description
System.String name
Returns
Type Description
IHasID

GetCategory()

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

GetDisplayText()

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

GetEditObject()

Declaration
public object GetEditObject()
Returns
Type Description
System.Object

GetOrCreateUser(StrangeUser, String)

Declaration
public static User GetOrCreateUser(StrangeUser strangeUser, string username)
Parameters
Type Name Description
StrangeCloud.Service.Client.Contracts.StrangeUser strangeUser
System.String username
Returns
Type Description
User

GetOrRelocateSpawnPosition()

Get or create a new spawn point.

Declaration
public static Vector3 GetOrRelocateSpawnPosition()
Returns
Type Description
System.Numerics.Vector3

GetStatus()

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

Initialize(TimedTask)

Declaration
public void Initialize(TimedTask timer)
Parameters
Type Name Description
TimedTask timer

MarkUpName(String, Nullable<LocString>)

Declaration
public static LocString MarkUpName(string username, Nullable<LocString> defaultVal = null)
Parameters
Type Name Description
System.String username
System.Nullable<LocString> defaultVal
Returns
Type Description
LocString

OnEditObjectChanged(Object, String)

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

RefreshUserData()

Declaration
public void RefreshUserData()

ResetUser(User)

Declaration
public void ResetUser(User user)
Parameters
Type Name Description
User user

Run()

Declaration
public void Run()

SaveAll()

Declaration
public void SaveAll()

ShutdownAsync()

Declaration
public Task ShutdownAsync()
Returns
Type Description
System.Threading.Tasks.Task

ToString()

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

UILink(String, Nullable<LocString>)

Declaration
public static LocString UILink(string username, Nullable<LocString> defaultVal = null)
Parameters
Type Name Description
System.String username
System.Nullable<LocString> defaultVal
Returns
Type Description
LocString

UserLoggedOut(User)

Declaration
public void UserLoggedOut(User user)
Parameters
Type Name Description
User user

WithTempUserManager(Action)

Creates temp user management for time while action is running. Mainly for testing purposes.

Declaration
public static void WithTempUserManager(Action action)
Parameters
Type Name Description
System.Action action

action to be executed with temp legislation.

Implements

ICategory
INamed
IController
IViewController
IHasUniversalID
IWorkerPlugin
IServerPlugin
IDisplayablePlugin
IGUIPlugin
IHasDisplayTabs
IDisplayTab
IConfigurablePlugin
IEditablePlugin
ISaveablePlugin
IInitializablePlugin
System.IDisposable
IThreadedPlugin
IShutdownablePlugin

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
☀
☾