forked from cacklingfiend/lignumis
		
	Add optional Basic circuit board
This commit is contained in:
		
							parent
							
								
									d0818722ae
								
							
						
					
					
						commit
						b30eb0b019
					
				
					 19 changed files with 269 additions and 129 deletions
				
			
		
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/basic-circuit-board.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								lignumis/graphics/icons/basic-circuit-board.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 7.8 KiB | 
|  | @ -75,6 +75,7 @@ dead-cupriavidus-necator=Dead Cupriavidus necator | |||
| gold-quality-catalyst=Gold quality catalyst | ||||
| wood-armor=Wood armor | ||||
| wood-darts-magazine=Wood darts magazine | ||||
| basic-circuit-board=Basic circuit board | ||||
| 
 | ||||
| [item-description] | ||||
| wooden-wall=Use wooden walls to protect your base from the locals and to reduce noise levels. | ||||
|  | @ -163,12 +164,16 @@ lignumis-belt-progression=Enable progressive belt recipes | |||
| lignumis-inserter-progression=Enable progressive inserter recipes | ||||
| lignumis-ammo-progression=Enable progressive ammo recipes | ||||
| lignumis-technology-progression=Enable progressive technologies | ||||
| lignumis-basic-circuit-board=Enable basic circuit board | ||||
| lignumis-circuit-progression=Enable progressive circuit recipes | ||||
| 
 | ||||
| [mod-setting-description] | ||||
| lignumis-belt-progression=Yellow belts will require wood belts to craft. | ||||
| lignumis-inserter-progression=Yellow electric inserter will require burner inserter to craft. | ||||
| lignumis-ammo-progression=Firearm magazines will require wooden darts magazines to craft. | ||||
| lignumis-technology-progression=Adds wood and steam science packs to most late game technologies. Disabling this removes the relevance of Lignumis' science packs in the late game. | ||||
| lignumis-basic-circuit-board=Recipes use basic circuit boards instead of gold cables and gold plates where appropriate. Both gold and copper recipes will be added. | ||||
| lignumis-circuit-progression=Electric circuits will require basic circuit boards to craft. | ||||
| 
 | ||||
| [entity-status] | ||||
| no-quality-catalyst=No quality catalyst | ||||
|  |  | |||
|  | @ -22,4 +22,11 @@ wall.emissions_per_second.noise = -30 / 60 | |||
| 
 | ||||
| data.raw["lab"]["wood-lab"].next_upgrade = "burner-lab" | ||||
| 
 | ||||
| table.insert(data.raw["agricultural-tower"]["burner-agricultural-tower"].energy_source.fuel_categories, "processed-chemical") | ||||
| table.insert(data.raw["agricultural-tower"]["burner-agricultural-tower"].energy_source.fuel_categories, "processed-chemical") | ||||
| 
 | ||||
| if settings.startup["lignumis-basic-circuit-board"].value then | ||||
|     table.insert(data.raw["recipe"]["electric-mining-drill"].ingredients, { type = "item", name = "basic-circuit-board", amount = 2 }) | ||||
|     table.insert(data.raw["recipe"]["inserter"].ingredients, { type = "item", name = "basic-circuit-board", amount = 1 }) | ||||
|     table.insert(data.raw["recipe"]["burner-lab"].ingredients, { type = "item", name = "basic-circuit-board", amount = 10 }) | ||||
|     table.insert(data.raw["recipe"]["assembling-machine-1"].ingredients, { type = "item", name = "basic-circuit-board", amount = 5 }) | ||||
| end | ||||
|  | @ -3,10 +3,13 @@ local Technology = require("__cf-lib__/data/Technology") | |||
| 
 | ||||
| if not mods["aai-loaders"] then return end | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| local recipe = { | ||||
|     ingredients = { | ||||
|         { type = "item", name = "lumber",              amount = 5 }, | ||||
|         { type = "item", name = "gold-cable",          amount = 10 }, | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 10 } or | ||||
|         { type = "item", name = "gold-cable", amount = 10 }, | ||||
|         { type = "item", name = "wood-transport-belt", amount = 1 } | ||||
|     }, | ||||
|     energy_required = 1 | ||||
|  | @ -40,17 +43,19 @@ AAILoaders.make_tier({ | |||
|     localise = false | ||||
| }) | ||||
| 
 | ||||
