mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-15 03:30:53 +01:00
45 lines
1.2 KiB
C#
45 lines
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Robust.Shared.GameStates;
|
|
using Robust.Shared.Network;
|
|
using Robust.Shared.Players;
|
|
using Robust.Shared.ViewVariables;
|
|
|
|
namespace Robust.Client.Player
|
|
{
|
|
public interface IPlayerManager : Shared.Players.ISharedPlayerManager
|
|
{
|
|
new IEnumerable<ICommonSession> Sessions { get; }
|
|
|
|
[ViewVariables]
|
|
IReadOnlyDictionary<NetUserId, ICommonSession> SessionsDict { get; }
|
|
|
|
[ViewVariables]
|
|
LocalPlayer? LocalPlayer { get; }
|
|
|
|
/// <summary>
|
|
/// Invoked after LocalPlayer is changed
|
|
/// </summary>
|
|
event Action<LocalPlayerChangedEventArgs>? LocalPlayerChanged;
|
|
|
|
event EventHandler PlayerListUpdated;
|
|
|
|
void Initialize();
|
|
void Startup();
|
|
void Shutdown();
|
|
|
|
void ApplyPlayerStates(IReadOnlyCollection<PlayerState> list);
|
|
}
|
|
|
|
public sealed class LocalPlayerChangedEventArgs : EventArgs
|
|
{
|
|
public readonly LocalPlayer? OldPlayer;
|
|
public readonly LocalPlayer? NewPlayer;
|
|
public LocalPlayerChangedEventArgs(LocalPlayer? oldPlayer, LocalPlayer? newPlayer)
|
|
{
|
|
OldPlayer = oldPlayer;
|
|
NewPlayer = newPlayer;
|
|
}
|
|
}
|
|
}
|