using System; using System.Threading; using Syntriax.Engine.Core; using Syntriax.Engine.Core.Debug; Universe universe = new(); FileLogger fileLogger = new($"logs/{DateTime.UtcNow:yyyy-MM-dd_HH-mm-ss}.log"); universe.InstantiateUniverseObject().SetUniverseObject("Logger").BehaviourController .AddBehaviour().Logger = new LoggerWrapper(fileLogger, new ConsoleLogger()); Pong.PongUniverse.ApplyPongServer(universe, int.Parse(Environment.GetEnvironmentVariable("PORT") ?? "8888")); Pong.PongUniverse.ApplyPongUniverse(universe); DateTime lastRun = DateTime.UtcNow; TimeSpan interval = new(0, 0, 0, 0, 16); TimeSpan timeSinceStart = new(0); universe.Initialize(); while (true) { if (lastRun + interval <= DateTime.UtcNow) { lastRun += interval; timeSinceStart += interval; universe.Update(new(timeSinceStart, interval)); } Thread.Sleep(1); }