working version
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
*.bak
|
||||||
|
*.blend*
|
||||||
20
LICENSE.md
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2021 Brevven
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
the Software without restriction, including without limitation the rights to
|
||||||
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||||
|
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||||
|
subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
|
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||||
|
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||||
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
30
Makefile
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
# General makefile for factorio mods.
|
||||||
|
#
|
||||||
|
# Presumes the development work is done in a <factoriodir>/dev/<modname>/
|
||||||
|
# directory where this makefile resides. This directory must be parallel to
|
||||||
|
# the <factoriodir>/mods/ directory where mods are installed. Run `make
|
||||||
|
# install` from dev/<modname> to install the mod as a zip file. That zip file
|
||||||
|
# should also be ready to upload to the mod portal
|
||||||
|
|
||||||
|
.PHONY: copy lint-changelog install
|
||||||
|
|
||||||
|
pwd = $(shell pwd)
|
||||||
|
v = $(shell basename "$(pwd)")_$(shell jq -r .version info.json)
|
||||||
|
|
||||||
|
copy:
|
||||||
|
rm -rf ../$(v)
|
||||||
|
mkdir -p ../$(v)
|
||||||
|
cp -rf * ../$(v)
|
||||||
|
rm -f ../$(v).zip
|
||||||
|
cd ..; zip -9 -r -y $(v).zip $(v) -x "*.xcf" -x "*.git*" -x "*.bak" -x "*.blend*"
|
||||||
|
|
||||||
|
install: lint-changelog copy
|
||||||
|
cp -f ../$(v).zip ../../mods/
|
||||||
|
|
||||||
|
|
||||||
|
lint-changelog: copy
|
||||||
|
python3 ../da-changelog-tools_0.0.14/changelog-checker.py --changelog ../$(v).zip
|
||||||
|
|
||||||
|
zorro:
|
||||||
|
python3 ../da-changelog-tools_0.0.14/changelog-checker.py --zorro --changelog ../$(v).zip
|
||||||
|
|
||||||
6
changelog.txt
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
---------------------------------------------------------------------------------------------------
|
||||||
|
Version: 0.0.1
|
||||||
|
Date: 2021-06-10
|
||||||
|
Features:
|
||||||
|
- Zirconium, Zirconia, Zircon, Cermet added to game.
|
||||||
|
- Compatible with space exploration, krastorio2, deadlock stacking/crating, etc.
|
||||||
22
data-final-fixes.lua
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
-- require("modules")
|
||||||
|
require("zirconium-recipe-final-stacking")
|
||||||
|
require("zirconium-recipe-final-rrr")
|
||||||
|
|
||||||
|
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
-- Organization
|
||||||
|
data.raw.item["zirconia"].subgroup = "plates"
|
||||||
|
data.raw.recipe["zirconia"].subgroup = "plates"
|
||||||
|
data.raw.item["zirconium-plate"].subgroup = "plates"
|
||||||
|
data.raw.recipe["zirconium-plate"].subgroup = "plates"
|
||||||
|
end
|
||||||
|
|
||||||
|
if mods.bztitanium then
|
||||||
|
for i, entity in pairs(data.raw.furnace) do
|
||||||
|
if entity.result_inventory_size ~= nil and entity.result_inventory_size < 2 and util.contains(entity.crafting_categories, "smelting") then
|
||||||
|
entity.result_inventory_size = 2
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
6
data-updates.lua
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
require("tech-updates")
|
||||||
|
require("zirconium-recipe-updates")
|
||||||
|
require("zircon-matter")
|
||||||
|
require("omni")
|
||||||
|
require("map-gen-preset-updates")
|
||||||
|
-- require("tungsten-recipe-5d")
|
||||||
177
data-util.lua
Normal file
|
|
@ -0,0 +1,177 @@
|
||||||
|
local util = {}
|
||||||
|
|
||||||
|
function util.get_setting(name)
|
||||||
|
if settings.startup[name] == nil then
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
return settings.startup[name].value
|
||||||
|
end
|
||||||
|
|
||||||
|
function util.use_cermet()
|
||||||
|
return util.get_setting("bzzirconium-enable-intermediates") == "yes"
|
||||||
|
end
|
||||||
|
|
||||||
|
function util.get_stack_size(default)
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
size = tonumber(krastorio.general.getSafeSettingValue("kr-stack-size"))
|
||||||
|
return size or default
|
||||||
|
end
|
||||||
|
return default
|
||||||
|
end
|
||||||
|
|
||||||
|
-- check if a table contains a sought value
|
||||||
|
function util.contains(table, sought)
|
||||||
|
for i, value in pairs(table) do
|
||||||
|
if value == sought then
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add a prerequisite to a given technology
|
||||||
|
function util.add_prerequisite(technology_name, prerequisite)
|
||||||
|
technology = data.raw.technology[technology_name]
|
||||||
|
if technology and data.raw.technology[prerequisite] then
|
||||||
|
if technology.prerequisites then
|
||||||
|
table.insert(technology.prerequisites, prerequisite)
|
||||||
|
else
|
||||||
|
technology.prerequisites = {prerequisite}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Remove a prerequisite from a given technology
|
||||||
|
function util.remove_prerequisite(technology_name, prerequisite)
|
||||||
|
technology = data.raw.technology[technology_name]
|
||||||
|
local index = -1
|
||||||
|
if technology and data.raw.technology[prerequisite] then
|
||||||
|
for i, prereq in pairs(technology.prerequisites) do
|
||||||
|
if prereq == prerequisite then
|
||||||
|
index = i
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if index > -1 then
|
||||||
|
table.remove(technology.prerequisites, index)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add an effect to a given technology
|
||||||
|
function util.add_effect(technology_name, effect)
|
||||||
|
technology = data.raw.technology[technology_name]
|
||||||
|
if technology then
|
||||||
|
table.insert(technology.effects, effect)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Set technology ingredients
|
||||||
|
function util.set_tech_recipe(technology_name, ingredients)
|
||||||
|
technology = data.raw.technology[technology_name]
|
||||||
|
if technology then
|
||||||
|
technology.unit.ingredients = ingredients
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add a given quantity of ingredient to a given recipe
|
||||||
|
function util.add_ingredient(recipe_name, ingredient, quantity)
|
||||||
|
if data.raw.recipe[recipe_name] then
|
||||||
|
add_ingredient(data.raw.recipe[recipe_name], ingredient, quantity)
|
||||||
|
add_ingredient(data.raw.recipe[recipe_name].normal, ingredient, quantity)
|
||||||
|
add_ingredient(data.raw.recipe[recipe_name].expensive, ingredient, quantity)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function add_ingredient(recipe, ingredient, quantity)
|
||||||
|
if recipe ~= nil and recipe.ingredients ~= nil then
|
||||||
|
table.insert(recipe.ingredients, {ingredient, quantity})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Add a given quantity of product to a given recipe.
|
||||||
|
-- Only works for recipes with multiple products
|
||||||
|
function util.add_product(recipe_name, product)
|
||||||
|
if data.raw.recipe[recipe_name] then
|
||||||
|
add_product(data.raw.recipe[recipe_name], product)
|
||||||
|
add_product(data.raw.recipe[recipe_name].normal, product)
|
||||||
|
add_product(data.raw.recipe[recipe_name].expensive, product)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function add_product(recipe, product)
|
||||||
|
if recipe ~= nil and recipe.results ~= nil then
|
||||||
|
table.insert(recipe.results, product)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Replace one ingredient with another in a recipe
|
||||||
|
function util.replace_ingredient(recipe_name, old, new)
|
||||||
|
if data.raw.recipe[recipe_name] then
|
||||||
|
replace_ingredient(data.raw.recipe[recipe_name], old, new)
|
||||||
|
replace_ingredient(data.raw.recipe[recipe_name].normal, old, new)
|
||||||
|
replace_ingredient(data.raw.recipe[recipe_name].expensive, old, new)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function replace_ingredient(recipe, old, new)
|
||||||
|
if recipe ~= nil and recipe.ingredients ~= nil then
|
||||||
|
for i, ingredient in pairs(recipe.ingredients) do
|
||||||
|
if ingredient.name == old then ingredient.name = new end
|
||||||
|
if ingredient[1] == old then ingredient[1] = new end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Remove an ingredient from a recipe
|
||||||
|
function util.remove_ingredient(recipe_name, old)
|
||||||
|
if data.raw.recipe[recipe_name] then
|
||||||
|
remove_ingredient(data.raw.recipe[recipe_name], old)
|
||||||
|
remove_ingredient(data.raw.recipe[recipe_name].normal, old)
|
||||||
|
remove_ingredient(data.raw.recipe[recipe_name].expensive, old)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function remove_ingredient(recipe, old)
|
||||||
|
index = -1
|
||||||
|
if recipe ~= nil and recipe.ingredients ~= nil then
|
||||||
|
for i, ingredient in pairs(recipe.ingredients) do
|
||||||
|
if ingredient.name == old or ingredient[1] == old then
|
||||||
|
index = i
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if index > -1 then
|
||||||
|
table.remove(recipe.ingredients, index)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
-- Replace an amount of an ingredient in a recipe. Keep at least 1 of old.
|
||||||
|
function util.replace_some_ingredient(recipe_name, old, old_amount, new, new_amount)
|
||||||
|
if data.raw.recipe[recipe_name] then
|
||||||
|
replace_some_ingredient(data.raw.recipe[recipe_name], old, old_amount, new, new_amount)
|
||||||
|
replace_some_ingredient(data.raw.recipe[recipe_name].normal, old, old_amount, new, new_amount)
|
||||||
|
replace_some_ingredient(data.raw.recipe[recipe_name].expensive, old, old_amount, new, new_amount)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function replace_some_ingredient(recipe, old, old_amount, new, new_amount)
|
||||||
|
if recipe ~= nil and recipe.ingredients ~= nil then
|
||||||
|
for i, ingredient in pairs(recipe.ingredients) do
|
||||||
|
-- For final fixes
|
||||||
|
if ingredient.name == old then
|
||||||
|
ingredient.amount = math.max(1, ingredient.amount - old_amount)
|
||||||
|
end
|
||||||
|
-- For updates
|
||||||
|
if ingredient[1] == old then
|
||||||
|
ingredient[2] = math.max(1, ingredient[2] - old_amount)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
add_ingredient(recipe, new, new_amount)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
return util
|
||||||
6
data.lua
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
require("zircon")
|
||||||
|
require("zircon-particle")
|
||||||
|
require("zirconium-recipe")
|
||||||
|
require("zirconium-enriched") -- Enriched for Krastorio 2
|
||||||
|
require("zirconium-recipe-se") -- Space Exploration special recipes (depends on K2 if present)
|
||||||
|
-- require("zirconium-compressed")
|
||||||
BIN
graphics/entity/ores/hr-zircon.png
Normal file
|
After Width: | Height: | Size: 2.3 MiB |
BIN
graphics/entity/ores/hr-zircon.xcf
Normal file
BIN
graphics/entity/ores/zircon.png
Normal file
|
After Width: | Height: | Size: 638 KiB |
BIN
graphics/entity/ores/zircon.xcf
Normal file
BIN
graphics/entity/zircon-particle/hr-zircon-particle-1.png
Normal file
|
After Width: | Height: | Size: 812 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-2.png
Normal file
|
After Width: | Height: | Size: 711 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-3.png
Normal file
|
After Width: | Height: | Size: 572 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-4.png
Normal file
|
After Width: | Height: | Size: 627 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-shadow-1.png
Normal file
|
After Width: | Height: | Size: 239 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-shadow-2.png
Normal file
|
After Width: | Height: | Size: 215 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-shadow-3.png
Normal file
|
After Width: | Height: | Size: 202 B |
BIN
graphics/entity/zircon-particle/hr-zircon-particle-shadow-4.png
Normal file
|
After Width: | Height: | Size: 203 B |
BIN
graphics/entity/zircon-particle/zircon-particle-1.png
Normal file
|
After Width: | Height: | Size: 370 B |
BIN
graphics/entity/zircon-particle/zircon-particle-2.png
Normal file
|
After Width: | Height: | Size: 342 B |
BIN
graphics/entity/zircon-particle/zircon-particle-3.png
Normal file
|
After Width: | Height: | Size: 310 B |
BIN
graphics/entity/zircon-particle/zircon-particle-4.png
Normal file
|
After Width: | Height: | Size: 299 B |
BIN
graphics/entity/zircon-particle/zircon-particle-shadow-1.png
Normal file
|
After Width: | Height: | Size: 148 B |
BIN
graphics/entity/zircon-particle/zircon-particle-shadow-2.png
Normal file
|
After Width: | Height: | Size: 127 B |
BIN
graphics/entity/zircon-particle/zircon-particle-shadow-3.png
Normal file
|
After Width: | Height: | Size: 125 B |
BIN
graphics/entity/zircon-particle/zircon-particle-shadow-4.png
Normal file
|
After Width: | Height: | Size: 122 B |
BIN
graphics/icons/cermet.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
graphics/icons/cermet.xcf
Normal file
BIN
graphics/icons/enriched-zircon-2.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
graphics/icons/enriched-zircon-2.xcf
Normal file
BIN
graphics/icons/enriched-zircon-3.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
graphics/icons/enriched-zircon-3.xcf
Normal file
BIN
graphics/icons/enriched-zircon-4.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
graphics/icons/enriched-zircon-4.xcf
Normal file
BIN
graphics/icons/enriched-zircon.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
graphics/icons/enriched-zircon.xcf
Normal file
BIN
graphics/icons/stacked/cermet-stacked.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
graphics/icons/stacked/cermet-stacked.xcf
Normal file
BIN
graphics/icons/stacked/enriched-zircon-stacked.png
Normal file
|
After Width: | Height: | Size: 9.6 KiB |
BIN
graphics/icons/stacked/enriched-zircon-stacked.xcf
Normal file
BIN
graphics/icons/stacked/zircon-stacked.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
graphics/icons/stacked/zircon-stacked.xcf
Normal file
BIN
graphics/icons/stacked/zirconia-stacked.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
graphics/icons/stacked/zirconia-stacked.xcf
Normal file
BIN
graphics/icons/stacked/zirconium-plate-stacked.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
graphics/icons/stacked/zirconium-plate-stacked.xcf
Normal file
BIN
graphics/icons/zircon-2.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
graphics/icons/zircon-2.xcf
Normal file
BIN
graphics/icons/zircon-3.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
graphics/icons/zircon-3.xcf
Normal file
BIN
graphics/icons/zircon-4.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
graphics/icons/zircon-4.xcf
Normal file
BIN
graphics/icons/zircon-n-2.xcf
Normal file
BIN
graphics/icons/zircon-n-3.xcf
Normal file
BIN
graphics/icons/zircon-n-4.xcf
Normal file
BIN
graphics/icons/zircon-n.xcf
Normal file
BIN
graphics/icons/zircon-powder.png
Normal file
|
After Width: | Height: | Size: 9.2 KiB |
BIN
graphics/icons/zircon-powder.xcf
Normal file
BIN
graphics/icons/zircon-stacked-new.xcf
Normal file
BIN
graphics/icons/zircon.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
graphics/icons/zircon.xcf
Normal file
BIN
graphics/icons/zirconia.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
graphics/icons/zirconia.xcf
Normal file
BIN
graphics/icons/zirconium-plate-2.xcf
Normal file
BIN
graphics/icons/zirconium-plate-new.xcf
Normal file
BIN
graphics/icons/zirconium-plate.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
graphics/icons/zirconium-plate.xcf
Normal file
BIN
graphics/technology/cermet.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
graphics/technology/zirconia-processing.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
graphics/technology/zirconium-processing.png
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
graphics/technology/zirconium-processing.xcf
Normal file
23
info.json
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
"name": "bzzirconium",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"factorio_version": "1.1",
|
||||||
|
"title": "Zirconium",
|
||||||
|
"author": "Brevven",
|
||||||
|
"contact": "",
|
||||||
|
"homepage": "",
|
||||||
|
"dependencies": [
|
||||||
|
"base >= 1.1.0",
|
||||||
|
"? space-exploration",
|
||||||
|
"? Krastorio2",
|
||||||
|
"? deadlock-beltboxes-loaders",
|
||||||
|
"? DeadlockCrating",
|
||||||
|
"? omnimatter",
|
||||||
|
"? bzsilicon",
|
||||||
|
"? bzlead",
|
||||||
|
"? bztitanium",
|
||||||
|
"? bztungsten"
|
||||||
|
],
|
||||||
|
"description": "Adds zircon, zirconia, zirconium, and cermet to the base game."
|
||||||
|
}
|
||||||
|
|
||||||
55
locale/en/zirconium.cfg
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
[entity-name]
|
||||||
|
zircon=Zircon
|
||||||
|
|
||||||
|
[autoplace-control-names]
|
||||||
|
zircon=[item=zircon] Zircon
|
||||||
|
|
||||||
|
[item-name]
|
||||||
|
zircon=Zircon
|
||||||
|
zirconium-dust=Zircon dust
|
||||||
|
zirconia=Zirconia
|
||||||
|
zirconium-plate=Zirconium plate
|
||||||
|
enriched-zircon=Enriched zircon
|
||||||
|
compressed-zircon=Compressed zircon
|
||||||
|
cermet=Cermet
|
||||||
|
zirconium-tungstate=Zirconium tungstate
|
||||||
|
|
||||||
|
[item-description]
|
||||||
|
zircon=Can be smelted into zirconia
|
||||||
|
zirconia=A great ceramic. Can be smelted into zirconium, too.
|
||||||
|
enriched-zircon=Can be efficiently smelted into zirconia.
|
||||||
|
enriched-zirconia=Can be efficiently smelted into zirconium plates.
|
||||||
|
cermet=Advanced ceramic/metal composites.
|
||||||
|
zirconium-tungstate=A material with interesting thermal properties.
|
||||||
|
|
||||||
|
[technology-name]
|
||||||
|
zirconia-processing=Zirconia processing
|
||||||
|
cermet=Cermet
|
||||||
|
enriched-zircon=Enriched zircon
|
||||||
|
enriched-zirconia=Enriched zirconia
|
||||||
|
zirconium-matter-processing=Zirconium conversion
|
||||||
|
|
||||||
|
[technology-description]
|
||||||
|
enriched-zircon=Enrich zircon, purifying with ammonia [fluid=ammonia] and water [fluid=water], improving the final yield. Produce dirty water [fluid=dirty-water] as a byproduct.
|
||||||
|
|
||||||
|
[recipe-name]
|
||||||
|
sort-stone-zircon=Sort stone for zircon
|
||||||
|
sort-zircon-stone=Sort zircon for stone
|
||||||
|
enriched-zircon=__ITEM__enriched-zircon__
|
||||||
|
enriched-zirconia=__ITEM__enriched-zirconia__
|
||||||
|
zirconium-plate=__ITEM__zirconium-plate__
|
||||||
|
smelt-compressed-zircon=__ITEM__zirconia__
|
||||||
|
zircon-dust=__ITEM__zircon-dust__
|
||||||
|
dirty-water-filtration-zircon=Filter dirty water [item=zircon]
|
||||||
|
|
||||||
|
[recipe-description]
|
||||||
|
enriched-zircon=Enrich zircon, purifying with sulfuric-acid [fluid=sulfuric-acid] and water [fluid=water], improving the final yield. Produce dirty water [fluid=dirty-water] as a byproduct.
|
||||||
|
enriched-zirconia=Further enrich zirconia, purifying with hydrogen chloride [fluid=hydrogen-chloride] and water [fluid=water], improving the final yield. Produce dirty water [fluid=dirty-water] as a byproduct.
|
||||||
|
|
||||||
|
dirty-water-filtration-zircon=Filter dirty water, giving zircon [item=zircon] and stone [item=stone] (probabilistically).
|
||||||
|
|
||||||
|
# Settings
|
||||||
|
[mod-setting-name]
|
||||||
|
bzzirconium-enable-intermediates=Enable cermet
|
||||||
|
[mod-setting-description]
|
||||||
|
bzzirconium-enable-intermediates=Enable cermet, an advanced intermediate made from ceramics and metals.
|
||||||
14
map-gen-preset-updates.lua
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
local base_ore = "iron-ore"
|
||||||
|
if mods["angelssmelting"] then
|
||||||
|
base_ore = "angels-ore1"
|
||||||
|
end
|
||||||
|
if data.raw["map-gen-presets"] and data.raw["map-gen-presets"].default then
|
||||||
|
for name, preset in pairs(data.raw["map-gen-presets"].default) do
|
||||||
|
if type(preset) == "table" and
|
||||||
|
preset.basic_settings and
|
||||||
|
preset.basic_settings.autoplace_controls and
|
||||||
|
preset.basic_settings.autoplace_controls[base_ore] then
|
||||||
|
preset.basic_settings.autoplace_controls["zircon"] = preset.basic_settings.autoplace_controls[base_ore]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
27
modules.lua
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
-- Enable prod modules for all zircon, etc recipes
|
||||||
|
|
||||||
|
recipes = {"zirconium-plate", "zirconia", "cermet"}
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
table.insert(recipes, "enriched-zirconia-smelting")
|
||||||
|
table.insert(recipes, "enriched-zircon")
|
||||||
|
end
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
table.insert(recipes, "tungsten-smelting-vulcanite")
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
table.insert(recipes, "enriched-tungsten-smelting-vulcanite")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
for i, recipe in pairs(recipes) do
|
||||||
|
if data.raw.recipe[recipe] then
|
||||||
|
for j, module in pairs(data.raw.module) do
|
||||||
|
if module.effect then
|
||||||
|
for effect_name, effect in pairs(module.effect) do
|
||||||
|
if effect_name == "productivity" and effect.bonus > 0 and module.limitation and #module.limitation > 0 then
|
||||||
|
table.insert(module.limitation, recipe)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
3
omni.lua
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
if omni and omni.matter then
|
||||||
|
omni.matter.add_resource("zircon", omni.matter.get_ore_tier("iron-ore"))
|
||||||
|
end
|
||||||
10
settings.lua
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
data:extend(
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "string-setting",
|
||||||
|
name = "bzzirconium-enable-intermediates",
|
||||||
|
setting_type = "startup",
|
||||||
|
default_value = "yes",
|
||||||
|
allowed_values = {"yes", "no"},
|
||||||
|
},
|
||||||
|
})
|
||||||
27
tech-updates.lua
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
util.add_prerequisite("advanced-material-processing-2", "zirconia-processing")
|
||||||
|
util.add_prerequisite("low-density-structure", "zirconia-processing")
|
||||||
|
util.add_prerequisite("nuclear-power", "zirconia-processing")
|
||||||
|
util.add_prerequisite("explosives", "zirconia-processing")
|
||||||
|
util.add_prerequisite("chemical-science-pack", "zirconia-processing")
|
||||||
|
|
||||||
|
if util.use_cermet() then
|
||||||
|
-- production science techs behind cermet
|
||||||
|
util.add_prerequisite("effect-transmission", "cermet")
|
||||||
|
util.add_prerequisite("automation-3", "cermet")
|
||||||
|
util.add_prerequisite("productivity-module-3", "cermet")
|
||||||
|
util.add_prerequisite("speed-module-3", "cermet")
|
||||||
|
util.add_prerequisite("effectivity-module-3", "cermet")
|
||||||
|
|
||||||
|
-- utility science techs behind cermet
|
||||||
|
util.add_prerequisite("rocket-control-unit", "cermet")
|
||||||
|
util.set_tech_recipe("rocket-control-unit",
|
||||||
|
{
|
||||||
|
{"automation-science-pack", 1},
|
||||||
|
{"logistic-science-pack", 1},
|
||||||
|
{"chemical-science-pack", 1},
|
||||||
|
{"production-science-pack", 1},
|
||||||
|
{"utility-science-pack", 1},
|
||||||
|
})
|
||||||
|
end
|
||||||
BIN
thumbnail.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
thumbnail.xcf
Normal file
32
zircon-compressed.lua
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
if simpleCompress then
|
||||||
|
if simpleCompress.ores then
|
||||||
|
simpleCompress.currentSubgroup = "intermediate-product"
|
||||||
|
if data.raw.item["tungsten-ore"] then
|
||||||
|
SimpleCompress_AddTintedItem("tungsten-ore", "ore4-tungsten", "ore", {r=0.90, g=0.90, b=0.75})
|
||||||
|
SimpleCompress_UnlockOreTechAndRecipe("tungsten-ore")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if simpleCompress.plates then
|
||||||
|
simpleCompress.currentSubgroup = "intermediate-product"
|
||||||
|
if data.raw.item["tungsten-plate"] then
|
||||||
|
SimpleCompress_AddTintedItem("tungsten-plate", "plates4-tungsten", "plate3", {r=0.90, g=0.90, b=0.75})
|
||||||
|
SimpleCompress_UnlockPlateTechAndRecipe("tungsten-plate")
|
||||||
|
local tungstenRecipe = data.raw.recipe["decompress-tungsten-plate"]
|
||||||
|
tungstenRecipe.order = "d[tungsten-plate]"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if simpleCompress.smelting then
|
||||||
|
if data.raw.item["tungsten-plate"] and data.raw.item["tungsten-plate"] then
|
||||||
|
SimpleCompress_AddSmeltingRecipe("tungsten-ore", "tungsten-plate")
|
||||||
|
SimpleCompress_UnlockOreSmeltingTech("tungsten-ore")
|
||||||
|
local tungstenRecipe = data.raw.recipe["smelt-compressed-tungsten-ore"]
|
||||||
|
tungstenRecipe.results = {
|
||||||
|
{type="item", name = "tungsten-plate", amount=simpleCompress.CompressedSmeltAmount},
|
||||||
|
}
|
||||||
|
tungstenRecipe.icons = {{ icon = "__bztungsten__/graphics/icons/tungsten-plate.png", icon_size = 128 }}
|
||||||
|
tungstenRecipe.subgroup = "raw-material"
|
||||||
|
tungstenRecipe.order = "d[tungsten-plate]"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
73
zircon-matter.lua
Normal file
|
|
@ -0,0 +1,73 @@
|
||||||
|
-- Matter recipes for Krastorio2
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
local matter = require("__Krastorio2__/lib/public/data-stages/matter-util")
|
||||||
|
|
||||||
|
data:extend(
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "technology",
|
||||||
|
name = "zirconium-matter-processing",
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
icon = "__Krastorio2__/graphics/technologies/matter-stone.png",
|
||||||
|
icon_size = 256,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
icon = "__bzzirconium__/graphics/icons/zircon.png",
|
||||||
|
icon_size = 64, icon_mipmaps = 3,
|
||||||
|
scale = 1.25,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
prerequisites = {"kr-matter-processing"},
|
||||||
|
unit =
|
||||||
|
{
|
||||||
|
count = 350,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{"production-science-pack", 1},
|
||||||
|
{"utility-science-pack", 1},
|
||||||
|
{"matter-tech-card", 1}
|
||||||
|
},
|
||||||
|
time = 45
|
||||||
|
}
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local zircon_matter =
|
||||||
|
{
|
||||||
|
item_name = "zircon",
|
||||||
|
minimum_conversion_quantity = 10,
|
||||||
|
matter_value = 6,
|
||||||
|
energy_required = 1,
|
||||||
|
need_stabilizer = false,
|
||||||
|
unlocked_by_technology = "zirconium-matter-processing"
|
||||||
|
}
|
||||||
|
matter.createMatterRecipe(zircon_matter)
|
||||||
|
|
||||||
|
|
||||||
|
local zirconia_matter =
|
||||||
|
{
|
||||||
|
item_name = "zirconia",
|
||||||
|
minimum_conversion_quantity = 20,
|
||||||
|
matter_value = 10,
|
||||||
|
energy_required = 2,
|
||||||
|
only_deconversion = true,
|
||||||
|
need_stabilizer = true,
|
||||||
|
unlocked_by_technology = "zirconium-matter-processing"
|
||||||
|
}
|
||||||
|
matter.createMatterRecipe(zirconia_matter)
|
||||||
|
|
||||||
|
local zirconium_plate_matter =
|
||||||
|
{
|
||||||
|
item_name = "zirconium-plate",
|
||||||
|
minimum_conversion_quantity = 10,
|
||||||
|
matter_value = 17,
|
||||||
|
energy_required = 2,
|
||||||
|
only_deconversion = true,
|
||||||
|
need_stabilizer = true,
|
||||||
|
unlocked_by_technology = "zirconium-matter-processing"
|
||||||
|
}
|
||||||
|
matter.createMatterRecipe(zirconium_plate_matter)
|
||||||
|
|
||||||
|
end
|
||||||
144
zircon-particle.lua
Normal file
|
|
@ -0,0 +1,144 @@
|
||||||
|
data:extend(
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "optimized-particle",
|
||||||
|
name = "zircon-particle",
|
||||||
|
flags = {"not-on-map"},
|
||||||
|
life_time = 180,
|
||||||
|
pictures =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-1.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-1.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-2.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-2.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-3.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-3.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-4.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-4.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
shadows =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-shadow-1.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-shadow-1.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-shadow-2.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-shadow-2.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-shadow-3.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-shadow-3.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/zircon-particle-shadow-4.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 16,
|
||||||
|
height = 16,
|
||||||
|
frame_count = 1,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/zircon-particle/hr-zircon-particle-shadow-4.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
width = 32,
|
||||||
|
height = 32,
|
||||||
|
frame_count = 1,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
82
zircon.lua
Normal file
|
|
@ -0,0 +1,82 @@
|
||||||
|
local resource_autoplace = require('resource-autoplace');
|
||||||
|
local noise = require('noise');
|
||||||
|
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "autoplace-control",
|
||||||
|
category = "resource",
|
||||||
|
name = "zircon",
|
||||||
|
richness = true,
|
||||||
|
order = "b-e"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "noise-layer",
|
||||||
|
name = "zircon"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "resource",
|
||||||
|
icon_size = 64, icon_mipmaps = 3,
|
||||||
|
name = "zircon",
|
||||||
|
icon = "__bzzirconium__/graphics/icons/zircon.png",
|
||||||
|
flags = {"placeable-neutral"},
|
||||||
|
order="a-b-a",
|
||||||
|
map_color = {r=0.90, g=0.70, b=0.70},
|
||||||
|
minable =
|
||||||
|
{
|
||||||
|
hardness = 1,
|
||||||
|
mining_particle = "zircon-particle",
|
||||||
|
mining_time = 1.5,
|
||||||
|
result = "zircon"
|
||||||
|
},
|
||||||
|
collision_box = {{ -0.1, -0.1}, {0.1, 0.1}},
|
||||||
|
selection_box = {{ -0.5, -0.5}, {0.5, 0.5}},
|
||||||
|
|
||||||
|
autoplace = resource_autoplace.resource_autoplace_settings{
|
||||||
|
name = "zircon",
|
||||||
|
order = "b-z",
|
||||||
|
base_density = 4,
|
||||||
|
has_starting_area_placement = true,
|
||||||
|
regular_rq_factor_multiplier = 1.2,
|
||||||
|
starting_rq_factor_multiplier = .7,
|
||||||
|
},
|
||||||
|
|
||||||
|
stage_counts = {15000, 9500, 5500, 2900, 1300, 400, 150, 80},
|
||||||
|
stages =
|
||||||
|
{
|
||||||
|
sheet =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/ores/zircon.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
size = 64,
|
||||||
|
frame_count = 8,
|
||||||
|
variation_count = 8,
|
||||||
|
hr_version =
|
||||||
|
{
|
||||||
|
filename = "__bzzirconium__/graphics/entity/ores/hr-zircon.png",
|
||||||
|
priority = "extra-high",
|
||||||
|
size = 128,
|
||||||
|
frame_count = 8,
|
||||||
|
variation_count = 8,
|
||||||
|
scale = 0.5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "zircon",
|
||||||
|
icon_size = 64, icon_mipmaps = 3,
|
||||||
|
icon = "__bzzirconium__/graphics/icons/zircon.png",
|
||||||
|
pictures = {
|
||||||
|
{filename="__bzzirconium__/graphics/icons/zircon.png", size=64, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/zircon-2.png", size=64, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/zircon-3.png", size=64, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/zircon-4.png", size=64, scale=0.25},
|
||||||
|
},
|
||||||
|
subgroup = "raw-resource",
|
||||||
|
order = "t-c-a",
|
||||||
|
stack_size = util.get_stack_size(50)
|
||||||
|
},
|
||||||
|
})
|
||||||
123
zirconium-enriched.lua
Normal file
|
|
@ -0,0 +1,123 @@
|
||||||
|
-- Enriched Titanium for Krastorio2
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "enriched-zircon",
|
||||||
|
icon_size = 128,
|
||||||
|
icon = "__bzzirconium__/graphics/icons/enriched-zircon.png",
|
||||||
|
pictures = {
|
||||||
|
{filename="__bzzirconium__/graphics/icons/enriched-zircon.png", size=128, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/enriched-zircon-2.png", size=128, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/enriched-zircon-3.png", size=128, scale=0.25},
|
||||||
|
{filename="__bzzirconium__/graphics/icons/enriched-zircon-4.png", size=128, scale=0.25},
|
||||||
|
},
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "e05-a[enriched-ores]-a1[enriched-zircon]",
|
||||||
|
stack_size = util.get_stack_size(100),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "enriched-zircon",
|
||||||
|
icon = "__bzzirconium__/graphics/icons/enriched-zircon.png",
|
||||||
|
icon_size = 128,
|
||||||
|
category = "chemistry",
|
||||||
|
energy_required = 3,
|
||||||
|
enabled = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
always_show_products = true,
|
||||||
|
allow_productivity = true,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{type = "fluid", name = "sulfuric-acid", amount = 10},
|
||||||
|
{type = "fluid", name = "water", amount = 25, catalyst_amount = 25},
|
||||||
|
{type = "item", name = "zircon", amount = 9}
|
||||||
|
},
|
||||||
|
results =
|
||||||
|
{
|
||||||
|
{type = "item", name = "enriched-zircon", amount = 6},
|
||||||
|
{type = "fluid", name = "dirty-water", amount = 25, catalyst_amount = 25}
|
||||||
|
},
|
||||||
|
crafting_machine_tint =
|
||||||
|
{
|
||||||
|
primary = {r = 0.721, g = 0.525, b = 0.043, a = 0.000},
|
||||||
|
secondary = {r = 0.200, g = 0.680, b = 0.300, a = 0.357},
|
||||||
|
tertiary = {r = 0.690, g = 0.768, b = 0.870, a = 0.000},
|
||||||
|
quaternary = {r = 0.0, g = 0.980, b = 0.603, a = 0.900}
|
||||||
|
},
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "e03[enriched-zircon]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "enriched-zirconia-smelting",
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128, icon_mipmaps = 3, },
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/enriched-zircon.png", icon_size = 128, scale=0.125, shift= {-8, -8}},
|
||||||
|
},
|
||||||
|
category = "smelting",
|
||||||
|
energy_required = 24,
|
||||||
|
enabled = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
always_show_products = true,
|
||||||
|
allow_productivity = true,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{"enriched-zircon", 5}
|
||||||
|
},
|
||||||
|
result = "zirconia",
|
||||||
|
result_count = 10,
|
||||||
|
order = "z[zirconia]-z[enriched-zirconia]"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "dirty-water-filtration-zircon",
|
||||||
|
category = "fluid-filtration",
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
icon = data.raw.fluid["dirty-water"].icon,
|
||||||
|
icon_size = data.raw.fluid["dirty-water"].icon_size
|
||||||
|
},
|
||||||
|
{
|
||||||
|
icon = data.raw.item["zircon"].icon,
|
||||||
|
icon_size = data.raw.item["zircon"].icon_size,
|
||||||
|
scale = 0.20 * (data.raw.fluid["dirty-water"].icon_size/data.raw.item["zircon"].icon_size),
|
||||||
|
shift = {0, 4}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
-- icon_size = data.raw.fluid["dirty-water"].icon_size,
|
||||||
|
energy_required = 2,
|
||||||
|
enabled = false,
|
||||||
|
allow_as_intermediate = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
always_show_products = true,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{type = "fluid", name = "dirty-water", amount = 100, catalyst_amount = 100},
|
||||||
|
},
|
||||||
|
results =
|
||||||
|
{
|
||||||
|
{type = "fluid", name = "water", amount = 100, catalyst_amount = 100},
|
||||||
|
{type = "item", name = "stone", probability = 0.20, amount = 1},
|
||||||
|
{type = "item", name = "zircon", probability = 0.20, amount = 1},
|
||||||
|
mods.bztitanium and
|
||||||
|
{type = "item", name = "titanium-ore", probability = 0.20, amount = 1} or nil,
|
||||||
|
},
|
||||||
|
crafting_machine_tint =
|
||||||
|
{
|
||||||
|
primary = {r = 0.60, g = 0.20, b = 0, a = 0.6},
|
||||||
|
secondary = {r = 1.0, g = 0.843, b = 0.0, a = 0.9}
|
||||||
|
},
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "w013[dirty-water-filtration-zircon]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
util.add_effect("kr-enriched-ores", { type = "unlock-recipe", recipe = "enriched-zircon" })
|
||||||
|
util.add_effect("kr-enriched-ores", { type = "unlock-recipe", recipe = "enriched-zirconia-smelting" })
|
||||||
|
util.add_effect("kr-enriched-ores", { type = "unlock-recipe", recipe = "dirty-water-filtration-zircon" })
|
||||||
|
end
|
||||||
15
zirconium-recipe-final-rrr.lua
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
if mods["Rich-Rocks-Requiem"] then
|
||||||
|
if data.raw.recipe["rrr-stone-processing"] then
|
||||||
|
table.insert(data.raw.recipe["rrr-stone-processing"].results,
|
||||||
|
{name = "zircon", probability = 0.50, amount = 10}
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
if data.raw.recipe["rrr-raw-ores-processing"] then
|
||||||
|
table.insert(data.raw.recipe["rrr-raw-ores-processing"].results,
|
||||||
|
{name = "zircon", probability = 0.50, amount = 10}
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
35
zirconium-recipe-final-stacking.lua
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
-- Deadlock stacking recipes
|
||||||
|
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
if deadlock then
|
||||||
|
deadlock.add_stack("zircon", "__bzzirconium__/graphics/icons/stacked/zircon-stacked.png", "deadlock-stacking-2", 64)
|
||||||
|
deadlock.add_stack("zirconia", "__bzzirconium__/graphics/icons/stacked/zirconia-stacked.png", "deadlock-stacking-2", 128)
|
||||||
|
deadlock.add_stack("zirconium-plate", "__bzzirconium__/graphics/icons/stacked/zirconium-plate-stacked.png" , "deadlock-stacking-2", 128)
|
||||||
|
if util.use_cermet() then
|
||||||
|
deadlock.add_stack("cermet", "__bzzirconium__/graphics/icons/stacked/cermet-stacked.png", "deadlock-stacking-2", 128)
|
||||||
|
end
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
deadlock.add_stack("enriched-zircon", "__bzzirconium__/graphics/icons/stacked/enriched-zircon-stacked.png" , "deadlock-stacking-2", 64)
|
||||||
|
end
|
||||||
|
if mods["Krastorio2"] or mods["space-exploration"] then
|
||||||
|
deadlock.add_stack("zirconium-tungstate", nil, "deadlock-stacking-2", 64)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Deadlock crating recipes
|
||||||
|
if deadlock_crating then
|
||||||
|
deadlock_crating.add_crate("zircon", "deadlock-crating-2")
|
||||||
|
deadlock_crating.add_crate("zirconia", "deadlock-crating-2")
|
||||||
|
deadlock_crating.add_crate("zirconium-plate", "deadlock-crating-2")
|
||||||
|
if util.use_cermet() then
|
||||||
|
deadlock_crating.add_crate("cermet", "deadlock-crating-2")
|
||||||
|
end
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
deadlock_crating.add_crate("enriched-zircon", "deadlock-crating-2")
|
||||||
|
end
|
||||||
|
if mods["Krastorio2"] or mods["space-exploration"] then
|
||||||
|
deadlock_crating.add_crate("zirconium-tungstate", "deadlock-crating-2")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
88
zirconium-recipe-se.lua
Normal file
|
|
@ -0,0 +1,88 @@
|
||||||
|
-- Additional recipes if Space Exploration mod is enabled
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
se_delivery_cannon_recipes["zircon"] = {name= "zircon"}
|
||||||
|
se_delivery_cannon_recipes["zirconia"] = {name= "zirconia"}
|
||||||
|
se_delivery_cannon_recipes["zirconium-plate"] = {name= "zirconium-plate"}
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "enriched-zirconia-smelting-vulcanite",
|
||||||
|
category = "smelting",
|
||||||
|
order = "z[zirconium-plate]",
|
||||||
|
energy_required = 24,
|
||||||
|
enabled = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
allow_as_intermediate = false,
|
||||||
|
ingredients = {
|
||||||
|
{name = "enriched-zircon", amount = 8},
|
||||||
|
{name = "se-vulcanite-block", amount = 1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{name = "zirconia", amount = 24},
|
||||||
|
},
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128, icon_mipmaps = 3 },
|
||||||
|
{ icon = "__space-exploration-graphics__/graphics/icons/vulcanite-block.png", icon_size = 64, scale=0.25, shift= {-10, -10}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
table.insert(data.raw.technology["se-processing-vulcanite"].effects,
|
||||||
|
{type = "unlock-recipe", recipe= "enriched-zirconia-smelting-vulcanite"})
|
||||||
|
data.raw.recipe["enriched-zircon"].order= "d[zircon]"
|
||||||
|
se_delivery_cannon_recipes["enriched-zircon"] = {name= "enriched-zircon"}
|
||||||
|
else
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "zircon-smelting-vulcanite",
|
||||||
|
category = "smelting",
|
||||||
|
order = "z[zirconium-plate]",
|
||||||
|
energy_required = 16,
|
||||||
|
enabled = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
allow_as_intermediate = false,
|
||||||
|
ingredients = {
|
||||||
|
{name = "zircon", amount = 8},
|
||||||
|
{name = "se-vulcanite-block", amount = 1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{name = "zirconia", amount = 24},
|
||||||
|
},
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128, icon_mipmaps = 3,},
|
||||||
|
{ icon = "__space-exploration-graphics__/graphics/icons/vulcanite-block.png", icon_size = 64, scale=0.25, shift= {-10, -10}},
|
||||||
|
},
|
||||||
|
}})
|
||||||
|
util.add_effect("se-processing-vulcanite", {type = "unlock-recipe", recipe= "zircon-smelting-vulcanite"})
|
||||||
|
end
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "zirconia-smelting-vulcanite",
|
||||||
|
category = "smelting",
|
||||||
|
order = "z[zirconium-plate]",
|
||||||
|
energy_required = 16,
|
||||||
|
enabled = false,
|
||||||
|
always_show_made_in = true,
|
||||||
|
allow_as_intermediate = false,
|
||||||
|
ingredients = {
|
||||||
|
{name = "zirconia", amount = 24},
|
||||||
|
{name = "se-vulcanite-block", amount = 1},
|
||||||
|
},
|
||||||
|
results = {
|
||||||
|
{name = "zirconium-plate", amount = 12},
|
||||||
|
},
|
||||||
|
icons =
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconium-plate.png", icon_size = 128, icon_mipmaps = 3,},
|
||||||
|
{ icon = "__space-exploration-graphics__/graphics/icons/vulcanite-block.png", icon_size = 64, scale=0.25, shift= {-10, -10}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
util.add_effect("se-processing-vulcanite", {type = "unlock-recipe", recipe= "zirconia-smelting-vulcanite"})
|
||||||
|
end
|
||||||
87
zirconium-recipe-updates.lua
Normal file
|
|
@ -0,0 +1,87 @@
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
|
||||||
|
util.replace_some_ingredient("stone-furnace", "stone", 1, "zircon", 1)
|
||||||
|
if not mods["Krastorio2"] then
|
||||||
|
util.replace_some_ingredient("steel-furnace", "stone-brick", 4, "zircon", 6)
|
||||||
|
end
|
||||||
|
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
util.replace_some_ingredient("low-density-structure", "copper-plate", 5, "zirconia", 5)
|
||||||
|
else
|
||||||
|
util.replace_some_ingredient("low-density-structure", "copper-plate", 10, "zirconia", 10)
|
||||||
|
end
|
||||||
|
util.add_ingredient("electric-furnace", "zirconia", 5)
|
||||||
|
|
||||||
|
util.add_ingredient("explosives", "zirconium-plate", 1)
|
||||||
|
util.add_ingredient("nuclear-reactor", "zirconium-plate", 100)
|
||||||
|
|
||||||
|
local ufc_amt = mods["Krastorio2"] and 1 or 5
|
||||||
|
if mods.bzlead then
|
||||||
|
util.replace_some_ingredient("uranium-fuel-cell", "lead-plate", 5, "zirconium-plate", ufc_amt)
|
||||||
|
else
|
||||||
|
util.replace_some_ingredient("uranium-fuel-cell", "iron-plate", 5, "zirconium-plate", ufc_amt)
|
||||||
|
end
|
||||||
|
|
||||||
|
if not mods.bztungsten then
|
||||||
|
util.add_ingredient("nuclear-fuel", "zirconium-plate", 1)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if util.use_cermet() then
|
||||||
|
util.add_ingredient("rocket-control-unit", "cermet", 1)
|
||||||
|
util.add_ingredient("speed-module-3", "cermet", 1)
|
||||||
|
util.add_ingredient("productivity-module-3", "cermet", 1)
|
||||||
|
util.add_ingredient("effectivity-module-3", "cermet", 1)
|
||||||
|
util.add_ingredient("assembling-machine-3", "cermet", 2)
|
||||||
|
util.add_ingredient("beacon", "cermet", 10)
|
||||||
|
util.add_ingredient("spidertron", "cermet", 8)
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Krastorio2
|
||||||
|
if mods["Krastorio2"] then
|
||||||
|
|
||||||
|
util.replace_some_ingredient("matter-stabilizer", "imersium-plate", 1, "zirconium-plate", 5)
|
||||||
|
util.add_ingredient("kr-advanced-furnace", "zirconia", 60)
|
||||||
|
if util.use_cermet() then
|
||||||
|
util.add_ingredient("ai-core", "cermet", 2)
|
||||||
|
util.add_ingredient("kr-matter-assembler", "cermet", 4)
|
||||||
|
end
|
||||||
|
|
||||||
|
util.replace_some_ingredient("stone-brick", "stone", 2, "zircon", 2)
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
util.replace_some_ingredient("se-stone-brick-vulcanite", "stone", 2, "zircon", 2)
|
||||||
|
end
|
||||||
|
|
||||||
|
if not mods.bztungsten then
|
||||||
|
util.add_ingredient("matter-research-data", "zirconia", 5)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Space Exploration
|
||||||
|
if mods["space-exploration"] then
|
||||||
|
util.replace_some_ingredient("se-aeroframe-scaffold", "se-aeroframe-pole", 1, "zirconia", 2)
|
||||||
|
util.replace_some_ingredient("se-heat-shielding", "stone-tablet", 10, "zirconia", 10)
|
||||||
|
util.replace_ingredient("se-heat-shielding-iridium", "stone-tablet", "zirconia")
|
||||||
|
util.add_ingredient("se-thruster-suit", "zirconium-plate", 10)
|
||||||
|
util.add_ingredient("se-space-thermodynamics-laboratory", "zirconium-plate", 20)
|
||||||
|
if util.use_cermet() then
|
||||||
|
util.add_ingredient("se-quantum-processor", "cermet", 1)
|
||||||
|
util.add_ingredient("se-space-mechanical-laboratory", "cermet", 40)
|
||||||
|
end
|
||||||
|
if not mods.bztungsten then
|
||||||
|
util.add_ingredient("se-hot-thermodynamics-data", "zirconium-plate", 1)
|
||||||
|
util.add_product("se-hot-thermodynamics-data", {name="zirconium-plate", amount=1, probability=0.50})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
-- AAI
|
||||||
|
util.add_ingredient("industrial-furnace", "zirconium-plate", 4)
|
||||||
|
|
||||||
|
-- Aircraft
|
||||||
|
util.add_ingredient("gunship", "zirconia", 10)
|
||||||
|
util.add_ingredient("cargo-plane", "zirconia", 20)
|
||||||
|
util.add_ingredient("jet", "zirconia", 50)
|
||||||
|
util.add_ingredient("flying-fortress", "zirconia", 80)
|
||||||
|
util.add_ingredient("aircraft-afterburner", "zirconia", 5)
|
||||||
|
|
||||||
|
util.add_ingredient("mega-furnace", "zirconia", 5)
|
||||||
278
zirconium-recipe.lua
Normal file
|
|
@ -0,0 +1,278 @@
|
||||||
|
-- Zirconium smelting, etc
|
||||||
|
|
||||||
|
local util = require("__bzzirconium__.data-util");
|
||||||
|
|
||||||
|
-- data:extend({
|
||||||
|
--
|
||||||
|
-- })
|
||||||
|
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "zirconia",
|
||||||
|
icon = "__bzzirconium__/graphics/icons/zirconia.png",
|
||||||
|
icon_size = 128,
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "z[zirconia]",
|
||||||
|
stack_size = util.get_stack_size(200)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "zirconia",
|
||||||
|
category = "smelting",
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "z[zirconia]",
|
||||||
|
icons = (mods["Krastorio2"] and
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128 },
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zircon.png", icon_size = 64, scale=0.25, shift= {-8, -8}},
|
||||||
|
} or {
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128, },
|
||||||
|
}
|
||||||
|
),
|
||||||
|
normal = (mods["Krastorio2"] and
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 8,
|
||||||
|
ingredients = {{"zircon", 5}},
|
||||||
|
results = mods.bztitanium and {
|
||||||
|
{name="zirconia", amount_min=4, amount_max=5},
|
||||||
|
{name="titanium-ore", amount=1, probability=.5}
|
||||||
|
} or {{"zirconia", 5}}
|
||||||
|
} or
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 3.2,
|
||||||
|
ingredients = {{"zircon", 1}},
|
||||||
|
results = mods.bztitanium and {
|
||||||
|
{name="zirconia", amount=2, probability=.95},
|
||||||
|
{name="titanium-ore", amount=1, probability=.1}
|
||||||
|
} or {{"zirconia", 2}}
|
||||||
|
}),
|
||||||
|
expensive =
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 3.2,
|
||||||
|
ingredients = {{"zircon", 1}},
|
||||||
|
results = mods.bztitanium and {
|
||||||
|
{"zirconia", 1}, {name="titanium-ore", amount=1, probability=.05}
|
||||||
|
} or {{"zirconia", 2}}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "zirconium-plate",
|
||||||
|
icon = "__bzzirconium__/graphics/icons/zirconium-plate.png",
|
||||||
|
icon_size = 128,
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "z[zirconium-plate]",
|
||||||
|
stack_size = util.get_stack_size(100)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "zirconium-plate",
|
||||||
|
category = "smelting",
|
||||||
|
subgroup = "raw-material",
|
||||||
|
order = "z[zirconium-plate]",
|
||||||
|
icons = (mods["Krastorio2"] and
|
||||||
|
{
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconium-plate.png", icon_size = 128 },
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconia.png", icon_size = 128, scale=0.125, shift= {-8, -8}},
|
||||||
|
} or {
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zirconium-plate.png", icon_size = 128, },
|
||||||
|
}
|
||||||
|
),
|
||||||
|
normal = (mods["Krastorio2"] and
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 8,
|
||||||
|
ingredients = {{"zirconia", 15}},
|
||||||
|
result = "zirconium-plate",
|
||||||
|
result_count = 5,
|
||||||
|
} or
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 9.6,
|
||||||
|
ingredients = {{"zirconia", 3}},
|
||||||
|
result = "zirconium-plate",
|
||||||
|
result_count = 1,
|
||||||
|
}),
|
||||||
|
expensive =
|
||||||
|
{
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 9.6,
|
||||||
|
ingredients = {{"zirconia", 6}},
|
||||||
|
result = "zirconium-plate",
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "technology",
|
||||||
|
name = "zirconia-processing",
|
||||||
|
icon_size = 340,
|
||||||
|
icon = "__bzzirconium__/graphics/technology/zirconia-processing.png",
|
||||||
|
effects =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "unlock-recipe",
|
||||||
|
recipe = "zirconia"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "unlock-recipe",
|
||||||
|
recipe = "zirconium-plate",
|
||||||
|
},
|
||||||
|
-- mods["TheBigFurnace"] and {
|
||||||
|
-- type = "unlock-recipe",
|
||||||
|
-- recipe = "big-zirconium-plate",
|
||||||
|
-- } or nil,
|
||||||
|
-- mods["TheBigFurnace"] and {
|
||||||
|
-- type = "unlock-recipe",
|
||||||
|
-- recipe = "big-zirconia",
|
||||||
|
-- } or nil,
|
||||||
|
},
|
||||||
|
unit =
|
||||||
|
{
|
||||||
|
count = 75,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{"automation-science-pack", 1},
|
||||||
|
{"logistic-science-pack", 1},
|
||||||
|
},
|
||||||
|
time = 30,
|
||||||
|
},
|
||||||
|
prerequisites = {"automation-2", (not mods.bzzirconium and "advanced-material-processing") or nil },
|
||||||
|
order = "z"
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
-- cermet only if setting enabled
|
||||||
|
if util.use_cermet() then
|
||||||
|
local cermet_i = {{"zirconia", 1}, {"copper-plate", 1}}
|
||||||
|
if mods.bztitanium then
|
||||||
|
table.insert(cermet_i, {"titanium-plate", 1})
|
||||||
|
end
|
||||||
|
if mods.bzsilicon then
|
||||||
|
table.insert(cermet_i, {"silica", 1})
|
||||||
|
end
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "cermet",
|
||||||
|
icon = "__bzzirconium__/graphics/icons/cermet.png",
|
||||||
|
icon_size = 128,
|
||||||
|
subgroup = "intermediate-product",
|
||||||
|
order = "z[cermet]",
|
||||||
|
stack_size = util.get_stack_size(200)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "cermet",
|
||||||
|
category = "crafting",
|
||||||
|
subgroup = "intermediate-product",
|
||||||
|
order = "z[zirconia]",
|
||||||
|
icons = { { icon = "__bzzirconium__/graphics/icons/cermet.png", icon_size = 128, } },
|
||||||
|
enabled = false,
|
||||||
|
energy_required = #cermet_i,
|
||||||
|
ingredients = cermet_i,
|
||||||
|
result = "cermet",
|
||||||
|
result_count = #cermet_i,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "technology",
|
||||||
|
name = "cermet",
|
||||||
|
icon_size = 512,
|
||||||
|
icon = "__bzzirconium__/graphics/technology/cermet.png",
|
||||||
|
effects =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
type = "unlock-recipe",
|
||||||
|
recipe = "cermet"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
unit =
|
||||||
|
{
|
||||||
|
count = 100,
|
||||||
|
ingredients =
|
||||||
|
{
|
||||||
|
{"automation-science-pack", 1},
|
||||||
|
{"logistic-science-pack", 1},
|
||||||
|
{"chemical-science-pack", 1},
|
||||||
|
{"production-science-pack", 1},
|
||||||
|
},
|
||||||
|
time = 30,
|
||||||
|
},
|
||||||
|
prerequisites = {"production-science-pack"},
|
||||||
|
order = "c"
|
||||||
|
},
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
-- sorting
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "sort-stone-zircon",
|
||||||
|
category = "crafting",
|
||||||
|
subgroup = "raw-resource",
|
||||||
|
order = "bzz",
|
||||||
|
icons = {
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zircon.png", icon_size = 64 },
|
||||||
|
{ icon = "__base__/graphics/icons/stone.png", icon_size = 64, scale=0.25, shift= {-8, -8}},
|
||||||
|
},
|
||||||
|
enabled = true,
|
||||||
|
energy_required = 1,
|
||||||
|
ingredients = {{"stone", 2}},
|
||||||
|
results = {
|
||||||
|
{type="item", name="zircon", amount=1},
|
||||||
|
{type="item", name="stone", amount=1, probability=0.5},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "sort-zircon-stone",
|
||||||
|
category = "crafting",
|
||||||
|
subgroup = "raw-resource",
|
||||||
|
order = "bzz",
|
||||||
|
icons = {
|
||||||
|
{ icon = "__base__/graphics/icons/stone.png", icon_size = 64 },
|
||||||
|
{ icon = "__bzzirconium__/graphics/icons/zircon.png", icon_size = 64, scale=0.25, shift= {-8, -8}},
|
||||||
|
},
|
||||||
|
enabled = true,
|
||||||
|
energy_required = 1,
|
||||||
|
ingredients = {{"zircon", 2}},
|
||||||
|
results = {
|
||||||
|
{type="item", name="stone", amount=1},
|
||||||
|
{type="item", name="zircon", amount=1, probability=0.5},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Zirconium Tungstate, only if needed
|
||||||
|
if mods.bztungsten and (mods["Krastorio2"] or mods["space-exploration"]) then
|
||||||
|
data:extend({
|
||||||
|
{
|
||||||
|
type = "item",
|
||||||
|
name = "zirconium-tungstate",
|
||||||
|
icons = {{icon = "__bzzirconium__/graphics/icons/zircon-powder.png",
|
||||||
|
icon_size = 64, tint = {a=1, r=.95, g=.75, b=0}}},
|
||||||
|
subgroup = "intermediate-product",
|
||||||
|
order = "z[z]",
|
||||||
|
stack_size = util.get_stack_size(100)
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "recipe",
|
||||||
|
name = "zirconium-tungstate",
|
||||||
|
category = "crafting",
|
||||||
|
subgroup = "intermediate-product",
|
||||||
|
order = "z[z]",
|
||||||
|
enabled = false,
|
||||||
|
energy_required = 2,
|
||||||
|
ingredients = {{"zirconium-plate", 1}, {"tungsten-plate", 1},},
|
||||||
|
result = "zirconium-tungstate",
|
||||||
|
result_count = 2,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
util.add_effect("zirconia-processing", {
|
||||||
|
type = "unlock-recipe",
|
||||||
|
recipe = "zirconium-tungstate"
|
||||||
|
})
|
||||||
|
end
|
||||||