Compare commits
	
		
			No commits in common. "main" and "2.0.7" have entirely different histories.
		
	
	
		
	
		
|  | @ -1,110 +1,4 @@ | |||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.27 | ||||
| Date: 21.10.2025 | ||||
|   Changes: | ||||
|     - Brazilian translation improvements (thanks Slondo) | ||||
|     - Upscaled graphics of the huge wooden power poles | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.26 | ||||
| Date: 21.10.2025 | ||||
|   Changes: | ||||
|     - Add Brazilian translations (thanks Slondo) | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.25 | ||||
| Date: 18.10.2025 | ||||
|   Bug Fixes: | ||||
|     - More mod compatibility fixes | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.24 | ||||
| Date: 18.10.2025 | ||||
|   Bug Fixes: | ||||
|     - Krastorio2: Compatibility fixes | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.23 | ||||
| Date: 17.10.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed crash when placing bio gardens | ||||
|     - Match bio garden pollution reduction by the amount of trees equivalent the description states | ||||
|     - Correct typo in internal recipe name to fix the localisation | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.22 | ||||
| Date: 16.10.2025 | ||||
|   Bug Fixes: | ||||
|     - Krastorio2: Compatibility fixes | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.21 | ||||
| Date: 11.10.2025 | ||||
|   Bug Fixes: | ||||
|     - Krastorio2: Compatibility fixes | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.20 | ||||
| Date: 12.09.2025 | ||||
|   Changes: | ||||
|     - Code Clean up | ||||
|     - More Updates to Bob's Compatibility | ||||
|     - Added a few milestones | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.19 | ||||
| Date: 11.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fix Bio Reactor graphic shift when selecting a recipe with 3 fluid inputs. | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.18 | ||||
| Date: 10.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fix crash with Krastorio 2 (Spaced Out) | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.17 | ||||
| Date: 10.09.2025 | ||||
|   Changes: | ||||
|     - More Updates to Bob's Compatibility | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.16 | ||||
| Date: 09.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed missing fertilizer icon, attempt 2 | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.15 | ||||
| Date: 09.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed missing icon "Bio_Industries_2/graphics/icons/fluid_advanced_fertilizer_recipe_64.png not found" | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.14 | ||||
| Date: 09.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed missing 'liquid-air'  in not playing with Bob's | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.13 | ||||
| Date: 09.09.2025 | ||||
|   Changes: | ||||
|     - Updated Rail to remove Decorative when placed | ||||
|     - Updated Bob's Compatibility | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.12 | ||||
| Date: 05.09.2025 | ||||
|   Changes: | ||||
|     - Updated Wood Rail Graphic. No more ugly Tint. (Thanks Snouz!) | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.11 | ||||
| Date: 04.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed (I hope) Wood Rail | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.10 | ||||
| Date: 02.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fix working visualisations for Bio Nursery | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.9 | ||||
| Date: 02.09.2025 | ||||
|   Bug Fixes: | ||||
|     - Fix working visualisations for Bio Farm | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.8 | ||||
| Date: 31.08.2025 | ||||
|   Bug Fixes: | ||||
|     - Fix icon path | ||||
| --------------------------------------------------------------------------------------------------- | ||||
| Version: 2.0.7 | ||||
| Date: 31.08.2025 | ||||
|   Bug Fixes: | ||||
|  | @ -119,10 +13,10 @@ Version: 2.0.5 | |||
| Date: 31.08.2025 | ||||
|   Bug Fixes: | ||||
|     - Fixed Wood Underground pipe graphic (TheSAguy) | ||||
|     - Fixed Prototype Artillery (TheSAguy) | ||||
|     - Fixed Wood Underground pipe graphic (TheSAguy) | ||||
|     - Fixed Dart Turret ammo (TheSAguy) | ||||
|   Changes: | ||||
|     - Updated Vanilla Rail Recipe (TheSAguy) | ||||
|     - Updated Rail Recipe (TheSAguy) | ||||
|     - Added Wooden Rail (TheSAguy) | ||||
|     - Updated some graphics (TheSAguy; BIG thanks to Snouz!) | ||||
| --------------------------------------------------------------------------------------------------- | ||||
|  |  | |||
|  | @ -55,7 +55,7 @@ return function(mod_name) | |||
|     end | ||||
| 
 | ||||
|     ------------------------------------------------------------------------------------ | ||||
|     -- Same values for collision masks | ||||
|     -- Sane values for collision masks | ||||
|     -- Default: {"item-layer", "object-layer", "rail-layer", "floor-layer", "water-tile"} | ||||
|     common.RAIL_BRIDGE_MASK = { "object-layer", "consider-tile-transitions" } | ||||
| 
 | ||||
|  | @ -692,16 +692,12 @@ return function(mod_name) | |||
|             compound_entity.hidden.pole and | ||||
|             compound_entity.hidden.pole.name then | ||||
|             local wire_reach = prototypes.entity[compound_entity.hidden.pole.name] and | ||||
|                 prototypes.entity[compound_entity.hidden.pole.name].get_max_wire_distance() | ||||
|                 prototypes.entity[compound_entity.hidden.pole.name].max_wire_distance | ||||
|             if not wire_reach then | ||||
|                 error("Prototype for hidden pole of Bio gardens doesn't exist!") | ||||
|             end | ||||
| 
 | ||||
|             local wire_connector | ||||
|             for _, connector in pairs(pole.get_wire_connectors()) do | ||||
|                 wire_connector = connector | ||||
|                 connector.disconnect_all() | ||||
|             end | ||||
|             pole.disconnect_neighbour() | ||||
| 
 | ||||
