diff --git a/TShockAPI/Commands.cs b/TShockAPI/Commands.cs index e138648f..32958221 100644 --- a/TShockAPI/Commands.cs +++ b/TShockAPI/Commands.cs @@ -82,7 +82,7 @@ namespace TShockAPI Permission = null; Names = new List(names); command = cmd; - AllowServer = true; + AllowServer = true; DoLog = true; } @@ -215,13 +215,13 @@ namespace TShockAPI if (cmd == null) { - if( player.AwaitingResponse.ContainsKey(cmdName)) - { - Action call = player.AwaitingResponse[cmdName]; - player.AwaitingResponse.Remove(cmdName); - call( new CommandArgs(cmdText, player, args)); - return true; - } + if (player.AwaitingResponse.ContainsKey(cmdName)) + { + Action call = player.AwaitingResponse[cmdName]; + player.AwaitingResponse.Remove(cmdName); + call(new CommandArgs(cmdText, player, args)); + return true; + } player.SendErrorMessage("Invalid command entered. Type /help for a list of valid commands."); return true; } @@ -231,16 +231,16 @@ namespace TShockAPI TShock.Utils.SendLogs(string.Format("{0} tried to execute /{1}.", player.Name, cmdText), Color.Red); player.SendErrorMessage("You do not have access to that command."); } - else if (!cmd.AllowServer && !player.RealPlayer) - { - player.SendErrorMessage("You must use this command in-game."); - } - else - { - if (cmd.DoLog) - TShock.Utils.SendLogs(string.Format("{0} executed: /{1}.", player.Name, cmdText), Color.Red); - cmd.Run(cmdText, player, args); - } + else if (!cmd.AllowServer && !player.RealPlayer) + { + player.SendErrorMessage("You must use this command in-game."); + } + else + { + if (cmd.DoLog) + TShock.Utils.SendLogs(string.Format("{0} executed: /{1}.", player.Name, cmdText), Color.Red); + cmd.Run(cmdText, player, args); + } return true; } @@ -1943,7 +1943,7 @@ namespace TShockAPI { tsply.SaveServerInventory(); } - args.Player.SendSuccessMessage("Save succeeded."); + args.Player.SendSuccessMessage("Save succeeded."); } private static void Settle(CommandArgs args) @@ -2038,19 +2038,19 @@ namespace TShockAPI break; case "night": TSPlayer.Server.SetTime(false, 0.0); - TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to night.", args.Player.Name)); + TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to night.", args.Player.Name)); break; case "dusk": TSPlayer.Server.SetTime(false, 0.0); - TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to dusk.", args.Player.Name)); + TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to dusk.", args.Player.Name)); break; case "noon": TSPlayer.Server.SetTime(true, 27000.0); - TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to noon.", args.Player.Name)); + TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to noon.", args.Player.Name)); break; case "midnight": TSPlayer.Server.SetTime(false, 16200.0); - TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to midnight.", args.Player.Name)); + TSPlayer.All.SendInfoMessage(string.Format("{0} set the time to midnight.", args.Player.Name)); break; default: args.Player.SendErrorMessage("Invalid syntax! Proper syntax: /time "); @@ -2162,68 +2162,68 @@ namespace TShockAPI } } - private static void GetVersion(CommandArgs args) - { - args.Player.SendInfoMessage(string.Format("TShock: {0} ({1}): ({2}/{3})", TShock.VersionNum, TShock.VersionCodename, - TShock.Utils.ActivePlayers(), TShock.Config.MaxSlots)); - } + private static void GetVersion(CommandArgs args) + { + args.Player.SendInfoMessage(string.Format("TShock: {0} ({1}): ({2}/{3})", TShock.VersionNum, TShock.VersionCodename, + TShock.Utils.ActivePlayers(), TShock.Config.MaxSlots)); + } - private static void ListConnectedPlayers(CommandArgs args) - { - //How many players per page - const int pagelimit = 15; - //How many players per line - const int perline = 5; - //Pages start at 0 but are displayed and parsed at 1 - int page = 0; + private static void ListConnectedPlayers(CommandArgs args) + { + //How many players per page + const int pagelimit = 15; + //How many players per line + const int perline = 5; + //Pages start at 0 but are displayed and parsed at 1 + int page = 0; - if (args.Parameters.Count > 0) - { - if (!int.TryParse(args.Parameters[0], out page) || page < 1) - { - args.Player.SendErrorMessage(string.Format("Invalid page number ({0})", page)); - return; - } - page--; //Substract 1 as pages are parsed starting at 1 and not 0 - } + if (args.Parameters.Count > 0) + { + if (!int.TryParse(args.Parameters[0], out page) || page < 1) + { + args.Player.SendErrorMessage(string.Format("Invalid page number ({0})", page)); + return; + } + page--; //Substract 1 as pages are parsed starting at 1 and not 0 + } - var playerList = args.Player.Group.HasPermission(Permissions.seeids) - ? TShock.Utils.GetPlayers(true) - : TShock.Utils.GetPlayers(false); + var playerList = args.Player.Group.HasPermission(Permissions.seeids) + ? TShock.Utils.GetPlayers(true) + : TShock.Utils.GetPlayers(false); - //Check if they are trying to access a page that doesn't exist. - int pagecount = playerList.Count / pagelimit; - if (page > pagecount) - { - args.Player.SendErrorMessage(string.Format("Page number exceeds pages ({0}/{1})", page + 1, pagecount + 1)); - return; - } + //Check if they are trying to access a page that doesn't exist. + int pagecount = playerList.Count / pagelimit; + if (page > pagecount) + { + args.Player.SendErrorMessage(string.Format("Page number exceeds pages ({0}/{1})", page + 1, pagecount + 1)); + return; + } - //Display the current page and the number of pages. - args.Player.SendSuccessMessage(string.Format("Players: {0}/{1}", - TShock.Utils.ActivePlayers(), TShock.Config.MaxSlots)); - args.Player.SendSuccessMessage(string.Format("Current players page {0}/{1}:", page + 1, pagecount + 1)); + //Display the current page and the number of pages. + args.Player.SendSuccessMessage(string.Format("Players: {0}/{1}", + TShock.Utils.ActivePlayers(), TShock.Config.MaxSlots)); + args.Player.SendSuccessMessage(string.Format("Current players page {0}/{1}:", page + 1, pagecount + 1)); - //Add up to pagelimit names to a list - var nameslist = new List(); - for (int i = (page * pagelimit); (i < ((page * pagelimit) + pagelimit)) && i < playerList.Count; i++) - { - nameslist.Add(playerList[i]); - } + //Add up to pagelimit names to a list + var nameslist = new List(); + for (int i = (page * pagelimit); (i < ((page * pagelimit) + pagelimit)) && i < playerList.Count; i++) + { + nameslist.Add(playerList[i]); + } - //convert the list to an array for joining - var names = nameslist.ToArray(); - for (int i = 0; i < names.Length; i += perline) - { - args.Player.SendInfoMessage(string.Join(", ", names, i, Math.Min(names.Length - i, perline))); - } + //convert the list to an array for joining + var names = nameslist.ToArray(); + for (int i = 0; i < names.Length; i += perline) + { + args.Player.SendInfoMessage(string.Join(", ", names, i, Math.Min(names.Length - i, perline))); + } - if (page < pagecount) - { - args.Player.SendInfoMessage(string.Format("Type /who {0} for more players.", (page + 2))); - } - } + if (page < pagecount) + { + args.Player.SendInfoMessage(string.Format("Type /who {0} for more players.", (page + 2))); + } + } private static void AuthToken(CommandArgs args) { @@ -2332,39 +2332,39 @@ namespace TShockAPI args.Player.SendErrorMessage("You are not in a party!"); } - private static void Mute(CommandArgs args) - { - if (args.Parameters.Count < 1) - { - args.Player.SendErrorMessage("Invalid syntax! Proper syntax: /mute [reason]"); - return; - } + private static void Mute(CommandArgs args) + { + if (args.Parameters.Count < 1) + { + args.Player.SendErrorMessage("Invalid syntax! Proper syntax: /mute [reason]"); + return; + } - var players = TShock.Utils.FindPlayer(args.Parameters[0]); - if (players.Count == 0) - args.Player.SendErrorMessage("Invalid player!"); - else if (players.Count > 1) - args.Player.SendErrorMessage("More than one player matched!"); - else if (players[0].Group.HasPermission(Permissions.mute)) - { - args.Player.SendErrorMessage("You cannot mute this player."); - } - else if (players[0].mute) - { - var plr = players[0]; - plr.mute = false; - TSPlayer.All.SendInfoMessage(String.Format("{0} has been unmuted by {1}.", plr.Name, args.Player.Name)); - } - else - { - string reason = "misbehavior"; - if (args.Parameters.Count > 1) - reason = String.Join(" ", args.Parameters.ToArray(), 1, args.Parameters.Count - 1); - var plr = players[0]; - plr.mute = true; - TSPlayer.All.SendInfoMessage(String.Format("{0} has been muted by {1} for {2}.", plr.Name, args.Player.Name, reason)); - } - } + var players = TShock.Utils.FindPlayer(args.Parameters[0]); + if (players.Count == 0) + args.Player.SendErrorMessage("Invalid player!"); + else if (players.Count > 1) + args.Player.SendErrorMessage("More than one player matched!"); + else if (players[0].Group.HasPermission(Permissions.mute)) + { + args.Player.SendErrorMessage("You cannot mute this player."); + } + else if (players[0].mute) + { + var plr = players[0]; + plr.mute = false; + TSPlayer.All.SendInfoMessage(String.Format("{0} has been unmuted by {1}.", plr.Name, args.Player.Name)); + } + else + { + string reason = "misbehavior"; + if (args.Parameters.Count > 1) + reason = String.Join(" ", args.Parameters.ToArray(), 1, args.Parameters.Count - 1); + var plr = players[0]; + plr.mute = true; + TSPlayer.All.SendInfoMessage(String.Format("{0} has been muted by {1} for {2}.", plr.Name, args.Player.Name, reason)); + } + } private static void Motd(CommandArgs args) { diff --git a/TShockAPI/DB/GroupManager.cs b/TShockAPI/DB/GroupManager.cs index 1e0bdb1b..5d962eb0 100644 --- a/TShockAPI/DB/GroupManager.cs +++ b/TShockAPI/DB/GroupManager.cs @@ -126,8 +126,8 @@ namespace TShockAPI.DB } string query = (TShock.Config.StorageType.ToLower() == "sqlite") - ? "INSERT OR IGNORE INTO GroupList (GroupName, Parent, Commands, ChatColor) VALUES (@0, @1, @2, @3);" - : "INSERT IGNORE INTO GroupList SET GroupName=@0, Parent=@1, Commands=@2, ChatColor=@3"; + ? "INSERT OR IGNORE INTO GroupList (GroupName, Parent, Commands, ChatColor) VALUES (@0, @1, @2, @3);" + : "INSERT IGNORE INTO GroupList SET GroupName=@0, Parent=@1, Commands=@2, ChatColor=@3"; if (database.Query(query, name, parentname, permissions, chatcolor) == 1) { groups.Add(group); @@ -183,10 +183,10 @@ namespace TShockAPI.DB if (database.Query(query, parentname, newgroup.Permissions, string.Format("{0},{1},{2}", newgroup.R, newgroup.G, newgroup.B), name) != 1) throw new GroupManagerException("Failed to update group '" + name + "'"); - Group group = TShock.Utils.GetGroup(name); - group.ChatColor = chatcolor; - group.Permissions = permissions; - group.Parent = TShock.Utils.GetGroup(parentname); + Group group = TShock.Utils.GetGroup(name); + group.ChatColor = chatcolor; + group.Permissions = permissions; + group.Parent = TShock.Utils.GetGroup(parentname); } #if COMPAT_SIGS diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 24ce53af..639c8aab 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -1412,15 +1412,15 @@ namespace TShockAPI if (args.Player.RequestedSection) return true; args.Player.RequestedSection = true; - if (String.IsNullOrEmpty(args.Player.Name)) - { - TShock.Utils.ForceKick(args.Player, "Blank name.", true); - return true; - } + if (String.IsNullOrEmpty(args.Player.Name)) + { + TShock.Utils.ForceKick(args.Player, "Blank name.", true); + return true; + } if (TShock.HackedHealth(args.Player) && !args.Player.Group.HasPermission(Permissions.ignorestathackdetection)) { TShock.Utils.ForceKick(args.Player, "You have hacked health/mana, please use a different character.", true); - return true; + return true; } if (!args.Player.Group.HasPermission(Permissions.ignorestackhackdetection)) @@ -1675,7 +1675,7 @@ namespace TShockAPI { return true; } - if (type == 1 && (tiletype == 29 || tiletype == 97) && TShock.Config.ServerSideInventory && TShock.Config.DisablePiggybanksOnSSI) + if (type == 1 && (tiletype == 29 || tiletype == 97) && TShock.Config.ServerSideInventory && TShock.Config.DisablePiggybanksOnSSI) { args.Player.SendMessage("You cannot place this tile, server side inventory is enabled.", Color.Red); args.Player.SendTileSquare(tileX, tileY); @@ -1688,25 +1688,25 @@ namespace TShockAPI args.Player.SendTileSquare(tileX, tileY); return true; } - if (type == 1 && tiletype == 21) - { - if (TShock.Utils.MaxChests()) - { - args.Player.SendMessage("Reached the world's max chest limit, unable to place more.", Color.Red); - args.Player.SendTileSquare(tileX, tileY); - return true; - } - if ((TShock.Utils.TileInRange(tileX, tileY + 1) && Main.tile[tileX, tileY + 1].type == 138) || - (TShock.Utils.TileInRange(tileX + 1, tileY + 1) && Main.tile[tileX + 1, tileY + 1].type == 138)) - { - args.Player.SendTileSquare(tileX, tileY); - return true; - } - } + if (type == 1 && tiletype == 21) + { + if (TShock.Utils.MaxChests()) + { + args.Player.SendMessage("Reached the world's max chest limit, unable to place more.", Color.Red); + args.Player.SendTileSquare(tileX, tileY); + return true; + } + if ((TShock.Utils.TileInRange(tileX, tileY + 1) && Main.tile[tileX, tileY + 1].type == 138) || + (TShock.Utils.TileInRange(tileX + 1, tileY + 1) && Main.tile[tileX + 1, tileY + 1].type == 138)) + { + args.Player.SendTileSquare(tileX, tileY); + return true; + } + } if (tiletype == 141 && !args.Player.Group.HasPermission(Permissions.usebanneditem) && TShock.Itembans.ItemIsBanned("Explosives", args.Player)) { - args.Player.Disable("Used banned explosives tile without permission."); + args.Player.Disable("Used banned explosives tile without permission."); args.Player.SendTileSquare(tileX, tileY); return true; } @@ -1909,10 +1909,10 @@ namespace TShockAPI if (!args.Player.Group.HasPermission(Permissions.ignorenoclipdetection) && TSCheckNoclip(pos, args.TPlayer.width, args.TPlayer.height) && !TShock.Config.IgnoreNoClip - && !args.TPlayer.tongued) + && !args.TPlayer.tongued) { - int lastTileX = (int) (args.Player.LastNetPosition.X/16f); - int lastTileY = (int) (args.Player.LastNetPosition.Y/16f); + int lastTileX = (int)(args.Player.LastNetPosition.X / 16f); + int lastTileY = (int)(args.Player.LastNetPosition.Y / 16f); if (!args.Player.Teleport(lastTileX, lastTileY + 3)) { args.Player.SendErrorMessage("You got stuck in a solid object, Sent to spawn point."); @@ -2162,34 +2162,34 @@ namespace TShockAPI { args.Player.TileLiquidThreshold++; } - if (liquid != 0) - { - int bucket = 0; - if (args.TPlayer.inventory[args.TPlayer.selectedItem].type == 206) - { - bucket = 1; - } - else if (args.TPlayer.inventory[args.TPlayer.selectedItem].type == 207) - { - bucket = 2; - } + if (liquid != 0) + { + int bucket = 0; + if (args.TPlayer.inventory[args.TPlayer.selectedItem].type == 206) + { + bucket = 1; + } + else if (args.TPlayer.inventory[args.TPlayer.selectedItem].type == 207) + { + bucket = 2; + } - if (lava && bucket != 2 && !args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Lava Bucket", args.Player)) - { - args.Player.Disable("Using banned lava bucket without permissions."); - args.Player.SendTileSquare(tileX, tileY); - return true; - } + if (lava && bucket != 2 && !args.Player.Group.HasPermission(Permissions.usebanneditem) && + TShock.Itembans.ItemIsBanned("Lava Bucket", args.Player)) + { + args.Player.Disable("Using banned lava bucket without permissions."); + args.Player.SendTileSquare(tileX, tileY); + return true; + } - if (!lava && bucket != 1 && !args.Player.Group.HasPermission(Permissions.usebanneditem) && - TShock.Itembans.ItemIsBanned("Water Bucket", args.Player)) - { - args.Player.Disable("Using banned water bucket without permissions."); - args.Player.SendTileSquare(tileX, tileY); - return true; - } - } + if (!lava && bucket != 1 && !args.Player.Group.HasPermission(Permissions.usebanneditem) && + TShock.Itembans.ItemIsBanned("Water Bucket", args.Player)) + { + args.Player.Disable("Using banned water bucket without permissions."); + args.Player.SendTileSquare(tileX, tileY); + return true; + } + } if (TShock.CheckTilePermission(args.Player, tileX, tileY)) { @@ -2465,10 +2465,10 @@ namespace TShockAPI return true; // player is attempting to crash clients - if (type < -24 || type >= Main.maxItemTypes) - { - return true; - } + if (type < -24 || type >= Main.maxItemTypes) + { + return true; + } if (type == 0) //Item removed, let client do this to prevent item duplication client side { return false; @@ -2529,9 +2529,9 @@ namespace TShockAPI if (TShock.Players[id] == null) return true; - if (dmg > TShock.Config.MaxDamage && !args.Player.Group.HasPermission(Permissions.ignoredamagecap) && id != args.Player.Index) + if (dmg > TShock.Config.MaxDamage && !args.Player.Group.HasPermission(Permissions.ignoredamagecap) && id != args.Player.Index) { - args.Player.Disable(String.Format("Player damage exceeded {0}.", TShock.Config.MaxDamage ) ); + args.Player.Disable(String.Format("Player damage exceeded {0}.", TShock.Config.MaxDamage)); args.Player.SendData(PacketTypes.PlayerHp, "", id); args.Player.SendData(PacketTypes.PlayerUpdate, "", id); return true; diff --git a/TShockAPI/Group.cs b/TShockAPI/Group.cs index 155b4098..d525ee54 100644 --- a/TShockAPI/Group.cs +++ b/TShockAPI/Group.cs @@ -174,20 +174,20 @@ namespace TShockAPI /// Returns true if the user has that permission. public virtual bool HasPermission(string permission) { - if (String.IsNullOrEmpty(permission) || RealHasPermission(permission)) - { - return true; - } - string[] nodes = permission.Split('.'); - for (int i = nodes.Length - 1; i >= 0; i--) - { - nodes[i] = "*"; - if (RealHasPermission(String.Join(".", nodes, 0, i + 1))) - { - return true; - } - } - return false; + if (String.IsNullOrEmpty(permission) || RealHasPermission(permission)) + { + return true; + } + string[] nodes = permission.Split('.'); + for (int i = nodes.Length - 1; i >= 0; i--) + { + nodes[i] = "*"; + if (RealHasPermission(String.Join(".", nodes, 0, i + 1))) + { + return true; + } + } + return false; } private bool RealHasPermission(string permission) {