diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..85e7c1d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.idea/ diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..d2f3b41 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..a55e7a1 --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/dbnavigator.xml b/.idea/dbnavigator.xml new file mode 100644 index 0000000..e2cc734 --- /dev/null +++ b/.idea/dbnavigator.xml @@ -0,0 +1,405 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/jonez.iml b/.idea/jonez.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/jonez.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..1b2d693 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..bb63269 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/chisel.lua b/chisel.lua index d8d8f0e..d4e5fef 100644 --- a/chisel.lua +++ b/chisel.lua @@ -1,39 +1,44 @@ -chisel = {} -local S = minetest.get_translator(minetest.get_current_modname()) +local S = ... -chisel.chiselable = {} -chisel.group_style_index = {} -chisel.group_style_nodes = {} -chisel.player_copied_style = {} +jonez.chisel = { + chiselable = {}, + group_style_index = {}, + group_style_nodes = {}, + player_copied_style = {}, +} -chisel.register_chiselable = function(node_name, group_name, style) - chisel.chiselable[ node_name ] = {} - chisel.chiselable[ node_name ].group_name = group_name - chisel.chiselable[ node_name ].style = style +jonez.chisel.register_chiselable = function(node_name, group_name, style) + jonez.chisel.chiselable[node_name] = {} + jonez.chisel.chiselable[node_name].group_name = group_name + jonez.chisel.chiselable[node_name].style = style - if not chisel.group_style_nodes[ group_name ] then - chisel.group_style_nodes[ group_name ] = {} + if not jonez.chisel.group_style_nodes[group_name] then + jonez.chisel.group_style_nodes[group_name] = {} end - chisel.group_style_nodes[ group_name ][ style ] = node_name + jonez.chisel.group_style_nodes[group_name][style] = node_name end -chisel.register_chiselable_stair_and_slab = function(node_subname, group_subname, style) - chisel.register_chiselable("stairs:stair_" .. node_subname, "stairs:stair_" .. group_subname, style) - chisel.register_chiselable("stairs:stair_inner_" .. node_subname, "stairs:stair_inner_" .. group_subname, style) - chisel.register_chiselable("stairs:stair_outer_" .. node_subname, "stairs:stair_outer_" .. group_subname, style) - chisel.register_chiselable("stairs:slab_" .. node_subname, "stairs:slab_" .. group_subname, style) +jonez.chisel.register_chiselable_stair_and_slab = function(node_subname, group_subname, style) + jonez.chisel.register_chiselable("stairs:stair_" .. node_subname, "stairs:stair_" .. group_subname, style) + jonez.chisel.register_chiselable("stairs:stair_inner_" .. node_subname, "stairs:stair_inner_" .. group_subname, style) + jonez.chisel.register_chiselable("stairs:stair_outer_" .. node_subname, "stairs:stair_outer_" .. group_subname, style) + jonez.chisel.register_chiselable("stairs:slab_" .. node_subname, "stairs:slab_" .. group_subname, style) end local function chisel_interact(player, pointed_thing, is_right_click) - if pointed_thing.type ~= "node" then return end + if pointed_thing.type ~= "node" then + return + end local pos = pointed_thing.under local is_sneak = player and player:get_player_control().sneak or false local player_name = player and player:get_player_name() -- A true player is required - if not player_name then return end + if not player_name then + return + end -- Check for node protection if minetest.is_protected(pos, player_name) then @@ -46,35 +51,37 @@ local function chisel_interact(player, pointed_thing, is_right_click) local node = minetest.get_node(pos) local node_name = node.name - if not chisel.chiselable[ node_name ] then + if not jonez.chisel.chiselable[node_name] then minetest.chat_send_player(player_name, "Not chiselable") return end - local group_name = chisel.chiselable[ node_name ].group_name - local style = chisel.chiselable[ node_name ].style - local group = chisel.group_style_nodes[ group_name ] - local new_style , new_node_name + local group_name = jonez.chisel.chiselable[node_name].group_name + local style = jonez.chisel.chiselable[node_name].style + local group = jonez.chisel.group_style_nodes[group_name] + local new_style, new_node_name -- Now branch on the four user-input cases if is_right_click then if is_sneak then -- Copy style - chisel.player_copied_style[ player_name ] = style + jonez.chisel.player_copied_style[player_name] = style minetest.chat_send_player(player_name, "Chisel style " .. style .. " copied") return else -- Paste style - new_style = chisel.player_copied_style[ player_name ] + new_style = jonez.chisel.player_copied_style[player_name] if not new_style then minetest.chat_send_player(player_name, "No chisel style copied yet, use sneak + right-click to copy a style") return end -- Already the correct style, exit now! - if new_style == style then return end + if new_style == style then + return + end - new_node_name = group[ new_style ] + new_node_name = group[new_style] if not new_node_name then minetest.chat_send_player(player_name, "Chisel style " .. new_style .. " is not supported by this chisel group " .. group_name) @@ -160,3 +167,75 @@ minetest.register_craft({ } }) +if minetest.get_modpath("unified_inventory") then + unified_inventory.register_craft_type("jonez:chisel", { + description = S("Chisel for Marble"), + icon = "jonez_chisel.png", + width = 1, + height = 1, + }) + + minetest.register_on_mods_loaded(function() + for _, group in pairs(jonez.chisel.group_style_nodes) do + local prev_node + local first_node + + for _, node in pairs(group) do + if not first_node then + first_node = node + end + if prev_node then + minetest.log("verbose", ("[jonez] chisel recipe %s -> %s"):format(node, prev_node)) + unified_inventory.register_craft({ + type = "jonez:chisel", + output = node, + items = {prev_node}, + width = 1, + }) + end + prev_node = node + end + + unified_inventory.register_craft({ + type = "jonez:chisel", + output = first_node, + items = {prev_node}, + width = 1, + }) + end + end) +end + +if minetest.get_modpath("i3") then + i3.register_craft_type("jonez:chisel", { + description = S("Chisel for Marble"), + icon = "jonez_chisel.png", + }) + + minetest.register_on_mods_loaded(function() + for _, group in pairs(jonez.chisel.group_style_nodes) do + local prev_node + local first_node + + for _, node in pairs(group) do + if not first_node then + first_node = node + end + if prev_node then + i3.register_craft({ + type = "jonez:chisel", + result = node, + items = {prev_node}, + }) + end + prev_node = node + end + + i3.register_craft({ + type = "jonez:chisel", + result = first_node, + items = {prev_node}, + }) + end + end) +end diff --git a/init.lua b/init.lua index 6e3edc0..0d9d650 100644 --- a/init.lua +++ b/init.lua @@ -1,13 +1,15 @@ --Variables -local mod_path = minetest.get_modpath(minetest.get_current_modname()) -dofile(mod_path .. "/chisel.lua") -local S = minetest.get_translator(minetest.get_current_modname()) +jonez = {} +local mod_name = minetest.get_current_modname() +local mod_path = minetest.get_modpath(mod_name) +local S = minetest.get_translator(mod_name) +assert(loadfile(mod_path .. "/chisel.lua"))(S) local function firstToUpper(str) return (str:gsub("^%l", string.upper)) end -chisel.register_chiselable("jonez:marble", "jonez:marble", "raw" ) +jonez.chisel.register_chiselable("jonez:marble", "jonez:marble", "raw" ) minetest.register_node("jonez:marble", { description = S("Ancient Marble"), tiles = {"jonez_marble.png"}, @@ -16,7 +18,7 @@ minetest.register_node("jonez:marble", { sounds = default.node_sound_stone_defaults(), }) -chisel.register_chiselable("jonez:marble_polished", "jonez:marble", "polished" ) +jonez.chisel.register_chiselable("jonez:marble_polished", "jonez:marble", "polished" ) minetest.register_node("jonez:marble_polished", { description = S("Ancient Polished Marble"), tiles = {"jonez_marble_polished.png"}, @@ -25,7 +27,7 @@ minetest.register_node("jonez:marble_polished", { sounds = default.node_sound_stone_defaults(), }) -chisel.register_chiselable_stair_and_slab("marble", "marble", "raw" ) +jonez.chisel.register_chiselable_stair_and_slab("marble", "marble", "raw" ) stairs.register_stair_and_slab( "marble", "jonez:marble", @@ -36,7 +38,16 @@ stairs.register_stair_and_slab( default.node_sound_stone_defaults() ) -chisel.register_chiselable_stair_and_slab("marble_brick", "marble_brick", "raw" ) +jonez.chisel.register_chiselable("jonez:marble_brick", "jonez:marble_brick", "raw" ) +minetest.register_node("jonez:marble_brick", { + description = S("Ancient Marble Brick"), + tiles = {"jonez_marble_brick.png"}, + is_ground_content = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), +}) + +jonez.chisel.register_chiselable_stair_and_slab("marble_brick", "marble_brick", "raw" ) stairs.register_stair_and_slab( "marble_brick", "jonez:marble_brick", @@ -47,16 +58,7 @@ stairs.register_stair_and_slab( default.node_sound_stone_defaults() ) -chisel.register_chiselable("jonez:marble_brick", "jonez:marble_brick", "raw" ) -minetest.register_node("jonez:marble_brick", { - description = S("Ancient Marble Brick"), - tiles = {"jonez_marble_brick.png"}, - is_ground_content = false, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), -}) - -chisel.register_chiselable("jonez:marble_brick_polished", "jonez:marble_brick", "polished" ) +jonez.chisel.register_chiselable("jonez:marble_brick_polished", "jonez:marble_brick", "polished" ) minetest.register_node("jonez:marble_brick_polished", { description = S("Ancient Marble Polished Brick"), tiles = {"jonez_marble_brick_polished.png"}, @@ -65,7 +67,7 @@ minetest.register_node("jonez:marble_brick_polished", { sounds = default.node_sound_stone_defaults(), }) -chisel.register_chiselable_stair_and_slab("marble_polished", "marble", "polished" ) +jonez.chisel.register_chiselable_stair_and_slab("marble_polished", "marble", "polished" ) stairs.register_stair_and_slab( "marble_polished", "jonez:marble_polished", @@ -76,7 +78,7 @@ stairs.register_stair_and_slab( default.node_sound_stone_defaults() ) -chisel.register_chiselable_stair_and_slab("marble_brick_polished", "marble_brick", "polished" ) +jonez.chisel.register_chiselable_stair_and_slab("marble_brick_polished", "marble_brick", "polished" ) stairs.register_stair_and_slab( "marble_brick_polished", "jonez:marble_brick_polished", @@ -133,7 +135,11 @@ local styles = { "carthaginian", "industrial", "romanesque", - "cimmerian" + "cimmerian", + "nubian", + "norman", + "romantic", + "persian" } -- The Crafting of the Greek Set @@ -180,39 +186,47 @@ minetest.register_craft({ for i = 1, #styles do - chisel.register_chiselable("jonez:"..styles[i].."_architrave", "jonez:architrave", styles[i] ) + jonez.chisel.register_chiselable("jonez:"..styles[i].."_architrave", "jonez:architrave", styles[i] ) minetest.register_node("jonez:"..styles[i].."_architrave", { description = S("Ancient").." "..S(firstToUpper(styles[i])).." "..S("Architrave"), - tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_architrave.png"}, + tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_".. + styles[i].."_architrave.png"}, is_ground_content = false, groups = {cracky=3}, + paramtype2 = "facedir", sounds = default.node_sound_stone_defaults(), }) - chisel.register_chiselable("jonez:"..styles[i].."_capital", "jonez:capital", styles[i] ) + jonez.chisel.register_chiselable("jonez:"..styles[i].."_capital", "jonez:capital", styles[i] ) minetest.register_node("jonez:"..styles[i].."_capital", { description = S("Ancient").." "..S(firstToUpper(styles[i])).." "..S("Capital"), - tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_capital.png"}, + tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].. + "_capital.png"}, is_ground_content = false, groups = {cracky=3}, + paramtype2 = "facedir", sounds = default.node_sound_stone_defaults(), }) - chisel.register_chiselable("jonez:"..styles[i].."_shaft", "jonez:shaft", styles[i] ) + jonez.chisel.register_chiselable("jonez:"..styles[i].."_shaft", "jonez:shaft", styles[i] ) minetest.register_node("jonez:"..styles[i].."_shaft", { description = S("Ancient").." "..S(firstToUpper(styles[i])).." "..S("Shaft"), - tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_shaft.png"}, + tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].. + "_shaft.png"}, is_ground_content = false, groups = {cracky=3}, + paramtype2 = "facedir", sounds = default.node_sound_stone_defaults(), }) - chisel.register_chiselable("jonez:"..styles[i].."_base", "jonez:base", styles[i] ) + jonez.chisel.register_chiselable("jonez:"..styles[i].."_base", "jonez:base", styles[i] ) minetest.register_node("jonez:"..styles[i].."_base", { description = S("Ancient").." "..S(firstToUpper(styles[i])).." "..S("Base"), - tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_base.png"}, + tiles = {"jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].."_top_bottom.png", "jonez_"..styles[i].. + "_base.png"}, is_ground_content = false, groups = {cracky=3}, + paramtype2 = "facedir", sounds = default.node_sound_stone_defaults(), }) end @@ -232,7 +246,7 @@ for i = 1, #vines do paramtype = "light", paramtype2 = "facedir", tiles = {vines[i].texture}, - use_texture_alpha = true, + use_texture_alpha = "clip", inventory_image = vines[i].texture, wield_image = vines[i].texture, node_box = { @@ -247,14 +261,16 @@ for i = 1, #vines do end local panels = { - {name= "jonez_panel_1", description= "Mosaic Glass Panel", textures={front= "jonez_panel_1.png", edge="jonez_panes_edge.png"}, + {name= "jonez_panel_1", description= "Mosaic Glass Panel", textures={front= "jonez_panel_1.png", + edge="jonez_panes_edge.png"}, recipe = { {"dye:blue", "dye:black", "dye:pink"}, {"dye:red", "xpanes:pane_flat", "dye:green"}, {"dye:yellow", "dye:black", "dye:orange"}, } }, - {name= "jonez_panel_2", description= "Blossom Glass Panel", textures={front="jonez_panel_2.png", edge="jonez_panes_edge.png"}, + {name= "jonez_panel_2", description= "Blossom Glass Panel", textures={front="jonez_panel_2.png", + edge="jonez_panes_edge.png"}, recipe = { {"dye:blue", "dye:red", "dye:green"}, {"dye:yellow", "xpanes:pane_flat", "dye:yellow"}, @@ -263,16 +279,16 @@ local panels = { }, {name= "wrought_lattice_bottom", description= "Ancient Wrought Lattice (Bottom)", textures={front="jonez_wrought_lattice_bottom.png", edge="jonez_panes_edge.png"}, - use_texture_alpha = true, + use_texture_alpha = "clip", recipe = { - {'default:steel_ingot', 'default:steel_ingot'}, - {'default:tin_ingot', 'default:tin_ingot'}, - {'default:steel_ingot', 'default:steel_ingot'}, + {'', '', ''}, + {'default:steel_ingot', 'default:tin_ingot', 'default:steel_ingot'}, + {'default:steel_ingot', 'default:tin_ingot', 'default:steel_ingot'}, } }, {name= "palace_window_top", description= "Palace Window (Top)", textures={front="jonez_palace_window_top.png", edge="default_wood.png"}, - use_texture_alpha = true, + use_texture_alpha = "clip", recipe = { {'', 'xpanes:pane_flat', ''}, {'', 'xpanes:pane_flat', ''}, @@ -281,11 +297,11 @@ local panels = { }, {name= "palace_window_bottom", description= "Palace Window (Bottom)", textures={front="jonez_palace_window_bottom.png", edge="default_wood.png"}, - use_texture_alpha = true, + use_texture_alpha = "clip", recipe = { - {'xpanes:pane_flat', 'xpanes:pane_flat', ''}, - {'', '', ''}, {'', '', ''}, + {'', 'xpanes:pane_flat', ''}, + {'', 'xpanes:pane_flat', ''}, } }, } @@ -335,18 +351,22 @@ local pavements= { {name= "jonez:pebbled_pavement", description= "Ancient Pebbled Pavement", texture= "jonez_pebbled_pavement.png", recipe = { {'', 'stairs:slab_marble_brick_polished', ''}, - {'stairs:slab_marble_brick_polished', '', 'stairs:slab_marble_brick_polished'}, + {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', + 'stairs:slab_marble_brick_polished'}, {'', 'stairs:slab_marble_brick_polished', ''}, } }, - {name= "jonez:pebbled_medieval_pavement", description= "Ancient Pebbled Medieval Pavement", texture= "jonez_pebbled_medieval_pavement.png", + {name= "jonez:pebbled_medieval_pavement", description= "Ancient Pebbled Medieval Pavement", + texture= "jonez_pebbled_medieval_pavement.png", recipe = { {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', ''}, - {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished'}, + {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', + 'stairs:slab_marble_brick_polished'}, {'', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished'}, } }, - {name= "jonez:pebbled_gothic_pavement", description= "Ancient Pebbled Gothic Pavement", texture= "jonez_pebbled_gothic_pavement.png", + {name= "jonez:pebbled_gothic_pavement", description= "Ancient Pebbled Gothic Pavement", + texture= "jonez_pebbled_gothic_pavement.png", recipe = { {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', ''}, {'', 'stairs:slab_marble_brick_polished', ''}, @@ -356,7 +376,8 @@ local pavements= { {name= "jonez:pebbled_wall", description= "Ancient Pebbled Wall", texture= "jonez_pebbled_wall.png", recipe = { {'', 'stairs:slab_marble_brick_polished', ''}, - {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished'}, + {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick_polished', + 'stairs:slab_marble_brick_polished'}, {'', 'stairs:slab_marble_brick_polished', ''}, } }, @@ -374,34 +395,45 @@ local pavements= { {'', 'stairs:slab_marble_brick_polished', ''}, } }, - {name= "jonez:pompeiian_pavement", description= "Ancient Pompeiian Pavement", texture= "jonez_pompeiian_pavement.png", + {name= "jonez:pompeiian_pavement", description= "Ancient Pompeiian Pavement", + texture= "jonez_pompeiian_pavement.png", recipe = { {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, } }, - {name= "jonez:pompeiian_path", description= "Ancient Pompeiian Path", texture= "jonez_pompeiian_path.png", amount = 4, + {name= "jonez:pompeiian_path", description= "Ancient Pompeiian Path", texture= "jonez_pompeiian_path.png", + amount = 4, recipe = { {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished'}, } }, - {name= "jonez:carthaginian_pavement", description= "Carthaginian Pavement", texture= "jonez_carthaginian_pavement.png", amount = 4, + {name= "jonez:carthaginian_pavement", description= "Carthaginian Pavement", + texture= "jonez_carthaginian_pavement.png", amount = 4, recipe = { {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, } }, - {name= "jonez:carthaginian_wall", description= "Carthaginian Wall", texture= "jonez_carthaginian_wall.png", amount = 4, + {name= "jonez:carthaginian_wall", description= "Carthaginian Wall", texture= "jonez_carthaginian_wall.png", + amount = 4, recipe = { {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished'}, {'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick'}, {'stairs:slab_marble_brick_polished', 'stairs:slab_marble_brick', 'stairs:slab_marble_brick_polished'}, } }, + {name= "jonez:nubian_wall", description= "Nubian Wall", texture= "jonez_nubian_wall.png", amount = 9, + recipe = { + {'default:sandstonebrick', 'default:sandstonebrick', 'default:sandstonebrick'}, + {'default:sandstonebrick', 'default:sandstonebrick', 'default:sandstonebrick'}, + {'default:sandstonebrick', 'default:sandstonebrick', 'default:sandstonebrick'}, + } + }, } for i = 1, #pavements do @@ -414,12 +446,12 @@ for i = 1, #pavements do }) local amount if pavements[i].amount then - amount = " ".. tostring(pavements[i].amount) + amount = tostring(pavements[i].amount) else - amount = " 1" + amount = "1" end minetest.register_craft({ - output = pavements[i].name .. amount, + output = pavements[i].name .. " " .. amount, type = 'shaped', recipe = pavements[i].recipe, }) @@ -448,7 +480,7 @@ minetest.register_node("jonez:wrought_lattice_top", { "jonez_wrought_lattice_top.png", "jonez_wrought_lattice_top.png" }, - use_texture_alpha = true, + use_texture_alpha = "clip", }) minetest.register_craft({ @@ -513,3 +545,30 @@ minetest.register_craft({ {'', 'jonez:marble_polished', ''}, }, }) + +minetest.register_node("jonez:censer", { + description = S("Censer"), + tiles = {"jonez_censer_top.png", "jonez_censer_top.png", "jonez_censer_front.png"}, + drawtype = "nodebox", + paramtype = "light", + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.375, 0.5}, -- NodeBox1 + {-0.4375, -0.375, -0.4375, 0.4375, -0.3125, 0.4375}, -- NodeBox2 + {-0.375, -0.3125, -0.375, 0.375, -0.25, 0.375}, -- NodeBox3 + {-0.3125, -0.3125, -0.3125, 0.3125, 0.25, 0.3125}, -- NodeBox4 + {-0.375, 0.25, -0.375, 0.375, 0.3125, 0.375}, -- NodeBox5 + {-0.4375, 0.3125, -0.4375, 0.4375, 0.375, -0.375}, -- NodeBox6 + {-0.5, 0.375, -0.5, 0.5, 0.5, -0.4375}, -- NodeBox7 + {-0.4375, 0.3125, 0.375, 0.4375, 0.375, 0.4375}, -- NodeBox8 + {-0.5, 0.375, 0.4375, 0.5, 0.5, 0.5}, -- NodeBox9 + {0.375, 0.3125, -0.4375, 0.4375, 0.375, 0.4375}, -- NodeBox10 + {0.4375, 0.375, -0.5, 0.5, 0.5, 0.5}, -- NodeBox11 + {-0.5, 0.375, -0.5, -0.4375, 0.5, 0.5}, -- NodeBox12 + {-0.4375, 0.3125, -0.4375, -0.375, 0.375, 0.4375}, -- NodeBox13 + }, + }, + groups = {cracky=1}, +}) + diff --git a/locale/jonez.es.tr b/locale/jonez.es.tr index 08663f1..a659070 100644 --- a/locale/jonez.es.tr +++ b/locale/jonez.es.tr @@ -24,6 +24,9 @@ Carthaginian=Cartaginés Industrial=Industrial Romanesque=Romanisco Cimmerian=Cimerio +Nubian=Nubio +Norma=Normando +Romantic=Romántico Ancient Marble Stair=Escalera de mármol antiguo Ancient Marble Slab=Losa de mármol antiguo Ancient Marble Brick Stair=Escalera de ladrillo de mármol antiguo @@ -60,3 +63,4 @@ Ancient Pompeiian Path=Camino antiguo pompeyano Ancient Pompeiian Altar=Altar antiguo pompeyano Carthaginian Pavement=Pavimiento cartaginés Carthaginian Wall=Pavimiento cartaginés +Censer=Incensiario diff --git a/locale/jonez.ru.tr b/locale/jonez.ru.tr new file mode 100644 index 0000000..feb081d --- /dev/null +++ b/locale/jonez.ru.tr @@ -0,0 +1,71 @@ +# textdomain: jonez +Ancient Marble=Древний мрамор +Chisel for Marble=Зубило для мрамора +Ancient=Древний +Architrave=Архитрав +Capital=Капитал +Shaft=Вал +Norman=Норманский +Base=Основание +Artdeco=Артдеко +Roman=Римский +Greek=Греческий +Germanic=Германский +Tuscan=Тосканский +Persian=Персидский +Romanic=Романский +Nabataean=Набатейский +Minoan=Минойский +Attic=Аттический +Versailles=Версальский +Medieval=Средневековый +Gothic=Готический +Pompeiian=Помпейский +Corinthian=Коринфский +Carthaginian=Карфагенский +Industrial=Индустриальный +Romanesque=Романский +Cimmerian=Киммерийский +Nubian=Нубийский +Norma=Нормнский +Romantic=Романтический +Nubian Wall=Нубийская стена +Ancient Marble Stair=Древняя мраморная лестница +Ancient Marble Slab=Древняя мраморная плита +Ancient Marble Brick=Древний мраморный кирпич +Ancient Marble Brick Stair=Древняя мраморная лестница +Ancient Marble Brick Slab=Древняя плита из мраморного кирпича +Ancient Marble Polished Brick=Древний мраморный полированный кирпич +Swedish Ivy=Шведский плющ +Ruin Creeper=Руинный ползун +Ruin Vine=Руинная лоза +Climbing Rose=Вьющаяся роза +Mosaic Glass Panel=Мозаичная стеклянная панел +Blossom Glass Panel=Цветеная стеклянная панель +Ancient Wrought Lattice (Bottom)=Древняя кованая решетка (низ) +Ancient Wrought Lattice (Top)=Древняя кованая решетка (верх) +Ancient Blossom Pavement=Древний цветущий тротуар +Ancient Tiled Pavement=Античный плиточный тротуар +Ancient Mosaic Pavement=Древний мозаичный тротуар +Ancient Diamond Pavement=Древний алмазный тротуар +Ancient Pebbled Pavement=Древний галечный тротуар +Ancient Pebbled Medieval Pavement=Древний галечный средневековый тротуар +Ancient Pebbled Gothic Pavement=Древний галечный готический тротуар +Ancient Pebbled Wall=Древняя галечная стена +Ancient Gothic Wall=Древняя готическая стена +Ancient Polished Marble=Древний полированный мрамор +Ancient Polished Marble Stair=Древняя лестница из полированного мрамора +Ancient Polished Marble Slab=Древняя плита из полированного мрамора +Ancient Polished Marble Brick Stair=Древняя лестница из полированного мрамора +Ancient Polished Marble Brick Slab=Древняя кирпичная плита из полированного мрамора +Palace Window (Top)=Дворцовое окно (верх) +Palace Window (Bottom)=Дворцовое окно (низ) +Versailles Pavement=Версальский тротуар +Versailles Tile=Версальская плитка +Ancient Pompeiian Wall=Древняя помпейская стена +Ancient Pompeiian Pavement=Древнепомпейский тротуар +Ancient Pompeiian Path=Древняя помпейская тропа +Ancient Pompeiian Altar=Древнепомпейский алтарь +Carthaginian Pavement=Карфагенская мостовая +Carthaginian Wall=Карфагенская стена +Censer=Кадильница diff --git a/mod.conf b/mod.conf index f30964b..323eca6 100644 --- a/mod.conf +++ b/mod.conf @@ -1,2 +1,3 @@ name = jonez -depends = stairs, xpanes +depends = default, dye, stairs, xpanes +optional_depends = i3, unified_inventory diff --git a/sounds/jonez_carve.ogg b/sounds/jonez_carve.ogg index 33595e6..69ba086 100644 Binary files a/sounds/jonez_carve.ogg and b/sounds/jonez_carve.ogg differ diff --git a/textures/jonez_censer_front.png b/textures/jonez_censer_front.png new file mode 100644 index 0000000..e77a4fe Binary files /dev/null and b/textures/jonez_censer_front.png differ diff --git a/textures/jonez_censer_top.png b/textures/jonez_censer_top.png new file mode 100644 index 0000000..073e828 Binary files /dev/null and b/textures/jonez_censer_top.png differ diff --git a/textures/jonez_norman_architrave.png b/textures/jonez_norman_architrave.png new file mode 100644 index 0000000..5b0ab7a Binary files /dev/null and b/textures/jonez_norman_architrave.png differ diff --git a/textures/jonez_norman_base.png b/textures/jonez_norman_base.png new file mode 100644 index 0000000..374672b Binary files /dev/null and b/textures/jonez_norman_base.png differ diff --git a/textures/jonez_norman_capital.png b/textures/jonez_norman_capital.png new file mode 100644 index 0000000..47961c3 Binary files /dev/null and b/textures/jonez_norman_capital.png differ diff --git a/textures/jonez_norman_shaft.png b/textures/jonez_norman_shaft.png new file mode 100644 index 0000000..ac01fa8 Binary files /dev/null and b/textures/jonez_norman_shaft.png differ diff --git a/textures/jonez_norman_top_bottom.png b/textures/jonez_norman_top_bottom.png new file mode 100644 index 0000000..9e33075 Binary files /dev/null and b/textures/jonez_norman_top_bottom.png differ diff --git a/textures/jonez_nubian_architrave.png b/textures/jonez_nubian_architrave.png new file mode 100644 index 0000000..01151ff Binary files /dev/null and b/textures/jonez_nubian_architrave.png differ diff --git a/textures/jonez_nubian_base.png b/textures/jonez_nubian_base.png new file mode 100644 index 0000000..1e50e71 Binary files /dev/null and b/textures/jonez_nubian_base.png differ diff --git a/textures/jonez_nubian_capital.png b/textures/jonez_nubian_capital.png new file mode 100644 index 0000000..bebbff2 Binary files /dev/null and b/textures/jonez_nubian_capital.png differ diff --git a/textures/jonez_nubian_shaft.png b/textures/jonez_nubian_shaft.png new file mode 100644 index 0000000..5d9e57a Binary files /dev/null and b/textures/jonez_nubian_shaft.png differ diff --git a/textures/jonez_nubian_top_bottom.png b/textures/jonez_nubian_top_bottom.png new file mode 100644 index 0000000..f936e1b Binary files /dev/null and b/textures/jonez_nubian_top_bottom.png differ diff --git a/textures/jonez_nubian_wall.png b/textures/jonez_nubian_wall.png new file mode 100644 index 0000000..e8a8f81 Binary files /dev/null and b/textures/jonez_nubian_wall.png differ diff --git a/textures/jonez_persian_architrave.png b/textures/jonez_persian_architrave.png new file mode 100644 index 0000000..e0235d8 Binary files /dev/null and b/textures/jonez_persian_architrave.png differ diff --git a/textures/jonez_persian_base.png b/textures/jonez_persian_base.png new file mode 100644 index 0000000..1b192b5 Binary files /dev/null and b/textures/jonez_persian_base.png differ diff --git a/textures/jonez_persian_capital.png b/textures/jonez_persian_capital.png new file mode 100644 index 0000000..a0f795c Binary files /dev/null and b/textures/jonez_persian_capital.png differ diff --git a/textures/jonez_persian_shaft.png b/textures/jonez_persian_shaft.png new file mode 100644 index 0000000..d83a3fb Binary files /dev/null and b/textures/jonez_persian_shaft.png differ diff --git a/textures/jonez_persian_top_bottom.png b/textures/jonez_persian_top_bottom.png new file mode 100644 index 0000000..f9e9210 Binary files /dev/null and b/textures/jonez_persian_top_bottom.png differ diff --git a/textures/jonez_romantic_architrave.png b/textures/jonez_romantic_architrave.png new file mode 100644 index 0000000..4573543 Binary files /dev/null and b/textures/jonez_romantic_architrave.png differ diff --git a/textures/jonez_romantic_base.png b/textures/jonez_romantic_base.png new file mode 100644 index 0000000..ed7c222 Binary files /dev/null and b/textures/jonez_romantic_base.png differ diff --git a/textures/jonez_romantic_capital.png b/textures/jonez_romantic_capital.png new file mode 100644 index 0000000..9b1f3ac Binary files /dev/null and b/textures/jonez_romantic_capital.png differ diff --git a/textures/jonez_romantic_shaft.png b/textures/jonez_romantic_shaft.png new file mode 100644 index 0000000..18f624b Binary files /dev/null and b/textures/jonez_romantic_shaft.png differ diff --git a/textures/jonez_romantic_top_bottom.png b/textures/jonez_romantic_top_bottom.png new file mode 100644 index 0000000..24cad7b Binary files /dev/null and b/textures/jonez_romantic_top_bottom.png differ