| local nauvis_recipe = Recipe:new("aai-wood-loader"):clone("wood-loader-electronic-circuit") | ||||
| nauvis_recipe:replaceIngredient("gold-cable", "electronic-circuit") | ||||
| nauvis_recipe:unlockedByTechnology("electronics") | ||||
| nauvis_recipe:assign({ | ||||
|     localised_name = { "entity-name.aai-wood-loader" }, | ||||
|     icons = table.assign( | ||||
|         table.deepcopy(data.raw.item["aai-wood-loader"].icons), | ||||
|         { { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } } | ||||
|     ) | ||||
| }) | ||||
| nauvis_recipe:apply() | ||||
| if not basic_circuit_board then | ||||
|     local nauvis_recipe = Recipe:new("aai-wood-loader"):clone("wood-loader-electronic-circuit") | ||||
|     nauvis_recipe:replaceIngredient("gold-cable", "electronic-circuit") | ||||
|     nauvis_recipe:unlockedByTechnology("electronics") | ||||
|     nauvis_recipe:assign({ | ||||
|         localised_name = { "entity-name.aai-wood-loader" }, | ||||
|         icons = table.assign( | ||||
|             table.deepcopy(data.raw.item["aai-wood-loader"].icons), | ||||
|             { { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } } | ||||
|         ) | ||||
|     }) | ||||
|     nauvis_recipe:apply() | ||||
| end | ||||
| 
 | ||||
| if mods["aai-loaders-sane"] then | ||||
|     Technology:new("wood-logistics"):addRecipe("aai-wood-loader") | ||||
|  |  | |||
							
								
								
									
										58
									
								
								lignumis/prototypes/content/basic-circuit-boards.lua
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								lignumis/prototypes/content/basic-circuit-boards.lua
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,58 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| local Technology = require("__cf-lib__/data/Technology") | ||||
| 
 | ||||
| if not settings.startup["lignumis-basic-circuit-board"].value then return end | ||||
| 
 | ||||
