Example #1
0
 public ScheduledRestart(AdminToolbox plugin)
 {
     this.plugin       = plugin;
     this.enabled      = false;
     this.restartTime  = DateTime.MaxValue;
     scheduledMessages = new Dictionary <int, string>();
 }
Example #2
0
        /// <summary>
        /// Returns a <see cref="AT_LatestReleaseInfo"/> class containing info about the latest GitHub release
        /// </summary>
        public static AT_LatestReleaseInfo GetOnlineInfo(AdminToolbox plugin)
        {
            if (ConfigManager.Manager.Config.GetBoolValue("atb_disable_networking", false) ||
                ConfigManager.Manager.Config.GetBoolValue("admintoolbox_disable_networking", false))
            {
                return(new AT_LatestReleaseInfo(plugin.Details.name, plugin.Details.version, plugin.Details.author, ""));
            }
            string rawResponse = string.Empty;
            string apiURL = "https://api.github.com/repos/Rnen/AdminToolbox/releases/latest";
            string _title = "", _version = "", _author = "", _dllink = "";

            try
            {
                using (UnityWebRequest ww = UnityWebRequest.Get(apiURL))
                {
                    ww.SendWebRequest();
                    DateTime timer = DateTime.Now.AddSeconds(2);
                    while (!ww.isDone || !ww.downloadHandler.isDone && DateTime.Now < timer)
                    {
                    }
                    rawResponse = ww.downloadHandler.text;
                    if (string.IsNullOrEmpty(rawResponse))
                    {
                        throw new Exception();
                    }
                    string FindValue(string key)
                    {
                        plugin.Debug("Searched: " + key);
                        string str = rawResponse.Split(Environment.NewLine.ToCharArray()).Where(s => s.Trim().StartsWith("\"" + key)).FirstOrDefault().Split(new[] { ':' }, 2).Last().Replace("\"", string.Empty).Trim(',').Trim();

                        plugin.Debug("Found: " + str);
                        if (key.ToLower() == "tag_name")
                        {
                            return(str.Split('-').FirstOrDefault());
                        }
                        return(str);
                    }
                    _title   = FindValue("name");
                    _version = FindValue("tag_name");
                    _author  = FindValue("login");
                    _dllink  = FindValue("html_url");                    //FindValue("browser_download_url");
                    if (string.IsNullOrEmpty(_version))
                    {
                        throw new Exception();
                    }
                }
            }
            catch
            {
                plugin.Info(" \n\n - Downloading online version failed, skipping..." + "\n \n");
                return(new AT_LatestReleaseInfo(plugin.Details.name, plugin.Details.version, plugin.Details.author, ""));
            }
            return(new AT_LatestReleaseInfo(_title, _version, _author, _dllink));
        }
Example #3
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            Player           caller   = (sender is Player send) ? send : null;
            Server           server   = PluginManager.Manager.Server;
            const DamageType killType = DamageType.NONE;

            AdminToolbox.AddMissingPlayerVariables();
            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    int playerNum = 0;
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (server.GetPlayers().Count > 1)
                        {
                            if (caller != null && pl.PlayerId == caller.PlayerId || (AdminToolbox.playerdict.ContainsKey(pl.SteamId) && AdminToolbox.playerdict[pl.SteamId].godMode) || pl.GetGodmode() /*|| (caller.GetUserGroup().Permissions < pl.GetUserGroup().Permissions)*/)
                            {
                                continue;
                            }
                        }
                        pl.Kill(killType);
                        playerNum++;
                    }
                    if (caller != null && !string.IsNullOrEmpty(caller.Name) && caller.Name.ToLower() != "server")
                    {
                        plugin.Info(caller.Name + " ran the \"SLAY\" command on: " + playerNum + " players");
                    }
                    return(new string[] { playerNum + " players has been slain!" });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });
                }
                if (myPlayer.TeamRole.Role != Role.SPECTATOR)
                {
                    if (caller != null && !string.IsNullOrEmpty(caller.Name) && caller.Name.ToLower() != "server")
                    {
                        plugin.Info(caller.Name + " ran the \"SLAY\" command on: " + myPlayer.Name);
                    }
                    myPlayer.Kill(killType);
                    return(new string[] { myPlayer.Name + " has been slain!" });
                }
                else
                {
                    return new string[] { myPlayer.Name + " is already dead!" }
                };
            }
            else
            {
                return(new string[] { GetUsage() });
            }
        }
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 1)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    int    playerNum  = -1;
                    Player myTpPlayer = API.GetPlayerFromString.GetPlayer(args[1]);
                    if (myTpPlayer == null)
                    {
                        return(new string[] { "Couldn't find player: " + args[1] });;
                    }
                    Vector pos = myTpPlayer.GetPosition();
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (pl.PlayerId != myTpPlayer.PlayerId)
                        {
                            pl.Teleport(pos, true);
                            playerNum++;
                        }
                    }
                    return(new string[] { "Teleported " + playerNum + " players to " + myTpPlayer.Name });
                }
                Player myPlayer = API.GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });;
                }
                Player myPlayer2 = API.GetPlayerFromString.GetPlayer(args[1]);
                if (myPlayer2 == null)
                {
                    return(new string[] { "Couldn't find player: " + args[1] });;
                }
                if (args[1] != null)
                {
                    myPlayer.Teleport(myPlayer2.GetPosition(), true);
                    return(new string[] { "Teleported: " + myPlayer.Name + " to " + myPlayer2.Name });
                }
                else
                {
                    return new string[] { GetUsage() }
                };
            }
            else
            {
                return new string[] { GetUsage() }
            };
        }
    }
