public static void UnBanPlayer(ulong steamId) { CoopKick.KickedPlayer kickedPlayer = CoopKick.Instance.kickedSteamIds.FirstOrDefault((CoopKick.KickedPlayer k) => k.SteamId == steamId); if (kickedPlayer != null) { CoopKick.Instance.kickedSteamIds.Remove(kickedPlayer); CoopKick.SaveList(); } }
public static bool UnBanPlayer(string name) { CoopKick.KickedPlayer kickedPlayer = CoopKick.Instance.kickedSteamIds.FirstOrDefault((CoopKick.KickedPlayer k) => k.Name == name); if (kickedPlayer != null) { CoopKick.Instance.kickedSteamIds.Remove(kickedPlayer); CoopKick.SaveList(); return(true); } return(false); }
private void AddBannedPlayerRow(CoopKick.KickedPlayer kicked) { BannedPlayerListRow bannedPlayerListRow = UnityEngine.Object.Instantiate <BannedPlayerListRow>(this._rowPrefab); bannedPlayerListRow.transform.parent = this._grid.transform; bannedPlayerListRow.transform.localPosition = Vector3.zero; bannedPlayerListRow.transform.localScale = Vector3.one; bannedPlayerListRow._nameLabel.text = kicked.Name; bannedPlayerListRow._durationLabel.text = ((kicked.BanEndTime != 0L) ? this.GetRemainingTime(kicked.BanEndTime) : "permanent"); if (BoltNetwork.isServer) { EventDelegate eventDelegate = new EventDelegate(this, "UnBan"); eventDelegate.parameters[0] = new EventDelegate.Parameter(kicked.SteamId); bannedPlayerListRow._unbanButton.onClick.Add(eventDelegate); } }
/// <summary> /// Bans the player for the specified reason and duration /// </summary> /// <param name="reason"></param> /// <param name="duration"></param> public void Ban(string reason, TimeSpan duration = default) { if (!IsBanned) { CoopKick.KickedPlayer kickedPlayer = new CoopKick.KickedPlayer { Name = Name, SteamId = steamId, BanEndTime = duration.TotalMinutes <= 0 ? 0 : DateTime.UtcNow.ToUnixTimestamp() + (long)duration.TotalMinutes }; CoopKick.Instance.kickedSteamIds.Add(kickedPlayer); CoopKick.SaveList(); if (IsConnected) { Kick(reason); } } }