Critical behaviour of semi-infinite systems