anchor.diff:    Inherited Create(aWarrior);
     fTaskName := utn_AttackHouse;
   
  -  if aHouse=nil then begin //This is unacceptable
  -    fLog.AssertToLog(aHouse<>nil, 'Trying to attack NIL house?');
  -    exit;
  -  end;
  -
  +  fLog.AssertToLog(aHouse<>nil, 'Trying to attack NIL house?');
     fHouse := aHouse.GetHousePointer;
     LocID  := 0;
     Cells  := TKMPointDirList.Create; //Pass pre-made list to make sure we Free it in the same unit
  
positive.code:       LocID:byte; //Current attack location
        Cells:TKMPointDirList; //List of surrounding cells and directions
        function PosUsed(aPos: TKMPoint):boolean;
        //todo: not abandoned properly yet
      public
        constructor Create(aWarrior: TKMUnit; aHouse:TKMHouse);
        constructor Load(LoadStream:TKMemoryStream); override;
  
negative.code: 
  function TTaskAttackHouse.WalkShouldAbandon:boolean;
  begin
    if fHouse.IsDestroyed then begin
      Result := true;
      exit;
    end;
  
    if PosUsed(Cells.List[LocID].Loc) then
    begin
      Result := true;
  