Pomoc w zadaniu - obsługa planszy w konsoli

0

Witam jestem początkujący w c# potrzebuje pomocy w napisaniu zadania, nie chodzi mi o gotowy kod, bardziej o wskazówki. Zadanie wygląda tak:

https://onedrive.live.com/view.aspx?resid=3474D1916A0E9267!1398&ithint=file%2cpdf&app=WordPdf&authkey=!ACn4Kk2yVWBc7EQ

na razie udało mi się napisać tą plansze i poruszanie się po niej:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace jakies_zadanie
{
    class Program
    {
    static void Print(char[,] t)
        {
        
            for (int i = 0; i < t.GetLength(0); i++)
            {
                for (int j = 0; j < t.GetLength(1); j++)
                {
                    Console.Write("{0}",t[i,j]);
                }
                Console.WriteLine();
            }
          
        }

    public static void Gra(char[,] t)
    {
        int x = 0;
        int y = 0;
     
        Console.SetCursorPosition(x, y);
        ConsoleKeyInfo D;
  
            while (true)
            {
                D = Console.ReadKey();

                if (D.Key == ConsoleKey.DownArrow)
                {
                    Console.SetCursorPosition(x, y + 2);
                    y += 2;
                }
                if (D.Key == ConsoleKey.UpArrow)
                {
                    Console.SetCursorPosition(x, y - 2);
                    y -= 2;

                }
                if (D.Key == ConsoleKey.LeftArrow)
                {
                    Console.SetCursorPosition(x - 2, y);
                    x -= 2;         
                }
                if (D.Key == ConsoleKey.RightArrow)
                {
                    Console.SetCursorPosition(x + 2, y);
                    x += 2;             
                }
                //if (D.Key == ConsoleKey.Enter)
                //{
                 

                //}
            }                    
    }                      
        static void Main(string[] args)
        {
            char[,] OX = {
                                {' ','|', ' ', '|', ' '},
                                {'-','+', '-', '+', '-'},
                                {' ','|', ' ', '|', ' '},
                                {'-','+', '-', '+', '-'},
                                {' ','|', ' ', '|', ' '},
                              };
            Print(OX);
            Gra(OX);

        }
    }
}

I dalej po prostu nie wiem głównie chodzi mi o podpunkt 2(a) i 2(b) za wszelkie porady bedę bardzo wdzięczny.

1

Po pierwsze stwórz sobię klasę Map, gdzie będziesz miał wszelkie funkcje dotyczące rysowania w konsoli oraz ewentualne informacje na temat planszy. Potem stwórz klasę Player, do której będziesz mógł dodać pewien obiekt typu Map (w myśl tego, że każdy gracz musi widzieć planszę), a Player będzie miał możliwość dodawania kółka\krzyżyka na tę planszę.

Co do podpunktu 2(a) i 2(b), to musisz wprowadzić warunek, jeżeli dana komurka jest już zajęta to ustawiasz

Console.Background = ConsoleColor.Red

, jeżeli nie to Console.Foreground = ConsoleColor.Green.


I tutaj ponownie potrzebujesz własnej klasy Map, która trzyma informację o tym co się dzieje na planszy, tak aby sprawdzić czy w danej komórce jest 'X', 'O', czy może jest pusta.

1 użytkowników online, w tym zalogowanych: 0, gości: 1