コード例 #1
0
ファイル: Program.cs プロジェクト: brianjlacy/MonoAGS
        private async Task loadSplashScreen(IGame game)
        {
            AGSSplashScreen splashScreen = new AGSSplashScreen();

            Rooms.SplashScreen = splashScreen.Load(game);

            var splashBackground = game.Factory.Object.GetObject("Splash Background");

            splashBackground.Image = await game.Factory.Graphics.LoadImageAsync("Rooms/Splash/bg.png");

            Rooms.SplashScreen.Background = splashBackground;

            game.State.Rooms.Add(Rooms.SplashScreen);
            Rooms.SplashScreen.Events.OnAfterFadeIn.SubscribeToAsync(async() =>
            {
                await loadRooms(game);
                Debug.WriteLine("Startup: Loaded Rooms");
                Task charactersLoaded = loadCharacters(game);
                await loadUi(game);
                Debug.WriteLine("Startup: Loaded UI");
                DefaultInteractions defaults = new DefaultInteractions(game, game.Events);
                defaults.Load();
                await charactersLoaded;
                Debug.WriteLine("Startup: Loaded Characters");
                await game.State.Player.ChangeRoomAsync(Rooms.EmptyStreet.Result, 50, 30);
            });
            await game.State.ChangeRoomAsync(Rooms.SplashScreen);

            Debug.WriteLine("Startup: Loaded splash screen");
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: jdiperla/MonoAGS
        private async Task loadSplashScreen(IGame game)
        {
            AGSSplashScreen splashScreen = new AGSSplashScreen();

            Rooms.SplashScreen = splashScreen.Load(game);
            game.State.Rooms.Add(Rooms.SplashScreen);
            Rooms.SplashScreen.Events.OnAfterFadeIn.SubscribeToAsync(async() =>
            {
                await loadRooms(game);
                Debug.WriteLine("Startup: Loaded Rooms");
                Task charactersLoaded = loadCharacters(game);
                var topPanel          = await loadUi(game);
                Debug.WriteLine("Startup: Loaded UI");
                DefaultInteractions defaults = new DefaultInteractions(game, game.Events);
                defaults.Load();
                await charactersLoaded;
                Debug.WriteLine("Startup: Loaded Characters");
                await game.State.Player.ChangeRoomAsync(Rooms.EmptyStreet.Result, 50, 30);
                topPanel.Visible = true;
            });
            await game.State.ChangeRoomAsync(Rooms.SplashScreen);

            Debug.WriteLine("Startup: Loaded splash screen");
        }