anchor.diff:  begin
     // Peace time; Max soldiers limit reached; cannot equip; no Barracks
     if gGame.IsPeaceTime
  -    OR ((fSetup.MaxSoldiers <> -1) AND (gHands[fOwner].Stats.GetArmyCount >= fSetup.MaxSoldiers))
  -    OR (not CanEquipIron AND not CanEquipLeather)
  -    OR (gHands[fOwner].Stats.GetHouseQty(htBarracks) = 0)
  -    OR (fDefence.Count = 0) then
  +  or ((fSetup.MaxSoldiers <> -1) and (gHands[fOwner].Stats.GetArmyCount >= fSetup.MaxSoldiers))
  +  or (not CanEquipIron and not CanEquipLeather)
  +  or (gHands[fOwner].Stats.GetHouseQty(htBarracks) = 0)
  +  or (fDefence.Count = 0) then
       Exit;
   
     // Take required warriors from CityManagement (-> implemented consideration of required units + save time)
  
positive.code: end;
  
  
  destructor TKMArmyManagement.Destroy();
  begin
    fAttackNew.Free;
    fDefence.Free;
  
negative.code: end;
  
  
  procedure TKMArmyManagement.RecruitSoldiers;
    function CanEquipIron: Boolean;
    begin
      Result := not (fSetup.ArmyType = atLeather)
                and (fSetup.UnlimitedEquip or gGame.CheckTime(fLastEquippedTimeIron + fSetup.EquipRateIron));
    end;
    function CanEquipLeather: Boolean;
    begin
      Result := not (fSetup.ArmyType = atIron)
                and (fSetup.UnlimitedEquip or gGame.CheckTime(fLastEquippedTimeLeather + fSetup.EquipRateLeather));
    end;
  var
    H: TKMHouse;
  