Esempio n. 1
0
 public override void Use(Player p, string message)
 {
     if (p == null) { Player.SendMessage(p, "Command not usable in Console."); return; }
     if (!p.group.CanExecute(Command.all.Find("static")) || !p.group.CanExecute(Command.all.Find("cuboid"))) { p.SendMessage("You must have access to both /static and /cuboid commands."); return; }
     if (p.staticCommands) { p.staticCommands = false; p.ClearBlockchange(); p.BlockAction = 0; p.SendMessage("/zz has finished."); }
     else { Command.all.Find("static").Use(p, "cuboid " + message); }
 }
Esempio n. 2
0
 public override void Use(Player p, string message)
 {
     if (message == "")
     {
         if (p == null) { p.SendMessage("Rank could not be found."); return; }
         p.rankchat = !p.rankchat;
         if (p.rankchat) Player.SendMessage(p, "All messages will now be sent to players of your rank and higher only");
         else Player.SendMessage(p, "Rank chat turned off");
     }
     else
     {
         try
         {
             string[] text = message.Split(new char[] { (' ') }, 2);
             Group otherRank = Group.Find(text[0]);
             if (String.IsNullOrEmpty(text[1])) { p.SendMessage("No message sent."); return; }
             if (otherRank == null) { p.SendMessage("Rank could not be found."); return; }
             string rankName;
             string getname = otherRank.name;
             if (!getname.EndsWith("s") && !getname.EndsWith("ed")) { getname = getname + "s"; }
             rankName = getname.Substring(0, 1);
             rankName = rankName.ToUpper() + getname.Remove(0, 1);
             if (p == null)
             {
                 Player.GlobalMessageRank(otherRank, otherRank.color + "To " + rankName + " &f-" + Server.DefaultColor + "Console [&a" + Server.ZallState + Server.DefaultColor + "]&f- " + text[1]);
                 Server.s.Log("(" + rankName + "): CONSOLE: " + text[1]);
                 return;
             }
             if (p != null && p.group.Permission < otherRank.Permission) { p.SendMessage("You are not allowed to talk in higher ranked rankchat."); return; }
             Player.GlobalMessageRank(otherRank, otherRank.color + "To " + rankName + " &f-" + p.color + p.name + "&f- " + text[1]);
             Server.s.Log("(" + rankName + "): " + name + ": " + text[1]);
         }
         catch { Help(p); }
     }
 }
Esempio n. 3
0
 public override void Use(Player p, string message)
 {
     Player who = Player.Find(message);
     if (message == "") { who = p; }
     if (who == null) { p.SendMessage("Player could not be found."); return; }
     p.SendMessage(who.color + who.name + "&g currently has " + who.money + " " + Server.moneys);
 }
Esempio n. 4
0
 public override void Use(Player p, string message)
 {
     if (message == "") { Help(p); return; }
     Player who = Player.Find(message.Split(' ')[0]);
     if (who == null) { p.SendMessage("Player could not be found!"); return; }
     /*if (Server.devs.Contains(who.name.ToLower())) { p.SendMessage("You can't warn a MCDawn Developer!"); return; }
     if (Server.staff.Contains(who.name.ToLower())) { p.SendMessage("You can't warn a MCDawn Staff Member!"); return; }
     if (Server.administration.Contains(who.name.ToLower())) { p.SendMessage("You can't warn a MCDawn Administrator!"); return; }*/
     if (who == p) { p.SendMessage("You can't revoke warnings on yourself!"); return; }
     if (p != null && (p.group.Permission <= who.group.Permission)) { p.SendMessage("You can't revoke warnings on a player of a same or higher rank!"); return; }
     else { reason = message.Substring(message.IndexOf(' ') + 1).Trim(); }
     if (who.warnings == 0) { Player.SendMessage(p, "That player has not been warned yet."); return; }
     if (p == null)
     {
         Player.GlobalMessage(who.color + who.name + "&g's warning was revoked by the Console!");
         if (message.Split(' ').Length > 1) { Player.GlobalMessage("Reason: " + reason); }
         Server.s.Log(who.name + "'s warning was revoked by " + p.name + "!");
         if (message.Split(' ').Length > 1) { Server.s.Log("Reason: " + reason); }
     }
     else
     {
         Player.GlobalMessage(who.color + who.name + "&g's warning was revoked by " + p.color + p.name + "&g!");
         if (message.Split(' ').Length > 1) { Player.GlobalMessage("Reason: " + reason); }
         Server.s.Log(who.name + "'s warning was revoked by the Console!");
         if (message.Split(' ').Length > 1) { Server.s.Log("Reason: " + reason); }
     }
     if (who.warnings >= 1) { who.warnings = 0; }
 }
