Files
LuaCsForBarotraumaEP/Barotrauma/BarotraumaShared/SharedSource/Networking/BanList.cs
Juan Pablo Arce 3f2c843247 Unstable v0.19.3.0
2022-09-02 15:10:56 -03:00

45 lines
1.1 KiB
C#

#nullable enable
using System;
using System.Collections.Generic;
using System.Linq;
namespace Barotrauma.Networking
{
#warning TODO: turn this into INetSerializableStruct
partial class BannedPlayer
{
public readonly string Name;
public readonly Either<Address, AccountId> AddressOrAccountId;
public readonly string Reason;
public DateTime? ExpirationTime;
public readonly UInt32 UniqueIdentifier;
}
partial class BanList
{
private readonly List<BannedPlayer> bannedPlayers;
public IReadOnlyList<BannedPlayer> BannedPlayers => bannedPlayers;
public IEnumerable<string> BannedNames
{
get { return bannedPlayers.Select(bp => bp.Name); }
}
public IEnumerable<Either<Address, AccountId>> BannedAddresses
{
get { return bannedPlayers.Select(bp => bp.AddressOrAccountId); }
}
partial void InitProjectSpecific();
public BanList()
{
bannedPlayers = new List<BannedPlayer>();
InitProjectSpecific();
}
}
}