Example #5
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                if (args.Length > 1)
                {
                    if (args[1].ToLower() == "open")
                    {
                        foreach (var item in server.Map.GetDoors())
                        {
                            item.Open = true;
                        }
                        return(new string[] { "Door Opened" });
                    }
                    else if (args[1].ToLower() == "close")
                    {
                        foreach (var item in server.Map.GetDoors())
                        {
                            item.Open = false;
                        }
                        return(new string[] { "Door Closed" });
                    }
                    else if (args[1].ToLower() == "lock")
                    {
                        return(new string[] { "Door Locked" });
                    }
                    else if (args[1].ToLower() == "unlock")
                    {
                        return(new string[] { "Door UnLocked" });
                    }
                    else
                    {
                        return new string[] { GetUsage() }
                    };
                }
                else
                {
                    return new string[] { GetUsage() }
                };
            }
            return(new string[] { GetUsage() });
        }
    }
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 1)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    int    playerNum  = -1;
                    Player myTpPlayer = GetPlayerFromString.GetPlayer(args[1], out myTpPlayer);
                    if (myTpPlayer == null)
                    {
                        return(new string[] { "Couldn't find player: " + args[1] });;
                    }
                    foreach (Player pl in server.GetPlayers())
                    {
                        pl.Teleport(myTpPlayer.GetPosition());
                        playerNum++;
                    }
                    //plugin.Info("Teleported " + playerNum + " players to " + myTpPlayer.Name);
                    return(new string[] { "Teleported " + playerNum + " players to " + myTpPlayer.Name });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });;
                }
                Player myPlayer2 = GetPlayerFromString.GetPlayer(args[1], out myPlayer2);
                if (myPlayer2 == null)
                {
                    return(new string[] { "Couldn't find player: " + args[1] });;
                }
                if (args[1] != null)
                {
                    myPlayer.Teleport(myPlayer2.GetPosition());
                    //plugin.Info("Teleported: " + myPlayer.Name + " to " + myPlayer2.Name /*+ " at " + System.DateTime.Now.ToString()*/);
                    return(new string[] { "Teleported: " + myPlayer.Name + " to " + myPlayer2.Name });
                }
                else
                {
                    return new string[] { GetUsage() }
                };
                //plugin.Info(GetUsage());
            }
            else
            {
                return(new string[] { GetUsage() });
                //plugin.Info(GetUsage());
            }
        }
Example #7
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
            }
            return(new string[] { GetUsage() });
        }
Example #8
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                AdminToolbox.AddMissingPlayerVariables(new System.Collections.Generic.List <Player> {
                    myPlayer
                });
            }
            return(new string[] { GetUsage() });
        }
Example #9
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (AdminToolbox.warpVectors.Count < 1)
            {
                return(new string[] { "No warp points created yet!" });
            }
            string        str  = "\n" + "Warp Points:";
            List <string> list = AdminToolbox.warpVectors.Keys.ToList();

            list.Sort();
            foreach (string i in list)
            {
                str += "\n - " + i;
            }
            return(new string[] { str });
        }
