diff options
author | FaceDeer <derksenmobile@gmail.com> | 2017-01-03 23:56:34 -0700 |
---|---|---|
committer | FaceDeer <derksenmobile@gmail.com> | 2017-01-03 23:56:34 -0700 |
commit | d545593f273430cb31966d6eb63aa44a229b76ef (patch) | |
tree | 45824ba5867d84e58810411a4d521829d64ed43f | |
parent | f43e64caba3e9be12a0ed345fd0eae35cbfd15e2 (diff) |
combatibility with Carbone (and presumably other games that use older versions of the default mod)
-rw-r--r-- | init.lua | 2 | ||||
-rw-r--r-- | node_builders.lua | 2 | ||||
-rw-r--r-- | node_controllers.lua | 12 | ||||
-rw-r--r-- | node_diggers.lua | 8 | ||||
-rw-r--r-- | node_misc.lua | 6 | ||||
-rw-r--r-- | util.lua | 8 |
6 files changed, 23 insertions, 15 deletions
@@ -9,7 +9,7 @@ dofile( minetest.get_modpath( "digtron" ) .. "/node_controllers.lua" ) -- contro dofile( minetest.get_modpath( "digtron" ) .."/recipes.lua" ) -digtron.cycle_time = 1.0 -- How long a digtron waits between cycles. +digtron.cycle_time = 1 -- How many seconds a digtron waits between cycles. Auto-controllers can make this wait longer, but cannot make it shorter. digtron.traction_factor = 3.0 -- How many digtron nodes can be moved for each adjacent solid node that the digtron has traction against -- fuel costs. For comparison, in the default game: diff --git a/node_builders.lua b/node_builders.lua index 41bc85a..079776d 100644 --- a/node_builders.lua +++ b/node_builders.lua @@ -5,7 +5,7 @@ minetest.register_node("digtron:builder", { description = "Builder Unit", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 4}, drop = "digtron:builder", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", tiles = { "digtron_plate.png^[transformR90", diff --git a/node_controllers.lua b/node_controllers.lua index b9c3813..c66f252 100644 --- a/node_controllers.lua +++ b/node_controllers.lua @@ -238,7 +238,7 @@ minetest.register_node("digtron:controller", { description = "Digtron Control Unit", groups = {cracky = 3, oddly_breakable_by_hand = 3, digtron = 1}, drop = "digtron:controller", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", -- Aims in the +Z direction by default tiles = { @@ -328,7 +328,7 @@ digtron.auto_cycle = function(pos) meta:set_string("infotext", status) if cycle > 0 then - minetest.after(math.max(digtron.cycle_time, meta:get_int("period")), digtron.auto_cycle, newpos) + minetest.after(meta:get_int("period"), digtron.auto_cycle, newpos) else meta:set_string("formspec", auto_formspec) end @@ -339,7 +339,7 @@ minetest.register_node("digtron:auto_controller", { description = "Digtron Automatic Control Unit", groups = {cracky = 3, oddly_breakable_by_hand = 3, digtron = 1}, drop = "digtron:auto_controller", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", -- Aims in the +Z direction by default tiles = { @@ -364,7 +364,7 @@ minetest.register_node("digtron:auto_controller", { meta:set_string("infotext", "Heat remaining in controller furnace: 0") meta:set_string("formspec", auto_formspec) -- Reusing offset and period to keep the digtron node-moving code simple, and the names still fit well - meta:set_int("period", 1) + meta:set_int("period", digtron.cycle_time) meta:set_int("offset", 0) end, @@ -374,7 +374,7 @@ minetest.register_node("digtron:auto_controller", { local period = tonumber(fields.period) if period and period > 0 then - meta:set_int("period", math.floor(period)) + meta:set_int("period", math.max(digtron.cycle_time, math.floor(period))) end if offset and offset >= 0 then @@ -406,7 +406,7 @@ minetest.register_node("digtron:pusher", { description = "Digtron Pusher Unit", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 1}, drop = "digtron:pusher", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", -- Aims in the +Z direction by default tiles = { diff --git a/node_diggers.lua b/node_diggers.lua index 0de5e2e..9d60010 100644 --- a/node_diggers.lua +++ b/node_diggers.lua @@ -44,7 +44,7 @@ minetest.register_node("digtron:digger", { description = "Digger Head", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 3}, drop = "digtron:digger", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype = "light", paramtype2= "facedir", @@ -90,7 +90,7 @@ minetest.register_node("digtron:intermittent_digger", { description = "Intermittent Digger Head", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 3}, drop = "digtron:intermittent_digger", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype = "light", paramtype2= "facedir", @@ -145,7 +145,7 @@ minetest.register_node("digtron:soft_digger", { description = "Soft Material Digger Head", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 3}, drop = "digtron:soft_digger", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype = "light", paramtype2= "facedir", @@ -198,7 +198,7 @@ minetest.register_node("digtron:intermittent_soft_digger", { description = "Intermittent Soft Material Digger Head", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 3}, drop = "digtron:intermittent_soft_digger", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype = "light", paramtype2= "facedir", diff --git a/node_misc.lua b/node_misc.lua index c6bc8d4..ca28318 100644 --- a/node_misc.lua +++ b/node_misc.lua @@ -5,7 +5,7 @@ minetest.register_node("digtron:structure", { drop = "digtron:structure", tiles = {"digtron_plate.png"}, drawtype = "nodebox", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, climbable = true, walkable = false, paramtype = "light", @@ -54,7 +54,7 @@ minetest.register_node("digtron:inventory", description = "Digtron Inventory Hopper", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 2}, drop = "digtron:inventory", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", tiles = {"digtron_inventory.png"}, @@ -91,7 +91,7 @@ minetest.register_node("digtron:fuelstore", description = "Digtron Fuel Hopper", groups = {cracky = 3, oddly_breakable_by_hand=3, digtron = 5}, drop = "digtron:fuelstore", - sounds = default.node_sound_metal_defaults(), + sounds = digtron.metal_sounds, paramtype2= "facedir", tiles = {"digtron_fuelstore.png"}, @@ -4,6 +4,14 @@ digtron = {} dofile( minetest.get_modpath( "digtron" ) .. "/util_item_place_node.lua" ) -- separated out to avoid potential for license complexity +-- Apparently node_sound_metal_defaults is a newer thing, I ran into games using an older version of the default mod without it. +if default.node_sound_metal_defaults ~= nil then + digtron.metal_sounds = default.node_sound_metal_defaults() +else + digtron.metal_sounds = default.node_sound_stone_defaults() +end + + digtron.find_new_pos = function(pos, facing) -- finds the point one node "forward", based on facing local dir = minetest.facedir_to_dir(facing) |