online fix

This commit is contained in:
2025-10-27 13:54:38 +01:00
parent 3ff9819d78
commit 8ea4b173a3
2 changed files with 28 additions and 9 deletions

View File

@@ -69,7 +69,6 @@ namespace MegaKoop.Game.Enemy
private void Awake()
{
EnsureIdentity();
spawnPosition = transform.position;
baseMoveSpeed = moveSpeed;
@@ -134,14 +133,22 @@ namespace MegaKoop.Game.Enemy
return;
}
if (identity.NetworkId == 0)
if (identity.NetworkId != 0)
{
identity.SetNetworkId(nextEnemyNetworkId++);
return;
}
if (!ShouldAssignLocalNetworkId())
{
return;
}
identity.SetNetworkId(nextEnemyNetworkId++);
}
private void OnEnable()
{
EnsureIdentity();
networkManager = SteamCoopNetworkManager.Instance;
pooledInstance ??= GetComponent<PooledInstance>();
pendingDespawn = false;
@@ -232,6 +239,22 @@ namespace MegaKoop.Game.Enemy
return networkManager.IsHost;
}
private bool ShouldAssignLocalNetworkId()
{
var manager = SteamCoopNetworkManager.Instance;
if (manager == null)
{
return true;
}
if (!manager.IsConnected)
{
return true;
}
return manager.IsHost;
}
private void SyncNavMeshAgentState(bool simulate)
{
if (navMeshAgent == null)