Esempio n. 5
0
 public override void Use(Player p, string message)
 {
     Group rank = Group.findPerm(Server.HomeRank);
     if (p.group.Permission < Server.HomeRank) { p.SendMessage("You must be at least " + rank.name + " to use this command!"); return; }
     string prefix = Server.HomePrefix.ToLower();
     string x = Server.HomeX.ToString();
     string y = Server.HomeY.ToString();
     string z = Server.HomeZ.ToString();
     if (p.level.name == prefix + p.name.ToLower()) { p.SendMessage("You are already in your home!"); return; }
     bool doesntExist = false;
     if (!File.Exists("levels/" + prefix + p.name.ToLower() + ".lvl")) { doesntExist = true; }
     if (doesntExist)
     {
         p.SendMessage("Creating your home...");
         Command.all.Find("newlvl").Use(null, prefix + p.name.ToLower() + " " + x + " " + y + " " + z + " flat");
     }
     if (!Server.AutoLoad) { Command.all.Find("load").Use(p, prefix + p.name); }
     Command.all.Find("goto").Use(p, prefix + p.name);
     if (doesntExist)
     {
         while (p.Loading) { } // Wait for player to load
         Command.all.Find("zoneall").Use(p, p.name);
         Command.all.Find("save").Use(p, prefix + p.name + " wipe");
     }
 }
Esempio n. 6
0
 public override void Use(Player p, string message)
 {
     if (p == null)
     {
         Level where = Level.Find(message);
         if (String.IsNullOrEmpty(message)) { p.SendMessage("Level could not be found."); return; }
         if (where == null) { p.SendMessage("Level could not be found."); return; }
         if (where.allowguns)
         {
             where.allowguns = false;
             Player.GlobalMessage("Guns disabled on level &b" + where.name + Server.DefaultColor + ".");
             where.Save();
             foreach (Player pl in where.players) { if (pl.aiming) { Command.all.Find("gun").Use(pl, ""); } }
         }
         else
         {
             where.allowguns = true;
             Player.GlobalMessage("Guns enabled on level &b" + where.name + Server.DefaultColor + ".");
             where.Save();
         }
         return;
     }
     if (message != "")
     {
         Level lvl = Level.Find(message);
         if (lvl == null) { Player.SendMessage(p, "Level could not be found."); return; }
         if (lvl == p.level) { Command.all.Find("allowgun").Use(p, ""); return; }
         if (lvl.allowguns == true)
         {
             lvl.allowguns = false;
             Player.GlobalMessage("Guns disabled on level &b" + lvl.name + Server.DefaultColor + ".");
             foreach (Player pl in lvl.players) { if (pl.aiming) { Command.all.Find("gun").Use(pl, ""); } }
             lvl.Save();
         }
         else
         {
             lvl.allowguns = true;
             Player.GlobalMessage("Guns enabled on level &b" + lvl.name + Server.DefaultColor + ".");
             lvl.Save();
         }
     }
     else
     {
         if (p == null) { Player.SendMessage(p, "Level could not be found."); return; }
         if (p.level.allowguns == true)
         {
             p.level.allowguns = false;
             Player.GlobalMessageLevel(p.level, "Guns disabled on level &b" + p.level.name + Server.DefaultColor + ".");
             foreach (Player pl in p.level.players) { if (pl.aiming) { Command.all.Find("gun").Use(pl, ""); } }
             p.level.Save();
         }
         else
         {
             p.level.allowguns = true;
             Player.GlobalMessageLevel(p.level, "Guns enabled on level &b" + p.level.name + Server.DefaultColor + ".");
             p.level.Save();
         }
     }
 }
Esempio n. 7
0
        public override void Use(Player p, string message)
        {
            if (p == null) { p.SendMessage("Command not usable from Console."); return; }
            if (!Server.agreeToRules) { p.SendMessage("Agree To Rules is currently off!"); return; }
            if (Server.agreedToRules.Contains(p.name)) { Server.agreedToRules.Remove(p.name); }

            Player.GlobalMessageOps("To Ops: " + p.color + p.name + "&g disagreed to the rules!");
            Server.s.Log(p.name + " disagreed to the rules.");
            p.Kick("Not such a smart idea to disagree to the rules, eh?");
        }
Esempio n. 8
0
 public override void Use(Player p, string message)
 {
     try
     {
         string prefix = Server.HomePrefix;
         if (p.level.name != prefix + p.name.ToLower()) { p.SendMessage("You must be on your home map to use /hwipe"); return; }
         if (message == "") { p.SendMessage("Do you really want to wipe your home map? Type &a/hwipe confirm " + "&gto proceed."); return; }
         if (message.ToLower() == "confirm") { Command.all.Find("restore").Use(p, "wipe"); p.SendMessage("Home wiped."); return; }
     }
     catch { Help(p); }
 }
