diff --git a/mods/vipworld/bushes/depends.txt b/mods/vipworld/bushes/depends.txt new file mode 100644 index 00000000..17c1df49 --- /dev/null +++ b/mods/vipworld/bushes/depends.txt @@ -0,0 +1,3 @@ +default +stonage? +sumpf? diff --git a/mods/vipworld/bushes/init.lua b/mods/vipworld/bushes/init.lua new file mode 100644 index 00000000..0079d42f --- /dev/null +++ b/mods/vipworld/bushes/init.lua @@ -0,0 +1,128 @@ +-- Bushes Mod by Mossmanikin, Evergreen, & Neuromancer +-- The initial code for this was taken from Mossmanikin's Grasses Mod, +-- then heavilly modified by Neuromancer for this mod. +-- Mossmanikin also greatly helped with providing samples for coding. +-- bush leaf textures are from VannessaE's moretrees mod. +-- (Leaf texture created by RealBadAngel or VanessaE) +-- Branch textures created by Neuromancer. + +-- support for i18n + abstract_bushes = {} + + minetest.register_node("bushes:youngtree2_bottom", { + description = "Young Tree 2 (bottom)", + drawtype="nodebox", + tiles = {"bushes_youngtree2trunk.png"}, + inventory_image = "bushes_youngtree2trunk_inv.png", + wield_image = "bushes_youngtree2trunk_inv.png", +paramtype = "light", + walkable = false, + is_ground_content = true, +node_box = { + type = "fixed", + fixed = { + --{0.375000,-0.500000,-0.500000,0.500000,0.500000,-0.375000}, --NodeBox 1 + {-0.0612,-0.500000,-0.500000,0.0612,0.500000,-0.375000}, --NodeBox 1 + } +}, + groups = {snappy=3,flammable=2}, + sounds = default.node_sound_leaves_defaults(), + drop = 'default:stick' +}) + + local BushBranchCenter = { {1,1}, {3,2} } +for i in pairs(BushBranchCenter) do + local Num = BushBranchCenter[i][1] + local TexNum = BushBranchCenter[i][2] + minetest.register_node("bushes:bushbranches"..Num, { + description = "Bush Branches @1", Num, + drawtype = "nodebox", + tiles = { + "bushes_leaves_"..TexNum..".png", + "bushes_branches_center_"..TexNum..".png" + }, + node_box = { + type = "fixed", + fixed = { + {0, -1/2, -1/2, -1/4, 1/2, 1/2}, + {0, -1/2, -1/2, 1/4, 1/2, 1/2} + }, + }, + selection_box = { + type = "fixed", + fixed = {-1/2, -1/2, -1/2, 1/2, 1/2, 1/2}, + }, + inventory_image = "bushes_branches_center_"..TexNum..".png", + paramtype = "light", + paramtype2 = "facedir", + sunlight_propagates = true, + groups = { + -- tree=1, -- MM: disabled because some recipes use group:tree for trunks + snappy=3, + flammable=2, + leaves=1 + }, + sounds = default.node_sound_leaves_defaults(), + drop = 'default:stick 4' + }) +end + +local BushBranchSide = { {2,1}, {4,2} } +for i in pairs(BushBranchSide) do + local Num = BushBranchSide[i][1] + local TexNum = BushBranchSide[i][2] + minetest.register_node("bushes:bushbranches"..Num, { + description = "Bush Branches @1", Num, + drawtype = "nodebox", + tiles = { +--[[top]] "bushes_leaves_"..TexNum..".png", +--[[bottom]]"bushes_branches_center_"..TexNum..".png", +--[[right]] "bushes_branches_left_"..TexNum..".png", +--[[left]] "bushes_branches_right_"..TexNum..".png", -- MM: We could also mirror the previous here, +--[[back]] "bushes_branches_center_"..TexNum..".png",-- unless U really want 'em 2 B different +--[[front]] "bushes_branches_right_"..TexNum..".png" + }, + node_box = { + type = "fixed", + fixed = { +-- { left , bottom , front, right , top , back } + {0.137748,-0.491944, 0.5 ,-0.125000,-0.179444,-0.007790}, --NodeBox 1 + {0.262748,-0.185995, 0.5 ,-0.237252, 0.126505,-0.260269}, --NodeBox 2 + {0.500000, 0.125000, 0.5 ,-0.500000, 0.500000,-0.500000}, --NodeBox 3 + }, + }, + selection_box = { + type = "fixed", + fixed = {-1/2, -1/2, -1/2, 1/2, 1/2, 1/2}, + }, + inventory_image = "bushes_branches_right_"..TexNum..".png", + paramtype = "light", + paramtype2 = "facedir", + sunlight_propagates = true, + groups = { + -- tree=1, -- MM: disabled because some recipes use group:tree for trunks + snappy=3, + flammable=2, + leaves=1 + }, + sounds = default.node_sound_leaves_defaults(), + drop = 'default:stick 3' + }) +end + +local BushLeafNode = { {1}, {2}} +for i in pairs(BushLeafNode) do + local Num = BushLeafNode[i][1] + minetest.register_node("bushes:BushLeaves"..Num, { + description = "Bush Leaves @1", Num, + drawtype = "allfaces_optional", + tiles = {"bushes_leaves_"..Num..".png"}, + paramtype = "light", + groups = { -- MM: Should we add leafdecay? + snappy=3, + flammable=2, + attached_node=1 + }, + sounds = default.node_sound_leaves_defaults(), + }) +end diff --git a/mods/vipworld/bushes/textures/bushes_branches_center_1.png b/mods/vipworld/bushes/textures/bushes_branches_center_1.png new file mode 100644 index 00000000..bac3ee45 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_center_1.png differ diff --git a/mods/vipworld/bushes/textures/bushes_branches_center_2.png b/mods/vipworld/bushes/textures/bushes_branches_center_2.png new file mode 100644 index 00000000..c21edf6a Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_center_2.png differ diff --git a/mods/vipworld/bushes/textures/bushes_branches_left_1.png b/mods/vipworld/bushes/textures/bushes_branches_left_1.png new file mode 100644 index 00000000..120f100f Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_left_1.png differ diff --git a/mods/vipworld/bushes/textures/bushes_branches_left_2.png b/mods/vipworld/bushes/textures/bushes_branches_left_2.png new file mode 100644 index 00000000..1c17bac3 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_left_2.png differ diff --git a/mods/vipworld/bushes/textures/bushes_branches_right_1.png b/mods/vipworld/bushes/textures/bushes_branches_right_1.png new file mode 100644 index 00000000..af5de67c Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_right_1.png differ diff --git a/mods/vipworld/bushes/textures/bushes_branches_right_2.png b/mods/vipworld/bushes/textures/bushes_branches_right_2.png new file mode 100644 index 00000000..8fb83323 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_branches_right_2.png differ diff --git a/mods/vipworld/bushes/textures/bushes_leaves_1.png b/mods/vipworld/bushes/textures/bushes_leaves_1.png new file mode 100644 index 00000000..594c9583 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_leaves_1.png differ diff --git a/mods/vipworld/bushes/textures/bushes_leaves_2.png b/mods/vipworld/bushes/textures/bushes_leaves_2.png new file mode 100644 index 00000000..e6de4829 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_leaves_2.png differ diff --git a/mods/vipworld/bushes/textures/bushes_youngtree2trunk.png b/mods/vipworld/bushes/textures/bushes_youngtree2trunk.png new file mode 100644 index 00000000..ea685e3a Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_youngtree2trunk.png differ diff --git a/mods/vipworld/bushes/textures/bushes_youngtree2trunk_inv.png b/mods/vipworld/bushes/textures/bushes_youngtree2trunk_inv.png new file mode 100644 index 00000000..7d6728f2 Binary files /dev/null and b/mods/vipworld/bushes/textures/bushes_youngtree2trunk_inv.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BlockBranch1.png b/mods/vipworld/bushes/textures/old & unused/BlockBranch1.png new file mode 100644 index 00000000..28fe91fe Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BlockBranch1.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BlockBranch1L.png b/mods/vipworld/bushes/textures/old & unused/BlockBranch1L.png new file mode 100644 index 00000000..1d8a8e2c Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BlockBranch1L.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BlockBranch1R.png b/mods/vipworld/bushes/textures/old & unused/BlockBranch1R.png new file mode 100644 index 00000000..514b888b Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BlockBranch1R.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranches1.png b/mods/vipworld/bushes/textures/old & unused/BushBranches1.png new file mode 100644 index 00000000..5bb2b46f Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranches1.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranches1sm.png b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm.png new file mode 100644 index 00000000..5574f38f Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranches1sm2.png b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm2.png new file mode 100644 index 00000000..6ffd2f36 Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm2.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranches1sm3.png b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm3.png new file mode 100644 index 00000000..5bb9bf5b Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm3.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranches1sm4.png b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm4.png new file mode 100644 index 00000000..b204feff Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranches1sm4.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranchesCenter.png b/mods/vipworld/bushes/textures/old & unused/BushBranchesCenter.png new file mode 100644 index 00000000..0c9b5af1 Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranchesCenter.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranchesSide1.png b/mods/vipworld/bushes/textures/old & unused/BushBranchesSide1.png new file mode 100644 index 00000000..ca95dd3c Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranchesSide1.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/BushBranchesSide2.png b/mods/vipworld/bushes/textures/old & unused/BushBranchesSide2.png new file mode 100644 index 00000000..d62499e8 Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/BushBranchesSide2.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/blank.png b/mods/vipworld/bushes/textures/old & unused/blank.png new file mode 100644 index 00000000..ed495a82 Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/blank.png differ diff --git a/mods/vipworld/bushes/textures/old & unused/moretrees_pine_leaves3.png b/mods/vipworld/bushes/textures/old & unused/moretrees_pine_leaves3.png new file mode 100644 index 00000000..57d077d0 Binary files /dev/null and b/mods/vipworld/bushes/textures/old & unused/moretrees_pine_leaves3.png differ diff --git a/mods/vipworld/bushes_classic/cooking.lua b/mods/vipworld/bushes_classic/cooking.lua new file mode 100644 index 00000000..71cae915 --- /dev/null +++ b/mods/vipworld/bushes_classic/cooking.lua @@ -0,0 +1,102 @@ +-- support for i18n + +-- Basket + +minetest.register_craft({ + output = "bushes:basket_empty", + recipe = { + { "default:stick", "default:stick", "default:stick" }, + { "", "default:stick", "" }, + }, +}) + +-- override farming_plus strawberry and add food_ group +if minetest.get_modpath("farming_plus") then + + minetest.override_item("farming_plus:strawberry_item", { + groups = {food_strawberry = 1, food_berry = 1, flammable = 2}, + }) +end + + +for i, berry in ipairs(bushes_classic.bushes) do + + local groups = {food_berry = 1, flammable = 2} + + if berry ~= "mixed_berry" then + + groups["food_" .. berry] = 1 + + -- Berry + minetest.register_craftitem(":bushes:"..berry, { + description = bushes_classic.bushes_descriptions[i][1], + inventory_image = "bushes_"..berry..".png", + groups = groups, + on_use = minetest.item_eat(1), + }) + end + + -- Raw pie + minetest.register_craftitem(":bushes:"..berry.."_pie_raw", { + description = bushes_classic.bushes_descriptions[i][2], + inventory_image = "bushes_"..berry.."_pie_raw.png", + on_use = minetest.item_eat(4), + }) + + if berry ~= "mixed_berry" then + + minetest.register_craft({ + output = "bushes:"..berry.."_pie_raw 1", + recipe = { + { "group:food_sugar", "farming:flour", "group:food_sugar" }, + { "group:food_"..berry, "group:food_"..berry, "group:food_"..berry }, + }, + }) + else + minetest.register_craft({ + output = "bushes:mixed_berry_pie_raw 2", + recipe = { + { "group:food_sugar", "farming:flour", "group:food_sugar" }, + { "group:food_berry", "group:food_berry", "group:food_berry" }, + { "group:food_berry", "group:food_berry", "group:food_berry" }, + }, + }) + end + + -- Cooked pie + minetest.register_craftitem(":bushes:"..berry.."_pie_cooked", { + description = bushes_classic.bushes_descriptions[i][3], + inventory_image = "bushes_"..berry.."_pie_cooked.png", + on_use = minetest.item_eat(6), + }) + + minetest.register_craft({ + type = "cooking", + output = "bushes:"..berry.."_pie_cooked", + recipe = "bushes:"..berry.."_pie_raw", + cooktime = 30, + }) + + -- Slice of pie + minetest.register_craftitem(":bushes:"..berry.."_pie_slice", { + description = bushes_classic.bushes_descriptions[i][4], + inventory_image = "bushes_"..berry.."_pie_slice.png", + on_use = minetest.item_eat(1), + }) + + minetest.register_craft({ + output = "bushes:"..berry.."_pie_slice 6", + recipe = { + { "bushes:"..berry.."_pie_cooked" }, + }, + }) + + -- Basket with pies + minetest.register_craft({ + output = "bushes:basket_"..berry.." 1", + recipe = { + { "bushes:"..berry.."_pie_cooked", "bushes:"..berry.."_pie_cooked", "bushes:"..berry.."_pie_cooked" }, + { "", "bushes:basket_empty", "" }, + }, + }) +end diff --git a/mods/vipworld/bushes_classic/image_credits.txt b/mods/vipworld/bushes_classic/image_credits.txt new file mode 100644 index 00000000..a4ddc519 --- /dev/null +++ b/mods/vipworld/bushes_classic/image_credits.txt @@ -0,0 +1,5 @@ +strawberry: http://www.clker.com/clipart-4060.html +blueberry: http://www.clker.com/clipart-cerezafiro12.html +blackberry: http://www.clker.com/clipart-blackberry-2.html +raspberry: http://www.clker.com/clipart-simple-raspberry.html +gooseberry: http://www.clker.com/clipart-26281.html diff --git a/mods/vipworld/bushes_classic/init.lua b/mods/vipworld/bushes_classic/init.lua new file mode 100644 index 00000000..3cbc7191 --- /dev/null +++ b/mods/vipworld/bushes_classic/init.lua @@ -0,0 +1,31 @@ +-- Bushes classic mod originally by unknown +-- now maintained by VanessaE + +bushes_classic = {} + +-- support for i18n + +bushes_classic.bushes = { + "strawberry", + "blackberry", + "blueberry", + "raspberry", + "gooseberry", + "mixed_berry" +} + +bushes_classic.bushes_descriptions = { + {"Strawberry", "Raw Strawberry pie", "Cooked Strawberry pie", "Slice of Strawberry pie", "Basket with Strawberry pies", "Strawberry Bush"}, + {"Blackberry", "Raw Blackberry pie", "Cooked Blackberry pie", "Slice of Blackberry pie", "Basket with Blackberry pies", "Blackberry Bush"}, + {"Blueberry", "Raw Blueberry pie", "Cooked Blueberry pie", "Slice of Blueberry pie", "Basket with Blueberry pies", "Blueberry Bush"}, + {"Raspberry", "Raw Raspberry pie", "Cooked Raspberry pie", "Slice of Raspberry pie", "Basket with Raspberry pies", "Raspberry Bush"}, + {"Gooseberry", "Raw Gooseberry pie", "Cooked Gooseberry pie", "Slice of Gooseberry pie", "Basket with Gooseberry pies", "Gooseberry Bush"}, + {"Mixed Berry", "Raw Mixed Berry pie", "Cooked Mixed Berry pie", "Slice of Mixed Berry pie", "Basket with Mixed Berry pies", "Currently fruitless Bush"} +} + +local modpath = minetest.get_modpath('bushes_classic') +dofile(modpath..'/cooking.lua') +dofile(modpath..'/nodes.lua') + +minetest.register_alias("bushes:basket_pies", "bushes:basket_strawberry") + diff --git a/mods/vipworld/bushes_classic/models/bushes_basket_empty.obj b/mods/vipworld/bushes_classic/models/bushes_basket_empty.obj new file mode 100644 index 00000000..0179c318 --- /dev/null +++ b/mods/vipworld/bushes_classic/models/bushes_basket_empty.obj @@ -0,0 +1,46 @@ +# Blender v2.73 (sub 0) OBJ File: 'basket-of-pies.blend' +# www.blender.org +o basket_Cube.001 +v -0.500000 -0.500000 0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.500000 +v -0.500000 0.500000 -0.500000 +v 0.500000 0.500000 -0.500000 +v 0.500000 0.500000 0.500000 +v -0.437500 0.500000 0.437500 +v -0.437500 0.500000 -0.437500 +v 0.437500 0.500000 -0.437500 +v 0.437500 0.500000 0.437500 +v -0.437500 -0.437500 0.437500 +v -0.437500 -0.437500 -0.437500 +v 0.437500 -0.437500 -0.437500 +v 0.437500 -0.437500 0.437500 +vt 0.484848 0.984848 +vt 0.015152 0.984848 +vt 0.015152 0.515152 +vt 0.484848 0.515152 +vt 0.515152 0.984848 +vt 0.515152 0.515152 +vt 0.984848 0.515152 +vt 0.984848 0.984848 +vt 0.954545 0.545455 +vt 0.545455 0.545455 +vt 0.954545 0.954545 +vt 0.545455 0.954545 +s off +f 5/1 6/2 2/3 1/4 +f 6/1 7/2 3/3 2/4 +f 7/1 8/2 4/3 3/4 +f 8/1 5/2 1/3 4/4 +f 1/5 2/6 3/7 4/8 +f 5/6 8/7 12/9 9/10 +f 8/7 7/8 11/11 12/9 +f 7/8 6/5 10/12 11/11 +f 6/5 5/6 9/10 10/12 +f 9/1 12/2 16/3 13/4 +f 12/1 11/2 15/3 16/4 +f 11/1 10/2 14/3 15/4 +f 10/1 9/2 13/3 14/4 +f 13/10 16/9 15/11 14/12 diff --git a/mods/vipworld/bushes_classic/models/bushes_basket_full.obj b/mods/vipworld/bushes_classic/models/bushes_basket_full.obj new file mode 100644 index 00000000..5a3e1a81 --- /dev/null +++ b/mods/vipworld/bushes_classic/models/bushes_basket_full.obj @@ -0,0 +1,330 @@ +# Blender v2.73 (sub 0) OBJ File: 'basket-of-pies.blend' +# www.blender.org +o pies_Cylinder +v -0.089468 -0.116804 -0.438000 +v -0.116691 -0.091480 -0.438000 +v 0.024696 0.005921 -0.404659 +v -0.002527 0.031245 -0.404659 +v 0.121480 0.109962 -0.309713 +v 0.094258 0.135286 -0.309713 +v 0.186149 0.179480 -0.167615 +v 0.158927 0.204804 -0.167615 +v 0.208858 0.203891 0.000000 +v 0.181635 0.229215 0.000000 +v 0.186149 0.179480 0.167615 +v 0.158927 0.204804 0.167615 +v 0.121480 0.109962 0.309713 +v 0.094258 0.135286 0.309713 +v 0.024696 0.005921 0.404659 +v -0.002527 0.031245 0.404659 +v -0.089468 -0.116804 0.438000 +v -0.116691 -0.091480 0.438000 +v -0.230856 -0.214204 0.404659 +v -0.327640 -0.318245 0.309713 +v -0.392309 -0.387763 0.167615 +v -0.415018 -0.412175 -0.000000 +v -0.392309 -0.387763 -0.167615 +v -0.327640 -0.318245 -0.309713 +v -0.230856 -0.214204 -0.404659 +v -0.135230 -0.074234 -0.383250 +v -0.035336 0.033150 -0.354077 +v 0.049350 0.124186 -0.270999 +v 0.105936 0.185014 -0.146663 +v 0.125806 0.206374 0.000000 +v 0.105936 0.185014 0.146663 +v 0.049350 0.124186 0.270999 +v -0.035336 0.033150 0.354077 +v -0.135230 -0.074234 0.383250 +v -0.235124 -0.181618 0.354077 +v -0.319810 -0.272654 0.270999 +v -0.376395 -0.333482 0.146663 +v -0.396266 -0.354842 -0.000000 +v -0.376395 -0.333482 -0.146664 +v -0.319810 -0.272654 -0.270999 +v -0.235124 -0.181618 -0.354077 +v 0.071215 -0.085999 -0.438000 +v 0.041377 -0.063816 -0.438000 +v 0.171221 0.048513 -0.404659 +v 0.141384 0.070697 -0.404659 +v 0.256002 0.162547 -0.309713 +v 0.226165 0.184731 -0.309713 +v 0.312652 0.238743 -0.167615 +v 0.282814 0.260926 -0.167615 +v 0.332544 0.265499 0.000000 +v 0.302707 0.287682 0.000000 +v 0.312652 0.238743 0.167615 +v 0.282814 0.260926 0.167615 +v 0.256002 0.162547 0.309713 +v 0.226165 0.184731 0.309713 +v 0.171221 0.048513 0.404659 +v 0.141383 0.070697 0.404659 +v 0.071215 -0.085999 0.438000 +v 0.041377 -0.063816 0.438000 +v -0.058629 -0.198328 0.404659 +v -0.058629 -0.198328 -0.404659 +v 0.021058 -0.048709 -0.383250 +v 0.108564 0.068989 -0.354077 +v 0.182747 0.168769 -0.270999 +v 0.232315 0.235440 -0.146663 +v 0.249721 0.258852 0.000000 +v 0.232315 0.235440 0.146663 +v 0.182747 0.168769 0.270999 +v 0.108564 0.068989 0.354077 +v 0.021058 -0.048709 0.383250 +v -0.066448 -0.166408 0.354077 +v -0.140632 -0.266188 0.270999 +v -0.190200 -0.332858 0.146663 +v -0.207605 -0.356270 -0.000000 +v -0.190199 -0.332858 -0.146664 +v -0.140631 -0.266188 -0.270999 +v -0.066448 -0.166408 -0.354077 +v 0.220377 -0.057101 -0.438000 +v 0.188086 -0.038671 -0.438000 +v 0.303465 0.088470 -0.404659 +v 0.271175 0.106901 -0.404659 +v 0.373905 0.211880 -0.309713 +v 0.341614 0.230311 -0.309713 +v 0.420971 0.294340 -0.167615 +v 0.388680 0.312771 -0.167615 +v 0.437498 0.323296 0.000000 +v 0.405208 0.341727 0.000000 +v 0.420971 0.294340 0.167615 +v 0.388680 0.312771 0.167615 +v 0.373905 0.211880 0.309713 +v 0.341614 0.230311 0.309713 +v 0.303465 0.088470 0.404659 +v 0.271175 0.106901 0.404659 +v 0.220377 -0.057101 0.438000 +v 0.188086 -0.038671 0.438000 +v 0.104997 -0.184242 0.404659 +v 0.104997 -0.184242 -0.404659 +v 0.166096 -0.026119 -0.383250 +v 0.238799 0.101256 -0.354077 +v 0.300433 0.209240 -0.270999 +v 0.341616 0.281392 -0.146663 +v 0.356078 0.306728 0.000000 +v 0.341616 0.281392 0.146664 +v 0.300433 0.209240 0.270999 +v 0.238799 0.101256 0.354077 +v 0.166096 -0.026119 0.383250 +v 0.093393 -0.153495 0.354077 +v 0.031759 -0.261478 0.270999 +v -0.009424 -0.333631 0.146663 +v -0.023885 -0.358967 -0.000000 +v -0.009424 -0.333631 -0.146664 +v 0.031759 -0.261478 -0.270999 +v 0.093394 -0.153495 -0.354077 +vt 0.000000 0.054054 +vt 0.000000 0.000000 +vt 0.062500 0.000000 +vt 0.062500 0.054054 +vt 0.125000 0.000000 +vt 0.125000 0.054054 +vt 0.187500 0.000000 +vt 0.187500 0.054054 +vt 0.250000 0.000000 +vt 0.250000 0.054054 +vt 0.312500 0.000000 +vt 0.312500 0.054054 +vt 0.375000 0.000000 +vt 0.375000 0.054054 +vt 0.437500 0.000000 +vt 0.437500 0.054054 +vt 0.500000 0.000000 +vt 0.500000 0.054054 +vt 0.055610 0.293778 +vt 0.110171 0.184656 +vt 0.123905 0.225763 +vt 0.076165 0.321244 +vt 0.316174 0.801264 +vt 0.253798 0.852938 +vt 0.186282 0.852938 +vt 0.123905 0.801264 +vt 0.076165 0.705782 +vt 0.050327 0.581029 +vt 0.050327 0.445997 +vt 0.186282 0.174088 +vt 0.253798 0.174089 +vt 0.316174 0.225763 +vt 0.363915 0.321245 +vt 0.389752 0.445997 +vt 0.389752 0.581029 +vt 0.363915 0.705782 +vt 0.384468 0.733249 +vt 0.329907 0.842371 +vt 0.055610 0.733249 +vt 0.026082 0.590674 +vt 0.384468 0.293778 +vt 0.413996 0.436353 +vt 0.258619 0.901428 +vt 0.181458 0.901428 +vt 0.181458 0.125599 +vt 0.258619 0.125599 +vt 0.026082 0.436353 +vt 0.413996 0.590674 +vt 0.110171 0.842371 +vt 0.329907 0.184656 +vt 0.076566 0.705251 +vt 0.050729 0.580498 +vt 0.050729 0.445466 +vt 0.076566 0.320713 +vt 0.124307 0.225232 +vt 0.186684 0.173557 +vt 0.254199 0.173557 +vt 0.316576 0.225232 +vt 0.364317 0.320713 +vt 0.390154 0.445466 +vt 0.390154 0.580498 +vt 0.364317 0.705251 +vt 0.316576 0.800732 +vt 0.254199 0.852407 +vt 0.186684 0.852407 +vt 0.124307 0.800732 +vt 0.110573 0.841838 +vt 0.056012 0.732716 +vt 0.330309 0.841838 +vt 0.259022 0.900894 +vt 0.026484 0.590141 +vt 0.026484 0.435819 +vt 0.414398 0.435819 +vt 0.414398 0.590141 +vt 0.181861 0.900894 +vt 0.384870 0.732716 +vt 0.384870 0.293245 +vt 0.389637 0.582094 +vt 0.363799 0.706847 +vt 0.316059 0.802329 +vt 0.253682 0.854003 +vt 0.186166 0.854003 +vt 0.123790 0.802329 +vt 0.076049 0.706847 +vt 0.050212 0.582094 +vt 0.050212 0.447062 +vt 0.076049 0.322309 +vt 0.123790 0.226828 +vt 0.186166 0.175153 +vt 0.253682 0.175153 +vt 0.316058 0.226828 +vt 0.363799 0.322310 +vt 0.389637 0.447062 +vt 0.413881 0.437419 +vt 0.413881 0.591741 +vt 0.258504 0.126666 +vt 0.329792 0.185722 +vt 0.384353 0.734315 +vt 0.329792 0.843437 +vt 0.055495 0.294844 +vt 0.110056 0.185722 +vt 0.384353 0.294844 +vt 0.181343 0.126666 +vt 0.025967 0.437419 +g pies_Cylinder_pie +s off +f 1/1 2/2 4/3 3/4 +f 3/4 4/3 6/5 5/6 +f 5/6 6/5 8/7 7/8 +f 7/8 8/7 10/9 9/10 +f 9/10 10/9 12/11 11/12 +f 11/12 12/11 14/13 13/14 +f 13/14 14/13 16/15 15/16 +f 15/16 16/15 18/17 17/18 +f 20/19 19/20 35/21 36/22 +f 27/23 26/24 41/25 40/26 39/27 38/28 37/29 36/22 35/21 34/30 33/31 32/32 31/33 30/34 29/35 28/36 +f 6/37 4/38 27/23 28/36 +f 23/39 22/40 38/28 39/27 +f 12/41 10/42 30/34 31/33 +f 2/43 25/44 41/25 26/24 +f 4/38 2/43 26/24 27/23 +f 18/45 16/46 33/31 34/30 +f 21/47 20/19 36/22 37/29 +f 8/48 6/37 28/36 29/35 +f 24/49 23/39 39/27 40/26 +f 14/50 12/41 31/33 32/32 +f 19/20 18/45 34/30 35/21 +f 22/40 21/47 37/29 38/28 +f 10/42 8/48 29/35 30/34 +f 25/44 24/49 40/26 41/25 +f 16/46 14/50 32/32 33/31 +f 42/1 43/2 45/3 44/4 +f 44/4 45/3 47/5 46/6 +f 46/6 47/5 49/7 48/8 +f 48/8 49/7 51/9 50/10 +f 50/10 51/9 53/11 52/12 +f 52/12 53/11 55/13 54/14 +f 54/14 55/13 57/15 56/16 +f 56/16 57/15 59/17 58/18 +f 63/51 62/52 77/53 76/54 75/55 74/56 73/57 72/58 71/59 70/60 69/61 68/62 67/63 66/64 65/65 64/66 +f 47/67 45/68 63/51 64/66 +f 53/69 51/70 66/64 67/63 +f 43/71 61/72 77/53 62/52 +f 45/68 43/71 62/52 63/51 +f 59/73 57/74 69/61 70/60 +f 49/75 47/67 64/66 65/65 +f 55/76 53/69 67/63 68/62 +f 60/77 59/73 70/60 71/59 +f 51/70 49/75 65/65 66/64 +f 57/74 55/76 68/62 69/61 +f 78/1 79/2 81/3 80/4 +f 80/4 81/3 83/5 82/6 +f 82/6 83/5 85/7 84/8 +f 84/8 85/7 87/9 86/10 +f 86/10 87/9 89/11 88/12 +f 88/12 89/11 91/13 90/14 +f 90/14 91/13 93/15 92/16 +f 92/16 93/15 95/17 94/18 +f 99/78 98/79 113/80 112/81 111/82 110/83 109/84 108/85 107/86 106/87 105/88 104/89 103/90 102/91 101/92 100/93 +f 83/94 81/95 99/78 100/93 +f 89/96 87/97 102/91 103/90 +f 79/98 97/99 113/80 98/79 +f 81/95 79/98 98/79 99/78 +f 95/100 93/101 105/88 106/87 +f 85/102 83/94 100/93 101/92 +f 91/103 89/96 103/90 104/89 +f 96/104 95/100 106/87 107/86 +f 87/97 85/102 101/92 102/91 +f 93/101 91/103 104/89 105/88 +o basket_Cube.001 +v -0.500000 -0.500000 0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.500000 +v -0.500000 0.500000 -0.500000 +v 0.500000 0.500000 -0.500000 +v 0.500000 0.500000 0.500000 +v -0.437500 0.500000 0.437500 +v -0.437500 0.500000 -0.437500 +v 0.437500 0.500000 -0.437500 +v 0.437500 0.500000 0.437500 +v -0.437500 -0.437500 0.437500 +v -0.437500 -0.437500 -0.437500 +v 0.437500 -0.437500 -0.437500 +v 0.437500 -0.437500 0.437500 +vt 0.484848 0.984848 +vt 0.015152 0.984848 +vt 0.015152 0.515152 +vt 0.484848 0.515152 +vt 0.515152 0.984848 +vt 0.515152 0.515152 +vt 0.984848 0.515152 +vt 0.984848 0.984848 +vt 0.954545 0.545455 +vt 0.545455 0.545455 +vt 0.954545 0.954545 +vt 0.545455 0.954545 +g basket_Cube.001_basket +s off +f 118/105 119/106 115/107 114/108 +f 119/105 120/106 116/107 115/108 +f 120/105 121/106 117/107 116/108 +f 121/105 118/106 114/107 117/108 +f 114/109 115/110 116/111 117/112 +f 118/110 121/111 125/113 122/114 +f 121/111 120/112 124/115 125/113 +f 120/112 119/109 123/116 124/115 +f 119/109 118/110 122/114 123/116 +f 122/105 125/106 129/107 126/108 +f 125/105 124/106 128/107 129/108 +f 124/105 123/106 127/107 128/108 +f 123/105 122/106 126/107 127/108 +f 126/114 129/113 128/115 127/116 diff --git a/mods/vipworld/bushes_classic/models/bushes_bush.obj b/mods/vipworld/bushes_classic/models/bushes_bush.obj new file mode 100644 index 00000000..a69bfce4 --- /dev/null +++ b/mods/vipworld/bushes_classic/models/bushes_bush.obj @@ -0,0 +1,329 @@ +# Blender v2.73 (sub 0) OBJ File: 'bush.blend' +# www.blender.org +o nodebox-4 +v 0.467076 -0.122686 -0.190481 +v -0.453590 -0.119789 -0.192145 +v 0.420865 -0.181680 -0.171396 +v -0.429008 -0.188000 -0.182314 +v -0.450977 0.041977 -0.191409 +v -0.271687 -0.294075 -0.114977 +v -0.096925 -0.495759 -0.044091 +v -0.070286 -0.344209 -0.030750 +v -0.163971 -0.173437 -0.403793 +v -0.188139 -0.116431 0.446425 +v 0.069865 0.462329 0.170043 +v -0.175980 -0.180649 0.417932 +v -0.184276 0.039248 0.437271 +v -0.121692 -0.319322 0.290049 +v -0.039557 -0.495759 0.097032 +v -0.029307 -0.346230 0.070496 +v -0.440307 0.205163 -0.203598 +v -0.440281 0.206327 0.191785 +v -0.339366 0.327086 -0.144329 +v -0.267923 0.418413 0.108270 +v -0.264994 0.405691 -0.113216 +v 0.173823 0.186657 0.424935 +v -0.172109 0.470396 -0.073638 +v -0.090743 0.491063 -0.039539 +v -0.173625 0.180559 0.412022 +v 0.108534 0.404586 0.263698 +v -0.137870 0.317286 0.327397 +v 0.149454 0.342906 0.361857 +v -0.115069 0.426252 0.274637 +v 0.116858 -0.311812 0.284557 +v -0.074459 0.465500 0.178311 +v -0.036397 0.486640 0.094150 +v 0.044199 -0.495759 -0.101459 +v 0.034559 -0.377127 -0.079219 +v 0.116886 -0.299764 -0.276145 +v -0.172864 0.462259 0.069984 +v 0.173974 -0.178414 -0.411782 +v 0.191827 0.042411 -0.453422 +v 0.190055 -0.117435 -0.449613 +v -0.136929 0.321997 -0.339476 +v 0.101567 -0.495759 0.039664 +v 0.076778 -0.365788 0.030191 +v 0.292232 -0.320027 0.121743 +v -0.067752 0.451498 -0.167691 +v 0.433751 -0.189348 0.181586 +v 0.457624 0.044950 0.184732 +v 0.473778 -0.128221 0.198329 +v -0.113891 -0.307852 -0.282552 +v 0.081961 0.458662 -0.191580 +v 0.042947 0.491063 -0.093885 +v 0.109202 0.397842 -0.257691 +v 0.145450 0.328672 -0.343352 +v 0.191241 0.038411 0.444768 +v -0.184306 0.045052 -0.456452 +v -0.289997 -0.318897 0.117161 +v 0.182461 0.185982 -0.431178 +v 0.180190 0.469152 0.074510 +v 0.097292 0.491063 0.039804 +v 0.264954 0.412421 0.110505 +v 0.355939 0.336100 0.148277 +v -0.474575 0.042725 0.191924 +v -0.169486 0.185035 -0.418844 +v -0.445009 -0.118527 0.180804 +v 0.427054 0.187979 0.172057 +v 0.350926 0.339079 -0.143384 +v 0.189060 -0.125023 0.462241 +v 0.269270 -0.290650 -0.109472 +v 0.175816 -0.186803 0.429367 +v 0.259570 0.406980 -0.105942 +v -0.103158 0.398344 -0.255462 +v -0.339105 0.330270 0.137302 +v -0.186029 -0.123369 -0.460126 +v -0.418539 -0.180131 0.169838 +v 0.041492 0.491063 0.094145 +v 0.487251 0.041118 -0.191308 +v 0.173059 0.459504 -0.070716 +v 0.460259 0.206607 -0.196213 +v 0.108065 0.487446 -0.045199 +v -0.103423 0.491173 0.040772 +v -0.040665 0.496765 -0.107957 +v -0.070153 -0.343292 0.028053 +v -0.028215 -0.347521 -0.072596 +v 0.028031 -0.329368 0.067986 +v 0.075170 -0.358957 -0.031186 +v -0.037332 -0.495759 -0.099759 +v 0.099867 -0.495759 -0.041867 +v -0.095225 -0.495759 0.037440 +v 0.041974 -0.495759 0.095332 +v 0.001777 0.503796 -0.003546 +v 0.002321 -0.495758 -0.002214 +vt 0.875000 0.281250 +vt 1.000000 0.281250 +vt 1.000000 0.421875 +vt 0.875000 0.421875 +vt 0.375000 0.125000 +vt 0.500000 0.125000 +vt 0.500000 0.234375 +vt 0.375000 0.234375 +vt 0.625000 0.234375 +vt 0.625000 0.281250 +vt 0.500000 0.281250 +vt 0.500000 0.609375 +vt 0.500000 0.656250 +vt 0.375000 0.656250 +vt 0.375000 0.609375 +vt 0.625000 0.421875 +vt 0.500000 0.421875 +vt 0.375000 0.281250 +vt 0.375000 0.421875 +vt 0.125000 0.609375 +vt 0.125000 0.656250 +vt 0.000000 0.656250 +vt 0.000000 0.609375 +vt 0.846670 0.983596 +vt 0.823789 0.862038 +vt 0.861831 0.862038 +vt 0.500000 0.531250 +vt 0.375000 0.531250 +vt 0.234375 0.609375 +vt 0.234375 0.531250 +vt 0.875000 0.234375 +vt 0.750000 0.234375 +vt 0.750000 0.125000 +vt 0.875000 0.125000 +vt 0.125000 0.234375 +vt 0.125000 0.125000 +vt 0.234375 0.125000 +vt 0.234375 0.234375 +vt 0.125000 0.281250 +vt 0.234375 0.281250 +vt 0.234375 0.421875 +vt 0.125000 0.421875 +vt 0.125000 0.703125 +vt 0.000000 0.703125 +vt 0.875000 0.656250 +vt 0.750000 0.656250 +vt 0.750000 0.609375 +vt 0.875000 0.609375 +vt 0.625000 0.656250 +vt 0.625000 0.609375 +vt 0.234375 0.656250 +vt 0.375000 0.703125 +vt 0.234375 0.703125 +vt 0.125000 0.531250 +vt 0.875000 0.531250 +vt 1.000000 0.531250 +vt 1.000000 0.609375 +vt 0.500000 0.703125 +vt 0.000000 0.421875 +vt 0.000000 0.531250 +vt 0.875000 0.703125 +vt 0.750000 0.703125 +vt 0.328125 0.812500 +vt 0.328125 0.875000 +vt 0.265625 0.890625 +vt 0.265625 0.781250 +vt 0.750000 0.531250 +vt 1.000000 0.234375 +vt -0.000000 0.281250 +vt 0.000000 0.234375 +vt 0.375000 0.921875 +vt 0.328125 0.984375 +vt 0.562500 0.812500 +vt 0.500000 0.828125 +vt 0.625000 0.125000 +vt 0.625000 0.531250 +vt 0.970570 0.983596 +vt 0.918853 0.862038 +vt 0.983390 0.862038 +vt 1.000000 0.703125 +vt 1.000000 0.656250 +vt 0.694849 0.983596 +vt 0.653099 0.862038 +vt 0.703461 0.862038 +vt 0.453125 1.000000 +vt 0.437500 0.937500 +vt 0.546875 0.937500 +vt 0.375000 0.765625 +vt 0.625000 0.703125 +vt 0.750000 0.281250 +vt 0.000000 0.125000 +vt 0.781059 0.974219 +vt 0.740272 0.862038 +vt 0.773590 0.862038 +vt 0.823762 0.862067 +vt 0.773656 0.862066 +vt 0.800723 0.801332 +vt 0.750000 0.421875 +vt 1.000000 0.125000 +vt 0.881508 0.980225 +vt 0.923791 0.982865 +vt 0.819499 0.959318 +vt 0.634200 0.973424 +vt 0.659430 0.971277 +vt 0.724959 0.956989 +vt 0.755822 0.968617 +vt 0.125000 0.000000 +vt 0.234375 0.000000 +vt 0.375000 0.000000 +vt 0.500000 0.000000 +vt 0.750000 0.000000 +vt 0.875000 0.000000 +vt 1.000000 0.000000 +vt 0.625000 0.000000 +vt 0.000000 0.000000 +vt 0.618713 0.862038 +vt 0.453125 0.781250 +vt 0.484375 0.890625 +vt 0.406250 0.859375 +vt 0.738525 0.828462 +vt 0.741806 0.778103 +vt 0.777683 0.740596 +vt 0.827789 0.740597 +vt 0.862920 0.774201 +vt 0.859639 0.824560 +s off +f 63/1 10/2 13/3 61/4 +f 67/5 35/6 37/7 3/8 +f 9/9 72/10 39/11 37/7 +f 52/12 51/13 69/14 65/15 +f 72/10 54/16 38/17 39/11 +f 1/18 39/11 38/17 75/19 +f 28/20 26/21 29/22 27/23 +f 82/24 33/25 85/26 +f 75/19 38/17 56/27 77/28 +f 77/28 65/15 60/29 64/30 +f 73/31 4/32 6/33 55/34 +f 68/35 30/36 43/37 45/38 +f 66/39 47/40 46/41 53/42 +f 11/43 31/44 29/22 26/21 +f 20/45 21/46 19/47 71/48 +f 70/49 40/50 19/47 21/46 +f 59/51 69/14 76/52 57/53 +f 3/8 37/7 39/11 1/18 +f 28/20 22/54 64/30 60/29 +f 71/48 18/55 25/56 27/57 +f 69/14 51/13 49/58 76/52 +f 13/59 53/42 22/54 25/60 +f 36/61 23/62 21/46 20/45 +f 58/63 74/64 11/65 57/66 +f 57/53 11/43 26/21 59/51 +f 19/47 17/67 18/55 71/48 +f 73/31 12/68 10/2 63/1 +f 68/35 66/39 10/69 12/70 +f 74/64 32/71 31/72 11/65 +f 53/42 46/41 64/30 22/54 +f 25/56 18/55 61/4 13/3 +f 49/58 44/73 80/74 +f 45/38 3/8 1/18 47/40 +f 9/9 48/75 6/33 4/32 +f 62/76 40/50 52/12 56/27 +f 81/77 7/78 87/79 +f 31/80 36/61 20/45 29/81 +f 83/82 15/83 88/84 +f 36/85 79/86 23/87 +f 78/88 58/63 57/66 +f 17/67 19/47 40/50 62/76 +f 45/38 47/40 66/39 68/35 +f 51/13 70/49 44/89 49/58 +f 4/32 73/31 63/1 2/90 +f 12/70 14/91 30/36 68/35 +f 84/92 41/93 86/94 +f 33/95 86/96 90/97 +f 70/49 21/46 23/62 44/89 +f 54/16 62/76 56/27 38/17 +f 29/81 20/45 71/48 27/57 +f 37/7 35/6 48/75 9/9 +f 5/98 17/67 62/76 54/16 +f 18/55 17/67 5/98 61/4 +f 10/69 66/39 53/42 13/59 +f 12/68 73/31 55/34 14/99 +f 51/13 52/12 40/50 70/49 +f 27/23 25/60 22/54 28/20 +f 65/15 69/14 59/51 60/29 +f 56/27 52/12 65/15 77/28 +f 46/41 75/19 77/28 64/30 +f 60/29 59/51 26/21 28/20 +f 47/40 1/18 75/19 46/41 +f 2/90 5/98 54/16 72/10 +f 4/32 2/90 72/10 9/9 +f 43/37 67/5 3/8 45/38 +f 2/90 63/1 61/4 5/98 +f 82/100 7/78 8/101 +f 82/24 34/102 33/25 +f 81/103 15/83 16/104 +f 81/77 8/101 7/78 +f 83/82 41/93 42/105 +f 83/82 16/104 15/83 +f 84/92 33/25 34/102 +f 84/92 42/106 41/93 +f 30/36 83/107 42/108 43/37 +f 42/108 84/109 67/5 43/37 +f 67/5 84/109 34/110 35/6 +f 55/34 6/33 8/111 81/112 +f 55/34 81/112 16/113 14/99 +f 34/110 82/114 48/75 35/6 +f 48/75 82/114 8/111 6/33 +f 30/36 14/91 16/115 83/107 +f 7/78 82/100 85/26 +f 15/83 81/103 87/116 +f 41/93 83/82 88/84 +f 33/25 84/92 86/94 +f 80/74 50/117 49/58 +f 23/87 24/118 80/74 +f 80/74 44/73 23/87 +f 79/86 36/85 31/72 +f 79/86 24/118 23/87 +f 31/72 32/71 79/86 +f 78/88 49/58 50/117 +f 78/88 57/66 76/52 +f 76/52 49/58 78/88 +f 24/118 79/86 89/119 +f 79/86 32/71 89/119 +f 32/71 74/64 89/119 +f 74/64 58/63 89/119 +f 58/63 78/88 89/119 +f 78/88 50/117 89/119 +f 50/117 80/74 89/119 +f 80/74 24/118 89/119 +f 86/96 41/120 90/97 +f 41/120 88/121 90/97 +f 88/121 15/122 90/97 +f 15/122 87/123 90/97 +f 87/123 7/124 90/97 +f 7/124 85/125 90/97 +f 85/125 33/95 90/97 diff --git a/mods/vipworld/bushes_classic/nodes.lua b/mods/vipworld/bushes_classic/nodes.lua new file mode 100644 index 00000000..cd60a55f --- /dev/null +++ b/mods/vipworld/bushes_classic/nodes.lua @@ -0,0 +1,205 @@ +-- support for i18n + +plantlife_bushes = {} + +-- TODO: add support for nodebreakers? those dig like mese picks +plantlife_bushes.after_dig_node = function(pos, oldnode, oldmetadata, digger) + if not (digger and pos and oldnode) then + return + end + + -- find out which bush type we are dealing with + local bush_name = "" + local can_harvest = false + + if oldnode.name == "bushes:fruitless_bush" then + -- this bush has not grown fruits yet (but will eventually) + bush_name = oldmetadata.fields.bush_type + -- no fruits to be found, so can_harvest stays false + else + local name_parts = oldnode.name:split(":") + if #name_parts >= 2 and name_parts[2] ~= nil then + + name_parts = name_parts[2]:split("_") + + if #name_parts >= 2 and name_parts[1] ~= nil then + bush_name = name_parts[1] + -- this bush really carries fruits + can_harvest = true + end + end + end + + -- find out which tool the digger was wielding (if any) + local toolstack = digger:get_wielded_item() + local capabilities = toolstack:get_tool_capabilities() + + -- what the player will get + local harvested + + -- failure to find out what the tool can do: destroy the bush and return nothing + local groupcaps = capabilities.groupcaps + if not groupcaps then + return + + -- digging with the hand or something like that + elseif groupcaps.snappy then + + -- plant a new bush without fruits + minetest.swap_node(pos, {type = "node", name = "bushes:fruitless_bush"}) + local meta = minetest.get_meta(pos) + meta:set_string('bush_type', bush_name) + + -- construct the stack of fruits the player will get + -- only bushes that have grown fruits can actually give fruits + if can_harvest then + local amount = "4" + harvested = "bushes:" .. bush_name .. " " .. amount + end + + -- something like a shovel + elseif groupcaps.crumbly then + + -- with a chance of 1/3, return 2 bushes + local amount + if math.random(1,3) == 1 then + amount = "2" + else + amount = "1" + end + -- return the bush itself + harvested = "bushes:" .. bush_name .. "_bush "..amount + + -- something like an axe + elseif groupcaps.choppy then + + -- the amount of sticks may vary + local amount = math.random(4, 20) + -- return some sticks + harvested = "default:stick " .. amount + + -- nothing known - destroy the plant + else + return + end + + -- give the harvested result to the player + if harvested then + --minetest.chat_send_player("singleplayer","you would now get "..tostring( harvested ) ); + local itemstack = ItemStack(harvested) + local inventory = digger:get_inventory() + if inventory:room_for_item("main", itemstack) then + inventory:add_item("main", itemstack) + else + minetest.item_drop(itemstack, digger, pos) + end + end +end + +plantlife_bushes.after_place_node = function(pos, placer, itemstack) + + if not (itemstack and pos) then + return + end + + local name_parts = itemstack:get_name():split(":") + if #name_parts < 2 or name_parts[2] == nil then + return + end + + name_parts = name_parts[2]:split("_") + + if #name_parts < 2 or name_parts[1] == nil then + return + end + + minetest.swap_node(pos, {name = "bushes:fruitless_bush"}) + local meta = minetest.get_meta(pos) + meta:set_string("bush_type", name_parts[1]) +end + +-- regrow berries (uses a base abm instead of biome_lib because of the use of metadata). + +minetest.register_abm({ + nodenames = {"bushes:fruitless_bush"}, + neighbors = {"group:soil", "group:potting_soil"}, + interval = 500, + chance = 5, + action = function(pos, node, active_object_count, active_object_count_wider) + + local meta = minetest.get_meta(pos) + local bush_name = meta:get_string("bush_type") + + if bush_name and bush_name ~= "" then + local dirtpos = {x = pos.x, y = pos.y-1, z = pos.z} + local dirt = minetest.get_node(dirtpos) + local is_soil = minetest.get_item_group(dirt.name, "soil") or minetest.get_item_group(dirt.name, "potting_soil") + + if is_soil and (dirt.name == "farming:soil_wet" or math.random(1,3) == 1) then + minetest.swap_node( pos, {name = "bushes:" .. bush_name .. "_bush"}) + end + end + end +}) + +-- Define the basket and bush nodes + +for i, bush_name in ipairs(bushes_classic.bushes) do + + minetest.register_node(":bushes:basket_"..bush_name, { + description = bushes_classic.bushes_descriptions[i][5], + drawtype = "mesh", + mesh = "bushes_basket_full.obj", + tiles = { + "bushes_basket_pie_"..bush_name..".png", + "bushes_basket.png" + }, + paramtype = "light", + paramtype2 = "facedir", + on_use = minetest.item_eat(18), + groups = { dig_immediate = 3 }, + }) + + local texture_top, texture_bottom + + local groups = {snappy = 3, bush = 1, flammable = 2, attached_node=1} + if bush_name == "mixed_berry" then + bush_name = "fruitless"; + texture_top = "bushes_fruitless_bush_top.png" + texture_bottom = "bushes_fruitless_bush_bottom.png" + groups.not_in_creative_inventory = 1 + else + texture_top = "bushes_bush_top.png" + texture_bottom = "bushes_bush_bottom.png" + end + + minetest.register_node(":bushes:" .. bush_name .. "_bush", { + description = bushes_classic.bushes_descriptions[i][6], + drawtype = "mesh", + mesh = "bushes_bush.obj", + tiles = {"bushes_bush_"..bush_name..".png"}, + paramtype = "light", + sunlight_propagates = true, + walkable = false, + groups = groups, + sounds = default.node_sound_leaves_defaults(), + drop = "", + after_dig_node = function( pos, oldnode, oldmetadata, digger ) + return plantlife_bushes.after_dig_node(pos, oldnode, oldmetadata, digger); + end, + after_place_node = function( pos, placer, itemstack ) + return plantlife_bushes.after_place_node(pos, placer, itemstack); + end, + }) + +end + +minetest.register_node(":bushes:basket_empty", { + description = "Basket", + drawtype = "mesh", + mesh = "bushes_basket_empty.obj", + tiles = { "bushes_basket.png" }, + paramtype = "light", + paramtype2 = "facedir", + groups = { dig_immediate = 3 }, +}) diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket.png b/mods/vipworld/bushes_classic/textures/bushes_basket.png new file mode 100644 index 00000000..4384fba1 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blackberry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blackberry.png new file mode 100644 index 00000000..83ee63c0 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blackberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blueberry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blueberry.png new file mode 100644 index 00000000..9f9b2c6b Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_blueberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_gooseberry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_gooseberry.png new file mode 100644 index 00000000..d6bdff4f Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_gooseberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_mixed_berry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_mixed_berry.png new file mode 100644 index 00000000..ff271ff9 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_mixed_berry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_raspberry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_raspberry.png new file mode 100644 index 00000000..3bfd42ff Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_raspberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_basket_pie_strawberry.png b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_strawberry.png new file mode 100644 index 00000000..c27b0b3a Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_basket_pie_strawberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blackberry.png b/mods/vipworld/bushes_classic/textures/bushes_blackberry.png new file mode 100644 index 00000000..76b742bc Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blackberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_cooked.png new file mode 100644 index 00000000..a6af5ca8 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_raw.png new file mode 100644 index 00000000..c37f9872 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_slice.png new file mode 100644 index 00000000..90be80e1 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blackberry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blueberry.png b/mods/vipworld/bushes_classic/textures/bushes_blueberry.png new file mode 100644 index 00000000..e15047fb Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blueberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_cooked.png new file mode 100644 index 00000000..11ce60fa Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_raw.png new file mode 100644 index 00000000..6e8dd9e7 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_slice.png new file mode 100644 index 00000000..eb6bf5a6 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_blueberry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_blackberry.png b/mods/vipworld/bushes_classic/textures/bushes_bush_blackberry.png new file mode 100644 index 00000000..fa76c616 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_blackberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_blueberry.png b/mods/vipworld/bushes_classic/textures/bushes_bush_blueberry.png new file mode 100644 index 00000000..3a305ca8 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_blueberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_fruitless.png b/mods/vipworld/bushes_classic/textures/bushes_bush_fruitless.png new file mode 100644 index 00000000..ffa2e0a7 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_fruitless.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_gooseberry.png b/mods/vipworld/bushes_classic/textures/bushes_bush_gooseberry.png new file mode 100644 index 00000000..52eca60f Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_gooseberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_raspberry.png b/mods/vipworld/bushes_classic/textures/bushes_bush_raspberry.png new file mode 100644 index 00000000..01809def Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_raspberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_bush_strawberry.png b/mods/vipworld/bushes_classic/textures/bushes_bush_strawberry.png new file mode 100644 index 00000000..a5060e2f Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_bush_strawberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_gooseberry.png b/mods/vipworld/bushes_classic/textures/bushes_gooseberry.png new file mode 100644 index 00000000..e712cad9 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_gooseberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_cooked.png new file mode 100644 index 00000000..caa4e926 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_raw.png new file mode 100644 index 00000000..baf5af78 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_slice.png new file mode 100644 index 00000000..5cf2844e Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_gooseberry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_cooked.png new file mode 100644 index 00000000..351a2697 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_raw.png new file mode 100644 index 00000000..64869891 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_slice.png new file mode 100644 index 00000000..8844c3d7 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_mixed_berry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_raspberry.png b/mods/vipworld/bushes_classic/textures/bushes_raspberry.png new file mode 100644 index 00000000..034fd484 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_raspberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_cooked.png new file mode 100644 index 00000000..afeb7d87 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_raw.png new file mode 100644 index 00000000..bb76a1d8 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_slice.png new file mode 100644 index 00000000..a0944882 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_raspberry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_strawberry.png b/mods/vipworld/bushes_classic/textures/bushes_strawberry.png new file mode 100644 index 00000000..b6a74b63 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_strawberry.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_cooked.png b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_cooked.png new file mode 100644 index 00000000..3d034ea1 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_cooked.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_raw.png b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_raw.png new file mode 100644 index 00000000..932c0735 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_raw.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_slice.png b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_slice.png new file mode 100644 index 00000000..f8d1d36c Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_strawberry_pie_slice.png differ diff --git a/mods/vipworld/bushes_classic/textures/bushes_sugar.png b/mods/vipworld/bushes_classic/textures/bushes_sugar.png new file mode 100644 index 00000000..726196b4 Binary files /dev/null and b/mods/vipworld/bushes_classic/textures/bushes_sugar.png differ diff --git a/mods/vipworld/darkage/README.md b/mods/vipworld/darkage/README.md new file mode 100644 index 00000000..59fc033d --- /dev/null +++ b/mods/vipworld/darkage/README.md @@ -0,0 +1,417 @@ +# DarkAge Mod for Minetest +Original mod by Master Gollum +Modified by addi. + +Contains code from CragiDavi and HybridDog + +## Introduction: + This mod adds a few new blocks that allows to create new buildings in a + pre industrial landscape. Of course, feel free to use them in any other + construction :P + + It also provides more layers of stones. I tried not to turn mining in + a rainbow, so don't expect to find them easily. There are two kinds of + materials, stones, that spawns in layers at different deep and clay + like materials (silt and mud) that you will find in water places. + Silt and Mud are more easy to find than stone layers, but if you find + one it will be a real mine, with all probability with hundreds of blocks. + + I used mainly 4 square recipes to avoid collisions with other MODs, + anyway I have not checked all them, so it is possible that another + person is already using one or more of this combinations. + + I also used Desert Sand and Desert Stone, because they almost are not + used in the default version. Probably I will change this recipes in + next releases. + + + +## Release Notes +Version 1.2 + +* corrected Sounds of Stairs +* updated to new Moreblocks api +* added Serpentine Stairs + +Version 1.1 + +* Fix spelling mistakes in README file +* Bug fix +* Rename slate_tale to slate_tile +* Remove unneeded code +* Add marble tile +* Remove unneeded code +* Capitalise a couple of descriptions +* Add marble tile texture +* Rename alias.lua to aliases.lua + +Version 1.0.1 + + * fixed init.lua which get broken by upload on github + + +Version 1.0 + +* compatibility with stairsplus added +* added new item iron_stick +* added craft reziep for iron stick +* changed reziep of iron_bars to avoid conflicts with iron bars mod +* changed reziep of chain to avoid conflicts with 3d furniture mod +* changed reziep of darkage:stonebrick to avoid conflicts with moreblocks +* disabled marble_tile to avoid the message "texture not found" +* added compatibility with stairsplus (now its moreblocks) +* added darkage:glass a nice looking glass that must be in this mod +* changed the sound_node_leaves_default to wood_default from box and wooden shelves +* added craft reziep for darkage:chalk +* improved the textures of reinforced wood and chalk to save a bit more loadtime on servers +* added another reziep for darkage straw (this can be crafted now, if farming is installed, with farming:harvested_weed + +Version 0.3 + +* 29 Nodes + 3 Craft Items +* Furniture and building decoration +* Stone layers + + + +Version 0.2 + +* 13 Nodes +* Sedimentary stones + + +Version 0.1 + +* 6 Nodes + +PS: This document has been structured as the README.txt of PilzAdam in + his Bed MOD. + +### How to install: + Unzip the archive an place it in minetest-base-directory/mods/ + if you have a windows client or a linux run-in-place client. If you + have a linux system-wide installation place it in + ~/.minetest/mods/. + If you want to install this mod only in one world create the folder + worldmods/ in your worlddirectory. Remember to activate it for your world by pressing the 'configure' button and doubleclick darkage in the right list. + For further information or help see: + http://wiki.minetest.net/Installing_Mods + +## BUILDING NODES + +### Adobe: +Sand and Clay mixture with Straw to build houses or walls. +Used from historical times, one of the first bricks +invented. I have to improve this texture, it is ugly :P + + CRAFT -> 4 + [Sand] [Sand] + [Clay Lump] [Straw] + + +### Basalt: +A darken version of the default Stone + + COOKING + [Basalt Cobble] + + +### Basalt Cobble: +A darken version of the default Cobble. + + CRAFT -> 4 + [Cobble] [Cobble] + [Coal Lump] [Coal Lump] + + +### Chalk: +A soft, white and porous sedimentary rock. It becomes +Chalk Powder when dug. Can't be craft, only found as stratum. + + +### Chalk Powder: +Pile of chalk from digging Chalk stones. Can +be used to prepare plaster. See Cobblestone with Plaster. + + +### Cobblestone with Plaster: +Cobbles where has been applied a +layer of white plaster. +When dug it lost the plaster layer! + + CRAFT -> 2 + [Cobblestone] [Chalk Powder] + [Cobblestone] [Chalk Powder] + + +### Dark Dirt: +A darken version of the Dirt where the grass doesn't +grown, perfect for create a path in a forest. I was using +Gravel, but the noise walking was annoying to me (like +walking over iron coal with the nude feet :P), for this I +created this node. + + CRAFT -> 4 + [Dirt] [Dirt] + [Gravel] [Gravel] + + +### Desert Iron Ore: +I know that others MODs add ores to the +Desert Stones, mine also does it, but just Iron, I supposed +the red color is because of the iron, so it goes with more +high probability than regular Stones and it doesn't add +Coal to them. It will not be a lot so you can keep it with +another MOD that does the same or just comment the lines that +does it. + + +### Dry Leaves: +Just a cube of Leaves toasted :P Well I found the +Leaves are not useful so I thought to turn them into Straw, ok +it is not the same, but well, why not? Just dry them in a +Furnace and then put together to create the Straw + + COOKING + [Leaves] + + +### Gneiss: +High grade metamorphic rock formed from Schist, very +common, and used in construction. It sometimes brakes in +Gneiss Cobble when being dug. + + COOKING + [Schist] + + +### Gneiss Cobble: +Brick version of the gneiss. + + From dig gneiss + + +### Mud: +Mixture of water and some combination of soil, silt, and +clay. Used for build houses, specially in desert regions. +It brakes in 4 Mud Lumps when dug. + + CRAFT -> 3 + [Dirt] [Dirt] + [Clay Lump] [Silt Lump] + + CRAFT -> 1 + [Mud Lump] [Mud Lump] + [Mud Lump] [Mud Lump] + + +### Old Red Sandstone: +A light red sandstone, in fact it's +sandstone with iron that gives it this color. + + CRAFT -> 4 + [Sandstone] [Sandstone] + [Iron Lump] [Sandstone] + + COOKING + [Old Red Sandstone Cobble] + + +### Old Red Sandstone Cobble: +Cobbles of Old Red Sandstone. + + CRAFT -> 4 + [Sandstone Cobble] [Sandstone Cobble] + [Iron Lump] [Sandstone Cobble] + + +### Reinforced Cobble: +Brick with crossed wooden. + + CRAFT -> 1 + [Stick] [] [Stick] + [] [Cobble] [] + [Stick] [] [Stick] + + +### Sandstone Cobble: +Brick version of the Sandstone, good for +buildings with a pale color. + + COOKING + [Sandstone] + + +### Schist: +Medium grade metamorphic rock from Slate. + + COOKING + [Slate] + + +### Silt: +Granular material of a size somewhere between sand and clay. +It brakes in 4 Silt Lumps. + + CRAFT -> 1 + [Silt Lump] [Silt Lump] + [Silt Lump] [Silt Lump] + + +### Slate: +Fine-grained, foliated, homogeneous metamorphic rock +derived from an original shale-type sedimentary rock through +low-grade regional metamorphism. It is used to build roof. + + COOKING + [Shale] + + COOKING + [Slate Cobble] + + +### Slate Cobble: +Cobble obtained from Slate + + From dig Slate + + +### Slate Tile: +Nice blue slate tiles for roofs. They has been used +as building traditional building material in zones where +slate is easy to find. +Note: It has stairs and slabs. + + CRAFT -> 2 + [Slate Cobble] [Slate Cobble] + [Slate Cobble] [Slate Cobble] + + +### Straw Bale: + A decoration item, looks great for a farm or a + country side house. + + CRAFT -> 1 + [Straw] [Straw] + [Straw] [Straw] + + +### Desert Stone: + Just the default block, it can be obtained now + from Desert Sand. The idea is that Desert Sand is stonier + than regular Sand, so it takes less to create a Desert + Stone than a Sandstone. + + CRAFT -> 2 + [Sandstone] [Sandstone] + [Sandstone] [Sandstone] + + +##FURNITURE NODES +Just started so they are few ones + +### Box: +A more smaller container than the Chest, but it requires +less wood. As cheep as 4 woods and have 16 slots. The craft +is a little weird but I think it makes sense and avoids +collision with the recipe of Hardwood of the MOD +building_blocks. + + CRAFT -> 2 + [Wood] [] [Wood] + [] [] [] + [Wood] [] [Wood] + +### Chain: +Climbable chain. + + CRAFT -> 2 + [Steel Ingot] + [Steel Ingot] + [Steel Ingot] + + +### Iron Bars: + Alternative window for the Glass. + + CRAFT -> 3 + [Iron Stick] [] [Iron Stick] + [Iron Stick] [] [Iron Stick] + [Iron Stick] [] [Iron Stick] + + +###Iron Grille: + Alternative window for the Glass. + + CRAFT -> 3 + [] [Iron Bars] [] + [Iron Bars] [] [Iron Bars] + [] [Iron Bars] [] + + +###Wood Bars: +Alternative window for the Glass. + + CRAFT -> 3 + [Stick] [] [Stick] + [Stick] [] [Stick] + [Stick] [] [Stick] + + +###Wood Frame: +Alternative window for the Glass. + + CRAFT -> 1 + [Stick] [Stick] [Stick] + [Stick] [Glass] [Stick] + [Stick] [Stick] [Stick] + + +### Medieval Glass: +A good looking glass, with small tiles + + CRAFT -> 8 + [Glass] [steel_ingot] [Glass] + [steel_ingot] [Glass] [steel_ingot] + [Glass] [steel_ingot] [Glass] + + or: + CRAFT -> 1 + [Medieval Glow Glass] + + +### Medieval Glow Glass: +A good looking glass, with small tiles which are glowing by itself + + CRAFT -> 8 + [Medieval Glass] + [torch] + + +##License: +Sourcecode: WTFPL (see below) +Graphics: WTFPL (see below) + +#See also: +http://minetest.net/ + +--- + + +``` +#! + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 + + Copyright (C) 2004 Sam Hocevar + + Everyone is permitted to copy and distribute verbatim or modified + copies of this license document, and changing it is allowed as long + as the name is changed. + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. +``` \ No newline at end of file diff --git a/mods/vipworld/darkage/building.lua b/mods/vipworld/darkage/building.lua new file mode 100644 index 00000000..14ac7ec2 --- /dev/null +++ b/mods/vipworld/darkage/building.lua @@ -0,0 +1,117 @@ +--[[ + This function registers the nodes and craft rezieps for the reinforce stuff + * name: String which is used in description and as technical name (lower letters) + * craftItem: the Item where the reinforce is crafted out of + * nodedef: Nodedefinition table as used as in minetest.register_node() + + The Nodes are caled + :reinforced_ + :reinforced__slope + :reinforced__arrow + :reinforced__bars + + The modname is automatically the mod that currently calls this function. + e.g. if you call darkage.register_reinforce from the mod medieval modname will be medieval +]] +function darkage.register_reinforce(name, craftItem, nodedef) + assert(type(nodedef.tiles)=="table","ERRROR: nodedef.tiles have to be a table") + assert(nodedef.tiles[1], "ERROR: "..dump(nodedef.tiles).." requires at least 1 entry") + local modname = minetest.get_current_modname(); + local tname = string.gsub(name:lower()," ", "_"); -- Technical name + +-- Reinforced X + local reinforced = table.copy(nodedef); + local reinforced_tname = modname..":reinforced_"..tname + reinforced.description = "Reinforced "..name + for i,tile in ipairs(reinforced.tiles) do + reinforced.tiles[i] = tile .."^darkage_reinforce.png" + end + + minetest.register_node(reinforced_tname, reinforced) + +-- Reinforced Slope + local slope = table.copy(nodedef); + local slope_tname = modname..":reinforced_"..tname.."_slope" + slope.description = "Reinforced "..name.." Slope\nHint: use the screwdriver to rotate." + slope.paramtype2 = "facedir"; + local slope_tile_extend = {"^darkage_reinforce_right.png" , "^darkage_reinforce_right.png" , --top ,down + "^darkage_reinforce_right.png" , "^darkage_reinforce_right.png" , --right, left + "^darkage_reinforce_left.png" , "^darkage_reinforce_left.png"} -- front, back + for i=1,6 do + local tile = slope.tiles[i] or nodedef.tiles[1]; -- There have to be at least one tile. + slope.tiles[i] = tile ..slope_tile_extend[i] + end + + minetest.register_node(slope_tname, slope) + + -- Alias to convert old nodes + minetest.register_alias(modname..":reinforced_"..tname.."_right", slope_tname) + minetest.register_alias(modname..":reinforced_"..tname.."_left", slope_tname) + +-- Arrow bar + local arrow = table.copy(nodedef) + local arrow_tname = modname..":reinforced_"..tname.."_arrow" + arrow.paramtype2 = "facedir"; + arrow.description = "Reinforced "..name.." Arrow \nHint: use the screwdriver to rotate." + local arrow_tile_extend = {"" , "" , --top ,down + "^(darkage_reinforce_arrow.png^[transformR90)" , "^(darkage_reinforce_arrow.png^[transformR270)" , --right, left + "^(darkage_reinforce_arrow.png^[transformR180)" , "^darkage_reinforce_arrow.png"} -- front, back + for i=1,6 do + local tile = arrow.tiles[i] or arrow.tiles[1]; -- There have to be at least one tile. + arrow.tiles[i] = tile .. arrow_tile_extend[i] + end + minetest.register_node(arrow_tname, arrow) + + +-- Reinforced Bars + local bars = table.copy(nodedef) + local bars_tname = modname..":reinforced_"..tname.."_bars" + bars.description = name.." Bars" + for i,tile in ipairs(bars.tiles) do + bars.tiles[i] = tile .."^darkage_reinforce_bars.png" + end + minetest.register_node(bars_tname, bars) + +end + +darkage.register_reinforce("Chalk", "darkage:chalk_powder", { + tiles = {"darkage_chalk.png"}, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +darkage.register_reinforce("Wood", "default:wood", { + tiles = {"default_wood.png"}, + groups = {snappy=2, choppy=3, flammable=3}, + sounds = default.node_sound_wood_defaults() +}) + +darkage.register_reinforce("Chalked Bricks", "darkage:chalked_bricks", { + tiles = {"darkage_chalked_bricks.png"}, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:glass", { + description = "Medieval Glass", + drawtype = "glasslike", + tiles = {"darkage_glass.png"}, + use_texture_alpha=true, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("darkage:glow_glass", { + description = "Medieval Glow Glass", + drawtype = "glasslike", + tiles = {"darkage_glass.png"}, + use_texture_alpha=true, + paramtype = "light", + sunlight_propagates = true, + light_source = default.LIGHT_MAX-1, + groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3}, + sounds = default.node_sound_glass_defaults(), +}) + diff --git a/mods/vipworld/darkage/depends.txt b/mods/vipworld/darkage/depends.txt new file mode 100644 index 00000000..2e813653 --- /dev/null +++ b/mods/vipworld/darkage/depends.txt @@ -0,0 +1,4 @@ +default +farming? +moreblocks? +stairs? diff --git a/mods/vipworld/darkage/description.txt b/mods/vipworld/darkage/description.txt new file mode 100644 index 00000000..95702452 --- /dev/null +++ b/mods/vipworld/darkage/description.txt @@ -0,0 +1,2 @@ +DarkAge adds several new nodes and crafts to create a pre industrial landscape. +It also extends the stones and provides new construction materials. diff --git a/mods/vipworld/darkage/furniture.lua b/mods/vipworld/darkage/furniture.lua new file mode 100644 index 00000000..f4f7b4f3 --- /dev/null +++ b/mods/vipworld/darkage/furniture.lua @@ -0,0 +1,289 @@ +minetest.register_node("darkage:chain", { + description = "Chain", + drawtype = "signlike", + tiles = {"darkage_chain.png"}, + inventory_image = "darkage_chain.png", + wield_image = "darkage_chain.png", + paramtype = "light", + paramtype2 = "wallmounted", + is_ground_content = false, + walkable = false, + climbable = true, + selection_box = { + type = "wallmounted", + --wall_top = = + --wall_bottom = = + --wall_side = = + }, + groups = {snappy=1,cracky=2,oddly_breakable_by_hand=2}, + legacy_wallmounted = true +}) +local box_formspec = [[ + size[8,9] + list[context;main;0,0.3;8,4;] + list[current_player;main;0,4.85;8,1;] + list[current_player;main;0,6.08;8,3;8] + listring[context;main] + listring[current_player;main] +]].. darkage.formbg + + + +minetest.register_node("darkage:box", { + description = "Box", + tiles = { "darkage_box_top.png","darkage_box_top.png","darkage_box.png"}, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + on_construct = function(pos) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", box_formspec ) + meta:set_string("infotext", "Box") + local inv = meta:get_inventory() + inv:set_size("main", 16) + end, + can_dig = function(pos,player) + local meta = minetest.get_meta(pos); + local inv = meta:get_inventory() + return inv:is_empty("main") + end, + on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) + minetest.log("action", player:get_player_name().. + " moves stuff in box at "..minetest.pos_to_string(pos)) + end, + on_metadata_inventory_put = function(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " moves stuff to box at "..minetest.pos_to_string(pos)) + end, + on_metadata_inventory_take = function(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " takes stuff from box at "..minetest.pos_to_string(pos)) + end, +}) + +local shelves_formspec = [[ + size[8,9] + list[context;up;0,0;8,2;] + list[context;down;0,2.3;8,2;] + + list[current_player;main;0,4.85;8,1;] + list[current_player;main;0,6.08;8,3;8] + listring[context;up] + listring[context;down] + listring[current_player;main] +]].. darkage.formbg + +minetest.register_node("darkage:wood_shelves", { + description = "Wooden Shelves", + tiles = { "darkage_shelves.png","darkage_shelves.png","darkage_shelves.png", + "darkage_shelves.png","darkage_shelves.png","darkage_shelves_front.png"}, + paramtype2 = "facedir", + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + on_construct = function(pos) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", shelves_formspec) + meta:set_string("infotext", "Wooden Shelves") + local inv = meta:get_inventory() + inv:set_size("up", 16) + inv:set_size("down", 16) + end, + can_dig = function(pos,player) + local meta = minetest.get_meta(pos); + local inv = meta:get_inventory() + return inv:is_empty("up") and inv:is_empty("down") + end, + on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) + minetest.log("action", player:get_player_name().. + " moves stuff in shelves at "..minetest.pos_to_string(pos)) + end, + on_metadata_inventory_put = function(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " moves stuff to shelves at "..minetest.pos_to_string(pos)) + end, + on_metadata_inventory_take = function(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " takes stuff from shelves at "..minetest.pos_to_string(pos)) + end, +}) + +--minetest.register_node("darkage:rosace", { +-- description = "Rose Window", +-- tiles = {"darkage_rosace.png"}, +-- is_ground_content = false, +-- groups = {cracky=3}, +-- sounds = default.node_sound_stone_defaults() +--}) + +minetest.register_node("darkage:iron_bars", { + description = "Iron Bars", + drawtype = "glasslike", + tiles = {"darkage_iron_bars.png"}, + inventory_image = "darkage_iron_bars.png", + wield_image = "darkage_iron_bars.png", + is_ground_content = false, + paramtype = "light", + sunlight_propagates = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:lamp", { + description = "Lamp", + tiles = { "darkage_lamp.png" }, + paramtype = "light", + sunlight_propagates = true, + light_source = default.LIGHT_MAX-1, + groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3,flammable=1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_node("darkage:iron_grille", { + description = "Iron Grille", + drawtype = "glasslike", + tiles = {"darkage_iron_grille.png"}, + inventory_image = "darkage_iron_grille.png", + wield_image = "darkage_iron_grille.png", + is_ground_content = false, + paramtype = "light", + sunlight_propagates = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:wood_bars", { + description = "Wooden Bars", + drawtype = "glasslike", + tiles = {"darkage_wood_bars.png"}, + inventory_image = "darkage_wood_bars.png", + wield_image = "darkage_wood_bars.png", + is_ground_content = false, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy=1,choppy=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:wood_grille", { + description = "Wooden Grille", + drawtype = "glasslike", + tiles = {"darkage_wood_grille.png"}, + inventory_image = "darkage_wood_grille.png", + wield_image = "darkage_wood_grille.png", + is_ground_content = false, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy=1,choppy=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:wood_frame", { + description = "Wooden Frame", + drawtype = "glasslike", + tiles = {"darkage_wood_frame.png"}, + inventory_image = "darkage_wood_frame.png", + wield_image = "darkage_wood_frame.png", + is_ground_content = false, + paramtype = "light", + sunlight_propagates = true, + groups = {snappy=1,choppy=2}, + sounds = default.node_sound_stone_defaults() +}) + +--------------- +-- Crafts Item +--------------- + + +---------- +-- Crafts +---------- +--[[ +minetest.register_craft({ + output = "darkage:box", + recipe = { + {"default:wood", "", "default:wood"}, + {"", "", ""}, + {"default:wood", "", "default:wood"}, + } +}) + +minetest.register_craft({ + output = "darkage:chain 2", + recipe = { + {"darkage:iron_stick"}, + {"darkage:iron_stick"}, + {"darkage:iron_stick"}, + } +}) + +minetest.register_craft({ + output = "darkage:iron_bars 2", + recipe = { + {"darkage:iron_stick", "", "darkage:iron_stick"}, + {"darkage:iron_stick", "", "darkage:iron_stick"}, + {"darkage:iron_stick", "", "darkage:iron_stick"}, + } +}) + +minetest.register_craft({ + output = "darkage:iron_grille 3", + recipe = { + {"", "darkage:iron_bars", ""}, + {"darkage:iron_bars", "", "darkage:iron_bars"}, + {"", "darkage:iron_bars", ""}, + } +}) + +minetest.register_craft({ + output = "darkage:lamp", + recipe = { + {"group:stick", "", "group:stick"}, + {"", "default:torch", ""}, + {"group:stick", "", "group:stick"}, + } +}) + +minetest.register_craft({ + output = "darkage:wood_bars 2", + recipe = { + {"group:stick", "", "group:stick"}, + {"group:stick", "", "group:stick"}, + {"group:stick", "", "group:stick"}, + } +}) + +minetest.register_craft({ + output = "darkage:wood_grille 3", + recipe = { + {"", "darkage:wood_bars", ""}, + {"darkage:wood_bars", "", "darkage:wood_bars"}, + {"", "darkage:wood_bars", ""}, + } +}) + +minetest.register_craft({ + output = "darkage:wood_shelves", + recipe = { + {"darkage:box"}, + {"darkage:box"}, + } +}) + +minetest.register_craft({ + output = "darkage:wood_frame", + recipe = { + {"group:stick", "", "group:stick"}, + {"", "default:glass", ""}, + {"group:stick", "", "group:stick"}, + } +}) + + +-- Cookings +minetest.register_craft({ + type = "cooking", + output = "default:glass", + recipe = "darkage:wood_frame", +}) + +]] diff --git a/mods/vipworld/darkage/init.lua b/mods/vipworld/darkage/init.lua new file mode 100644 index 00000000..16c49dbc --- /dev/null +++ b/mods/vipworld/darkage/init.lua @@ -0,0 +1,24 @@ +minetest.log("action"," ---- Dark Age Version 1.3 is Loading! ---- ") + +darkage = {}; -- Create darkage namespace + +darkage.formbg = (default.gui_bg or "").. + (default.gui_bg_img or "").. + (default.gui_slots or "") + +local MODPATH = minetest.get_modpath("darkage") + +dofile(MODPATH.."/nodes.lua") +--dofile(MODPATH.."/mapgen.lua") +dofile(MODPATH.."/building.lua") +dofile(MODPATH.."/furniture.lua") +dofile(MODPATH.."/aliases.lua") +dofile(MODPATH.."/walls.lua") + +dofile(MODPATH.."/stairs_functions.lua") +dofile(MODPATH.."/stairs.lua") + +if minetest.get_modpath("moreblocks") then + dofile(minetest.get_modpath("darkage").."/moreblocks.lua") +end + diff --git a/mods/vipworld/darkage/moreblocks.lua b/mods/vipworld/darkage/moreblocks.lua new file mode 100644 index 00000000..4be1408c --- /dev/null +++ b/mods/vipworld/darkage/moreblocks.lua @@ -0,0 +1,171 @@ + register_stair_slab_panel_micro("slate", "block", "darkage:slate", + {cracky=3}, + {"darkage_slate.png"}, + "Slate", + "block", + 0 + ) + + register_stair_slab_panel_micro("slate_tile", "block", "darkage:slate_tile", + {cracky=3}, + {"darkage_slate_tile.png"}, + "Slate Tile", + "block", + 0 + ) + + register_stair_slab_panel_micro("adobe", "block", "darkage:adobe", + {cracky=3}, + {"darkage_adobe.png"}, + "Adobe", + "block", + 0 + ) + + register_stair_slab_panel_micro("basalt", "block", "darkage:basalt", + {cracky=3}, + {"darkage_basalt.png"}, + "Basalt", + "block", + 0 + ) + + register_stair_slab_panel_micro("basalt_cobble", "block", "darkage:basalt_cobble", + {cracky=3}, + {"darkage_basalt_cobble.png"}, + "Basalt Cobble", + "block", + 0 + ) + + register_stair_slab_panel_micro("chalk", "block", "darkage:chalk", + {cracky=3}, + {"darkage_chalk.png"}, + "Chalk", + "block", + 0 + ) + + register_stair_slab_panel_micro("cobble_with_plaster", "block", "darkage:cobble_with_plaster", + {cracky=3}, + {"darkage_cobble_with_plaster_D.png"}, + "Cobble With Plaster", + "block", + 0 + ) + + register_stair_slab_panel_micro("gneiss", "block", "darkage:gneiss", + {cracky=3}, + {"darkage_gneiss.png"}, + "Gneiss", + "block", + 0 + ) + + register_stair_slab_panel_micro("gneiss_cobble", "block", "darkage:gneiss_cobble", + {cracky=3}, + {"darkage_gneiss_cobble.png"}, + "Gneiss Cobble", + "block", + 0 + ) + + register_stair_slab_panel_micro("schist", "block", "darkage:schist", + {cracky=3}, + {"darkage_schist.png"}, + "Schist", + "block", + 0 + ) + + register_stair_slab_panel_micro("serpentine", "block", "darkage:serpentine", + {cracky=3}, + {"darkage_serpentine.png"}, + "Serpentine", + "block", + 0 + ) + + register_stair_slab_panel_micro("shale", "block", "darkage:shale", + {cracky=3}, + {"darkage_shale.png"}, + "Shale", + "block", + 0 + ) + + register_stair_slab_panel_micro("slate", "block", "darkage:slate", + {cracky=3}, + {"darkage_slate.png"}, + "Slate", + "block", + 0 + ) + + register_stair_slab_panel_micro("slate_cobble", "block", "darkage:slate_cobble", + {cracky=3}, + {"darkage_slate_cobble.png"}, + "Slate Cobble", + "block", + 0 + ) + + register_stair_slab_panel_micro("slate_tale", "block", "darkage:slate_tale", + {cracky=3}, + {"darkage_slate_tale.png"}, + "Slate Tale", + "block", + 0 + ) + + register_stair_slab_panel_micro("stone_brick", "block", "darkage:stone_brick", + {cracky=3}, + {"darkage_stone_brick.png"}, + "Stone Brick", + "block", + 0 + ) + + register_stair_slab_panel_micro("ors", "block", "darkage:ors", + {cracky=3}, + {"darkage_ors.png"}, + "Old Red Sandstone", + "block", + 0 + ) + + register_stair_slab_panel_micro("ors_brick", "block", "darkage:ors_brick", + {cracky=3}, + {"darkage_ors_brick.png"}, + "Old Red Sandstone Brick", + "block", + 0 + ) + + register_stair_slab_panel_micro("marble", "block", "darkage:marble", + {cracky=3}, + {"darkage_marble.png"}, + "Marble", + "block", + 0 + ) + + table.insert(circular_saw.known_stairs, "darkage:slate") + table.insert(circular_saw.known_stairs, "darkage:slate_tale") + table.insert(circular_saw.known_stairs, "darkage:adobe") + table.insert(circular_saw.known_stairs, "darkage:basalt") + table.insert(circular_saw.known_stairs, "darkage:basalt_cobble") + table.insert(circular_saw.known_stairs, "darkage:chalk") + table.insert(circular_saw.known_stairs, "darkage:cobble_with_plaster") + table.insert(circular_saw.known_stairs, "darkage:gneiss") + table.insert(circular_saw.known_stairs, "darkage:gneiss_cobble") + table.insert(circular_saw.known_stairs, "darkage:schist") + table.insert(circular_saw.known_stairs, "darkage:serpentine") + table.insert(circular_saw.known_stairs, "darkage:slate") + table.insert(circular_saw.known_stairs, "darkage:slate_cobble") + table.insert(circular_saw.known_stairs, "darkage:slate_tale") + table.insert(circular_saw.known_stairs, "darkage:stone_brick") + table.insert(circular_saw.known_stairs, "darkage:shale") + table.insert(circular_saw.known_stairs, "darkage:ors") + table.insert(circular_saw.known_stairs, "darkage:ors_brick") + table.insert(circular_saw.known_stairs, "darkage:marble") diff --git a/mods/vipworld/darkage/nodes.lua b/mods/vipworld/darkage/nodes.lua new file mode 100644 index 00000000..be61bd28 --- /dev/null +++ b/mods/vipworld/darkage/nodes.lua @@ -0,0 +1,366 @@ +---------- +-- Nodes +---------- + +minetest.register_node("darkage:adobe", { + description = "Adobe", + tiles = {"darkage_adobe.png"}, + is_ground_content = true, + groups = {crumbly=3}, + sounds = default.node_sound_sand_defaults(), +}) + +minetest.register_node("darkage:basalt", { + description = "Basalt", + tiles = {"darkage_basalt.png"}, + is_ground_content = true, + drop = 'darkage:basalt_cobble', + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:basalt_cobble", { + description = "Basalt Cobble", + tiles = {"darkage_basalt_cobble.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:chalk", { + description = "Chalk", + tiles = {"darkage_chalk.png"}, + is_ground_content = true, + drop = 'darkage:chalk_powder 4', + groups = {crumbly=2,cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:cobble_with_plaster", { + description = "Cobblestone with Plaster", + tiles = {"darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_D.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_B.png)", + "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_C.png)", "darkage_chalk.png^(default_cobble.png^[mask:darkage_plaster_mask_A.png)", + "default_cobble.png", "darkage_chalk.png"}, + is_ground_content = false, + paramtype2 = "facedir", + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("darkage:chalked_bricks_with_plaster", { + description = "Chalked Bricks with Plaster", + tiles = {"darkage_chalk.png", "darkage_chalk.png", "darkage_chalk.png", "darkage_chalk.png", "darkage_chalk.png", "darkage_chalked_bricks.png"}, + is_ground_content = false, + paramtype2 = "facedir", + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), +}) + +--lbm to convert the old cobble_with_plaster to the new chalked_bricks to keep texture consistent +minetest.register_lbm({ + name="darkage:convert_cobble_with_plaster", + nodenames= "darkage:cobble_with_plaster", + run_at_every_load = false, + action = function(pos,node) + node.name = "darkage:chalked_bricks_with_plaster" + minetest.swap_node(pos, node) + end +}) + +minetest.register_node("darkage:desert_stone_with_iron", { + description = "Desert Iron Ore", + tiles = {"default_desert_stone.png^default_mineral_iron.png"}, + is_ground_content = true, + groups = {cracky=3}, + drop = 'default:iron_lump', + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("darkage:darkdirt", { + description = "Dark Dirt", + tiles = {"darkage_darkdirt.png"}, + is_ground_content = false, + groups = {crumbly=2}, + sounds = default.node_sound_dirt_defaults(), +}) + +minetest.register_node("darkage:dry_leaves", { + description = "Dry Leaves", + tiles = {"darkage_dry_leaves.png"}, + is_ground_content = false, + paramtype = "light", + groups = {snappy=3, flammable=2}, + sounds = default.node_sound_leaves_defaults() +}) + +minetest.register_node("darkage:gneiss", { + description = "Gneiss", + tiles = {"darkage_gneiss.png"}, + is_ground_content = true, + groups = {cracky=3}, + drop = 'darkage:gneiss_cobble', + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:gneiss_cobble", { + description = "Gneiss Cobble", + tiles = {"darkage_gneiss_cobble.png"}, + is_ground_content = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:marble", { + description = "Marble", + tiles = {"darkage_marble.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:mud", { + description = "Mud", + tiles = {"darkage_mud_up.png","darkage_mud.png"}, + is_ground_content = true, + groups = {crumbly=3}, + drop = 'darkage:mud_lump 4', + sounds = default.node_sound_dirt_defaults({ + footstep = "", + }), +}) + +minetest.register_node("darkage:ors", { + description = "Old Red Sandstone", + tiles = {"darkage_ors.png"}, + is_ground_content = true, + drop = "darkage:ors_brick", + groups = {crumbly=1,cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:ors_brick", { + description = "Old Red Sandstone Brick", + tiles = {"darkage_ors_brick.png"}, + is_ground_content = false, + groups = {crumbly=1,cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:serpentine", { + description = "Serpentine", + tiles = {"darkage_serpentine.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:shale", { + description = "Shale", + tiles = {"darkage_shale.png","darkage_shale.png","darkage_shale_side.png"}, + is_ground_content = true, + groups = {crumbly=2,cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:schist", { + description = "Schist", + tiles = {"darkage_schist.png"}, + is_ground_content = true, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:silt", { + description = "Silt", + tiles = {"darkage_silt.png"}, + is_ground_content = true, + groups = {crumbly=3}, + drop = 'darkage:silt_lump 4', + sounds = default.node_sound_dirt_defaults({ + footstep = "", + }), +}) + +minetest.register_node("darkage:slate", { + description = "Slate", + tiles = {"darkage_slate.png","darkage_slate.png","darkage_slate_side.png"}, + is_ground_content = true, + drop = 'darkage:slate_cobble', + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:slate_cobble", { + description = "Slate Cobble", + tiles = {"darkage_slate_cobble.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:slate_tile", { + description = "Slate Tile", + tiles = {"darkage_slate_tile.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +-- Removed straw, because its in minetst game. Registering alias for compatibility reasons +minetest.register_alias("darkage:straw", "farming:straw") + +minetest.register_node("darkage:stone_brick", { + description = "Stone Brick", + tiles = {"darkage_stone_brick.png"}, + is_ground_content = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:straw_bale", { + description = "Straw Bale", + tiles = {"darkage_straw_bale.png"}, + is_ground_content = false, + drop = 'farming:straw 4', + groups = {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=3}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("darkage:marble", { + description = "Marble", + tiles = {"darkage_marble.png"}, + is_ground_content = true, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:marble_tile", { + description = "Marble Tile", + tiles = {"darkage_marble_tile.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +--[[ + Tuff +]] +minetest.register_node("darkage:tuff", { + description = "Tuff", + tiles = {"darkage_tuff.png"}, + is_ground_content = true, + legacy_mineral = true, + groups = {cracky = 3, stone = 1}, + drop = { + max_items = 1, + items = { + { + -- player get tuff node if he is lucky :) + items = {'darkage:tuff'}, + rarity = 3, + }, + { + -- player will get rubble with 2/3 chance + items = {'darkage:tuff_rubble'}, + } + + } + }, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:tuff_bricks", { + description = "Tuff Bricks", + tiles = {"darkage_tuff_bricks.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +-- abm to turn Tuff bricks to old Tuff bricks if water is nearby +minetest.register_abm({ + nodenames = {"darkage:tuff_bricks"}, + neighbors = {"group:water"}, + interval = 16, + chance = 200, + catch_up = false, + action = function(pos, node) + minetest.set_node(pos, {name = "darkage:old_tuff_bricks"}) + end +}) + +minetest.register_node("darkage:tuff_rubble", { + description = "Tuff Rubble", + tiles = {"darkage_tuff_rubble.png"}, + groups = {crumbly = 2, falling_node = 1}, + sounds = default.node_sound_gravel_defaults(), +}) +--[[ + Rhyolitic Tuff +]] +minetest.register_node("darkage:rhyolitic_tuff", { + description = "Rhyolitic Tuff", + tiles = {"darkage_rhyolitic_tuff.png"}, + is_ground_content = true, + legacy_mineral = true, + groups = {cracky = 3, stone = 1}, + drop = { + max_items = 1, + items = { + { + -- player get tuff node if he is lucky :) + items = {'darkage:rhyolitic_tuff'}, + rarity = 3, + }, + { + -- player will get rubble with 2/3 chance + items = {'darkage:rhyolitic_tuff_rubble'}, + } + + } + }, + sounds = default.node_sound_stone_defaults() +}) + + + +minetest.register_node("darkage:rhyolitic_tuff_bricks", { + description = "Rhyolitic Tuff Bricks", + tiles = {"darkage_rhyolitic_tuff_bricks.png"}, + is_ground_content = false, + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults() +}) + +minetest.register_node("darkage:old_tuff_bricks", { + description = "Old Tuff Bricks", + tiles = {"darkage_old_tuff_bricks.png"}, + is_ground_content = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults() +}) + + + + + +minetest.register_node("darkage:rhyolitic_tuff_rubble", { + description = "Rhyolitic Tuff Rubble", + tiles = {"darkage_rhyolitic_tuff_rubble.png"}, + groups = {crumbly = 2, falling_node = 1}, + sounds = default.node_sound_gravel_defaults(), +}) + + +--[[ + add a node using the cobble texture that was introduced in minetest 0.4.dev-20120408 and got removed in 0.4.7 + It has a nice contrast together the stone bricks, so I think it could get usefull. +]] +minetest.register_node("darkage:chalked_bricks", { + description = "Chalked Brick", + tiles = {"darkage_chalked_bricks.png"}, + is_ground_content = false, + groups = {cracky = 2, stone = 1}, + sounds = default.node_sound_stone_defaults(), +}) + diff --git a/mods/vipworld/darkage/stairs.lua b/mods/vipworld/darkage/stairs.lua new file mode 100644 index 00000000..111d2810 --- /dev/null +++ b/mods/vipworld/darkage/stairs.lua @@ -0,0 +1,17 @@ +for _,name in ipairs({"basalt_cobble", "slate_tale", "straw", "stone_brick", "ors_cobble", "gneiss_cobble", "slate_cobble"}) do + local nodename = "darkage:"..name + local tmp = minetest.registered_nodes[nodename] + if not tmp then + print("[darkage] "..nodename.." not yet defined") + return + end + local desc = tmp.description + stairs.register_stair_and_slab("darkage_"..name, nodename, + tmp.groups, + {"darkage_"..name..".png"}, + desc.." Stair", + desc.." Slab", + tmp.sounds + ) +end +--"desert_stone_cobble" "sandstone_cobble" diff --git a/mods/vipworld/darkage/stairs_functions.lua b/mods/vipworld/darkage/stairs_functions.lua new file mode 100644 index 00000000..c832b70f --- /dev/null +++ b/mods/vipworld/darkage/stairs_functions.lua @@ -0,0 +1,39 @@ + + +if minetest.get_modpath("moreblocks") then + function darkage.register_stairs(nodeName) + local ndef = assert(minetest.registered_nodes[nodeName], "Error: "..nodeName.." is not registered") + + local mod = "darkage" + local node = nodeName:split(":")[2] + + stairsplus:register_all(mod, node, nodeName, ndef) + end +elseif minetest.get_modpath("stairs") then + function darkage.register_stairs(nodeName) + local ndef = assert(minetest.registered_nodes[nodeName], "Error: "..nodeName.." is not registered") + + local node = nodeName:split(":")[2] + + -- The stairs api does not allow to use the darkage modname, so we have to call the nodes stairs:stair_darkage_ + -- and creating an alias + local subname = "darkage_".. node; + stairs.register_stair_and_slab(subname, nodeName, + ndef.groups, ndef.tiles, + ndef.description.." Stair", ndef.description.." Slab", + ndef.sounds) + + --stairs.register_stair_and_slab(subname, recipeitem, + -- groups, images, + -- desc_stair, desc_slab, sounds) + minetest.register_alias("darkage:stair_"..node, "stairs:stair_darkage_"..node) + minetest.register_alias("darkage:slab_"..node, "stairs:slab_darkage_"..node) + end +else + -- No compatible stairs mod found. + minetest.log("error", "[darkage] Darkage requires at least moreblocks or stairs to be installed. Its not possible to register stairs.") + function darkage.register_stairs(nodeName) + minetest.log("warning", "could not create stair of type "..nodeName .." because no compatible stairs mod is installed.") + end +end + diff --git a/mods/vipworld/darkage/textures/darkage_adobe.png b/mods/vipworld/darkage/textures/darkage_adobe.png new file mode 100644 index 00000000..1efccc6f Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_adobe.png differ diff --git a/mods/vipworld/darkage/textures/darkage_basalt.png b/mods/vipworld/darkage/textures/darkage_basalt.png new file mode 100644 index 00000000..3b55fee5 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_basalt.png differ diff --git a/mods/vipworld/darkage/textures/darkage_basalt_cobble.png b/mods/vipworld/darkage/textures/darkage_basalt_cobble.png new file mode 100644 index 00000000..60575505 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_basalt_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_box.png b/mods/vipworld/darkage/textures/darkage_box.png new file mode 100644 index 00000000..fd9550eb Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_box.png differ diff --git a/mods/vipworld/darkage/textures/darkage_box_top.png b/mods/vipworld/darkage/textures/darkage_box_top.png new file mode 100644 index 00000000..5c93d968 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_box_top.png differ diff --git a/mods/vipworld/darkage/textures/darkage_chain.png b/mods/vipworld/darkage/textures/darkage_chain.png new file mode 100644 index 00000000..4df06651 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_chain.png differ diff --git a/mods/vipworld/darkage/textures/darkage_chalk.png b/mods/vipworld/darkage/textures/darkage_chalk.png new file mode 100644 index 00000000..004305ed Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_chalk.png differ diff --git a/mods/vipworld/darkage/textures/darkage_chalk_powder.png b/mods/vipworld/darkage/textures/darkage_chalk_powder.png new file mode 100644 index 00000000..86ef2578 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_chalk_powder.png differ diff --git a/mods/vipworld/darkage/textures/darkage_chalked_bricks.png b/mods/vipworld/darkage/textures/darkage_chalked_bricks.png new file mode 100644 index 00000000..adc0ff31 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_chalked_bricks.png differ diff --git a/mods/vipworld/darkage/textures/darkage_cob.png b/mods/vipworld/darkage/textures/darkage_cob.png new file mode 100644 index 00000000..6380763b Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_cob.png differ diff --git a/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_A.png b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_A.png new file mode 100644 index 00000000..f59fd6bf Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_A.png differ diff --git a/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_B.png b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_B.png new file mode 100644 index 00000000..d61f8805 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_B.png differ diff --git a/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_C.png b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_C.png new file mode 100644 index 00000000..87aebd43 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_C.png differ diff --git a/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_D.png b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_D.png new file mode 100644 index 00000000..363dd1b3 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_cobble_with_plaster_D.png differ diff --git a/mods/vipworld/darkage/textures/darkage_darkdirt.png b/mods/vipworld/darkage/textures/darkage_darkdirt.png new file mode 100644 index 00000000..54fbfa11 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_darkdirt.png differ diff --git a/mods/vipworld/darkage/textures/darkage_desert_stone_cobble.png b/mods/vipworld/darkage/textures/darkage_desert_stone_cobble.png new file mode 100644 index 00000000..e243d8b8 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_desert_stone_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_dry_leaves.png b/mods/vipworld/darkage/textures/darkage_dry_leaves.png new file mode 100644 index 00000000..98e91a79 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_dry_leaves.png differ diff --git a/mods/vipworld/darkage/textures/darkage_glass.png b/mods/vipworld/darkage/textures/darkage_glass.png new file mode 100644 index 00000000..aa2c143f Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_glass.png differ diff --git a/mods/vipworld/darkage/textures/darkage_glow_stone_lamp.png b/mods/vipworld/darkage/textures/darkage_glow_stone_lamp.png new file mode 100644 index 00000000..7df1b97c Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_glow_stone_lamp.png differ diff --git a/mods/vipworld/darkage/textures/darkage_gneiss.png b/mods/vipworld/darkage/textures/darkage_gneiss.png new file mode 100644 index 00000000..26809463 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_gneiss.png differ diff --git a/mods/vipworld/darkage/textures/darkage_gneiss_cobble.png b/mods/vipworld/darkage/textures/darkage_gneiss_cobble.png new file mode 100644 index 00000000..2426321a Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_gneiss_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_iron_bars.png b/mods/vipworld/darkage/textures/darkage_iron_bars.png new file mode 100644 index 00000000..75d5438a Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_iron_bars.png differ diff --git a/mods/vipworld/darkage/textures/darkage_iron_grille.png b/mods/vipworld/darkage/textures/darkage_iron_grille.png new file mode 100644 index 00000000..f627d6fb Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_iron_grille.png differ diff --git a/mods/vipworld/darkage/textures/darkage_iron_stick.png b/mods/vipworld/darkage/textures/darkage_iron_stick.png new file mode 100644 index 00000000..cd8388f7 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_iron_stick.png differ diff --git a/mods/vipworld/darkage/textures/darkage_lamp.png b/mods/vipworld/darkage/textures/darkage_lamp.png new file mode 100644 index 00000000..09cb64c8 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_lamp.png differ diff --git a/mods/vipworld/darkage/textures/darkage_limestone_sand.png b/mods/vipworld/darkage/textures/darkage_limestone_sand.png new file mode 100644 index 00000000..c65b9ba3 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_limestone_sand.png differ diff --git a/mods/vipworld/darkage/textures/darkage_marble.png b/mods/vipworld/darkage/textures/darkage_marble.png new file mode 100644 index 00000000..dd2eef75 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_marble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_marble_tile.png b/mods/vipworld/darkage/textures/darkage_marble_tile.png new file mode 100644 index 00000000..b7de2e75 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_marble_tile.png differ diff --git a/mods/vipworld/darkage/textures/darkage_mineral_iron.png b/mods/vipworld/darkage/textures/darkage_mineral_iron.png new file mode 100644 index 00000000..c8d68f28 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_mineral_iron.png differ diff --git a/mods/vipworld/darkage/textures/darkage_mud.png b/mods/vipworld/darkage/textures/darkage_mud.png new file mode 100644 index 00000000..524f3685 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_mud.png differ diff --git a/mods/vipworld/darkage/textures/darkage_mud_lump.png b/mods/vipworld/darkage/textures/darkage_mud_lump.png new file mode 100644 index 00000000..da425c23 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_mud_lump.png differ diff --git a/mods/vipworld/darkage/textures/darkage_mud_up.png b/mods/vipworld/darkage/textures/darkage_mud_up.png new file mode 100644 index 00000000..c31a2347 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_mud_up.png differ diff --git a/mods/vipworld/darkage/textures/darkage_old_tuff_bricks.png b/mods/vipworld/darkage/textures/darkage_old_tuff_bricks.png new file mode 100644 index 00000000..1cbc994b Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_old_tuff_bricks.png differ diff --git a/mods/vipworld/darkage/textures/darkage_ors.png b/mods/vipworld/darkage/textures/darkage_ors.png new file mode 100644 index 00000000..3e65c8ab Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_ors.png differ diff --git a/mods/vipworld/darkage/textures/darkage_ors_brick.png b/mods/vipworld/darkage/textures/darkage_ors_brick.png new file mode 100644 index 00000000..c5701e20 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_ors_brick.png differ diff --git a/mods/vipworld/darkage/textures/darkage_ors_cobble.png b/mods/vipworld/darkage/textures/darkage_ors_cobble.png new file mode 100644 index 00000000..c42ffdeb Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_ors_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_plaster_mask_A.png b/mods/vipworld/darkage/textures/darkage_plaster_mask_A.png new file mode 100644 index 00000000..71ab8fed Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_plaster_mask_A.png differ diff --git a/mods/vipworld/darkage/textures/darkage_plaster_mask_B.png b/mods/vipworld/darkage/textures/darkage_plaster_mask_B.png new file mode 100644 index 00000000..d46b628e Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_plaster_mask_B.png differ diff --git a/mods/vipworld/darkage/textures/darkage_plaster_mask_C.png b/mods/vipworld/darkage/textures/darkage_plaster_mask_C.png new file mode 100644 index 00000000..feed36d3 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_plaster_mask_C.png differ diff --git a/mods/vipworld/darkage/textures/darkage_plaster_mask_D.png b/mods/vipworld/darkage/textures/darkage_plaster_mask_D.png new file mode 100644 index 00000000..3131f6a4 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_plaster_mask_D.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforce.png b/mods/vipworld/darkage/textures/darkage_reinforce.png new file mode 100644 index 00000000..11752860 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforce.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforce_arrow.png b/mods/vipworld/darkage/textures/darkage_reinforce_arrow.png new file mode 100644 index 00000000..01795446 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforce_arrow.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforce_bars.png b/mods/vipworld/darkage/textures/darkage_reinforce_bars.png new file mode 100644 index 00000000..e7eb6bca Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforce_bars.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforce_left.png b/mods/vipworld/darkage/textures/darkage_reinforce_left.png new file mode 100644 index 00000000..c026372d Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforce_left.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforce_right.png b/mods/vipworld/darkage/textures/darkage_reinforce_right.png new file mode 100644 index 00000000..3604a1b3 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforce_right.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforced_wood_left.png b/mods/vipworld/darkage/textures/darkage_reinforced_wood_left.png new file mode 100644 index 00000000..624407b0 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforced_wood_left.png differ diff --git a/mods/vipworld/darkage/textures/darkage_reinforced_wood_right.png b/mods/vipworld/darkage/textures/darkage_reinforced_wood_right.png new file mode 100644 index 00000000..f89d4636 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_reinforced_wood_right.png differ diff --git a/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff.png b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff.png new file mode 100644 index 00000000..88ed8ec5 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff.png differ diff --git a/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_bricks.png b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_bricks.png new file mode 100644 index 00000000..9abb9077 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_bricks.png differ diff --git a/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_rubble.png b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_rubble.png new file mode 100644 index 00000000..89139dc4 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_rhyolitic_tuff_rubble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_sandstone_cobble.png b/mods/vipworld/darkage/textures/darkage_sandstone_cobble.png new file mode 100644 index 00000000..50c0e6ac Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_sandstone_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_schist.png b/mods/vipworld/darkage/textures/darkage_schist.png new file mode 100644 index 00000000..0f45d99a Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_schist.png differ diff --git a/mods/vipworld/darkage/textures/darkage_serpentine.png b/mods/vipworld/darkage/textures/darkage_serpentine.png new file mode 100644 index 00000000..c681d836 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_serpentine.png differ diff --git a/mods/vipworld/darkage/textures/darkage_shale.png b/mods/vipworld/darkage/textures/darkage_shale.png new file mode 100644 index 00000000..6ebc026f Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_shale.png differ diff --git a/mods/vipworld/darkage/textures/darkage_shale_side.png b/mods/vipworld/darkage/textures/darkage_shale_side.png new file mode 100644 index 00000000..b0f7668f Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_shale_side.png differ diff --git a/mods/vipworld/darkage/textures/darkage_shelves.png b/mods/vipworld/darkage/textures/darkage_shelves.png new file mode 100644 index 00000000..57a65c55 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_shelves.png differ diff --git a/mods/vipworld/darkage/textures/darkage_shelves_front.png b/mods/vipworld/darkage/textures/darkage_shelves_front.png new file mode 100644 index 00000000..d3f423cb Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_shelves_front.png differ diff --git a/mods/vipworld/darkage/textures/darkage_silt.png b/mods/vipworld/darkage/textures/darkage_silt.png new file mode 100644 index 00000000..7772d0bc Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_silt.png differ diff --git a/mods/vipworld/darkage/textures/darkage_silt_lump.png b/mods/vipworld/darkage/textures/darkage_silt_lump.png new file mode 100644 index 00000000..c2ab34b8 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_silt_lump.png differ diff --git a/mods/vipworld/darkage/textures/darkage_slate.png b/mods/vipworld/darkage/textures/darkage_slate.png new file mode 100644 index 00000000..dd94dc4e Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_slate.png differ diff --git a/mods/vipworld/darkage/textures/darkage_slate_cobble.png b/mods/vipworld/darkage/textures/darkage_slate_cobble.png new file mode 100644 index 00000000..b4f26c3d Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_slate_cobble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_slate_side.png b/mods/vipworld/darkage/textures/darkage_slate_side.png new file mode 100644 index 00000000..8e1a9ddb Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_slate_side.png differ diff --git a/mods/vipworld/darkage/textures/darkage_slate_tale.png b/mods/vipworld/darkage/textures/darkage_slate_tale.png new file mode 100644 index 00000000..a9e2a71a Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_slate_tale.png differ diff --git a/mods/vipworld/darkage/textures/darkage_slate_tile.png b/mods/vipworld/darkage/textures/darkage_slate_tile.png new file mode 100644 index 00000000..42517efd Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_slate_tile.png differ diff --git a/mods/vipworld/darkage/textures/darkage_stone_brick.png b/mods/vipworld/darkage/textures/darkage_stone_brick.png new file mode 100644 index 00000000..015d54d4 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_stone_brick.png differ diff --git a/mods/vipworld/darkage/textures/darkage_straw.png b/mods/vipworld/darkage/textures/darkage_straw.png new file mode 100644 index 00000000..6cac161a Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_straw.png differ diff --git a/mods/vipworld/darkage/textures/darkage_straw_bale.png b/mods/vipworld/darkage/textures/darkage_straw_bale.png new file mode 100644 index 00000000..47119f78 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_straw_bale.png differ diff --git a/mods/vipworld/darkage/textures/darkage_tuff.png b/mods/vipworld/darkage/textures/darkage_tuff.png new file mode 100644 index 00000000..8d2b7e11 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_tuff.png differ diff --git a/mods/vipworld/darkage/textures/darkage_tuff_bricks.png b/mods/vipworld/darkage/textures/darkage_tuff_bricks.png new file mode 100644 index 00000000..5a02fa04 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_tuff_bricks.png differ diff --git a/mods/vipworld/darkage/textures/darkage_tuff_rubble.png b/mods/vipworld/darkage/textures/darkage_tuff_rubble.png new file mode 100644 index 00000000..c072a310 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_tuff_rubble.png differ diff --git a/mods/vipworld/darkage/textures/darkage_wood_bars.png b/mods/vipworld/darkage/textures/darkage_wood_bars.png new file mode 100644 index 00000000..e0f63d1c Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_wood_bars.png differ diff --git a/mods/vipworld/darkage/textures/darkage_wood_frame.png b/mods/vipworld/darkage/textures/darkage_wood_frame.png new file mode 100644 index 00000000..91392da0 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_wood_frame.png differ diff --git a/mods/vipworld/darkage/textures/darkage_wood_grille.png b/mods/vipworld/darkage/textures/darkage_wood_grille.png new file mode 100644 index 00000000..066e43d2 Binary files /dev/null and b/mods/vipworld/darkage/textures/darkage_wood_grille.png differ diff --git a/mods/vipworld/darkage/walls.lua b/mods/vipworld/darkage/walls.lua new file mode 100644 index 00000000..963637d6 --- /dev/null +++ b/mods/vipworld/darkage/walls.lua @@ -0,0 +1,39 @@ +local node_box = { + type = "connected", + fixed = {{-1/4, -1/2, -1/4, 1/4, 1/2, 1/4}}, + -- connect_bottom = + connect_front = {{-3/16, -1/2, -1/2, 3/16, 3/8, -1/4}}, + connect_left = {{-1/2, -1/2, -3/16, -1/4, 3/8, 3/16}}, + connect_back = {{-3/16, -1/2, 1/4, 3/16, 3/8, 1/2}}, + connect_right = {{ 1/4, -1/2, -3/16, 1/2, 3/8, 3/16}}, + } + +local register_wall = function(base_node) + + local name = base_node .. "_wall" + local ndef = minetest.registered_nodes[base_node] + local groups = ndef.groups + groups["wall"] = 1 + -- inventory node, and pole-type wall start item + minetest.register_node(name, { + description = ndef.description .. " Wall", + drawtype = "nodebox", + node_box = node_box, + connects_to = {base_node,"group:wall"}, + paramtype = "light", + is_ground_content = false, + tiles = ndef.tiles, + walkable = true, + groups = groups, + sounds = ndef.sounds, + }) + +end + +register_wall("darkage:basalt_cobble") +register_wall("darkage:ors_brick") +register_wall("darkage:stone_brick") +register_wall("darkage:slate_cobble") +register_wall("darkage:tuff_bricks") +register_wall("darkage:old_tuff_bricks") +register_wall("darkage:rhyolitic_tuff_bricks") diff --git a/mods/vipworld/ferns/depends.txt b/mods/vipworld/ferns/depends.txt new file mode 100644 index 00000000..562cf632 --- /dev/null +++ b/mods/vipworld/ferns/depends.txt @@ -0,0 +1 @@ +default diff --git a/mods/vipworld/ferns/fern.lua b/mods/vipworld/ferns/fern.lua new file mode 100644 index 00000000..f35756a6 --- /dev/null +++ b/mods/vipworld/ferns/fern.lua @@ -0,0 +1,82 @@ +----------------------------------------------------------------------------------------------- +-- Ferns - Fern 0.1.0 +----------------------------------------------------------------------------------------------- +-- by Mossmanikin +-- Contains code from: biome_lib +-- Looked at code from: default, flowers, painting, trees +-- Dependencies: biome_lib +-- Supports: dryplants, stoneage, sumpf +----------------------------------------------------------------------------------------------- +-- some inspiration from here +-- https://en.wikipedia.org/wiki/Athyrium_yokoscense +-- http://www.mygarden.net.au/gardening/athyrium-yokoscense/3900/1 +----------------------------------------------------------------------------------------------- + + +-- support for i18n + +-- Maintain backward compatibilty +-- minetest-0.5: Begin +local default_ferns = minetest.registered_items["default:fern_1"] or false +if default_ferns then + minetest.register_alias("ferns:fern_03", "default:fern_3") + minetest.register_alias("ferns:fern_02", "default:fern_2") + minetest.register_alias("ferns:fern_01", "default:fern_1") +end +-- minetest-0.5: End +minetest.register_alias("archaeplantae:fern", "ferns:fern_03") +minetest.register_alias("archaeplantae:fern_mid", "ferns:fern_02") +minetest.register_alias("archaeplantae:fern_small", "ferns:fern_01") +minetest.register_alias("ferns:fern_04", "ferns:fern_02") -- for placing + +local nodenames = {} + +local function create_nodes() + local images = { "ferns_fern.png", "ferns_fern_mid.png", "ferns_fern_big.png" } + local vscales = { 1, math.sqrt(8), math.sqrt(11) } + local descs = { "Lady-fern (Athyrium)", nil, nil } + + for i = 1, 3 do + local node_on_place = nil + if i == 1 then + node_on_place = function(itemstack, placer, pointed_thing) + -- place a random fern + local stack = ItemStack("ferns:fern_0"..math.random(1,4)) + local ret = minetest.item_place(stack, placer, pointed_thing) + return ItemStack("ferns:fern_01 "..itemstack:get_count()-(1-ret:get_count())) -- TODO FIXME? + end + end + nodenames[i] = "ferns:fern_"..string.format("%02d", i) + minetest.register_node(nodenames[i], { + description = descs[i] or ("Lady-fern (Athyrium)".." " .. string.format("%02d", i)), + inventory_image = "ferns_fern.png", + drawtype = "plantlike", + visual_scale = vscales[i], + paramtype = "light", + tiles = { images[i] }, + walkable = false, + buildable_to = true, + groups = {snappy=3,flammable=2,attached_node=1,not_in_creative_inventory=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, + drop = "ferns:fern_01", + on_place = node_on_place + }) + end +end + +----------------------------------------------------------------------------------------------- +-- Init +----------------------------------------------------------------------------------------------- + +if default_ferns then + for i = 1, 3 do + nodenames[i] = "ferns:fern_"..string.format("%02d", i) + end +else + create_nodes() +end + diff --git a/mods/vipworld/ferns/gianttreefern.lua b/mods/vipworld/ferns/gianttreefern.lua new file mode 100644 index 00000000..f84a544e --- /dev/null +++ b/mods/vipworld/ferns/gianttreefern.lua @@ -0,0 +1,278 @@ +----------------------------------------------------------------------------------------------- +-- Ferns - Giant Tree Fern 0.1.1 +----------------------------------------------------------------------------------------------- +-- by Mossmanikin +-- Contains code from: biome_lib +-- Looked at code from: 4seasons, default +-- Supports: vines +----------------------------------------------------------------------------------------------- + + +-- lot of code, lot to load + +abstract_ferns.grow_giant_tree_fern = function(pos) + local pos_aux = {x = pos.x, y = pos.y + 1, z = pos.z} + local name = minetest.get_node(pos_aux).name + if name ~= "air" and name ~= "ferns:sapling_giant_tree_fern" + and name ~= "default:junglegrass" then + return + end + + local size = math.random(12,16) -- min of range must be >= 4 + + local leafchecks = { + { + direction = 3, + positions = { + {x = pos.x + 1, y = pos.y + size - 1, z = pos.z }, + {x = pos.x + 2, y = pos.y + size , z = pos.z }, + {x = pos.x + 3, y = pos.y + size - 1, z = pos.z }, + {x = pos.x + 4, y = pos.y + size - 2, z = pos.z } + } + }, + { + direction = 1, + positions = { + {x = pos.x - 1, y = pos.y + size - 1, z = pos.z }, + {x = pos.x - 2, y = pos.y + size, z = pos.z }, + {x = pos.x - 3, y = pos.y + size - 1, z = pos.z }, + {x = pos.x - 4, y = pos.y + size - 2, z = pos.z } + } + }, + { + direction = 2, + positions = { + {x = pos.x , y = pos.y + size - 1, z = pos.z + 1}, + {x = pos.x , y = pos.y + size , z = pos.z + 2}, + {x = pos.x , y = pos.y + size - 1, z = pos.z + 3}, + {x = pos.x , y = pos.y + size - 2, z = pos.z + 4} + } + }, + { + direction = 0, + positions = { + {x = pos.x , y = pos.y + size - 1, z = pos.z - 1}, + {x = pos.x , y = pos.y + size , z = pos.z - 2}, + {x = pos.x , y = pos.y + size - 1, z = pos.z - 3}, + {x = pos.x , y = pos.y + size - 2, z = pos.z - 4} + } + } + } + + local brk = false + for i = 1, size-3 do + pos_aux.y = pos.y + i + local name = minetest.get_node(pos_aux).name + if not (name == "air" or (i == 1 and name == "ferns:sapling_giant_tree_fern")) then + brk = true + break + end + minetest.swap_node({x = pos.x, y = pos.y + i, z = pos.z}, {name="ferns:fern_trunk_big"}) + end + if not brk then + minetest.swap_node({x = pos.x, y = pos.y + size-2, z = pos.z}, {name="ferns:fern_trunk_big_top"}) + minetest.swap_node({x = pos.x, y = pos.y + size-1, z = pos.z}, {name="ferns:tree_fern_leaves_giant"}) + + -- all the checking for air below is to prevent some ugly bugs (incomplete trunks of neighbouring trees), it's a bit slower, but worth the result + + -- assert(#leafchecks == 4) + for i = 1, 4 do + local positions = leafchecks[i].positions + local rot = leafchecks[i].direction + local endpos = 4 -- If the loop below adds all intermediate leaves then the "terminating" leaf will be at positions[4] + -- assert(#positions == 4) + -- add leaves so long as the destination nodes are air + for j = 1, 3 do + if minetest.get_node(positions[j]).name == "air" then + minetest.swap_node(positions[j], {name="ferns:tree_fern_leave_big"}) + else + endpos = j + break + end + end + -- add the terminating leaf if required and possible + if endpos == 4 and minetest.get_node(positions[endpos]).name == "air" then + minetest.swap_node(positions[endpos], {name="ferns:tree_fern_leave_big_end", param2=rot}) + end + end + end +end + +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN LEAVES +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:tree_fern_leaves_giant", { + description = "Tree Fern Crown (Dicksonia)", + drawtype = "plantlike", + visual_scale = math.sqrt(11), + wield_scale = {x=0.175, y=0.175, z=0.175}, + paramtype = "light", + tiles = {"ferns_fern_tree_giant.png"}, + inventory_image = "ferns_fern_tree.png", + walkable = false, + groups = { + snappy=3, + flammable=2, + attached_node=1, + not_in_creative_inventory=1 + }, + drop = { + max_items = 2, + items = { + { + -- occasionally, drop a second sapling instead of leaves + -- (extra saplings can also be obtained by replanting and + -- reharvesting leaves) + items = {"ferns:sapling_giant_tree_fern"}, + rarity = 10, + }, + { + items = {"ferns:sapling_giant_tree_fern"}, + }, + { + items = {"ferns:tree_fern_leaves_giant"}, + } + } + }, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, +}) +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN LEAVE PART +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:tree_fern_leave_big", { + description = "Giant Tree Fern Leaves", + drawtype = "raillike", + paramtype = "light", + tiles = { + "ferns_tree_fern_leave_big.png", + }, + walkable = false, + groups = { + snappy=3, + flammable=2, + attached_node=1, + not_in_creative_inventory=1 + }, + drop = "", + sounds = default.node_sound_leaves_defaults(), +}) + +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN LEAVE END +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:tree_fern_leave_big_end", { + description = "Giant Tree Fern Leave End", + drawtype = "nodebox", + paramtype = "light", + paramtype2 = "facedir", + tiles = { "ferns_tree_fern_leave_big_end.png" }, + walkable = false, + node_box = { + type = "fixed", +-- {left, bottom, front, right, top, back } + fixed = {-1/2, -1/2, 1/2, 1/2, 33/64, 1/2}, + }, + selection_box = { + type = "fixed", + fixed = {-1/2, -1/2, 1/2, 1/2, 33/64, 1/2}, + }, + groups = { + snappy=3, + flammable=2, + attached_node=1, + not_in_creative_inventory=1 + }, + drop = "", + sounds = default.node_sound_leaves_defaults(), +}) + +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN TRUNK TOP +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:fern_trunk_big_top", { + description = "Giant Fern Trunk", + drawtype = "nodebox", + paramtype = "light", + tiles = { + "ferns_fern_trunk_big_top.png^ferns_tree_fern_leave_big_cross.png", + "ferns_fern_trunk_big_top.png^ferns_tree_fern_leave_big_cross.png", + "ferns_fern_trunk_big.png" + }, + node_box = { + type = "fixed", +-- {left, bottom, front, right, top, back } + fixed = { + {-1/2, 33/64, -1/2, 1/2, 33/64, 1/2}, + {-1/4, -1/2, -1/4, 1/4, 1/2, 1/4}, + } + }, + selection_box = { + type = "fixed", + fixed = {-1/4, -1/2, -1/4, 1/4, 1/2, 1/4}, + }, + groups = { + tree=1, + choppy=2, + oddly_breakable_by_hand=2, + flammable=3, + wood=1, + not_in_creative_inventory=1, + leafdecay=3 -- to support vines + }, + drop = "ferns:fern_trunk_big", + sounds = default.node_sound_wood_defaults(), +}) + +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN TRUNK +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:fern_trunk_big", { + description = "Giant Fern Trunk", + drawtype = "nodebox", + paramtype = "light", + tiles = { + "ferns_fern_trunk_big_top.png", + "ferns_fern_trunk_big_top.png", + "ferns_fern_trunk_big.png" + }, + node_box = { + type = "fixed", + fixed = {-1/4, -1/2, -1/4, 1/4, 1/2, 1/4}, + }, + selection_box = { + type = "fixed", + fixed = {-1/4, -1/2, -1/4, 1/4, 1/2, 1/4}, + }, + groups = {tree=1,choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1}, + sounds = default.node_sound_wood_defaults(), + after_destruct = function(pos,oldnode) + local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}) + if node.name == "ferns:fern_trunk_big" or node.name == "ferns:fern_trunk_big_top" then + minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z}) + minetest.add_item(pos,"ferns:fern_trunk_big") + end + end, +}) + +----------------------------------------------------------------------------------------------- +-- GIANT TREE FERN SAPLING +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:sapling_giant_tree_fern", { + description = "Giant Tree Fern Sapling", + drawtype = "plantlike", + paramtype = "light", + tiles = {"ferns_sapling_tree_fern_giant.png"}, + inventory_image = "ferns_sapling_tree_fern_giant.png", + walkable = false, + groups = {snappy=3,flammable=2,flora=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, +}) + diff --git a/mods/vipworld/ferns/horsetail.lua b/mods/vipworld/ferns/horsetail.lua new file mode 100644 index 00000000..3d6fbf0a --- /dev/null +++ b/mods/vipworld/ferns/horsetail.lua @@ -0,0 +1,71 @@ +----------------------------------------------------------------------------------------------- +-- Archae Plantae - Horsetail 0.0.5 +----------------------------------------------------------------------------------------------- +-- by Mossmanikin +-- Contains code from: biome_lib +-- Looked at code from: default, flowers, trees +-- Dependencies: biome_lib +-- Supports: dryplants, stoneage, sumpf +----------------------------------------------------------------------------------------------- + + +-- support for i18n +----------------------------------------------------------------------------------------------- +-- HORSETAIL (EQUISETUM) +----------------------------------------------------------------------------------------------- + +local node_names = {} + +local function create_nodes() + local selection_boxes = { + { -0.15, -1/2, -0.15, 0.15, -1/16, 0.15 }, + { -0.15, -1/2, -0.15, 0.15, 1/16, 0.15 }, + { -0.15, -1/2, -0.15, 0.15, 4/16, 0.15 }, + { -0.15, -1/2, -0.15, 0.15, 7/16, 0.15 }, + } + + for i = 1, 4 do + local node_name = "ferns:horsetail_" .. string.format("%02d", i) + local node_img = "ferns_horsetail_" .. string.format("%02d", i) .. ".png" + local node_desc + local node_on_use = nil + local node_drop = "ferns:horsetail_04" + + if i == 1 then + node_desc = "Young Horsetail (Equisetum)" + node_on_use = minetest.item_eat(1) -- young ones edible https://en.wikipedia.org/wiki/Equisetum + node_drop = node_name + elseif i == 4 then + node_desc = "Horsetail (Equisetum)" + else + node_desc = "Horsetail (Equisetum)".." ".. string.format("%02d", i) + end + + node_names[i] = node_name + + minetest.register_node(node_name, { + description = node_desc, + drawtype = "plantlike", + paramtype = "light", + tiles = { node_img }, + inventory_image = node_img, + walkable = false, + buildable_to = true, + groups = {snappy=3,flammable=2,attached_node=1,horsetail=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = selection_boxes[i], + }, + on_use = node_on_use, + drop = node_drop, + }) + end +end + +----------------------------------------------------------------------------------------------- +-- Init +----------------------------------------------------------------------------------------------- + +create_nodes() + diff --git a/mods/vipworld/ferns/init.lua b/mods/vipworld/ferns/init.lua new file mode 100644 index 00000000..d4287c0e --- /dev/null +++ b/mods/vipworld/ferns/init.lua @@ -0,0 +1,20 @@ +----------------------------------------------------------------------------------------------- +local title = "Ferns" -- former "Archae Plantae" +local version = "0.2.1" +local mname = "ferns" -- former "archaeplantae" +----------------------------------------------------------------------------------------------- +-- (by Mossmanikin) +----------------------------------------------------------------------------------------------- + +abstract_ferns = {} + +-- support for i18n + + dofile(minetest.get_modpath("ferns").."/fern.lua") + + dofile(minetest.get_modpath("ferns").."/horsetail.lua") + + dofile(minetest.get_modpath("ferns").."/treefern.lua") + + dofile(minetest.get_modpath("ferns").."/gianttreefern.lua") + diff --git a/mods/vipworld/ferns/settings.lua b/mods/vipworld/ferns/settings.lua new file mode 100644 index 00000000..0fcdfbb3 --- /dev/null +++ b/mods/vipworld/ferns/settings.lua @@ -0,0 +1,43 @@ +-- In case you don't wanna have errors: + +-- Only change what's behind a "=" (or "--"). +-- Don't use caps (behind a "="). + +-- If there's a "false" (behind a "=") you can change it to "true" (and the other way around). +-- Spelling is important. +-- If "true" or "false" is necessary as setting, everything(!) which is not spelled "true" will be read as if it were "false" (even "1", "True"...) + +-- If you wanna comment something (for example to remember the default value), you can do this by putting "--" in front of the comment. +-- You can put "--" at the end of a line with "=" in it, or at the beginning of an empty/new line (minetest will ignore what's behind it then). +-- But don't put "--" in front of a line with "=" in it (or else minetest will ignore the setting and you might get an error). + +-- If something is still unclear, don't hesitate to post your question @ https://forum.minetest.net/viewtopic.php?id=6921 + +abstract_ferns.config = {} + +-- Which plants should generate/spawn? +abstract_ferns.config.enable_lady_fern = true +abstract_ferns.config.enable_horsetails = true +abstract_ferns.config.enable_treefern = true +abstract_ferns.config.enable_giant_treefern = true + +-- Where should they generate/spawn? (if they generate/spawn) +-- +-- Lady-Fern +abstract_ferns.config.lady_ferns_near_tree = true +abstract_ferns.config.lady_ferns_near_rock = true +abstract_ferns.config.lady_ferns_near_ores = true -- if there's a bunch of ferns there's ores nearby, this one causes a huge fps drop +abstract_ferns.config.lady_ferns_in_groups = false -- this one is meant as a replacement of Ferns_near_Ores: ferns tend to generate in groups, less fps drop, no hint for nearby ores +-- +-- Horsetails +abstract_ferns.config.enable_horsetails_spawning = false -- horsetails will grow in already explored areas, over time, near water or gravel +abstract_ferns.config.enable_horsetails_on_grass = true -- on dirt with grass and swamp (sumpf mod) +abstract_ferns.config.enable_horsetails_on_stones = true -- on gravel, mossy cobble and silex (stoneage mod) +-- +-- Tree_Fern +abstract_ferns.config.enable_treeferns_in_jungle = true +abstract_ferns.config.enable_treeferns_in_oases = true -- for oases and tropical beaches +-- +-- Giant_Tree_Fern +abstract_ferns.config.enable_giant_treeferns_in_jungle = true +abstract_ferns.config.enable_giant_treeferns_in_oases = true -- for oases and tropical beaches diff --git a/mods/vipworld/ferns/textures/ferns_5.png b/mods/vipworld/ferns/textures/ferns_5.png new file mode 100644 index 00000000..7e406651 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_5.png differ diff --git a/mods/vipworld/ferns/textures/ferns_6.png b/mods/vipworld/ferns/textures/ferns_6.png new file mode 100644 index 00000000..107bbf6e Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_6.png differ diff --git a/mods/vipworld/ferns/textures/ferns_7.png b/mods/vipworld/ferns/textures/ferns_7.png new file mode 100644 index 00000000..b1ac1f51 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_7.png differ diff --git a/mods/vipworld/ferns/textures/ferns_8.png b/mods/vipworld/ferns/textures/ferns_8.png new file mode 100644 index 00000000..db5510ba Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_8.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern.png b/mods/vipworld/ferns/textures/ferns_fern.png new file mode 100644 index 00000000..7884e5a3 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_big.png b/mods/vipworld/ferns/textures/ferns_fern_big.png new file mode 100644 index 00000000..42deb953 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_big.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_mid.png b/mods/vipworld/ferns/textures/ferns_fern_mid.png new file mode 100644 index 00000000..32133088 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_mid.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_tree.png b/mods/vipworld/ferns/textures/ferns_fern_tree.png new file mode 100644 index 00000000..8daeafd8 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_tree.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_tree_giant.png b/mods/vipworld/ferns/textures/ferns_fern_tree_giant.png new file mode 100644 index 00000000..2e3adb72 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_tree_giant.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_tree_inv.png b/mods/vipworld/ferns/textures/ferns_fern_tree_inv.png new file mode 100644 index 00000000..54176691 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_tree_inv.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_tree_tl.png b/mods/vipworld/ferns/textures/ferns_fern_tree_tl.png new file mode 100644 index 00000000..16b6e3a0 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_tree_tl.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_tree_tr.png b/mods/vipworld/ferns/textures/ferns_fern_tree_tr.png new file mode 100644 index 00000000..768430fc Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_tree_tr.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_trunk.png b/mods/vipworld/ferns/textures/ferns_fern_trunk.png new file mode 100644 index 00000000..a8e1bf6f Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_trunk.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_trunk_big.png b/mods/vipworld/ferns/textures/ferns_fern_trunk_big.png new file mode 100644 index 00000000..24ede0aa Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_trunk_big.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_trunk_big_top.png b/mods/vipworld/ferns/textures/ferns_fern_trunk_big_top.png new file mode 100644 index 00000000..3e3c829e Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_trunk_big_top.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fern_trunk_top.png b/mods/vipworld/ferns/textures/ferns_fern_trunk_top.png new file mode 100644 index 00000000..8b259cc4 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fern_trunk_top.png differ diff --git a/mods/vipworld/ferns/textures/ferns_ferntuber.png b/mods/vipworld/ferns/textures/ferns_ferntuber.png new file mode 100644 index 00000000..2d6785da Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_ferntuber.png differ diff --git a/mods/vipworld/ferns/textures/ferns_ferntuber_roasted.png b/mods/vipworld/ferns/textures/ferns_ferntuber_roasted.png new file mode 100644 index 00000000..f62a88d6 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_ferntuber_roasted.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fiddlehead.png b/mods/vipworld/ferns/textures/ferns_fiddlehead.png new file mode 100644 index 00000000..0925c780 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fiddlehead.png differ diff --git a/mods/vipworld/ferns/textures/ferns_fiddlehead_roasted.png b/mods/vipworld/ferns/textures/ferns_fiddlehead_roasted.png new file mode 100644 index 00000000..9f4943ce Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_fiddlehead_roasted.png differ diff --git a/mods/vipworld/ferns/textures/ferns_horsetail_01.png b/mods/vipworld/ferns/textures/ferns_horsetail_01.png new file mode 100644 index 00000000..60d3ca67 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_horsetail_01.png differ diff --git a/mods/vipworld/ferns/textures/ferns_horsetail_02.png b/mods/vipworld/ferns/textures/ferns_horsetail_02.png new file mode 100644 index 00000000..3c7edf73 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_horsetail_02.png differ diff --git a/mods/vipworld/ferns/textures/ferns_horsetail_03.png b/mods/vipworld/ferns/textures/ferns_horsetail_03.png new file mode 100644 index 00000000..5d28a468 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_horsetail_03.png differ diff --git a/mods/vipworld/ferns/textures/ferns_horsetail_04.png b/mods/vipworld/ferns/textures/ferns_horsetail_04.png new file mode 100644 index 00000000..a8254ed5 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_horsetail_04.png differ diff --git a/mods/vipworld/ferns/textures/ferns_sapling_tree_fern.png b/mods/vipworld/ferns/textures/ferns_sapling_tree_fern.png new file mode 100644 index 00000000..b459d481 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_sapling_tree_fern.png differ diff --git a/mods/vipworld/ferns/textures/ferns_sapling_tree_fern_giant.png b/mods/vipworld/ferns/textures/ferns_sapling_tree_fern_giant.png new file mode 100644 index 00000000..e5560166 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_sapling_tree_fern_giant.png differ diff --git a/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big.png b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big.png new file mode 100644 index 00000000..09cc0012 Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big.png differ diff --git a/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_cross.png b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_cross.png new file mode 100644 index 00000000..48f7e2cb Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_cross.png differ diff --git a/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_end.png b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_end.png new file mode 100644 index 00000000..d0064fee Binary files /dev/null and b/mods/vipworld/ferns/textures/ferns_tree_fern_leave_big_end.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/archaeplantae_horsetails.png b/mods/vipworld/ferns/textures/not_in_use/archaeplantae_horsetails.png new file mode 100644 index 00000000..6ba89c15 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/archaeplantae_horsetails.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/big picture 3.png b/mods/vipworld/ferns/textures/not_in_use/big picture 3.png new file mode 100644 index 00000000..de344e63 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/big picture 3.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_left.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_left.png new file mode 100644 index 00000000..0fdf5159 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_left.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_right.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_right.png new file mode 100644 index 00000000..d30def0b Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_big_right.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_left.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_left.png new file mode 100644 index 00000000..d146df31 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_left.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_right.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_right.png new file mode 100644 index 00000000..e10460a3 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_mid_right.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_bl.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_bl.png new file mode 100644 index 00000000..e2fdb67f Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_bl.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_br.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_br.png new file mode 100644 index 00000000..eb547e82 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_tree_br.png differ diff --git a/mods/vipworld/ferns/textures/not_in_use/ferns_fern_trunk_big_crown.png b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_trunk_big_crown.png new file mode 100644 index 00000000..7a126712 Binary files /dev/null and b/mods/vipworld/ferns/textures/not_in_use/ferns_fern_trunk_big_crown.png differ diff --git a/mods/vipworld/ferns/textures/old/archaeplantae_fern_old4.png b/mods/vipworld/ferns/textures/old/archaeplantae_fern_old4.png new file mode 100644 index 00000000..a3d403c1 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/archaeplantae_fern_old4.png differ diff --git a/mods/vipworld/ferns/textures/old/comb.png b/mods/vipworld/ferns/textures/old/comb.png new file mode 100644 index 00000000..ea1e19f5 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/comb.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_5_old.png b/mods/vipworld/ferns/textures/old/ferns_5_old.png new file mode 100644 index 00000000..56762781 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_5_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_6_old.png b/mods/vipworld/ferns/textures/old/ferns_6_old.png new file mode 100644 index 00000000..36d60403 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_6_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_7_old.png b/mods/vipworld/ferns/textures/old/ferns_7_old.png new file mode 100644 index 00000000..8aabe61d Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_7_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_big_old.png b/mods/vipworld/ferns/textures/old/ferns_fern_big_old.png new file mode 100644 index 00000000..d17ed117 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_big_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_mid_old.png b/mods/vipworld/ferns/textures/old/ferns_fern_mid_old.png new file mode 100644 index 00000000..08513c2e Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_mid_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_tree_old.png b/mods/vipworld/ferns/textures/old/ferns_fern_tree_old.png new file mode 100644 index 00000000..45996728 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_tree_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_old2.png b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_old2.png new file mode 100644 index 00000000..a048ee0c Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old.png b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old.png new file mode 100644 index 00000000..d83151f3 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old2.png b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old2.png new file mode 100644 index 00000000..244ddfe6 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_big_top_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_fern_trunk_top_old.png b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_top_old.png new file mode 100644 index 00000000..872fdabb Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_fern_trunk_top_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_horsetail_01_old2.png b/mods/vipworld/ferns/textures/old/ferns_horsetail_01_old2.png new file mode 100644 index 00000000..7d557185 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_horsetail_01_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_horsetail_02_old2.png b/mods/vipworld/ferns/textures/old/ferns_horsetail_02_old2.png new file mode 100644 index 00000000..d0b55630 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_horsetail_02_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_horsetail_03_old2.png b/mods/vipworld/ferns/textures/old/ferns_horsetail_03_old2.png new file mode 100644 index 00000000..42cf76e0 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_horsetail_03_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_horsetail_04_old2.png b/mods/vipworld/ferns/textures/old/ferns_horsetail_04_old2.png new file mode 100644 index 00000000..600ebe76 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_horsetail_04_old2.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_cross_old.png b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_cross_old.png new file mode 100644 index 00000000..00ec9d89 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_cross_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_end_old.png b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_end_old.png new file mode 100644 index 00000000..ce1a87d8 Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_end_old.png differ diff --git a/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_old.png b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_old.png new file mode 100644 index 00000000..b568383e Binary files /dev/null and b/mods/vipworld/ferns/textures/old/ferns_tree_fern_leave_big_old.png differ diff --git a/mods/vipworld/ferns/treefern.lua b/mods/vipworld/ferns/treefern.lua new file mode 100644 index 00000000..0ab957a7 --- /dev/null +++ b/mods/vipworld/ferns/treefern.lua @@ -0,0 +1,164 @@ +----------------------------------------------------------------------------------------------- +-- Ferns - Tree Fern 0.1.1 +----------------------------------------------------------------------------------------------- +-- by Mossmanikin +-- Contains code from: biome_lib +-- Looked at code from: default , trees +----------------------------------------------------------------------------------------------- + + +abstract_ferns.grow_tree_fern = function(pos) + + local pos_aux = {x = pos.x, y = pos.y + 1, z = pos.z} + local name = minetest.get_node(pos_aux).name + if name ~= "air" and name ~= "ferns:sapling_tree_fern" + and name ~= "default:junglegrass" then + return + end + + local size = math.random(1, 4) + math.random(1, 4) + if (size > 5) then + size = 10 - size + end + size = size + 1 + local crown = ({ "ferns:tree_fern_leaves", "ferns:tree_fern_leaves_02" })[math.random(1, 2)] + + local i = 1 + local brk = false + while (i < size) do + pos_aux.y = pos.y + i + name = minetest.get_node(pos_aux).name + if not (name == "air" or (i == 1 and name == "ferns:sapling_tree_fern")) then + brk = true + break + end + minetest.swap_node({x = pos.x, y = pos.y + i, z = pos.z}, { name = "ferns:fern_trunk" }) + i = i + 1 + end + if not brk then + minetest.swap_node({x = pos.x, y = pos.y + i - 1, z = pos.z}, { name = crown }) + end +end + +----------------------------------------------------------------------------------------------- +-- TREE FERN LEAVES +----------------------------------------------------------------------------------------------- + +-- TODO: Both of these nodes look the same? + +minetest.register_node("ferns:tree_fern_leaves", { + description = "Tree Fern Crown (Dicksonia)", + drawtype = "plantlike", + visual_scale = math.sqrt(8), + paramtype = "light", + paramtype2 = "facedir", + --tiles = {"[combine:32x32:0,0=top_left.png:0,16=bottom_left.png:16,0=top_right.png:16,16=bottom_right.png"}, + tiles = {"ferns_fern_tree.png"}, + inventory_image = "ferns_fern_tree_inv.png", + walkable = false, + groups = {snappy=3,flammable=2,attached_node=1}, + drop = { + max_items = 2, + items = { + { + -- occasionally, drop a second sapling instead of leaves + -- (extra saplings can also be obtained by replanting and + -- reharvesting leaves) + items = {"ferns:sapling_tree_fern"}, + rarity = 10, + }, + { + items = {"ferns:sapling_tree_fern"}, + }, + { + items = {"ferns:tree_fern_leaves"}, + } + } + }, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, +}) +minetest.register_node("ferns:tree_fern_leaves_02", { + drawtype = "plantlike", + visual_scale = math.sqrt(8), + paramtype = "light", + tiles = {"ferns_fern_big.png"}, + walkable = false, + groups = {snappy=3,flammable=2,attached_node=1,not_in_creative_inventory=1}, + drop = { + max_items = 2, + items = { + { + -- occasionally, drop a second sapling instead of leaves + -- (extra saplings can also be obtained by replanting and + -- reharvesting leaves) + items = {"ferns:sapling_tree_fern"}, + rarity = 10, + }, + { + items = {"ferns:sapling_tree_fern"}, + }, + { + items = {"ferns:tree_fern_leaves"}, + } + } + }, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, +}) +----------------------------------------------------------------------------------------------- +-- FERN TRUNK +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:fern_trunk", { + description = "Fern Trunk (Dicksonia)", + drawtype = "nodebox", + paramtype = "light", + tiles = { + "ferns_fern_trunk_top.png", + "ferns_fern_trunk_top.png", + "ferns_fern_trunk.png" + }, + node_box = { + type = "fixed", + fixed = {-1/8, -1/2, -1/8, 1/8, 1/2, 1/8}, + }, + selection_box = { + type = "fixed", + fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7}, + }, + groups = {tree=1,choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1}, + sounds = default.node_sound_wood_defaults(), + after_destruct = function(pos,oldnode) + local node = minetest.get_node({x=pos.x,y=pos.y+1,z=pos.z}) + if node.name == "ferns:fern_trunk" then + minetest.dig_node({x=pos.x,y=pos.y+1,z=pos.z}) + minetest.add_item(pos,"ferns:fern_trunk") + end + end, +}) + +----------------------------------------------------------------------------------------------- +-- TREE FERN SAPLING +----------------------------------------------------------------------------------------------- +minetest.register_node("ferns:sapling_tree_fern", { + description = "Tree Fern Sapling (Dicksonia)", + drawtype = "plantlike", + paramtype = "light", + paramtype2 = "facedir", + tiles = {"ferns_sapling_tree_fern.png"}, + inventory_image = "ferns_sapling_tree_fern.png", + walkable = false, + groups = {snappy=3,flammable=2,flora=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-7/16, -1/2, -7/16, 7/16, 0, 7/16}, + }, +}) + diff --git a/mods/vipworld/flowers_plus/depends.txt b/mods/vipworld/flowers_plus/depends.txt new file mode 100644 index 00000000..9f9a7ec0 --- /dev/null +++ b/mods/vipworld/flowers_plus/depends.txt @@ -0,0 +1,2 @@ +farming? +flowers? diff --git a/mods/vipworld/flowers_plus/flowers-changelog.txt b/mods/vipworld/flowers_plus/flowers-changelog.txt new file mode 100644 index 00000000..fbe75185 --- /dev/null +++ b/mods/vipworld/flowers_plus/flowers-changelog.txt @@ -0,0 +1,24 @@ +Changelog +--------- + +2012-08-06: Tweaked selection boxes on all nodes. Tweaked seaweed to use +signlike instead of raillike drawtype, (still forced to only spawn flat as +usual). Adjusted light level limits to give it more time to grow. Created +this changelog file using github commit messages as the basis. Shrunk the +geranium flower down a bit to better match the others. + +2012-08-03: Tuned out the random-numbers-inside-ABM stuff. Uses the ABM's +chance setting instead. Should be approximately the same as before, but +hopefully using a tad less CPU. Minor tweak to ABM interval/growing delay. + +2012-08-01: Added blue geranium to the collection of flowers. + +2012-07-31: Disable debug by default. + +2012-07-30: many updates over the course of the day - first commit, removed +some redundant files, added wield/inventory image entries for each item, to +force the game to draw them properly (these shouldn't be needed, must be a +bug). Tweaked spawn code so that the radius check also includes the name of +the item being spawned as well as items in group:flower, that way all items can +have a radius test, and not just those in group:flower. Fiddled with the spawn +rates a bit. diff --git a/mods/vipworld/flowers_plus/init.lua b/mods/vipworld/flowers_plus/init.lua new file mode 100644 index 00000000..00108e31 --- /dev/null +++ b/mods/vipworld/flowers_plus/init.lua @@ -0,0 +1,154 @@ +-- This file supplies a few additional plants and some related crafts +-- for the plantlife modpack. Last revision: 2013-04-24 + +flowers_plus = {} + +local SPAWN_DELAY = 1000 +local SPAWN_CHANCE = 200 +local flowers_seed_diff = 329 +local lilies_max_count = 320 +local lilies_rarity = 33 +local seaweed_max_count = 320 +local seaweed_rarity = 33 +local sunflowers_max_count = 10 +local sunflowers_rarity = 25 + +-- register the various rotations of waterlilies + +local lilies_list = { + { nil , nil , 1 }, + { "225", "22.5" , 2 }, + { "45" , "45" , 3 }, + { "675", "67.5" , 4 }, + { "s1" , "small_1" , 5 }, + { "s2" , "small_2" , 6 }, + { "s3" , "small_3" , 7 }, + { "s4" , "small_4" , 8 }, +} + +for i in ipairs(lilies_list) do + local deg1 = "" + local deg2 = "" + local lily_groups = {snappy = 3,flammable=2,flower=1} + + if lilies_list[i][1] ~= nil then + deg1 = "_"..lilies_list[i][1] + deg2 = "_"..lilies_list[i][2] + lily_groups = { snappy = 3,flammable=2,flower=1, not_in_creative_inventory=1 } + end + + minetest.register_node(":flowers:waterlily"..deg1, { + description = "Waterlily", + drawtype = "nodebox", + tiles = { + "flowers_waterlily"..deg2..".png", + "flowers_waterlily"..deg2..".png^[transformFY" + }, + inventory_image = "flowers_waterlily.png", + wield_image = "flowers_waterlily.png", + sunlight_propagates = true, + paramtype = "light", + paramtype2 = "facedir", + walkable = false, + groups = lily_groups, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = { -0.4, -0.5, -0.4, 0.4, -0.45, 0.4 }, + }, + node_box = { + type = "fixed", + fixed = { -0.5, -0.49, -0.5, 0.5, -0.49, 0.5 }, + }, + buildable_to = true, + node_placement_prediction = "", + + liquids_pointable = true, + drop = "flowers:waterlily", + on_place = function(itemstack, placer, pointed_thing) + local keys=placer:get_player_control() + local pt = pointed_thing + + local place_pos = nil + local top_pos = {x=pt.under.x, y=pt.under.y+1, z=pt.under.z} + local under_node = minetest.get_node(pt.under) + local above_node = minetest.get_node(pt.above) + local top_node = minetest.get_node(top_pos) + + if biome_lib:get_nodedef_field(under_node.name, "buildable_to") then + if under_node.name ~= "default:water_source" then + place_pos = pt.under + elseif top_node.name ~= "default:water_source" + and biome_lib:get_nodedef_field(top_node.name, "buildable_to") then + place_pos = top_pos + else + return + end + elseif biome_lib:get_nodedef_field(above_node.name, "buildable_to") then + place_pos = pt.above + end + + if place_pos and not minetest.is_protected(place_pos, placer:get_player_name()) then + + local nodename = "default:cobble" -- if this block appears, something went....wrong :-) + + if not keys["sneak"] then + local node = minetest.get_node(pt.under) + local waterlily = math.random(1,8) + if waterlily == 1 then + nodename = "flowers:waterlily" + elseif waterlily == 2 then + nodename = "flowers:waterlily_225" + elseif waterlily == 3 then + nodename = "flowers:waterlily_45" + elseif waterlily == 4 then + nodename = "flowers:waterlily_675" + elseif waterlily == 5 then + nodename = "flowers:waterlily_s1" + elseif waterlily == 6 then + nodename = "flowers:waterlily_s2" + elseif waterlily == 7 then + nodename = "flowers:waterlily_s3" + elseif waterlily == 8 then + nodename = "flowers:waterlily_s4" + end + minetest.swap_node(place_pos, {name = nodename, param2 = math.random(0,3) }) + else + local fdir = minetest.dir_to_facedir(placer:get_look_dir()) + minetest.swap_node(place_pos, {name = "flowers:waterlily", param2 = fdir}) + end + + if not biome_lib.expect_infinite_stacks then + itemstack:take_item() + end + return itemstack + end + end, + }) +end + +minetest.register_node(":flowers:sunflower", { + description = "Sunflower", + drawtype = "mesh", + paramtype = "light", + paramtype2 = "facedir", + inventory_image = "flowers_sunflower_inv.png", + mesh = "flowers_sunflower.obj", + tiles = { "flowers_sunflower.png" }, + walkable = false, + buildable_to = true, + is_ground_content = true, + groups = { dig_immediate=3, flora=1, flammable=3 }, + sounds = default.node_sound_leaves_defaults(), + selection_box = box, + collision_box = box, + drop = { + max_items = 1, + items = { + {items = {sunflower_drop}, rarity = 8}, + {items = {"flowers:sunflower"}}, + } + } +}) + + diff --git a/mods/vipworld/flowers_plus/models/flowers_sunflower.obj b/mods/vipworld/flowers_plus/models/flowers_sunflower.obj new file mode 100644 index 00000000..35beb8db --- /dev/null +++ b/mods/vipworld/flowers_plus/models/flowers_sunflower.obj @@ -0,0 +1,73 @@ +# Blender v2.70 (sub 0) OBJ File: 'sunflower.blend' +# www.blender.org +mtllib sunflower_sunflower.mtl +o Cube +v -0.015625 -0.500000 0.028125 +v -0.015625 -0.500000 -0.028125 +v 0.028125 -0.500000 -0.028125 +v 0.028125 -0.500000 0.028125 +v -0.015625 0.790890 0.028125 +v -0.015625 0.689140 -0.028125 +v 0.028125 0.689140 -0.028125 +v 0.028125 0.790890 0.028125 +v 0.250000 0.533494 -0.125000 +v -0.250000 0.533494 -0.125000 +v 0.250000 0.966506 0.125000 +v -0.250000 0.966506 0.125000 +v 0.267063 0.373606 -0.088749 +v 0.044375 0.303464 -0.141576 +v 0.239202 0.473737 0.108253 +v -0.008452 0.378817 0.108253 +v 0.017721 0.016639 -0.112053 +v -0.231280 0.110242 -0.115181 +v -0.030356 -0.036246 0.146223 +v -0.252831 0.028885 0.088910 +v 0.062500 0.641747 -0.057917 +v -0.106953 0.097386 -0.113617 +v -0.006318 -0.053008 0.024707 +v 0.118968 0.360674 0.006909 +v 0.116101 0.452031 0.108253 +v 0.017962 0.298392 -0.019504 +v 0.145794 0.358736 -0.115163 +v 0.240237 0.375544 0.033323 +v -0.224509 0.021356 -0.032606 +v -0.131273 0.023638 0.117567 +v -0.102951 0.016109 -0.003950 +vt 0.750000 0.875000 +vt 0.625000 0.875000 +vt 0.625000 0.750000 +vt 0.750000 0.750000 +vt 0.750000 1.000000 +vt 0.625000 1.000000 +vt 0.625000 0.500000 +vt 0.500000 0.500000 +vt 0.500000 1.000000 +vt 0.000100 0.500100 +vt 0.499900 0.500100 +vt 0.499900 0.999900 +vt 0.000100 0.999900 +vt 0.250000 0.250000 +vt 0.500000 0.250000 +vt 0.250000 0.500000 +vt 0.000000 0.250000 +vt 0.000000 0.000000 +vt 0.250000 0.000000 +vt 0.000000 0.500000 +vt 0.500000 0.000000 +usemtl Sunflower +s off +f 1/1 2/2 3/3 4/4 +f 5/5 8/6 7/2 6/1 +f 1/7 5/8 6/9 2/6 +f 2/7 6/6 7/9 3/8 +f 3/7 7/8 8/9 4/6 +f 5/7 1/8 4/9 8/6 +f 9/10 10/11 12/12 11/13 +f 24/14 26/15 16/8 25/16 +f 31/14 29/17 20/18 30/19 +f 17/8 22/16 31/14 23/15 +f 22/16 18/20 29/17 31/14 +f 27/19 14/21 26/15 24/14 +f 13/18 27/19 24/14 28/17 +f 23/15 31/14 30/19 19/21 +f 28/17 24/14 25/16 15/20 diff --git a/mods/vipworld/flowers_plus/textures/flowers_seaweed.png b/mods/vipworld/flowers_plus/textures/flowers_seaweed.png new file mode 100644 index 00000000..b5bd99c5 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_seaweed.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_seaweedLight.png b/mods/vipworld/flowers_plus/textures/flowers_seaweedLight.png new file mode 100644 index 00000000..7595ebc9 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_seaweedLight.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_seaweed_2.png b/mods/vipworld/flowers_plus/textures/flowers_seaweed_2.png new file mode 100644 index 00000000..0b24730c Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_seaweed_2.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_seaweed_3.png b/mods/vipworld/flowers_plus/textures/flowers_seaweed_3.png new file mode 100644 index 00000000..d9b7f439 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_seaweed_3.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_seaweed_4.png b/mods/vipworld/flowers_plus/textures/flowers_seaweed_4.png new file mode 100644 index 00000000..887c1839 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_seaweed_4.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_sunflower.png b/mods/vipworld/flowers_plus/textures/flowers_sunflower.png new file mode 100644 index 00000000..fb95cb4b Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_sunflower.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_sunflower_inv.png b/mods/vipworld/flowers_plus/textures/flowers_sunflower_inv.png new file mode 100644 index 00000000..c36ed010 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_sunflower_inv.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily.png new file mode 100644 index 00000000..7b58bb2e Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_22.5.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_22.5.png new file mode 100644 index 00000000..73647aca Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_22.5.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_45.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_45.png new file mode 100644 index 00000000..7ca683ed Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_45.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_67.5.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_67.5.png new file mode 100644 index 00000000..234da606 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_67.5.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_1.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_1.png new file mode 100644 index 00000000..a2d88cd8 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_1.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_2.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_2.png new file mode 100644 index 00000000..7d2ba869 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_2.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_3.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_3.png new file mode 100644 index 00000000..bfcab906 Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_3.png differ diff --git a/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_4.png b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_4.png new file mode 100644 index 00000000..8119ea7c Binary files /dev/null and b/mods/vipworld/flowers_plus/textures/flowers_waterlily_small_4.png differ diff --git a/mods/vipworld/modpack.txt b/mods/vipworld/modpack.txt new file mode 100644 index 00000000..e69de29b diff --git a/mods/vipworld/molehills/depends.txt b/mods/vipworld/molehills/depends.txt new file mode 100644 index 00000000..4ad96d51 --- /dev/null +++ b/mods/vipworld/molehills/depends.txt @@ -0,0 +1 @@ +default diff --git a/mods/vipworld/molehills/init.lua b/mods/vipworld/molehills/init.lua new file mode 100644 index 00000000..2d9791cf --- /dev/null +++ b/mods/vipworld/molehills/init.lua @@ -0,0 +1,43 @@ +----------------------------------------------------------------------------------------------- +local title = "Mole Hills" +local version = "0.0.3" +local mname = "molehills" +----------------------------------------------------------------------------------------------- +-- Idea by Sokomine +-- Code & textures by Mossmanikin + +abstract_molehills = {} + +----------------------------------------------------------------------------------------------- +-- NoDe +----------------------------------------------------------------------------------------------- + +local mh_cbox = { + type = "fixed", + fixed = { -0.5, -0.5, -0.5, 0.5, -0.125, 0.5} +} + +minetest.register_node("molehills:molehill",{ + drawtype = "mesh", + mesh = "molehill_molehill.obj", + description = "Mole Hill", + inventory_image = "molehills_side.png", + tiles = { "molehills_dirt.png" }, + paramtype = "light", + selection_box = mh_cbox, + collision_box = mh_cbox, + groups = {crumbly=3}, + sounds = default.node_sound_dirt_defaults(), +}) + +----------------------------------------------------------------------------------------------- +-- CRaFTiNG +----------------------------------------------------------------------------------------------- +minetest.register_craft({ -- molehills --> dirt + output = "default:dirt", + recipe = { + {"molehills:molehill","molehills:molehill"}, + {"molehills:molehill","molehills:molehill"}, + } +}) + diff --git a/mods/vipworld/molehills/models/molehill_molehill.obj b/mods/vipworld/molehills/models/molehill_molehill.obj new file mode 100644 index 00000000..5b9c084e --- /dev/null +++ b/mods/vipworld/molehills/models/molehill_molehill.obj @@ -0,0 +1,197 @@ +# Blender v2.73 (sub 0) OBJ File: 'anthill.blend' +# www.blender.org +o Cylinder_Cylinder.001 +v 0.099056 -0.499969 -0.498228 +v 0.038417 -0.200463 -0.141682 +v 0.255808 -0.499933 -0.402046 +v 0.095605 -0.174690 -0.147239 +v 0.423075 -0.499913 -0.296918 +v 0.102439 -0.169033 -0.075679 +v 0.444026 -0.499843 -0.095234 +v 0.125298 -0.217477 -0.063343 +v 0.468682 -0.499958 0.074790 +v 0.157655 -0.214352 0.001348 +v 0.396548 -0.500000 0.246048 +v 0.133778 -0.189245 0.108513 +v 0.280708 -0.500000 0.383197 +v 0.070517 -0.218946 0.104754 +v 0.089852 -0.499943 0.434316 +v 0.048523 -0.205247 0.128681 +v -0.093309 -0.499902 0.467111 +v -0.039037 -0.211895 0.149030 +v -0.272965 -0.499875 0.396496 +v -0.108297 -0.175918 0.104100 +v -0.388317 -0.499877 0.239075 +v -0.139068 -0.179051 0.073370 +v -0.437531 -0.499999 0.063918 +v -0.141812 -0.255882 0.005117 +v -0.458429 -0.499805 -0.104397 +v -0.189265 -0.217436 -0.065303 +v -0.385597 -0.499914 -0.288584 +v -0.112692 -0.207830 -0.096879 +v -0.248347 -0.499927 -0.384586 +v -0.083136 -0.202256 -0.170048 +v -0.095346 -0.499958 -0.514449 +v -0.023049 -0.216681 -0.204058 +v 0.071880 -0.343843 -0.343933 +v 0.189128 -0.354687 -0.277980 +v 0.311273 -0.378789 -0.248498 +v 0.296760 -0.346318 -0.056661 +v 0.332231 -0.342427 0.044933 +v 0.259921 -0.360316 0.147910 +v 0.213270 -0.362883 0.253745 +v 0.059007 -0.360067 0.351374 +v -0.068448 -0.357957 0.335642 +v -0.164888 -0.343166 0.232553 +v -0.269761 -0.352370 0.140734 +v -0.367168 -0.370891 0.062326 +v -0.294491 -0.324099 -0.079712 +v -0.276314 -0.352585 -0.236032 +v -0.206169 -0.372829 -0.314307 +v -0.065547 -0.371444 -0.355380 +v 0.000709 -0.156135 -0.047193 +vt 0.572002 0.826281 +vt 0.535907 0.620231 +vt 0.597591 0.625892 +vt 0.604963 0.552988 +vt 0.830215 0.729053 +vt 0.629619 0.540419 +vt 0.814561 0.533613 +vt 0.664520 0.474514 +vt 0.638766 0.365335 +vt 0.774826 0.325198 +vt 0.570532 0.369165 +vt 0.724507 0.217375 +vt 0.546808 0.344788 +vt 0.452364 0.324057 +vt 0.420641 0.133939 +vt 0.377660 0.369831 +vt 0.316619 0.238965 +vt 0.344469 0.401138 +vt 0.203502 0.332509 +vt 0.341509 0.470674 +vt 0.290325 0.542416 +vt 0.176827 0.557096 +vt 0.372919 0.574586 +vt 0.196433 0.716353 +vt 0.404798 0.649130 +vt 0.469609 0.683778 +vt 0.272092 0.796098 +vt 0.770390 0.885486 +vt 0.973405 0.572910 +vt 0.591386 0.033412 +vt 0.226599 0.867698 +vt 0.423770 0.837943 +vt 0.601314 0.983475 +vt 0.078559 0.769893 +vt 0.000000 0.582245 +vt 0.098436 0.412390 +vt 0.075624 0.232320 +vt 0.200045 0.071942 +vt 0.558116 0.117912 +vt 0.922195 0.225217 +vt 0.852821 0.430110 +vt 0.698467 0.759089 +vt 0.495235 0.523967 +vt 0.391629 1.000000 +vt 0.022541 0.410768 +vt 0.797247 0.085491 +vt 0.393825 0.000000 +vt 0.950807 0.778383 +vt 1.000000 0.399692 +g Cylinder_Cylinder.001_None +s 1 +f 33/1 2/2 4/3 +f 4/3 6/4 35/5 +f 35/5 6/4 8/6 +f 36/7 8/6 10/8 +f 10/8 12/9 38/10 +f 12/9 14/11 39/12 +f 39/12 14/11 16/13 +f 16/13 18/14 41/15 +f 18/14 20/16 42/17 +f 20/16 22/18 43/19 +f 43/19 22/18 24/20 +f 24/20 26/21 45/22 +f 26/21 28/23 46/24 +f 46/24 28/23 30/25 +f 32/26 2/2 33/1 +f 47/27 30/25 32/26 +f 3/28 7/29 15/30 +f 29/31 47/27 48/32 +f 48/32 33/1 1/33 +f 27/34 46/24 47/27 +f 25/35 45/22 46/24 +f 44/36 45/22 25/35 +f 21/37 43/19 44/36 +f 42/17 43/19 21/37 +f 41/15 42/17 19/38 +f 15/30 40/39 41/15 +f 39/12 40/39 15/30 +f 11/40 38/10 39/12 +f 37/41 38/10 11/40 +f 7/29 36/7 37/41 +f 35/5 36/7 7/29 +f 3/28 34/42 35/5 +f 33/1 34/42 3/28 +f 4/3 2/2 49/43 +f 2/2 32/26 49/43 +f 32/26 30/25 49/43 +f 30/25 28/23 49/43 +f 28/23 26/21 49/43 +f 26/21 24/20 49/43 +f 24/20 22/18 49/43 +f 22/18 20/16 49/43 +f 20/16 18/14 49/43 +f 18/14 16/13 49/43 +f 16/13 14/11 49/43 +f 14/11 12/9 49/43 +f 12/9 10/8 49/43 +f 10/8 8/6 49/43 +f 8/6 6/4 49/43 +f 6/4 4/3 49/43 +f 34/42 33/1 4/3 +f 34/42 4/3 35/5 +f 36/7 35/5 8/6 +f 37/41 36/7 10/8 +f 37/41 10/8 38/10 +f 38/10 12/9 39/12 +f 40/39 39/12 16/13 +f 40/39 16/13 41/15 +f 41/15 18/14 42/17 +f 42/17 20/16 43/19 +f 44/36 43/19 24/20 +f 44/36 24/20 45/22 +f 45/22 26/21 46/24 +f 47/27 46/24 30/25 +f 48/32 32/26 33/1 +f 48/32 47/27 32/26 +f 29/31 31/44 1/33 +f 23/45 27/34 29/31 +f 27/34 23/45 25/35 +f 15/30 19/38 21/37 +f 11/40 13/46 15/30 +f 15/30 17/47 19/38 +f 3/28 23/45 29/31 +f 29/31 1/33 3/28 +f 3/28 5/48 7/29 +f 7/29 9/49 11/40 +f 23/45 15/30 21/37 +f 15/30 23/45 3/28 +f 15/30 7/29 11/40 +f 31/44 29/31 48/32 +f 31/44 48/32 1/33 +f 29/31 27/34 47/27 +f 27/34 25/35 46/24 +f 23/45 44/36 25/35 +f 23/45 21/37 44/36 +f 19/38 42/17 21/37 +f 17/47 41/15 19/38 +f 17/47 15/30 41/15 +f 13/46 39/12 15/30 +f 13/46 11/40 39/12 +f 9/49 37/41 11/40 +f 9/49 7/29 37/41 +f 5/48 35/5 7/29 +f 5/48 3/28 35/5 +f 1/33 33/1 3/28 diff --git a/mods/vipworld/molehills/molehills_settings.txt b/mods/vipworld/molehills/molehills_settings.txt new file mode 100644 index 00000000..1afc592d --- /dev/null +++ b/mods/vipworld/molehills/molehills_settings.txt @@ -0,0 +1,6 @@ +-- Settings for generation of stuff (at map-generation time) + +Molehills_Max_Count = 320 -- absolute maximum number in an area of 80x80x80 nodes + +Molehills_Rarity = 95 -- larger values make molehills more rare (100 means chance of 0 %) + diff --git a/mods/vipworld/molehills/textures/molehills_dirt.png b/mods/vipworld/molehills/textures/molehills_dirt.png new file mode 100644 index 00000000..79ffa855 Binary files /dev/null and b/mods/vipworld/molehills/textures/molehills_dirt.png differ diff --git a/mods/vipworld/molehills/textures/molehills_side.png b/mods/vipworld/molehills/textures/molehills_side.png new file mode 100644 index 00000000..554bbecf Binary files /dev/null and b/mods/vipworld/molehills/textures/molehills_side.png differ diff --git a/mods/vipworld/molehills/textures/old & unused/molehill_side.png b/mods/vipworld/molehills/textures/old & unused/molehill_side.png new file mode 100644 index 00000000..5f0f9768 Binary files /dev/null and b/mods/vipworld/molehills/textures/old & unused/molehill_side.png differ diff --git a/mods/vipworld/molehills/textures/old & unused/molehill_top.png b/mods/vipworld/molehills/textures/old & unused/molehill_top.png new file mode 100644 index 00000000..55cc5413 Binary files /dev/null and b/mods/vipworld/molehills/textures/old & unused/molehill_top.png differ diff --git a/mods/vipworld/moretrees b/mods/vipworld/moretrees new file mode 160000 index 00000000..d521e347 --- /dev/null +++ b/mods/vipworld/moretrees @@ -0,0 +1 @@ +Subproject commit d521e34758d4297ac2de9027848fed5e3594f950 diff --git a/mods/vipworld/poisonivy/depends.txt b/mods/vipworld/poisonivy/depends.txt new file mode 100644 index 00000000..e69de29b diff --git a/mods/vipworld/poisonivy/init.lua b/mods/vipworld/poisonivy/init.lua new file mode 100644 index 00000000..9f2497c8 --- /dev/null +++ b/mods/vipworld/poisonivy/init.lua @@ -0,0 +1,63 @@ +-- This file supplies poison ivy for the plantlife modpack +-- Last revision: 2013-01-24 + +local walls_list = { + "default:dirt", + "default:dirt_with_grass", + "default:stone", + "default:cobble", + "default:mossycobble", + "default:brick", + "default:tree", + "default:jungletree", + "default:stone_with_coal", + "default:stone_with_iron" +}, +minetest.register_node('poisonivy:seedling', { + description = "Poison ivy (seedling)", + drawtype = 'plantlike', + waving = 1, + tiles = { 'poisonivy_seedling.png' }, + inventory_image = 'poisonivy_seedling.png', + wield_image = 'poisonivy_seedling.png', + sunlight_propagates = true, + paramtype = 'light', + walkable = false, + groups = { snappy = 3, poisonivy=1, flora_block=1 }, + sounds = default.node_sound_leaves_defaults(), + buildable_to = true, +}) + +minetest.register_node('poisonivy:sproutling', { + description = "Poison ivy (sproutling)", + drawtype = 'plantlike', + waving = 1, + tiles = { 'poisonivy_sproutling.png' }, + inventory_image = 'poisonivy_sproutling.png', + wield_image = 'poisonivy_sproutling.png', + sunlight_propagates = true, + paramtype = 'light', + walkable = false, + groups = { snappy = 3, poisonivy=1, flora_block=1 }, + sounds = default.node_sound_leaves_defaults(), + buildable_to = true, +}) + +minetest.register_node('poisonivy:climbing', { + description = "Poison ivy (climbing plant)", + drawtype = 'signlike', + tiles = { 'poisonivy_climbing.png' }, + inventory_image = 'poisonivy_climbing.png', + wield_image = 'poisonivy_climbing.png', + sunlight_propagates = true, + paramtype = 'light', + paramtype2 = 'wallmounted', + walkable = false, + groups = { snappy = 3, poisonivy=1, flora_block=1 }, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "wallmounted", + --wall_side = = + }, + buildable_to = true, +}) diff --git a/mods/vipworld/poisonivy/locale/pt_BR.txt b/mods/vipworld/poisonivy/locale/pt_BR.txt new file mode 100644 index 00000000..9f61092e --- /dev/null +++ b/mods/vipworld/poisonivy/locale/pt_BR.txt @@ -0,0 +1,5 @@ +Poison ivy (seedling) = Hera venenosa (plantilha) +Poison ivy (sproutling) = Hera venenosa (brotando) +Poison ivy (climbing plant) = Hera venenosa (planta trepadeira) + +[Poison Ivy] Loaded. =[Poison Ivy] Carregado diff --git a/mods/vipworld/poisonivy/textures/poisonivy_climbing.png b/mods/vipworld/poisonivy/textures/poisonivy_climbing.png new file mode 100644 index 00000000..f53f7a39 Binary files /dev/null and b/mods/vipworld/poisonivy/textures/poisonivy_climbing.png differ diff --git a/mods/vipworld/poisonivy/textures/poisonivy_seedling.png b/mods/vipworld/poisonivy/textures/poisonivy_seedling.png new file mode 100644 index 00000000..281fa754 Binary files /dev/null and b/mods/vipworld/poisonivy/textures/poisonivy_seedling.png differ diff --git a/mods/vipworld/poisonivy/textures/poisonivy_sproutling.png b/mods/vipworld/poisonivy/textures/poisonivy_sproutling.png new file mode 100644 index 00000000..92d27429 Binary files /dev/null and b/mods/vipworld/poisonivy/textures/poisonivy_sproutling.png differ