public void OnReferencingTeam(Events.General.ReferencingTeamEventArgs ev) { Log.Debug($"Forceteam: {ev.ForceTeam}\nIsAllowed: {ev.IsAllowed}\nTeamName: {ev.Team.Name}", this.plugin.Config.Debug); if (ev.IsAllowed == false) { return; } if (ev.ForceTeam) { MainPlugin.Singleton.EventHandlers.chosenTeam = ev.Team; MainPlugin.Singleton.EventHandlers.HasReference = true; MainPlugin.Singleton.EventHandlers.ForcedTeam = true; } else { Log.Debug("Next Known Spawn is " + Respawn.NextKnownTeam, MainPlugin.Singleton.Config.Debug); if (MainPlugin.Singleton.EventHandlers.random.Next(0, 100) <= ev.Team.Chance) { Log.Debug("Next Known Chosen Team is " + MainPlugin.Singleton.EventHandlers.chosenTeam.Name, MainPlugin.Singleton.Config.Debug); MainPlugin.Singleton.EventHandlers.chosenTeam = ev.Team; MainPlugin.Singleton.EventHandlers.HasReference = true; } else { MainPlugin.Singleton.EventHandlers.chosenTeam = null; } } }
public bool Execute(ArraySegment <string> arguments, ICommandSender sender, out string response) { Player ply = Player.Get(sender as CommandSender); if (ply.CheckPermission("ATC.forcenextteam")) { if (arguments.Count <= 0) { response = "<color=red>You need to add the team name.</color>\nUsage: fnt teamname"; return(false); } Teams team = null; foreach (var tm in MainPlugin.Singleton.Config.Teams) { if (tm.Name == arguments.At(0)) { team = tm; } } if (team == null) { response = "<color=red>The name of the team isn't valid.</color> Teams:"; foreach (var tm in MainPlugin.Singleton.Config.Teams) { response += "\n" + tm.Name; } return(false); } var handler = new Events.General.ReferencingTeamEventArgs(MainPlugin.Singleton.EventHandlers.chosenTeam) { Team = team, ForceTeam = true }; handler.StartInvoke(); response = $"<color=green> Done, {arguments.At(0)} team forced"; return(true); } response = "<color=red>You dont have permission for this command</color>"; return(false); }