add vipworld modpack
|
@ -0,0 +1,3 @@
|
|||
default
|
||||
stonage?
|
||||
sumpf?
|
|
@ -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
|
After Width: | Height: | Size: 305 B |
After Width: | Height: | Size: 305 B |
After Width: | Height: | Size: 577 B |
After Width: | Height: | Size: 598 B |
After Width: | Height: | Size: 592 B |
After Width: | Height: | Size: 632 B |
After Width: | Height: | Size: 205 B |
After Width: | Height: | Size: 205 B |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 872 B |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 52 KiB |
After Width: | Height: | Size: 609 B |
After Width: | Height: | Size: 620 B |
After Width: | Height: | Size: 396 B |
After Width: | Height: | Size: 540 B |
After Width: | Height: | Size: 285 B |
After Width: | Height: | Size: 657 B |
After Width: | Height: | Size: 693 B |
After Width: | Height: | Size: 83 B |
After Width: | Height: | Size: 525 B |
|
@ -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
|
|
@ -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
|
|
@ -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")
|
||||
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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 },
|
||||
})
|
After Width: | Height: | Size: 2.9 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 3.5 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 601 B |
After Width: | Height: | Size: 612 B |
After Width: | Height: | Size: 341 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 602 B |
After Width: | Height: | Size: 606 B |
After Width: | Height: | Size: 347 B |
After Width: | Height: | Size: 8.9 KiB |
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 9.1 KiB |
After Width: | Height: | Size: 9.0 KiB |
After Width: | Height: | Size: 8.9 KiB |
After Width: | Height: | Size: 979 B |
After Width: | Height: | Size: 607 B |
After Width: | Height: | Size: 597 B |
After Width: | Height: | Size: 348 B |
After Width: | Height: | Size: 565 B |
After Width: | Height: | Size: 586 B |
After Width: | Height: | Size: 337 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 613 B |
After Width: | Height: | Size: 610 B |
After Width: | Height: | Size: 352 B |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 577 B |
After Width: | Height: | Size: 606 B |
After Width: | Height: | Size: 339 B |
After Width: | Height: | Size: 2.0 KiB |
|
@ -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 <sam@hocevar.net>
|
||||
|
||||
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.
|
||||
```
|
|
@ -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
|
||||
<modname>:reinforced_<name>
|
||||
<modname>:reinforced_<name>_slope
|
||||
<modname>:reinforced_<name>_arrow
|
||||
<modname>:reinforced_<name>_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(),
|
||||
})
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
default
|
||||
farming?
|
||||
moreblocks?
|
||||
stairs?
|
|
@ -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.
|
|
@ -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 = = <default>
|
||||
--wall_bottom = = <default>
|
||||
--wall_side = = <default>
|
||||
},
|
||||
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",
|
||||
})
|
||||
|
||||
]]
|
|
@ -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
|
||||
|
|
@ -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")
|
|
@ -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(),
|
||||
})
|
||||
|
|
@ -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"
|
|
@ -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
|
||||
|
After Width: | Height: | Size: 645 B |
After Width: | Height: | Size: 457 B |
After Width: | Height: | Size: 604 B |
After Width: | Height: | Size: 701 B |
After Width: | Height: | Size: 758 B |
After Width: | Height: | Size: 230 B |
After Width: | Height: | Size: 686 B |
After Width: | Height: | Size: 618 B |
After Width: | Height: | Size: 350 B |
After Width: | Height: | Size: 635 B |
After Width: | Height: | Size: 644 B |
After Width: | Height: | Size: 623 B |
After Width: | Height: | Size: 643 B |
After Width: | Height: | Size: 637 B |
After Width: | Height: | Size: 764 B |
After Width: | Height: | Size: 469 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 441 B |
After Width: | Height: | Size: 609 B |
After Width: | Height: | Size: 846 B |
After Width: | Height: | Size: 849 B |