예제 #1
0
        public override void Draw(SpriteBatch sprite_batch)
        {
            if (DataDisplayed)
            {
                sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
                if (Background != null)
                {
                    Background.draw(sprite_batch);
                }
                sprite_batch.End();

                if (!MenusHidden)
                {
                    if (GameUpdated != null)
                    {
                        GameUpdated.draw(sprite_batch);
                    }

                    if (ExpandedSelection == Main_Menu_Selections.Resume)
                    {
                        SuspendPanel.Draw(sprite_batch,
                                          -(MenuChoices[0].loc - MenuChoices[0].offset));
                    }

                    if (ExpandedSelection == Main_Menu_Selections.Start_Game)
                    {
                        sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
                        StartGamePanel.Draw(sprite_batch,
                                            -(MenuChoices[1].loc - MenuChoices[1].offset));
                        sprite_batch.End();
                    }

                    sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
                    ChoiceNodes.Draw(sprite_batch);
                    sprite_batch.End();
                }
            }
        }
예제 #2
0
        public override void Draw(SpriteBatch sprite_batch)
        {
            Vector2 offset = new Vector2(0, Offset.Y);

            sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);

            Background.draw(sprite_batch);
            // Draw Windows //
            // Page //
            Pages[page].draw(sprite_batch, Offset);
            if (Delay > 0 && changing_page)
            {
                if (Direction == 6 ^ Delay < 12)
                {
                    Pages[(page + 1 + Pages.Count) % Pages.Count].draw(sprite_batch, Offset - new Vector2(PAGE_SPACING + 320, 0));
                }
                else
                {
                    Pages[(page - 1 + Pages.Count) % Pages.Count].draw(sprite_batch, Offset + new Vector2(PAGE_SPACING + 320, 0));
                }
            }
            //if (changing_page)
            //    Background.draw(sprite_batch, new Color(Bg_Alpha, Bg_Alpha, Bg_Alpha, Bg_Alpha));
            // Top Panel //
            // Page Arrows
            Left_Page_Arrow.draw(sprite_batch, offset);
            Right_Page_Arrow.draw(sprite_batch, offset);
            Face_Bg.draw(sprite_batch, offset);

            if (Input.ControlScheme == ControlSchemes.Touch)
            {
                CancelButton.Draw(sprite_batch);
            }
            sprite_batch.End();

            Face.draw(sprite_batch, offset);

            sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
            Top_Panel.draw(sprite_batch, offset);
            Platform.draw(sprite_batch, offset);
            //LvLabel.draw(sprite_batch, offset);
            //HpLabel.draw(sprite_batch, offset);
            //Lv_Hp_Labels_Other.draw(sprite_batch, offset);
            //foreach (RightAdjustedText stat in Lv_Hp_Values)
            //    stat.draw(sprite_batch, offset);
            foreach (TextSprite label in Battle_Stat_Labels)
            {
                label.draw(sprite_batch, offset);
            }

            Map_Sprite.draw(sprite_batch, offset);

            foreach (var node in TopPanelNodes)
            {
                node.Draw(sprite_batch, offset);
            }

            if (Global.game_map.icons_visible)
            {
                Rescue_Icon.draw(sprite_batch, offset);
            }
            if (changing_unit)
            {
                Color bg_tint = Background.tint;
                Background.tint = new Color(Bg_Alpha, Bg_Alpha, Bg_Alpha, Bg_Alpha);
                Background.draw(sprite_batch);
                Background.tint = bg_tint;
            }
            Black_Screen.draw(sprite_batch);
            sprite_batch.End();

            sprite_batch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend);
            if (Help_Window != null) //Debug
            {
                StatusCursors[page].draw(sprite_batch, offset);
            }
            sprite_batch.End();
            if (Help_Window != null)
            {
                Help_Window.draw(sprite_batch);
            }
        }