refactor: network implementations switched to universe objects

This commit is contained in:
2025-05-25 13:34:45 +03:00
parent 0da5ac6f57
commit 12f4950ffb
9 changed files with 82 additions and 49 deletions

View File

@@ -32,7 +32,7 @@ public class LiteNetLibServer : LiteNetLibCommunicatorBase, INetworkCommunicator
public INetworkCommunicatorServer Start(int port, int maxConnectionCount, string? password = null)
{
if (!UniverseObject.IsInUniverse)
if (!IsInUniverse)
throw new($"{nameof(LiteNetLibServer)} must be in an universe to start");
Password = password ?? string.Empty;
@@ -60,7 +60,17 @@ public class LiteNetLibServer : LiteNetLibCommunicatorBase, INetworkCommunicator
return this;
}
protected override void OnEnteredUniverse(IUniverse universe) => universe.OnPostUpdate += PollEvents;
protected override void OnExitedUniverse(IUniverse universe) => universe.OnPostUpdate -= PollEvents;
private void PollEvents(IUniverse sender, UniverseTime engineTime) => Manager.PollEvents();
protected override void OnEnteringUniverse(IUniverse universe)
{
base.OnEnteringUniverse(universe);
universe.OnPostUpdate += PollEvents;
}
protected override void OnExitingUniverse(IUniverse universe)
{
base.OnExitingUniverse(universe);
universe.OnPostUpdate -= PollEvents;
}
}