diff --git a/Commands/CPE/CmdModel.cs b/Commands/CPE/CmdModel.cs index 0a9123c6e..1d2b2ccdd 100644 --- a/Commands/CPE/CmdModel.cs +++ b/Commands/CPE/CmdModel.cs @@ -81,9 +81,10 @@ namespace MCGalaxy.Commands.CPE { else Player.Message(who, "Changed your own model to a &c" + model); - Server.Models.DeleteStartsWith(who.name + " "); + Server.models.Remove(who.name); if (model != "humanoid") - Server.Models.Append(who.name + " " + model); + Server.models.Add(who.name, model); + Server.models.Save(); } } diff --git a/Commands/CPE/CmdReachDistance.cs b/Commands/CPE/CmdReachDistance.cs index c44657c20..878a41618 100644 --- a/Commands/CPE/CmdReachDistance.cs +++ b/Commands/CPE/CmdReachDistance.cs @@ -16,8 +16,7 @@ permissions and limitations under the Licenses. */ -namespace MCGalaxy.Commands.CPE { - +namespace MCGalaxy.Commands.CPE { public sealed class CmdReachDistance : Command { public override string name { get { return "reachdistance"; } } diff --git a/Commands/CPE/CmdSkin.cs b/Commands/CPE/CmdSkin.cs index 9b5777ff8..e77aa7ada 100644 --- a/Commands/CPE/CmdSkin.cs +++ b/Commands/CPE/CmdSkin.cs @@ -31,7 +31,7 @@ namespace MCGalaxy.Commands.CPE { public override void Use(Player p, string message) { if (CheckSuper(p, message, "player or bot name")) return; - message = p.truename; + if (message == "") message = p.truename; Player who = p; PlayerBot pBot = null; @@ -73,9 +73,10 @@ namespace MCGalaxy.Commands.CPE { else Player.Message(who, "Changed your own skin to &c" + skin); - Server.Skins.DeleteStartsWith(who.name + " "); + Server.skins.Remove(who.name); if (skin != who.truename) - Server.Skins.Append(who.name + " " + skin); + Server.skins.Add(who.name, skin); + Server.skins.Save(); } } diff --git a/Player/Player.Handlers.cs b/Player/Player.Handlers.cs index d812fef52..2f6f21ffe 100644 --- a/Player/Player.Handlers.cs +++ b/Player/Player.Handlers.cs @@ -602,24 +602,16 @@ namespace MCGalaxy { } void LoadCpeData() { - try { - foreach (string line in Server.Skins.Find(name)) { - string[] parts = line.Split(trimChars, 2); - if (parts.Length == 1) continue; - skinName = parts[1]; - } - } catch (Exception ex) { - Server.ErrorLog(ex); + string line = Server.skins.Find(name); + if (line != null) { + int sep = line.IndexOf(' '); + if (sep >= 0) skinName = line.Substring(sep + 1); } - try { - foreach (string line in Server.Models.Find(name)) { - string[] parts = line.Split(trimChars, 2); - if (parts.Length == 1) continue; - model = parts[1]; - } - } catch (Exception ex) { - Server.ErrorLog(ex); + line = Server.models.Find(name); + if (line != null) { + int sep = line.IndexOf(' '); + if (sep >= 0) model = line.Substring(sep + 1); } } diff --git a/Player/PlayerExtList.cs b/Player/PlayerExtList.cs index bedaf8257..37efc0f4d 100644 --- a/Player/PlayerExtList.cs +++ b/Player/PlayerExtList.cs @@ -97,7 +97,7 @@ namespace MCGalaxy { int space = line.IndexOf(' '); string name = space >= 0 ? line.Substring(0, space) : line; - list.players.Add(line); + list.players.Add(name); } } return list; diff --git a/Server/Server.Tasks.cs b/Server/Server.Tasks.cs index 28d8b1331..85952278f 100644 --- a/Server/Server.Tasks.cs +++ b/Server/Server.Tasks.cs @@ -72,6 +72,8 @@ namespace MCGalaxy { frozen = PlayerList.Load("frozen.txt"); hidden = PlayerList.Load("hidden.txt"); jailed = PlayerExtList.Load("ranks/jailed.txt"); + models = PlayerExtList.Load("extra/models.txt"); + skins = PlayerExtList.Load("extra/skins.txt"); foreach (Group grp in Group.GroupList) grp.playerList = PlayerList.Load(grp.fileName); diff --git a/Server/Server.cs b/Server/Server.cs index 751f358ae..903b5b5b9 100644 --- a/Server/Server.cs +++ b/Server/Server.cs @@ -70,8 +70,6 @@ namespace MCGalaxy public static PlayersFile RankInfo = new PlayersFile("text/rankinfo.txt"); public static PlayersFile TempRanks = new PlayersFile("text/tempranks.txt"); public static PlayersFile Notes = new PlayersFile("text/notes.txt"); - public static PlayersFile Skins = new PlayersFile("extra/skins.txt"); - public static PlayersFile Models = new PlayersFile("extra/models.txt"); public static Version Version { get { return System.Reflection.Assembly.GetAssembly(typeof(Server)).GetName().Version; } } public static string VersionString { @@ -100,7 +98,7 @@ namespace MCGalaxy public static bool ServerSetupFinished = false; public static Auto_CTF ctf = null; public static PlayerList bannedIP, whiteList, ircControllers, muted, ignored, frozen, hidden; - public static PlayerExtList jailed; + public static PlayerExtList jailed, models, skins; public static readonly List Devs = new List(), Mods = new List();