Initial files

This commit is contained in:
Mikita Wiśniewski 2022-02-22 16:30:42 +07:00
parent 379ebabf3f
commit 89d107c76e
8 changed files with 474 additions and 0 deletions

69
api.lua Normal file
View File

@ -0,0 +1,69 @@
-- mcl_decor/api.lua
function mcl_decor:register_chair(name, def)
minetest.register_node(name, {
description = def.description,
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.25, 0, 0.125, 0.25, 0.5, 0.25}, -- back
{-0.25, -0.125, -0.25, 0.25, 0, 0.25}, -- seat
{-0.25, -0.5, 0.125, -0.125, -0.125, 0.25}, -- 1st leg
{0.125, -0.5, -0.25, 0.25, -0.125, -0.125}, -- 2nd leg
{0.125, -0.5, 0.125, 0.25, -0.125, 0.25}, -- 3rd leg
{-0.25, -0.5, -0.25, -0.125, -0.125, -0.125}, -- 4th leg
}
},
tiles = def.tiles,
is_ground_content = false,
paramtype = "light",
paramtype2 = "facedir",
stack_max = 64,
sunlight_propagates = true,
selection_box = {
type = "fixed",
fixed = { -0.25, -0.5, -0.25, 0.25, 0.5, 0.25 },
},
collision_box = {
type = "fixed",
fixed = { -0.25, -0.5, -0.25, 0.25, 0.5, 0.25 },
},
groups = def.groups,
_mcl_hardness = def._mcl_hardness,
_mcl_blast_resistance = def._mcl_blast_resistance,
sounds = def.sounds,
-- TODO: make player sit on the chair by rightclick (maybe via homedecor funcs?)
})
end
function mcl_decor:register_table(name, def)
minetest.register_node(name, {
description = def.description,
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{ -0.5, 0.375, -0.5, 0.5, 0.5, 0.5 }, -- top
{ -0.4375, -0.5, -0.4375, -0.3125, 0.375, -0.3125 }, -- 1st leg
{ 0.3125, -0.5, -0.4375, 0.4375, 0.375, -0.3125 }, -- 2nd leg
{ 0.3125, -0.5, 0.3125, 0.4375, 0.375, 0.4375 }, -- 3rd leg
{ -0.4375, -0.5, 0.3125, -0.3125, 0.375, 0.4375 }, -- 4th leg
}
},
selection_box = {
type = "fixed",
fixed = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 }, -- default 1x1 selection box (to override that weird selection of just the nodebox itself)
},
tiles = def.tiles,
is_ground_content = false,
paramtype = "light",
stack_max = 64,
sunlight_propagates = true,
groups = def.groups,
_mcl_hardness = def._mcl_hardness,
_mcl_blast_resistance = def._mcl_blast_resistance,
sounds = def.sounds,
-- TODO: make tables connect with each other???
})
end

7
init.lua Normal file
View File

@ -0,0 +1,7 @@
-- mcl_decor/init.lua
mcl_decor = {}
local modpath = minetest.get_modpath(minetest.get_current_modname())
dofile(modpath.."/api.lua")
dofile(modpath.."/register.lua")

17
locale/mcl_decor.ru.tr Normal file
View File

@ -0,0 +1,17 @@
# textdomain: mcl_decor
Coalquartz tile=Уголекварцевая плитка
Rainbow block=Радужный блок
Oak Chair=Дубовый стул
Acacia Chair=Стул из акации
Birch Chair=Берёзовый стул
Dark Oak Chair=Стул из тёмного дуба
Jungle Chair=Стул из тропического дерева
Spruce Chair=Еловый стул
Iron Chair=Железный стул
Oak Table=Дубовый стол
Acacia Table=Стол из акации
Birch Table=Берёзовый стол
Dark Oak Table=Стол из тёмного дуба
Jungle Table=Стол из тропического дерева
Spruce Table=Еловый стол
Iron Table=Железый стол

17
locale/template.txt Normal file
View File

