From 4b0d4ba9abd702b98c6cfe5356fe0f4c2122ac59 Mon Sep 17 00:00:00 2001
From: khonkhortisan <kyle.kylina@gmail.com>
Date: Wed, 20 Feb 2013 04:24:24 +0100
Subject: [PATCH] Rotate frame motor textures

---
 technic/frames.lua |   61 +++++++++++++-----------------
 1 files changed, 27 insertions(+), 34 deletions(-)

diff --git a/technic/frames.lua b/technic/frames.lua
index f149409..efae0e5 100644
--- a/technic/frames.lua
+++ b/technic/frames.lua
@@ -1,31 +1,3 @@
-	minetest.register_node("technic:wall", {
-		description = description,
-		drawtype = "nodebox",
-		tiles = {"default_wood.png"},
-		paramtype = "light",
-		--paramtype2 = "facedir",
-		sunlight_propagates = true,
-		is_ground_content = true,
-		node_box = {
-			type = "fixed",
-			--fixed = {-0.5, -0.5, 0.25, 0.5, 0.5, 0.5},
-	fixed={
-	{-0.5, -0.5, -0.5, -0.4, 0.5, -0.4},
-	{-0.4, -0.5, 0.3, -0.3, 0.5, 0.4},
-	{0.3, -0.5, 0.3, 0.4, 0.5,0.4},
-	{0.3, -0.5, -0.3, 0.4, 0.5,-0.4},
-	{-0.3, -0.35, -0.3, 0.3, -0.2,-0.25},
-	{-0.3, 0.2, -0.3,	 0.3, 0.35,-0.25},
-	{-0.3, -0.35, 0.25, 0.3, -0.2,0.3},
-	{-0.3, 0.2, 0.25,	 0.3, 0.35,0.3},
-	{-0.3, -0.35, -0.25, -0.25, -0.2,0.25},
-	{-0.3, 0.2, -0.25,	 -0.25, 0.35,0.25},
-	{0.25, -0.35, -0.25, 0.3, -0.2,0.25},
-	{0.25, 0.2, -0.25,	0.3, 0.35,0.25},
-	},},
-		sounds = default.node_sound_stone_defaults(),
-	})
-
 function get_face(pos,ppos,pvect)
 	ppos={x=ppos.x-pos.x,y=ppos.y-pos.y+1.5,z=ppos.z-pos.z}
 	if pvect.x>0 then
@@ -326,7 +298,7 @@
 minetest.register_node("technic:frame_motor4",{
 	description = "Frame motor 4",
 	tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
-		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
+		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png^[transformR180"},
 	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
 	paramtype2 = "facedir",
 	mesecons={effector={action_on=frame_motor4_on}},
@@ -342,7 +314,7 @@
 minetest.register_node("technic:frame_motor5",{
 	description = "Frame motor 5",
 	tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
-		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
+		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png^[transformR90"},
 	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
 	paramtype2 = "facedir",
 	mesecons={effector={action_on=frame_motor5_on}},
@@ -358,7 +330,7 @@
 minetest.register_node("technic:frame_motor6",{
 	description = "Frame motor 6",
 	tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
-		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png"},
+		"technic_lv_cable.png", "technic_lv_cable.png", "pipeworks_filter_top.png^[transformR270"},
 	groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2,mesecon=2},
 	paramtype2 = "facedir",
 	mesecons={effector={action_on=frame_motor6_on}},
@@ -371,11 +343,19 @@
 	end
 })
 
-
-
+function add_table(table,toadd)
+	local i=1
+	while true do
+		o=table[i]
+		if o==toadd then return end
+		if o==nil then break end
+		i=i+1
+	end
+	table[i]=toadd
+end
 
 function move_nodes_vect(poslist,vect)
-	for _,pos in ipairs(poslist) do
+		for _,pos in ipairs(poslist) do
 		local npos=addVect(pos,vect)
 		if minetest.env:get_node(npos).name~="air" and not(pos_in_list(poslist,npos)) then return end
 	end
@@ -386,6 +366,19 @@
 		nodelist[#(nodelist)+1]={pos=pos,node=node,meta=meta}
 		minetest.env:remove_node(pos)
 	end
+	objects={}
+	for _,pos in ipairs(poslist) do
+		for _,object in ipairs(minetest.env:get_objects_inside_radius(pos, 1)) do
+			add_table(objects,object)
+		end
+	end
+	for _,obj in ipairs(objects) do
+		obj:setpos(addVect(obj:getpos(),vect))
+		if obj:get_luaentity().name == "pipeworks:tubed_item" then
+			le=obj:get_luaentity()
+			le.start_pos=addVect(le.start_pos,vect)
+		end
+	end
 	for _,n in ipairs(nodelist) do
 		local npos=addVect(n.pos,vect)
 		minetest.env:set_node(npos,n.node)

--
Gitblit v1.8.0