1
0
peilaus alkaen https://github.com/mt-mods/homedecor_modpack.git synced 2025-09-18 16:10:37 +02:00

Vertaa committeja

..

1 Commitit

Tekijä SHA1 Viesti Päivämäärä
Vanessa Dannenberg
6c6cb347fd move door 3d models to "3d extras" mod
by extension, require its presence to cause doors to be 3d

for consistency with the appearance/style of mtg doors in worlds that
wouldn't normally use the 3d extras mod
2019-05-28 07:57:23 -04:00
50 muutettua tiedostoa jossa 795 lisäystä ja 10703 poistoa

Näytä tiedosto

@@ -258,6 +258,33 @@ minetest.register_node("computer:tower", {
minetest.register_alias("computer:tower_on", "computer:tower") minetest.register_alias("computer:tower_on", "computer:tower")
-- Printer/scaner combo
minetest.register_node("computer:printer", {
description = S("Printer-Scanner Combo"),
inventory_image = "computer_printer_inv.png",
tiles = {"computer_printer_t.png","computer_printer_bt.png","computer_printer_l.png",
"computer_printer_r.png","computer_printer_b.png","computer_printer_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = {snappy=3},
sound = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.3125, -0.125, 0.4375, -0.0625, 0.375},
{-0.4375, -0.5, -0.125, 0.4375, -0.4375, 0.375},
{-0.4375, -0.5, -0.125, -0.25, -0.0625, 0.375},
{0.25, -0.5, -0.125, 0.4375, -0.0625, 0.375},
{-0.4375, -0.5, -0.0625, 0.4375, -0.0625, 0.375},
{-0.375, -0.4375, 0.25, 0.375, -0.0625, 0.4375},
{-0.25, -0.25, 0.4375, 0.25, 0.0625, 0.5},
{-0.25, -0.481132, -0.3125, 0.25, -0.4375, 0}
},
},
})
--Rack Server --Rack Server
minetest.register_node("computer:server", { minetest.register_node("computer:server", {
drawtype = "nodebox", drawtype = "nodebox",

Näytä tiedosto

@@ -1,4 +1,2 @@
default default
homedecor_common homedecor_common
basic_materials
unifieddyes

Näytä tiedosto

@@ -94,6 +94,6 @@ end
local MODPATH = minetest.get_modpath("computer") local MODPATH = minetest.get_modpath("computer")
dofile(MODPATH.."/computers.lua") dofile(MODPATH.."/computers.lua")
dofile(MODPATH.."/printers.lua") dofile(MODPATH.."/miscitems.lua")
dofile(MODPATH.."/recipes.lua") dofile(MODPATH.."/recipes.lua")
dofile(MODPATH.."/tetris.lua") dofile(MODPATH.."/tetris.lua")

68
computer/miscitems.lua Normal file
Näytä tiedosto

@@ -0,0 +1,68 @@
-- Copyright (C) 2012-2013 Diego Martínez <kaeza@users.sf.net>
-- This file defines some items in order to not have to depend on other mods.
local S = homedecor.gettext
if (not minetest.get_modpath("homedecor")) then
minetest.register_craftitem(":basic_materials:plastic_sheet", {
description = S("Plastic sheet"),
inventory_image = "homedecor_plastic_sheeting.png",
})
minetest.register_craftitem(":homedecor:plastic_base", {
description = S("Unprocessed Plastic base"),
wield_image = "homedecor_plastic_base.png",
inventory_image = "homedecor_plastic_base_inv.png",
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 6',
recipe = { "default:junglegrass",
"default:junglegrass",
"default:junglegrass"
}
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 3',
recipe = { "default:dry_shrub",
"default:dry_shrub",
"default:dry_shrub"
},
})
minetest.register_craft({
type = "shapeless",
output = 'homedecor:plastic_base 4',
recipe = { "default:leaves",
"default:leaves",
"default:leaves",
"default:leaves",
"default:leaves",
"default:leaves"
}
})
minetest.register_craft({
type = "cooking",
output = "basic_materials:plastic_sheet",
recipe = "homedecor:plastic_base",
})
minetest.register_craft({
type = 'fuel',
recipe = 'homedecor:plastic_base',
burntime = 30,
})
minetest.register_craft({
type = 'fuel',
recipe = 'basic_materials:plastic_sheet',
burntime = 30,
})
end -- not homedecor

File diff suppressed because it is too large Load Diff

Näytä tiedosto

@@ -1,61 +0,0 @@
-- Printers of some kind or another
local S = homedecor.gettext
minetest.register_node("computer:printer", {
description = S("Printer-Scanner Combo"),
inventory_image = "computer_printer_inv.png",
tiles = {"computer_printer_t.png","computer_printer_bt.png","computer_printer_l.png",
"computer_printer_r.png","computer_printer_b.png","computer_printer_f.png"},
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
groups = {snappy=3},
sound = default.node_sound_wood_defaults(),
drawtype = "nodebox",
node_box = {
type = "fixed",
fixed = {
{-0.4375, -0.3125, -0.125, 0.4375, -0.0625, 0.375},
{-0.4375, -0.5, -0.125, 0.4375, -0.4375, 0.375},
{-0.4375, -0.5, -0.125, -0.25, -0.0625, 0.375},
{0.25, -0.5, -0.125, 0.4375, -0.0625, 0.375},
{-0.4375, -0.5, -0.0625, 0.4375, -0.0625, 0.375},
{-0.375, -0.4375, 0.25, 0.375, -0.0625, 0.4375},
{-0.25, -0.25, 0.4375, 0.25, 0.0625, 0.5},
{-0.25, -0.481132, -0.3125, 0.25, -0.4375, 0}
},
},
})
-- "bedflinger" style 3D Printer (Prusa i3 or equivalent)
local cbox = {
type = "fixed",
fixed = {-0.25, -0.25, -0.5, 0.3, 0.3, 0.25 }
}
minetest.register_node("computer:3dprinter_bedflinger", {
description = S('3D Printer ("bedflinger")'),
inventory_image = "computer_3dprinter_bedflinger_inv.png",
tiles = {
{ name = "computer_3dprinter_bedflinger.png", color = 0xffffffff },
"computer_3dprinter_filament.png"
},
paramtype = "light",
walkable = true,
groups = {snappy=3, ud_param2_colorable = 1},
sound = default.node_sound_wood_defaults(),
drawtype = "mesh",
mesh = "computer_3dprinter_bedflinger.obj",
paramtype2 = "colorwallmounted",
palette = "unifieddyes_palette_colorwallmounted.png",
selection_box = cbox,
collision_box = cbox,
after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
end,
on_dig = unifieddyes.on_dig,
on_rotate = unifieddyes.fix_after_screwdriver_nsew,
})

Binary file not shown.

Before

Leveys:  |  Korkeus:  |  Koko: 3.5 KiB

Binary file not shown.

Before

Leveys:  |  Korkeus:  |  Koko: 3.8 KiB

Binary file not shown.

Before

Leveys:  |  Korkeus:  |  Koko: 216 B

Näytä tiedosto

@@ -89,19 +89,28 @@ end
-- 3d-ify default mtg wood and steel doors and trap doors -- 3d-ify default mtg wood and steel doors and trap doors
if minetest.get_modpath("doors") then if minetest.get_modpath("doors") then
local function clone_node(name)
local node2 = {}
local node = minetest.registered_nodes[name]
for k,v in pairs(node) do
node2[k]=v
end
return node2
end
local def local def
for _,mat in ipairs({"wood", "steel"}) do for _,mat in ipairs({"wood", "steel"}) do
def = table.copy(minetest.registered_nodes["doors:door_"..mat.."_a"]) def = clone_node("doors:door_"..mat.."_a")
def.mesh = "homedecor_3d_door_"..mat.."_a.obj" def.mesh = "homedecor_3d_door_"..mat.."_a.obj"
minetest.register_node(":doors:door_"..mat.."_a", def) minetest.register_node(":doors:door_"..mat.."_a", def)
def = table.copy(minetest.registered_nodes["doors:door_"..mat.."_b"]) def = clone_node("doors:door_"..mat.."_b")
def.mesh = "homedecor_3d_door_"..mat.."_b.obj" def.mesh = "homedecor_3d_door_"..mat.."_b.obj"
minetest.register_node(":doors:door_"..mat.."_b", def) minetest.register_node(":doors:door_"..mat.."_b", def)
end end
for _,mat in ipairs({"", "_steel"}) do for _,mat in ipairs({"", "_steel"}) do
def = table.copy(minetest.registered_nodes["doors:trapdoor"..mat]) def = clone_node("doors:trapdoor"..mat)
def.drawtype = "mesh" def.drawtype = "mesh"
def.mesh = "homedecor_3d_trapdoor"..mat..".obj" def.mesh = "homedecor_3d_trapdoor"..mat..".obj"
def.tiles = { def.tiles = {
@@ -110,7 +119,7 @@ if minetest.get_modpath("doors") then
} }
minetest.register_node(":doors:trapdoor"..mat, def) minetest.register_node(":doors:trapdoor"..mat, def)
def = table.copy(minetest.registered_nodes["doors:trapdoor"..mat.."_open"]) def = clone_node("doors:trapdoor"..mat.."_open")
def.mesh = "homedecor_3d_trapdoor"..mat.."_open.obj" def.mesh = "homedecor_3d_trapdoor"..mat.."_open.obj"
def.drawtype = "mesh" def.drawtype = "mesh"
def.tiles = { def.tiles = {

Näytä tiedosto

@@ -15,7 +15,6 @@ minetest.register_node(":homedecor:bathroom_tiles_dark", {
groups = {cracky=3, ud_param2_colorable = 1}, groups = {cracky=3, ud_param2_colorable = 1},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
on_construct = unifieddyes.on_construct, on_construct = unifieddyes.on_construct,
on_dig = unifieddyes.on_dig,
}) })
minetest.register_node(":homedecor:bathroom_tiles_medium", { minetest.register_node(":homedecor:bathroom_tiles_medium", {
@@ -32,7 +31,6 @@ minetest.register_node(":homedecor:bathroom_tiles_medium", {
groups = {cracky=3, ud_param2_colorable = 1}, groups = {cracky=3, ud_param2_colorable = 1},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
on_construct = unifieddyes.on_construct, on_construct = unifieddyes.on_construct,
on_dig = unifieddyes.on_dig,
}) })
minetest.register_node(":homedecor:bathroom_tiles_light", { minetest.register_node(":homedecor:bathroom_tiles_light", {
@@ -49,7 +47,6 @@ minetest.register_node(":homedecor:bathroom_tiles_light", {
groups = {cracky=3, ud_param2_colorable = 1}, groups = {cracky=3, ud_param2_colorable = 1},
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
on_construct = unifieddyes.on_construct, on_construct = unifieddyes.on_construct,
on_dig = unifieddyes.on_dig,
}) })
local tr_cbox = { local tr_cbox = {

Näytä tiedosto

@@ -59,7 +59,6 @@ homedecor.register("bed_regular", {
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_dig_node = function(pos, oldnode, oldmetadata, digger)
homedecor.unextend_bed(pos) homedecor.unextend_bed(pos)
end, end,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local itemname = itemstack:get_name() local itemname = itemstack:get_name()
if itemname == "homedecor:bed_regular" then if itemname == "homedecor:bed_regular" then
@@ -93,7 +92,6 @@ homedecor.register("bed_extended", {
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_dig_node = function(pos, oldnode, oldmetadata, digger)
homedecor.unextend_bed(pos) homedecor.unextend_bed(pos)
end, end,
on_dig = unifieddyes.on_dig,
-- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) -- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
-- homedecor.beds_on_rightclick(pos, node, clicker) -- homedecor.beds_on_rightclick(pos, node, clicker)
-- return itemstack -- return itemstack
@@ -130,7 +128,6 @@ homedecor.register("bed_kingsize", {
inv:add_item("main", "homedecor:bed_regular 2") inv:add_item("main", "homedecor:bed_regular 2")
end end
end, end,
on_dig = unifieddyes.on_dig,
-- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) -- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
-- homedecor.beds_on_rightclick(pos, node, clicker) -- homedecor.beds_on_rightclick(pos, node, clicker)
-- return itemstack -- return itemstack

Näytä tiedosto

@@ -25,7 +25,7 @@ minetest.register_node(":homedecor:cobweb_corner", {
end end
}) })
minetest.register_node(":homedecor:cobweb_centered", { minetest.register_node(":Lhomedecor:cobweb_centered", {
description = S("Cobweb"), description = S("Cobweb"),
drawtype = "nodebox", drawtype = "nodebox",
tiles = { "homedecor_cobweb.png" }, tiles = { "homedecor_cobweb.png" },

Näytä tiedosto

@@ -1,3 +1,3 @@
default default
creative creative
intllib?

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 524 B

After

Leveys:  |  Korkeus:  |  Koko: 524 B

Näytä tiedosto

@@ -3,6 +3,17 @@
local S = homedecor.gettext local S = homedecor.gettext
local mesecons_mp = minetest.get_modpath("mesecons") local mesecons_mp = minetest.get_modpath("mesecons")
-- clone node
function hd_doors_clone_node(name)
local node2 = {}
local node = minetest.registered_nodes[name]
for k,v in pairs(node) do
node2[k]=v
end
return node2
end
-- new doors using minetest_game doors API -- new doors using minetest_game doors API
local door_list = { local door_list = {
@@ -29,41 +40,41 @@ local door_list = {
custom_model = "homedecor_door_fancy" custom_model = "homedecor_door_fancy"
}, },
{ name = "french_oak", { name = "wood_glass_oak",
description = "French door, Oak-colored", description = "Glass and Wood, Oak-colored",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = { sounds = {
main = default.node_sound_glass_defaults(), main = default.node_sound_glass_defaults(),
}, },
backface = true, backface = true,
alpha = true, alpha = true,
custom_model = "homedecor_door_french" custom_model = "homedecor_door_wood_glass"
}, },
{ name = "french_mahogany", { name = "wood_glass_mahogany",
description = "French door, Mahogany-colored", description = "Glass and Wood, Mahogany-colored",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = { sounds = {
main = default.node_sound_glass_defaults(), main = default.node_sound_glass_defaults(),
}, },
backface = true, backface = true,
alpha = true, alpha = true,
custom_model = "homedecor_door_french" custom_model = "homedecor_door_wood_glass"
}, },
{ name = "french_white", { name = "wood_glass_white",
description = "French door, White", description = "Glass and Wood, White",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = { sounds = {
main = default.node_sound_glass_defaults(), main = default.node_sound_glass_defaults(),
}, },
backface = true, backface = true,
alpha = true, alpha = true,
custom_model = "homedecor_door_french" custom_model = "homedecor_door_wood_glass"
}, },
{ name = "basic_panel", { name = "bedroom",
description = "Basic white panel Door", description = "White Bedroom Door",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = { sounds = {
main = default.node_sound_wood_defaults(), main = default.node_sound_wood_defaults(),
@@ -84,8 +95,8 @@ local door_list = {
custom_model = "homedecor_door_wrought_iron" custom_model = "homedecor_door_wrought_iron"
}, },
{ name = "carolina", { name = "woodglass2",
description = "Wooden Carolina door", description = "Wooden door with glass insert, type 2",
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
sounds = { sounds = {
main = default.node_sound_wood_defaults(), main = default.node_sound_wood_defaults(),
@@ -155,7 +166,7 @@ end
local hd_3d = minetest.get_modpath("homedecor_3d_extras") local hd_3d = minetest.get_modpath("homedecor_3d_extras")
for _, door in ipairs(door_list) do for _, door in ipairs(door_list) do
doors.register("homedecor_"..door.name, { doors.register(door.name, {
tiles = {{ name = "homedecor_door_"..door.name..".png", backface_culling = door.backface }}, tiles = {{ name = "homedecor_door_"..door.name..".png", backface_culling = door.backface }},
description = door.description, description = door.description,
inventory_image = "homedecor_door_"..door.name.."_inv.png", inventory_image = "homedecor_door_"..door.name.."_inv.png",
@@ -166,35 +177,33 @@ for _, door in ipairs(door_list) do
mesecons = mesecons mesecons = mesecons
}) })
local nn_a = "doors:homedecor_"..door.name.."_a" local nn_a = "doors:"..door.name.."_a"
local nn_b = "doors:homedecor_"..door.name.."_b" local nn_b = "doors:"..door.name.."_b"
if door.alpha then if door.alpha then
local def = table.copy(minetest.registered_nodes[nn_a]) local def = hd_doors_clone_node(nn_a)
def.use_texture_alpha = true def.use_texture_alpha = true
def.mesh = "door_a.obj" -- leaving this out will break the _a model def.mesh = "door_a.obj" -- leaving this out will break the _a model
minetest.register_node(":"..nn_a, def) -- assignment when the override takes place minetest.register_node(":"..nn_a, def) -- assignment when the override takes place
def = table.copy(minetest.registered_nodes[nn_b]) def = hd_doors_clone_node(nn_b)
def.use_texture_alpha = true def.use_texture_alpha = true
minetest.register_node(":"..nn_b, def) minetest.register_node(":"..nn_b, def)
end end
if door.custom_model and hd_3d then if door.custom_model and hd_3d then
def = table.copy(minetest.registered_nodes[nn_a]) def = hd_doors_clone_node(nn_a)
def.mesh = door.custom_model.."_a.obj" def.mesh = door.custom_model.."_a.obj"
minetest.register_node(":"..nn_a, def) minetest.register_node(":"..nn_a, def)
def = table.copy(minetest.registered_nodes[nn_b]) def = hd_doors_clone_node(nn_b)
def.mesh = door.custom_model.."_b.obj" def.mesh = door.custom_model.."_b.obj"
minetest.register_node(":"..nn_b, def) minetest.register_node(":"..nn_b, def)
end end
old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_left" old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_left"
old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_right" old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_right"
minetest.register_alias("doors:"..door.name.."_a", "doors:homedecor_"..door.name.."_a")
minetest.register_alias("doors:"..door.name.."_b", "doors:homedecor_"..door.name.."_b")
end end
-- Gates -- Gates
@@ -457,8 +466,8 @@ minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "homedecor:gate_half_door_closed 4", output = "homedecor:gate_half_door_closed 4",
recipe = { recipe = {
"doors:homedecor_wood_plain_a", "homedecor:door_wood_plain_a",
"doors:homedecor_wood_plain_a" "homedecor:door_wood_plain_a"
}, },
}) })
@@ -466,8 +475,8 @@ minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "homedecor:gate_half_door_white_closed 4", output = "homedecor:gate_half_door_white_closed 4",
recipe = { recipe = {
"doors:homedecor_bedroom_a", "homedecor:door_bedroom_a",
"doors:homedecor_bedroom_a" "homedecor:door_bedroom_a"
}, },
}) })
@@ -542,7 +551,7 @@ minetest.register_craft( {
-- plain wood, non-windowed -- plain wood, non-windowed
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_wood_plain 2", output = "homedecor:door_wood_plain_a 2",
recipe = { recipe = {
{ "group:wood", "group:wood", "" }, { "group:wood", "group:wood", "" },
{ "group:wood", "group:wood", "default:steel_ingot" }, { "group:wood", "group:wood", "default:steel_ingot" },
@@ -553,7 +562,7 @@ minetest.register_craft( {
-- fancy exterior -- fancy exterior
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_exterior_fancy 2", output = "homedecor:door_exterior_fancy_a 2",
recipe = { recipe = {
{ "group:wood", "default:glass" }, { "group:wood", "default:glass" },
{ "group:wood", "group:wood" }, { "group:wood", "group:wood" },
@@ -561,10 +570,12 @@ minetest.register_craft( {
}, },
}) })
-- French style wood/glass -- wood and glass (grid style)
-- bare
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_french_oak 2", output = "homedecor:door_wood_glass_oak_a 2",
recipe = { recipe = {
{ "default:glass", "group:wood" }, { "default:glass", "group:wood" },
{ "group:wood", "default:glass" }, { "group:wood", "default:glass" },
@@ -573,7 +584,7 @@ minetest.register_craft( {
}) })
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_french_oak 2", output = "homedecor:door_wood_glass_oak_a 2",
recipe = { recipe = {
{ "group:wood", "default:glass" }, { "group:wood", "default:glass" },
{ "default:glass", "group:wood" }, { "default:glass", "group:wood" },
@@ -581,23 +592,27 @@ minetest.register_craft( {
}, },
}) })
-- mahogany
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "doors:homedecor_french_mahogany 2", output = "homedecor:door_wood_glass_mahogany_a 2",
recipe = { recipe = {
"dye:brown", "dye:brown",
"doors:homedecor_french_oak", "homedecor:door_wood_glass_oak_a",
"doors:homedecor_french_oak" "homedecor:door_wood_glass_oak_a"
}, },
}) })
-- white
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "doors:homedecor_french_white 2", output = "homedecor:door_wood_glass_white_a 2",
recipe = { recipe = {
"dye:white", "dye:white",
"doors:homedecor_french_oak", "homedecor:door_wood_glass_oak_a",
"doors:homedecor_french_oak" "homedecor:door_wood_glass_oak_a"
}, },
}) })
@@ -606,7 +621,7 @@ minetest.register_craft( {
-- oak -- oak
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_closet_oak 2", output = "homedecor:door_closet_oak_a 2",
recipe = { recipe = {
{ "", "group:stick", "group:stick" }, { "", "group:stick", "group:stick" },
{ "default:steel_ingot", "group:stick", "group:stick" }, { "default:steel_ingot", "group:stick", "group:stick" },
@@ -618,18 +633,18 @@ minetest.register_craft( {
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "doors:homedecor_closet_mahogany 2", output = "homedecor:door_closet_mahogany_a 2",
recipe = { recipe = {
"doors:homedecor_closet_oak_a", "homedecor:door_closet_oak_a",
"doors:homedecor_closet_oak_a", "homedecor:door_closet_oak_a",
"dye:brown" "dye:brown"
}, },
}) })
-- wrought iron fence-like door -- wrought fence-like door
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_wrought_iron 2", output = "homedecor:door_wrought_iron_a 2",
recipe = { recipe = {
{ "homedecor:pole_wrought_iron", "default:iron_lump" }, { "homedecor:pole_wrought_iron", "default:iron_lump" },
{ "homedecor:pole_wrought_iron", "default:iron_lump" }, { "homedecor:pole_wrought_iron", "default:iron_lump" },
@@ -637,21 +652,21 @@ minetest.register_craft( {
}, },
}) })
-- bedroom/panel door -- bedroom door
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_basic_panel", output = "homedecor:door_bedroom_a",
recipe = { recipe = {
{ "dye:white", "dye:white", "" }, { "dye:white", "dye:white", "" },
{ "doors:homedecor_wood_plain_a", "basic_materials:brass_ingot", "" }, { "homedecor:door_wood_plain_a", "basic_materials:brass_ingot", "" },
{ "", "", "" }, { "", "", "" },
}, },
}) })
-- basic wood/glass single-lite door -- woodglass door
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_woodglass", output = "homedecor:door_woodglass_a",
recipe = { recipe = {
{ "group:wood", "default:glass", "" }, { "group:wood", "default:glass", "" },
{ "group:wood", "default:glass", "basic_materials:brass_ingot" }, { "group:wood", "default:glass", "basic_materials:brass_ingot" },
@@ -659,10 +674,10 @@ minetest.register_craft( {
}, },
}) })
-- "Carolina" door -- woodglass door type 2
minetest.register_craft( { minetest.register_craft( {
output = "doors:homedecor_carolina", output = "homedecor:door_woodglass2_a",
recipe = { recipe = {
{ "default:glass", "default:glass", "" }, { "default:glass", "default:glass", "" },
{ "group:wood", "group:wood", "default:iron_lump" }, { "group:wood", "group:wood", "default:iron_lump" },
@@ -681,64 +696,19 @@ minetest.register_craft({
-- aliases -- aliases
minetest.register_alias("homedecor:jpn_door_top", "air") minetest.register_alias("homedecor:jpn_door_top", "air")
minetest.register_alias("homedecor:jpn_door_top_open", "air") minetest.register_alias("homedecor:jpn_door_bottom", "homedecor:door_japanese_closed")
minetest.register_alias("homedecor:jpn_door_bottom", "homedecor:door_japanese_closed") minetest.register_alias("homedecor:jpn_door_top_open", "air")
minetest.register_alias("homedecor:jpn_door_bottom_open", "homedecor:door_japanese_open") minetest.register_alias("homedecor:jpn_door_bottom_open", "homedecor:door_japanese_open")
minetest.register_alias("homedecor:door_glass_right", "doors:door_glass_b") minetest.register_alias("homedecor:door_glass_right", "doors:door_glass_b")
minetest.register_alias("homedecor:door_glass_left", "doors:door_glass_a") minetest.register_alias("homedecor:door_glass_left", "doors:door_glass_a")
minetest.register_alias("doors:wood_glass_oak_a", "doors:homedecor_french_oak_a")
minetest.register_alias("doors:wood_glass_oak_b", "doors:homedecor_french_oak_b")
minetest.register_alias("doors:wood_glass_white_a", "doors:homedecor_french_white_a")
minetest.register_alias("doors:wood_glass_white_b", "doors:homedecor_french_white_b")
minetest.register_alias("doors:wood_glass_mahogany_a", "doors:homedecor_french_mahogany_a")
minetest.register_alias("doors:wood_glass_mahogany_b", "doors:homedecor_french_mahogany_b")
minetest.register_alias("doors:homedecor_wood_glass_oak_a", "doors:homedecor_french_oak_a")
minetest.register_alias("doors:homedecor_wood_glass_oak_b", "doors:homedecor_french_oak_b")
minetest.register_alias("doors:homedecor_wood_glass_white_a", "doors:homedecor_french_white_a")
minetest.register_alias("doors:homedecor_wood_glass_white_b", "doors:homedecor_french_white_b")
minetest.register_alias("doors:homedecor_wood_glass_mahogany_a", "doors:homedecor_french_mahogany_a")
minetest.register_alias("doors:homedecor_wood_glass_mahogany_b", "doors:homedecor_french_mahogany_b")
minetest.register_alias("doors:homedecor_woodglass2_a", "doors:homedecor_carolina_a")
minetest.register_alias("doors:homedecor_woodglass2_b", "doors:homedecor_carolina_b")
minetest.register_alias("doors:woodglass2_a", "doors:homedecor_carolina_a")
minetest.register_alias("doors:woodglass2_b", "doors:homedecor_carolina_b")
minetest.register_alias("doors:homedecor_bedroom_a", "doors:homedecor_basic_panel_a")
minetest.register_alias("doors:homedecor_bedroom_b", "doors:homedecor_basic_panel_b")
minetest.register_alias("doors:bedroom_a", "doors:homedecor_basic_panel_a")
minetest.register_alias("doors:bedroom_b", "doors:homedecor_basic_panel_b")
-- flip old homedecor doors around, since they use minetest_game doors API now -- flip old homedecor doors around, since they use minetest_game doors API now
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_oak_left"
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_oak_right"
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_white_left"
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_white_right"
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_mahogany_left"
old_doors[#old_doors + 1] = "homedecor:door_wood_glass_mahogany_right"
old_doors[#old_doors + 1] = "homedecor:door_woodglass2_left"
old_doors[#old_doors + 1] = "homedecor:door_woodglass2_right"
old_doors[#old_doors + 1] = "homedecor:door_bedroom_left"
old_doors[#old_doors + 1] = "homedecor:door_bedroom_right"
minetest.register_lbm({ minetest.register_lbm({
name = ":homedecor:convert_doors_3", name = ":homedecor:convert_doors",
label = "Convert Homedecor doors to mtg doors API", label = "Convert Homedecor doors to mtg doors API",
nodenames = old_doors, nodenames = old_doors,
run_at_every_load = false, run_at_every_load = false,
@@ -747,12 +717,10 @@ minetest.register_lbm({
local newparam2 = (node.param2 + 2) % 4 local newparam2 = (node.param2 + 2) % 4
local e = string.find(node.name, "_", -7) local e = string.find(node.name, "_", -7)
local dir = string.sub(node.name, e+1) local dir = string.sub(node.name, e+1)
local newname = "doors:homedecor_"..string.sub(node.name, 16, e-1) local newname = "doors:"..string.sub(node.name, 16, e-1)
if dir == "right" then if dir == "right" then
print("Want to replace "..node.name.." with "..newname.."_a")
minetest.set_node(pos, {name = newname.."_a", param2 = newparam2 }) minetest.set_node(pos, {name = newname.."_a", param2 = newparam2 })
else else
print("Want to replace "..node.name.." with "..newname.."_b")
minetest.set_node(pos, {name = newname.."_b", param2 = newparam2 }) minetest.set_node(pos, {name = newname.."_b", param2 = newparam2 })
end end
minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, {name = "doors:hidden"}) minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, {name = "doors:hidden"})

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 2.4 KiB

After

Leveys:  |  Korkeus:  |  Koko: 2.4 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 1.3 KiB

After

Leveys:  |  Korkeus:  |  Koko: 1.3 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 7.8 KiB

After

Leveys:  |  Korkeus:  |  Koko: 7.8 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 2.5 KiB

After

Leveys:  |  Korkeus:  |  Koko: 2.5 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 2.3 KiB

After

Leveys:  |  Korkeus:  |  Koko: 2.3 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 1.2 KiB

After

Leveys:  |  Korkeus:  |  Koko: 1.2 KiB

Näytä tiedosto

@@ -2,10 +2,9 @@
local S = homedecor.gettext local S = homedecor.gettext
function homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing) function homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing)
if not clicker then return false end if minetest.is_protected(pos, clicker:get_player_name()) then
local playername = clicker:get_player_name() minetest.record_protection_violation(pos,
if minetest.is_protected(pos, playername) then sender:get_player_name())
minetest.record_protection_violation(pos, playername)
return false return false
end end
local sep = string.find(node.name, "_o", -5) local sep = string.find(node.name, "_o", -5)
@@ -16,6 +15,8 @@ function homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing)
end end
local on_rc local on_rc
local switch_receptor
if minetest.get_modpath("mesecons") then if minetest.get_modpath("mesecons") then
on_rc = function(pos, node, clicker, itemstack, pointed_thing) on_rc = function(pos, node, clicker, itemstack, pointed_thing)
local t = homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing) local t = homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing)
@@ -26,6 +27,12 @@ if minetest.get_modpath("mesecons") then
mesecon.receptor_on(pos, mesecon.rules.buttonlike_get(node)) mesecon.receptor_on(pos, mesecon.rules.buttonlike_get(node))
end end
end end
switch_receptor = {
receptor = {
state = mesecon.state[onoff],
rules = mesecon.rules.buttonlike_get
}
}
end end
homedecor.register("power_outlet", { homedecor.register("power_outlet", {
@@ -57,16 +64,6 @@ homedecor.register("power_outlet", {
for _, onoff in ipairs ({"on", "off"}) do for _, onoff in ipairs ({"on", "off"}) do
local switch_receptor
if minetest.get_modpath("mesecons") then
switch_receptor = {
receptor = {
state = mesecon.state[onoff],
rules = mesecon.rules.buttonlike_get
}
}
end
local model = { local model = {
{ -0.125, -0.1875, 0.4375, 0.125, 0.125, 0.5 }, { -0.125, -0.1875, 0.4375, 0.125, 0.125, 0.5 },
{ -0.03125, 0, 0.40625, 0.03125, 0.0625, 0.5 }, { -0.03125, 0, 0.40625, 0.03125, 0.0625, 0.5 },

Näytä tiedosto

@@ -2,4 +2,4 @@ homedecor_common
default default
basic_materials basic_materials
dye dye
basic_signs? signs_lib?

Näytä tiedosto

@@ -1,5 +1,19 @@
-- This file adds fences of various types -- This file adds fences of various types
local signs_modpath = minetest.get_modpath("signs_lib")
local sign_post_model = {
type = "fixed",
fixed = {
{-0.4375, -0.25, -0.1875, 0.4375, 0.375, -0.125},
{-0.125, -0.5, -0.125, 0.125, 0.5, 0.125},
}
}
if signs_modpath then
sign_post_model = signs_lib.sign_post_model.nodebox
end
local S = homedecor.gettext local S = homedecor.gettext
local materials = { local materials = {
@@ -9,17 +23,43 @@ local materials = {
for _, m in ipairs(materials) do for _, m in ipairs(materials) do
local desc, name = unpack(m) local desc, name = unpack(m)
homedecor.register("fence_"..name, { homedecor.register("fence_"..name, {
description = S("Fence/railing (@1)", desc), description = S("Fence/railing (@1)", desc),
drawtype = "fencelike", drawtype = "fencelike",
tiles = {"homedecor_generic_metal_"..name..".png"}, tiles = {"homedecor_generic_metal_"..name..".png"},
inventory_image = "homedecor_fence_"..name..".png", inventory_image = "homedecor_fence_"..name..".png",
selection_box = homedecor.nodebox.bar_y(1/7), selection_box = homedecor.nodebox.bar_y(1/7),
groups = {snappy=3}, groups = {snappy=3},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
}) })
-- brass/wrought iron with signs:
homedecor.register("fence_"..name.."_with_sign", {
description = S("Fence/railing with sign (@1)", desc),
tiles = {
"homedecor_sign_"..name.."_post_top.png",
"homedecor_sign_"..name.."_post_bottom.png",
"homedecor_sign_"..name.."_post_side.png",
"homedecor_sign_"..name.."_post_side.png",
"homedecor_sign_"..name.."_post_back.png",
"homedecor_sign_"..name.."_post_front.png",
},
wield_image = "homedecor_sign_"..name.."_post.png",
node_box = sign_post_model,
groups = {snappy=3,not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(),
sunlight_propagates = true,
drop = {
max_items = 2,
items = {
{ items = { "default:sign_wall" }},
{ items = { "homedecor:fence_"..name }},
},
},
})
end end
@@ -263,17 +303,9 @@ homedecor.register("fence_wrought_iron_2_corner", {
}, },
}) })
-- insert the old wood signs-on-metal-fences into signs_lib's conversion LBM if signs_modpath then
if minetest.get_modpath("basic_signs") then signs_lib.register_fence_with_sign("homedecor:fence_brass", "homedecor:fence_brass_with_sign")
table.insert(signs_lib.old_fenceposts_with_signs, "homedecor:fence_brass_with_sign") signs_lib.register_fence_with_sign("homedecor:fence_wrought_iron", "homedecor:fence_wrought_iron_with_sign")
signs_lib.old_fenceposts["homedecor:fence_brass_with_sign"] = "homedecor:fence_brass"
signs_lib.old_fenceposts_replacement_signs["homedecor:fence_brass_with_sign"] = "default:sign_wall_wood_onpole"
table.insert(signs_lib.old_fenceposts_with_signs, "homedecor:fence_wrought_iron_with_sign")
signs_lib.old_fenceposts["homedecor:fence_wrought_iron_with_sign"] = "homedecor:fence_wrought_iron"
signs_lib.old_fenceposts_replacement_signs["homedecor:fence_wrought_iron_with_sign"] = "default:sign_wall_wood_onpole"
signs_lib.allowed_poles["homedecor:pole_brass"] = true
end end
-- crafting -- crafting

Näytä tiedosto

@@ -58,10 +58,61 @@ homedecor.register("chains", {
sounds = default.node_sound_stone_defaults(), sounds = default.node_sound_stone_defaults(),
}) })
homedecor.register("torch_wall", {
description = S("Wall Torch"),
mesh = "forniture_torch.obj",
tiles = {
{
name="forniture_torch_flame.png",
animation={
type="vertical_frames",
aspect_w=40,
aspect_h=40,
length=1.0,
},
},
{ name = "homedecor_generic_metal.png", color = homedecor.color_black },
{ name = "homedecor_generic_metal.png", color = homedecor.color_med_grey },
"forniture_coal.png",
},
inventory_image="forniture_torch_inv.png",
walkable = false,
light_source = 14,
selection_box = {
type = "fixed",
fixed = { -0.15, -0.45, 0.15, 0.15,0.35, 0.5 },
},
groups = {cracky=3},
})
local wl_cbox = {
type = "fixed",
fixed = { -0.2, -0.5, 0, 0.2, 0.5, 0.5 },
}
homedecor.register("wall_lamp", {
description = S("Wall Lamp"),
mesh = "homedecor_wall_lamp.obj",
tiles = {
{ name = "homedecor_generic_metal.png", color = homedecor.color_med_grey },
homedecor.lux_wood,
"homedecor_light.png",
"homedecor_generic_metal_wrought_iron.png"
},
use_texture_alpha = true,
inventory_image = "homedecor_wall_lamp_inv.png",
groups = {snappy=3},
light_source = 11,
selection_box = wl_cbox,
walkable = false
})
minetest.register_alias("3dforniture:bars", "homedecor:bars") minetest.register_alias("3dforniture:bars", "homedecor:bars")
minetest.register_alias("3dforniture:L_binding_bars", "homedecor:L_binding_bars") minetest.register_alias("3dforniture:L_binding_bars", "homedecor:L_binding_bars")
minetest.register_alias("3dforniture:chains", "homedecor:chains") minetest.register_alias("3dforniture:chains", "homedecor:chains")
minetest.register_alias("3dforniture:torch_wall", "homedecor:torch_wall")
minetest.register_alias('bars', 'homedecor:bars') minetest.register_alias('bars', 'homedecor:bars')
minetest.register_alias('binding_bars', 'homedecor:L_binding_bars') minetest.register_alias('binding_bars', 'homedecor:L_binding_bars')
minetest.register_alias('chains', 'homedecor:chains') minetest.register_alias('chains', 'homedecor:chains')
minetest.register_alias('torch_wall', 'homedecor:torch_wall')

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 6.2 KiB

After

Leveys:  |  Korkeus:  |  Koko: 6.2 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 4.0 KiB

After

Leveys:  |  Korkeus:  |  Koko: 4.0 KiB

Näytä tiedosto

Before

Leveys:  |  Korkeus:  |  Koko: 1.5 KiB

After

Leveys:  |  Korkeus:  |  Koko: 1.5 KiB

Näytä tiedosto

@@ -164,7 +164,18 @@ homedecor.register("beer_mug", {
on_use = function(itemstack, user, pointed_thing) on_use = function(itemstack, user, pointed_thing)
local inv = user:get_inventory() local inv = user:get_inventory()
if not creative.is_enabled_for(user:get_player_name()) then if not creative.is_enabled_for(user:get_player_name()) then
minetest.do_item_eat(2, "vessels:drinking_glass 1", itemstack, user, pointed_thing) if inv:room_for_item("main", "vessels:drinking_glass 1") then
inv:add_item("main", "vessels:drinking_glass 1")
else
local pos = user:get_pos()
local dir = user:get_look_dir()
local fdir = minetest.dir_to_facedir(dir)
local pos_fwd = { x = pos.x + homedecor.fdir_to_fwd[fdir+1][1],
y = pos.y + 1,
z = pos.z + homedecor.fdir_to_fwd[fdir+1][2] }
minetest.add_item(pos_fwd, "vessels:drinking_glass 1")
end
minetest.do_item_eat(2, nil, itemstack, user, pointed_thing)
return itemstack return itemstack
end end
end end

Näytä tiedosto

@@ -7,4 +7,3 @@ moreblocks?
building_blocks? building_blocks?
darkage? darkage?
mesecons? mesecons?
digilines?

File diff suppressed because it is too large Load Diff

Näytä tiedosto

@@ -478,7 +478,6 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do
def.airbrush_replacement_node = "homedecor:banister_wood_"..side.."_grey" def.airbrush_replacement_node = "homedecor:banister_wood_"..side.."_grey"
def.groups.ud_param2_colorable = 1 def.groups.ud_param2_colorable = 1
def.paramtype2 = "colorfacedir" def.paramtype2 = "colorfacedir"
def.on_dig = unifieddyes.on_dig
end end
homedecor.register(nodename, def) homedecor.register(nodename, def)

Näytä tiedosto

@@ -26,7 +26,6 @@ minetest.register_node(":lrfurn:armchair", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_rotate = unifieddyes.fix_after_screwdriver_nsew,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
if not clicker:is_player() then if not clicker:is_player() then
@@ -52,11 +51,10 @@ homedecor.register("armchair", {
palette = "unifieddyes_palette_colorwallmounted.png", palette = "unifieddyes_palette_colorwallmounted.png",
groups = {snappy=3, ud_param2_colorable = 1}, groups = {snappy=3, ud_param2_colorable = 1},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
node_box = armchair_cbox, node_box = ac_cbox,
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_rotate = unifieddyes.fix_after_screwdriver_nsew,
}) })

Näytä tiedosto

@@ -41,7 +41,6 @@ minetest.register_node(":lrfurn:longsofa", {
end end
return itemstack return itemstack
end, end,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
if not clicker:is_player() then if not clicker:is_player() then
return itemstack return itemstack

Näytä tiedosto

@@ -153,7 +153,6 @@ homedecor.register("kitchen_chair_padded", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_rotate = unifieddyes.fix_after_screwdriver_nsew,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
pos.y = pos.y+0 -- where do I put my ass ? pos.y = pos.y+0 -- where do I put my ass ?

Näytä tiedosto

@@ -41,7 +41,6 @@ minetest.register_node(":lrfurn:sofa", {
end end
return itemstack return itemstack
end, end,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
if not clicker:is_player() then if not clicker:is_player() then
return itemstack return itemstack

Näytä tiedosto

@@ -1,7 +1,5 @@
homedecor_common homedecor_common
default default
player_api
homedecor_kitchen? homedecor_kitchen?
homedecor_misc? homedecor_misc?
3d_armor?
skinsdb? skinsdb?

Näytä tiedosto

@@ -106,7 +106,7 @@ minetest.register_node(":homedecor:curtain_closed", {
drawtype = 'signlike', drawtype = 'signlike',
use_texture_alpha = true, use_texture_alpha = true,
walkable = false, walkable = false,
groups = { snappy = 3, ud_param2_colorable = 1, not_in_creative_inventory=1 }, groups = { snappy = 3, ud_param2_colorable = 1 },
sounds = default.node_sound_leaves_defaults(), sounds = default.node_sound_leaves_defaults(),
paramtype = "light", paramtype = "light",
paramtype2 = "colorwallmounted", paramtype2 = "colorwallmounted",
@@ -115,9 +115,13 @@ minetest.register_node(":homedecor:curtain_closed", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
minetest.set_node(pos, { name = "homedecor:curtain_open", param2 = node.param2 }) local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z})
if string.find(topnode.name, "homedecor:curtainrod") then
-- Open the curtains
local fdir = node.param2
minetest.set_node(pos, { name = "homedecor:curtain_open", param2 = fdir })
end
return itemstack return itemstack
end end
}) })
@@ -138,9 +142,13 @@ minetest.register_node(":homedecor:curtain_open", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
minetest.set_node(pos, { name = "homedecor:curtain_closed", param2 = node.param2 }) local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z})
if string.find(topnode.name, "homedecor:curtainrod") then
-- Close the curtains
local fdir = node.param2
minetest.set_node(pos, { name = "homedecor:curtain_closed", param2 = fdir })
end
return itemstack return itemstack
end end
}) })
@@ -245,7 +253,6 @@ homedecor.register("shutter", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
}) })
homedecor.register("shutter_colored", { homedecor.register("shutter_colored", {
@@ -263,7 +270,6 @@ homedecor.register("shutter_colored", {
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
end, end,
on_dig = unifieddyes.on_dig,
}) })
minetest.register_alias("homedecor:shutter_purple", "homedecor:shutter_violet") minetest.register_alias("homedecor:shutter_purple", "homedecor:shutter_violet")
@@ -384,7 +390,7 @@ minetest.register_craft({
minetest.register_craft( { minetest.register_craft( {
output = "homedecor:curtain_open 4", output = "homedecor:curtain_closed 4",
recipe = { recipe = {
{ "wool:white", "", ""}, { "wool:white", "", ""},
{ "wool:white", "", ""}, { "wool:white", "", ""},
@@ -393,7 +399,7 @@ minetest.register_craft( {
}) })
minetest.register_craft( { minetest.register_craft( {
output = "homedecor:curtain_open 4", output = "homedecor:curtain_closed 4",
recipe = { recipe = {
{ "cottages:wool", "", ""}, { "cottages:wool", "", ""},
{ "cottages:wool", "", ""}, { "cottages:wool", "", ""},

Näytä tiedosto

@@ -38,7 +38,6 @@ minetest.register_node("lavalamp:lavalamp", {
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, ud_param2_colorable = 1}, groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, ud_param2_colorable = 1},
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
on_construct = unifieddyes.on_construct, on_construct = unifieddyes.on_construct,
on_dig = unifieddyes.on_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
node.name = "lavalamp:lavalamp_off" node.name = "lavalamp:lavalamp_off"
minetest.swap_node(pos, node) minetest.swap_node(pos, node)