Может ли кто-нибудь объяснить мне, что это спрашивает в // TBD, и, возможно, дать мне несколько примеров того, как это будет работать? Я понимаю некоторые, если это немного, но все еще есть проблемы с чем-либо, что я пытаюсь.Движение делегатов в C#
namespace DelgateKeypress
{
class Program
{
private static int x=20;
private static int y=20;
//TBD: You will need to define a data structure to store the association
//between the KeyPress and the Action the key should perform
private static void Main(string[] args)
{
//TBD: Set up your control scheme here. It should look something like this:
// myControls.Add(ConsoleKey.W, Up)
// myControls.Add(ConsoleKey.S, Down)
//or you can ask the user which keys they want to use
//etc
while (true)
{
Console.SetCursorPosition(x, y);
Console.Write("O");
var key = Console.ReadKey(true);
int oldX = x;
int oldY = y;
//TBD: Replace the following 4 lines by looking up the key press in the data structure
//and then performing the correct action
if (key.Key == ConsoleKey.W) Up();
if (key.Key == ConsoleKey.S) Down();
if (key.Key == ConsoleKey.A) Left();
if (key.Key == ConsoleKey.D) Right();
Console.SetCursorPosition(oldX, oldY);
Console.Write(".");
}
}
private static void Right()
{
x++;
}
private static void Left()
{
x--;
}
private static void Down()
{
y++;
}
private static void Up()
{
y--;
}
}
}
Я отчасти понимаю, что это немного, но у меня возникают проблемы при попытке получить пользователь, чтобы иметь возможность ввести какое значение они хотели бы добавить для каждого из основных движений для вверх, вниз, влево и вправо. Мне не нужно было, чтобы это могло быть просто W, S, A, D для этих движений, но я нахожусь в убытке здесь, поэтому любая помощь будет фантастическими парнями.
Провести поиск документации по словарю '. Это поможет. –
Enigmativity