aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authororwell96 <mono96.mml@gmail.com>2016-09-12 21:06:00 +0200
committerorwell96 <mono96.mml@gmail.com>2016-09-12 21:06:00 +0200
commitf54d3b2e6cbba105f6ddd8c7f006db3e04d05b0e (patch)
tree85e375bae1e658798e239c186820afab9411adb6
parent1cffe6a9b63305eaccce007af5db522cfb5989d1 (diff)
downloadadvtrains-f54d3b2e6cbba105f6ddd8c7f006db3e04d05b0e.tar.gz
advtrains-f54d3b2e6cbba105f6ddd8c7f006db3e04d05b0e.tar.bz2
advtrains-f54d3b2e6cbba105f6ddd8c7f006db3e04d05b0e.zip
Adding crafting recipes
-rw-r--r--crafting.lua76
-rw-r--r--init.lua1
-rw-r--r--misc_nodes.lua14
-rw-r--r--wagons.lua6
4 files changed, 94 insertions, 3 deletions
diff --git a/crafting.lua b/crafting.lua
new file mode 100644
index 0000000..474f808
--- /dev/null
+++ b/crafting.lua
@@ -0,0 +1,76 @@
+--advtrains by orwell96, see readme.txt and license.txt
+--crafting.lua
+--registers crafting recipes
+
+--tracks
+minetest.register_craft({
+ output = 'advtrains:dtrack_placer 50',
+ recipe = {
+ {'default:steel_ingot', 'group:stick', 'default:steel_ingot'},
+ {'default:steel_ingot', 'group:stick', 'default:steel_ingot'},
+ {'default:steel_ingot', 'group:stick', 'default:steel_ingot'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:dtrack_puffer 2',
+ recipe = {
+ {'default:wood', 'dye:red', ''},
+ {'default:steel_ingot', '', 'default:steel_ingot'},
+ {'advtrains:dtrack_placer', 'advtrains:dtrack_placer', ''},
+ },
+})
+--temporary, as long as puffers do not rotate
+minetest.register_craft({
+ output = 'advtrains:dtrack_puffer_30',
+ recipe = {
+ {'advtrains:dtrack_puffer'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:dtrack_puffer_45',
+ recipe = {
+ {'advtrains:dtrack_puffer_30'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:dtrack_puffer_60',
+ recipe = {
+ {'advtrains:dtrack_puffer_45'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:dtrack_puffer',
+ recipe = {
+ {'advtrains:dtrack_puffer_60'},
+ },
+})
+
+
+--wagons
+minetest.register_craft({
+ output = 'advtrains:newlocomotive',
+ recipe = {
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ {'default:steelblock', 'dye:black', 'default:steelblock'},
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:wagon_default',
+ recipe = {
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ {'default:steelblock', 'dye:dark_green', 'default:steelblock'},
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ },
+})
+minetest.register_craft({
+ output = 'advtrains:subway_wagon',
+ recipe = {
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ {'default:steelblock', 'dye:yellow', 'default:steelblock'},
+ {'default:steelblock', 'default:steelblock', 'default:steelblock'},
+ },
+})
+
+--misc_nodes
+--crafts for platforms see misc_nodes.lua
diff --git a/init.lua b/init.lua
index 3633491..7c3a27a 100644
--- a/init.lua
+++ b/init.lua
@@ -23,3 +23,4 @@ dofile(advtrains.modpath.."/couple.lua");
dofile(advtrains.modpath.."/damage.lua");
dofile(advtrains.modpath.."/misc_nodes.lua");
+dofile(advtrains.modpath.."/crafting.lua");
diff --git a/misc_nodes.lua b/misc_nodes.lua
index 3e4742c..aeb1cfc 100644
--- a/misc_nodes.lua
+++ b/misc_nodes.lua
@@ -47,6 +47,20 @@ function advtrains.register_platform(preset)
paramtype = "light",
sunlight_propagates = true,
})
+ minetest.register_craft({
+ type="shapeless",
+ output = "advtrains:platform_high_"..nodename.." 4",
+ recipe = {
+ "dye:yellow", preset, preset
+ },
+ })
+ minetest.register_craft({
+ type="shapeless",
+ output = "advtrains:platform_low_"..nodename.." 4",
+ recipe = {
+ "dye:yellow", preset
+ },
+ })
end
minetest.register_abm({
diff --git a/wagons.lua b/wagons.lua
index b5ab97d..78d7b67 100644
--- a/wagons.lua
+++ b/wagons.lua
@@ -120,11 +120,11 @@ function wagon:on_punch(puncher, time_from_last_punch, tool_capabilities, direct
local inv = puncher:get_inventory()
if minetest.setting_getbool("creative_mode") then
- if not inv:contains_item("main", "advtrains:locomotive") then
- inv:add_item("main", "advtrains:locomotive")
+ if not inv:contains_item("main", self.name) then
+ inv:add_item("main", self.name)
end
else
- inv:add_item("main", "advtrains:locomotive")
+ inv:add_item("main", self.name)
end
table.remove(self:train().trainparts, self.pos_in_trainparts)