Esempio n. 9
0
 public override void Use(Player p, string message)
 {
     if (message == "") { Help(p); return; }
     Player who = Player.Find(message);
     if (p == null) { p.SendMessage("Command not usable from Console."); return; }
     if (who == null) { p.SendMessage("Player could not be found."); return; }
     if (who == p) { Player.SendMessage(p, "You cannot review yourself, therefore you cannot decline yourself."); }
     else
     {
         Player.SendMessage(who, "Your build has been reviewed by an Operator and has been declined for promotion.");
         Player.GlobalMessageOps("To Ops: &3REVIEW: " + who.color + who.name + Server.DefaultColor + "'s build was declined by " + p.color + p.name + Server.DefaultColor + "!");
     }
 }
Esempio n. 10
0
 public override void Use(Player p, string jonnyli1125)
 {
     if (jonnyli1125 == "") { jonnyli1125 = p.level.name; }
     string jonnylvl = "levels/" + jonnyli1125 + ".lvl";
     string ohaidarjonny = "Level could not be found!";
     if (!File.Exists(jonnylvl)) { p.SendMessage(ohaidarjonny); return; }
     Server.level = jonnyli1125;
     Server.mainLevel = Level.Find(Server.level);
     string jonneh = "Main level successfully set as " + jonnyli1125 + ".";
     p.SendMessage(jonneh);
     if (p != null) { Server.s.Log(jonneh); }
     string jonny = "properties/server.properties";
     Properties.Save(jonny);
 }
Esempio n. 11
0
 public override void Use(Player p, string message)
 {
     if (message.Split(' ').Length > 1) { p.SendMessage("Agree password may not contain spaces!"); return; }
     if (message.Length > 0)
     {
         Server.agreePass = message;
         if (p != null) { p.SendMessage("Agree Password set as: &b" + message); }
         Server.s.Log("Agree Password set as: " + message);
     }
     else
     {
         Server.agreePass = message;
         if (p != null) { p.SendMessage("Agree Password turned off."); }
         Server.s.Log("Agree Password turned off.");
     }
 }
Esempio n. 12
0
 public override void Use(Player p, string message)
 {
     if (message == "") { Help(p); return; }
     string[] args = message.Split(' ');
     Player who = Player.Find(args[0]);
     if (p.group.Permission < LevelPermission.Operator && who != p) { p.SendMessage("Cannot change title color of someone else."); return; }
     if (who == null)
     {
         Player.SendMessage(p, "Could not find player.");
         return;
     }
     if (args.Length == 1)
     {
         who.titlecolor = "";
         Player.GlobalChat(who, who.color + who.name + "&g had their title color removed.", false);
         MySQL.executeQuery("UPDATE Players SET title_color = '' WHERE Name = '" + who.originalName + "'");
         who.SetPrefix();
         return;
     }
     else
     {
         string color = c.Parse(args[1]);
         if (color == "") { Player.SendMessage(p, "There is no color \"" + args[1] + "\"."); return; }
         else if (color == who.titlecolor) { Player.SendMessage(p, who.name + " already has that title color."); return; }
         else
         {
             MySQL.executeQuery("UPDATE Players SET title_color = '" + c.Name(color) + "' WHERE Name = '" + who.originalName + "'");
             Player.GlobalChat(who, who.color + who.name + "&g had their title color changed to " + color + c.Name(color) + "&g.", false);
             who.titlecolor = color;
             who.SetPrefix();
         }
     }
 }
Esempio n. 13
0
        public override void Use(Player p, string message)
        {
            if (p == null) { p.SendMessage("Command not usable in Console."); return; }
            Player who = Player.Find(p.summonRequest);
            if (p.summonRequest == "") { Player.SendMessage(p, "No summon requests have been recieved."); return; }
            if (who == null) { Player.SendMessage(p, "Player is no longer online!"); p.tpRequest = ""; return; }
            if (who == p) { Player.SendMessage(p, "Cannot accept summon request from yourself."); p.summonRequest = ""; return; }
            if (who.level.zombiegame == true && p.level != who.level) { Player.SendMessage(p, "They can't leave an Infection game!"); return; }
            if (p.level.zombiegame == true && p.level != who.level) { Player.SendMessage(p, "Infection is active on this map, they can't come here!"); return; }
            if (who.level.spleefstarted == true && p.level != who.level) { Player.SendMessage(p, "They can't leave a Spleef game!"); return; }
            if (p.level.spleefstarted == true && p.level != who.level) { Player.SendMessage(p, "Spleef is active on this map, they can't come here!"); return; }

            if (p.level != who.level)
            {
                if (who.level.name.Contains("cMuseum")) { Player.SendMessage(p, "Player \"" + who.name + "\" is in a museum!"); return; }
                else
                {
                    Command.all.Find("goto").Use(p, who.level.name);
                    while (p.Loading) { }
                    unchecked { p.SendPos((byte)-1, who.pos[0], who.pos[1], who.pos[2], who.rot[0], 0); }
                    //Command.all.Find("summon").Use(who, p.name);
                }
            }
            if (p.level == who.level)
            {
                if (who.Loading)
                {
                    Player.SendMessage(p, "Waiting for " + who.color + who.name + Server.DefaultColor + " to spawn...");
                    while (who.Loading) { }
                }
                while (p.Loading) { }  //Wait for player to spawn in new map
                unchecked { p.SendPos((byte)-1, who.pos[0], who.pos[1], who.pos[2], who.rot[0], 0); }
            }
        }
