diff --git a/Engine b/Engine index 65dcb0c..a050909 160000 --- a/Engine +++ b/Engine @@ -1 +1 @@ -Subproject commit 65dcb0c5647484b02767ac9fbcdb397a820d59f6 +Subproject commit a05090937565b1ee055ee9765675c3637fca446f diff --git a/Platforms/Server/PongEndpoints.cs b/Platforms/Server/PongEndpoints.cs index 3e822fa..94f8ecf 100644 --- a/Platforms/Server/PongEndpoints.cs +++ b/Platforms/Server/PongEndpoints.cs @@ -10,7 +10,7 @@ using Engine.Systems.Network; namespace Server; -public class PongEndpoints : Behaviour, IFirstFrameUpdate +public class PongEndpoints : Behaviour, IFirstFrameUpdate, ILastFrameUpdate { private INetworkCommunicatorServer? server = null!; @@ -35,5 +35,5 @@ public class PongEndpoints : Behaviour, IFirstFrameUpdate private IResult GetStats() => Results.Json(new { Count = server?.Connections.Count ?? 0 }); public void FirstActiveFrame() => server = Universe.FindRequiredBehaviour(); - protected override void OnExitedUniverse(IUniverse universe) => server = null; + public void LastActiveFrame() => server = null; } diff --git a/Shared/PongUniverse.cs b/Shared/PongUniverse.cs index 7f0ab20..e6ec23a 100644 --- a/Shared/PongUniverse.cs +++ b/Shared/PongUniverse.cs @@ -2,15 +2,15 @@ using Microsoft.Xna.Framework.Input; -using Pong.Behaviours; - using Engine.Core; using Engine.Core.Factory; using Engine.Integration.MonoGame; -using Engine.Systems.Network; using Engine.Physics2D; +using Engine.Systems.Network; using Engine.Systems.Tween; +using Pong.Behaviours; + namespace Pong; public static class PongUniverse @@ -24,6 +24,7 @@ public static class PongUniverse DrawManager drawManager = universe.InstantiateUniverseObject().SetUniverseObject("Draw Manager").BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Triangle Batcher", drawManager.UniverseObject).BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Sprite Batcher", drawManager.UniverseObject).BehaviourController.AddBehaviour(); + universe.InstantiateUniverseObject().SetUniverseObject("Content Loader", drawManager.UniverseObject).BehaviourController.AddBehaviour(); //////////////////////////////////////////////////////////////////////////////////// @@ -56,6 +57,7 @@ public static class PongUniverse public static IUniverse ApplyPongUniverse(Universe universe) { + universe.InstantiateUniverseObject().SetUniverseObject("Universe Entrance Manager").BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Update Manager").BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Coroutine Manager").BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Tween Manager").BehaviourController.AddBehaviour();