I have said 2d array of structures. each structure has a map.gridx and a map.gridy
...

if i am at map[5][9] ( map[5][9].gridx=5, and map[5][9].gridy=9 ) and a user wants to move north one square, ie change the y postion from 9 to 10, how is the best method of doing this? searching for a structure with gridx.(x position) gridy.(y position +1) or is there a way of doing it without actually having to acces the structure and just move the pointer.

ie if i pass into a move function:

Code:
location ** move(x position, y position)
{

map=map[x][y+1];

return map;

}
hope you know what I'm getting at.

prob is of course, the map pointer itself doesnt have the [x][y] at the end of it, so when i'm passing it in and out of all the other functions i need, , which is why im asking if i need to do it using the map.gridx and map.gridy elements of the structure.

whole code is attatched. and no i haven't got much further than last time

Many thanks.

Mitch