anchor.diff:    end;
   
     //Take attack house order
  -  if (fOrder=wo_AttackHouse) and GetUnitAction.StepDone and CheckCanAbandon then
  +  if (fOrder=wo_AttackHouse) and GetUnitAction.StepDone and CanInterruptAction then
     begin
       SetUnitTask := TTaskAttackHouse.Create(Self,GetOrderHouseTarget);
       fOrder := wo_None;
  
positive.code:     fState := ws_Walking;
    end;
  
    if (fOrder=wo_Walk) and GetUnitAction.StepDone and CheckCanAbandon then
    begin
      if GetUnitTask <> nil then FreeAndNil(fUnitTask);
      //If we are not the commander then walk to near
  
negative.code:   end;
  
    //Take attack order
    if (fOrder=wo_Attack) and GetUnitAction.StepDone and CanInterruptAction then
    begin
      SetActionWalk(Self, GetOrderTarget.NextPosition, KMPoint(0,0), ua_Walk, true, GetOrderTarget);
      fOrder := wo_None;
  