コード例 #1
0
        private void RenderTextScreen(Finale finale)
        {
            FillFlat(flats[finale.Flat]);

            // Draw some of the text onto the screen.
            var cx = 10 * scale;
            var cy = 17 * scale;
            var ch = 0;

            var count = (finale.Count - 10) / Finale.TextSpeed;

            if (count < 0)
            {
                count = 0;
            }

            for (; count > 0; count--)
            {
                if (ch == finale.Text.Length)
                {
                    break;
                }

                var c = finale.Text[ch++];

                if (c == '\n')
                {
                    cx  = 10 * scale;
                    cy += 11 * scale;
                    continue;
                }

                screen.DrawChar(c, cx, cy, scale);

                cx += screen.MeasureChar(c, scale);
            }
        }