Fixed /rules on console crashing the server

This commit is contained in:
ricky 2011-06-15 12:38:08 +10:00
parent 3f8b78d3b7
commit b1bde376e5
3 changed files with 8 additions and 11 deletions

View file

@ -229,7 +229,7 @@ namespace TShockAPI
public static void Rules(CommandArgs args) public static void Rules(CommandArgs args)
{ {
Tools.ShowFileToUser(args.PlayerID, "rules.txt"); Tools.ShowFileToUser(args.Player, "rules.txt");
} }
public static void ToggleAntiBuild(CommandArgs args) public static void ToggleAntiBuild(CommandArgs args)

View file

@ -631,9 +631,10 @@ namespace TShockAPI
if (Main.netMode != 2) if (Main.netMode != 2)
return; return;
Log.Info(string.Format("{0} ({1}) from '{2}' group joined.", Players[who].Name, Tools.GetPlayerIP(who), Players[who].Group.Name)); TSPlayer player = Players[who];
Log.Info(string.Format("{0} ({1}) from '{2}' group joined.", player.Name, Tools.GetPlayerIP(who), player.Group.Name));
Tools.ShowMOTD(who); Tools.ShowFileToUser(player, "motd.txt");
if (HackedHealth(who)) if (HackedHealth(who))
{ {
Tools.HandleCheater(who, "Hacked health."); Tools.HandleCheater(who, "Hacked health.");

View file

@ -291,18 +291,14 @@ namespace TShockAPI
} }
return false; return false;
} }
[Obsolete("Use ShowFileToUser(int ply, string file) instead.")]
public static void ShowMOTD(int ply)
{
ShowFileToUser(ply, "motd.txt");
}
/// <summary> /// <summary>
/// Shows a file to the user. /// Shows a file to the user.
/// </summary> /// </summary>
/// <param name="ply">int player</param> /// <param name="ply">int player</param>
/// <param name="file">string filename reletave to savedir</param> /// <param name="file">string filename reletave to savedir</param>
//Todo: Fix this //Todo: Fix this
public static void ShowFileToUser(int ply, string file) public static void ShowFileToUser(TSPlayer player, string file)
{ {
string foo = ""; string foo = "";
TextReader tr = new StreamReader(Path.Combine(TShock.SavePath, file)); TextReader tr = new StreamReader(Path.Combine(TShock.SavePath, file));
@ -321,7 +317,7 @@ namespace TShockAPI
{ {
try try
{ {
TShock.Players[ply].SendMessage(foo, (byte)Convert.ToInt32(pCc[0]), (byte)Convert.ToInt32(pCc[1]), (byte)Convert.ToInt32(pCc[2])); player.SendMessage(foo, (byte)Convert.ToInt32(pCc[0]), (byte)Convert.ToInt32(pCc[1]), (byte)Convert.ToInt32(pCc[2]));
continue; continue;
} }
catch (Exception e) catch (Exception e)
@ -330,7 +326,7 @@ namespace TShockAPI
} }
} }
} }
TShock.Players[ply].SendMessage(foo); player.SendMessage(foo);
} }
tr.Close(); tr.Close();
} }