write something there

This commit is contained in:
N-Nachtigal 2025-05-04 16:01:41 +02:00
commit b4b6c08f4f
8546 changed files with 309825 additions and 0 deletions

29
mods/bakedclay/README.md Normal file
View file

@ -0,0 +1,29 @@
Baked Clay
This mod lets the player bake clay into hardened blocks and colour them with
dye (8x baked clay and 1x dye in centre), stairs and slabs are also available.
Cooking baked clay turns it into glazed terracotta blocks.
https://forum.minetest.net/viewtopic.php?id=8890
Changelog:
- 1.2 - Add 'stairsplus_clay_compatibility' setting.
- 1.1 - Remove 0.4.x compatibility to better support 5.x mods
- 1.0 - Re-Added glazed terracotta blocks when you cook baked clay in furnace (thanks Amara2_MK), added support for sofar's flowerpot mod, missing glazed textures re-coloured by firefox.
- 0.9 - Baked clay now works in the technic cnc machine
- 0.8 - Cooking clay block in furnace gives natural baked clay which you can dye
- 0.7 - Added support for stairsplus so that stairs are registered properly
- 0.6 - Added 3 new flowers and a new grass that are used for missing dyes
- 0.5 - Now using minecraft recipe to colour baked clay (8x baked clay, 1x dye in centre)
- 0.4 - Code tweak and tidy
- 0.3 - Added Stairs and Slabs for each colour
- 0.2 - Any colour of baked clay can be re-dyed into another colour
- 0.1 - Initial Release
Lucky Blocks: 10
Note: Under settings you will find 'colored_clay_compatibility' switch that when enabled will register aliases for the older colored clay mod and it's stairplus stairs.
You will also find the 'stairsplus_clay_compatibility' setting that is enabled by default for older worlds that switched from default stairs mod to stairsplus. It can be disabled for brand new worlds only using stairsplus mod though.

View file

@ -0,0 +1,61 @@
-- translation support
local S = minetest.get_translator("bakedclay")
-- new flowers
local flowers = {
{"delphinium", S("Blue Delphinium"),
{-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_blue = 1}},
{"thistle", S("Thistle"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_magenta = 1}},
{"lazarus", S("Lazarus Bell"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_pink = 1}},
{"mannagrass", S("Reed Mannagrass"),
{-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_dark_green = 1}}
}
-- helper function
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,
groups = f_groups,
sounds = default.node_sound_leaves_defaults(),
selection_box = {type = "fixed", fixed = box}
})
end
-- register new flowers to fill in missing dye colours
for _,item in pairs(flowers) do
add_simple_flower(unpack(item))
end
-- flowerpot mod support
if minetest.get_modpath("flowerpot") then
flowerpot.register_node("bakedclay:delphinium")
flowerpot.register_node("bakedclay:thistle")
flowerpot.register_node("bakedclay:lazarus")
flowerpot.register_node("bakedclay:mannagrass")
end

254
mods/bakedclay/init.lua Normal file
View file