Example #10
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Player caller = (sender is Player send) ? send : null;
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    int playerNum = 0;
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (caller != null && (pl.PlayerId == caller.PlayerId) || (AdminToolbox.playerdict[pl.SteamId].godMode || pl.GetGodmode()) /*|| (caller.GetUserGroup().Permissions < pl.GetUserGroup().Permissions)*/)
                        {
                            continue;
                        }
                        pl.Kill();
                        playerNum++;
                    }
                    return(new string[] { playerNum + " players has been slain!" });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });
                }
                if (myPlayer.TeamRole.Role != Role.SPECTATOR)
                {
                    myPlayer.Kill();
                    return(new string[] { myPlayer + " has been slain!" });
                }
                else
                {
                    return new string[] { myPlayer + " is already dead!" }
                };
            }
            else
            {
                return(new string[] { GetUsage() });
            }
        }
Example #11
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0 && server.GetPlayers().Count > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                string x = "Player info: \n " +
                           "\n Player: " + myPlayer.Name +
                           "\n - SteamID: " + myPlayer.SteamId +
                           "\n - Health: " + myPlayer.GetHealth() +
                           "\n - Role: " + myPlayer.TeamRole.Role +
                           "\n - Server Rank: " + myPlayer.GetRankName() +
                           "\n - AdminToolbox Toggables: " +
                           "\n     - SpectatorOnly: " + AdminToolbox.playerdict[myPlayer.SteamId][0] +
                           "\n     - Godmode: " + AdminToolbox.playerdict[myPlayer.SteamId][1] +
                           "\n     - NoDmg: " + AdminToolbox.playerdict[myPlayer.SteamId][2] +
                           "\n     - BreakDoors: " + AdminToolbox.playerdict[myPlayer.SteamId][3] +
                           "\n     - KeepSettings: " + AdminToolbox.playerdict[myPlayer.SteamId][4] +
                           "\n     - PlayerLockDown: " + AdminToolbox.playerdict[myPlayer.SteamId][5] +
                           "\n     - InstantKill: " + AdminToolbox.playerdict[myPlayer.SteamId][6] +
                           "\n - Stats:" +
                           "\n     - Kills: " + AdminToolbox.playerStats[myPlayer.SteamId][0] +
                           "\n     - TeamKills: " + AdminToolbox.playerStats[myPlayer.SteamId][1] +
                           "\n     - Deaths: " + AdminToolbox.playerStats[myPlayer.SteamId][2] +
                           "\n     - Rounds Played: " + AdminToolbox.playerStats[myPlayer.SteamId][3] +
                           "\n - Position:" +
                           " - X:" + (int)myPlayer.GetPosition().x +
                           " - Y:" + (int)myPlayer.GetPosition().y +
                           " - Z:" + (int)myPlayer.GetPosition().z;
                //plugin.Info(x);
                return(new string[] { x });
            }
            return(new string[] { GetUsage() });
        }
Example #12
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (bool.TryParse(args[0], out bool k))
                {
                    AdminToolbox.lockRound = k;
                    plugin.Info("Round lock: " + k);
                    return(new string[] { "Round lock: " + k });
                }
                else if (Int32.TryParse(args[0], out int l))
                {
                    if (l < 1)
                    {
                        AdminToolbox.lockRound = false;
                        plugin.Info("Round lock: " + AdminToolbox.lockRound);
                        return(new string[] { "Round lock: " + AdminToolbox.lockRound });
                    }
                    else
                    {
                        AdminToolbox.lockRound = true;
                        plugin.Info("Round lock: " + AdminToolbox.lockRound);
                        return(new string[] { "Round lock: " + AdminToolbox.lockRound });
                    }
                }
                else
                {
                    return new string[] { GetUsage() }
                };
            }
            else
            {
                AdminToolbox.lockRound = !AdminToolbox.lockRound;
                plugin.Info("Round lock: " + AdminToolbox.lockRound);
                return(new string[] { "Round lock: " + AdminToolbox.lockRound });
            }
        }
 public ATDisableCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
