TShock/TShockAPI/Handlers/IllegalPerSe/EmojiPlayerMismatch.cs
2022-10-21 16:12:04 -04:00

25 lines
756 B
C#

using static TShockAPI.GetDataHandlers;
namespace TShockAPI.Handlers.IllegalPerSe
{
/// <summary>
/// Rejects emoji packets with mismatched identifiers
/// </summary>
public class EmojiPlayerMismatch : IPacketHandler<EmojiEventArgs>
{
/// <summary>
/// Invoked on emoji send. Rejects packets that are impossible.
/// </summary>
/// <param name="sender"></param>
/// <param name="args"></param>
public void OnReceive(object sender, EmojiEventArgs args)
{
if (args.PlayerIndex != args.Player.Index)
{
TShock.Log.ConsoleError(GetString($"IllegalPerSe: Emoji packet rejected for ID spoofing. Expected {args.Player.Index}, received {args.PlayerIndex} from {args.Player.Name}."));
args.Handled = true;
return;
}
}
}
}