From 1f4dcf75125578ab42f666055693d4296f59471c Mon Sep 17 00:00:00 2001 From: Joachim Stolberg Date: Sun, 28 Apr 2019 16:04:45 +0200 Subject: [PATCH] restructured --- basic_machines/chest.lua | 13 +- basic_machines/distributor.lua | 8 +- basic_machines/gravelsieve.lua | 6 +- basic_machines/grinder.lua | 6 +- basic_machines/pusher.lua | 6 +- .../{gearbox.lua => cooler.lua} | 0 init.lua | 142 ++++++++++-------- iron_age/gravelsieve.lua | 8 - {fermenter => power}/biogas_pipe.lua | 2 +- {steam_engine => power}/drive_axle.lua | 9 ++ {electric => power}/electric_cable.lua | 2 +- {basis => power}/steam_pipe.lua | 8 + sounds/techage_steamengine.ogg | Bin 0 -> 10875 bytes steam_engine/boiler.lua | 17 +++ steam_engine/cylinder.lua | 32 ++++ steam_engine/firebox.lua | 8 + steam_engine/flywheel.lua | 13 +- steam_engine/gearbox.lua | 8 + 18 files changed, 195 insertions(+), 93 deletions(-) rename coal_power_station/{gearbox.lua => cooler.lua} (100%) rename {fermenter => power}/biogas_pipe.lua (99%) rename {steam_engine => power}/drive_axle.lua (95%) rename {electric => power}/electric_cable.lua (98%) rename {basis => power}/steam_pipe.lua (94%) create mode 100644 sounds/techage_steamengine.ogg diff --git a/basic_machines/chest.lua b/basic_machines/chest.lua index a072764..7e16f51 100644 --- a/basic_machines/chest.lua +++ b/basic_machines/chest.lua @@ -232,12 +232,6 @@ minetest.register_node("techage:chest_ta4", { sounds = default.node_sound_wood_defaults(), }) -minetest.register_craft({ - type = "shapeless", - output = "techage:chest_ta2", - recipe = {"default:chest", "techage:tubeS", "default:steel_ingot"} -}) - techage.register_node("techage:chest_ta2", {"techage:chest_ta3", "techage:chest_ta4"}, { on_pull_item = function(pos, in_dir, num) local meta = minetest.get_meta(pos) @@ -276,3 +270,10 @@ techage.register_node("techage:chest_ta2", {"techage:chest_ta3", "techage:chest_ end end, }) + + +minetest.register_craft({ + type = "shapeless", + output = "techage:chest_ta2", + recipe = {"default:chest", "techage:tubeS", "techage:iron_ingot"} +}) diff --git a/basic_machines/distributor.lua b/basic_machines/distributor.lua index a27f0e3..9ff7970 100644 --- a/basic_machines/distributor.lua +++ b/basic_machines/distributor.lua @@ -417,10 +417,10 @@ local node_name_ta2, node_name_ta3, node_name_ta4 = }) minetest.register_craft({ - output = node_name_ta2, + output = node_name_ta2.." 2", recipe = { - {"group:wood", "default:steel_ingot", "group:wood"}, - {"tubelib:tubeS", "default:mese_crystal", "tubelib:tubeS"}, - {"group:wood", "default:steel_ingot", "group:wood"}, + {"group:wood", "techage:iron_ingot", "group:wood"}, + {"techage:tubeS", "default:mese_crystal", "techage:tubeS"}, + {"group:wood", "techage:iron_ingot", "group:wood"}, }, }) diff --git a/basic_machines/gravelsieve.lua b/basic_machines/gravelsieve.lua index f151634..c6db90b 100644 --- a/basic_machines/gravelsieve.lua +++ b/basic_machines/gravelsieve.lua @@ -260,8 +260,8 @@ local node_name_ta2, node_name_ta3, node_name_ta4 = minetest.register_craft({ output = node_name_ta2, recipe = { - {"group:wood", "default:tin_ingot", "group:wood"}, - {"tubelib:tubeS", "default:steel_ingot", "tubelib:tubeS"}, - {"group:wood", "default:tin_ingot", "group:wood"}, + {"group:wood", "default:mese_crystal", "group:wood"}, + {"techage:tubeS", "techage:sieve", "techage:tubeS"}, + {"group:wood", "techage:iron_ingot", "group:wood"}, }, }) diff --git a/basic_machines/grinder.lua b/basic_machines/grinder.lua index a670980..bd6a496 100644 --- a/basic_machines/grinder.lua +++ b/basic_machines/grinder.lua @@ -254,9 +254,9 @@ local node_name_ta2, node_name_ta3, node_name_ta4 = minetest.register_craft({ output = node_name_ta2, recipe = { - {"group:wood", "default:tin_ingot", "group:wood"}, - {"tubelib:tubeS", "default:mese_crystal", "tubelib:tubeS"}, - {"group:wood", "default:tin_ingot", "group:wood"}, + {"group:wood", "default:mese_crystal", "group:wood"}, + {"techage:tubeS", "techage:hammer_steel", "techage:tubeS"}, + {"group:wood", "techage:iron_ingot", "group:wood"}, }, }) diff --git a/basic_machines/pusher.lua b/basic_machines/pusher.lua index 746ea89..3490f53 100644 --- a/basic_machines/pusher.lua +++ b/basic_machines/pusher.lua @@ -174,8 +174,8 @@ local node_name_ta2, node_name_ta3, node_name_ta4 = minetest.register_craft({ output = node_name_ta2.." 2", recipe = { - {"group:wood", "wool:dark_green", "group:wood"}, - {"tubelib:tubeS", "default:mese_crystal", "tubelib:tubeS"}, - {"group:wood", "wool:dark_green", "group:wood"}, + {"group:wood", "wool:dark_green", "group:wood"}, + {"techage:tubeS", "default:mese_crystal", "techage:tubeS"}, + {"group:wood", "techage:iron_ingot", "group:wood"}, }, }) diff --git a/coal_power_station/gearbox.lua b/coal_power_station/cooler.lua similarity index 100% rename from coal_power_station/gearbox.lua rename to coal_power_station/cooler.lua diff --git a/init.lua b/init.lua index 95674f3..43b3553 100644 --- a/init.lua +++ b/init.lua @@ -2,78 +2,94 @@ techage = { NodeDef = {}, -- node registration info } +if minetest.global_exists("tubelib") then + minetest.log("error", "[techage] Techage can't be used together with the mod tubelib!") +elseif minetest.global_exists("ironage") then + minetest.log("error", "[techage] Techage can't be used together with the mod ironage!") +elseif minetest.global_exists("techpack") then + minetest.log("error", "[techage] Techage can't be used together with the modpack techpack!") +else + techage.max_num_forceload_blocks = tonumber(minetest.setting_get("techage_max_num_forceload_blocks")) or 12 + techage.basalt_stone_enabled = minetest.setting_get("techage_basalt_stone_enabled") == "true" + techage.machine_aging_value = tonumber(minetest.setting_get("techage_machine_aging_value")) or 100 + techage.ore_rarity = tonumber(minetest.setting_get("techage_ore_rarity")) or 1 + techage.modified_recipes_enabled = minetest.setting_get("techage_modified_recipes_enabled") == "true" -techage.max_num_forceload_blocks = tonumber(minetest.setting_get("techage_max_num_forceload_blocks")) or 12 -techage.basalt_stone_enabled = minetest.setting_get("techage_basalt_stone_enabled") == "true" -techage.machine_aging_value = tonumber(minetest.setting_get("techage_machine_aging_value")) or 100 -techage.ore_rarity = tonumber(minetest.setting_get("techage_ore_rarity")) or 1 -techage.modified_recipes_enabled = minetest.setting_get("techage_modified_recipes_enabled") == "true" + local MP = minetest.get_modpath("techage") -local MP = minetest.get_modpath("techage") + -- Load support for intllib. + dofile(MP.."/basis/intllib.lua") --- Load support for intllib. -dofile(MP.."/basis/intllib.lua") + -- Basis features + dofile(MP.."/basis/lib.lua") -- helper functions + dofile(MP.."/basis/guide.lua") -- construction guide + dofile(MP.."/basis/power.lua") -- power distribution + dofile(MP.."/basis/node_states.lua") -- state model + dofile(MP.."/basis/trowel.lua") -- hidden networks + dofile(MP.."/basis/junction.lua") -- network junction box + dofile(MP.."/basis/tubes.lua") -- tubelib replacement + dofile(MP.."/basis/command.lua") -- tubelib replacement + dofile(MP.."/basis/consumer.lua") -- consumer base model + dofile(MP.."/basis/firebox.lua") -- common firebox functions --- Basis features -dofile(MP.."/basis/lib.lua") -- helper functions -dofile(MP.."/basis/guide.lua") -- construction guide -dofile(MP.."/basis/power.lua") -- power distribution -dofile(MP.."/basis/node_states.lua") -dofile(MP.."/basis/trowel.lua") -- hidden networks -dofile(MP.."/basis/junction.lua") -- network junction box -dofile(MP.."/basis/tubes.lua") -- tubelib replacement -dofile(MP.."/basis/command.lua") -- tubelib replacement -dofile(MP.."/basis/consumer.lua") -- consumer base model -dofile(MP.."/basis/steam_pipe.lua") -dofile(MP.."/basis/firebox.lua") + -- Power networks + dofile(MP.."/power/drive_axle.lua") + dofile(MP.."/power/steam_pipe.lua") + dofile(MP.."/power/biogas_pipe.lua") + dofile(MP.."/power/electric_cable.lua") --- Iron Age -dofile(MP.."/iron_age/main.lua") -dofile(MP.."/iron_age/gravelsieve.lua") -dofile(MP.."/iron_age/hammer.lua") -dofile(MP.."/iron_age/lighter.lua") -dofile(MP.."/iron_age/charcoalpile.lua") -dofile(MP.."/iron_age/coalburner.lua") -dofile(MP.."/iron_age/meltingpot.lua") -if techage.modified_recipes_enabled then - dofile(MP.."/iron_age/tools.lua") -end -dofile(MP.."/iron_age/recipes.lua") -dofile(MP.."/iron_age/help.lua") -if minetest.global_exists("wielded_light") then - dofile(MP.."/iron_age/meridium.lua") -end + -- Iron Age + dofile(MP.."/iron_age/main.lua") + dofile(MP.."/iron_age/gravelsieve.lua") + dofile(MP.."/iron_age/hammer.lua") + dofile(MP.."/iron_age/lighter.lua") + dofile(MP.."/iron_age/charcoalpile.lua") + dofile(MP.."/iron_age/coalburner.lua") + dofile(MP.."/iron_age/meltingpot.lua") + if techage.modified_recipes_enabled then + dofile(MP.."/iron_age/tools.lua") + end + dofile(MP.."/iron_age/recipes.lua") + dofile(MP.."/iron_age/help.lua") + if minetest.global_exists("wielded_light") then + dofile(MP.."/iron_age/meridium.lua") + end --- Steam Engine -dofile(MP.."/steam_engine/drive_axle.lua") -dofile(MP.."/steam_engine/firebox.lua") -dofile(MP.."/steam_engine/boiler.lua") -dofile(MP.."/steam_engine/cylinder.lua") -dofile(MP.."/steam_engine/flywheel.lua") -dofile(MP.."/steam_engine/gearbox.lua") -dofile(MP.."/steam_engine/consumer.lua") -dofile(MP.."/steam_engine/battery.lua") + -- Steam Engine + dofile(MP.."/steam_engine/firebox.lua") + dofile(MP.."/steam_engine/boiler.lua") + dofile(MP.."/steam_engine/cylinder.lua") + dofile(MP.."/steam_engine/flywheel.lua") + dofile(MP.."/steam_engine/gearbox.lua") + dofile(MP.."/steam_engine/consumer.lua") + dofile(MP.."/steam_engine/battery.lua") -dofile(MP.."/electric/electric_cable.lua") -dofile(MP.."/electric/test.lua") -dofile(MP.."/electric/generator.lua") -dofile(MP.."/electric/consumer.lua") + -- Basic Machines + dofile(MP.."/basic_machines/pusher.lua") + dofile(MP.."/basic_machines/legacy_nodes.lua") + dofile(MP.."/basic_machines/grinder.lua") + dofile(MP.."/basic_machines/distributor.lua") + dofile(MP.."/basic_machines/gravelsieve.lua") + dofile(MP.."/basic_machines/chest.lua") --- Basic Machines -dofile(MP.."/basic_machines/pusher.lua") -dofile(MP.."/basic_machines/legacy_nodes.lua") -dofile(MP.."/basic_machines/grinder.lua") -dofile(MP.."/basic_machines/distributor.lua") -dofile(MP.."/basic_machines/gravelsieve.lua") -dofile(MP.."/basic_machines/chest.lua") - --- Coal power station -dofile(MP.."/coal_power_station/firebox.lua") + -- Coal power station + dofile(MP.."/coal_power_station/firebox.lua") + --dofile(MP.."/coal_power_station/boiler.lua") + --dofile(MP.."/coal_power_station/generator.lua") + --dofile(MP.."/coal_power_station/turbine.lua") + --dofile(MP.."/coal_power_station/cooler.lua") ---dofile(MP.."/fermenter/biogas_pipe.lua") ---dofile(MP.."/fermenter/gasflare.lua") ---dofile(MP.."/nodes/test.lua") ---dofile(MP.."/mechanic/perf_test.lua") + --dofile(MP.."/test/test.lua") + --dofile(MP.."/test/generator.lua") + --dofile(MP.."/test/consumer.lua") + + + --dofile(MP.."/fermenter/gasflare.lua") + + + --dofile(MP.."/nodes/test.lua") + --dofile(MP.."/mechanic/perf_test.lua") +end \ No newline at end of file diff --git a/iron_age/gravelsieve.lua b/iron_age/gravelsieve.lua index c8a82f2..5dfa2c8 100644 --- a/iron_age/gravelsieve.lua +++ b/iron_age/gravelsieve.lua @@ -336,14 +336,6 @@ minetest.register_craft({ }, }) -minetest.register_craft({ - output = "techage:auto_sieve", - type = "shapeless", - recipe = { - "techage:sieve", "default:mese_crystal", "default:mese_crystal", - }, -}) - minetest.register_craft({ output = "techage:compressed_gravel", recipe = { diff --git a/fermenter/biogas_pipe.lua b/power/biogas_pipe.lua similarity index 99% rename from fermenter/biogas_pipe.lua rename to power/biogas_pipe.lua index 1854203..1550fc4 100644 --- a/fermenter/biogas_pipe.lua +++ b/power/biogas_pipe.lua @@ -8,7 +8,7 @@ LGPLv2.1+ See LICENSE.txt for more information - Biogas pipes + TA4 Biogas pipes ]]-- diff --git a/steam_engine/drive_axle.lua b/power/drive_axle.lua similarity index 95% rename from steam_engine/drive_axle.lua rename to power/drive_axle.lua index 3530330..2aa4eee 100644 --- a/steam_engine/drive_axle.lua +++ b/power/drive_axle.lua @@ -175,3 +175,12 @@ minetest.register_node("techage:axle_on", { groups = {not_in_creative_inventory = 1}, sounds = default.node_sound_wood_defaults(), }) + +minetest.register_craft({ + output = "techage:axle 3", + recipe = { + {"default:junglewood", "", "default:wood"}, + {"", "techage:iron_ingot", ""}, + {"default:wood", "", "default:junglewood"}, + }, +}) diff --git a/electric/electric_cable.lua b/power/electric_cable.lua similarity index 98% rename from electric/electric_cable.lua rename to power/electric_cable.lua index 2fe500b..65523b4 100644 --- a/electric/electric_cable.lua +++ b/power/electric_cable.lua @@ -8,7 +8,7 @@ LGPLv2.1+ See LICENSE.txt for more information - Cable and junction box for electrical power distribution + TA3/TA4 Cable and junction box for electrical power distribution ]]-- diff --git a/basis/steam_pipe.lua b/power/steam_pipe.lua similarity index 94% rename from basis/steam_pipe.lua rename to power/steam_pipe.lua index adb2ea4..16d42ec 100644 --- a/basis/steam_pipe.lua +++ b/power/steam_pipe.lua @@ -113,3 +113,11 @@ minetest.register_node("techage:steam_pipeA", { drop = "techage:steam_pipeS", }) +minetest.register_craft({ + output = "techage:steam_pipeS 3", + recipe = { + {'', '', "default:bronze_ingot"}, + {'', 'techage:iron_ingot', ''}, + {"default:bronze_ingot", '', ''}, + }, +}) diff --git a/sounds/techage_steamengine.ogg b/sounds/techage_steamengine.ogg new file mode 100644 index 0000000000000000000000000000000000000000..ad98cd90052536a19281c87f7a643fc31df49bbf GIT binary patch literal 10875 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%0DX}bz$RQaZiOAkOG^OeIHI%1Dg76ILZLf=>&7G8 zxYzP~YP0>`!{K&X<*Ao1P#4 zVT^C|=~8yDD!a*xpQ2;DFI%u1d?bIvW}~6w)A6kGbIjpsIgYJxv+sh75@}t0a|-Qk z{+lrIStG4sxpXqq{#RbxHBWke7ybK>wQ8KN6_k`c>9Dr_8T`z4w^({SPEpq2vBvxY zMeX4WHvDbN>2SV>>vm8`+9;s%yMBDnzK#{OISHCL@JJ`QWTX6Nn~B$d@8UP2CH4N* zmTH4sYv*Ikg?S#PE>lt;D|dG$b0*^Jt?L|-x%>x@(|^9d>h8mana?Joe)4F~awv7X z{CM|U5B$9R-a|QgB02IAT#dlzpE)Dfzj;g7IOMw3^68_y@U9wbGi~C~VwK`xVt-APLVzqYi@>!iTY#N>MquFhh>Ne+0?J0)mZCJ_dlCI@s{EzY#+9$N^bPaOBo&UBTpPUgXroYxezpf9{@9U$9q z;n%VLC-9^T&l8F3)(eGu*mdpR!#nxT^XpO0rgCyu|$SrE7~P!!1H$xGR%^iL{#YG9tHMJ!nk6 z)dv1OCK$g7eyBA1&h7BB6}~+x6SNqWoGNrDdf`5qU5zk~?k7vZ)An*d6AoXC)hoI~=={SWAm>G@3 z*!Y4Hp!T>1oKGG#n#RyuJEL1WD)}fi;N387eEMpvC4x7v5{WR{O?SspaAh_s9()t#i+Y z5m_@{sy|uuEl&`8_sMZ4Cav!TXy@pwNKi()RRX->rznIsu$K1x&0(03yGruR^^YRk zlu9namjJoh;Q~95r@#D(b1yGwbE0H>zmB18pA!-kK`zX`Z&}9q+e~E!9lcwi!)>8S zbZo9XvfJcO%eOsE58Hs_gh# zm}0LU@3j)yTKJ~VlM}crGEYP|FdQ|=a>C}w$VQ-fCugZ&7s>XffR|#r=%(=S6K?QZ zfIQb2d~wA>*ST!>^Xy0TuGH)Ii>i`Gh#OOJ%%|;};;0AS)%@+UFK~pG7u04w-QBC) zTgal(RE>iqwaPPJlx&(7B|zO*L7KQ~%>OAT(I$6?o&!`N{WySj!ZKCjW>d!X&MDJ3 z18$e6b!2;#mX5}`)?@J&SeC-DoXhE$6{iv0()D`rnG_o E0WzLYnE(I) literal 0 HcmV?d00001 diff --git a/steam_engine/boiler.lua b/steam_engine/boiler.lua index c3e669c..13dca88 100644 --- a/steam_engine/boiler.lua +++ b/steam_engine/boiler.lua @@ -298,3 +298,20 @@ minetest.register_node("techage:boiler2", { sounds = default.node_sound_metal_defaults(), }) +minetest.register_craft({ + output = "techage:boiler1", + recipe = { + {"techage:iron_ingot", "", "techage:iron_ingot"}, + {"default:bronze_ingot", "", "default:bronze_ingot"}, + {"techage:iron_ingot", "default:bronze_ingot", "techage:iron_ingot"}, + }, +}) + +minetest.register_craft({ + output = "techage:boiler2", + recipe = { + {"techage:iron_ingot", "techage:steam_pipeS", "techage:iron_ingot"}, + {"default:bronze_ingot", "", "default:bronze_ingot"}, + {"techage:iron_ingot", "", "techage:iron_ingot"}, + }, +}) diff --git a/steam_engine/cylinder.lua b/steam_engine/cylinder.lua index 72e0334..ed4b022 100644 --- a/steam_engine/cylinder.lua +++ b/steam_engine/cylinder.lua @@ -53,10 +53,19 @@ local function start_cylinder(pos, on) if on and mem.running then consumer.turn_power_on(pos, POWER_CONSUMPTION) swap_node(pos, "techage:cylinder_on") + mem.handle = minetest.sound_play("techage_steamengine", { + pos = pos, + max_hear_distance = 4, + gain = 0.7, + loop = true}) return true else consumer.turn_power_on(pos, 0) swap_node(pos, "techage:cylinder") + if mem.handle then + minetest.sound_stop(mem.handle) + mem.handle = nil + end end return false end @@ -147,3 +156,26 @@ minetest.register_node("techage:cylinder_on", { sounds = default.node_sound_wood_defaults(), }) +minetest.register_craft({ + output = "techage:cylinder", + recipe = { + {"basic_materials:steel_bar", "techage:iron_ingot", "default:wood"}, + {"techage:steam_pipeS", "basic_materials:gear_steel", ""}, + {"default:wood", "techage:iron_ingot", "basic_materials:steel_bar"}, + }, +}) + +minetest.register_lbm({ + label = "[techage] Steam engine sound", + name = "techage:steam_engine", + nodenames = {"techage:cylinder_on"}, + run_at_every_load = true, + action = function(pos, node) + local mem = tubelib2.get_mem(pos) + mem.handle = minetest.sound_play("techage_steamengine", { + pos = pos, + max_hear_distance = 4, + gain = 0.7, + loop = true}) + end +}) diff --git a/steam_engine/firebox.lua b/steam_engine/firebox.lua index 8c08994..6962ab4 100644 --- a/steam_engine/firebox.lua +++ b/steam_engine/firebox.lua @@ -135,3 +135,11 @@ minetest.register_node("techage:firebox_on", { on_rightclick = firebox.on_rightclick, }) +minetest.register_craft({ + output = "techage:firebox", + recipe = { + {'group:stone', 'group:stone', 'group:stone'}, + {'techage:iron_ingot', '', 'techage:iron_ingot'}, + {'group:stone', 'group:stone', 'group:stone'}, + }, +}) diff --git a/steam_engine/flywheel.lua b/steam_engine/flywheel.lua index 74bf475..774a44c 100644 --- a/steam_engine/flywheel.lua +++ b/steam_engine/flywheel.lua @@ -26,7 +26,7 @@ local I,_ = dofile(MP.."/intllib.lua") local STANDBY_TICKS = 4 local COUNTDOWN_TICKS = 4 local CYCLE_TIME = 8 -local POWER_CAPACITY = 8 +local POWER_CAPACITY = 12 local Axle = techage.Axle local generator = techage.generator @@ -149,6 +149,7 @@ minetest.register_node("techage:flywheel", { turn_on = turn_power_on, read_power_consumption = generator.read_power_consumption, power_network = Axle, + power_side = "R", animated_power_network = true, }, @@ -217,6 +218,7 @@ minetest.register_node("techage:flywheel_on", { turn_on = turn_power_on, read_power_consumption = generator.read_power_consumption, power_network = Axle, + power_side = "R", animated_power_network = true, }, @@ -237,3 +239,12 @@ minetest.register_node("techage:flywheel_on", { is_ground_content = false, sounds = default.node_sound_wood_defaults(), }) + +minetest.register_craft({ + output = "techage:flywheel", + recipe = { + {"basic_materials:steel_bar", "dye:red", "default:wood"}, + {"", "basic_materials:gear_steel", "techage:axle"}, + {"default:wood", "techage:iron_ingot", "basic_materials:steel_bar"}, + }, +}) diff --git a/steam_engine/gearbox.lua b/steam_engine/gearbox.lua index 027c660..bddcd85 100644 --- a/steam_engine/gearbox.lua +++ b/steam_engine/gearbox.lua @@ -99,3 +99,11 @@ minetest.register_node("techage:gearbox_on", { sounds = default.node_sound_wood_defaults(), }) +minetest.register_craft({ + output = "techage:gearbox 2", + recipe = { + {"default:junglewood", "techage:axle", "default:wood"}, + {"techage:axle", "techage:iron_ingot", "techage:axle"}, + {"default:wood", "techage:axle", "default:junglewood"}, + }, +})