|             -- Each pole can only have 5 connections. Let's connect to other hidden | ||||
|             -- poles first! | ||||
|  | @ -716,7 +712,7 @@ return function(mod_name) | |||
| 
 | ||||
|             for n, neighbour in pairs(neighbours or {}) do | ||||
|                 if pole ~= neighbour then | ||||
|                     connected = wire_connector.connect_to(neighbour) | ||||
|                     connected = pole.connect_neighbour(neighbour) | ||||
|                     common.writeDebug("Connected pole %g to %s %g: %s", | ||||
|                         { pole.unit_number, neighbour.name, neighbour.unit_number, connected }) | ||||
|                 end | ||||
|  | @ -732,7 +728,7 @@ return function(mod_name) | |||
|             }) | ||||
|             common.writeDebug("Pole %g has %s neighbours", { pole.unit_number, #neighbours }) | ||||
|             for n, neighbour in pairs(neighbours or {}) do | ||||
|                 connected = wire_connector.connect_to(neighbour) | ||||
|                 connected = pole.connect_neighbour(neighbour) | ||||
|                 common.writeDebug("Connected pole %g to neighbour %s (%g): %s", | ||||
|                     { pole.unit_number, neighbour.name, neighbour.unit_number, connected }) | ||||
|             end | ||||
|  |  | |||
|  | @ -18,9 +18,12 @@ require("util") | |||
| require("libs/util_ext") | ||||
| require("control_tree") | ||||
| require("control_arboretum") | ||||
| require("remote") -- milestones | ||||
| 
 | ||||
| 
 | ||||
| ---************** Used for Testing ----- | ||||
| --require ("Test_Spawn") | ||||
| ---************* | ||||
| 
 | ||||
| 
 | ||||
| local function Create_dummy_force() | ||||
|     -- Create dummy force for musk floor if electric grid overlay should NOT be shown in map view | ||||
|  |  | |||
|  | @ -265,11 +265,9 @@ if BI.Settings.BI_Game_Tweaks_Emissions_Multiplier then | |||
|         ["solid-fuel"] = 1.00, | ||||
|         ["solid-carbon"] = 1.05, | ||||
|         ["carbon"] = 1.05, | ||||
| 		["bob-carbon"] = 1.05, | ||||
|         ["wood-bricks"] = 1.10, | ||||
|         ["wood-bricks"] = 1.20, | ||||
|         ["rocket-fuel"] = 1.20, | ||||
|         ["bi-seed"] = 1.30, | ||||
| 		["tree-seed"] = 1.30, | ||||
|         ["seedling"] = 1.30, | ||||
|         ["bi-wooden-pole-big"] = 1.30, | ||||
|         ["bi-wooden-pole-huge"] = 1.30, | ||||
|  | @ -318,21 +316,13 @@ if mods["Krastorio2"] or mods["Krastorio2-spaced-out"] then | |||
|     -- require more wood/wood pulp. | ||||
|     local update = { | ||||
|         "wood", "bi-woodpulp", | ||||
|         "bi-seed", "tree-seed","seedling", "water" | ||||
|         "bi-seed", "seedling", "water", | ||||
|     } | ||||
|     local multiply = function(items) | ||||
|         for _, item in pairs(items) do | ||||
|             for _, updateItem in pairs(update) do | ||||
|                 if item.name == updateItem then | ||||
|                     if item.amount then | ||||
|                         item.amount = item.amount * 4 | ||||
|                     end | ||||
|                     if item.amount_min then | ||||
|                         item.amount_min = item.amount_min * 4 | ||||
|                     end | ||||
|                     if item.amount_max then | ||||
|                         item.amount_max = item.amount_max * 4 | ||||
|                     end | ||||
|                     item.amount = item.amount * 4 | ||||
|                 end | ||||
|             end | ||||
|         end | ||||
|  | @ -367,11 +357,11 @@ if not fertilizer.place_as_tile then | |||
|         condition_size = 1, | ||||
|         condition = { layers = { water_tile = true } } | ||||
|     } | ||||
|     fertilizer.icon = ICONPATH .. "fertilizer.png" | ||||
|     fertilizer.icon = ICONPATH .. "fertilizer_64.png" | ||||
|     fertilizer.icon_size = 64 | ||||
|     fertilizer.icons = { | ||||
|         { | ||||
|             icon = ICONPATH .. "fertilizer.png", | ||||
|             icon = ICONPATH .. "fertilizer_64.png", | ||||
|             icon_size = 64, | ||||
|         } | ||||
|     } | ||||
|  | @ -403,7 +393,6 @@ if mods["space-exploration"] then | |||
|     local tweaks = { | ||||
|         ["bi-solar-mat"]  = 400, | ||||
|         ["bi-seed"]       = 800, | ||||
| 		["tree-seed"]     = 800, | ||||
|         ["seedling"]      = 400, | ||||
|         ["bi-woodpulp"]   = 800, | ||||
|         ["bi-ash"]        = 400, | ||||
|  |  | |||
|  | @ -1,6 +1,5 @@ | |||
| local BioInd = require('common')('Bio_Industries_2') | ||||
| 
 | ||||
| 
 | ||||
| for var, name in pairs({ | ||||
|     Bio_Cannon = "BI_Bio_Cannon", | ||||
|     BI_Bio_Fuel = "BI_Bio_Fuel", | ||||
|  | @ -19,10 +18,8 @@ end | |||
| 
 | ||||
| BioInd.show("BI.Settings.BI_Easy_Bio_Gardens", BI.Settings.BI_Easy_Bio_Gardens) | ||||
| local ICONPATH = "__Bio_Industries_2__/graphics/icons/" | ||||
| local ICONPATH = BioInd.modRoot .. "/graphics/icons/" | ||||
| local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/" | ||||
| local ICONPATH_PY = "__Bio_Industries_2__/graphics/icons/mod_py/" | ||||
| local ICONPATH_BA = BioInd.modRoot .. "/graphics/icons/mod_bobangels/" | ||||
| 
 | ||||
| ----Update the Wood Pipe Images | ||||
| require("prototypes.Wood_Products.pipes") | ||||
|  | @ -137,8 +134,8 @@ end | |||
| --- Adds Solar Farm, Solar Plant, Musk Floor, Bio Accumulator and Substation to Tech tree | ||||
| if BI.Settings.BI_Solar_Additions then | ||||
|     if data.raw.technology["bob-solar-energy-2"] then | ||||
|         thxbob.lib.tech.add_recipe_unlock("bob-electric-energy-accumulators-2", "bi-bio-accumulator") | ||||
| 		thxbob.lib.tech.add_recipe_unlock("electric-energy-distribution-2", "bi-large-substation") | ||||
|         thxbob.lib.tech.add_recipe_unlock("bob-electric-energy-accumulators-3", "bi-bio-accumulator") | ||||
|         thxbob.lib.tech.add_recipe_unlock("electric-energy-distribution-2", "bi-large-substation") | ||||
|         thxbob.lib.tech.add_recipe_unlock("bob-solar-energy-2", "bi-bio-solar-farm") | ||||
|         thxbob.lib.tech.add_recipe_unlock("bob-solar-energy-2", "bi-solar-boiler-hidden-panel") | ||||
|     else | ||||
|  | @ -156,40 +153,33 @@ if BI.Settings.BI_Solar_Additions then | |||
| 
 | ||||
|     --- Electric redo if Bob' Electric | ||||
|     -- Huge Electric Pole | ||||
|     if data.raw.item["bob-tinned-copper-cable"] then | ||||
|     if data.raw.item["tinned-copper-cable"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-wooden-pole-huge", "wood") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-wooden-pole-huge", { | ||||
|             type = "item", | ||||
|             name = "bob-tinned-copper-cable", | ||||
|             name = "tinned-copper-cable", | ||||
|             amount = 15 | ||||
|         } | ||||
|         ) | ||||
|     end | ||||
| 
 | ||||
|     -- Solar Farm | ||||
|     if data.raw.item["bob-solar-panel-2"] then | ||||
|     if data.raw.item["solar-panel-large"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-bio-solar-farm", "solar-panel") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-bio-solar-farm", { | ||||
|             type = "item", | ||||
|             name = "bob-solar-panel-2", | ||||
|             name = "solar-panel-large", | ||||
|             amount = 30 | ||||
|         } | ||||
|         ) | ||||
|     end | ||||
| 
 | ||||
|     -- Huge Sub Station | ||||
|     if data.raw.item["bob-substation-3"] then | ||||
|     if data.raw.item["substation-3"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-large-substation", "substation") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-large-substation", { | ||||
|             type = "item", | ||||
|             name = "bob-substation-3", | ||||
|             amount = 6 | ||||
|         } | ||||
|         ) | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-large-substation", "steel-plate") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-large-substation", { | ||||
|             type = "item", | ||||
|             name = "bi-wooden-pole-huge", | ||||
|             name = "substation-3", | ||||
|             amount = 6 | ||||
|         } | ||||
|         ) | ||||
|  | @ -216,32 +206,32 @@ if BI.Settings.BI_Solar_Additions then | |||
|         ) | ||||
|     end | ||||
| 
 | ||||
|     if data.raw.item["bob-aluminium-plate"] then | ||||
|     if data.raw.item["aluminium-plate"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-bio-accumulator", "copper-cable") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-bio-accumulator", { | ||||
|             type = "item", | ||||
|             name = "bob-aluminium-plate", | ||||
|             name = "aluminium-plate", | ||||
|             amount = 50 | ||||
|         } | ||||
|         ) | ||||
|     end | ||||
| 
 | ||||
|     -- Solar Mat | ||||
|     if data.raw.item["bob-aluminium-plate"] then | ||||
|     if data.raw.item["aluminium-plate"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-solar-mat", "steel-plate") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-solar-mat", { | ||||
|             type = "item", | ||||
|             name = "bob-aluminium-plate", | ||||
|             name = "aluminium-plate", | ||||
|             amount = 1 | ||||
|         } | ||||
|         ) | ||||
|     end | ||||
| 
 | ||||
|     if data.raw.item["bob-silicon-wafer"] then | ||||
|     if data.raw.item["silicon-wafer"] then | ||||
|         thxbob.lib.recipe.remove_ingredient("bi-solar-mat", "copper-cable") | ||||
|         thxbob.lib.recipe.add_new_ingredient("bi-solar-mat", { | ||||
|             type = "item", | ||||
|             name = "bob-silicon-wafer", | ||||
|             name = "silicon-wafer", | ||||
|             amount = 4 | ||||
|         } | ||||
|         ) | ||||
|  | @ -262,7 +252,6 @@ end | |||
| require("prototypes.Bio_Farm.compatible_recipes") -- Bob and Angels mesh | ||||
| require("prototypes.Bio_Farm.technology2") | ||||
| 
 | ||||
| 
 | ||||
| -- Replace fertilizer/advanced fertilizer + water with fluid fertilizers in Bio garden recipes! | ||||
| BioInd.show("data-updates.lua -- BI.Settings.BI_Easy_Bio_Gardens", BI.Settings.BI_Easy_Bio_Gardens) | ||||
| if BI.Settings.BI_Easy_Bio_Gardens then | ||||
|  | @ -336,6 +325,22 @@ if mods["Natural_Evolution_Buildings"] then | |||
| end | ||||
| 
 | ||||
| 
 | ||||
| ------------ Support for Bob's Greenhouse | ||||
| if data.raw["item"]["bob-greenhouse"] then | ||||
|     data.raw["item"]["seedling"].place_result = "seedling" | ||||
|     data.raw["item"]["seedling"].icon = ICONPATH .. "Seedling.png" | ||||
|     data.raw["item"]["seedling"].icon_size = 64 | ||||
|     data.raw["item"]["fertilizer"].icon = ICONPATH .. "fertilizer.png" | ||||
|     data.raw["item"]["fertilizer"].icon_size = 64 | ||||
| 
 | ||||
|     data.raw["item"]["fertilizer"].place_as_tile = { | ||||
|         result = BioInd.AB_tiles() and "vegetation-green-grass-3" or "grass-3", | ||||
|         condition_size = 1, | ||||
|         condition = { layers = { water_tile = true } } | ||||
|     } | ||||
| end | ||||
| 
 | ||||
| 
 | ||||
| if settings.startup["angels-use-angels-barreling"] and settings.startup["angels-use-angels-barreling"].value then | ||||
|     data.raw.technology["bi-tech-fertilizer"].prerequisites = { | ||||
|         "bi-tech-bio-farming", | ||||
|  | @ -426,10 +431,12 @@ end | |||
| 
 | ||||
| -- We may need liquid air and nitrogen -- but not if any of the following mods is active! | ||||
| 
 | ||||
| 
 | ||||
| local ICONPATH = BioInd.modRoot .. "/graphics/icons/" | ||||
| 
 | ||||
| -- We only want to create nitrogen if it doesn't exist yet. We then also need to create | ||||
| -- liquid air. | ||||
| 
 | ||||
| if not data.raw.fluid["nitrogen"] and not data.raw.fluid["kr-nitrogen"] then | ||||
| if not data.raw.fluid["nitrogen"] then | ||||
|     data:extend({ | ||||
|         { | ||||
|             type = "fluid", | ||||
|  | @ -488,23 +495,20 @@ if not data.raw.fluid["nitrogen"] and not data.raw.fluid["kr-nitrogen"] then | |||
| 
 | ||||
|     -- Recipes for "bi-liquid-air" and "bi-nitrogen" aren't needed! | ||||
| else | ||||
|     local oxygen = data.raw.fluid["kr-oxygen"] and "kr-oxygen" or "oxygen" | ||||
|     local nitrogen = data.raw.fluid["kr-nitrogen"] and "kr-nitrogen" or "nitrogen" | ||||
| 
 | ||||
|     -- Remove recipe unlocks | ||||
|     thxbob.lib.tech.remove_recipe_unlock("bi-tech-fertilizer", "bi-liquid-air") | ||||
|     thxbob.lib.tech.remove_recipe_unlock("bi-tech-fertilizer", "bi-nitrogen") | ||||
|     BioInd.writeDebug("Removed recipe unlocks for \"bi-liquid-air\" and \"bi-nitrogen\"") | ||||
| 
 | ||||
|     -- Replace liquid air with oxygen (from Krastorio/K2) in recipes for Algae Biomass 2 and 3 | ||||
|     if data.raw.fluid[oxygen] then | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-2", "liquid-air", oxygen) | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-3", "liquid-air", oxygen) | ||||
|     if data.raw.fluid.oxygen then | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-2", "liquid-air", "oxygen") | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-3", "liquid-air", "oxygen") | ||||
|         BioInd.writeDebug("Replaced \"liquid-air\" with \"oxygen\" in recipes \"bi-biomass-2\" and \"bi-biomass-3\"") | ||||
|         -- Perhaps there is no oxygen? But there's nitrogen for sure, so we fall back to that! | ||||
|     elseif data.raw.fluid[nitrogen] then | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-2", "liquid-air", nitrogen) | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-3", "liquid-air", nitrogen) | ||||
|     elseif data.raw.fluid.nitrogen then | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-2", "liquid-air", "nitrogen") | ||||
|         thxbob.lib.recipe.replace_ingredient("bi-biomass-3", "liquid-air", "nitrogen") | ||||
|         BioInd.writeDebug("Replaced \"liquid-air\" with \"nitrogen\" in recipes \"bi-biomass-2\" and \"bi-biomass-3\"") | ||||
|     end | ||||
| 
 | ||||
|  | @ -514,230 +518,6 @@ else | |||
|     BioInd.writeDebug("Removed recipes for \"nitrogen\" and \"liquid air\".") | ||||
| end | ||||
| 
 | ||||
| 
 | ||||
|  -- Replace nitrogen (BI) with bob-nitrogen (Bob's) in recipe "bi-nitrogen" | ||||
| if data.raw.fluid["bob-nitrogen"] then | ||||
| 	 local nitrogen = data.raw.fluid["kr-nitrogen"] and "kr-nitrogen" or "nitrogen" | ||||
| 	  thxbob.lib.recipe.remove_result("bi-nitrogen", nitrogen) | ||||
| 	  thxbob.lib.recipe.add_result("bi-nitrogen", { | ||||
| 		type = "fluid", | ||||
| 		name = "bob-nitrogen", | ||||
| 		amount = 40 | ||||
| 	  }) | ||||
| 
 | ||||
| 	  thxbob.lib.recipe.replace_ingredient("bi-fertilizer-1", nitrogen, "bob-nitrogen") | ||||
| 	  thxbob.lib.recipe.replace_ingredient("bi-fertilizer-2", nitrogen, "bob-nitrogen") | ||||
| 
 | ||||
| 	BioInd.writeDebug("Update nitrogen compatibility for Bob's") | ||||
| 	 | ||||
| end | ||||
| 
 | ||||
| -- Replace liquid-air (BI) with bob-liquid-air (Bob's) in recipe "bi-liquid-air" | ||||
| if data.raw.fluid["bob-liquid-air"] then | ||||
|   | ||||
| 	  thxbob.lib.recipe.remove_result("bi-liquid-air", "liquid-air") | ||||
| 	  thxbob.lib.recipe.add_result("bi-liquid-air", { | ||||
| 		type = "fluid", | ||||
| 		name = "bob-liquid-air", | ||||
| 		amount = 100 | ||||
| 	  }) | ||||
| 
 | ||||
|       thxbob.lib.recipe.replace_ingredient("bi-nitrogen", "liquid-air", "bob-liquid-air") | ||||
| 	  thxbob.lib.recipe.replace_ingredient("bi-biomass-2", "liquid-air", "bob-liquid-air") | ||||
| 	  thxbob.lib.recipe.replace_ingredient("bi-biomass-3", "liquid-air", "bob-liquid-air") | ||||
| 
 | ||||
| 	BioInd.writeDebug("Update liquid-air compatibility for Bob's") | ||||
| 	 | ||||
| end | ||||
| 
 | ||||
| ------------ Support for Bob's Greenhouse | ||||
| -- Replace bob-fertiliser (Bob's) with fertilizer (BI) in recipe "bob-fertiliser" | ||||
| if data.raw["item"]["bob-greenhouse"] then | ||||
|   | ||||
| 	data.raw["item"]["bob-fertiliser"].icon = ICONPATH .. "fertilizer.png" | ||||
| 	data.raw["item"]["bob-fertiliser"].icon_size = 64 | ||||
| 	data.raw["recipe"]["bob-fertiliser"].icon = ICONPATH .. "fertilizer.png" | ||||
| 	data.raw["recipe"]["bob-fertiliser"].icon_size = 64 | ||||
| 		 | ||||
| 	thxbob.lib.recipe.remove_result("bob-fertiliser", "bob-fertiliser") | ||||
| 	thxbob.lib.recipe.add_result("bob-fertiliser", { | ||||
| 		type = "item", | ||||
| 		name = "fertilizer", | ||||
| 		amount = 1 | ||||
| 	}) | ||||
| 
 | ||||
| 
 | ||||
|     thxbob.lib.recipe.replace_ingredient("bob-advanced-greenhouse-cycle", "bob-fertiliser", "fertilizer") | ||||
| 
 | ||||
|     data.raw["item"]["bob-fertiliser"].place_as_tile = { | ||||
|         result = BioInd.AB_tiles() and "vegetation-green-grass-3" or "grass-3", | ||||
|         condition_size = 1, | ||||
|         condition = { layers = { water_tile = true } } | ||||
|     } | ||||
| 	 | ||||
| 	 | ||||
| 	data.raw["item"]["bob-seedling"].place_result = "seedling" | ||||
| 	data.raw["item"]["bob-seedling"].icon = ICONPATH .. "Seedling.png" | ||||
| 	data.raw["item"]["bob-seedling"].icon_size = 64 | ||||
| 	data.raw["recipe"]["bob-seedling"].icon = ICONPATH .. "Seedling.png" | ||||
| 	data.raw["recipe"]["bob-seedling"].icon_size = 64 | ||||
| 	data.raw["recipe"]["bob-seedling"].main_product = "seedling" | ||||
| 	 | ||||
| 	 | ||||
| 	thxbob.lib.recipe.replace_ingredient("bob-basic-greenhouse-cycle", "bob-seedling", "seedling") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bob-advanced-greenhouse-cycle", "bob-seedling", "seedling") | ||||
| 	thxbob.lib.recipe.remove_result("bob-seedling", "bob-seedling") | ||||
| 	thxbob.lib.recipe.add_result("bob-seedling", { | ||||
| 		type = "item", | ||||
| 		name = "seedling", | ||||
| 		amount_min = 1,  | ||||
| 		amount_max = 6 | ||||
| 	  }) | ||||
| 
 | ||||
| 	 | ||||
| 	BioInd.writeDebug("Update fertiliser compatibility for Bob's") | ||||
| 	 | ||||
| end | ||||
| 
 | ||||
| 
 | ||||
|  -- Replace Bob's Resin with BI Resin | ||||
| if data.raw.item["bob-resin"] then | ||||
| 	  | ||||
| 	if data.raw.recipe["bob-resin-wood"] then | ||||
| 	  thxbob.lib.recipe.remove_result("bob-resin-wood", "bob-resin") | ||||
| 	  thxbob.lib.recipe.add_result("bob-resin-wood", { | ||||
| 		type = "item", | ||||
| 		name = "resin", | ||||
| 		amount = 1 | ||||
| 	  }) | ||||
| 	  BioInd.writeDebug("Replace Bob's Resin with BI Resin in Recipe 'bob-resin-wood'")  | ||||
| 	end   | ||||
| 	 | ||||
| 	if data.raw.recipe["bob-resin-oil"] then | ||||
| 	  thxbob.lib.recipe.remove_result("bob-resin-oil", "bob-resin") | ||||
| 	  thxbob.lib.recipe.add_result("bob-resin-oil", { | ||||
| 		type = "item", | ||||
| 		name = "resin", | ||||
| 		amount = 1 | ||||
| 	  }) | ||||
| 	  BioInd.writeDebug("Replace Bob's Resin with BI Resin in Recipe 'bob-resin-oil'")    | ||||
| 	end   | ||||
| 
 | ||||
| 	if data.raw.recipe["bob-rubber"] then | ||||
| 	   data.raw.recipe["bob-rubber"].icon = ICONPATH_BA .. "rubber.png" | ||||
| 	   data.raw.recipe["bob-rubber"].icon_size = 32 | ||||
| 	   thxbob.lib.recipe.replace_ingredient("bob-rubber", "bob-resin", "resin")   | ||||
| 	   BioInd.writeDebug("Replace Bob's Resin with BI Resin in Recipe 'bob-rubber'")   | ||||
| 	end   | ||||
| 	 | ||||
| 	if data.raw.recipe["bob-phenolic-board"] then | ||||
| 		thxbob.lib.recipe.replace_ingredient("bob-phenolic-board", "bob-resin", "resin")   | ||||
| 		BioInd.writeDebug("Replace Bob's Resin with BI Resin in Recipe 'bob-phenolic-board'")    | ||||
| 	end   | ||||
| 
 | ||||
| 	if data.raw.recipe["bob-solder"] then | ||||
| 		thxbob.lib.recipe.replace_ingredient("bob-solder", "bob-resin", "resin")   | ||||
| 		BioInd.writeDebug("Replace Bob's Resin with BI Resin in Recipe 'bob-solder'")    | ||||
| 	end   | ||||
| 	 | ||||
| 
 | ||||
| end | ||||
| 
 | ||||
| --- Updaet seeds to work with Space Age if present. | ||||
| 
 | ||||
| if data.raw.item["tree-seed"] then | ||||
| 	  | ||||
| 	--data.raw.item["bi-seed"] = nil -- We can remove BI's seed, since it won't be used. | ||||
| 	data.raw.item["bi-seed"].plant_result = "tree-plant" | ||||
| 	data.raw.item["bi-seed"].place_result = "tree-plant" | ||||
| 	data.raw.item["tree-seed"].stack_size = 200  -- Update tree seed stack size | ||||
| 	    | ||||
| 	thxbob.lib.recipe.remove_result("bi-seed-1", "bi-seed") | ||||
| 	thxbob.lib.recipe.add_result("bi-seed-1", { | ||||
| 	  type = "item", | ||||
| 	  name = "tree-seed", | ||||
| 	  amount_min = 30,  | ||||
| 	  amount_max = 50 | ||||
| 	  }) | ||||
| 	thxbob.lib.recipe.remove_result("bi-seed-2", "bi-seed")   | ||||
| 	thxbob.lib.recipe.add_result("bi-seed-2", { | ||||
| 	  type = "item", | ||||
| 	  name = "tree-seed", | ||||
| 	  amount_min = 40,  | ||||
| 	  amount_max = 60 | ||||
| 	  }) | ||||
| 	thxbob.lib.recipe.remove_result("bi-seed-3", "bi-seed")   | ||||
| 	thxbob.lib.recipe.add_result("bi-seed-3", { | ||||
| 	  type = "item", | ||||
| 	  name = "tree-seed", | ||||
| 	  amount_min = 50,  | ||||
| 	  amount_max = 70 | ||||
| 	  }) | ||||
| 	thxbob.lib.recipe.remove_result("bi-seed-4", "bi-seed")   | ||||
| 	thxbob.lib.recipe.add_result("bi-seed-4", { | ||||
| 	  type = "item", | ||||
| 	  name = "tree-seed", | ||||
| 	  amount_min = 60,  | ||||
| 	  amount_max = 100 | ||||
| 	  }) | ||||
| 	       | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-1", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-2", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-3", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-4", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seedling-1", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seedling-2", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seedling-3", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seedling-4", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-bomb-basic", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-bomb-standard", "bi-seed", "tree-seed") | ||||
| 	thxbob.lib.recipe.replace_ingredient("bi-seed-bomb-advanced", "bi-seed", "tree-seed") | ||||
| 
 | ||||
| 	if data.raw.recipe["bi-seed-bomb-basic-recycling"] then | ||||
| 
 | ||||
| 		thxbob.lib.recipe.remove_result("bi-seed-bomb-basic-recycling", "bi-seed")   | ||||
| 		thxbob.lib.recipe.add_result("bi-seed-bomb-basic-recycling", { | ||||
| 		  type = "item", | ||||
| 		  name = "tree-seed", | ||||
| 		  amount = 100,  | ||||
| 		  }) | ||||
| 
 | ||||
| 	end | ||||
| 	 | ||||
| 	if data.raw.recipe["bi-seed-bomb-standard-recycling"] then | ||||
| 
 | ||||
| 		thxbob.lib.recipe.remove_result("bi-seed-bomb-standard-recycling", "bi-seed")   | ||||
| 		thxbob.lib.recipe.add_result("bi-seed-bomb-standard-recycling", { | ||||
| 		  type = "item", | ||||
| 		  name = "tree-seed", | ||||
| 		  amount = 100,  | ||||
| 		  }) | ||||
| 
 | ||||
| 	end | ||||
| 
 | ||||
| 	if data.raw.recipe["bi-seed-bomb-advanced-recycling"] then | ||||
| 
 | ||||
| 		thxbob.lib.recipe.remove_result("bi-seed-bomb-advanced-recycling", "bi-seed")   | ||||
| 		thxbob.lib.recipe.add_result("bi-seed-bomb-advanced-recycling", { | ||||
| 		  type = "item", | ||||
| 		  name = "tree-seed", | ||||
| 		  amount = 100,  | ||||
| 		  }) | ||||
| 
 | ||||
| 	end | ||||
| 	 | ||||
|   if data.raw.item["tree-plant"] then | ||||
|     bobmods.lib.recipe.update_recycling_recipe({ | ||||
|       "bi-seed-bomb-basic", | ||||
|       "bi-seed-bomb-standard", | ||||
|       "bi-seed-bomb-advanced", | ||||
|     }) | ||||
|   end | ||||
| 
 | ||||
| 	BioInd.writeDebug("Replace BI's Seed with Space Age Tree-seed") | ||||
| 	 | ||||
| end | ||||
| 
 | ||||
| -- Moved here from data-final-fixes.lua for 0.18.34/1.1.4! (Fixes https://mods.factorio.com/mod/Bio_Industries/discussion/5ff570bd916993002371332a) | ||||
| ---- Game Tweaks ---- Recipes | ||||
| if BI.Settings.BI_Game_Tweaks_Recipe then | ||||
|  | @ -757,8 +537,7 @@ if BI.Settings.BI_Game_Tweaks_Recipe then | |||
|         thxbob.lib.recipe.add_new_ingredient("bi-rail-wood", { type = "item", name = "stone-crushed", amount = 6 }) | ||||
|     end | ||||
| 
 | ||||
|     -- vanilla rail update | ||||
| 	--- Recipe | ||||
|     -- vanilla rail recipe update | ||||
|     thxbob.lib.recipe.remove_ingredient("rail", "iron-stick") | ||||
| 	thxbob.lib.recipe.add_new_ingredient("rail", { type = "item", name = "concrete", amount = 2 }) | ||||
| 	data.raw["legacy-straight-rail"]["legacy-straight-rail"].icon = ICONPATH_E .. "rail-concrete.png" | ||||
|  | @ -768,39 +547,6 @@ if BI.Settings.BI_Game_Tweaks_Recipe then | |||
| 	thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood") | ||||
| 	thxbob.lib.tech.add_recipe_unlock("railway", "bi-rail-wood-to-concrete") | ||||
| 	 | ||||
| 	--- Update Vanilla Images - Look more like concrete | ||||
| 	require("prototypes.Wood_Products.rail-pictures-vanilla") | ||||
| 	data.raw["straight-rail"]["straight-rail"].pictures = new_rail_pictures_vanilla("straight") | ||||
| 	data.raw["half-diagonal-rail"]["half-diagonal-rail"].pictures = new_rail_pictures_vanilla("half-diagonal") | ||||
| 	data.raw["curved-rail-a"]["curved-rail-a"].pictures = new_rail_pictures_vanilla("curved-a") | ||||
| 	data.raw["curved-rail-b"]["curved-rail-b"].pictures = new_rail_pictures_vanilla("curved-b") | ||||
| 	--- remnants | ||||
| 	data.raw["rail-remnants"]["straight-rail-remnants"].pictures = new_rail_remnants_pictures_vanilla("straight") | ||||
| 	data.raw["rail-remnants"]["half-diagonal-rail-remnants"].pictures = new_rail_remnants_pictures_vanilla("half-diagonal") | ||||
| 	data.raw["rail-remnants"]["curved-rail-a-remnants"].pictures = new_rail_remnants_pictures_vanilla("curved-a") | ||||
| 	data.raw["rail-remnants"]["curved-rail-b-remnants"].pictures = new_rail_remnants_pictures_vanilla("curved-b") | ||||
| 	--- Let me try and remove decoratives at the same time  | ||||
| 	data.raw["rail-planner"]["rail"].remove_decoratives = "true" | ||||
| 	data.raw["straight-rail"]["straight-rail"].remove_decoratives = "true" | ||||
| 	data.raw["half-diagonal-rail"]["half-diagonal-rail"].remove_decoratives = "true" | ||||
| 	data.raw["curved-rail-a"]["curved-rail-a"].remove_decoratives = "true" | ||||
| 	data.raw["curved-rail-b"]["curved-rail-b"].remove_decoratives = "true" | ||||
| 	data.raw["rail-planner"]["rail"].removes_soft_decoratives = true | ||||
| 	data.raw["straight-rail"]["straight-rail"].removes_soft_decoratives = true | ||||
| 	data.raw["half-diagonal-rail"]["half-diagonal-rail"].removes_soft_decoratives = true | ||||
| 	data.raw["curved-rail-a"]["curved-rail-a"].removes_soft_decoratives = true | ||||
| 	data.raw["curved-rail-b"]["curved-rail-b"].removes_soft_decoratives = true | ||||
| 	 | ||||
| 	data.raw["rail-planner"]["bi-rail-wood"].remove_decoratives = "true" | ||||
| 	data.raw["straight-rail"]["bi-straight-rail-wood"].remove_decoratives = "true" | ||||
| 	data.raw["half-diagonal-rail"]["bi-half-diagonal-rail-wood"].remove_decoratives = "true" | ||||
| 	data.raw["curved-rail-a"]["bi-curved-rail-a-wood"].remove_decoratives = "true" | ||||
| 	data.raw["curved-rail-b"]["bi-curved-rail-b-wood"].remove_decoratives = "true" | ||||
| 	data.raw["rail-planner"]["bi-rail-wood"].removes_soft_decoratives = true | ||||
| 	data.raw["straight-rail"]["bi-straight-rail-wood"].removes_soft_decoratives = true | ||||
| 	data.raw["half-diagonal-rail"]["bi-half-diagonal-rail-wood"].removes_soft_decoratives = true | ||||
| 	data.raw["curved-rail-a"]["bi-curved-rail-a-wood"].removes_soft_decoratives = true | ||||
| 	data.raw["curved-rail-b"]["bi-curved-rail-b-wood"].removes_soft_decoratives = true	 | ||||
| end | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -28,13 +28,13 @@ end | |||
| 
 | ||||
| 
 | ||||
| --- Help Files | ||||
| require("libs.functions")            -- From Bob's Libary | ||||
| require("libs.error-functions")      -- From Bob's Libary | ||||
| require("libs.item-functions")       -- From Bob's Libary | ||||
| require("libs.recipe-functions")     -- From Bob's Libary | ||||
| require("libs.technology-functions") -- From Bob's Libary | ||||
| require("libs.functions")            -- From Bob's Libary | ||||
| require("libs.category-functions")   -- From Bob's Libary | ||||
| require("libs.bi_functions")         -- Functions | ||||
| 
 | ||||
| require("prototypes.category") | ||||
| 
 | ||||
| 
 | ||||
|  | @ -46,6 +46,7 @@ require("prototypes.Bio_Farm.item") | |||
| require("prototypes.Bio_Farm.recipe") | ||||
| require("prototypes.Bio_Farm.liquids") | ||||
| require("prototypes.Bio_Farm.recipe-categories") | ||||
| require("prototypes.Bio_Farm.pipeConnectors") | ||||
| require("prototypes.Bio_Farm.technology") | ||||
| require("prototypes.Bio_Farm.tree_entities") | ||||
| 
 | ||||
|  | @ -69,7 +70,6 @@ require("prototypes.Wood_Products.recipe") | |||
| require("prototypes.Wood_Products.containers-entities") | ||||
| require("prototypes.Wood_Products.containers-item") | ||||
| require("prototypes.Wood_Products.containers-recipe") | ||||
| require("prototypes.Wood_Products.rail") | ||||
| 
 | ||||
| 
 | ||||
| if not mods["Natural_Evolution_Buildings"] then | ||||
|  |  | |||
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 1.4 KiB | 
| After Width: | Height: | Size: 1.8 KiB | 
| After Width: | Height: | Size: 1.7 KiB | 
| After Width: | Height: | Size: 1.6 KiB | 
| After Width: | Height: | Size: 1.5 KiB | 
| After Width: | Height: | Size: 1.4 KiB | 
| After Width: | Height: | Size: 944 B | 
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 1.4 KiB | 
| After Width: | Height: | Size: 1.9 KiB | 
| After Width: | Height: | Size: 1.3 KiB | 
| Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB | 
| Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB | 
| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB | 
| Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB | 
| Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 554 B | 
| Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 916 B | 
| Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 553 B | 
| After Width: | Height: | Size: 1.2 KiB | 
| After Width: | Height: | Size: 1.9 KiB | 
| After Width: | Height: | Size: 1 KiB | 
| Before Width: | Height: | Size: 100 KiB | 
| Before Width: | Height: | Size: 44 KiB | 
| Before Width: | Height: | Size: 2.5 KiB | 
| Before Width: | Height: | Size: 109 KiB After Width: | Height: | Size: 33 KiB | 
| Before Width: | Height: | Size: 183 KiB | 
| Before Width: | Height: | Size: 325 KiB | 
| Before Width: | Height: | Size: 115 KiB | 
| Before Width: | Height: | Size: 24 KiB | 
| Before Width: | Height: | Size: 28 KiB | 
| Before Width: | Height: | Size: 141 KiB | 
| Before Width: | Height: | Size: 138 KiB | 
| Before Width: | Height: | Size: 10 KiB | 
| Before Width: | Height: | Size: 14 KiB | 
| Before Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 71 KiB | 
| After Width: | Height: | Size: 109 KiB | 
| Before Width: | Height: | Size: 25 KiB | 
| Before Width: | Height: | Size: 4.4 KiB | 
| Before Width: | Height: | Size: 59 KiB | 
| Before Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 10 KiB | 
| Before Width: | Height: | Size: 3.8 KiB | 
| Before Width: | Height: | Size: 3.8 KiB | 
| Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 3.7 MiB | 
| Before Width: | Height: | Size: 3.4 MiB | 
| Before Width: | Height: | Size: 3.7 MiB | 
| Before Width: | Height: | Size: 3.4 MiB | 
| Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB | 
| Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.4 KiB | 
| Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB | 
| Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.2 KiB | 
| Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB | 
| Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.8 KiB | 
| Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.4 KiB | 
| Before Width: | Height: | Size: 7.1 KiB After Width: | Height: | Size: 7.1 KiB | 
| Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.3 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB | 
| Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB | 
| Before Width: | Height: | Size: 9 KiB After Width: | Height: | Size: 9 KiB | 
| Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 8 KiB After Width: | Height: | Size: 8 KiB | 
| Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB | 
| Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB | 
| Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB | 
| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB | 
| Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB | 
| Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB | 
| Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB | 
| Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB | 
| Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 4.9 KiB | 
| Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB | 
| Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 7.4 KiB After Width: | Height: | Size: 7.4 KiB | 
| Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB | 
| Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 6.2 KiB | 
| Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB | 
| Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB | 
| Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 9.5 KiB | 
| Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.7 KiB | 
| Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB | 
| Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB | 
| Before Width: | Height: | Size: 5 KiB After Width: | Height: | Size: 5 KiB | 
| Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.3 KiB |