Set PlayerId correctly

This commit is contained in:
miniduikboot committed 2024-06-20 19:14:49 +02:00
1 parent a072d5234a
commit 043549702f
2 files changed
+15 -1

No files matched your search

@@ -31,5 +31,18 @@ namespace Impostor.Server.Net.Inner.Objects
{
_allPlayers.TryRemove(playerId, out _);
}
internal byte GetNextAvailablePlayerId()
{
for (byte i = 0; i < 255; i++)
{
if (!Players.ContainsKey(i))
{
return i;
}
}
return 255;
}
}
}
+2 -1
View File
@@ -270,7 +270,7 @@ namespace Impostor.Server.Net.State
playerInfo.NetId = _nextNetId++;
playerInfo.OwnerId = -4;
playerInfo.ClientId = clientId;
playerInfo.PlayerId = 0; // TODO
playerInfo.PlayerId = GameNet.GameData.GetNextAvailablePlayerId();
if (!AddNetObject(playerInfo))
{
@@ -278,6 +278,7 @@ namespace Impostor.Server.Net.State
playerInfo.NetId = uint.MaxValue;
break;
}
_logger.LogTrace("Spawning PlayerInfo (netId {Netid})", playerInfo.NetId);
await OnSpawnAsync(sender, playerInfo);
var writer = MessageWriter.Get(MessageType.Reliable);