public TezDungeonBlock getBlock(TezDungeonUtility.Direction dir, TezDungeonBlock current) { int x, y; if (this.getBlock(dir, current.x, current.y, out x, out y)) { return(m_BlockArray[x, y]); } return(null); }
public bool getBlock(TezDungeonUtility.Direction dir, int x, int y, out int result_x, out int result_y) { result_x = x; result_y = y; switch (dir) { case TezDungeonUtility.Direction.N: result_y += 1; break; case TezDungeonUtility.Direction.S: result_y -= 1; break; case TezDungeonUtility.Direction.W: result_x -= 1; break; case TezDungeonUtility.Direction.E: result_x += 1; break; case TezDungeonUtility.Direction.WN: result_x -= 1; result_y += 1; break; case TezDungeonUtility.Direction.EN: result_x += 1; result_y += 1; break; case TezDungeonUtility.Direction.WS: result_x -= 1; result_y -= 1; break; case TezDungeonUtility.Direction.ES: result_x += 1; result_y -= 1; break; } return(result_x >= 0 && result_x < m_Width && result_y >= 0 && result_y < m_Height); }