В целом согласен с предыдущим оратором. Немного уточню. 
 делаем массив ссылок, 2-мерный (C#) 
 Код
int maxX = 100;//или сколько там надо 
 int maxY = 100; 
 GameObject[,] World = new GameObject[maxX,maxY];
  
 создавая или как то инициируя локацию заносим ее в этот массив. 
 Если персонаж находится в локации с координатами X, Y и хочет пойти на север - переходит в локацию World[X,Y+1]. На запад - World[X-1,Y]. Остальное соответственно. 
 Можно проверять World[X+1,Y]==null, если будет true - локации нету. 
 Плюс стоит проверить границы массива.