Example #14
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        if (bool.TryParse(args[1], out bool j))
                        {
                            string outPut    = null;
                            int    playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                AdminToolbox.playerdict[pl.SteamId].instantKill = j;
                                playerNum++;
                            }
                            outPut += "\nSet " + playerNum + " player's InstantKill to " + j;
                            return(new string[] { outPut });
                        }
                        else
                        {
                            return(new string[] { "Not a valid bool!" });
                        }
                    }
                    else
                    {
                        foreach (Player pl in server.GetPlayers())
                        {
                            AdminToolbox.playerdict[pl.SteamId].instantKill = !AdminToolbox.playerdict[pl.SteamId].instantKill;
                        }
                        return(new string[] { "Toggled all players InstantKill" });
                    }
                }
                else if (args[0].ToLower() == "list" || args[0].ToLower() == "get")
                {
                    string        str          = "\nPlayers with InstantKill enabled: \n";
                    List <string> myPlayerList = new List <string>();
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (AdminToolbox.playerdict[pl.SteamId].instantKill)
                        {
                            myPlayerList.Add(pl.Name);
                            //str += " - " +pl.Name + "\n";
                        }
                    }
                    if (myPlayerList.Count > 0)
                    {
                        myPlayerList.Sort();
                        foreach (var item in myPlayerList)
                        {
                            str += "\n - " + item;
                        }
                    }
                    else
                    {
                        str = "\nNo players with \"InstantKill\" enabled!";
                    }
                    return(new string[] { str });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });
                }
                if (args.Length > 1)
                {
                    if (bool.TryParse(args[1], out bool g))
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].instantKill = g;
                    }
                    else if (args[1].ToLower() == "on")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].instantKill = true;
                    }
                    else if (args[1].ToLower() == "off")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].instantKill = false;
                    }
                    else
                    {
                        return new string[] { GetUsage() }
                    };
                    return(new string[] { myPlayer.Name + " InstantKill: " + AdminToolbox.playerdict[myPlayer.SteamId].instantKill });
                }
                else
                {
                    AdminToolbox.playerdict[myPlayer.SteamId].instantKill = !AdminToolbox.playerdict[myPlayer.SteamId].instantKill;
                    return(new string[] { myPlayer.Name + " InstantKill: " + AdminToolbox.playerdict[myPlayer.SteamId].instantKill });
                }
            }
            return(new string[] { GetUsage() });
        }
Example #15
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                AdminToolbox.AddMissingPlayerVariables(new List <Player> {
                    myPlayer
                });
                if (sender is Player p)
                {
                    AdminToolbox.AddMissingPlayerVariables(new List <Player> {
                        p
                    });
                }
                byte     itemNumber    = 0;
                string[] deleteAliases = { "delete", "del", "d" };
                if (args.Length > 1 && deleteAliases.Contains(args[1].ToLower()))
                {
                    foreach (Smod2.API.Item item in myPlayer.GetInventory())
                    {
                        if (item.ItemType != ItemType.NULL)
                        {
                            item.Remove(); itemNumber++;
                        }
                    }
                    myPlayer.SetAmmo(AmmoType.DROPPED_5, 0);
                    myPlayer.SetAmmo(AmmoType.DROPPED_7, 0);
                    myPlayer.SetAmmo(AmmoType.DROPPED_9, 0);
                    return(new string[] { "Deleted " + itemNumber + " items from player " + myPlayer.Name + "'s inventory" });
                }
                else if (args.Length > 1 && byte.TryParse(args[1], out byte itemInt))
                {
                    if (args.Length > 2 && deleteAliases.Contains(args[2].ToLower()))
                    {
                        foreach (Smod2.API.Item item in myPlayer.GetInventory())
                        {
                            if ((byte)item.ItemType == itemInt)
                            {
                                item.Remove(); itemNumber++;
                            }
                        }
                        return(new string[] { "Deleted all \"" + Enum.GetName(typeof(ItemType), itemInt) + "\" items from player " + myPlayer.Name + "'s inventory" });
                    }
                    else
                    {
                        foreach (Smod2.API.Item item in myPlayer.GetInventory())
                        {
                            if ((byte)item.ItemType == itemInt)
                            {
                                item.Drop(); itemNumber++;
                            }
                        }
                        return(new string[] { "Dropped all \"" + Enum.GetName(typeof(ItemType), itemInt) + "\" items from player " + myPlayer.Name + "'s inventory" });
                    }
                }
                else
                {
                    foreach (Smod2.API.Item item in myPlayer.GetInventory())
                    {
                        if (item.ItemType != ItemType.NULL)
                        {
                            item.Drop(); itemNumber++;
                        }
                    }
                    PluginManager.Manager.Server.Map.SpawnItem(ItemType.DROPPED_5, myPlayer.GetPosition(), myPlayer.GetRotation());
                    PluginManager.Manager.Server.Map.SpawnItem(ItemType.DROPPED_7, myPlayer.GetPosition(), myPlayer.GetRotation());
                    PluginManager.Manager.Server.Map.SpawnItem(ItemType.DROPPED_9, myPlayer.GetPosition(), myPlayer.GetRotation());
                    myPlayer.SetAmmo(AmmoType.DROPPED_5, 0);
                    myPlayer.SetAmmo(AmmoType.DROPPED_5, 0);
                    myPlayer.SetAmmo(AmmoType.DROPPED_5, 0);
                    return(new string[] { "Dropped " + itemNumber + " items from player " + myPlayer.Name + "'s inventory" });
                }
            }
            return(new string[] { GetUsage() });
        }
