anchor.diff:      function CheckForEnemy:boolean;
       function CheckForEnemyAround: TKMUnit;
   
  +    function CanInterruptAction:boolean;
  +
       procedure Save(SaveStream:TKMemoryStream); override;
       function UpdateState():boolean; override;
       procedure Paint(); override;
  
positive.code:   if fFlagAnim mod 10 = 0 then UpdateHungerMessage();
  
    //Walk out of barracks
    if (fOrder=wo_WalkOut) and GetUnitAction.StepDone and CheckCanAbandon then
    begin
      SetActionGoIn(ua_Walk,gd_GoOutside,fPlayers.HousesHitTest(GetPosition.X,GetPosition.Y));
      fOrder := wo_None;
  
negative.code:   end;
  
    //Take attack house order
    if (fOrder=wo_AttackHouse) and GetUnitAction.StepDone and CanInterruptAction then
    begin
      SetUnitTask := TTaskAttackHouse.Create(Self,GetOrderHouseTarget);
      fOrder := wo_None;
  