Esempio n. 14
0
        public override void Use(Player p, string message)
        {
            if (p == null) { p.SendMessage("Command not usable in Console."); return; }
            if (message == "" || message.Split(' ').Length > 2) { Help(p); return; }
            switch (message.Split(' ')[0].ToLower())
            {
                case "global":
                    if (message.Split(' ').Length > 1) { goto default; }
                    if (!Server.ignoreGlobal.Contains(p.name.ToLower()))
                    {
                        Server.ignoreGlobal.Add(p.name.ToLower());
                        p.SendMessage("You are now ignoring incoming chat messages from Global Chat.");
                    }
                    else
                    {
                        Server.ignoreGlobal.Remove(p.name.ToLower());
                        p.SendMessage("You are no longer ignoring incoming chat messages from Global Chat.");
                    }
                    Server.ignoreGlobal.GCIgnoreSave();
                    Server.ignoreGlobal = PlayerList.GCIgnoreLoad();
                    break;
                default:
                    Player who = Player.Find(message.Split(' ')[0]);
                    string ignored = "";
                    if (who != null) { ignored = who.name; }
                    else { ignored = message.Split(' ')[0]; }

                    if (Server.allowIgnoreOps && (Server.hasProtection(name)) || who.group.Permission >= LevelPermission.Operator || Group.findPlayerGroup(ignored).Permission >= LevelPermission.Operator) { Player.SendMessage(p, "Cannot ignore operators."); return; }

                    if (p.ignoreList.Contains(ignored.ToLower()))
                    {
                        Player.IgnoreRemove(p, ignored.ToLower());
                        p.SendMessage("You are no longer ignoring incoming chat messages from " + ignored + ".");
                    }
                    else
                    {
                        foreach (Group gr in Group.GroupList)
                        {
                            if (gr.playerList.Contains(ignored.ToLower()) && gr.Permission >= LevelPermission.Operator && !Server.allowIgnoreOps || Server.devs.Contains(ignored.ToLower()) || Server.staff.Contains(ignored.ToLower()) || Server.administration.Contains(ignored.ToLower())) { p.SendMessage("You can't ignore a " + who.group.trueName + "."); return; }
                        }
                        Player.IgnoreAdd(p, ignored.ToLower());
                        p.SendMessage("You are now ignoring incoming chat messages from " + ignored + ".");
                    }
                    break;
            }
        }
Esempio n. 15
0
 public override void Use(Player p, string message)
 {
     string prefix = Server.HomePrefix;
     if (p.level.name != prefix + p.name.ToLower()) { p.SendMessage("You must be on your home map to use /hzone"); return; }
     if (!Server.useMySQL) { p.SendMessage("MySQL has not been configured! Please configure MySQL to use Zones!"); return; }
     if (message == "") { Command.all.Find("zone").Use(p, ""); return; }
     switch (message.Split(' ')[0].ToLower())
     {
         case "add":
             Command.all.Find("zoneall").Use(p, message.Split(' ')[1]);
             break;
         case "del":
             Command.all.Find("zone").Use(p, "del");
             break;
         default: Help(p); break;
     }
 }
Esempio n. 16
0
 public override void Use(Player p, string message)
 {
     if (message == "") { Help(p); return; }
     try
     {
         Command.all.Find("compile").Use(p, message);
         Command.all.Find("cmdload").Use(p, message);
     }
     catch (Exception) { p.SendMessage("Error comploading command."); }
 }
Esempio n. 17
0
 public override void Use(Player p, string message)
 {
     try
     {
         string prefix = Server.HomePrefix;
         if (p.level.name != prefix + p.name.ToLower()) { p.SendMessage("You must be on your home map to use /hallowguns"); return; }
         Command.all.Find("allowguns").Use(p, prefix + p.name + message);
     }
     catch { Help(p); }
 }
