From 362b2b776e2450225db71480a0e721ed5e943f82 Mon Sep 17 00:00:00 2001 From: Maverick Motherfucker Date: Sat, 4 Jun 2011 13:35:52 -0700 Subject: [PATCH] Removed all referneces to admin and replaced with group permissions --- TShockAPI/Commands.cs | 12 +++--------- TShockAPI/FileTools.cs | 1 - TShockAPI/TSPlayer.cs | 13 ------------- TShockAPI/TShock.cs | 6 +++--- TShockAPI/Tools.cs | 40 +--------------------------------------- 5 files changed, 7 insertions(+), 65 deletions(-) diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index 98025bf2..d4755ea2 100644 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -74,7 +74,7 @@ namespace TShockAPI { commands.Add(new Command("kick", "kick", new CommandDelegate(Kick))); commands.Add(new Command("ban", "ban", new CommandDelegate(Ban))); - commands.Add(new Command("off", "power", new CommandDelegate(Off))); + commands.Add(new Command("off", "maintenance", new CommandDelegate(Off))); commands.Add(new Command("reload", "cfg", new CommandDelegate(Reload))); commands.Add(new Command("dropmetor", "causeevents", new CommandDelegate(DropMeteor))); commands.Add(new Command("star", "causeevents", new CommandDelegate(Star))); @@ -100,7 +100,7 @@ namespace TShockAPI commands.Add(new Command("kill", "kill", new CommandDelegate(Kill))); commands.Add(new Command("help", "", new CommandDelegate(Help))); commands.Add(new Command("slap", "pvpfun", new CommandDelegate(Slap))); - commands.Add(new Command("off-nosave", "power", new CommandDelegate(OffNoSave))); + commands.Add(new Command("off-nosave", "maintenance", new CommandDelegate(OffNoSave))); } #region Command Methods @@ -557,9 +557,8 @@ namespace TShockAPI public static void Kill(CommandArgs args) { - bool isadmin = TShock.players[args.PlayerID].IsAdmin(); ; var msgargs = Regex.Split(args.Message, "(?<=^[^\"]*(?:\"[^\"]*\"[^\"]*)*) (?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)"); - if (msgargs.Length == 2 && isadmin) + if (msgargs.Length == 2) { int player = -1; player = Tools.FindPlayer((msgargs[1].TrimEnd('"')).TrimStart('"')); @@ -567,11 +566,6 @@ namespace TShockAPI Tools.SendMessage(player, Tools.FindPlayer(args.PlayerID) + " just killed you!"); TShock.KillMe(player); } - else - { - Tools.SendMessage(args.PlayerID, "You just suicided."); - TShock.KillMe(args.PlayerID); - } } public static void Slap(CommandArgs args) diff --git a/TShockAPI/FileTools.cs b/TShockAPI/FileTools.cs index 7ee5cb11..c7c5fd1a 100644 --- a/TShockAPI/FileTools.cs +++ b/TShockAPI/FileTools.cs @@ -89,7 +89,6 @@ namespace TShockAPI } if (!System.IO.File.Exists(SaveDir + "bans.txt")) { FileTools.CreateFile(SaveDir + "bans.txt"); } if (!System.IO.File.Exists(SaveDir + "cheaters.txt")) { FileTools.CreateFile(SaveDir + "cheaters.txt"); } - if (!System.IO.File.Exists(SaveDir + "admins.txt")) { FileTools.CreateFile(SaveDir + "admins.txt"); } if (!System.IO.File.Exists(SaveDir + "grief.txt")) { FileTools.CreateFile(SaveDir + "grief.txt"); } if (!System.IO.File.Exists(SaveDir + "whitelist.txt")) { FileTools.CreateFile(SaveDir + "whitelist.txt"); } if (!System.IO.File.Exists(SaveDir + "groups.txt")) diff --git a/TShockAPI/TSPlayer.cs b/TShockAPI/TSPlayer.cs index bef5557c..01a18997 100644 --- a/TShockAPI/TSPlayer.cs +++ b/TShockAPI/TSPlayer.cs @@ -13,8 +13,6 @@ namespace TShockAPI public Group group; private int player; - private bool admin; - private bool adminSet; public TSPlayer(int ply) { @@ -30,16 +28,5 @@ namespace TShockAPI { return player; } - - public bool IsAdmin() - { - if (adminSet) - { - return admin; - } - admin = Tools.IsAdmin(player); - adminSet = true; - return admin; - } } } diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 856f1953..04b1ff4e 100644 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -290,7 +290,7 @@ namespace TShockAPI } if (type == 29 || type == 28) { - if (!players[e.Msg.whoAmI].IsAdmin()) + if (!players[e.Msg.whoAmI].group.HasPermission("ignoregriefdetection")) { if (ConfigurationManager.kickBoom || ConfigurationManager.banBoom) { @@ -338,7 +338,7 @@ namespace TShockAPI Main.player[who].hostile = true; NetMessage.SendData(30, -1, -1, "", who); } - if (TShock.players[who].IsAdmin() && ConfigurationManager.infiniteInvasion && !ConfigurationManager.startedInvasion) + if (TShock.players[who].group.HasPermission("causeevents") && ConfigurationManager.infiniteInvasion && !ConfigurationManager.startedInvasion) { StartInvasion(); } @@ -452,7 +452,7 @@ namespace TShockAPI { if (!shownVersion) { - if (TShock.players[ply].IsAdmin()) + if (TShock.players[ply].group.HasPermission("maintenance")) { WebClient client = new WebClient(); client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705;)"); diff --git a/TShockAPI/Tools.cs b/TShockAPI/Tools.cs index c0956dc2..419f5b42 100644 --- a/TShockAPI/Tools.cs +++ b/TShockAPI/Tools.cs @@ -190,44 +190,6 @@ namespace TShockAPI } } - /// - /// Finds a player, reads admins.txt, and determines if their IP address is on that list. - /// - /// int player - /// true/false - public static bool IsAdmin(int ply) - { - string remoteEndPoint = Convert.ToString((Netplay.serverSock[ply].tcpClient.Client.RemoteEndPoint)); - string[] remoteEndPointIP = remoteEndPoint.Split(':'); - TextReader tr = new StreamReader(FileTools.SaveDir + "admins.txt"); - string adminlist = tr.ReadToEnd(); - tr.Close(); - if (adminlist.Contains(remoteEndPointIP[0])) - { - return true; - } - return false; - } - - /// - /// Finds a player based on their name, reads admins.txt, and determines if thier IP address is on that list. - /// - /// - /// - public static bool IsAdmin(string ply) - { - string remoteEndPoint = Convert.ToString((Netplay.serverSock[Tools.FindPlayer(ply)].tcpClient.Client.RemoteEndPoint)); - string[] remoteEndPointIP = remoteEndPoint.Split(':'); - TextReader tr = new StreamReader(FileTools.SaveDir + "admins.txt"); - string adminlist = tr.ReadToEnd(); - tr.Close(); - if (adminlist.Contains(remoteEndPointIP[0])) - { - return true; - } - return false; - } - /// /// Kicks a player from the server. /// @@ -265,7 +227,7 @@ namespace TShockAPI /// int player public static void HandleGriefer(int ply) { - if (!TShock.players[ply].IsAdmin()) + if (!TShock.players[ply].group.HasPermission("ignoregriefdetection")) { string cheater = Tools.FindPlayer(ply); string ip = Tools.GetRealIP(Convert.ToString(Netplay.serverSock[ply].tcpClient.Client.RemoteEndPoint));