2022-10-23 13:32:09 -05:00
|
|
|
|
using System;
|
|
|
|
|
using System.Threading.Tasks;
|
2021-03-22 11:09:25 -05:00
|
|
|
|
using Data.Models;
|
2020-11-17 18:24:54 -06:00
|
|
|
|
using SharedLibraryCore.Database.Models;
|
|
|
|
|
|
|
|
|
|
namespace SharedLibraryCore.Interfaces
|
|
|
|
|
{
|
|
|
|
|
public interface IGameServer
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
2022-01-26 10:32:16 -06:00
|
|
|
|
/// kicks target on behalf of origin for given reason
|
2020-11-17 18:24:54 -06:00
|
|
|
|
/// </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>
|
2022-10-23 13:32:09 -05:00
|
|
|
|
Task Kick(string reason, EFClient target, EFClient origin, EFPenalty previousPenalty = null);
|
|
|
|
|
DateTime? MatchEndTime { get; }
|
|
|
|
|
DateTime? MatchStartTime { get; }
|
2020-11-17 18:24:54 -06:00
|
|
|
|
}
|
2022-10-23 13:32:09 -05:00
|
|
|
|
}
|