Exemplo n.º 1
0
        public async ValueTask Draw(CanvasWrapper session)
        {
            await session.DrawMyText("PUSH START BUTTON", new Vector2(50, 115), Colors.Orange);

            var text = _coinBox.Credits < 2 ? "1 PLAYER ONLY" : "1 OR 2 PLAYERS";

            await session.DrawMyText(text, new Vector2(70, 145), Colors.Cyan);

            await session.DrawMyText("BONUS PAC-MAN FOR 10000 PTS", new Vector2(0, 175), Colors.White);

            await session.DrawMyText("(C) 1980 MIDWAY MFG. CO.", new Vector2(15, 190), Colors.White);
        }
Exemplo n.º 2
0
        public async ValueTask Draw(CanvasWrapper canvas)
        {
            await _maze.Draw(canvas);

            await _pacman.Draw(canvas);

            await _ghostCollection.DrawAll(canvas);

            await canvas.DrawMyText("GAME OVER", TextPoints.GameOverPoint, Colors.Red);
        }
Exemplo n.º 3
0
        async ValueTask drawPlayerText(CanvasWrapper ds, int playerIndex, string text, Vector2 pos)
        {
            var shouldFlash = _gameStats.AnyonePlaying && !_gameStats.IsGameOver && _gameStats.CurrentPlayerStats.PlayerIndex == playerIndex;

            var shouldDraw = !shouldFlash || _tickTock;

            if (shouldDraw)
            {
                await ds.DrawMyText(text, pos, Colors.White);
            }
        }
Exemplo n.º 4
0
    public async ValueTask Draw(CanvasWrapper session)
    {
        PlayerStats currentPlayerStats = _gameStats.CurrentPlayerStats;

        var gameOverAct = await resolveGameOverAct();

        await gameOverAct.Draw(session);

        await session.DrawMyText(
            currentPlayerStats.PlayerIndex == 0? "PLAYER ONE" : "PLAYER TWO", TextPoints.PlayerTextPoint,
            Colors.Cyan);
    }
Exemplo n.º 5
0
        public async ValueTask Draw(CanvasWrapper session)
        {
            await _powerPillToEat.Draw(session);

            if (_legendVisible)
            {
                await _powerPillLegend.Draw(session);

                await _pillLegend.Draw(session);

                await session.DrawMyText("10 pts", new Vector2(80, 170), Colors.White);

                await session.DrawMyText("50 pts", new Vector2(80, 180), Colors.White);
            }

            if (_copyrightVisible)
            {
                await session.DrawMyText("© 1980 midway mfg. co.", new Vector2(10, 220), Colors.White);
            }

            await _tempSprites.Draw(session);

            foreach (var eachGhost in _ghosts)
            {
                if (eachGhost.Alive)
                {
                    await eachGhost.Draw(session);
                }
            }

            await _pacMan.Draw(session);

            var gp = _ghosts[0].Position;

            await session.DrawText("STEVE DUNN 2020", new Point((int)gp.X + 2, (int)(gp.Y + 22)), Color.Black);

            await session.DrawText("STEVE DUNN 2020", new Point((int)gp.X, (int)(gp.Y + 20)), Color.Yellow);
        }
Exemplo n.º 6
0
        static async ValueTask drawRightAlignedScoreText(CanvasWrapper ds, int score, Vector2 pos)
        {
            var scoreText = score.ToString();

            if (scoreText == "0")
            {
                scoreText = "00";
            }

            var length = new Vector2(scoreText.Length * 8, 0);

            var left = pos - length;

            await ds.DrawMyText(scoreText, left, Colors.White);
        }
Exemplo n.º 7
0
 ValueTask drawCredits(CanvasWrapper ds)
 {
     _sb.Clear();
     return(ds.DrawMyText(_sb.Append("CREDIT ").Append(_coinBox.Credits).ToString(), _creditTextPoint, Colors.White));
 }
Exemplo n.º 8
0
        async ValueTask drawHighScore(CanvasWrapper ds)
        {
            await ds.DrawMyText("HIGH SCORE", _highScoreTextPos, Colors.White);

            await drawRightAlignedScoreText(ds, _gameStats.HighScore, _highScorePos);
        }