return; }   if (parent.getEntity() instanceof VTOL) {
    protected void calcMovementCostFor(IGame game, Coords prev) {        final int moveType = parent.getEntity().getMovementType();        final IHex srcHex = game.getBoard().getHex(prev);        final IHex destHex = game.getBoard().getHex(getPosition());        final boolean isInfantry = parent.getEntity() instanceof Infantry;        mp = 1;        // jumping always costs 1        if (parent.isJumping()) {            return;        }        // Account for terrain, unless we're moving along a road.        if (!isPavementStep) {            if (destHex.terrainLevel(Terrains.ROUGH) > 0) {                mp++;            }            if (destHex.terrainLevel(Terrains.RUBBLE) > 0) {                mp++;            }            if (destHex.terrainLevel(Terrains.WOODS) == 1) {                mp++;            } else if (destHex.terrainLevel(Terrains.WOODS) > 1) {                mp += 2;            }            // non-hovers check for water depth and are affected by swamp            if (moveType != Entity.MovementType.HOVER) {                if (destHex.terrainLevel(Terrains.WATER) == 1) {                    mp++;                } else if (destHex.terrainLevel(Terrains.WATER) > 1) {                    mp += 3;                }                if (destHex.containsTerrain(Terrains.SWAMP)) {                    mp++;                }            }        } // End not-along-road        // account for elevation?        // TODO: allow entities to occupy different levels of buildings.        int nSrcEl = parent.getEntity().elevationOccupied(srcHex);        int nDestEl = parent.getEntity().elevationOccupied(destHex);        int nMove = parent.getEntity().getMovementType();        if (nSrcEl != nDestEl) {            int delta_e = Math.abs(nSrcEl - nDestEl);            // Infantry and ground vehicles are charged double.            if (isInfantry                || (nMove == Entity.MovementType.TRACKED                    || nMove == Entity.MovementType.WHEELED                    || nMove == Entity.MovementType.HOVER)) {                delta_e *= 2;            }            mp += delta_e;        }        // If we entering a building, all non-infantry pay additional MP.        if (nDestEl < destHex.terrainLevel(Terrains.BLDG_ELEV)            && !(isInfantry)) {            Building bldg = game.getBoard().getBuildingAt(getPosition());            mp += bldg.getType();        }    }