示例#1
0
        public override void Update(GameTime dt)
        {
            if (!AudioManager.MusicPlaying)
            {
                Dictionary <string, string> loctosong = new Dictionary <string, string>();

                string currentSong = AudioManager.CurrentSong;
                if (currentSong == "troublemaker")
                {
                    AudioManager.PlayMusic(location);
                }
                else
                {
                    AudioManager.PlayMusic("troublemaker");
                }
            }
#if WINDOWS_PHONE
            AdSystem.TargetTop = false;
#endif

            ExplosionPlayed = false;
            woodSFX         = cementSFX = glassSFX = false;
            cementTime     -= gttf(dt);
            woodTime       -= gttf(dt);
            glassTime      -= gttf(dt);
            if (!IsTopScreen)
            {
                for (int i = 0; i < scene.Nodes.Count; i++)
                {
                    //if (scene.Nodes[i] is Fox)
                    {
                        scene.Nodes[i].Update(dt);
                    }
                }
                return;
            }
            feathers.Update(dt);
            if (!loadedUp)
            {
                return;
            }
            if (CheckFlag(Jabber.Flags.FADE_IN))
            {
                if (loadedUp)
                {
                    OnFadeInComplete();
                }
            }
            else
            {
                world.Update(dt);
                base.Update(dt);
                timer   += gttf(dt);
                gameTime = dt;

                CheckEndGame(dt);
            }

            if (blank != null)
            {
                blank.Update(dt);
                if (blank.StateFlag == Jabber.StateFlag.FADE_IN_COMPLETE)
                {
                    if (!IsQuitting)
                    {
                        LevelEndScreen n = new LevelEndScreen(this);
                        n.Initialize(Content);
                        ScreenManager.Get.AddScreen(n);

                        LowerFlag(Jabber.Flags.FADE_OUT);
                        LowerFlag(Jabber.Flags.FADE_IN);

                        if (GetRemainingFox() == 0)
                        {
                            AudioManager.PlayOnce("Sounds/Win_Stinger");
                        }
                        else
                        {
                            AudioManager.PlayOnce("Sounds/Lose_Stinger");
                        }
                    }
                    else
                    {
                        RaiseFlag(Jabber.Flags.DELETE);
                        WorldSelectScreen s = new WorldSelectScreen();
                        s.Initialize(Content);
                        s.SetCurrentCountry(location);
                        ScreenManager.Get.AddScreen(s);
                    }
                }
            }
        }