diff --git a/Game/Abstract/IContentLoader.cs b/Game/Abstract/IContentLoader.cs new file mode 100644 index 0000000..1909786 --- /dev/null +++ b/Game/Abstract/IContentLoader.cs @@ -0,0 +1,8 @@ +using Microsoft.Xna.Framework.Content; + +namespace Pong.Behaviours; + +public interface IMonoGameContentLoader +{ + void LoadContent(ContentManager content); +} diff --git a/Game/GamePong.cs b/Game/GamePong.cs index 2648f0d..ecd75c7 100644 --- a/Game/GamePong.cs +++ b/Game/GamePong.cs @@ -27,6 +27,7 @@ public class GamePong : Game private GameManager gameManager = null!; private BehaviourCacher displayableCacher = null!; private BehaviourCacher displayableShapeCacher = null!; + private BehaviourCacher monoGameContentLoaderCacher = null!; private MonoGameCamera2DBehaviour cameraBehaviour = null!; private PongManagerBehaviour pongManager = null!; @@ -52,6 +53,7 @@ public class GamePong : Game gameManager = new(); displayableCacher = new(gameManager); displayableShapeCacher = new(gameManager); + monoGameContentLoaderCacher = new(gameManager); physicsEngine = new PhysicsEngine2DCacher(gameManager) { IterationPerStep = 3 }; gameManager.Initialize(); @@ -154,6 +156,11 @@ public class GamePong : Game pongManager.BehaviourController.AddBehaviour().Connect("127.0.0.1", 8888); Window.Title = $"Pong - Client -> 127.0.0.1"; } + + foreach (var contentLoader in monoGameContentLoaderCacher) + { + contentLoader.LoadContent(Content); + } } protected override void Update(GameTime gameTime)