Match the god damned existing tab format

This commit is contained in:
MarioE 2012-08-20 10:33:54 -04:00
parent 8bbed92683
commit 5b032f277d
4 changed files with 186 additions and 186 deletions

View file

@ -82,7 +82,7 @@ namespace TShockAPI
Permission = null;
Names = new List<string>(names);
command = cmd;
AllowServer = true;
AllowServer = true;
DoLog = true;
}
@ -215,13 +215,13 @@ namespace TShockAPI
if (cmd == null)
{
if( player.AwaitingResponse.ContainsKey(cmdName))
{
Action<CommandArgs> call = player.AwaitingResponse[cmdName];
player.AwaitingResponse.Remove(cmdName);
call( new CommandArgs(cmdText, player, args));
return true;
}
if (player.AwaitingResponse.ContainsKey(cmdName))
{
Action<CommandArgs> 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 <day/night/dusk/noon/midnight>");
@ -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<string>();
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<string>();
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 <player> [reason]");
return;
}
private static void Mute(CommandArgs args)
{
if (args.Parameters.Count < 1)
{
args.Player.SendErrorMessage("Invalid syntax! Proper syntax: /mute <player> [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)
{

View file

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

View file

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

View file

@ -174,20 +174,20 @@ namespace TShockAPI
/// <returns>Returns true if the user has that permission.</returns>
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)
{