|  |  | @@ -248,6 +248,8 @@ function displayBuildings() { | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | for (const [key, value] of Object.entries(belongings)) { | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | let available = states.buildings[key].available; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | if (!belongings[key].visible) { | 
		
	
		
			
			|  |  |  | if (resources.food * 10 >= costOfBuilding(key).food) { | 
		
	
		
			
			|  |  |  | unlockBuilding(key); | 
		
	
	
		
			
				|  |  | @@ -270,12 +272,14 @@ function displayBuildings() { | 
		
	
		
			
			|  |  |  | name.innerText = value.count + " " + (value.count == 1 ? buildings[key].name : buildings[key].plural); | 
		
	
		
			
			|  |  |  | cost.innerText = render(buildingCost.food) + " food"; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | if (canAfford(buildingCost) && button.classList.contains("building-button-disabled")) { | 
		
	
		
			
			|  |  |  | if (canAfford(buildingCost) && available !== true) { | 
		
	
		
			
			|  |  |  | button.classList.remove("building-button-disabled"); | 
		
	
		
			
			|  |  |  | cost.classList.add("building-button-cost-valid"); | 
		
	
		
			
			|  |  |  | } else if (!canAfford(buildingCost) && !button.classList.contains("building-button-disabled")) { | 
		
	
		
			
			|  |  |  | states.buildings[key].available = true; | 
		
	
		
			
			|  |  |  | } else if (!canAfford(buildingCost) && available !== false) { | 
		
	
		
			
			|  |  |  | button.classList.add("building-button-disabled"); | 
		
	
		
			
			|  |  |  | cost.classList.add("building-button-cost-invalid"); | 
		
	
		
			
			|  |  |  | states.buildings[key].available = false; | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | } | 
		
	
	
		
			
				|  |  | @@ -472,6 +476,17 @@ const states = {}; | 
		
	
		
			
			|  |  |  | // we can just check if they've been handled already | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | function initializeStates() { | 
		
	
		
			
			|  |  |  | const buildingStates = {}; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | Object.keys(buildings).forEach(key => { | 
		
	
		
			
			|  |  |  | buildingStates[key] = { | 
		
	
		
			
			|  |  |  | visible: undefined, | 
		
	
		
			
			|  |  |  | available: undefined | 
		
	
		
			
			|  |  |  | } | 
		
	
		
			
			|  |  |  | }); | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | states.buildings = buildingStates; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | const upgradeStates = {}; | 
		
	
		
			
			|  |  |  | 
 | 
		
	
		
			
			|  |  |  | Object.keys(upgrades).forEach(key => { | 
		
	
	
		
			
				|  |  | 
 |