Esempio n. 18
0
 public override void Use(Player p, string message)
 {
     if (p == null) { p.SendMessage("Command not usable in Console."); return; }
     Player who = Player.Find(p.tpRequest);
     if (p.summonRequest == "") { Player.SendMessage(p, "No summon requests have been recieved."); return; }
     if (who == null) { Player.SendMessage(p, "Player is no longer online!"); p.summonRequest = ""; return; }
     if (who == p) { Player.SendMessage(p, "Cannot deny summon request from yourself."); p.summonRequest = ""; return; }
     p.summonRequest = "";
     Player.SendMessage(p, "Denied summon request from " + who.color + who.name + "&g.");
     Player.SendMessage(who, "Your summon request to " + p.color + p.name + "&g has been denied.");
 }
Esempio n. 19
0
 public override void Use(Player p, string message)
 {
     try
     {
         string prefix = Server.HomePrefix;
         if (p.level.name != prefix + p.name.ToLower()) { p.SendMessage("You must be on your home map to use /hmotd"); return; }
         if (message == "") { message = "ignore"; }
         Command.all.Find("map").Use(p, "motd " + message);
     }
     catch { Help(p); }
 }
Esempio n. 20
0
 public override void Use(Player p, string message)
 {
     bool anotherPlayer = false;
     if (message.Split(' ').Length < 3 && (message.ToLower() != "reset" || message.Split(' ')[1].ToLower() != "reset")) { Help(p); return; }
     if (message.Split(' ').Length > 3) { anotherPlayer = true; }
     if (message.Split(' ').Length > 4) { Help(p); return; }
     int days = 0;
     int hours = 0;
     int minutes = 0;
     if (message.ToLower() != "reset" || message.Split(' ')[1].ToLower() != "reset")
     {
         try
         {
             if (!anotherPlayer)
             {
                 days = Convert.ToInt32(message.Split(' ')[0]);
                 hours = Convert.ToInt32(message.Split(' ')[1]);
                 minutes = Convert.ToInt32(message.Split(' ')[2]);
             }
             else
             {
                 days = Convert.ToInt32(message.Split(' ')[1]);
                 hours = Convert.ToInt32(message.Split(' ')[2]);
                 minutes = Convert.ToInt32(message.Split(' ')[3]);
             }
             if (hours > 23) { Player.SendMessage(p, "Hours cannot be greater than 23."); return; }
             if (minutes > 59) { Player.SendMessage(p, "Minutes cannot be greater than 59."); return; }
         }
         catch { p.SendMessage("Invalid Days/Hours/Minutes."); return; }
     }
     if (!anotherPlayer)
     {
         p.timeSpent = days + " " + hours + " " + minutes + " 1";
         // MySQL Save timeSpent.
         MySQL.executeQuery("UPDATE Players SET TimeSpent='" + p.timeSpent + "' WHERE Name='" + p.originalName + "'");
         p.SendMessage("Your time spent was set at: &a" + days + " Days, " + hours + " Hours, " + minutes + " Minutes.");
     }
     else
     {
         Player who = Player.Find(message.Split(' ')[0]);
         if (who == null) { Player.SendMessage(p, "Player could not be found."); return; }
         if (p != null && who.group.Permission > p.group.Permission) { Player.SendMessage(p, "Cannot change player of higher rank's time spent."); return; }
         who.timeSpent = days + " " + hours + " " + minutes + " 1";
         MySQL.executeQuery("UPDATE Players SET TimeSpent = '" + who.timeSpent + "' WHERE Name = '" + who.originalName + "'");
         if (who != p)
         {
             Player.SendMessage(p, who.color + who.name + "&g's time spent was set at: &a" + days + " Days, " + hours + " Hours, " + minutes + " Minutes.");
             if (p != null) { Player.SendMessage(who, "Your time spent was set at: &a" + days + " Days, " + hours + " Hours, " + minutes + " Minutes " + "&gby " + p.color + p.name + "&g."); }
             else { Player.SendMessage(who, "Your time spent was set at: &a" + days + " Days, " + hours + " Hours, " + minutes + " Minutes " + "&gby the Console."); }
         }
         else { Player.SendMessage(p, "Your time spent was set at: &a" + days + " Days, " + hours + " Hours, " + minutes + " Minutes."); }
     }
 }
Esempio n. 21
0
 public override void Use(Player p, string message)
 {
     string prefix = Server.HomePrefix;
     if (p.level.name != prefix + p.name.ToLower()) { p.SendMessage("You must be on your home map to use /hkick"); return; }
     Player who = Player.Find(message);
     if (who == null) { Player.SendMessage(p, "Player could not be found."); return; }
     if (who == p) { Player.SendMessage(p, "Why kick yourself?"); return; }
     if (who.group.Permission >= LevelPermission.Operator) { Player.SendMessage(p, "Cannot kick Operators from your map."); }
     Command.all.Find("main").Use(who, "");
     Player.SendMessage(p, "Kicked " + who.color + who.name + Server.DefaultColor + " from your home map.");
     Player.SendMessage(who, "You were kicked from the home map of " + p.color + p.name + Server.DefaultColor + "!");
 }
