35 lines
1.3 KiB
C#
35 lines
1.3 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Linq;
|
|
|
|
using Microsoft.Xna.Framework.Graphics;
|
|
|
|
using Syntriax.Engine.Core;
|
|
using Syntriax.Engine.Core.Debug;
|
|
using Syntriax.Engine.Integration.MonoGame;
|
|
|
|
bool isServerEnabled = Environment.GetCommandLineArgs().FirstOrDefault(x => x.CompareTo("--server") == 0) is not null;
|
|
|
|
Universe universe = new();
|
|
|
|
FileLogger fileLogger = new($"{Path.Combine(Directory.GetCurrentDirectory(), "logs", DateTime.UtcNow.ToString("yyyy-MM-dd_HH-mm-ss"))}.log");
|
|
|
|
#if DEBUG
|
|
universe.InstantiateUniverseObject().SetUniverseObject("Logger").BehaviourController.AddBehaviour<LoggerContainer>().Logger = new LoggerWrapper(fileLogger, new ConsoleLogger());
|
|
#else
|
|
universe.InstantiateUniverseObject().SetUniverseObject("Logger").BehaviourController.AddBehaviour<LoggerContainer>().Logger = firstLogger;
|
|
#endif
|
|
|
|
Pong.PongUniverse.ApplyPongUniverse(universe, isServerEnabled, isClientEnabled: true);
|
|
|
|
universe.InstantiateUniverseObject().SetUniverseObject("Desktop HO")
|
|
.BehaviourController.AddBehaviour<KeyboardInputsBehaviour>();
|
|
|
|
using MonoGameWindow monoGameWindow = new(universe);
|
|
|
|
monoGameWindow.Graphics.PreferredBackBufferWidth = 1024;
|
|
monoGameWindow.Graphics.PreferredBackBufferHeight = 576;
|
|
monoGameWindow.Graphics.GraphicsProfile = GraphicsProfile.HiDef;
|
|
|
|
monoGameWindow.Run();
|