Compare commits

9 Commits

7 changed files with 195 additions and 90 deletions

View File

@ -1,22 +1,26 @@
-- 5.x translation
S = minetest.get_translator("bakedclay") -- translation support
local S = minetest.get_translator("bakedclay")
-- new flowers
local flowers = { local flowers = {
{"delphinium", "Blue Delphinium", {"delphinium", S("Blue Delphinium"),
{-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_cyan = 1}}, {-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_cyan = 1}},
{"thistle", "Thistle", {"thistle", S("Thistle"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_magenta = 1}}, {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_magenta = 1}},
{"lazarus", "Lazarus Bell", {"lazarus", S("Lazarus Bell"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_pink = 1}}, {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_pink = 1}},
{"mannagrass", "Reed Mannagrass", {"mannagrass", S("Reed Mannagrass"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_dark_green = 1}} {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_dark_green = 1}}
} }
-- register some new flowers to fill in missing dye colours -- helper function
-- flower registration (borrowed from default game)
local function add_simple_flower(name, desc, box, f_groups) local function add_simple_flower(name, desc, box, f_groups)
f_groups.snappy = 3 f_groups.snappy = 3
@ -25,7 +29,7 @@ local function add_simple_flower(name, desc, box, f_groups)
f_groups.attached_node = 1 f_groups.attached_node = 1
minetest.register_node("bakedclay:" .. name, { minetest.register_node("bakedclay:" .. name, {
description = S(desc), description = desc,
drawtype = "plantlike", drawtype = "plantlike",
waving = 1, waving = 1,
tiles = {"baked_clay_" .. name .. ".png"}, tiles = {"baked_clay_" .. name .. ".png"},
@ -35,18 +39,20 @@ local function add_simple_flower(name, desc, box, f_groups)
paramtype = "light", paramtype = "light",
walkable = false, walkable = false,
buildable_to = true, buildable_to = true,
-- stack_max = 99,
groups = f_groups, groups = f_groups,
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
selection_box = {type = "fixed", fixed = box} selection_box = {type = "fixed", fixed = box}
}) })
end end
-- register new flowers to fill in missing dye colours
for _,item in pairs(flowers) do for _,item in pairs(flowers) do
add_simple_flower(unpack(item)) add_simple_flower(unpack(item))
end end
-- add new flowers to mapgen -- add new flowers to mapgen
minetest.register_decoration({ minetest.register_decoration({
deco_type = "simple", deco_type = "simple",
place_on = {"default:dirt_with_grass"}, place_on = {"default:dirt_with_grass"},
@ -119,7 +125,8 @@ minetest.register_decoration({
num_spawn_by = 1 num_spawn_by = 1
}) })
-- flowerpot mod -- flowerpot mod support
if minetest.get_modpath("flowerpot") then if minetest.get_modpath("flowerpot") then
flowerpot.register_node("bakedclay:delphinium") flowerpot.register_node("bakedclay:delphinium")
flowerpot.register_node("bakedclay:thistle") flowerpot.register_node("bakedclay:thistle")

View File

@ -1,46 +1,53 @@
-- 5.x translation
S = minetest.get_translator("bakedclay") -- translation support
local S = minetest.get_translator("bakedclay")
-- list of clay colours -- list of clay colours
local clay = { local clay = {
{"natural", "Natural"}, {"natural", S("Natural")},
{"white", "White"}, {"white", S("White")},
{"grey", "Grey"}, {"grey", S("Grey")},
{"black", "Black"}, {"black", S("Black")},
{"red", "Red"}, {"red", S("Red")},
{"yellow", "Yellow"}, {"yellow", S("Yellow")},
{"green", "Green"}, {"green", S("Green")},
{"cyan", "Cyan"}, {"cyan", S("Cyan")},
{"blue", "Blue"}, {"blue", S("Blue")},
{"magenta", "Magenta"}, {"magenta", S("Magenta")},
{"orange", "Orange"}, {"orange", S("Orange")},
{"violet", "Violet"}, {"violet", S("Violet")},
{"brown", "Brown"}, {"brown", S("Brown")},
{"pink", "Pink"}, {"pink", S("Pink")},
{"dark_grey", "Dark Grey"}, {"dark_grey", S("Dark Grey")},
{"dark_green", "Dark Green"} {"dark_green", S("Dark Green")}
} }
-- check mod support -- check mod support
local techcnc_mod = minetest.get_modpath("technic_cnc") local techcnc_mod = minetest.get_modpath("technic_cnc")
local stairs_mod = minetest.get_modpath("stairs") local stairs_mod = minetest.get_modpath("stairs")
local stairsplus_mod = minetest.get_modpath("moreblocks") local stairsplus_mod = minetest.get_modpath("moreblocks")
and minetest.global_exists("stairsplus") and minetest.global_exists("stairsplus")
local stairsplus_compat = minetest.settings:get_bool("stairsplus_clay_compatibility") ~= false local stairsplus_compat = minetest.settings:get_bool("stairsplus_clay_compatibility") ~= false
-- scroll through colours -- scroll through colours
for _, clay in pairs(clay) do for _, clay in pairs(clay) do
-- register node -- register node
minetest.register_node("bakedclay:" .. clay[1], { minetest.register_node("bakedclay:" .. clay[1], {
description = S(clay[2] .. " Baked Clay"), description = clay[2] .. " " .. S("Baked Clay"),
tiles = {"baked_clay_" .. clay[1] ..".png"}, tiles = {"baked_clay_" .. clay[1] ..".png"},
groups = {cracky = 3, bakedclay = 1}, groups = {cracky = 3, bakedclay = 1},
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults(),
is_ground_content = false
}) })
-- register craft recipe -- register craft recipe
if clay[1] ~= "natural" then if clay[1] ~= "natural" then
minetest.register_craft({ minetest.register_craft({
@ -54,11 +61,12 @@ for _, clay in pairs(clay) do
end end
-- stairs plus -- stairs plus
if stairsplus_mod then if stairsplus_mod then
stairsplus:register_all("bakedclay", "baked_clay_" .. clay[1], stairsplus:register_all("bakedclay", "baked_clay_" .. clay[1],
"bakedclay:" .. clay[1], { "bakedclay:" .. clay[1], {
description = clay[2] .. " Baked Clay", description = clay[2] .. " " .. S("Baked Clay"),
tiles = {"baked_clay_" .. clay[1] .. ".png"}, tiles = {"baked_clay_" .. clay[1] .. ".png"},
groups = {cracky = 3}, groups = {cracky = 3},
sounds = default.node_sound_stone_defaults() sounds = default.node_sound_stone_defaults()
@ -77,29 +85,32 @@ for _, clay in pairs(clay) do
end end
-- stairs redo -- stairs redo
elseif stairs_mod and stairs.mod then elseif stairs_mod and stairs.mod then
stairs.register_all("bakedclay_" .. clay[1], "bakedclay:" .. clay[1], stairs.register_all("bakedclay_" .. clay[1], "bakedclay:" .. clay[1],
{cracky = 3}, {cracky = 3},
{"baked_clay_" .. clay[1] .. ".png"}, {"baked_clay_" .. clay[1] .. ".png"},
clay[2] .. " Baked Clay", clay[2] .. " " .. S("Baked Clay"),
default.node_sound_stone_defaults()) default.node_sound_stone_defaults())
-- default stairs -- default stairs
elseif stairs_mod then elseif stairs_mod then
stairs.register_stair_and_slab("bakedclay_".. clay[1], "bakedclay:".. clay[1], stairs.register_stair_and_slab("bakedclay_".. clay[1], "bakedclay:".. clay[1],
{cracky = 3}, {cracky = 3},
{"baked_clay_" .. clay[1] .. ".png"}, {"baked_clay_" .. clay[1] .. ".png"},
clay[2] .. " Baked Clay Stair", clay[2] .. " " .. S("Baked Clay Stair"),
clay[2] .. " Baked Clay Slab", clay[2] .. " " .. S("Baked Clay Slab"),
default.node_sound_stone_defaults()) default.node_sound_stone_defaults())
end end
-- register bakedclay for use in technic_cnc mod after all mods loaded -- register bakedclay for use in technic_cnc mod after all mods loaded
if techcnc_mod then if techcnc_mod then
core.register_on_mods_loaded(function() minetest.register_on_mods_loaded(function()
technic_cnc.register_all("bakedclay:" .. clay[1], technic_cnc.register_all("bakedclay:" .. clay[1],
{cracky = 3, not_in_creative_inventory = 1}, {cracky = 3, not_in_creative_inventory = 1},
@ -110,6 +121,7 @@ for _, clay in pairs(clay) do
end end
-- Terracotta blocks -- Terracotta blocks
for _, clay in pairs(clay) do for _, clay in pairs(clay) do
if clay[1] ~= "natural" then if clay[1] ~= "natural" then
@ -117,7 +129,7 @@ for _, clay in pairs(clay) do
local texture = "baked_clay_terracotta_" .. clay[1] ..".png" local texture = "baked_clay_terracotta_" .. clay[1] ..".png"
minetest.register_node("bakedclay:terracotta_" .. clay[1], { minetest.register_node("bakedclay:terracotta_" .. clay[1], {
description = S(clay[2] .. " Glazed Terracotta"), description = clay[2] .. " " .. S("Glazed Terracotta"),
tiles = { tiles = {
texture .. "", texture .. "",
texture .. "", texture .. "",
@ -129,6 +141,7 @@ for _, clay in pairs(clay) do
paramtype2 = "facedir", paramtype2 = "facedir",
groups = {cracky = 3, terracotta = 1}, groups = {cracky = 3, terracotta = 1},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
is_ground_content = false,
on_place = minetest.rotate_node on_place = minetest.rotate_node
}) })
@ -142,7 +155,8 @@ end
minetest.register_alias("bakedclay:terracotta_light_blue", "bakedclay:terracotta_cyan") minetest.register_alias("bakedclay:terracotta_light_blue", "bakedclay:terracotta_cyan")
-- cook clay block into white baked clay -- cook clay block into natural baked clay
minetest.register_craft({ minetest.register_craft({
type = "cooking", type = "cooking",
output = "bakedclay:natural", output = "bakedclay:natural",
@ -150,6 +164,7 @@ minetest.register_craft({
}) })
-- 2x2 red baked clay makes 16x clay brick -- 2x2 red baked clay makes 16x clay brick
minetest.register_craft( { minetest.register_craft( {
output = "default:clay_brick 16", output = "default:clay_brick 16",
recipe = { recipe = {
@ -159,6 +174,7 @@ minetest.register_craft( {
}) })
-- colored clay compatibility -- colored clay compatibility
if minetest.settings:get_bool("colored_clay_compatibility") == true then if minetest.settings:get_bool("colored_clay_compatibility") == true then
local cc = { local cc = {
@ -195,12 +211,15 @@ if minetest.settings:get_bool("colored_clay_compatibility") == true then
end end
-- get mod path -- get mod path
local path = minetest.get_modpath("bakedclay") local path = minetest.get_modpath("bakedclay")
-- add new flowers -- add new flowers
dofile(path .. "/flowers.lua") dofile(path .. "/flowers.lua")
-- add lucky blocks if mod present -- add lucky blocks if mod present
if minetest.get_modpath("lucky_block") then if minetest.get_modpath("lucky_block") then
dofile(path .. "/lucky_block.lua") dofile(path .. "/lucky_block.lua")
end end

25
locale/bakedclay.es.tr Normal file
View File

@ -0,0 +1,25 @@
# textdomain: bakedclay
Blue Delphinium=Delfinio Azul
Thistle=Cardo
Lazarus Bell=Campana Lázaro
Reed Mannagrass=Césped de caña
Natural=Natural
White=Blanco
Grey=Gris
Black=Negro
Red=Rojo
Yellow=Amarillo
Green=Verde
Cyan=Celeste
Blue=Azul
Magenta=Magenta
Orange=Naranja
Violet=Violeta
Brown=Cáfe
Pink=Rosa
Dark Grey=Gris Oscuro
Dark Green=Verde Oscuro
Baked Clay=Barro Cocido
Baked Clay Stair=Escalera de Barro Cocido
Baked Clay Slab=Losa de Barro Cocido
Glazed Terracotta=Terracota esmaltada.

27
locale/bakedclay.uk.tr Normal file
View File

@ -0,0 +1,27 @@
# textdomain: bakedclay
Adds the ability to bake clay into blocks and colour them with dye.=Додає можливість випалювати глину в блоки та фарбувати їх барвниками.
Bake clay blocks and colour with dye, also has Terracotta designs.=Випалюйте глиняні блоки та фарбуйте їх барвниками, а також виготовляйте теракотові візерунки.
Blue Delphinium=Синій дельфініум
Thistle=Будяк
Lazarus Bell=Дзвіночок Лазаря
Reed Mannagrass=Лепешняк великий
Natural=Натуральна
White=Біла
Grey=Сіра
Black=Чорна
Red=Червона
Yellow=Жовта
Green=Зелена
Cyan=Блакитна
Blue=Синя
Magenta=Пурпурна
Orange=Помаранчева
Violet=Фіолетова
Brown=Коричнева
Pink=Рожева
Dark Grey=Темно-сіра
Dark Green=Темно-зелена
Baked Clay=Випалена глина
Baked Clay Stair=випалена глина (сходи)
Baked Clay Slab=випалена глина (плита)
Glazed Terracotta=Глазурована теракота

25
locale/template.txt Normal file
View File

@ -0,0 +1,25 @@
# textdomain: bakedclay
Blue Delphinium=
Thistle=
Lazarus Bell=
Reed Mannagrass=
Natural=
White=
Grey=
Black=
Red=
Yellow=
Green=
Cyan=
Blue=
Magenta=
Orange=
Violet=
Brown=
Pink=
Dark Grey=
Dark Green=
Baked Clay=
Baked Clay Stair=
Baked Clay Slab=
Glazed Terracotta=

View File

@ -1,64 +1,65 @@
-- helpers
local p = "bakedclay:" local p = "bakedclay:"
local p2 = "bakedclay:terracotta_"
-- add lucky blocks
lucky_block:add_blocks({ lucky_block:add_blocks({
{"dro", {"bakedclay:"}, 10, true}, {"dro", {"bakedclay:"}, 10, true},
{"fal", { {"fal", {
p.."black", p.."blue", p.."brown", p.."cyan", p.."dark_green", p .. "black", p .. "blue", p .. "brown", p .. "cyan", p .. "dark_green",
p.."dark_grey", p.."green", p.."grey", p.."magenta", p.."orange", p .. "dark_grey", p .. "green", p .. "grey", p .. "magenta", p .. "orange",
p.."pink", p.."red", p.."violet", p.."white", p.."yellow", p.."natural" p .. "pink", p .. "red", p .. "violet", p .. "white", p .. "yellow", p .. "natural"
}, 0}, }, 0},
{"fal", { {"fal", {
p.."black", p.."blue", p.."brown", p.."cyan", p.."dark_green", p .. "black", p .. "blue", p .. "brown", p .. "cyan", p .. "dark_green",
p.."dark_grey", p.."green", p.."grey", p.."magenta", p.."orange", p .. "dark_grey", p .. "green", p .. "grey", p .. "magenta", p .. "orange",
p.."pink", p.."red", p.."violet", p.."white", p.."yellow", p.."natural" p .. "pink", p .. "red", p .. "violet", p .. "white", p .. "yellow", p .. "natural"
}, 0, true}, }, 0, true},
{"dro", {p.."delphinium"}, 5}, {"dro", {p .. "delphinium"}, 5},
{"dro", {p.."lazarus"}, 5}, {"dro", {p .. "lazarus"}, 5},
{"dro", {p.."mannagrass"}, 5}, {"dro", {p .. "mannagrass"}, 5},
{"dro", {p.."thistle"}, 6}, {"dro", {p .. "thistle"}, 6},
{"flo", 5, { {"flo", 5, {
p.."natural", p.."black", p.."blue", p.."brown", p.."cyan", p .. "natural", p .. "black", p .. "blue", p .. "brown", p .. "cyan",
p.."dark_green", p.."dark_grey", p.."green", p.."grey", p.."magenta", p .. "dark_green", p .. "dark_grey", p .. "green", p .. "grey", p .. "magenta",
p.."orange", p.."pink", p.."red", p.."violet", p.."white", p.."yellow" p .. "orange", p .. "pink", p .. "red", p .. "violet", p .. "white", p .. "yellow"
}, 2}, }, 2},
{"nod", "default:chest", 0, { {"nod", "default:chest", 0, {
{name = p.."natural", max = 30}, {name = p .. "natural", max = 20},
{name = p.."black", max = 30}, {name = p .. "black", max = 20},
{name = p.."blue", max = 30}, {name = p .. "blue", max = 20},
{name = p.."brown", max = 30}, {name = p .. "brown", max = 20},
{name = p.."cyan", max = 30}, {name = p .. "cyan", max = 20},
{name = p.."dark_green", max = 30}, {name = p .. "dark_green", max = 20},
{name = p.."dark_grey", max = 30}, {name = p .. "dark_grey", max = 20},
{name = p.."green", max = 30}, {name = p .. "green", max = 20},
{name = p.."grey", max = 30}, {name = p .. "grey", max = 20},
{name = p.."magenta", max = 30}, {name = p .. "magenta", max = 20},
{name = p.."orange", max = 30}, {name = p .. "orange", max = 20},
{name = p.."pink", max = 30}, {name = p .. "pink", max = 20},
{name = p.."red", max = 30}, {name = p .. "red", max = 20},
{name = p.."violet", max = 30}, {name = p .. "violet", max = 20},
{name = p.."white", max = 30}, {name = p .. "white", max = 20},
{name = p.."yellow", max = 30} {name = p .. "yellow", max = 20}
}} }},
})
p = "bakedclay:terracotta_"
lucky_block:add_blocks({
{"nod", "default:chest", 0, { {"nod", "default:chest", 0, {
{name = p.."black", max = 20}, {name = p2 .. "black", max = 20},
{name = p.."blue", max = 20}, {name = p2 .. "blue", max = 20},
{name = p.."brown", max = 20}, {name = p2 .. "brown", max = 20},
{name = p.."cyan", max = 20}, {name = p2 .. "cyan", max = 20},
{name = p.."dark_green", max = 20}, {name = p2 .. "dark_green", max = 20},
{name = p.."dark_grey", max = 20}, {name = p2 .. "dark_grey", max = 20},
{name = p.."green", max = 20}, {name = p2 .. "green", max = 20},
{name = p.."grey", max = 20}, {name = p2 .. "grey", max = 20},
{name = p.."magenta", max = 20}, {name = p2 .. "magenta", max = 20},
{name = p.."orange", max = 20}, {name = p2 .. "orange", max = 20},
{name = p.."pink", max = 20}, {name = p2 .. "pink", max = 20},
{name = p.."red", max = 20}, {name = p2 .. "red", max = 20},
{name = p.."violet", max = 20}, {name = p2 .. "violet", max = 20},
{name = p.."white", max = 20}, {name = p2 .. "white", max = 20},
{name = p.."yellow", max = 20} {name = p2 .. "yellow", max = 20}
}} }}
}) })

View File

@ -1,4 +1,5 @@
name = bakedclay name = bakedclay
description = Bake clay blocks and colour with dye, also has Terracotta designs.
depends = default depends = default
optional_depends = stairs, moreblocks, lucky_block, flowerpot optional_depends = stairs, moreblocks, lucky_block, flowerpot
description = Adds the ability to bake clay into blocks and colour them with dye. min_minetest_version = 5.0