Не могу разобраться с GETDATA SET DATA rage C#

столкнулся с проблемой, нужна Ваша помощь! Не могу понять синтаксис Player.GetData :(

Собственно Посмотрите на всякий, скриншоты, так же прикрепил код, подскажите и немного объясните пожалуйста:)

Server.cs

[ServerEvent(Event.PlayerConnected)] //- IT`S WORK! (больше не крашит ебана рот Server.exe !)
    public void OnPlayerConnected(Player Player)
    {
        NAPI.Util.ConsoleOutput($"{Player.Name} присоеденился");
        MyServer.Data.Data player = new MyServer.Data.Data(Player);
        Player.SetData(MyServer.Data.Data.DataIndetifier, player);
    }
///
[ServerEvent(Event.PlayerSpawn)]
    public void OnPlayerSpawn(Player player)
    {
        if (Player.HasData(MyServer.Data.Data.DataIndetifier))
        {
            var player = Player.GetData(MyServer.Data.Data.DataIndetifier);
            NAPI.Player.SetPlayerHealth(player, 50);                                                                                                     // NAPI.Player.SetPlayerHealth(player,50);
        }
    }

Data.cs

 class Data
{
    public static readonly String DataIndetifier = "PlayerInfo";
    public Player PlayerData { get; set; }
    public String Name { get; set; }
 public Data(Player player)
    {
        this.PlayerData = player;
        this.Name = player.Name;
    }
}

Server.cs Data.cs


Ответы (1 шт):

Автор решения: aepot

Так как совершенно не понятно, что делает класс Player, и как оно работает, могу только предположить.

Немного подправил код.

[ServerEvent(Event.PlayerConnected)]
public void OnPlayerConnected(Player player)
{
    NAPI.Util.ConsoleOutput($"{Player.Name} присоеденился");
    MyServer.Data.Data playerData = new MyServer.Data.Data(player);
    Player.SetData(MyServer.Data.Data.DataIndetifier, playerData);
}
    
[ServerEvent(Event.PlayerSpawn)]
public void OnPlayerSpawn(Player player)
{
    if (Player.HasData(MyServer.Data.Data.DataIndetifier, player))
    {
        var playerData = Player.GetData(MyServer.Data.Data.DataIndetifier, player);
        NAPI.Player.SetPlayerHealth(playerData, 50);
    }
}
→ Ссылка