Example #1
0
 private void RenderSnake()
 {
     foreach (var coord in snake.Coordinates)
     {
         NCurses.MoveAddChar(coord.Y + 1, coord.X + 1, Snake.SYMBOL_BODY);
     }
     NCurses.MoveAddChar(snake.Coordinates.First.Value.Y + 1, snake.Coordinates.First.Value.X + 1, Snake.SYMBOL_HEAD);
 }
Example #2
0
        private void RenderBorders()
        {
            for (int i = 0; i < size.Width + 2; i++)
            {
                NCurses.MoveAddChar(0, i, SYMBOL_BORDER_HORIZONTAL);
                NCurses.MoveAddChar(size.Height + 1, i, SYMBOL_BORDER_HORIZONTAL);
            }

            for (int i = 0; i < size.Height; i++)
            {
                NCurses.MoveAddChar(i + 1, 0, SYMBOL_BORDER_VERTICAL);
                NCurses.MoveAddChar(i + 1, size.Width + 1, SYMBOL_BORDER_VERTICAL);
            }
        }
Example #3
0
        private void UpdateScreenData()
        {
            int offset = 0;

            NCurses.AttributeSet(CursesAttribute.NORMAL);
            NCurses.Nap(DefaultFramerate);
            NCurses.Erase();
            for (int i = 0; i < Buffer.Height; i++)
            {
                for (int j = 0; j < Buffer.Width; j++)
                {
                    NCurses.AttributeSet(NCurses.ColorPair(_colorMap[Buffer[offset++]]));
                    NCurses.MoveAddChar(i, j, ' ');
                }
            }
            NCurses.Refresh();
        }
Example #4
0
 private void RenderApple()
 {
     NCurses.MoveAddChar(apple.Position.Y + 1, apple.Position.X + 1, Apple.SYMBOL);
 }