Esempio n. 1
0
 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();
 }
Esempio n. 5
0
 public void ApplyAndSave(MachinaFileSystem fileSystem, WindowInterface window)
 {
     Apply(window);
     SaveSettings(fileSystem);
 }
Esempio n. 6
0
 public override void Execute(WindowInterface interf, Inventory inv)
 {
     throw new NotImplementedException();
 }