anchor.diff:  begin
     Assert(aWare in [WARFARE_MIN..WARFARE_MAX], 'Invalid resource added to barracks');
   
  -  ResourceCount[aWare] := EnsureRange(ResourceCount[aWare]+aCount, 0, High(Word));
  +  fResourceCount[aWare] := EnsureRange(fResourceCount[aWare]+aCount, 0, High(Word));
     gPlayers[fOwner].Deliveries.Queue.AddOffer(Self, aWare, aCount);
   end;
   
  
positive.code: procedure TKMHouseBarracks.Activate(aWasBuilt: Boolean);
  var
    FirstBarracks: TKMHouseBarracks;
    RT: TWareType;
  begin
    inherited;
    //A new Barracks should inherit the accept properies of the first Barracks of that player,
    //which stops a sudden flow of unwanted wares to it as soon as it is created.
    FirstBarracks := TKMHouseBarracks(gPlayers[fOwner].FindHouse(ht_Barracks, 1));
    if (FirstBarracks <> nil) and not FirstBarracks.IsDestroyed then
      for RT := WARFARE_MIN to WARFARE_MAX do
        NotAcceptFlag[RT] := FirstBarracks.NotAcceptFlag[RT];
  end;
  
  
  
negative.code:   fRecruitsList.Clear;
  
    for R := WARFARE_MIN to WARFARE_MAX do
      gPlayers[fOwner].Stats.WareConsumed(R, fResourceCount[R]);
  
    inherited;
  end;
  