Move SendFileToUser to TSP.SendFileTextAsMessage.
This is not a great method, but it's actually the only method in TShock that interpolates the %map% and %players% variables and it used in at least three places in the codebase. Since it's already so specialized, it's not worth changing it to take an actual File object, in my humble opinion. This also clarifies what the method does and what makes it special, as opposed to being fairly generic.
This commit is contained in:
parent
17d151b8f8
commit
3ac52091ea
5 changed files with 41 additions and 41 deletions
|
|
@ -479,44 +479,6 @@ namespace TShockAPI
|
|||
TShock.TileBans.UpdateBans();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Shows a file to the user.
|
||||
/// </summary>
|
||||
/// <param name="player">Player the file contents will be sent to</param>
|
||||
/// <param name="file">Filename relative to <see cref="TShock.SavePath"></see></param>
|
||||
public void ShowFileToUser(TSPlayer player, string file)
|
||||
{
|
||||
string foo = "";
|
||||
bool containsOldFormat = false;
|
||||
using (var tr = new StreamReader(file))
|
||||
{
|
||||
Color lineColor;
|
||||
while ((foo = tr.ReadLine()) != null)
|
||||
{
|
||||
lineColor = Color.White;
|
||||
if (string.IsNullOrWhiteSpace(foo))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
var players = new List<string>();
|
||||
|
||||
foreach (TSPlayer ply in TShock.Players)
|
||||
{
|
||||
if (ply != null && ply.Active)
|
||||
{
|
||||
players.Add(ply.Name);
|
||||
}
|
||||
}
|
||||
|
||||
foo = foo.Replace("%map%", (TShock.Config.UseServerName ? TShock.Config.ServerName : Main.worldName));
|
||||
foo = foo.Replace("%players%", String.Join(",", players));
|
||||
|
||||
player.SendMessage(foo, lineColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns a Group from the name of the group
|
||||
/// </summary>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue