As per High's complaining, holocaust against the Tools class (now Utils)
Plugin developers: You really need to change to reference this.
This commit is contained in:
parent
d32d36b459
commit
8514140ca7
15 changed files with 764 additions and 763 deletions
|
|
@ -64,9 +64,9 @@ namespace TShockAPI
|
|||
if (worldpath != null && !Directory.Exists(worldpath))
|
||||
Directory.CreateDirectory(worldpath);
|
||||
|
||||
Tools.Broadcast("Server map saving, potential lag spike");
|
||||
TShock.Utils.Broadcast("Server map saving, potential lag spike");
|
||||
Console.WriteLine("Backing up world...");
|
||||
Thread SaveWorld = new Thread(Tools.SaveWorld);
|
||||
Thread SaveWorld = new Thread(TShock.Utils.SaveWorld);
|
||||
SaveWorld.Start();
|
||||
|
||||
while (SaveWorld.ThreadState == ThreadState.Running)
|
||||
|
|
|
|||
|
|
@ -209,13 +209,13 @@ namespace TShockAPI
|
|||
|
||||
if (!cmd.CanRun(player))
|
||||
{
|
||||
Tools.SendLogs(string.Format("{0} tried to execute {1}", player.Name, cmd.Name), Color.Red);
|
||||
TShock.Utils.SendLogs(string.Format("{0} tried to execute {1}", player.Name, cmd.Name), Color.Red);
|
||||
player.SendMessage("You do not have access to that command.", Color.Red);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (cmd.DoLog)
|
||||
Tools.SendLogs(string.Format("{0} executed: /{1}", player.Name, cmdText), Color.Red);
|
||||
TShock.Utils.SendLogs(string.Format("{0} executed: /{1}", player.Name, cmdText), Color.Red);
|
||||
cmd.Run(cmdText, player, args);
|
||||
}
|
||||
return true;
|
||||
|
|
@ -311,7 +311,7 @@ namespace TShockAPI
|
|||
if (args.Player.LoginAttempts > TShock.Config.MaximumLoginAttempts && (TShock.Config.MaximumLoginAttempts != -1))
|
||||
{
|
||||
Log.Warn(args.Player.IP + "(" + args.Player.Name + ") had " + TShock.Config.MaximumLoginAttempts + " or more invalid login attempts and was kicked automatically.");
|
||||
Tools.Kick(args.Player, "Too many invalid login attempts.");
|
||||
TShock.Utils.Kick(args.Player, "Too many invalid login attempts.");
|
||||
}
|
||||
|
||||
if (args.Parameters.Count != 2)
|
||||
|
|
@ -322,7 +322,7 @@ namespace TShockAPI
|
|||
}
|
||||
try
|
||||
{
|
||||
string encrPass = Tools.HashPassword(args.Parameters[1]);
|
||||
string encrPass = TShock.Utils.HashPassword(args.Parameters[1]);
|
||||
var user = TShock.Users.GetUserByName(args.Parameters[0]);
|
||||
if (user == null)
|
||||
{
|
||||
|
|
@ -330,7 +330,7 @@ namespace TShockAPI
|
|||
}
|
||||
else if (user.Password.ToUpper() == encrPass.ToUpper())
|
||||
{
|
||||
args.Player.Group = Tools.GetGroup(user.Group);
|
||||
args.Player.Group = TShock.Utils.GetGroup(user.Group);
|
||||
args.Player.UserAccountName = args.Parameters[0];
|
||||
args.Player.UserID = TShock.Users.GetUserID(args.Player.UserAccountName);
|
||||
args.Player.IsLoggedIn = true;
|
||||
|
|
@ -359,7 +359,7 @@ namespace TShockAPI
|
|||
if (args.Player.IsLoggedIn && args.Parameters.Count == 2)
|
||||
{
|
||||
var user = TShock.Users.GetUserByName(args.Player.UserAccountName);
|
||||
string encrPass = Tools.HashPassword(args.Parameters[0]);
|
||||
string encrPass = TShock.Utils.HashPassword(args.Parameters[0]);
|
||||
if (user.Password.ToUpper() == encrPass.ToUpper())
|
||||
{
|
||||
args.Player.SendMessage("You changed your password!", Color.Green);
|
||||
|
|
@ -600,7 +600,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
var players = Tools.FindPlayer(args.Parameters[0]);
|
||||
var players = TShock.Utils.FindPlayer(args.Parameters[0]);
|
||||
if (players.Count > 1)
|
||||
{
|
||||
args.Player.SendMessage("More than one player matched your query.", Color.Red);
|
||||
|
|
@ -630,7 +630,7 @@ namespace TShockAPI
|
|||
}
|
||||
|
||||
string plStr = args.Parameters[0];
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -642,7 +642,7 @@ namespace TShockAPI
|
|||
else
|
||||
{
|
||||
string reason = args.Parameters.Count > 1 ? String.Join(" ", args.Parameters.GetRange(1, args.Parameters.Count - 1)) : "Misbehaviour.";
|
||||
if (!Tools.Kick(players[0], reason))
|
||||
if (!TShock.Utils.Kick(players[0], reason))
|
||||
{
|
||||
args.Player.SendMessage("You can't kick another admin!", Color.Red);
|
||||
}
|
||||
|
|
@ -663,7 +663,7 @@ namespace TShockAPI
|
|||
}
|
||||
|
||||
string plStr = args.Parameters[0];
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -675,7 +675,7 @@ namespace TShockAPI
|
|||
else
|
||||
{
|
||||
string reason = args.Parameters.Count > 1 ? String.Join(" ", args.Parameters.GetRange(1, args.Parameters.Count - 1)) : "Misbehaviour.";
|
||||
if (!Tools.Ban(players[0], reason))
|
||||
if (!TShock.Utils.Ban(players[0], reason))
|
||||
{
|
||||
args.Player.SendMessage("You can't ban another admin!", Color.Red);
|
||||
}
|
||||
|
|
@ -856,20 +856,20 @@ namespace TShockAPI
|
|||
message += " " + args.Parameters[i];
|
||||
}
|
||||
|
||||
Tools.Broadcast("(Server Broadcast)" + message, Color.Red);
|
||||
TShock.Utils.Broadcast("(Server Broadcast)" + message, Color.Red);
|
||||
return;
|
||||
}
|
||||
|
||||
private static void Off(CommandArgs args)
|
||||
{
|
||||
Tools.ForceKickAll("Server shutting down!");
|
||||
TShock.Utils.ForceKickAll("Server shutting down!");
|
||||
WorldGen.saveWorld();
|
||||
Netplay.disconnect = true;
|
||||
}
|
||||
|
||||
private static void OffNoSave(CommandArgs args)
|
||||
{
|
||||
Tools.ForceKickAll("Server shutting down!");
|
||||
TShock.Utils.ForceKickAll("Server shutting down!");
|
||||
Netplay.disconnect = true;
|
||||
}
|
||||
|
||||
|
|
@ -906,7 +906,7 @@ namespace TShockAPI
|
|||
|
||||
Process.Start(new ProcessStartInfo("UpdateTShock.exe"));
|
||||
|
||||
Tools.ForceKickAll("Server shutting down for update!");
|
||||
TShock.Utils.ForceKickAll("Server shutting down for update!");
|
||||
WorldGen.saveWorld();
|
||||
Netplay.disconnect = true;
|
||||
}
|
||||
|
|
@ -940,19 +940,19 @@ namespace TShockAPI
|
|||
private static void Bloodmoon(CommandArgs args)
|
||||
{
|
||||
TSPlayer.Server.SetBloodMoon(true);
|
||||
Tools.Broadcast(string.Format("{0} turned on blood moon.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} turned on blood moon.", args.Player.Name));
|
||||
}
|
||||
|
||||
private static void Invade(CommandArgs args)
|
||||
{
|
||||
if (Main.invasionSize <= 0)
|
||||
{
|
||||
Tools.Broadcast(string.Format("{0} has started an invasion.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has started an invasion.", args.Player.Name));
|
||||
TShock.StartInvasion();
|
||||
}
|
||||
else
|
||||
{
|
||||
Tools.Broadcast(string.Format("{0} has ended an invasion.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has ended an invasion.", args.Player.Name));
|
||||
Main.invasionSize = 0;
|
||||
}
|
||||
}
|
||||
|
|
@ -971,9 +971,9 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
amount = Math.Min(amount, Main.maxNPCs);
|
||||
NPC eater = Tools.GetNPCById(13);
|
||||
NPC eater = TShock.Utils.GetNPCById(13);
|
||||
TSPlayer.Server.SpawnNPC(eater.type, eater.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
Tools.Broadcast(string.Format("{0} has spawned eater of worlds {1} times!", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has spawned eater of worlds {1} times!", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void Eye(CommandArgs args)
|
||||
|
|
@ -990,10 +990,10 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
amount = Math.Min(amount, Main.maxNPCs);
|
||||
NPC eye = Tools.GetNPCById(4);
|
||||
NPC eye = TShock.Utils.GetNPCById(4);
|
||||
TSPlayer.Server.SetTime(false, 0.0);
|
||||
TSPlayer.Server.SpawnNPC(eye.type, eye.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
Tools.Broadcast(string.Format("{0} has spawned eye {1} times!", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has spawned eye {1} times!", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void King(CommandArgs args)
|
||||
|
|
@ -1010,9 +1010,9 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
amount = Math.Min(amount, Main.maxNPCs);
|
||||
NPC king = Tools.GetNPCById(50);
|
||||
NPC king = TShock.Utils.GetNPCById(50);
|
||||
TSPlayer.Server.SpawnNPC(king.type, king.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
Tools.Broadcast(string.Format("{0} has spawned king slime {1} times!", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has spawned king slime {1} times!", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void Skeletron(CommandArgs args)
|
||||
|
|
@ -1029,10 +1029,10 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
amount = Math.Min(amount, Main.maxNPCs);
|
||||
NPC skeletron = Tools.GetNPCById(35);
|
||||
NPC skeletron = TShock.Utils.GetNPCById(35);
|
||||
TSPlayer.Server.SetTime(false, 0.0);
|
||||
TSPlayer.Server.SpawnNPC(skeletron.type, skeletron.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
Tools.Broadcast(string.Format("{0} has spawned skeletron {1} times!", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has spawned skeletron {1} times!", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void Hardcore(CommandArgs args)
|
||||
|
|
@ -1049,16 +1049,16 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
amount = Math.Min(amount, Main.maxNPCs / 4);
|
||||
NPC eater = Tools.GetNPCById(13);
|
||||
NPC eye = Tools.GetNPCById(4);
|
||||
NPC king = Tools.GetNPCById(50);
|
||||
NPC skeletron = Tools.GetNPCById(35);
|
||||
NPC eater = TShock.Utils.GetNPCById(13);
|
||||
NPC eye = TShock.Utils.GetNPCById(4);
|
||||
NPC king = TShock.Utils.GetNPCById(50);
|
||||
NPC skeletron = TShock.Utils.GetNPCById(35);
|
||||
TSPlayer.Server.SetTime(false, 0.0);
|
||||
TSPlayer.Server.SpawnNPC(eater.type, eater.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
TSPlayer.Server.SpawnNPC(eye.type, eye.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
TSPlayer.Server.SpawnNPC(king.type, king.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
TSPlayer.Server.SpawnNPC(skeletron.type, skeletron.name, amount, args.Player.TileX, args.Player.TileY);
|
||||
Tools.Broadcast(string.Format("{0} has spawned all bosses {1} times!", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} has spawned all bosses {1} times!", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void SpawnMob(CommandArgs args)
|
||||
|
|
@ -1082,7 +1082,7 @@ namespace TShockAPI
|
|||
|
||||
amount = Math.Min(amount, Main.maxNPCs);
|
||||
|
||||
var npcs = Tools.GetNPCByIdOrName(args.Parameters[0]);
|
||||
var npcs = TShock.Utils.GetNPCByIdOrName(args.Parameters[0]);
|
||||
if (npcs.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid mob type!", Color.Red);
|
||||
|
|
@ -1097,7 +1097,7 @@ namespace TShockAPI
|
|||
if (npc.type >= 1 && npc.type < Main.maxNPCTypes)
|
||||
{
|
||||
TSPlayer.Server.SpawnNPC(npc.type, npc.name, amount, args.Player.TileX, args.Player.TileY, 50, 20);
|
||||
Tools.Broadcast(string.Format("{0} was spawned {1} time(s).", npc.name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} was spawned {1} time(s).", npc.name, amount));
|
||||
}
|
||||
else
|
||||
args.Player.SendMessage("Invalid mob type!", Color.Red);
|
||||
|
|
@ -1147,7 +1147,7 @@ namespace TShockAPI
|
|||
}
|
||||
|
||||
string plStr = String.Join(" ", args.Parameters);
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
else if (players.Count > 1)
|
||||
|
|
@ -1190,7 +1190,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -1219,7 +1219,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
var foundplr = Tools.FindPlayer(args.Parameters[0]);
|
||||
var foundplr = TShock.Utils.FindPlayer(args.Parameters[0]);
|
||||
if (foundplr.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -1458,7 +1458,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (args.Parameters.Count > 0)
|
||||
{
|
||||
var items = Tools.GetItemByIdOrName(args.Parameters[0]);
|
||||
var items = TShock.Utils.GetItemByIdOrName(args.Parameters[0]);
|
||||
if (items.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid item type!", Color.Red);
|
||||
|
|
@ -1491,7 +1491,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (args.Parameters.Count > 0)
|
||||
{
|
||||
var items = Tools.GetItemByIdOrName(args.Parameters[0]);
|
||||
var items = TShock.Utils.GetItemByIdOrName(args.Parameters[0]);
|
||||
if (items.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid item type!", Color.Red);
|
||||
|
|
@ -1529,8 +1529,8 @@ namespace TShockAPI
|
|||
Main.spawnTileX = args.Player.TileX + 1;
|
||||
Main.spawnTileY = args.Player.TileY + 3;
|
||||
|
||||
Tools.Broadcast("Server map saving, potential lag spike");
|
||||
Thread SaveWorld = new Thread(Tools.SaveWorld);
|
||||
TShock.Utils.Broadcast("Server map saving, potential lag spike");
|
||||
Thread SaveWorld = new Thread(TShock.Utils.SaveWorld);
|
||||
SaveWorld.Start();
|
||||
}
|
||||
|
||||
|
|
@ -1577,8 +1577,8 @@ namespace TShockAPI
|
|||
|
||||
private static void Save(CommandArgs args)
|
||||
{
|
||||
Tools.Broadcast("Server map saving, potential lag spike");
|
||||
Thread SaveWorld = new Thread(Tools.SaveWorld);
|
||||
TShock.Utils.Broadcast("Server map saving, potential lag spike");
|
||||
Thread SaveWorld = new Thread(TShock.Utils.SaveWorld);
|
||||
SaveWorld.Start();
|
||||
}
|
||||
|
||||
|
|
@ -1591,7 +1591,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
Liquid.StartPanic();
|
||||
Tools.Broadcast("Settling all liquids...");
|
||||
TShock.Utils.Broadcast("Settling all liquids...");
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1607,7 +1607,7 @@ namespace TShockAPI
|
|||
int.TryParse(args.Parameters[0], out amount);
|
||||
NPC.defaultMaxSpawns = amount;
|
||||
TShock.Config.DefaultMaximumSpawns = amount;
|
||||
Tools.Broadcast(string.Format("{0} changed the maximum spawns to: {1}", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} changed the maximum spawns to: {1}", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
private static void SpawnRate(CommandArgs args)
|
||||
|
|
@ -1622,7 +1622,7 @@ namespace TShockAPI
|
|||
int.TryParse(args.Parameters[0], out amount);
|
||||
NPC.defaultSpawnRate = amount;
|
||||
TShock.Config.DefaultSpawnRate = amount;
|
||||
Tools.Broadcast(string.Format("{0} changed the spawn rate to: {1}", args.Player.Name, amount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} changed the spawn rate to: {1}", args.Player.Name, amount));
|
||||
}
|
||||
|
||||
#endregion Server Config Commands
|
||||
|
|
@ -1641,23 +1641,23 @@ namespace TShockAPI
|
|||
{
|
||||
case "day":
|
||||
TSPlayer.Server.SetTime(true, 150.0);
|
||||
Tools.Broadcast(string.Format("{0} set time to day.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} set time to day.", args.Player.Name));
|
||||
break;
|
||||
case "night":
|
||||
TSPlayer.Server.SetTime(false, 0.0);
|
||||
Tools.Broadcast(string.Format("{0} set time to night.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} set time to night.", args.Player.Name));
|
||||
break;
|
||||
case "dusk":
|
||||
TSPlayer.Server.SetTime(false, 0.0);
|
||||
Tools.Broadcast(string.Format("{0} set time to dusk.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} set time to dusk.", args.Player.Name));
|
||||
break;
|
||||
case "noon":
|
||||
TSPlayer.Server.SetTime(true, 27000.0);
|
||||
Tools.Broadcast(string.Format("{0} set time to noon.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} set time to noon.", args.Player.Name));
|
||||
break;
|
||||
case "midnight":
|
||||
TSPlayer.Server.SetTime(false, 16200.0);
|
||||
Tools.Broadcast(string.Format("{0} set time to midnight.", args.Player.Name));
|
||||
TShock.Utils.Broadcast(string.Format("{0} set time to midnight.", args.Player.Name));
|
||||
break;
|
||||
default:
|
||||
args.Player.SendMessage("Invalid syntax! Proper syntax: /time <day/night/dusk/noon/midnight>", Color.Red);
|
||||
|
|
@ -1679,7 +1679,7 @@ namespace TShockAPI
|
|||
}
|
||||
|
||||
string plStr = args.Parameters[0];
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -1698,10 +1698,10 @@ namespace TShockAPI
|
|||
}
|
||||
if (!args.Player.Group.HasPermission(Permissions.kill))
|
||||
{
|
||||
damage = Tools.Clamp(damage, 15, 0);
|
||||
damage = TShock.Utils.Clamp(damage, 15, 0);
|
||||
}
|
||||
plr.DamagePlayer(damage);
|
||||
Tools.Broadcast(string.Format("{0} slapped {1} for {2} damage.",
|
||||
TShock.Utils.Broadcast(string.Format("{0} slapped {1} for {2} damage.",
|
||||
args.Player.Name, plr.Name, damage));
|
||||
Log.Info(args.Player.Name + " slapped " + plr.Name + " with " + damage + " damage.");
|
||||
}
|
||||
|
|
@ -1714,13 +1714,13 @@ namespace TShockAPI
|
|||
private static void ToggleAntiBuild(CommandArgs args)
|
||||
{
|
||||
TShock.Config.DisableBuild = (TShock.Config.DisableBuild == false);
|
||||
Tools.Broadcast(string.Format("Anti-build is now {0}.", (TShock.Config.DisableBuild ? "on" : "off")));
|
||||
TShock.Utils.Broadcast(string.Format("Anti-build is now {0}.", (TShock.Config.DisableBuild ? "on" : "off")));
|
||||
}
|
||||
|
||||
private static void ProtectSpawn(CommandArgs args)
|
||||
{
|
||||
TShock.Config.SpawnProtection = (TShock.Config.SpawnProtection == false);
|
||||
Tools.Broadcast(string.Format("Spawn is now {0}.", (TShock.Config.SpawnProtection ? "protected" : "open")));
|
||||
TShock.Utils.Broadcast(string.Format("Spawn is now {0}.", (TShock.Config.SpawnProtection ? "protected" : "open")));
|
||||
}
|
||||
|
||||
private static void DebugRegions(CommandArgs args)
|
||||
|
|
@ -2122,7 +2122,7 @@ namespace TShockAPI
|
|||
|
||||
private static void Playing(CommandArgs args)
|
||||
{
|
||||
args.Player.SendMessage(string.Format("Current players: {0}.", Tools.GetPlayers()), 255, 240, 20);
|
||||
args.Player.SendMessage(string.Format("Current players: {0}.", TShock.Utils.GetPlayers()), 255, 240, 20);
|
||||
}
|
||||
|
||||
private static void AuthToken(CommandArgs args)
|
||||
|
|
@ -2139,7 +2139,7 @@ namespace TShockAPI
|
|||
try
|
||||
{
|
||||
TShock.Users.AddUser(new User(args.Player.IP, "", "", "superadmin"));
|
||||
args.Player.Group = Tools.GetGroup("superadmin");
|
||||
args.Player.Group = TShock.Utils.GetGroup("superadmin");
|
||||
args.Player.SendMessage("This IP address is now superadmin. Please perform the following command:");
|
||||
args.Player.SendMessage("/user add <username>:<password> superadmin");
|
||||
args.Player.SendMessage("Creates: <username> with the password <password> as part of the superadmin group.");
|
||||
|
|
@ -2202,7 +2202,7 @@ namespace TShockAPI
|
|||
args.Player.SendMessage("Invalid syntax! Proper syntax: /me <text>", Color.Red);
|
||||
return;
|
||||
}
|
||||
Tools.Broadcast(string.Format("*{0} {1}", args.Player.Name, String.Join(" ", args.Parameters)), 205, 133, 63);
|
||||
TShock.Utils.Broadcast(string.Format("*{0} {1}", args.Player.Name, String.Join(" ", args.Parameters)), 205, 133, 63);
|
||||
}
|
||||
|
||||
private static void PartyChat(CommandArgs args)
|
||||
|
|
@ -2230,12 +2230,12 @@ namespace TShockAPI
|
|||
|
||||
private static void Motd(CommandArgs args)
|
||||
{
|
||||
Tools.ShowFileToUser(args.Player, "motd.txt");
|
||||
TShock.Utils.ShowFileToUser(args.Player, "motd.txt");
|
||||
}
|
||||
|
||||
private static void Rules(CommandArgs args)
|
||||
{
|
||||
Tools.ShowFileToUser(args.Player, "rules.txt");
|
||||
TShock.Utils.ShowFileToUser(args.Player, "rules.txt");
|
||||
}
|
||||
|
||||
private static void Whisper(CommandArgs args)
|
||||
|
|
@ -2246,7 +2246,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
var players = Tools.FindPlayer(args.Parameters[0]);
|
||||
var players = TShock.Utils.FindPlayer(args.Parameters[0]);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -2288,7 +2288,7 @@ namespace TShockAPI
|
|||
int annoy = 5;
|
||||
int.TryParse(args.Parameters[1], out annoy);
|
||||
|
||||
var players = Tools.FindPlayer(args.Parameters[0]);
|
||||
var players = TShock.Utils.FindPlayer(args.Parameters[0]);
|
||||
if (players.Count == 0)
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
else if (players.Count > 1)
|
||||
|
|
@ -2314,7 +2314,7 @@ namespace TShockAPI
|
|||
}
|
||||
|
||||
string plStr = String.Join(" ", args.Parameters);
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -2353,7 +2353,7 @@ namespace TShockAPI
|
|||
killcount++;
|
||||
}
|
||||
}
|
||||
Tools.Broadcast(string.Format("Killed {0} NPCs.", killcount));
|
||||
TShock.Utils.Broadcast(string.Format("Killed {0} NPCs.", killcount));
|
||||
}
|
||||
|
||||
private static void Item(CommandArgs args)
|
||||
|
|
@ -2370,7 +2370,7 @@ namespace TShockAPI
|
|||
}
|
||||
int itemAmount = 0;
|
||||
int.TryParse(args.Parameters[args.Parameters.Count - 1], out itemAmount);
|
||||
var items = Tools.GetItemByIdOrName(args.Parameters[0]);
|
||||
var items = TShock.Utils.GetItemByIdOrName(args.Parameters[0]);
|
||||
if (items.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid item type!", Color.Red);
|
||||
|
|
@ -2421,7 +2421,7 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
int itemAmount = 0;
|
||||
var items = Tools.GetItemByIdOrName(args.Parameters[0]);
|
||||
var items = TShock.Utils.GetItemByIdOrName(args.Parameters[0]);
|
||||
args.Parameters.RemoveAt(0);
|
||||
string plStr = args.Parameters[0];
|
||||
args.Parameters.RemoveAt(0);
|
||||
|
|
@ -2442,7 +2442,7 @@ namespace TShockAPI
|
|||
var item = items[0];
|
||||
if (item.type >= 1 && item.type < Main.maxItemTypes)
|
||||
{
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -2525,7 +2525,7 @@ namespace TShockAPI
|
|||
if (args.Parameters.Count > 0)
|
||||
{
|
||||
string plStr = String.Join(" ", args.Parameters);
|
||||
var players = Tools.FindPlayer(plStr);
|
||||
var players = TShock.Utils.FindPlayer(plStr);
|
||||
if (players.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -2551,8 +2551,8 @@ namespace TShockAPI
|
|||
playerToHeal = args.Player;
|
||||
}
|
||||
|
||||
Item heart = Tools.GetItemById(58);
|
||||
Item star = Tools.GetItemById(184);
|
||||
Item heart = TShock.Utils.GetItemById(58);
|
||||
Item star = TShock.Utils.GetItemById(184);
|
||||
for (int i = 0; i < 20; i++)
|
||||
playerToHeal.GiveItem(heart.type, heart.name, heart.width, heart.height, heart.maxStack);
|
||||
for (int i = 0; i < 10; i++)
|
||||
|
|
@ -2579,7 +2579,7 @@ namespace TShockAPI
|
|||
int time = 60;
|
||||
if (!int.TryParse(args.Parameters[0], out id))
|
||||
{
|
||||
var found = Tools.GetBuffByName(args.Parameters[0]);
|
||||
var found = TShock.Utils.GetBuffByName(args.Parameters[0]);
|
||||
if (found.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid buff name!", Color.Red);
|
||||
|
|
@ -2600,7 +2600,7 @@ namespace TShockAPI
|
|||
time = 60;
|
||||
args.Player.SetBuff(id, time * 60);
|
||||
args.Player.SendMessage(string.Format("You have buffed yourself with {0}({1}) for {2} seconds!",
|
||||
Tools.GetBuffName(id), Tools.GetBuffDescription(id), (time)), Color.Green);
|
||||
TShock.Utils.GetBuffName(id), TShock.Utils.GetBuffDescription(id), (time)), Color.Green);
|
||||
}
|
||||
else
|
||||
args.Player.SendMessage("Invalid buff ID!", Color.Red);
|
||||
|
|
@ -2615,7 +2615,7 @@ namespace TShockAPI
|
|||
}
|
||||
int id = 0;
|
||||
int time = 60;
|
||||
var foundplr = Tools.FindPlayer(args.Parameters[0]);
|
||||
var foundplr = TShock.Utils.FindPlayer(args.Parameters[0]);
|
||||
if (foundplr.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid player!", Color.Red);
|
||||
|
|
@ -2630,7 +2630,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (!int.TryParse(args.Parameters[1], out id))
|
||||
{
|
||||
var found = Tools.GetBuffByName(args.Parameters[1]);
|
||||
var found = TShock.Utils.GetBuffByName(args.Parameters[1]);
|
||||
if (found.Count == 0)
|
||||
{
|
||||
args.Player.SendMessage("Invalid buff name!", Color.Red);
|
||||
|
|
@ -2651,9 +2651,9 @@ namespace TShockAPI
|
|||
time = 60;
|
||||
foundplr[0].SetBuff(id, time * 60);
|
||||
args.Player.SendMessage(string.Format("You have buffed {0} with {1}({2}) for {3} seconds!",
|
||||
foundplr[0].Name, Tools.GetBuffName(id), Tools.GetBuffDescription(id), (time)), Color.Green);
|
||||
foundplr[0].Name, TShock.Utils.GetBuffName(id), TShock.Utils.GetBuffDescription(id), (time)), Color.Green);
|
||||
foundplr[0].SendMessage(string.Format("{0} has buffed you with {1}({2}) for {3} seconds!",
|
||||
args.Player.Name, Tools.GetBuffName(id), Tools.GetBuffDescription(id), (time)), Color.Green);
|
||||
args.Player.Name, TShock.Utils.GetBuffName(id), TShock.Utils.GetBuffDescription(id), (time)), Color.Green);
|
||||
}
|
||||
else
|
||||
args.Player.SendMessage("Invalid buff ID!", Color.Red);
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ namespace TShockAPI.DB
|
|||
|
||||
if (database.Query("DELETE FROM GroupList WHERE GroupName=@0", name) == 1)
|
||||
message = "Group " + name + " has been deleted successfully.";
|
||||
groups.Remove(Tools.GetGroup(name));
|
||||
groups.Remove(TShock.Utils.GetGroup(name));
|
||||
|
||||
return message;
|
||||
}
|
||||
|
|
@ -149,7 +149,7 @@ namespace TShockAPI.DB
|
|||
if (!GroupExists(name))
|
||||
return "Error: Group doesn't exists.";
|
||||
|
||||
var group = Tools.GetGroup(name);
|
||||
var group = TShock.Utils.GetGroup(name);
|
||||
//Add existing permissions (without duplicating)
|
||||
permissions.AddRange(group.permissions.Where(s => !permissions.Contains(s)));
|
||||
|
||||
|
|
@ -167,7 +167,7 @@ namespace TShockAPI.DB
|
|||
if (!GroupExists(name))
|
||||
return "Error: Group doesn't exists.";
|
||||
|
||||
var group = Tools.GetGroup(name);
|
||||
var group = TShock.Utils.GetGroup(name);
|
||||
|
||||
//Only get permissions that exist in the group.
|
||||
var newperms = group.permissions.Except( permissions );
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ namespace TShockAPI.DB
|
|||
int id = 0;
|
||||
int.TryParse(line, out id);
|
||||
|
||||
database.Query(query, Tools.GetItemById(id).name);
|
||||
database.Query(query, TShock.Utils.GetItemById(id).name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -70,7 +70,7 @@ namespace TShockAPI.DB
|
|||
{
|
||||
try
|
||||
{
|
||||
database.Query("INSERT INTO ItemBans (ItemName) VALUES (@0);", Tools.GetItemByName(itemname)[0].name);
|
||||
database.Query("INSERT INTO ItemBans (ItemName) VALUES (@0);", TShock.Utils.GetItemByName(itemname)[0].name);
|
||||
if (!ItemIsBanned(itemname))
|
||||
ItemBans.Add(itemname);
|
||||
}
|
||||
|
|
@ -86,7 +86,7 @@ namespace TShockAPI.DB
|
|||
return;
|
||||
try
|
||||
{
|
||||
database.Query("Delete FROM 'ItemBans' WHERE ItemName=@0;", Tools.GetItemByName(itemname)[0].name);
|
||||
database.Query("Delete FROM 'ItemBans' WHERE ItemName=@0;", TShock.Utils.GetItemByName(itemname)[0].name);
|
||||
ItemBans.Remove(itemname);
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ namespace TShockAPI.DB
|
|||
if (!TShock.Groups.GroupExists(user.Group))
|
||||
throw new GroupNotExistsException(user.Group);
|
||||
|
||||
if (database.Query("INSERT INTO Users (Username, Password, UserGroup, IP) VALUES (@0, @1, @2, @3);", user.Name, Tools.HashPassword(user.Password), user.Group, user.Address) < 1)
|
||||
if (database.Query("INSERT INTO Users (Username, Password, UserGroup, IP) VALUES (@0, @1, @2, @3);", user.Name, TShock.Utils.HashPassword(user.Password), user.Group, user.Address) < 1)
|
||||
throw new UserExistsException(user.Name);
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
@ -148,7 +148,7 @@ namespace TShockAPI.DB
|
|||
{
|
||||
try
|
||||
{
|
||||
if (database.Query("UPDATE Users SET Password = @0 WHERE Username = @1;", Tools.HashPassword(password), user.Name) == 0)
|
||||
if (database.Query("UPDATE Users SET Password = @0 WHERE Username = @1;", TShock.Utils.HashPassword(password), user.Name) == 0)
|
||||
throw new UserNotExistException(user.Name);
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
@ -210,7 +210,7 @@ namespace TShockAPI.DB
|
|||
if (reader.Read())
|
||||
{
|
||||
string group = reader.Get<string>("UserGroup");
|
||||
return Tools.GetGroup(group);
|
||||
return TShock.Utils.GetGroup(group);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -218,7 +218,7 @@ namespace TShockAPI.DB
|
|||
{
|
||||
Log.ConsoleError("GetGroupForIP SQL returned an error: " + ex);
|
||||
}
|
||||
return Tools.GetGroup("default");
|
||||
return TShock.Utils.GetGroup("default");
|
||||
}
|
||||
|
||||
public Group GetGroupForIPExpensive(string ip)
|
||||
|
|
@ -229,9 +229,9 @@ namespace TShockAPI.DB
|
|||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
if (Tools.GetIPv4Address(reader.Get<string>("IP")) == ip)
|
||||
if (TShock.Utils.GetIPv4Address(reader.Get<string>("IP")) == ip)
|
||||
{
|
||||
return Tools.GetGroup(reader.Get<string>("UserGroup"));
|
||||
return TShock.Utils.GetGroup(reader.Get<string>("UserGroup"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -240,7 +240,7 @@ namespace TShockAPI.DB
|
|||
{
|
||||
Log.ConsoleError("GetGroupForIP SQL returned an error: " + ex);
|
||||
}
|
||||
return Tools.GetGroup("default");
|
||||
return TShock.Utils.GetGroup("default");
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ namespace TShockAPI
|
|||
using (var tr = new StreamReader(WhitelistPath))
|
||||
{
|
||||
string whitelist = tr.ReadToEnd();
|
||||
ip = Tools.GetRealIP(ip);
|
||||
ip = TShock.Utils.GetRealIP(ip);
|
||||
bool contains = whitelist.Contains(ip);
|
||||
if (!contains)
|
||||
{
|
||||
|
|
@ -99,7 +99,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (string.IsNullOrWhiteSpace(line))
|
||||
continue;
|
||||
contains = Tools.GetIPv4Address(line).Equals(ip);
|
||||
contains = TShock.Utils.GetIPv4Address(line).Equals(ip);
|
||||
if (contains)
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -155,8 +155,8 @@ namespace TShockAPI
|
|||
args.Player.Disconnect("Using banned item: " + itemname + ", remove it and rejoin");
|
||||
if (itemname == "KANNIBALE BLADE"
|
||||
|| itemname == "Super Gel")
|
||||
return Tools.HandleCheater(args.Player, string.Format(TShock.Config.GriefClientReason, "KANNIBALE"));
|
||||
if (Tools.GetItemByName(itemname).Count == 0 && !args.Player.Group.HasPermission(Permissions.ignorecheatdetection)
|
||||
return TShock.Utils.HandleCheater(args.Player, string.Format(TShock.Config.GriefClientReason, "KANNIBALE"));
|
||||
if (TShock.Utils.GetItemByName(itemname).Count == 0 && !args.Player.Group.HasPermission(Permissions.ignorecheatdetection)
|
||||
&& TShock.Config.KickCustomItems)
|
||||
args.Player.Disconnect("Using custom item: " + itemname + ", remove it and region");
|
||||
}
|
||||
|
|
@ -175,42 +175,42 @@ namespace TShockAPI
|
|||
|
||||
if (hair >= Main.maxHair)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Hair crash exploit.");
|
||||
TShock.Utils.ForceKick(args.Player, "Hair crash exploit.");
|
||||
return true;
|
||||
}
|
||||
if (!Tools.ValidString(name))
|
||||
if (!TShock.Utils.ValidString(name))
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Unprintable character in name");
|
||||
TShock.Utils.ForceKick(args.Player, "Unprintable character in name");
|
||||
return true;
|
||||
}
|
||||
if (name.Length > 32)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Name exceeded 32 characters.");
|
||||
TShock.Utils.ForceKick(args.Player, "Name exceeded 32 characters.");
|
||||
return true;
|
||||
}
|
||||
if (name.Trim().Length == 0)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Empty Name.");
|
||||
TShock.Utils.ForceKick(args.Player, "Empty Name.");
|
||||
return true;
|
||||
}
|
||||
var ban = TShock.Bans.GetBanByName(name);
|
||||
if (ban != null)
|
||||
{
|
||||
Tools.ForceKick(args.Player, string.Format("You are banned: {0}", ban.Reason));
|
||||
TShock.Utils.ForceKick(args.Player, string.Format("You are banned: {0}", ban.Reason));
|
||||
return true;
|
||||
}
|
||||
if (args.Player.ReceivedInfo)
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, "Sent client info more than once");
|
||||
return TShock.Utils.HandleGriefer(args.Player, "Sent client info more than once");
|
||||
}
|
||||
if (TShock.Config.MediumcoreOnly && difficulty < 1)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Server is set to mediumcore and above characters only!");
|
||||
TShock.Utils.ForceKick(args.Player, "Server is set to mediumcore and above characters only!");
|
||||
return true;
|
||||
}
|
||||
if (TShock.Config.HardcoreOnly && difficulty < 2)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Server is set to hardcore characters only!");
|
||||
TShock.Utils.ForceKick(args.Player, "Server is set to hardcore characters only!");
|
||||
return true;
|
||||
}
|
||||
args.Player.Difficulty = difficulty;
|
||||
|
|
@ -330,7 +330,7 @@ namespace TShockAPI
|
|||
|
||||
if (tiletype >= ((type == 1) ? Main.maxTileSets : Main.maxWallTypes))
|
||||
{
|
||||
Tools.HandleGriefer(args.Player, string.Format(TShock.Config.TileAbuseReason, "Invalid tile type"));
|
||||
TShock.Utils.HandleGriefer(args.Player, string.Format(TShock.Config.TileAbuseReason, "Invalid tile type"));
|
||||
return true;
|
||||
}
|
||||
if (TShock.Config.RangeChecks && ((Math.Abs(plyX - tileX) > 32) || (Math.Abs(plyY - tileY) > 32)))
|
||||
|
|
@ -339,17 +339,17 @@ namespace TShockAPI
|
|||
{
|
||||
Log.Debug(string.Format("TilePlaced(PlyXY:{0}_{1}, TileXY:{2}_{3}, Result:{4}_{5}, Type:{6})",
|
||||
plyX, plyY, tileX, tileY, Math.Abs(plyX - tileX), Math.Abs(plyY - tileY), tiletype));
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
}
|
||||
}
|
||||
if (tiletype == 48 && !args.Player.Group.HasPermission(Permissions.canspike))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to place spikes.", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried to place spikes", args.Player.Name), Color.Red);
|
||||
TShock.Utils.SendLogs(string.Format("{0} tried to place spikes", args.Player.Name), Color.Red);
|
||||
args.Player.SendTileSquare(x, y);
|
||||
return true;
|
||||
}
|
||||
if (type == 1 && tiletype == 21 && Tools.MaxChests())
|
||||
if (type == 1 && tiletype == 21 && TShock.Utils.MaxChests())
|
||||
{
|
||||
args.Player.SendMessage("Reached world's max chest limit, unable to place more!", Color.Red);
|
||||
Log.Info("Reached world's chest limit, unable to place more.");
|
||||
|
|
@ -434,12 +434,12 @@ namespace TShockAPI
|
|||
|
||||
private static bool HandleSendSection(GetDataHandlerArgs args)
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.SendSectionAbuseReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.SendSectionAbuseReason);
|
||||
}
|
||||
|
||||
private static bool HandleNpcUpdate(GetDataHandlerArgs args)
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.NPCSpawnAbuseReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.NPCSpawnAbuseReason);
|
||||
}
|
||||
|
||||
private static bool HandlePlayerUpdate(GetDataHandlerArgs args)
|
||||
|
|
@ -457,12 +457,12 @@ namespace TShockAPI
|
|||
|
||||
if (plr != args.Player.Index)
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.UpdatePlayerAbuseReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.UpdatePlayerAbuseReason);
|
||||
}
|
||||
|
||||
if (item < 0 || item >= args.TPlayer.inventory.Length)
|
||||
{
|
||||
Tools.HandleGriefer(args.Player, TShock.Config.UpdatePlayerAbuseReason);
|
||||
TShock.Utils.HandleGriefer(args.Player, TShock.Config.UpdatePlayerAbuseReason);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -483,7 +483,7 @@ namespace TShockAPI
|
|||
|
||||
if (ident > Main.maxProjectiles || ident < 0)
|
||||
{
|
||||
Tools.HandleGriefer(args.Player, TShock.Config.ExplosiveAbuseReason);
|
||||
TShock.Utils.HandleGriefer(args.Player, TShock.Config.ExplosiveAbuseReason);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -491,7 +491,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (velx == 0f && vely == 0f && dmg == 99)
|
||||
{
|
||||
Tools.HandleGriefer(args.Player, TShock.Config.ProjectileAbuseReason);
|
||||
TShock.Utils.HandleGriefer(args.Player, TShock.Config.ProjectileAbuseReason);
|
||||
return true;
|
||||
}
|
||||
else if (velx == 0f || vely == 0f)
|
||||
|
|
@ -511,7 +511,7 @@ namespace TShockAPI
|
|||
//return true;
|
||||
}
|
||||
else
|
||||
return Tools.HandleExplosivesUser(args.Player, TShock.Config.ExplosiveAbuseReason);
|
||||
return TShock.Utils.HandleExplosivesUser(args.Player, TShock.Config.ExplosiveAbuseReason);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -521,7 +521,7 @@ namespace TShockAPI
|
|||
byte id = args.Data.ReadInt8();
|
||||
if (id != args.Player.Index)
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.KillMeAbuseReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.KillMeAbuseReason);
|
||||
}
|
||||
args.Player.LastDeath = DateTime.Now;
|
||||
if (args.Player.Difficulty != 2)
|
||||
|
|
@ -574,14 +574,14 @@ namespace TShockAPI
|
|||
if (lava && !args.Player.Group.HasPermission(Permissions.canlava))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to use lava", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried using lava", args.Player.Name), Color.Red);
|
||||
TShock.Utils.SendLogs(string.Format("{0} tried using lava", args.Player.Name), Color.Red);
|
||||
args.Player.SendTileSquare(x, y);
|
||||
return true;
|
||||
}
|
||||
if (!lava && !args.Player.Group.HasPermission(Permissions.canwater))
|
||||
{
|
||||
args.Player.SendMessage("You do not have permission to use water", Color.Red);
|
||||
Tools.SendLogs(string.Format("{0} tried using water", args.Player.Name), Color.Red);
|
||||
TShock.Utils.SendLogs(string.Format("{0} tried using water", args.Player.Name), Color.Red);
|
||||
args.Player.SendTileSquare(x, y);
|
||||
return true;
|
||||
}
|
||||
|
|
@ -591,13 +591,13 @@ namespace TShockAPI
|
|||
Log.Debug(string.Format("{0}(PlyXY:{1}_{2}, TileXY:{3}_{4}, Result:{5}_{6}, Amount:{7})",
|
||||
lava ? "Lava" : "Water", plyX, plyY, tileX, tileY,
|
||||
Math.Abs(plyX - tileX), Math.Abs(plyY - tileY), liquid));
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.IllogicalLiquidUseReason); ;
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.IllogicalLiquidUseReason); ;
|
||||
}
|
||||
if (TShock.Config.RangeChecks && ((Math.Abs(plyX - tileX) > 32) || (Math.Abs(plyY - tileY) > 32)))
|
||||
{
|
||||
Log.Debug(string.Format("Liquid(PlyXY:{0}_{1}, TileXY:{2}_{3}, Result:{4}_{5}, Amount:{6})",
|
||||
plyX, plyY, tileX, tileY, Math.Abs(plyX - tileX), Math.Abs(plyY - tileY), liquid));
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.LiquidAbuseReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.LiquidAbuseReason);
|
||||
}
|
||||
|
||||
if (TShock.Config.SpawnProtection)
|
||||
|
|
@ -623,11 +623,11 @@ namespace TShockAPI
|
|||
if (tilex < 0 || tilex >= Main.maxTilesX || tiley < 0 || tiley >= Main.maxTilesY)
|
||||
return false;
|
||||
|
||||
if (Main.tile[tilex, tiley].type != 0x15 && (!Tools.MaxChests() && Main.tile[tilex, tiley].type != 0)) //Chest
|
||||
if (Main.tile[tilex, tiley].type != 0x15 && (!TShock.Utils.MaxChests() && Main.tile[tilex, tiley].type != 0)) //Chest
|
||||
{
|
||||
Log.Debug(string.Format("TileKill(TileXY:{0}_{1}, Type:{2})",
|
||||
tilex, tiley, Main.tile[tilex, tiley].type));
|
||||
Tools.ForceKick(args.Player, string.Format(TShock.Config.TileKillAbuseReason, Main.tile[tilex, tiley].type));
|
||||
TShock.Utils.ForceKick(args.Player, string.Format(TShock.Config.TileKillAbuseReason, Main.tile[tilex, tiley].type));
|
||||
return true;
|
||||
}
|
||||
if (!args.Player.Group.HasPermission(Permissions.canbuild))
|
||||
|
|
@ -681,12 +681,12 @@ namespace TShockAPI
|
|||
{
|
||||
if (TShock.Config.BanOnMediumcoreDeath)
|
||||
{
|
||||
if (!Tools.Ban(args.Player, TShock.Config.MediumcoreBanReason))
|
||||
Tools.ForceKick(args.Player, "Death results in a ban, but can't ban you");
|
||||
if (!TShock.Utils.Ban(args.Player, TShock.Config.MediumcoreBanReason))
|
||||
TShock.Utils.ForceKick(args.Player, "Death results in a ban, but can't ban you");
|
||||
}
|
||||
else
|
||||
{
|
||||
Tools.ForceKick(args.Player, TShock.Config.MediumcoreKickReason);
|
||||
TShock.Utils.ForceKick(args.Player, TShock.Config.MediumcoreKickReason);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
@ -704,7 +704,7 @@ namespace TShockAPI
|
|||
var y = args.Data.ReadInt32();
|
||||
if (TShock.Config.RangeChecks && ((Math.Abs(args.Player.TileX - x) > 32) || (Math.Abs(args.Player.TileY - y) > 32)))
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -716,7 +716,7 @@ namespace TShockAPI
|
|||
var y = args.Data.ReadInt32();
|
||||
if (TShock.Config.RangeChecks && ((Math.Abs(args.Player.TileX - x) > 32) || (Math.Abs(args.Player.TileY - y) > 32)))
|
||||
{
|
||||
return Tools.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
return TShock.Utils.HandleGriefer(args.Player, TShock.Config.RangeCheckBanReason);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -728,7 +728,7 @@ namespace TShockAPI
|
|||
|
||||
if (args.Player.RequestedSection)
|
||||
{
|
||||
Tools.ForceKick(args.Player, "Requested sections more than once.");
|
||||
TShock.Utils.ForceKick(args.Player, "Requested sections more than once.");
|
||||
return true;
|
||||
}
|
||||
args.Player.RequestedSection = true;
|
||||
|
|
|
|||
|
|
@ -36,5 +36,5 @@ using System.Runtime.InteropServices;
|
|||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
|
||||
|
||||
[assembly: AssemblyVersion("3.3.4.1202")]
|
||||
[assembly: AssemblyFileVersion("3.3.4.1202")]
|
||||
[assembly: AssemblyVersion("3.3.4.1201")]
|
||||
[assembly: AssemblyFileVersion("3.3.4.1201")]
|
||||
|
|
|
|||
|
|
@ -204,7 +204,7 @@ namespace TShockAPI
|
|||
response = "infoResponse\n";
|
||||
var infostring = string.Format(@"\_TShock_ver\{6}\mapname\{1}\sv_maxclients\{2}\clients\{3}\sv_privateClients\{4}\hconly\{5}\gamename\TERRARIA\protocol\100\sv_hostname\{0}\g_needPass\{7}",
|
||||
TShock.Config.ServerName, Main.worldName, Main.maxNetPlayers,
|
||||
Tools.ActivePlayers(), Main.maxNetPlayers - TShock.Config.MaxSlots,
|
||||
TShock.Utils.ActivePlayers(), Main.maxNetPlayers - TShock.Config.MaxSlots,
|
||||
TShock.Config.HardcoreOnly ? 1 : 0, TShock.VersionNum,
|
||||
Netplay.password != "" ? 1 : 0);
|
||||
if (challenge != "")
|
||||
|
|
@ -223,7 +223,7 @@ namespace TShockAPI
|
|||
response = "statusResponse\n";
|
||||
var statusstring = string.Format(@"\_TShock_ver\{6}\mapname\{1}\sv_maxclients\{2}\clients\{3}\sv_privateClients\{4}\hconly\{5}\gamename\TERRARIA\protocol\100\sv_hostname\{0}\g_needPass\{7}",
|
||||
TShock.Config.ServerName, Main.worldName, Main.maxNetPlayers,
|
||||
Tools.ActivePlayers(), Main.maxNetPlayers - TShock.Config.MaxSlots,
|
||||
TShock.Utils.ActivePlayers(), Main.maxNetPlayers - TShock.Config.MaxSlots,
|
||||
TShock.Config.HardcoreOnly ? 1 : 0, TShock.VersionNum,
|
||||
Netplay.password != "" ? 1 : 0) + "\n";
|
||||
if (challenge != "")
|
||||
|
|
@ -251,7 +251,7 @@ namespace TShockAPI
|
|||
WorldGen.genRand = new Random();
|
||||
if (text.StartsWith("exit"))
|
||||
{
|
||||
Tools.ForceKickAll("Server shutting down!");
|
||||
TShock.Utils.ForceKickAll("Server shutting down!");
|
||||
WorldGen.saveWorld(false);
|
||||
Netplay.disconnect = true;
|
||||
return "Server shutting down.";
|
||||
|
|
|
|||
|
|
@ -329,7 +329,7 @@ namespace TShockAPI
|
|||
{
|
||||
var returnBlock = new Dictionary<string, object>();
|
||||
var playerParam = parameters["player"];
|
||||
var found = Tools.FindPlayer(playerParam.ToString());
|
||||
var found = TShock.Utils.FindPlayer(playerParam.ToString());
|
||||
if (found.Count == 0)
|
||||
{
|
||||
returnBlock.Add("status", "400");
|
||||
|
|
@ -359,7 +359,7 @@ namespace TShockAPI
|
|||
{
|
||||
var returnBlock = new Dictionary<string, object>();
|
||||
var playerParam = parameters["player"];
|
||||
var found = Tools.FindPlayer(playerParam.ToString());
|
||||
var found = TShock.Utils.FindPlayer(playerParam.ToString());
|
||||
var reason = verbs["reason"];
|
||||
if (found.Count == 0)
|
||||
{
|
||||
|
|
@ -374,7 +374,7 @@ namespace TShockAPI
|
|||
else if (found.Count == 1)
|
||||
{
|
||||
var player = found[0];
|
||||
Tools.ForceKick(player, reason == null ? "Kicked via web" : reason.ToString());
|
||||
TShock.Utils.ForceKick(player, reason == null ? "Kicked via web" : reason.ToString());
|
||||
returnBlock.Add("status", "200");
|
||||
returnBlock.Add("response", "Player " + player.Name + " was kicked");
|
||||
}
|
||||
|
|
@ -384,7 +384,7 @@ namespace TShockAPI
|
|||
{
|
||||
var returnBlock = new Dictionary<string, object>();
|
||||
var playerParam = parameters["player"];
|
||||
var found = Tools.FindPlayer(playerParam.ToString());
|
||||
var found = TShock.Utils.FindPlayer(playerParam.ToString());
|
||||
var reason = verbs["reason"];
|
||||
if (found.Count == 0)
|
||||
{
|
||||
|
|
@ -400,7 +400,7 @@ namespace TShockAPI
|
|||
{
|
||||
var player = found[0];
|
||||
TShock.Bans.AddBan(player.IP, player.Name, reason == null ? "Banned via web" : reason.ToString());
|
||||
Tools.ForceKick(player, reason == null ? "Banned via web" : reason.ToString());
|
||||
TShock.Utils.ForceKick(player, reason == null ? "Banned via web" : reason.ToString());
|
||||
returnBlock.Add("status", "200");
|
||||
returnBlock.Add("response", "Player " + player.Name + " was banned");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ namespace TShockAPI
|
|||
{
|
||||
get
|
||||
{
|
||||
return RealPlayer ? Tools.GetRealIP(Netplay.serverSock[Index].tcpClient.Client.RemoteEndPoint.ToString()) : "";
|
||||
return RealPlayer ? TShock.Utils.GetRealIP(Netplay.serverSock[Index].tcpClient.Client.RemoteEndPoint.ToString()) : "";
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
|
|
@ -402,7 +402,7 @@ namespace TShockAPI
|
|||
{
|
||||
int spawnTileX;
|
||||
int spawnTileY;
|
||||
Tools.GetRandomClearTileWithInRange(startTileX, startTileY, tileXRange, tileYRange, out spawnTileX, out spawnTileY);
|
||||
TShock.Utils.GetRandomClearTileWithInRange(startTileX, startTileY, tileXRange, tileYRange, out spawnTileX, out spawnTileY);
|
||||
int npcid = NPC.NewNPC(spawnTileX * 16, spawnTileY * 16, type, 0);
|
||||
// This is for special slimes
|
||||
Main.npc[npcid].SetDefaults(name);
|
||||
|
|
|
|||
|
|
@ -67,6 +67,7 @@ namespace TShockAPI
|
|||
public static MaxMind.GeoIPCountry Geo;
|
||||
public static SecureRest RestApi;
|
||||
public static RestManager RestManager;
|
||||
public static Utils Utils = new Utils();
|
||||
|
||||
/// <summary>
|
||||
/// Called after TShock is initialized. Useful for plugins that needs hooks before tshock but also depend on tshock being loaded.
|
||||
|
|
@ -224,12 +225,12 @@ namespace TShockAPI
|
|||
return new RestObject("401") { Error = "Invalid username/password combination provided. Please re-submit your query with a correct pair." };
|
||||
}
|
||||
|
||||
if (Tools.HashPassword(password).ToUpper() != userAccount.Password.ToUpper())
|
||||
if (TShock.Utils.HashPassword(password).ToUpper() != userAccount.Password.ToUpper())
|
||||
{
|
||||
return new RestObject("401") { Error = "Invalid username/password combination provided. Please re-submit your query with a correct pair." };
|
||||
}
|
||||
|
||||
if (!Tools.GetGroup(userAccount.Group).HasPermission("api") && userAccount.Group != "superadmin")
|
||||
if (!TShock.Utils.GetGroup(userAccount.Group).HasPermission("api") && userAccount.Group != "superadmin")
|
||||
{
|
||||
return new RestObject("403") { Error = "Although your account was successfully found and identified, your account lacks the permission required to use the API. (api)" };
|
||||
}
|
||||
|
|
@ -411,7 +412,7 @@ namespace TShockAPI
|
|||
{
|
||||
if (player.TileThreshold >= Config.TileThreshold)
|
||||
{
|
||||
if (Tools.HandleTntUser(player, "Kill tile abuse detected."))
|
||||
if (TShock.Utils.HandleTntUser(player, "Kill tile abuse detected."))
|
||||
{
|
||||
TSPlayer.Server.RevertKillTile(player.TilesDestroyed);
|
||||
}
|
||||
|
|
@ -446,9 +447,9 @@ namespace TShockAPI
|
|||
player.Group = Users.GetGroupForIP(player.IP);
|
||||
}
|
||||
|
||||
if (Tools.ActivePlayers() + 1 > Config.MaxSlots && !player.Group.HasPermission(Permissions.reservedslot))
|
||||
if (TShock.Utils.ActivePlayers() + 1 > Config.MaxSlots && !player.Group.HasPermission(Permissions.reservedslot))
|
||||
{
|
||||
Tools.ForceKick(player, Config.ServerFullReason);
|
||||
TShock.Utils.ForceKick(player, Config.ServerFullReason);
|
||||
handler.Handled = true;
|
||||
return;
|
||||
}
|
||||
|
|
@ -456,14 +457,14 @@ namespace TShockAPI
|
|||
var ban = Bans.GetBanByIp(player.IP);
|
||||
if (ban != null)
|
||||
{
|
||||
Tools.ForceKick(player, string.Format("You are banned: {0}", ban.Reason));
|
||||
TShock.Utils.ForceKick(player, string.Format("You are banned: {0}", ban.Reason));
|
||||
handler.Handled = true;
|
||||
return;
|
||||
}
|
||||
|
||||
if (!FileTools.OnWhitelist(player.IP))
|
||||
{
|
||||
Tools.ForceKick(player, "Not on whitelist.");
|
||||
TShock.Utils.ForceKick(player, "Not on whitelist.");
|
||||
handler.Handled = true;
|
||||
return;
|
||||
}
|
||||
|
|
@ -499,22 +500,22 @@ namespace TShockAPI
|
|||
return;
|
||||
}
|
||||
|
||||
if (!Tools.ValidString(text))
|
||||
if (!TShock.Utils.ValidString(text))
|
||||
{
|
||||
Tools.Kick(tsplr, "Unprintable character in chat");
|
||||
TShock.Utils.Kick(tsplr, "Unprintable character in chat");
|
||||
e.Handled = true;
|
||||
return;
|
||||
}
|
||||
|
||||
if (msg.whoAmI != ply)
|
||||
{
|
||||
e.Handled = Tools.HandleGriefer(tsplr, "Faking Chat");
|
||||
e.Handled = TShock.Utils.HandleGriefer(tsplr, "Faking Chat");
|
||||
return;
|
||||
}
|
||||
|
||||
if (tsplr.Group.HasPermission(Permissions.adminchat) && !text.StartsWith("/") && Config.AdminChatEnabled)
|
||||
{
|
||||
Tools.Broadcast(Config.AdminChatPrefix + "<" + tsplr.Name + "> " + text,
|
||||
TShock.Utils.Broadcast(Config.AdminChatPrefix + "<" + tsplr.Name + "> " + text,
|
||||
tsplr.Group.R, tsplr.Group.G,
|
||||
tsplr.Group.B);
|
||||
e.Handled = true;
|
||||
|
|
@ -535,7 +536,7 @@ namespace TShockAPI
|
|||
}
|
||||
else
|
||||
{
|
||||
Tools.Broadcast("{2}<{0}> {1}".SFormat(tsplr.Name, text, Config.ChatDisplayGroup ? "[{0}] ".SFormat(tsplr.Group.Name) : ""),
|
||||
TShock.Utils.Broadcast("{2}<{0}> {1}".SFormat(tsplr.Name, text, Config.ChatDisplayGroup ? "[{0}] ".SFormat(tsplr.Group.Name) : ""),
|
||||
tsplr.Group.R, tsplr.Group.G,
|
||||
tsplr.Group.B);
|
||||
//Log.Info(string.Format("{0} said: {1}", tsplr.Name, text));
|
||||
|
|
@ -565,7 +566,7 @@ namespace TShockAPI
|
|||
|
||||
if (text.StartsWith("exit"))
|
||||
{
|
||||
Tools.ForceKickAll("Server shutting down!");
|
||||
TShock.Utils.ForceKickAll("Server shutting down!");
|
||||
}
|
||||
else if (text.StartsWith("playing") || text.StartsWith("/playing"))
|
||||
{
|
||||
|
|
@ -664,15 +665,15 @@ namespace TShockAPI
|
|||
var code = Geo.TryGetCountryCode(IPAddress.Parse(player.IP));
|
||||
player.Country = code == null ? "N/A" : MaxMind.GeoIPCountry.GetCountryNameByCode(code);
|
||||
Log.Info(string.Format("{0} ({1}) from '{2}' group from '{3}' joined.", player.Name, player.IP, player.Group.Name, player.Country));
|
||||
Tools.Broadcast(player.Name + " is from the " + player.Country, Color.Yellow);
|
||||
TShock.Utils.Broadcast(player.Name + " is from the " + player.Country, Color.Yellow);
|
||||
}
|
||||
else
|
||||
Log.Info(string.Format("{0} ({1}) from '{2}' group joined.", player.Name, player.IP, player.Group.Name));
|
||||
|
||||
Tools.ShowFileToUser(player, "motd.txt");
|
||||
TShock.Utils.ShowFileToUser(player, "motd.txt");
|
||||
if (HackedHealth(player))
|
||||
{
|
||||
Tools.HandleCheater(player, "Hacked health.");
|
||||
TShock.Utils.HandleCheater(player, "Hacked health.");
|
||||
}
|
||||
if (Config.AlwaysPvP)
|
||||
{
|
||||
|
|
@ -780,8 +781,8 @@ namespace TShockAPI
|
|||
|
||||
private void OnSaveWorld(bool resettime, HandledEventArgs e)
|
||||
{
|
||||
Tools.Broadcast("Saving world. Momentary lag might result from this.", Color.Red);
|
||||
Thread SaveWorld = new Thread(Tools.SaveWorld);
|
||||
TShock.Utils.Broadcast("Saving world. Momentary lag might result from this.", Color.Red);
|
||||
Thread SaveWorld = new Thread(TShock.Utils.SaveWorld);
|
||||
SaveWorld.Start();
|
||||
e.Handled = true;
|
||||
}
|
||||
|
|
@ -799,7 +800,7 @@ namespace TShockAPI
|
|||
}
|
||||
else
|
||||
{
|
||||
Main.invasionSize = 100 + (Config.InvasionMultiplier * Tools.ActivePlayers());
|
||||
Main.invasionSize = 100 + (Config.InvasionMultiplier * TShock.Utils.ActivePlayers());
|
||||
}
|
||||
|
||||
Main.invasionWarn = 0;
|
||||
|
|
@ -825,22 +826,22 @@ namespace TShockAPI
|
|||
switch (random)
|
||||
{
|
||||
case 0:
|
||||
Tools.Broadcast(string.Format("You call that a lot? {0} goblins killed!", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("You call that a lot? {0} goblins killed!", KillCount));
|
||||
break;
|
||||
case 1:
|
||||
Tools.Broadcast(string.Format("Fatality! {0} goblins killed!", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("Fatality! {0} goblins killed!", KillCount));
|
||||
break;
|
||||
case 2:
|
||||
Tools.Broadcast(string.Format("Number of 'noobs' killed to date: {0}", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("Number of 'noobs' killed to date: {0}", KillCount));
|
||||
break;
|
||||
case 3:
|
||||
Tools.Broadcast(string.Format("Duke Nukem would be proud. {0} goblins killed.", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("Duke Nukem would be proud. {0} goblins killed.", KillCount));
|
||||
break;
|
||||
case 4:
|
||||
Tools.Broadcast(string.Format("You call that a lot? {0} goblins killed!", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("You call that a lot? {0} goblins killed!", KillCount));
|
||||
break;
|
||||
case 5:
|
||||
Tools.Broadcast(string.Format("{0} copies of Call of Duty smashed.", KillCount));
|
||||
TShock.Utils.Broadcast(string.Format("{0} copies of Call of Duty smashed.", KillCount));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -908,7 +909,7 @@ namespace TShockAPI
|
|||
RconHandler.Password = file.RconPassword;
|
||||
RconHandler.ListenPort = file.RconPort;
|
||||
|
||||
Tools.HashAlgo = file.HashAlgorithm;
|
||||
TShock.Utils.HashAlgo = file.HashAlgorithm;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -128,7 +128,7 @@
|
|||
<Compile Include="Rest\RestObject.cs" />
|
||||
<Compile Include="Rest\RestVerbs.cs" />
|
||||
<Compile Include="Rest\SecureRest.cs" />
|
||||
<Compile Include="Tools.cs" />
|
||||
<Compile Include="Utils.cs" />
|
||||
<Compile Include="TShock.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="TSPlayer.cs" />
|
||||
|
|
@ -184,7 +184,7 @@
|
|||
</PropertyGroup>
|
||||
<ProjectExtensions>
|
||||
<VisualStudio>
|
||||
<UserProperties BuildVersion_IncrementBeforeBuild="False" BuildVersion_StartDate="2011/6/17" BuildVersion_BuildVersioningStyle="None.None.None.MonthAndDayStamp" BuildVersion_BuildAction="Both" BuildVersion_UpdateFileVersion="True" BuildVersion_UpdateAssemblyVersion="True" />
|
||||
<UserProperties BuildVersion_UpdateAssemblyVersion="True" BuildVersion_UpdateFileVersion="True" BuildVersion_BuildAction="Both" BuildVersion_BuildVersioningStyle="None.None.None.MonthAndDayStamp" BuildVersion_StartDate="2011/6/17" BuildVersion_IncrementBeforeBuild="False" />
|
||||
</VisualStudio>
|
||||
</ProjectExtensions>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
|
|
|||
86
TShockAPI/Tools.cs → TShockAPI/Utils.cs
Executable file → Normal file
86
TShockAPI/Tools.cs → TShockAPI/Utils.cs
Executable file → Normal file
|
|
@ -29,9 +29,9 @@ using Terraria;
|
|||
|
||||
namespace TShockAPI
|
||||
{
|
||||
public class Tools
|
||||
public class Utils
|
||||
{
|
||||
public static Random Random = new Random();
|
||||
public Random Random = new Random();
|
||||
//private static List<Group> groups = new List<Group>();
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -39,7 +39,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="mess">A string IPv4 address in IP:PORT form.</param>
|
||||
/// <returns>A string IPv4 address.</returns>
|
||||
public static string GetRealIP(string mess)
|
||||
public string GetRealIP(string mess)
|
||||
{
|
||||
return mess.Split(':')[0];
|
||||
}
|
||||
|
|
@ -48,7 +48,7 @@ namespace TShockAPI
|
|||
/// Used for some places where a list of players might be used.
|
||||
/// </summary>
|
||||
/// <returns>String of players seperated by commas.</returns>
|
||||
public static string GetPlayers()
|
||||
public string GetPlayers()
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
|
|
@ -69,7 +69,7 @@ namespace TShockAPI
|
|||
/// Finds a player and gets IP as string
|
||||
/// </summary>
|
||||
/// <param name="msg">Player name</param>
|
||||
public static string GetPlayerIP(string playername)
|
||||
public string GetPlayerIP(string playername)
|
||||
{
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
{
|
||||
|
|
@ -92,7 +92,7 @@ namespace TShockAPI
|
|||
/// <param name="max">Maximum bounds of the clamp</param>
|
||||
/// <param name="min">Minimum bounds of the clamp</param>
|
||||
/// <returns></returns>
|
||||
public static T Clamp<T>(T value, T max, T min)
|
||||
public T Clamp<T>(T value, T max, T min)
|
||||
where T : IComparable<T>
|
||||
{
|
||||
T result = value;
|
||||
|
|
@ -106,7 +106,7 @@ namespace TShockAPI
|
|||
/// <summary>
|
||||
/// Saves the map data
|
||||
/// </summary>
|
||||
public static void SaveWorld()
|
||||
public void SaveWorld()
|
||||
{
|
||||
WorldGen.saveWorld();
|
||||
Broadcast("World saved.", Color.Yellow);
|
||||
|
|
@ -117,19 +117,19 @@ namespace TShockAPI
|
|||
/// Broadcasts a message to all players
|
||||
/// </summary>
|
||||
/// <param name="msg">string message</param>
|
||||
public static void Broadcast(string msg)
|
||||
public void Broadcast(string msg)
|
||||
{
|
||||
Broadcast(msg, Color.Green);
|
||||
}
|
||||
|
||||
public static void Broadcast(string msg, byte red, byte green, byte blue)
|
||||
public void Broadcast(string msg, byte red, byte green, byte blue)
|
||||
{
|
||||
TSPlayer.All.SendMessage(msg, red, green, blue);
|
||||
TSPlayer.Server.SendMessage(msg, red, green, blue);
|
||||
Log.Info(string.Format("Broadcast: {0}", msg));
|
||||
}
|
||||
|
||||
public static void Broadcast(string msg, Color color)
|
||||
public void Broadcast(string msg, Color color)
|
||||
{
|
||||
Broadcast(msg, color.R, color.G, color.B);
|
||||
}
|
||||
|
|
@ -139,7 +139,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="log"></param>
|
||||
/// <param name="color"></param>
|
||||
public static void SendLogs(string log, Color color)
|
||||
public void SendLogs(string log, Color color)
|
||||
{
|
||||
Log.Info(log);
|
||||
TSPlayer.Server.SendMessage(log, color);
|
||||
|
|
@ -154,7 +154,7 @@ namespace TShockAPI
|
|||
/// The number of active players on the server.
|
||||
/// </summary>
|
||||
/// <returns>int playerCount</returns>
|
||||
public static int ActivePlayers()
|
||||
public int ActivePlayers()
|
||||
{
|
||||
int num = 0;
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
|
|
@ -172,7 +172,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="ply"></param>
|
||||
/// <returns></returns>
|
||||
public static List<TSPlayer> FindPlayer(string ply)
|
||||
public List<TSPlayer> FindPlayer(string ply)
|
||||
{
|
||||
var found = new List<TSPlayer>();
|
||||
ply = ply.ToLower();
|
||||
|
|
@ -190,7 +190,7 @@ namespace TShockAPI
|
|||
return found;
|
||||
}
|
||||
|
||||
public static void GetRandomClearTileWithInRange(int startTileX, int startTileY, int tileXRange, int tileYRange, out int tileX, out int tileY)
|
||||
public void GetRandomClearTileWithInRange(int startTileX, int startTileY, int tileXRange, int tileYRange, out int tileX, out int tileY)
|
||||
{
|
||||
int j = 0;
|
||||
do
|
||||
|
|
@ -209,17 +209,17 @@ namespace TShockAPI
|
|||
while (TileValid(tileX, tileY) && !TileClear(tileX, tileY));
|
||||
}
|
||||
|
||||
private static bool TileValid(int tileX, int tileY)
|
||||
private bool TileValid(int tileX, int tileY)
|
||||
{
|
||||
return tileX >= 0 && tileX <= Main.maxTilesX && tileY >= 0 && tileY <= Main.maxTilesY;
|
||||
}
|
||||
|
||||
private static bool TileClear(int tileX, int tileY)
|
||||
private bool TileClear(int tileX, int tileY)
|
||||
{
|
||||
return !Main.tile[tileX, tileY].active;
|
||||
}
|
||||
|
||||
public static List<Item> GetItemByIdOrName(string idOrName)
|
||||
public List<Item> GetItemByIdOrName(string idOrName)
|
||||
{
|
||||
int type = -1;
|
||||
if (int.TryParse(idOrName, out type))
|
||||
|
|
@ -229,14 +229,14 @@ namespace TShockAPI
|
|||
return GetItemByName(idOrName);
|
||||
}
|
||||
|
||||
public static Item GetItemById(int id)
|
||||
public Item GetItemById(int id)
|
||||
{
|
||||
Item item = new Item();
|
||||
item.SetDefaults(id);
|
||||
return item;
|
||||
}
|
||||
|
||||
public static List<Item> GetItemByName(string name)
|
||||
public List<Item> GetItemByName(string name)
|
||||
{
|
||||
//Method #1 - must be exact match, allows support for different pickaxes/hammers/swords etc
|
||||
for (int i = 1; i < Main.maxItemTypes; i++)
|
||||
|
|
@ -264,7 +264,7 @@ namespace TShockAPI
|
|||
return found;
|
||||
}
|
||||
|
||||
public static List<NPC> GetNPCByIdOrName(string idOrName)
|
||||
public List<NPC> GetNPCByIdOrName(string idOrName)
|
||||
{
|
||||
int type = -1;
|
||||
if (int.TryParse(idOrName, out type))
|
||||
|
|
@ -274,14 +274,14 @@ namespace TShockAPI
|
|||
return GetNPCByName(idOrName);
|
||||
}
|
||||
|
||||
public static NPC GetNPCById(int id)
|
||||
public NPC GetNPCById(int id)
|
||||
{
|
||||
NPC npc = new NPC();
|
||||
npc.SetDefaults(id);
|
||||
return npc;
|
||||
}
|
||||
|
||||
public static List<NPC> GetNPCByName(string name)
|
||||
public List<NPC> GetNPCByName(string name)
|
||||
{
|
||||
//Method #1 - must be exact match, allows support for different coloured slimes
|
||||
for (int i = 1; i < Main.maxNPCTypes; i++)
|
||||
|
|
@ -305,15 +305,15 @@ namespace TShockAPI
|
|||
return found;
|
||||
}
|
||||
|
||||
public static string GetBuffName(int id)
|
||||
public string GetBuffName(int id)
|
||||
{
|
||||
return (id > 0 && id < Main.maxBuffs) ? Main.buffName[id] : "null";
|
||||
}
|
||||
public static string GetBuffDescription(int id)
|
||||
public string GetBuffDescription(int id)
|
||||
{
|
||||
return (id > 0 && id < Main.maxBuffs) ? Main.buffTip[id] : "null";
|
||||
}
|
||||
public static List<int> GetBuffByName(string name)
|
||||
public List<int> GetBuffByName(string name)
|
||||
{
|
||||
for (int i = 1; i < Main.maxBuffs; i++)
|
||||
{
|
||||
|
|
@ -334,7 +334,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="ply">int player</param>
|
||||
/// <param name="reason">string reason</param>
|
||||
public static void ForceKickAll(string reason)
|
||||
public void ForceKickAll(string reason)
|
||||
{
|
||||
foreach (TSPlayer player in TShock.Players)
|
||||
{
|
||||
|
|
@ -350,7 +350,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="ply">int player</param>
|
||||
/// <param name="reason">string reason</param>
|
||||
public static void ForceKick(TSPlayer player, string reason)
|
||||
public void ForceKick(TSPlayer player, string reason)
|
||||
{
|
||||
if (!player.ConnectionAlive)
|
||||
return;
|
||||
|
|
@ -363,7 +363,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="ply">int player</param>
|
||||
/// <param name="reason">string reason</param>
|
||||
public static bool Kick(TSPlayer player, string reason, string adminUserName = "")
|
||||
public bool Kick(TSPlayer player, string reason, string adminUserName = "")
|
||||
{
|
||||
if (!player.ConnectionAlive)
|
||||
return true;
|
||||
|
|
@ -386,7 +386,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="ply">int player</param>
|
||||
/// <param name="reason">string reason</param>
|
||||
public static bool Ban(TSPlayer player, string reason, string adminUserName = "")
|
||||
public bool Ban(TSPlayer player, string reason, string adminUserName = "")
|
||||
{
|
||||
if (!player.ConnectionAlive)
|
||||
return true;
|
||||
|
|
@ -406,27 +406,27 @@ namespace TShockAPI
|
|||
return false;
|
||||
}
|
||||
|
||||
public static bool HandleCheater(TSPlayer player, string reason)
|
||||
public bool HandleCheater(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, "ignorecheatdetection", TShock.Config.BanCheaters, TShock.Config.KickCheaters, reason);
|
||||
}
|
||||
|
||||
public static bool HandleGriefer(TSPlayer player, string reason)
|
||||
public bool HandleGriefer(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanGriefers, TShock.Config.KickGriefers, reason);
|
||||
}
|
||||
|
||||
public static bool HandleTntUser(TSPlayer player, string reason)
|
||||
public bool HandleTntUser(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanKillTileAbusers, TShock.Config.KickKillTileAbusers, reason);
|
||||
}
|
||||
|
||||
public static bool HandleExplosivesUser(TSPlayer player, string reason)
|
||||
public bool HandleExplosivesUser(TSPlayer player, string reason)
|
||||
{
|
||||
return HandleBadPlayer(player, Permissions.ignoregriefdetection, TShock.Config.BanExplosives, TShock.Config.KickExplosives, reason);
|
||||
}
|
||||
|
||||
private static bool HandleBadPlayer(TSPlayer player, string overridePermission, bool ban, bool kick, string reason)
|
||||
private bool HandleBadPlayer(TSPlayer player, string overridePermission, bool ban, bool kick, string reason)
|
||||
{
|
||||
if (!player.Group.HasPermission(overridePermission) || !(player.Group.Name == "superadmin"))
|
||||
{
|
||||
|
|
@ -448,7 +448,7 @@ namespace TShockAPI
|
|||
/// <param name="ply">int player</param>
|
||||
/// <param name="file">string filename reletave to savedir</param>
|
||||
//Todo: Fix this
|
||||
public static void ShowFileToUser(TSPlayer player, string file)
|
||||
public void ShowFileToUser(TSPlayer player, string file)
|
||||
{
|
||||
string foo = "";
|
||||
using (var tr = new StreamReader(Path.Combine(TShock.SavePath, file)))
|
||||
|
|
@ -487,7 +487,7 @@ namespace TShockAPI
|
|||
/// Returns a Group from the name of the group
|
||||
/// </summary>
|
||||
/// <param name="ply">string groupName</param>
|
||||
public static Group GetGroup(string groupName)
|
||||
public Group GetGroup(string groupName)
|
||||
{
|
||||
//first attempt on cached groups
|
||||
for (int i = 0; i < TShock.Groups.groups.Count; i++)
|
||||
|
|
@ -504,7 +504,7 @@ namespace TShockAPI
|
|||
/// Returns an IPv4 address from a DNS query
|
||||
/// </summary>
|
||||
/// <param name="hostname">string ip</param>
|
||||
public static string GetIPv4Address(string hostname)
|
||||
public string GetIPv4Address(string hostname)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
|
@ -519,9 +519,9 @@ namespace TShockAPI
|
|||
return "";
|
||||
}
|
||||
|
||||
public static string HashAlgo = "md5";
|
||||
public string HashAlgo = "md5";
|
||||
|
||||
public static readonly Dictionary<string, Func<HashAlgorithm>> HashTypes = new Dictionary<string, Func<HashAlgorithm>>
|
||||
public readonly Dictionary<string, Func<HashAlgorithm>> HashTypes = new Dictionary<string, Func<HashAlgorithm>>
|
||||
{
|
||||
{"sha512", () => new SHA512Managed()},
|
||||
{"sha256", () => new SHA256Managed()},
|
||||
|
|
@ -536,7 +536,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="bytes">bytes to hash</param>
|
||||
/// <returns>string sha256</returns>
|
||||
public static string HashPassword(byte[] bytes)
|
||||
public string HashPassword(byte[] bytes)
|
||||
{
|
||||
if (bytes == null)
|
||||
throw new NullReferenceException("bytes");
|
||||
|
|
@ -555,7 +555,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="bytes">bytes to hash</param>
|
||||
/// <returns>string sha256</returns>
|
||||
public static string HashPassword(string password)
|
||||
public string HashPassword(string password)
|
||||
{
|
||||
if (string.IsNullOrEmpty(password) || password == "non-existant password")
|
||||
return "non-existant password";
|
||||
|
|
@ -567,7 +567,7 @@ namespace TShockAPI
|
|||
/// </summary>
|
||||
/// <param name="str">String to check</param>
|
||||
/// <returns>True if the string only contains printable characters</returns>
|
||||
public static bool ValidString(string str)
|
||||
public bool ValidString(string str)
|
||||
{
|
||||
foreach (var c in str)
|
||||
{
|
||||
|
|
@ -581,7 +581,7 @@ namespace TShockAPI
|
|||
/// Checks if world has hit the max number of chests
|
||||
/// </summary>
|
||||
/// <returns>True if the entire chest array is used</returns>
|
||||
public static bool MaxChests()
|
||||
public bool MaxChests()
|
||||
{
|
||||
for (int i = 0; i < Main.chest.Length; i++)
|
||||
{
|
||||
|
|
@ -40,7 +40,7 @@ namespace UnitTests
|
|||
{
|
||||
Assert.IsTrue(Groups.AddGroup("test1", "heal") != "");
|
||||
Assert.IsTrue(Groups.GroupExists("test1"));
|
||||
Assert.IsTrue(Tools.GetGroup("test1").HasPermission("heal"));
|
||||
Assert.IsTrue(Utils.GetGroup("test1").HasPermission("heal"));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue