Few more commands can be used in museums, minor tidy-up in UI

This commit is contained in:
UnknownShadow200 2018-05-24 14:41:31 +10:00
parent be9b9d65b2
commit a4427566ad
14 changed files with 23 additions and 49 deletions

View File

@ -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.");

View File

@ -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);
}

View File

@ -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; } }

View File

@ -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) {

View File

@ -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;

View File

@ -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; } }

View File

@ -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) {

View File

@ -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) {

View File

@ -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; } }

View File

@ -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; } }

View File

@ -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") }; }

View File

@ -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) {

View File

@ -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) {

View File

@ -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;