Example #16
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        if (bool.TryParse(args[1], out bool j))
                        {
                            int playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                AdminToolbox.playerdict[pl.SteamId].dmgOff = j;
                                playerNum++;
                            }
                            return(new string[] { "Set " + playerNum + " player's \"No Dmg\" to " + j });
                        }
                        else
                        {
                            return new string[] { "Not a valid bool!" }
                        };
                    }
                    else
                    {
                        foreach (Player pl in server.GetPlayers())
                        {
                            AdminToolbox.playerdict[pl.SteamId].dmgOff = !AdminToolbox.playerdict[pl.SteamId].dmgOff;
                        }
                        return(new string[] { "Toggled all player's \"No Dmg\"" });
                    }
                }
                else if (args[0].ToLower() == "list" || args[0].ToLower() == "get")
                {
                    string        str          = "\nPlayers with \"No Dmg\" enabled: \n";
                    List <string> myPlayerList = new List <string>();
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (AdminToolbox.playerdict[pl.SteamId].dmgOff)
                        {
                            myPlayerList.Add(pl.Name);
                        }
                    }
                    if (myPlayerList.Count > 0)
                    {
                        myPlayerList.Sort();
                        foreach (var item in myPlayerList)
                        {
                            str += "\n - " + item;
                        }
                    }
                    else
                    {
                        str = "\nNo players with \"No Dmg\" enabled!";
                    }
                    return(new string[] { str });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                if (args.Length > 1)
                {
                    bool changedValue = false;
                    if (args.Length > 2)
                    {
                        if (args[2].ToLower() == "godmode")
                        {
                            changedValue = true;
                        }
                    }
                    if (args[1].ToLower() == "on" || args[1].ToLower() == "true")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].dmgOff = true;
                    }
                    else if (args[1].ToLower() == "off" || args[1].ToLower() == "false")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].dmgOff = false;
                    }
                    if (changedValue)
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId].godMode = AdminToolbox.playerdict[myPlayer.SteamId].dmgOff;
                        return(new string[] { myPlayer.Name + " No Dmg: " + AdminToolbox.playerdict[myPlayer.SteamId].dmgOff, myPlayer.Name + " Godmode: " + AdminToolbox.playerdict[myPlayer.SteamId].godMode });
                    }
                    return(new string[] { myPlayer.Name + " No Dmg: " + AdminToolbox.playerdict[myPlayer.SteamId].dmgOff });
                }
                else
                {
                    AdminToolbox.playerdict[myPlayer.SteamId].dmgOff = !AdminToolbox.playerdict[myPlayer.SteamId].dmgOff;
                    return(new string[] { myPlayer.Name + " No Dmg: " + AdminToolbox.playerdict[myPlayer.SteamId].dmgOff });
                }
            }
            else
            {
                return new string[] { GetUsage() }
            };
        }
    }
Example #17
0
 public ATColorCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        if (bool.TryParse(args[1], out bool j))
                        {
                            string outPut    = null;
                            int    playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                AdminToolbox.playerdict[pl.SteamId][3] = j;
                                playerNum++;
                            }
                            outPut += "\nSet " + playerNum + " player's BreakDoors to " + j;
                            return(new string[] { "\nSet " + playerNum + " player's BreakDoors to " + j });
                        }
                        else
                        {
                            //plugin.Info("Not a valid bool!");
                            return(new string[] { "Not a valid bool!" });
                        }
                    }
                    else
                    {
                        foreach (Player pl in server.GetPlayers())
                        {
                            AdminToolbox.playerdict[pl.SteamId][3] = !AdminToolbox.playerdict[pl.SteamId][3];
                        }
                        //plugin.Info("Toggled all players godmodes");
                        return(new string[] { "Toggled all players BreakDoors" });
                    }
                }
                else if (args[0].ToLower() == "list" || args[0].ToLower() == "get")
                {
                    string        str          = "\nPlayers with BreakDoors enabled: \n";
                    List <string> myPlayerList = new List <string>();
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (AdminToolbox.playerdict[pl.SteamId][3])
                        {
                            myPlayerList.Add(pl.Name);
                            //str += " - " +pl.Name + "\n";
                        }
                    }
                    if (myPlayerList.Count > 0)
                    {
                        myPlayerList.Sort();
                        foreach (var item in myPlayerList)
                        {
                            str += "\n - " + item;
                        }
                    }
                    else
                    {
                        str = "\nNo players with \"BreakDoors\" enabled!";
                    }
                    return(new string[] { str });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });
                }
                if (args.Length > 1)
                {
                    if (args[1].ToLower() == "on" || args[1].ToLower() == "true")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId][3] = true;
                    }
                    else if (args[1].ToLower() == "off" || args[1].ToLower() == "false")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId][3] = false;
                    }
                    return(new string[] { myPlayer.Name + " BreakDoors: " + AdminToolbox.playerdict[myPlayer.SteamId][3] });
                }
                else
                {
                    AdminToolbox.playerdict[myPlayer.SteamId][3] = !AdminToolbox.playerdict[myPlayer.SteamId][3];
                    return(new string[] { myPlayer.Name + " BreakDoors: " + AdminToolbox.playerdict[myPlayer.SteamId][3] });
                }
            }
            return(new string[] { GetUsage() });
        }
