1
0
mirror of https://github.com/mt-mods/homedecor_modpack.git synced 2025-06-29 13:20:44 +02:00

Compare commits

...

23 Commits

Author SHA1 Message Date
75eb750e0a remove errant core file 2017-06-21 04:50:41 -04:00
e08e262377 Disable sleeping in beds (again) 2017-06-19 10:45:10 -04:00
b22a11f617 use texture overlays on lava lamps
(water is now blue like it used to be)
2017-06-17 19:32:14 -04:00
9427967784 Make the white glowlight overlays more subtle
(they're too bright against the darker colors e.g. green)
2017-06-17 19:09:37 -04:00
8658cc27fc use static hardware coloring for books,
use soft overlays for cover trim,
2017-06-16 18:07:41 -04:00
752cb473a0 fix book models
(get rid of redundant overlay polys)
2017-06-16 17:43:23 -04:00
9e0d558d54 use soft overlays for bathroom tiles instead of the two-layer mesh node 2017-06-16 16:14:02 -04:00
3ea86f5c3f use soft overlays to re-create the subtle white glow that glowlights used to have
before param2 coloring went in.
2017-06-16 16:01:22 -04:00
d05d03d5d9 Re-enable sleeping in beds 2017-06-16 14:39:20 -04:00
55e2b03a50 missed an alias for open books 2017-06-16 13:35:37 -04:00
78fcbd04db revert a599b041d4 (param2 colorization of books)
The intention of this is to fix books in peoples' inventories that are
now inaccessible.  They can be placed, viewed, edited like normal now.

Side effect: all books that were already in-world and that have already
been converted to the param2 colorization before will be grey now, and
most will end up turned some wierd direction, but that can be fixed with
the screwdriver.

If you need to re-color one of the now-grey books, you'll need to craft
one of the desired color, place it, and copy and paste your text from
the grey book.

Newly-placed colored books will behave normally.
2017-06-15 15:23:21 -04:00
b50b7423b8 use mesh node for cubical plasma lamp 2017-06-15 13:42:44 -04:00
c741642057 fix wrongly-colored plasma ball base 2017-06-15 13:11:01 -04:00
5c52111bec Merge pull request #366 from tjnenrtn/verify_inbox_owner
Verify inbox owner when taking items
2017-05-25 07:11:29 -04:00
503c05a09e verify inbox owner when taking items 2017-05-24 23:57:42 -04:00
ab94f9dc6a Merge pull request #364 from AntumDeluge/settings
Replace deprecated methods
2017-05-18 05:34:45 -04:00
4d6f0c07c2 Replace deprecated methods:
- 'setting_get' with 'settings:get'
- 'setting_getbool' with 'settings:get_bool'
2017-05-13 00:15:26 -07:00
5fb16c4e33 don't crash if placing bed on top of bed when not in auto-color mode. 2017-03-31 12:59:26 -04:00
b37e6ade7a use unified dyes auto-colorization feature
also fixed some bugs in bed handling
also got rid of the old, obsolete "placeholder" node, aliased it to air.
2017-03-18 05:51:46 -04:00
c79f14bd89 use unified dyes on_construct handler
to set 256-color palette meta key on place
for those nodes that use it
2017-03-14 02:13:17 -04:00
e2a04b52b9 don't reference lrfurn chair colors in homedecor chair LBM
use a local copy instead
2017-03-11 21:21:17 -05:00
5dde3896f3 Merge pull request #360 from Thomas--S/patch-1
Make Wrought Iron Fence 2 recipe more generous
2017-03-11 14:59:49 -05:00
763bcb2e95 Make Wrought Iron Fence 2 recipe more generous
And remove double craft definition
2017-03-11 19:39:16 +01:00
36 changed files with 1189 additions and 1020 deletions

View File

@ -4,51 +4,57 @@ local S = homedecor_i18n.gettext
minetest.register_node("homedecor:bathroom_tiles_dark", { minetest.register_node("homedecor:bathroom_tiles_dark", {
description = S("Bathroom/kitchen tiles (dark)"), description = S("Bathroom/kitchen tiles (dark)"),
tiles = { tiles = {
{ name = "homedecor_bathroom_tiles_bg.png", color = 0xff606060 }, "homedecor_bathroom_tiles_bg.png"
"homedecor_bathroom_tiles_fg.png" },
overlay_tiles = {
{ name = "homedecor_bathroom_tiles_fg.png", color = 0xff606060 },
}, },
drawtype = "mesh",
mesh = "homedecor_block_with_overlay.obj",
paramtype = "light", paramtype = "light",
paramtype2 = "color", paramtype2 = "color",
palette = "unifieddyes_palette_extended.png", palette = "unifieddyes_palette_extended.png",
place_param2 = 240, place_param2 = 240,
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,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
minetest.register_node("homedecor:bathroom_tiles_medium", { minetest.register_node("homedecor:bathroom_tiles_medium", {
description = S("Bathroom/kitchen tiles (medium)"), description = S("Bathroom/kitchen tiles (medium)"),
tiles = { tiles = {
{ name = "homedecor_bathroom_tiles_bg.png", color = 0xffc0c0c0 }, "homedecor_bathroom_tiles_bg.png"
"homedecor_bathroom_tiles_fg.png" },
overlay_tiles = {
{ name = "homedecor_bathroom_tiles_fg.png", color = 0xffc0c0c0 },
}, },
drawtype = "mesh",
mesh = "homedecor_block_with_overlay.obj",
paramtype = "light", paramtype = "light",
paramtype2 = "color", paramtype2 = "color",
palette = "unifieddyes_palette_extended.png", palette = "unifieddyes_palette_extended.png",
place_param2 = 240, place_param2 = 240,
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,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
minetest.register_node("homedecor:bathroom_tiles_light", { minetest.register_node("homedecor:bathroom_tiles_light", {
description = S("Bathroom/kitchen tiles (light)"), description = S("Bathroom/kitchen tiles (light)"),
tiles = { tiles = {
{ name = "homedecor_bathroom_tiles_bg.png", color = 0xffffffff }, "homedecor_bathroom_tiles_bg.png"
"homedecor_bathroom_tiles_fg.png" },
overlay_tiles = {
{ name = "homedecor_bathroom_tiles_fg.png", color = 0xffffffff },
}, },
drawtype = "mesh",
mesh = "homedecor_block_with_overlay.obj",
paramtype = "light", paramtype = "light",
paramtype2 = "color", paramtype2 = "color",
palette = "unifieddyes_palette_extended.png", palette = "unifieddyes_palette_extended.png",
place_param2 = 240, place_param2 = 240,
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,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })

View File

@ -52,11 +52,13 @@ homedecor.register("bed_regular", {
on_rotate = screwdriver.disallow, on_rotate = screwdriver.disallow,
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)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
if not placer:get_player_control().sneak then if not placer:get_player_control().sneak then
return homedecor.bed_expansion(pos, placer, itemstack, pointed_thing) return homedecor.bed_expansion(pos, placer, itemstack, pointed_thing)
end end
end, end,
after_dig_node = function(pos) after_dig_node = function(pos, oldnode, oldmetadata, digger)
unifieddyes.after_dig_node(pos, oldnode, oldmetadata, digger)
homedecor.unextend_bed(pos) homedecor.unextend_bed(pos)
end, end,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
@ -91,7 +93,9 @@ homedecor.register("bed_extended", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
expand = { forward = "air" }, expand = { forward = "air" },
on_rotate = screwdriver.disallow, on_rotate = screwdriver.disallow,
after_dig_node = function(pos) after_place_node = unifieddyes.recolor_on_place,
after_dig_node = function(pos, oldnode, oldmetadata, digger)
unifieddyes.after_dig_node(pos, oldnode, oldmetadata, digger)
homedecor.unextend_bed(pos) homedecor.unextend_bed(pos)
end, end,
-- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) -- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
@ -123,10 +127,14 @@ homedecor.register("bed_kingsize", {
node_box = kbed_cbox, node_box = kbed_cbox,
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
on_rotate = screwdriver.disallow, on_rotate = screwdriver.disallow,
after_place_node = unifieddyes.fix_rotation_nsew, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = function(pos, oldnode, oldmetadata, digger) after_dig_node = function(pos, oldnode, oldmetadata, digger)
unifieddyes.after_dig_node(pos, oldnode, oldmetadata, digger)
local inv = digger:get_inventory() local inv = digger:get_inventory()
if digger:get_player_control().sneak and inv:room_for_item("main", "bed_regular 1") then if digger:get_player_control().sneak and inv:room_for_item("main", "homedecor:bed_regular 2") then
inv:remove_item("main", "homedecor:bed_kingsize 1") inv:remove_item("main", "homedecor:bed_kingsize 1")
inv:add_item("main", "homedecor:bed_regular 2") inv:add_item("main", "homedecor:bed_regular 2")
end end

View File

@ -1,155 +1,159 @@
local S = homedecor_i18n.gettext local S = homedecor_i18n.gettext
local function N_(x) return x end
local bookcolors = {
{ N_("red"), 0xffd26466 },
{ N_("green"), 0xff62aa66 },
{ N_("blue"), 0xff8686d7 },
{ N_("violet"), 0xff9c65a7 },
{ N_("grey"), 0xff757579 },
{ N_("brown"), 0xff896958 }
}
local BOOK_FORMNAME = "homedecor:book_form" local BOOK_FORMNAME = "homedecor:book_form"
local player_current_book = { } local player_current_book = { }
local function book_dig(pos, node, digger) for _, c in ipairs(bookcolors) do
if minetest.is_protected(pos, digger:get_player_name()) then return end local color, hue = unpack(c)
local meta = minetest.get_meta(pos)
local data = minetest.serialize({
title = meta:get_string("title") or "",
text = meta:get_string("text") or "",
owner = meta:get_string("owner") or "",
_recover = meta:get_string("_recover") or "",
})
local stack = ItemStack({
name = "homedecor:book",
metadata = data,
})
stack = digger:get_inventory():add_item("main", stack)
if not stack:is_empty() then
minetest.item_drop(stack, digger, pos)
end
minetest.remove_node(pos)
end
local inv_img = "homedecor_book_inv.png^homedecor_book_trim_inv.png" local function book_dig(pos, node, digger)
if minetest.is_protected(pos, digger:get_player_name()) then return end
homedecor.register("book", { local meta = minetest.get_meta(pos)
description = S("Writable Book"), local data = minetest.serialize({
mesh = "homedecor_book.obj", title = meta:get_string("title") or "",
tiles = { text = meta:get_string("text") or "",
"homedecor_book_cover.png", owner = meta:get_string("owner") or "",
{ name = "homedecor_book_edges.png", color = 0xffffffff }, _recover = meta:get_string("_recover") or "",
{ name = "homedecor_book_cover_trim.png", color = 0xffffffff }
},
inventory_image = inv_img,
wield_image = inv_img,
groups = { snappy=3, oddly_breakable_by_hand=3, book=1, ud_param2_colorable = 1 },
walkable = false,
paramtype2 = "colorwallmounted",
palette = "unifieddyes_palette_colorwallmounted.png",
after_dig_node = unifieddyes.after_dig_node,
stack_max = 1,
on_punch = function(pos, node, puncher, pointed_thing)
local fdir = node.param2
minetest.swap_node(pos, { name = "homedecor:book_open", param2 = fdir })
end,
on_place = function(itemstack, placer, pointed_thing)
local plname = placer:get_player_name()
local pos = pointed_thing.under
local node = minetest.get_node_or_nil(pos)
local def = node and minetest.registered_nodes[node.name]
if not def or not def.buildable_to then
pos = pointed_thing.above
node = minetest.get_node_or_nil(pos)
def = node and minetest.registered_nodes[node.name]
if not def or not def.buildable_to then return itemstack end
end
if minetest.is_protected(pos, plname) then return itemstack end
local fdir = minetest.dir_to_facedir(placer:get_look_dir())
minetest.set_node(pos, {
name = "homedecor:book",
param2 = fdir,
}) })
local text = itemstack:get_metadata() or "" local stack = ItemStack({
local meta = minetest.get_meta(pos) name = "homedecor:book_"..color,
local data = minetest.deserialize(text) or {} metadata = data,
if type(data) ~= "table" then })
data = {} stack = digger:get_inventory():add_item("main", stack)
-- Store raw metadata in case some data is lost by the if not stack:is_empty() then
-- transition to the new meta format, so it is not lost minetest.item_drop(stack, digger, pos)
-- and can be recovered if needed.
meta:set_string("_recover", text)
end end
meta:set_string("title", data.title or "") minetest.remove_node(pos)
meta:set_string("text", data.text or "") end
meta:set_string("owner", data.owner or "")
if data.title and data.title ~= "" then
meta:set_string("infotext", data.title)
end
if not homedecor.expect_infinite_stacks then
itemstack:take_item()
end
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
return itemstack
end,
on_rotate = unifieddyes.fix_after_screwdriver_nsew,
on_dig = book_dig,
selection_box = {
type = "fixed",
fixed = {-0.2, -0.5, -0.25, 0.2, -0.35, 0.25}
}
})
homedecor.register("book_open", { homedecor.register("book_"..color, {
mesh = "homedecor_book_open.obj", description = S("Writable Book (@1)", S(color)),
tiles = { mesh = "homedecor_book.obj",
"homedecor_book_cover.png", tiles = {
{ name = "homedecor_book_edges.png", color = 0xffffffff }, { name = "homedecor_book_cover.png", color = hue },
{ name = "homedecor_book_pages.png", color = 0xffffffff } { name = "homedecor_book_edges.png", color = "white" }
}, },
groups = { snappy=3, oddly_breakable_by_hand=3, not_in_creative_inventory=1, ud_param2_colorable = 1 }, overlay_tiles = {
drop = "homedecor:book", { name = "homedecor_book_cover_trim.png", color = "white" },
walkable = false, ""
paramtype2 = "colorwallmounted", },
palette = "unifieddyes_palette_colorwallmounted.png", groups = { snappy=3, oddly_breakable_by_hand=3, book=1 },
after_place_node = unifieddyes.fix_rotation_nsew, walkable = false,
after_dig_node = unifieddyes.after_dig_node, stack_max = 1,
on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_punch = function(pos, node, puncher, pointed_thing)
on_dig = book_dig, local fdir = node.param2
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) minetest.swap_node(pos, { name = "homedecor:book_open_"..color, param2 = fdir })
local meta = minetest.get_meta(pos) end,
local player_name = clicker:get_player_name() on_place = function(itemstack, placer, pointed_thing)
local title = meta:get_string("title") or "" local plname = placer:get_player_name()
local text = meta:get_string("text") or "" local pos = pointed_thing.under
local owner = meta:get_string("owner") or "" local node = minetest.get_node_or_nil(pos)
local formspec local def = node and minetest.registered_nodes[node.name]
if owner == "" or owner == player_name then if not def or not def.buildable_to then
formspec = "size[8,8]"..default.gui_bg..default.gui_bg_img.. pos = pointed_thing.above
"field[0.5,1;7.5,0;title;Book title :;".. node = minetest.get_node_or_nil(pos)
minetest.formspec_escape(title).."]".. def = node and minetest.registered_nodes[node.name]
"textarea[0.5,1.5;7.5,7;text;Book content :;".. if not def or not def.buildable_to then return itemstack end
minetest.formspec_escape(text).."]".. end
"button_exit[2.5,7.5;3,1;save;Save]" if minetest.is_protected(pos, plname) then return itemstack end
else local fdir = minetest.dir_to_facedir(placer:get_look_dir())
formspec = "size[8,8]"..default.gui_bg.. minetest.set_node(pos, {
"button_exit[7,0.25;1,0.5;close;X]".. name = "homedecor:book_"..color,
default.gui_bg_img.. param2 = fdir,
"label[0.5,0.5;by "..owner.."]"..
"label[0.5,0;"..minetest.formspec_escape(title).."]"..
"textarea[0.5,1.5;7.5,7;;"..minetest.formspec_escape(text)..";]"
end
player_current_book[player_name] = pos
minetest.show_formspec(player_name, BOOK_FORMNAME, formspec)
return itemstack
end,
on_punch = function(pos, node, puncher, pointed_thing)
local fdir = node.param2
minetest.swap_node(pos, { name = "homedecor:book", param2 = fdir })
minetest.sound_play("homedecor_book_close", {
pos=pos,
max_hear_distance = 3,
gain = 2,
}) })
end, local text = itemstack:get_metadata() or ""
selection_box = { local meta = minetest.get_meta(pos)
type = "fixed", local data = minetest.deserialize(text) or {}
fixed = {-0.35, -0.5, -0.25, 0.35, -0.4, 0.25} if type(data) ~= "table" then
} data = {}
}) -- Store raw metadata in case some data is lost by the
-- transition to the new meta format, so it is not lost
-- and can be recovered if needed.
meta:set_string("_recover", text)
end
meta:set_string("title", data.title or "")
meta:set_string("text", data.text or "")
meta:set_string("owner", data.owner or "")
if data.title and data.title ~= "" then
meta:set_string("infotext", data.title)
end
if not homedecor.expect_infinite_stacks then
itemstack:take_item()
end
return itemstack
end,
on_dig = book_dig,
selection_box = {
type = "fixed",
fixed = {-0.2, -0.5, -0.25, 0.2, -0.35, 0.25}
}
})
homedecor.register("book_open_"..color, {
mesh = "homedecor_book_open.obj",
tiles = {
{ name = "homedecor_book_cover.png", color = hue },
{ name = "homedecor_book_edges.png", color = "white" },
{ name = "homedecor_book_pages.png", color = "white" }
},
groups = { snappy=3, oddly_breakable_by_hand=3, not_in_creative_inventory=1 },
drop = "homedecor:book_"..color,
walkable = false,
on_dig = book_dig,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local meta = minetest.get_meta(pos)
local player_name = clicker:get_player_name()
local title = meta:get_string("title") or ""
local text = meta:get_string("text") or ""
local owner = meta:get_string("owner") or ""
local formspec
if owner == "" or owner == player_name then
formspec = "size[8,8]"..default.gui_bg..default.gui_bg_img..
"field[0.5,1;7.5,0;title;Book title :;"..
minetest.formspec_escape(title).."]"..
"textarea[0.5,1.5;7.5,7;text;Book content :;"..
minetest.formspec_escape(text).."]"..
"button_exit[2.5,7.5;3,1;save;Save]"
else
formspec = "size[8,8]"..default.gui_bg..
"button_exit[7,0.25;1,0.5;close;X]"..
default.gui_bg_img..
"label[0.5,0.5;by "..owner.."]"..
"label[0.5,0;"..minetest.formspec_escape(title).."]"..
"textarea[0.5,1.5;7.5,7;;"..minetest.formspec_escape(text)..";]"
end
player_current_book[player_name] = pos
minetest.show_formspec(player_name, BOOK_FORMNAME, formspec)
return itemstack
end,
on_punch = function(pos, node, puncher, pointed_thing)
local fdir = node.param2
minetest.swap_node(pos, { name = "homedecor:book_"..color, param2 = fdir })
minetest.sound_play("homedecor_book_close", {
pos=pos,
max_hear_distance = 3,
gain = 2,
})
end,
selection_box = {
type = "fixed",
fixed = {-0.35, -0.5, -0.25, 0.35, -0.4, 0.25}
}
})
end
minetest.register_on_player_receive_fields(function(player, form_name, fields) minetest.register_on_player_receive_fields(function(player, form_name, fields)
if form_name ~= BOOK_FORMNAME or not fields.save then if form_name ~= BOOK_FORMNAME or not fields.save then
@ -169,67 +173,5 @@ minetest.register_on_player_receive_fields(function(player, form_name, fields)
player:get_player_name(), fields.title, fields.text, minetest.pos_to_string(player:getpos()))) player:get_player_name(), fields.title, fields.text, minetest.pos_to_string(player:getpos())))
end) end)
-- convert old static nodes to param2 minetest.register_alias("homedecor:book", "homedecor:book_grey")
minetest.register_alias("homedecor:book_open", "homedecor:book_open_grey")
local bookcolors = {
"red",
"green",
"blue",
"violet",
"grey",
"brown"
}
homedecor.old_static_books = {}
for _, color in ipairs(bookcolors) do
table.insert(homedecor.old_static_books, "homedecor:book_"..color)
table.insert(homedecor.old_static_books, "homedecor:book_open_"..color)
end
minetest.register_lbm({
name = "homedecor:convert_books",
label = "Convert homedecor books to use param2 color",
run_at_every_load = false,
nodenames = homedecor.old_static_books,
action = function(pos, node)
local name = node.name
local color = string.sub(name, string.find(name, "_", -7)+1)
local newname = "homedecor:book"
if string.find(name, "open") then
newname = "homedecor:book_open"
end
local old_fdir = math.floor(node.param2 % 32)
local new_fdir = 3
if old_fdir == 0 then
new_fdir = 3
elseif old_fdir == 1 then
new_fdir = 4
elseif old_fdir == 2 then
new_fdir = 2
elseif old_fdir == 3 then
new_fdir = 5
end
if color == "grey" then
color = "dark_grey"
elseif color == "violet" then
color = "dark_magenta"
elseif color == "brown" then
color = "dark_orange"
elseif color == "blue" then
color = "light_blue"
else
color = "medium_"..color
end
local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted")
local param2 = paletteidx + new_fdir
minetest.swap_node(pos, { name = newname, param2 = param2 })
local meta = minetest.get_meta(pos)
meta:set_string("dye", "unifieddyes:"..color)
end
})

View File

@ -1298,15 +1298,7 @@ minetest.register_craft( {
-- other types of fences -- other types of fences
minetest.register_craft( { minetest.register_craft( {
output = "homedecor:fence_wrought_iron_2 2", output = "homedecor:fence_wrought_iron_2 4",
recipe = {
{ "homedecor:pole_wrought_iron", "default:iron_lump" },
{ "homedecor:pole_wrought_iron", "default:iron_lump" },
},
})
minetest.register_craft( {
output = "homedecor:fence_wrought_iron_2 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" },

View File

@ -81,7 +81,10 @@ homedecor.register("kitchen_chair_padded", {
collision_box = kc_cbox, collision_box = kc_cbox,
groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2, ud_param2_colorable = 1}, groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2, ud_param2_colorable = 1},
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
after_place_node = unifieddyes.fix_rotation_nsew, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
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)
@ -105,7 +108,10 @@ homedecor.register("armchair", {
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 = ac_cbox, node_box = ac_cbox,
after_place_node = unifieddyes.fix_rotation_nsew, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_rotate = unifieddyes.fix_after_screwdriver_nsew,
}) })
@ -162,7 +168,25 @@ minetest.register_alias('armchair', 'homedecor:armchair')
homedecor.old_static_chairs = {} homedecor.old_static_chairs = {}
for _, color in ipairs(lrfurn.colors) do local chair_colors = {
"black",
"brown",
"blue",
"cyan",
"dark_grey",
"dark_green",
"green",
"grey",
"magenta",
"orange",
"pink",
"red",
"violet",
"white",
"yellow",
}
for _, color in ipairs(chair_colors) do
table.insert(homedecor.old_static_chairs, "homedecor:chair_"..color) table.insert(homedecor.old_static_chairs, "homedecor:chair_"..color)
table.insert(homedecor.old_static_chairs, "homedecor:armchair_"..color) table.insert(homedecor.old_static_chairs, "homedecor:armchair_"..color)
end end

View File

@ -53,18 +53,8 @@ homedecor.wall_fdir_to_fwd = {
{ -1, 0 }, { -1, 0 },
} }
local placeholder_node = "homedecor:expansion_placeholder" local placeholder_node = "air"
minetest.register_node(placeholder_node, { minetest.register_alias("homedecor:expansion_placeholder", "air")
description = S("Expansion placeholder (you hacker you!)"),
groups = { not_in_creative_inventory=1 },
drawtype = "airlike",
paramtype = "light",
walkable = false,
selection_box = { type = "fixed", fixed = { 0, 0, 0, 0, 0, 0 } },
is_ground_content = false,
sunlight_propagates = true,
buildable_to = false,
})
--- select which node was pointed at based on it being known, not ignored, buildable_to --- select which node was pointed at based on it being known, not ignored, buildable_to
-- returns nil if no node could be selected -- returns nil if no node could be selected
@ -94,7 +84,7 @@ local function is_buildable_to(placer_name, ...)
end end
-- place one or two nodes if and only if both can be placed -- place one or two nodes if and only if both can be placed
local function stack(itemstack, placer, fdir, pos, def, pos2, node1, node2) local function stack(itemstack, placer, fdir, pos, def, pos2, node1, node2, pointed_thing)
local placer_name = placer:get_player_name() or "" local placer_name = placer:get_player_name() or ""
if is_buildable_to(placer_name, pos, pos2) then if is_buildable_to(placer_name, pos, pos2) then
local lfdir = fdir or minetest.dir_to_facedir(placer:get_look_dir()) local lfdir = fdir or minetest.dir_to_facedir(placer:get_look_dir())
@ -111,7 +101,7 @@ local function stack(itemstack, placer, fdir, pos, def, pos2, node1, node2)
-- call after_place_node of the placed node if available -- call after_place_node of the placed node if available
local ctrl_node_def = minetest.registered_nodes[node1] local ctrl_node_def = minetest.registered_nodes[node1]
if ctrl_node_def and ctrl_node_def.after_place_node then if ctrl_node_def and ctrl_node_def.after_place_node then
ctrl_node_def.after_place_node(pos, placer) ctrl_node_def.after_place_node(pos, placer, itemstack, pointed_thing)
end end
if not homedecor.expect_infinite_stacks then if not homedecor.expect_infinite_stacks then
@ -140,7 +130,7 @@ function homedecor.stack_vertically(itemstack, placer, pointed_thing, node1, nod
local top_pos = { x=pos.x, y=pos.y+1, z=pos.z } local top_pos = { x=pos.x, y=pos.y+1, z=pos.z }
return stack(itemstack, placer, nil, pos, def, top_pos, node1, node2) return stack(itemstack, placer, nil, pos, def, top_pos, node1, node2, pointed_thing)
end end
-- Stack one door node above another -- Stack one door node above another
@ -162,7 +152,7 @@ function homedecor.stack_wing(itemstack, placer, pointed_thing, node1, node2, no
end end
local top_pos = { x=pos.x, y=pos.y+1, z=pos.z } local top_pos = { x=pos.x, y=pos.y+1, z=pos.z }
return stack(itemstack, placer, fdir, pos, def, top_pos, node1, node2) return stack(itemstack, placer, fdir, pos, def, top_pos, node1, node2, pointed_thing)
end end
function homedecor.stack_sideways(itemstack, placer, pointed_thing, node1, node2, dir) function homedecor.stack_sideways(itemstack, placer, pointed_thing, node1, node2, dir)
@ -177,13 +167,14 @@ function homedecor.stack_sideways(itemstack, placer, pointed_thing, node1, node2
local pos2 = { x = pos.x + fdir_transform[fdir+1][1], y=pos.y, z = pos.z + fdir_transform[fdir+1][2] } local pos2 = { x = pos.x + fdir_transform[fdir+1][1], y=pos.y, z = pos.z + fdir_transform[fdir+1][2] }
return stack(itemstack, placer, fdir, pos, def, pos2, node1, node2) return stack(itemstack, placer, fdir, pos, def, pos2, node1, node2, pointed_thing)
end end
function homedecor.bed_expansion(pos, placer, itemstack, pointed_thing, trybunks) function homedecor.bed_expansion(pos, placer, itemstack, pointed_thing, trybunks)
local thisnode = minetest.get_node(pos) local thisnode = minetest.get_node(pos)
local fdir = thisnode.param2 local param2 = thisnode.param2
local fdir = param2 % 8
local fxd = homedecor.wall_fdir_to_fwd[fdir+1][1] local fxd = homedecor.wall_fdir_to_fwd[fdir+1][1]
local fzd = homedecor.wall_fdir_to_fwd[fdir+1][2] local fzd = homedecor.wall_fdir_to_fwd[fdir+1][2]
@ -219,14 +210,23 @@ function homedecor.bed_expansion(pos, placer, itemstack, pointed_thing, trybunks
local rightpos = {x=pos.x+rxd, y=pos.y, z=pos.z+rzd} local rightpos = {x=pos.x+rxd, y=pos.y, z=pos.z+rzd}
local rightnode = minetest.get_node(rightpos) local rightnode = minetest.get_node(rightpos)
local inv = placer:get_inventory()
local lastdye = unifieddyes.last_used_dye[placer_name]
if leftnode.name == "homedecor:bed_regular" then if leftnode.name == "homedecor:bed_regular" then
local newname = string.gsub(thisnode.name, "_regular", "_kingsize") local newname = string.gsub(thisnode.name, "_regular", "_kingsize")
local meta = minetest.get_meta(leftpos)
minetest.set_node(pos, {name = "air"}) minetest.set_node(pos, {name = "air"})
minetest.set_node(leftpos, { name = newname, param2 = fdir}) minetest.set_node(leftpos, { name = newname, param2 = param2})
meta:set_string("dye", lastdye)
inv:add_item("main", lastdye)
elseif rightnode.name == "homedecor:bed_regular" then elseif rightnode.name == "homedecor:bed_regular" then
local newname = string.gsub(thisnode.name, "_regular", "_kingsize") local newname = string.gsub(thisnode.name, "_regular", "_kingsize")
local meta = minetest.get_meta(rightpos)
minetest.set_node(rightpos, {name = "air"}) minetest.set_node(rightpos, {name = "air"})
minetest.set_node(pos, { name = newname, param2 = fdir}) minetest.set_node(pos, { name = newname, param2 = param2})
meta:set_string("dye", lastdye)
inv:add_item("main", lastdye)
end end
local toppos = {x=pos.x, y=pos.y+1.0, z=pos.z} local toppos = {x=pos.x, y=pos.y+1.0, z=pos.z}
@ -234,18 +234,26 @@ function homedecor.bed_expansion(pos, placer, itemstack, pointed_thing, trybunks
if trybunks and is_buildable_to(placer_name, toppos, topposfwd) then if trybunks and is_buildable_to(placer_name, toppos, topposfwd) then
local newname = string.gsub(thisnode.name, "_regular", "_extended") local newname = string.gsub(thisnode.name, "_regular", "_extended")
minetest.set_node(toppos, { name = thisnode.name, param2 = fdir}) local newparam2 = param2 % 8
minetest.set_node(pos, { name = newname, param2 = fdir}) if inv:contains_item("main", lastdye) then
minetest.set_node(toppos, { name = thisnode.name, param2 = param2})
if lastdye then inv:remove_item("main", lastdye.." 1") end
else
minetest.set_node(toppos, { name = thisnode.name, param2 = newparam2})
minetest.chat_send_player(placer_name, "Ran out of "..lastdye..", using neutral color.")
unifieddyes.last_used_dye[placer_name] = nil
end
minetest.swap_node(pos, { name = newname, param2 = param2})
itemstack:take_item() itemstack:take_item()
end end
end end
function homedecor.unextend_bed(pos) function homedecor.unextend_bed(pos)
local bottomnode = minetest.get_node({x=pos.x, y=pos.y-1.0, z=pos.z}) local bottomnode = minetest.get_node({x=pos.x, y=pos.y-1.0, z=pos.z})
local fdir = bottomnode.param2 local param2 = bottomnode.param2
if bottomnode.name == "homedecor:bed_extended" then if bottomnode.name == "homedecor:bed_extended" then
local newname = string.gsub(bottomnode.name, "_extended", "_regular") local newname = string.gsub(bottomnode.name, "_extended", "_regular")
minetest.set_node({x=pos.x, y=pos.y-1.0, z=pos.z}, { name = newname, param2 = fdir}) minetest.swap_node({x=pos.x, y=pos.y-1.0, z=pos.z}, { name = newname, param2 = param2})
end end
end end

View File

@ -15,7 +15,7 @@ homedecor = {
modpath = modpath, modpath = modpath,
-- infinite stacks -- infinite stacks
expect_infinite_stacks = minetest.setting_getbool("creative_mode") and not minetest.get_modpath("unified_inventory") expect_infinite_stacks = minetest.settings:get_bool("creative_mode") and not minetest.get_modpath("unified_inventory")
} }
-- Determine if the item being pointed at is the underside of a node (e.g a ceiling) -- Determine if the item being pointed at is the underside of a node (e.g a ceiling)

View File

@ -21,6 +21,15 @@ minetest.register_node("homedecor:glowlight_half", {
"homedecor_glowlight_thick_sides.png", "homedecor_glowlight_thick_sides.png",
"homedecor_glowlight_thick_sides.png" "homedecor_glowlight_thick_sides.png"
}, },
overlay_tiles = {
{ name = "homedecor_glowlight_top_overlay.png", color = "white"},
"",
{ name = "homedecor_glowlight_thick_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thick_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thick_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thick_sides_overlay.png", color = "white"},
},
use_texture_alpha = true,
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
paramtype2 = "colorwallmounted", paramtype2 = "colorwallmounted",
@ -35,7 +44,10 @@ minetest.register_node("homedecor:glowlight_half", {
groups = { snappy = 3, ud_param2_colorable = 1 }, groups = { snappy = 3, ud_param2_colorable = 1 },
light_source = default.LIGHT_MAX, light_source = default.LIGHT_MAX,
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
@ -49,6 +61,15 @@ minetest.register_node("homedecor:glowlight_quarter", {
"homedecor_glowlight_thin_sides.png", "homedecor_glowlight_thin_sides.png",
"homedecor_glowlight_thin_sides.png" "homedecor_glowlight_thin_sides.png"
}, },
overlay_tiles = {
{ name = "homedecor_glowlight_top_overlay.png", color = "white"},
"",
{ name = "homedecor_glowlight_thin_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thin_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thin_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_thin_sides_overlay.png", color = "white"},
},
use_texture_alpha = true,
drawtype = "nodebox", drawtype = "nodebox",
paramtype = "light", paramtype = "light",
paramtype2 = "colorwallmounted", paramtype2 = "colorwallmounted",
@ -63,7 +84,10 @@ minetest.register_node("homedecor:glowlight_quarter", {
groups = { snappy = 3, ud_param2_colorable = 1 }, groups = { snappy = 3, ud_param2_colorable = 1 },
light_source = default.LIGHT_MAX-1, light_source = default.LIGHT_MAX-1,
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
@ -77,6 +101,15 @@ minetest.register_node("homedecor:glowlight_small_cube", {
"homedecor_glowlight_cube_sides.png", "homedecor_glowlight_cube_sides.png",
"homedecor_glowlight_cube_sides.png" "homedecor_glowlight_cube_sides.png"
}, },
overlay_tiles = {
{ name = "homedecor_glowlight_cube_tb_overlay.png", color = "white"},
{ name = "homedecor_glowlight_cube_tb_overlay.png", color = "white"},
{ name = "homedecor_glowlight_cube_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_cube_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_cube_sides_overlay.png", color = "white"},
{ name = "homedecor_glowlight_cube_sides_overlay.png", color = "white"},
},
use_texture_alpha = true,
paramtype = "light", paramtype = "light",
paramtype2 = "colorwallmounted", paramtype2 = "colorwallmounted",
drawtype = "nodebox", drawtype = "nodebox",
@ -91,15 +124,19 @@ minetest.register_node("homedecor:glowlight_small_cube", {
groups = { snappy = 3, ud_param2_colorable = 1 }, groups = { snappy = 3, ud_param2_colorable = 1 },
light_source = default.LIGHT_MAX-1, light_source = default.LIGHT_MAX-1,
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
homedecor.register("plasma_lamp", { homedecor.register("plasma_lamp", {
description = S("Plasma Lamp"), description = S("Plasma Lamp"),
drawtype = "glasslike_framed", drawtype = "mesh",
tiles = {"default_gold_block.png","homedecor_glass_face_clean.png"}, mesh = "plasma_lamp.obj",
special_tiles = { tiles = {
"default_gold_block.png",
{ {
name="homedecor_plasma_storm.png", name="homedecor_plasma_storm.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0},
@ -110,16 +147,13 @@ homedecor.register("plasma_lamp", {
sunlight_propagates = true, sunlight_propagates = true,
groups = {cracky=3,oddly_breakable_by_hand=3}, groups = {cracky=3,oddly_breakable_by_hand=3},
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
after_place_node = function(pos, placer, itemstack, pointed_thing)
minetest.swap_node(pos, {name = "homedecor:plasma_lamp", param2 = 255})
end
}) })
homedecor.register("plasma_ball", { homedecor.register("plasma_ball", {
description = S("Plasma Ball"), description = S("Plasma Ball"),
mesh = "homedecor_plasma_ball.obj", mesh = "homedecor_plasma_ball.obj",
tiles = { tiles = {
"homedecor_generic_plastic.png", { name = "homedecor_generic_plastic.png", color = homedecor.color_black },
{ {
name = "homedecor_plasma_ball_streamers.png", name = "homedecor_plasma_ball_streamers.png",
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0},
@ -428,6 +462,8 @@ local function reg_lamp(suffix, nxt, light, brightness)
node.name = "homedecor:table_lamp_"..repl[suffix] node.name = "homedecor:table_lamp_"..repl[suffix]
minetest.set_node(pos, node) minetest.set_node(pos, node)
end, end,
on_construct = unifieddyes.on_construct,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
@ -457,8 +493,10 @@ local function reg_lamp(suffix, nxt, light, brightness)
node.name = "homedecor:standing_lamp_"..repl[suffix] node.name = "homedecor:standing_lamp_"..repl[suffix]
minetest.set_node(pos, node) minetest.set_node(pos, node)
end, end,
on_construct = unifieddyes.on_construct,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
expand = { top="placeholder" }, expand = { top="air" },
}) })
-- for old maps that had the original 3dforniture mod -- for old maps that had the original 3dforniture mod
@ -495,7 +533,10 @@ homedecor.register("desk_lamp", {
node_box = dlamp_cbox, node_box = dlamp_cbox,
walkable = false, walkable = false,
groups = {snappy=3, ud_param2_colorable = 1}, groups = {snappy=3, ud_param2_colorable = 1},
after_place_node = unifieddyes.fix_rotation_nsew, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
on_rotate = unifieddyes.fix_after_screwdriver_nsew on_rotate = unifieddyes.fix_after_screwdriver_nsew
}) })

View File

@ -1,44 +0,0 @@
# Blender v2.72 (sub 0) OBJ File: 'unifiedbricks_brick_block.blend'
# www.blender.org
o Cube
v 0.496092 0.496092 0.496092
v 0.496092 0.496092 -0.496092
v -0.496092 0.496092 -0.496092
v -0.496092 0.496092 0.496092
v 0.496092 -0.496092 0.496092
v 0.496092 -0.496092 -0.496092
v -0.496092 -0.496092 -0.496092
v -0.496092 -0.496092 0.496092
v 0.499750 0.499750 0.499750
v 0.499750 0.499750 -0.499750
v -0.499750 0.499750 -0.499750
v -0.499750 0.499750 0.499750
v 0.499750 -0.499750 0.499750
v 0.499750 -0.499750 -0.499750
v -0.499750 -0.499750 -0.499750
v -0.499750 -0.499750 0.499750
vt 1.000000 0.000000
vt 1.000000 1.000000
vt 0.000000 1.000000
vt 0.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn -1.000000 0.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.000000 1.000000
g Cube_Cube_base
s off
f 8/1/1 7/2/1 6/3/1 5/4/1
f 4/2/2 3/3/2 7/4/2 8/1/2
f 1/3/3 2/4/3 3/1/3 4/2/3
f 2/2/4 1/3/4 5/4/4 6/1/4
f 3/2/5 2/3/5 6/4/5 7/1/5
f 1/2/6 4/3/6 8/4/6 5/1/6
g Cube_Cube_overlay
f 16/1/1 15/2/1 14/3/1 13/4/1
f 12/2/2 11/3/2 15/4/2 16/1/2
f 9/3/3 10/4/3 11/1/3 12/2/3
f 10/2/4 9/3/4 13/4/4 14/1/4
f 11/2/5 10/3/5 14/4/5 15/1/5
f 9/2/6 12/3/6 16/4/6 13/1/6

View File

@ -1,243 +1,206 @@
# Blender v2.72 (sub 0) OBJ File: 'book.blend' # Blender v2.78 (sub 0) OBJ File: 'book.blend'
# www.blender.org # www.blender.org
o Cube.002_Cube.001 o Cube.002_Cube.001
v -0.216625 -0.161995 -0.448008 v 0.161995 -0.448008 0.216625
v -0.216625 -0.149566 -0.485966 v 0.149566 -0.485966 0.216625
v -0.216625 -0.113157 -0.485966 v 0.113157 -0.485966 0.216625
v -0.216625 -0.142021 -0.448008 v 0.142021 -0.448008 0.216625
v -0.208120 -0.115781 -0.485966 v 0.115781 -0.485966 0.208120
v -0.208120 -0.142021 -0.448008 v 0.142021 -0.448008 0.208120
v 0.220555 -0.113157 -0.485966 v 0.113157 -0.485966 -0.220555
v 0.220555 0.159347 -0.485966 v -0.159347 -0.485966 -0.220555
v 0.212050 -0.115781 -0.485966 v 0.115781 -0.485966 -0.212050
v -0.208120 -0.161995 -0.448008 v 0.161995 -0.448008 0.208120
v -0.208120 0.148926 -0.485966 v -0.148926 -0.485966 0.208120
v -0.208120 0.155653 -0.448008 v -0.155653 -0.448008 0.208120
v 0.212051 0.155653 -0.448008 v -0.155653 -0.448008 -0.212051
v 0.212051 0.148926 -0.485966 v -0.148926 -0.485966 -0.212051
v -0.208120 -0.152482 -0.485966 v 0.152482 -0.485966 0.208120
v 0.212050 -0.152482 -0.485966 v 0.152482 -0.485966 -0.212050
v 0.220555 -0.161995 -0.448008 v 0.161995 -0.448008 -0.220555
v 0.212050 -0.161995 -0.448008 v 0.161995 -0.448008 -0.212050
v 0.212050 -0.145193 -0.500002 v 0.145193 -0.500002 -0.212050
v -0.208120 -0.145193 -0.500002 v 0.145193 -0.500002 0.208120
v -0.208120 -0.115781 -0.500002 v 0.115781 -0.500002 0.208120
v 0.212050 -0.115781 -0.500002 v 0.115781 -0.500002 -0.212050
v 0.212050 -0.115781 -0.396013 v 0.115781 -0.396013 -0.212050
v -0.208120 -0.115781 -0.396013 v 0.115781 -0.396013 0.208120
v -0.208120 -0.145193 -0.396013 v 0.145193 -0.396013 0.208120
v 0.212050 -0.145193 -0.396013 v 0.145193 -0.396013 -0.212050
v 0.212050 -0.152482 -0.410049 v 0.152482 -0.410049 -0.212050
v -0.208120 -0.152482 -0.410049 v 0.152482 -0.410049 0.208120
v 0.212051 0.148926 -0.410049 v -0.148926 -0.410049 -0.212051
v -0.208120 0.148926 -0.410049 v -0.148926 -0.410049 0.208120
v 0.212050 -0.115781 -0.410049 v 0.115781 -0.410049 -0.212050
v 0.220555 0.159347 -0.410049 v -0.159347 -0.410049 -0.220555
v 0.220555 -0.113157 -0.410049 v 0.113157 -0.410049 -0.220555
v -0.208120 -0.115781 -0.410049 v 0.115781 -0.410049 0.208120
v -0.216625 -0.113157 -0.410049 v 0.113157 -0.410049 0.216625
v -0.216625 -0.149566 -0.410049 v 0.149566 -0.410049 0.216625
v -0.216625 -0.115781 -0.396013 v 0.115781 -0.396013 0.216625
v -0.216625 -0.141549 -0.396013 v 0.141549 -0.396013 0.216625
v 0.220555 -0.149566 -0.410049 v 0.149566 -0.410049 -0.220555
v 0.220555 -0.141549 -0.396013 v 0.141549 -0.396013 -0.220555
v 0.220555 0.159346 -0.396013 v -0.159346 -0.396013 -0.220555
v -0.216624 0.159347 -0.396013 v -0.159347 -0.396013 0.216624
v 0.220555 -0.115781 -0.396013 v 0.115781 -0.396013 -0.220555
v -0.216624 0.159347 -0.410049 v -0.159347 -0.410049 0.216624
v -0.216625 -0.115781 -0.500002 v 0.115781 -0.500002 0.216625
v -0.216625 -0.141549 -0.500002 v 0.141549 -0.500002 0.216625
v 0.212050 -0.142021 -0.448008 v 0.142021 -0.448008 -0.212050
v 0.220555 -0.149566 -0.485966 v 0.149566 -0.485966 -0.220555
v 0.220555 -0.141549 -0.500002 v 0.141549 -0.500002 -0.220555
v 0.220555 0.159346 -0.500002 v -0.159346 -0.500002 -0.220555
v -0.216624 0.159347 -0.500002 v -0.159347 -0.500002 0.216624
v 0.220555 -0.142021 -0.448008 v 0.142021 -0.448008 -0.220555
v 0.220555 -0.115781 -0.500002 v 0.115781 -0.500002 -0.220555
v -0.216624 0.159347 -0.485966 v -0.159347 -0.485966 0.216624
v -0.216625 -0.162729 -0.448008 vt 0.9220 0.3839
v -0.216625 -0.150269 -0.486432 vt 0.9220 0.3404
v -0.208120 -0.162729 -0.448008 vt 0.9318 0.3404
v -0.208120 -0.153192 -0.486432 vt 0.9318 0.3839
v 0.212050 -0.153192 -0.486432 vt 0.9318 0.4273
v 0.220555 -0.162729 -0.448008 vt 0.9220 0.4273
v 0.212050 -0.162729 -0.448008 vt 0.7681 0.4903
v 0.212050 -0.145885 -0.500640 vt 0.7230 0.4903
v -0.208120 -0.145885 -0.500640 vt 0.7230 0.0097
v -0.208120 -0.116399 -0.500640 vt 0.7681 0.0097
v 0.212050 -0.116399 -0.500640 vt 0.7681 0.5000
v 0.212050 -0.116399 -0.395375 vt 0.7224 0.5000
v -0.208120 -0.116399 -0.395375 vt 0.8096 0.4903
v -0.208120 -0.145885 -0.395375 vt 0.8091 0.5000
v 0.212050 -0.145885 -0.395375 vt 0.3524 0.0000
v 0.212050 -0.153192 -0.409583 vt 0.6708 0.0000
v -0.208120 -0.153192 -0.409583 vt 0.6708 0.0097
v -0.216625 -0.150269 -0.409583 vt 0.6708 0.4903
v -0.216625 -0.116399 -0.395375 vt 0.6708 0.5000
v -0.216625 -0.142232 -0.395375 vt 0.3524 0.5000
v 0.220555 -0.150269 -0.409583 vt 0.8096 0.0097
v 0.220555 -0.142232 -0.395375 vt 0.8091 0.0000
v 0.220555 0.159416 -0.395375 vt 0.8236 0.0000
v -0.216624 0.159417 -0.395375 vt 0.8243 0.0097
v 0.220555 -0.116399 -0.395375 vt 0.0121 0.5097
v -0.216625 -0.116399 -0.500640 vt 0.0000 0.5000
v -0.216625 -0.142232 -0.500640 vt 0.3154 0.5000
v 0.220555 -0.150269 -0.486432 vt 0.3184 0.5097
v 0.220555 -0.142232 -0.500640 vt 0.7006 0.0000
v 0.220555 0.159416 -0.500640 vt 0.7049 0.0097
v -0.216624 0.159417 -0.500640 vt 0.7310 0.8675
v 0.220555 -0.116399 -0.500640 vt 0.7310 0.8447
vt 0.921987 0.383861 vt 0.7749 0.8117
vt 0.921987 0.340448 vt 0.7749 0.8533
vt 0.931829 0.340448 vt 0.6871 0.8533
vt 0.931829 0.383861 vt 0.6871 0.8117
vt 0.931829 0.427274 vt 0.7749 0.5000
vt 0.921987 0.427274 vt 0.7912 0.5000
vt 0.768089 0.490273 vt 0.7912 0.8147
vt 0.722954 0.490273 vt 0.7912 0.8441
vt 0.722954 0.009727 vt 0.8513 0.5228
vt 0.768089 0.009727 vt 0.8513 0.5000
vt 0.768089 0.500000 vt 0.8953 0.5142
vt 0.722404 0.500000 vt 0.8953 0.5559
vt 0.809636 0.490273 vt 0.9220 0.3404
vt 0.809086 0.500000 vt 0.9220 0.3839
vt 0.352434 0.000000 vt 0.9121 0.3839
vt 0.670829 0.000000 vt 0.9121 0.3404
vt 0.670829 0.009727 vt 0.3346 0.5000
vt 0.670829 0.490273 vt 0.3346 1.0000
vt 0.670829 0.500000 vt 0.3184 1.0000
vt 0.352433 0.499999 vt 0.3184 0.5000
vt 0.809636 0.009727 vt 0.8953 0.8675
vt 0.809086 0.000000 vt 0.9115 0.5234
vt 0.823601 0.000000 vt 0.9115 0.5529
vt 0.824288 0.009727 vt 0.9115 0.8675
vt 0.012060 0.509727 vt 0.8243 0.4903
vt 0.000000 0.500001 vt 0.8236 0.5000
vt 0.315359 0.500000 vt 0.8074 0.5559
vt 0.318396 0.509727 vt 0.8074 0.5142
vt 0.700649 0.000000 vt 0.7681 0.0000
vt 0.704866 0.009727 vt 0.7224 0.0000
vt 0.731001 0.867517 vt 0.9220 0.4273
vt 0.731001 0.844673 vt 0.9121 0.4273
vt 0.774928 0.811661 vt 0.3184 0.9903
vt 0.774928 0.853302 vt 0.3154 1.0000
vt 0.687072 0.853302 vt 0.0000 1.0000
vt 0.687072 0.811661 vt 0.0121 0.9903
vt 0.774928 0.500000 vt 0.7049 0.4903
vt 0.791171 0.500000 vt 0.3184 0.4903
vt 0.791171 0.814662 vt 0.3184 0.0097
vt 0.791171 0.844133 vt 0.3524 0.0097
vt 0.851343 0.522844 vt 0.3524 0.4903
vt 0.851343 0.500000 vt 0.7056 0.4903
vt 0.895271 0.514215 vt 0.7056 0.0097
vt 0.895271 0.555856 vt 0.6708 0.5097
vt 0.912144 0.383862 vt 0.3645 0.5097
vt 0.912144 0.340448 vt 0.3524 0.5000
vt 0.334639 0.500000 vt 0.6678 0.5000
vt 0.334639 0.999999 vt 0.3184 0.0000
vt 0.318396 0.999999 vt 0.3482 0.0000
vt 0.318396 0.500000 vt 0.7049 0.5000
vt 0.895271 0.867517 vt 0.8074 0.8675
vt 0.911514 0.523384 vt 0.7912 0.8675
vt 0.911514 0.552855 vt 0.7912 0.5529
vt 0.911514 0.867516 vt 0.7912 0.5234
vt 0.824288 0.490273 vt 0.3362 0.5000
vt 0.823601 0.500000 vt 0.3524 1.0000
vt 0.807415 0.555856 vt 0.3362 1.0000
vt 0.807415 0.514215 vt 0.6708 0.8441
vt 0.768089 0.000000 vt 0.6708 0.8147
vt 0.722404 0.000000 vt 0.6708 0.5000
vt 0.912144 0.427274 vt 0.6871 0.5000
vt 0.318396 0.990273 vt 0.3482 0.5000
vt 0.315359 1.000000 vt 0.3184 0.5000
vt 0.000000 1.000000 vt 0.3645 0.9903
vt 0.012060 0.990274 vt 0.6708 0.9903
vt 0.704866 0.490273 vt 0.6678 1.0000
vt 0.318396 0.490273 vt 0.7049 0.0000
vt 0.318396 0.009727 vt 0.0000 0.5000
vt 0.352433 0.009727 vt 0.0000 0.0000
vt 0.352433 0.490273 vt 0.6685 0.6398
vt 0.705553 0.490273 vt 0.6407 0.6398
vt 0.705553 0.009727 vt 0.6407 0.6306
vt 0.670829 0.509727 vt 0.6725 0.6306
vt 0.364493 0.509726 vt 0.4393 1.0000
vt 0.667792 0.500000 vt 0.4393 0.3191
vt 0.318396 0.000000 vt 0.5272 0.3791
vt 0.348216 0.000000 vt 0.5272 0.9846
vt 0.704866 0.500000 vt 0.0879 1.0000
vt 0.807415 0.867517 vt 0.0879 0.3191
vt 0.791172 0.867516 vt 0.1757 0.3345
vt 0.791171 0.552855 vt 0.1757 0.9400
vt 0.791171 0.523384 vt 0.3514 0.9846
vt 0.336190 0.500000 vt 0.3514 0.3791
vt 0.352433 0.999999 vt 0.0000 0.9400
vt 0.336190 0.999999 vt 0.0000 0.3345
vt 0.670829 0.844133 vt 0.3514 0.0000
vt 0.670829 0.814662 vt 0.3514 0.9611
vt 0.687072 0.500000 vt 0.2636 0.9611
vt 0.348216 0.500000 vt 0.2636 0.0000
vt 0.364493 0.990273 vt 0.1757 0.0000
vt 0.670829 0.990273 vt 0.1757 0.9611
vt 0.667792 1.000000 vn -0.8031 -0.5829 0.1239
vt 0.704866 0.000000 vn -0.8030 0.5829 0.1239
vt 0.000000 0.000001 vn 0.9700 0.2431 -0.0000
vt 0.668539 0.639838 vn 0.9479 0.2740 -0.1625
vt 0.640677 0.639838 vn 0.9479 -0.2740 -0.1625
vt 0.640677 0.630641 vn -0.0000 -1.0000 -0.0000
vt 0.672479 0.630641 vn 0.8316 -0.4534 0.3207
vt 0.439305 1.000000 vn 0.0000 1.0000 -0.0000
vt 0.439305 0.319104 vn 0.0000 0.0000 1.0000
vt 0.527160 0.379125 vn 0.0000 0.0000 -1.0000
vt 0.527160 0.984613 vn -0.8031 -0.5829 -0.1239
vt 0.087857 1.000000 vn -1.0000 -0.0000 -0.0000
vt 0.087857 0.319104 vn 0.8316 -0.4534 -0.3207
vt 0.175712 0.334491 vn 0.9479 -0.2740 0.1625
vt 0.175712 0.939979 vn 0.9700 -0.2431 -0.0000
vt 0.351448 0.984613 vn 0.9479 0.2740 0.1625
vt 0.351448 0.379125 vn -0.8030 0.5829 -0.1239
vt 0.000000 0.939979 vn 0.8875 -0.4609 -0.0000
vt 0.000000 0.334491 vn 0.8875 0.4609 -0.0000
vt 0.351448 0.000000 vn 0.8316 0.4534 -0.3207
vt 0.351448 0.961094 vn 0.8316 0.4534 0.3207
vt 0.263593 0.961094 vn -0.9847 -0.1745 0.0000
vt 0.263593 0.000000 vn -0.9847 0.1745 0.0000
vt 0.175736 0.000000
vt 0.175736 0.961094
vn -0.123900 0.803100 -0.582900
vn -0.123900 0.803000 0.582900
vn 0.000000 -0.970000 0.243100
vn 0.162500 -0.947900 0.274000
vn 0.162500 -0.947900 -0.274000
vn 0.000000 0.000000 -1.000000
vn -0.320700 -0.831600 -0.453400
vn 0.000000 -0.000000 1.000000
vn -1.000000 0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 0.123900 0.803100 -0.582900
vn 0.000000 1.000000 -0.000000
vn 0.320700 -0.831600 -0.453400
vn -0.162500 -0.947900 -0.274000
vn 0.000000 -0.970000 -0.243100
vn -0.162500 -0.947900 0.274000
vn 0.123900 0.803000 0.582900
vn 0.000000 -0.887500 -0.460900
vn 0.000000 -0.887500 0.460900
vn 0.320700 -0.831600 0.453400
vn -0.320700 -0.831600 0.453400
vn 0.000000 0.984700 -0.174500
vn -0.000000 0.984700 0.174500
vn 0.000000 -0.970600 0.240900
vn 0.163000 -0.948500 0.271500
vn 0.163000 -0.948500 -0.271500
vn -0.322100 -0.833000 -0.449800
vn 0.322100 -0.833000 -0.449800
vn -0.163000 -0.948500 -0.271500
vn 0.000000 -0.970600 -0.240900
vn -0.163000 -0.948500 0.271500
vn 0.000000 -0.889300 -0.457400
vn 0.000000 -0.889300 0.457400
vn 0.322100 -0.833000 0.449800
vn -0.322100 -0.833000 0.449800
g Cube.002_Cube.001_Cube.002_Cube.001_cover g Cube.002_Cube.001_Cube.002_Cube.001_cover
s off s off
f 47/1/1 31/2/1 33/3/1 52/4/1 f 47/1/1 31/2/1 33/3/1 52/4/1
@ -253,58 +216,37 @@ f 1/31/9 4/32/9 3/33/9 2/34/9
f 1/31/9 36/35/9 35/36/9 4/32/9 f 1/31/9 36/35/9 35/36/9 4/32/9
f 2/34/9 3/33/9 54/37/9 51/38/9 45/39/9 46/40/9 f 2/34/9 3/33/9 54/37/9 51/38/9 45/39/9 46/40/9
f 52/41/10 17/42/10 48/43/10 7/44/10 f 52/41/10 17/42/10 48/43/10 7/44/10
f 34/2/11 6/1/11 4/45/11 35/46/11 f 34/45/11 6/46/11 4/47/11 35/48/11
f 50/47/12 51/48/12 54/49/12 8/50/12 f 50/49/12 51/50/12 54/51/12 8/52/12
f 8/51/10 7/44/10 48/43/10 49/52/10 53/53/10 50/54/10 f 8/53/10 7/44/10 48/43/10 49/54/10 53/55/10 50/56/10
f 19/55/13 49/56/13 48/14/13 16/13/13 f 19/57/13 49/58/13 48/14/13 16/13/13
f 52/41/10 33/57/10 39/58/10 17/42/10 f 52/41/10 33/59/10 39/60/10 17/42/10
f 10/10/14 1/59/14 2/22/14 15/21/14 f 10/10/14 1/61/14 2/22/14 15/21/14
f 18/7/15 10/10/15 15/21/15 16/13/15 f 18/7/15 10/10/15 15/21/15 16/13/15
f 10/10/16 28/9/16 36/60/16 1/59/16 f 10/10/16 28/9/16 36/62/16 1/61/16
f 5/6/17 3/61/17 4/45/17 6/1/17 f 5/63/17 3/64/17 4/47/17 6/46/17
f 9/62/8 7/63/8 8/64/8 14/65/8 f 9/65/8 7/66/8 8/67/8 14/68/8
f 16/13/18 15/21/18 20/24/18 19/55/18 f 16/13/18 15/21/18 20/24/18 19/57/18
f 22/17/6 19/30/6 20/66/6 21/18/6 f 22/17/6 19/30/6 20/69/6 21/18/6
f 23/67/8 24/68/8 25/69/8 26/70/8 f 23/70/8 24/71/8 25/72/8 26/73/8
f 27/8/19 26/71/19 25/72/19 28/9/19 f 27/8/19 26/74/19 25/75/19 28/9/19
f 31/73/6 29/74/6 32/20/6 33/75/6 f 31/76/6 29/77/6 32/78/6 33/79/6
f 25/69/8 24/68/8 37/76/8 38/77/8 f 25/72/8 24/71/8 37/80/8 38/81/8
f 26/71/20 27/8/20 39/12/20 40/78/20 f 26/74/20 27/8/20 39/12/20 40/82/20
f 32/79/10 41/80/10 43/81/10 40/82/10 39/58/10 33/57/10 f 32/83/10 41/84/10 43/85/10 40/86/10 39/60/10 33/59/10
f 41/83/12 32/20/12 44/84/12 42/85/12 f 41/87/12 32/78/12 44/88/12 42/89/12
f 36/35/9 38/86/9 37/87/9 42/19/9 44/88/9 35/36/9 f 36/35/9 38/90/9 37/91/9 42/92/9 44/93/9 35/36/9
f 23/67/8 26/70/8 40/89/8 43/50/8 f 23/70/8 26/73/8 40/94/8 43/95/8
f 30/90/6 34/91/6 35/92/6 44/84/6 f 30/96/6 34/97/6 35/98/6 44/88/6
f 28/9/21 25/72/21 38/93/21 36/60/21 f 28/9/21 25/75/21 38/99/21 36/62/21
f 29/74/6 30/90/6 44/84/6 32/20/6 f 29/77/6 30/96/6 44/88/6 32/78/6
f 41/26/8 42/94/8 37/76/8 24/68/8 23/67/8 43/50/8 f 41/100/8 42/101/8 37/80/8 24/71/8 23/70/8 43/95/8
f 54/26/8 11/25/8 14/65/8 8/64/8 f 54/26/8 11/25/8 14/68/8 8/67/8
f 46/95/6 45/96/6 21/97/6 20/98/6 f 46/102/6 45/103/6 21/104/6 20/105/6
g Cube.002_Cube.001_Cube.002_Cube.001_edges g Cube.002_Cube.001_Cube.002_Cube.001_edges
f 13/99/10 47/100/10 9/101/10 14/102/10 f 13/106/10 47/107/10 9/108/10 14/109/10
f 6/103/9 12/104/9 11/105/9 5/106/9 f 6/110/9 12/111/9 11/112/9 5/113/9
f 13/99/10 29/107/10 31/108/10 47/100/10 f 13/106/10 29/114/10 31/115/10 47/107/10
f 6/103/9 34/109/9 30/110/9 12/104/9 f 6/110/9 34/116/9 30/117/9 12/111/9
f 14/111/22 11/112/22 12/113/22 13/114/22 f 14/118/22 11/119/22 12/120/22 13/121/22
f 29/115/23 13/114/23 12/113/23 30/116/23 f 29/122/23 13/121/23 12/120/23 30/123/23
g Cube.002_Cube.001_Cube.002_Cube.001_trim
f 61/7/24 70/8/24 71/9/24 57/10/24
f 70/8/25 61/7/25 60/11/25 75/12/25
f 59/13/26 82/14/26 60/11/26 61/7/26
f 84/15/6 86/16/6 65/17/6 64/18/6 80/19/6 85/20/6
f 58/21/27 56/22/27 81/23/27 63/24/27
f 65/17/6 86/16/6 83/29/6 62/30/6
f 62/55/28 83/56/28 82/14/28 59/13/28
f 57/10/29 55/59/29 56/22/29 58/21/29
f 61/7/30 57/10/30 58/21/30 59/13/30
f 57/10/31 71/9/31 72/60/31 55/59/31
f 59/13/32 58/21/32 63/24/32 62/55/32
f 65/17/6 62/30/6 63/66/6 64/18/6
f 66/67/8 67/68/8 68/69/8 69/70/8
f 70/8/33 69/71/33 68/72/33 71/9/33
f 68/69/8 67/68/8 73/76/8 74/77/8
f 69/71/34 70/8/34 75/12/34 76/78/34
f 66/67/8 69/70/8 76/89/8 79/50/8
f 71/9/35 68/72/35 74/93/35 72/60/35
f 77/26/8 78/94/8 73/76/8 67/68/8 66/67/8 79/50/8
f 81/95/6 80/96/6 64/97/6 63/98/6

View File

@ -1,327 +1,335 @@
# Blender v2.72 (sub 0) OBJ File: 'book-open.blend' # Blender v2.78 (sub 0) OBJ File: 'book-open.blend'
# www.blender.org # www.blender.org
o Cube.002_Cube.001 o Cube.002_Cube.001
v -0.216625 0.012428 -0.485966 v -0.012428 -0.485966 0.216625
v 0.220555 -0.000000 -0.486750 v 0.000000 -0.486750 -0.220555
v 0.220555 0.321341 -0.485966 v -0.321341 -0.485966 -0.220555
v -0.208120 -0.000001 -0.462863 v 0.000001 -0.462863 0.208120
v -0.208120 0.310920 -0.485966 v -0.310920 -0.485966 0.208120
v -0.208120 0.306022 -0.464409 v -0.306022 -0.464409 0.208120
v 0.212051 0.306022 -0.464409 v -0.306022 -0.464409 -0.212051
v 0.212051 0.310921 -0.485966 v -0.310921 -0.485966 -0.212051
v 0.212050 -0.000000 -0.462862 v 0.000000 -0.462862 -0.212050
v 0.212050 0.016802 -0.500002 v -0.016802 -0.500002 -0.212050
v -0.208120 0.016801 -0.500002 v -0.016801 -0.500002 0.208120
v -0.208120 0.046213 -0.500002 v -0.046213 -0.500002 0.208120
v 0.212050 0.046214 -0.500002 v -0.046214 -0.500002 -0.212050
v -0.216625 0.046213 -0.500002 v -0.046213 -0.500002 0.216625
v -0.216625 0.020445 -0.500002 v -0.020445 -0.500002 0.216625
v 0.220555 0.012429 -0.485966 v -0.012429 -0.485966 -0.220555
v 0.220555 0.020446 -0.500002 v -0.020446 -0.500002 -0.220555
v 0.220555 0.321340 -0.500002 v -0.321340 -0.500002 -0.220555
v -0.216624 0.321341 -0.500002 v -0.321341 -0.500002 0.216624
v 0.220555 0.046214 -0.500002 v -0.046214 -0.500002 -0.220555
v -0.216624 0.321341 -0.485966 v -0.321341 -0.485966 0.216624
v -0.208120 0.238235 -0.450057 v -0.238235 -0.450057 0.208120
v -0.216625 -0.000001 -0.486750 v 0.000001 -0.486750 0.216625
v 0.212051 0.238236 -0.450057 v -0.238236 -0.450057 -0.212051
v -0.208120 -0.306023 -0.464409 v 0.306023 -0.464409 0.208120
v 0.212051 -0.306023 -0.464409 v 0.306023 -0.464409 -0.212051
v -0.208120 -0.238237 -0.450057 v 0.238237 -0.450057 0.208120
v 0.212051 -0.238237 -0.450057 v 0.238236 -0.450057 -0.212051
v 0.212050 -0.046214 -0.500003 v 0.046214 -0.500003 -0.212050
v -0.208120 -0.046215 -0.500003 v 0.046215 -0.500003 0.208120
v -0.208120 -0.016803 -0.500003 v 0.016803 -0.500003 0.208120
v 0.212050 -0.016803 -0.500003 v 0.016802 -0.500003 -0.212050
v -0.216625 -0.000001 -0.481442 v 0.000001 -0.481442 0.216625
v 0.220555 -0.000000 -0.481442 v 0.000000 -0.481442 -0.220555
v 0.212051 -0.310922 -0.485967 v 0.310922 -0.485967 -0.212051
v -0.208120 -0.310922 -0.485967 v 0.310922 -0.485967 0.208120
v 0.220555 -0.321342 -0.485967 v 0.321342 -0.485967 -0.220555
v -0.216625 -0.012430 -0.485967 v 0.012430 -0.485967 0.216625
v -0.216625 -0.046215 -0.500003 v 0.046215 -0.500003 0.216625
v -0.216625 -0.020447 -0.500003 v 0.020447 -0.500003 0.216625
v 0.220555 -0.012429 -0.485967 v 0.012429 -0.485967 -0.220555
v 0.220555 -0.020446 -0.500003 v 0.020446 -0.500003 -0.220555
v 0.220555 -0.321341 -0.500003 v 0.321341 -0.500003 -0.220555
v -0.216624 -0.321343 -0.500003 v 0.321343 -0.500003 0.216624
v 0.220555 -0.046214 -0.500003 v 0.046214 -0.500003 -0.220555
v -0.216624 -0.321343 -0.485967 v 0.321343 -0.485967 0.216624
v -0.208120 -0.000001 -0.486750 v 0.000001 -0.486750 0.208120
v 0.212050 -0.000000 -0.486750 v 0.000000 -0.486750 -0.212050
v 0.212051 -0.086920 -0.442244 v 0.086920 -0.442244 -0.212051
v -0.208120 -0.086920 -0.442244 v 0.086920 -0.442244 0.208120
v 0.212051 0.086847 -0.442244 v -0.086847 -0.442244 -0.212050
v -0.208120 0.086847 -0.442244 v -0.086847 -0.442244 0.208120
v 0.212050 0.043405 -0.447755 v -0.043405 -0.447755 -0.212050
v -0.208120 0.043405 -0.447755 v -0.043405 -0.447755 0.208120
v 0.212050 -0.043478 -0.447755 v 0.043478 -0.447755 -0.212050
v -0.208120 -0.043478 -0.447755 v 0.043478 -0.447755 0.208120
v -0.216625 -0.010224 -0.490836 v 0.010224 -0.490836 0.216625
v -0.216625 0.006214 -0.482857 v -0.006214 -0.482857 0.216625
v 0.220555 0.006214 -0.482857 v -0.006214 -0.482857 -0.220555
v -0.208120 0.008400 -0.490836 v -0.008400 -0.490836 0.208120
v 0.212050 0.008401 -0.490836 v -0.008401 -0.490836 -0.212050
v 0.220555 0.010223 -0.490836 v -0.010223 -0.490836 -0.220555
v -0.216625 0.010222 -0.490836 v -0.010222 -0.490836 0.216625
v 0.220555 -0.010223 -0.490836 v 0.010223 -0.490836 -0.220555
v 0.212050 -0.008401 -0.490836 v 0.008401 -0.490836 -0.212050
v -0.208120 -0.008402 -0.490836 v 0.008402 -0.490836 0.208120
v 0.220555 -0.006215 -0.482858 v 0.006215 -0.482858 -0.220555
v -0.216625 -0.006215 -0.482858 v 0.006215 -0.482858 0.216625
v 0.212050 0.012429 -0.485966 v -0.012429 -0.485966 -0.212050
v 0.212050 -0.000000 -0.481442 v 0.000000 -0.481442 -0.212050
v 0.212050 -0.012429 -0.485967 v 0.012429 -0.485967 -0.212050
v 0.212050 0.006214 -0.482857 v -0.006214 -0.482857 -0.212050
v 0.212050 -0.006215 -0.482858 v 0.006215 -0.482858 -0.212050
v -0.208120 0.012428 -0.485966 v -0.012428 -0.485966 0.208120
v -0.208120 -0.000001 -0.481442 v 0.000001 -0.481442 0.208120
v -0.208120 -0.012430 -0.485967 v 0.012430 -0.485967 0.208120
v -0.208120 0.006214 -0.482857 v -0.006214 -0.482857 0.208120
v -0.208120 -0.006215 -0.482858 v 0.006215 -0.482858 0.208120
vt 0.965735 0.839196 vt 0.9657 0.8392
vt 0.711783 0.839196 vt 0.7118 0.8392
vt 0.711783 0.832541 vt 0.7118 0.8325
vt 0.711783 0.503765 vt 0.7118 0.5038
vt 0.711783 0.497110 vt 0.7118 0.4971
vt 0.965736 0.497110 vt 0.9657 0.4971
vt 0.395683 0.494736 vt 0.3957 0.4947
vt 0.395683 0.261171 vt 0.3957 0.2612
vt 0.403533 0.261171 vt 0.4035 0.2612
vt 0.403532 0.502890 vt 0.4035 0.5029
vt 0.687998 0.839196 vt 0.6880 0.8392
vt 0.684635 0.832541 vt 0.6846 0.8325
vt 0.987044 0.738829 vt 0.9870 0.7388
vt 0.987044 0.497110 vt 0.9870 0.4971
vt 1.000000 0.497110 vt 1.0000 0.4971
vt 0.999999 0.712393 vt 1.0000 0.7124
vt 0.999999 0.732556 vt 1.0000 0.7326
vt 0.992051 0.000000 vt 0.9921 0.0000
vt 0.992051 0.342086 vt 0.9921 0.3421
vt 0.979145 0.342086 vt 0.9791 0.3421
vt 0.979145 0.000000 vt 0.9791 0.0000
vt 0.969912 1.000000 vt 0.9699 1.0000
vt 0.969911 0.758280 vt 0.9699 0.7583
vt 0.982867 0.764553 vt 0.9829 0.7646
vt 0.982867 0.784716 vt 0.9829 0.7847
vt 0.982868 0.999999 vt 0.9829 1.0000
vt 0.403533 0.241720 vt 0.4035 0.2417
vt 0.395683 0.241720 vt 0.3957 0.2417
vt 0.395683 0.008154 vt 0.3957 0.0082
vt 0.403532 0.000000 vt 0.4035 0.0000
vt 0.684634 0.503765 vt 0.6846 0.5038
vt 0.007850 0.008154 vt 0.0078 0.0082
vt 0.000000 0.000000 vt 0.0000 0.0000
vt 0.657486 0.832541 vt 0.6575 0.8325
vt 0.657486 0.503765 vt 0.6575 0.5038
vt 0.657486 0.497110 vt 0.6846 0.5038
vt 0.681271 0.497110 vt 0.6846 0.8325
vt 0.969911 0.497110 vt 0.6575 0.4971
vt 0.982867 0.497110 vt 0.6813 0.4971
vt 0.982868 0.712393 vt 0.9699 0.4971
vt 0.982868 0.732556 vt 0.9829 0.4971
vt 0.969912 0.738829 vt 0.9829 0.7124
vt 0.966239 0.000000 vt 0.9829 0.7326
vt 0.966239 0.342086 vt 0.9699 0.7388
vt 0.987044 0.758280 vt 0.9662 0.0000
vt 1.000000 0.764553 vt 0.9791 0.0000
vt 1.000000 0.784716 vt 0.9791 0.3421
vt 0.999999 1.000000 vt 0.9662 0.3421
vt 0.987043 1.000000 vt 0.9870 0.7583
vt 0.681271 0.839196 vt 1.0000 0.7646
vt 0.657486 0.839196 vt 1.0000 0.7847
vt 0.000000 0.261171 vt 1.0000 1.0000
vt 0.007850 0.261171 vt 0.9870 1.0000
vt 0.007850 0.494736 vt 0.6813 0.8392
vt 0.000000 0.502891 vt 0.6575 0.8392
vt 0.403534 0.839196 vt 0.0000 0.2612
vt 0.403533 0.497110 vt 0.0079 0.2612
vt 0.687998 0.497110 vt 0.0078 0.4947
vt 0.974407 0.740555 vt 0.0000 0.5029
vt 0.970635 0.748555 vt 0.4035 0.8392
vt 0.967042 0.743692 vt 0.4035 0.4971
vt 0.965736 0.748555 vt 0.6880 0.4971
vt 0.967042 0.753417 vt 0.9744 0.7406
vt 0.974406 0.756554 vt 0.9706 0.7486
vt 0.991539 0.740555 vt 0.9670 0.7437
vt 0.987768 0.748555 vt 0.9657 0.7486
vt 0.984174 0.743692 vt 0.9670 0.7534
vt 0.982868 0.748555 vt 0.9744 0.7566
vt 0.984174 0.753417 vt 0.9915 0.7406
vt 0.991539 0.756554 vt 0.9878 0.7486
vt 0.044849 0.844977 vt 0.9842 0.7437
vt 0.035593 0.844977 vt 0.9829 0.7486
vt 0.035446 0.838322 vt 0.9842 0.7534
vt 0.044554 0.838322 vt 0.9915 0.7566
vt 0.956803 0.342087 vt 0.0448 0.8450
vt 0.956803 0.335432 vt 0.0356 0.8450
vt 0.964557 0.335432 vt 0.0354 0.8383
vt 0.947366 0.342087 vt 0.0446 0.8383
vt 0.949048 0.335432 vt 0.9662 0.3421
vt 0.045143 0.838322 vt 0.9568 0.3421
vt 0.054251 0.838322 vt 0.9568 0.3354
vt 0.054104 0.844977 vt 0.9646 0.3354
vt 0.044554 0.509546 vt 0.9474 0.3421
vt 0.035446 0.509546 vt 0.9490 0.3354
vt 0.035593 0.502890 vt 0.0448 0.8450
vt 0.044849 0.502891 vt 0.0451 0.8383
vt 0.964557 0.006655 vt 0.0543 0.8383
vt 0.956803 0.006655 vt 0.0541 0.8450
vt 0.956803 0.000000 vt 0.0446 0.5095
vt 0.949048 0.006655 vt 0.0354 0.5095
vt 0.947366 0.000000 vt 0.0356 0.5029
vt 0.054104 0.502891 vt 0.0448 0.5029
vt 0.054251 0.509546 vt 0.9662 0.0000
vt 0.045143 0.509546 vt 0.9646 0.0067
vt 0.000000 0.256308 vt 0.9568 0.0067
vt 0.000000 0.251445 vt 0.9568 0.0000
vt 0.007850 0.251445 vt 0.9490 0.0067
vt 0.007850 0.256308 vt 0.9474 0.0000
vt 0.000000 0.246582 vt 0.0448 0.5029
vt 0.000000 0.241720 vt 0.0541 0.5029
vt 0.007850 0.241720 vt 0.0543 0.5095
vt 0.007850 0.246582 vt 0.0451 0.5095
vt 0.403533 0.251445 vt 0.0000 0.2563
vt 0.403533 0.256308 vt 0.0000 0.2514
vt 0.395683 0.256308 vt 0.0079 0.2514
vt 0.395683 0.251445 vt 0.0079 0.2563
vt 0.403533 0.246582 vt 0.0000 0.2466
vt 0.395683 0.246582 vt 0.0000 0.2417
vt 0.779948 0.000000 vt 0.0079 0.2417
vt 0.779948 1.000000 vt 0.0079 0.2466
vt 0.724984 1.000000 vt 0.4035 0.2514
vt 0.724983 0.000000 vt 0.4035 0.2563
vt 0.717416 1.000000 vt 0.3957 0.2563
vt 0.662450 1.000000 vt 0.3957 0.2514
vt 0.662449 0.000000 vt 0.4035 0.2466
vt 0.717416 0.000000 vt 0.3957 0.2466
vt 0.184400 1.000000 vt 0.7799 0.0000
vt 0.126957 0.970419 vt 0.7799 1.0000
vt 0.221962 0.896695 vt 0.7250 1.0000
vt 0.485666 0.793134 vt 0.7250 0.0000
vt 0.471964 0.896524 vt 0.7174 1.0000
vt 0.376957 0.970419 vt 0.6624 1.0000
vt 0.216239 0.433002 vt 0.6624 0.0000
vt 0.126957 0.260013 vt 0.7174 0.0000
vt 0.059402 0.000000 vt 0.1844 1.0000
vt 0.001957 0.029581 vt 0.1270 0.9704
vt 0.009688 0.014790 vt 0.2220 0.8967
vt 0.235664 0.793305 vt 0.4857 0.7931
vt 0.013207 0.000000 vt 0.4720 0.8965
vt 0.091241 0.566998 vt 0.3770 0.9704
vt 0.055557 0.728328 vt 0.2162 0.4330
vt 0.001957 0.739987 vt 0.1270 0.2600
vt 0.110666 0.206866 vt 0.0594 0.0000
vt 0.134686 0.985210 vt 0.0020 0.0296
vt 0.096964 0.103476 vt 0.0097 0.0148
vt 0.180555 0.271672 vt 0.2357 0.7933
vt 0.138205 1.000000 vt 0.0132 0.0000
vt 0.341239 0.566998 vt 0.0912 0.5670
vt 0.305555 0.728328 vt 0.0556 0.7283
vt 0.251957 0.739987 vt 0.0020 0.7400
vt 0.251957 0.029581 vt 0.1107 0.2069
vt 0.360664 0.206695 vt 0.1347 0.9852
vt 0.388207 1.000000 vt 0.0970 0.1035
vt 0.384688 0.985210 vt 0.1806 0.2717
vt 0.434402 1.000000 vt 0.1382 1.0000
vt 0.346962 0.103305 vt 0.3412 0.5670
vt 0.466241 0.433002 vt 0.3056 0.7283
vt 0.376957 0.260013 vt 0.2520 0.7400
vt 0.309400 0.000000 vt 0.2520 0.0296
vt 0.259687 0.014790 vt 0.3607 0.2067
vt 0.263205 0.000000 vt 0.3882 1.0000
vt 0.430558 0.271672 vt 0.3847 0.9852
vt 0.636817 0.156314 vt 0.4344 1.0000
vt 0.875000 0.156314 vt 0.3470 0.1033
vt 0.875000 0.984312 vt 0.4662 0.4330
vt 0.636817 0.984312 vt 0.3770 0.2600
vt 0.000000 0.156314 vt 0.3094 0.0000
vt 0.125000 0.156314 vt 0.2597 0.0148
vt 0.125000 0.984312 vt 0.2632 0.0000
vt 0.000000 0.984313 vt 0.4306 0.2717
vt 1.000000 0.156314 vt 0.6368 0.1563
vt 1.000000 0.984313 vt 0.8750 0.1563
vt 0.363296 0.156314 vt 0.8750 0.9843
vt 0.431676 0.156314 vt 0.6368 0.9843
vt 0.431676 0.984311 vt 0.0000 0.1563
vt 0.363296 0.984312 vt 0.1250 0.1563
vt 0.500000 0.156314 vt 0.1250 0.9843
vt 0.568437 0.156314 vt 0.0000 0.9843
vt 0.568437 0.984311 vt 1.0000 0.1563
vt 0.500000 0.984311 vt 1.0000 0.9843
vn 0.577300 0.577300 -0.577300 vt 0.3633 0.1563
vn 0.707100 0.000000 -0.707100 vt 0.4317 0.1563
vn 0.000000 0.000000 -1.000000 vt 0.4317 0.9843
vn -0.707100 0.000000 -0.707100 vt 0.3633 0.9843
vn -0.577300 0.577300 -0.577300 vt 0.5000 0.1563
vn -0.246900 -0.280700 0.927500 vt 0.5684 0.1563
vn -0.658800 -0.172900 0.732100 vt 0.5684 0.9843
vn -0.762700 -0.148700 0.629400 vt 0.5000 0.9843
vn -0.577300 -0.577300 0.577300 vn -0.5773 -0.5773 -0.5773
vn 0.668800 -0.216600 -0.711100 vn 0.0000 -0.7071 -0.7071
vn 0.071700 -0.428700 -0.900500 vn 0.0000 -1.0000 0.0000
vn -0.762700 0.148700 0.629400 vn 0.0000 -0.7071 0.7071
vn -0.577300 0.577300 0.577300 vn -0.5773 -0.5773 0.5773
vn -0.668800 -0.216600 -0.711100 vn 0.2807 0.9275 0.2469
vn 0.577300 0.577300 0.577300 vn 0.1729 0.7321 0.6588
vn 0.762700 0.148700 0.629400 vn 0.1487 0.6294 0.7627
vn -0.658800 0.172900 0.732100 vn 0.5773 0.5773 0.5773
vn -0.246900 0.280700 0.927500 vn 0.2166 -0.7111 -0.6688
vn -0.071700 -0.428700 -0.900500 vn 0.4287 -0.9005 -0.0717
vn 0.246900 0.280700 0.927500 vn -0.1487 0.6294 0.7627
vn -0.071700 0.428800 -0.900500 vn -0.5773 0.5773 0.5773
vn 0.071700 0.428800 -0.900500 vn 0.2166 -0.7111 0.6688
vn -0.668800 0.216600 -0.711100 vn -0.5773 0.5773 -0.5773
vn 0.577300 -0.577300 0.577300 vn -0.1487 0.6294 -0.7627
vn 0.577300 -0.577300 -0.577300 vn -0.1729 0.7321 0.6588
vn 0.668800 0.216600 -0.711100 vn -0.2807 0.9275 0.2469
vn 0.762700 -0.148700 0.629400 vn 0.4287 -0.9005 0.0717
vn -0.577300 -0.577300 -0.577300 vn -0.2807 0.9275 -0.2469
vn 0.658800 -0.172900 0.732100 vn -0.4288 -0.9005 0.0717
vn 0.246900 -0.280700 0.927500 vn -0.4288 -0.9005 -0.0717
vn 0.794100 0.350300 -0.496700 vn -0.2166 -0.7111 0.6688
vn 0.814600 0.000000 -0.580000 vn 0.5773 0.5773 -0.5773
vn 0.681100 -0.246900 0.689300 vn 0.5773 -0.5773 -0.5773
vn 0.660400 0.000000 0.750900 vn -0.2166 -0.7111 -0.6688
vn 0.681100 0.246800 0.689300 vn 0.1487 0.6294 -0.7627
vn 0.794100 -0.350300 -0.496700 vn 0.5773 -0.5773 0.5773
vn -0.794100 -0.350300 -0.496700 vn 0.1729 0.7321 -0.6588
vn -0.814600 0.000000 -0.580000 vn 0.2807 0.9275 -0.2469
vn -0.681100 0.246800 0.689300 vn -0.3503 -0.4967 -0.7941
vn -0.660400 0.000000 0.750900 vn 0.0000 -0.5800 -0.8146
vn -0.681100 -0.246900 0.689300 vn 0.2469 0.6893 -0.6811
vn -0.794100 0.350300 -0.496700 vn 0.0000 0.7509 -0.6604
vn -0.062900 0.569600 -0.819500 vn -0.2468 0.6893 -0.6811
vn -0.023700 0.000000 -0.999700 vn 0.3503 -0.4967 -0.7941
vn -0.062900 -0.569600 -0.819500 vn 0.3503 -0.4967 0.7941
vn 0.062900 0.569600 -0.819500 vn 0.0000 -0.5800 0.8146
vn 0.023700 0.000000 -0.999700 vn -0.2468 0.6893 0.6811
vn 0.062900 -0.569600 -0.819500 vn 0.0000 0.7509 0.6604
vn 0.760600 0.000000 0.649100 vn 0.2469 0.6893 0.6811
vn 0.735000 -0.228600 0.638300 vn -0.3503 -0.4967 0.7941
vn 0.658800 0.172900 0.732100 vn -0.5696 -0.8195 0.0629
vn 0.735000 0.228600 0.638300 vn 0.0000 -0.9997 0.0237
vn -0.735000 -0.228600 0.638300 vn 0.5696 -0.8195 0.0629
vn -0.760600 0.000000 0.649100 vn -0.5696 -0.8195 -0.0629
vn -0.735000 0.228600 0.638300 vn 0.0000 -0.9997 -0.0237
vn -0.603500 0.559600 0.567900 vn 0.5696 -0.8195 -0.0629
vn 0.603500 0.559600 0.567900 vn 0.0000 0.6491 -0.7606
vn 0.603500 -0.559600 0.567900 vn 0.2286 0.6383 -0.7350
vn -0.603500 -0.559600 0.567900 vn -0.1729 0.7321 -0.6588
vn 0.789000 -0.000200 0.614300 vn -0.2286 0.6383 -0.7350
vn 0.684400 -0.166600 0.709800 vn 0.2286 0.6383 0.7350
vn -0.687600 0.027100 0.725500 vn 0.0000 0.6491 0.7606
vn -0.684400 0.166400 0.709800 vn -0.2286 0.6383 0.7350
vn 0.689800 0.093900 0.717800 vn -0.5596 0.5679 0.6035
vn 0.687600 -0.027100 0.725500 vn -0.5596 0.5679 -0.6035
vn 0.689800 -0.093900 0.717800 vn 0.5596 0.5679 -0.6035
vn 0.687600 0.027100 0.725500 vn 0.5596 0.5679 0.6035
vn 0.684400 0.166400 0.709800 vn 0.0002 0.6143 -0.7890
vn -0.689800 0.093900 0.717800 vn 0.1666 0.7098 -0.6844
vn -0.687600 -0.027100 0.725500 vn -0.0271 0.7255 0.6876
vn -0.789000 -0.000200 0.614300 vn -0.1664 0.7098 0.6844
vn -0.684400 -0.166600 0.709800 vn -0.0939 0.7178 -0.6898
vn -0.689800 -0.093900 0.717800 vn 0.0271 0.7255 -0.6876
vn 0.0939 0.7178 -0.6898
vn -0.0271 0.7255 -0.6876
vn -0.1664 0.7098 -0.6844
vn -0.0939 0.7178 0.6898
vn 0.0271 0.7255 0.6876
vn 0.0002 0.6143 0.7890
vn 0.1666 0.7098 0.6844
vn 0.0939 0.7178 0.6898
g Cube.002_Cube.001_Cube.002_Cube.001_cover g Cube.002_Cube.001_Cube.002_Cube.001_cover
s 1 s 1
f 18/1/1 20/2/2 13/3/3 12/4/3 14/5/4 19/6/5 f 18/1/1 20/2/2 13/3/3 12/4/3 14/5/4 19/6/5
@ -333,86 +341,86 @@ f 3/22/15 16/23/16 17/24/10 20/25/2 18/26/1
f 1/27/12 74/28/17 5/29/18 21/30/13 f 1/27/12 74/28/17 5/29/18 21/30/13
f 13/3/3 10/12/11 11/31/19 12/4/3 f 13/3/3 10/12/11 11/31/19 12/4/3
f 21/30/13 5/29/18 8/32/20 3/33/15 f 21/30/13 5/29/18 8/32/20 3/33/15
f 29/34/3 30/35/3 31/31/21 32/12/22 f 29/34/3 30/35/3 31/36/21 32/37/22
f 31/31/21 30/35/3 39/36/4 40/37/23 f 31/36/21 30/35/3 39/38/4 40/39/23
f 37/38/24 43/39/25 45/40/2 42/41/26 41/42/27 f 37/40/24 43/41/25 45/42/2 42/43/26 41/44/27
f 43/43/25 37/21/24 46/20/9 44/44/28 f 43/45/25 37/46/24 46/47/9 44/48/28
f 38/45/8 40/46/23 39/47/4 44/48/28 46/49/9 f 38/49/8 40/50/23 39/51/4 44/52/28 46/53/9
f 29/34/3 32/12/22 42/50/26 45/51/2 f 29/34/3 32/37/22 42/54/26 45/55/2
f 41/52/27 71/53/29 35/54/30 37/55/24 f 41/56/27 71/57/29 35/58/30 37/59/24
f 35/54/30 36/7/6 46/10/9 37/55/24 f 35/58/30 36/7/6 46/10/9 37/59/24
f 43/56/25 44/57/28 39/36/4 30/35/3 29/34/3 45/51/2 f 43/60/25 44/61/28 39/38/4 30/35/3 29/34/3 45/55/2
f 15/58/14 14/5/4 12/4/3 11/31/19 f 15/62/14 14/5/4 12/4/3 11/31/19
f 42/41/26 64/59/31 41/42/27 f 42/43/26 64/63/31 41/44/27
f 41/42/27 64/59/31 2/60/32 67/61/33 f 41/44/27 64/63/31 2/64/32 67/65/33
f 67/61/33 2/60/32 34/62/34 f 67/65/33 2/64/32 34/66/34
f 34/62/34 2/60/32 59/63/35 f 34/66/34 2/64/32 59/67/35
f 2/60/32 62/64/36 16/23/16 59/63/35 f 2/64/32 62/68/36 16/23/16 59/67/35
f 16/23/16 62/64/36 17/24/10 f 16/23/16 62/68/36 17/24/10
f 15/17/14 63/65/37 1/13/12 f 15/17/14 63/69/37 1/13/12
f 23/66/38 58/67/39 1/13/12 63/65/37 f 23/70/38 58/71/39 1/13/12 63/69/37
f 58/67/39 23/66/38 33/68/40 f 58/71/39 23/70/38 33/72/40
f 68/69/41 33/68/40 23/66/38 f 68/73/41 33/72/40 23/70/38
f 38/45/8 68/69/41 23/66/38 57/70/42 f 38/49/8 68/73/41 23/70/38 57/74/42
f 57/70/42 40/46/23 38/45/8 f 57/74/42 40/50/23 38/49/8
f 40/71/23 57/72/42 66/73/43 31/74/21 f 40/75/23 57/76/42 66/77/43 31/78/21
f 57/44/42 23/75/38 47/76/44 66/77/43 f 57/79/42 23/80/38 47/81/44 66/82/43
f 47/76/44 23/75/38 63/78/37 60/79/45 f 47/81/44 23/80/38 63/83/37 60/84/45
f 15/71/14 11/80/19 60/81/45 63/82/37 f 15/85/14 11/86/19 60/87/45 63/88/37
f 32/83/22 65/84/46 64/85/31 42/86/26 f 32/89/22 65/90/46 64/91/31 42/92/26
f 64/43/31 65/87/46 48/88/47 2/89/32 f 64/93/31 65/94/46 48/95/47 2/96/32
f 48/88/47 61/90/48 62/91/36 2/89/32 f 48/95/47 61/97/48 62/98/36 2/96/32
f 17/86/10 62/92/36 61/93/48 10/94/11 f 17/99/10 62/100/36 61/101/48 10/102/11
f 67/95/33 34/96/34 70/97/49 73/98/50 f 67/103/33 34/104/34 70/105/49 73/106/50
f 59/99/35 16/100/16 69/101/51 72/102/52 f 59/107/35 16/108/16 69/109/51 72/110/52
f 41/52/27 67/95/33 73/98/50 71/53/29 f 41/56/27 67/103/33 73/106/50 71/57/29
f 34/96/34 59/99/35 72/102/52 70/97/49 f 34/104/34 59/107/35 72/110/52 70/105/49
f 33/103/40 68/104/41 78/105/53 75/106/54 f 33/111/40 68/112/41 78/113/53 75/114/54
f 1/27/12 58/107/39 77/108/55 74/28/17 f 1/27/12 58/115/39 77/116/55 74/28/17
f 68/104/41 38/9/8 76/8/7 78/105/53 f 68/112/41 38/9/8 76/8/7 78/113/53
f 58/107/39 33/103/40 75/106/54 77/108/55 f 58/115/39 33/111/40 75/114/54 77/116/55
f 8/32/20 69/101/51 16/100/16 3/33/15 f 8/32/20 69/109/51 16/108/16 3/33/15
f 10/94/11 61/93/48 60/81/45 11/80/19 f 10/102/11 61/101/48 60/87/45 11/86/19
f 47/76/44 60/79/45 61/90/48 48/88/47 f 47/81/44 60/84/45 61/97/48 48/95/47
f 65/87/46 66/77/43 47/76/44 48/88/47 f 65/94/46 66/82/43 47/81/44 48/95/47
f 31/74/21 66/73/43 65/84/46 32/83/22 f 31/78/21 66/77/43 65/90/46 32/89/22
g Cube.002_Cube.001_Cube.002_Cube.001_edges g Cube.002_Cube.001_Cube.002_Cube.001_edges
f 8/109/20 5/110/18 6/111/56 7/112/57 f 8/117/20 5/118/18 6/119/56 7/120/57
f 35/113/30 26/114/58 25/115/59 36/116/6 f 35/121/30 26/122/58 25/123/59 36/124/6
f 9/117/60 69/118/51 53/119/61 f 9/125/60 69/126/51 53/127/61
f 50/120/62 56/121/63 76/122/7 f 50/128/62 56/129/63 76/130/7
f 24/123/64 69/118/51 8/124/20 f 24/131/64 69/126/51 8/132/20
f 9/125/60 71/126/29 73/127/50 f 9/133/60 71/134/29 73/135/50
f 51/128/65 53/119/61 69/118/51 f 51/136/65 53/127/61 69/126/51
f 9/125/60 73/127/50 70/129/49 f 9/133/60 73/135/50 70/137/49
f 28/130/66 26/131/58 35/132/30 f 28/138/66 26/139/58 35/140/30
f 71/126/29 49/133/67 28/130/66 f 71/134/29 49/141/67 28/138/66
f 72/134/52 69/118/51 9/117/60 f 72/142/52 69/126/51 9/125/60
f 71/126/29 55/135/68 49/133/67 f 71/134/29 55/143/68 49/141/67
f 28/130/66 35/132/30 71/126/29 f 28/138/66 35/140/30 71/134/29
f 24/123/64 8/124/20 7/136/57 f 24/131/64 8/132/20 7/144/57
f 69/118/51 24/123/64 51/128/65 f 69/126/51 24/131/64 51/136/65
f 9/125/60 55/135/68 71/126/29 f 9/133/60 55/143/68 71/134/29
f 70/137/49 72/134/52 9/117/60 f 70/145/49 72/142/52 9/125/60
f 22/138/69 6/139/56 5/140/18 f 22/146/69 6/147/56 5/148/18
f 74/141/17 52/142/70 22/138/69 f 74/149/17 52/150/70 22/146/69
f 75/143/54 78/144/53 4/145/71 f 75/151/54 78/152/53 4/153/71
f 74/141/17 54/146/72 52/142/70 f 74/149/17 54/154/72 52/150/70
f 22/138/69 5/140/18 74/141/17 f 22/146/69 5/148/18 74/149/17
f 27/147/73 76/122/7 36/148/6 f 27/155/73 76/130/7 36/156/6
f 4/149/71 74/141/17 77/150/55 f 4/157/71 74/149/17 77/158/55
f 27/147/73 50/120/62 76/122/7 f 27/155/73 50/128/62 76/130/7
f 4/149/71 77/150/55 75/151/54 f 4/157/71 77/158/55 75/159/54
f 4/145/71 78/144/53 76/122/7 f 4/153/71 78/152/53 76/130/7
f 4/149/71 54/146/72 74/141/17 f 4/157/71 54/154/72 74/149/17
f 27/147/73 36/148/6 25/152/59 f 27/155/73 36/156/6 25/160/59
f 56/121/63 4/145/71 76/122/7 f 56/129/63 4/153/71 76/130/7
g Cube.002_Cube.001_Cube.002_Cube.001_pages g Cube.002_Cube.001_Cube.002_Cube.001_pages
f 50/153/62 27/154/73 28/155/66 49/156/67 f 50/161/62 27/162/73 28/163/66 49/164/67
f 6/157/56 22/158/69 24/159/64 7/160/57 f 6/165/56 22/166/69 24/167/64 7/168/57
f 27/154/73 25/161/59 26/162/58 28/155/66 f 27/162/73 25/169/59 26/170/58 28/163/66
f 52/163/70 54/164/72 53/165/61 51/166/65 f 52/171/70 54/172/72 53/173/61 51/174/65
f 22/158/69 52/163/70 51/166/65 24/159/64 f 22/166/69 52/171/70 51/174/65 24/167/64
f 4/167/71 56/168/63 55/169/68 9/170/60 f 4/175/71 56/176/63 55/177/68 9/178/60
f 54/164/72 4/167/71 9/170/60 53/165/61 f 54/172/72 4/175/71 9/178/60 53/173/61
f 56/168/63 50/153/62 49/156/67 55/169/68 f 56/176/63 50/161/62 49/164/67 55/177/68

View File

@ -0,0 +1,202 @@
# Blender v2.78 (sub 0) OBJ File: ''
# www.blender.org
o Cube_Cube.001
v 0.500000 -0.500000 -0.500000
v 0.500000 0.500000 -0.500000
v 0.500000 -0.500000 0.500000
v 0.500000 0.500000 0.500000
v -0.500000 -0.500000 -0.500000
v -0.500000 0.500000 -0.500000
v -0.500000 -0.500000 0.500000
v -0.500000 0.500000 0.500000
v 0.437500 -0.437500 -0.437500
v 0.437500 0.437500 -0.437500
v 0.437500 -0.437500 0.437500
v 0.437500 0.437500 0.437500
v -0.437500 -0.437500 -0.437500
v -0.437500 0.437500 -0.437500
v -0.437500 -0.437500 0.437500
v -0.437500 0.437500 0.437500
v -0.500000 -0.437500 -0.437500
v -0.500000 0.437500 -0.437500
v -0.500000 -0.437500 0.437500
v -0.500000 0.437500 0.437500
v 0.500000 -0.437500 -0.437500
v 0.500000 0.437500 -0.437500
v 0.500000 -0.437500 0.437500
v 0.500000 0.437500 0.437500
v 0.437500 -0.437500 -0.500000
v 0.437500 0.437500 -0.500000
v -0.437500 -0.437500 -0.500000
v -0.437500 0.437500 -0.500000
v 0.437500 -0.437500 0.500000
v 0.437500 0.437500 0.500000
v -0.437500 -0.437500 0.500000
v -0.437500 0.437500 0.500000
v 0.437500 0.500000 -0.437500
v 0.437500 0.500000 0.437500
v -0.437500 0.500000 -0.437500
v -0.437500 0.500000 0.437500
v 0.437500 -0.500000 -0.437500
v 0.437500 -0.500000 0.437500
v -0.437500 -0.500000 -0.437500
v -0.437500 -0.500000 0.437500
vt 0.0625 0.0000
vt 0.9375 0.0000
vt 0.9375 0.0625
vt 0.0625 0.0625
vt -0.0000 0.9375
vt -0.0000 0.0625
vt 0.0625 0.9375
vt -0.0000 0.0625
vt -0.0000 0.9375
vt -0.0000 0.9375
vt -0.0000 0.0625
vt 0.0625 0.0625
vt 0.0625 0.9375
vt -0.0000 0.9375
vt 0.0625 0.9375
vt 0.0625 0.0625
vt -0.0000 0.0625
vt 0.9375 0.0000
vt 0.0625 0.0000
vt 0.9375 0.0625
vt 0.0625 0.9375
vt 0.0625 0.0625
vt -0.0000 0.0625
vt -0.0000 0.9375
vt 1.0000 0.9375
vt 1.0000 0.0625
vt 0.9375 0.9375
vt 1.0000 0.9375
vt 0.9375 0.9375
vt 1.0000 0.9375
vt 0.9375 0.9375
vt 0.9375 0.0625
vt 1.0000 0.0625
vt 1.0000 0.0625
vt 1.0000 0.9375
vt 1.0000 0.0625
vt 0.9375 1.0000
vt 0.0625 1.0000
vt 0.9375 0.9375
vt 0.9375 0.0625
vt 1.0000 0.0625
vt 1.0000 0.9375
vt 0.0625 1.0000
vt 0.9375 1.0000
vt 0.0625 0.0000
vt 0.9375 0.0000
vt 0.0625 0.0000
vt 0.9375 0.0000
vt 0.0625 0.0000
vt 0.9375 0.0000
vt 0.0625 1.0000
vt 0.9375 1.0000
vt 0.0625 1.0000
vt 0.9375 1.0000
vt 0.0625 1.0000
vt 0.9375 1.0000
vt -0.0000 0.0000
vt 1.0000 0.0000
vt 0.9375 0.0625
vt 0.0625 0.0625
vt -0.0000 1.0000
vt 0.0625 0.9375
vt 1.0000 1.0000
vt 0.9375 0.9375
vt -0.0000 1.0000
vt 0.0625 0.9375
vt 0.9375 0.9375
vt 1.0000 0.0000
vt 0.9375 0.0625
vt 0.0625 0.0625
vt -0.0000 0.0000
vt 1.0000 1.0000
vt 1.0000 0.0000
vt 0.9375 0.0625
vt 0.9375 0.9375
vt -0.0000 0.0000
vt 0.0625 0.0625
vt -0.0000 1.0000
vt 0.0625 0.9375
vt -0.0000 0.0000
vt 0.0625 0.9375
vt 0.0625 0.0625
vt 0.9375 0.9375
vt 0.9375 0.0625
vt 1.0000 0.0000
vt 0.9375 0.0625
vt 0.9375 0.9375
vt 1.0000 1.0000
vt 0.0625 0.9375
vt -0.0000 1.0000
vt 0.0625 0.0625
vt 0.0625 0.0625
vt 0.0625 0.9375
vt 0.9375 0.9375
vt 1.0000 1.0000
vt 0.9375 0.0625
vn 0.0000 1.0000 0.0000
vn -1.0000 0.0000 0.0000
vn 0.0000 0.0000 1.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 -1.0000 0.0000
vn 1.0000 0.0000 0.0000
g Cube_Cube.001_frame
s off
f 25/1/1 27/2/1 13/3/1 9/4/1
f 26/5/2 25/6/2 9/4/2 10/7/2
f 21/8/3 22/9/3 10/7/3 9/4/3
f 24/10/4 23/11/4 11/12/4 12/13/4
f 23/14/1 21/8/1 9/4/1 11/15/1
f 12/13/5 10/16/5 22/17/5 24/10/5
f 28/18/5 26/19/5 10/16/5 14/20/5
f 14/21/6 13/22/6 27/23/6 28/24/6
f 18/25/3 17/26/3 13/3/3 14/27/3
f 17/26/1 19/28/1 15/29/1 13/3/1
f 20/30/4 16/31/4 15/32/4 19/33/4
f 20/30/5 18/34/5 14/20/5 16/31/5
f 16/31/6 32/35/6 31/36/6 15/32/6
f 31/37/1 29/38/1 11/15/1 15/29/1
f 12/39/2 11/40/2 29/41/2 30/42/2
f 30/43/5 32/44/5 16/31/5 12/13/5
f 15/32/4 11/12/4 38/45/4 40/46/4
f 13/22/6 15/32/6 40/46/6 39/47/6
f 9/4/3 13/3/3 39/48/3 37/49/3
f 11/40/2 9/4/2 37/49/2 38/50/2
f 16/31/6 14/21/6 35/51/6 36/52/6
f 12/13/4 16/31/4 36/52/4 34/53/4
f 10/7/2 12/39/2 34/54/2 33/55/2
f 14/27/3 10/7/3 33/55/3 35/56/3
f 2/57/1 6/58/1 35/59/1 33/60/1
f 4/61/1 2/57/1 33/60/1 34/62/1
f 8/63/1 4/61/1 34/62/1 36/64/1
f 6/58/1 8/63/1 36/64/1 35/59/1
f 6/65/2 18/66/2 20/67/2 8/63/2
f 7/68/2 8/63/2 20/67/2 19/69/2
f 7/68/2 19/69/2 17/70/2 5/71/2
f 5/71/2 17/70/2 18/66/2 6/65/2
f 7/72/5 5/73/5 39/74/5 40/75/5
f 5/73/5 1/76/5 37/77/5 39/74/5
f 1/76/5 3/78/5 38/79/5 37/77/5
f 3/78/5 7/72/5 40/75/5 38/79/5
f 3/80/3 4/61/3 30/81/3 29/82/3
f 8/63/3 32/83/3 30/81/3 4/61/3
f 7/68/3 31/84/3 32/83/3 8/63/3
f 3/80/3 29/82/3 31/84/3 7/68/3
f 3/85/6 23/86/6 24/87/6 4/88/6
f 4/88/6 24/87/6 22/89/6 2/90/6
f 2/90/6 22/89/6 21/91/6 1/76/6
f 1/76/6 21/91/6 23/86/6 3/85/6
f 2/90/4 1/76/4 25/92/4 26/93/4
f 2/90/4 26/93/4 28/94/4 6/95/4
f 5/73/4 6/95/4 28/94/4 27/96/4
f 5/73/4 27/96/4 25/92/4 1/76/4
g Cube_Cube.001_glass
f 9/4/6 10/7/6 12/39/6 11/40/6
f 11/12/3 12/13/3 16/31/3 15/32/3
f 15/32/2 16/31/2 14/21/2 13/22/2
f 13/3/4 14/27/4 10/7/4 9/4/4
f 11/15/5 15/29/5 13/3/5 9/4/5
f 16/31/1 12/13/1 10/16/1 14/20/1

View File

@ -32,13 +32,17 @@ homedecor.register("shutter", {
description = S("Wooden Shutter"), description = S("Wooden Shutter"),
inventory_image = inv, inventory_image = inv,
wield_image = inv, wield_image = inv,
paramtype2 = "wallmounted", paramtype2 = "colorwallmounted",
palette = "unifieddyes_palette_colorwallmounted.png",
ud_replacement_node = "homedecor:shutter_colored", ud_replacement_node = "homedecor:shutter_colored",
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(),
selection_box = shutter_cbox, selection_box = shutter_cbox,
node_box = shutter_cbox, node_box = shutter_cbox,
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node after_dig_node = unifieddyes.after_dig_node
}) })
@ -54,7 +58,10 @@ homedecor.register("shutter_colored", {
sounds = default.node_sound_wood_defaults(), sounds = default.node_sound_wood_defaults(),
selection_box = shutter_cbox, selection_box = shutter_cbox,
node_box = shutter_cbox, node_box = shutter_cbox,
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
drop = "homedecor:shutter" drop = "homedecor:shutter"
}) })

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 B

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 B

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 B

After

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 B

After

Width:  |  Height:  |  Size: 94 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 95 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 B

After

Width:  |  Height:  |  Size: 96 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 165 B

After

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 423 B

View File

@ -113,7 +113,10 @@ minetest.register_node("homedecor:curtain_closed", {
palette = "unifieddyes_palette_colorwallmounted.png", palette = "unifieddyes_palette_colorwallmounted.png",
selection_box = { type = "wallmounted" }, selection_box = { type = "wallmounted" },
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z})
if string.find(topnode.name, "homedecor:curtainrod") then if string.find(topnode.name, "homedecor:curtainrod") then
@ -139,7 +142,10 @@ minetest.register_node("homedecor:curtain_open", {
palette = "unifieddyes_palette_colorwallmounted.png", palette = "unifieddyes_palette_colorwallmounted.png",
selection_box = { type = "wallmounted" }, selection_box = { type = "wallmounted" },
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
after_place_node = unifieddyes.fix_rotation, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z}) local topnode = minetest.get_node({x=pos.x, y=pos.y+1.0, z=pos.z})
if string.find(topnode.name, "homedecor:curtainrod") then if string.find(topnode.name, "homedecor:curtainrod") then

View File

@ -92,6 +92,19 @@ minetest.register_node("inbox:empty", {
end end
end end
end, end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos)
local owner = meta:get_string("owner")
if player:get_player_name() == owner or
minetest.check_player_privs(player, "protection_bypass") and
clicker:get_player_control().aux1 then
return stack:get_count()
end
return 0
end,
allow_metadata_inventory_move = function(pos)
return 0
end,
}) })
function inbox.get_inbox_formspec(pos) function inbox.get_inbox_formspec(pos)

View File

@ -8,7 +8,11 @@ minetest.register_node("lavalamp:lavalamp", {
drawtype = "mesh", drawtype = "mesh",
mesh = "lavalamp.obj", mesh = "lavalamp.obj",
tiles = { tiles = {
{ name = "lavalamp_metal.png", color = 0xffffffff}, { name = "lavalamp_metal.png", color = "white" },
{ name = "lavalamp_lamp_liquid.png", color = "white" },
},
overlay_tiles = {
"",
{ {
name="lavalamp_lamp_anim.png", name="lavalamp_lamp_anim.png",
animation={ animation={
@ -19,6 +23,7 @@ minetest.register_node("lavalamp:lavalamp", {
}, },
}, },
}, },
use_texture_alpha = true,
inventory_image = "lavalamp_lamp_inv.png", inventory_image = "lavalamp_lamp_inv.png",
paramtype = "light", paramtype = "light",
paramtype2 = "color", paramtype2 = "color",
@ -33,6 +38,8 @@ 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,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
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"
@ -62,6 +69,8 @@ minetest.register_node("lavalamp:lavalamp_off", {
groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1}, groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, not_in_creative_inventory=1},
sounds = default.node_sound_glass_defaults(), sounds = default.node_sound_glass_defaults(),
drop = "lavalamp:lavalamp", drop = "lavalamp:lavalamp",
on_construct = unifieddyes.on_construct,
after_place_node = unifieddyes.recolor_on_place,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) on_rightclick = function(pos, node, clicker, itemstack, pointed_thing)
node.name = "lavalamp:lavalamp" node.name = "lavalamp:lavalamp"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

View File

@ -23,7 +23,10 @@ minetest.register_node("lrfurn:armchair", {
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 = armchair_cbox,
after_place_node = unifieddyes.fix_rotation_nsew, after_place_node = function(pos, placer, itemstack, pointed_thing)
unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
end,
after_dig_node = unifieddyes.after_dig_node, after_dig_node = unifieddyes.after_dig_node,
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)
@ -105,6 +108,6 @@ minetest.register_lbm({
end end
}) })
if minetest.setting_get("log_mods") then if minetest.settings:get("log_mods") then
minetest.log("action", "[lrfurn/armchairs] "..S("Loaded!")) minetest.log("action", "[lrfurn/armchairs] "..S("Loaded!"))
end end

View File

@ -65,6 +65,6 @@ minetest.register_craft({
} }
}) })
if minetest.setting_get("log_mods") then if minetest.settings:get("log_mods") then
minetest.log("action", "[lrfurn/coffeetable] "..S("Loaded!")) minetest.log("action", "[lrfurn/coffeetable] "..S("Loaded!"))
end end

View File

@ -48,6 +48,6 @@ minetest.register_craft({
} }
}) })
if minetest.setting_get("log_mods") then if minetest.settings:get("log_mods") then
minetest.log("action", "[lrfurn/endtable] "..S("Loaded!")) minetest.log("action", "[lrfurn/endtable] "..S("Loaded!"))
end end

View File

@ -26,6 +26,7 @@ minetest.register_node("lrfurn:longsofa", {
on_rotate = screwdriver.disallow, on_rotate = screwdriver.disallow,
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
lrfurn.fix_sofa_rotation_nsew(pos, placer, itemstack, pointed_thing) lrfurn.fix_sofa_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
local playername = placer:get_player_name() local playername = placer:get_player_name()
if minetest.is_protected(pos, placer:get_player_name()) then return true end if minetest.is_protected(pos, placer:get_player_name()) then return true end
@ -121,6 +122,6 @@ minetest.register_lbm({
end end
}) })
if minetest.setting_get("log_mods") then if minetest.settings:get("log_mods") then
minetest.log("action", "[lrfurn/longsofas] "..S("Loaded!")) minetest.log("action", "[lrfurn/longsofas] "..S("Loaded!"))
end end

View File

@ -26,6 +26,7 @@ minetest.register_node("lrfurn:sofa", {
on_rotate = screwdriver.disallow, on_rotate = screwdriver.disallow,
after_place_node = function(pos, placer, itemstack, pointed_thing) after_place_node = function(pos, placer, itemstack, pointed_thing)
lrfurn.fix_sofa_rotation_nsew(pos, placer, itemstack, pointed_thing) lrfurn.fix_sofa_rotation_nsew(pos, placer, itemstack, pointed_thing)
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
local playername = placer:get_player_name() local playername = placer:get_player_name()
if minetest.is_protected(pos, placer:get_player_name()) then return true end if minetest.is_protected(pos, placer:get_player_name()) then return true end
@ -121,6 +122,6 @@ minetest.register_lbm({
end end
}) })
if minetest.setting_get("log_mods") then if minetest.settings:get("log_mods") then
minetest.log("action", "[lrfurn/sofas] "..S("Loaded!")) minetest.log("action", "[lrfurn/sofas] "..S("Loaded!"))
end end