@ -0,0 +1,254 @@
-- translation support
local S = minetest.get_translator("bakedclay")
-- list of clay colours
local clay = {
{"natural", S("Natural")},
{"white", S("White")},
{"grey", S("Grey")},
{"black", S("Black")},
{"red", S("Red")},
{"yellow", S("Yellow")},
{"green", S("Green")},
{"cyan", S("Cyan")},
{"blue", S("Blue")},
{"magenta", S("Magenta")},
{"orange", S("Orange")},
{"violet", S("Violet")},
{"brown", S("Brown")},
{"pink", S("Pink")},
{"dark_grey", S("Dark Grey")},
{"dark_green", S("Dark Green")}
}
-- check mod support
local techcnc_mod = minetest.get_modpath("technic_cnc")
local stairs_mod = minetest.get_modpath("stairs")
local stairsplus_mod = minetest.get_modpath("moreblocks")
and minetest.global_exists("stairsplus")
local stairsplus_compat = minetest.settings:get_bool("stairsplus_clay_compatibility") ~= false
-- scroll through colours
for _, clay in pairs(clay) do
-- register node
minetest.register_node("bakedclay:" .. clay[1], {
description = clay[2] .. " " .. S("Baked Clay"),
tiles = {"baked_clay_" .. clay[1] ..".png"},
groups = {cracky = 3, bakedclay = 1},
sounds = default.node_sound_stone_defaults(),
is_ground_content = false
})
-- register craft recipe
if clay[1] ~= "natural" then
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"}
}
})
end
-- stairs plus
if stairsplus_mod then
stairsplus:register_all("bakedclay", "baked_clay_" .. clay[1],
"bakedclay:" .. clay[1], {
description = clay[2] .. " " .. S("Baked Clay"),
tiles = {"baked_clay_" .. clay[1] .. ".png"},
groups = {cracky = 3},
sounds = default.node_sound_stone_defaults()
})
if stairsplus_compat then
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])
end
-- 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] .. " " .. S("Baked Clay"),
default.node_sound_stone_defaults())
-- 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] .. " " .. S("Baked Clay Stair"),
clay[2] .. " " .. S("Baked Clay Slab"),
default.node_sound_stone_defaults())
end
-- register bakedclay for use in technic_cnc mod after all mods loaded
if techcnc_mod then
minetest.register_on_mods_loaded(function()
technic_cnc.register_all("bakedclay:" .. clay[1],
{cracky = 3, not_in_creative_inventory = 1},
{"baked_clay_" .. clay[1] .. ".png"},
clay[2] .. " Baked Clay")
end)
end
end
-- Terracotta blocks
for _, clay in pairs(clay) do
if clay[1] ~= "natural" then
local texture = "baked_clay_terracotta_" .. clay[1] ..".png"
minetest.register_node("bakedclay:terracotta_" .. clay[1], {
description = clay[2] .. " " .. S("Glazed Terracotta"),
tiles = {
texture .. "",
texture .. "",
texture .. "^[transformR180",
texture .. "",
texture .. "^[transformR270",
texture .. "^[transformR90",
},
paramtype2 = "facedir",
groups = {cracky = 3, terracotta = 1},
sounds = default.node_sound_stone_defaults(),
is_ground_content = false,
on_place = minetest.rotate_node
})
minetest.register_craft({
type = "cooking",
output = "bakedclay:terracotta_" .. clay[1],
recipe = "bakedclay:" .. clay[1]
})
end
end
minetest.register_alias("bakedclay:terracotta_light_blue", "bakedclay:terracotta_cyan")
-- cook clay block into natural baked clay
minetest.register_craft({
type = "cooking",
output = "bakedclay:natural",
recipe = "default:clay"
})
-- register a few extra dye colour options
minetest.register_craft({
output = "dye:green 4",
recipe = {{"default:cactus"}}
})
minetest.register_craft({
output = "dye:brown 4",
recipe = {{"default:dry_shrub"}}
})
-- only add light grey recipe if unifieddye mod isnt present (conflict)
if not minetest.get_modpath("unifieddyes") then
minetest.register_craft( {
output = "dye:dark_grey 3",
recipe = {{"dye:black", "dye:black", "dye:white"}}
})
minetest.register_craft( {
output = "dye:grey 3",
recipe = {{"dye:black", "dye:white", "dye:white"}}
})
end
-- 2x2 red baked clay makes 16x clay brick
minetest.register_craft( {
output = "default:clay_brick 16",
recipe = {
{"bakedclay:red", "bakedclay:red"},
{"bakedclay:red", "bakedclay:red"}
}
})
-- colored clay compatibility
if minetest.settings:get_bool("colored_clay_compatibility") == true then
local cc = {
{"black", "black"},
{"blue", "blue"},
{"bright", "natural"},
{"brown", "brown"},
{"cyan", "cyan"},
{"dark_green", "dark_green"},
{"dark_grey", "dark_grey"},
{"green", "green"},
{"grey", "grey"},
{"hardened", "natural"},
{"magenta", "magenta"},
{"orange", "orange"},
{"pink", "pink"},
{"red", "red"},
{"violet", "violet"},
{"white", "white"},
{"yellow", "yellow"}
}
for n = 1, #cc do
local nod1 = "colored_clay:" .. cc[n][1]
local nod2 = "bakedclay:" .. cc[n][2]
minetest.register_alias(nod1, nod2)
if stairsplus_mod then
stairsplus:register_alias_all("colored_clay", cc[n][1], "bakedclay", cc[n][2])
end
end
end
-- get mod path
local path = minetest.get_modpath("bakedclay")
-- add new flowers
dofile(path .. "/flowers.lua")
-- add lucky blocks if mod present
if minetest.get_modpath("lucky_block") then
dofile(path .. "/lucky_block.lua")
end
print ("[MOD] Baked Clay loaded")

