public void OnCartridgeSetup(Cartridge cartridge, WindowInterface window) { }
public void PrepareLoadingScreen(GameCartridge gameCartridge, MachinaRuntime runtime, AssetLibrary assets, WindowInterface machinaWindow, Action <GameCartridge> onFinished) { var loader = assets.GetStaticAssetLoadTree(); LoadDefaultStyle(loader, assets, runtime.Painter); gameCartridge.PrepareDynamicAssets(loader, runtime); var loadingScreen = new LoadingScreen(loader); var introScene = SceneLayers.AddNewScene(); var loaderActor = introScene.AddActor("Loader"); var adHoc = new AdHoc(loaderActor); adHoc.onPreDraw += (spriteBatch) => { if (!loadingScreen.IsDoneUpdateLoading()) { // Waiting for this to complete before draw loading } else if (!loadingScreen.IsDoneDrawLoading()) { loadingScreen.IncrementDrawLoopLoad(assets, spriteBatch); } }; adHoc.onDraw += (spriteBatch) => { loadingScreen.Draw(spriteBatch, machinaWindow.CurrentWindowSize); }; adHoc.onUpdate += (dt) => { if (!loadingScreen.IsDoneUpdateLoading()) { var increment = 3; for (var i = 0; i < increment; i++) { loadingScreen.Update(dt / increment); } } if (loadingScreen.IsDoneDrawLoading() && loadingScreen.IsDoneUpdateLoading()) { onFinished(gameCartridge); } }; }
public abstract void Execute(WindowInterface interf, Inventory inv);
public Application(FactoryUI factory) { window = factory.Open(); }
public void ApplyAndSave(MachinaFileSystem fileSystem, WindowInterface window) { Apply(window); SaveSettings(fileSystem); }
public override void Execute(WindowInterface interf, Inventory inv) { throw new NotImplementedException(); }