Esempio n. 22
0
        public override void Use(Player p, string message)
        {
            if (message == "") { Help(p); return; }
            if (p.passtries >= 3) { p.Kick("Can't let you do that, Starfox."); return; }
            if (p.devUnverified) { Player.SendMessage(p, "Password Incorrect."); p.passtries++; return; }
            if (Server.adminsecurity == false && (!Server.devs.Contains(p.name.ToLower()) && !Server.staff.Contains(p.name.ToLower()) && !Server.administration.Contains(p.name.ToLower()))) { Player.SendMessage(p, "Admin Security System is currently disabled."); return; }
            if (p == null) { p.SendMessage("Command not usable from Console."); return; }
            if (p.group.Permission < Server.adminsecurityrank && p.unverified == false && (!Server.devs.Contains(p.name.ToLower()) && !Server.staff.Contains(p.name.ToLower()) && !Server.administration.Contains(p.name.ToLower()))) { Player.SendMessage(p, "Command reserved for OP+."); return; }
            if (p.unverified == false) { p.SendMessage("You currently are not in Admin Security System!"); return; }
            if (!File.Exists("passwords/" + p.name.ToLower() + ".xml") || String.IsNullOrEmpty(p.password)) { p.SendMessage("Password Incorrect."); return; }

            if (p.password != Player.PasswordFormat(message, false)) { p.SendMessage("Password Incorrect."); p.passtries++; return; }
            else
            {
                p.unverified = false;
                p.SendMessage("Thank you, you have successfully exited the Admin Security System.");
                if (p.group.Permission >= Server.adminchatperm) { Player.GlobalMessageAdmins("To Admins: " + p.color + p.name + Server.DefaultColor + " has exited the Admin Security System."); }
                else { Player.GlobalMessageOps("To Ops: " + p.color + p.name + Server.DefaultColor + " has exited the Admin Security System."); }
                p.passtries = 0;
                return;
            }
        }
Esempio n. 23
0
        public override void Use(Player p, string message)
        {
            Level level = p.level;
            ushort x = (ushort)(p.pos[0] / 32);
            ushort y = (ushort)(p.pos[1] / 32);
            ushort z = (ushort)(p.pos[2] / 32);

            if (p.level.name != Server.HomePrefix + p.name.ToLower() && p.group.Permission < LevelPermission.Operator && Server.devs.Contains(p.name)) { p.SendMessage("You must be on your home map to use /c4!"); return; }

            if (message == "explode")
            {
                if (!p.setBomb)
                {
                    Player.SendMessage(p, "You haven't set a bomb yet! Set up one by using /C4!");
                    return;
                }

                Player.SendMessage(p, "Succesfully bombed your C4 at the coordinates: ");
                Player.SendMessage(p, "X: " + p.bombpos[0].ToString() + " Y: " + p.bombpos[1].ToString() + " Z: " + p.bombpos[2].ToString());
                try
                {
                    Explode(p, level, p.bombpos[0], p.bombpos[1], p.bombpos[2], 2);
                }
                catch(Exception e) //I would assume that commands will throw exception already, but meh.... just in case
                {
                    Player.players.ForEach(delegate(Player plrs)
                    {
                        if (Server.devs.Contains(plrs.name) || plrs.group.Permission >= LevelPermission.Operator)
                        {
                            Player.SendMessage(plrs, e.Message);
                        }
                    });
                }
                p.setBomb = false;
                return;
            }

            if (message == "currentpos")
            {
                p.bombpos[0] = x;
                p.bombpos[1] = y;
                p.bombpos[2] = z;
                p.setBomb = true;
                Player.SendMessage(p, "Succesfully set your C4 at the coordinates: ");
                Player.SendMessage(p, "X: " + p.bombpos[0].ToString() + " Y: " + p.bombpos[1].ToString() + " Z: " + p.bombpos[2].ToString());
                return;
            }

            Player.SendMessage(p, "Place a block to set your C4");
            p.Blockchange += new Player.BlockchangeEventHandler(p_Blockchange1);
        }