View file

@ -0,0 +1,36 @@
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.
Textures by TenPlus1 (CC0) unless listed below
Textures by Amara2_MK (Creative Commons)
https://www.curseforge.com/minecraft/texture-packs/glazed-terracotta-revamp
baked_clay_terracotta*.png
Missing gray, light gray, black and green textures re-coloured by Firefox.
Textures by Timbits (CC-BY-SA 3.0)
baked_clay_lazarus.png
baked_clay_delphinium.png
baked_clay_mannagrass.png
baked_clay_thistle.png

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.

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

@ -0,0 +1,65 @@
-- helpers
local p = "bakedclay:"
local p2 = "bakedclay:terracotta_"
-- add lucky blocks
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", p .. "natural"
}, 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", p .. "natural"
}, 0, true},
{"dro", {p .. "delphinium"}, 5},
{"dro", {p .. "lazarus"}, 5},
{"dro", {p .. "mannagrass"}, 5},
{"dro", {p .. "thistle"}, 6},
{"flo", 5, {
p .. "natural", 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},
{"nod", "default:chest", 0, {
{name = p .. "natural", max = 20},
{name = p .. "black", max = 20},
{name = p .. "blue", max = 20},
{name = p .. "brown", max = 20},
{name = p .. "cyan", max = 20},
{name = p .. "dark_green", max = 20},
{name = p .. "dark_grey", max = 20},
{name = p .. "green", max = 20},
{name = p .. "grey", max = 20},
{name = p .. "magenta", max = 20},
{name = p .. "orange", max = 20},
{name = p .. "pink", max = 20},
{name = p .. "red", max = 20},
{name = p .. "violet", max = 20},
{name = p .. "white", max = 20},
{name = p .. "yellow", max = 20}
}},
{"nod", "default:chest", 0, {
{name = p2 .. "black", max = 20},
{name = p2 .. "blue", max = 20},
{name = p2 .. "brown", max = 20},
{name = p2 .. "cyan", max = 20},
{name = p2 .. "dark_green", max = 20},
{name = p2 .. "dark_grey", max = 20},
{name = p2 .. "green", max = 20},
{name = p2 .. "grey", max = 20},
{name = p2 .. "magenta", max = 20},
{name = p2 .. "orange", max = 20},
{name = p2 .. "pink", max = 20},
{name = p2 .. "red", max = 20},
{name = p2 .. "violet", max = 20},
{name = p2 .. "white", max = 20},
{name = p2 .. "yellow", max = 20}
}}
})

5
mods/bakedclay/mod.conf Normal file
View file

@ -0,0 +1,5 @@
name = bakedclay
description = Bake clay blocks and colour with dye, also has Terracotta designs.
depends = default
optional_depends = stairs, moreblocks, lucky_block, flowerpot
min_minetest_version = 5.0

View file

@ -0,0 +1,5 @@
# Registers compatibility aliases with the older colored_clay mod
colored_clay_compatibility (Colored Clay Compatibility) bool false
# Registers compatibility aliases in older worlds for StairsPlus mod
stairsplus_clay_compatibility (StairsPlus Stair Compatibility) bool true

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 351 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 627 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 573 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 520 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 664 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 746 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 520 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 641 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 569 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 B