Skip to content

Commit

Permalink
For issue #75, grids should now get untracked, if their player presen…
Browse files Browse the repository at this point in the history
…ce tier is no longer normal, and therefor are not replicated to the client
  • Loading branch information
8vogt committed Mar 4, 2021
1 parent ac55e63 commit 870170e
Showing 1 changed file with 14 additions and 2 deletions.
16 changes: 14 additions & 2 deletions SEWorldGenPlugin/Session/MyEntityTrackerComponent.cs
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,13 @@ public override void UpdateBeforeSimulation()
{
TrackEntity(entity);
}
if(entity is MyCubeGrid)
if(entity is MyCubeGrid grid)
{
TrackEntity(entity);
if(grid.PlayerPresenceTier == VRage.Game.ModAPI.MyUpdateTiersPlayerPresence.Normal)
{
TrackEntity(entity);
grid.PlayerPresenceTierChanged += OnGridPlayerPresenceUpdate;
}
}
}

Expand Down Expand Up @@ -148,5 +152,13 @@ public void UnregisterTracker(IMyEntityTracker tracker)
{
m_entityTrackers.Remove(tracker);
}

private void OnGridPlayerPresenceUpdate(MyCubeGrid grid)
{
if(grid.PlayerPresenceTier != VRage.Game.ModAPI.MyUpdateTiersPlayerPresence.Normal)
{
m_toUntrackEntities.Add(grid);
}
}
}
}

0 comments on commit 870170e

Please sign in to comment.