From 6f8fb2ce1f79ebcc20f680dce314c874ca280a16 Mon Sep 17 00:00:00 2001 From: khonkhortisan Date: Fri, 1 Mar 2013 12:26:27 -0800 Subject: [PATCH 1/3] Improve t-junction textures --- textures/carts_rail_t_junction_brk.png | Bin 564 -> 548 bytes textures/carts_rail_t_junction_pwr.png | Bin 554 -> 584 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/textures/carts_rail_t_junction_brk.png b/textures/carts_rail_t_junction_brk.png index c4fdbf4505ac644d0a1cbae04ccb41ed4d81a5b6..a4664778a0ad00f7c246b88045ce2d1c860c5747 100644 GIT binary patch delta 516 zcmV+f0{i{61f&FzDt}b~R{&FzA;Z4_000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*e!6d5!;^X}yU00FT{L_t(I%Z-vhNL67N#(&>EAGe#;(Bcx1#24H4Or(xzMr93(OoMegG4pk)x;;J{tl8boMpJDOOaq<`Z1dp+lE$a^~3=bs18 z@V)1Kf4tB4J#Z+yQ5T@~9VY?guonOgurS)47HZG$kk>hJ!x#l50@_kE4-)b^$J6Om z044`-%h23cr2#&#Zcw@Z2k_0==2DwxdpF|Zd5s^&v=uCZD8UQkbd}EjaqRxgwx?OJ z8+AF-BYZKHk4ORJOn;&%G7T$JuMyBUSff-d zGxqQ%OVyrZhmC-&zpWh~=jSfd&${HyfUKrItf|c{kG=hX`4{)(On{7U1@Pvbqg*e* z`LRcB=&l)1eQ@KX_%goeDA$W{J^#O0Yk(jK)9TX89(`OtCXqxQyFv6LAI22USqzMQQQ4H*jk-BVZy{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*Y)6gDdylc4ed00F^CL_t(I%axKbXcSQphQGJ_IM1ksO&TE|K|_1R@?$Ku_y8_X@ODcv=^4m^GPWuHtTrm??IgQxm|HGTmp XRJjeIa}HTF00000NkvXXu0mjfe)#!K diff --git a/textures/carts_rail_t_junction_pwr.png b/textures/carts_rail_t_junction_pwr.png index 93b2a94a4bd4a7328ac41b800f345743e50418c6..16c01585fd1af5a5f01d39e7ed33e1c56a6bff6a 100644 GIT binary patch delta 553 zcmV+^0@nSi1jq!CDt}b~R{&FzA;Z4_000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*e!6d5b_NAq(zbH)aEeyiJTOb(skNiw9xs*eD5 z1=|v8Yjq~BhK$(w;Bg&#^hs=hcOMH}Jhxu>;x4hf!)9sOV^_OPx$4sqwy1b@N>v~B z90K5&GfLh;Wq)G}=~Ra4sVpMMX8R4>=~Sj^-{wCEBK8mT5j}sQwZP5ZBieOfFP+g5 zL!6$<0uW0$0LEpYfaiIJ+#re|K@$oE2}B1cNT)JH+CP)MeJ1ctS_-^*n=>~r{x0MG zSmyqfh;Cb8BksMNmv4(DR#q!ylBaZA0-Hy9H|t8VRDZ$!zQW|SlfeSRmyYUIPDW>3 zDV98nrE*iORnZVYrBXG8cvpdEH%{~Pdb8!RSyu`_i)I~5IK&bT|0Hq0_ko>Zi(jiX z&PMi8uKI*`SoGd`FRExG2mJ$m!9g0Eoj3gpXw8Q;Lw^16GUG26WXmW& rc=gpd6e2;bkU-nP_0M#;6IkF66tvBi8)$xS00000NkvXXu0mjfGgS5* delta 523 zcmV+m0`&dJ1gZp(Du4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*Y)6gDmO@CC;J00Fm2L_t(I%axNqXcJ)=#(!V#BgU$OOBX>0MUjHVinN1^m2}9a zoeC~aLR~D14oaXh{e`eDBzO1IBTR%h_S7zH#0w56!;G|1`< zumr&L=s6jC{#j{&4@;|Dz5GYui@VN|F3tL8#NmUQS{T!nvk0OFei$1kJ;ReY!%dDm zMQ|#%Bs0xVcYn&9K zi~m9UFG=!?)NQ9V||h;P`rM6&zzHUuJZf{&wsC_I|zc%5cA^$yt;o;Ufyf9 z{A9sZt3SP#e?kON?Z>-w?Kp>W7QeRZTuo#*6*wTY?)lToh)Z(%cRUq{k zvRW}$?3WF12lzy}YV&^fCew>6YR@Xqy!*N Date: Fri, 1 Mar 2013 12:58:49 -0800 Subject: [PATCH 2/3] Make rail conductive --- init.lua | 127 ++++++++++++++++------ textures/carts_rail_brk.png | Bin 524 -> 533 bytes textures/carts_rail_brk_on.png | Bin 0 -> 524 bytes textures/carts_rail_crossing_brk.png | Bin 498 -> 592 bytes textures/carts_rail_crossing_brk_on.png | Bin 0 -> 498 bytes textures/carts_rail_crossing_pwr.png | Bin 604 -> 639 bytes textures/carts_rail_crossing_pwr_on.png | Bin 0 -> 604 bytes textures/carts_rail_curved_brk.png | Bin 555 -> 573 bytes textures/carts_rail_curved_brk_on.png | Bin 0 -> 555 bytes textures/carts_rail_curved_pwr.png | Bin 577 -> 583 bytes textures/carts_rail_curved_pwr_on.png | Bin 0 -> 577 bytes textures/carts_rail_pwr.png | Bin 533 -> 629 bytes textures/carts_rail_pwr_on.png | Bin 0 -> 533 bytes textures/carts_rail_t_junction_brk.png | Bin 548 -> 580 bytes textures/carts_rail_t_junction_brk_on.png | Bin 0 -> 548 bytes textures/carts_rail_t_junction_pwr.png | Bin 584 -> 594 bytes textures/carts_rail_t_junction_pwr_on.png | Bin 0 -> 584 bytes 17 files changed, 93 insertions(+), 34 deletions(-) create mode 100644 textures/carts_rail_brk_on.png create mode 100644 textures/carts_rail_crossing_brk_on.png create mode 100644 textures/carts_rail_crossing_pwr_on.png create mode 100644 textures/carts_rail_curved_brk_on.png create mode 100644 textures/carts_rail_curved_pwr_on.png create mode 100644 textures/carts_rail_pwr_on.png create mode 100644 textures/carts_rail_t_junction_brk_on.png create mode 100644 textures/carts_rail_t_junction_pwr_on.png diff --git a/init.lua b/init.lua index baeab5a..c7e481d 100644 --- a/init.lua +++ b/init.lua @@ -442,6 +442,23 @@ minetest.register_craft({ -- Mesecon support -- +get_rail_rules = function() + return { + {x = -1, y = -1, z = 0}, + {x = -1, y = 0, z = 0}, + {x = -1, y = 1, z = 0}, + {x = 1, y = -1, z = 0}, + {x = 1, y = 0, z = 0}, + {x = 1, y = 1, z = 0}, + {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 = 0, z = 1}, + {x = 0, y = 1, z = 1} + } +end + minetest.register_node(":default:rail", { description = "Rail", drawtype = "raillike", @@ -456,7 +473,7 @@ minetest.register_node(":default:rail", { -- but how to specify the dimensions for curved and sideways rails? fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, - groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1}, + groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1,connect_to_raillike=1}, }) minetest.register_node("carts:powerrail", { @@ -473,25 +490,46 @@ minetest.register_node("carts:powerrail", { -- but how to specify the dimensions for curved and sideways rails? fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, - groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1}, - - after_place_node = function(pos, placer, itemstack) - if not mesecon then - minetest.env:get_meta(pos):set_string("cart_acceleration", "0.5") - end - end, + groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1,connect_to_raillike=1}, mesecons = { - effector = { - action_on = function(pos, node) - minetest.env:get_meta(pos):set_string("cart_acceleration", "0.5") - end, - - action_off = function(pos, node) - minetest.env:get_meta(pos):set_string("cart_acceleration", "0") - end, - }, + conductor = { + state = mesecon.state.off, + onstate = "carts:powerrail_on", + rules = get_rail_rules() + } + }, + on_construct = function(pos) + minetest.env:get_meta(pos):set_string("cart_acceleration", "0") + end +}) + +minetest.register_node("carts:powerrail_on", { + description = "Powered Rail (you hacker you!)", + drawtype = "raillike", + tiles = {"carts_rail_pwr_on.png", "carts_rail_curved_pwr_on.png", "carts_rail_t_junction_pwr_on.png", "carts_rail_crossing_pwr_on.png"}, + inventory_image = "carts_rail_pwr_on.png", + wield_image = "carts_rail_pwr_on.png", + paramtype = "light", + is_ground_content = true, + walkable = false, + selection_box = { + type = "fixed", + -- but how to specify the dimensions for curved and sideways rails? + fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, + groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1,connect_to_raillike=1,not_in_creative_inventory=1}, + drop = "carts:powerrail", + mesecons = { + conductor = { + state = mesecon.state.on, + offstate = "carts:powerrail", + rules = get_rail_rules() + } + }, + on_construct = function(pos) + minetest.env:get_meta(pos):set_string("cart_acceleration", "0.5") + end }) minetest.register_node("carts:brakerail", { @@ -508,25 +546,46 @@ minetest.register_node("carts:brakerail", { -- but how to specify the dimensions for curved and sideways rails? fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, - groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1}, - - after_place_node = function(pos, placer, itemstack) - if not mesecon then - minetest.env:get_meta(pos):set_string("cart_acceleration", "-0.2") - end - end, - + groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1,connect_to_raillike=1}, + mesecons = { - effector = { - action_on = function(pos, node) - minetest.env:get_meta(pos):set_string("cart_acceleration", "-0.2") - end, - - action_off = function(pos, node) - minetest.env:get_meta(pos):set_string("cart_acceleration", "0") - end, - }, + conductor = { + state = mesecon.state.off, + onstate = "carts:brakerail_on", + rules = get_rail_rules() + } + }, + on_construct = function(pos) + minetest.env:get_meta(pos):set_string("cart_acceleration", "0") + end +}) + +minetest.register_node("carts:brakerail_on", { + description = "Brake Rail (you hacker you!)", + drawtype = "raillike", + tiles = {"carts_rail_brk_on.png", "carts_rail_curved_brk_on.png", "carts_rail_t_junction_brk_on.png", "carts_rail_crossing_brk_on.png"}, + inventory_image = "carts_rail_brk_on.png", + wield_image = "carts_rail_brk_on.png", + paramtype = "light", + is_ground_content = true, + walkable = false, + selection_box = { + type = "fixed", + -- but how to specify the dimensions for curved and sideways rails? + fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, + groups = {bendy=2,snappy=1,dig_immediate=2,attached_node=1,rail=1,connect_to_raillike=1,not_in_creative_inventory=1}, + drop = "carts:brakerail", + mesecons = { + conductor = { + state = mesecon.state.on, + offstate = "carts:brakerail", + rules = get_rail_rules() + } + }, + on_construct = function(pos) + minetest.env:get_meta(pos):set_string("cart_acceleration", "-0.2") + end }) minetest.register_craft({ diff --git a/textures/carts_rail_brk.png b/textures/carts_rail_brk.png index f3e0ff9827359b670d25f3add9c2fb6f109397d7..c10ab6dfd7eb756553511f50a9e6560e0c7d4fbb 100644 GIT binary patch delta 501 zcmVa3QT-6b6D2^s#YLS|~^nQzYJWbbn-=>)bo@zW21a(}fmo zw1v;|oQEIhJe&hyHXu zZNQiB6{1GUx1SzLfzgn(gr-gLw1Ob>mDa=4l)=lfzMMEabdA8*QjZ-4UvuSRKsk)? zJ2dqp$A`Vl_hRI_JevBHWw5fo&Aq!>W3ybrc$!Aj;ch9|4t=7;VXcq?6xtbVoT?0- z5BKK8h4EWNv6H0b*gtI2-BrXoVdo&mXvN!|{AXln=JTIB*rU4*c(=AiXF=0QQqB}K rtJOoI*rAjniXEK43c$+7fBJ>rRk7dhnYP`N00000NkvXXu0mjfi%0M& delta 492 zcmVy{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*Y)6g4_s4%5Q`00EgvL_t(I%gvL)OH@%5#((#|>llTKB;3{e3WD1TTMof|T%Fz*>*MGb>bMHGXX68|gHr2up z&gO9Wedm1K18prWF9^`7KS=;-zXiYmEIz!RHJ*%KBp(>*Hkwqx_cgV;#X8~eIH53C z0^r5HA-Vmis0_gTN|}-279iX|V*j|wxqKH|L(>W_1+C$1-ejY!ZGZcHw!d9L^N%tB zFDI{L#My~Ktba|V??Qm56k#=?CosefM_7%y|9lgGH&fT-R^eSMgO6V-^tJ&zpDRT5 zluuthlmeq6X$lRS;%SvR7fa!3%HUODI3v!CT_W(c)M7`@*YuwcD2EY#m!|f^F+Q^a zz}(%-a_8~;RtBr3J#OA;0k+E(jHjtL9G-%`&?ib9)@2ImFV4lSQ~y2E6^SOLtCFPg2h0G;7rpqS&F7 iB8pw+yt?(DZs8|swAN2_g-~Sx0000A|3PFX6z$qY3;%^^=|YhroLw7R)FvdsLRv)Y z7KVc0Drw_n3XUK~Op*A?(Gi{3yf<_2J1u7BQHwU!!Vk{oaQS`beB1+VEiEqy(5XL3 z0BOGkzyK^hyq-0lj9w%k80j{eRKWK&wYtSR;qW-2FjoTL#l0c9{ivu6!2C*?k>M5~ z+&^OfxXHPE7g|Hp3N8h$;cVVyqpWRz`+c^*T|x7YG5{|puVlp8i9xJQrSC$3rxal| zp(ilJ4M$jwx&M3~y2E6^SOLtCFPg2h0G;7rpqS&F7B8pw+yt?(DZs8|swAN2_g-~Sx O0000@Rm+iEmWTFvEoHy?&ihoALFu&fM7Bk*A#+x>t z)xDhW{hsgro^zlU$%T38?&%UhXdKer(6<~44+db0l#8#Iiqo3)0W$X;g_b`OGFbEElqy1+j(N|EcNiirYe>k1Q>sBYl5-3 zr5d*JPp-_-)+T)q9yV|)-Ub=~GlQ-Nvym{lf`bp38Gj6ky_=^w;3r>ncyRMHAGfQx ziN3Sa8~arCApO(zAhnWZZG8j7ulVxa#hCZAM<16iOA21P>8?>lPY~TL5z4K~nXjJT*DZwd+^^`=BAFeiHjT+a%h1N)z{8 zYLhqj&MJ%7HX2@4#^SaDx972htzroquT}pG=Q8IpIeRG700000NkvXXu0mjf+H3&X delta 466 zcmV;@0WJQ}1o8urDu4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*Y)6g3t0-|m_K00DnVL_t(I%cYaeD}+%P#eeU33lSxa8KziBqDjWgWWhp8VL`Lt zKR}5><71lg2e7bG6Or$YwT1E@SRpdPG{zu>g(S^*EO6(g*MCQxx{LeVb5Hkq&bjc0 z&8-aq-q%+UK;F0jSj<=>zCu|IcoeCx)h4R}uc@$RRBLK%VRLJP@9>$U{qW=;VKK}= z6?>Yk%nsG4eXyg5rBM%NTnnJB1-+^;-Cs?8bqP6HI&=OS=KXG*P+H@CztuF-&4{7YK#jw6?*@f1LYeT5PlNcB9> zW|xH#kC<`)9VFctioZnJ)JDJ0E|c8`8{6%&K3;2TBme!*FVUvIJ(yG}sQ>@~07*qo IM6N<$f-ODRj{pDw diff --git a/textures/carts_rail_crossing_brk_on.png b/textures/carts_rail_crossing_brk_on.png new file mode 100644 index 0000000000000000000000000000000000000000..3ace508bb5f94d0200a43e87cacb9969f7b9b58f GIT binary patch literal 498 zcmV@;nyt(Z)u?^2qll$Z4`y5o zpsfYHsxaMOO?`CQQ>V1JfbG3AC9oTgf9%C*W3ba96J1UW|xH#kC<`)9VFctioZnJ)JDJ0 oE|c8`8{6%&K3;2TBme!*FVUvIJ(yG}sQ>@~07*qoM6N<$g3ce>{{R30 literal 0 HcmV?d00001 diff --git a/textures/carts_rail_crossing_pwr.png b/textures/carts_rail_crossing_pwr.png index d63f1339b7d7274a498484e6b69689605ab2be29..dc33371be0c863b8bde2d9c22f9dcf75212807cf 100644 GIT binary patch delta 568 zcmV-80>}N_1pfq(Qhx#(12iez&XfoM00In2L_t(I%cYY~NYh~$$3O4(GqYAnPJXuL zpE{HX5k+>WEikD=U7|5Oi)g2LkRbHfRoG$cq9R>H=puG#2SGY)$1F(swKhuGzn{x! z9Ym(vZ*K?noy8VG&+Xy+d7k&-`#dik#L{v^`UiY66xJnmB7YRtrGLODmzE=nvDE^f zJ$A|YiCzT-9=6H(iJLVWYe%~QboacZyXRo4ety%OKr}Y1CI%4x0bkvb|0Oi9C#GJW znV!Y#iD5(}H+tIH>B<1`Evj+(qKm@$6w#Q6;gKQY#^AmOqk+6=&39HiCS7>1b#eNn zh9l+XRH~gT-G6Sji)C8OD%YHCXEcx(Hh@pboD#mK@~jwX%H;}c36m8g%?BexgI(}$ zEv>lKM6SAp=dUv2Q0VBlIMHY)`@Kl;bxyo^lNWm>3kh7fS5XZn7jmNR8n<`KoITU1 za>sEEt5U~AfVuJNj$6!5nl4$`fVuHrX%>n!HP|WcS$`03Q-xDw*X5Jo`+W}*>s1eo zWR{K8CYoLF@pFcsKMG{bEd-FsZ7J@{#^$~Up|CEUw@XUU@02N7lAT=(cV7kFTVl6V zq1kbaj=PrP+eAN> delta 533 zcmV+w0_y$$1l$CWQhxyn3nU?v$lY=P00HSqL_t(I%cYaeOH^SL#((e3HT#f?7LnDW zRRkenIzyXQuA)siO!Egs8B_#D)@acOZe-#@5JVqRpiCJ#>7rQ}_7`M9$wVWSICt(< z3~eDYI&phIZCB6lUav}OpXs3i@KoV-DFPlK4on$h1)}xssM>sHk<2% zr;`1r-*=fWbEGmio+ zdtURtPS37+AcEX_W@(`JMV_K7EU&oq4LkG>S*#SxY;V{=BISM5H*6z<{P!ZM>Q#R9 zu%FXsPW`o^CZ~E6FSj?!osK3g+V)PQZ_NrG2*~yF;3E;rK2|c87h1jcPT3H*eFlom-!(jo&bU zemyaOipC-}NB*Z0K}3*h56&LjDUUC;NCmrga*qsL4N0{J6)d0>>iPAs7QBD4nWN47 z*t*5wNmmO`yIN^Fu$QGmiDZw*8;G}}6e80 z;@xCU^FC#5FNNDfmZ|`WS2mmLgXDh{Fh^~5@AaHoExHI`jyhT(k+N0I7?+ky?ATVX z-whiL+_Jxi2Ebt4%Q)E+=HPyp05BL2iL+Q>Q(ch4s>|K;hjinE&co7SzF+eo``z;( zGnHq0W)>r;`1r-*=fWbEGmio+dtURtPS37+AcEX_W@(`JMV_K7EU&oq4LkG>S*#Sx zY;V{=BISM5H*6z<{P!ZM>Q#R9u%FXsPW`o^CZ~E6FSj?!osK3g+*I0000)zF4GCz4zYJ0A|7<^mT316BfeICn1{i`^=yd(gLc+%Ea zdlj}D8G?Qv<8vPxk8pdiQ@R5OXz9IU2~*D(0T}CR!{^nk@VW+uVOU~QXbODZeUi;> zTX!Ax40>-qC4Ui55^Da)LhOuf)Vt3XAky_fsoMFBs^BBJ^VP4N&<9Ju=-#^piS8EobQi#)`KnnuU gbF_sk4;M0O2Q0s{m45Zz2><{907*qoM6N<$f@jzGHvj+t delta 524 zcmV+n0`vX71giv)Du4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2i*Y)6gCeakVGQ@00Fp3L_t(I%e|A$OH^SL#((e3c%2vq%E%;PCNQjUp=gndcGfK1 z4dg;n)F3K~7MIWgVJI5N0<{kz2->(Ep&+=zh5H9c81x^g2!AS!Wagb|?tGjUI=30U zhHg5$_dT5F`8^yC{LgxE=aS5hU6Ja)z;OiDH*LCZPhrMzMbuG;P0J8~SWoZquuaR5 zyoxtsEtB9D@J= O002ovP6b4+LSTaCgz$s_ diff --git a/textures/carts_rail_curved_brk_on.png b/textures/carts_rail_curved_brk_on.png new file mode 100644 index 0000000000000000000000000000000000000000..5a849188f0095a64397ce1e06034a1e27de3d059 GIT binary patch literal 555 zcmV+`0@VG9P)L?ZwI0k}y- zK~y-)y_3yLRACgxfA7qAofrnn$RuGVFsyK)XpxI{)-2o&qED zwGSZ(+PEE|Ah^PX`v*uE^dG1QDvV_2ooViToEAE_8NG&XI=lBhoagyH91i@?dU5BH z%#K}=>c7Bo1lBigx^7Ql#&AW{QHM>-5P(=u@A0rr%aFZc0Yr~SoxtsEtB9D@J=002ovPDHLkV1mGX^ArF8 literal 0 HcmV?d00001 diff --git a/textures/carts_rail_curved_pwr.png b/textures/carts_rail_curved_pwr.png index e2ac67a3560029716fc2586a184f20c9422916a7..e085861d720739e9952436f2e470710f5d5b6ede 100644 GIT binary patch delta 511 zcmVfclxz5iWRZrNOg~%KeuuaNph+0K9+VprTx-^USO& zDPWqW1?RxCKY&Z#EfQHw{M~kY#~~RyUN7VRJ@V`Mm7_Hh@a+@;tr(n}9ErvW&n|HL z^!5Ug`6ZKNI)6h^f&9AlU{cLQR#;sAMsT3X646kkQu6yNoZq_yuJ zBY_|t4O7J8X)==G#PFK}hrYII*|^@t8mG?lx!Rw5FnBy3R;_*6^?dnm8kf_?*X1Pl zFE&d&k;YkO!#ng!87&E>pJ}{aYNWfTtN0=rEeR{X0!gMpw=2f{%@X~T;-hBJ-P6V6 zyS?nFtNQb2y7Ta}6+tP)rYX=30Jhasa_stq`VL>pxSb)$W%>XB002ovPDHLkV1hsH B0-gW> delta 505 zcmV5U{GxB;-yH8ATSts>J&rq;8j8?N}N=4 zFZ$oh(_#GoZnQ;SdX5jj@Avz8c%C2p&$@T%kWAh>BBedsPJax(ucz>xe?;^oriuDj zaddV@0K%b2Szql`*sRBJJL|bQu~2=4VSlT%yY|r7b;lIGc|8rljZ+7xuhUSf7+%pp z*L72D2o1rAf0x7)TjpC!C4;VOF9?SscxxA#zJ1&j1KfS}S#2begaRE>(I7fIBSv!k zXNKj~Up&3;Eq`0x`i4$6U#L!C)RT8B>RUWbBDqN<=#y=1MJ^|QZlN^26npTDOSBq| z{S9?oc|5NG0^Kd*Y}#EU7`@OYV?7?JMsj~@S*6lCsdR?P!J{IA=sCe*w-r+cPP^p9 z)#rpm5ze)LC6&ojkODmq=gJ5J-7T_juY+2<#>chR@^TRj{AN9d!*1nAGE1k|NoFgL zy~c`v?2{5fhR(WKviRuh@2z}D<8N2Y`4vbu51LIeHF`{526HS~-1PPL^5NNK4!1S^ v{WDFx|6&p1r;P)h zG=R5*=e-T}?J!SzBC1}KR22CAl6=v^vK6^crgzy$?-_OZ?v&5~UQMKFZ*~&;+9qp% z${YyQAtjV8g5E!zSRDL=FZ?>jnIElKfZOJNUHcw7PolgJUo`lYgbH#YxPi*U@~EV#&rQAglW+ zm^PNBr~m|9gV}8c_g^fFwwPnk)LN=(kZ}zjB{REd@VNVwXK*xkg3-R?$}HRDwn{|9 zAuL<*Ytz8@z1rA=>nGLC;m`l(;5Sh>G5#?_eLzw)E9?nKrZ=`I7&bx(3Wg2)n*f-c w-S!vmJSSfgt=AlbXiM!m7(^b delta 461 zcmV;;0W$ve1eFAkQhxyn3neXsWuO=U00E*&L_t(I%gvL$YZO5k#(y(A*}L<=4^UEQ z5%3QPMhz%-c48qMA+;zrktq2nE~SM5wTX}jM?wm<7nBnMsT7;Uh(!WHky8xWn9~H4 z<#z9O_O;k^Acc)uvDEy2h2>%m_BO+5Fk!NU;O0p_K?W z1+C#w(YS)8)s4N^``Z;X|0o0SxO~<%R)%|+98Bf-u>zh_1Y0o&3x=p^xpyOS!54SW z%jK~*8H0~s>VI^$jSrvegpHI>UpxxbKL87*YKfV00000NkvXXu0mjf D?4jH# diff --git a/textures/carts_rail_pwr_on.png b/textures/carts_rail_pwr_on.png new file mode 100644 index 0000000000000000000000000000000000000000..95f33f60b3357edfd7411836a86f62e2f0fc8bfe GIT binary patch literal 533 zcmV+w0_y#VP){cJFrfwb*kYg^gO|Dd%~ghk1X@KwES3Rq5+5 zi3q|UB!cwymt=0f>SheU%kc~D;Ni_~rbmqAjV2ZFea&toA+f^v_1Kloj-HXL_ZO7` zc>cP^mEOzBx`F$W8VsA;)(BXYqPchAe^u{Rlmk6-F^wv7*;>x7MzPhUNh0;3^r3C$$M z(+UdN+~RVupBOwH>vfHfZl7XyRLgE;$@!WSM+?+~5Whn+F<@PAX5_S7d+;`6u&}(& zrHh%dTB~C`O`~b?6s!k6VQfhfAqB{_8LaFp29=>6*ZAztIi8fQ#4XE@ohDtKMG`A~ z+m4tTR4zC%&@Hzn-~WCG-|1=_uimYZ&uJQQ%7L6_X={ftvM8kpBMXO50xx XbKL87*YKfV00000NkvXXu0mjf*Ussa literal 0 HcmV?d00001 diff --git a/textures/carts_rail_t_junction_brk.png b/textures/carts_rail_t_junction_brk.png index a4664778a0ad00f7c246b88045ce2d1c860c5747..76b9da7ecfdfced22a8d293ea44f71de97f73f46 100644 GIT binary patch delta 519 zcmV+i0{H!;1jGc8DhZMRlK>Yk159C&Ga-KyEgLCEHqHP50ntfBK~y-)jgw7i6Hyd} zzn6K8Y5f5=-H1P^2t_ccNL{!QsS9yah7byFL{z97D}oCpP;gO1t)fUs$XX=U3POZ| zxNs*Tg1B-w{lN+?wxu(fnRMp4Nb+dfN$pwQch7m}-FqIiVArZDo3j+4=nj?5S;~K| zRdtU9c>Q2N7YeseV#<_qg9rh{3Zx-uti_lz#i#jZ-^9oXHTvp@kN}^*&oOkqdGO0w zWOuJ*aXDmHkE9+%^rj8`Fvbfa*mD?wAPhrIZWCLCO&dxj2@H-DC>6_O zdVcaYe>QO@T?On~Ro}d@RLA+V%=23rwQYg*c=mo;{9f=_S@kL3J*~DSuyK`-CmrE> zKF<6Kh0#;V0{JV)wu&#~6-T&Ui0jomVhtz>;QN8D=KANjeD4ggiq+Le-}H0vp1gC! zouLB?la6(6O5*3>A0M&@Vl!8ir zKrOjz*t1RY$Co#mn3@q=M)}2uS?y2=l#vo(9%_E3BYnUO{{Y|<#Ne|N!)X8j002ov JPDHLkV1k~1@%I1# delta 487 zcmVe9;|Tt6m}L>|3fNiT2Wy`zRJ9b$aTR$xlSGQ*V)E)*<&?KkP|x`H3Z6wXsw42*qI z*_7Iix;aR1m)BCT0%^vO*NVkzx9qqFJf2v=Zq)fS`-I8mb#-EtXFh&UH&hC-a)0B{ dd958-=Qq|Nw>gxDw)_A9002ovPDHLkV1lW!?W+I) diff --git a/textures/carts_rail_t_junction_brk_on.png b/textures/carts_rail_t_junction_brk_on.png new file mode 100644 index 0000000000000000000000000000000000000000..6278766198e5f5d4cdab928d892b9d8fa5a1652f GIT binary patch literal 548 zcmV+<0^9wGP)-+gS+E;*InpD5XiibfZ>d<$*3z>P zFfwpmZe6`hd*7>n29HPqKCG$DEswqZfcY2qFv6L zAI22USqzMQQQ4H*jk-BVZYk159C&Ga-KyEg|nq?|c9N0pCePK~y-)jg!qwR8bhl ze`oG(8tscV4rrx)5NY5nTDZBhDDV%cK?b2shz3SMByI{JXyGDJXCh*T$z==a0|J8q zH_hEdiy$H*D!S=VmXeAybMGDR92e%n(YfZkJLf&m?>sN(Iqy6LW0tf1K7M5K0*XfiTkNS{??N%r{9vnOYz}eU^*%(r69wD8|5H(D0T%QwL z?Qhslr!rOhI{&F!!rs0fK7G9654eBbeM+`AAEu%6t`bHK6M&p)04SG%S^(E|l{jjc zzGL|UI{P1yPGyMHeW3BrabIywz?rrQb@TjU32SbN@oN#eYry6jd+|g3oG-GxVv`v- zCwB$d`jq#dTB1<2v3@NR{MNJ$paTqDJ}q~0GCXOCTbG(;p;)SlwQ^wFj%t6zTk{;6 zJ;uafwdIj#mdO7usCCXX$e9M)l6cg8%f67t-<2{(q=}N_5!$QKeeaD(B*Ste2fckg zwS&}h!BO)IkYx{ox?pmsLoR+_RpM6EN=2>l7d@lg}PV?A}E!DLkCM0McTwDxL8_J1tCJD z4sPNgh?CoE4gR4;Tbh3_eK`&_m!`hde%rn0e&7AhJ>P}D$j{}pC+?^!N(-o>J#l|W z^K&_K#s+wPtJ`c$4xQjhGNi?-j{tQA+Y)MPbtbNcjM(_#aUFW}No;_39}8SOw_f<- zF0s4AW@*`DSG!HQ>eCUnsCacsRUh^o0^pc4O5Qq@ay!Tr9%hV%>Q+uhXIv?kJc^}qQ><0d5J06;HHCOrfoC^P^YnLmv*oc_ zR|-FiW*tj7#1anwByqp@ft_KCU#m6FM)pyz`h<5_^xkKTY$H_HAe*N$=<1ZFu%P2p1_0>2OL9LKL+rjnEbhr~(;13kE&6OKyes2H( N002ovPDHLkV1o0l@v;B_ diff --git a/textures/carts_rail_t_junction_pwr_on.png b/textures/carts_rail_t_junction_pwr_on.png new file mode 100644 index 0000000000000000000000000000000000000000..559221424d3d8bf739d78f1246a614fed131f0a2 GIT binary patch literal 584 zcmV-O0=NB%P)EN=2>l7d@lg}PV?A}E!DLkCM0 zMcTwDxL8_J1tCJD4sPNgh?CoE4gR4;Tbh3_eK`&_m!`hde%rn0e&7AhJ>P}D$j{}p zC+?^!N(-o>J#k0#b2)Ry26%p}+iXk@o#06_q{XU_0Cff15^8I8Ca#8z*!bXa9eVUh zY=Czk3tT+6UijiJvAe@&Y1v~}yG^<3(-F3)cy&ruANCvq;FvQ?-a%z!3+Ysb>8UIt z$Y%Qu+v!xMY2W5Q2qN|m^btLOp|!xx-Xq#|U@x7~5ks7w$^sBeH~_|Fpn&IjhTI^E zAVCuf1qnn4CrGC3DV98nrE*iORnZVYrBXG8cvpdE zH%{~Pdb8!RSyu`_i)I~5IK&bT|0Hq0_ko>Zi(jiX&PMi8uKI*`SoGd`FRExG2mJ$m z!9g0Eoj3gpXw8Q;Lw^16GUG26WXmW&c=gpd6hW Date: Fri, 1 Mar 2013 14:02:25 -0800 Subject: [PATCH 3/3] Shorten get_rail_rules --- init.lua | 22 ++++++++-------------- 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/init.lua b/init.lua index c7e481d..e68e2b4 100644 --- a/init.lua +++ b/init.lua @@ -443,20 +443,14 @@ minetest.register_craft({ -- get_rail_rules = function() - return { - {x = -1, y = -1, z = 0}, - {x = -1, y = 0, z = 0}, - {x = -1, y = 1, z = 0}, - {x = 1, y = -1, z = 0}, - {x = 1, y = 0, z = 0}, - {x = 1, y = 1, z = 0}, - {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 = 0, z = 1}, - {x = 0, y = 1, z = 1} - } + rules = {} + for y = -1, 1 do + table.insert(rules,{x = -1, y = y, z = 0}) + table.insert(rules,{x = 1, y = y, z = 0}) + table.insert(rules,{x = 0, y = y, z = -1}) + table.insert(rules,{x = 0, y = y, z = 1}) + end + return rules end minetest.register_node(":default:rail", {