Update
This commit is contained in:
@@ -24,15 +24,22 @@ public class PlayerDataManager : NetworkBehaviour
|
||||
Instance = this;
|
||||
}
|
||||
|
||||
public override void Despawned(NetworkRunner runner, bool hasState)
|
||||
{
|
||||
if (Instance == this) Instance = null;
|
||||
}
|
||||
|
||||
[Rpc(RpcSources.All, RpcTargets.StateAuthority)]
|
||||
public void RPC_UpdatePlayerMetaData(PlayerRef playerRef, _PlayerMetaData metaData)
|
||||
{
|
||||
if (Object == null || !Object.IsValid) return;
|
||||
Players.Set(playerRef, metaData);
|
||||
}
|
||||
|
||||
[Rpc(RpcSources.All, RpcTargets.StateAuthority)]
|
||||
public void RPC_SetReady(PlayerRef playerRef, bool ready)
|
||||
{
|
||||
if (Object == null || !Object.IsValid) return;
|
||||
if (Players.TryGet(playerRef, out var data))
|
||||
{
|
||||
data.IsReady = ready;
|
||||
@@ -48,6 +55,10 @@ public class PlayerDataManager : NetworkBehaviour
|
||||
|
||||
public bool TryGetPlayerMetaData(PlayerRef playerRef, out _PlayerMetaData metaData)
|
||||
{
|
||||
metaData = default;
|
||||
// Kiểm tra xem object đã được Spawned chưa trước khi truy cập networked property
|
||||
if (Object == null || !Object.IsValid) return false;
|
||||
|
||||
return Players.TryGet(playerRef, out metaData);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user