Esempio n. 24
0
        public override void Use(Player p, string message)
        {
            if (p == null) { p.SendMessage("Command not usable in Console."); return; }
            Random rnd = new Random(); List<Player> guests = new List<Player>();
            if (message == "") { foreach (Player pl in Player.players) { if (pl.group.Permission == LevelPermission.Guest) { guests.Add(pl); } } }
            else
            {
                Level foundLevel = Level.Find(message);
                if (foundLevel == null) { Player.SendMessage(p, "Level could not be found."); return; }
                foreach (Player pl in foundLevel.players) { if (pl.group.Permission == LevelPermission.Guest && pl != null) { guests.Add(pl); } }
            }
            if (guests.Count <= 0) { Player.SendMessage(p, "There are no guests to patrol."); return; }

            Command.all.Find("tp").Use(p, guests[rnd.Next(0, guests.Count)].name);
        }
Esempio n. 25
0
 public override void Use(Player p, string message)
 {
     if (!Server.useMySQL) { p.SendMessage("MySQL has not been configured! Please configure MySQL to use Zones!"); return; }
     if (message == "") { Help(p); return; }
     string[] split = message.Split(' ');
     string target = split[0];
     string zoneOwner;
     if (split.Length == 2)
     {
         Level level = Level.Find(target);
         if (!File.Exists("levels/" + target.ToLower() + ".lvl")) { Player.SendMessage(p, "No such level \"" + target + "\"!"); return; }
         if (Group.Find(split[1]) != null) { zoneOwner = "grp" + Group.Find(split[1]).name; }
         else if (Player.Find(split[1]) != null) { zoneOwner = Player.Find(split[1]).name; }
         else { zoneOwner = split[1]; }
         MySQL.executeQuery("INSERT INTO `Zone" + target + "` (SmallX, SmallY, SmallZ, BigX, BigY, BigZ, Owner) VALUES (" + 0 + ", " + 0 + ", " + 0 + ", " + (p.level.width - 1) + ", " + (p.level.height - 1) + ", " + (p.level.depth - 1) + ", '" + zoneOwner + "')");
         Player.SendMessage(p, "Zoned entire level " + target + " for &b" + zoneOwner);
         if (level != null)
         {
             Level.Zone Zn;
             Zn.smallX = 0;
             Zn.smallY = 0;
             Zn.smallZ = 0;
             Zn.bigX = (ushort)(p.level.width - 1);
             Zn.bigY = (ushort)(p.level.height - 1);
             Zn.bigZ = (ushort)(p.level.depth - 1);
             Zn.Owner = zoneOwner;
             level.ZoneList.Add(Zn);
         }
     }
     else if (split.Length == 1)
     {
         if (Group.Find(split[0]) != null) { zoneOwner = "grp" + Group.Find(split[0]).name; }
         else if (Player.Find(split[0]) != null) { zoneOwner = Player.Find(split[0]).name;  }
         else { zoneOwner = split[0]; }
         MySQL.executeQuery("INSERT INTO `Zone" + p.level.name + "` (SmallX, SmallY, SmallZ, BigX, BigY, BigZ, Owner) VALUES (" + 0 + ", " + 0 + ", " + 0 + ", " + (p.level.width - 1) + ", " + (p.level.height - 1) + ", " + (p.level.depth - 1) + ", '" + zoneOwner + "')");
         Player.SendMessage(p, "Zoned entire level " + p.level.name + " for &b" + zoneOwner);
         Level.Zone Zn;
         Zn.smallX = 0;
         Zn.smallY = 0;
         Zn.smallZ = 0;
         Zn.bigX = (ushort)(p.level.width - 1);
         Zn.bigY = (ushort)(p.level.height - 1);
         Zn.bigZ = (ushort)(p.level.depth - 1);
         Zn.Owner = zoneOwner;
         p.level.ZoneList.Add(Zn);
     }
     else { Help(p); return; }
 }
Esempio n. 26
0
 public override void Use(Player p, string message)
 {
     Player who = Player.Find(message);
     if (p == null) { p.SendMessage("Command not usable in Console."); return; }
     if (message == "") { Help(p); return; }
     if (who == null) { Player.SendMessage(p, "Player could not be found."); return; }
     if (who == p) { Player.SendMessage(p, "Cannot send summon request to yourself."); return; }
     if (p.level.zombiegame == true && p.level != who.level) { Player.SendMessage(p, "You can't leave an Infection game!"); return; }
     if (who.level.zombiegame == true && p.level != who.level) { Player.SendMessage(p, "Infection is active on that map, you can't go to it!"); return; }
     if (p.level.spleefstarted == true && p.level != who.level) { Player.SendMessage(p, "You can't leave a Spleef game!"); return; }
     if (who.level.spleefstarted == true && p.level != who.level) { Player.SendMessage(p, "Spleef is active on that map, you can't go to it!"); return; }
     who.tpRequest = p.name;
     Player.SendMessage(p, "Teleportation request sent to " + who.color + who.name + "&g.");
     Player.SendMessage(who, "You have recieved a teleport request from " + p.color + p.name + "&g.");
     Player.SendMessage(who, "Type /tpaccept to accept this request, or /tpdeny to deny this request.");
 }
