Overridden console playing to print tshock player group

Kick player before shuting down from console
This commit is contained in:
ricky 2011-06-15 12:02:21 +10:00
parent e9dd445055
commit 3f8b78d3b7
3 changed files with 28 additions and 2 deletions

View file

@ -204,6 +204,7 @@ namespace TShockAPI
ChatCommands.Add(new Command("spawnrate", "cfg", SpawnRate));
ChatCommands.Add(new Command("time", "cfg", Time));
ChatCommands.Add(new Command("slap", "pvpfun", Slap));
ChatCommands.Add(new Command("antibuild", "editspawn", ToggleAntiBuild));
ChatCommands.Add(new Command("protectspawn", "editspawn", ProtectSpawn));
ChatCommands.Add(new Command("help", "", Help));
ChatCommands.Add(new Command("playing", "", Playing));
@ -213,7 +214,6 @@ namespace TShockAPI
ChatCommands.Add(new Command("me", "", ThirdPerson));
ChatCommands.Add(new Command("p", "", PartyChat));
ChatCommands.Add(new Command("rules", "", Rules));
ChatCommands.Add(new Command("antibuild", "editspawn", ToggleAntiBuild));
if (ConfigurationManager.DistributationAgent != "terraria-online")
{
ChatCommands.Add(new Command("kill", "kill", Kill));

View file

@ -35,6 +35,7 @@ namespace TShockAPI
{
File.Create(file).Close();
}
public static void CreateIfNot(string file, string data = "")
{
if (!File.Exists(file))

View file

@ -228,6 +228,31 @@ namespace TShockAPI
}
e.Handled = true;
}
if (text.StartsWith("exit"))
{
for (int player = 0; player < Main.maxPlayers; player++)
{
if (Main.player[player].active)
{
Tools.ForceKick(player, "Server shutting down!");
}
}
}
if (text.StartsWith("playing"))
{
int count = 0;
for (int i = 0; i < Main.maxPlayers; i++)
{
if (Main.player[i].active)
{
count++;
Console.WriteLine(string.Format("{0} ({1}) [{2}]", Main.player[i].name,
Netplay.serverSock[i].tcpClient.Client.RemoteEndPoint, Players[i].Group.Name));
}
}
Console.WriteLine(string.Format("{0} players connected.", count));
e.Handled = true;
}
}
public override void DeInitialize()
@ -640,7 +665,7 @@ namespace TShockAPI
if (tsplr.Group.HasPermission("adminchat") && !text.StartsWith("/"))
{
Tools.Broadcast(ConfigurationManager.AdminChatPrefix + "<" + Main.player[ply].name + "> " + text, (byte)ConfigurationManager.AdminChatRGB[0], (byte)ConfigurationManager.AdminChatRGB[1], (byte)ConfigurationManager.AdminChatRGB[2]);
Tools.Broadcast(ConfigurationManager.AdminChatPrefix + "<" + tsplr.Name + "> " + text, (byte)ConfigurationManager.AdminChatRGB[0], (byte)ConfigurationManager.AdminChatRGB[1], (byte)ConfigurationManager.AdminChatRGB[2]);
e.Handled = true;
return;
}