示例#1
0
        private void StartScreen(SpriteBatch spriteBatch)
        {
            if (!hasPressedStart)
                hasPressedStart = InputManager.AnyButtonPressed(GamePad.GetState(PlayerIndex.One)) || InputManager.AnyButtonPressed(GamePad.GetState(PlayerIndex.Two));

            if (!hasPressedStart)
            {
                spriteBatch.DrawHelper(Textures.startScreenWithText, Vector2.Zero, 1.0f);
                if(startTimer.IsTimeUp)
                    spriteBatch.DrawAtCenter(Textures.pressAnyToStart, new Vector2(620,300), 0.9f);
                spriteBatch.DrawAtCenter(Textures.logo, new Vector2(100, 640), 0.0f);
            }
            else
            {
                spriteBatch.DrawHelper(Textures.startScreen, Vector2.Zero, 1.0f);
                spriteBatch.DrawHelper(Textures.splash, Vector2.Zero, 0.8f);

                spriteBatch.DrawHelper(Textures.buttonAToStart, new Vector2(205, 140), 0.7f);
                bool p1Ready = GamePad.GetState(PlayerIndex.One).Buttons.A == ButtonState.Pressed;
                if (p1Ready)
                    spriteBatch.DrawHelper(Textures.player1Ready, new Vector2(206.0f, 320.0f), 0.5f);

                bool p2Ready = GamePad.GetState(PlayerIndex.Two).Buttons.A == ButtonState.Pressed;

                if (p2Ready)
                    spriteBatch.DrawHelper(Textures.player2Ready, new Vector2(641, 320.0f), 0.5f);
                if (p1Ready && p2Ready)
                {
                    isStarted = true;
                    StartGame();
                }
            }
        }
示例#2
0
        private void DrawScore(SpriteBatch spriteBatch)
        {
            // Team A
            Vector2 position = new Vector2(22, 40);
            float progress = teamA.Points / 100f + 0.15f;
            Rectangle dest = new Rectangle((int)position.X, (int)(position.Y + 617) - (int)((Textures.barRobot.Height - 150f) * progress), (int)(Textures.barRobot.Width), (int)(Textures.barRobot.Height * progress));
            Rectangle source = new Rectangle(0, 0, (int)(Textures.barRobot.Width), (int)(Textures.barRobot.Height * progress));

            spriteBatch.DrawHelper(Textures.barRobot, dest, source, 0.2f);

            // Team B
            position = new Vector2(1264 - Textures.barAlien.Width, 40);
            progress = teamB.Points / 100f + 0.15f;
            dest = new Rectangle((int)position.X, (int)(position.Y + 617) - (int)((Textures.barAlien.Height - 150f) * progress), (int)(Textures.barAlien.Width), (int)(Textures.barAlien.Height * progress));
            source = new Rectangle(0, 0, (int)(Textures.barAlien.Width), (int)(Textures.barAlien.Height * progress));

            spriteBatch.DrawHelper(Textures.barAlien, dest, source, 0.2f);

            spriteBatch.DrawHelper(Textures.scoreBars, Vector2.Zero, 0.1f);
        }