From dab4a68b31c1c71ed0bdc691f29f403717d84176 Mon Sep 17 00:00:00 2001 From: Martin Doege Date: Tue, 14 Apr 2015 16:36:34 +0200 Subject: [PATCH] potatoes and carrots are their own seeds --- mods/default/functions.lua | 16 ++++++ mods/default/nodes.lua | 6 +++ mods/farming/nodes.lua | 2 +- mods/farming_plus/carrots.lua | 23 +++------ mods/farming_plus/potatoes.lua | 46 ++++++++++++------ .../textures/farming_carrot_1.png | Bin 137 -> 166 bytes .../textures/farming_carrot_2.png | Bin 196 -> 237 bytes .../textures/farming_carrot_3.png | Bin 274 -> 370 bytes .../textures/farming_carrot_4.png | Bin 405 -> 558 bytes .../textures/farming_potato_1.png | Bin 209 -> 166 bytes .../textures/farming_potato_2.png | Bin 262 -> 237 bytes .../textures/farming_potato_3.png | Bin 415 -> 370 bytes .../textures/farming_potato_4.png | Bin 0 -> 482 bytes .../textures/potato_poisonous.png | Bin 0 -> 504 bytes mods/mobs/init.lua | 10 +++- 15 files changed, 70 insertions(+), 33 deletions(-) create mode 100644 mods/farming_plus/textures/farming_potato_4.png create mode 100644 mods/farming_plus/textures/potato_poisonous.png diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 75c522c..1e22eb5 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -318,3 +318,19 @@ minetest.register_abm({ end end }) + +minetest.register_abm({ + nodenames = {"default:dirt_with_snow"}, + interval = 2, + chance = 20, + action = function(pos, node) + local above = {x=pos.x, y=pos.y+1, z=pos.z} + local name = minetest.get_node(above).name + local nodedef = minetest.registered_nodes[name] + if name ~= "default:snow" then + minetest.set_node(pos, {name = "default:dirt_with_grass"}) + end + end +}) + + diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 78076f2..a370107 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -367,6 +367,12 @@ minetest.register_node("default:snow", { minetest.set_node(pos, {name="default:dirt_with_snow"}) end end, + after_destruct = function(pos, node, digger) + pos.y = pos.y - 1 + if minetest.get_node(pos).name == "default:dirt_with_snow" then + minetest.set_node(pos, {name="default:dirt_with_grass"}) + end + end, }) diff --git a/mods/farming/nodes.lua b/mods/farming/nodes.lua index 6d25598..270027c 100644 --- a/mods/farming/nodes.lua +++ b/mods/farming/nodes.lua @@ -115,7 +115,7 @@ minetest.register_abm({ end -- check if there is water nearby local wet_lvl = minetest.get_item_group(node.name, "wet") - if minetest.find_node_near(pos, 3, {"group:water"}) then + if minetest.find_node_near(pos, 4, {"group:water"}) then -- if it is dry soil and not base node, turn it into wet soil if wet_lvl == 0 then minetest.set_node(pos, {name = wet}) diff --git a/mods/farming_plus/carrots.lua b/mods/farming_plus/carrots.lua index 7f55644..a51ad9c 100644 --- a/mods/farming_plus/carrots.lua +++ b/mods/farming_plus/carrots.lua @@ -2,14 +2,6 @@ local S S = farming.S -minetest.register_craftitem("farming_plus:carrot_seed", { - description = S("Carrot Seeds"), - inventory_image = "farming_carrot_seed.png", - on_place = function(itemstack, placer, pointed_thing) - return farming.place_seed(itemstack, placer, pointed_thing, "farming_plus:carrot_1") - end -}) - minetest.register_node("farming_plus:carrot_1", { paramtype = "light", walkable = false, @@ -64,14 +56,12 @@ minetest.register_node("farming_plus:carrot", { drawtype = "plantlike", tiles = {"farming_carrot_4.png"}, drop = { - max_items = 6, + max_items = 4, items = { - { items = {'farming_plus:carrot_seed'} }, - { items = {'farming_plus:carrot_seed'}, rarity = 2}, - { items = {'farming_plus:carrot_seed'}, rarity = 5}, - { items = {'farming_plus:carrot_item'} }, - { items = {'farming_plus:carrot_item'}, rarity = 2 }, - { items = {'farming_plus:carrot_item'}, rarity = 5 } + { items = {"farming_plus:carrot_item"} }, + { items = {"farming_plus:carrot_item"}, rarity = 2}, + { items = {"farming_plus:carrot_item"}, rarity = 2}, + { items = {'farming_plus:carrot_item'}, rarity = 5}, } }, groups = {snappy=3, flammable=2, not_in_creative_inventory=1,plant=1}, @@ -82,6 +72,9 @@ minetest.register_craftitem("farming_plus:carrot_item", { description = S("Carrot"), inventory_image = "farming_carrot.png", on_use = minetest.item_eat(3), + on_place = function(itemstack, placer, pointed_thing) + return farming.place_seed(itemstack, placer, pointed_thing, "farming_plus:carrot_1") + end }) farming.add_plant("farming_plus:carrot", {"farming_plus:carrot_1", "farming_plus:carrot_2", "farming_plus:carrot_3"}, 50, 20) diff --git a/mods/farming_plus/potatoes.lua b/mods/farming_plus/potatoes.lua index 794c021..2a6ca0e 100644 --- a/mods/farming_plus/potatoes.lua +++ b/mods/farming_plus/potatoes.lua @@ -2,14 +2,6 @@ local S S = farming.S -minetest.register_craftitem("farming_plus:potato_seed", { - description = ("Potato Seeds"), - inventory_image = "farming_potato_seed.png", - on_place = function(itemstack, placer, pointed_thing) - return farming.place_seed(itemstack, placer, pointed_thing, "farming_plus:potato_1") - end -}) - minetest.register_node("farming_plus:potato_1", { paramtype = "light", walkable = false, @@ -42,20 +34,35 @@ minetest.register_node("farming_plus:potato_2", { sounds = default.node_sound_leaves_defaults(), }) +minetest.register_node("farming_plus:potato_3", { + paramtype = "light", + walkable = false, + drawtype = "plantlike", + drop = "", + tiles = {"farming_potato_3.png"}, + selection_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.5+12/16, 0.5} + }, + }, + groups = {snappy=3, flammable=2, not_in_creative_inventory=1,plant=1}, + sounds = default.node_sound_leaves_defaults(), +}) + minetest.register_node("farming_plus:potato", { paramtype = "light", walkable = false, drawtype = "plantlike", tiles = {"farming_potato_3.png"}, drop = { - max_items = 6, + max_items = 4, items = { - { items = {'farming_plus:potato_seed'} }, - { items = {'farming_plus:potato_seed'}, rarity = 2}, - { items = {'farming_plus:potato_seed'}, rarity = 5}, - { items = {'farming_plus:potato_item'} }, - { items = {'farming_plus:potato_item'}, rarity = 2 }, - { items = {'farming_plus:potato_item'}, rarity = 5 } + { items = {'farming_plus:poisonous_potato_item'}, rarity = 50}, + { items = {"farming_plus:potato_item"} }, + { items = {"farming_plus:potato_item"}, rarity = 2}, + { items = {"farming_plus:potato_item"}, rarity = 2}, + { items = {'farming_plus:potato_item'}, rarity = 5}, } }, groups = {snappy=3, flammable=2, not_in_creative_inventory=1,plant=1}, @@ -65,9 +72,16 @@ minetest.register_node("farming_plus:potato", { minetest.register_craftitem("farming_plus:potato_item", { description = S("Potato"), inventory_image = "farming_potato.png", + on_place = function(itemstack, placer, pointed_thing) + return farming.place_seed(itemstack, placer, pointed_thing, "farming_plus:potato_1") + end +}) +minetest.register_craftitem("farming_plus:poisonous_potato_item", { + description = "Poisonous Potato", + inventory_image = "potato_poisonous.png", }) -farming.add_plant("farming_plus:potato", {"farming_plus:potato_1", "farming_plus:potato_2"}, 50, 20) +farming.add_plant("farming_plus:potato", {"farming_plus:potato_1", "farming_plus:potato_2", "farming_plus:potato_3"}, 50, 20) minetest.register_alias("farming_plus:potatoe_item", "farming_plus:potato_item") minetest.register_alias("farming_plus:potatoe_seed", "farming_plus:potato_seed") diff --git a/mods/farming_plus/textures/farming_carrot_1.png b/mods/farming_plus/textures/farming_carrot_1.png index f1596f534ff1dff0b1f65e55f3eb8ada0a2169d4..b80fbbaf1847523878da018f8ac5bde58ce2de34 100644 GIT binary patch literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJTu&FrkcwMxFDeQ(81T4UH2tb! zp^|=B`GQPKcgwZu8=4an_H}q(ezG*w<;7V6pauk}ky=pN^`EhXCoEX^UcuYSSo=(c zoEO0j+YC3o)lHGD`yTW+MK!tsT9}sl* zt!8^sqBZM%zN~NK{+q|{ePD2qdiQnfpD!Vi!K*UA`v3AtW}MM*bg9u9;deaq53(-U zv9~f>L+`Fdj&E-W(*>XXP9n3rycXi_#!Nd@h<8M1@_zwk}Icw+a9OV>g^ cpE-U>S7Xj9t6ws+l|WALboFyt=akR{0L9Z_0RR91 literal 196 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`-JULvAr_~T6C_v{CwMU2j?s0i z`DCFg9KH5`{f`g551((h=h0bnhG(`~OoGa-YZs&z|K|aML{qi@i>256Gd3_Vh&aCL z-|=PBIA=e&^JuycNOsMdH9Y_S{Ym`sC2rQo7msfDs8k+Yf8@dc`}gZ5>;C^cf8g}_ tlN+}EHBmmv_#!mn!+pib&-Qkv4D)p~mv!$pm+4rwn)ALpd={KR>>;>_qfD#8i*~E!xB^=PanT2krlksbwx{ZSPlS{ zlXF|wzXk0%h&SMgK=K{{1g(tB$pTOUA^;FC{cd%VlUVbQE}ejTg@d8wxCxETR{(++ zo2}?NF|p(9^)du+163{r|2*7J<}#Q@^d|tz?ZUe8q`8M<2?1`$Xn7Y1R7ze-DKvJq z0j&U~w!y1=gCN9SYS%C)Z^7C{RYr_yG=SA|f}bpdfWYly>FTnL0jPT**EBy!;^!v~ z)mGAxefHHdQkyVM00p0g(aA4n@Uo5p@P^d^7N_Ytbpw-z>{%<-pKFok4N9{=$*>`? QMgRZ+07*qoM6N<$f-G#E6aWAK literal 274 zcmV+t0qy>YP)Z$lhyx4b;lS9y2348`#%E%1A~2%+W)v_+y4v<3=FXiR>XNHyuu8wFsRh{ ze@34ZoF7tR^q*)iBs5$9|MdPl0|PT7!@vK38DwO{7^W2LVkF8H+5M2v4=gqO@0E>+ z!l)_>(qbj7#^irA0lzchlVoLOW%&2!4_-@H@JW7n_l4p2Z~U&t>w^D`%nZMN{>5tm Y0M-vo`s!Wo%K!iX07*qoM6N<$g7*S`2mk;8 diff --git a/mods/farming_plus/textures/farming_carrot_4.png b/mods/farming_plus/textures/farming_carrot_4.png index 6eca7271f7c98776f024bfd33aee0daa5c5f86e5..f5d7bd683e40d499e83048cc0d46bd4e2ad70ab0 100644 GIT binary patch literal 558 zcmV+}0@3}6P)#SWH;NU%P*+2QLi^+5g0I?__ zGywanyq8fq&$TK=JjeJ9=ofH+#321vmWLIa?0iC2nH9>vE1gh&a-V=|7uNBKU< z#P?nn-Er8(t+zx+Z z09G?vjst+XruSTjI$#P2W{EEaAVlnacA&_lEKDo^A?%ZU9O6as4I2XRkQjgv0I;G^ zi@+qhf^$3cjR1nkLR{{1FS5gnD4^waWX^RRYzzQF0#LlzWB}Bj-DwK|LO_Ht3ZMcJ zgxnSYipNA1kOt7+*HSRt5Ww=@N<;FBjamQ{g|`GC{7zk7nCAZJa`BY_jDWcjX>jGu zFxR-20E|F#euY3QfFk^<6fpe5#2fF*7jUCnFt|PRgX?|IR?pvE_C0NIc3PXixH|IZ wH^&|=Y%KsB`t>0G_pKl7=c!i_X*(a=A2YT##Gr$EjsO4v07*qoM6N<$f&_W-y#N3J literal 405 zcmV;G0c!qq82o1-6~wk!{ZHz)MbVhpX-n83nOL{xdKzF!+~Yx`YK? z;K;mtj0_A648c_<|G$3y&cMsZ!SLndcLoLq1_lmRcKo*cmm2*YSVWBqumOx!oSa5JsGV*ktqn_pd(; zU%vfd5a8ir`1Rut!>X=Rj6}tNXP(Y~1_lNOpM3rQZt2=^TjQW!%b(~B7h{4kqH8Sv zGcYhPgqE57-#+OIBLf2i!{^W686;$c;074y!Oh@ncY_@&AlI zCloP1sOyLVK}AOYgG!C@YGA=9`Jeee!_RNO8OSz(m7SS^i<=X#0Ze!eU}a_a_va7! zE+}An!N9=Iz_1*T8k`AZb)F1L;Dt_lf>kX5)fjT?m^F#E00000NkvXXu0mjfWgoke diff --git a/mods/farming_plus/textures/farming_potato_1.png b/mods/farming_plus/textures/farming_potato_1.png index 75a3cdfb5acd35b1070fa604c7d091bc24a75e70..b80fbbaf1847523878da018f8ac5bde58ce2de34 100644 GIT binary patch literal 166 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJTu&FrkcwMxFDeQ(81T4UH2tb! zp^|=B`GQPKcgwZu8=4an_H}q(ezG*w<;7V6pauk}ky=pN^`EhXCoEX^UcuYSSo=(c zoEO0j+YC3o)lHGD`yTW+MKyZ%QPXGG=%mKy#S5#?oIV`XOe_U#wL{OY5OUfH_;Sy-7FHchy| z$iTqB5LIRIe_7iJMhpX@YApUUu`nsOx`I5}7t_RPM{ zh}DUqm8So(iAUC$!No%>%>H}k>;5On?`~N-cr`E)GT_(Gzj);VhRrTZ!^-ph00000 LNkvXXu0mjf-XL5W diff --git a/mods/farming_plus/textures/farming_potato_2.png b/mods/farming_plus/textures/farming_potato_2.png index 8b7ccd426ce3053d1ed6487fedf5a01df123cdbe..3952374a23fa0b8dec6c8cd8dd51b71f012d2999 100644 GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJEuJopAr-gYPBi3eHsEp9RSCPY z(lX`zVZ$5N2G14tb{w1!tsT9}sl* zt!8^sqBZM%zN~NK{+q|{ePD2qdiQnfpD!Vi!K*UA`v3AtW}MM*bg9u9;deaq53(-U zv9~f>L+`Fdj&E-W(*>XXP9n3rycXi_#!Nd@h<8M1@_zwk}Icw+a9OV>g^ cpE-U>S7Xj9t6ws+l|WALboFyt=akR{0L9Z_0RR91 literal 262 zcmV+h0r~!kP)c=(^b M07*qoM6N<$f|ed|-v9sr diff --git a/mods/farming_plus/textures/farming_potato_3.png b/mods/farming_plus/textures/farming_potato_3.png index cc29ef3c98617ee182fe6d8e11185bfe380df57e..7aa71c70e00b7d6cfa0289ef96af5c7615d4e810 100644 GIT binary patch literal 370 zcmV-&0ge8NP)+4rwn)ALpd={KR>>;>_qfD#8i*~E!xB^=PanT2krlksbwx{ZSPlS{ zlXF|wzXk0%h&SMgK=K{{1g(tB$pTOUA^;FC{cd%VlUVbQE}ejTg@d8wxCxETR{(++ zo2}?NF|p(9^)du+163{r|2*7J<}#Q@^d|tz?ZUe8q`8M<2?1`$Xn7Y1R7ze-DKvJq z0j&U~w!y1=gCN9SYS%C)Z^7C{RYr_yG=SA|f}bpdfWYly>FTnL0jPT**EBy!;^!v~ z)mGAxefHHdQkyVM00p0g(aA4n@Uo5p@P^d^7N_Ytbpw-z>{%<-pKFok4N9{=$*>`? QMgRZ+07*qoM6N<$f-G#E6aWAK literal 415 zcmV;Q0bu@#P)noCY}Os{dzaXJwF+7G-$-`ZL4VuiqI|R3#a{ zeEiO^p!z5y0|Ns?WSzzT0G}O1FVu+lbqn<$?f+4Ln}@H6BP!rO*a33|N6u5<=YPi0Uj=fUqAjZtm-<&NHDr= z6IK6v=IOv~aZA^Rv*Vhq{xgsQ?32{~$2HsH)r8@s@Cvj4fB!Ks{QCWyfrW*MK}?dL zfsu)U;qTA?4DVilWLVR44!<{2I_ywv3@SDLAAlo(F;Ze+so{S{CR7DKzWrj@HuW+i z1Gyl&0e`?T5i;Q4pFa!~8DRNAl7XaHKnA%1)^O)f-f$GFS^zYtfCs)>TWtOOk?Kj2x!dt!{xT32;qWhcTay;i| zMSKFVMIa!ycZxBM<{adr>LZ^m1ORazJ!hbj0HIqUQ^>{5~ce9 z5PBm3XglYoQ~OV literal 0 HcmV?d00001 diff --git a/mods/farming_plus/textures/potato_poisonous.png b/mods/farming_plus/textures/potato_poisonous.png new file mode 100644 index 0000000000000000000000000000000000000000..849489fdc8784142c7ba561067b429dd160fae3b GIT binary patch literal 504 zcmVp!SVF}x4+|(Uelyhq>$mGq?CN$-Q}(c2q6OhNx%>A1N;C#zz?X)fcR#ocsw2~ zfxcgeG>Sh9fH-|I!o1v0O7PvuO}D3rsz$AfRdyonB4rNCh}HEbQIi13-=CL7?k+6( zx(`e7(s+nJ=^7E&XRRFJ6yiz#nLQLA`6H%~-D6Za{T2ZP1;pYl%*L8N!joJLKt%3o z%OVGA1VVHXjsaM21duRk4v5REHjytFBA+ohfJmPAl{}zogfZXD*dNe}qelRyoa9ac zx?Mu|GFE~dFfrZWE<;mCClWo@fQ(@o zy-uzM$kBTZATezviXaeSmz%L(u{ajuov=OE^?M>lI~a(|$z285BjlR@Tvw8l6k?sc z;x5od0FtK;`Z<8)G}SD(t#>)Gs{pzQJ@JSj=o)fD%8NKncU31LB7iCb`%^(io${Lg u8R5nR4ipfbakthrdmn&AhyO}emjT~OZ_Wm?jj~1n0000