diff --git a/GUI/Popups/CustomCommands.cs b/GUI/Popups/CustomCommands.cs index b0c27a75a..6ccb3b527 100644 --- a/GUI/Popups/CustomCommands.cs +++ b/GUI/Popups/CustomCommands.cs @@ -119,7 +119,7 @@ namespace MCGalaxy.Gui.Popups { Popup.Warning("Command " + cmdName + " is not loaded."); return; } - lstCommands.Items.Remove( cmd.name ); + lstCommands.Items.Remove(cmd.name); Command.all.Remove(cmd); CommandPerms.Load(); Popup.Message("Command successfully unloaded."); diff --git a/GUI/Window/Window.Map.cs b/GUI/Window/Window.Map.cs index 3075211d2..e092c5b61 100644 --- a/GUI/Window/Window.Map.cs +++ b/GUI/Window/Window.Map.cs @@ -87,7 +87,7 @@ namespace MCGalaxy.Gui { object selected = map_lbUnloaded.SelectedItem; if (selected == null) { Popup.Warning("No map file selected."); return; } - UIHelpers.HandleCommand("Load " +selected.ToString()); + UIHelpers.HandleCommand("Load " + selected.ToString()); } string last = null; @@ -114,34 +114,27 @@ namespace MCGalaxy.Gui { } void Map_UpdateUnloadedList() { - string selectedLvl = null; - if (map_lbUnloaded.SelectedItem != null) - selectedLvl = map_lbUnloaded.SelectedItem.ToString(); - + object selected = map_lbUnloaded.SelectedItem; map_lbUnloaded.Items.Clear(); + string[] allMaps = LevelInfo.AllMapNames(); foreach (string map in allMaps) { if (LevelInfo.FindExact(map) == null) map_lbUnloaded.Items.Add(map); } - if (selectedLvl != null) { - int index = map_lbUnloaded.Items.IndexOf(selectedLvl); - map_lbUnloaded.SelectedIndex = index; - } else { - map_lbUnloaded.SelectedIndex = -1; + int index = -1; + if (selected != null) { + index = map_lbUnloaded.Items.IndexOf(selected); } + map_lbUnloaded.SelectedIndex = index; } void Map_UpdateLoadedList() { - Level[] loaded = LevelInfo.Loaded.Items; - // Try to keep the same selection on update - string selected = null; - if (map_lbLoaded.SelectedItem != null) { - selected = map_lbLoaded.SelectedItem.ToString(); - } - + object selected = map_lbLoaded.SelectedItem; map_lbLoaded.Items.Clear(); + + Level[] loaded = LevelInfo.Loaded.Items; foreach (Level lvl in loaded) { map_lbLoaded.Items.Add(lvl.name); } @@ -149,8 +142,7 @@ namespace MCGalaxy.Gui { int index = -1; if (selected != null) { index = map_lbLoaded.Items.IndexOf(selected); - } - + } map_lbLoaded.SelectedIndex = index; Map_UpdateSelected(null, null); } diff --git a/MCGalaxy/Commands/CPE/CmdReachDistance.cs b/MCGalaxy/Commands/CPE/CmdReachDistance.cs index 83263ad44..6070bf249 100644 --- a/MCGalaxy/Commands/CPE/CmdReachDistance.cs +++ b/MCGalaxy/Commands/CPE/CmdReachDistance.cs @@ -22,7 +22,6 @@ namespace MCGalaxy.Commands.CPE { public override string name { get { return "ReachDistance"; } } public override string shortcut { get { return "Reach"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.AdvBuilder; } } public override bool SuperUseable { get { return false; } } diff --git a/MCGalaxy/Commands/Chat/CmdVote.cs b/MCGalaxy/Commands/Chat/CmdVote.cs index 540e172d2..72d190f1c 100644 --- a/MCGalaxy/Commands/Chat/CmdVote.cs +++ b/MCGalaxy/Commands/Chat/CmdVote.cs @@ -23,7 +23,6 @@ namespace MCGalaxy.Commands.Chatting { public override string name { get { return "Vote"; } } public override string shortcut { get { return "vo"; } } public override string type { get { return CommandTypes.Chat; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.Operator; } } public override void Use(Player p, string message) { diff --git a/MCGalaxy/Commands/Information/CmdMapInfo.cs b/MCGalaxy/Commands/Information/CmdMapInfo.cs index a17e63f10..26bd64da7 100644 --- a/MCGalaxy/Commands/Information/CmdMapInfo.cs +++ b/MCGalaxy/Commands/Information/CmdMapInfo.cs @@ -29,7 +29,6 @@ namespace MCGalaxy.Commands.Info { public override string name { get { return "MapInfo"; } } public override string shortcut { get { return "mi"; } } public override string type { get { return CommandTypes.Information; } } - public override bool museumUsable { get { return false; } } public override bool UseableWhenFrozen { get { return true; } } public override CommandAlias[] Aliases { get { return new[] { new CommandAlias("WInfo"), new CommandAlias("WorldInfo") }; } @@ -74,13 +73,13 @@ namespace MCGalaxy.Commands.Info { Player.Message(p, " Physics are {0}%S, gun usage is {1}", physicsState, cfg.Guns ? "&aenabled" : "&cdisabled"); - DateTime createTime = File.GetCreationTimeUtc(LevelInfo.MapPath(data.Name)); + DateTime createTime = File.GetCreationTimeUtc(LevelInfo.MapPath(data.MapName)); TimeSpan createDelta = DateTime.UtcNow - createTime; - string backupPath = LevelInfo.BackupBasePath(data.Name); + string backupPath = LevelInfo.BackupBasePath(data.MapName); if (Directory.Exists(backupPath)) { - int latest = LevelInfo.LatestBackup(data.Name); - DateTime backupTime = File.GetCreationTimeUtc(LevelInfo.BackupFilePath(data.Name, latest.ToString())); + int latest = LevelInfo.LatestBackup(data.MapName); + DateTime backupTime = File.GetCreationTimeUtc(LevelInfo.BackupFilePath(data.MapName, latest.ToString())); TimeSpan backupDelta = DateTime.UtcNow - backupTime; Player.Message(p, " Created {2} ago, last backup ({1} ago): &a{0}", latest, backupDelta.Shorten(), createDelta.Shorten()); @@ -97,7 +96,7 @@ namespace MCGalaxy.Commands.Info { } ShowPermissions(p, data, cfg); - Player.Message(p, "Use %T/mi env {0} %Sto see environment settings.", data.Name); + Player.Message(p, "Use %T/mi env {0} %Sto see environment settings.", data.MapName); ShowZombieSurvival(p, data, cfg); } @@ -107,7 +106,7 @@ namespace MCGalaxy.Commands.Info { string realmOwner = cfg.RealmOwner; if (String.IsNullOrEmpty(cfg.RealmOwner)) { - realmOwner = DefaultRealmOwner(data.Name); + realmOwner = DefaultRealmOwner(data.MapName); } if (String.IsNullOrEmpty(realmOwner)) return; @@ -123,7 +122,7 @@ namespace MCGalaxy.Commands.Info { } void ShowZombieSurvival(Player p, MapInfoData data, LevelConfig cfg) { - if (!Server.zombie.IsZombieMap(data.Name)) return; + if (!Server.zombie.IsZombieMap(data.MapName)) return; string[] authors = cfg.Authors.Replace(" ", "").Split(','); Player.Message(p, "Map authors: {0}", @@ -193,13 +192,13 @@ namespace MCGalaxy.Commands.Info { class MapInfoData { public ushort Width, Height, Length; - public string Name; + public string Name, MapName; public long BlockDBEntries = -1; public LevelAccessController Visit, Build; public LevelConfig Config; public void FromOnlineLevel(Level lvl) { - Name = lvl.name; + Name = lvl.name; MapName = lvl.MapName; Width = lvl.Width; Height = lvl.Height; Length = lvl.Length; BlockDBEntries = lvl.BlockDB.TotalEntries(); Config = lvl.Config; @@ -209,7 +208,7 @@ namespace MCGalaxy.Commands.Info { } public void FromOfflineLevel(string name) { - this.Name = name; + this.Name = name; MapName = name; string path = LevelInfo.MapPath(name); Vec3U16 dims = IMapImporter.Formats[0].ReadDimensions(path); Width = dims.X; Height = dims.Y; Length = dims.Z; diff --git a/MCGalaxy/Commands/Moderation/CmdVoteKick.cs b/MCGalaxy/Commands/Moderation/CmdVoteKick.cs index 08d300028..7374f4456 100644 --- a/MCGalaxy/Commands/Moderation/CmdVoteKick.cs +++ b/MCGalaxy/Commands/Moderation/CmdVoteKick.cs @@ -23,7 +23,6 @@ namespace MCGalaxy.Commands.Moderation { public sealed class CmdVoteKick : Command { public override string name { get { return "VoteKick"; } } public override string type { get { return CommandTypes.Moderation; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.Operator; } } public override bool SuperUseable { get { return false; } } diff --git a/MCGalaxy/Commands/Moderation/ZoneCmds.cs b/MCGalaxy/Commands/Moderation/ZoneCmds.cs index db883343c..06e032ac2 100644 --- a/MCGalaxy/Commands/Moderation/ZoneCmds.cs +++ b/MCGalaxy/Commands/Moderation/ZoneCmds.cs @@ -180,7 +180,6 @@ namespace MCGalaxy.Commands.Moderation { public override string name { get { return "ZoneTest"; } } public override string shortcut { get { return "ZTest"; } } public override string type { get { return CommandTypes.Moderation; } } - public override bool museumUsable { get { return false; } } public override void Use(Player p, string message) { Player.Message(p, "Place or delete a block where you would like to check for zones."); @@ -216,7 +215,6 @@ namespace MCGalaxy.Commands.Moderation { public override string name { get { return "ZoneList"; } } public override string shortcut { get { return "Zones"; } } public override string type { get { return CommandTypes.Moderation; } } - public override bool museumUsable { get { return false; } } public override bool UseableWhenFrozen { get { return true; } } public override void Use(Player p, string message) { diff --git a/MCGalaxy/Commands/World/CmdMuseum.cs b/MCGalaxy/Commands/World/CmdMuseum.cs index e3304e084..2d8f3bd43 100644 --- a/MCGalaxy/Commands/World/CmdMuseum.cs +++ b/MCGalaxy/Commands/World/CmdMuseum.cs @@ -28,8 +28,7 @@ namespace MCGalaxy.Commands.World { public override void Use(Player p, string message) { string[] args = message.SplitSpaces(); - string path = args.Length == 1 ? LevelInfo.MapPath(args[0]) : - LevelInfo.BackupFilePath(args[0], args[1]); + string path = args.Length == 1 ? LevelInfo.MapPath(args[0]) : LevelInfo.BackupFilePath(args[0], args[1]); if (!File.Exists(path)) { Player.Message(p, "Level or backup could not be found."); return; } @@ -69,11 +68,6 @@ namespace MCGalaxy.Commands.World { lvl.backedup = true; lvl.BuildAccess.Min = LevelPermission.Nobody; lvl.IsMuseum = true; - - lvl.Config.JailX = lvl.spawnx * 32; - lvl.Config.JailY = lvl.spawny * 32; - lvl.Config.JailZ = lvl.spawnz * 32; - lvl.Config.jailrotx = lvl.rotx; lvl.Config.jailroty = lvl.roty; } public override void Help(Player p) { diff --git a/MCGalaxy/Commands/building/CmdBind.cs b/MCGalaxy/Commands/building/CmdBind.cs index 8b590b0e8..82765bb71 100644 --- a/MCGalaxy/Commands/building/CmdBind.cs +++ b/MCGalaxy/Commands/building/CmdBind.cs @@ -21,7 +21,6 @@ namespace MCGalaxy.Commands.Building { public sealed class CmdBind : Command { public override string name { get { return "Bind"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.AdvBuilder; } } public override bool SuperUseable { get { return false; } } diff --git a/MCGalaxy/Commands/building/CmdDelete.cs b/MCGalaxy/Commands/building/CmdDelete.cs index b0aee52a4..89e25e474 100644 --- a/MCGalaxy/Commands/building/CmdDelete.cs +++ b/MCGalaxy/Commands/building/CmdDelete.cs @@ -20,7 +20,6 @@ namespace MCGalaxy.Commands.Building { public override string name { get { return "Delete"; } } public override string shortcut { get { return "d"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.AdvBuilder; } } public override bool SuperUseable { get { return false; } } diff --git a/MCGalaxy/Commands/building/CmdMode.cs b/MCGalaxy/Commands/building/CmdMode.cs index ce125b30d..82e36bd13 100644 --- a/MCGalaxy/Commands/building/CmdMode.cs +++ b/MCGalaxy/Commands/building/CmdMode.cs @@ -21,7 +21,6 @@ namespace MCGalaxy.Commands.Building { public sealed class CmdMode : Command { public override string name { get { return "Mode"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override bool SuperUseable { get { return false; } } public override CommandAlias[] Aliases { get { return new CommandAlias[] { new CommandAlias("TNT", "tnt") }; } diff --git a/MCGalaxy/Commands/building/CmdPaint.cs b/MCGalaxy/Commands/building/CmdPaint.cs index d85c7c885..f59ce5406 100644 --- a/MCGalaxy/Commands/building/CmdPaint.cs +++ b/MCGalaxy/Commands/building/CmdPaint.cs @@ -20,7 +20,6 @@ namespace MCGalaxy.Commands.Building { public override string name { get { return "Paint"; } } public override string shortcut { get { return "p"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override bool SuperUseable { get { return false; } } public override void Use(Player p, string message) { diff --git a/MCGalaxy/Commands/building/CmdPalette.cs b/MCGalaxy/Commands/building/CmdPalette.cs index 5ced4a12a..2de099998 100644 --- a/MCGalaxy/Commands/building/CmdPalette.cs +++ b/MCGalaxy/Commands/building/CmdPalette.cs @@ -25,7 +25,6 @@ namespace MCGalaxy.Commands.Building { public override string name { get { return "Palette"; } } public override string shortcut { get { return "ImgPalette"; } } public override string type { get { return CommandTypes.Building; } } - public override bool museumUsable { get { return false; } } public override LevelPermission defaultRank { get { return LevelPermission.Admin; } } public override void Use(Player p, string message) { diff --git a/MCGalaxy/Drawing/DrawOps/DrawOpPerformer.cs b/MCGalaxy/Drawing/DrawOps/DrawOpPerformer.cs index 72e7a9420..15859cc86 100644 --- a/MCGalaxy/Drawing/DrawOps/DrawOpPerformer.cs +++ b/MCGalaxy/Drawing/DrawOps/DrawOpPerformer.cs @@ -50,7 +50,6 @@ namespace MCGalaxy.Drawing.Ops { public static bool Do(DrawOp op, Brush brush, Player p, Vec3S32[] marks, bool checkLimit = true) { Level lvl = Setup(op, p, marks); - if (lvl != null && !lvl.Config.DrawingAllowed) { Player.Message(p, "Drawing commands are turned off on this map."); return false;