diff options
Diffstat (limited to 'mesecons/mesecons_movestones')
| -rw-r--r-- | mesecons/mesecons_movestones/depends.txt | 3 | ||||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone/description.html | 1 | ||||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone/preview.png | bin | 77702 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone/recipe.png | bin | 14873 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone_sticky/description.html | 1 | ||||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone_sticky/preview.png | bin | 82749 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/doc/movestone_sticky/recipe.png | bin | 10190 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/init.lua | 156 | ||||
| -rw-r--r-- | mesecons/mesecons_movestones/textures/jeija_movestone_arrows.png | bin | 344 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/textures/jeija_movestone_side.png | bin | 466 -> 0 bytes | |||
| -rw-r--r-- | mesecons/mesecons_movestones/textures/jeija_sticky_movestone.png | bin | 742 -> 0 bytes | 
11 files changed, 0 insertions, 161 deletions
| diff --git a/mesecons/mesecons_movestones/depends.txt b/mesecons/mesecons_movestones/depends.txt deleted file mode 100644 index a596cf8..0000000 --- a/mesecons/mesecons_movestones/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -mesecons -mesecons_materials -mesecons_mvps diff --git a/mesecons/mesecons_movestones/doc/movestone/description.html b/mesecons/mesecons_movestones/doc/movestone/description.html deleted file mode 100644 index 8555a9e..0000000 --- a/mesecons/mesecons_movestones/doc/movestone/description.html +++ /dev/null @@ -1 +0,0 @@ -Movestones are effectors that push the blocks in front of them. They move along on the right side of a mesecon wire track. diff --git a/mesecons/mesecons_movestones/doc/movestone/preview.png b/mesecons/mesecons_movestones/doc/movestone/preview.pngBinary files differ deleted file mode 100644 index bda64db..0000000 --- a/mesecons/mesecons_movestones/doc/movestone/preview.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/doc/movestone/recipe.png b/mesecons/mesecons_movestones/doc/movestone/recipe.pngBinary files differ deleted file mode 100644 index f3d45df..0000000 --- a/mesecons/mesecons_movestones/doc/movestone/recipe.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/doc/movestone_sticky/description.html b/mesecons/mesecons_movestones/doc/movestone_sticky/description.html deleted file mode 100644 index 460c277..0000000 --- a/mesecons/mesecons_movestones/doc/movestone_sticky/description.html +++ /dev/null @@ -1 +0,0 @@ -Movestones are effectors that push the blocks in front of them. They move along on the right side of a mesecon wire track. Sticky ones also pull blocks. diff --git a/mesecons/mesecons_movestones/doc/movestone_sticky/preview.png b/mesecons/mesecons_movestones/doc/movestone_sticky/preview.pngBinary files differ deleted file mode 100644 index 85f9213..0000000 --- a/mesecons/mesecons_movestones/doc/movestone_sticky/preview.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/doc/movestone_sticky/recipe.png b/mesecons/mesecons_movestones/doc/movestone_sticky/recipe.pngBinary files differ deleted file mode 100644 index bbf0a94..0000000 --- a/mesecons/mesecons_movestones/doc/movestone_sticky/recipe.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/init.lua b/mesecons/mesecons_movestones/init.lua deleted file mode 100644 index 52a5605..0000000 --- a/mesecons/mesecons_movestones/init.lua +++ /dev/null @@ -1,156 +0,0 @@ --- MOVESTONE --- Non-sticky: --- Moves along mesecon lines --- Pushes all blocks in front of it --- --- Sticky one --- Moves along mesecon lines --- Pushes all block in front of it --- Pull all blocks in its back - -function mesecon.get_movestone_direction(pos) -	local lpos -	local rules = { -		{x=0,  y=1,  z=-1}, -		{x=0,  y=0,  z=-1}, -		{x=0,  y=-1, z=-1}, -		{x=0,  y=1,  z=1}, -		{x=0,  y=-1, z=1}, -		{x=0,  y=0,  z=1}, -		{x=1,  y=0,  z=0}, -		{x=1,  y=1,  z=0}, -		{x=1,  y=-1, z=0}, -		{x=-1, y=1,  z=0}, -		{x=-1, y=-1, z=0}, -		{x=-1, y=0,  z=0}} - -	lpos = {x=pos.x+1, y=pos.y, z=pos.z} -	for n = 1, 3 do -		if mesecon.is_power_on(lpos, rules[n].x, rules[n].y, rules[n].z) then -			return {x=0, y=0, z=-1} -		end -	end - -	lpos = {x = pos.x-1, y = pos.y, z = pos.z} -	for n=4, 6 do -		if mesecon.is_power_on(lpos, rules[n].x, rules[n].y, rules[n].z) then -			return {x=0, y=0, z=1} -		end -	end - -	lpos = {x = pos.x, y = pos.y, z = pos.z+1} -	for n=7, 9 do -		if mesecon.is_power_on(lpos, rules[n].x, rules[n].y, rules[n].z) then -			return {x=-1, y=0, z=0} -		end -	end - -	lpos = {x = pos.x, y = pos.y, z = pos.z-1} -	for n=10, 12 do -		if mesecon.is_power_on(lpos, rules[n].x, rules[n].y, rules[n].z) then -			return {x=1, y=0, z=0} -		end -	end -end - -function mesecon.register_movestone(name, def, is_sticky) -	local timer_interval = 1 / mesecon.setting("movestone_speed", 3) -	local name_active = name.."_active" - -	local function movestone_move (pos) -		if minetest.get_node(pos).name ~= name_active then -			return -		end - -		local direction = mesecon.get_movestone_direction(pos) -		if not direction then -			minetest.set_node(pos, {name = name}) -			return -		end -		local frontpos = vector.add(pos, direction) -		local backpos = vector.subtract(pos, direction) - -		-- ### Step 1: Push nodes in front ### -		local maxpush = mesecon.setting("movestone_max_push", 50) -		local maxpull = mesecon.setting("movestone_max_pull", 50) -		local success, stack, oldstack = mesecon.mvps_push(frontpos, direction, maxpush) -		if success then -			mesecon.mvps_process_stack(stack) -			mesecon.mvps_move_objects(frontpos, direction, oldstack) -		-- Too large stack/stopper in the way: try again very soon -		else -			minetest.after(0.05, movestone_move, pos) -			return -		end - -		-- ### Step 2: Move the movestone ### -		local node = minetest.get_node(pos) -		minetest.set_node(frontpos, node) -		minetest.remove_node(pos) -		mesecon.on_dignode(pos, node) -		mesecon.on_placenode(frontpos, node) -		minetest.after(timer_interval, movestone_move, frontpos) - -		-- ### Step 3: If sticky, pull stack behind ### -		if is_sticky then -			mesecon.mvps_pull_all(backpos, direction, maxpull) -		end -	end - -	def.mesecons = {effector = { -		action_on = function (pos) -			if minetest.get_node(pos).name ~= name_active then -				minetest.set_node(pos, {name = name_active}) -				movestone_move(pos) -			end -		end, -		action_off = function (pos) -			minetest.set_node(pos, {name = name}) -		end -	}} - -	def.drop = name - -	minetest.register_node(name, def) - -	-- active node only -	local def_active = table.copy(def) -	def_active.groups.not_in_creative_inventory = 1 -	minetest.register_node(name_active, def_active) -end - -mesecon.register_movestone("mesecons_movestones:movestone", { -	tiles = {"jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_movestone_arrows.png", "jeija_movestone_arrows.png"}, -	groups = {cracky=3}, -    	description="Movestone", -	sounds = default.node_sound_stone_defaults() -}, false) - -minetest.register_craft({ -	output = "mesecons_movestones:movestone 2", -	recipe = { -		{"default:stone", "default:stone", "default:stone"}, -		{"group:mesecon_conductor_craftable", "group:mesecon_conductor_craftable", "group:mesecon_conductor_craftable"}, -		{"default:stone", "default:stone", "default:stone"}, -	} -}) - --- STICKY_MOVESTONE -mesecon.register_movestone("mesecons_movestones:sticky_movestone", { -	tiles = {"jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_movestone_side.png", "jeija_sticky_movestone.png", "jeija_sticky_movestone.png"}, -	inventory_image = minetest.inventorycube("jeija_sticky_movestone.png", "jeija_movestone_side.png", "jeija_movestone_side.png"), -	groups = {cracky=3}, -    	description="Sticky Movestone", -	sounds = default.node_sound_stone_defaults(), -}, true) - -minetest.register_craft({ -	output = "mesecons_movestones:sticky_movestone 2", -	recipe = { -		{"mesecons_materials:glue", "mesecons_movestones:movestone", "mesecons_materials:glue"}, -	} -}) - --- Don't allow pushing movestones while they're active -mesecon.register_mvps_stopper("mesecons_movestones:movestone_active") -mesecon.register_mvps_stopper("mesecons_movestones:sticky_movestone_active") diff --git a/mesecons/mesecons_movestones/textures/jeija_movestone_arrows.png b/mesecons/mesecons_movestones/textures/jeija_movestone_arrows.pngBinary files differ deleted file mode 100644 index 358c357..0000000 --- a/mesecons/mesecons_movestones/textures/jeija_movestone_arrows.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/textures/jeija_movestone_side.png b/mesecons/mesecons_movestones/textures/jeija_movestone_side.pngBinary files differ deleted file mode 100644 index de753ef..0000000 --- a/mesecons/mesecons_movestones/textures/jeija_movestone_side.png +++ /dev/null diff --git a/mesecons/mesecons_movestones/textures/jeija_sticky_movestone.png b/mesecons/mesecons_movestones/textures/jeija_sticky_movestone.pngBinary files differ deleted file mode 100644 index 8953cf1..0000000 --- a/mesecons/mesecons_movestones/textures/jeija_sticky_movestone.png +++ /dev/null | 
