コード例 #1
0
        static void DeleteMap(Player p, string value)
        {
            if (value.Length > 0)
            {
                p.Message("To delete your current map, type %T/os map delete");
                return;
            }

            string map = p.level.name;

            p.Message("Created backup.");
            if (LevelActions.Delete(map))
            {
                p.Message("Map " + map + " was removed.");
            }
            else
            {
                p.Message(LevelActions.DeleteFailedMessage);
            }
        }
コード例 #2
0
        static void DeleteMap(Player p, string value)
        {
            byte mapNum = 0;

            if (value == "")
            {
                Player.Message(p, "To delete one of your maps, type %T/os map delete [map number]");
            }
            else if (value == "1")
            {
                string map = FirstMapName(p);
                if (!LevelInfo.ExistsOffline(map))
                {
                    Player.Message(p, "You don't have a map with that map number."); return;
                }

                Player.Message(p, "Created backup.");
                LevelActions.Delete(map);
                Player.Message(p, "Map 1 has been removed.");
            }
            else if (byte.TryParse(value, out mapNum))
            {
                string map = p.name.ToLower() + value;
                if (!LevelInfo.ExistsOffline(map))
                {
                    Player.Message(p, "You don't have a map with that map number."); return;
                }

                Player.Message(p, "Created backup.");
                LevelActions.Delete(map);
                Player.Message(p, "Map " + value + " has been removed.");
            }
            else
            {
                Player.MessageLines(p, mapHelp);
            }
        }
コード例 #3
0
        public override void Use(Player p, string message)
        {
            if (message == "" || message.Split(' ').Length > 1)
            {
                Help(p); return;
            }
            if (!Formatter.ValidName(p, message, "level"))
            {
                return;
            }
            string map = LevelInfo.FindMapMatches(p, message);

            if (map == null)
            {
                return;
            }

            Level lvl = LevelInfo.FindExact(map);

            if (lvl != null && p != null && lvl.permissionbuild > p.Rank)
            {
                Player.Message(p, "%cYou can't delete levels with a perbuild rank higher than yours!"); return;
            }
            if (lvl == Server.mainLevel)
            {
                Player.Message(p, "Cannot delete the main level."); return;
            }

            LevelPermission perbuild = GetPerBuildPermission(map);

            if (p != null && perbuild > p.Rank)
            {
                Player.Message(p, "%cYou can't delete levels with a perbuild rank higher than yours!"); return;
            }
            Player.Message(p, "Created backup.");
            LevelActions.Delete(map.ToLower());
        }
コード例 #4
0
ファイル: CmdDeleteLvl.cs プロジェクト: takaaptech/MCGalaxy
        public override void Use(Player p, string message, CommandData data)
        {
            if (message.Length == 0 || message.SplitSpaces().Length > 1)
            {
                Help(p); return;
            }
            string      map = Matcher.FindMaps(p, message);
            LevelConfig cfg;

            if (map == null)
            {
                return;
            }
            if (!LevelInfo.Check(p, data.Rank, map, "delete this map", out cfg))
            {
                return;
            }

            if (!LevelActions.Delete(p, map))
            {
                return;
            }
            Chat.MessageGlobal("Level {0} &Swas deleted", cfg.Color + map);
        }