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) | 
