summaryrefslogtreecommitdiff
path: root/technic/items.lua
diff options
context:
space:
mode:
authorVanessa Ezekowitz <vanessaezekowitz@gmail.com>2016-04-01 21:00:20 -0400
committerVanessa Ezekowitz <vanessaezekowitz@gmail.com>2016-04-01 21:10:04 -0400
commit888b0ebfec8c2eff9015163549a7e47443cb8665 (patch)
tree915080159bfaa6ba6e226087c7ce0e8d5464b518 /technic/items.lua
parentda66780a569712c23ae4f2996cfb4608a9f9d69d (diff)
downloaddreambuilder_modpack-888b0ebfec8c2eff9015163549a7e47443cb8665.tar
dreambuilder_modpack-888b0ebfec8c2eff9015163549a7e47443cb8665.tar.gz
dreambuilder_modpack-888b0ebfec8c2eff9015163549a7e47443cb8665.tar.bz2
dreambuilder_modpack-888b0ebfec8c2eff9015163549a7e47443cb8665.tar.xz
dreambuilder_modpack-888b0ebfec8c2eff9015163549a7e47443cb8665.zip
"explode" all modpacks into their individual components
(you can't have a modpack buried inside a modpack)
Diffstat (limited to 'technic/items.lua')
-rw-r--r--technic/items.lua221
1 files changed, 221 insertions, 0 deletions
diff --git a/technic/items.lua b/technic/items.lua
new file mode 100644
index 0000000..27e05e4
--- /dev/null
+++ b/technic/items.lua
@@ -0,0 +1,221 @@
+
+local S = technic.getter
+
+minetest.register_craftitem("technic:silicon_wafer", {
+ description = S("Silicon Wafer"),
+ inventory_image = "technic_silicon_wafer.png",
+})
+
+minetest.register_craftitem( "technic:doped_silicon_wafer", {
+ description = S("Doped Silicon Wafer"),
+ inventory_image = "technic_doped_silicon_wafer.png",
+})
+
+minetest.register_craftitem("technic:uranium_fuel", {
+ description = S("Uranium Fuel"),
+ inventory_image = "technic_uranium_fuel.png",
+})
+
+minetest.register_craftitem( "technic:diamond_drill_head", {
+ description = S("Diamond Drill Head"),
+ inventory_image = "technic_diamond_drill_head.png",
+})
+
+minetest.register_tool("technic:blue_energy_crystal", {
+ description = S("Blue Energy Crystal"),
+ inventory_image = minetest.inventorycube(
+ "technic_diamond_block_blue.png",
+ "technic_diamond_block_blue.png",
+ "technic_diamond_block_blue.png"),
+ wear_represents = "technic_RE_charge",
+ on_refill = technic.refill_RE_charge,
+ tool_capabilities = {
+ max_drop_level = 0,
+ groupcaps = {
+ fleshy = {times={}, uses=10000, maxlevel=0}
+ }
+ }
+})
+
+minetest.register_tool("technic:green_energy_crystal", {
+ description = S("Green Energy Crystal"),
+ inventory_image = minetest.inventorycube(
+ "technic_diamond_block_green.png",
+ "technic_diamond_block_green.png",
+ "technic_diamond_block_green.png"),
+ wear_represents = "technic_RE_charge",
+ on_refill = technic.refill_RE_charge,
+ tool_capabilities = {
+ max_drop_level = 0,
+ groupcaps = {
+ fleshy = {times={}, uses=10000, maxlevel=0}
+ }
+ }
+})
+
+minetest.register_tool("technic:red_energy_crystal", {
+ description = S("Red Energy Crystal"),
+ inventory_image = minetest.inventorycube(
+ "technic_diamond_block_red.png",
+ "technic_diamond_block_red.png",
+ "technic_diamond_block_red.png"),
+ wear_represents = "technic_RE_charge",
+ on_refill = technic.refill_RE_charge,
+ tool_capabilities = {
+ max_drop_level = 0,
+ groupcaps = {
+ fleshy = {times={}, uses=10000, maxlevel=0}
+ }
+ }
+})
+
+
+minetest.register_craftitem("technic:fine_copper_wire", {
+ description = S("Fine Copper Wire"),
+ inventory_image = "technic_fine_copper_wire.png",
+})
+
+minetest.register_craftitem("technic:fine_gold_wire", {
+ description = S("Fine Gold Wire"),
+ inventory_image = "technic_fine_gold_wire.png",
+})
+
+minetest.register_craftitem("technic:fine_silver_wire", {
+ description = S("Fine Silver Wire"),
+ inventory_image = "technic_fine_silver_wire.png",
+})
+
+minetest.register_craftitem("technic:copper_coil", {
+ description = S("Copper Coil"),
+ inventory_image = "technic_copper_coil.png",
+})
+
+minetest.register_craftitem("technic:motor", {
+ description = S("Electric Motor"),
+ inventory_image = "technic_motor.png",
+})
+
+minetest.register_craftitem("technic:lv_transformer", {
+ description = S("Low Voltage Transformer"),
+ inventory_image = "technic_lv_transformer.png",
+})
+
+minetest.register_craftitem("technic:mv_transformer", {
+ description = S("Medium Voltage Transformer"),
+ inventory_image = "technic_mv_transformer.png",
+})
+
+minetest.register_craftitem( "technic:hv_transformer", {
+ description = S("High Voltage Transformer"),
+ inventory_image = "technic_hv_transformer.png",
+})
+
+minetest.register_craftitem( "technic:control_logic_unit", {
+ description = S("Control Logic Unit"),
+ inventory_image = "technic_control_logic_unit.png",
+})
+
+minetest.register_craftitem("technic:mixed_metal_ingot", {
+ description = S("Mixed Metal Ingot"),
+ inventory_image = "technic_mixed_metal_ingot.png",
+})
+
+minetest.register_craftitem("technic:composite_plate", {
+ description = S("Composite Plate"),
+ inventory_image = "technic_composite_plate.png",
+})
+
+minetest.register_craftitem("technic:copper_plate", {
+ description = S("Copper Plate"),
+ inventory_image = "technic_copper_plate.png",
+})
+
+minetest.register_craftitem("technic:carbon_plate", {
+ description = S("Carbon Plate"),
+ inventory_image = "technic_carbon_plate.png",
+})
+
+minetest.register_craftitem("technic:graphite", {
+ description = S("Graphite"),
+ inventory_image = "technic_graphite.png",
+})
+
+minetest.register_craftitem("technic:carbon_cloth", {
+ description = S("Carbon Cloth"),
+ inventory_image = "technic_carbon_cloth.png",
+})
+
+minetest.register_node("technic:machine_casing", {
+ description = S("Machine Casing"),
+ groups = {cracky=2},
+ sunlight_propagates = true,
+ paramtype = "light",
+ drawtype = "allfaces",
+ tiles = {"technic_machine_casing.png"},
+ sounds = default.node_sound_stone_defaults(),
+})
+
+for p = 0, 35 do
+ local nici = (p ~= 0 and p ~= 7 and p ~= 35) and 1 or nil
+ local psuffix = p == 7 and "" or p
+ local ingot = "technic:uranium"..psuffix.."_ingot"
+ local block = "technic:uranium"..psuffix.."_block"
+ local ov = p == 7 and minetest.override_item or nil;
+ (ov or minetest.register_craftitem)(ingot, {
+ description = string.format(S("%.1f%%-Fissile Uranium Ingot"), p/10),
+ inventory_image = "technic_uranium_ingot.png",
+ groups = {uranium_ingot=1, not_in_creative_inventory=nici},
+ });
+ -- Note on radioactivity of blocks:
+ -- Source: <http://www.wise-uranium.org/rup.html>
+ -- The baseline radioactivity of an isotope is not especially
+ -- correlated with whether it's fissile (i.e., suitable as
+ -- reactor fuel). Natural uranium consists mainly of fissile
+ -- U-235 and non-fissile U-238, and both U-235 and U-238 are
+ -- significantly radioactive. U-235's massic activity is
+ -- about 80.0 MBq/kg, and U-238's is about 12.4 MBq/kg, which
+ -- superficially suggests that 3.5%-fissile uranium should have
+ -- only 1.19 times the activity of fully-depleted uranium.
+ -- But a third isotope affects the result hugely: U-234 has
+ -- massic activity of 231 GBq/kg. Natural uranium has massic
+ -- composition of 99.2837% U-238, 0.711% U-235, and 0.0053% U-234,
+ -- so its activity comes roughly 49% each from U-234 and U-238
+ -- and only 2% from U-235. During enrichment via centrifuge,
+ -- the U-234 fraction is concentrated along with the U-235, with
+ -- the U-234:U-235 ratio remaining close to its original value.
+ -- (Actually the U-234 gets separated from U-238 slightly more
+ -- than the U-235 is, so the U-234:U-235 ratio is slightly
+ -- higher in enriched uranium.) A typical massic composition
+ -- for 3.5%-fissile uranium is 96.47116% U-238, 3.5% U-235, and
+ -- 0.02884% U-234. This gives 3.5%-fissile uranium about 6.55
+ -- times the activity of fully-depleted uranium. The values we
+ -- compute here for the "radioactive" group value are based on
+ -- linear interpolation of activity along that scale, rooted at
+ -- a natural (0.7%-fissile) uranium block having the activity of
+ -- 9 uranium ore blocks (due to 9 ingots per block). The group
+ -- value is proportional to the square root of the activity, and
+ -- uranium ore has radioactive=1000. This yields radioactive=2065
+ -- for a fully-depleted uranium block and radioactive=5286 for
+ -- a 3.5%-fissile uranium block.
+ (ov or minetest.register_node)(block, {
+ description = string.format(S("%.1f%%-Fissile Uranium Block"), p/10),
+ tiles = {"technic_uranium_block.png"},
+ is_ground_content = true,
+ groups = {uranium_block=1, not_in_creative_inventory=nici, cracky=1, level=2, radioactive=math.floor(1000*math.sqrt((1+5.55*p/35) * 9 / (1+5.55*7/35)) + 0.5)},
+ sounds = default.node_sound_stone_defaults(),
+ });
+ if not ov then
+ minetest.register_craft({
+ output = block,
+ recipe = {
+ {ingot, ingot, ingot},
+ {ingot, ingot, ingot},
+ {ingot, ingot, ingot},
+ },
+ })
+ minetest.register_craft({
+ output = ingot.." 9",
+ recipe = {{block}},
+ })
+ end
+end