using Microsoft.Xna.Framework.Graphics; using Engine.Core; using Engine.Core.Debug; using Engine.Core.Serialization; using Engine.Integration.MonoGame; using Engine.Serializers.Yaml; using Engine.Systems.Network; Universe universe = new(); ISerializer serializer = new YamlSerializer(); ILogger logger = new RotatingFileLogger("Logs", "MyGame"); #if DEBUG logger = new LoggerWrapper(logger, new ConsoleLogger()); #endif universe.InstantiateUniverseObject().SetUniverseObject("Logger") .BehaviourController.AddBehaviour().Logger = ILogger.Shared = logger; universe.InstantiateUniverseObject().SetUniverseObject("Desktop Inputs") .BehaviourController.AddBehaviour(); universe.InstantiateUniverseObject().SetUniverseObject("Visual Managers") .BehaviourController.AddBehaviour() .BehaviourController.AddBehaviour(); /* For Networking LiteNetLibClient client = universe.InstantiateUniverseObject().SetUniverseObject("Client").BehaviourController.AddBehaviour(); client.BehaviourController.AddBehaviour(); universe.OnPreUpdate.AddOneTimeListener((_, _) => client.Connect("localhost", 8888)); */ MyUniverse.Shared.UniverseSource.ApplyUniverse(universe); using MonoGameWindow monoGameWindow = new(universe); monoGameWindow.Graphics.GraphicsProfile = GraphicsProfile.HiDef; monoGameWindow.Run();