コード例 #1
0
        public void Tick(TimeSpan elapsedGameTime)
        {
            switch (GameService.ClassicGameState.GameState)
            {
            case GameSelectionState.TimerStarted:
                if (GetTimeLeft() == 0)
                {
                    if (State.CurrentTick != null)
                    {
                        State.CurrentTick.Stop();
                    }
                    ISoundEffect sfx = Client.PlaySoundEffect(Assets.Sounds.TimeTick);
                    Client.Timeout(() =>
                    {
                        sfx.Stop();
                        ScreenTransitioner.ChangeToBoardScreen();
                    }, 1500);
                }
                break;

            case GameSelectionState.ChooseNumber:
                if (State.SwipeDistance != 0)
                {
                    if (State.SwipeDistance > 0)
                    {
                        State.SwipeDistance += State.SwipeAcceleration;
                        if (State.SwipeDistance <= 0)
                        {
                            State.SwipeDistance = 0;
                        }
                    }
                    else
                    {
                        State.SwipeDistance += State.SwipeAcceleration;
                        if (State.SwipeDistance >= 0)
                        {
                            State.SwipeDistance = 0;
                        }
                    }

                    if (State.Ticks++ % 5 == 0)
                    {
                        State.CurrentNumber = Math.Min(Math.Max(State.CurrentNumber - Math.Sign(State.SwipeDistance), 1), 60);
                    }
                }


                break;
            }
            GameService.ClassicGameState.Board.Tick(elapsedGameTime);

            foreach (var animatedCharacterSubLayout in CharacterAnimations)
            {
                animatedCharacterSubLayout.Value.TickLayoutView(elapsedGameTime);
            }
        }
コード例 #2
0
 public void StopMusic()
 {
     ActiveSong?.Stop();
     ActiveSong = null;
 }