| data:extend({ | ||||
|     { | ||||
|         type = "item", | ||||
|         name = "basic-circuit-board", | ||||
|         icon = "__lignumis__/graphics/icons/basic-circuit-board.png", | ||||
|         subgroup = "intermediate-product", | ||||
|         order = "c[circuits]-0[basic-circuit-board]", | ||||
|         inventory_move_sound = item_sounds.electric_small_inventory_move, | ||||
|         pick_sound = item_sounds.electric_small_inventory_pickup, | ||||
|         drop_sound = item_sounds.electric_small_inventory_move, | ||||
|         stack_size = 200, | ||||
|         weight = 0.5 * kg | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "basic-circuit-board", | ||||
|         category = "wood-processing-or-assembling", | ||||
|         icons = { | ||||
|             { icon = "__lignumis__/graphics/icons/basic-circuit-board.png" }, | ||||
|             { icon = "__lignumis__/graphics/icons/gold-cable.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "lumber",     amount = 1 }, | ||||
|             { type = "item", name = "gold-cable", amount = 2 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "basic-circuit-board", amount = 2 } }, | ||||
|         enabled = true, | ||||
|         allow_productivity = true | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "basic-circuit-board-copper", | ||||
|         localised_name = { "item-name.basic-circuit-board" }, | ||||
|         category = "wood-processing-or-assembling", | ||||
|         icons = { | ||||
|             { icon = "__lignumis__/graphics/icons/basic-circuit-board.png" }, | ||||
|             { icon = "__base__/graphics/icons/copper-cable.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "lumber",       amount = 1 }, | ||||
|             { type = "item", name = "copper-cable", amount = 2 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "basic-circuit-board", amount = 2 } }, | ||||
|         enabled = false, | ||||
|         allow_productivity = true | ||||
|     } | ||||
| }) | ||||
| 
 | ||||
| Technology:new("copper-processing"):addRecipe("basic-circuit-board-copper") | ||||
| 
 | ||||
| if settings.startup["lignumis-circuit-progression"].value then | ||||
|     table.insert(data.raw.recipe["electronic-circuit"].ingredients, { type = "item", name = "basic-circuit-board", amount = 1 }) | ||||
| end | ||||
|  | @ -1,6 +1,8 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| local item_tints = require("__base__.prototypes.item-tints") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| local function robot(color) | ||||
|     local result = table.deepcopy(data.raw["construction-robot"]["construction-robot"]) | ||||
|     result.name = "basic-construction-robot-" .. color | ||||
|  | @ -222,7 +224,8 @@ data:extend({ | |||
|     robot_recipe("gold", { | ||||
|         { type = "item", name = "gold-plate",        amount = 2 }, | ||||
|         { type = "item", name = "wooden-gear-wheel", amount = 5 }, | ||||
|         { type = "item", name = "gold-cable",        amount = 10 } | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 5 } or | ||||
|         { type = "item", name = "gold-cable", amount = 10 } | ||||
|     }), | ||||
|     generator("gold"), | ||||
|     generator_item("gold", 0), | ||||
|  | @ -233,7 +236,8 @@ data:extend({ | |||
|     roboport("gold"), | ||||
|     roboport_item("gold", 0), | ||||
|     roboport_recipe("gold", { | ||||
|         { type = "item", name = "gold-plate",        amount = 10 }, | ||||
|         { type = "item", name = "gold-plate",        amount = basic_circuit_board and 5 or 10 }, | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 10 } or nil, | ||||
|         { type = "item", name = "wooden-gear-wheel", amount = 10 } | ||||
|     }), | ||||
| 
 | ||||
|  | @ -241,9 +245,9 @@ data:extend({ | |||
|     robot("copper"), | ||||
|     robot_item("copper", 1), | ||||
|     robot_recipe("copper", { | ||||
|         { type = "item", name = "iron-plate",         amount = 2 }, | ||||
|         { type = "item", name = "copper-plate",       amount = 2 }, | ||||
|         { type = "item", name = "iron-gear-wheel",    amount = 5 }, | ||||
|         { type = "item", name = "electronic-circuit", amount = 10 } | ||||
|         { type = "item", name = "electronic-circuit", amount = 5 } | ||||
|     }), | ||||
|     generator("copper"), | ||||
|     generator_item("copper", 1), | ||||
|  | @ -254,9 +258,9 @@ data:extend({ | |||
|     roboport("copper"), | ||||
|     roboport_item("copper", 1), | ||||
|     roboport_recipe("copper", { | ||||
|         { type = "item", name = "copper-plate",       amount = 10 }, | ||||
|         { type = "item", name = "iron-gear-wheel",    amount = 10 }, | ||||
|         { type = "item", name = "electronic-circuit", amount = 20 } | ||||
|         { type = "item", name = "copper-plate",       amount = 5 }, | ||||
|         { type = "item", name = "electronic-circuit", amount = 10 }, | ||||
|         { type = "item", name = "iron-gear-wheel",    amount = 10 } | ||||
|     }), | ||||
| 
 | ||||
|     -- Technology | ||||
|  |  | |||
|  | @ -2,6 +2,8 @@ local hit_effects = require("__base__.prototypes.entity.hit-effects") | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| local item_tints = require("__base__.prototypes.item-tints") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| data:extend({ | ||||
|     { | ||||
|         type = "radar", | ||||
|  | @ -77,10 +79,10 @@ data:extend({ | |||
|         category = "crafting-with-steam", | ||||
|         energy_required = 10, | ||||
|         ingredients = { | ||||
|             { type = "item",  name = "stone-brick",       amount = 4 }, | ||||
|             { type = "item",  name = "wooden-gear-wheel", amount = 4 }, | ||||
|             { type = "item",  name = "gold-plate",        amount = 4 }, | ||||
|             { type = "item",  name = "gold-cable",        amount = 4 } | ||||
|             { type = "item", name = "stone-brick",                                                 amount = 4 }, | ||||
|             { type = "item", name = "wooden-gear-wheel",                                           amount = 4 }, | ||||
|             { type = "item", name = "gold-plate",                                                  amount = 4 }, | ||||
|             { type = "item", name = basic_circuit_board and "basic-circuit-board" or "gold-cable", amount = 4 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "basic-radar", amount = 1 } }, | ||||
|         enabled = false | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| local gfx = "__lignumis__/graphics/entity/burner-agricultural-tower/" | ||||
| 
 | ||||
| local agricultural_tower = table.deepcopy(data.raw["agricultural-tower"]["agricultural-tower"]) | ||||
|  | @ -10,7 +11,7 @@ agricultural_tower.corpses = "burner-agricultural-tower-remnants" | |||
| agricultural_tower.icon = "__lignumis__/graphics/icons/burner-agricultural-tower.png" | ||||
| agricultural_tower.graphics_set.animation.layers[1].filename = gfx .. "burner-agricultural-tower-base.png" | ||||
| agricultural_tower.graphics_set.working_visualisations[1].animation.filename = gfx .. | ||||
| "burner-agricultural-tower-base.png" | ||||
|     "burner-agricultural-tower-base.png" | ||||
| agricultural_tower.energy_source = { | ||||
|     type = "burner", | ||||
|     fuel_categories = { "chemical" }, | ||||
|  | @ -86,25 +87,8 @@ data:extend({ | |||
|             { type = "item", name = "stone-brick",       amount = 5 }, | ||||
|             { type = "item", name = "wooden-gear-wheel", amount = 20 }, | ||||
|             { type = "item", name = "lumber",            amount = 20 }, | ||||
|             { type = "item", name = "gold-plate",        amount = 20 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "burner-agricultural-tower", amount = 1 } }, | ||||
|         enabled = false | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "burner-agricultural-tower-electronic-circuit", | ||||
|         localised_name = { "entity-name.burner-agricultural-tower" }, | ||||
|         icons = { | ||||
|             { icon = "__lignumis__/graphics/icons/burner-agricultural-tower.png" }, | ||||
|             { icon = "__base__/graphics/icons/electronic-circuit.png",           scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         energy_required = 10, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "stone-brick",        amount = 5 }, | ||||
|             { type = "item", name = "wooden-gear-wheel",  amount = 20 }, | ||||
|             { type = "item", name = "lumber",             amount = 20 }, | ||||
|             { type = "item", name = "electronic-circuit", amount = 10 } | ||||
|             { type = "item", name = "gold-plate",        amount = basic_circuit_board and 10 or 20 }, | ||||
|             basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 10 } or nil | ||||
|         }, | ||||
|         results = { { type = "item", name = "burner-agricultural-tower", amount = 1 } }, | ||||
|         enabled = false | ||||
|  | @ -125,7 +109,30 @@ tech.ignore_tech_cost_multiplier = true | |||
| 
 | ||||
| data.raw.technology["fish-breeding"].prerequisites = { "agricultural-science-pack" } | ||||
| 
 | ||||
| table.insert(data.raw.technology["electronics"].effects, { | ||||
|     type = "unlock-recipe", | ||||
|     recipe = "burner-agricultural-tower-electronic-circuit" | ||||
| }) | ||||
| if not basic_circuit_board then | ||||
|     data:extend({ | ||||
|         { | ||||
|             type = "recipe", | ||||
|             name = "burner-agricultural-tower-electronic-circuit", | ||||
|             localised_name = { "entity-name.burner-agricultural-tower" }, | ||||
|             icons = { | ||||
|                 { icon = "__lignumis__/graphics/icons/burner-agricultural-tower.png" }, | ||||
|                 { icon = "__base__/graphics/icons/electronic-circuit.png",           scale = 0.25, shift = { 8, 8 } } | ||||
|             }, | ||||
|             energy_required = 10, | ||||
|             ingredients = { | ||||
|                 { type = "item", name = "stone-brick",        amount = 5 }, | ||||
|                 { type = "item", name = "wooden-gear-wheel",  amount = 20 }, | ||||
|                 { type = "item", name = "lumber",             amount = 20 }, | ||||
|                 { type = "item", name = "electronic-circuit", amount = 10 } | ||||
|             }, | ||||
|             results = { { type = "item", name = "burner-agricultural-tower", amount = 1 } }, | ||||
|             enabled = false | ||||
|         } | ||||
|     }) | ||||
| 
 | ||||
|     table.insert(data.raw.technology["electronics"].effects, { | ||||
|         type = "unlock-recipe", | ||||
|         recipe = "burner-agricultural-tower-electronic-circuit" | ||||
|     }) | ||||
| end | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| local gfx = "__lignumis__/graphics/entity/burner-assembling-machine/" | ||||
| 
 | ||||
| local assembling_machine = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-1"]) | ||||
|  | @ -71,24 +72,8 @@ data:extend({ | |||
|         ingredients = { | ||||
|             { type = "item", name = "wooden-gear-wheel", amount = 5 }, | ||||
|             { type = "item", name = "lumber",            amount = 8 }, | ||||
|             { type = "item", name = "gold-cable",        amount = 20 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "burner-assembling-machine", amount = 1 } }, | ||||
|         energy_required = 4 | ||||
|     }, | ||||
|     { | ||||
|         type = "recipe", | ||||
|         name = "burner-assembling-machine-electronic-circuit", | ||||
|         localised_name = { "entity-name.burner-assembling-machine" }, | ||||
|         icons = { | ||||
|             { icon = "__lignumis__/graphics/icons/burner-assembling-machine.png" }, | ||||
|             { icon = "__base__/graphics/icons/electronic-circuit.png",           scale = 0.25, shift = { 8, 8 } } | ||||
|         }, | ||||
|         enabled = false, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "wooden-gear-wheel",  amount = 5 }, | ||||
|             { type = "item", name = "lumber",             amount = 8 }, | ||||
|             { type = "item", name = "electronic-circuit", amount = 10 } | ||||
|             basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 5 } or | ||||
|             { type = "item", name = "gold-cable", amount = 10 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "burner-assembling-machine", amount = 1 } }, | ||||
|         energy_required = 4 | ||||
|  | @ -118,7 +103,29 @@ data:extend({ | |||
|     } | ||||
| }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["electronics"].effects, { | ||||
|     type = "unlock-recipe", | ||||
|     recipe = "burner-assembling-machine-electronic-circuit" | ||||
| }) | ||||
| if not basic_circuit_board then | ||||
|     data:extend({ | ||||
|         { | ||||
|             type = "recipe", | ||||
|             name = "burner-assembling-machine-electronic-circuit", | ||||
|             localised_name = { "entity-name.burner-assembling-machine" }, | ||||
|             icons = { | ||||
|                 { icon = "__lignumis__/graphics/icons/burner-assembling-machine.png" }, | ||||
|                 { icon = "__base__/graphics/icons/electronic-circuit.png",           scale = 0.25, shift = { 8, 8 } } | ||||
|             }, | ||||
|             enabled = false, | ||||
|             ingredients = { | ||||
|                 { type = "item", name = "wooden-gear-wheel",  amount = 5 }, | ||||
|                 { type = "item", name = "lumber",             amount = 8 }, | ||||
|                 { type = "item", name = "electronic-circuit", amount = 5 } | ||||
|             }, | ||||
|             results = { { type = "item", name = "burner-assembling-machine", amount = 1 } }, | ||||
|             energy_required = 4 | ||||
|         } | ||||
|     }) | ||||
| 
 | ||||
|     table.insert(data.raw.technology["electronics"].effects, { | ||||
|         type = "unlock-recipe", | ||||
|         recipe = "burner-assembling-machine-electronic-circuit" | ||||
|     }) | ||||
| end | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| local gfx = "__lignumis__/graphics/entity/burner-long-handed-inserter/" | ||||
| 
 | ||||
| local long_handed_inserter = table.deepcopy(data.raw["inserter"]["long-handed-inserter"]) | ||||
|  | @ -65,9 +66,10 @@ data:extend({ | |||
|         enabled = false, | ||||
|         ingredients = { | ||||
|             { type = "item", name = "wooden-gear-wheel", amount = 1 }, | ||||
|             { type = "item", name = "burner-inserter", amount = 1 }, | ||||
|             { type = "item", name = "gold-cable", amount = 4 } | ||||
|             { type = "item", name = "burner-inserter",   amount = 1 }, | ||||
|             basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 1 } or | ||||
|             { type = "item", name = "gold-cable", amount = 2 } | ||||
|         }, | ||||
|         results = { { type = "item", name = "burner-long-handed-inserter", amount = 1 } } | ||||
|     } | ||||
| }) | ||||
| }) | ||||
|  |  | |||
|  | @ -29,5 +29,6 @@ require("active-noise-cancelling-tower") | |||
| require("quality-assembler") | ||||
| require("decoratives") | ||||
| require("wood-military") | ||||
| require("basic-circuit-boards") | ||||
| 
 | ||||
| require("noise") | ||||
|  |  | |||
|  | @ -1,6 +1,8 @@ | |||
| local LumberMillFactory = require(MF.buildings .. "LumberMill") | ||||
| local LumberMill = LumberMillFactory() | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| data:extend({ | ||||
|     { | ||||
|         type = "recipe-category", | ||||
|  | @ -30,7 +32,8 @@ LumberMill.RecipeBuilder:new() | |||
|         { type = "item", name = "stone-brick",               amount = 40 }, | ||||
|         { type = "item", name = "lumber",                    amount = 100 }, | ||||
|         { type = "item", name = "wooden-gear-wheel",         amount = 100 }, | ||||
|         { type = "item", name = "gold-plate",                amount = 60 }, | ||||
|         { type = "item", name = "gold-plate",                amount = basic_circuit_board and 30 or 60 }, | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 30 } or nil, | ||||
|         { type = "item", name = "burner-assembling-machine", amount = 5 } | ||||
|     }) | ||||
|     :apply({ | ||||
|  | @ -44,25 +47,27 @@ LumberMill.TechnologyBuilder:new() | |||
|     :ingredients({ { "wood-science-pack", 1 }, { "steam-science-pack", 1 } }) | ||||
|     :apply() | ||||
| 
 | ||||
| LumberMill.RecipeBuilder:new() | ||||
|     :ingredients({ | ||||
|         { type = "item", name = "stone-brick",          amount = 40 }, | ||||
|         { type = "item", name = "lumber",               amount = 50 }, | ||||
|         { type = "item", name = "iron-gear-wheel",      amount = 50 }, | ||||
|         { type = "item", name = "electronic-circuit",   amount = 20 }, | ||||
|         { type = "item", name = "assembling-machine-1", amount = 2 } | ||||
|     }) | ||||
|     :apply({ | ||||
|         name = "lumber-mill-electronic-circuit", | ||||
|         localised_name = { "entity-name.lumber-mill" }, | ||||
|         category = "wood-processing-or-assembling", | ||||
|         icons = { | ||||
|             { icon = lumber_mill_item.icon }, | ||||
|             { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } | ||||
|         } | ||||
|     }) | ||||
| if not basic_circuit_board then | ||||
|     LumberMill.RecipeBuilder:new() | ||||
|         :ingredients({ | ||||
|             { type = "item", name = "stone-brick",          amount = 40 }, | ||||
|             { type = "item", name = "lumber",               amount = 50 }, | ||||
|             { type = "item", name = "iron-gear-wheel",      amount = 50 }, | ||||
|             { type = "item", name = "electronic-circuit",   amount = 20 }, | ||||
|             { type = "item", name = "assembling-machine-1", amount = 2 } | ||||
|         }) | ||||
|         :apply({ | ||||
|             name = "lumber-mill-electronic-circuit", | ||||
|             localised_name = { "entity-name.lumber-mill" }, | ||||
|             category = "wood-processing-or-assembling", | ||||
|             icons = { | ||||
|                 { icon = lumber_mill_item.icon }, | ||||
|                 { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } | ||||
|             } | ||||
|         }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["electronics"].effects, { | ||||
|     type = "unlock-recipe", | ||||
|     recipe = "lumber-mill-electronic-circuit" | ||||
| }) | ||||
|     table.insert(data.raw.technology["electronics"].effects, { | ||||
|         type = "unlock-recipe", | ||||
|         recipe = "lumber-mill-electronic-circuit" | ||||
|     }) | ||||
| end | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| local item_sounds = require("__base__.prototypes.item_sounds") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| local gfx = "__lignumis__/graphics/entity/wood-lab/" | ||||
| 
 | ||||
| data:extend({ | ||||
|  | @ -148,7 +149,8 @@ data:extend({ | |||
|             { type = "item", name = "lumber",            amount = 10 }, | ||||
|             { type = "item", name = "wooden-gear-wheel", amount = 10 }, | ||||
|             { type = "item", name = "stone-brick",       amount = 10 }, | ||||
|             { type = "item", name = "gold-plate",        amount = 20 } | ||||
|             { type = "item", name = "gold-plate",        amount = basic_circuit_board and 10 or 20 }, | ||||
|             basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 10 } or nil | ||||
|         }, | ||||
|         results = { { type = "item", name = "wood-lab", amount = 1 } }, | ||||
|         enabled = false | ||||
|  |  | |||
|  | @ -1,6 +1,8 @@ | |||
| local BeltFactory = require(MF.logistics .. "Belts") | ||||
| local Belt = BeltFactory("wood", "brown", "slow") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| Belt.EntityBuilder:new() | ||||
|     :itemsPerSecond(7.5) | ||||
|     :nextTier("") | ||||
|  | @ -36,7 +38,8 @@ Belt.RecipeBuilder:new() | |||
|     :ingredients("splitter", { | ||||
|         { type = "item", name = "wood-transport-belt", amount = 2 }, | ||||
|         { type = "item", name = "lumber",              amount = 2 }, | ||||
|         { type = "item", name = "gold-cable",          amount = 10 } | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 5 } or | ||||
|         { type = "item", name = "gold-cable", amount = 10 } | ||||
|     }) | ||||
|     :apply() | ||||
| 
 | ||||
|  | @ -47,27 +50,29 @@ Belt.TechnologyBuilder:new() | |||
|     :time(10) | ||||
|     :apply() | ||||
| 
 | ||||
| data:extend({ | ||||
|     Belt.RecipeBuilder:new() | ||||
|         :ingredients("splitter", { | ||||
|             { type = "item", name = "wood-transport-belt", amount = 2 }, | ||||
|             { type = "item", name = "lumber",              amount = 2 }, | ||||
|             { type = "item", name = "electronic-circuit",  amount = 2 } | ||||
|         }) | ||||
|         :build({ | ||||
|             splitter = { | ||||
|                 name = "wood-splitter-electronic-circuit", | ||||
|                 localised_name = { "entity-name.wood-splitter" }, | ||||
|                 icons = { | ||||
|                     { icon = splitter_item.icon }, | ||||
|                     { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } | ||||
| if not basic_circuit_board then | ||||
|     data:extend({ | ||||
|         Belt.RecipeBuilder:new() | ||||
|             :ingredients("splitter", { | ||||
|                 { type = "item", name = "wood-transport-belt", amount = 2 }, | ||||
|                 { type = "item", name = "lumber",              amount = 2 }, | ||||
|                 { type = "item", name = "electronic-circuit",  amount = 2 } | ||||
|             }) | ||||
|             :build({ | ||||
|                 splitter = { | ||||
|                     name = "wood-splitter-electronic-circuit", | ||||
|                     localised_name = { "entity-name.wood-splitter" }, | ||||
|                     icons = { | ||||
|                         { icon = splitter_item.icon }, | ||||
|                         { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         }) | ||||
|         .splitter | ||||
| }) | ||||
|             }) | ||||
|             .splitter | ||||
|     }) | ||||
| 
 | ||||
| table.insert(data.raw.technology["electronics"].effects, { | ||||
|     type = "unlock-recipe", | ||||
|     recipe = "wood-splitter-electronic-circuit" | ||||
| }) | ||||
|     table.insert(data.raw.technology["electronics"].effects, { | ||||
|         type = "unlock-recipe", | ||||
|         recipe = "wood-splitter-electronic-circuit" | ||||
|     }) | ||||
| end | ||||
|  |  | |||
|  | @ -1,6 +1,8 @@ | |||
| local pipecovers = require("prototypes/content/gold/pipecovers") | ||||
| local machinepipes = require("prototypes/content/gold/machinepipes") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| local silo = table.deepcopy(data.raw["rocket-silo"]["rocket-silo"]) | ||||
| silo.name = "provisional-rocket-silo" | ||||
| silo.icon = "__lignumis__/graphics/icons/provisional-rocket-silo.png" | ||||
|  | @ -69,7 +71,8 @@ silo_recipe.ingredients = { | |||
|     { type = "item", name = "wooden-gear-wheel", amount = 250 }, | ||||
|     { type = "item", name = "stone-brick",       amount = 500 }, | ||||
|     { type = "item", name = "gold-plate",        amount = 500 }, | ||||
|     { type = "item", name = "gold-cable",        amount = 100 } | ||||
|     basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 100 } or | ||||
|     { type = "item", name = "gold-cable", amount = 100 } | ||||
| } | ||||
| 
 | ||||
| local rocket = table.deepcopy(data.raw["rocket-silo-rocket"]["rocket-silo-rocket"]) | ||||
|  | @ -90,11 +93,12 @@ local rocket_part_recipe = { | |||
|     hide_from_player_crafting = true, | ||||
|     category = "rocket-building", | ||||
|     ingredients = { | ||||
|         { type = "item",  name = "lumber",            amount = 5 }, | ||||
|         { type = "item",  name = "wooden-gear-wheel", amount = 5 }, | ||||
|         { type = "item",  name = "gold-plate",        amount = 5 }, | ||||
|         { type = "item",  name = "gold-cable",        amount = 5 }, | ||||
|         { type = "fluid", name = "wood-pulp",         amount = 5 } | ||||
|         { type = "item", name = "lumber",            amount = basic_circuit_board and 3 or 5 }, | ||||
|         { type = "item", name = "wooden-gear-wheel", amount = basic_circuit_board and 4 or 5 }, | ||||
|         { type = "item", name = "gold-plate",        amount = 5 }, | ||||
|         basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 5 } or | ||||
|         { type = "item", name = "gold-cable", amount = 5 }, | ||||
|         { type = "fluid", name = "wood-pulp", amount = 5 } | ||||
|     }, | ||||
|     results = { { type = "item", name = "rocket-part", amount = 1 } }, | ||||
|     allow_productivity = true | ||||
|  |  | |||
|  | @ -1,6 +1,8 @@ | |||
| local Technology = require("__cf-lib__/data/Technology") | ||||
| local Recipe = require("__cf-lib__/data/Recipe") | ||||
| 
 | ||||
| local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value | ||||
| 
 | ||||
| -- Burner mining drill | ||||
| 
 | ||||
| local drill = data.raw["mining-drill"]["burner-mining-drill"] | ||||
|  | @ -19,9 +21,10 @@ drill_item.icon = "__lignumis__/graphics/icons/burner-mining-drill.png" | |||
| 
 | ||||
| local drill_recipe = data.raw["recipe"]["burner-mining-drill"] | ||||
| drill_recipe.ingredients = { | ||||
|     { type = "item", name = "wooden-gear-wheel", amount = 3 }, | ||||
|     { type = "item", name = "stone-furnace",     amount = 1 }, | ||||
|     { type = "item", name = "lumber",            amount = 3 } | ||||
|     { type = "item", name = "wooden-gear-wheel", amount = basic_circuit_board and 2 or 3 }, | ||||
|     { type = "item", name = "lumber",            amount = basic_circuit_board and 2 or 3 }, | ||||
|     basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 2 } or nil | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -26,6 +26,20 @@ data:extend({ | |||
|         setting_type = "startup", | ||||
|         default_value = true, | ||||
|         order = "d" | ||||
|     }, | ||||
|     { | ||||
|         type = "bool-setting", | ||||
|         name = "lignumis-basic-circuit-board", | ||||
|         setting_type = "startup", | ||||
|         default_value = false, | ||||
|         order = "e" | ||||
|     }, | ||||
|     { | ||||
|         type = "bool-setting", | ||||
|         name = "lignumis-circuit-progression", | ||||
|         setting_type = "startup", | ||||
|         default_value = false, | ||||
|         order = "f" | ||||
|     } | ||||
| }) | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Simon Brodtmann
						Simon Brodtmann