Example #1
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists("text/oprules.txt"))
            {
                CP437Writer.WriteAllText("text/oprules.txt", "No oprules entered yet!");
            }
            List <string> oprules = CP437Reader.ReadAllLines("text/oprules.txt");

            Player who = p;

            if (message != "")
            {
                who = PlayerInfo.FindMatches(p, message);
                if (who == null)
                {
                    return;
                }
                if (p != null && p.Rank < who.Rank)
                {
                    MessageTooHighRank(p, "send /oprules", false); return;
                }
            }

            Player.Message(who, "Server OPRules:");
            foreach (string s in oprules)
            {
                Player.Message(who, s);
            }
        }
Example #2
0
 static void WriteLevelProperties(Level level, CP437Writer w)
 {
     w.WriteLine("#Level properties for " + level.name);
     w.WriteLine("#Drown-time in seconds is [drown time] * 200 / 3 / 1000");
     w.WriteLine("Physics = " + level.physics);
     ConfigElement.Serialise(Server.levelConfig, " settings", w, level);
 }
Example #3
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists("text/faq.txt"))
            {
                CP437Writer.WriteAllText("text/faq.txt", "Example: What does this server run on? This server runs on &bMCGalaxy");
            }
            List <string> faq = CP437Reader.ReadAllLines("text/faq.txt");

            Player who = p;

            if (message != "")
            {
                if (!CheckAdditionalPerm(p))
                {
                    MessageNeedPerms(p, "can send the FAQ to a player."); return;
                }
                who = PlayerInfo.FindOrShowMatches(p, message);
                if (who == null)
                {
                    return;
                }
            }

            Player.SendMessage(who, "&cFAQ&f:");
            foreach (string line in faq)
            {
                Player.SendMessage(who, "&f" + line);
            }
        }
Example #4
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists(newsFile))
            {
                CP437Writer.WriteAllText(newsFile, "News have not been created. Put News in '" + newsFile + "'."); return;
            }
            List <string> lines = CP437Reader.ReadAllLines(newsFile);

            Player.MessageLines(p, lines);
        }
Example #5
0
 public static void Save(Level level, string path)
 {
     try {
         using (CP437Writer writer = new CP437Writer(path))
             WriteLevelProperties(level, writer);
     } catch (Exception ex) {
         Server.s.Log("Failed to save level properties!");
         Logger.WriteError(ex);
         return;
     }
 }
Example #6
0
 public static void SaveList()
 {
     lock (ioLock)
         using (CP437Writer w = new CP437Writer("extra/teams.txt"))
             foreach (var pair in TeamsList)
             {
                 w.WriteLine("Name=" + pair.Value.Name);
                 w.WriteLine("Color=" + pair.Value.Color);
                 w.WriteLine("Owner=" + pair.Value.Owner);
                 string list = pair.Value.Members.Join(",");
                 w.WriteLine("Members=" + list);
                 w.WriteLine("");
             }
 }
Example #7
0
 private void DiscardEdittxtBt_Click(object sender, EventArgs e)
 {
     if (loaded)
     {
         CP437Writer.WriteAllText("text/" + loadedfile + ".txt", oldtxt);
         EditTextTxtBox.Text = CP437Reader.ReadAllText("text/" + loadedfile + ".txt");
         MessageBox.Show("Discarded Text");
     }
     else
     {
         MessageBox.Show("No file is loaded!!");
         return;
     }
 }
Example #8
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists("text/faq.txt"))
            {
                CP437Writer.WriteAllText("text/faq.txt", "Example: What does this server run on? This server runs on &bMCGalaxy");
            }
            List <string> faq = CP437Reader.ReadAllLines("text/faq.txt");

            Player.Message(p, "&cFAQ&f:");
            foreach (string line in faq)
            {
                Player.Message(p, "&f" + line);
            }
        }
Example #9
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists("text/rules.txt"))
            {
                CP437Writer.WriteAllText("text/rules.txt", "No rules entered yet!");
            }
            if (message.CaselessEq("agree"))
            {
                Agree(p); return;
            }
            if (message.CaselessEq("disagree"))
            {
                Disagree(p); return;
            }

            List <string> rules = CP437Reader.ReadAllLines("text/rules.txt");

            Player who = p;

            if (message != "")
            {
                if (!CheckExtraPerm(p))
                {
                    MessageNeedExtra(p, "send the rules to a player."); return;
                }
                who = PlayerInfo.FindMatches(p, message);
                if (who == null)
                {
                    return;
                }
            }

            if (who != null)
            {
                who.hasreadrules = true;
            }
            Player.Message(who, "Server Rules:");
            Player.MessageLines(p, rules);

            if (who != null && who.name != p.name)
            {
                Player.Message(p, "Sent the rules to " + who.ColoredName + "%S.");
                Player.Message(who, p.ColoredName + " %Ssent you the rules.");
            }
        }
