Files
BetterAmongUs/Commands/PlayerInfoCommand.cs
T

44 lines
1.6 KiB
C#

using BetterAmongUs.Helpers;
using BetterAmongUs.Items.Attributes;
using System.Text;
namespace BetterAmongUs.Commands;
[RegisterCommand]
internal class PlayerInfoCommand : BaseCommand
{
internal override string Name => "player";
internal override string Description => "Get a Players information";
public PlayerInfoCommand()
{
_arguments = new Lazy<BaseArgument[]>(() => new BaseArgument[]
{
new PlayerArgument(this),
});
}
private readonly Lazy<BaseArgument[]> _arguments;
internal override BaseArgument[]? Arguments => _arguments.Value;
private PlayerArgument? playerArgument => (PlayerArgument)Arguments[0];
internal override void Run()
{
var player = playerArgument.TryGetTarget();
if (player != null)
{
StringBuilder sb = new();
var hexColor = Utils.Color32ToHex(Palette.PlayerColors[player.CurrentOutfit.ColorId]);
var format1 = "┌ •";
var format2 = "├ •";
var format3 = "└ •";
sb.Append($"<size=150%><color={hexColor}><b>{player?.Data?.PlayerName}</color> Info:</b></size>\n");
sb.Append($"{format1} <color=#c1c1c1>ID: {player?.Data?.PlayerId}</color>\n");
sb.Append($"{format2} <color=#c1c1c1>HashPUID: {Utils.GetHashStr($"{player?.Data?.Puid}")}</color>\n");
sb.Append($"{format2} <color=#c1c1c1>Platform: {Utils.GetPlatformName(player)}</color>\n");
sb.Append($"{format3} <color=#c1c1c1>FriendCode: {player?.Data?.FriendCode}</color>");
CommandResultText(sb.ToString());
}
}
}