Retract Hp *before* checking for HpLim==0