Example #19
0
 public TimedCommand(AdminToolbox plugin) => this.plugin = plugin;
Example #20
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0]);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });;
                }
                if (args.Length > 1)
                {
                    if (args.Length > 2)
                    {
                        if (args[1].ToLower() == "add")
                        {
                            Dictionary <string, int> myPos = new Dictionary <string, int>()
                            {
                                { "x", 0 },
                                { "y", 0 },
                                { "z", 0 }
                            };
                            int      xInput = 0, yInput = 0, zInput = 0;
                            char[]   delimiterChars = { '.', ',', '=', '_', ':', '^', '/', '>', '<', '\'' };
                            string[] charsAllowed   = { "x", "y", "z" };
                            for (int i = 2; i < args.Length; i++)
                            {
                                string[] cordinates = args[i].ToLower().Split(delimiterChars);
                                if (cordinates.Length < 2)
                                {
                                    return(new string[] { GetUsage() });
                                }
                                if (!charsAllowed.Any(cordinates[0].Contains))
                                {
                                    return new string[] { cordinates[0] + " is not a valid axis, use X, Y or Z" }
                                }
                                ;
                                if (Int32.TryParse(cordinates[1], out int xyz))
                                {
                                    if (!myPos.ContainsKey(cordinates[0]))
                                    {
                                        myPos.Add(cordinates[0], xyz);
                                    }
                                    else
                                    {
                                        myPos[cordinates[0]] = xyz;
                                    }
                                }
                                else
                                {
                                    return new string[] { cordinates[1] + " is not a valid number" }
                                };
                            }
                            xInput = myPos["x"];
                            yInput = myPos["y"];
                            zInput = myPos["z"];
                            Vector myvector = new Vector(myPlayer.GetPosition().x + xInput, myPlayer.GetPosition().y + yInput, myPlayer.GetPosition().z + zInput);
                            myPlayer.Teleport(myvector, Unstuck);
                            return(new string[] { "Teleported " + myPlayer.Name + " to x:" + myvector.x + " y:" + myvector.y + " z:" + myvector.z });
                        }
                        else if (args[1].ToLower() == "set")
                        {
                            Dictionary <string, int> myPos = new Dictionary <string, int>()
                            {
                                { "x", 0 },
                                { "y", 0 },
                                { "z", 0 }
                            };
                            int      xInput = 0, yInput = 0, zInput = 0;
                            char[]   delimiterChars = { '.', ',', '=', '_', ':', ';', ' ' };
                            string[] charsAllowed   = { "x", "y", "z" };
                            for (int i = 2; i < args.Length; i++)
                            {
                                string[] cordinates = args[i].ToLower().Split(delimiterChars);
                                if (cordinates.Length < 2)
                                {
                                    return(new string[] { GetUsage() });
                                }
                                if (!charsAllowed.Any(cordinates[0].Contains))
                                {
                                    return(new string[] { cordinates[0] + " is not a valid axis, use X, Y or Z" });
                                }
                                if (Int32.TryParse(cordinates[1], out int xyz))
                                {
                                    if (!myPos.ContainsKey(cordinates[0].ToLower()))
                                    {
                                        myPos.Add(cordinates[0].ToLower(), xyz);
                                    }
                                    else
                                    {
                                        myPos[cordinates[0]] = xyz;
                                    }
                                }
                                else
                                {
                                    return(new string[] { cordinates[1] + " is not a valid number" });
                                }
                            }
                            xInput = myPos["x"];
                            yInput = myPos["y"];
                            zInput = myPos["z"];
                            Vector myvector = new Vector(xInput, yInput, zInput);

                            myPlayer.Teleport(myvector, Unstuck);
                            return(new string[] { "Teleported " + myPlayer.Name + " to x:" + myvector.x + " y:" + myvector.y + " z:" + myvector.z });
                        }
                        else
                        {
                            return new string[] { GetUsage() }
                        };
                    }
                    else if (args[1].ToLower() == "get")
                    {
                        return(new string[] { myPlayer.Name + " Pos x:" + myPlayer.GetPosition().x + " y:" + myPlayer.GetPosition().y + " z:" + myPlayer.GetPosition().z });
                    }
                    else
                    {
                        return new string[] { GetUsage() }
                    };
                }
                else
                {
                    return new string[] { GetUsage() }
                };
            }
            else
            {
                return new string[] { GetUsage() }
            };
        }
    }
}
Example #21
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        if (Int32.TryParse(args[1], out int j))
                        {
                            int playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                Vector originalPos = pl.GetPosition();
                                if (pl.TeamRole.Role == Role.UNASSIGNED || pl.TeamRole.Role == Role.SPECTATOR)
                                {
                                    pl.ChangeRole((Role)j, true, true);
                                }
                                else
                                {
                                    pl.ChangeRole((Role)j, true, false);
                                    pl.Teleport(originalPos);
                                }
                                pl.SetHealth(pl.TeamRole.MaxHP);
                                playerNum++;
                            }
                            if (playerNum > 1)
                            {
                                return new string[] { playerNum + " roles set to " + (Role)j }
                            }
                            ;
                            else
                            {
                                return new string[] { playerNum + " role set to " + (Role)j }
                            };
                        }
                        else
                        {
                            return(new string[] { "Not a valid ID number!" });
                        }
                    }
                    else
                    {
                        return(new string[] { GetUsage() });
                    }
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                if (args.Length > 1)
                {
                    int j;
                    if (Int32.TryParse(args[1], out j))
                    {
                        TeamRole oldRole     = myPlayer.TeamRole;
                        Vector   originalPos = myPlayer.GetPosition();
                        if (myPlayer.TeamRole.Role == Role.UNASSIGNED || myPlayer.TeamRole.Role == Role.SPECTATOR)
                        {
                            myPlayer.ChangeRole((Role)j, true, true);
                        }
                        else
                        {
                            myPlayer.ChangeRole((Role)j, true, false);
                            myPlayer.Teleport(originalPos);
                        }
                        myPlayer.SetHealth(myPlayer.TeamRole.MaxHP);
                        return(new string[] { "Changed " + myPlayer.Name + " from " + oldRole.Name + " to " + (Role)j });
                    }
                    else
                    {
                        return new string[] { "Not a valid ID number!" }
                    };
                }
                else
                {
                    return(new string[] { GetUsage() });
                }
            }
            else
            {
                return new string[] { GetUsage() }
            };
        }
    }
 public SpectatorCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
