I'm trying to make a maze...wait let me rephrase that, I am making a maze game. You start off not knowing not any of the map, but as you move farther into the maze you see more of the map (all discovered squares never go away). Right now my game could be finished after a few hours of work (just a matter of typing in some code), but it would contain a rather poor interface for this type of game. Instead of being able to use the arrow keys when moving through the maze you have to enter U/u (up), D/d (down), L/l (left), and R/r (right). I would rather make it so the player could just use the arrow keys to move through the maze...this would make the game a lot more fun. Could anyone tell me how I could do this? I'm not sure how the program can detect the key movement, then load the graphics (a console app so they are only * o X ) for the squares that should be made visible. Here is an example of what I currently have:

if(d_maze[2][0] == '*' && var_1 == 1)
{
do
{
cout << "Would you like to move up, down, or right?\n";
cin >> move;
if(move == 'U' || move == 'u')
{
d_maze[2][0] = 'o';
d_maze[1][0] = '*';
d_maze[0][0] = 'o';
d_maze[2][1] = 'o';
var_1 = 0;
break;
}
if(move == 'D' || move == 'd')
{
d_maze[2][0] = 'o';
d_maze[3][0] = '*';
d_maze[4][0] = 'o';
d_maze[4][1] = 'X';
d_maze[2][1] = 'o';
d_maze[3][1] = 'X';
var_1 = 0;
break;
}
if(move == 'R' || move == 'r')
{
d_maze[2][0] = 'o';
d_maze[2][1] = '*';
d_maze[1][0] = 'o';
d_maze[3][0] = 'o';
d_maze[3][1] = 'X';
d_maze[3][2] = 'X';
d_maze[1][1] = 'X';
d_maze[1][2] = 'X';
d_maze[2][2] = 'o';
var_1 = 0;
break;
}
}while(var_1 == 1);
}

Here is a basic breakdown of how the program works:

show maze
ask for user move
input user move (graphics)
...repeat process until game end

Also, another thing I would like to do with the program is have a timer. This would a certain challenge to the game by discouraging slow decisions by the user. I want the timer to continue to run in until either time = 0 or until game end. I'm sure there is a way to do this, but I just don't know the basic syntax of it all.

Hopefully somebody can help me on this, because I would like to be able to improve the gameplay/interface of my maze game. If not I guess I'll have to do without for the time being.