anchor.diff:  function TKMHouseBarracks.CheckResIn(aWare: TWareType): Word;
   begin
     if aWare in [WARFARE_MIN..WARFARE_MAX] then
  -    Result := ResourceCount[aWare]
  +    Result := fResourceCount[aWare]
     else
       Result := 0; //Including Wood/stone in building stage
   end;
  
positive.code: 
  
  type
    //Barracks has 11 resources and Recruits
    TKMHouseBarracks = class(TKMHouse)
    private
      fRecruitsList: TList;
      ResourceCount: array [WARFARE_MIN..WARFARE_MAX] of Word;
    public
      NotAcceptFlag: array [WARFARE_MIN .. WARFARE_MAX] of Boolean;
      constructor Create(aUID: Integer; aHouseType: THouseType; PosX, PosY: Integer; aOwner: TPlayerIndex; aBuildState: THouseBuildState);
      constructor Load(LoadStream: TKMemoryStream); override;
      procedure SyncLoad; override;
      destructor Destroy; override;
  
  
negative.code:     for I := 1 to 4 do
      if TroopCost[aUnitType, I] <> wt_None then
      begin
        Dec(fResourceCount[TroopCost[aUnitType, I]]);
        gPlayers[fOwner].Stats.WareConsumed(TroopCost[aUnitType, I]);
        gPlayers[fOwner].Deliveries.Queue.RemOffer(Self, TroopCost[aUnitType, I], 1);
      end;
  