@ -0,0 +1,17 @@
# textdomain: mcl_decor
Coalquartz tile=
Rainbow block=
Oak Chair=
Acacia Chair=
Birch Chair=
Dark Oak Chair=
Jungle Chair=
Spruce Chair=
Iron Chair=
Oak Table=
Acacia Table=
Birch Table=
Dark Oak Table=
Jungle Table=
Spruce Table=
Iron Table=

4
mod.conf Normal file
View File

@ -0,0 +1,4 @@
name = mcl_decor
title = MineClone2 Furniture and decorations
description = Adds more decoration and furniture blocks to MineClone 2 (5)
depends = mcl_core, mcl_sounds, mcl_dye, mcl_nether

360
register.lua Normal file
View File

@ -0,0 +1,360 @@
-- mcl_decor/register.lua
local S = minetest.get_translator(minetest.get_current_modname())
--- Coalquartz tile ---
minetest.register_node("mcl_decor:coalquartz_tile", {
description = S("Coalquartz tile"),
tiles = {"mcl_decor_coalquartz_tile.png"},
is_ground_content = false,
groups = {pickaxey=1, flammable=1, quartz_block=1, building_block=1, material_stone=1, fire_encouragement=5, fire_flammability=5},
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 4,
_mcl_hardness = 3,
})
minetest.register_craft({
output = "mcl_decor:coalquartz_tile",
recipe = {
{"mcl_core:coalblock", "mcl_nether:quartz_block"},
{"mcl_nether:quartz_block", "mcl_core:coalblock"}
}
})
--- Rainbow block ---
minetest.register_node("mcl_decor:rainbow_block", {
description = S("Rainbow block"),
tiles = {{
name = "mcl_decor_rainbow_block.png",
animation = {type = "vertical_frames", aspect_w = 1, aspect_h = 1, length = 16}
}},
is_ground_content = false,
light_source = minetest.LIGHT_MAX,
groups = {handy=1, building_block=1, material_glass=1},
sounds = mcl_sounds.node_sound_glass_defaults(),
_mcl_blast_resistance = 0.9,
_mcl_hardness = 0.9,
})
minetest.register_craft({
output = "mcl_decor:rainbow_block",
recipe = {
{"mcl_dye:red", "mcl_dye:orange", "mcl_dye:yellow"},
{"mcl_dye:green", "mcl_nether:glowstone", "mcl_dye:lightblue"},
{"mcl_dye:blue", "mcl_dye:violet", "mcl_dye:pink"}
}
})
--- Oak Chair ---
mcl_decor:register_chair("mcl_decor:wooden_chair", {
description = S("Oak Chair"),
tiles = {"default_wood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:wooden_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:wood", "mcl_core:wood", "mcl_core:wood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:wooden_chair",
burntime = 8,
})
--- Acacia Chair ---
mcl_decor:register_chair("mcl_decor:acacia_chair", {
description = S("Acacia Chair"),
tiles = {"default_acacia_wood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:acacia_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:acaciawood", "mcl_core:acaciawood", "mcl_core:acaciawood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:acacia_chair",
burntime = 8,
})
--- Birch Chair ---
mcl_decor:register_chair("mcl_decor:birch_chair", {
description = S("Birch Chair"),
tiles = {"mcl_core_planks_birch.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:birch_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:birchwood", "mcl_core:birchwood", "mcl_core:birchwood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:birch_chair",
burntime = 8,
})
--- Dark Oak Chair ---
mcl_decor:register_chair("mcl_decor:dark_oak_chair", {
description = S("Dark Oak Chair"),
tiles = {"mcl_core_planks_big_oak.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:dark_oak_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:darkwood", "mcl_core:darkwood", "mcl_core:darkwood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:dark_oak_chair",
burntime = 8,
})
--- Jungle Chair ---
mcl_decor:register_chair("mcl_decor:jungle_chair", {
description = S("Jungle Chair"),
tiles = {"default_junglewood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:jungle_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:junglewood", "mcl_core:junglewood", "mcl_core:junglewood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:jungle_chair",
burntime = 8,
})
--- Spruce Chair ---
mcl_decor:register_chair("mcl_decor:spruce_chair", {
description = S("Spruce Chair"),
tiles = {"mcl_core_planks_spruce.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:spruce_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:sprucewood", "mcl_core:sprucewood", "mcl_core:sprucewood"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:spruce_chair",
burntime = 8,
})
--- Iron Chair ---
mcl_decor:register_chair("mcl_decor:iron_chair", {
description = S("Iron Chair"),
tiles = {"default_steel_block.png"},
groups = {pickaxey=2, deco_block=1},
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
sounds = mcl_sounds.node_sound_metal_defaults(),
})
minetest.register_craft({
output = "mcl_decor:iron_chair 2",
recipe = {
{"", "", "mcl_core:stick"},
{"mcl_core:iron_ingot", "mcl_core:iron_ingot", "mcl_core:iron_ingot"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
--- Oak Table ---
mcl_decor:register_table("mcl_decor:wooden_table", {
description = S("Oak Table"),
tiles = {"default_wood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:wooden_table",
recipe = {
{"mcl_core:wood", "mcl_core:wood", "mcl_core:wood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:wooden_table",
burntime = 10,
})
--- Acacia Table ---
mcl_decor:register_table("mcl_decor:acacia_table", {
description = S("Acacia Table"),
tiles = {"default_acacia_wood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:acacia_table",
recipe = {
{"mcl_core:acaciawood", "mcl_core:acaciawood", "mcl_core:acaciawood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:acacia_table",
burntime = 10,
})
--- Birch Table ---
mcl_decor:register_table("mcl_decor:birch_table", {
description = S("Birch Table"),
tiles = {"mcl_core_planks_birch.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:birch_table",
recipe = {
{"mcl_core:birchwood", "mcl_core:birchwood", "mcl_core:birchwood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:birch_table",
burntime = 10,
})
--- Dark Oak Table ---
mcl_decor:register_table("mcl_decor:dark_oak_table", {
description = S("Dark Oak Table"),
tiles = {"mcl_core_planks_big_oak.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:dark_oak_table",
recipe = {
{"mcl_core:darkwood", "mcl_core:darkwood", "mcl_core:darkwood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:dark_oak_table",
burntime = 10,
})
--- Jungle Table ---
mcl_decor:register_table("mcl_decor:jungle_table", {
description = S("Jungle Table"),
tiles = {"default_junglewood.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:jungle_table",
recipe = {
{"mcl_core:junglewood", "mcl_core:junglewood", "mcl_core:junglewood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:jungle_table",
burntime = 10,
})
--- Spruce Table ---
mcl_decor:register_table("mcl_decor:spruce_table", {
description = S("Spruce Table"),
tiles = {"mcl_core_planks_spruce.png"},
groups = {handy=1, axey=1, material_wood=1, deco_block=1, flammable=-1},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
sounds = mcl_sounds.node_sound_wood_defaults(),
})
minetest.register_craft({
output = "mcl_decor:spruce_table",
recipe = {
{"mcl_core:sprucewood", "mcl_core:sprucewood", "mcl_core:sprucewood"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})
minetest.register_craft({
type = "fuel",
recipe = "mcl_decor:spruce_table",
burntime = 10,
})
--- Iron Table ---
mcl_decor:register_table("mcl_decor:iron_table", {
description = S("Iron Table"),
tiles = {"default_steel_block.png"},
groups = {pickaxey=2, deco_block=1},
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
sounds = mcl_sounds.node_sound_metal_defaults(),
})
minetest.register_craft({
output = "mcl_decor:iron_table",
recipe = {
{"mcl_core:iron_ingot", "mcl_core:iron_ingot", "mcl_core:iron_ingot"},
{"mcl_core:stick", "", "mcl_core:stick"},
{"mcl_core:stick", "", "mcl_core:stick"}
}
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 559 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B