Exemple #1
0
        private void drawBottomInfo()
        {
            IImage baseImage = GoalPiece.GetBaseImage(GameService.ClassicGameState.CurrentGoal);
            IImage goalImage = GoalPiece.GetGoalImage(GameService.ClassicGameState.CurrentGoal);

            IImage goalArrow      = Assets.Images.Layouts.Arrow;
            IImage smallGoalArrow = Assets.Images.Layouts.Arrow;

            if ((GameService.ClassicGameState.GameState == GameSelectionState.ChooseNumber && GameService.ClassicGameState.ChosenNumbers.Count == 0) || GameService.ClassicGameState.GameState == GameSelectionState.SearchingBoard)
            {
                MainLayer.DrawImage(Assets.Images.Layouts.HelperImage1, Positions.Help1Position, true);

                MainLayer.DrawImage(goalArrow, Positions.CardArrowPosition.X, Positions.CardArrowPosition.Y, true);

                MainLayer.DrawImage(baseImage, Positions.CardCharacterPosition.X, Positions.CardCharacterPosition.Y, 192, 192, true);

                MainLayer.DrawImage(goalImage, Positions.CardGoalPosition.X, Positions.CardGoalPosition.Y, 192, 192, true);

                MainLayer.DrawImage(Assets.Images.Layouts.HelperImage2, Positions.Help2Position, true);
            }
            else
            {
                int index = 0;
                for (int chosenNumberIndex = Math.Max(GameService.ClassicGameState.ChosenNumbers.Count - 4, 0); chosenNumberIndex < GameService.ClassicGameState.ChosenNumbers.Count; chosenNumberIndex++)
                {
                    ChosenNumber chosenNumber = GameService.ClassicGameState.ChosenNumbers[chosenNumberIndex];
                    if (chosenNumberIndex == GameService.ClassicGameState.ChosenNumbers.Count - 1)
                    {
                        IImage flagImage = Assets.Images.Character.Banners.Big.LongBanner[chosenNumber.Character.CharacterNumber + 1];
                        MainLayer.DrawImage(flagImage, Positions.FlagLongPositions[index].X, Positions.FlagLongPositions[index].Y, true);

                        MainLayer.DrawString((Assets.Fonts.BabyDoll._90), chosenNumber.Number.ToString(), Positions.FlagLongPositionNumbers[index].X, Positions.FlagLongPositionNumbers[index].Y);
                    }
                    else
                    {
                        IImage flagImage = Assets.Images.Character.Banners.Small.ShortBanner[chosenNumber.Character.CharacterNumber + 1];
                        MainLayer.DrawImage(flagImage, Positions.FlagPositions[index].X, Positions.FlagPositions[index].Y, true);

                        MainLayer.DrawString((Assets.Fonts.BabyDoll._90), chosenNumber.Number.ToString(), Positions.FlagPositionNumbers[index].X, Positions.FlagPositionNumbers[index].Y);
                    }
                    if (GameService.ClassicGameState.GameState != GameSelectionState.ChooseNumber)
                    {
                        long timeLeft = Math.Max(GetTimeLeft(), 0);

                        MainLayer.DrawString((Assets.Fonts.BabyDoll._240), timeLeft.ToString(), Positions.TimePosition.X, Positions.TimePosition.Y, Positions.BlackColor);
                        MainLayer.DrawString((Assets.Fonts.BabyDoll._48), "time left", Positions.TimePosition.X, Positions.TimePosition.Y + 100, Positions.BlackColor);
                    }
                    index++;
                }

                MainLayer.DrawImage(baseImage, Positions.SmallCardCharacterPosition.X, Positions.SmallCardCharacterPosition.Y, 150, 150, true);
                MainLayer.DrawImage(smallGoalArrow, Positions.SmallCardArrowPosition.X, Positions.SmallCardArrowPosition.Y, 50, 30, true);
                MainLayer.DrawImage(goalImage, Positions.SmallCardGoalPosition.X, Positions.SmallCardGoalPosition.Y, 150, 150, true);
            }
        }
        private void drawBottomInfo()
        {
            MainLayer.Save();
            MainLayer.Translate(0, BoardConstants.TopAreaHeight);
            IImage smallGoalArrow = Assets.Images.Layouts.Arrow;
            int    index          = 0;

            for (int chosenNumberIndex = Math.Max(GameService.ClassicGameState.ChosenNumbers.Count - 4, 0); chosenNumberIndex < GameService.ClassicGameState.ChosenNumbers.Count; chosenNumberIndex++)
            {
                ChosenNumber chosenNumber = GameService.ClassicGameState.ChosenNumbers[chosenNumberIndex];
                if (chosenNumberIndex == GameService.ClassicGameState.ChosenNumbers.Count - 1)
                {
                    IImage flagImage = Assets.Images.Character.Banners.Big.LongBanner[chosenNumber.Character.CharacterNumber + 1];
                    MainLayer.DrawImage(flagImage, Positions.FlagLongPositions[index].X, Positions.FlagLongPositions[index].Y, true);

                    MainLayer.DrawString((Assets.Fonts.BabyDoll._90), chosenNumber.Number.ToString(), Positions.FlagLongPositionNumbers[index].X, Positions.FlagLongPositionNumbers[index].Y);
                }
                else
                {
                    IImage flagImage = Assets.Images.Character.Banners.Small.ShortBanner[chosenNumber.Character.CharacterNumber + 1];
                    MainLayer.DrawImage(flagImage, Positions.FlagPositions[index].X, Positions.FlagPositions[index].Y, true);

                    MainLayer.DrawString((Assets.Fonts.BabyDoll._90), chosenNumber.Number.ToString(), Positions.FlagPositionNumbers[index].X, Positions.FlagPositionNumbers[index].Y);
                }

                MainLayer.DrawString((Assets.Fonts.BabyDoll._240), getMovesLeft().ToString(), Positions.NumberPosition, Positions.BlackColor);
                MainLayer.DrawString((Assets.Fonts.BabyDoll._48), "total moves", Positions.NumberPosition.X, Positions.NumberPosition.Y + 100, Positions.BlackColor);
                index++;
            }


            MainLayer.DrawImage(smallGoalArrow, Positions.SmallCardArrowPosition.X, Positions.SmallCardArrowPosition.Y, true);

            IImage baseImage = GoalPiece.GetBaseImage(GameService.ClassicGameState.CurrentGoal);

            IImage goalImage = GoalPiece.GetGoalImage(GameService.ClassicGameState.CurrentGoal);

            MainLayer.DrawImage(baseImage, Positions.SmallCardCharacterPosition.X, Positions.SmallCardCharacterPosition.Y, 150, 150, true);
            MainLayer.DrawImage(smallGoalArrow, Positions.SmallCardArrowPosition.X, Positions.SmallCardArrowPosition.Y, 50, 30, true);
            MainLayer.DrawImage(goalImage, Positions.SmallCardGoalPosition.X, Positions.SmallCardGoalPosition.Y, 150, 150, true);
            MainLayer.Restore();

            MainLayer.DrawRectangle(new Color(252, 252, 252), 0, Positions.UndoButtonRect.Y, Layout.Width, Positions.UndoButtonRect.Height);

            MainLayer.DrawRectangle(new Color(37, 170, 255), Positions.UndoButtonRect);
            MainLayer.DrawString((Assets.Fonts.BabyDoll._120), "Undo", Positions.UndoButtonRect.Center);

            MainLayer.DrawRectangle(new Color(37, 170, 255), Positions.PassButtonRect);
            MainLayer.DrawString((Assets.Fonts.BabyDoll._120), "Pass", Positions.PassButtonRect.Center);
        }