Example #23
0
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        int j;
                        if (Int32.TryParse(args[1], out j))
                        {
                            int playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                pl.SetHealth(j);
                                playerNum++;
                            }
                            if (playerNum > 1)
                            {
                                return new string[] { "Set " + playerNum + " players HP to " + j + "HP" }
                            }
                            ;
                            //plugin.Info("Set " + playerNum + " players HP to " + j + "HP");
                            else
                            {
                                return new string[] { "Set " + playerNum + " players HP to " + j + "HP" }
                            };
                            //plugin.Info("Set " + playerNum + " player HP to " + j + "HP");
                        }
                        else
                        {
                            return(new string[] { "Not a valid number!" });
                            //plugin.Info("Not a valid number!");
                        }
                    }
                    else
                    {
                        foreach (Player pl in server.GetPlayers())
                        {
                            pl.SetHealth(pl.TeamRole.MaxHP);
                        }
                        return(new string[] { "Set all players to their default max HP" });
                        //plugin.Info("Set all players to their default max HP");
                    }
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't get player: " + args[0] });;
                }
                if (args.Length > 1)
                {
                    int j;
                    if (Int32.TryParse(args[1], out j))
                    {
                        //plugin.Info("Set " + myPlayer.Name + "'s HP to " + j + "HP");
                        myPlayer.SetHealth(j);
                        return(new string[] { "Set " + myPlayer.Name + "'s HP to " + j + "HP" });
                    }
                    else
                    {
                        return new string[] { "Not a valid number!" }
                    };
                    //plugin.Info("Not a valid number!");
                }
                else
                {
                    //plugin.Info(GetUsage());
                    //plugin.Info("Set " + myPlayer.Name + " to default HP");
                    myPlayer.SetHealth(myPlayer.TeamRole.MaxHP);
                    return(new string[] { "Set " + myPlayer.Name + " to default (" + myPlayer.TeamRole.MaxHP + ") HP" });
                }
            }
            else
            {
                return new string[] { GetUsage() }
            };
            //plugin.Info(GetUsage());
        }
    }
