internal static void Setup(GameProperties properties, Action initializer) { if (SetupCalled) { throw new EngineSetupException("Engine.Setup called multiple times."); } Instance = new ArtemisEngine(properties, initializer); Instance.Run(); }
/// <summary> /// Begin the game. /// </summary> /// <param name="initializer"></param> public static void Begin(Action initializer) { if (!SetupCalled) { throw new EngineSetupException("Engine.Setup has not yet been called."); } if (BeginCalled) { throw new EngineSetupException("Engine.Begin called multiple times."); } Instance = new ArtemisEngine(initializer); Instance.Run(); // Anything that happens after the above line will happen after the game window closes. if (!GameConstants.DisableUserOptionsWriteOnClose) { UserOptions.Write(); } }
/// <summary> /// Begin the game. /// </summary> /// <param name="initializer"></param> public static void Begin(Action initializer) { if (!SetupCalled) { throw new EngineSetupException("Engine.Setup has not yet been called."); } if (BeginCalled) { throw new EngineSetupException("Engine.Begin called multiple times."); } Instance = new ArtemisEngine(initializer); Instance.Run(); // Anything that happens after the above line will happen after the game window closes. if (!GameConstants.DisableUserOptionsWriteOnClose) UserOptions.Write(); }