Example #10
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists(newsFile))
            {
                CP437Writer.WriteAllText(newsFile, "News have not been created. Put News in '" + newsFile + "'."); return;
            }

            List <string> lines = CP437Reader.ReadAllLines(newsFile);

            if (message == "")
            {
                foreach (string line in lines)
                {
                    Player.SendMessage(p, line);
                }
                return;
            }

            string[] args = message.Split(' ');
            if (args[0] == "all")
            {
                if (!CheckAdditionalPerm(p))
                {
                    MessageNeedPerms(p, "can send the server news to all players."); return;
                }
                foreach (string line in lines)
                {
                    Player.GlobalMessage(line);
                }
                return;
            }

            Player who = PlayerInfo.FindOrShowMatches(p, args[0]);

            if (who == null)
            {
                return;
            }
            foreach (string line in lines)
            {
                Player.SendMessage(who, line);
            }
            Player.SendMessage(p, "The News were successfully sent to " + who.name + ".");
        }
Example #11
0
        public override void Use(Player p, string message)
        {
            if (!File.Exists("text/rules.txt"))
            {
                CP437Writer.WriteAllText("text/rules.txt", "No rules entered yet!");
            }
            List <string> rules = CP437Reader.ReadAllLines("text/rules.txt");

            Player who = p;

            if (message != "")
            {
                if (!CheckAdditionalPerm(p))
                {
                    MessageNeedPerms(p, "can send the rules to a player."); return;
                }
                who = PlayerInfo.FindOrShowMatches(p, message);
                if (who == null)
                {
                    return;
                }
            }

            if (who != null)
            {
                who.hasreadrules = true;
                if (who.level == Server.mainLevel && Server.mainLevel.permissionbuild == LevelPermission.Guest)
                {
                    Player.SendMessage(who, "You are currently on the guest map where anyone can build");
                }
            }
            Player.SendMessage(who, "Server Rules:");
            foreach (string s in rules)
            {
                Player.SendMessage(who, s);
            }

            if (who != null && who.name != p.name)
            {
                Player.SendMessage(p, "Sent the rules to " + who.color + who.DisplayName + "%S.");
                Player.SendMessage(who, p.ColoredName + " %Ssent you the rules.");
            }
        }
Example #12
0
        static void Combine(string envFile)
        {
            string        name     = Path.GetFileNameWithoutExtension(envFile);
            string        propFile = LevelInfo.FindPropertiesFile(name);
            List <string> lines    = new List <string>();

            if (propFile != null)
            {
                lines = CP437Reader.ReadAllLines(propFile);
            }

            using (StreamReader r = new StreamReader(envFile)) {
                string line = null;
                while ((line = r.ReadLine()) != null)
                {
                    lines.Add(line);
                }
            }

            propFile = LevelInfo.PropertiesPath(name);
            CP437Writer.WriteAllLines(propFile, lines.ToArray());
            File.Delete(envFile);
        }
Example #13
0
        public override void Use(Player p, string message)
        {
            if (message == "")
            {
                if (p == null)
                {
                    Player.SendMessage(p, "Console must provide a rank name."); return;
                }

                Group next  = null;
                int   index = Group.GroupList.IndexOf(p.group);
                if (index < Group.GroupList.Count - 1)
                {
                    Group nextHigher = Group.GroupList[index + 1];
                    if (nextHigher.Permission < LevelPermission.Nobody)
                    {
                        next = nextHigher;
                    }
                }

                if (next == null)
                {
                    Player.SendMessage(p, "You are already the highest rank.");
                }
                else
                {
                    ShowRequirements(p, next);
                }
            }
            else if (message.CaselessStarts("set "))
            {
                string[] args = message.Split(trimChars, 3);
                Group    grp  = Group.Find(args[1]);
                if (grp == null)
                {
                    Player.SendMessage(p, "Could not find group"); return;
                }

                string path = "text/rankreqs/" + grp.name + ".txt";
                if (args.Length == 2)
                {
                    File.Delete(path);
                    Player.SendMessage(p, "Deleted rank requirements for " + grp.ColoredName + "%S.");
                }
                else
                {
                    string[] lines = args[2].Split(new [] { "\\n" },
                                                   StringSplitOptions.RemoveEmptyEntries);
                    CP437Writer.WriteAllLines(path, lines);
                    Player.SendMessage(p, "Updated rank requirements for " + grp.ColoredName + "%S.");
                }
            }
            else
            {
                Group grp = Group.Find(message);
                if (grp == null)
                {
                    Player.SendMessage(p, "Could not find group"); return;
                }
                ShowRequirements(p, grp);
            }
        }
Example #14
0
 public void Save(string givenPath) {
     try {
         using ( CP437Writer w = new CP437Writer(givenPath) ) {
             if ( givenPath.IndexOf("server") != -1 ) {
                 saveAll(); // saves everything to the server variables
                 SrvProperties.SaveProps(w); // When we have this, why define it again?
             }
         }
     }
     catch ( Exception ) {
         Server.s.Log("SAVE FAILED! " + givenPath);
     }
 }