title: Unreachable code and not all code paths return a value
body: <p>Ok I'm getting an unreachable code and not all code paths return value from this block of code</p>
  
  <pre><code>private string MoveForward()
  {
      //if current direction is east, GetRoomEast
      if (Player.CurrentDirection == "EAST")
      {
          return GetroomEast();
  
          if (Player.NextMove != "")
  
          {
              Player.Y++;
          }
          else
          {
              Console.WriteLine("You Bumped into a Wall");
          }
          //if GetRoomEast is not "", then playercol = playercol+1;
          //if current direction is west...
      }
  }
  </code></pre>
  
  <p>and my initialized variables at the top are </p>
  
  <pre><code>public struct DragonPlayer
  {
      public int X, Y;
      public string CurrentDirection;
      public string NextMove;
  }
  
  public class DragonGameboard
  {
      public string[,] GameboardArray;
      public DragonPlayer Player;
      private Random r;
  
      public DragonGameboard()
      {
          GameboardArray = new string[4, 4];
          Player.CurrentDirection = "EAST";
          Player.NextMove = "";
          r = new Random();
          Player.X = r.Next(0, 4);
          Player.Y = r.Next(0, 4);
          GenerateRandomBoard();
      }
  }
  </code></pre>
  
  <p>Why is it doing this? I'm sure it has to be something really silly but I'm having trouble figuring out what it is?</p>