IW4M-Admin/SharedLibraryCore/Interfaces/IGameServer.cs
2022-10-23 13:32:09 -05:00

23 lines
821 B
C#

using System;
using System.Threading.Tasks;
using Data.Models;
using SharedLibraryCore.Database.Models;
namespace SharedLibraryCore.Interfaces
{
public interface IGameServer
{
/// <summary>
/// kicks target on behalf of origin for given reason
/// </summary>
/// <param name="reason">reason client is being kicked</param>
/// <param name="target">client to kick</param>
/// <param name="origin">source of kick action</param>
/// <param name="previousPenalty">previous penalty the kick is occuring for (if applicable)</param>
/// <returns></returns>
Task Kick(string reason, EFClient target, EFClient origin, EFPenalty previousPenalty = null);
DateTime? MatchEndTime { get; }
DateTime? MatchStartTime { get; }
}
}