Example #24
0
 public SetHpCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
Example #25
0
 public MyTemplateCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
Example #26
0
 public InstantKillCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
Example #27
0
 public AT_TemplateCommand(AdminToolbox plugin) => this.plugin = plugin;
 public BreakDoorsCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }
        public string[] OnCall(ICommandSender sender, string[] args)
        {
            AdminToolbox.AddMissingPlayerVariables();
            Server server = PluginManager.Manager.Server;

            if (args.Length > 0)
            {
                if (args[0].ToLower() == "all" || args[0].ToLower() == "*")
                {
                    if (args.Length > 1)
                    {
                        bool j;
                        if (bool.TryParse(args[1], out j))
                        {
                            int playerNum = 0;
                            foreach (Player pl in server.GetPlayers())
                            {
                                AdminToolbox.playerdict[pl.SteamId][0] = j;
                                playerNum++;
                            }
                            if (playerNum > 1)
                            {
                                return new string[] { playerNum + " players set to AlwaysSpectator: " + j }
                            }
                            ;
                            //plugin.Info(playerNum + " roles set to " + (Role)14);
                            else
                            {
                                return new string[] { playerNum + " player set to AlwaysSpectator: " + j }
                            };
                            //plugin.Info(playerNum + " role set to " + (Role)14);
                        }
                        else
                        {
                            return(new string[] { "Not a valid bool!" });
                        }
                    }
                    else
                    {
                        int playerNum = 0;
                        foreach (Player pl in server.GetPlayers())
                        {
                            AdminToolbox.playerdict[pl.SteamId][0] = !AdminToolbox.playerdict[pl.SteamId][0]; playerNum++;
                        }
                        //plugin.Info("Toggled all player's \"No Dmg\"");
                        return(new string[] { "Toggled " + playerNum + " player's \"AlwaysSpectator\"" });
                    }
                }
                else if (args[0].ToLower() == "list" || args[0].ToLower() == "get")
                {
                    string        str          = "\nPlayers with \"AlwaysSpectator\" enabled: \n";
                    List <string> myPlayerList = new List <string>();
                    foreach (Player pl in server.GetPlayers())
                    {
                        if (AdminToolbox.playerdict[pl.SteamId][0])
                        {
                            myPlayerList.Add(pl.Name);
                            //str += " - " +pl.Name + "\n";
                        }
                    }
                    if (myPlayerList.Count > 0)
                    {
                        myPlayerList.Sort();
                        foreach (var item in myPlayerList)
                        {
                            str += "\n - " + item;
                        }
                    }
                    else
                    {
                        str = "\nNo players with \"AlwaysSpectator\" enabled!";
                    }
                    //plugin.Info(str);
                    return(new string[] { str });
                }
                Player myPlayer = GetPlayerFromString.GetPlayer(args[0], out myPlayer);
                if (myPlayer == null)
                {
                    return(new string[] { "Couldn't find player: " + args[0] });
                }
                if (args.Length > 1)
                {
                    if (args[1].ToLower() == "on" || args[1].ToLower() == "true")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId][0] = true;
                    }
                    else if (args[1].ToLower() == "off" || args[1].ToLower() == "false")
                    {
                        AdminToolbox.playerdict[myPlayer.SteamId][0] = false;
                    }
                    //plugin.Info(myPlayer.Name + " Keep settings: " + AdminToolbox.playerdict[myPlayer.SteamId][0]);
                    return(new string[] { myPlayer.Name + " AlwaysSpectator: " + AdminToolbox.playerdict[myPlayer.SteamId][0] });
                }
                else
                {
                    AdminToolbox.playerdict[myPlayer.SteamId][0] = !AdminToolbox.playerdict[myPlayer.SteamId][0];
                    //plugin.Info(myPlayer.Name + " Keep settings: " + AdminToolbox.playerdict[myPlayer.SteamId][0]);
                    return(new string[] { myPlayer.Name + " AlwaysSpectator: " + AdminToolbox.playerdict[myPlayer.SteamId][0] });
                }
            }
            else
            {
                return(new string[] { GetUsage() });
                //plugin.Info(GetUsage());
            }
        }
Example #30
0
 public RoleCommand(AdminToolbox plugin)
 {
     this.plugin = plugin;
 }