forked from thunderdog1138/star_wars
Upload files to 'mods/bakedclay'
This commit is contained in:
parent
16cac5ca58
commit
035fda1407
|
@ -0,0 +1,4 @@
|
|||
default
|
||||
stairs
|
||||
moreblocks?
|
||||
lucky_block?
|
|
@ -0,0 +1 @@
|
|||
Adds the ability to bake clay into blocks and colour them with dye.
|
|
@ -0,0 +1,270 @@
|
|||
|
||||
-- Baked Clay by TenPlus1
|
||||
|
||||
local clay = {
|
||||
{"white", "White"},
|
||||
{"grey", "Grey"},
|
||||
{"black", "Black"},
|
||||
{"red", "Red"},
|
||||
{"yellow", "Yellow"},
|
||||
{"green", "Green"},
|
||||
{"cyan", "Cyan"},
|
||||
{"blue", "Blue"},
|
||||
{"magenta", "Magenta"},
|
||||
{"orange", "Orange"},
|
||||
{"violet", "Violet"},
|
||||
{"brown", "Brown"},
|
||||
{"pink", "Pink"},
|
||||
{"dark_grey", "Dark Grey"},
|
||||
{"dark_green", "Dark Green"},
|
||||
}
|
||||
|
||||
local stairs_mod = minetest.get_modpath("stairs")
|
||||
local stairsplus_mod = minetest.get_modpath("moreblocks")
|
||||
and minetest.global_exists("stairsplus")
|
||||
|
||||
for _, clay in pairs(clay) do
|
||||
|
||||
-- node definition
|
||||
|
||||
minetest.register_node("bakedclay:" .. clay[1], {
|
||||
description = clay[2] .. " Baked Clay",
|
||||
tiles = {"baked_clay_" .. clay[1] ..".png"},
|
||||
groups = {cracky = 3, bakedclay = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
-- craft from dye and any baked clay
|
||||
|
||||
minetest.register_craft({
|
||||
output = "bakedclay:" .. clay[1] .. " 8",
|
||||
recipe = {
|
||||
{"group:bakedclay", "group:bakedclay", "group:bakedclay"},
|
||||
{"group:bakedclay", "dye:" .. clay[1], "group:bakedclay"},
|
||||
{"group:bakedclay", "group:bakedclay", "group:bakedclay"}
|
||||
},
|
||||
})
|
||||
|
||||
-- register stairsplus stairs if found
|
||||
if stairsplus_mod then
|
||||
|
||||
stairsplus:register_all("bakedclay", "baked_clay_" .. clay[1], "bakedclay:" .. clay[1], {
|
||||
description = clay[2] .. " Baked Clay",
|
||||
tiles = {"baked_clay_" .. clay[1] .. ".png"},
|
||||
groups = {cracky = 3},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
stairsplus:register_alias_all("bakedclay", clay[1], "bakedclay", "baked_clay_" .. clay[1])
|
||||
minetest.register_alias("stairs:slab_bakedclay_".. clay[1], "bakedclay:slab_baked_clay_" .. clay[1])
|
||||
minetest.register_alias("stairs:stair_bakedclay_".. clay[1], "bakedclay:stair_baked_clay_" .. clay[1])
|
||||
|
||||
-- register all stair types for stairs redo
|
||||
elseif stairs_mod and stairs.mod then
|
||||
|
||||
stairs.register_all("bakedclay_" .. clay[1], "bakedclay:" .. clay[1],
|
||||
{cracky = 3},
|
||||
{"baked_clay_" .. clay[1] .. ".png"},
|
||||
clay[2] .. " Baked Clay",
|
||||
default.node_sound_stone_defaults())
|
||||
|
||||
-- register stair and slab using default stairs
|
||||
elseif stairs_mod then
|
||||
|
||||
stairs.register_stair_and_slab("bakedclay_".. clay[1], "bakedclay:".. clay[1],
|
||||
{cracky = 3},
|
||||
{"baked_clay_" .. clay[1] .. ".png"},
|
||||
clay[2] .. " Baked Clay Stair",
|
||||
clay[2] .. " Baked Clay Slab",
|
||||
default.node_sound_stone_defaults())
|
||||
end
|
||||
end
|
||||
|
||||
-- cook clay block into white baked clay
|
||||
|
||||
minetest.register_craft({
|
||||
type = "cooking",
|
||||
output = "bakedclay:white",
|
||||
recipe = "default:clay",
|
||||
})
|
||||
|
||||
-- register a few extra dye colour options
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "dye:dark_grey 3",
|
||||
recipe = {"dye:black", "dye:black", "dye:white"}
|
||||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "dye:grey 3",
|
||||
recipe = {"dye:black", "dye:white", "dye:white"}
|
||||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "dye:green 4",
|
||||
recipe = {"default:cactus"}
|
||||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "dye:black 4",
|
||||
recipe = {"default:coal_lump"}
|
||||
})
|
||||
|
||||
minetest.register_craft( {
|
||||
type = "shapeless",
|
||||
output = "dye:brown 4",
|
||||
recipe = {"default:dry_shrub"}
|
||||
})
|
||||
|
||||
-- 2x2 red bakedclay makes 16x clay brick
|
||||
minetest.register_craft( {
|
||||
output = "default:clay_brick 16",
|
||||
recipe = {
|
||||
{"bakedclay:red", "bakedclay:red"},
|
||||
{"bakedclay:red", "bakedclay:red"},
|
||||
}
|
||||
})
|
||||
|
||||
-- register some new flowers to fill in missing dye colours
|
||||
-- flower registration (borrowed from default game)
|
||||
|
||||
local function add_simple_flower(name, desc, box, f_groups)
|
||||
|
||||
f_groups.snappy = 3
|
||||
f_groups.flower = 1
|
||||
f_groups.flora = 1
|
||||
f_groups.attached_node = 1
|
||||
|
||||
minetest.register_node("bakedclay:" .. name, {
|
||||
description = desc,
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
tiles = {"baked_clay_" .. name .. ".png"},
|
||||
inventory_image = "baked_clay_" .. name .. ".png",
|
||||
wield_image = "baked_clay_" .. name .. ".png",
|
||||
sunlight_propagates = true,
|
||||
paramtype = "light",
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
stack_max = 99,
|
||||
groups = f_groups,
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = box
|
||||
}
|
||||
})
|
||||
end
|
||||
|
||||
local flowers = {
|
||||
{"delphinium", "Blue Delphinium", {-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_cyan = 1}},
|
||||
{"thistle", "Thistle", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_magenta = 1}},
|
||||
{"lazarus", "Lazarus Bell", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_pink = 1}},
|
||||
{"mannagrass", "Reed Mannagrass", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_dark_green = 1}},
|
||||
}
|
||||
|
||||
for _,item in pairs(flowers) do
|
||||
add_simple_flower(unpack(item))
|
||||
end
|
||||
|
||||
-- mapgen for new flowers
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = 0.004,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 7133,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 10,
|
||||
y_max = 90,
|
||||
decoration = "bakedclay:delphinium",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_dry_grass"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = 0.004,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 7134,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 15,
|
||||
y_max = 90,
|
||||
decoration = "bakedclay:thistle",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 7135,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = 90,
|
||||
decoration = "bakedclay:lazarus",
|
||||
spawn_by = "default:jungletree",
|
||||
num_spawn_by = 1,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"default:dirt_with_grass", "default:sand"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = 0.009,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 7136,
|
||||
octaves = 3,
|
||||
persist = 0.6
|
||||
},
|
||||
y_min = 1,
|
||||
y_max = 15,
|
||||
decoration = "bakedclay:mannagrass",
|
||||
spawn_by = "group:water",
|
||||
num_spawn_by = 1,
|
||||
})
|
||||
|
||||
-- add lucky blocks
|
||||
|
||||
if minetest.get_modpath("lucky_block") then
|
||||
local p = "bakedclay:"
|
||||
lucky_block:add_blocks({
|
||||
{"dro", {"bakedclay:"}, 10, true},
|
||||
{"fal", {p.."black", p.."blue", p.."brown", p.."cyan", p.."dark_green",
|
||||
p.."dark_grey", p.."green", p.."grey", p.."magenta", p.."orange",
|
||||
p.."pink", p.."red", p.."violet", p.."white", p.."yellow"}, 0},
|
||||
{"fal", {p.."black", p.."blue", p.."brown", p.."cyan", p.."dark_green",
|
||||
p.."dark_grey", p.."green", p.."grey", p.."magenta", p.."orange",
|
||||
p.."pink", p.."red", p.."violet", p.."white", p.."yellow"}, 0, true},
|
||||
{"dro", {p.."delphinium"}, 5},
|
||||
{"dro", {p.."lazarus"}, 5},
|
||||
{"dro", {p.."mannagrass"}, 5},
|
||||
{"dro", {p.."thistle"}, 6},
|
||||
{"flo", 5, {p.."black", p.."blue", p.."brown", p.."cyan", p.."dark_green",
|
||||
p.."dark_grey", p.."green", p.."grey", p.."magenta", p.."orange",
|
||||
p.."pink", p.."red", p.."violet", p.."white", p.."yellow"}, 2},
|
||||
})
|
||||
end
|
||||
|
||||
print ("[MOD] Baked Clay loaded")
|
|
@ -0,0 +1,21 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2016 TenPlus1
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
|
@ -0,0 +1 @@
|
|||
name = bakedclay
|
Loading…
Reference in New Issue