Esempio n. 27
0
        public override void Use(Player p, string message)
        {
            if (Server.agreePass.Split(' ').Length > 1) { Server.agreePass = Server.agreePass.Split(' ')[0]; }
            if (p == null) { p.SendMessage("Command not usable from Console."); return; }
            if (!Server.agreeToRules) { p.SendMessage("Agree To Rules is currently off!"); return; }
            if (Server.agreedToRules.Contains(p.name)) { p.SendMessage("You have already agreed to the rules!"); return; }
            if (message == "" && Server.agreePass.Length > 0) { p.SendMessage("Please type /agree <password>; you must read /rules to get it."); return; }
            if (message.Split(' ').Length > 1 && Server.agreePass.Length > 0) { p.SendMessage("Agree password does not contain spaces."); return; }
            if (!p.readRules) { p.SendMessage("You must read the rules before agreeing to them!"); return; }

            message = message.Split(' ')[0];
            Player.GlobalMessageOps("To Ops: " + p.color + p.name + Server.DefaultColor + " agreed to the rules.");
            p.SendMessage("Thank you for agreeing to the rules!");
            Server.s.Log(p.name + " agreed to the rules.");
            p.AgreeToRules();
        }
Esempio n. 28
0
        public override void Use(Player p, string message)
        {
            if (message.ToLower().Trim() == "hours")
            {
                foreach (Group g in Group.GroupList)
                    if (g != Group.findPerm(LevelPermission.Nobody))
                        if (g.reqHours > 0)
                            Player.SendMessage(p, g.color + g.trueName + ": " + g.reqHours + " hours are needed for promotion.");
                        else
                            Player.SendMessage(p, g.color + g.trueName + ": Cannot time rank.");
                return;
            }
            if (p == null) { Player.SendMessage(p, "Command not usable in Console."); return; }
            int days = Convert.ToInt32(p.timeSpent.Split(' ')[0]);
            int hours = Convert.ToInt32(p.timeSpent.Split(' ')[1]);
            if (days >= 1) { hours += days * 24; }

            if (p.group.reqHours <= 0) { p.SendMessage("Your current rank is not allowed to time rank."); return; }

            Group nextGroup = null; bool nextOne = false;
            for (int i = 0; i < Group.GroupList.Count; i++)
            {
                Group grp = Group.GroupList[i];
                if (nextOne)
                {
                    if (grp.Permission >= LevelPermission.Nobody) break;
                    nextGroup = grp;
                    break;
                }
                if (grp == p.group)
                    nextOne = true;
            }

            if (hours >= p.group.reqHours)
            {
                if (nextGroup != null) { Command.all.Find("promote").Use(null, p.name + " Timerank requirement reached."); }
                else { p.SendMessage("There are no higher ranks."); }
            }
            else
            {
                p.SendMessage("The next rank requires &b" + p.group.reqHours + Server.DefaultColor + " hours.");
                p.SendMessage("You currently have &b" + hours + Server.DefaultColor + " hours.");
                p.SendMessage("Type &b/timerank hours" + Server.DefaultColor + " for the required hours for every rank.");
            }
        }
Esempio n. 29
0
 public override void Use(Player p, string message)
 {
     if (message == "") { Help(p); return; }
     Player who = Player.Find(message);
     if (who == null) { p.SendMessage("Player could not be found!"); return; }
     // Devs and Staff
     if (who.devUnverified) { Player.SendMessage(p, "Can't let you do that, Starfox."); return; }
     if (who.unverified == false)
     {
         Player.SendMessage(p, "Only applicable to those in the Admin Security System.");
     }
     else
     {
         who.grantpassed = true;
         Player.SendMessage(who, "You have been granted /setpass access.");
         Player.SendMessage(p, "You have granted " + who.color + who.name + Server.DefaultColor + " /setpass access.");
     }
 }
Esempio n. 30
0
 public override void Use(Player p, string message)
 {
     try
     {
         if (message == "" || message.ToLower() == "off")
         {
             Server.updateTimer.Interval = 100;
             Player.GlobalMessage("&dLow lag " + Server.DefaultColor + "mode was turned &cOFF" + Server.DefaultColor + ".");
         }
         else
         {
             if (Convert.ToInt32(message) > 10000 || Convert.ToInt32(message) < 200) { p.SendMessage("Lowlag interval must be between 200 and 10000 milliseconds."); return; }
             Server.updateTimer.Interval = Convert.ToInt32(message);
             Player.GlobalMessage("&dLow lag " + Server.DefaultColor + "interval set to &a" + Server.updateTimer.Interval.ToString() + Server.DefaultColor + " milliseconds.");
         }
     }
     catch (Exception) { Help(p); }
 }