From ea58027dadae391af433524e55933d6a34869a5b Mon Sep 17 00:00:00 2001 From: Evert Prants Date: Sun, 29 Jul 2018 13:23:32 +0300 Subject: [PATCH] Add compressor, plate recipes and turbine recipe --- elepower_machines/crafting.lua | 73 +++++++++++++++++- elepower_machines/craftitems.lua | 10 +++ elepower_machines/init.lua | 1 + elepower_machines/machines/compressor.lua | 17 ++++ elepower_machines/machines/init.lua | 1 + .../textures/elepower_compressor.png | Bin 0 -> 6694 bytes .../textures/elepower_compressor_piston.png | Bin 0 -> 6078 bytes .../textures/elepower_turbine.png | Bin 0 -> 19318 bytes 8 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 elepower_machines/craftitems.lua create mode 100644 elepower_machines/machines/compressor.lua create mode 100644 elepower_machines/textures/elepower_compressor.png create mode 100644 elepower_machines/textures/elepower_compressor_piston.png create mode 100644 elepower_machines/textures/elepower_turbine.png diff --git a/elepower_machines/crafting.lua b/elepower_machines/crafting.lua index 74c6b5e..a47ce05 100644 --- a/elepower_machines/crafting.lua +++ b/elepower_machines/crafting.lua @@ -49,7 +49,9 @@ end -- Grinding -- -------------- -local keywords = { _ingot = 1, _lump = 2, _block = 9, block = 9 } +local keywords = { _ingot = 1, _lump = 2, _block = 9, block = 9 } +local ingot_map = {} +local block_map = {} for mat, data in pairs(elepd.registered_dusts) do local kwfound = nil for keyword,count in pairs(keywords) do @@ -57,6 +59,8 @@ for mat, data in pairs(elepd.registered_dusts) do if found then if keyword == "_ingot" and not kwfound then kwfound = found + elseif keyword == "_block" or keyword == "block" and not block_map[mat] then + block_map[mat] = data.item end -- Grind recipe for material @@ -71,6 +75,7 @@ for mat, data in pairs(elepd.registered_dusts) do -- Add dust -> ingot smelting if kwfound then + ingot_map[mat] = kwfound minetest.register_craft({ type = "cooking", recipe = data.item, @@ -100,6 +105,23 @@ elepm.register_craft({ time = 18, }) +----------------- +-- Compressing -- +----------------- + +for mat, ingot in pairs(ingot_map) do + local plate = "elepower_dynamics:" .. mat .. "_plate" + + if minetest.registered_items[plate] then + elepm.register_craft({ + type = "compress", + recipe = { ingot .. " 2" }, + output = plate, + time = 4, + }) + end +end + ------------- -- Sawmill -- ------------- @@ -333,3 +355,52 @@ minetest.register_craft({ {"elepower_dynamics:invar_gear", "elepower_dynamics:servo_valve", "elepower_dynamics:invar_gear"}, }, }) + +-- Compressor Piston +minetest.register_craft({ + output = "elepower_machines:compressor_piston", + recipe = { + {"", "default:steel_ingot", ""}, + {"", "default:steel_ingot", ""}, + {"default:bronze_ingot", "default:bronze_ingot", "default:bronze_ingot"}, + } +}) + +minetest.register_craft({ + output = "elepower_machines:compressor_piston", + recipe = { + {"", "default:steel_ingot", ""}, + {"", "default:steel_ingot", ""}, + {"", "elepower_dynamics:bronze_plate", ""}, + } +}) + +-- Compressor +minetest.register_craft({ + output = "elepower_machines:compressor", + recipe = { + {"elepower_dynamics:integrated_circuit", "elepower_machines:compressor_piston", "elepower_dynamics:wound_copper_coil"}, + {"elepower_dynamics:steel_gear", "elepower_machines:machine_block", "elepower_dynamics:steel_gear"}, + {"default:steel_ingot", "elepower_machines:compressor_piston", "default:steel_ingot"}, + } +}) + +-- Turbine blades +minetest.register_craft({ + output = "elepower_machines:turbine_blades", + recipe = { + {"elepower_dynamics:steel_plate", "elepower_dynamics:steel_plate", "elepower_dynamics:steel_plate"}, + {"elepower_dynamics:steel_plate", "default:steel_ingot", "elepower_dynamics:steel_plate"}, + {"elepower_dynamics:steel_plate", "elepower_dynamics:steel_plate", "elepower_dynamics:steel_plate"}, + } +}) + +-- Steam Turbine +minetest.register_craft({ + output = "elepower_machines:steam_turbine", + recipe = { + {"elepower_dynamics:induction_coil", "elepower_machines:turbine_blades", "elepower_dynamics:induction_coil"}, + {"elepower_dynamics:steel_plate", "elepower_machines:machine_block", "elepower_dynamics:steel_plate"}, + {"elepower_dynamics:invar_gear", "elepower_machines:turbine_blades", "elepower_dynamics:invar_gear"}, + } +}) diff --git a/elepower_machines/craftitems.lua b/elepower_machines/craftitems.lua new file mode 100644 index 0000000..6287da2 --- /dev/null +++ b/elepower_machines/craftitems.lua @@ -0,0 +1,10 @@ + +minetest.register_craftitem("elepower_machines:compressor_piston", { + description = "Compressor Piston", + inventory_image = "elepower_compressor_piston.png" +}) + +minetest.register_craftitem("elepower_machines:turbine_blades", { + description = "Turbine Blades", + inventory_image = "elepower_turbine.png" +}) diff --git a/elepower_machines/init.lua b/elepower_machines/init.lua index b23d0df..498810b 100644 --- a/elepower_machines/init.lua +++ b/elepower_machines/init.lua @@ -14,6 +14,7 @@ dofile(modpath.."/machines/init.lua") -- Other dofile(modpath.."/nodes.lua") +dofile(modpath.."/craftitems.lua") -- Crafting recipes dofile(modpath.."/crafting.lua") diff --git a/elepower_machines/machines/compressor.lua b/elepower_machines/machines/compressor.lua new file mode 100644 index 0000000..67acead --- /dev/null +++ b/elepower_machines/machines/compressor.lua @@ -0,0 +1,17 @@ + +elepm.register_craft_type("compress", { + description = "Compressing", + inputs = 1, +}) + +elepm.register_crafter("elepower_machines:compressor", { + description = "Compressor", + craft_type = "compress", + ele_usage = 32, + tiles = { + "elepower_machine_top.png^elepower_power_port.png", "elepower_machine_base.png^elepower_power_port.png", + "elepower_compressor.png", "elepower_compressor.png", "elepower_compressor.png", "elepower_compressor.png", + }, + ele_no_automatic_ports = true, + groups = {oddly_breakable_by_hand = 1} +}) diff --git a/elepower_machines/machines/init.lua b/elepower_machines/machines/init.lua index 9babbd4..62387fa 100644 --- a/elepower_machines/machines/init.lua +++ b/elepower_machines/machines/init.lua @@ -22,6 +22,7 @@ dofile(mp .. "grindstone.lua") dofile(mp .. "alloy_furnace.lua") dofile(mp .. "coal_alloy_furnace.lua") dofile(mp .. "solderer.lua") +dofile(mp .. "compressor.lua") -- Other dofile(mp .. "accumulator.lua") diff --git a/elepower_machines/textures/elepower_compressor.png b/elepower_machines/textures/elepower_compressor.png new file mode 100644 index 0000000000000000000000000000000000000000..33afaa3e5218d58874fd26b3266351505b3708c0 GIT binary patch literal 6694 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 literal 0 HcmV?d00001 diff --git a/elepower_machines/textures/elepower_compressor_piston.png b/elepower_machines/textures/elepower_compressor_piston.png new file mode 100644 index 0000000000000000000000000000000000000000..401d419868ae20e4e5b54139a182a79811242303 GIT binary patch literal 6078 zcmeHL3se(V8jkoZC_d_LLD@P6d^^cxGD&6vsq)ka0SdUHSacpY5J@s=GLV3%^@ZyL z9|*3pils_@Ta{L8Jqu!e<67|1t-HQTm2Q3Dix$_%vUdVv?7DV6yFF)nj+_I`z4QIw z|KIQa|37zTethhxZr**oB@#(D{pg4U_`iqv+ocoy+wWd8Es?Z8l#`S!B+yR8X6KD2 zGeCrF8$f`|WRyr;f4R9LrQpWEu6dWnN3M7;XwGD6W%SsrrB}Z_a=4`8#Hy0zr{$aa zB%Kg_*eb|lUOzs%kQ_EVYT>>72{FT0P9Vy;a|@yi!cO&GURG!y zx~lwg{ucl5S0M{7FO#=@Se#)xzrJ*F ziuucg>TSX`a*R&6xickB*M!^7Ji;3tUp-y#cQ*oHV9sN|p2KlG5h6rKxq> z4%0Qvxg+=IyjhU3?*01*Y9E~nSeG2zKBsu7CHA{V8SAdpBYB^kzn-(zn)6Y1;h6(h zr6oNrf6c!-MD_#@r);d|4&KK6UCtHJhz}tHh~ojS~tI{+kUL8S98e+fnOaSyE^k)?t|)e54Rjm z@ad%;+3>h9V4E#8@5rLE(B@sBY;kA|**lN(y?bNB{fQH6GcNa@G-+(n8_JQrubpbB zT_Tb6nr(vZBiRt6WqFH?=6D9kToxM)Lm~+o;j+8*X0QpCjRq~lZu z%wP)#>88;+c9578o5bd1uoNd9@s@XpOA84sK%fzq#cXwGT{@|oR|~JjX}J_}Lxc>S zG}#c3g!6WQ5HdoBp^+|A7A}3u8ws&>7?m`VAIOwPN!4mRLXdJnp{Cq zlpMq5IF3RD>d3YVvwbjw8BGgmvqHS`843k?d&saEw$gHRS zo@?Pqf?Zsm033X#oduCuz$yfKI<=WI9iBcj9YCCN$8F|}au}4`v!~4{y&=BMMwBtl zWU;v|M6@T8W7}}HOuN~Q;aE8^0}Bkq0htxg;Gun+!E=}6CU*;^jo{f#kwqV&lZpXo zIi59fTKA;_!xTm%p+b!;fuRIYuqdTr6expHMvkM^DnhOFpwe3%0&Qi1NCnAdCdflm ztVV4#awtY}6iTpwMQL24LRnH}WN?~MV+7$r5ob5S)TYgzQHfL>qyj1oa4buq0NSC1 zlEzUIr#O`12!>=R6=B3QZYoh&ZD_n+C&gvh)0ucPEf{&bMJJ6hSu`mkg%N`Z zPbz4XQK)c~0yInrK&ezT{w%wLHwsSL4nosl4Z(ee73AJ$WUxEQhCGXQrUMw{Fife% zFlo#7wr=;&vmTNF90@2ARWmF=2@Rl7n#DCJ(7+-jSc+v8;MoZOzt^K+)Jmh87HeJ& z_lHrED5X>oC}-pd4lqgu{R>-<5oe7UYeaEQO~ZU+H7HHs6w2VZf+CbkfV01-d}Dxu z<0#nPX-W-SG_B-Nk_BpUJ(!ABFpN?Cqw4(c^DRU!9weT$hY;~mYcOa%8%T)wDAwx5 z4xN~3vzbl6{%m7;(rEt;&cnX7ssEI@C#=OfoVR7eXIr`u=d`}i{d0gV3^67aSRMR} zLidEU$l`I{f-$$u!E+ou7RuYsg{^H>eDeH^KdtThXY>H6UpaXxeP7A-O0Jhu;HAK? zvg?&xFQvdsfnR0U|4c6Lr(c$U6}~7r;di6T>yIwNZ%&<<=ur_8y@Zo2T-E#2*Wt`- zw$bAq5{VDI_IbUXq-WHme4ucIr}XsmCptE+3ie+K({IR^l^|HI9`snN+@{6}`V zoLP12Ql010 V%{=RcEQLNK`pDRb?O~H={S$$QkuU%N literal 0 HcmV?d00001 diff --git a/elepower_machines/textures/elepower_turbine.png b/elepower_machines/textures/elepower_turbine.png new file mode 100644 index 0000000000000000000000000000000000000000..f2faefa5f57b7a30e0fdfc031e50edd2f452ee2a GIT binary patch literal 19318 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 literal 0 HcmV?d00001