public int createWay(HexSide source, Random random) {
		if (source != null) {
			createLane(source);
		}
		if (row == ROW_COUNT - 1) {
			return column;
		}
		Hexagon hex = null;
		HexSide side = null;
		// Vorsicht! Endlosschleife möglich
		do {
			if (random.nextDouble() < 0.25) {
				side = HexSide.LEFT_MID;
			} else if (random.nextDouble() < 0.5) {
				side = HexSide.RIGHT_MID;
			} else if (random.nextDouble() < 0.75) {
				side = HexSide.LEFT_BOTTOM;
			} else {
				side = HexSide.RIGHT_BOTTOM;
			}
			hex = main.getMap().getHexRel(row, column, side);
		} while (hex == null);
		// Eigenen Weg erstellen
		createLane(side);
		// Verdrehen
		// solange es nicht um das Start-Hexagon geht
		if (!(row == main.getMap().getStartRow() && column == main.getMap().getStartColumn())) {
			rotation += random.nextInt(6) * 60;
			goalRotation = rotation;
		}
		return hex.createWay(side.opposite(), random);
	}