diff --git a/building_blocks/alias.lua b/building_blocks/alias.lua index 8d6520b..1ac24f5 100755 --- a/building_blocks/alias.lua +++ b/building_blocks/alias.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext if minetest.get_modpath("moreblocks") or minetest.get_modpath("stairs") then minetest.register_alias("building_blocks:slab_tar", "stairs:slab_Tar") diff --git a/building_blocks/depends.txt b/building_blocks/depends.txt index 641d412..a890df8 100755 --- a/building_blocks/depends.txt +++ b/building_blocks/depends.txt @@ -1,5 +1,5 @@ default -homedecor_i18n +homedecor_common moreblocks? gloopblocks? stairs? diff --git a/building_blocks/init.lua b/building_blocks/init.lua index 7c001a5..fbb81a4 100755 --- a/building_blocks/init.lua +++ b/building_blocks/init.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local modpath = minetest.get_modpath("building_blocks") dofile(modpath.."/alias.lua") diff --git a/building_blocks/node_stairs.lua b/building_blocks/node_stairs.lua index b0fecb4..daba567 100755 --- a/building_blocks/node_stairs.lua +++ b/building_blocks/node_stairs.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local stairs_groups_names = {"cracky","choppy","flammable","crumbly","snappy"} @@ -33,7 +33,7 @@ local function building_blocks_stairs(nodename, def) ("%s Slab"):format(def.description), def.sounds ) - end + end end end diff --git a/building_blocks/others.lua b/building_blocks/others.lua index 180aa70..2cc613f 100755 --- a/building_blocks/others.lua +++ b/building_blocks/others.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext minetest.register_craftitem("building_blocks:sticks", { description = S("Small bundle of sticks"), @@ -20,4 +20,4 @@ minetest.register_tool("building_blocks:knife", { fleshy={times={[2]=5.50, [3]=2.80}, uses=100, maxlevel=1} } }, -}) \ No newline at end of file +}) diff --git a/building_blocks/recipes.lua b/building_blocks/recipes.lua index 42ac0a8..689643f 100755 --- a/building_blocks/recipes.lua +++ b/building_blocks/recipes.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext if minetest.get_modpath("moreblocks") then minetest.register_craft({ diff --git a/building_blocks/textures/building_blocks_marble.png b/building_blocks/textures/building_blocks_marble.png index 94aad99..497e2b6 100755 Binary files a/building_blocks/textures/building_blocks_marble.png and b/building_blocks/textures/building_blocks_marble.png differ diff --git a/computer/computers.lua b/computer/computers.lua index b9d3dc4..5a81e91 100755 --- a/computer/computers.lua +++ b/computer/computers.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext -- Amiga 500 lookalike computer.register("computer:shefriendSOO", { @@ -258,33 +258,6 @@ minetest.register_node("computer:tower", { minetest.register_alias("computer:tower_on", "computer:tower") --- Printer/scaner combo -minetest.register_node("computer:printer", { - description = S("Printer-Scanner Combo"), - inventory_image = "computer_printer_inv.png", - tiles = {"computer_printer_t.png","computer_printer_bt.png","computer_printer_l.png", - "computer_printer_r.png","computer_printer_b.png","computer_printer_f.png"}, - paramtype = "light", - paramtype2 = "facedir", - walkable = true, - groups = {snappy=3}, - sound = default.node_sound_wood_defaults(), - drawtype = "nodebox", - node_box = { - type = "fixed", - fixed = { - {-0.4375, -0.3125, -0.125, 0.4375, -0.0625, 0.375}, - {-0.4375, -0.5, -0.125, 0.4375, -0.4375, 0.375}, - {-0.4375, -0.5, -0.125, -0.25, -0.0625, 0.375}, - {0.25, -0.5, -0.125, 0.4375, -0.0625, 0.375}, - {-0.4375, -0.5, -0.0625, 0.4375, -0.0625, 0.375}, - {-0.375, -0.4375, 0.25, 0.375, -0.0625, 0.4375}, - {-0.25, -0.25, 0.4375, 0.25, 0.0625, 0.5}, - {-0.25, -0.481132, -0.3125, 0.25, -0.4375, 0} - }, - }, -}) - --Rack Server minetest.register_node("computer:server", { drawtype = "nodebox", diff --git a/computer/depends.txt b/computer/depends.txt index 947d2a7..e582ef2 100755 --- a/computer/depends.txt +++ b/computer/depends.txt @@ -1,2 +1,4 @@ default -homedecor_i18n +homedecor_common +basic_materials +unifieddyes diff --git a/computer/init.lua b/computer/init.lua index 534878d..ffae558 100755 --- a/computer/init.lua +++ b/computer/init.lua @@ -94,6 +94,6 @@ end local MODPATH = minetest.get_modpath("computer") dofile(MODPATH.."/computers.lua") -dofile(MODPATH.."/miscitems.lua") +dofile(MODPATH.."/printers.lua") dofile(MODPATH.."/recipes.lua") dofile(MODPATH.."/tetris.lua") diff --git a/computer/miscitems.lua b/computer/miscitems.lua deleted file mode 100755 index bbef89b..0000000 --- a/computer/miscitems.lua +++ /dev/null @@ -1,68 +0,0 @@ --- Copyright (C) 2012-2013 Diego Martínez - --- This file defines some items in order to not have to depend on other mods. - -local S = homedecor_i18n.gettext - -if (not minetest.get_modpath("homedecor")) then - - minetest.register_craftitem(":basic_materials:plastic_sheet", { - description = S("Plastic sheet"), - inventory_image = "homedecor_plastic_sheeting.png", - }) - - minetest.register_craftitem(":homedecor:plastic_base", { - description = S("Unprocessed Plastic base"), - wield_image = "homedecor_plastic_base.png", - inventory_image = "homedecor_plastic_base_inv.png", - }) - - minetest.register_craft({ - type = "shapeless", - output = 'homedecor:plastic_base 6', - recipe = { "default:junglegrass", - "default:junglegrass", - "default:junglegrass" - } - }) - - minetest.register_craft({ - type = "shapeless", - output = 'homedecor:plastic_base 3', - recipe = { "default:dry_shrub", - "default:dry_shrub", - "default:dry_shrub" - }, - }) - - minetest.register_craft({ - type = "shapeless", - output = 'homedecor:plastic_base 4', - recipe = { "default:leaves", - "default:leaves", - "default:leaves", - "default:leaves", - "default:leaves", - "default:leaves" - } - }) - - minetest.register_craft({ - type = "cooking", - output = "basic_materials:plastic_sheet", - recipe = "homedecor:plastic_base", - }) - - minetest.register_craft({ - type = 'fuel', - recipe = 'homedecor:plastic_base', - burntime = 30, - }) - - minetest.register_craft({ - type = 'fuel', - recipe = 'basic_materials:plastic_sheet', - burntime = 30, - }) - -end -- not homedecor diff --git a/computer/models/computer_3dprinter_bedflinger.obj b/computer/models/computer_3dprinter_bedflinger.obj new file mode 100644 index 0000000..e18a22c --- /dev/null +++ b/computer/models/computer_3dprinter_bedflinger.obj @@ -0,0 +1,9835 @@ +# Blender v2.79 (sub 0) OBJ File: 'prusa-i3.blend' +# www.blender.org +o Cube.013_Cube.023 +v -0.004653 0.000000 -0.330167 +v -0.004653 0.000000 -0.316009 +v -0.004299 0.001781 -0.330167 +v -0.004299 0.001781 -0.316009 +v -0.003290 0.003290 -0.330167 +v -0.003290 0.003290 -0.316009 +v -0.001781 0.004299 -0.330167 +v -0.001781 0.004299 -0.316009 +v 0.000000 0.004653 -0.330167 +v 0.000000 0.004653 -0.316009 +v 0.001781 0.004299 -0.330167 +v 0.001781 0.004299 -0.316009 +v 0.003290 0.003290 -0.330167 +v 0.003290 0.003290 -0.316009 +v 0.004299 0.001781 -0.330167 +v 0.004299 0.001781 -0.316009 +v 0.004653 0.000000 -0.330167 +v 0.004653 0.000000 -0.316009 +v 0.004299 -0.001781 -0.330167 +v 0.004299 -0.001781 -0.316009 +v 0.003290 -0.003290 -0.330167 +v 0.003290 -0.003290 -0.316009 +v 0.001781 -0.004299 -0.330167 +v 0.001781 -0.004299 -0.316009 +v 0.000000 -0.004653 -0.330167 +v 0.000000 -0.004653 -0.316009 +v -0.001781 -0.004299 -0.330167 +v -0.001781 -0.004299 -0.316009 +v -0.003290 -0.003290 -0.330167 +v -0.003290 -0.003290 -0.316009 +v -0.004299 -0.001781 -0.330167 +v -0.004299 -0.001781 -0.316009 +v -0.000625 0.000000 -0.349999 +v -0.005000 0.000000 -0.342499 +v -0.000577 0.000239 -0.349999 +v -0.004619 0.001913 -0.342499 +v -0.000442 0.000442 -0.349999 +v -0.003535 0.003536 -0.342499 +v -0.000239 0.000577 -0.349999 +v -0.001913 0.004619 -0.342499 +v 0.000000 0.000625 -0.349999 +v 0.000000 0.005000 -0.342499 +v 0.000239 0.000577 -0.349999 +v 0.001913 0.004619 -0.342499 +v 0.000442 0.000442 -0.349999 +v 0.003536 0.003536 -0.342499 +v 0.000577 0.000239 -0.349999 +v 0.004619 0.001913 -0.342499 +v 0.000625 0.000000 -0.349999 +v 0.005000 0.000000 -0.342499 +v 0.000577 -0.000239 -0.349999 +v 0.004619 -0.001913 -0.342499 +v 0.000442 -0.000442 -0.349999 +v 0.003536 -0.003535 -0.342499 +v 0.000239 -0.000577 -0.349999 +v 0.001913 -0.004619 -0.342499 +v 0.000000 -0.000625 -0.349999 +v 0.000000 -0.005000 -0.342499 +v -0.000239 -0.000577 -0.349999 +v -0.001913 -0.004619 -0.342499 +v -0.000442 -0.000442 -0.349999 +v -0.003535 -0.003535 -0.342499 +v -0.000577 -0.000239 -0.349999 +v -0.004619 -0.001913 -0.342499 +v -0.010496 0.010496 -0.330167 +v -0.010496 0.010496 -0.342499 +v 0.010496 0.010496 -0.330167 +v 0.010496 0.010496 -0.342499 +v -0.010496 -0.010496 -0.330167 +v -0.010496 -0.010496 -0.342499 +v 0.010496 -0.010496 -0.330167 +v 0.010496 -0.010496 -0.342499 +v -0.061249 0.186210 -0.326249 +v -0.061249 0.186210 -0.253122 +v -0.111248 0.236209 -0.326249 +v -0.111248 0.236209 -0.253122 +v -0.111248 0.186210 -0.326249 +v -0.111248 0.186210 -0.253122 +v -0.086248 0.236209 -0.326249 +v -0.086248 0.236209 -0.253122 +v -0.061248 0.298709 -0.326249 +v -0.086248 0.298709 -0.326249 +v -0.061248 0.298709 -0.307932 +v -0.061248 0.243899 -0.307932 +v -0.086248 0.243899 -0.307932 +v -0.086248 0.298709 -0.307932 +v -0.061248 0.243899 -0.253122 +v -0.086248 0.243899 -0.253122 +v -0.061251 -0.193789 -0.326249 +v -0.061251 -0.193789 -0.253122 +v -0.061251 -0.243789 -0.326249 +v -0.061251 -0.243789 -0.253122 +v -0.111251 -0.193789 -0.326249 +v -0.111251 -0.193789 -0.253122 +v -0.111251 -0.243789 -0.326249 +v -0.111251 -0.243789 -0.253122 +v -0.078748 0.211210 -0.261247 +v -0.078368 0.211210 -0.259334 +v -0.077284 0.211210 -0.257712 +v -0.075662 0.211210 -0.256628 +v -0.073748 0.211210 -0.256247 +v -0.071835 0.211210 -0.256628 +v -0.070213 0.211209 -0.257712 +v -0.069129 0.211209 -0.259334 +v -0.068748 0.211209 -0.261247 +v -0.069129 0.211209 -0.263161 +v -0.070213 0.211209 -0.264783 +v -0.071835 0.211209 -0.265867 +v -0.073748 0.211210 -0.266247 +v -0.075662 0.211210 -0.265867 +v -0.077284 0.211210 -0.264783 +v -0.078368 0.211210 -0.263161 +v -0.078368 -0.214277 -0.263160 +v -0.078748 -0.214277 -0.261247 +v -0.071835 -0.214277 -0.265866 +v -0.069129 -0.214277 -0.263161 +v -0.075662 -0.214277 -0.265866 +v -0.071835 -0.214277 -0.256628 +v -0.075662 -0.214277 -0.256628 +v -0.078368 -0.214277 -0.259334 +v -0.069129 -0.214277 -0.259334 +v -0.077284 -0.214277 -0.264783 +v -0.073748 -0.214277 -0.266247 +v -0.070213 -0.214277 -0.264783 +v -0.068748 -0.214277 -0.261247 +v -0.070213 -0.214277 -0.257712 +v -0.073748 -0.214277 -0.256247 +v -0.077284 -0.214277 -0.257712 +v -0.061250 -0.037500 -0.326250 +v -0.061250 -0.037500 -0.253122 +v -0.086250 -0.037500 -0.326250 +v -0.086250 -0.037500 -0.253122 +v -0.061249 0.037500 -0.326249 +v -0.061249 0.037500 -0.253122 +v -0.086249 0.037500 -0.326249 +v -0.086249 0.037500 -0.253122 +v -0.006250 -0.027500 -0.316249 +v -0.006250 -0.027500 -0.261249 +v -0.006250 0.027500 -0.316249 +v -0.006250 0.027500 -0.261249 +v 0.018750 -0.027500 -0.316249 +v 0.018750 -0.027500 -0.261249 +v 0.018750 0.027500 -0.316249 +v 0.018750 0.027500 -0.261249 +v -0.006250 -0.027500 -0.316249 +v -0.061250 -0.027500 -0.261249 +v -0.006250 -0.027500 -0.261249 +v -0.006250 0.027500 -0.316249 +v -0.061249 0.027500 -0.261250 +v -0.006250 0.027500 -0.261250 +v -0.012500 -0.027500 -0.316249 +v -0.055000 -0.027500 -0.261249 +v -0.054999 0.027500 -0.261250 +v -0.054999 0.027500 -0.316249 +v -0.012500 -0.027500 -0.261249 +v -0.012500 0.027500 -0.261250 +v -0.012500 0.027500 -0.316249 +v -0.061250 -0.027500 -0.316249 +v -0.061249 0.027500 -0.316249 +v -0.055000 -0.027500 -0.316249 +v -0.072501 -0.195039 -0.283186 +v -0.072501 -0.195039 -0.280686 +v -0.079998 -0.195039 -0.283186 +v -0.079998 -0.195039 -0.280686 +v -0.072498 0.271225 -0.283181 +v -0.072498 0.271225 -0.280681 +v -0.079998 0.271225 -0.283181 +v -0.079998 0.271225 -0.280681 +v -0.078748 -0.214277 -0.317497 +v -0.078368 -0.214277 -0.319410 +v -0.077284 -0.214277 -0.321032 +v -0.075662 -0.214277 -0.322116 +v -0.073748 -0.214277 -0.322497 +v -0.071835 -0.214277 -0.322116 +v -0.070213 -0.214277 -0.321032 +v -0.069129 -0.214277 -0.319410 +v -0.068748 -0.214277 -0.317497 +v -0.069129 -0.214277 -0.315583 +v -0.070213 -0.214277 -0.313961 +v -0.071835 -0.214277 -0.312877 +v -0.073748 -0.214277 -0.312497 +v -0.075662 -0.214277 -0.312877 +v -0.077284 -0.214277 -0.313961 +v -0.078368 -0.214277 -0.315583 +v -0.078368 0.211209 -0.315584 +v -0.078748 0.211209 -0.317497 +v -0.071835 0.211209 -0.312878 +v -0.069129 0.211209 -0.315584 +v -0.075662 0.211209 -0.312878 +v -0.071835 0.211209 -0.322117 +v -0.075662 0.211209 -0.322117 +v -0.078368 0.211209 -0.319411 +v -0.069129 0.211209 -0.319411 +v -0.077284 0.211209 -0.313962 +v -0.073748 0.211209 -0.312497 +v -0.070213 0.211209 -0.313962 +v -0.068748 0.211209 -0.317497 +v -0.070213 0.211209 -0.321033 +v -0.073748 0.211209 -0.322497 +v -0.077284 0.211209 -0.321033 +v -0.072501 -0.195039 -0.300584 +v -0.072501 -0.195039 -0.298084 +v -0.079998 -0.195039 -0.300584 +v -0.079998 -0.195039 -0.298084 +v -0.072498 0.271225 -0.300579 +v -0.072498 0.271225 -0.298079 +v -0.079998 0.271225 -0.300579 +v -0.079998 0.271225 -0.298079 +v -0.153354 0.173317 -0.394115 +v -0.153354 0.173317 -0.303007 +v -0.227896 0.173317 -0.394115 +v -0.227896 0.173317 -0.303007 +v -0.153354 0.190909 -0.394115 +v -0.153354 0.190909 -0.303007 +v -0.227896 0.190909 -0.394115 +v -0.227896 0.190909 -0.303007 +v -0.148544 -0.224005 -0.437461 +v -0.148544 -0.224005 -0.194124 +v -0.279971 -0.224005 -0.437461 +v -0.279971 -0.224005 -0.194124 +v -0.148544 -0.173556 -0.437461 +v -0.148544 -0.173556 -0.194123 +v -0.279970 -0.173556 -0.437461 +v -0.279970 -0.173556 -0.194123 +v -0.142877 -0.199999 -0.500000 +v -0.142877 -0.197499 -0.497500 +v -0.142874 0.197499 -0.497496 +v -0.142874 0.199999 -0.499996 +v -0.142874 0.231249 -0.493746 +v -0.142874 0.231249 -0.043748 +v -0.142874 0.224999 -0.037498 +v -0.142877 -0.224999 -0.037502 +v -0.142877 -0.231249 -0.043752 +v -0.142875 0.037500 -0.449998 +v -0.142876 0.006250 -0.481248 +v -0.142876 -0.006250 -0.481248 +v -0.142876 -0.037500 -0.449999 +v -0.142876 -0.093750 -0.449999 +v -0.142876 -0.100000 -0.456249 +v -0.142876 -0.100000 -0.475081 +v -0.142876 -0.100202 -0.476620 +v -0.142876 -0.100828 -0.478130 +v -0.142876 -0.101823 -0.479426 +v -0.142876 -0.103119 -0.480421 +v -0.142876 -0.104629 -0.481047 +v -0.142876 -0.106250 -0.481260 +v -0.142876 -0.107870 -0.481047 +v -0.142876 -0.109380 -0.480421 +v -0.142876 -0.110677 -0.479427 +v -0.142876 -0.111672 -0.478130 +v -0.142876 -0.112297 -0.476620 +v -0.142876 -0.112500 -0.475081 +v -0.142876 -0.112500 -0.456250 +v -0.142876 -0.118750 -0.450000 +v -0.142876 -0.156249 -0.450000 +v -0.142876 -0.162499 -0.443750 +v -0.142876 -0.162499 -0.093751 +v -0.142876 -0.156249 -0.087501 +v -0.142875 0.156249 -0.087498 +v -0.142875 0.162499 -0.093748 +v -0.142875 0.162499 -0.443747 +v -0.142875 0.156249 -0.449997 +v -0.142875 0.118749 -0.449997 +v -0.142875 0.112500 -0.456247 +v -0.142875 0.112500 -0.475079 +v -0.142875 0.112297 -0.476618 +v -0.142875 0.111672 -0.478128 +v -0.142875 0.110677 -0.479424 +v -0.142875 0.109380 -0.480419 +v -0.142875 0.107870 -0.481045 +v -0.142875 0.106250 -0.481258 +v -0.142875 0.104629 -0.481045 +v -0.142875 0.103119 -0.480419 +v -0.142875 0.101823 -0.479424 +v -0.142875 0.100828 -0.478128 +v -0.142875 0.100202 -0.476618 +v -0.142875 0.100000 -0.475079 +v -0.142875 0.100000 -0.456247 +v -0.142875 0.093750 -0.449998 +v -0.142877 -0.224999 -0.500001 +v -0.142874 0.224999 -0.499996 +v -0.142877 -0.231249 -0.493990 +v -0.135377 -0.199999 -0.500000 +v -0.135377 -0.197499 -0.497500 +v -0.135375 0.197499 -0.497496 +v -0.135375 0.199999 -0.499996 +v -0.135374 0.231249 -0.493746 +v -0.135374 0.231249 -0.043748 +v -0.135374 0.224999 -0.037498 +v -0.135377 -0.224999 -0.037502 +v -0.135377 -0.231249 -0.043752 +v -0.135375 0.037500 -0.449998 +v -0.135376 0.006250 -0.481248 +v -0.135376 -0.006250 -0.481248 +v -0.135376 -0.037500 -0.449999 +v -0.135376 -0.093750 -0.449999 +v -0.135376 -0.100000 -0.456249 +v -0.135376 -0.100000 -0.475081 +v -0.135376 -0.100202 -0.476620 +v -0.135376 -0.100828 -0.478130 +v -0.135376 -0.101823 -0.479426 +v -0.135376 -0.103119 -0.480421 +v -0.135376 -0.104629 -0.481047 +v -0.135376 -0.106250 -0.481260 +v -0.135376 -0.107870 -0.481047 +v -0.135376 -0.109380 -0.480421 +v -0.135376 -0.110677 -0.479427 +v -0.135376 -0.111672 -0.478130 +v -0.135376 -0.112297 -0.476620 +v -0.135376 -0.112500 -0.475081 +v -0.135376 -0.112500 -0.456250 +v -0.135376 -0.118750 -0.450000 +v -0.135376 -0.156249 -0.450000 +v -0.135376 -0.162499 -0.093751 +v -0.135376 -0.156249 -0.087501 +v -0.135375 0.156249 -0.087498 +v -0.135375 0.162499 -0.093748 +v -0.135375 0.162499 -0.443747 +v -0.135375 0.156249 -0.449997 +v -0.135375 0.118749 -0.449997 +v -0.135375 0.112500 -0.456247 +v -0.135375 0.112500 -0.475079 +v -0.135375 0.112297 -0.476618 +v -0.135375 0.111672 -0.478128 +v -0.135375 0.110677 -0.479424 +v -0.135375 0.109380 -0.480419 +v -0.135375 0.107870 -0.481045 +v -0.135375 0.106250 -0.481258 +v -0.135375 0.104629 -0.481045 +v -0.135375 0.103119 -0.480419 +v -0.135375 0.101823 -0.479424 +v -0.135375 0.100828 -0.478128 +v -0.135375 0.100202 -0.476618 +v -0.135375 0.100000 -0.475079 +v -0.135375 0.100000 -0.456247 +v -0.135375 0.093750 -0.449998 +v -0.135377 -0.224999 -0.500001 +v -0.135374 0.224999 -0.499996 +v -0.135377 -0.231249 -0.493990 +v -0.135377 -0.162499 -0.443750 +v -0.243730 0.165772 -0.497499 +v -0.246229 0.165772 -0.499999 +v -0.277479 0.165772 -0.474249 +v -0.183730 0.165772 -0.467999 +v -0.178417 0.165772 -0.463922 +v -0.178230 0.165772 -0.462499 +v -0.178967 0.165772 -0.459749 +v -0.180980 0.165772 -0.457736 +v -0.183730 0.165772 -0.456999 +v -0.271229 0.165772 -0.456999 +v -0.277479 0.165772 -0.441249 +v -0.142879 0.165772 -0.497499 +v -0.271229 0.165772 -0.499999 +v -0.277479 0.165772 -0.493749 +v -0.271229 0.165772 -0.467999 +v -0.182306 0.165772 -0.467811 +v -0.180980 0.165772 -0.467262 +v -0.179841 0.165772 -0.466388 +v -0.178967 0.165772 -0.465249 +v -0.178417 0.165772 -0.461075 +v -0.179841 0.165772 -0.458610 +v -0.182306 0.165772 -0.457186 +v -0.277479 0.165772 -0.450749 +v -0.174830 0.165774 -0.037501 +v -0.142879 0.165774 -0.037501 +v -0.243729 0.173272 -0.497499 +v -0.246229 0.173272 -0.499999 +v -0.178417 0.173272 -0.463922 +v -0.178230 0.173272 -0.462499 +v -0.183730 0.173272 -0.456999 +v -0.271229 0.173272 -0.456999 +v -0.277479 0.173272 -0.441249 +v -0.271229 0.173272 -0.499999 +v -0.277479 0.173272 -0.493749 +v -0.182306 0.173272 -0.467811 +v -0.180980 0.173272 -0.467262 +v -0.179841 0.173272 -0.466388 +v -0.178967 0.173272 -0.465249 +v -0.174829 0.173274 -0.037501 +v -0.142879 0.173274 -0.037501 +v -0.142879 0.173272 -0.497499 +v -0.277479 0.173272 -0.474249 +v -0.271229 0.173272 -0.467999 +v -0.183730 0.173272 -0.467999 +v -0.178417 0.173272 -0.461075 +v -0.178967 0.173272 -0.459749 +v -0.179841 0.173272 -0.458610 +v -0.180980 0.173272 -0.457736 +v -0.182306 0.173272 -0.457186 +v -0.277479 0.173272 -0.450749 +v -0.243729 -0.173626 -0.497499 +v -0.246229 -0.173626 -0.499999 +v -0.277479 -0.173626 -0.474249 +v -0.183730 -0.173626 -0.467999 +v -0.178417 -0.173626 -0.463922 +v -0.178230 -0.173626 -0.462499 +v -0.178967 -0.173626 -0.459749 +v -0.180980 -0.173626 -0.457736 +v -0.183730 -0.173626 -0.456999 +v -0.271229 -0.173626 -0.456999 +v -0.277479 -0.173626 -0.441249 +v -0.142879 -0.173626 -0.497499 +v -0.271229 -0.173626 -0.499999 +v -0.277479 -0.173626 -0.493749 +v -0.271229 -0.173626 -0.467999 +v -0.182306 -0.173626 -0.467811 +v -0.180980 -0.173626 -0.467262 +v -0.179841 -0.173626 -0.466388 +v -0.178967 -0.173626 -0.465249 +v -0.178417 -0.173626 -0.461075 +v -0.179841 -0.173626 -0.458610 +v -0.182306 -0.173626 -0.457186 +v -0.277479 -0.173626 -0.450749 +v -0.174829 -0.173624 -0.037501 +v -0.142879 -0.173624 -0.037501 +v -0.243729 -0.166126 -0.497499 +v -0.246229 -0.166126 -0.499999 +v -0.178417 -0.166126 -0.463922 +v -0.178230 -0.166126 -0.462499 +v -0.183730 -0.166126 -0.456999 +v -0.271229 -0.166126 -0.456999 +v -0.277479 -0.166126 -0.441249 +v -0.271229 -0.166126 -0.499999 +v -0.277479 -0.166126 -0.493749 +v -0.182306 -0.166126 -0.467811 +v -0.180980 -0.166126 -0.467262 +v -0.179841 -0.166126 -0.466388 +v -0.178967 -0.166126 -0.465249 +v -0.174829 -0.166124 -0.037501 +v -0.142879 -0.166124 -0.037501 +v -0.142879 -0.166126 -0.497499 +v -0.277479 -0.166126 -0.474249 +v -0.271229 -0.166126 -0.467999 +v -0.183730 -0.166126 -0.467999 +v -0.178417 -0.166126 -0.461075 +v -0.178967 -0.166126 -0.459749 +v -0.179841 -0.166126 -0.458610 +v -0.180980 -0.166126 -0.457736 +v -0.182306 -0.166126 -0.457186 +v -0.277479 -0.166126 -0.450749 +v -0.098751 0.227461 -0.035004 +v -0.098751 0.227460 -0.437503 +v -0.096837 0.227081 -0.035004 +v -0.096837 0.227079 -0.437503 +v -0.095215 0.225997 -0.035004 +v -0.095215 0.225995 -0.437502 +v -0.094131 0.224375 -0.035004 +v -0.094131 0.224373 -0.437502 +v -0.093751 0.222461 -0.035004 +v -0.093751 0.222460 -0.437502 +v -0.094131 0.220548 -0.035004 +v -0.094131 0.220546 -0.437502 +v -0.095215 0.218926 -0.035004 +v -0.095215 0.218924 -0.437503 +v -0.096837 0.217842 -0.035004 +v -0.096837 0.217840 -0.437503 +v -0.098751 0.217461 -0.035004 +v -0.098751 0.217460 -0.437503 +v -0.100664 0.217842 -0.035004 +v -0.100664 0.217840 -0.437503 +v -0.102286 0.218926 -0.035004 +v -0.102286 0.218924 -0.437503 +v -0.103370 0.220548 -0.035004 +v -0.103370 0.220546 -0.437502 +v -0.103751 0.222461 -0.035004 +v -0.103751 0.222460 -0.437502 +v -0.103370 0.224375 -0.035004 +v -0.103370 0.224373 -0.437502 +v -0.102286 0.225997 -0.035004 +v -0.102286 0.225995 -0.437502 +v -0.100664 0.227081 -0.035004 +v -0.100664 0.227079 -0.437503 +v -0.135446 -0.237827 -0.431251 +v -0.135445 -0.186578 -0.431251 +v -0.131696 -0.241577 -0.431251 +v -0.127945 -0.179078 -0.431251 +v -0.120445 -0.179078 -0.431251 +v -0.112945 -0.186578 -0.431251 +v -0.112946 -0.222828 -0.431251 +v -0.076696 -0.222828 -0.431251 +v -0.072946 -0.226578 -0.431251 +v -0.072946 -0.235327 -0.431251 +v -0.079196 -0.241577 -0.431251 +v -0.135446 -0.237828 -0.456251 +v -0.135446 -0.235328 -0.458751 +v -0.135446 -0.215328 -0.478751 +v -0.135445 -0.205328 -0.478751 +v -0.135445 -0.186578 -0.460000 +v -0.131696 -0.241578 -0.452501 +v -0.097946 -0.241578 -0.437501 +v -0.097946 -0.241578 -0.438126 +v -0.112321 -0.241578 -0.452501 +v -0.079196 -0.241578 -0.437501 +v -0.072946 -0.235328 -0.437501 +v -0.072946 -0.226578 -0.437501 +v -0.076696 -0.222828 -0.437501 +v -0.112946 -0.222828 -0.437501 +v -0.112945 -0.186578 -0.437501 +v -0.120445 -0.179078 -0.437501 +v -0.127945 -0.179078 -0.437501 +v -0.134195 -0.185328 -0.458750 +v -0.134195 -0.185328 -0.437501 +v -0.125445 -0.185328 -0.458750 +v -0.125446 -0.205328 -0.478751 +v -0.125446 -0.215328 -0.478751 +v -0.125446 -0.235328 -0.458751 +v -0.118571 -0.235328 -0.458751 +v -0.118571 -0.235315 -0.458751 +v -0.125446 -0.235315 -0.458751 +v -0.097946 -0.235315 -0.438126 +v -0.097946 -0.235315 -0.437501 +v -0.125445 -0.185328 -0.437501 +v -0.125446 -0.235315 -0.437501 +v -0.135377 -0.234057 -0.042502 +v -0.135377 -0.234057 -0.057502 +v -0.135377 -0.229057 -0.037502 +v -0.135377 -0.186557 -0.057501 +v -0.135377 -0.186557 -0.037501 +v -0.127877 -0.241557 -0.039395 +v -0.127877 -0.241557 -0.055002 +v -0.130377 -0.239057 -0.057502 +v -0.126538 -0.241557 -0.037502 +v -0.134127 -0.185307 -0.037501 +v -0.125377 -0.194057 -0.037501 +v -0.125377 -0.222807 -0.037502 +v -0.091627 -0.222807 -0.037502 +v -0.087877 -0.226557 -0.037502 +v -0.087877 -0.235307 -0.037502 +v -0.094127 -0.241557 -0.037502 +v -0.134127 -0.185307 -0.057501 +v -0.125377 -0.241557 -0.052502 +v -0.094127 -0.241557 -0.043752 +v -0.097877 -0.241557 -0.043752 +v -0.106002 -0.241557 -0.052502 +v -0.097877 -0.241557 -0.044377 +v -0.125377 -0.235294 -0.052502 +v -0.130377 -0.189057 -0.057501 +v -0.087877 -0.235307 -0.043752 +v -0.087877 -0.226557 -0.043752 +v -0.091627 -0.222807 -0.043752 +v -0.125377 -0.222807 -0.043752 +v -0.125377 -0.235294 -0.043752 +v -0.125502 -0.193932 -0.052626 +v -0.106002 -0.235294 -0.052502 +v -0.097877 -0.235294 -0.044377 +v -0.097877 -0.235294 -0.043752 +v -0.098751 -0.225037 -0.035001 +v -0.098751 -0.225039 -0.437499 +v -0.096837 -0.225417 -0.035001 +v -0.096837 -0.225419 -0.437499 +v -0.095215 -0.226501 -0.035001 +v -0.095215 -0.226503 -0.437499 +v -0.094131 -0.228123 -0.035001 +v -0.094131 -0.228125 -0.437499 +v -0.093751 -0.230037 -0.035001 +v -0.093751 -0.230038 -0.437499 +v -0.094131 -0.231950 -0.035001 +v -0.094131 -0.231952 -0.437499 +v -0.095215 -0.233572 -0.035001 +v -0.095215 -0.233574 -0.437499 +v -0.096837 -0.234656 -0.035001 +v -0.096837 -0.234658 -0.437499 +v -0.098751 -0.235037 -0.035001 +v -0.098751 -0.235038 -0.437499 +v -0.100664 -0.234656 -0.035001 +v -0.100664 -0.234658 -0.437499 +v -0.102286 -0.233572 -0.035001 +v -0.102286 -0.233574 -0.437499 +v -0.103370 -0.231950 -0.035001 +v -0.103370 -0.231952 -0.437499 +v -0.103751 -0.230037 -0.035001 +v -0.103751 -0.230039 -0.437499 +v -0.103370 -0.228123 -0.035001 +v -0.103370 -0.228125 -0.437499 +v -0.102286 -0.226501 -0.035001 +v -0.102286 -0.226503 -0.437499 +v -0.100664 -0.225418 -0.035001 +v -0.100664 -0.225419 -0.437499 +v -0.135377 0.226481 -0.042503 +v -0.135377 0.226481 -0.057503 +v -0.135377 0.221481 -0.037503 +v -0.135376 0.178981 -0.057503 +v -0.135376 0.178981 -0.037503 +v -0.127877 0.233981 -0.039397 +v -0.127877 0.233981 -0.055003 +v -0.130377 0.231481 -0.057503 +v -0.126538 0.233981 -0.037503 +v -0.134126 0.177731 -0.037503 +v -0.125376 0.186481 -0.037503 +v -0.125377 0.215231 -0.037503 +v -0.091627 0.215231 -0.037503 +v -0.087877 0.218981 -0.037503 +v -0.087877 0.227731 -0.037503 +v -0.094127 0.233981 -0.037503 +v -0.134126 0.177731 -0.057503 +v -0.125377 0.233981 -0.052503 +v -0.094127 0.233981 -0.043753 +v -0.097877 0.233981 -0.043753 +v -0.106002 0.233981 -0.052503 +v -0.097877 0.233981 -0.044378 +v -0.125377 0.227718 -0.052503 +v -0.130376 0.181481 -0.057503 +v -0.087877 0.227731 -0.043753 +v -0.087877 0.218981 -0.043753 +v -0.091627 0.215231 -0.043753 +v -0.125377 0.215231 -0.043753 +v -0.125377 0.227718 -0.043753 +v -0.125501 0.186356 -0.052628 +v -0.106002 0.227718 -0.052503 +v -0.097877 0.227718 -0.044378 +v -0.097877 0.227718 -0.043753 +v -0.135446 0.230249 -0.431253 +v -0.135445 0.178999 -0.431252 +v -0.131696 0.233999 -0.431253 +v -0.127945 0.171499 -0.431252 +v -0.120445 0.171499 -0.431252 +v -0.112945 0.178999 -0.431252 +v -0.112946 0.215249 -0.431252 +v -0.076696 0.215249 -0.431252 +v -0.072946 0.218999 -0.431253 +v -0.072946 0.227749 -0.431253 +v -0.079196 0.233999 -0.431253 +v -0.135446 0.230249 -0.456253 +v -0.135446 0.227749 -0.458752 +v -0.135446 0.207749 -0.478752 +v -0.135446 0.197749 -0.478752 +v -0.135445 0.178999 -0.460002 +v -0.131696 0.233999 -0.452503 +v -0.097946 0.233999 -0.437503 +v -0.097946 0.233999 -0.438128 +v -0.112321 0.233999 -0.452503 +v -0.079196 0.233999 -0.437503 +v -0.072946 0.227749 -0.437503 +v -0.072946 0.218999 -0.437502 +v -0.076696 0.215249 -0.437502 +v -0.112946 0.215249 -0.437502 +v -0.112945 0.178999 -0.437502 +v -0.120445 0.171499 -0.437502 +v -0.127945 0.171499 -0.437502 +v -0.134195 0.177749 -0.458752 +v -0.134195 0.177749 -0.437502 +v -0.125445 0.177749 -0.458752 +v -0.125446 0.197749 -0.478752 +v -0.125446 0.207749 -0.478752 +v -0.125446 0.227749 -0.458752 +v -0.118571 0.227749 -0.458752 +v -0.118571 0.227736 -0.458752 +v -0.125446 0.227736 -0.458752 +v -0.097946 0.227736 -0.438128 +v -0.097946 0.227736 -0.437503 +v -0.125445 0.177749 -0.437502 +v -0.125446 0.227736 -0.437503 +v -0.350292 -0.050103 0.106628 +v -0.350292 0.044897 0.106627 +v -0.347916 -0.050103 0.082502 +v -0.347916 0.044896 0.082501 +v -0.340878 -0.050103 0.059303 +v -0.340878 0.044896 0.059302 +v -0.329450 -0.050103 0.037922 +v -0.329450 0.044896 0.037922 +v -0.314071 -0.050103 0.019182 +v -0.314071 0.044896 0.019182 +v -0.295331 -0.050103 0.003803 +v -0.295331 0.044896 0.003802 +v -0.273950 -0.050103 -0.007626 +v -0.273950 0.044896 -0.007626 +v -0.250751 -0.050104 -0.014663 +v -0.250751 0.044896 -0.014663 +v -0.226625 -0.050104 -0.017039 +v -0.226625 0.044896 -0.017039 +v -0.202499 -0.050103 -0.014663 +v -0.202499 0.044896 -0.014663 +v -0.179300 -0.050103 -0.007626 +v -0.179300 0.044896 -0.007626 +v -0.157920 -0.050103 0.003803 +v -0.157920 0.044896 0.003802 +v -0.139180 -0.050103 0.019182 +v -0.139180 0.044896 0.019182 +v -0.123800 -0.050103 0.037922 +v -0.123800 0.044896 0.037922 +v -0.112372 -0.050103 0.059302 +v -0.112372 0.044896 0.059302 +v -0.105335 -0.050103 0.082502 +v -0.105335 0.044896 0.082501 +v -0.102958 -0.050103 0.106628 +v -0.102958 0.044897 0.106627 +v -0.105335 -0.050103 0.130754 +v -0.105335 0.044897 0.130754 +v -0.112372 -0.050103 0.153953 +v -0.112372 0.044897 0.153953 +v -0.123800 -0.050103 0.175333 +v -0.123800 0.044897 0.175333 +v -0.139180 -0.050103 0.194073 +v -0.139180 0.044897 0.194073 +v -0.157920 -0.050103 0.209453 +v -0.157920 0.044897 0.209453 +v -0.179300 -0.050103 0.220881 +v -0.179300 0.044897 0.220881 +v -0.202499 -0.050103 0.227918 +v -0.202499 0.044897 0.227918 +v -0.226625 -0.050103 0.230294 +v -0.226625 0.044897 0.230294 +v -0.250751 -0.050103 0.227918 +v -0.250751 0.044897 0.227918 +v -0.273950 -0.050103 0.220881 +v -0.273950 0.044897 0.220881 +v -0.295331 -0.050103 0.209453 +v -0.295331 0.044897 0.209452 +v -0.314071 -0.050103 0.194073 +v -0.314071 0.044897 0.194073 +v -0.329450 -0.050103 0.175333 +v -0.329450 0.044897 0.175333 +v -0.340878 -0.050103 0.153953 +v -0.340878 0.044897 0.153952 +v -0.347916 -0.050103 0.130754 +v -0.347916 0.044897 0.130753 +v -0.347916 0.038647 0.082501 +v -0.350292 0.038647 0.106627 +v -0.340878 0.038646 0.059302 +v -0.329450 0.038646 0.037922 +v -0.314071 0.038646 0.019182 +v -0.295331 0.038646 0.003802 +v -0.273950 0.038646 -0.007626 +v -0.250751 0.038646 -0.014663 +v -0.226625 0.038646 -0.017039 +v -0.202499 0.038646 -0.014663 +v -0.179300 0.038646 -0.007626 +v -0.157920 0.038646 0.003802 +v -0.139180 0.038646 0.019182 +v -0.123800 0.038646 0.037922 +v -0.112372 0.038646 0.059302 +v -0.105335 0.038647 0.082501 +v -0.102958 0.038647 0.106627 +v -0.105335 0.038647 0.130754 +v -0.112372 0.038647 0.153953 +v -0.123800 0.038647 0.175333 +v -0.139180 0.038647 0.194073 +v -0.157920 0.038647 0.209453 +v -0.179300 0.038647 0.220881 +v -0.202499 0.038647 0.227918 +v -0.226625 0.038647 0.230294 +v -0.250751 0.038647 0.227918 +v -0.273950 0.038647 0.220881 +v -0.295331 0.038647 0.209453 +v -0.314071 0.038647 0.194073 +v -0.329450 0.038647 0.175333 +v -0.340878 0.038647 0.153952 +v -0.347916 0.038647 0.130753 +v -0.350292 -0.043853 0.106628 +v -0.347916 -0.043853 0.082502 +v -0.340878 -0.043853 0.059302 +v -0.329450 -0.043853 0.037922 +v -0.314071 -0.043853 0.019182 +v -0.295331 -0.043853 0.003803 +v -0.273950 -0.043854 -0.007626 +v -0.250751 -0.043854 -0.014663 +v -0.226625 -0.043854 -0.017039 +v -0.202499 -0.043854 -0.014663 +v -0.179300 -0.043853 -0.007626 +v -0.157920 -0.043853 0.003803 +v -0.139180 -0.043853 0.019182 +v -0.123800 -0.043853 0.037922 +v -0.112372 -0.043853 0.059302 +v -0.105335 -0.043853 0.082502 +v -0.102958 -0.043853 0.106628 +v -0.105335 -0.043853 0.130754 +v -0.112372 -0.043853 0.153953 +v -0.123800 -0.043853 0.175333 +v -0.139180 -0.043853 0.194073 +v -0.157920 -0.043853 0.209453 +v -0.179300 -0.043853 0.220881 +v -0.202499 -0.043853 0.227918 +v -0.226625 -0.043853 0.230294 +v -0.250751 -0.043853 0.227918 +v -0.273950 -0.043853 0.220881 +v -0.295331 -0.043853 0.209453 +v -0.314071 -0.043853 0.194073 +v -0.329450 -0.043853 0.175333 +v -0.340878 -0.043853 0.153953 +v -0.347916 -0.043853 0.130754 +v -0.199446 0.038646 0.065950 +v -0.199446 -0.043853 0.065951 +v -0.203723 0.044897 0.072352 +v -0.203723 -0.050103 0.072353 +v -0.275547 0.038647 0.106627 +v -0.267847 -0.050103 0.106628 +v -0.275547 -0.043853 0.106628 +v -0.267847 0.044897 0.106627 +v -0.274607 0.038647 0.116171 +v -0.267055 -0.050103 0.114670 +v -0.274607 -0.043853 0.116172 +v -0.267055 0.044897 0.114669 +v -0.271823 0.038647 0.125349 +v -0.264710 -0.050103 0.122403 +v -0.271823 -0.043853 0.125349 +v -0.264710 0.044897 0.122402 +v -0.207904 0.038647 0.151825 +v -0.207904 -0.043853 0.151825 +v -0.210850 0.044897 0.144712 +v -0.210850 -0.050103 0.144712 +v -0.199446 0.038647 0.147304 +v -0.199446 -0.043853 0.147305 +v -0.203723 0.044897 0.140902 +v -0.203723 -0.050103 0.140903 +v -0.217081 0.038647 0.154609 +v -0.217081 -0.043853 0.154609 +v -0.218583 0.044897 0.147058 +v -0.218583 -0.050103 0.147058 +v -0.192032 0.038647 0.141220 +v -0.192032 -0.043853 0.141221 +v -0.197477 0.044897 0.135776 +v -0.197477 -0.050103 0.135776 +v -0.178643 0.038647 0.116172 +v -0.178643 -0.043853 0.116172 +v -0.186195 0.044897 0.114669 +v -0.186195 -0.050103 0.114670 +v -0.177703 0.038647 0.106627 +v -0.177703 -0.043853 0.106628 +v -0.185403 0.044897 0.106627 +v -0.185403 -0.050103 0.106628 +v -0.181427 0.038647 0.125349 +v -0.181427 -0.043853 0.125349 +v -0.188541 0.044897 0.122402 +v -0.188541 -0.050103 0.122403 +v -0.236169 0.038646 0.058646 +v -0.236169 -0.043853 0.058646 +v -0.234667 0.044896 0.066197 +v -0.234667 -0.050103 0.066197 +v -0.267302 0.038646 0.079448 +v -0.267302 -0.043853 0.079448 +v -0.260900 -0.050103 0.083726 +v -0.260900 0.044897 0.083725 +v -0.226625 0.038646 0.057706 +v -0.226625 -0.043853 0.057706 +v -0.226625 0.044896 0.065405 +v -0.226625 -0.050103 0.065405 +v -0.245347 0.038646 0.061430 +v -0.245347 -0.043853 0.061430 +v -0.242400 -0.050103 0.068543 +v -0.242400 0.044896 0.068543 +v -0.178643 0.038647 0.097083 +v -0.178643 -0.043853 0.097084 +v -0.186195 0.044897 0.098585 +v -0.186195 -0.050103 0.098586 +v -0.261218 0.038647 0.141220 +v -0.255774 -0.050103 0.135776 +v -0.261218 -0.043853 0.141220 +v -0.255774 0.044897 0.135776 +v -0.267302 0.038647 0.133807 +v -0.260900 -0.050103 0.129529 +v -0.267302 -0.043853 0.133807 +v -0.260900 0.044897 0.129529 +v -0.253805 0.038647 0.147304 +v -0.249527 -0.050103 0.140903 +v -0.253805 -0.043853 0.147305 +v -0.249527 0.044897 0.140902 +v -0.217081 0.038646 0.058646 +v -0.217081 -0.043853 0.058646 +v -0.218583 0.044896 0.066197 +v -0.218583 -0.050103 0.066197 +v -0.185948 0.038646 0.079448 +v -0.185948 -0.043853 0.079448 +v -0.192350 0.044897 0.083725 +v -0.192350 -0.050103 0.083726 +v -0.192032 0.038646 0.072034 +v -0.192032 -0.043853 0.072035 +v -0.197477 0.044897 0.077479 +v -0.197477 -0.050103 0.077479 +v -0.207904 0.038646 0.061430 +v -0.207904 -0.043853 0.061430 +v -0.210850 0.044896 0.068543 +v -0.210850 -0.050103 0.068543 +v -0.226625 0.038647 0.155549 +v -0.226625 -0.043853 0.155549 +v -0.226625 -0.050103 0.147850 +v -0.226625 0.044897 0.147850 +v -0.185948 0.038647 0.133807 +v -0.185948 -0.043853 0.133807 +v -0.192350 0.044897 0.129529 +v -0.192350 -0.050103 0.129530 +v -0.236169 0.038647 0.154609 +v -0.236169 -0.043853 0.154609 +v -0.234667 -0.050103 0.147058 +v -0.234667 0.044897 0.147057 +v -0.261218 0.038646 0.072034 +v -0.261218 -0.043853 0.072035 +v -0.255774 -0.050103 0.077479 +v -0.255774 0.044897 0.077479 +v -0.181427 0.038647 0.087906 +v -0.181427 -0.043853 0.087906 +v -0.188541 0.044897 0.090852 +v -0.188541 -0.050103 0.090853 +v -0.253805 0.038646 0.065950 +v -0.253805 -0.043853 0.065951 +v -0.249527 -0.050103 0.072353 +v -0.249527 0.044897 0.072352 +v -0.245347 0.038647 0.151825 +v -0.245347 -0.043853 0.151825 +v -0.242400 -0.050103 0.144712 +v -0.242400 0.044897 0.144712 +v -0.271823 0.038647 0.087906 +v -0.271823 -0.043853 0.087906 +v -0.264710 -0.050103 0.090853 +v -0.264710 0.044897 0.090852 +v -0.274607 0.038647 0.097083 +v -0.274607 -0.043853 0.097083 +v -0.267055 -0.050103 0.098586 +v -0.267055 0.044897 0.098585 +v -0.238174 0.080868 0.135993 +v -0.235464 0.080868 0.140048 +v -0.231409 0.080868 0.142758 +v -0.226625 0.080868 0.143710 +v -0.221842 0.080868 0.142758 +v -0.217786 0.080868 0.140048 +v -0.215077 0.080868 0.135993 +v -0.214125 0.080868 0.131210 +v -0.215077 0.080868 0.126426 +v -0.217786 0.080868 0.122371 +v -0.221842 0.080868 0.119661 +v -0.226625 0.080868 0.118710 +v -0.231409 0.080868 0.119661 +v -0.235464 0.080868 0.122371 +v -0.238174 0.080868 0.126426 +v -0.239125 0.080868 0.131210 +v -0.118798 0.058162 -0.064381 +v -0.153102 0.058162 -0.065341 +v -0.119798 0.070662 -0.020898 +v -0.119798 0.058163 -0.020898 +v -0.118798 0.070662 -0.064381 +v -0.153102 0.070662 -0.065341 +v -0.242204 0.085241 0.137663 +v -0.238549 0.085241 0.143133 +v -0.233078 0.085241 0.146789 +v -0.226625 0.085241 0.148072 +v -0.220172 0.085241 0.146789 +v -0.214702 0.085241 0.143133 +v -0.211046 0.085241 0.137663 +v -0.209763 0.085241 0.131210 +v -0.211046 0.085241 0.124757 +v -0.214702 0.085241 0.119286 +v -0.220172 0.085241 0.115631 +v -0.226625 0.085241 0.114347 +v -0.233078 0.085241 0.115631 +v -0.238549 0.085241 0.119286 +v -0.242204 0.085241 0.124757 +v -0.243488 0.085241 0.131210 +v -0.242204 0.097249 0.137663 +v -0.238549 0.097249 0.143133 +v -0.233078 0.097249 0.146789 +v -0.226625 0.097249 0.148072 +v -0.220172 0.097249 0.146789 +v -0.214702 0.097249 0.143133 +v -0.211046 0.097249 0.137663 +v -0.209763 0.097249 0.131210 +v -0.211046 0.097249 0.124757 +v -0.214702 0.097249 0.119286 +v -0.220172 0.097249 0.115631 +v -0.226625 0.097249 0.114347 +v -0.233078 0.097249 0.115631 +v -0.238549 0.097249 0.119286 +v -0.242204 0.097249 0.124757 +v -0.243488 0.097249 0.131210 +v -0.238174 -0.086074 0.135994 +v -0.235464 -0.086074 0.140049 +v -0.231409 -0.086074 0.142759 +v -0.226625 -0.086074 0.143710 +v -0.221842 -0.086074 0.142759 +v -0.217786 -0.086074 0.140049 +v -0.215077 -0.086074 0.135994 +v -0.214125 -0.086074 0.131210 +v -0.215077 -0.086074 0.126427 +v -0.217786 -0.086074 0.122372 +v -0.221842 -0.086074 0.119662 +v -0.226625 -0.086074 0.118710 +v -0.231409 -0.086074 0.119662 +v -0.235464 -0.086074 0.122372 +v -0.238174 -0.086074 0.126427 +v -0.239125 -0.086074 0.131210 +v -0.118798 -0.063370 -0.064380 +v -0.153102 -0.063370 -0.065341 +v -0.119798 -0.075870 -0.020898 +v -0.119798 -0.063370 -0.020898 +v -0.118798 -0.075870 -0.064380 +v -0.153102 -0.075870 -0.065341 +v -0.242204 -0.090448 0.137663 +v -0.238549 -0.090448 0.143134 +v -0.233078 -0.090448 0.146789 +v -0.226625 -0.090448 0.148073 +v -0.220172 -0.090448 0.146789 +v -0.214702 -0.090448 0.143134 +v -0.211046 -0.090448 0.137663 +v -0.209763 -0.090448 0.131210 +v -0.211046 -0.090448 0.124757 +v -0.214702 -0.090448 0.119287 +v -0.220172 -0.090448 0.115631 +v -0.226625 -0.090448 0.114348 +v -0.233078 -0.090448 0.115631 +v -0.238549 -0.090448 0.119287 +v -0.242204 -0.090448 0.124757 +v -0.243488 -0.090448 0.131210 +v -0.242204 -0.102455 0.137663 +v -0.238549 -0.102455 0.143134 +v -0.233078 -0.102455 0.146789 +v -0.226625 -0.102455 0.148073 +v -0.220172 -0.102455 0.146789 +v -0.214702 -0.102455 0.143134 +v -0.211046 -0.102455 0.137663 +v -0.209763 -0.102455 0.131210 +v -0.211046 -0.102455 0.124757 +v -0.214702 -0.102455 0.119287 +v -0.220172 -0.102455 0.115631 +v -0.226625 -0.102455 0.114348 +v -0.233078 -0.102455 0.115631 +v -0.238549 -0.102455 0.119287 +v -0.242204 -0.102455 0.124757 +v -0.243488 -0.102455 0.131210 +v -0.259290 0.058163 0.149330 +v -0.261802 0.058163 0.145258 +v -0.261802 0.070663 0.145258 +v -0.259290 0.070663 0.149330 +v -0.252707 0.070663 0.149256 +v -0.246280 0.070663 0.144921 +v -0.246280 0.058163 0.144921 +v -0.252707 0.058163 0.149256 +v -0.261802 -0.063369 0.145258 +v -0.259290 -0.063369 0.149330 +v -0.259290 -0.075869 0.149330 +v -0.261802 -0.075869 0.145258 +v -0.246280 -0.075869 0.144922 +v -0.252707 -0.075869 0.149257 +v -0.252707 -0.063369 0.149257 +v -0.246280 -0.063369 0.144922 +v -0.203235 0.058163 0.146877 +v -0.207277 0.058163 0.149334 +v -0.207277 0.070663 0.149334 +v -0.203235 0.070663 0.146877 +v -0.214707 0.070663 0.146413 +v -0.212076 0.070663 0.149252 +v -0.212076 0.058163 0.149252 +v -0.214707 0.058163 0.146413 +v -0.207277 -0.063369 0.149334 +v -0.203235 -0.063369 0.146878 +v -0.203235 -0.075869 0.146878 +v -0.207277 -0.075869 0.149334 +v -0.212076 -0.075869 0.149253 +v -0.214707 -0.075869 0.146413 +v -0.214707 -0.063369 0.146413 +v -0.212076 -0.063369 0.149253 +v -0.215953 0.070663 0.124087 +v -0.213733 0.070663 0.130018 +v -0.225321 0.070663 0.118376 +v -0.219448 0.070663 0.120523 +v -0.236948 0.070663 0.122545 +v -0.232166 0.070663 0.119022 +v -0.232166 0.058163 0.119023 +v -0.236948 0.058163 0.122545 +v -0.219448 0.058163 0.120523 +v -0.225321 0.058163 0.118376 +v -0.213733 0.058163 0.130018 +v -0.215953 0.058163 0.124087 +v -0.213733 -0.075869 0.130019 +v -0.215953 -0.075869 0.124088 +v -0.219448 -0.075869 0.120524 +v -0.225321 -0.075869 0.118376 +v -0.232166 -0.075869 0.119023 +v -0.236948 -0.075869 0.122546 +v -0.236948 -0.063369 0.122545 +v -0.232166 -0.063369 0.119023 +v -0.225321 -0.063369 0.118376 +v -0.219448 -0.063369 0.120524 +v -0.215953 -0.063369 0.124088 +v -0.213733 -0.063369 0.130019 +v 0.252812 0.126210 -0.487497 +v 0.252811 -0.136289 -0.487500 +v 0.253193 0.126210 -0.485584 +v 0.253192 -0.136289 -0.485586 +v 0.254277 0.126210 -0.483962 +v 0.254275 -0.136289 -0.483964 +v 0.255899 0.126210 -0.482878 +v 0.255897 -0.136289 -0.482880 +v 0.257812 0.126210 -0.482497 +v 0.257811 -0.136289 -0.482500 +v 0.259726 0.126210 -0.482878 +v 0.259724 -0.136289 -0.482880 +v 0.261348 0.126210 -0.483962 +v 0.261346 -0.136289 -0.483964 +v 0.262432 0.126210 -0.485584 +v 0.262430 -0.136289 -0.485586 +v 0.262812 0.126210 -0.487497 +v 0.262811 -0.136289 -0.487500 +v 0.262432 0.126210 -0.489411 +v 0.262430 -0.136289 -0.489413 +v 0.261348 0.126210 -0.491033 +v 0.261346 -0.136289 -0.491035 +v 0.259726 0.126210 -0.492117 +v 0.259724 -0.136289 -0.492119 +v 0.257812 0.126210 -0.492497 +v 0.257811 -0.136289 -0.492499 +v 0.255899 0.126210 -0.492117 +v 0.255897 -0.136289 -0.492119 +v 0.254277 0.126210 -0.491033 +v 0.254275 -0.136289 -0.491035 +v 0.253193 0.126210 -0.489411 +v 0.253192 -0.136289 -0.489413 +v 0.257811 0.011174 -0.452500 +v 0.257811 0.017424 -0.452500 +v 0.249151 0.011174 -0.457500 +v 0.249151 0.017424 -0.457500 +v 0.249151 0.011174 -0.467499 +v 0.249151 0.017424 -0.467499 +v 0.257811 0.011174 -0.472500 +v 0.257811 0.017424 -0.472500 +v 0.266471 0.011174 -0.467500 +v 0.266471 0.017424 -0.467500 +v 0.266471 0.011174 -0.457500 +v 0.266471 0.017424 -0.457500 +v 0.257811 -0.011246 -0.452500 +v 0.257811 -0.017496 -0.452500 +v 0.266471 -0.011246 -0.457500 +v 0.266471 -0.017496 -0.457500 +v 0.266471 -0.011246 -0.467499 +v 0.266471 -0.017496 -0.467499 +v 0.257811 -0.011246 -0.472500 +v 0.257811 -0.017496 -0.472500 +v 0.249151 -0.011246 -0.467500 +v 0.249151 -0.017496 -0.467500 +v 0.249151 -0.011246 -0.457500 +v 0.249151 -0.017496 -0.457500 +v -0.232187 0.012493 -0.452500 +v -0.232187 0.006243 -0.452500 +v -0.223527 0.012493 -0.457500 +v -0.223527 0.006243 -0.457500 +v -0.223527 0.012493 -0.467499 +v -0.223527 0.006243 -0.467499 +v -0.232187 0.012493 -0.472500 +v -0.232187 0.006243 -0.472500 +v -0.240847 0.012493 -0.467500 +v -0.240847 0.006243 -0.467500 +v -0.240847 0.012493 -0.457500 +v -0.240847 0.006243 -0.457500 +v -0.232187 0.012493 -0.477500 +v -0.232187 0.006243 -0.477500 +v -0.223527 0.012493 -0.482499 +v -0.223527 0.006243 -0.482499 +v -0.223527 0.012493 -0.492499 +v -0.223527 0.006243 -0.492499 +v -0.232187 0.012493 -0.497499 +v -0.232187 0.006243 -0.497499 +v -0.240847 0.012493 -0.492500 +v -0.240847 0.006243 -0.492500 +v -0.240847 0.012493 -0.482500 +v -0.240847 0.006243 -0.482500 +v -0.232187 0.024959 -0.477500 +v -0.232187 0.031209 -0.477500 +v -0.240847 0.024959 -0.482499 +v -0.240847 0.031209 -0.482499 +v -0.240847 0.024959 -0.492499 +v -0.240847 0.031209 -0.492499 +v -0.232187 0.024959 -0.497499 +v -0.232187 0.031209 -0.497499 +v -0.223527 0.024959 -0.492500 +v -0.223527 0.031209 -0.492500 +v -0.223527 0.024959 -0.482500 +v -0.223527 0.031209 -0.482500 +v -0.232187 0.024959 -0.452500 +v -0.232187 0.031209 -0.452500 +v -0.240847 0.024959 -0.457500 +v -0.240847 0.031209 -0.457500 +v -0.240847 0.024959 -0.467499 +v -0.240847 0.031209 -0.467499 +v -0.232187 0.024959 -0.472500 +v -0.232187 0.031209 -0.472500 +v -0.223527 0.024959 -0.467500 +v -0.223527 0.031209 -0.467500 +v -0.223527 0.024959 -0.457500 +v -0.223527 0.031209 -0.457500 +v 0.271561 -0.117500 -0.500000 +v 0.244061 -0.117500 -0.500000 +v 0.271561 -0.095000 -0.499999 +v 0.244061 -0.095000 -0.499999 +v 0.268552 -0.114491 -0.441250 +v 0.271561 -0.117500 -0.444259 +v 0.247070 -0.114491 -0.441250 +v 0.244061 -0.117500 -0.444259 +v 0.268552 -0.098009 -0.441250 +v 0.271561 -0.095000 -0.444259 +v 0.247070 -0.098009 -0.441250 +v 0.244061 -0.095000 -0.444259 +v 0.269061 0.111210 -0.443750 +v -0.243437 0.111210 -0.443749 +v 0.269061 0.110830 -0.441836 +v -0.243437 0.110830 -0.441836 +v 0.269061 0.109746 -0.440214 +v -0.243437 0.109746 -0.440214 +v 0.269061 0.108124 -0.439130 +v -0.243437 0.108124 -0.439130 +v 0.269061 0.106210 -0.438750 +v -0.243437 0.106210 -0.438750 +v 0.269061 0.104297 -0.439130 +v -0.243437 0.104297 -0.439130 +v 0.269061 0.102675 -0.440214 +v -0.243437 0.102675 -0.440214 +v 0.269061 0.101591 -0.441836 +v -0.243437 0.101591 -0.441836 +v 0.269061 0.101210 -0.443750 +v -0.243437 0.101210 -0.443750 +v 0.269061 0.101591 -0.445663 +v -0.243437 0.101591 -0.445663 +v 0.269061 0.102675 -0.447285 +v -0.243437 0.102675 -0.447285 +v 0.269061 0.104297 -0.448369 +v -0.243437 0.104297 -0.448369 +v 0.269061 0.106210 -0.448750 +v -0.243437 0.106210 -0.448750 +v 0.269061 0.108124 -0.448369 +v -0.243437 0.108124 -0.448369 +v 0.269061 0.109746 -0.447285 +v -0.243437 0.109746 -0.447285 +v 0.269061 0.110830 -0.445663 +v -0.243437 0.110830 -0.445663 +v 0.132871 -0.132582 -0.420000 +v -0.132353 -0.132582 -0.420000 +v -0.132352 0.132642 -0.420000 +v 0.132872 0.132642 -0.420000 +v 0.132871 -0.132582 -0.416249 +v -0.132353 -0.132582 -0.416249 +v -0.132352 0.132642 -0.416249 +v 0.132872 0.132642 -0.416249 +v -0.082093 -0.119984 -0.420000 +v -0.082093 0.119981 -0.419998 +v 0.082094 0.119981 -0.419998 +v 0.082094 -0.119984 -0.420000 +v -0.082094 -0.119984 -0.432500 +v 0.082093 -0.119984 -0.432500 +v -0.082092 0.119981 -0.432500 +v 0.082094 0.119981 -0.432500 +v 0.132611 -0.127578 -0.432500 +v 0.127576 -0.132613 -0.432500 +v 0.131937 -0.130096 -0.432500 +v 0.130094 -0.131939 -0.432500 +v 0.127576 -0.132613 -0.420000 +v 0.132611 -0.127578 -0.420000 +v 0.130094 -0.131939 -0.420000 +v 0.131937 -0.130096 -0.420000 +v -0.127578 -0.132613 -0.432500 +v -0.132613 -0.127578 -0.432500 +v -0.130095 -0.131939 -0.432500 +v -0.131938 -0.130096 -0.432500 +v -0.132613 -0.127578 -0.420000 +v -0.127578 -0.132613 -0.420000 +v -0.131938 -0.130096 -0.420000 +v -0.130095 -0.131939 -0.420000 +v 0.127578 0.132611 -0.432500 +v 0.132613 0.127576 -0.432500 +v 0.130095 0.131936 -0.432500 +v 0.131938 0.130093 -0.432500 +v 0.132613 0.127576 -0.419998 +v 0.127578 0.132611 -0.419998 +v 0.131938 0.130093 -0.419998 +v 0.130095 0.131936 -0.419998 +v -0.132611 0.127576 -0.432500 +v -0.127576 0.132611 -0.432500 +v -0.131937 0.130093 -0.432500 +v -0.130094 0.131936 -0.432500 +v -0.127576 0.132611 -0.419998 +v -0.132611 0.127576 -0.419998 +v -0.130094 0.131936 -0.419998 +v -0.131937 0.130093 -0.419998 +v -0.127576 0.119981 -0.432500 +v -0.132611 0.125016 -0.432500 +v -0.130094 0.120655 -0.432500 +v -0.131937 0.122498 -0.432500 +v -0.132613 -0.125019 -0.432500 +v -0.127578 -0.119984 -0.432500 +v -0.131938 -0.122501 -0.432500 +v -0.130095 -0.120658 -0.432500 +v -0.127577 -0.119984 -0.420000 +v -0.132613 -0.125019 -0.420000 +v -0.130095 -0.120658 -0.420000 +v -0.131938 -0.122501 -0.420000 +v -0.132611 0.125016 -0.419998 +v -0.127576 0.119981 -0.419998 +v -0.131937 0.122498 -0.419998 +v -0.130094 0.120655 -0.419998 +v 0.127576 -0.119984 -0.432500 +v 0.132611 -0.125019 -0.432500 +v 0.130094 -0.120658 -0.432500 +v 0.131937 -0.122501 -0.432500 +v 0.132613 0.125016 -0.432500 +v 0.127578 0.119981 -0.432500 +v 0.131938 0.122498 -0.432500 +v 0.130095 0.120655 -0.432500 +v 0.127578 0.119981 -0.419998 +v 0.132613 0.125016 -0.419998 +v 0.130095 0.120655 -0.419998 +v 0.131938 0.122498 -0.419998 +v 0.132611 -0.125019 -0.420000 +v 0.127576 -0.119984 -0.420000 +v 0.131937 -0.122501 -0.420000 +v 0.130094 -0.120658 -0.420000 +v 0.124999 -0.125001 -0.416250 +v -0.125000 -0.125001 -0.416250 +v -0.124999 0.124998 -0.416248 +v 0.125000 0.124998 -0.416248 +v 0.124999 -0.125001 -0.412500 +v -0.125000 -0.125001 -0.412500 +v -0.124999 0.124998 -0.412498 +v 0.125000 0.124998 -0.412498 +v -0.074998 0.110037 -0.432636 +v -0.043748 0.110037 -0.432636 +v -0.074998 0.115449 -0.432636 +v -0.043748 0.115449 -0.432636 +v -0.074998 0.096972 -0.432636 +v -0.043749 0.096972 -0.432636 +v -0.074998 0.102384 -0.432636 +v -0.043748 0.102384 -0.432636 +v -0.074998 0.115449 -0.447488 +v -0.074998 0.114061 -0.450840 +v -0.043748 0.114061 -0.450840 +v -0.043748 0.115449 -0.447488 +v -0.074998 0.111426 -0.453475 +v -0.074998 0.108073 -0.454863 +v -0.043748 0.108073 -0.454863 +v -0.043748 0.111426 -0.453475 +v -0.074998 0.104347 -0.454863 +v -0.074998 0.100995 -0.453475 +v -0.043748 0.100995 -0.453475 +v -0.043748 0.104347 -0.454863 +v -0.074998 0.098360 -0.450840 +v -0.074998 0.096972 -0.447488 +v -0.043749 0.096972 -0.447488 +v -0.043749 0.098360 -0.450840 +v -0.074998 -0.102423 -0.432636 +v -0.043748 -0.102423 -0.432636 +v -0.074998 -0.097011 -0.432636 +v -0.043748 -0.097011 -0.432636 +v -0.074998 -0.115488 -0.432636 +v -0.043749 -0.115488 -0.432636 +v -0.074998 -0.110076 -0.432636 +v -0.043748 -0.110076 -0.432636 +v -0.074998 -0.097011 -0.447488 +v -0.074998 -0.098400 -0.450840 +v -0.043748 -0.098400 -0.450840 +v -0.043748 -0.097011 -0.447488 +v -0.074998 -0.101034 -0.453475 +v -0.074998 -0.104387 -0.454863 +v -0.043748 -0.104387 -0.454863 +v -0.043748 -0.101034 -0.453475 +v -0.074998 -0.108113 -0.454863 +v -0.074998 -0.111465 -0.453475 +v -0.043749 -0.111465 -0.453475 +v -0.043748 -0.108113 -0.454863 +v -0.074998 -0.114100 -0.450840 +v -0.074998 -0.115488 -0.447488 +v -0.043749 -0.115488 -0.447488 +v -0.043749 -0.114100 -0.450840 +v 0.043749 -0.102423 -0.432636 +v 0.074999 -0.102423 -0.432636 +v 0.043749 -0.097011 -0.432636 +v 0.074999 -0.097011 -0.432636 +v 0.043749 -0.115488 -0.432636 +v 0.074999 -0.115488 -0.432636 +v 0.043749 -0.110076 -0.432636 +v 0.074999 -0.110076 -0.432636 +v 0.043749 -0.097011 -0.447488 +v 0.043749 -0.098400 -0.450840 +v 0.074999 -0.098399 -0.450840 +v 0.074999 -0.097011 -0.447488 +v 0.043749 -0.101034 -0.453475 +v 0.043749 -0.104387 -0.454863 +v 0.074999 -0.104387 -0.454863 +v 0.074999 -0.101034 -0.453475 +v 0.043749 -0.108113 -0.454863 +v 0.043749 -0.111465 -0.453475 +v 0.074999 -0.111465 -0.453475 +v 0.074999 -0.108113 -0.454863 +v 0.043749 -0.114100 -0.450840 +v 0.043749 -0.115488 -0.447488 +v 0.074999 -0.115488 -0.447488 +v 0.074999 -0.114100 -0.450840 +v 0.043749 0.110037 -0.432636 +v 0.074999 0.110037 -0.432636 +v 0.043749 0.115449 -0.432636 +v 0.074999 0.115449 -0.432636 +v 0.043749 0.096972 -0.432636 +v 0.074999 0.096972 -0.432636 +v 0.043749 0.102384 -0.432636 +v 0.074999 0.102384 -0.432636 +v 0.043749 0.115449 -0.447488 +v 0.043749 0.114061 -0.450840 +v 0.074999 0.114061 -0.450840 +v 0.074999 0.115449 -0.447488 +v 0.043749 0.111426 -0.453475 +v 0.043749 0.108073 -0.454863 +v 0.074999 0.108073 -0.454863 +v 0.074999 0.111426 -0.453475 +v 0.043749 0.104347 -0.454863 +v 0.043749 0.100995 -0.453475 +v 0.074999 0.100995 -0.453475 +v 0.074999 0.104347 -0.454863 +v 0.043749 0.098360 -0.450840 +v 0.043749 0.096972 -0.447488 +v 0.074999 0.096972 -0.447488 +v 0.074999 0.098360 -0.450840 +v 0.014688 -0.011249 -0.432259 +v -0.014687 -0.011249 -0.432259 +v 0.014688 -0.011249 -0.459759 +v -0.014687 -0.011249 -0.459759 +v 0.014688 0.011251 -0.432259 +v -0.014687 0.011251 -0.432259 +v 0.014688 0.011251 -0.459759 +v -0.014687 0.011251 -0.459759 +v 0.269061 -0.101250 -0.443750 +v -0.243437 -0.101250 -0.443749 +v 0.269061 -0.101630 -0.441836 +v -0.243437 -0.101630 -0.441836 +v 0.269061 -0.102714 -0.440214 +v -0.243437 -0.102714 -0.440214 +v 0.269061 -0.104336 -0.439130 +v -0.243437 -0.104336 -0.439130 +v 0.269061 -0.106250 -0.438750 +v -0.243437 -0.106250 -0.438750 +v 0.269061 -0.108163 -0.439130 +v -0.243437 -0.108163 -0.439130 +v 0.269061 -0.109785 -0.440214 +v -0.243437 -0.109785 -0.440214 +v 0.269061 -0.110869 -0.441836 +v -0.243437 -0.110869 -0.441836 +v 0.269061 -0.111250 -0.443750 +v -0.243437 -0.111250 -0.443750 +v 0.269061 -0.110869 -0.445663 +v -0.243437 -0.110869 -0.445663 +v 0.269061 -0.109785 -0.447285 +v -0.243437 -0.109785 -0.447285 +v 0.269061 -0.108163 -0.448369 +v -0.243437 -0.108163 -0.448369 +v 0.269061 -0.106250 -0.448750 +v -0.243437 -0.106250 -0.448750 +v 0.269061 -0.104336 -0.448369 +v -0.243437 -0.104336 -0.448369 +v 0.269061 -0.102714 -0.447285 +v -0.243437 -0.102714 -0.447285 +v 0.269061 -0.101630 -0.445663 +v -0.243437 -0.101630 -0.445663 +v -0.237186 0.201210 -0.462497 +v -0.237187 -0.211288 -0.462500 +v -0.236805 0.201210 -0.460584 +v -0.236806 -0.211288 -0.460586 +v -0.235721 0.201210 -0.458962 +v -0.235723 -0.211288 -0.458964 +v -0.234099 0.201210 -0.457878 +v -0.234101 -0.211288 -0.457880 +v -0.232186 0.201210 -0.457497 +v -0.232187 -0.211288 -0.457500 +v -0.230272 0.201210 -0.457878 +v -0.230274 -0.211288 -0.457880 +v -0.228650 0.201210 -0.458962 +v -0.228652 -0.211288 -0.458964 +v -0.227566 0.201210 -0.460584 +v -0.227568 -0.211288 -0.460586 +v -0.227186 0.201210 -0.462497 +v -0.227187 -0.211288 -0.462500 +v -0.227566 0.201210 -0.464411 +v -0.227568 -0.211288 -0.464413 +v -0.228650 0.201210 -0.466033 +v -0.228652 -0.211288 -0.466035 +v -0.230272 0.201210 -0.467117 +v -0.230274 -0.211288 -0.467119 +v -0.232186 0.201210 -0.467497 +v -0.232187 -0.211288 -0.467500 +v -0.234099 0.201210 -0.467117 +v -0.234101 -0.211288 -0.467119 +v -0.235721 0.201210 -0.466033 +v -0.235723 -0.211288 -0.466035 +v -0.236805 0.201210 -0.464411 +v -0.236806 -0.211288 -0.464413 +v -0.167187 0.012461 -0.435000 +v -0.247187 0.012461 -0.502499 +v -0.247187 0.012461 -0.435000 +v -0.167187 0.024961 -0.435000 +v -0.247187 0.024961 -0.502499 +v -0.247187 0.024961 -0.435000 +v -0.207187 0.012461 -0.502499 +v -0.167187 0.012461 -0.450000 +v -0.207187 0.024961 -0.502499 +v -0.167187 0.024961 -0.450000 +v -0.207187 0.024961 -0.450000 +v -0.207187 0.012461 -0.450000 +v -0.167187 0.024961 -0.489999 +v -0.222187 0.079961 -0.489999 +v -0.222187 0.024961 -0.489999 +v -0.167187 0.024960 -0.435000 +v -0.222187 0.079960 -0.435000 +v -0.222187 0.024960 -0.435000 +v -0.197812 0.024961 -0.462500 +v -0.197812 -0.000039 -0.462500 +v -0.196897 0.024961 -0.460290 +v -0.196897 -0.000039 -0.460290 +v -0.194687 0.024961 -0.459375 +v -0.194687 -0.000039 -0.459375 +v -0.192478 0.024961 -0.460290 +v -0.192478 -0.000039 -0.460290 +v -0.191562 0.024961 -0.462500 +v -0.191562 -0.000039 -0.462500 +v -0.192478 0.024961 -0.464709 +v -0.192478 -0.000039 -0.464709 +v -0.194687 0.024961 -0.465625 +v -0.194687 -0.000039 -0.465625 +v -0.196897 0.024961 -0.464709 +v -0.196897 -0.000039 -0.464709 +v -0.167187 0.031211 -0.489999 +v -0.222187 0.073711 -0.489999 +v -0.222187 0.073710 -0.435000 +v -0.167187 0.073710 -0.435000 +v -0.222187 0.031211 -0.489999 +v -0.222187 0.031210 -0.435000 +v -0.167187 0.031210 -0.435000 +v -0.167187 0.079961 -0.489999 +v -0.167187 0.079960 -0.435000 +v -0.167187 0.073711 -0.489999 +v -0.194547 -0.003788 -0.455146 +v -0.194547 -0.003788 -0.452646 +v -0.194547 0.003711 -0.455146 +v -0.194547 0.003711 -0.452646 +v 0.224250 -0.003791 -0.455141 +v 0.224250 -0.003791 -0.452641 +v 0.224250 0.003711 -0.455141 +v 0.224250 0.003711 -0.452641 +v -0.194547 -0.003788 -0.472176 +v -0.194547 -0.003788 -0.469676 +v -0.194547 0.003711 -0.472176 +v -0.194547 0.003711 -0.469676 +v 0.224250 -0.003791 -0.472171 +v 0.224250 -0.003791 -0.469671 +v 0.224250 0.003711 -0.472171 +v 0.224250 0.003711 -0.469671 +v -0.206594 0.008035 -0.462500 +v -0.206594 -0.010715 -0.462500 +v -0.205688 0.008035 -0.457943 +v -0.205688 -0.010715 -0.457943 +v -0.203107 0.008035 -0.454080 +v -0.203107 -0.010715 -0.454080 +v -0.199244 0.008035 -0.451499 +v -0.199244 -0.010715 -0.451499 +v -0.194687 0.008035 -0.450592 +v -0.194687 -0.010715 -0.450592 +v -0.190130 0.008035 -0.451499 +v -0.190130 -0.010715 -0.451499 +v -0.186268 0.008035 -0.454080 +v -0.186268 -0.010715 -0.454080 +v -0.183686 0.008035 -0.457943 +v -0.183686 -0.010715 -0.457943 +v -0.182780 0.008035 -0.462500 +v -0.182780 -0.010715 -0.462500 +v -0.183686 0.008035 -0.467056 +v -0.183686 -0.010715 -0.467056 +v -0.186268 0.008035 -0.470919 +v -0.186268 -0.010715 -0.470919 +v -0.190131 0.008035 -0.473500 +v -0.190131 -0.010715 -0.473500 +v -0.194687 0.008035 -0.474407 +v -0.194687 -0.010715 -0.474407 +v -0.199244 0.008035 -0.473500 +v -0.199244 -0.010715 -0.473500 +v -0.203107 0.008035 -0.470919 +v -0.203107 -0.010715 -0.470919 +v -0.205688 0.008035 -0.467056 +v -0.205688 -0.010715 -0.467056 +v -0.206594 0.005356 -0.462500 +v -0.204820 0.005079 -0.462500 +v -0.204820 -0.005081 -0.462500 +v -0.206594 -0.005358 -0.462500 +v -0.205688 -0.005358 -0.457943 +v -0.204048 -0.005081 -0.458622 +v -0.204048 0.005079 -0.458622 +v -0.205688 0.005356 -0.457943 +v -0.203107 -0.005358 -0.454080 +v -0.201852 -0.005081 -0.455335 +v -0.201852 0.005078 -0.455335 +v -0.203107 0.005356 -0.454080 +v -0.199244 -0.005358 -0.451499 +v -0.198565 -0.005081 -0.453139 +v -0.198565 0.005078 -0.453139 +v -0.199244 0.005356 -0.451499 +v -0.194687 -0.005358 -0.450592 +v -0.194687 -0.005081 -0.452367 +v -0.194687 0.005078 -0.452367 +v -0.194687 0.005356 -0.450592 +v -0.190130 -0.005358 -0.451499 +v -0.190810 -0.005081 -0.453139 +v -0.190810 0.005078 -0.453139 +v -0.190130 0.005356 -0.451499 +v -0.186268 -0.005358 -0.454080 +v -0.187523 -0.005081 -0.455335 +v -0.187523 0.005078 -0.455335 +v -0.186268 0.005356 -0.454080 +v -0.183686 -0.005358 -0.457943 +v -0.185326 -0.005081 -0.458622 +v -0.185326 0.005079 -0.458622 +v -0.183686 0.005356 -0.457943 +v -0.182780 -0.005358 -0.462500 +v -0.184555 -0.005081 -0.462500 +v -0.184555 0.005079 -0.462500 +v -0.182780 0.005356 -0.462500 +v -0.183686 -0.005358 -0.467056 +v -0.185326 -0.005081 -0.466377 +v -0.185326 0.005079 -0.466377 +v -0.183686 0.005356 -0.467056 +v -0.186268 -0.005358 -0.470919 +v -0.187523 -0.005081 -0.469664 +v -0.187523 0.005079 -0.469664 +v -0.186268 0.005356 -0.470919 +v -0.190131 -0.005358 -0.473500 +v -0.190810 -0.005081 -0.471861 +v -0.190810 0.005079 -0.471861 +v -0.190131 0.005356 -0.473500 +v -0.194687 -0.005358 -0.474407 +v -0.194687 -0.005081 -0.472632 +v -0.194687 0.005079 -0.472632 +v -0.194687 0.005356 -0.474407 +v -0.199244 -0.005358 -0.473500 +v -0.198565 -0.005081 -0.471861 +v -0.198565 0.005079 -0.471861 +v -0.199244 0.005356 -0.473500 +v -0.203107 -0.005358 -0.470919 +v -0.201852 -0.005081 -0.469664 +v -0.201852 0.005079 -0.469664 +v -0.203107 0.005356 -0.470919 +v -0.205688 -0.005358 -0.467056 +v -0.204048 -0.005081 -0.466377 +v -0.204048 0.005079 -0.466377 +v -0.205688 0.005356 -0.467056 +v 0.252812 0.126210 -0.462497 +v 0.252811 -0.136289 -0.462500 +v 0.253193 0.126210 -0.460584 +v 0.253192 -0.136289 -0.460586 +v 0.254277 0.126210 -0.458962 +v 0.254275 -0.136289 -0.458964 +v 0.255899 0.126210 -0.457878 +v 0.255897 -0.136289 -0.457880 +v 0.257812 0.126210 -0.457497 +v 0.257811 -0.136289 -0.457500 +v 0.259726 0.126210 -0.457878 +v 0.259724 -0.136289 -0.457880 +v 0.261348 0.126210 -0.458962 +v 0.261346 -0.136289 -0.458964 +v 0.262432 0.126210 -0.460584 +v 0.262430 -0.136289 -0.460586 +v 0.262812 0.126210 -0.462497 +v 0.262811 -0.136289 -0.462500 +v 0.262432 0.126210 -0.464411 +v 0.262430 -0.136289 -0.464413 +v 0.261348 0.126210 -0.466033 +v 0.261346 -0.136289 -0.466035 +v 0.259726 0.126210 -0.467117 +v 0.259724 -0.136289 -0.467119 +v 0.257812 0.126210 -0.467497 +v 0.257811 -0.136289 -0.467500 +v 0.255899 0.126210 -0.467117 +v 0.255897 -0.136289 -0.467119 +v 0.254277 0.126210 -0.466033 +v 0.254275 -0.136289 -0.466035 +v 0.253193 0.126210 -0.464411 +v 0.253192 -0.136289 -0.464413 +v -0.237186 0.126210 -0.487497 +v -0.237187 -0.136289 -0.487499 +v -0.236805 0.126210 -0.485584 +v -0.236806 -0.136289 -0.485586 +v -0.235721 0.126210 -0.483962 +v -0.235723 -0.136289 -0.483964 +v -0.234099 0.126210 -0.482878 +v -0.234101 -0.136289 -0.482880 +v -0.232186 0.126210 -0.482497 +v -0.232187 -0.136289 -0.482499 +v -0.230272 0.126210 -0.482878 +v -0.230274 -0.136289 -0.482880 +v -0.228650 0.126210 -0.483962 +v -0.228652 -0.136289 -0.483964 +v -0.227566 0.126210 -0.485584 +v -0.227568 -0.136289 -0.485586 +v -0.227186 0.126210 -0.487497 +v -0.227187 -0.136289 -0.487499 +v -0.227566 0.126210 -0.489411 +v -0.227568 -0.136289 -0.489413 +v -0.228650 0.126210 -0.491033 +v -0.228652 -0.136289 -0.491035 +v -0.230272 0.126210 -0.492117 +v -0.230274 -0.136289 -0.492119 +v -0.232186 0.126210 -0.492497 +v -0.232187 -0.136289 -0.492499 +v -0.234099 0.126210 -0.492117 +v -0.234101 -0.136289 -0.492119 +v -0.235721 0.126210 -0.491033 +v -0.235723 -0.136289 -0.491035 +v -0.236805 0.126210 -0.489411 +v -0.236806 -0.136289 -0.489413 +v 0.271561 0.094960 -0.500000 +v 0.244061 0.094960 -0.500000 +v 0.271561 0.117460 -0.499999 +v 0.244061 0.117460 -0.499999 +v 0.268552 0.097969 -0.441250 +v 0.271561 0.094960 -0.444259 +v 0.247070 0.097969 -0.441250 +v 0.244061 0.094960 -0.444259 +v 0.268552 0.114451 -0.441250 +v 0.271561 0.117460 -0.444259 +v 0.247070 0.114451 -0.441250 +v 0.244061 0.117460 -0.444259 +v -0.218437 0.094960 -0.500000 +v -0.245937 0.094960 -0.500000 +v -0.218437 0.117460 -0.499999 +v -0.245937 0.117460 -0.499999 +v -0.221446 0.097969 -0.441250 +v -0.218437 0.094960 -0.444259 +v -0.242928 0.097969 -0.441250 +v -0.245937 0.094960 -0.444259 +v -0.221446 0.114451 -0.441250 +v -0.218437 0.117460 -0.444259 +v -0.242928 0.114451 -0.441250 +v -0.245937 0.117460 -0.444259 +v -0.218437 -0.117500 -0.500000 +v -0.245937 -0.117500 -0.500000 +v -0.218437 -0.095000 -0.499999 +v -0.245937 -0.095000 -0.499999 +v -0.221446 -0.114491 -0.441250 +v -0.218437 -0.117500 -0.444259 +v -0.242928 -0.114491 -0.441250 +v -0.245937 -0.117500 -0.444259 +v -0.221446 -0.098009 -0.441250 +v -0.218437 -0.095000 -0.444259 +v -0.242928 -0.098009 -0.441250 +v -0.245937 -0.095000 -0.444259 +v 0.257811 -0.117500 -0.452500 +v 0.257811 -0.123750 -0.452500 +v 0.266471 -0.117500 -0.457500 +v 0.266471 -0.123750 -0.457500 +v 0.266471 -0.117500 -0.467499 +v 0.266471 -0.123750 -0.467499 +v 0.257811 -0.117500 -0.472500 +v 0.257811 -0.123750 -0.472500 +v 0.249151 -0.117499 -0.467500 +v 0.249151 -0.123749 -0.467500 +v 0.249151 -0.117499 -0.457500 +v 0.249151 -0.123749 -0.457500 +v 0.257811 -0.095000 -0.452500 +v 0.257811 -0.088750 -0.452500 +v 0.249151 -0.095000 -0.457500 +v 0.249151 -0.088750 -0.457500 +v 0.249151 -0.095000 -0.467499 +v 0.249151 -0.088750 -0.467499 +v 0.257811 -0.095000 -0.472500 +v 0.257811 -0.088750 -0.472500 +v 0.266471 -0.095000 -0.467500 +v 0.266471 -0.088750 -0.467500 +v 0.266471 -0.095000 -0.457500 +v 0.266471 -0.088750 -0.457500 +v 0.257811 -0.095000 -0.477500 +v 0.257811 -0.088750 -0.477500 +v 0.249151 -0.095000 -0.482499 +v 0.249151 -0.088750 -0.482499 +v 0.249151 -0.095000 -0.492499 +v 0.249151 -0.088750 -0.492499 +v 0.257811 -0.095000 -0.497499 +v 0.257811 -0.088750 -0.497499 +v 0.266471 -0.095000 -0.492500 +v 0.266471 -0.088750 -0.492500 +v 0.266471 -0.095000 -0.482500 +v 0.266471 -0.088750 -0.482500 +v 0.257811 0.117460 -0.477500 +v 0.257811 0.123710 -0.477500 +v 0.249151 0.117461 -0.482499 +v 0.249151 0.123710 -0.482499 +v 0.249151 0.117461 -0.492499 +v 0.249151 0.123710 -0.492499 +v 0.257811 0.117460 -0.497499 +v 0.257811 0.123710 -0.497499 +v 0.266471 0.117460 -0.492500 +v 0.266471 0.123710 -0.492500 +v 0.266471 0.117460 -0.482500 +v 0.266471 0.123710 -0.482500 +v 0.257811 0.117460 -0.452500 +v 0.257811 0.123710 -0.452500 +v 0.249151 0.117461 -0.457500 +v 0.249151 0.123710 -0.457500 +v 0.249151 0.117461 -0.467499 +v 0.249151 0.123710 -0.467499 +v 0.257811 0.117460 -0.472500 +v 0.257811 0.123710 -0.472500 +v 0.266471 0.117460 -0.467500 +v 0.266471 0.123710 -0.467500 +v 0.266471 0.117460 -0.457500 +v 0.266471 0.123710 -0.457500 +v 0.257811 0.094960 -0.452500 +v 0.257811 0.088711 -0.452500 +v 0.266471 0.094960 -0.457500 +v 0.266471 0.088710 -0.457500 +v 0.266471 0.094960 -0.467499 +v 0.266471 0.088710 -0.467499 +v 0.257811 0.094960 -0.472500 +v 0.257811 0.088711 -0.472500 +v 0.249151 0.094961 -0.467500 +v 0.249151 0.088711 -0.467500 +v 0.249151 0.094961 -0.457500 +v 0.249151 0.088711 -0.457500 +v 0.257811 0.094960 -0.477500 +v 0.257811 0.088711 -0.477500 +v 0.266471 0.094960 -0.482499 +v 0.266471 0.088710 -0.482499 +v 0.266471 0.094960 -0.492499 +v 0.266471 0.088710 -0.492499 +v 0.257811 0.094960 -0.497499 +v 0.257811 0.088711 -0.497499 +v 0.249151 0.094961 -0.492500 +v 0.249151 0.088711 -0.492500 +v 0.249151 0.094961 -0.482500 +v 0.249151 0.088711 -0.482500 +v -0.232187 0.094960 -0.477500 +v -0.232187 0.088710 -0.477500 +v -0.223527 0.094960 -0.482499 +v -0.223527 0.088710 -0.482499 +v -0.223527 0.094960 -0.492499 +v -0.223527 0.088710 -0.492499 +v -0.232187 0.094960 -0.497499 +v -0.232187 0.088710 -0.497499 +v -0.240847 0.094961 -0.492500 +v -0.240847 0.088711 -0.492500 +v -0.240847 0.094961 -0.482500 +v -0.240847 0.088711 -0.482500 +v -0.232187 0.094960 -0.452500 +v -0.232187 0.088710 -0.452500 +v -0.223527 0.094960 -0.457500 +v -0.223527 0.088710 -0.457500 +v -0.223527 0.094960 -0.467499 +v -0.223527 0.088710 -0.467499 +v -0.232187 0.094960 -0.472500 +v -0.232187 0.088710 -0.472500 +v -0.240847 0.094961 -0.467500 +v -0.240847 0.088711 -0.467500 +v -0.240847 0.094961 -0.457500 +v -0.240847 0.088711 -0.457500 +v -0.232187 0.117460 -0.452500 +v -0.232187 0.123710 -0.452500 +v -0.240847 0.117460 -0.457500 +v -0.240847 0.123710 -0.457500 +v -0.240847 0.117460 -0.467499 +v -0.240847 0.123710 -0.467499 +v -0.232187 0.117460 -0.472500 +v -0.232187 0.123710 -0.472500 +v -0.223527 0.117460 -0.467500 +v -0.223527 0.123710 -0.467500 +v -0.223527 0.117460 -0.457500 +v -0.223527 0.123710 -0.457500 +v -0.232187 0.117460 -0.477500 +v -0.232187 0.123710 -0.477500 +v -0.240847 0.117460 -0.482499 +v -0.240847 0.123710 -0.482499 +v -0.240847 0.117460 -0.492499 +v -0.240847 0.123710 -0.492499 +v -0.232187 0.117460 -0.497499 +v -0.232187 0.123710 -0.497499 +v -0.223527 0.117460 -0.492500 +v -0.223527 0.123710 -0.492500 +v -0.223527 0.117460 -0.482500 +v -0.223527 0.123710 -0.482500 +v -0.232187 -0.095000 -0.477500 +v -0.232187 -0.088750 -0.477500 +v -0.240847 -0.095000 -0.482499 +v -0.240847 -0.088750 -0.482499 +v -0.240847 -0.095000 -0.492499 +v -0.240847 -0.088750 -0.492499 +v -0.232187 -0.095000 -0.497499 +v -0.232187 -0.088750 -0.497499 +v -0.223527 -0.095000 -0.492500 +v -0.223527 -0.088750 -0.492500 +v -0.223527 -0.095000 -0.482500 +v -0.223527 -0.088750 -0.482500 +v -0.232187 -0.095000 -0.452500 +v -0.232187 -0.088750 -0.452500 +v -0.240847 -0.095000 -0.457500 +v -0.240847 -0.088750 -0.457500 +v -0.240847 -0.095000 -0.467499 +v -0.240847 -0.088750 -0.467499 +v -0.232187 -0.095000 -0.472500 +v -0.232187 -0.088750 -0.472500 +v -0.223527 -0.095000 -0.467500 +v -0.223527 -0.088750 -0.467500 +v -0.223527 -0.095000 -0.457500 +v -0.223527 -0.088750 -0.457500 +v -0.232187 -0.117500 -0.452500 +v -0.232187 -0.123750 -0.452500 +v -0.223527 -0.117500 -0.457500 +v -0.223527 -0.123750 -0.457500 +v -0.223527 -0.117500 -0.467499 +v -0.223527 -0.123750 -0.467499 +v -0.232187 -0.117500 -0.472500 +v -0.232187 -0.123750 -0.472500 +v -0.240847 -0.117500 -0.467500 +v -0.240847 -0.123749 -0.467500 +v -0.240847 -0.117500 -0.457500 +v -0.240847 -0.123749 -0.457500 +v 0.257811 -0.117500 -0.477500 +v 0.257811 -0.123750 -0.477500 +v 0.266471 -0.117500 -0.482499 +v 0.266471 -0.123750 -0.482499 +v 0.266471 -0.117500 -0.492499 +v 0.266471 -0.123750 -0.492499 +v 0.257811 -0.117500 -0.497499 +v 0.257811 -0.123750 -0.497499 +v 0.249151 -0.117499 -0.492500 +v 0.249151 -0.123749 -0.492500 +v 0.249151 -0.117499 -0.482500 +v 0.249151 -0.123749 -0.482500 +v -0.232187 -0.117500 -0.477500 +v -0.232187 -0.123750 -0.477500 +v -0.223527 -0.117500 -0.482499 +v -0.223527 -0.123750 -0.482499 +v -0.223527 -0.117500 -0.492499 +v -0.223527 -0.123750 -0.492499 +v -0.232187 -0.117500 -0.497499 +v -0.232187 -0.123750 -0.497499 +v -0.240847 -0.117500 -0.492500 +v -0.240847 -0.123749 -0.492500 +v -0.240847 -0.117500 -0.482500 +v -0.240847 -0.123749 -0.482500 +v -0.245936 -0.106248 -0.465000 +v -0.252186 -0.106248 -0.465000 +v -0.245936 -0.114909 -0.469999 +v -0.252186 -0.114909 -0.469999 +v -0.245936 -0.114909 -0.479999 +v -0.252186 -0.114909 -0.479999 +v -0.245936 -0.106248 -0.484999 +v -0.252186 -0.106248 -0.484999 +v -0.245936 -0.097588 -0.480000 +v -0.252186 -0.097588 -0.480000 +v -0.245936 -0.097588 -0.470000 +v -0.252186 -0.097588 -0.470000 +v -0.245936 0.106212 -0.465000 +v -0.252186 0.106212 -0.465000 +v -0.245936 0.097552 -0.469999 +v -0.252186 0.097552 -0.469999 +v -0.245936 0.097552 -0.479999 +v -0.252186 0.097552 -0.479999 +v -0.245936 0.106212 -0.484999 +v -0.252186 0.106212 -0.484999 +v -0.245936 0.114872 -0.480000 +v -0.252186 0.114872 -0.480000 +v -0.245936 0.114872 -0.470000 +v -0.252186 0.114872 -0.470000 +v -0.218436 0.106212 -0.465000 +v -0.212186 0.106212 -0.465000 +v -0.218436 0.114872 -0.469999 +v -0.212186 0.114872 -0.469999 +v -0.218436 0.114872 -0.479999 +v -0.212186 0.114872 -0.479999 +v -0.218436 0.106212 -0.484999 +v -0.212186 0.106212 -0.484999 +v -0.218436 0.097552 -0.480000 +v -0.212186 0.097552 -0.480000 +v -0.218436 0.097552 -0.470000 +v -0.212186 0.097552 -0.470000 +v -0.218436 -0.106248 -0.465000 +v -0.212186 -0.106248 -0.465000 +v -0.218436 -0.097588 -0.469999 +v -0.212186 -0.097588 -0.469999 +v -0.218436 -0.097588 -0.479999 +v -0.212186 -0.097588 -0.479999 +v -0.218436 -0.106248 -0.484999 +v -0.212186 -0.106248 -0.484999 +v -0.218436 -0.114909 -0.480000 +v -0.212186 -0.114909 -0.480000 +v -0.218436 -0.114909 -0.470000 +v -0.212186 -0.114909 -0.470000 +v -0.129148 0.106212 -0.465000 +v -0.135398 0.106212 -0.465000 +v -0.129149 0.097552 -0.469999 +v -0.135398 0.097552 -0.469999 +v -0.129149 0.097552 -0.479999 +v -0.135398 0.097552 -0.479999 +v -0.129148 0.106212 -0.485000 +v -0.135398 0.106212 -0.485000 +v -0.129148 0.114872 -0.480000 +v -0.135398 0.114872 -0.480000 +v -0.135398 0.114872 -0.470000 +v -0.129148 0.114872 -0.470000 +v -0.142898 0.106212 -0.465000 +v -0.149148 0.106212 -0.465000 +v -0.142898 0.097552 -0.469999 +v -0.149148 0.097552 -0.469999 +v -0.142898 0.097552 -0.479999 +v -0.149148 0.097552 -0.479999 +v -0.142898 0.106212 -0.485000 +v -0.149148 0.106212 -0.485000 +v -0.142898 0.114872 -0.480000 +v -0.149148 0.114872 -0.480000 +v -0.149148 0.114872 -0.470000 +v -0.142898 0.114872 -0.470000 +v -0.142898 -0.106248 -0.465000 +v -0.149148 -0.106248 -0.465000 +v -0.142898 -0.114909 -0.469999 +v -0.149148 -0.114909 -0.469999 +v -0.142898 -0.114909 -0.479999 +v -0.149148 -0.114909 -0.479999 +v -0.142898 -0.106248 -0.485000 +v -0.149148 -0.106248 -0.485000 +v -0.142898 -0.097588 -0.480000 +v -0.149148 -0.097588 -0.480000 +v -0.149148 -0.097588 -0.470000 +v -0.142898 -0.097588 -0.470000 +v -0.232187 -0.173601 -0.452500 +v -0.232187 -0.179851 -0.452500 +v -0.223527 -0.173601 -0.457500 +v -0.223527 -0.179851 -0.457500 +v -0.223527 -0.173601 -0.467499 +v -0.223527 -0.179851 -0.467499 +v -0.232187 -0.173601 -0.472500 +v -0.232187 -0.179851 -0.472500 +v -0.240847 -0.173601 -0.467500 +v -0.240847 -0.179851 -0.467500 +v -0.240847 -0.179851 -0.457500 +v -0.240847 -0.173601 -0.457500 +v 0.244062 -0.106248 -0.465000 +v 0.237812 -0.106248 -0.465000 +v 0.244062 -0.114908 -0.469999 +v 0.237812 -0.114908 -0.469999 +v 0.244062 -0.114908 -0.479999 +v 0.237812 -0.114908 -0.479999 +v 0.244062 -0.106248 -0.485000 +v 0.237812 -0.106248 -0.485000 +v 0.244062 -0.097588 -0.480000 +v 0.237812 -0.097588 -0.480000 +v 0.244062 -0.097588 -0.470000 +v 0.237812 -0.097588 -0.470000 +v 0.244062 0.106212 -0.465000 +v 0.237812 0.106212 -0.465000 +v 0.244062 0.097552 -0.469999 +v 0.237812 0.097552 -0.469999 +v 0.244062 0.097552 -0.479999 +v 0.237812 0.097552 -0.479999 +v 0.244062 0.106212 -0.485000 +v 0.237812 0.106212 -0.485000 +v 0.244062 0.114872 -0.480000 +v 0.237812 0.114872 -0.480000 +v 0.244062 0.114872 -0.470000 +v 0.237812 0.114872 -0.470000 +v 0.271562 0.106212 -0.465000 +v 0.277812 0.106212 -0.465000 +v 0.271562 0.114872 -0.469999 +v 0.277812 0.114872 -0.469999 +v 0.271562 0.114872 -0.479999 +v 0.277812 0.114872 -0.479999 +v 0.271562 0.106212 -0.485000 +v 0.277812 0.106212 -0.485000 +v 0.271562 0.097552 -0.480000 +v 0.277812 0.097552 -0.480000 +v 0.271562 0.097552 -0.470000 +v 0.277812 0.097552 -0.470000 +v 0.271562 -0.106248 -0.465000 +v 0.277812 -0.106248 -0.465000 +v 0.271562 -0.097588 -0.469999 +v 0.277812 -0.097588 -0.469999 +v 0.271562 -0.097588 -0.479999 +v 0.277812 -0.097588 -0.479999 +v 0.271562 -0.106248 -0.485000 +v 0.277812 -0.106248 -0.485000 +v 0.271562 -0.114908 -0.480000 +v 0.277812 -0.114908 -0.480000 +v 0.271562 -0.114908 -0.470000 +v 0.277812 -0.114908 -0.470000 +v -0.232187 -0.159851 -0.452500 +v -0.232187 -0.166101 -0.452500 +v -0.223527 -0.159851 -0.457500 +v -0.223527 -0.166101 -0.457500 +v -0.223527 -0.159851 -0.467499 +v -0.223527 -0.166101 -0.467499 +v -0.232187 -0.159851 -0.472500 +v -0.232187 -0.166101 -0.472500 +v -0.240847 -0.159851 -0.467500 +v -0.240847 -0.166101 -0.467500 +v -0.240847 -0.166101 -0.457500 +v -0.240847 -0.159851 -0.457500 +v -0.232187 0.179523 -0.452500 +v -0.232187 0.173273 -0.452500 +v -0.223527 0.179523 -0.457500 +v -0.223527 0.173273 -0.457500 +v -0.223527 0.179523 -0.467499 +v -0.223527 0.173273 -0.467499 +v -0.232187 0.179523 -0.472500 +v -0.232187 0.173273 -0.472500 +v -0.240847 0.179523 -0.467500 +v -0.240847 0.173273 -0.467500 +v -0.240847 0.173273 -0.457500 +v -0.240847 0.179523 -0.457500 +v -0.232187 0.165773 -0.452500 +v -0.232187 0.159523 -0.452500 +v -0.223527 0.165773 -0.457500 +v -0.223527 0.159523 -0.457500 +v -0.223527 0.165773 -0.467499 +v -0.223527 0.159523 -0.467499 +v -0.232187 0.165773 -0.472500 +v -0.232187 0.159523 -0.472500 +v -0.240847 0.165773 -0.467500 +v -0.240847 0.159523 -0.467500 +v -0.240847 0.159523 -0.457500 +v -0.240847 0.165773 -0.457500 +v 0.211561 -0.011289 -0.448750 +v 0.211561 -0.011289 -0.476250 +v 0.211561 0.011211 -0.448750 +v 0.211561 0.011211 -0.476249 +v 0.270311 -0.011289 -0.460114 +v 0.258946 -0.011289 -0.448750 +v 0.268788 -0.011289 -0.454432 +v 0.264629 -0.011289 -0.450272 +v 0.258946 -0.011289 -0.476250 +v 0.270311 -0.011289 -0.464885 +v 0.264629 -0.011289 -0.474727 +v 0.268788 -0.011289 -0.470567 +v 0.258946 0.011211 -0.448750 +v 0.270311 0.011211 -0.460114 +v 0.264629 0.011211 -0.450272 +v 0.268788 0.011211 -0.454432 +v 0.270311 0.011211 -0.464885 +v 0.258946 0.011211 -0.476249 +v 0.268788 0.011211 -0.470567 +v 0.264629 0.011211 -0.474727 +v -0.129148 -0.106248 -0.465000 +v -0.135398 -0.106248 -0.465000 +v -0.129149 -0.114909 -0.469999 +v -0.135398 -0.114909 -0.469999 +v -0.129149 -0.114909 -0.479999 +v -0.135398 -0.114909 -0.479999 +v -0.129148 -0.106248 -0.485000 +v -0.135398 -0.106248 -0.485000 +v -0.129148 -0.097588 -0.480000 +v -0.135398 -0.097588 -0.480000 +v -0.135398 -0.097588 -0.470000 +v -0.129148 -0.097588 -0.470000 +v -0.280936 -0.111248 -0.474995 +v 0.281562 -0.111250 -0.474997 +v -0.280936 -0.110868 -0.473082 +v 0.281562 -0.110869 -0.473084 +v -0.280936 -0.109784 -0.471460 +v 0.281562 -0.109785 -0.471462 +v -0.280936 -0.108162 -0.470376 +v 0.281562 -0.108163 -0.470378 +v -0.280936 -0.106248 -0.469995 +v 0.281562 -0.106250 -0.469997 +v -0.280936 -0.104335 -0.470376 +v 0.281562 -0.104336 -0.470378 +v -0.280936 -0.102713 -0.471460 +v 0.281562 -0.102714 -0.471462 +v -0.280936 -0.101629 -0.473082 +v 0.281562 -0.101630 -0.473084 +v -0.280936 -0.101248 -0.474995 +v 0.281562 -0.101250 -0.474997 +v -0.280936 -0.101629 -0.476908 +v 0.281562 -0.101630 -0.476911 +v -0.280936 -0.102713 -0.478531 +v 0.281562 -0.102714 -0.478533 +v -0.280936 -0.104335 -0.479614 +v 0.281562 -0.104336 -0.479617 +v -0.280936 -0.106248 -0.479995 +v 0.281562 -0.106250 -0.479997 +v -0.280936 -0.108162 -0.479614 +v 0.281562 -0.108163 -0.479617 +v -0.280936 -0.109784 -0.478531 +v 0.281562 -0.109785 -0.478533 +v -0.280936 -0.110868 -0.476908 +v 0.281562 -0.110869 -0.476911 +v -0.280936 0.101212 -0.474995 +v 0.281562 0.101210 -0.474997 +v -0.280936 0.101592 -0.473082 +v 0.281562 0.101591 -0.473084 +v -0.280936 0.102676 -0.471459 +v 0.281562 0.102675 -0.471462 +v -0.280936 0.104298 -0.470376 +v 0.281562 0.104297 -0.470378 +v -0.280936 0.106212 -0.469995 +v 0.281562 0.106210 -0.469997 +v -0.280936 0.108125 -0.470376 +v 0.281562 0.108124 -0.470378 +v -0.280936 0.109747 -0.471459 +v 0.281562 0.109746 -0.471462 +v -0.280936 0.110831 -0.473082 +v 0.281562 0.110830 -0.473084 +v -0.280936 0.111212 -0.474995 +v 0.281562 0.111210 -0.474997 +v -0.280936 0.110831 -0.476908 +v 0.281562 0.110830 -0.476911 +v -0.280936 0.109747 -0.478530 +v 0.281562 0.109746 -0.478533 +v -0.280936 0.108125 -0.479614 +v 0.281562 0.108124 -0.479617 +v -0.280936 0.106212 -0.479995 +v 0.281562 0.106210 -0.479997 +v -0.280936 0.104298 -0.479614 +v 0.281562 0.104297 -0.479617 +v -0.280936 0.102676 -0.478530 +v 0.281562 0.102675 -0.478533 +v -0.280936 0.101592 -0.476908 +v 0.281562 0.101591 -0.476911 +v -0.071249 -0.236289 -0.437497 +v -0.126248 -0.236289 -0.492497 +v -0.126248 -0.236289 -0.437497 +v -0.071248 -0.181289 -0.437496 +v -0.126248 -0.181289 -0.492496 +v -0.126248 -0.181289 -0.437496 +v -0.101873 -0.208789 -0.437496 +v -0.101873 -0.208789 -0.412497 +v -0.100958 -0.206579 -0.437496 +v -0.100958 -0.206579 -0.412497 +v -0.098748 -0.205664 -0.437496 +v -0.098748 -0.205664 -0.412497 +v -0.096539 -0.206579 -0.437496 +v -0.096539 -0.206579 -0.412497 +v -0.095623 -0.208789 -0.437496 +v -0.095623 -0.208789 -0.412497 +v -0.096539 -0.210998 -0.437496 +v -0.096539 -0.210998 -0.412497 +v -0.098748 -0.211914 -0.437497 +v -0.098748 -0.211914 -0.412497 +v -0.100958 -0.210998 -0.437496 +v -0.100958 -0.210998 -0.412497 +v -0.071249 -0.236289 -0.443747 +v -0.126248 -0.236289 -0.486247 +v -0.126248 -0.181289 -0.486246 +v -0.071248 -0.181289 -0.486246 +v -0.126248 -0.236289 -0.443747 +v -0.126248 -0.181289 -0.443746 +v -0.071248 -0.181289 -0.443746 +v -0.071249 -0.236289 -0.492497 +v -0.071248 -0.181289 -0.492496 +v -0.071249 -0.236289 -0.486247 +v -0.100664 -0.204168 -0.031248 +v -0.100662 -0.204169 -0.406247 +v -0.102286 -0.205252 -0.031248 +v -0.102284 -0.205253 -0.406247 +v -0.103370 -0.206874 -0.031248 +v -0.103368 -0.206875 -0.406247 +v -0.103751 -0.208787 -0.031248 +v -0.103748 -0.208789 -0.406247 +v -0.103370 -0.210701 -0.031248 +v -0.103368 -0.210702 -0.406247 +v -0.102286 -0.212323 -0.031248 +v -0.102284 -0.212324 -0.406247 +v -0.100664 -0.213407 -0.031248 +v -0.100662 -0.213408 -0.406247 +v -0.098751 -0.213787 -0.031248 +v -0.098748 -0.213789 -0.406247 +v -0.096837 -0.213407 -0.031248 +v -0.096835 -0.213408 -0.406247 +v -0.095215 -0.212323 -0.031248 +v -0.095213 -0.212324 -0.406247 +v -0.094131 -0.210701 -0.031248 +v -0.094129 -0.210702 -0.406247 +v -0.093751 -0.208787 -0.031248 +v -0.093748 -0.208789 -0.406247 +v -0.094131 -0.206874 -0.031248 +v -0.094129 -0.206875 -0.406247 +v -0.095215 -0.205252 -0.031248 +v -0.095213 -0.205253 -0.406247 +v -0.096837 -0.204168 -0.031248 +v -0.096835 -0.204169 -0.406247 +v -0.098751 -0.203787 -0.031248 +v -0.098748 -0.203789 -0.406247 +v -0.108748 -0.208789 -0.418747 +v -0.108748 -0.208789 -0.393747 +v -0.107987 -0.204962 -0.418747 +v -0.107987 -0.204962 -0.393747 +v -0.105819 -0.201718 -0.418746 +v -0.105819 -0.201718 -0.393747 +v -0.102575 -0.199550 -0.418746 +v -0.102575 -0.199550 -0.393747 +v -0.098748 -0.198789 -0.418746 +v -0.098748 -0.198789 -0.393747 +v -0.094922 -0.199550 -0.418746 +v -0.094922 -0.199550 -0.393747 +v -0.091677 -0.201718 -0.418746 +v -0.091677 -0.201718 -0.393747 +v -0.089510 -0.204962 -0.418747 +v -0.089510 -0.204962 -0.393747 +v -0.088748 -0.208789 -0.418747 +v -0.088748 -0.208789 -0.393747 +v -0.089510 -0.212615 -0.418747 +v -0.089510 -0.212615 -0.393747 +v -0.091677 -0.215860 -0.418747 +v -0.091677 -0.215860 -0.393747 +v -0.094922 -0.218027 -0.418747 +v -0.094922 -0.218027 -0.393747 +v -0.098748 -0.218789 -0.418747 +v -0.098748 -0.218789 -0.393747 +v -0.102575 -0.218027 -0.418747 +v -0.102575 -0.218027 -0.393747 +v -0.105819 -0.215860 -0.418747 +v -0.105819 -0.215860 -0.393747 +v -0.107987 -0.212615 -0.418747 +v -0.107987 -0.212615 -0.393747 +v -0.061248 0.243710 -0.263122 +v -0.006248 0.243710 -0.318122 +v -0.061248 0.243710 -0.318122 +v -0.061249 0.298709 -0.263122 +v -0.006249 0.298709 -0.318121 +v -0.061249 0.298709 -0.318121 +v -0.061248 0.271209 -0.293747 +v -0.086248 0.271209 -0.293747 +v -0.061248 0.273419 -0.292831 +v -0.086248 0.273419 -0.292831 +v -0.061248 0.274334 -0.290622 +v -0.086248 0.274334 -0.290622 +v -0.061248 0.273419 -0.288412 +v -0.086248 0.273419 -0.288412 +v -0.061248 0.271209 -0.287497 +v -0.086248 0.271209 -0.287497 +v -0.061248 0.269000 -0.288412 +v -0.086248 0.269000 -0.288412 +v -0.061248 0.268084 -0.290622 +v -0.086248 0.268084 -0.290622 +v -0.061248 0.269000 -0.292831 +v -0.086248 0.269000 -0.292831 +v -0.054998 0.243710 -0.263122 +v -0.012498 0.243710 -0.318122 +v -0.012499 0.298709 -0.318121 +v -0.012499 0.298709 -0.263122 +v -0.054998 0.243710 -0.318122 +v -0.054999 0.298709 -0.318121 +v -0.054999 0.298709 -0.263122 +v -0.006248 0.243710 -0.263122 +v -0.006249 0.298709 -0.263122 +v -0.012498 0.243710 -0.263122 +v -0.068452 0.283117 -0.290622 +v -0.087202 0.283117 -0.290622 +v -0.068452 0.282211 -0.286065 +v -0.087202 0.282211 -0.286065 +v -0.068452 0.279629 -0.282202 +v -0.087202 0.279629 -0.282202 +v -0.068452 0.275766 -0.279621 +v -0.087202 0.275766 -0.279621 +v -0.068452 0.271210 -0.278714 +v -0.087202 0.271210 -0.278714 +v -0.068452 0.266653 -0.279621 +v -0.087202 0.266653 -0.279621 +v -0.068452 0.262790 -0.282202 +v -0.087202 0.262790 -0.282202 +v -0.068452 0.260209 -0.286065 +v -0.087202 0.260209 -0.286065 +v -0.068452 0.259302 -0.290622 +v -0.087202 0.259302 -0.290622 +v -0.068452 0.260209 -0.295178 +v -0.087202 0.260209 -0.295178 +v -0.068452 0.262790 -0.299041 +v -0.087202 0.262790 -0.299041 +v -0.068452 0.266653 -0.301622 +v -0.087202 0.266653 -0.301622 +v -0.068452 0.271210 -0.302529 +v -0.087202 0.271210 -0.302529 +v -0.068452 0.275766 -0.301622 +v -0.087202 0.275766 -0.301622 +v -0.068452 0.279629 -0.299041 +v -0.087202 0.279629 -0.299041 +v -0.068452 0.282211 -0.295178 +v -0.087202 0.282211 -0.295178 +v -0.071131 0.283117 -0.290622 +v -0.071408 0.281342 -0.290622 +v -0.081568 0.281342 -0.290622 +v -0.081845 0.283117 -0.290622 +v -0.081845 0.282211 -0.286065 +v -0.081568 0.280571 -0.286744 +v -0.071408 0.280571 -0.286744 +v -0.071131 0.282211 -0.286065 +v -0.081845 0.279629 -0.282202 +v -0.081568 0.278374 -0.283457 +v -0.071408 0.278374 -0.283457 +v -0.071131 0.279629 -0.282202 +v -0.081845 0.275766 -0.279621 +v -0.081568 0.275087 -0.281261 +v -0.071409 0.275087 -0.281261 +v -0.071131 0.275766 -0.279621 +v -0.081845 0.271210 -0.278714 +v -0.081568 0.271210 -0.280489 +v -0.071409 0.271210 -0.280489 +v -0.071131 0.271210 -0.278714 +v -0.081845 0.266653 -0.279621 +v -0.081568 0.267332 -0.281261 +v -0.071409 0.267332 -0.281261 +v -0.071131 0.266653 -0.279621 +v -0.081845 0.262790 -0.282202 +v -0.081568 0.264045 -0.283457 +v -0.071408 0.264045 -0.283457 +v -0.071131 0.262790 -0.282202 +v -0.081845 0.260209 -0.286065 +v -0.081568 0.261849 -0.286744 +v -0.071408 0.261849 -0.286744 +v -0.071131 0.260209 -0.286065 +v -0.081845 0.259302 -0.290622 +v -0.081568 0.261077 -0.290622 +v -0.071408 0.261077 -0.290622 +v -0.071131 0.259302 -0.290622 +v -0.081845 0.260209 -0.295178 +v -0.081568 0.261849 -0.294499 +v -0.071408 0.261849 -0.294499 +v -0.071131 0.260209 -0.295178 +v -0.081845 0.262790 -0.299041 +v -0.081568 0.264045 -0.297786 +v -0.071408 0.264045 -0.297786 +v -0.071131 0.262790 -0.299041 +v -0.081845 0.266653 -0.301622 +v -0.081568 0.267332 -0.299983 +v -0.071408 0.267332 -0.299983 +v -0.071131 0.266653 -0.301622 +v -0.081845 0.271210 -0.302529 +v -0.081568 0.271210 -0.300754 +v -0.071408 0.271210 -0.300754 +v -0.071131 0.271210 -0.302529 +v -0.081845 0.275766 -0.301622 +v -0.081568 0.275087 -0.299983 +v -0.071408 0.275087 -0.299983 +v -0.071131 0.275766 -0.301622 +v -0.081845 0.279629 -0.299041 +v -0.081568 0.278374 -0.297786 +v -0.071408 0.278374 -0.297786 +v -0.071131 0.279629 -0.299041 +v -0.081845 0.282211 -0.295178 +v -0.081568 0.280571 -0.294499 +v -0.071408 0.280571 -0.294499 +v -0.071131 0.282211 -0.295178 +v -0.071249 0.173710 -0.437497 +v -0.126248 0.173710 -0.492497 +v -0.126248 0.173710 -0.437497 +v -0.071248 0.228710 -0.437496 +v -0.126248 0.228710 -0.492496 +v -0.126248 0.228710 -0.437496 +v -0.101873 0.201210 -0.437496 +v -0.101873 0.201210 -0.412497 +v -0.100958 0.203419 -0.437496 +v -0.100958 0.203419 -0.412497 +v -0.098748 0.204335 -0.437496 +v -0.098748 0.204335 -0.412497 +v -0.096539 0.203419 -0.437496 +v -0.096539 0.203419 -0.412497 +v -0.095623 0.201210 -0.437496 +v -0.095623 0.201210 -0.412497 +v -0.096539 0.199000 -0.437496 +v -0.096539 0.199000 -0.412497 +v -0.098748 0.198085 -0.437497 +v -0.098748 0.198085 -0.412497 +v -0.100958 0.199000 -0.437496 +v -0.100958 0.199000 -0.412497 +v -0.071249 0.173710 -0.443747 +v -0.126248 0.173710 -0.486247 +v -0.126248 0.228710 -0.486246 +v -0.071248 0.228710 -0.486246 +v -0.126248 0.173710 -0.443747 +v -0.126248 0.228710 -0.443746 +v -0.071248 0.228710 -0.443746 +v -0.071249 0.173710 -0.492497 +v -0.071248 0.228710 -0.492496 +v -0.071249 0.173710 -0.486247 +v -0.100664 0.205830 -0.031248 +v -0.100662 0.205829 -0.406247 +v -0.102286 0.204747 -0.031248 +v -0.102284 0.204745 -0.406247 +v -0.103370 0.203124 -0.031248 +v -0.103368 0.203123 -0.406247 +v -0.103751 0.201211 -0.031248 +v -0.103748 0.201210 -0.406247 +v -0.103370 0.199298 -0.031248 +v -0.103368 0.199296 -0.406247 +v -0.102286 0.197676 -0.031248 +v -0.102284 0.197674 -0.406247 +v -0.100664 0.196592 -0.031248 +v -0.100662 0.196590 -0.406247 +v -0.098751 0.196211 -0.031248 +v -0.098748 0.196210 -0.406247 +v -0.096837 0.196592 -0.031248 +v -0.096835 0.196590 -0.406247 +v -0.095215 0.197676 -0.031248 +v -0.095213 0.197674 -0.406247 +v -0.094131 0.199298 -0.031248 +v -0.094129 0.199296 -0.406247 +v -0.093751 0.201211 -0.031248 +v -0.093748 0.201210 -0.406247 +v -0.094131 0.203124 -0.031248 +v -0.094129 0.203123 -0.406247 +v -0.095215 0.204747 -0.031248 +v -0.095213 0.204745 -0.406247 +v -0.096837 0.205830 -0.031248 +v -0.096835 0.205829 -0.406247 +v -0.098751 0.206211 -0.031248 +v -0.098748 0.206210 -0.406247 +v -0.108748 0.201210 -0.418747 +v -0.108748 0.201210 -0.393747 +v -0.107987 0.205036 -0.418747 +v -0.107987 0.205036 -0.393747 +v -0.105819 0.208281 -0.418746 +v -0.105819 0.208281 -0.393747 +v -0.102575 0.210448 -0.418746 +v -0.102575 0.210448 -0.393747 +v -0.098748 0.211210 -0.418746 +v -0.098748 0.211210 -0.393747 +v -0.094922 0.210448 -0.418746 +v -0.094922 0.210448 -0.393747 +v -0.091677 0.208281 -0.418746 +v -0.091677 0.208281 -0.393747 +v -0.089510 0.205036 -0.418747 +v -0.089510 0.205036 -0.393747 +v -0.088748 0.201210 -0.418747 +v -0.088748 0.201210 -0.393747 +v -0.089510 0.197383 -0.418747 +v -0.089510 0.197383 -0.393747 +v -0.091677 0.194139 -0.418747 +v -0.091677 0.194139 -0.393747 +v -0.094922 0.191971 -0.418747 +v -0.094922 0.191971 -0.393747 +v -0.098748 0.191210 -0.418747 +v -0.098748 0.191210 -0.393747 +v -0.102575 0.191971 -0.418747 +v -0.102575 0.191971 -0.393747 +v -0.105820 0.194139 -0.418747 +v -0.105820 0.194139 -0.393747 +v -0.107987 0.197383 -0.418747 +v -0.107987 0.197383 -0.393747 +vt 0.984375 0.656250 +vt 0.984375 0.718750 +vt 0.953125 0.718750 +vt 0.953125 0.656250 +vt 0.921875 0.656250 +vt 0.921875 0.718750 +vt 0.890625 0.718750 +vt 0.890625 0.656250 +vt 0.859375 0.718750 +vt 0.859375 0.656250 +vt 0.890625 0.656250 +vt 0.921875 0.718750 +vt 0.921875 0.656250 +vt 0.953125 0.718750 +vt 0.965770 0.593750 +vt 0.965770 0.656250 +vt 0.912572 0.656250 +vt 0.912572 0.593750 +vt 0.859375 0.656250 +vt 0.859375 0.593750 +vt 0.912572 0.593750 +vt 0.912572 0.656250 +vt 0.478523 0.252502 +vt 0.478523 0.312500 +vt 0.458012 0.312500 +vt 0.458012 0.252502 +vt 0.338421 0.337090 +vt 0.338421 0.375000 +vt 0.312500 0.375000 +vt 0.312500 0.337090 +vt 0.312500 0.274590 +vt 0.312500 0.312500 +vt 0.338421 0.312500 +vt 0.338421 0.274590 +vt 0.458011 0.252502 +vt 0.458011 0.267531 +vt 0.437500 0.267531 +vt 0.437500 0.252502 +vt 0.338421 0.237040 +vt 0.370821 0.237039 +vt 0.370821 0.224079 +vt 0.312500 0.224079 +vt 0.312500 0.250000 +vt 0.338421 0.250000 +vt 0.375000 0.346512 +vt 0.407869 0.346512 +vt 0.407869 0.360756 +vt 0.403488 0.360756 +vt 0.403488 0.375000 +vt 0.375000 0.375000 +vt 0.338421 0.274590 +vt 0.338421 0.312500 +vt 0.342407 0.312500 +vt 0.342407 0.284086 +vt 0.370821 0.284086 +vt 0.370821 0.274590 +vt 0.312500 0.274590 +vt 0.370821 0.274590 +vt 0.370821 0.284086 +vt 0.342407 0.284086 +vt 0.342407 0.312500 +vt 0.312500 0.312500 +vt 0.437500 0.267531 +vt 0.458012 0.267531 +vt 0.458012 0.312500 +vt 0.437500 0.312500 +vt 0.407869 0.360756 +vt 0.407869 0.346512 +vt 0.439098 0.346512 +vt 0.439098 0.360756 +vt 0.451644 0.337090 +vt 0.451644 0.375000 +vt 0.425724 0.375000 +vt 0.425724 0.337090 +vt 0.375000 0.337090 +vt 0.375000 0.375000 +vt 0.400921 0.375000 +vt 0.400921 0.337090 +vt 0.425724 0.337090 +vt 0.425724 0.375000 +vt 0.451644 0.375000 +vt 0.451644 0.337090 +vt 0.400921 0.337090 +vt 0.400921 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.337090 +vt 0.425724 0.313785 +vt 0.425724 0.339705 +vt 0.451644 0.339705 +vt 0.451644 0.313784 +vt 0.425724 0.339705 +vt 0.425724 0.313785 +vt 0.451644 0.313784 +vt 0.451644 0.339705 +vt 0.437500 0.343408 +vt 0.437500 0.375000 +vt 0.448300 0.375000 +vt 0.448300 0.343408 +vt 0.464180 0.343408 +vt 0.464180 0.375000 +vt 0.496581 0.375000 +vt 0.496581 0.343408 +vt 0.448300 0.343408 +vt 0.448300 0.375000 +vt 0.437500 0.375000 +vt 0.437500 0.343408 +vt 0.496581 0.343408 +vt 0.496581 0.375000 +vt 0.464180 0.375000 +vt 0.464180 0.343408 +vt 0.464180 0.341737 +vt 0.496581 0.341737 +vt 0.496581 0.330937 +vt 0.464180 0.330937 +vt 0.496581 0.341737 +vt 0.464180 0.341737 +vt 0.464180 0.330937 +vt 0.496581 0.330937 +vt 0.437500 0.312500 +vt 0.448300 0.312500 +vt 0.448300 0.288739 +vt 0.437500 0.288739 +vt 0.495227 0.239883 +vt 0.518988 0.239883 +vt 0.518988 0.229083 +vt 0.495227 0.229083 +vt 0.518988 0.288739 +vt 0.518988 0.312500 +vt 0.495227 0.312500 +vt 0.495227 0.288739 +vt 0.495227 0.229083 +vt 0.518988 0.229083 +vt 0.518988 0.239883 +vt 0.495227 0.239883 +vt 0.448300 0.312500 +vt 0.437500 0.312500 +vt 0.437500 0.288739 +vt 0.448300 0.288739 +vt 0.140625 0.953125 +vt 0.140625 0.968750 +vt 0.078125 0.968750 +vt 0.078125 0.953125 +vt 0.015625 0.968750 +vt 0.015625 0.953125 +vt 0.265625 0.953125 +vt 0.265625 0.968750 +vt 0.203125 0.968750 +vt 0.203125 0.953125 +vt 0.203125 0.875000 +vt 0.203125 0.890625 +vt 0.140625 0.890625 +vt 0.140625 0.875000 +vt 0.265625 0.875000 +vt 0.265625 0.890625 +vt 0.078125 0.875000 +vt 0.078125 0.890625 +vt 0.015625 0.890625 +vt 0.015625 0.875000 +vt 0.171875 0.546875 +vt 0.171875 0.625000 +vt 0.093750 0.625000 +vt 0.093750 0.546875 +vt 0.093750 0.625000 +vt 0.093750 0.703125 +vt 0.015625 0.703125 +vt 0.015625 0.625000 +vt 0.171875 0.625000 +vt 0.171875 0.703125 +vt 0.015625 0.625000 +vt 0.015625 0.546875 +vt 0.546875 0.296875 +vt 0.546875 0.312500 +vt 0.296875 0.312500 +vt 0.296875 0.296875 +vt 0.296875 0.343750 +vt 0.296875 0.328125 +vt 0.546875 0.328125 +vt 0.546875 0.343750 +vt 0.546875 0.359375 +vt 0.296875 0.359375 +vt 0.546875 0.296875 +vt 0.546875 0.312500 +vt 0.296875 0.312500 +vt 0.296875 0.296875 +vt 0.296875 0.343750 +vt 0.296875 0.328125 +vt 0.546875 0.328125 +vt 0.546875 0.343750 +vt 0.546875 0.359375 +vt 0.296875 0.359375 +vt 0.475637 0.181108 +vt 0.475637 0.240509 +vt 0.486437 0.240509 +vt 0.486437 0.181108 +vt 0.486101 0.181108 +vt 0.486101 0.240509 +vt 0.437500 0.240509 +vt 0.437500 0.181108 +vt 0.486437 0.181108 +vt 0.486437 0.240509 +vt 0.475637 0.240509 +vt 0.475637 0.181108 +vt 0.475637 0.312500 +vt 0.486437 0.312500 +vt 0.486437 0.263899 +vt 0.475637 0.263899 +vt 0.486437 0.312500 +vt 0.475637 0.312500 +vt 0.475637 0.263899 +vt 0.486437 0.263899 +vt 0.578126 0.453125 +vt 0.578126 0.703124 +vt 0.828125 0.703124 +vt 0.828125 0.453125 +vt 0.671875 0.453125 +vt 0.671875 0.703124 +vt 0.734375 0.703125 +vt 0.734375 0.453126 +vt 0.828124 0.453126 +vt 0.828124 0.703125 +vt 0.578125 0.703125 +vt 0.578125 0.453126 +vt 0.734375 0.453126 +vt 0.734375 0.703125 +vt 0.671875 0.703124 +vt 0.671875 0.453125 +vt 0.578125 0.453125 +vt 0.578125 0.578125 +vt 0.828125 0.578125 +vt 0.578125 0.578125 +vt 0.828125 0.578125 +vt 0.828125 0.703125 +vt 0.030903 0.421869 +vt 0.250347 0.421794 +vt 0.250347 0.406261 +vt 0.030903 0.406334 +vt 0.251736 0.421794 +vt 0.251736 0.406260 +vt 0.265625 0.421790 +vt 0.265625 0.406256 +vt 0.031165 0.171877 +vt 0.031163 0.175256 +vt 0.015631 0.175256 +vt 0.015633 0.171877 +vt 0.031159 0.418497 +vt 0.015625 0.418497 +vt 0.031159 0.421875 +vt 0.015627 0.421875 +vt 0.265625 0.421785 +vt 0.015625 0.421869 +vt 0.015625 0.406334 +vt 0.265625 0.406250 +vt 0.031244 0.421872 +vt 0.031244 0.418494 +vt 0.015712 0.418494 +vt 0.015712 0.421872 +vt 0.265552 0.198904 +vt 0.265559 0.198904 +vt 0.015651 0.198904 +vt 0.015645 0.198904 +vt 0.031198 0.198903 +vt 0.031204 0.182011 +vt 0.015675 0.182011 +vt 0.015667 0.198903 +vt 0.144097 0.421831 +vt 0.137153 0.421834 +vt 0.137153 0.406298 +vt 0.144097 0.406296 +vt 0.031208 0.182011 +vt 0.031212 0.198903 +vt 0.015681 0.198903 +vt 0.015675 0.182011 +vt 0.119792 0.421839 +vt 0.088542 0.421850 +vt 0.088542 0.406314 +vt 0.119792 0.406304 +vt 0.031224 0.198902 +vt 0.031226 0.195524 +vt 0.015693 0.195524 +vt 0.015691 0.198902 +vt 0.031228 0.185345 +vt 0.031228 0.195524 +vt 0.015694 0.195524 +vt 0.015694 0.185345 +vt 0.085069 0.421852 +vt 0.084957 0.421852 +vt 0.084957 0.406317 +vt 0.085069 0.406317 +vt 0.084609 0.421852 +vt 0.084609 0.406317 +vt 0.084057 0.421852 +vt 0.084057 0.406317 +vt 0.083336 0.421852 +vt 0.083336 0.406317 +vt 0.082497 0.421852 +vt 0.082497 0.406318 +vt 0.081597 0.421852 +vt 0.081597 0.406318 +vt 0.080697 0.421852 +vt 0.080697 0.406318 +vt 0.079858 0.421852 +vt 0.079858 0.406318 +vt 0.079138 0.421854 +vt 0.079138 0.406318 +vt 0.078585 0.421854 +vt 0.078585 0.406319 +vt 0.078238 0.421854 +vt 0.078238 0.406319 +vt 0.078125 0.421854 +vt 0.078125 0.406319 +vt 0.031228 0.198902 +vt 0.015697 0.198902 +vt 0.031186 0.195525 +vt 0.031186 0.185346 +vt 0.015653 0.185346 +vt 0.015653 0.195525 +vt 0.156250 0.203125 +vt 0.156250 0.203125 +vt 0.140625 0.203125 +vt 0.140625 0.203125 +vt 0.031236 0.202280 +vt 0.031232 0.391468 +vt 0.015698 0.391468 +vt 0.015704 0.202280 +vt 0.031232 0.394846 +vt 0.015698 0.394846 +vt 0.053819 0.421858 +vt 0.227431 0.421799 +vt 0.227431 0.406264 +vt 0.053819 0.406322 +vt 0.031173 0.394848 +vt 0.031171 0.391469 +vt 0.015641 0.391469 +vt 0.015641 0.394848 +vt 0.031177 0.202282 +vt 0.015643 0.202282 +vt 0.031178 0.198904 +vt 0.074653 0.421854 +vt 0.053819 0.421862 +vt 0.053819 0.406326 +vt 0.074653 0.406319 +vt 0.031184 0.198904 +vt 0.203125 0.421813 +vt 0.203012 0.421813 +vt 0.203012 0.406276 +vt 0.203125 0.406276 +vt 0.202665 0.421813 +vt 0.202665 0.406276 +vt 0.202112 0.421813 +vt 0.202112 0.406276 +vt 0.201392 0.421813 +vt 0.201392 0.406276 +vt 0.200553 0.421813 +vt 0.200553 0.406277 +vt 0.199653 0.421814 +vt 0.199653 0.406277 +vt 0.198753 0.421814 +vt 0.198753 0.406277 +vt 0.197914 0.421814 +vt 0.197914 0.406277 +vt 0.197193 0.421814 +vt 0.197193 0.406277 +vt 0.196640 0.421814 +vt 0.196640 0.406279 +vt 0.196293 0.421814 +vt 0.196293 0.406279 +vt 0.196181 0.421814 +vt 0.196181 0.406279 +vt 0.031226 0.185345 +vt 0.015693 0.185345 +vt 0.031186 0.195525 +vt 0.031188 0.198903 +vt 0.015657 0.198903 +vt 0.015657 0.195525 +vt 0.031250 0.175124 +vt 0.031248 0.171875 +vt 0.015716 0.171875 +vt 0.015716 0.175124 +vt 0.192708 0.421814 +vt 0.161458 0.421824 +vt 0.161458 0.406290 +vt 0.192708 0.406280 +vt 0.015625 0.421875 +vt 0.029514 0.421870 +vt 0.029514 0.406334 +vt 0.015625 0.406340 +vt 0.031188 0.185346 +vt 0.015657 0.185346 +vt 0.225084 0.394848 +vt 0.056166 0.394846 +vt 0.052787 0.391468 +vt 0.015625 0.418494 +vt 0.019003 0.421872 +vt 0.262247 0.421875 +vt 0.265625 0.418497 +vt 0.228463 0.391469 +vt 0.137247 0.182011 +vt 0.083193 0.182005 +vt 0.033868 0.173226 +vt 0.247382 0.173229 +vt 0.198057 0.182006 +vt 0.144003 0.182011 +vt 0.265625 0.175256 +vt 0.262247 0.171877 +vt 0.248733 0.171877 +vt 0.247382 0.173229 +vt 0.225084 0.198904 +vt 0.228463 0.202282 +vt 0.137247 0.182011 +vt 0.144003 0.182011 +vt 0.198057 0.182006 +vt 0.033868 0.173226 +vt 0.083193 0.182005 +vt 0.228463 0.391469 +vt 0.228463 0.202282 +vt 0.225084 0.198904 +vt 0.248733 0.171877 +vt 0.262247 0.171877 +vt 0.265625 0.175256 +vt 0.265625 0.418497 +vt 0.201436 0.185346 +vt 0.201326 0.184514 +vt 0.200988 0.183698 +vt 0.200450 0.182997 +vt 0.199750 0.182459 +vt 0.198933 0.182121 +vt 0.204814 0.198904 +vt 0.201436 0.195525 +vt 0.080800 0.182996 +vt 0.081500 0.182458 +vt 0.082317 0.182120 +vt 0.056166 0.198902 +vt 0.076436 0.198902 +vt 0.079814 0.195524 +vt 0.079814 0.185345 +vt 0.079924 0.184513 +vt 0.080262 0.183697 +vt 0.195127 0.183698 +vt 0.194789 0.184514 +vt 0.194679 0.185346 +vt 0.194679 0.195525 +vt 0.191301 0.198903 +vt 0.160895 0.198903 +vt 0.197182 0.182121 +vt 0.196365 0.182459 +vt 0.195664 0.182997 +vt 0.076436 0.198902 +vt 0.056166 0.198902 +vt 0.082317 0.182120 +vt 0.081500 0.182458 +vt 0.080800 0.182996 +vt 0.080262 0.183697 +vt 0.079924 0.184513 +vt 0.079814 0.185345 +vt 0.079814 0.195524 +vt 0.191301 0.198903 +vt 0.194679 0.195525 +vt 0.194679 0.185346 +vt 0.194789 0.184514 +vt 0.195127 0.183698 +vt 0.195664 0.182997 +vt 0.196365 0.182459 +vt 0.197182 0.182121 +vt 0.160895 0.198903 +vt 0.052787 0.391468 +vt 0.056166 0.394846 +vt 0.225084 0.394848 +vt 0.262247 0.421875 +vt 0.019003 0.421872 +vt 0.015625 0.418494 +vt 0.052787 0.202280 +vt 0.015625 0.175124 +vt 0.019003 0.171875 +vt 0.032517 0.171875 +vt 0.019003 0.171875 +vt 0.015625 0.175124 +vt 0.052787 0.202280 +vt 0.032517 0.171875 +vt 0.086123 0.183697 +vt 0.086461 0.184513 +vt 0.086571 0.185345 +vt 0.086571 0.195524 +vt 0.089949 0.198902 +vt 0.120355 0.198903 +vt 0.084068 0.182120 +vt 0.084885 0.182458 +vt 0.085586 0.182996 +vt 0.198933 0.182121 +vt 0.199750 0.182459 +vt 0.200450 0.182997 +vt 0.200988 0.183698 +vt 0.201326 0.184514 +vt 0.201436 0.185346 +vt 0.201436 0.195525 +vt 0.204814 0.198904 +vt 0.084885 0.182458 +vt 0.084068 0.182120 +vt 0.120355 0.198903 +vt 0.089949 0.198902 +vt 0.086571 0.195524 +vt 0.086571 0.185345 +vt 0.086461 0.184513 +vt 0.086123 0.183697 +vt 0.085586 0.182996 +vt 0.162500 0.766132 +vt 0.162500 0.760997 +vt 0.157857 0.757618 +vt 0.092850 0.757618 +vt 0.091792 0.757517 +vt 0.090807 0.757220 +vt 0.089961 0.756747 +vt 0.089311 0.756132 +vt 0.088903 0.755415 +vt 0.088764 0.754645 +vt 0.088903 0.753876 +vt 0.089311 0.753159 +vt 0.062500 0.735726 +vt 0.062500 0.984375 +vt 0.086238 0.984375 +vt 0.015627 0.752543 +vt 0.015627 0.753159 +vt 0.031250 0.753159 +vt 0.031250 0.752543 +vt 0.149893 0.937500 +vt 0.125000 0.937500 +vt 0.125000 0.921875 +vt 0.149893 0.921875 +vt 0.125000 0.937499 +vt 0.203574 0.937498 +vt 0.203574 0.921875 +vt 0.125000 0.921875 +vt 0.205522 0.937498 +vt 0.225000 0.937498 +vt 0.225000 0.921875 +vt 0.205522 0.921875 +vt 0.015627 0.737753 +vt 0.015627 0.748294 +vt 0.031250 0.748294 +vt 0.031250 0.737753 +vt 0.015627 0.751672 +vt 0.031250 0.751672 +vt 0.225000 0.937498 +vt 0.156828 0.937499 +vt 0.156828 0.921875 +vt 0.225000 0.921875 +vt 0.015627 0.751672 +vt 0.015627 0.751774 +vt 0.031250 0.751774 +vt 0.031250 0.751672 +vt 0.015627 0.753876 +vt 0.015627 0.754645 +vt 0.031250 0.754645 +vt 0.031250 0.753876 +vt 0.156828 0.937499 +vt 0.225000 0.937498 +vt 0.225000 0.921875 +vt 0.156828 0.921875 +vt 0.015627 0.755415 +vt 0.031250 0.755415 +vt 0.015627 0.756132 +vt 0.031250 0.756132 +vt 0.015627 0.756747 +vt 0.031250 0.756747 +vt 0.015627 0.757220 +vt 0.031250 0.757220 +vt 0.015627 0.757517 +vt 0.031250 0.757517 +vt 0.015627 0.757618 +vt 0.031250 0.757618 +vt 0.015627 0.757618 +vt 0.015627 0.760997 +vt 0.031250 0.760997 +vt 0.031250 0.757618 +vt 0.015627 0.766132 +vt 0.031250 0.766132 +vt 0.015625 0.984375 +vt 0.031250 0.984375 +vt 0.015627 0.734375 +vt 0.031250 0.734375 +vt 0.015627 0.752071 +vt 0.031250 0.752071 +vt 0.091792 0.751774 +vt 0.090807 0.752071 +vt 0.089961 0.752543 +vt 0.089311 0.753159 +vt 0.062500 0.735726 +vt 0.137426 0.735726 +vt 0.157857 0.751672 +vt 0.092850 0.751672 +vt 0.137426 0.735726 +vt 0.089961 0.752543 +vt 0.090807 0.752071 +vt 0.091792 0.751774 +vt 0.092850 0.751672 +vt 0.157857 0.751672 +vt 0.162500 0.748294 +vt 0.139283 0.734375 +vt 0.157857 0.734375 +vt 0.162500 0.737753 +vt 0.157857 0.734375 +vt 0.139283 0.734375 +vt 0.162500 0.748294 +vt 0.162500 0.737753 +vt 0.088903 0.753876 +vt 0.088764 0.754645 +vt 0.088903 0.755415 +vt 0.089311 0.756132 +vt 0.089961 0.756747 +vt 0.090807 0.757220 +vt 0.091792 0.757517 +vt 0.092850 0.757618 +vt 0.157857 0.757618 +vt 0.162500 0.760997 +vt 0.162500 0.766132 +vt 0.086238 0.984375 +vt 0.062500 0.984375 +vt 0.162500 0.766132 +vt 0.162500 0.760997 +vt 0.157857 0.757618 +vt 0.092850 0.757618 +vt 0.091792 0.757517 +vt 0.090807 0.757220 +vt 0.089961 0.756747 +vt 0.089311 0.756132 +vt 0.088903 0.755415 +vt 0.088764 0.754645 +vt 0.088903 0.753876 +vt 0.089311 0.753159 +vt 0.062500 0.735726 +vt 0.062500 0.984375 +vt 0.086238 0.984375 +vt 0.015627 0.752543 +vt 0.015627 0.753159 +vt 0.031250 0.753159 +vt 0.031250 0.752543 +vt 0.149893 0.937500 +vt 0.125000 0.937500 +vt 0.125000 0.921875 +vt 0.149893 0.921875 +vt 0.125000 0.937499 +vt 0.203574 0.937498 +vt 0.203574 0.921875 +vt 0.125000 0.921875 +vt 0.205522 0.937498 +vt 0.225000 0.937498 +vt 0.225000 0.921875 +vt 0.205522 0.921875 +vt 0.015627 0.737753 +vt 0.015627 0.748294 +vt 0.031250 0.748294 +vt 0.031250 0.737753 +vt 0.015627 0.751672 +vt 0.031250 0.751672 +vt 0.225000 0.937498 +vt 0.156828 0.937499 +vt 0.156828 0.921875 +vt 0.225000 0.921875 +vt 0.015627 0.751672 +vt 0.015627 0.751774 +vt 0.031250 0.751774 +vt 0.031250 0.751672 +vt 0.015627 0.753876 +vt 0.015627 0.754645 +vt 0.031250 0.754645 +vt 0.031250 0.753876 +vt 0.156828 0.937499 +vt 0.225000 0.937498 +vt 0.225000 0.921875 +vt 0.156828 0.921875 +vt 0.015627 0.755415 +vt 0.031250 0.755415 +vt 0.015627 0.756132 +vt 0.031250 0.756132 +vt 0.015627 0.756747 +vt 0.031250 0.756747 +vt 0.015627 0.757220 +vt 0.031250 0.757220 +vt 0.015627 0.757517 +vt 0.031250 0.757517 +vt 0.015627 0.757618 +vt 0.031250 0.757618 +vt 0.015627 0.757618 +vt 0.015627 0.760997 +vt 0.031250 0.760997 +vt 0.031250 0.757618 +vt 0.015627 0.766132 +vt 0.031250 0.766132 +vt 0.015625 0.984375 +vt 0.031250 0.984375 +vt 0.015627 0.734375 +vt 0.031250 0.734375 +vt 0.015627 0.752071 +vt 0.031250 0.752071 +vt 0.091792 0.751774 +vt 0.090807 0.752071 +vt 0.089961 0.752543 +vt 0.089311 0.753159 +vt 0.062500 0.735726 +vt 0.137426 0.735726 +vt 0.157857 0.751672 +vt 0.092850 0.751672 +vt 0.137426 0.735726 +vt 0.089961 0.752543 +vt 0.090807 0.752071 +vt 0.091792 0.751774 +vt 0.092850 0.751672 +vt 0.157857 0.751672 +vt 0.162500 0.748294 +vt 0.139283 0.734375 +vt 0.157857 0.734375 +vt 0.162500 0.737753 +vt 0.157857 0.734375 +vt 0.139283 0.734375 +vt 0.162500 0.748294 +vt 0.162500 0.737753 +vt 0.088903 0.753876 +vt 0.088764 0.754645 +vt 0.088903 0.755415 +vt 0.089311 0.756132 +vt 0.089961 0.756747 +vt 0.090807 0.757220 +vt 0.091792 0.757517 +vt 0.092850 0.757618 +vt 0.157857 0.757618 +vt 0.162500 0.760997 +vt 0.162500 0.766132 +vt 0.086238 0.984375 +vt 0.062500 0.984375 +vt 0.495440 0.338788 +vt 0.495440 0.362148 +vt 0.485749 0.362148 +vt 0.485749 0.338788 +vt 0.474060 0.331914 +vt 0.485749 0.343893 +vt 0.485749 0.346372 +vt 0.482927 0.349263 +vt 0.478897 0.349263 +vt 0.472850 0.343067 +vt 0.474870 0.340998 +vt 0.466002 0.331910 +vt 0.482121 0.315392 +vt 0.479300 0.312500 +vt 0.483330 0.312500 +vt 0.485749 0.314978 +vt 0.485749 0.319935 +vt 0.487459 0.337035 +vt 0.487459 0.327980 +vt 0.494015 0.321263 +vt 0.494300 0.321263 +vt 0.494300 0.312500 +vt 0.497150 0.312500 +vt 0.497150 0.337035 +vt 0.464701 0.360986 +vt 0.464701 0.351055 +vt 0.465271 0.350471 +vt 0.465271 0.363907 +vt 0.461851 0.363907 +vt 0.461851 0.360986 +vt 0.482818 0.363283 +vt 0.485668 0.366204 +vt 0.476833 0.366204 +vt 0.475123 0.364451 +vt 0.475123 0.363283 +vt 0.497150 0.338788 +vt 0.485749 0.338788 +vt 0.498290 0.338788 +vt 0.498290 0.342292 +vt 0.495440 0.342293 +vt 0.495440 0.338788 +vt 0.498290 0.359233 +vt 0.495440 0.359233 +vt 0.475123 0.353936 +vt 0.479683 0.353936 +vt 0.479683 0.363283 +vt 0.479683 0.349263 +vt 0.475123 0.349263 +vt 0.461286 0.363907 +vt 0.464136 0.363907 +vt 0.464136 0.366828 +vt 0.461286 0.366828 +vt 0.460710 0.360986 +vt 0.460710 0.351055 +vt 0.461286 0.370917 +vt 0.458436 0.373838 +vt 0.458430 0.373838 +vt 0.458430 0.364199 +vt 0.461286 0.364199 +vt 0.461286 0.372669 +vt 0.461286 0.370917 +vt 0.464136 0.370917 +vt 0.464136 0.372669 +vt 0.458430 0.363907 +vt 0.461286 0.363907 +vt 0.465271 0.365075 +vt 0.465271 0.341714 +vt 0.465271 0.341708 +vt 0.458430 0.363907 +vt 0.458430 0.360986 +vt 0.500000 0.329441 +vt 0.497150 0.329441 +vt 0.497150 0.312500 +vt 0.500000 0.312500 +vt 0.479683 0.363277 +vt 0.482818 0.363277 +vt 0.466002 0.358610 +vt 0.475123 0.349263 +vt 0.475123 0.372630 +vt 0.466002 0.363283 +vt 0.485749 0.365361 +vt 0.485749 0.362148 +vt 0.495440 0.362148 +vt 0.495440 0.375000 +vt 0.495155 0.375000 +vt 0.466002 0.315421 +vt 0.466002 0.319510 +vt 0.464292 0.321263 +vt 0.447761 0.321263 +vt 0.447761 0.338203 +vt 0.444340 0.341708 +vt 0.440920 0.341708 +vt 0.437500 0.338203 +vt 0.437500 0.314253 +vt 0.439210 0.312500 +vt 0.463152 0.312500 +vt 0.460711 0.341708 +vt 0.465271 0.341708 +vt 0.412990 0.284722 +vt 0.411772 0.284722 +vt 0.411772 0.277006 +vt 0.414988 0.280093 +vt 0.394467 0.250000 +vt 0.398687 0.253574 +vt 0.398900 0.256841 +vt 0.384537 0.272462 +vt 0.398403 0.284204 +vt 0.398900 0.291828 +vt 0.397765 0.291896 +vt 0.377267 0.274538 +vt 0.375000 0.265342 +vt 0.388793 0.250340 +vt 0.379023 0.291898 +vt 0.383051 0.291896 +vt 0.383051 0.296919 +vt 0.379023 0.296921 +vt 0.375003 0.299613 +vt 0.375000 0.297297 +vt 0.379020 0.297299 +vt 0.379023 0.299615 +vt 0.431872 0.300154 +vt 0.427852 0.300154 +vt 0.427852 0.279321 +vt 0.431872 0.279321 +vt 0.437500 0.253858 +vt 0.433480 0.253858 +vt 0.433480 0.250000 +vt 0.437500 0.250000 +vt 0.427852 0.273148 +vt 0.427852 0.261188 +vt 0.433078 0.256173 +vt 0.433480 0.256173 +vt 0.437500 0.273865 +vt 0.436282 0.274691 +vt 0.426244 0.274691 +vt 0.408556 0.296685 +vt 0.404528 0.296685 +vt 0.404528 0.284726 +vt 0.408556 0.284726 +vt 0.411772 0.250000 +vt 0.424636 0.250000 +vt 0.424636 0.250772 +vt 0.411772 0.250772 +vt 0.408628 0.279398 +vt 0.411768 0.282409 +vt 0.411772 0.284726 +vt 0.398908 0.284724 +vt 0.398900 0.279320 +vt 0.408551 0.253866 +vt 0.408551 0.250000 +vt 0.410162 0.250001 +vt 0.411772 0.251545 +vt 0.383051 0.297305 +vt 0.379023 0.297307 +vt 0.375003 0.291896 +vt 0.379023 0.291898 +vt 0.424636 0.279321 +vt 0.427852 0.282407 +vt 0.427852 0.311728 +vt 0.427048 0.312500 +vt 0.424636 0.310185 +vt 0.404528 0.289741 +vt 0.404528 0.301701 +vt 0.398900 0.301701 +vt 0.398900 0.284726 +vt 0.399302 0.284726 +vt 0.434284 0.279321 +vt 0.424636 0.279321 +vt 0.424636 0.276235 +vt 0.398902 0.261573 +vt 0.402922 0.261573 +vt 0.402923 0.253865 +vt 0.423832 0.284722 +vt 0.423832 0.305556 +vt 0.421420 0.307870 +vt 0.415792 0.307870 +vt 0.411772 0.304012 +vt 0.411772 0.301697 +vt 0.415800 0.301697 +vt 0.415800 0.284722 +vt 0.412990 0.347222 +vt 0.411772 0.347222 +vt 0.411772 0.339506 +vt 0.414988 0.342593 +vt 0.394467 0.312500 +vt 0.398687 0.316074 +vt 0.398900 0.319341 +vt 0.384537 0.334962 +vt 0.398403 0.346704 +vt 0.398900 0.354328 +vt 0.397765 0.354396 +vt 0.377267 0.337039 +vt 0.375000 0.327842 +vt 0.388793 0.312840 +vt 0.379023 0.354398 +vt 0.383051 0.354396 +vt 0.383051 0.359419 +vt 0.379023 0.359421 +vt 0.375003 0.362113 +vt 0.375000 0.359797 +vt 0.379020 0.359799 +vt 0.379023 0.362115 +vt 0.431872 0.362654 +vt 0.427852 0.362654 +vt 0.427852 0.341821 +vt 0.431872 0.341821 +vt 0.437500 0.316358 +vt 0.433480 0.316358 +vt 0.433480 0.312500 +vt 0.437500 0.312500 +vt 0.427852 0.335648 +vt 0.427852 0.323688 +vt 0.433078 0.318673 +vt 0.433480 0.318673 +vt 0.437500 0.336365 +vt 0.436282 0.337191 +vt 0.426244 0.337191 +vt 0.408556 0.359185 +vt 0.404528 0.359185 +vt 0.404528 0.347226 +vt 0.408556 0.347226 +vt 0.411772 0.312500 +vt 0.424636 0.312500 +vt 0.424636 0.313272 +vt 0.411772 0.313272 +vt 0.408628 0.341898 +vt 0.411768 0.344909 +vt 0.411772 0.347226 +vt 0.398908 0.347224 +vt 0.398900 0.341820 +vt 0.408551 0.316366 +vt 0.408551 0.312500 +vt 0.410162 0.312501 +vt 0.411772 0.314045 +vt 0.383051 0.359805 +vt 0.379023 0.359807 +vt 0.375003 0.354396 +vt 0.379023 0.354398 +vt 0.424636 0.341821 +vt 0.427852 0.344907 +vt 0.427852 0.374228 +vt 0.427048 0.375000 +vt 0.424636 0.372685 +vt 0.404528 0.352241 +vt 0.404528 0.364201 +vt 0.398900 0.364201 +vt 0.398900 0.347226 +vt 0.399302 0.347226 +vt 0.434284 0.341821 +vt 0.424636 0.341821 +vt 0.424636 0.338735 +vt 0.398902 0.324073 +vt 0.402922 0.324074 +vt 0.402923 0.316365 +vt 0.423832 0.347222 +vt 0.423832 0.368056 +vt 0.421420 0.370370 +vt 0.415792 0.370370 +vt 0.411772 0.366512 +vt 0.411772 0.364197 +vt 0.415800 0.364197 +vt 0.415800 0.347222 +vt 0.370440 0.338787 +vt 0.370440 0.362148 +vt 0.360749 0.362148 +vt 0.360749 0.338787 +vt 0.349060 0.331914 +vt 0.360749 0.343893 +vt 0.360749 0.346371 +vt 0.357927 0.349263 +vt 0.353897 0.349263 +vt 0.347850 0.343067 +vt 0.349870 0.340997 +vt 0.341002 0.331910 +vt 0.357121 0.315391 +vt 0.354300 0.312500 +vt 0.358330 0.312500 +vt 0.360749 0.314978 +vt 0.360749 0.319935 +vt 0.362459 0.337035 +vt 0.362459 0.327980 +vt 0.369015 0.321262 +vt 0.369300 0.321262 +vt 0.369300 0.312500 +vt 0.372150 0.312500 +vt 0.372150 0.337035 +vt 0.339701 0.360986 +vt 0.339701 0.351055 +vt 0.340271 0.350471 +vt 0.340271 0.363907 +vt 0.336851 0.363907 +vt 0.336851 0.360986 +vt 0.357818 0.363283 +vt 0.360668 0.366204 +vt 0.351833 0.366204 +vt 0.350123 0.364451 +vt 0.350123 0.363283 +vt 0.372150 0.338787 +vt 0.360749 0.338787 +vt 0.373290 0.338787 +vt 0.373290 0.342292 +vt 0.370440 0.342292 +vt 0.370440 0.338787 +vt 0.373290 0.359233 +vt 0.370440 0.359233 +vt 0.350123 0.353936 +vt 0.354683 0.353936 +vt 0.354683 0.363283 +vt 0.354683 0.349263 +vt 0.350123 0.349263 +vt 0.336286 0.363907 +vt 0.339136 0.363907 +vt 0.339136 0.366828 +vt 0.336286 0.366828 +vt 0.335710 0.360986 +vt 0.335710 0.351055 +vt 0.336286 0.370917 +vt 0.333436 0.373838 +vt 0.333430 0.373838 +vt 0.333430 0.364199 +vt 0.336286 0.364199 +vt 0.336286 0.372669 +vt 0.336286 0.370917 +vt 0.339136 0.370917 +vt 0.339136 0.372669 +vt 0.333430 0.363907 +vt 0.336286 0.363907 +vt 0.340271 0.365075 +vt 0.340271 0.341714 +vt 0.340271 0.341708 +vt 0.333430 0.363907 +vt 0.333430 0.360986 +vt 0.375000 0.329441 +vt 0.372150 0.329441 +vt 0.372150 0.312500 +vt 0.375000 0.312500 +vt 0.354683 0.363277 +vt 0.357818 0.363277 +vt 0.341002 0.358610 +vt 0.350123 0.349263 +vt 0.350123 0.372630 +vt 0.341002 0.363283 +vt 0.360749 0.365361 +vt 0.360749 0.362148 +vt 0.370440 0.362148 +vt 0.370440 0.375000 +vt 0.370155 0.375000 +vt 0.341002 0.315421 +vt 0.341002 0.319510 +vt 0.339292 0.321263 +vt 0.322761 0.321262 +vt 0.322761 0.338203 +vt 0.319340 0.341708 +vt 0.315920 0.341708 +vt 0.312500 0.338203 +vt 0.312500 0.314252 +vt 0.314210 0.312500 +vt 0.338152 0.312500 +vt 0.335711 0.341708 +vt 0.340271 0.341708 +vt 0.483174 0.284682 +vt 0.484375 0.296875 +vt 0.483174 0.309068 +vt 0.479618 0.320793 +vt 0.473842 0.331598 +vt 0.466069 0.341069 +vt 0.456598 0.348842 +vt 0.445793 0.354617 +vt 0.434068 0.358174 +vt 0.421875 0.359375 +vt 0.421875 0.317708 +vt 0.425939 0.317308 +vt 0.429848 0.316122 +vt 0.433449 0.314197 +vt 0.436606 0.311606 +vt 0.439197 0.308449 +vt 0.441123 0.304847 +vt 0.442308 0.300939 +vt 0.442708 0.296875 +vt 0.442308 0.292811 +vt 0.441123 0.288902 +vt 0.439197 0.285301 +vt 0.436606 0.282144 +vt 0.433449 0.279553 +vt 0.429848 0.277627 +vt 0.425939 0.276442 +vt 0.421875 0.276042 +vt 0.421875 0.234375 +vt 0.434068 0.235576 +vt 0.445793 0.239133 +vt 0.456598 0.244908 +vt 0.466069 0.252681 +vt 0.473842 0.262152 +vt 0.479617 0.272957 +vt 0.483174 0.284682 +vt 0.479617 0.272957 +vt 0.473842 0.262152 +vt 0.466069 0.252681 +vt 0.456598 0.244908 +vt 0.445793 0.239133 +vt 0.434068 0.235576 +vt 0.421875 0.234375 +vt 0.421875 0.272150 +vt 0.426699 0.272625 +vt 0.431337 0.274032 +vt 0.435611 0.276317 +vt 0.439358 0.279392 +vt 0.442433 0.283139 +vt 0.444718 0.287413 +vt 0.446125 0.292051 +vt 0.446600 0.296875 +vt 0.446125 0.301698 +vt 0.444718 0.306337 +vt 0.442433 0.310611 +vt 0.439358 0.314358 +vt 0.435611 0.317433 +vt 0.431337 0.319717 +vt 0.426699 0.321124 +vt 0.421875 0.321599 +vt 0.421875 0.359375 +vt 0.434068 0.358174 +vt 0.445793 0.354617 +vt 0.456598 0.348842 +vt 0.466069 0.341069 +vt 0.473842 0.331598 +vt 0.479618 0.320793 +vt 0.483174 0.309068 +vt 0.484375 0.296875 +vt 0.484375 0.296875 +vt 0.483174 0.284682 +vt 0.479617 0.272957 +vt 0.473842 0.262152 +vt 0.466069 0.252681 +vt 0.456598 0.244908 +vt 0.445793 0.239133 +vt 0.434068 0.235576 +vt 0.421875 0.234375 +vt 0.421875 0.276042 +vt 0.425939 0.276442 +vt 0.429848 0.277627 +vt 0.433449 0.279553 +vt 0.436606 0.282144 +vt 0.439197 0.285301 +vt 0.441123 0.288902 +vt 0.442308 0.292811 +vt 0.442708 0.296875 +vt 0.442308 0.300939 +vt 0.441123 0.304847 +vt 0.439197 0.308449 +vt 0.436606 0.311606 +vt 0.433449 0.314197 +vt 0.429848 0.316122 +vt 0.425939 0.317308 +vt 0.421875 0.317708 +vt 0.421875 0.359375 +vt 0.434068 0.358174 +vt 0.445793 0.354617 +vt 0.456598 0.348842 +vt 0.466069 0.341069 +vt 0.473842 0.331598 +vt 0.479618 0.320793 +vt 0.483174 0.309068 +vt 0.484375 0.296875 +vt 0.483174 0.309068 +vt 0.479618 0.320793 +vt 0.473842 0.331598 +vt 0.466069 0.341069 +vt 0.456598 0.348842 +vt 0.445793 0.354617 +vt 0.434068 0.358174 +vt 0.421875 0.359375 +vt 0.421875 0.321599 +vt 0.426699 0.321124 +vt 0.431337 0.319717 +vt 0.435611 0.317433 +vt 0.439358 0.314358 +vt 0.442433 0.310611 +vt 0.444718 0.306337 +vt 0.446125 0.301698 +vt 0.446600 0.296875 +vt 0.446125 0.292051 +vt 0.444718 0.287413 +vt 0.442433 0.283139 +vt 0.439358 0.279392 +vt 0.435611 0.276317 +vt 0.431337 0.274032 +vt 0.426699 0.272625 +vt 0.421875 0.272150 +vt 0.421875 0.234375 +vt 0.434068 0.235576 +vt 0.445793 0.239133 +vt 0.456598 0.244908 +vt 0.466069 0.252681 +vt 0.473842 0.262152 +vt 0.479617 0.272957 +vt 0.483174 0.284682 +vt 0.417051 0.272625 +vt 0.412413 0.274032 +vt 0.408139 0.276317 +vt 0.404392 0.279392 +vt 0.401317 0.283139 +vt 0.399032 0.287413 +vt 0.397626 0.292051 +vt 0.397150 0.296875 +vt 0.397626 0.301698 +vt 0.399032 0.306337 +vt 0.401317 0.310611 +vt 0.404392 0.314358 +vt 0.408139 0.317433 +vt 0.412413 0.319717 +vt 0.417051 0.321124 +vt 0.409682 0.358174 +vt 0.397957 0.354617 +vt 0.387152 0.348842 +vt 0.377681 0.341069 +vt 0.369908 0.331598 +vt 0.364133 0.320793 +vt 0.360576 0.309068 +vt 0.359375 0.296875 +vt 0.360576 0.284682 +vt 0.364133 0.272957 +vt 0.369908 0.262152 +vt 0.377681 0.252681 +vt 0.387152 0.244908 +vt 0.397957 0.239133 +vt 0.409682 0.235576 +vt 0.417811 0.276442 +vt 0.413902 0.277627 +vt 0.410301 0.279553 +vt 0.407144 0.282144 +vt 0.404553 0.285301 +vt 0.402628 0.288902 +vt 0.401442 0.292811 +vt 0.401042 0.296875 +vt 0.401442 0.300939 +vt 0.402628 0.304848 +vt 0.404553 0.308449 +vt 0.407144 0.311606 +vt 0.410301 0.314197 +vt 0.413902 0.316122 +vt 0.417811 0.317308 +vt 0.409682 0.358174 +vt 0.397957 0.354617 +vt 0.387152 0.348842 +vt 0.377681 0.341069 +vt 0.369908 0.331598 +vt 0.364133 0.320793 +vt 0.360576 0.309068 +vt 0.359375 0.296875 +vt 0.360576 0.284682 +vt 0.364133 0.272957 +vt 0.369908 0.262152 +vt 0.377681 0.252681 +vt 0.387152 0.244908 +vt 0.397957 0.239133 +vt 0.409682 0.235576 +vt 0.417051 0.321124 +vt 0.412413 0.319717 +vt 0.408139 0.317433 +vt 0.404392 0.314358 +vt 0.401317 0.310611 +vt 0.399032 0.306337 +vt 0.397626 0.301698 +vt 0.397150 0.296875 +vt 0.397626 0.292051 +vt 0.399032 0.287413 +vt 0.401317 0.283139 +vt 0.404392 0.279392 +vt 0.408139 0.276317 +vt 0.412413 0.274032 +vt 0.417051 0.272625 +vt 0.409682 0.235576 +vt 0.397957 0.239133 +vt 0.387152 0.244908 +vt 0.377681 0.252681 +vt 0.369908 0.262152 +vt 0.364133 0.272957 +vt 0.360576 0.284682 +vt 0.359375 0.296875 +vt 0.360576 0.309068 +vt 0.364133 0.320793 +vt 0.369908 0.331598 +vt 0.377681 0.341069 +vt 0.387152 0.348842 +vt 0.397957 0.354617 +vt 0.409682 0.358174 +vt 0.417811 0.317308 +vt 0.413902 0.316122 +vt 0.410301 0.314197 +vt 0.407144 0.311606 +vt 0.404553 0.308449 +vt 0.402628 0.304848 +vt 0.401442 0.300939 +vt 0.401042 0.296875 +vt 0.401442 0.292811 +vt 0.402628 0.288902 +vt 0.404553 0.285301 +vt 0.407144 0.282144 +vt 0.410301 0.279553 +vt 0.413902 0.277627 +vt 0.417811 0.276442 +vt 0.409682 0.235576 +vt 0.397957 0.239133 +vt 0.387152 0.244908 +vt 0.377681 0.252681 +vt 0.369908 0.262152 +vt 0.364133 0.272957 +vt 0.360576 0.284682 +vt 0.359375 0.296875 +vt 0.360576 0.309068 +vt 0.364133 0.320793 +vt 0.369908 0.331598 +vt 0.377681 0.341069 +vt 0.387152 0.348842 +vt 0.397957 0.354617 +vt 0.409682 0.358174 +vt 0.512500 0.514256 +vt 0.495057 0.514256 +vt 0.495057 0.487500 +vt 0.512500 0.487500 +vt 0.477385 0.520174 +vt 0.494827 0.520183 +vt 0.495053 0.664231 +vt 0.477611 0.664222 +vt 0.512500 0.559357 +vt 0.512500 0.564707 +vt 0.495057 0.564707 +vt 0.495057 0.559357 +vt 0.477614 0.487500 +vt 0.366263 0.519892 +vt 0.369938 0.515742 +vt 0.386221 0.675899 +vt 0.343067 0.687500 +vt 0.316477 0.657017 +vt 0.342916 0.522181 +vt 0.349531 0.523401 +vt 0.358189 0.522788 +vt 0.512500 0.569234 +vt 0.495057 0.569234 +vt 0.495057 0.571877 +vt 0.512500 0.571877 +vt 0.459941 0.487500 +vt 0.477385 0.487500 +vt 0.477385 0.668275 +vt 0.459941 0.668275 +vt 0.512500 0.577327 +vt 0.495057 0.577327 +vt 0.495057 0.582459 +vt 0.512500 0.582459 +vt 0.495057 0.535749 +vt 0.495057 0.516943 +vt 0.512499 0.516954 +vt 0.512499 0.535760 +vt 0.512500 0.542001 +vt 0.512500 0.554529 +vt 0.495057 0.554529 +vt 0.495057 0.542001 +vt 0.498955 0.586077 +vt 0.498955 0.595823 +vt 0.505646 0.595823 +vt 0.505646 0.586077 +vt 0.218750 0.812500 +vt 0.216371 0.824459 +vt 0.209597 0.834597 +vt 0.199459 0.841371 +vt 0.187500 0.843750 +vt 0.175541 0.841371 +vt 0.165403 0.834597 +vt 0.158629 0.824459 +vt 0.156250 0.812500 +vt 0.158629 0.800541 +vt 0.165403 0.790403 +vt 0.175541 0.783629 +vt 0.187500 0.781250 +vt 0.199459 0.783629 +vt 0.209597 0.790403 +vt 0.216371 0.800541 +vt 0.512500 0.514256 +vt 0.512500 0.487500 +vt 0.495057 0.487500 +vt 0.495057 0.514256 +vt 0.477385 0.520174 +vt 0.477611 0.664222 +vt 0.495053 0.664231 +vt 0.494827 0.520183 +vt 0.512500 0.559357 +vt 0.495057 0.559357 +vt 0.495057 0.564707 +vt 0.512500 0.564707 +vt 0.477614 0.487500 +vt 0.459941 0.487500 +vt 0.459941 0.668275 +vt 0.477385 0.668275 +vt 0.477385 0.487500 +vt 0.495057 0.535749 +vt 0.512499 0.535760 +vt 0.512499 0.516954 +vt 0.495057 0.516943 +vt 0.512500 0.542001 +vt 0.495057 0.542001 +vt 0.495057 0.554529 +vt 0.512500 0.554529 +vt 0.218750 0.812500 +vt 0.216371 0.800541 +vt 0.209597 0.790403 +vt 0.199459 0.783629 +vt 0.187500 0.781250 +vt 0.175541 0.783629 +vt 0.165403 0.790403 +vt 0.158629 0.800541 +vt 0.156250 0.812500 +vt 0.158629 0.824459 +vt 0.165403 0.834597 +vt 0.175541 0.841371 +vt 0.187500 0.843750 +vt 0.199459 0.841371 +vt 0.209597 0.834597 +vt 0.216371 0.824459 +vt 0.477385 0.671815 +vt 0.459941 0.671815 +vt 0.512499 0.539359 +vt 0.495057 0.539349 +vt 0.512500 0.573710 +vt 0.495057 0.573710 +vt 0.495057 0.586077 +vt 0.512500 0.586077 +vt 0.512500 0.577327 +vt 0.512500 0.582459 +vt 0.495057 0.582459 +vt 0.495057 0.577327 +vt 0.495057 0.666381 +vt 0.477614 0.666372 +vt 0.498955 0.586077 +vt 0.498955 0.595823 +vt 0.495057 0.595823 +vt 0.495057 0.586077 +vt 0.509545 0.595823 +vt 0.509545 0.586077 +vt 0.495057 0.556662 +vt 0.512500 0.556662 +vt 0.505646 0.586077 +vt 0.505646 0.595823 +vt 0.495057 0.556662 +vt 0.512500 0.556662 +vt 0.512500 0.569235 +vt 0.495057 0.569234 +vt 0.495057 0.539359 +vt 0.512500 0.539359 +vt 0.512499 0.514267 +vt 0.495057 0.514256 +vt 0.495057 0.573710 +vt 0.512500 0.573710 +vt 0.512500 0.571877 +vt 0.495057 0.571877 +vt 0.386279 0.664060 +vt 0.390197 0.517983 +vt 0.416636 0.652819 +vt 0.459941 0.499102 +vt 0.459941 0.683882 +vt 0.443659 0.659258 +vt 0.446104 0.683400 +vt 0.440909 0.678098 +vt 0.454220 0.685805 +vt 0.336367 0.518866 +vt 0.327081 0.507159 +vt 0.322002 0.506133 +vt 0.315998 0.507792 +vt 0.312558 0.510940 +vt 0.342916 0.522181 +vt 0.316477 0.657017 +vt 0.343067 0.687500 +vt 0.386221 0.675899 +vt 0.369938 0.515742 +vt 0.366263 0.519892 +vt 0.358189 0.522788 +vt 0.349531 0.523401 +vt 0.431909 0.652212 +vt 0.423252 0.651599 +vt 0.416788 0.487500 +vt 0.439984 0.655108 +vt 0.312558 0.510940 +vt 0.336367 0.518866 +vt 0.315998 0.507792 +vt 0.322002 0.506133 +vt 0.327081 0.507159 +vt 0.367188 0.496902 +vt 0.372384 0.491600 +vt 0.380499 0.489195 +vt 0.386221 0.491119 +vt 0.390197 0.517983 +vt 0.386279 0.664060 +vt 0.416636 0.652819 +vt 0.389719 0.667208 +vt 0.395723 0.668867 +vt 0.400802 0.667841 +vt 0.410088 0.656134 +vt 0.459941 0.683882 +vt 0.459941 0.499102 +vt 0.443659 0.659258 +vt 0.440909 0.678098 +vt 0.446104 0.683400 +vt 0.454220 0.685805 +vt 0.410088 0.656134 +vt 0.400802 0.667841 +vt 0.395723 0.668867 +vt 0.389719 0.667208 +vt 0.386221 0.491119 +vt 0.372384 0.491600 +vt 0.367188 0.496902 +vt 0.380499 0.489195 +vt 0.423252 0.651599 +vt 0.431909 0.652212 +vt 0.439984 0.655108 +vt 0.416788 0.487500 +vt 0.249991 0.781257 +vt 0.247613 0.793214 +vt 0.240840 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793214 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240840 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.394804 0.394044 +vt 0.417696 0.394044 +vt 0.417696 0.418456 +vt 0.394804 0.418456 +vt 0.390625 0.328125 +vt 0.390625 0.387424 +vt 0.359375 0.387424 +vt 0.359375 0.328125 +vt 0.328125 0.328125 +vt 0.328125 0.387424 +vt 0.296875 0.387424 +vt 0.296875 0.328125 +vt 0.328125 0.296875 +vt 0.359375 0.296875 +vt 0.421875 0.328125 +vt 0.421875 0.387424 +vt 0.421875 0.390625 +vt 0.421875 0.421875 +vt 0.390625 0.421875 +vt 0.390625 0.390625 +vt 0.296875 0.859375 +vt 0.296875 0.984375 +vt 0.421875 0.984375 +vt 0.421875 0.859375 +vt 0.296875 0.859375 +vt 0.421875 0.859375 +vt 0.421875 0.984375 +vt 0.296875 0.984375 +vt 0.437500 0.859375 +vt 0.453125 0.859375 +vt 0.453125 0.984375 +vt 0.437500 0.984375 +vt 0.437500 0.984375 +vt 0.453125 0.984375 +vt 0.453125 0.859375 +vt 0.437500 0.859375 +vt 0.421875 0.828125 +vt 0.421875 0.843750 +vt 0.296875 0.843750 +vt 0.296875 0.828125 +vt 0.296875 0.828125 +vt 0.296875 0.843750 +vt 0.421875 0.843750 +vt 0.421875 0.828125 +vt 0.031250 0.281250 +vt 0.031250 0.265625 +vt 0.125000 0.265625 +vt 0.125000 0.281250 +vt 0.015943 0.420689 +vt 0.015625 0.419504 +vt 0.015625 0.299368 +vt 0.015943 0.298183 +vt 0.016811 0.297315 +vt 0.017998 0.296997 +vt 0.019204 0.296997 +vt 0.020390 0.297315 +vt 0.021259 0.298183 +vt 0.021577 0.299368 +vt 0.021577 0.320784 +vt 0.021577 0.398088 +vt 0.021577 0.419504 +vt 0.021259 0.420689 +vt 0.020390 0.421557 +vt 0.019204 0.421874 +vt 0.017998 0.421874 +vt 0.016811 0.421557 +vt 0.031250 0.281250 +vt 0.125000 0.281250 +vt 0.125000 0.265625 +vt 0.031250 0.265625 +vt 0.134658 0.320784 +vt 0.134658 0.398089 +vt 0.140610 0.299369 +vt 0.140610 0.419504 +vt 0.140292 0.420690 +vt 0.139424 0.421557 +vt 0.138237 0.421875 +vt 0.137031 0.421875 +vt 0.135845 0.421557 +vt 0.134976 0.420690 +vt 0.134658 0.419504 +vt 0.134658 0.299369 +vt 0.134976 0.298183 +vt 0.135845 0.297316 +vt 0.137031 0.296998 +vt 0.138237 0.296998 +vt 0.139424 0.297316 +vt 0.140292 0.298183 +vt 0.718750 0.984375 +vt 0.718750 0.859375 +vt 0.734375 0.859375 +vt 0.734375 0.984375 +vt 0.703125 0.984375 +vt 0.578125 0.984375 +vt 0.578125 0.859375 +vt 0.703125 0.859375 +vt 0.718750 0.859375 +vt 0.718750 0.984375 +vt 0.734375 0.984375 +vt 0.734375 0.859375 +vt 0.578125 0.828125 +vt 0.703125 0.828125 +vt 0.703125 0.843750 +vt 0.578125 0.843750 +vt 0.703125 0.828125 +vt 0.578125 0.828125 +vt 0.578125 0.843750 +vt 0.703125 0.843750 +vt 0.406250 0.375000 +vt 0.397097 0.375000 +vt 0.384153 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.354120 +vt 0.377349 0.349406 +vt 0.381804 0.345702 +vt 0.387474 0.343750 +vt 0.393776 0.343750 +vt 0.399446 0.345702 +vt 0.403901 0.349407 +vt 0.406250 0.354120 +vt 0.443972 0.375000 +vt 0.453125 0.375000 +vt 0.453125 0.354120 +vt 0.450777 0.349407 +vt 0.446321 0.345702 +vt 0.440651 0.343750 +vt 0.434349 0.343750 +vt 0.428679 0.345702 +vt 0.424224 0.349406 +vt 0.421875 0.354120 +vt 0.421875 0.375000 +vt 0.431028 0.375000 +vt 0.406250 0.375000 +vt 0.397097 0.375000 +vt 0.384153 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.354120 +vt 0.377349 0.349406 +vt 0.381804 0.345702 +vt 0.387474 0.343750 +vt 0.393776 0.343750 +vt 0.399446 0.345702 +vt 0.403901 0.349407 +vt 0.406250 0.354120 +vt 0.443972 0.375000 +vt 0.453125 0.375000 +vt 0.453125 0.354120 +vt 0.450777 0.349407 +vt 0.446321 0.345702 +vt 0.440651 0.343750 +vt 0.434349 0.343750 +vt 0.428679 0.345702 +vt 0.424224 0.349406 +vt 0.421875 0.354120 +vt 0.421875 0.375000 +vt 0.431028 0.375000 +vt 0.406250 0.375000 +vt 0.397097 0.375000 +vt 0.384153 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.354120 +vt 0.377349 0.349406 +vt 0.381804 0.345702 +vt 0.387474 0.343750 +vt 0.393776 0.343750 +vt 0.399446 0.345702 +vt 0.403901 0.349407 +vt 0.406250 0.354120 +vt 0.443972 0.375000 +vt 0.453125 0.375000 +vt 0.453125 0.354120 +vt 0.450777 0.349407 +vt 0.446321 0.345702 +vt 0.440651 0.343750 +vt 0.434349 0.343750 +vt 0.428679 0.345702 +vt 0.424224 0.349406 +vt 0.421875 0.354120 +vt 0.421875 0.375000 +vt 0.431028 0.375000 +vt 0.406250 0.375000 +vt 0.397097 0.375000 +vt 0.384153 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.354120 +vt 0.377349 0.349406 +vt 0.381804 0.345702 +vt 0.387474 0.343750 +vt 0.393776 0.343750 +vt 0.399446 0.345702 +vt 0.403901 0.349407 +vt 0.406250 0.354120 +vt 0.443972 0.375000 +vt 0.453125 0.375000 +vt 0.453125 0.354120 +vt 0.450777 0.349407 +vt 0.446321 0.345702 +vt 0.440651 0.343750 +vt 0.434349 0.343750 +vt 0.428679 0.345702 +vt 0.424224 0.349406 +vt 0.421875 0.354120 +vt 0.421875 0.375000 +vt 0.431028 0.375000 +vt 0.343750 0.218750 +vt 0.343750 0.281250 +vt 0.312500 0.281250 +vt 0.312500 0.218750 +vt 0.437500 0.218750 +vt 0.437500 0.281250 +vt 0.406250 0.281250 +vt 0.406250 0.218750 +vt 0.375000 0.281250 +vt 0.375000 0.218750 +vt 0.343750 0.187500 +vt 0.375000 0.187500 +vt 0.437500 0.312500 +vt 0.406250 0.312500 +vt 0.249991 0.781257 +vt 0.247613 0.793213 +vt 0.240839 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793213 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240839 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.521365 0.347801 +vt 0.521365 0.320023 +vt 0.546875 0.320023 +vt 0.546875 0.347801 +vt 0.347895 0.394097 +vt 0.322385 0.394097 +vt 0.322385 0.320023 +vt 0.347895 0.320023 +vt 0.373406 0.320023 +vt 0.398916 0.320023 +vt 0.398916 0.394097 +vt 0.373406 0.394097 +vt 0.347895 0.394097 +vt 0.347895 0.320023 +vt 0.373406 0.320023 +vt 0.373406 0.394097 +vt 0.322385 0.320023 +vt 0.322385 0.421875 +vt 0.296875 0.421875 +vt 0.296875 0.320023 +vt 0.546875 0.320023 +vt 0.521365 0.320023 +vt 0.521365 0.171875 +vt 0.546875 0.171875 +vt 0.409120 0.320023 +vt 0.409120 0.171875 +vt 0.439732 0.245949 +vt 0.439732 0.320023 +vt 0.521365 0.171875 +vt 0.521365 0.245949 +vt 0.409120 0.320023 +vt 0.296875 0.320023 +vt 0.327487 0.245949 +vt 0.409120 0.245949 +vt 0.296875 0.171875 +vt 0.327487 0.171875 +vt 0.140625 0.953125 +vt 0.140625 0.968750 +vt 0.078125 0.968750 +vt 0.078125 0.953125 +vt 0.015625 0.968750 +vt 0.015625 0.953125 +vt 0.265625 0.953125 +vt 0.265625 0.968750 +vt 0.203125 0.968750 +vt 0.203125 0.953125 +vt 0.859375 0.984375 +vt 0.937500 0.984375 +vt 0.937500 0.906250 +vt 0.859375 0.906250 +vt 0.937500 0.859375 +vt 0.859375 0.859375 +vt 0.859375 0.781250 +vt 0.937500 0.781250 +vt 0.203125 0.921875 +vt 0.203125 0.937500 +vt 0.140625 0.937500 +vt 0.140625 0.921875 +vt 0.265625 0.921875 +vt 0.265625 0.937500 +vt 0.078125 0.921875 +vt 0.078125 0.937500 +vt 0.015625 0.937500 +vt 0.015625 0.921875 +vt 0.171875 0.546875 +vt 0.171875 0.625000 +vt 0.093750 0.625000 +vt 0.093750 0.546875 +vt 0.093750 0.625000 +vt 0.093750 0.703125 +vt 0.015625 0.703125 +vt 0.015625 0.625000 +vt 0.171875 0.625000 +vt 0.171875 0.703125 +vt 0.015625 0.625000 +vt 0.015625 0.546875 +vt 0.546875 0.343750 +vt 0.546875 0.359375 +vt 0.296875 0.359375 +vt 0.296875 0.343750 +vt 0.296875 0.390625 +vt 0.296875 0.375000 +vt 0.546875 0.375000 +vt 0.546875 0.390625 +vt 0.546875 0.406250 +vt 0.296875 0.406250 +vt 0.546875 0.343750 +vt 0.546875 0.359375 +vt 0.296875 0.359375 +vt 0.296875 0.343750 +vt 0.296875 0.390625 +vt 0.296875 0.375000 +vt 0.546875 0.375000 +vt 0.546875 0.390625 +vt 0.546875 0.406250 +vt 0.296875 0.406250 +vt 0.693479 0.655060 +vt 0.687500 0.656250 +vt 0.681521 0.655061 +vt 0.676452 0.651673 +vt 0.673064 0.646604 +vt 0.671875 0.640625 +vt 0.673064 0.634646 +vt 0.676452 0.629576 +vt 0.681521 0.626189 +vt 0.687500 0.625000 +vt 0.693479 0.626189 +vt 0.698549 0.629576 +vt 0.701936 0.634645 +vt 0.703125 0.640625 +vt 0.701936 0.646604 +vt 0.698549 0.651673 +vt 0.734375 0.656250 +vt 0.740354 0.655060 +vt 0.745424 0.651673 +vt 0.748811 0.646604 +vt 0.750000 0.640625 +vt 0.748811 0.634645 +vt 0.745424 0.629576 +vt 0.740354 0.626189 +vt 0.734375 0.625000 +vt 0.728396 0.626189 +vt 0.723327 0.629576 +vt 0.719939 0.634646 +vt 0.718750 0.640625 +vt 0.719939 0.646604 +vt 0.723327 0.651673 +vt 0.728396 0.655061 +vt 0.249991 0.781257 +vt 0.247613 0.793214 +vt 0.240840 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793214 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240840 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.249991 0.781257 +vt 0.247613 0.793214 +vt 0.240840 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793214 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240840 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.394804 0.394044 +vt 0.417696 0.394044 +vt 0.417696 0.418456 +vt 0.394804 0.418456 +vt 0.390625 0.328125 +vt 0.390625 0.387424 +vt 0.359375 0.387424 +vt 0.359375 0.328125 +vt 0.328125 0.328125 +vt 0.328125 0.387424 +vt 0.296875 0.387424 +vt 0.296875 0.328125 +vt 0.328125 0.296875 +vt 0.359375 0.296875 +vt 0.421875 0.328125 +vt 0.421875 0.387424 +vt 0.421875 0.390625 +vt 0.421875 0.421875 +vt 0.390625 0.421875 +vt 0.390625 0.390625 +vt 0.394804 0.394044 +vt 0.417696 0.394044 +vt 0.417696 0.418456 +vt 0.394804 0.418456 +vt 0.390625 0.328125 +vt 0.390625 0.387424 +vt 0.359375 0.387424 +vt 0.359375 0.328125 +vt 0.328125 0.328125 +vt 0.328125 0.387424 +vt 0.296875 0.387424 +vt 0.296875 0.328125 +vt 0.328125 0.296875 +vt 0.359375 0.296875 +vt 0.421875 0.328125 +vt 0.421875 0.387424 +vt 0.421875 0.390625 +vt 0.421875 0.421875 +vt 0.390625 0.421875 +vt 0.390625 0.390625 +vt 0.394804 0.394044 +vt 0.417696 0.394044 +vt 0.417696 0.418456 +vt 0.394804 0.418456 +vt 0.390625 0.328125 +vt 0.390625 0.387424 +vt 0.359375 0.387424 +vt 0.359375 0.328125 +vt 0.328125 0.328125 +vt 0.328125 0.387424 +vt 0.296875 0.387424 +vt 0.296875 0.328125 +vt 0.328125 0.296875 +vt 0.359375 0.296875 +vt 0.421875 0.328125 +vt 0.421875 0.387424 +vt 0.421875 0.390625 +vt 0.421875 0.421875 +vt 0.390625 0.421875 +vt 0.390625 0.390625 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.500000 0.300935 +vt 0.500000 0.343750 +vt 0.468750 0.343750 +vt 0.468750 0.300935 +vt 0.455836 0.290666 +vt 0.462293 0.292042 +vt 0.467020 0.295801 +vt 0.437500 0.343750 +vt 0.437500 0.300935 +vt 0.438077 0.295801 +vt 0.439652 0.285523 +vt 0.450414 0.290666 +vt 0.406250 0.343750 +vt 0.406250 0.300935 +vt 0.500000 0.375000 +vt 0.468750 0.375000 +vt 0.393336 0.290666 +vt 0.404098 0.285523 +vt 0.405673 0.295801 +vt 0.406250 0.300935 +vt 0.375000 0.343750 +vt 0.375000 0.300935 +vt 0.376730 0.295801 +vt 0.381457 0.292042 +vt 0.387914 0.290666 +vt 0.468750 0.295801 +vt 0.500000 0.295801 +vt 0.468750 0.290666 +vt 0.500000 0.290666 +vt 0.406250 0.258403 +vt 0.437500 0.258403 +vt 0.437500 0.266806 +vt 0.406250 0.266806 +vt 0.406250 0.273861 +vt 0.437500 0.273861 +vt 0.806239 0.557064 +vt 0.785488 0.569044 +vt 0.764737 0.557063 +vt 0.764737 0.533102 +vt 0.785488 0.521121 +vt 0.806239 0.533102 +vt 0.806239 0.557064 +vt 0.806239 0.533102 +vt 0.785488 0.521121 +vt 0.764737 0.533102 +vt 0.764737 0.557063 +vt 0.785488 0.569044 +vt 0.249991 0.781257 +vt 0.247613 0.793213 +vt 0.240840 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793213 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240840 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.249991 0.781257 +vt 0.247613 0.793213 +vt 0.240840 0.803349 +vt 0.230703 0.810122 +vt 0.218745 0.812500 +vt 0.206789 0.810122 +vt 0.196652 0.803349 +vt 0.189879 0.793213 +vt 0.187500 0.781257 +vt 0.189879 0.769301 +vt 0.196652 0.759165 +vt 0.206789 0.752393 +vt 0.218746 0.750015 +vt 0.230703 0.752393 +vt 0.240840 0.759165 +vt 0.247613 0.769301 +vt 0.247613 0.793213 +vt 0.249991 0.781257 +vt 0.247613 0.769301 +vt 0.240840 0.759165 +vt 0.230703 0.752393 +vt 0.218746 0.750015 +vt 0.206789 0.752393 +vt 0.196652 0.759165 +vt 0.189879 0.769301 +vt 0.187500 0.781257 +vt 0.189879 0.793213 +vt 0.196652 0.803349 +vt 0.206789 0.810122 +vt 0.218746 0.812500 +vt 0.230703 0.810122 +vt 0.240840 0.803349 +vt 0.140625 0.953125 +vt 0.140625 0.968750 +vt 0.078125 0.968750 +vt 0.078125 0.953125 +vt 0.015625 0.968750 +vt 0.015625 0.953125 +vt 0.265625 0.953125 +vt 0.265625 0.968750 +vt 0.203125 0.968750 +vt 0.203125 0.953125 +vt 0.859375 0.984375 +vt 0.937500 0.984375 +vt 0.937500 0.906250 +vt 0.859375 0.906250 +vt 0.937500 0.859375 +vt 0.859375 0.859375 +vt 0.859375 0.781250 +vt 0.937500 0.781250 +vt 0.203125 0.921875 +vt 0.203125 0.937500 +vt 0.140625 0.937500 +vt 0.140625 0.921875 +vt 0.265625 0.921875 +vt 0.265625 0.937500 +vt 0.078125 0.921875 +vt 0.078125 0.937500 +vt 0.015625 0.937500 +vt 0.015625 0.921875 +vt 0.171875 0.546875 +vt 0.171875 0.625000 +vt 0.093750 0.625000 +vt 0.093750 0.546875 +vt 0.093750 0.625000 +vt 0.093750 0.703125 +vt 0.015625 0.703125 +vt 0.015625 0.625000 +vt 0.171875 0.625000 +vt 0.171875 0.703125 +vt 0.015625 0.625000 +vt 0.015625 0.546875 +vt 0.122613 0.918213 +vt 0.124991 0.906257 +vt 0.122613 0.894301 +vt 0.115840 0.884165 +vt 0.105703 0.877393 +vt 0.093746 0.875015 +vt 0.081789 0.877393 +vt 0.071652 0.884165 +vt 0.064879 0.894301 +vt 0.062500 0.906257 +vt 0.064879 0.918213 +vt 0.071652 0.928349 +vt 0.081789 0.935122 +vt 0.093746 0.937500 +vt 0.105703 0.935122 +vt 0.115840 0.928349 +vt 0.755979 0.545686 +vt 0.750000 0.546875 +vt 0.744021 0.545686 +vt 0.738952 0.542298 +vt 0.735564 0.537229 +vt 0.734375 0.531250 +vt 0.735564 0.525271 +vt 0.738952 0.520201 +vt 0.744021 0.516814 +vt 0.750000 0.515625 +vt 0.755979 0.516814 +vt 0.761049 0.520201 +vt 0.764436 0.525270 +vt 0.765625 0.531250 +vt 0.764436 0.537229 +vt 0.761049 0.542298 +vt 0.750000 0.546875 +vt 0.755979 0.545686 +vt 0.761049 0.542298 +vt 0.764436 0.537229 +vt 0.765625 0.531250 +vt 0.764436 0.525270 +vt 0.761049 0.520201 +vt 0.755979 0.516814 +vt 0.750000 0.515625 +vt 0.744021 0.516814 +vt 0.738952 0.520201 +vt 0.735564 0.525271 +vt 0.734375 0.531250 +vt 0.735564 0.537229 +vt 0.738952 0.542298 +vt 0.744021 0.545686 +vt 0.140625 0.953125 +vt 0.140625 0.968750 +vt 0.078125 0.968750 +vt 0.078125 0.953125 +vt 0.015625 0.968750 +vt 0.015625 0.953125 +vt 0.265625 0.953125 +vt 0.265625 0.968750 +vt 0.203125 0.968750 +vt 0.203125 0.953125 +vt 0.859375 0.984375 +vt 0.937500 0.984375 +vt 0.937500 0.906250 +vt 0.859375 0.906250 +vt 0.937500 0.859375 +vt 0.859375 0.859375 +vt 0.859375 0.781250 +vt 0.937500 0.781250 +vt 0.203125 0.921875 +vt 0.203125 0.937500 +vt 0.140625 0.937500 +vt 0.140625 0.921875 +vt 0.265625 0.921875 +vt 0.265625 0.937500 +vt 0.078125 0.921875 +vt 0.078125 0.937500 +vt 0.015625 0.937500 +vt 0.015625 0.921875 +vt 0.171875 0.546875 +vt 0.171875 0.625000 +vt 0.093750 0.625000 +vt 0.093750 0.546875 +vt 0.093750 0.625000 +vt 0.093750 0.703125 +vt 0.015625 0.703125 +vt 0.015625 0.625000 +vt 0.171875 0.625000 +vt 0.171875 0.703125 +vt 0.015625 0.625000 +vt 0.015625 0.546875 +vt 0.693479 0.655060 +vt 0.687500 0.656250 +vt 0.681521 0.655061 +vt 0.676452 0.651673 +vt 0.673064 0.646604 +vt 0.671875 0.640625 +vt 0.673064 0.634646 +vt 0.676452 0.629576 +vt 0.681521 0.626189 +vt 0.687500 0.625000 +vt 0.693479 0.626189 +vt 0.698549 0.629576 +vt 0.701936 0.634645 +vt 0.703125 0.640625 +vt 0.701936 0.646604 +vt 0.698549 0.651673 +vt 0.734375 0.656250 +vt 0.740354 0.655060 +vt 0.745424 0.651673 +vt 0.748811 0.646604 +vt 0.750000 0.640625 +vt 0.748811 0.634645 +vt 0.745424 0.629576 +vt 0.740354 0.626189 +vt 0.734375 0.625000 +vt 0.728396 0.626189 +vt 0.723327 0.629576 +vt 0.719939 0.634646 +vt 0.718750 0.640625 +vt 0.719939 0.646604 +vt 0.723327 0.651673 +vt 0.728396 0.655061 +vt 0.140625 0.953125 +vt 0.140625 0.968750 +vt 0.078125 0.968750 +vt 0.078125 0.953125 +vt 0.015625 0.968750 +vt 0.015625 0.953125 +vt 0.265625 0.953125 +vt 0.265625 0.968750 +vt 0.203125 0.968750 +vt 0.203125 0.953125 +vt 0.859375 0.984375 +vt 0.937500 0.984375 +vt 0.937500 0.906250 +vt 0.859375 0.906250 +vt 0.937500 0.859375 +vt 0.859375 0.859375 +vt 0.859375 0.781250 +vt 0.937500 0.781250 +vt 0.203125 0.921875 +vt 0.203125 0.937500 +vt 0.140625 0.937500 +vt 0.140625 0.921875 +vt 0.265625 0.921875 +vt 0.265625 0.937500 +vt 0.078125 0.921875 +vt 0.078125 0.937500 +vt 0.015625 0.937500 +vt 0.015625 0.921875 +vt 0.171875 0.546875 +vt 0.171875 0.625000 +vt 0.093750 0.625000 +vt 0.093750 0.546875 +vt 0.093750 0.625000 +vt 0.093750 0.703125 +vt 0.015625 0.703125 +vt 0.015625 0.625000 +vt 0.171875 0.625000 +vt 0.171875 0.703125 +vt 0.015625 0.625000 +vt 0.015625 0.546875 +vt 0.122613 0.918213 +vt 0.124991 0.906257 +vt 0.122613 0.894301 +vt 0.115840 0.884165 +vt 0.105703 0.877393 +vt 0.093746 0.875015 +vt 0.081789 0.877393 +vt 0.071652 0.884165 +vt 0.064879 0.894301 +vt 0.062500 0.906257 +vt 0.064879 0.918213 +vt 0.071652 0.928349 +vt 0.081789 0.935122 +vt 0.093746 0.937500 +vt 0.105703 0.935122 +vt 0.115840 0.928349 +vt 0.755979 0.545686 +vt 0.750000 0.546875 +vt 0.744021 0.545686 +vt 0.738952 0.542298 +vt 0.735564 0.537229 +vt 0.734375 0.531250 +vt 0.735564 0.525271 +vt 0.738952 0.520201 +vt 0.744021 0.516814 +vt 0.750000 0.515625 +vt 0.755979 0.516814 +vt 0.761049 0.520201 +vt 0.764436 0.525270 +vt 0.765625 0.531250 +vt 0.764436 0.537229 +vt 0.761049 0.542298 +vt 0.750000 0.546875 +vt 0.755979 0.545686 +vt 0.761049 0.542298 +vt 0.764436 0.537229 +vt 0.765625 0.531250 +vt 0.764436 0.525270 +vt 0.761049 0.520201 +vt 0.755979 0.516814 +vt 0.750000 0.515625 +vt 0.744021 0.516814 +vt 0.738952 0.520201 +vt 0.735564 0.525271 +vt 0.734375 0.531250 +vt 0.735564 0.537229 +vt 0.738952 0.542298 +vt 0.744021 0.545686 +vt 0.812500 0.562500 +vt 0.812500 0.625000 +vt 0.796875 0.625000 +vt 0.796875 0.562500 +vt 0.781250 0.625000 +vt 0.781250 0.562500 +vt 0.765625 0.625000 +vt 0.765625 0.562500 +vt 0.750000 0.625000 +vt 0.750000 0.562500 +vt 0.734375 0.625000 +vt 0.734375 0.562500 +vt 0.718750 0.625000 +vt 0.718750 0.562500 +vt 0.703125 0.625000 +vt 0.703125 0.562500 +vt 0.687500 0.625000 +vt 0.687500 0.562500 +vt 0.671875 0.625000 +vt 0.671875 0.562500 +vt 0.656250 0.625000 +vt 0.656250 0.562500 +vt 0.640625 0.625000 +vt 0.640625 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.562500 +vt 0.609375 0.625000 +vt 0.609375 0.562500 +vt 0.593750 0.625000 +vt 0.593750 0.562500 +vt 0.578125 0.625000 +vt 0.578125 0.562500 +vt 0.828125 0.562500 +vt 0.828125 0.625000 +vt 0.875000 0.718750 +vt 0.875000 0.671875 +vt 0.890625 0.671875 +vt 0.890625 0.718750 +vt 0.906250 0.671875 +vt 0.906250 0.718750 +vt 0.921875 0.671875 +vt 0.921875 0.718750 +vt 0.937500 0.671875 +vt 0.937500 0.718750 +vt 0.953125 0.671875 +vt 0.953125 0.718750 +vt 0.968750 0.671875 +vt 0.968750 0.718750 +vt 0.984375 0.671875 +vt 0.984375 0.718750 +vt 0.859375 0.671875 +vt 0.859375 0.625000 +vt 0.875000 0.625000 +vt 0.875000 0.671875 +vt 0.890625 0.625000 +vt 0.890625 0.671875 +vt 0.906250 0.625000 +vt 0.906250 0.671875 +vt 0.921875 0.625000 +vt 0.921875 0.671875 +vt 0.937500 0.625000 +vt 0.937500 0.671875 +vt 0.953125 0.625000 +vt 0.953125 0.671875 +vt 0.968750 0.625000 +vt 0.968750 0.671875 +vt 0.984375 0.625000 +vt 0.984375 0.671875 +vt 0.859375 0.718750 +vt 0.859375 0.671875 +vt 0.890684 0.627563 +vt 0.897620 0.626184 +vt 0.903500 0.622255 +vt 0.907429 0.616375 +vt 0.908809 0.609439 +vt 0.907429 0.602502 +vt 0.903500 0.596622 +vt 0.897620 0.592693 +vt 0.890684 0.591314 +vt 0.883747 0.592693 +vt 0.877867 0.596622 +vt 0.873938 0.602502 +vt 0.872559 0.609439 +vt 0.873938 0.616375 +vt 0.877867 0.622255 +vt 0.883747 0.626184 +vt 0.640625 0.703125 +vt 0.640625 0.453125 +vt 0.656250 0.453125 +vt 0.656250 0.703125 +vt 0.671875 0.453125 +vt 0.671875 0.703125 +vt 0.687500 0.453125 +vt 0.687500 0.703125 +vt 0.703125 0.453125 +vt 0.703125 0.703125 +vt 0.718750 0.453125 +vt 0.718750 0.703125 +vt 0.734375 0.453125 +vt 0.734375 0.703125 +vt 0.750000 0.453125 +vt 0.750000 0.703125 +vt 0.765625 0.453125 +vt 0.765625 0.703125 +vt 0.781250 0.453125 +vt 0.781250 0.703125 +vt 0.796875 0.453125 +vt 0.796875 0.703125 +vt 0.812500 0.453125 +vt 0.812500 0.703125 +vt 0.828125 0.453125 +vt 0.828125 0.703125 +vt 0.578125 0.703125 +vt 0.578125 0.453125 +vt 0.593750 0.453125 +vt 0.593750 0.703125 +vt 0.609375 0.453125 +vt 0.609375 0.703125 +vt 0.625000 0.453125 +vt 0.625000 0.703125 +vt 0.640625 0.703125 +vt 0.640625 0.453125 +vt 0.656250 0.453125 +vt 0.656250 0.703125 +vt 0.671875 0.453125 +vt 0.671875 0.703125 +vt 0.687500 0.453125 +vt 0.687500 0.703125 +vt 0.703125 0.453125 +vt 0.703125 0.703125 +vt 0.718750 0.453125 +vt 0.718750 0.703125 +vt 0.734375 0.453125 +vt 0.734375 0.703125 +vt 0.750000 0.453125 +vt 0.750000 0.703125 +vt 0.765625 0.453125 +vt 0.765625 0.703125 +vt 0.781250 0.453125 +vt 0.781250 0.703125 +vt 0.796875 0.453125 +vt 0.796875 0.703125 +vt 0.812500 0.453125 +vt 0.812500 0.703125 +vt 0.828125 0.453125 +vt 0.828125 0.703125 +vt 0.578125 0.703125 +vt 0.578125 0.453125 +vt 0.593750 0.453125 +vt 0.593750 0.703125 +vt 0.609375 0.453125 +vt 0.609375 0.703125 +vt 0.625000 0.453125 +vt 0.625000 0.703125 +vt 0.640626 0.703125 +vt 0.656251 0.703125 +vt 0.656251 0.453125 +vt 0.640626 0.453125 +vt 0.671876 0.703125 +vt 0.671876 0.453125 +vt 0.687501 0.703125 +vt 0.687501 0.453125 +vt 0.703126 0.703125 +vt 0.703126 0.453125 +vt 0.718751 0.703125 +vt 0.718751 0.453125 +vt 0.734377 0.703125 +vt 0.734377 0.453125 +vt 0.750002 0.703125 +vt 0.750002 0.453125 +vt 0.765627 0.703125 +vt 0.765627 0.453125 +vt 0.781252 0.703125 +vt 0.781252 0.453125 +vt 0.796877 0.703125 +vt 0.796877 0.453125 +vt 0.812502 0.703125 +vt 0.812502 0.453125 +vt 0.828127 0.703125 +vt 0.828127 0.453125 +vt 0.578125 0.703125 +vt 0.593750 0.703125 +vt 0.593750 0.453125 +vt 0.578125 0.453125 +vt 0.609376 0.703125 +vt 0.609375 0.453125 +vt 0.625001 0.703125 +vt 0.625001 0.453125 +vt 0.812501 0.671875 +vt 0.811312 0.665896 +vt 0.807924 0.660827 +vt 0.802855 0.657439 +vt 0.796876 0.656250 +vt 0.790897 0.657439 +vt 0.785827 0.660826 +vt 0.782440 0.665895 +vt 0.781251 0.671875 +vt 0.782440 0.677854 +vt 0.785827 0.682923 +vt 0.790897 0.686310 +vt 0.796876 0.687500 +vt 0.802855 0.686310 +vt 0.807924 0.682923 +vt 0.811312 0.677854 +vt 0.640626 0.703125 +vt 0.656251 0.703125 +vt 0.656251 0.453125 +vt 0.640626 0.453125 +vt 0.671876 0.703125 +vt 0.671876 0.453125 +vt 0.687501 0.703125 +vt 0.687501 0.453125 +vt 0.703126 0.703125 +vt 0.703126 0.453125 +vt 0.718751 0.703125 +vt 0.718751 0.453125 +vt 0.734377 0.703125 +vt 0.734377 0.453125 +vt 0.750002 0.703125 +vt 0.750002 0.453125 +vt 0.765627 0.703125 +vt 0.765627 0.453125 +vt 0.781252 0.703125 +vt 0.781252 0.453125 +vt 0.796877 0.703125 +vt 0.796877 0.453125 +vt 0.812502 0.703125 +vt 0.812502 0.453125 +vt 0.828127 0.703125 +vt 0.828127 0.453125 +vt 0.578125 0.703125 +vt 0.593750 0.703125 +vt 0.593750 0.453125 +vt 0.578125 0.453125 +vt 0.609376 0.703125 +vt 0.609375 0.453125 +vt 0.625001 0.703125 +vt 0.625001 0.453125 +vt 0.812501 0.671875 +vt 0.811312 0.665896 +vt 0.807924 0.660827 +vt 0.802855 0.657439 +vt 0.796876 0.656250 +vt 0.790897 0.657439 +vt 0.785827 0.660826 +vt 0.782440 0.665895 +vt 0.781251 0.671875 +vt 0.782440 0.677854 +vt 0.785827 0.682923 +vt 0.790897 0.686310 +vt 0.796876 0.687500 +vt 0.802855 0.686310 +vt 0.807924 0.682923 +vt 0.811312 0.677854 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.421875 0.218750 +vt 0.312500 0.234375 +vt 0.406250 0.234375 +vt 0.406250 0.250000 +vt 0.312500 0.250000 +vt 0.406250 0.265625 +vt 0.312500 0.265625 +vt 0.406250 0.281250 +vt 0.312500 0.281250 +vt 0.406250 0.296875 +vt 0.312500 0.296875 +vt 0.406250 0.312500 +vt 0.312500 0.312500 +vt 0.406250 0.328125 +vt 0.312500 0.328125 +vt 0.406250 0.343750 +vt 0.312500 0.343750 +vt 0.406250 0.359375 +vt 0.312500 0.359375 +vt 0.406250 0.375000 +vt 0.312500 0.375000 +vt 0.406250 0.390625 +vt 0.312500 0.390625 +vt 0.406250 0.406250 +vt 0.312500 0.406250 +vt 0.406250 0.421875 +vt 0.312500 0.421875 +vt 0.437500 0.171875 +vt 0.531250 0.171875 +vt 0.531250 0.187500 +vt 0.437500 0.187500 +vt 0.531250 0.203125 +vt 0.437500 0.203125 +vt 0.531250 0.218750 +vt 0.437500 0.218750 +vt 0.531250 0.234375 +vt 0.437500 0.234375 +vt 0.531250 0.250000 +vt 0.437500 0.250000 +vt 0.531250 0.265625 +vt 0.437500 0.265625 +vt 0.531250 0.281250 +vt 0.437500 0.281250 +vt 0.531250 0.296875 +vt 0.437500 0.296875 +vt 0.531250 0.312500 +vt 0.437500 0.312500 +vt 0.531250 0.328125 +vt 0.437500 0.328125 +vt 0.531250 0.343750 +vt 0.437500 0.343750 +vt 0.531250 0.359375 +vt 0.437500 0.359375 +vt 0.531250 0.375000 +vt 0.437500 0.375000 +vt 0.531250 0.390625 +vt 0.437500 0.390625 +vt 0.531250 0.406250 +vt 0.437500 0.406250 +vt 0.531250 0.421875 +vt 0.437500 0.421875 +vt 0.312500 0.171875 +vt 0.406250 0.171875 +vt 0.406250 0.187500 +vt 0.312500 0.187500 +vt 0.406250 0.203125 +vt 0.312500 0.203125 +vt 0.406250 0.218750 +vt 0.312500 0.218750 +vt 0.046875 0.906250 +vt 0.046875 0.921875 +vt 0.031250 0.921875 +vt 0.031250 0.906250 +vt 0.046875 0.765625 +vt 0.046875 0.781250 +vt 0.031250 0.781250 +vt 0.031250 0.765625 +vt 0.046875 0.937500 +vt 0.031250 0.937500 +vt 0.046875 0.843750 +vt 0.046875 0.859375 +vt 0.031250 0.859375 +vt 0.031250 0.843750 +vt 0.046875 0.875000 +vt 0.031250 0.875000 +vt 0.046875 0.796875 +vt 0.031250 0.796875 +vt 0.046875 0.953125 +vt 0.031250 0.953125 +vt 0.046875 0.812500 +vt 0.031250 0.812500 +vt 0.046875 0.968750 +vt 0.031250 0.968750 +vt 0.046875 0.890625 +vt 0.031250 0.890625 +vt 0.046875 0.734375 +vt 0.046875 0.750000 +vt 0.031250 0.750000 +vt 0.031250 0.734375 +vt 0.046875 0.828125 +vt 0.031250 0.828125 +vt 0.046875 0.984375 +vt 0.031250 0.984375 +vt 0.015625 0.859375 +vt 0.015625 0.843750 +vt 0.015625 0.750000 +vt 0.015625 0.734375 +vt 0.015625 0.984375 +vt 0.015625 0.968750 +vt 0.015625 0.875000 +vt 0.015625 0.765625 +vt 0.015625 0.890625 +vt 0.015625 0.781250 +vt 0.015625 0.906250 +vt 0.015625 0.796875 +vt 0.015625 0.921875 +vt 0.015625 0.812500 +vt 0.015625 0.937500 +vt 0.015625 0.828125 +vt 0.015625 0.953125 +vt 0.234375 0.906250 +vt 0.250000 0.906250 +vt 0.250000 0.921875 +vt 0.234375 0.921875 +vt 0.234375 0.765625 +vt 0.250000 0.765625 +vt 0.250000 0.781250 +vt 0.234375 0.781250 +vt 0.250000 0.937500 +vt 0.234375 0.937500 +vt 0.234375 0.843750 +vt 0.250000 0.843750 +vt 0.250000 0.859375 +vt 0.234375 0.859375 +vt 0.250000 0.875000 +vt 0.234375 0.875000 +vt 0.250000 0.796875 +vt 0.234375 0.796875 +vt 0.250000 0.953125 +vt 0.234375 0.953125 +vt 0.250000 0.812500 +vt 0.234375 0.812500 +vt 0.250000 0.968750 +vt 0.234375 0.968750 +vt 0.250000 0.890625 +vt 0.234375 0.890625 +vt 0.234375 0.734375 +vt 0.250000 0.734375 +vt 0.250000 0.750000 +vt 0.234375 0.750000 +vt 0.250000 0.828125 +vt 0.234375 0.828125 +vt 0.250000 0.984375 +vt 0.234375 0.984375 +vt 0.265625 0.843750 +vt 0.265625 0.859375 +vt 0.265625 0.734375 +vt 0.265625 0.750000 +vt 0.265625 0.968750 +vt 0.265625 0.984375 +vt 0.265625 0.875000 +vt 0.265625 0.765625 +vt 0.265625 0.890625 +vt 0.265625 0.781250 +vt 0.265625 0.906250 +vt 0.265625 0.796875 +vt 0.265625 0.921875 +vt 0.265625 0.812500 +vt 0.265625 0.937500 +vt 0.265625 0.828125 +vt 0.265625 0.953125 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.640626 0.703125 +vt 0.640626 0.453125 +vt 0.656251 0.453125 +vt 0.656251 0.703125 +vt 0.671876 0.453125 +vt 0.671876 0.703125 +vt 0.687501 0.453125 +vt 0.687501 0.703125 +vt 0.703126 0.453125 +vt 0.703126 0.703125 +vt 0.718751 0.453125 +vt 0.718751 0.703125 +vt 0.734377 0.453125 +vt 0.734377 0.703125 +vt 0.750002 0.453125 +vt 0.750002 0.703125 +vt 0.765627 0.453125 +vt 0.765627 0.703125 +vt 0.781252 0.453125 +vt 0.781252 0.703125 +vt 0.796877 0.453125 +vt 0.796877 0.703125 +vt 0.812502 0.453125 +vt 0.812502 0.703125 +vt 0.828127 0.453125 +vt 0.828127 0.703125 +vt 0.578125 0.703125 +vt 0.578125 0.453125 +vt 0.593750 0.453125 +vt 0.593750 0.703125 +vt 0.609375 0.453125 +vt 0.609376 0.703125 +vt 0.811311 0.630980 +vt 0.812501 0.625000 +vt 0.811311 0.619021 +vt 0.807924 0.613952 +vt 0.802855 0.610565 +vt 0.796876 0.609375 +vt 0.790896 0.610565 +vt 0.785827 0.613952 +vt 0.782440 0.619021 +vt 0.781251 0.625000 +vt 0.782440 0.630979 +vt 0.785827 0.636048 +vt 0.790896 0.639436 +vt 0.796876 0.640625 +vt 0.802855 0.639436 +vt 0.807924 0.636049 +vt 0.625001 0.453125 +vt 0.625001 0.703125 +vt 0.812501 0.671875 +vt 0.811312 0.677854 +vt 0.807924 0.682923 +vt 0.802855 0.686310 +vt 0.796876 0.687500 +vt 0.790897 0.686310 +vt 0.785827 0.682923 +vt 0.782440 0.677854 +vt 0.781251 0.671875 +vt 0.782440 0.665895 +vt 0.785827 0.660826 +vt 0.790897 0.657439 +vt 0.796876 0.656250 +vt 0.802855 0.657439 +vt 0.807924 0.660827 +vt 0.811312 0.665896 +vt 0.156250 0.418760 +vt 0.156250 0.390625 +vt 0.171875 0.390625 +vt 0.171875 0.418760 +vt 0.171875 0.390625 +vt 0.156250 0.390625 +vt 0.156250 0.418760 +vt 0.171875 0.418760 +vt 0.028135 0.265625 +vt 0.025021 0.265625 +vt 0.025021 0.281250 +vt 0.028135 0.281250 +vt 0.156250 0.298432 +vt 0.156250 0.299990 +vt 0.171875 0.299990 +vt 0.171875 0.298432 +vt 0.025021 0.265625 +vt 0.025021 0.281250 +vt 0.021854 0.281250 +vt 0.021854 0.265625 +vt 0.021854 0.281250 +vt 0.021854 0.265625 +vt 0.156250 0.298061 +vt 0.156250 0.299248 +vt 0.171875 0.299248 +vt 0.171875 0.298061 +vt 0.137510 0.265625 +vt 0.134396 0.265625 +vt 0.134396 0.281250 +vt 0.137510 0.281250 +vt 0.171875 0.420689 +vt 0.156250 0.420689 +vt 0.156250 0.419502 +vt 0.171875 0.419502 +vt 0.156250 0.420689 +vt 0.171875 0.420688 +vt 0.171875 0.419502 +vt 0.156250 0.419502 +vt 0.028135 0.265625 +vt 0.028135 0.281250 +vt 0.156250 0.299248 +vt 0.171875 0.299248 +vt 0.128115 0.281250 +vt 0.128115 0.265625 +vt 0.131229 0.265625 +vt 0.131229 0.281250 +vt 0.018740 0.265625 +vt 0.018740 0.281250 +vt 0.156250 0.420318 +vt 0.171875 0.420318 +vt 0.128115 0.265625 +vt 0.125000 0.265625 +vt 0.125000 0.281250 +vt 0.128115 0.281250 +vt 0.156250 0.298061 +vt 0.171875 0.298061 +vt 0.131229 0.281250 +vt 0.131229 0.265625 +vt 0.031250 0.265625 +vt 0.031250 0.281250 +vt 0.156250 0.420318 +vt 0.171875 0.420318 +vt 0.018740 0.281250 +vt 0.018740 0.265625 +vt 0.134396 0.281250 +vt 0.134396 0.265625 +vt 0.137510 0.265625 +vt 0.137510 0.281250 +vt 0.171875 0.328125 +vt 0.156250 0.328125 +vt 0.156250 0.298432 +vt 0.156250 0.296875 +vt 0.171875 0.296875 +vt 0.171875 0.298432 +vt 0.156250 0.328125 +vt 0.156250 0.299990 +vt 0.171875 0.299989 +vt 0.171875 0.328125 +vt 0.156250 0.296875 +vt 0.171875 0.296875 +vt 0.015625 0.265625 +vt 0.015625 0.281250 +vt 0.015625 0.281250 +vt 0.015625 0.265625 +vt 0.140625 0.265625 +vt 0.140625 0.281250 +vt 0.156250 0.421875 +vt 0.171875 0.421875 +vt 0.375000 0.300884 +vt 0.406250 0.300884 +vt 0.406250 0.308491 +vt 0.375000 0.308491 +vt 0.375000 0.269634 +vt 0.406250 0.269634 +vt 0.406250 0.277241 +vt 0.375000 0.277241 +vt 0.375000 0.314325 +vt 0.406250 0.314325 +vt 0.406250 0.328125 +vt 0.375000 0.328125 +vt 0.375000 0.285259 +vt 0.406250 0.285259 +vt 0.406250 0.292866 +vt 0.375000 0.292866 +vt 0.375000 0.250000 +vt 0.406250 0.250000 +vt 0.406250 0.263800 +vt 0.375000 0.263800 +vt 0.375000 0.300884 +vt 0.406250 0.300884 +vt 0.406250 0.308491 +vt 0.375000 0.308491 +vt 0.375000 0.269634 +vt 0.406250 0.269634 +vt 0.406250 0.277241 +vt 0.375000 0.277241 +vt 0.375000 0.314325 +vt 0.406250 0.314325 +vt 0.406250 0.328125 +vt 0.375000 0.328125 +vt 0.375000 0.285259 +vt 0.406250 0.285259 +vt 0.406250 0.292866 +vt 0.375000 0.292866 +vt 0.375000 0.250000 +vt 0.406250 0.250000 +vt 0.406250 0.263800 +vt 0.375000 0.263800 +vt 0.375000 0.300884 +vt 0.406250 0.300884 +vt 0.406250 0.308491 +vt 0.375000 0.308491 +vt 0.375000 0.269634 +vt 0.406250 0.269634 +vt 0.406250 0.277241 +vt 0.375000 0.277241 +vt 0.375000 0.314325 +vt 0.406250 0.314325 +vt 0.406250 0.328125 +vt 0.375000 0.328125 +vt 0.375000 0.285259 +vt 0.406250 0.285259 +vt 0.406250 0.292866 +vt 0.375000 0.292866 +vt 0.375000 0.250000 +vt 0.406250 0.250000 +vt 0.406250 0.263800 +vt 0.375000 0.263800 +vt 0.375000 0.300884 +vt 0.406250 0.300884 +vt 0.406250 0.308491 +vt 0.375000 0.308491 +vt 0.375000 0.269634 +vt 0.406250 0.269634 +vt 0.406250 0.277241 +vt 0.375000 0.277241 +vt 0.375000 0.314325 +vt 0.406250 0.314325 +vt 0.406250 0.328125 +vt 0.375000 0.328125 +vt 0.375000 0.285259 +vt 0.406250 0.285259 +vt 0.406250 0.292866 +vt 0.375000 0.292866 +vt 0.375000 0.250000 +vt 0.406250 0.250000 +vt 0.406250 0.263800 +vt 0.375000 0.263800 +vt 0.640626 0.703125 +vt 0.640626 0.453125 +vt 0.656251 0.453125 +vt 0.656251 0.703125 +vt 0.671876 0.453125 +vt 0.671876 0.703125 +vt 0.687501 0.453125 +vt 0.687501 0.703125 +vt 0.703126 0.453125 +vt 0.703126 0.703125 +vt 0.718751 0.453125 +vt 0.718751 0.703125 +vt 0.734377 0.453125 +vt 0.734377 0.703125 +vt 0.750002 0.453125 +vt 0.750002 0.703125 +vt 0.765627 0.453125 +vt 0.765627 0.703125 +vt 0.781252 0.453125 +vt 0.781252 0.703125 +vt 0.796877 0.453125 +vt 0.796877 0.703125 +vt 0.812502 0.453125 +vt 0.812502 0.703125 +vt 0.828127 0.453125 +vt 0.828127 0.703125 +vt 0.578125 0.703125 +vt 0.578125 0.453125 +vt 0.593750 0.453125 +vt 0.593750 0.703125 +vt 0.609375 0.453125 +vt 0.609376 0.703125 +vt 0.811311 0.630980 +vt 0.812501 0.625000 +vt 0.811311 0.619021 +vt 0.807924 0.613952 +vt 0.802855 0.610565 +vt 0.796876 0.609375 +vt 0.790896 0.610565 +vt 0.785827 0.613952 +vt 0.782440 0.619021 +vt 0.781251 0.625000 +vt 0.782440 0.630979 +vt 0.785827 0.636048 +vt 0.790896 0.639436 +vt 0.796876 0.640625 +vt 0.802855 0.639436 +vt 0.807924 0.636049 +vt 0.625001 0.453125 +vt 0.625001 0.703125 +vt 0.812501 0.671875 +vt 0.811312 0.677854 +vt 0.807924 0.682923 +vt 0.802855 0.686310 +vt 0.796876 0.687500 +vt 0.790897 0.686310 +vt 0.785827 0.682923 +vt 0.782440 0.677854 +vt 0.781251 0.671875 +vt 0.782440 0.665895 +vt 0.785827 0.660826 +vt 0.790897 0.657439 +vt 0.796876 0.656250 +vt 0.802855 0.657439 +vt 0.807924 0.660827 +vt 0.811312 0.665896 +vt -0.000000 0.109375 +vt 2.000000 0.109375 +vt 2.000000 0.125000 +vt -0.000000 0.125000 +vt 2.000000 0.140625 +vt -0.000000 0.140625 +vt -0.000000 0.015625 +vt 2.000000 0.015625 +vt 2.000000 0.031250 +vt -0.000000 0.031250 +vt 2.000000 0.046875 +vt -0.000000 0.046875 +vt 2.000000 0.062500 +vt -0.000000 0.062500 +vt 2.000000 0.078125 +vt -0.000000 0.078125 +vt 2.000000 0.093750 +vt -0.000000 0.093750 +vt 2.000000 0.109375 +vt -0.000000 0.109375 +vt 2.000000 0.125000 +vt -0.000000 0.125000 +vt 2.000000 0.140625 +vt -0.000000 0.140625 +vt -0.000000 0.015625 +vt 2.000000 0.015625 +vt 2.000000 0.031250 +vt -0.000000 0.031250 +vt 2.000000 0.046875 +vt -0.000000 0.046875 +vt 2.000000 0.062500 +vt -0.000000 0.062500 +vt 2.000000 0.078125 +vt -0.000000 0.078125 +vt 2.000000 0.093750 +vt -0.000000 0.093750 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.734375 0.593750 +vt 0.734375 0.562500 +vt 0.718750 0.593750 +vt 0.718750 0.562500 +vt 0.703125 0.593750 +vt 0.703125 0.562500 +vt 0.687500 0.593750 +vt 0.687500 0.562500 +vt 0.671875 0.593750 +vt 0.671875 0.562500 +vt 0.656250 0.593750 +vt 0.656250 0.562500 +vt 0.640625 0.593750 +vt 0.640625 0.562500 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.593750 0.593750 +vt 0.593750 0.562500 +vt 0.609375 0.562500 +vt 0.609375 0.593750 +vt 0.625000 0.562500 +vt 0.625000 0.593750 +vt 0.640625 0.562500 +vt 0.640625 0.593750 +vt 0.656250 0.562500 +vt 0.656250 0.593750 +vt 0.671875 0.562500 +vt 0.671875 0.593750 +vt 0.687500 0.562500 +vt 0.687500 0.593750 +vt 0.703125 0.562500 +vt 0.703125 0.593750 +vt 0.718750 0.562500 +vt 0.718750 0.593750 +vt 0.734375 0.562500 +vt 0.734375 0.593750 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.781250 0.562500 +vt 0.781250 0.593750 +vt 0.796875 0.562500 +vt 0.796875 0.593750 +vt 0.812500 0.562500 +vt 0.812500 0.593750 +vt 0.828125 0.562500 +vt 0.828125 0.593750 +vt 0.578125 0.703125 +vt 0.578125 0.687500 +vt 0.593750 0.687500 +vt 0.593750 0.703125 +vt 0.578125 0.671875 +vt 0.593750 0.671875 +vt 0.812500 0.609375 +vt 0.828125 0.609375 +vt 0.828125 0.671875 +vt 0.812500 0.671875 +vt 0.578125 0.609375 +vt 0.578125 0.593750 +vt 0.593750 0.609375 +vt 0.812500 0.703125 +vt 0.812500 0.687500 +vt 0.828125 0.687500 +vt 0.828125 0.703125 +vt 0.796875 0.609375 +vt 0.796875 0.671875 +vt 0.796875 0.703125 +vt 0.796875 0.687500 +vt 0.781250 0.609375 +vt 0.781250 0.671875 +vt 0.781250 0.703125 +vt 0.781250 0.687500 +vt 0.765625 0.609375 +vt 0.765625 0.671875 +vt 0.765625 0.703125 +vt 0.765625 0.687500 +vt 0.750000 0.609375 +vt 0.750000 0.671875 +vt 0.750000 0.703125 +vt 0.750000 0.687500 +vt 0.734375 0.609375 +vt 0.734375 0.671875 +vt 0.734375 0.703125 +vt 0.734375 0.687500 +vt 0.718750 0.609375 +vt 0.718750 0.671875 +vt 0.718750 0.703125 +vt 0.718750 0.687500 +vt 0.703125 0.609375 +vt 0.703125 0.671875 +vt 0.703125 0.703125 +vt 0.703125 0.687500 +vt 0.687500 0.609375 +vt 0.687500 0.671875 +vt 0.687500 0.703125 +vt 0.687500 0.687500 +vt 0.671875 0.609375 +vt 0.671875 0.671875 +vt 0.671875 0.703125 +vt 0.671875 0.687500 +vt 0.656250 0.609375 +vt 0.656250 0.671875 +vt 0.656250 0.703125 +vt 0.656250 0.687500 +vt 0.640625 0.609375 +vt 0.640625 0.671875 +vt 0.640625 0.703125 +vt 0.640625 0.687500 +vt 0.625000 0.609375 +vt 0.625000 0.671875 +vt 0.625000 0.703125 +vt 0.625000 0.687500 +vt 0.609375 0.609375 +vt 0.609375 0.671875 +vt 0.609375 0.703125 +vt 0.609375 0.687500 +vt 0.578125 0.562500 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 1.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.109375 +vt 1.000000 0.109375 +vt 0.000000 0.093750 +vt 1.000000 0.093750 +vt 0.000000 0.078125 +vt 1.000000 0.078125 +vt 0.000000 0.062500 +vt 1.000000 0.062500 +vt 0.000000 0.046875 +vt 1.000000 0.046875 +vt 0.000000 0.031250 +vt 1.000000 0.031250 +vt 0.000000 0.015625 +vt 1.000000 0.015625 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 0.656250 0.593750 +vt 0.656250 0.625000 +vt 0.625000 0.625000 +vt 0.625000 0.593750 +vt 0.812500 0.593750 +vt 0.812500 0.625000 +vt 0.781250 0.625000 +vt 0.781250 0.593750 +vt 0.750000 0.625000 +vt 0.750000 0.593750 +vt 0.718750 0.625000 +vt 0.718750 0.593750 +vt 0.687500 0.625000 +vt 0.687500 0.593750 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.734375 0.593750 +vt 0.734375 0.562500 +vt 0.718750 0.593750 +vt 0.718750 0.562500 +vt 0.703125 0.593750 +vt 0.703125 0.562500 +vt 0.687500 0.593750 +vt 0.687500 0.562500 +vt 0.671875 0.593750 +vt 0.671875 0.562500 +vt 0.656250 0.593750 +vt 0.656250 0.562500 +vt 0.640625 0.593750 +vt 0.640625 0.562500 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 2.000000 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.812500 0.562500 +vt 0.812500 0.609375 +vt 0.796875 0.609375 +vt 0.796875 0.562500 +vt 0.781250 0.609375 +vt 0.781250 0.562500 +vt 0.765625 0.609375 +vt 0.765625 0.562500 +vt 0.750000 0.609375 +vt 0.750000 0.562500 +vt 0.734375 0.609375 +vt 0.734375 0.562500 +vt 0.718750 0.609375 +vt 0.718750 0.562500 +vt 0.703125 0.609375 +vt 0.703125 0.562500 +vt 0.687500 0.609375 +vt 0.687500 0.562500 +vt 0.671875 0.609375 +vt 0.671875 0.562500 +vt 0.656250 0.609375 +vt 0.656250 0.562500 +vt 0.640625 0.609375 +vt 0.640625 0.562500 +vt 0.625000 0.609375 +vt 0.625000 0.562500 +vt 0.609375 0.609375 +vt 0.609375 0.562500 +vt 0.593750 0.609375 +vt 0.593750 0.562500 +vt 0.578125 0.609375 +vt 0.578125 0.562500 +vt 0.828125 0.562500 +vt 0.828125 0.609375 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.734375 0.593750 +vt 0.734375 0.562500 +vt 0.718750 0.593750 +vt 0.718750 0.562500 +vt 0.703125 0.593750 +vt 0.703125 0.562500 +vt 0.687500 0.593750 +vt 0.687500 0.562500 +vt 0.671875 0.593750 +vt 0.671875 0.562500 +vt 0.656250 0.593750 +vt 0.656250 0.562500 +vt 0.640625 0.593750 +vt 0.640625 0.562500 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.593750 0.593750 +vt 0.593750 0.562500 +vt 0.609375 0.562500 +vt 0.609375 0.593750 +vt 0.625000 0.562500 +vt 0.625000 0.593750 +vt 0.640625 0.562500 +vt 0.640625 0.593750 +vt 0.656250 0.562500 +vt 0.656250 0.593750 +vt 0.671875 0.562500 +vt 0.671875 0.593750 +vt 0.687500 0.562500 +vt 0.687500 0.593750 +vt 0.703125 0.562500 +vt 0.703125 0.593750 +vt 0.718750 0.562500 +vt 0.718750 0.593750 +vt 0.734375 0.562500 +vt 0.734375 0.593750 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.781250 0.562500 +vt 0.781250 0.593750 +vt 0.796875 0.562500 +vt 0.796875 0.593750 +vt 0.812500 0.562500 +vt 0.812500 0.593750 +vt 0.828125 0.562500 +vt 0.828125 0.593750 +vt 0.578125 0.703125 +vt 0.578125 0.687500 +vt 0.593750 0.687500 +vt 0.593750 0.703125 +vt 0.578125 0.671875 +vt 0.593750 0.671875 +vt 0.812500 0.609375 +vt 0.828125 0.609375 +vt 0.828125 0.671875 +vt 0.812500 0.671875 +vt 0.578125 0.609375 +vt 0.578125 0.593750 +vt 0.593750 0.609375 +vt 0.812500 0.703125 +vt 0.812500 0.687500 +vt 0.828125 0.687500 +vt 0.828125 0.703125 +vt 0.796875 0.609375 +vt 0.796875 0.671875 +vt 0.796875 0.703125 +vt 0.796875 0.687500 +vt 0.781250 0.609375 +vt 0.781250 0.671875 +vt 0.781250 0.703125 +vt 0.781250 0.687500 +vt 0.765625 0.609375 +vt 0.765625 0.671875 +vt 0.765625 0.703125 +vt 0.765625 0.687500 +vt 0.750000 0.609375 +vt 0.750000 0.671875 +vt 0.750000 0.703125 +vt 0.750000 0.687500 +vt 0.734375 0.609375 +vt 0.734375 0.671875 +vt 0.734375 0.703125 +vt 0.734375 0.687500 +vt 0.718750 0.609375 +vt 0.718750 0.671875 +vt 0.718750 0.703125 +vt 0.718750 0.687500 +vt 0.703125 0.609375 +vt 0.703125 0.671875 +vt 0.703125 0.703125 +vt 0.703125 0.687500 +vt 0.687500 0.609375 +vt 0.687500 0.671875 +vt 0.687500 0.703125 +vt 0.687500 0.687500 +vt 0.671875 0.609375 +vt 0.671875 0.671875 +vt 0.671875 0.703125 +vt 0.671875 0.687500 +vt 0.656250 0.609375 +vt 0.656250 0.671875 +vt 0.656250 0.703125 +vt 0.656250 0.687500 +vt 0.640625 0.609375 +vt 0.640625 0.671875 +vt 0.640625 0.703125 +vt 0.640625 0.687500 +vt 0.625000 0.609375 +vt 0.625000 0.671875 +vt 0.625000 0.703125 +vt 0.625000 0.687500 +vt 0.609375 0.609375 +vt 0.609375 0.671875 +vt 0.609375 0.703125 +vt 0.609375 0.687500 +vt 0.578125 0.562500 +vt 0.750000 0.562500 +vt 0.750000 0.593750 +vt 0.734375 0.593750 +vt 0.734375 0.562500 +vt 0.718750 0.593750 +vt 0.718750 0.562500 +vt 0.703125 0.593750 +vt 0.703125 0.562500 +vt 0.687500 0.593750 +vt 0.687500 0.562500 +vt 0.671875 0.593750 +vt 0.671875 0.562500 +vt 0.656250 0.593750 +vt 0.656250 0.562500 +vt 0.640625 0.593750 +vt 0.640625 0.562500 +vt 0.765625 0.562500 +vt 0.765625 0.593750 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 2.000000 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.000000 0.062500 +vt 2.000000 0.062500 +vt 0.000000 0.046875 +vt 2.000000 0.046875 +vt 0.000000 0.031250 +vt 2.000000 0.031250 +vt 0.000000 0.015625 +vt 2.000000 0.015625 +vt 0.000000 0.125000 +vt 2.000000 0.125000 +vt 2.000000 0.140625 +vt 0.000000 0.140625 +vt 0.000000 0.109375 +vt 2.000000 0.109375 +vt 0.000000 0.093750 +vt 2.000000 0.093750 +vt 0.000000 0.078125 +vt 2.000000 0.078125 +vt 0.812500 0.562500 +vt 0.812500 0.609375 +vt 0.796875 0.609375 +vt 0.796875 0.562500 +vt 0.781250 0.609375 +vt 0.781250 0.562500 +vt 0.765625 0.609375 +vt 0.765625 0.562500 +vt 0.750000 0.609375 +vt 0.750000 0.562500 +vt 0.734375 0.609375 +vt 0.734375 0.562500 +vt 0.718750 0.609375 +vt 0.718750 0.562500 +vt 0.703125 0.609375 +vt 0.703125 0.562500 +vt 0.687500 0.609375 +vt 0.687500 0.562500 +vt 0.671875 0.609375 +vt 0.671875 0.562500 +vt 0.656250 0.609375 +vt 0.656250 0.562500 +vt 0.640625 0.609375 +vt 0.640625 0.562500 +vt 0.625000 0.609375 +vt 0.625000 0.562500 +vt 0.609375 0.609375 +vt 0.609375 0.562500 +vt 0.593750 0.609375 +vt 0.593750 0.562500 +vt 0.578125 0.609375 +vt 0.578125 0.562500 +vt 0.828125 0.562500 +vt 0.828125 0.609375 +vn -0.0000 1.0000 0.0000 +vn 1.0000 0.0000 -0.0000 +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 -0.7071 -0.7071 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 -0.9914 0.1305 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.7934 0.6088 +vn 0.0000 -0.6088 0.7933 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 -0.1305 0.9914 +vn 0.0000 0.1305 0.9914 +vn 0.0000 0.3827 0.9239 +vn 0.0000 0.6087 0.7934 +vn 0.0000 0.7934 0.6088 +vn 0.0000 0.9239 0.3827 +vn 0.0000 0.9914 0.1305 +vn 0.0000 -0.6088 0.7934 +vn 0.0000 0.6088 0.7934 +vn 0.0000 0.7933 0.6088 +vn 0.0000 -0.6931 -0.7208 +vn -0.7933 0.0000 0.6088 +vn -0.7071 -0.0000 0.7071 +vn 0.7071 0.0000 -0.7071 +vn -0.1305 -0.0000 0.9914 +vn -0.9914 0.0000 0.1305 +vn -0.9239 0.0000 0.3827 +vn -0.9914 0.0000 -0.1305 +vn -0.9239 0.0000 -0.3827 +vn -0.7933 0.0000 -0.6088 +vn -0.6088 0.0000 -0.7933 +vn -0.3827 0.0000 -0.9239 +vn -0.1305 0.0000 -0.9914 +vn -0.7071 0.0000 -0.7071 +vn -0.9692 0.0000 0.2464 +vn -0.3827 -0.0000 0.9239 +vn -0.6088 -0.0000 0.7934 +vn -0.7934 0.0000 0.6088 +vn -0.7071 0.7071 -0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.7071 0.7071 -0.0000 +vn 0.7071 -0.7071 0.0000 +vn 1.0000 0.0000 0.0051 +vn -0.7071 -0.5000 0.5000 +vn 1.0000 0.0017 -0.0047 +vn 0.7071 -0.5000 -0.5000 +vn -1.0000 0.0017 0.0047 +vn -1.0000 0.0000 -0.0057 +vn 0.0000 -0.0012 1.0000 +vn 0.0280 -0.0000 -0.9996 +vn 0.8954 0.0000 0.4453 +vn 0.0941 0.0000 0.9956 +vn 0.9997 -0.0000 0.0230 +vn -0.7140 0.0000 0.7001 +vn -0.8886 -0.0000 -0.4587 +vn 0.0112 0.0000 0.9999 +vn 0.9229 0.0000 0.3849 +vn -0.9982 0.0000 -0.0593 +vn -0.0170 0.0000 0.9999 +vn -0.8511 0.0000 0.5250 +vn 0.5592 0.0000 0.8290 +vn 0.5194 0.0000 0.8545 +vn -0.7336 0.0000 0.6796 +vn 0.5931 0.0000 0.8051 +vn -0.3434 0.0000 0.9392 +vn -0.9366 0.0000 0.3505 +vn 0.7071 -0.0000 0.7071 +vn 0.2588 0.0000 -0.9659 +vn 0.9659 0.0000 -0.2588 +vn 0.2588 -0.0000 0.9659 +vn 0.9659 -0.0000 0.2588 +vn -0.9239 0.3827 0.0000 +vn -0.3827 0.9239 0.0000 +vn 0.3827 0.9239 0.0000 +vn 0.9239 0.3827 0.0000 +vn 0.9239 -0.3827 0.0000 +vn 0.3827 -0.9239 0.0000 +vn -0.3827 -0.9239 0.0000 +vn -0.9239 -0.3827 0.0000 +vn -0.5420 0.0000 -0.8404 +vn -0.8638 0.0000 -0.5039 +vn -0.7980 0.3305 -0.5039 +vn -0.5007 0.2074 -0.8404 +vn -0.6108 0.6108 -0.5039 +vn -0.3832 0.3832 -0.8404 +vn -0.3305 0.7980 -0.5039 +vn -0.2074 0.5007 -0.8404 +vn 0.0000 0.8638 -0.5039 +vn 0.0000 0.5420 -0.8404 +vn 0.3305 0.7980 -0.5039 +vn 0.2074 0.5007 -0.8404 +vn 0.6108 0.6108 -0.5039 +vn 0.3832 0.3832 -0.8404 +vn 0.7980 0.3305 -0.5039 +vn 0.5007 0.2074 -0.8404 +vn 0.8638 0.0000 -0.5039 +vn 0.5420 0.0000 -0.8404 +vn 0.7980 -0.3305 -0.5039 +vn 0.5007 -0.2074 -0.8404 +vn 0.6108 -0.6108 -0.5039 +vn 0.3832 -0.3832 -0.8404 +vn 0.3305 -0.7980 -0.5039 +vn 0.2074 -0.5007 -0.8404 +vn 0.0000 -0.8638 -0.5039 +vn 0.0000 -0.5420 -0.8404 +vn -0.3305 -0.7980 -0.5039 +vn -0.2074 -0.5007 -0.8404 +vn -0.6108 -0.6108 -0.5039 +vn -0.3832 -0.3832 -0.8404 +vn -0.7980 -0.3305 -0.5039 +vn -0.5007 -0.2074 -0.8404 +vn 0.3827 0.0000 0.9239 +vn 0.9239 0.0000 0.3827 +vn 0.9239 0.0000 -0.3827 +vn 0.3827 0.0000 -0.9239 +vn 0.0000 0.7462 0.6657 +vn 0.2855 0.6894 0.6657 +vn 0.5276 0.5276 0.6657 +vn 0.6894 0.2855 0.6657 +vn 0.7462 0.0000 0.6657 +vn 0.6894 -0.2856 0.6657 +vn 0.5276 -0.5276 0.6657 +vn 0.2856 -0.6894 0.6657 +vn 0.0000 -0.7462 0.6657 +vn -0.2855 -0.6894 0.6657 +vn -0.5276 -0.5276 0.6657 +vn -0.6894 -0.2855 0.6657 +vn -0.7462 0.0000 0.6657 +vn -0.6894 0.2856 0.6657 +vn -0.5276 0.5276 0.6657 +vn -0.2855 0.6894 0.6657 +vn 0.7139 0.6857 -0.1420 +vn 0.7139 -0.6857 -0.1420 +vn 0.6725 -0.6857 -0.2785 +vn 0.6725 0.6857 -0.2785 +vn -0.2785 0.6857 -0.6725 +vn -0.2785 -0.6857 -0.6725 +vn -0.4044 -0.6857 -0.6052 +vn -0.4044 0.6857 -0.6052 +vn -0.5147 0.6857 0.5147 +vn -0.5147 -0.6857 0.5147 +vn -0.4044 -0.6857 0.6052 +vn -0.4044 0.6857 0.6052 +vn 0.6052 0.6857 0.4044 +vn 0.6052 -0.6857 0.4044 +vn 0.6725 -0.6857 0.2785 +vn 0.6725 0.6857 0.2785 +vn 0.2785 0.6857 -0.6725 +vn 0.2785 -0.6857 -0.6725 +vn 0.1420 -0.6857 -0.7139 +vn 0.1420 0.6857 -0.7139 +vn -0.7279 0.6857 0.0000 +vn -0.7279 -0.6857 0.0000 +vn -0.7139 -0.6857 0.1420 +vn -0.7139 0.6857 0.1420 +vn -0.7139 0.6857 -0.1420 +vn -0.7139 -0.6857 -0.1420 +vn 0.1420 0.6857 0.7139 +vn 0.1420 -0.6857 0.7139 +vn 0.2785 -0.6857 0.6725 +vn 0.2785 0.6857 0.6725 +vn 0.6052 -0.6857 -0.4044 +vn 0.6052 0.6857 -0.4044 +vn -0.5147 -0.6857 -0.5147 +vn -0.5147 0.6857 -0.5147 +vn -0.2785 -0.6857 0.6725 +vn -0.2785 0.6857 0.6725 +vn 0.7139 -0.6857 0.1420 +vn 0.7139 0.6857 0.1420 +vn 0.0000 -0.6857 -0.7279 +vn 0.0000 0.6857 -0.7279 +vn -0.6725 -0.6857 0.2785 +vn -0.6725 0.6857 0.2785 +vn 0.4044 -0.6857 0.6052 +vn 0.4044 0.6857 0.6052 +vn 0.5147 -0.6857 -0.5147 +vn 0.5147 0.6857 -0.5147 +vn -0.6052 -0.6857 -0.4044 +vn -0.6052 0.6857 -0.4044 +vn -0.1420 -0.6857 0.7139 +vn -0.1420 0.6857 0.7139 +vn 0.7279 -0.6857 0.0000 +vn 0.7279 0.6857 0.0000 +vn -0.1420 -0.6857 -0.7139 +vn -0.1420 0.6857 -0.7139 +vn -0.6052 -0.6857 0.4044 +vn -0.6052 0.6857 0.4044 +vn 0.5147 -0.6857 0.5147 +vn 0.5147 0.6857 0.5147 +vn 0.4044 -0.6857 -0.6052 +vn 0.4044 0.6857 -0.6052 +vn -0.6725 -0.6857 -0.2785 +vn -0.6725 0.6857 -0.2785 +vn 0.0000 -0.6857 0.7279 +vn 0.0000 0.6857 0.7279 +vn 0.0000 -0.7299 -0.6836 +vn 0.0000 0.7298 -0.6836 +vn 0.0000 -0.7298 0.6836 +vn 0.0000 0.7299 0.6836 +vn 0.3507 -0.3999 -0.8468 +vn 0.0000 -0.3999 -0.9165 +vn 0.0000 -0.3663 -0.9305 +vn 0.3561 -0.3663 -0.8596 +vn -0.6481 -0.3999 0.6481 +vn -0.3507 -0.3999 0.8468 +vn -0.3561 -0.3663 0.8596 +vn -0.6579 -0.3663 0.6579 +vn -0.3507 -0.3999 -0.8468 +vn -0.3561 -0.3663 -0.8596 +vn 0.8468 -0.3999 0.3507 +vn 0.9165 -0.3999 0.0000 +vn 0.9305 -0.3663 0.0000 +vn 0.8596 -0.3663 0.3561 +vn 0.8468 -0.3999 -0.3507 +vn 0.8596 -0.3663 -0.3561 +vn 0.0000 -0.3999 0.9165 +vn 0.0000 -0.3663 0.9305 +vn -0.6481 -0.3999 -0.6481 +vn -0.6579 -0.3663 -0.6579 +vn 0.3507 -0.3999 0.8468 +vn 0.3561 -0.3663 0.8596 +vn -0.8468 -0.3999 -0.3507 +vn -0.8596 -0.3663 -0.3561 +vn 0.6481 -0.3999 -0.6481 +vn 0.6579 -0.3663 -0.6579 +vn -0.9165 -0.3999 0.0000 +vn -0.8468 -0.3999 0.3507 +vn -0.8596 -0.3663 0.3561 +vn -0.9305 -0.3663 0.0000 +vn 0.6481 -0.3999 0.6481 +vn 0.6579 -0.3663 0.6579 +vn 0.7462 0.6657 0.0000 +vn 0.6894 0.6657 0.2855 +vn -0.6894 0.6657 0.2855 +vn -0.7462 0.6657 0.0000 +vn -0.6894 0.6657 -0.2855 +vn 0.6894 0.6657 -0.2855 +vn -0.5276 0.6657 0.5276 +vn 0.5276 0.6657 -0.5276 +vn -0.2855 0.6657 0.6894 +vn 0.2855 0.6657 -0.6894 +vn 0.0000 0.6657 0.7462 +vn 0.0000 0.6657 -0.7462 +vn 0.2855 0.6657 0.6894 +vn -0.2855 0.6657 -0.6894 +vn 0.5276 0.6657 0.5276 +vn -0.5276 0.6657 -0.5276 +vn 0.3507 0.3999 -0.8468 +vn 0.3561 0.3663 -0.8596 +vn 0.0000 0.3663 -0.9305 +vn 0.0000 0.3999 -0.9165 +vn -0.6481 0.3999 0.6481 +vn -0.6579 0.3663 0.6579 +vn -0.3561 0.3663 0.8596 +vn -0.3507 0.3999 0.8468 +vn -0.3561 0.3663 -0.8596 +vn -0.3507 0.3999 -0.8468 +vn 0.8468 0.3999 0.3507 +vn 0.8596 0.3663 0.3561 +vn 0.9305 0.3663 0.0000 +vn 0.9165 0.3999 0.0000 +vn 0.8596 0.3663 -0.3561 +vn 0.8468 0.3999 -0.3507 +vn 0.0000 0.3663 0.9305 +vn 0.0000 0.3999 0.9165 +vn -0.6579 0.3663 -0.6579 +vn -0.6481 0.3999 -0.6481 +vn 0.3561 0.3663 0.8596 +vn 0.3507 0.3999 0.8468 +vn -0.8596 0.3663 -0.3561 +vn -0.8468 0.3999 -0.3507 +vn 0.6579 0.3663 -0.6579 +vn 0.6481 0.3999 -0.6481 +vn -0.9165 0.3999 0.0000 +vn -0.9305 0.3663 0.0000 +vn -0.8596 0.3663 0.3561 +vn -0.8468 0.3999 0.3507 +vn 0.6579 0.3663 0.6579 +vn 0.6481 0.3999 0.6481 +vn 0.6894 -0.6657 0.2855 +vn 0.7462 -0.6657 0.0000 +vn -0.7462 -0.6657 0.0000 +vn -0.6894 -0.6657 0.2856 +vn -0.6894 -0.6657 -0.2855 +vn 0.6894 -0.6657 -0.2855 +vn -0.5276 -0.6657 0.5276 +vn 0.5276 -0.6657 -0.5276 +vn -0.2855 -0.6657 0.6894 +vn 0.2855 -0.6657 -0.6894 +vn 0.0000 -0.6657 0.7462 +vn 0.0000 -0.6657 -0.7462 +vn 0.2855 -0.6657 0.6894 +vn -0.2855 -0.6657 -0.6894 +vn 0.5276 -0.6657 0.5276 +vn -0.5276 -0.6657 -0.5276 +vn -0.6894 -0.6657 0.2855 +vn -0.2856 -0.6657 0.6894 +vn -0.2856 0.6657 0.6894 +vn 0.2856 0.6657 0.6894 +vn 0.6894 0.6657 0.2856 +vn 0.0000 0.6100 0.7924 +vn -0.6862 0.6100 0.3962 +vn -0.8660 0.0000 0.5000 +vn -0.6862 0.6100 -0.3962 +vn -0.8660 0.0000 -0.5000 +vn 0.0000 0.6100 -0.7924 +vn 0.6862 0.6100 -0.3962 +vn 0.8660 0.0000 -0.5000 +vn 0.6862 0.6100 0.3962 +vn 0.8660 0.0000 0.5000 +vn 0.0000 -0.6100 0.7924 +vn 0.6862 -0.6100 0.3962 +vn 0.6862 -0.6100 -0.3962 +vn 0.0000 -0.6100 -0.7924 +vn -0.6862 -0.6100 -0.3962 +vn -0.6862 -0.6100 0.3962 +vn 0.6657 0.7462 0.0000 +vn -0.6657 0.7462 0.0000 +vn -0.6657 0.6894 0.2855 +vn 0.6657 0.6894 0.2856 +vn -0.6657 0.5276 0.5276 +vn 0.6657 0.5276 0.5276 +vn -0.6657 0.2856 0.6894 +vn 0.6657 0.2855 0.6894 +vn -0.6657 0.0000 0.7462 +vn 0.6657 0.0000 0.7462 +vn -0.6657 -0.2856 0.6894 +vn 0.6657 -0.2856 0.6894 +vn -0.6657 -0.5276 0.5276 +vn 0.6657 -0.5276 0.5276 +vn -0.6657 -0.6894 0.2856 +vn 0.6657 -0.6894 0.2855 +vn -0.6657 -0.7462 0.0000 +vn 0.6657 -0.7462 0.0000 +vn -0.6657 -0.6894 -0.2856 +vn 0.6657 -0.6894 -0.2855 +vn -0.6657 -0.5276 -0.5276 +vn 0.6657 -0.5276 -0.5276 +vn -0.6657 -0.2855 -0.6894 +vn 0.6657 -0.2855 -0.6894 +vn -0.6657 0.0000 -0.7462 +vn 0.6657 0.0000 -0.7462 +vn -0.6657 0.2856 -0.6894 +vn 0.6657 0.2856 -0.6894 +vn -0.6657 0.5276 -0.5276 +vn 0.6657 0.5276 -0.5276 +vn -0.6657 0.6894 -0.2855 +vn 0.6657 0.6894 -0.2855 +vn 0.0958 0.7280 -0.6789 +vn 0.3015 0.3015 -0.9045 +vn 0.1305 0.9914 0.0000 +vn 0.3015 -0.3015 -0.9045 +vn 0.0958 -0.7280 -0.6789 +vn 0.1305 -0.9914 0.0000 +vn -0.6557 0.3786 -0.6532 +vn -0.7280 0.0958 -0.6789 +vn -0.9914 0.1305 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.3786 -0.6557 -0.6532 +vn -0.0958 -0.7280 -0.6789 +vn -0.1305 -0.9914 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.7280 0.0958 -0.6789 +vn 0.9914 0.1305 0.0000 +vn 0.9914 -0.1305 0.0000 +vn 0.7280 -0.0958 -0.6789 +vn -0.9914 -0.1305 0.0000 +vn -0.7280 -0.0958 -0.6789 +vn 0.5000 0.8660 0.0000 +vn 0.3786 0.6557 -0.6532 +vn 0.3786 -0.6557 -0.6532 +vn 0.5000 -0.8660 0.0000 +vn 0.6557 0.3786 -0.6532 +vn 0.8660 0.5000 0.0000 +vn -0.0958 0.7280 -0.6789 +vn -0.1305 0.9914 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.6557 -0.3786 -0.6532 +vn -0.6557 -0.3786 -0.6532 +vn -0.8660 -0.5000 0.0000 +vn -0.3786 0.6557 -0.6532 +vn -0.5000 0.8660 0.0000 +vn -0.3015 -0.3015 -0.9045 +vn -0.3015 0.3015 -0.9045 +vn -0.6657 -0.4145 -0.6204 +vn 0.6657 -0.4146 -0.6204 +vn 0.6657 -0.6204 -0.4146 +vn -0.6657 -0.6204 -0.4146 +vn -0.6657 0.6204 -0.4146 +vn 0.6657 0.6204 -0.4146 +vn 0.6657 0.4146 -0.6204 +vn -0.6657 0.4146 -0.6204 +vn -0.6657 -0.7318 -0.1456 +vn 0.6657 -0.7319 -0.1456 +vn -0.6657 0.1456 -0.7318 +vn 0.6657 0.1456 -0.7318 +vn 0.6657 -0.1455 -0.7319 +vn -0.6657 -0.1455 -0.7319 +vn 0.6657 0.7318 -0.1456 +vn -0.6657 0.7319 -0.1456 +vn 0.6657 -0.1456 -0.7319 +vn -0.6657 -0.6894 0.2855 +vn -0.6894 0.6657 0.2856 +vn 0.2856 -0.6657 0.6894 +vn 0.6894 -0.6657 -0.2856 +vn 0.6894 0.6657 -0.2856 +vn -0.2856 -0.6657 -0.6894 +vn -0.2856 0.6657 -0.6894 +vn -0.6894 -0.6657 -0.2856 +vn -0.7902 0.6128 0.0000 +vn -0.7300 0.6128 0.3024 +vn -0.5587 0.6128 0.5587 +vn -0.3024 0.6128 0.7300 +vn 0.0000 0.6128 0.7902 +vn 0.3024 0.6128 0.7300 +vn 0.5587 0.6128 0.5587 +vn 0.7300 0.6128 0.3024 +vn 0.7902 0.6128 0.0000 +vn 0.7300 0.6128 -0.3024 +vn 0.5587 0.6128 -0.5587 +vn 0.3024 0.6128 -0.7300 +vn 0.0000 0.6128 -0.7902 +vn -0.3024 0.6128 -0.7300 +vn -0.5587 0.6128 -0.5587 +vn -0.7300 0.6128 -0.3024 +vn -0.7300 -0.6128 -0.3024 +vn -0.7902 -0.6128 0.0000 +vn -0.6660 -0.6930 -0.2759 +vn -0.7209 -0.6930 0.0000 +vn -0.5098 0.6930 -0.5098 +vn -0.6661 0.6930 -0.2759 +vn -0.5098 -0.6930 -0.5098 +vn -0.7209 0.6930 0.0000 +vn -0.5587 -0.6128 -0.5587 +vn -0.2759 0.6930 -0.6661 +vn -0.2759 -0.6930 -0.6660 +vn -0.3024 -0.6128 -0.7300 +vn 0.0000 0.6930 -0.7209 +vn 0.0000 -0.6930 -0.7209 +vn 0.0000 -0.6128 -0.7902 +vn 0.2759 0.6930 -0.6661 +vn 0.2759 -0.6930 -0.6660 +vn 0.3024 -0.6128 -0.7300 +vn 0.5098 0.6930 -0.5098 +vn 0.5098 -0.6930 -0.5098 +vn 0.5587 -0.6128 -0.5587 +vn 0.6660 0.6930 -0.2759 +vn 0.6660 -0.6930 -0.2759 +vn 0.7300 -0.6128 -0.3024 +vn 0.7209 0.6930 0.0000 +vn 0.7209 -0.6930 0.0000 +vn 0.7902 -0.6128 0.0000 +vn 0.6660 0.6930 0.2759 +vn 0.6661 -0.6930 0.2759 +vn 0.7300 -0.6128 0.3024 +vn 0.5098 0.6930 0.5098 +vn 0.5098 -0.6930 0.5098 +vn 0.5588 -0.6128 0.5587 +vn 0.2759 0.6930 0.6660 +vn 0.2759 -0.6930 0.6661 +vn 0.3024 -0.6128 0.7300 +vn 0.0000 0.6930 0.7209 +vn 0.0000 -0.6930 0.7209 +vn 0.0000 -0.6128 0.7902 +vn -0.2759 0.6930 0.6660 +vn -0.2759 -0.6930 0.6661 +vn -0.3024 -0.6128 0.7300 +vn -0.5098 0.6930 0.5098 +vn -0.5098 -0.6930 0.5098 +vn -0.5587 -0.6128 0.5587 +vn -0.6660 0.6930 0.2759 +vn -0.6661 -0.6930 0.2759 +vn -0.7300 -0.6128 0.3024 +vn 0.6894 -0.6657 0.2856 +vn -0.6894 0.6657 -0.2856 +vn -0.6100 0.0000 0.7924 +vn -0.6100 -0.6862 0.3962 +vn 0.0000 -0.8660 0.5000 +vn -0.6100 -0.6862 -0.3962 +vn 0.0000 -0.8660 -0.5000 +vn -0.6100 0.0000 -0.7924 +vn -0.6100 0.6862 -0.3962 +vn 0.0000 0.8660 -0.5000 +vn -0.6100 0.6862 0.3962 +vn 0.0000 0.8660 0.5000 +vn 0.6100 0.0000 0.7924 +vn 0.6100 0.6862 0.3962 +vn 0.6100 0.6862 -0.3962 +vn 0.6100 0.0000 -0.7924 +vn 0.6100 -0.6862 -0.3962 +vn 0.6100 -0.6862 0.3962 +vn 0.6657 0.2856 0.6894 +vn -0.6657 0.6894 0.2856 +vn 0.6657 0.6894 -0.2856 +vn -0.6657 0.6894 -0.2856 +vn 0.6657 0.2855 -0.6894 +vn -0.6657 0.2855 -0.6894 +vn 0.6657 -0.2856 -0.6894 +vn -0.6657 -0.6894 -0.2855 +vn 0.6657 -0.2855 0.6894 +vn -0.6657 -0.2855 0.6894 +vn -0.6657 0.2855 0.6894 +vn 0.6657 0.6894 0.2855 +vn -0.2856 -0.6894 0.6657 +vn 0.6894 -0.2855 0.6657 +vn -0.7462 0.0000 -0.6657 +vn -0.6894 0.2855 0.6657 +vn -0.6894 0.2856 -0.6657 +vn -0.5276 0.5276 -0.6657 +vn -0.2855 0.6894 -0.6657 +vn 0.0000 0.7462 -0.6657 +vn 0.2855 0.6894 -0.6657 +vn 0.5276 0.5276 -0.6657 +vn 0.6894 0.2855 -0.6657 +vn 0.7462 0.0000 -0.6657 +vn 0.6894 -0.2855 -0.6657 +vn 0.5276 -0.5276 -0.6657 +vn 0.2855 -0.6894 0.6657 +vn 0.2855 -0.6894 -0.6657 +vn 0.0000 -0.7462 -0.6657 +vn -0.2856 -0.6894 -0.6657 +vn -0.5276 -0.5276 -0.6657 +vn -0.6894 -0.2856 0.6657 +vn -0.6894 -0.2855 -0.6657 +vn 0.6128 0.7902 0.0000 +vn 0.6128 0.7300 0.3024 +vn 0.6128 0.5587 0.5587 +vn 0.6128 0.3024 0.7300 +vn 0.6128 0.0000 0.7902 +vn 0.6128 -0.3024 0.7300 +vn 0.6128 -0.5587 0.5587 +vn 0.6128 -0.7300 0.3024 +vn 0.6128 -0.7902 0.0000 +vn 0.6128 -0.7300 -0.3024 +vn 0.6128 -0.5587 -0.5587 +vn 0.6128 -0.3024 -0.7300 +vn 0.6128 0.0000 -0.7902 +vn 0.6128 0.3024 -0.7300 +vn 0.6128 0.5587 -0.5587 +vn 0.6128 0.7300 -0.3024 +vn -0.6128 0.7300 -0.3024 +vn -0.6128 0.7902 0.0000 +vn -0.6930 0.6660 -0.2759 +vn -0.6930 0.7209 0.0000 +vn 0.6930 0.5098 -0.5098 +vn 0.6930 0.6660 -0.2759 +vn -0.6930 0.5098 -0.5098 +vn 0.6930 0.7209 0.0000 +vn -0.6128 0.5587 -0.5587 +vn 0.6930 0.2759 -0.6661 +vn -0.6930 0.2759 -0.6660 +vn -0.6128 0.3024 -0.7300 +vn 0.6930 0.0000 -0.7209 +vn -0.6930 0.0000 -0.7209 +vn -0.6128 0.0000 -0.7902 +vn 0.6930 -0.2759 -0.6661 +vn -0.6930 -0.2759 -0.6660 +vn -0.6128 -0.3024 -0.7300 +vn 0.6930 -0.5098 -0.5098 +vn -0.6930 -0.5098 -0.5098 +vn -0.6128 -0.5587 -0.5587 +vn 0.6930 -0.6660 -0.2759 +vn -0.6930 -0.6660 -0.2759 +vn -0.6128 -0.7300 -0.3024 +vn 0.6930 -0.7209 0.0000 +vn -0.6930 -0.7209 0.0000 +vn -0.6128 -0.7902 0.0000 +vn 0.6930 -0.6660 0.2759 +vn -0.6930 -0.6661 0.2759 +vn -0.6128 -0.7300 0.3024 +vn 0.6930 -0.5098 0.5098 +vn -0.6930 -0.5098 0.5098 +vn -0.6128 -0.5588 0.5587 +vn 0.6930 -0.2759 0.6660 +vn -0.6930 -0.2759 0.6661 +vn -0.6128 -0.3024 0.7300 +vn 0.6930 0.0000 0.7209 +vn -0.6930 0.0000 0.7209 +vn -0.6128 0.0000 0.7902 +vn 0.6930 0.2759 0.6660 +vn -0.6930 0.2759 0.6661 +vn -0.6128 0.3024 0.7300 +vn 0.6930 0.5098 0.5098 +vn -0.6930 0.5098 0.5098 +vn -0.6128 0.5587 0.5587 +vn 0.6930 0.6660 0.2759 +vn -0.6930 0.6661 0.2759 +vn -0.6128 0.7300 0.3024 +g Cube.013_Cube.023_main +s off +f 65/1/1 67/2/1 68/3/1 66/4/1 +f 67/5/2 71/6/2 72/7/2 68/8/2 +f 71/9/3 69/10/3 70/11/3 72/7/3 +f 69/12/4 65/13/4 66/4/4 70/14/4 +f 67/15/5 65/16/5 69/17/5 71/18/5 +f 72/19/6 70/20/6 66/21/6 68/22/6 +f 75/23/1 76/24/1 80/25/1 79/26/1 +f 73/27/3 74/28/3 78/29/3 77/30/3 +f 77/31/4 78/32/4 76/33/4 75/34/4 +f 82/35/1 86/36/1 83/37/1 81/38/1 +f 79/39/6 82/40/6 81/41/6 73/42/6 77/43/6 75/44/6 +f 74/45/5 87/46/5 88/47/5 80/48/5 76/49/5 78/50/5 +f 79/51/4 80/52/4 88/53/4 85/54/4 86/55/4 82/56/4 +f 73/57/2 81/58/2 83/59/2 84/60/2 87/61/2 74/62/2 +f 84/63/1 85/64/1 88/65/1 87/66/1 +f 85/67/5 84/68/5 83/69/5 86/70/5 +f 89/71/2 90/72/2 92/73/2 91/74/2 +f 91/75/3 92/76/3 96/77/3 95/78/3 +f 95/79/4 96/80/4 94/81/4 93/82/4 +f 93/83/1 94/84/1 90/85/1 89/86/1 +f 91/87/6 95/88/6 93/89/6 89/90/6 +f 96/91/5 92/92/5 90/93/5 94/94/5 +f 129/95/3 130/96/3 132/97/3 131/98/3 +f 131/99/4 132/100/4 136/101/4 135/102/4 +f 135/103/1 136/104/1 134/105/1 133/106/1 +f 133/107/2 134/108/2 130/109/2 129/110/2 +f 131/111/6 135/112/6 133/113/6 129/114/6 +f 136/115/5 132/116/5 130/117/5 134/118/5 +f 142/119/3 138/120/3 137/121/3 141/122/3 +f 137/123/6 139/124/6 143/125/6 141/126/6 +f 143/127/2 144/128/2 142/129/2 141/130/2 +f 142/131/5 144/132/5 140/133/5 138/134/5 +f 140/135/1 144/136/1 143/137/1 139/138/1 +f 151/139/3 145/140/3 147/141/3 155/142/3 +f 155/142/5 147/141/5 150/143/5 156/144/5 +f 156/145/1 150/146/1 148/147/1 157/148/1 +f 157/148/6 148/147/6 145/140/6 151/139/6 +f 159/149/6 154/150/6 160/151/6 158/152/6 +f 149/153/1 153/154/1 154/150/1 159/149/1 +f 146/155/5 152/156/5 153/157/5 149/158/5 +f 158/152/3 160/151/3 152/156/3 146/155/3 +f 153/159/1 156/160/1 157/161/1 154/162/1 +f 152/163/5 155/164/5 156/165/5 153/166/5 +f 160/167/3 151/168/3 155/164/3 152/163/3 +f 154/162/6 157/161/6 151/169/6 160/170/6 +f 163/171/4 164/172/4 168/173/4 167/174/4 +f 165/175/2 166/176/2 162/177/2 161/178/2 +f 163/179/6 167/180/6 165/175/6 161/178/6 +f 168/173/5 164/172/5 162/177/5 166/176/5 +f 203/181/4 204/182/4 208/183/4 207/184/4 +f 205/185/2 206/186/2 202/187/2 201/188/2 +f 203/189/6 207/190/6 205/185/6 201/188/6 +f 208/183/5 204/182/5 202/187/5 206/186/5 +f 211/191/4 212/192/4 216/193/4 215/194/4 +f 215/195/1 216/196/1 214/197/1 213/198/1 +f 213/199/2 214/200/2 210/201/2 209/202/2 +f 211/203/6 215/204/6 213/205/6 209/206/6 +f 216/207/5 212/208/5 210/209/5 214/210/5 +f 217/211/3 218/212/3 220/213/3 219/214/3 +f 219/215/4 220/216/4 224/217/4 223/218/4 +f 223/219/1 224/220/1 222/221/1 221/222/1 +f 221/223/2 222/224/2 218/225/2 217/226/2 +f 219/214/6 223/227/6 221/228/6 217/229/6 +f 224/230/5 220/231/5 218/232/5 222/221/5 +f 226/233/6 227/234/6 285/235/6 284/236/6 +f 227/234/7 228/237/7 286/238/7 285/235/7 +f 228/237/6 281/239/6 338/240/6 286/238/6 +f 281/241/8 229/242/8 287/243/8 338/244/8 +f 229/242/1 230/245/1 288/246/1 287/243/1 +f 230/245/9 231/247/9 289/248/9 288/246/9 +f 231/249/5 232/250/5 290/251/5 289/252/5 +f 232/253/10 233/254/10 291/255/10 290/256/10 +f 262/257/5 263/258/5 320/259/5 319/260/5 +f 234/261/10 235/262/10 293/263/10 292/264/10 +f 235/265/5 236/266/5 294/267/5 293/268/5 +f 236/269/9 237/270/9 295/271/9 294/272/9 +f 237/273/5 238/274/5 296/275/5 295/276/5 +f 238/277/10 239/278/10 297/279/10 296/280/10 +f 252/281/1 253/282/1 311/283/1 310/284/1 +f 240/285/11 241/286/11 299/287/11 298/288/11 +f 241/286/12 242/289/12 300/290/12 299/287/12 +f 242/289/13 243/291/13 301/292/13 300/290/13 +f 243/291/14 244/293/14 302/294/14 301/292/14 +f 244/293/15 245/295/15 303/296/15 302/294/15 +f 245/295/16 246/297/16 304/298/16 303/296/16 +f 246/297/17 247/299/17 305/300/17 304/298/17 +f 247/299/18 248/301/18 306/302/18 305/300/18 +f 248/301/19 249/303/19 307/304/19 306/302/19 +f 249/303/20 250/305/20 308/306/20 307/304/20 +f 250/305/21 251/307/21 309/308/21 308/306/21 +f 251/307/22 252/309/22 310/310/22 309/308/22 +f 253/282/9 254/311/9 312/312/9 311/283/9 +f 264/313/3 265/314/3 322/315/3 321/316/3 +f 255/317/9 256/318/9 340/319/9 313/320/9 +f 256/321/1 257/322/1 314/323/1 340/324/1 +f 257/322/8 258/325/8 315/326/8 314/323/8 +f 258/327/6 259/328/6 316/329/6 315/330/6 +f 259/331/7 260/332/7 317/333/7 316/334/7 +f 260/332/3 261/335/3 318/336/3 317/333/3 +f 261/335/10 262/337/10 319/260/10 318/336/10 +f 254/338/5 255/339/5 313/340/5 312/341/5 +f 263/342/10 264/313/10 321/316/10 320/259/10 +f 265/343/11 266/344/11 323/345/11 322/346/11 +f 266/344/12 267/347/12 324/348/12 323/345/12 +f 267/347/13 268/349/13 325/350/13 324/348/13 +f 268/349/23 269/351/23 326/352/23 325/350/23 +f 269/351/15 270/353/15 327/354/15 326/352/15 +f 270/353/16 271/355/16 328/356/16 327/354/16 +f 271/355/17 272/357/17 329/358/17 328/356/17 +f 272/357/18 273/359/18 330/360/18 329/358/18 +f 273/359/24 274/361/24 331/362/24 330/360/24 +f 274/361/25 275/363/25 332/364/25 331/362/25 +f 275/363/21 276/365/21 333/366/21 332/364/21 +f 276/365/22 277/367/22 334/368/22 333/366/22 +f 239/278/3 240/369/3 298/370/3 297/279/3 +f 278/371/9 279/372/9 336/373/9 335/374/9 +f 282/375/26 280/376/26 337/377/26 339/378/26 +f 279/379/5 234/380/5 292/381/5 336/382/5 +f 233/254/3 282/375/3 339/378/3 291/255/3 +f 280/383/6 225/384/6 283/385/6 337/386/6 +f 225/384/8 226/233/8 284/236/8 283/385/8 +f 277/387/1 278/371/1 335/374/1 334/388/1 +f 259/389/4 258/390/4 257/391/4 233/392/4 232/393/4 231/394/4 230/395/4 260/396/4 +f 294/397/2 304/398/2 284/399/2 285/400/2 328/401/2 293/402/2 +f 229/403/4 281/404/4 228/405/4 227/406/4 262/407/4 261/408/4 260/396/4 230/395/4 +f 236/409/4 235/410/4 271/411/4 227/406/4 226/412/4 246/413/4 +f 317/414/2 318/415/2 319/416/2 285/400/2 286/417/2 338/418/2 287/419/2 288/420/2 +f 322/421/2 323/422/2 324/423/2 325/424/2 326/425/2 327/426/2 328/401/2 285/400/2 319/416/2 320/427/2 321/428/2 +f 249/429/4 248/430/4 247/431/4 246/413/4 226/412/4 255/432/4 254/433/4 253/434/4 252/435/4 251/436/4 250/437/4 +f 332/438/2 333/439/2 334/440/2 335/441/2 336/442/2 292/443/2 293/402/2 328/401/2 329/444/2 330/445/2 331/446/2 +f 312/447/2 313/448/2 284/399/2 304/398/2 305/449/2 306/450/2 307/451/2 308/452/2 309/453/2 310/454/2 311/455/2 +f 279/456/4 278/457/4 277/458/4 276/459/4 275/460/4 274/461/4 273/462/4 272/463/4 271/411/4 235/410/4 234/464/4 +f 314/465/2 315/466/2 316/467/2 317/414/2 288/420/2 289/468/2 290/469/2 291/470/2 +f 340/471/2 314/465/2 291/470/2 339/472/2 337/473/2 283/474/2 284/399/2 313/448/2 +f 280/475/4 282/476/4 233/392/4 257/391/4 256/477/4 255/432/4 226/412/4 225/478/4 +f 242/479/4 241/480/4 240/481/4 239/482/4 238/483/4 237/484/4 236/409/4 246/413/4 245/485/4 244/486/4 243/487/4 +f 262/407/4 227/406/4 271/411/4 270/488/4 269/489/4 268/490/4 267/491/4 266/492/4 265/493/4 264/494/4 263/495/4 +f 302/496/2 303/497/2 304/398/2 294/397/2 295/498/2 296/499/2 297/500/2 298/501/2 299/502/2 300/503/2 301/504/2 +f 351/505/3 363/506/3 350/507/3 349/508/3 362/509/3 348/510/3 361/511/3 347/512/3 360/513/3 346/514/3 345/515/3 359/516/3 352/517/3 365/518/3 364/519/3 +f 358/520/27 359/521/27 378/522/27 377/523/27 +f 364/524/5 365/525/5 380/526/5 379/527/5 +f 352/528/6 341/529/6 366/530/6 381/531/6 +f 342/532/6 353/533/6 373/534/6 367/535/6 +f 354/536/4 343/537/4 382/538/4 374/539/4 +f 343/537/28 355/540/28 383/541/28 382/538/28 +f 355/542/5 344/543/5 384/544/5 383/545/5 +f 341/529/29 342/532/29 367/535/29 366/530/29 +f 344/546/30 356/547/30 375/548/30 384/549/30 +f 345/550/31 346/551/31 369/552/31 368/553/31 +f 359/521/32 345/550/32 368/553/32 378/522/32 +f 349/554/6 350/555/6 371/556/6 370/557/6 +f 346/551/33 360/558/33 385/559/33 369/552/33 +f 360/558/34 347/560/34 386/561/34 385/559/34 +f 347/560/35 361/562/35 387/563/35 386/561/35 +f 361/562/36 348/564/36 388/565/36 387/563/36 +f 348/564/37 362/566/37 389/567/37 388/565/37 +f 362/566/38 349/568/38 370/569/38 389/567/38 +f 350/570/39 363/571/39 390/572/39 371/573/39 +f 363/571/4 351/574/4 372/575/4 390/572/4 +f 351/574/40 364/576/40 379/577/40 372/575/40 +f 353/578/39 354/536/39 374/539/39 373/579/39 +f 356/547/41 357/580/41 376/581/41 375/548/41 +f 357/580/42 358/520/42 377/523/42 376/581/42 +f 375/582/1 376/583/1 377/584/1 378/585/1 381/586/1 366/587/1 383/588/1 384/589/1 +f 341/590/3 352/517/3 359/516/3 358/591/3 357/592/3 356/593/3 344/594/3 355/595/3 +f 382/596/1 383/588/1 366/587/1 367/597/1 373/598/1 374/599/1 +f 353/600/3 342/601/3 341/590/3 355/595/3 343/602/3 354/603/3 +f 368/604/1 369/605/1 385/606/1 386/607/1 387/608/1 388/609/1 389/610/1 370/611/1 371/612/1 390/613/1 372/614/1 379/615/1 380/616/1 381/586/1 378/585/1 +f 401/617/3 413/618/3 400/619/3 399/620/3 412/621/3 398/622/3 411/623/3 397/624/3 410/625/3 396/626/3 395/627/3 409/628/3 402/629/3 415/630/3 414/631/3 +f 408/632/43 409/633/43 428/634/43 427/635/43 +f 414/636/5 415/637/5 430/638/5 429/639/5 +f 402/640/6 391/641/6 416/642/6 431/643/6 +f 392/644/6 403/645/6 423/646/6 417/647/6 +f 404/648/4 393/649/4 432/650/4 424/651/4 +f 393/649/28 405/652/28 433/653/28 432/650/28 +f 405/654/5 394/655/5 434/656/5 433/657/5 +f 391/641/29 392/644/29 417/647/29 416/642/29 +f 394/658/30 406/659/30 425/660/30 434/661/30 +f 395/662/31 396/663/31 419/664/31 418/665/31 +f 409/633/32 395/662/32 418/665/32 428/634/32 +f 399/666/6 400/667/6 421/668/6 420/669/6 +f 396/663/33 410/670/33 435/671/33 419/664/33 +f 410/670/34 397/672/34 436/673/34 435/671/34 +f 397/672/35 411/674/35 437/675/35 436/673/35 +f 411/674/36 398/676/36 438/677/36 437/675/36 +f 398/676/37 412/678/37 439/679/37 438/677/37 +f 412/678/38 399/680/38 420/681/38 439/679/38 +f 400/682/39 413/683/39 440/684/39 421/685/39 +f 413/683/4 401/686/4 422/687/4 440/684/4 +f 401/686/40 414/688/40 429/689/40 422/687/40 +f 403/690/39 404/648/39 424/651/39 423/691/39 +f 406/659/41 407/692/41 426/693/41 425/660/41 +f 407/692/42 408/632/42 427/635/42 426/693/42 +f 425/694/1 426/695/1 427/696/1 428/697/1 431/698/1 416/699/1 433/700/1 434/701/1 +f 391/702/3 402/629/3 409/628/3 408/703/3 407/704/3 406/705/3 394/706/3 405/707/3 +f 432/708/1 433/700/1 416/699/1 417/709/1 423/710/1 424/711/1 +f 403/712/3 392/713/3 391/702/3 405/707/3 393/714/3 404/715/3 +f 418/716/1 419/717/1 435/718/1 436/719/1 437/720/1 438/721/1 439/722/1 420/723/1 421/724/1 440/725/1 422/726/1 429/727/1 430/728/1 431/698/1 428/697/1 +f 509/729/2 503/730/2 512/731/2 513/732/2 +f 497/733/6 496/734/6 495/735/6 494/736/6 493/737/6 490/738/6 511/739/6 513/740/6 512/741/6 502/742/6 500/743/6 499/744/6 498/745/6 +f 489/746/3 492/747/3 491/748/3 490/749/3 493/750/3 483/751/3 475/752/3 +f 502/753/44 501/754/44 488/755/44 474/756/44 476/757/44 500/758/44 +f 507/759/7 492/760/7 489/761/7 484/762/7 485/763/7 +f 473/764/45 484/765/45 489/746/45 475/752/45 +f 477/766/46 478/767/46 498/768/46 499/769/46 +f 498/768/2 478/767/2 479/770/2 497/771/2 +f 485/763/7 486/772/7 505/773/7 506/774/7 +f 504/775/6 505/773/6 486/772/6 487/776/6 +f 483/777/47 493/778/47 494/779/47 482/780/47 +f 501/754/1 502/753/1 512/781/1 503/782/1 +f 492/783/29 507/784/29 508/785/29 510/786/29 491/787/29 +f 480/788/46 481/789/46 495/790/46 496/791/46 +f 510/786/2 511/792/2 490/793/2 491/787/2 +f 503/794/48 509/795/48 506/796/48 +f 500/758/1 476/757/1 477/797/1 499/798/1 +f 497/799/1 479/800/1 480/801/1 496/802/1 +f 509/803/6 508/804/6 507/759/6 485/763/6 506/774/6 +f 495/790/2 481/789/2 482/780/2 494/779/2 +f 504/805/2 503/806/2 506/807/2 505/808/2 +f 508/809/1 509/810/1 513/811/1 511/812/1 510/813/1 +f 482/814/5 481/815/5 480/816/5 479/817/5 478/818/5 477/819/5 476/820/5 474/821/5 473/822/5 475/823/5 483/824/5 +f 501/754/8 503/782/8 504/825/8 487/826/8 488/755/8 +f 519/827/49 522/828/49 516/829/49 514/830/49 +f 528/831/5 527/832/5 526/833/5 525/834/5 524/835/5 523/836/5 518/837/5 516/838/5 522/839/5 529/840/5 +f 534/841/29 544/842/29 545/843/29 535/844/29 +f 526/845/46 527/846/46 539/847/46 540/848/46 +f 541/849/1 525/850/1 526/851/1 540/852/1 +f 529/853/47 532/854/47 538/855/47 528/856/47 +f 531/857/3 534/858/3 535/859/3 533/860/3 532/854/3 529/853/3 522/861/3 519/862/3 520/863/3 +f 544/864/6 534/865/6 531/866/6 536/867/6 +f 523/868/44 530/869/44 517/870/44 518/871/44 +f 543/872/46 537/873/46 530/874/46 523/875/46 524/876/46 +f 536/877/29 531/878/29 520/879/29 521/880/29 537/873/29 543/872/29 +f 545/843/2 546/881/2 533/882/2 535/844/2 +f 539/847/2 527/846/2 528/883/2 538/884/2 +f 521/885/6 515/886/6 517/887/6 530/888/6 537/889/6 +f 544/890/1 536/891/1 542/892/1 546/893/1 545/894/1 +f 519/862/45 514/895/45 515/896/45 521/897/45 520/863/45 +f 543/872/50 524/876/50 525/898/50 541/899/50 542/900/50 536/877/50 +f 541/901/6 540/902/6 539/903/6 538/904/6 532/905/6 533/906/6 546/907/6 542/908/6 +f 584/909/51 587/910/51 581/911/51 579/912/51 +f 593/913/6 592/914/6 591/915/6 590/916/6 589/917/6 588/918/6 583/919/6 581/920/6 587/921/6 594/922/6 +f 599/923/28 609/924/28 610/925/28 600/926/28 +f 591/927/44 592/928/44 604/929/44 605/930/44 +f 606/931/1 590/932/1 591/933/1 605/934/1 +f 594/935/45 597/936/45 603/937/45 593/938/45 +f 596/939/3 599/940/3 600/941/3 598/942/3 597/936/3 594/935/3 587/943/3 584/944/3 585/945/3 +f 609/946/5 599/947/5 596/948/5 601/949/5 +f 588/950/46 595/951/46 582/952/46 583/953/46 +f 608/954/44 602/955/44 595/956/44 588/957/44 589/958/44 +f 601/959/28 596/960/28 585/961/28 586/962/28 602/955/28 608/954/28 +f 610/925/4 611/963/4 598/964/4 600/926/4 +f 604/929/4 592/928/4 593/965/4 603/966/4 +f 586/967/5 580/968/5 582/969/5 595/970/5 602/971/5 +f 609/972/1 601/973/1 607/974/1 611/975/1 610/976/1 +f 584/944/47 579/977/47 580/978/47 586/979/47 585/945/47 +f 608/954/52 589/958/52 590/980/52 606/981/52 607/982/52 601/959/52 +f 606/983/5 605/984/5 604/985/5 603/986/5 597/987/5 598/988/5 611/989/5 607/990/5 +f 648/991/4 642/992/4 651/993/4 652/994/4 +f 636/995/5 635/996/5 634/997/5 633/998/5 632/999/5 629/1000/5 650/1001/5 652/1002/5 651/1003/5 641/1004/5 639/1005/5 638/1006/5 637/1007/5 +f 628/1008/3 631/1009/3 630/1010/3 629/1011/3 632/1012/3 622/1013/3 614/1014/3 +f 641/1015/46 640/1016/46 627/1017/46 613/1018/46 615/1019/46 639/1020/46 +f 646/1021/10 631/1022/10 628/1023/10 623/1024/10 624/1025/10 +f 612/1026/47 623/1027/47 628/1008/47 614/1014/47 +f 616/1028/44 617/1029/44 637/1030/44 638/1031/44 +f 637/1030/4 617/1029/4 618/1032/4 636/1033/4 +f 624/1025/10 625/1034/10 644/1035/10 645/1036/10 +f 643/1037/5 644/1035/5 625/1034/5 626/1038/5 +f 622/1039/45 632/1040/45 633/1041/45 621/1042/45 +f 640/1016/1 641/1015/1 651/1043/1 642/1044/1 +f 631/1045/28 646/1046/28 647/1047/28 649/1048/28 630/1049/28 +f 619/1050/44 620/1051/44 634/1052/44 635/1053/44 +f 649/1048/4 650/1054/4 629/1055/4 630/1049/4 +f 642/1056/53 648/1057/53 645/1058/53 +f 639/1020/1 615/1019/1 616/1059/1 638/1060/1 +f 636/1061/1 618/1062/1 619/1063/1 635/1064/1 +f 648/1065/54 647/1066/54 646/1021/54 624/1025/54 645/1036/54 +f 634/1052/4 620/1051/4 621/1042/4 633/1041/4 +f 643/1067/4 642/1068/4 645/1069/4 644/1070/4 +f 647/1071/1 648/1072/1 652/1073/1 650/1074/1 649/1075/1 +f 621/1076/6 620/1077/6 619/1078/6 618/1079/6 617/1080/6 616/1081/6 615/1082/6 613/1083/6 612/1084/6 614/1085/6 622/1086/6 +f 640/1016/9 642/1044/9 643/1087/9 626/1088/9 627/1017/9 +f 656/1089/1 654/1090/1 716/1091/1 714/1092/1 712/1093/1 710/1094/1 708/1095/1 706/1096/1 704/1097/1 702/1098/1 876/1099/1 884/1100/1 900/1101/1 856/1102/1 848/1103/1 852/1104/1 796/1105/1 792/1106/1 788/1107/1 908/1108/1 904/1109/1 832/1110/1 888/1111/1 896/1112/1 840/1113/1 827/1114/1 835/1115/1 670/1116/1 668/1117/1 666/1118/1 664/1119/1 662/1120/1 660/1121/1 658/1122/1 +f 717/1123/3 719/1124/3 720/1125/3 721/1126/3 722/1127/3 723/1128/3 724/1129/3 725/1130/3 833/1131/3 825/1132/3 837/1133/3 893/1134/3 885/1135/3 829/1136/3 901/1137/3 905/1138/3 785/1139/3 789/1140/3 793/1141/3 849/1142/3 845/1143/3 853/1144/3 897/1145/3 881/1146/3 873/1147/3 741/1148/3 742/1149/3 743/1150/3 744/1151/3 745/1152/3 746/1153/3 747/1154/3 748/1155/3 718/1156/3 +f 653/1157/3 655/1158/3 657/1159/3 659/1160/3 661/1161/3 663/1162/3 665/1163/3 667/1164/3 669/1165/3 836/1166/3 828/1167/3 839/1168/3 895/1169/3 887/1170/3 831/1171/3 903/1172/3 907/1173/3 786/1174/3 790/1175/3 794/1176/3 850/1177/3 846/1178/3 854/1179/3 899/1180/3 883/1181/3 875/1182/3 701/1183/3 703/1184/3 705/1185/3 707/1186/3 709/1187/3 711/1188/3 713/1189/3 715/1190/3 +f 749/1191/1 780/1192/1 779/1193/1 778/1194/1 777/1195/1 776/1196/1 775/1197/1 774/1198/1 773/1199/1 874/1200/1 882/1201/1 898/1202/1 855/1203/1 847/1204/1 851/1205/1 795/1206/1 791/1207/1 787/1208/1 906/1209/1 902/1210/1 830/1211/1 886/1212/1 894/1213/1 838/1214/1 826/1215/1 834/1216/1 757/1217/1 756/1218/1 755/1219/1 754/1220/1 753/1221/1 752/1222/1 751/1223/1 750/1224/1 +f 757/1217/1 834/1216/1 858/1225/1 870/1226/1 782/1227/1 866/1228/1 862/1229/1 890/1230/1 842/1231/1 818/1232/1 814/1233/1 822/1234/1 878/1235/1 810/1236/1 802/1237/1 798/1238/1 806/1239/1 874/1200/1 773/1199/1 772/1240/1 771/1241/1 770/1242/1 769/1243/1 768/1244/1 767/1245/1 766/1246/1 765/1247/1 764/1248/1 763/1249/1 762/1250/1 761/1251/1 760/1252/1 759/1253/1 758/1254/1 +f 670/1116/1 835/1115/1 859/1255/1 871/1256/1 783/1257/1 867/1258/1 863/1259/1 891/1260/1 843/1261/1 819/1262/1 815/1263/1 823/1264/1 879/1265/1 811/1266/1 803/1267/1 799/1268/1 807/1269/1 876/1099/1 702/1098/1 700/1270/1 698/1271/1 696/1272/1 694/1273/1 692/1274/1 690/1275/1 688/1276/1 686/1277/1 684/1278/1 682/1279/1 680/1280/1 678/1281/1 676/1282/1 674/1283/1 672/1284/1 +f 741/1148/3 873/1147/3 805/1285/3 797/1286/3 801/1287/3 809/1288/3 877/1289/3 821/1290/3 813/1291/3 817/1292/3 841/1293/3 889/1294/3 861/1295/3 865/1296/3 781/1297/3 869/1298/3 857/1299/3 833/1131/3 725/1130/3 726/1300/3 727/1301/3 728/1302/3 729/1303/3 730/1304/3 731/1305/3 732/1306/3 733/1307/3 734/1308/3 735/1309/3 736/1310/3 737/1311/3 738/1312/3 739/1313/3 740/1314/3 +f 701/1183/3 875/1182/3 808/1315/3 800/1316/3 804/1317/3 812/1318/3 880/1319/3 824/1320/3 816/1321/3 820/1322/3 844/1323/3 892/1324/3 864/1325/3 868/1326/3 784/1327/3 872/1328/3 860/1329/3 836/1166/3 669/1165/3 671/1330/3 673/1331/3 675/1332/3 677/1333/3 679/1334/3 681/1335/3 683/1336/3 685/1337/3 687/1338/3 689/1339/3 691/1340/3 693/1341/3 695/1342/3 697/1343/3 699/1344/3 +f 926/1345/55 930/1346/55 929/1347/55 925/1348/55 +f 928/1349/56 927/1350/56 1036/1351/56 1033/1352/56 +f 1055/1353/57 1058/1354/57 1051/1355/57 1054/1356/57 +f 925/1357/58 929/1347/58 927/1350/58 928/1349/58 +f 1055/1358/3 1056/1359/3 926/1360/3 925/1361/3 928/1362/3 1060/1363/3 1057/1364/3 1058/1365/3 +f 1070/1366/59 1063/1367/59 1062/1368/59 1071/1369/59 +f 930/1370/60 926/1371/60 1018/1372/60 1019/1373/60 +f 1026/1374/61 1027/1375/61 1030/1376/61 1031/1377/61 +f 1023/1378/62 1056/1379/62 1053/1380/62 1022/1381/62 +f 1059/1382/63 1040/1383/63 1037/1384/63 1050/1385/63 +f 1048/1386/64 1045/1387/64 1044/1388/64 1041/1389/64 +f 962/1390/1 947/1391/1 948/1392/1 949/1393/1 950/1394/1 951/1395/1 952/1396/1 953/1397/1 954/1398/1 955/1399/1 956/1400/1 957/1401/1 958/1402/1 959/1403/1 960/1404/1 961/1405/1 +f 980/1406/55 979/1407/55 983/1408/55 984/1409/55 +f 982/1410/56 1042/1411/56 1043/1412/56 981/1413/56 +f 1068/1414/57 1065/1415/57 1064/1416/57 1069/1417/57 +f 979/1418/58 982/1410/58 981/1413/58 983/1408/58 +f 984/1419/60 1028/1420/60 1025/1421/60 980/1422/60 +f 1032/1423/62 1029/1424/62 1066/1425/62 1067/1426/62 +f 1072/1427/63 1061/1428/63 1046/1429/63 1047/1430/63 +f 1016/1431/3 1015/1432/3 1014/1433/3 1013/1434/3 1012/1435/3 1011/1436/3 1010/1437/3 1009/1438/3 1008/1439/3 1007/1440/3 1006/1441/3 1005/1442/3 1004/1443/3 1003/1444/3 1002/1445/3 1001/1446/3 +f 1019/1373/65 1018/1372/65 1017/1447/65 1020/1448/65 +f 1023/1378/66 1022/1381/66 1021/1449/66 1024/1450/66 +f 1027/1375/65 1026/1374/65 1025/1451/65 1028/1452/65 +f 1031/1377/66 1030/1376/66 1029/1453/66 1032/1454/66 +f 1017/1455/61 1024/1456/61 1021/1457/61 1020/1458/61 +f 1033/1352/67 1036/1351/67 1035/1459/67 1034/1460/67 +f 1039/1461/68 1038/1462/68 1037/1463/68 1040/1464/68 +f 1041/1389/67 1044/1388/67 1043/1465/67 1042/1466/67 +f 1047/1430/68 1046/1429/68 1045/1467/68 1048/1468/68 +f 1039/1461/64 1034/1469/64 1035/1470/64 1038/1462/64 +f 1055/1353/69 1054/1356/69 1053/1471/69 1056/1472/69 +f 1057/1473/70 1052/1474/70 1051/1355/70 1058/1354/70 +f 1059/1382/71 1050/1385/71 1049/1475/71 1060/1476/71 +f 1067/1426/69 1066/1425/69 1065/1477/69 1068/1478/69 +f 1069/1417/70 1064/1416/70 1063/1367/70 1070/1366/70 +f 1071/1369/71 1062/1368/71 1061/1479/71 1072/1480/71 +f 1057/1473/59 1060/1481/59 1049/1482/59 1052/1474/59 +f 1036/1483/1 927/1484/1 1049/1485/1 +f 930/1486/1 1019/1487/1 1053/1488/1 +f 1021/1489/1 1022/1490/1 1053/1488/1 1019/1487/1 1020/1491/1 +f 1072/1492/1 1047/1493/1 1048/1494/1 1041/1495/1 1042/1496/1 1071/1497/1 +f 982/1498/1 979/1499/1 980/1500/1 1067/1501/1 1068/1502/1 1069/1503/1 1070/1504/1 1071/1497/1 +f 1051/1505/1 1052/1506/1 1049/1485/1 927/1484/1 929/1507/1 930/1486/1 1053/1488/1 1054/1508/1 +f 928/1362/3 1033/1509/3 1060/1363/3 +f 1059/1510/3 1060/1363/3 1033/1509/3 1034/1511/3 1039/1512/3 1040/1513/3 +f 1023/1514/3 1024/1515/3 1017/1516/3 1018/1517/3 1056/1359/3 +f 1018/1517/3 926/1360/3 1056/1359/3 +f 981/1518/3 1043/1519/3 1062/1520/3 +f 1062/1520/3 1043/1519/3 1044/1521/3 1045/1522/3 1046/1523/3 1061/1524/3 +f 1028/1525/3 984/1526/3 1066/1527/3 +f 1066/1527/3 1029/1528/3 1030/1529/3 1027/1530/3 1028/1525/3 +f 1050/1531/1 1037/1532/1 1038/1533/1 1035/1534/1 1036/1483/1 1049/1485/1 +f 980/1500/1 1025/1535/1 1067/1501/1 +f 1031/1536/1 1032/1537/1 1067/1501/1 1025/1535/1 1026/1538/1 +f 1042/1496/1 982/1498/1 1071/1497/1 +f 1063/1539/3 1064/1540/3 1065/1541/3 1066/1527/3 984/1526/3 983/1542/3 981/1518/3 1062/1520/3 +f 1073/1543/1 1075/1544/1 1077/1545/1 1079/1546/1 1081/1547/1 1083/1548/1 1085/1549/1 1087/1550/1 1089/1551/1 1091/1552/1 1093/1553/1 1095/1554/1 1097/1555/1 1099/1556/1 1101/1557/1 1103/1558/1 +f 1076/1559/3 1074/1560/3 1104/1561/3 1102/1562/3 1100/1563/3 1098/1564/3 1096/1565/3 1094/1566/3 1092/1567/3 1090/1568/3 1088/1569/3 1086/1570/3 1084/1571/3 1082/1572/3 1080/1573/3 1078/1574/3 +f 1108/1575/1 1106/1576/1 1116/1577/1 1114/1578/1 1112/1579/1 1110/1580/1 +f 1120/1581/3 1118/1582/3 1128/1583/3 1126/1584/3 1124/1585/3 1122/1586/3 +f 1132/1587/3 1130/1588/3 1140/1589/3 1138/1590/3 1136/1591/3 1134/1592/3 +f 1144/1593/3 1142/1594/3 1152/1595/3 1150/1596/3 1148/1597/3 1146/1598/3 +f 1156/1599/1 1154/1600/1 1164/1601/1 1162/1602/1 1160/1603/1 1158/1604/1 +f 1168/1605/1 1166/1606/1 1176/1607/1 1174/1608/1 1172/1609/1 1170/1610/1 +f 1187/1611/5 1183/1612/5 1181/1613/5 1185/1614/5 +f 1180/1615/1 1188/1616/1 1186/1617/1 1179/1618/1 +f 1177/1619/3 1182/1620/3 1184/1621/3 1178/1622/3 +f 1178/1623/6 1180/1624/6 1179/1618/6 1177/1619/6 +f 1178/1625/4 1184/1626/4 1188/1616/4 1180/1615/4 +f 1181/1613/10 1183/1612/10 1184/1627/10 1182/1628/10 +f 1183/1612/28 1187/1611/28 1188/1616/28 1184/1626/28 +f 1187/1611/9 1185/1614/9 1186/1629/9 1188/1630/9 +f 1185/1614/72 1181/1613/72 1182/1628/72 1186/1629/72 +f 1179/1618/2 1186/1617/2 1182/1620/2 1177/1619/2 +f 1221/1631/6 1222/1632/6 1223/1633/6 1224/1634/6 +f 1225/1635/5 1228/1636/5 1227/1637/5 1226/1638/5 +f 1223/1639/1 1227/1640/1 1228/1641/1 1224/1642/1 +f 1221/1643/3 1225/1644/3 1226/1645/3 1222/1646/3 +f 1224/1647/2 1228/1648/2 1225/1649/2 1221/1650/2 +f 1222/1651/4 1226/1652/4 1227/1653/4 1223/1654/4 +f 1232/1655/2 1234/1656/2 1236/1657/2 1231/1658/2 +f 1240/1659/6 1238/1660/6 1245/1661/6 1247/1662/6 1248/1663/6 1246/1664/6 1273/1665/6 1275/1666/6 1276/1667/6 1274/1668/6 1233/1669/6 1234/1670/6 1285/1671/6 1287/1672/6 1288/1673/6 1286/1674/6 1237/1675/6 1239/1676/6 +f 1229/1677/4 1230/1678/4 1235/1679/4 1233/1680/4 +f 1233/1669/6 1235/1681/6 1236/1682/6 1234/1670/6 +f 1262/1683/6 1253/1684/6 1255/1685/6 1256/1686/6 1254/1687/6 1289/1688/6 1291/1689/6 1292/1690/6 1290/1691/6 1236/1682/6 1235/1681/6 1269/1692/6 1271/1693/6 1272/1694/6 1270/1695/6 1261/1696/6 1263/1697/6 1264/1698/6 +f 1304/1699/1 1303/1700/1 1307/1701/1 1308/1702/1 +f 1307/1703/5 1306/1704/5 1305/1705/5 1308/1706/5 +f 1302/1707/3 1301/1708/3 1305/1709/3 1306/1710/3 +f 1301/1711/2 1304/1712/2 1308/1713/2 1305/1714/2 +f 1303/1715/4 1302/1716/4 1306/1717/4 1307/1718/4 +f 1312/1719/2 1310/1720/2 1316/1721/2 1314/1722/2 1331/1723/2 1332/1724/2 1327/1725/2 1328/1726/2 1323/1727/2 1324/1728/2 1319/1729/2 1320/1730/2 +f 1309/1731/4 1311/1732/4 1317/1733/4 1318/1734/4 1321/1735/4 1322/1736/4 1325/1737/4 1326/1738/4 1329/1739/4 1330/1740/4 1313/1741/4 1315/1742/4 +f 1336/1743/2 1334/1744/2 1340/1745/2 1338/1746/2 1355/1747/2 1356/1748/2 1351/1749/2 1352/1750/2 1347/1751/2 1348/1752/2 1343/1753/2 1344/1754/2 +f 1333/1755/4 1335/1756/4 1341/1757/4 1342/1758/4 1345/1759/4 1346/1760/4 1349/1761/4 1350/1762/4 1353/1763/4 1354/1764/4 1337/1765/4 1339/1766/4 +f 1360/1767/2 1358/1768/2 1364/1769/2 1362/1770/2 1379/1771/2 1380/1772/2 1375/1773/2 1376/1774/2 1371/1775/2 1372/1776/2 1367/1777/2 1368/1778/2 +f 1357/1779/4 1359/1780/4 1365/1781/4 1366/1782/4 1369/1783/4 1370/1784/4 1373/1785/4 1374/1786/4 1377/1787/4 1378/1788/4 1361/1789/4 1363/1790/4 +f 1384/1791/2 1382/1792/2 1388/1793/2 1386/1794/2 1403/1795/2 1404/1796/2 1399/1797/2 1400/1798/2 1395/1799/2 1396/1800/2 1391/1801/2 1392/1802/2 +f 1381/1803/4 1383/1804/4 1389/1805/4 1390/1806/4 1393/1807/4 1394/1808/4 1397/1809/4 1398/1810/4 1401/1811/4 1402/1812/4 1385/1813/4 1387/1814/4 +f 1405/1815/3 1406/1816/3 1408/1817/3 1407/1818/3 +f 1407/1819/6 1408/1820/6 1412/1821/6 1411/1822/6 +f 1411/1822/1 1412/1821/1 1410/1823/1 1409/1824/1 +f 1407/1825/2 1411/1826/2 1409/1824/2 1405/1815/2 +f 1412/1821/4 1408/1820/4 1406/1827/4 1410/1828/4 +f 1445/1829/1 1447/1830/1 1449/1831/1 1451/1832/1 1453/1833/1 1455/1834/1 1457/1835/1 1459/1836/1 1461/1837/1 1463/1838/1 1465/1839/1 1467/1840/1 1469/1841/1 1471/1842/1 1473/1843/1 1475/1844/1 +f 1448/1845/3 1446/1846/3 1476/1847/3 1474/1848/3 1472/1849/3 1470/1850/3 1468/1851/3 1466/1852/3 1464/1853/3 1462/1854/3 1460/1855/3 1458/1856/3 1456/1857/3 1454/1858/3 1452/1859/3 1450/1860/3 +f 1486/1861/2 1480/1862/2 1477/1863/2 1484/1864/2 +f 1483/1865/2 1485/1866/2 1487/1867/2 1488/1868/2 +f 1478/1869/6 1481/1870/6 1485/1871/6 1483/1872/6 +f 1487/1873/6 1486/1874/6 1484/1875/6 1488/1876/6 +f 1478/1877/4 1479/1878/4 1482/1879/4 1481/1880/4 +f 1482/1881/5 1479/1882/5 1477/1883/5 1480/1884/5 +f 1477/1885/3 1479/1886/3 1488/1887/3 1484/1888/3 +f 1478/1889/3 1483/1890/3 1488/1887/3 1479/1886/3 +f 1481/1891/1 1482/1892/1 1487/1893/1 1485/1894/1 +f 1480/1895/1 1486/1896/1 1487/1893/1 1482/1892/1 +f 1511/1897/6 1489/1898/6 1491/1899/6 1515/1900/6 +f 1515/1900/4 1491/1899/4 1494/1901/4 1516/1902/4 +f 1516/1903/5 1494/1904/5 1492/1905/5 1517/1906/5 +f 1517/1906/2 1492/1905/2 1489/1898/2 1511/1897/2 +f 1490/1907/1 1493/1908/1 1519/1909/1 1518/1910/1 +f 1494/1911/3 1491/1912/3 1489/1913/3 1492/1914/3 +f 1519/1915/2 1514/1916/2 1520/1917/2 1518/1918/2 +f 1493/1919/5 1513/1920/5 1514/1916/5 1519/1915/5 +f 1490/1921/4 1512/1922/4 1513/1923/4 1493/1924/4 +f 1518/1918/6 1520/1917/6 1512/1922/6 1490/1921/6 +f 1513/1925/5 1516/1926/5 1517/1927/5 1514/1928/5 +f 1512/1929/4 1515/1930/4 1516/1931/4 1513/1932/4 +f 1520/1933/6 1511/1934/6 1515/1930/6 1512/1929/6 +f 1514/1928/2 1517/1927/2 1511/1935/2 1520/1936/2 +f 1523/1937/1 1524/1938/1 1528/1939/1 1527/1940/1 +f 1525/1941/3 1526/1942/3 1522/1943/3 1521/1944/3 +f 1523/1945/6 1527/1946/6 1525/1941/6 1521/1944/6 +f 1528/1939/5 1524/1938/5 1522/1943/5 1526/1942/5 +f 1531/1947/1 1532/1948/1 1536/1949/1 1535/1950/1 +f 1533/1951/3 1534/1952/3 1530/1953/3 1529/1954/3 +f 1531/1955/6 1535/1956/6 1533/1951/6 1529/1954/6 +f 1536/1949/5 1532/1948/5 1530/1953/5 1534/1952/5 +f 1540/1957/3 1538/1958/3 1568/1959/3 1566/1960/3 1564/1961/3 1562/1962/3 1560/1963/3 1558/1964/3 1556/1965/3 1554/1966/3 1552/1967/3 1550/1968/3 1548/1969/3 1546/1970/3 1544/1971/3 1542/1972/3 +f 1537/1973/1 1539/1974/1 1541/1975/1 1543/1976/1 1545/1977/1 1547/1978/1 1549/1979/1 1551/1980/1 1553/1981/1 1555/1982/1 1557/1983/1 1559/1984/1 1561/1985/1 1563/1986/1 1565/1987/1 1567/1988/1 +f 1633/1989/1 1635/1990/1 1637/1991/1 1639/1992/1 1641/1993/1 1643/1994/1 1645/1995/1 1647/1996/1 1649/1997/1 1651/1998/1 1653/1999/1 1655/2000/1 1657/2001/1 1659/2002/1 1661/2003/1 1663/2004/1 +f 1636/2005/3 1634/2006/3 1664/2007/3 1662/2008/3 1660/2009/3 1658/2010/3 1656/2011/3 1654/2012/3 1652/2013/3 1650/2014/3 1648/2015/3 1646/2016/3 1644/2017/3 1642/2018/3 1640/2019/3 1638/2020/3 +f 1665/2021/1 1667/2022/1 1669/2023/1 1671/2024/1 1673/2025/1 1675/2026/1 1677/2027/1 1679/2028/1 1681/2029/1 1683/2030/1 1685/2031/1 1687/2032/1 1689/2033/1 1691/2034/1 1693/2035/1 1695/2036/1 +f 1668/2037/3 1666/2038/3 1696/2039/3 1694/2040/3 1692/2041/3 1690/2042/3 1688/2043/3 1686/2044/3 1684/2045/3 1682/2046/3 1680/2047/3 1678/2048/3 1676/2049/3 1674/2050/3 1672/2051/3 1670/2052/3 +f 1707/2053/5 1703/2054/5 1701/2055/5 1705/2056/5 +f 1700/2057/1 1708/2058/1 1706/2059/1 1699/2060/1 +f 1697/2061/3 1702/2062/3 1704/2063/3 1698/2064/3 +f 1698/2065/6 1700/2066/6 1699/2060/6 1697/2061/6 +f 1698/2067/4 1704/2068/4 1708/2058/4 1700/2057/4 +f 1701/2055/10 1703/2054/10 1704/2069/10 1702/2070/10 +f 1703/2054/28 1707/2053/28 1708/2058/28 1704/2068/28 +f 1707/2053/9 1705/2056/9 1706/2071/9 1708/2072/9 +f 1705/2056/72 1701/2055/72 1702/2070/72 1706/2071/72 +f 1699/2060/2 1706/2059/2 1702/2062/2 1697/2061/2 +f 1719/2073/5 1715/2074/5 1713/2075/5 1717/2076/5 +f 1712/2077/1 1720/2078/1 1718/2079/1 1711/2080/1 +f 1709/2081/3 1714/2082/3 1716/2083/3 1710/2084/3 +f 1710/2085/6 1712/2086/6 1711/2080/6 1709/2081/6 +f 1710/2087/4 1716/2088/4 1720/2078/4 1712/2077/4 +f 1713/2075/10 1715/2074/10 1716/2089/10 1714/2090/10 +f 1715/2074/28 1719/2073/28 1720/2078/28 1716/2088/28 +f 1719/2073/9 1717/2076/9 1718/2091/9 1720/2092/9 +f 1717/2076/72 1713/2075/72 1714/2090/72 1718/2091/72 +f 1711/2080/2 1718/2079/2 1714/2082/2 1709/2081/2 +f 1731/2093/5 1727/2094/5 1725/2095/5 1729/2096/5 +f 1724/2097/1 1732/2098/1 1730/2099/1 1723/2100/1 +f 1721/2101/3 1726/2102/3 1728/2103/3 1722/2104/3 +f 1722/2105/6 1724/2106/6 1723/2100/6 1721/2101/6 +f 1722/2107/4 1728/2108/4 1732/2098/4 1724/2097/4 +f 1725/2095/10 1727/2094/10 1728/2109/10 1726/2110/10 +f 1727/2094/28 1731/2093/28 1732/2098/28 1728/2108/28 +f 1731/2093/9 1729/2096/9 1730/2111/9 1732/2112/9 +f 1729/2096/72 1725/2095/72 1726/2110/72 1730/2111/72 +f 1723/2100/2 1730/2099/2 1726/2102/2 1721/2101/2 +f 1736/2113/3 1734/2114/3 1744/2115/3 1742/2116/3 1740/2117/3 1738/2118/3 +f 1748/2119/1 1746/2120/1 1756/2121/1 1754/2122/1 1752/2123/1 1750/2124/1 +f 1760/2125/1 1758/2126/1 1768/2127/1 1766/2128/1 1764/2129/1 1762/2130/1 +f 1772/2131/1 1770/2132/1 1780/2133/1 1778/2134/1 1776/2135/1 1774/2136/1 +f 1784/2137/1 1782/2138/1 1792/2139/1 1790/2140/1 1788/2141/1 1786/2142/1 +f 1796/2143/3 1794/2144/3 1804/2145/3 1802/2146/3 1800/2147/3 1798/2148/3 +f 1808/2149/3 1806/2150/3 1816/2151/3 1814/2152/3 1812/2153/3 1810/2154/3 +f 1820/2155/3 1818/2156/3 1828/2157/3 1826/2158/3 1824/2159/3 1822/2160/3 +f 1832/2161/3 1830/2162/3 1840/2163/3 1838/2164/3 1836/2165/3 1834/2166/3 +f 1844/2167/1 1842/2168/1 1852/2169/1 1850/2170/1 1848/2171/1 1846/2172/1 +f 1856/2173/1 1854/2174/1 1864/2175/1 1862/2176/1 1860/2177/1 1858/2178/1 +f 1868/2179/1 1866/2180/1 1876/2181/1 1874/2182/1 1872/2183/1 1870/2184/1 +f 1880/2185/1 1878/2186/1 1888/2187/1 1886/2188/1 1884/2189/1 1882/2190/1 +f 1892/2191/3 1890/2192/3 1900/2193/3 1898/2194/3 1896/2195/3 1894/2196/3 +f 1904/2197/3 1902/2198/3 1912/2199/3 1910/2200/3 1908/2201/3 1906/2202/3 +f 1916/2203/3 1914/2204/3 1924/2205/3 1922/2206/3 1920/2207/3 1918/2208/3 +f 1928/2209/4 1926/2210/4 1936/2211/4 1934/2212/4 1932/2213/4 1930/2214/4 +f 1940/2215/4 1938/2216/4 1948/2217/4 1946/2218/4 1944/2219/4 1942/2220/4 +f 1952/2221/2 1950/2222/2 1960/2223/2 1958/2224/2 1956/2225/2 1954/2226/2 +f 1964/2227/2 1962/2228/2 1972/2229/2 1970/2230/2 1968/2231/2 1966/2232/2 +f 1976/2233/4 1974/2234/4 1983/2235/4 1982/2236/4 1980/2237/4 1978/2238/4 +f 1975/2239/2 1977/2240/2 1979/2241/2 1981/2242/2 1984/2243/2 1973/2244/2 +f 1988/2245/4 1986/2246/4 1995/2247/4 1994/2248/4 1992/2249/4 1990/2250/4 +f 1987/2251/2 1989/2252/2 1991/2253/2 1993/2254/2 1996/2255/2 1985/2256/2 +f 2000/2257/4 1998/2258/4 2007/2259/4 2006/2260/4 2004/2261/4 2002/2262/4 +f 1999/2263/2 2001/2264/2 2003/2265/2 2005/2266/2 2008/2267/2 1997/2268/2 +f 2012/2269/3 2010/2270/3 2019/2271/3 2018/2272/3 2016/2273/3 2014/2274/3 +f 2011/2275/1 2013/2276/1 2015/2277/1 2017/2278/1 2020/2279/1 2009/2280/1 +f 2024/2281/4 2022/2282/4 2032/2283/4 2030/2284/4 2028/2285/4 2026/2286/4 +f 2036/2287/4 2034/2288/4 2044/2289/4 2042/2290/4 2040/2291/4 2038/2292/4 +f 2048/2293/2 2046/2294/2 2056/2295/2 2054/2296/2 2052/2297/2 2050/2298/2 +f 2060/2299/2 2058/2300/2 2068/2301/2 2066/2302/2 2064/2303/2 2062/2304/2 +f 2072/2305/3 2070/2306/3 2079/2307/3 2078/2308/3 2076/2309/3 2074/2310/3 +f 2071/2311/1 2073/2312/1 2075/2313/1 2077/2314/1 2080/2315/1 2069/2316/1 +f 2084/2317/3 2082/2318/3 2091/2319/3 2090/2320/3 2088/2321/3 2086/2322/3 +f 2083/2323/1 2085/2324/1 2087/2325/1 2089/2326/1 2092/2327/1 2081/2328/1 +f 2096/2329/3 2094/2330/3 2103/2331/3 2102/2332/3 2100/2333/3 2098/2334/3 +f 2095/2335/1 2097/2336/1 2099/2337/1 2101/2338/1 2104/2339/1 2093/2340/1 +f 2113/2341/6 2106/2342/6 2108/2343/6 2122/2344/6 +f 2121/2345/1 2123/2346/1 2124/2347/1 2122/2344/1 2108/2343/1 2107/2348/1 2117/2349/1 2119/2350/1 2120/2351/1 2118/2352/1 +f 2117/2349/5 2107/2348/5 2105/2353/5 2110/2354/5 +f 2108/2343/4 2106/2342/4 2105/2355/4 2107/2356/4 +f 2109/2357/3 2111/2358/3 2112/2359/3 2110/2360/3 2105/2353/3 2106/2361/3 2113/2362/3 2115/2363/3 2116/2364/3 2114/2365/3 +f 2113/2341/73 2122/2344/73 2124/2366/73 2115/2367/73 +f 2115/2367/29 2124/2366/29 2123/2368/29 2116/2369/29 +f 2116/2370/74 2123/2371/74 2121/2372/74 2114/2373/74 +f 2117/2349/75 2110/2354/75 2112/2359/75 2119/2350/75 +f 2119/2350/72 2112/2359/72 2111/2358/72 2120/2351/72 +f 2120/2351/76 2111/2358/76 2109/2374/76 2118/2375/76 +f 2121/2372/2 2118/2375/2 2109/2374/2 2114/2373/2 +f 2128/2376/4 2126/2377/4 2135/2378/4 2134/2379/4 2132/2380/4 2130/2381/4 +f 2127/2382/2 2129/2383/2 2131/2384/2 2133/2385/2 2136/2386/2 2125/2387/2 +f 2137/2388/4 2139/2389/4 2141/2390/4 2143/2391/4 2145/2392/4 2147/2393/4 2149/2394/4 2151/2395/4 2153/2396/4 2155/2397/4 2157/2398/4 2159/2399/4 2161/2400/4 2163/2401/4 2165/2402/4 2167/2403/4 +f 2140/2404/2 2138/2405/2 2168/2406/2 2166/2407/2 2164/2408/2 2162/2409/2 2160/2410/2 2158/2411/2 2156/2412/2 2154/2413/2 2152/2414/2 2150/2415/2 2148/2416/2 2146/2417/2 2144/2418/2 2142/2419/2 +f 2169/2420/4 2171/2421/4 2173/2422/4 2175/2423/4 2177/2424/4 2179/2425/4 2181/2426/4 2183/2427/4 2185/2428/4 2187/2429/4 2189/2430/4 2191/2431/4 2193/2432/4 2195/2433/4 2197/2434/4 2199/2435/4 +f 2172/2436/2 2170/2437/2 2200/2438/2 2198/2439/2 2196/2440/2 2194/2441/2 2192/2442/2 2190/2443/2 2188/2444/2 2186/2445/2 2184/2446/2 2182/2447/2 2180/2448/2 2178/2449/2 2176/2450/2 2174/2451/2 +f 2223/2452/3 2201/2453/3 2203/2454/3 2227/2455/3 +f 2227/2455/4 2203/2454/4 2206/2456/4 2228/2457/4 +f 2228/2458/1 2206/2459/1 2204/2460/1 2229/2461/1 +f 2229/2461/2 2204/2460/2 2201/2453/2 2223/2452/2 +f 2202/2462/6 2205/2463/6 2231/2464/6 2230/2465/6 +f 2206/2466/5 2203/2467/5 2201/2468/5 2204/2469/5 +f 2231/2470/2 2226/2471/2 2232/2472/2 2230/2473/2 +f 2205/2474/1 2225/2475/1 2226/2471/1 2231/2470/1 +f 2202/2476/4 2224/2477/4 2225/2478/4 2205/2479/4 +f 2230/2473/3 2232/2472/3 2224/2477/3 2202/2476/3 +f 2225/2480/1 2228/2481/1 2229/2482/1 2226/2483/1 +f 2224/2484/4 2227/2485/4 2228/2486/4 2225/2487/4 +f 2232/2488/3 2223/2489/3 2227/2485/3 2224/2484/3 +f 2226/2483/2 2229/2482/2 2223/2490/2 2232/2491/2 +f 2261/2492/5 2263/2493/5 2233/2494/5 2235/2495/5 2237/2496/5 2239/2497/5 2241/2498/5 2243/2499/5 2245/2500/5 2247/2501/5 2249/2502/5 2251/2503/5 2253/2504/5 2255/2505/5 2257/2506/5 2259/2507/5 +f 2268/2508/5 2266/2509/5 2296/2510/5 2294/2511/5 2292/2512/5 2290/2513/5 2288/2514/5 2286/2515/5 2284/2516/5 2282/2517/5 2280/2518/5 2278/2519/5 2276/2520/5 2274/2521/5 2272/2522/5 2270/2523/5 +f 2265/2524/6 2267/2525/6 2269/2526/6 2271/2527/6 2273/2528/6 2275/2529/6 2277/2530/6 2279/2531/6 2281/2532/6 2283/2533/6 2285/2534/6 2287/2535/6 2289/2536/6 2291/2537/6 2293/2538/6 2295/2539/6 +f 2319/2540/3 2297/2541/3 2299/2542/3 2323/2543/3 +f 2323/2543/6 2299/2542/6 2302/2544/6 2324/2545/6 +f 2324/2546/1 2302/2547/1 2300/2548/1 2325/2549/1 +f 2325/2549/5 2300/2548/5 2297/2541/5 2319/2540/5 +f 2298/2550/2 2301/2551/2 2327/2552/2 2326/2553/2 +f 2302/2554/4 2299/2555/4 2297/2556/4 2300/2557/4 +f 2327/2558/5 2322/2559/5 2328/2560/5 2326/2561/5 +f 2301/2562/1 2321/2563/1 2322/2559/1 2327/2558/1 +f 2298/2564/6 2320/2565/6 2321/2566/6 2301/2567/6 +f 2326/2561/3 2328/2560/3 2320/2565/3 2298/2564/3 +f 2321/2568/1 2324/2569/1 2325/2570/1 2322/2571/1 +f 2320/2572/6 2323/2573/6 2324/2574/6 2321/2575/6 +f 2328/2576/3 2319/2577/3 2323/2573/3 2320/2572/3 +f 2322/2571/5 2325/2570/5 2319/2578/5 2328/2579/5 +f 2332/2580/4 2330/2581/4 2360/2582/4 2358/2583/4 2356/2584/4 2354/2585/4 2352/2586/4 2350/2587/4 2348/2588/4 2346/2589/4 2344/2590/4 2342/2591/4 2340/2592/4 2338/2593/4 2336/2594/4 2334/2595/4 +f 2329/2596/2 2331/2597/2 2333/2598/2 2335/2599/2 2337/2600/2 2339/2601/2 2341/2602/2 2343/2603/2 2345/2604/2 2347/2605/2 2349/2606/2 2351/2607/2 2353/2608/2 2355/2609/2 2357/2610/2 2359/2611/2 +f 2447/2612/3 2425/2613/3 2427/2614/3 2451/2615/3 +f 2451/2615/4 2427/2614/4 2430/2616/4 2452/2617/4 +f 2452/2618/1 2430/2619/1 2428/2620/1 2453/2621/1 +f 2453/2621/2 2428/2620/2 2425/2613/2 2447/2612/2 +f 2426/2622/6 2429/2623/6 2455/2624/6 2454/2625/6 +f 2430/2626/5 2427/2627/5 2425/2628/5 2428/2629/5 +f 2455/2630/2 2450/2631/2 2456/2632/2 2454/2633/2 +f 2429/2634/1 2449/2635/1 2450/2631/1 2455/2630/1 +f 2426/2636/4 2448/2637/4 2449/2638/4 2429/2639/4 +f 2454/2633/3 2456/2632/3 2448/2637/3 2426/2636/3 +f 2449/2640/1 2452/2641/1 2453/2642/1 2450/2643/1 +f 2448/2644/4 2451/2645/4 2452/2646/4 2449/2647/4 +f 2456/2648/3 2447/2649/3 2451/2645/3 2448/2644/3 +f 2450/2643/2 2453/2642/2 2447/2650/2 2456/2651/2 +f 2485/2652/5 2487/2653/5 2457/2654/5 2459/2655/5 2461/2656/5 2463/2657/5 2465/2658/5 2467/2659/5 2469/2660/5 2471/2661/5 2473/2662/5 2475/2663/5 2477/2664/5 2479/2665/5 2481/2666/5 2483/2667/5 +f 2492/2668/5 2490/2669/5 2520/2670/5 2518/2671/5 2516/2672/5 2514/2673/5 2512/2674/5 2510/2675/5 2508/2676/5 2506/2677/5 2504/2678/5 2502/2679/5 2500/2680/5 2498/2681/5 2496/2682/5 2494/2683/5 +f 2489/2684/6 2491/2685/6 2493/2686/6 2495/2687/6 2497/2688/6 2499/2689/6 2501/2690/6 2503/2691/6 2505/2692/6 2507/2693/6 2509/2694/6 2511/2695/6 2513/2696/6 2515/2697/6 2517/2698/6 2519/2699/6 +s 1 +f 1/2700/4 2/2701/4 4/2702/77 3/2703/77 +f 3/2703/77 4/2702/77 6/2704/44 5/2705/44 +f 5/2705/44 6/2704/44 8/2706/78 7/2707/78 +f 7/2707/78 8/2706/78 10/2708/1 9/2709/1 +f 9/2709/1 10/2708/1 12/2710/79 11/2711/79 +f 11/2711/79 12/2710/79 14/2712/46 13/2713/46 +f 13/2713/46 14/2712/46 16/2714/80 15/2715/80 +f 15/2715/80 16/2714/80 18/2716/2 17/2717/2 +f 17/2717/2 18/2716/2 20/2718/81 19/2719/81 +f 19/2719/81 20/2718/81 22/2720/47 21/2721/47 +f 21/2721/47 22/2720/47 24/2722/82 23/2723/82 +f 23/2723/82 24/2722/82 26/2724/3 25/2725/3 +f 25/2725/3 26/2724/3 28/2726/83 27/2727/83 +f 27/2727/83 28/2726/83 30/2728/45 29/2729/45 +f 29/2729/45 30/2728/45 32/2730/84 31/2731/84 +f 31/2732/84 32/2733/84 2/2701/4 1/2700/4 +f 33/2734/85 34/2735/86 36/2736/87 35/2737/88 +f 35/2737/88 36/2736/87 38/2738/89 37/2739/90 +f 37/2739/90 38/2738/89 40/2740/91 39/2741/92 +f 39/2741/92 40/2740/91 42/2742/93 41/2743/94 +f 41/2743/94 42/2742/93 44/2744/95 43/2745/96 +f 43/2745/96 44/2744/95 46/2746/97 45/2747/98 +f 45/2747/98 46/2746/97 48/2748/99 47/2749/100 +f 47/2750/100 48/2751/99 50/2752/101 49/2753/102 +f 49/2753/102 50/2752/101 52/2754/103 51/2755/104 +f 51/2755/104 52/2754/103 54/2756/105 53/2757/106 +f 53/2757/106 54/2756/105 56/2758/107 55/2759/108 +f 55/2759/108 56/2758/107 58/2760/109 57/2761/110 +f 57/2761/110 58/2760/109 60/2762/111 59/2763/112 +f 59/2763/112 60/2762/111 62/2764/113 61/2765/114 +f 61/2765/114 62/2764/113 64/2766/115 63/2767/116 +f 63/2768/116 64/2769/115 34/2735/86 33/2734/85 +f 33/2770/85 35/2771/88 37/2772/90 39/2773/92 41/2774/94 43/2775/96 45/2776/98 47/2777/100 49/2778/102 51/2779/104 53/2780/106 55/2781/108 57/2782/110 59/2783/112 61/2784/114 63/2785/116 +f 97/2786/4 114/2787/4 120/2788/32 98/2789/32 +f 98/2789/32 120/2788/32 128/2790/28 99/2791/28 +f 99/2791/28 128/2790/28 119/2792/41 100/2793/41 +f 100/2793/41 119/2792/41 127/2794/5 101/2795/5 +f 101/2795/5 127/2794/5 118/2796/117 102/2797/117 +f 102/2797/117 118/2796/117 126/2798/72 103/2799/72 +f 103/2799/72 126/2798/72 121/2800/118 104/2801/118 +f 104/2801/118 121/2800/118 125/2802/2 105/2803/2 +f 105/2803/2 125/2802/2 116/2804/119 106/2805/119 +f 106/2805/119 116/2804/119 124/2806/29 107/2807/29 +f 107/2807/29 124/2806/29 115/2808/120 108/2809/120 +f 108/2809/120 115/2808/120 123/2810/6 109/2811/6 +f 109/2812/6 123/2813/6 117/2814/37 110/2815/37 +f 110/2815/37 117/2814/37 122/2816/39 111/2817/39 +f 111/2817/39 122/2816/39 113/2818/34 112/2819/34 +f 112/2819/34 113/2818/34 114/2787/4 97/2786/4 +f 169/2820/4 186/2821/4 192/2822/34 170/2823/34 +f 170/2823/34 192/2822/34 200/2824/39 171/2825/39 +f 171/2825/39 200/2824/39 191/2826/37 172/2827/37 +f 172/2827/37 191/2826/37 199/2828/6 173/2829/6 +f 173/2829/6 199/2828/6 190/2830/120 174/2831/120 +f 174/2831/120 190/2830/120 198/2832/29 175/2833/29 +f 175/2833/29 198/2832/29 193/2834/119 176/2835/119 +f 176/2835/119 193/2834/119 197/2836/2 177/2837/2 +f 177/2837/2 197/2836/2 188/2838/118 178/2839/118 +f 178/2839/118 188/2838/118 196/2840/72 179/2841/72 +f 179/2841/72 196/2840/72 187/2842/117 180/2843/117 +f 180/2843/117 187/2842/117 195/2844/5 181/2845/5 +f 181/2846/5 195/2847/5 189/2848/41 182/2849/41 +f 182/2849/41 189/2848/41 194/2850/28 183/2851/28 +f 183/2851/28 194/2850/28 185/2852/32 184/2853/32 +f 184/2853/32 185/2852/32 186/2821/4 169/2820/4 +f 441/2854/121 443/2855/122 444/2856/79 442/2857/1 +f 443/2855/122 445/2858/123 446/2859/46 444/2856/79 +f 445/2858/123 447/2860/124 448/2861/80 446/2859/46 +f 447/2860/124 449/2862/125 450/2863/2 448/2861/80 +f 449/2862/125 451/2864/126 452/2865/81 450/2863/2 +f 451/2864/126 453/2866/127 454/2867/47 452/2865/81 +f 453/2866/127 455/2868/128 456/2869/82 454/2867/47 +f 455/2868/128 457/2870/129 458/2871/3 456/2869/82 +f 457/2870/129 459/2872/130 460/2873/83 458/2871/3 +f 459/2872/130 461/2874/131 462/2875/45 460/2873/83 +f 461/2874/131 463/2876/132 464/2877/84 462/2875/45 +f 463/2876/132 465/2878/133 466/2879/4 464/2877/84 +f 465/2880/133 467/2881/134 468/2882/77 466/2883/4 +f 467/2881/134 469/2884/135 470/2885/44 468/2882/77 +f 469/2884/135 471/2886/136 472/2887/78 470/2885/44 +f 471/2886/136 441/2854/121 442/2857/1 472/2887/78 +f 441/2888/121 471/2889/136 469/2890/135 467/2891/134 465/2892/133 463/2893/132 461/2894/131 459/2895/130 457/2896/129 455/2897/128 453/2898/127 451/2899/126 449/2900/125 447/2901/124 445/2902/123 443/2903/122 +f 547/2904/121 549/2905/122 550/2906/79 548/2907/1 +f 549/2905/122 551/2908/123 552/2909/46 550/2906/79 +f 551/2908/123 553/2910/124 554/2911/80 552/2909/46 +f 553/2910/124 555/2912/125 556/2913/2 554/2911/80 +f 555/2912/125 557/2914/126 558/2915/81 556/2913/2 +f 557/2914/126 559/2916/127 560/2917/47 558/2915/81 +f 559/2916/127 561/2918/128 562/2919/82 560/2917/47 +f 561/2918/128 563/2920/129 564/2921/3 562/2919/82 +f 563/2920/129 565/2922/130 566/2923/83 564/2921/3 +f 565/2922/130 567/2924/131 568/2925/45 566/2923/83 +f 567/2924/131 569/2926/132 570/2927/84 568/2925/45 +f 569/2926/132 571/2928/133 572/2929/4 570/2927/84 +f 571/2930/133 573/2931/134 574/2932/77 572/2933/4 +f 573/2931/134 575/2934/135 576/2935/44 574/2932/77 +f 575/2934/135 577/2936/136 578/2937/78 576/2935/44 +f 577/2936/136 547/2904/121 548/2907/1 578/2937/78 +f 547/2938/121 577/2939/136 575/2940/135 573/2941/134 571/2942/133 569/2943/132 567/2944/131 565/2945/130 563/2946/129 561/2947/128 559/2948/127 557/2949/126 555/2950/125 553/2951/124 551/2952/123 549/2953/122 +f 684/2954/137 732/2955/138 731/2956/139 682/2957/140 +f 666/2958/141 723/2959/142 722/2960/143 664/2961/144 +f 710/2962/145 745/2963/146 744/2964/147 708/2965/148 +f 692/2966/149 736/2967/150 735/2968/151 690/2969/152 +f 674/2970/153 727/2971/154 726/2972/155 672/2973/156 +f 654/2974/157 718/2975/158 748/2976/159 716/2977/160 +f 656/2978/161 717/2979/162 718/2975/158 654/2974/157 +f 700/2980/163 740/2981/164 739/2982/165 698/2983/166 +f 682/2957/140 731/2956/139 730/2984/167 680/2985/168 +f 664/2961/144 722/2960/143 721/2986/169 662/2987/170 +f 708/2965/148 744/2964/147 743/2988/171 706/2989/172 +f 690/2969/152 735/2968/151 734/2990/173 688/2991/174 +f 672/2973/156 726/2972/155 725/2992/175 670/2993/176 +f 716/2977/160 748/2976/159 747/2994/177 714/2995/178 +f 698/2983/166 739/2982/165 738/2996/179 696/2997/180 +f 680/2985/168 730/2984/167 729/2998/181 678/2999/182 +f 662/2987/170 721/2986/169 720/3000/183 660/3001/184 +f 706/2989/172 743/2988/171 742/3002/185 704/3003/186 +f 688/2991/174 734/2990/173 733/3004/187 686/3005/188 +f 670/2993/176 725/2992/175 724/3006/189 668/3007/190 +f 714/2995/178 747/2994/177 746/3008/191 712/3009/192 +f 696/2997/180 738/2996/179 737/3010/193 694/3011/194 +f 678/2999/182 729/2998/181 728/3012/195 676/3013/196 +f 660/3001/184 720/3000/183 719/3014/197 658/3015/198 +f 704/3003/186 742/3002/185 741/3016/199 702/3017/200 +f 686/3005/188 733/3004/187 732/2955/138 684/2954/137 +f 668/3007/190 724/3006/189 723/2959/142 666/2958/141 +f 712/3009/192 746/3008/191 745/2963/146 710/2962/145 +f 694/3011/194 737/3010/193 736/2967/150 692/2966/149 +f 676/3013/196 728/3012/195 727/2971/154 674/2970/153 +f 658/3015/198 719/3014/197 717/2979/162 656/2978/161 +f 702/3017/200 741/3016/199 740/2981/164 700/2980/163 +f 665/3018/142 755/3019/141 756/3020/190 667/3021/189 +f 683/3022/138 764/3023/137 765/3024/188 685/3025/187 +f 701/3026/199 773/3027/200 774/3028/186 703/3029/185 +f 657/3030/197 751/3031/198 752/3032/184 659/3033/183 +f 675/3034/195 760/3035/196 761/3036/182 677/3037/181 +f 693/3038/193 769/3039/194 770/3040/180 695/3041/179 +f 711/3042/191 778/3043/192 779/3044/178 713/3045/177 +f 667/3021/189 756/3020/190 757/3046/176 669/3047/175 +f 685/3025/187 765/3024/188 766/3048/174 687/3049/173 +f 703/3029/185 774/3028/186 775/3050/172 705/3051/171 +f 659/3033/183 752/3032/184 753/3052/170 661/3053/169 +f 677/3037/181 761/3036/182 762/3054/168 679/3055/167 +f 695/3041/179 770/3040/180 771/3056/166 697/3057/165 +f 713/3045/177 779/3044/178 780/3058/160 715/3059/159 +f 669/3047/175 757/3046/176 758/3060/156 671/3061/155 +f 687/3049/173 766/3048/174 767/3062/152 689/3063/151 +f 705/3051/171 775/3050/172 776/3064/148 707/3065/147 +f 661/3053/169 753/3052/170 754/3066/144 663/3067/143 +f 679/3055/167 762/3054/168 763/3068/140 681/3069/139 +f 697/3057/165 771/3056/166 772/3070/163 699/3071/164 +f 653/3072/158 749/3073/157 750/3074/161 655/3075/162 +f 715/3059/159 780/3058/160 749/3073/157 653/3072/158 +f 671/3061/155 758/3060/156 759/3076/153 673/3077/154 +f 689/3063/151 767/3062/152 768/3078/149 691/3079/150 +f 707/3065/147 776/3064/148 777/3080/145 709/3081/146 +f 663/3067/143 754/3066/144 755/3019/141 665/3018/142 +f 681/3069/139 763/3068/140 764/3023/137 683/3022/138 +f 699/3071/164 772/3070/163 773/3027/200 701/3026/199 +f 655/3075/162 750/3074/161 751/3031/198 657/3030/197 +f 673/3077/154 759/3076/153 760/3035/196 675/3034/195 +f 691/3079/150 768/3078/149 769/3039/194 693/3038/193 +f 709/3081/146 777/3080/145 778/3043/192 711/3042/191 +f 783/3082/148 784/3083/147 868/3084/146 867/3085/145 +f 867/3085/145 868/3084/146 864/3086/191 863/3087/192 +f 863/3087/192 864/3086/191 892/3088/177 891/3089/178 +f 891/3089/178 892/3088/177 844/3090/159 843/3091/160 +f 843/3091/160 844/3090/159 820/3092/158 819/3093/157 +f 819/3093/157 820/3092/158 816/3094/162 815/3095/161 +f 815/3095/161 816/3094/162 824/3096/197 823/3097/198 +f 823/3097/198 824/3096/197 880/3098/183 879/3099/184 +f 879/3099/184 880/3098/183 812/3100/169 811/3101/170 +f 811/3101/170 812/3100/169 804/3102/143 803/3103/144 +f 803/3103/144 804/3102/143 800/3104/142 799/3105/141 +f 799/3105/141 800/3104/142 808/3106/189 807/3107/190 +f 807/3108/190 808/3109/189 875/3110/201 876/3111/202 +f 876/3111/202 875/3110/201 883/3112/155 884/3113/156 +f 884/3113/156 883/3112/155 899/3114/154 900/3115/153 +f 900/3115/153 899/3114/154 854/3116/195 856/3117/196 +f 856/3117/196 854/3116/195 846/3118/181 848/3119/182 +f 848/3119/182 846/3118/181 850/3120/167 852/3121/168 +f 852/3121/168 850/3120/167 794/3122/139 796/3123/140 +f 796/3123/140 794/3122/139 790/3124/138 792/3125/137 +f 792/3125/137 790/3124/138 786/3126/187 788/3127/188 +f 788/3127/188 786/3126/187 907/3128/173 908/3129/174 +f 908/3129/174 907/3128/173 903/3130/151 904/3131/152 +f 904/3131/152 903/3130/151 831/3132/150 832/3133/149 +f 832/3133/149 831/3132/150 887/3134/193 888/3135/194 +f 888/3135/194 887/3134/193 895/3136/179 896/3137/180 +f 896/3137/180 895/3136/179 839/3138/165 840/3139/166 +f 840/3139/166 839/3138/165 828/3140/164 827/3141/163 +f 827/3142/163 828/3143/164 836/3144/203 835/3145/204 +f 835/3145/204 836/3144/203 860/3146/185 859/3147/186 +f 859/3147/186 860/3146/185 872/3148/171 871/3149/172 +f 871/3149/172 872/3148/171 784/3083/147 783/3082/148 +f 919/3150/205 920/3151/206 942/3152/207 941/3153/208 +f 910/3154/209 911/3155/210 933/3156/211 932/3157/212 +f 920/3151/206 921/3158/213 943/3159/214 942/3152/207 +f 915/3160/215 916/3161/216 938/3162/217 937/3163/218 +f 916/3161/216 917/3164/219 939/3165/220 938/3162/217 +f 911/3155/210 912/3166/221 934/3167/222 933/3156/211 +f 921/3158/213 922/3168/223 944/3169/224 943/3159/214 +f 912/3166/221 913/3170/225 935/3171/226 934/3167/222 +f 922/3168/223 923/3172/227 945/3173/228 944/3169/224 +f 917/3164/219 918/3174/229 940/3175/230 939/3165/220 +f 924/3176/231 909/3177/232 931/3178/233 946/3179/234 +f 918/3174/229 919/3150/205 941/3153/208 940/3175/230 +f 913/3170/225 914/3180/235 936/3181/236 935/3171/226 +f 923/3172/227 924/3182/231 946/3183/234 945/3173/228 +f 914/3180/235 915/3160/215 937/3163/218 936/3181/236 +f 909/3177/232 910/3154/209 932/3157/212 931/3178/233 +f 937/3163/218 938/3162/217 954/3184/237 953/3185/238 +f 946/3179/234 931/3178/233 947/3186/239 962/3187/240 +f 945/3173/228 946/3183/234 962/3188/240 961/3189/241 +f 938/3162/217 939/3165/220 955/3190/242 954/3184/237 +f 931/3178/233 932/3157/212 948/3191/243 947/3186/239 +f 939/3165/220 940/3175/230 956/3192/244 955/3190/242 +f 932/3157/212 933/3156/211 949/3193/245 948/3191/243 +f 940/3175/230 941/3153/208 957/3194/246 956/3192/244 +f 933/3156/211 934/3167/222 950/3195/247 949/3193/245 +f 941/3153/208 942/3152/207 958/3196/248 957/3194/246 +f 934/3167/222 935/3171/226 951/3197/249 950/3195/247 +f 942/3152/207 943/3159/214 959/3198/250 958/3196/248 +f 935/3171/226 936/3181/236 952/3199/251 951/3197/249 +f 943/3159/214 944/3169/224 960/3200/252 959/3198/250 +f 936/3181/236 937/3163/218 953/3185/238 952/3199/251 +f 944/3169/224 945/3173/228 961/3189/241 960/3200/252 +f 973/3201/253 995/3202/254 996/3203/255 974/3204/256 +f 964/3205/257 986/3206/258 987/3207/259 965/3208/260 +f 974/3204/256 996/3203/255 997/3209/261 975/3210/262 +f 969/3211/263 991/3212/264 992/3213/265 970/3214/266 +f 970/3214/266 992/3213/265 993/3215/267 971/3216/268 +f 965/3208/260 987/3207/259 988/3217/269 966/3218/270 +f 975/3210/262 997/3209/261 998/3219/271 976/3220/272 +f 966/3218/270 988/3217/269 989/3221/273 967/3222/274 +f 976/3220/272 998/3219/271 999/3223/275 977/3224/276 +f 971/3216/268 993/3215/267 994/3225/277 972/3226/278 +f 978/3227/279 1000/3228/280 985/3229/281 963/3230/282 +f 972/3226/278 994/3225/277 995/3202/254 973/3201/253 +f 967/3222/274 989/3221/273 990/3231/283 968/3232/284 +f 977/3224/276 999/3223/275 1000/3233/280 978/3234/279 +f 968/3232/284 990/3231/283 991/3212/264 969/3211/263 +f 963/3230/282 985/3229/281 986/3206/258 964/3205/257 +f 991/3212/264 1007/3235/285 1008/3236/286 992/3213/265 +f 1000/3228/280 1016/3237/287 1001/3238/288 985/3229/281 +f 999/3223/275 1015/3239/289 1016/3240/287 1000/3233/280 +f 992/3213/265 1008/3236/286 1009/3241/290 993/3215/267 +f 985/3229/281 1001/3238/288 1002/3242/291 986/3206/258 +f 993/3215/267 1009/3241/290 1010/3243/292 994/3225/277 +f 986/3206/258 1002/3242/291 1003/3244/293 987/3207/259 +f 994/3225/277 1010/3243/292 1011/3245/294 995/3202/254 +f 987/3207/259 1003/3244/293 1004/3246/295 988/3217/269 +f 995/3202/254 1011/3245/294 1012/3247/296 996/3203/255 +f 988/3217/269 1004/3246/295 1005/3248/297 989/3221/273 +f 996/3203/255 1012/3247/296 1013/3249/298 997/3209/261 +f 989/3221/273 1005/3248/297 1006/3250/299 990/3231/283 +f 997/3209/261 1013/3249/298 1014/3251/300 998/3219/271 +f 990/3231/283 1006/3250/299 1007/3235/285 991/3212/264 +f 998/3219/271 1014/3251/300 1015/3239/289 999/3223/275 +f 909/3177/232 963/3230/282 964/3205/257 910/3154/209 +f 910/3154/209 964/3205/257 965/3208/260 911/3155/210 +f 911/3155/210 965/3208/260 966/3218/270 912/3166/221 +f 912/3166/221 966/3218/270 967/3222/274 913/3170/225 +f 913/3170/225 967/3222/274 968/3232/284 914/3180/235 +f 914/3180/235 968/3232/284 969/3211/263 915/3160/215 +f 915/3160/215 969/3211/263 970/3214/266 916/3161/216 +f 916/3161/216 970/3214/266 971/3216/268 917/3164/219 +f 917/3164/219 971/3216/268 972/3226/278 918/3174/229 +f 918/3174/229 972/3226/278 973/3201/253 919/3150/205 +f 919/3150/205 973/3201/253 974/3204/256 920/3151/206 +f 920/3151/206 974/3204/256 975/3210/262 921/3158/213 +f 921/3158/213 975/3210/262 976/3220/272 922/3168/223 +f 922/3168/223 976/3220/272 977/3224/276 923/3172/227 +f 923/3172/227 977/3224/276 978/3234/279 924/3182/231 +f 924/3176/231 978/3227/279 963/3230/282 909/3177/232 +f 1073/3252/240 1074/3253/287 1076/3254/301 1075/3255/239 +f 1075/3255/239 1076/3254/301 1078/3256/291 1077/3257/243 +f 1077/3257/243 1078/3256/291 1080/3258/302 1079/3259/303 +f 1079/3259/303 1080/3258/302 1082/3260/295 1081/3261/247 +f 1081/3261/247 1082/3260/295 1084/3262/297 1083/3263/304 +f 1083/3263/304 1084/3262/297 1086/3264/299 1085/3265/251 +f 1085/3265/251 1086/3264/299 1088/3266/285 1087/3267/305 +f 1087/3267/305 1088/3266/285 1090/3268/286 1089/3269/237 +f 1089/3270/237 1090/3271/286 1092/3272/290 1091/3273/242 +f 1091/3273/242 1092/3272/290 1094/3274/292 1093/3275/244 +f 1093/3275/244 1094/3274/292 1096/3276/294 1095/3277/246 +f 1095/3277/246 1096/3276/294 1098/3278/296 1097/3279/248 +f 1097/3279/248 1098/3278/296 1100/3280/298 1099/3281/250 +f 1099/3281/250 1100/3280/298 1102/3282/300 1101/3283/252 +f 1101/3283/252 1102/3282/300 1104/3284/289 1103/3285/241 +f 1103/3285/241 1104/3284/289 1074/3286/287 1073/3287/240 +f 1105/3288/5 1106/3289/306 1108/3290/307 1107/3291/308 +f 1107/3292/308 1108/3293/307 1110/3294/309 1109/3295/310 +f 1109/3295/310 1110/3294/309 1112/3296/311 1111/3297/6 +f 1111/3297/6 1112/3296/311 1114/3298/312 1113/3299/313 +f 1113/3299/313 1114/3298/312 1116/3300/314 1115/3301/315 +f 1115/3301/315 1116/3300/314 1106/3289/306 1105/3288/5 +f 1117/3302/5 1118/3303/316 1120/3304/317 1119/3305/315 +f 1119/3306/315 1120/3307/317 1122/3308/318 1121/3309/313 +f 1121/3309/313 1122/3308/318 1124/3310/319 1123/3311/6 +f 1123/3311/6 1124/3310/319 1126/3312/320 1125/3313/310 +f 1125/3313/310 1126/3312/320 1128/3314/321 1127/3315/308 +f 1127/3315/308 1128/3314/321 1118/3303/316 1117/3302/5 +f 1129/3316/5 1130/3317/316 1132/3318/317 1131/3319/315 +f 1131/3320/315 1132/3321/317 1134/3322/318 1133/3323/313 +f 1133/3323/313 1134/3322/318 1136/3324/319 1135/3325/6 +f 1135/3325/6 1136/3324/319 1138/3326/320 1137/3327/310 +f 1137/3327/310 1138/3326/320 1140/3328/321 1139/3329/308 +f 1139/3329/308 1140/3328/321 1130/3317/316 1129/3316/5 +f 1141/3330/5 1142/3331/316 1144/3332/317 1143/3333/315 +f 1143/3334/315 1144/3335/317 1146/3336/318 1145/3337/313 +f 1145/3337/313 1146/3336/318 1148/3338/319 1147/3339/6 +f 1147/3339/6 1148/3338/319 1150/3340/320 1149/3341/310 +f 1149/3341/310 1150/3340/320 1152/3342/321 1151/3343/308 +f 1151/3343/308 1152/3342/321 1142/3331/316 1141/3330/5 +f 1153/3344/5 1154/3345/306 1156/3346/307 1155/3347/308 +f 1155/3348/308 1156/3349/307 1158/3350/309 1157/3351/310 +f 1157/3351/310 1158/3350/309 1160/3352/311 1159/3353/6 +f 1159/3353/6 1160/3352/311 1162/3354/312 1161/3355/313 +f 1161/3355/313 1162/3354/312 1164/3356/314 1163/3357/315 +f 1163/3357/315 1164/3356/314 1154/3345/306 1153/3344/5 +f 1165/3358/5 1166/3359/306 1168/3360/307 1167/3361/308 +f 1167/3362/308 1168/3363/307 1170/3364/309 1169/3365/310 +f 1169/3365/310 1170/3364/309 1172/3366/311 1171/3367/6 +f 1171/3367/6 1172/3366/311 1174/3368/312 1173/3369/313 +f 1173/3369/313 1174/3368/312 1176/3370/314 1175/3371/315 +f 1175/3371/315 1176/3370/314 1166/3359/306 1165/3358/5 +f 1189/3372/322 1190/3373/323 1192/3374/324 1191/3375/325 +f 1191/3375/325 1192/3374/324 1194/3376/326 1193/3377/327 +f 1193/3377/327 1194/3376/326 1196/3378/328 1195/3379/329 +f 1195/3379/329 1196/3378/328 1198/3380/330 1197/3381/331 +f 1197/3381/331 1198/3380/330 1200/3382/332 1199/3383/333 +f 1199/3383/333 1200/3382/332 1202/3384/334 1201/3385/335 +f 1201/3385/335 1202/3384/334 1204/3386/336 1203/3387/337 +f 1203/3387/337 1204/3386/336 1206/3388/338 1205/3389/339 +f 1205/3389/339 1206/3388/338 1208/3390/340 1207/3391/341 +f 1207/3391/341 1208/3390/340 1210/3392/342 1209/3393/343 +f 1209/3393/343 1210/3392/342 1212/3394/344 1211/3395/345 +f 1211/3395/345 1212/3394/344 1214/3396/346 1213/3397/347 +f 1213/3398/347 1214/3399/346 1216/3400/348 1215/3401/349 +f 1215/3401/349 1216/3400/348 1218/3402/350 1217/3403/351 +f 1192/3404/324 1190/3405/323 1220/3406/352 1218/3407/350 1216/3408/348 1214/3409/346 1212/3410/344 1210/3411/342 1208/3412/340 1206/3413/338 1204/3414/336 1202/3415/334 1200/3416/332 1198/3417/330 1196/3418/328 1194/3419/326 +f 1217/3403/351 1218/3402/350 1220/3420/352 1219/3421/353 +f 1219/3421/353 1220/3420/352 1190/3373/323 1189/3372/322 +f 1189/3422/322 1191/3423/325 1193/3424/327 1195/3425/329 1197/3426/331 1199/3427/333 1201/3428/335 1203/3429/337 1205/3430/339 1207/3431/341 1209/3432/343 1211/3433/345 1213/3434/347 1215/3435/349 1217/3436/351 1219/3437/353 +f 1285/3438/354 1234/3439/355 1232/3440/46 1298/3441/356 +f 1231/3442/47 1236/3443/357 1290/3444/358 1293/3445/359 +f 1275/3446/360 1273/3447/361 1278/3448/362 1280/3449/363 +f 1271/3450/364 1269/3451/365 1282/3452/366 1284/3453/367 +f 1286/3454/368 1297/3455/369 1242/3456/370 1237/3457/371 +f 1249/3458/372 1278/3448/362 1273/3447/361 1246/3459/373 +f 1247/3460/364 1245/3461/365 1250/3462/366 1252/3463/367 +f 1263/3464/360 1261/3465/361 1266/3466/362 1268/3467/363 +f 1260/3468/374 1255/3469/375 1253/3470/354 1258/3471/356 +f 1240/3472/376 1243/3473/377 1241/3474/359 1238/3475/358 +f 1297/3455/369 1286/3454/368 1288/3476/378 1299/3477/379 +f 1250/3462/366 1245/3461/365 1238/3475/358 1241/3474/359 +f 1258/3471/356 1253/3470/354 1262/3478/380 1265/3479/381 +f 1296/3480/382 1291/3481/383 1289/3482/371 1294/3483/370 +f 1246/3459/373 1248/3484/384 1251/3485/385 1249/3458/372 +f 1287/3486/375 1285/3438/354 1298/3441/356 1300/3487/374 +f 1272/3488/384 1271/3489/364 1284/3490/367 1283/3491/385 +f 1262/3478/380 1264/3492/386 1267/3493/387 1265/3479/381 +f 1281/3494/372 1266/3466/362 1261/3465/361 1270/3495/373 +f 1299/3477/379 1288/3476/378 1287/3496/375 1300/3497/374 +f 1293/3445/359 1290/3444/358 1292/3498/376 1295/3499/377 +f 1237/3457/371 1242/3456/370 1244/3500/382 1239/3501/383 +f 1270/3495/373 1272/3488/384 1283/3491/385 1281/3494/372 +f 1257/3502/369 1254/3503/368 1256/3504/378 1259/3505/379 +f 1230/3506/45 1282/3452/366 1269/3451/365 1235/3507/388 +f 1276/3508/386 1275/3509/360 1280/3510/363 1279/3511/387 +f 1233/3512/389 1274/3513/380 1277/3514/381 1229/3515/44 +f 1254/3503/368 1257/3502/369 1294/3483/370 1289/3482/371 +f 1264/3492/386 1263/3516/360 1268/3517/363 1267/3493/387 +f 1248/3484/384 1247/3518/364 1252/3519/367 1251/3485/385 +f 1239/3501/383 1244/3500/382 1243/3520/377 1240/3521/376 +f 1259/3505/379 1256/3504/378 1255/3522/375 1260/3523/374 +f 1274/3513/380 1276/3508/386 1279/3511/387 1277/3514/381 +f 1295/3499/377 1292/3498/376 1291/3524/383 1296/3525/382 +f 1326/3526/390 1327/3527/391 1332/3528/392 1329/3529/393 +f 1318/3530/394 1319/3531/395 1324/3532/396 1321/3533/397 +f 1330/3534/398 1331/3535/399 1314/3536/47 1313/3537/45 +f 1322/3538/400 1323/3539/401 1328/3540/402 1325/3541/403 +f 1311/3542/44 1312/3543/46 1320/3544/404 1317/3545/405 +f 1319/3531/395 1318/3530/394 1317/3545/405 1320/3544/404 +f 1323/3539/401 1322/3538/400 1321/3533/397 1324/3532/396 +f 1327/3527/391 1326/3526/390 1325/3541/403 1328/3540/402 +f 1331/3535/399 1330/3534/398 1329/3529/393 1332/3528/392 +f 1350/3546/390 1351/3547/391 1356/3548/392 1353/3549/393 +f 1342/3550/394 1343/3551/395 1348/3552/396 1345/3553/397 +f 1354/3554/398 1355/3555/399 1338/3556/47 1337/3557/45 +f 1346/3558/400 1347/3559/401 1352/3560/406 1349/3561/403 +f 1335/3562/44 1336/3563/46 1344/3564/404 1341/3565/405 +f 1343/3551/395 1342/3550/394 1341/3565/405 1344/3564/404 +f 1347/3559/401 1346/3558/400 1345/3553/397 1348/3552/396 +f 1351/3547/391 1350/3546/390 1349/3561/403 1352/3560/406 +f 1355/3555/399 1354/3554/398 1353/3549/393 1356/3548/392 +f 1374/3566/390 1375/3567/391 1380/3568/392 1377/3569/393 +f 1366/3570/394 1367/3571/395 1372/3572/396 1369/3573/397 +f 1378/3574/398 1379/3575/399 1362/3576/47 1361/3577/45 +f 1370/3578/400 1371/3579/401 1376/3580/402 1373/3581/403 +f 1359/3582/44 1360/3583/46 1368/3584/404 1365/3585/405 +f 1367/3571/395 1366/3570/394 1365/3585/405 1368/3584/404 +f 1371/3579/401 1370/3578/400 1369/3573/397 1372/3572/396 +f 1375/3567/391 1374/3566/390 1373/3581/403 1376/3580/402 +f 1379/3575/399 1378/3574/398 1377/3569/393 1380/3568/392 +f 1398/3586/390 1399/3587/391 1404/3588/392 1401/3589/393 +f 1390/3590/394 1391/3591/395 1396/3592/396 1393/3593/397 +f 1402/3594/398 1403/3595/399 1386/3596/47 1385/3597/45 +f 1394/3598/400 1395/3599/401 1400/3600/402 1397/3601/403 +f 1383/3602/44 1384/3603/46 1392/3604/404 1389/3605/405 +f 1391/3591/395 1390/3590/394 1389/3605/405 1392/3604/404 +f 1395/3599/401 1394/3598/400 1393/3593/397 1396/3592/396 +f 1399/3587/391 1398/3586/390 1397/3601/403 1400/3600/402 +f 1403/3595/399 1402/3594/398 1401/3589/393 1404/3588/392 +f 1413/3606/322 1414/3607/323 1416/3608/324 1415/3609/325 +f 1415/3609/325 1416/3608/324 1418/3610/326 1417/3611/327 +f 1417/3611/327 1418/3610/326 1420/3612/328 1419/3613/329 +f 1419/3613/329 1420/3612/328 1422/3614/330 1421/3615/331 +f 1421/3615/331 1422/3614/330 1424/3616/332 1423/3617/333 +f 1423/3617/333 1424/3616/332 1426/3618/334 1425/3619/335 +f 1425/3619/335 1426/3618/334 1428/3620/407 1427/3621/337 +f 1427/3621/337 1428/3620/407 1430/3622/338 1429/3623/339 +f 1429/3623/339 1430/3622/338 1432/3624/340 1431/3625/341 +f 1431/3625/341 1432/3624/340 1434/3626/342 1433/3627/343 +f 1433/3627/343 1434/3626/342 1436/3628/344 1435/3629/345 +f 1435/3629/345 1436/3628/344 1438/3630/346 1437/3631/347 +f 1437/3632/347 1438/3633/346 1440/3634/348 1439/3635/349 +f 1439/3635/349 1440/3634/348 1442/3636/350 1441/3637/351 +f 1416/3638/324 1414/3639/323 1444/3640/352 1442/3641/350 1440/3642/348 1438/3643/346 1436/3644/344 1434/3645/342 1432/3646/340 1430/3647/338 1428/3648/407 1426/3649/334 1424/3650/332 1422/3651/330 1420/3652/328 1418/3653/326 +f 1441/3637/351 1442/3636/350 1444/3654/352 1443/3655/353 +f 1443/3655/353 1444/3654/352 1414/3607/323 1413/3606/322 +f 1413/3656/322 1415/3657/325 1417/3658/327 1419/3659/329 1421/3660/331 1423/3661/333 1425/3662/335 1427/3663/337 1429/3664/339 1431/3665/341 1433/3666/343 1435/3667/345 1437/3668/347 1439/3669/349 1441/3670/351 1443/3671/353 +f 1445/3672/240 1446/3673/287 1448/3674/301 1447/3675/408 +f 1447/3675/408 1448/3674/301 1450/3676/291 1449/3677/243 +f 1449/3678/243 1450/3679/291 1452/3680/302 1451/3681/303 +f 1451/3681/303 1452/3680/302 1454/3682/295 1453/3683/247 +f 1453/3683/247 1454/3682/295 1456/3684/409 1455/3685/304 +f 1455/3685/304 1456/3684/409 1458/3686/299 1457/3687/251 +f 1457/3687/251 1458/3686/299 1460/3688/285 1459/3689/305 +f 1459/3689/305 1460/3688/285 1462/3690/286 1461/3691/237 +f 1461/3691/237 1462/3690/286 1464/3692/410 1463/3693/411 +f 1463/3693/411 1464/3692/410 1466/3694/292 1465/3695/244 +f 1465/3696/244 1466/3697/292 1468/3698/294 1467/3699/246 +f 1467/3699/246 1468/3698/294 1470/3700/296 1469/3701/248 +f 1469/3701/248 1470/3700/296 1472/3702/412 1471/3703/413 +f 1471/3703/413 1472/3702/412 1474/3704/300 1473/3705/252 +f 1473/3705/252 1474/3704/300 1476/3706/414 1475/3707/241 +f 1475/3707/241 1476/3706/414 1446/3673/287 1445/3672/240 +f 1495/3708/4 1496/3709/4 1498/3710/28 1497/3711/28 +f 1497/3711/28 1498/3710/28 1500/3712/5 1499/3713/5 +f 1499/3713/5 1500/3712/5 1502/3714/72 1501/3715/72 +f 1501/3715/72 1502/3714/72 1504/3716/2 1503/3717/2 +f 1503/3717/2 1504/3716/2 1506/3718/29 1505/3719/29 +f 1505/3719/29 1506/3718/29 1508/3720/6 1507/3721/6 +f 1507/3721/6 1508/3720/6 1510/3722/39 1509/3723/39 +f 1509/3724/39 1510/3725/39 1496/3709/4 1495/3708/4 +f 1572/3726/415 1538/3727/287 1540/3728/288 1573/3729/416 +f 1573/3729/416 1540/3728/288 1542/3730/291 1577/3731/417 +f 1577/3731/417 1542/3730/291 1544/3732/293 1581/3733/418 +f 1581/3733/418 1544/3732/293 1546/3734/295 1585/3735/419 +f 1585/3735/419 1546/3734/295 1548/3736/409 1589/3737/420 +f 1589/3737/420 1548/3736/409 1550/3738/299 1593/3739/421 +f 1593/3739/421 1550/3738/299 1552/3740/285 1597/3741/422 +f 1597/3741/422 1552/3740/285 1554/3742/286 1601/3743/423 +f 1601/3743/423 1554/3742/286 1556/3744/290 1605/3745/424 +f 1605/3745/424 1556/3744/290 1558/3746/292 1609/3747/425 +f 1609/3747/425 1558/3746/292 1560/3748/294 1613/3749/426 +f 1613/3749/426 1560/3748/294 1562/3750/296 1617/3751/427 +f 1617/3751/427 1562/3750/296 1564/3752/298 1621/3753/428 +f 1621/3753/428 1564/3752/298 1566/3754/300 1625/3755/429 +f 1625/3755/429 1566/3754/300 1568/3756/289 1629/3757/430 +f 1567/3758/241 1632/3759/431 1569/3760/432 1537/3761/240 +f 1632/3759/431 1631/3762/433 1570/3763/434 1569/3760/432 +f 1626/3764/435 1630/3765/436 1631/3766/433 1627/3767/437 +f 1630/3768/436 1629/3769/430 1572/3726/415 1571/3770/438 +f 1565/3771/252 1628/3772/439 1632/3773/431 1567/3774/241 +f 1628/3772/439 1627/3767/437 1631/3766/433 1632/3773/431 +f 1622/3775/440 1626/3764/435 1627/3767/437 1623/3776/441 +f 1626/3764/435 1625/3755/429 1629/3757/430 1630/3765/436 +f 1563/3777/413 1624/3778/442 1628/3772/439 1565/3771/252 +f 1624/3778/442 1623/3776/441 1627/3767/437 1628/3772/439 +f 1618/3779/443 1622/3775/440 1623/3776/441 1619/3780/444 +f 1622/3775/440 1621/3753/428 1625/3755/429 1626/3764/435 +f 1561/3781/248 1620/3782/445 1624/3778/442 1563/3777/413 +f 1620/3782/445 1619/3780/444 1623/3776/441 1624/3778/442 +f 1614/3783/446 1618/3779/443 1619/3780/444 1615/3784/447 +f 1618/3779/443 1617/3751/427 1621/3753/428 1622/3775/440 +f 1559/3785/246 1616/3786/448 1620/3782/445 1561/3781/248 +f 1616/3786/448 1615/3784/447 1619/3780/444 1620/3782/445 +f 1610/3787/449 1614/3783/446 1615/3784/447 1611/3788/450 +f 1614/3783/446 1613/3749/426 1617/3751/427 1618/3779/443 +f 1557/3789/244 1612/3790/451 1616/3786/448 1559/3785/246 +f 1612/3790/451 1611/3788/450 1615/3784/447 1616/3786/448 +f 1606/3791/452 1610/3787/449 1611/3788/450 1607/3792/453 +f 1610/3787/449 1609/3747/425 1613/3749/426 1614/3783/446 +f 1555/3793/242 1608/3794/454 1612/3790/451 1557/3789/244 +f 1608/3794/454 1607/3792/453 1611/3788/450 1612/3790/451 +f 1602/3795/455 1606/3791/452 1607/3792/453 1603/3796/456 +f 1606/3791/452 1605/3745/424 1609/3747/425 1610/3787/449 +f 1553/3797/237 1604/3798/457 1608/3794/454 1555/3793/242 +f 1604/3798/457 1603/3796/456 1607/3792/453 1608/3794/454 +f 1598/3799/458 1602/3795/455 1603/3796/456 1599/3800/459 +f 1602/3795/455 1601/3743/423 1605/3745/424 1606/3791/452 +f 1551/3801/238 1600/3802/460 1604/3798/457 1553/3797/237 +f 1600/3802/460 1599/3800/459 1603/3796/456 1604/3798/457 +f 1594/3803/461 1598/3799/458 1599/3800/459 1595/3804/462 +f 1598/3799/458 1597/3741/422 1601/3743/423 1602/3795/455 +f 1549/3805/251 1596/3806/463 1600/3802/460 1551/3801/238 +f 1596/3806/463 1595/3804/462 1599/3800/459 1600/3802/460 +f 1590/3807/464 1594/3803/461 1595/3804/462 1591/3808/465 +f 1594/3803/461 1593/3739/421 1597/3741/422 1598/3799/458 +f 1547/3809/249 1592/3810/466 1596/3806/463 1549/3805/251 +f 1592/3810/466 1591/3808/465 1595/3804/462 1596/3806/463 +f 1586/3811/467 1590/3807/464 1591/3808/465 1587/3812/468 +f 1590/3807/464 1589/3737/420 1593/3739/421 1594/3803/461 +f 1545/3813/247 1588/3814/469 1592/3810/466 1547/3809/249 +f 1588/3814/469 1587/3812/468 1591/3808/465 1592/3810/466 +f 1582/3815/470 1586/3811/467 1587/3812/468 1583/3816/471 +f 1586/3811/467 1585/3735/419 1589/3737/420 1590/3807/464 +f 1543/3817/245 1584/3818/472 1588/3814/469 1545/3813/247 +f 1584/3818/472 1583/3816/471 1587/3812/468 1588/3814/469 +f 1578/3819/473 1582/3815/470 1583/3816/471 1579/3820/474 +f 1582/3815/470 1581/3733/418 1585/3735/419 1586/3811/467 +f 1541/3821/243 1580/3822/475 1584/3818/472 1543/3817/245 +f 1580/3822/475 1579/3820/474 1583/3816/471 1584/3818/472 +f 1574/3823/476 1578/3819/473 1579/3820/474 1575/3824/477 +f 1578/3819/473 1577/3731/417 1581/3733/418 1582/3815/470 +f 1539/3825/408 1576/3826/478 1580/3822/475 1541/3821/243 +f 1576/3826/478 1575/3824/477 1579/3820/474 1580/3822/475 +f 1570/3763/434 1571/3770/438 1574/3823/476 1575/3824/477 +f 1574/3823/476 1573/3729/416 1577/3731/417 1578/3819/473 +f 1537/3761/240 1569/3760/432 1576/3826/478 1539/3825/408 +f 1569/3760/432 1570/3763/434 1575/3824/477 1576/3826/478 +f 1629/3769/430 1568/3827/289 1538/3727/287 1572/3726/415 +f 1571/3770/438 1572/3726/415 1573/3729/416 1574/3823/476 +f 1630/3768/436 1571/3770/438 1570/3763/434 1631/3762/433 +f 1633/3828/240 1634/3829/287 1636/3830/288 1635/3831/408 +f 1635/3831/408 1636/3830/288 1638/3832/291 1637/3833/243 +f 1637/3833/243 1638/3832/291 1640/3834/302 1639/3835/303 +f 1639/3835/303 1640/3834/302 1642/3836/295 1641/3837/247 +f 1641/3837/247 1642/3836/295 1644/3838/409 1643/3839/304 +f 1643/3839/304 1644/3838/409 1646/3840/299 1645/3841/251 +f 1645/3841/251 1646/3840/299 1648/3842/479 1647/3843/305 +f 1647/3843/305 1648/3842/479 1650/3844/286 1649/3845/237 +f 1649/3846/237 1650/3847/286 1652/3848/410 1651/3849/242 +f 1651/3849/242 1652/3848/410 1654/3850/292 1653/3851/244 +f 1653/3851/244 1654/3850/292 1656/3852/294 1655/3853/246 +f 1655/3853/246 1656/3852/294 1658/3854/296 1657/3855/248 +f 1657/3855/248 1658/3854/296 1660/3856/412 1659/3857/250 +f 1659/3857/250 1660/3856/412 1662/3858/300 1661/3859/252 +f 1661/3859/252 1662/3858/300 1664/3860/414 1663/3861/480 +f 1663/3861/480 1664/3860/414 1634/3862/287 1633/3863/240 +f 1665/3864/240 1666/3865/287 1668/3866/301 1667/3867/239 +f 1667/3867/239 1668/3866/301 1670/3868/291 1669/3869/243 +f 1669/3869/243 1670/3868/291 1672/3870/302 1671/3871/303 +f 1671/3871/303 1672/3870/302 1674/3872/295 1673/3873/247 +f 1673/3873/247 1674/3872/295 1676/3874/409 1675/3875/304 +f 1675/3875/304 1676/3874/409 1678/3876/299 1677/3877/251 +f 1677/3877/251 1678/3876/299 1680/3878/479 1679/3879/305 +f 1679/3879/305 1680/3878/479 1682/3880/286 1681/3881/237 +f 1681/3882/237 1682/3883/286 1684/3884/410 1683/3885/411 +f 1683/3885/411 1684/3884/410 1686/3886/292 1685/3887/244 +f 1685/3887/244 1686/3886/292 1688/3888/294 1687/3889/246 +f 1687/3889/246 1688/3888/294 1690/3890/296 1689/3891/248 +f 1689/3891/248 1690/3890/296 1692/3892/412 1691/3893/413 +f 1691/3893/413 1692/3892/412 1694/3894/300 1693/3895/252 +f 1693/3895/252 1694/3894/300 1696/3896/289 1695/3897/241 +f 1695/3897/241 1696/3896/289 1666/3898/287 1665/3899/240 +f 1733/3900/5 1734/3901/316 1736/3902/317 1735/3903/315 +f 1735/3904/315 1736/3905/317 1738/3906/318 1737/3907/313 +f 1737/3907/313 1738/3906/318 1740/3908/319 1739/3909/6 +f 1739/3909/6 1740/3908/319 1742/3910/320 1741/3911/310 +f 1741/3911/310 1742/3910/320 1744/3912/321 1743/3913/308 +f 1743/3913/308 1744/3912/321 1734/3901/316 1733/3900/5 +f 1745/3914/5 1746/3915/306 1748/3916/307 1747/3917/308 +f 1747/3918/308 1748/3919/307 1750/3920/309 1749/3921/310 +f 1749/3921/310 1750/3920/309 1752/3922/311 1751/3923/6 +f 1751/3923/6 1752/3922/311 1754/3924/312 1753/3925/313 +f 1753/3925/313 1754/3924/312 1756/3926/314 1755/3927/315 +f 1755/3927/315 1756/3926/314 1746/3915/306 1745/3914/5 +f 1757/3928/5 1758/3929/306 1760/3930/307 1759/3931/308 +f 1759/3932/308 1760/3933/307 1762/3934/309 1761/3935/310 +f 1761/3935/310 1762/3934/309 1764/3936/311 1763/3937/6 +f 1763/3937/6 1764/3936/311 1766/3938/312 1765/3939/313 +f 1765/3939/313 1766/3938/312 1768/3940/314 1767/3941/315 +f 1767/3941/315 1768/3940/314 1758/3929/306 1757/3928/5 +f 1769/3942/5 1770/3943/306 1772/3944/307 1771/3945/308 +f 1771/3946/308 1772/3947/307 1774/3948/309 1773/3949/310 +f 1773/3949/310 1774/3948/309 1776/3950/311 1775/3951/6 +f 1775/3951/6 1776/3950/311 1778/3952/312 1777/3953/313 +f 1777/3953/313 1778/3952/312 1780/3954/314 1779/3955/315 +f 1779/3955/315 1780/3954/314 1770/3943/306 1769/3942/5 +f 1781/3956/5 1782/3957/306 1784/3958/307 1783/3959/308 +f 1783/3960/308 1784/3961/307 1786/3962/309 1785/3963/310 +f 1785/3963/310 1786/3962/309 1788/3964/311 1787/3965/6 +f 1787/3965/6 1788/3964/311 1790/3966/312 1789/3967/313 +f 1789/3967/313 1790/3966/312 1792/3968/314 1791/3969/315 +f 1791/3969/315 1792/3968/314 1782/3957/306 1781/3956/5 +f 1793/3970/5 1794/3971/316 1796/3972/317 1795/3973/315 +f 1795/3974/315 1796/3975/317 1798/3976/318 1797/3977/313 +f 1797/3977/313 1798/3976/318 1800/3978/319 1799/3979/6 +f 1799/3979/6 1800/3978/319 1802/3980/320 1801/3981/310 +f 1801/3981/310 1802/3980/320 1804/3982/321 1803/3983/308 +f 1803/3983/308 1804/3982/321 1794/3971/316 1793/3970/5 +f 1805/3984/5 1806/3985/316 1808/3986/317 1807/3987/315 +f 1807/3988/315 1808/3989/317 1810/3990/318 1809/3991/313 +f 1809/3991/313 1810/3990/318 1812/3992/319 1811/3993/6 +f 1811/3993/6 1812/3992/319 1814/3994/320 1813/3995/310 +f 1813/3995/310 1814/3994/320 1816/3996/321 1815/3997/308 +f 1815/3997/308 1816/3996/321 1806/3985/316 1805/3984/5 +f 1817/3998/5 1818/3999/316 1820/4000/317 1819/4001/315 +f 1819/4002/315 1820/4003/317 1822/4004/318 1821/4005/313 +f 1821/4005/313 1822/4004/318 1824/4006/319 1823/4007/6 +f 1823/4007/6 1824/4006/319 1826/4008/320 1825/4009/310 +f 1825/4009/310 1826/4008/320 1828/4010/321 1827/4011/308 +f 1827/4011/308 1828/4010/321 1818/3999/316 1817/3998/5 +f 1829/4012/5 1830/4013/316 1832/4014/317 1831/4015/315 +f 1831/4016/315 1832/4017/317 1834/4018/318 1833/4019/313 +f 1833/4019/313 1834/4018/318 1836/4020/319 1835/4021/6 +f 1835/4021/6 1836/4020/319 1838/4022/320 1837/4023/310 +f 1837/4023/310 1838/4022/320 1840/4024/321 1839/4025/308 +f 1839/4025/308 1840/4024/321 1830/4013/316 1829/4012/5 +f 1841/4026/5 1842/4027/306 1844/4028/307 1843/4029/308 +f 1843/4030/308 1844/4031/307 1846/4032/309 1845/4033/310 +f 1845/4033/310 1846/4032/309 1848/4034/311 1847/4035/6 +f 1847/4035/6 1848/4034/311 1850/4036/312 1849/4037/313 +f 1849/4037/313 1850/4036/312 1852/4038/314 1851/4039/315 +f 1851/4039/315 1852/4038/314 1842/4027/306 1841/4026/5 +f 1853/4040/5 1854/4041/306 1856/4042/307 1855/4043/308 +f 1855/4044/308 1856/4045/307 1858/4046/309 1857/4047/310 +f 1857/4047/310 1858/4046/309 1860/4048/311 1859/4049/6 +f 1859/4049/6 1860/4048/311 1862/4050/312 1861/4051/313 +f 1861/4051/313 1862/4050/312 1864/4052/314 1863/4053/315 +f 1863/4053/315 1864/4052/314 1854/4041/306 1853/4040/5 +f 1865/4054/5 1866/4055/306 1868/4056/307 1867/4057/308 +f 1867/4058/308 1868/4059/307 1870/4060/309 1869/4061/310 +f 1869/4061/310 1870/4060/309 1872/4062/311 1871/4063/6 +f 1871/4063/6 1872/4062/311 1874/4064/312 1873/4065/313 +f 1873/4065/313 1874/4064/312 1876/4066/314 1875/4067/315 +f 1875/4067/315 1876/4066/314 1866/4055/306 1865/4054/5 +f 1877/4068/5 1878/4069/306 1880/4070/307 1879/4071/308 +f 1879/4072/308 1880/4073/307 1882/4074/309 1881/4075/310 +f 1881/4075/310 1882/4074/309 1884/4076/311 1883/4077/6 +f 1883/4077/6 1884/4076/311 1886/4078/312 1885/4079/313 +f 1885/4079/313 1886/4078/312 1888/4080/314 1887/4081/315 +f 1887/4081/315 1888/4080/314 1878/4069/306 1877/4068/5 +f 1889/4082/5 1890/4083/316 1892/4084/317 1891/4085/315 +f 1891/4086/315 1892/4087/317 1894/4088/318 1893/4089/313 +f 1893/4089/313 1894/4088/318 1896/4090/319 1895/4091/6 +f 1895/4091/6 1896/4090/319 1898/4092/320 1897/4093/310 +f 1897/4093/310 1898/4092/320 1900/4094/321 1899/4095/308 +f 1899/4095/308 1900/4094/321 1890/4083/316 1889/4082/5 +f 1901/4096/5 1902/4097/316 1904/4098/317 1903/4099/315 +f 1903/4100/315 1904/4101/317 1906/4102/318 1905/4103/313 +f 1905/4103/313 1906/4102/318 1908/4104/319 1907/4105/6 +f 1907/4105/6 1908/4104/319 1910/4106/320 1909/4107/310 +f 1909/4107/310 1910/4106/320 1912/4108/321 1911/4109/308 +f 1911/4109/308 1912/4108/321 1902/4097/316 1901/4096/5 +f 1913/4110/5 1914/4111/316 1916/4112/317 1915/4113/315 +f 1915/4114/315 1916/4115/317 1918/4116/318 1917/4117/313 +f 1917/4117/313 1918/4116/318 1920/4118/319 1919/4119/6 +f 1919/4119/6 1920/4118/319 1922/4120/320 1921/4121/310 +f 1921/4121/310 1922/4120/320 1924/4122/321 1923/4123/308 +f 1923/4123/308 1924/4122/321 1914/4111/316 1913/4110/5 +f 1925/4124/5 1926/4125/481 1928/4126/482 1927/4127/483 +f 1927/4128/483 1928/4129/482 1930/4130/484 1929/4131/485 +f 1929/4131/485 1930/4130/484 1932/4132/486 1931/4133/6 +f 1931/4133/6 1932/4132/486 1934/4134/487 1933/4135/488 +f 1933/4135/488 1934/4134/487 1936/4136/489 1935/4137/490 +f 1935/4137/490 1936/4136/489 1926/4125/481 1925/4124/5 +f 1937/4138/5 1938/4139/481 1940/4140/482 1939/4141/483 +f 1939/4142/483 1940/4143/482 1942/4144/484 1941/4145/485 +f 1941/4145/485 1942/4144/484 1944/4146/486 1943/4147/6 +f 1943/4147/6 1944/4146/486 1946/4148/487 1945/4149/488 +f 1945/4149/488 1946/4148/487 1948/4150/489 1947/4151/490 +f 1947/4151/490 1948/4150/489 1938/4139/481 1937/4138/5 +f 1949/4152/5 1950/4153/491 1952/4154/492 1951/4155/490 +f 1951/4156/490 1952/4157/492 1954/4158/493 1953/4159/488 +f 1953/4159/488 1954/4158/493 1956/4160/494 1955/4161/6 +f 1955/4161/6 1956/4160/494 1958/4162/495 1957/4163/485 +f 1957/4163/485 1958/4162/495 1960/4164/496 1959/4165/483 +f 1959/4165/483 1960/4164/496 1950/4153/491 1949/4152/5 +f 1961/4166/5 1962/4167/491 1964/4168/492 1963/4169/490 +f 1963/4170/490 1964/4171/492 1966/4172/493 1965/4173/488 +f 1965/4173/488 1966/4172/493 1968/4174/494 1967/4175/6 +f 1967/4175/6 1968/4174/494 1970/4176/495 1969/4177/485 +f 1969/4177/485 1970/4176/495 1972/4178/496 1971/4179/483 +f 1971/4179/483 1972/4178/496 1962/4167/491 1961/4166/5 +f 1973/4180/491 1974/4181/481 1976/4182/482 1975/4183/496 +f 1975/4184/496 1976/4185/482 1978/4186/484 1977/4187/495 +f 1977/4187/495 1978/4186/484 1980/4188/486 1979/4189/494 +f 1979/4189/494 1980/4188/486 1982/4190/487 1981/4191/493 +f 1981/4191/493 1982/4190/487 1983/4192/489 1984/4193/492 +f 1984/4193/492 1983/4192/489 1974/4181/481 1973/4180/491 +f 1985/4194/491 1986/4195/481 1988/4196/482 1987/4197/496 +f 1987/4198/496 1988/4199/482 1990/4200/484 1989/4201/495 +f 1989/4201/495 1990/4200/484 1992/4202/486 1991/4203/494 +f 1991/4203/494 1992/4202/486 1994/4204/487 1993/4205/493 +f 1993/4205/493 1994/4204/487 1995/4206/489 1996/4207/492 +f 1996/4207/492 1995/4206/489 1986/4195/481 1985/4194/491 +f 1997/4208/491 1998/4209/481 2000/4210/482 1999/4211/496 +f 1999/4212/496 2000/4213/482 2002/4214/484 2001/4215/495 +f 2001/4215/495 2002/4214/484 2004/4216/486 2003/4217/494 +f 2003/4217/494 2004/4216/486 2006/4218/487 2005/4219/493 +f 2005/4219/493 2006/4218/487 2007/4220/489 2008/4221/492 +f 2008/4221/492 2007/4220/489 1998/4209/481 1997/4208/491 +f 2009/4222/306 2010/4223/316 2012/4224/317 2011/4225/314 +f 2011/4226/314 2012/4227/317 2014/4228/318 2013/4229/312 +f 2013/4229/312 2014/4228/318 2016/4230/319 2015/4231/311 +f 2015/4231/311 2016/4230/319 2018/4232/320 2017/4233/309 +f 2017/4233/309 2018/4232/320 2019/4234/321 2020/4235/307 +f 2020/4235/307 2019/4234/321 2010/4223/316 2009/4222/306 +f 2021/4236/5 2022/4237/481 2024/4238/482 2023/4239/483 +f 2023/4240/483 2024/4241/482 2026/4242/484 2025/4243/485 +f 2025/4243/485 2026/4242/484 2028/4244/486 2027/4245/6 +f 2027/4245/6 2028/4244/486 2030/4246/487 2029/4247/488 +f 2029/4247/488 2030/4246/487 2032/4248/489 2031/4249/490 +f 2031/4249/490 2032/4248/489 2022/4237/481 2021/4236/5 +f 2033/4250/5 2034/4251/481 2036/4252/482 2035/4253/483 +f 2035/4254/483 2036/4255/482 2038/4256/484 2037/4257/485 +f 2037/4257/485 2038/4256/484 2040/4258/486 2039/4259/6 +f 2039/4259/6 2040/4258/486 2042/4260/487 2041/4261/488 +f 2041/4261/488 2042/4260/487 2044/4262/489 2043/4263/490 +f 2043/4263/490 2044/4262/489 2034/4251/481 2033/4250/5 +f 2045/4264/5 2046/4265/491 2048/4266/492 2047/4267/490 +f 2047/4268/490 2048/4269/492 2050/4270/493 2049/4271/488 +f 2049/4271/488 2050/4270/493 2052/4272/494 2051/4273/6 +f 2051/4273/6 2052/4272/494 2054/4274/495 2053/4275/485 +f 2053/4275/485 2054/4274/495 2056/4276/496 2055/4277/483 +f 2055/4277/483 2056/4276/496 2046/4265/491 2045/4264/5 +f 2057/4278/5 2058/4279/491 2060/4280/492 2059/4281/490 +f 2059/4282/490 2060/4283/492 2062/4284/493 2061/4285/488 +f 2061/4285/488 2062/4284/493 2064/4286/494 2063/4287/6 +f 2063/4287/6 2064/4286/494 2066/4288/495 2065/4289/485 +f 2065/4289/485 2066/4288/495 2068/4290/496 2067/4291/483 +f 2067/4291/483 2068/4290/496 2058/4279/491 2057/4278/5 +f 2069/4292/306 2070/4293/316 2072/4294/317 2071/4295/314 +f 2071/4296/314 2072/4297/317 2074/4298/318 2073/4299/312 +f 2073/4299/312 2074/4298/318 2076/4300/319 2075/4301/311 +f 2075/4301/311 2076/4300/319 2078/4302/320 2077/4303/309 +f 2077/4303/309 2078/4302/320 2079/4304/321 2080/4305/307 +f 2080/4305/307 2079/4304/321 2070/4293/316 2069/4292/306 +f 2081/4306/306 2082/4307/316 2084/4308/317 2083/4309/314 +f 2083/4310/314 2084/4311/317 2086/4312/318 2085/4313/312 +f 2085/4313/312 2086/4312/318 2088/4314/319 2087/4315/311 +f 2087/4315/311 2088/4314/319 2090/4316/320 2089/4317/309 +f 2089/4317/309 2090/4316/320 2091/4318/321 2092/4319/307 +f 2092/4319/307 2091/4318/321 2082/4307/316 2081/4306/306 +f 2093/4320/306 2094/4321/316 2096/4322/317 2095/4323/314 +f 2095/4324/314 2096/4325/317 2098/4326/318 2097/4327/312 +f 2097/4327/312 2098/4326/318 2100/4328/319 2099/4329/311 +f 2099/4329/311 2100/4328/319 2102/4330/320 2101/4331/309 +f 2101/4331/309 2102/4330/320 2103/4332/321 2104/4333/307 +f 2104/4333/307 2103/4332/321 2094/4321/316 2093/4320/306 +f 2125/4334/491 2126/4335/481 2128/4336/482 2127/4337/496 +f 2127/4338/496 2128/4339/482 2130/4340/484 2129/4341/495 +f 2129/4341/495 2130/4340/484 2132/4342/486 2131/4343/494 +f 2131/4343/494 2132/4342/486 2134/4344/487 2133/4345/493 +f 2133/4345/493 2134/4344/487 2135/4346/489 2136/4347/492 +f 2136/4347/492 2135/4346/489 2126/4335/481 2125/4334/491 +f 2137/4348/338 2138/4349/339 2140/4350/337 2139/4351/336 +f 2139/4351/336 2140/4350/337 2142/4352/335 2141/4353/334 +f 2141/4353/334 2142/4352/335 2144/4354/333 2143/4355/332 +f 2143/4355/332 2144/4354/333 2146/4356/331 2145/4357/330 +f 2145/4357/330 2146/4356/331 2148/4358/497 2147/4359/328 +f 2147/4359/328 2148/4358/497 2150/4360/327 2149/4361/326 +f 2149/4361/326 2150/4360/327 2152/4362/325 2151/4363/498 +f 2151/4363/498 2152/4362/325 2154/4364/322 2153/4365/323 +f 2153/4366/323 2154/4367/322 2156/4368/499 2155/4369/500 +f 2155/4369/500 2156/4368/499 2158/4370/351 2157/4371/350 +f 2157/4371/350 2158/4370/351 2160/4372/501 2159/4373/502 +f 2159/4373/502 2160/4372/501 2162/4374/347 2161/4375/346 +f 2161/4375/346 2162/4374/347 2164/4376/503 2163/4377/344 +f 2163/4377/344 2164/4376/503 2166/4378/343 2165/4379/342 +f 2165/4379/342 2166/4378/343 2168/4380/341 2167/4381/504 +f 2167/4381/504 2168/4380/341 2138/4382/339 2137/4383/338 +f 2169/4384/338 2170/4385/339 2172/4386/337 2171/4387/407 +f 2171/4387/407 2172/4386/337 2174/4388/335 2173/4389/334 +f 2173/4389/334 2174/4388/335 2176/4390/505 2175/4391/506 +f 2175/4391/506 2176/4390/505 2178/4392/331 2177/4393/330 +f 2177/4393/330 2178/4392/331 2180/4394/329 2179/4395/507 +f 2179/4395/507 2180/4394/329 2182/4396/327 2181/4397/326 +f 2181/4397/326 2182/4396/327 2184/4398/508 2183/4399/324 +f 2183/4399/324 2184/4398/508 2186/4400/322 2185/4401/323 +f 2185/4402/323 2186/4403/322 2188/4404/353 2187/4405/352 +f 2187/4405/352 2188/4404/353 2190/4406/351 2189/4407/350 +f 2189/4407/350 2190/4406/351 2192/4408/501 2191/4409/502 +f 2191/4409/502 2192/4408/501 2194/4410/347 2193/4411/346 +f 2193/4411/346 2194/4410/347 2196/4412/345 2195/4413/344 +f 2195/4413/344 2196/4412/345 2198/4414/343 2197/4415/342 +f 2197/4415/342 2198/4414/343 2200/4416/341 2199/4417/504 +f 2199/4417/504 2200/4416/341 2170/4418/339 2169/4419/338 +f 2207/4420/4 2208/4421/4 2210/4422/44 2209/4423/44 +f 2209/4423/44 2210/4422/44 2212/4424/1 2211/4425/1 +f 2211/4425/1 2212/4424/1 2214/4426/46 2213/4427/46 +f 2213/4427/46 2214/4426/46 2216/4428/2 2215/4429/2 +f 2215/4429/2 2216/4428/2 2218/4430/47 2217/4431/47 +f 2217/4431/47 2218/4430/47 2220/4432/3 2219/4433/3 +f 2219/4433/3 2220/4432/3 2222/4434/45 2221/4435/45 +f 2221/4436/45 2222/4437/45 2208/4421/4 2207/4420/4 +f 2238/4438/77 2237/4439/134 2235/4440/135 2236/4441/44 +f 2240/4442/4 2239/4443/133 2237/4439/134 2238/4438/77 +f 2242/4444/84 2241/4445/132 2239/4443/133 2240/4442/4 +f 2244/4446/45 2243/4447/131 2241/4448/132 2242/4449/84 +f 2246/4450/83 2245/4451/509 2243/4447/131 2244/4446/45 +f 2248/4452/3 2247/4453/129 2245/4451/509 2246/4450/83 +f 2250/4454/82 2249/4455/128 2247/4453/129 2248/4452/3 +f 2252/4456/47 2251/4457/127 2249/4455/128 2250/4454/82 +f 2254/4458/81 2253/4459/510 2251/4457/127 2252/4456/47 +f 2256/4460/2 2255/4461/125 2253/4459/510 2254/4458/81 +f 2258/4462/80 2257/4463/124 2255/4461/125 2256/4460/2 +f 2260/4464/46 2259/4465/123 2257/4466/124 2258/4467/80 +f 2262/4468/79 2261/4469/122 2259/4465/123 2260/4464/46 +f 2264/4470/1 2263/4471/121 2261/4469/122 2262/4468/79 +f 2234/4472/78 2233/4473/136 2263/4471/121 2264/4470/1 +f 2236/4441/44 2235/4440/135 2233/4473/136 2234/4472/78 +f 2265/4474/511 2266/4475/133 2268/4476/512 2267/4477/513 +f 2267/4477/513 2268/4476/512 2270/4478/135 2269/4479/514 +f 2269/4479/514 2270/4478/135 2272/4480/136 2271/4481/515 +f 2271/4481/515 2272/4480/136 2274/4482/121 2273/4483/516 +f 2273/4483/516 2274/4482/121 2276/4484/122 2275/4485/517 +f 2275/4485/517 2276/4484/122 2278/4486/123 2277/4487/518 +f 2277/4487/518 2278/4486/123 2280/4488/124 2279/4489/519 +f 2279/4489/519 2280/4488/124 2282/4490/125 2281/4491/520 +f 2281/4491/520 2282/4490/125 2284/4492/126 2283/4493/521 +f 2283/4493/521 2284/4492/126 2286/4494/127 2285/4495/522 +f 2285/4495/522 2286/4494/127 2288/4496/523 2287/4497/524 +f 2287/4497/524 2288/4496/523 2290/4498/129 2289/4499/525 +f 2289/4499/525 2290/4498/129 2292/4500/130 2291/4501/526 +f 2291/4501/526 2292/4500/130 2294/4502/131 2293/4503/527 +f 2293/4503/527 2294/4502/131 2296/4504/528 2295/4505/529 +f 2295/4506/529 2296/4507/528 2266/4475/133 2265/4474/511 +f 2303/4508/6 2304/4509/6 2306/4510/8 2305/4511/8 +f 2305/4511/8 2306/4510/8 2308/4512/1 2307/4513/1 +f 2307/4513/1 2308/4512/1 2310/4514/9 2309/4515/9 +f 2309/4515/9 2310/4514/9 2312/4516/5 2311/4517/5 +f 2311/4517/5 2312/4516/5 2314/4518/10 2313/4519/10 +f 2313/4519/10 2314/4518/10 2316/4520/3 2315/4521/3 +f 2315/4521/3 2316/4520/3 2318/4522/7 2317/4523/7 +f 2317/4524/7 2318/4525/7 2304/4509/6 2303/4508/6 +f 2364/4526/530 2330/4527/323 2332/4528/324 2365/4529/531 +f 2365/4529/531 2332/4528/324 2334/4530/326 2369/4531/532 +f 2369/4531/532 2334/4530/326 2336/4532/507 2373/4533/533 +f 2373/4533/533 2336/4532/507 2338/4534/330 2377/4535/534 +f 2377/4535/534 2338/4534/330 2340/4536/506 2381/4537/535 +f 2381/4537/535 2340/4536/506 2342/4538/334 2385/4539/536 +f 2385/4539/536 2342/4538/334 2344/4540/407 2389/4541/537 +f 2389/4541/537 2344/4540/407 2346/4542/338 2393/4543/538 +f 2393/4543/538 2346/4542/338 2348/4544/504 2397/4545/539 +f 2397/4545/539 2348/4544/504 2350/4546/342 2401/4547/540 +f 2401/4547/540 2350/4546/342 2352/4548/344 2405/4549/541 +f 2405/4549/541 2352/4548/344 2354/4550/346 2409/4551/542 +f 2409/4551/542 2354/4550/346 2356/4552/502 2413/4553/543 +f 2413/4553/543 2356/4552/502 2358/4554/350 2417/4555/544 +f 2417/4555/544 2358/4554/350 2360/4556/352 2421/4557/545 +f 2359/4558/353 2424/4559/546 2361/4560/547 2329/4561/322 +f 2424/4559/546 2423/4562/548 2362/4563/549 2361/4560/547 +f 2418/4564/550 2422/4565/551 2423/4566/548 2419/4567/552 +f 2422/4568/551 2421/4569/545 2364/4526/530 2363/4570/553 +f 2357/4571/351 2420/4572/554 2424/4573/546 2359/4574/353 +f 2420/4572/554 2419/4567/552 2423/4566/548 2424/4573/546 +f 2414/4575/555 2418/4564/550 2419/4567/552 2415/4576/556 +f 2418/4564/550 2417/4555/544 2421/4557/545 2422/4565/551 +f 2355/4577/501 2416/4578/557 2420/4572/554 2357/4571/351 +f 2416/4578/557 2415/4576/556 2419/4567/552 2420/4572/554 +f 2410/4579/558 2414/4575/555 2415/4576/556 2411/4580/559 +f 2414/4575/555 2413/4553/543 2417/4555/544 2418/4564/550 +f 2353/4581/347 2412/4582/560 2416/4578/557 2355/4577/501 +f 2412/4582/560 2411/4580/559 2415/4576/556 2416/4578/557 +f 2406/4583/561 2410/4579/558 2411/4580/559 2407/4584/562 +f 2410/4579/558 2409/4551/542 2413/4553/543 2414/4575/555 +f 2351/4585/345 2408/4586/563 2412/4582/560 2353/4581/347 +f 2408/4586/563 2407/4584/562 2411/4580/559 2412/4582/560 +f 2402/4587/564 2406/4583/561 2407/4584/562 2403/4588/565 +f 2406/4583/561 2405/4549/541 2409/4551/542 2410/4579/558 +f 2349/4589/343 2404/4590/566 2408/4586/563 2351/4585/345 +f 2404/4590/566 2403/4588/565 2407/4584/562 2408/4586/563 +f 2398/4591/567 2402/4587/564 2403/4588/565 2399/4592/568 +f 2402/4587/564 2401/4547/540 2405/4549/541 2406/4583/561 +f 2347/4593/341 2400/4594/569 2404/4590/566 2349/4589/343 +f 2400/4594/569 2399/4592/568 2403/4588/565 2404/4590/566 +f 2394/4595/570 2398/4591/567 2399/4592/568 2395/4596/571 +f 2398/4591/567 2397/4545/539 2401/4547/540 2402/4587/564 +f 2345/4597/339 2396/4598/572 2400/4594/569 2347/4593/341 +f 2396/4598/572 2395/4596/571 2399/4592/568 2400/4594/569 +f 2390/4599/573 2394/4595/570 2395/4596/571 2391/4600/574 +f 2394/4595/570 2393/4543/538 2397/4545/539 2398/4591/567 +f 2343/4601/337 2392/4602/575 2396/4598/572 2345/4597/339 +f 2392/4602/575 2391/4600/574 2395/4596/571 2396/4598/572 +f 2386/4603/576 2390/4599/573 2391/4600/574 2387/4604/577 +f 2390/4599/573 2389/4541/537 2393/4543/538 2394/4595/570 +f 2341/4605/335 2388/4606/578 2392/4602/575 2343/4601/337 +f 2388/4606/578 2387/4604/577 2391/4600/574 2392/4602/575 +f 2382/4607/579 2386/4603/576 2387/4604/577 2383/4608/580 +f 2386/4603/576 2385/4539/536 2389/4541/537 2390/4599/573 +f 2339/4609/505 2384/4610/581 2388/4606/578 2341/4605/335 +f 2384/4610/581 2383/4608/580 2387/4604/577 2388/4606/578 +f 2378/4611/582 2382/4607/579 2383/4608/580 2379/4612/583 +f 2382/4607/579 2381/4537/535 2385/4539/536 2386/4603/576 +f 2337/4613/331 2380/4614/584 2384/4610/581 2339/4609/505 +f 2380/4614/584 2379/4612/583 2383/4608/580 2384/4610/581 +f 2374/4615/585 2378/4611/582 2379/4612/583 2375/4616/586 +f 2378/4611/582 2377/4535/534 2381/4537/535 2382/4607/579 +f 2335/4617/329 2376/4618/587 2380/4614/584 2337/4613/331 +f 2376/4618/587 2375/4616/586 2379/4612/583 2380/4614/584 +f 2370/4619/588 2374/4615/585 2375/4616/586 2371/4620/589 +f 2374/4615/585 2373/4533/533 2377/4535/534 2378/4611/582 +f 2333/4621/327 2372/4622/590 2376/4618/587 2335/4617/329 +f 2372/4622/590 2371/4620/589 2375/4616/586 2376/4618/587 +f 2366/4623/591 2370/4619/588 2371/4620/589 2367/4624/592 +f 2370/4619/588 2369/4531/532 2373/4533/533 2374/4615/585 +f 2331/4625/325 2368/4626/593 2372/4622/590 2333/4621/327 +f 2368/4626/593 2367/4624/592 2371/4620/589 2372/4622/590 +f 2362/4563/549 2363/4570/553 2366/4623/591 2367/4624/592 +f 2366/4623/591 2365/4529/531 2369/4531/532 2370/4619/588 +f 2329/4561/322 2361/4560/547 2368/4626/593 2331/4625/325 +f 2361/4560/547 2362/4563/549 2367/4624/592 2368/4626/593 +f 2421/4569/545 2360/4627/352 2330/4527/323 2364/4526/530 +f 2363/4570/553 2364/4526/530 2365/4529/531 2366/4623/591 +f 2422/4568/551 2363/4570/553 2362/4563/549 2423/4562/548 +f 2431/4628/4 2432/4629/4 2434/4630/44 2433/4631/44 +f 2433/4631/44 2434/4630/44 2436/4632/1 2435/4633/1 +f 2435/4633/1 2436/4632/1 2438/4634/46 2437/4635/46 +f 2437/4635/46 2438/4634/46 2440/4636/2 2439/4637/2 +f 2439/4637/2 2440/4636/2 2442/4638/47 2441/4639/47 +f 2441/4639/47 2442/4638/47 2444/4640/3 2443/4641/3 +f 2443/4641/3 2444/4640/3 2446/4642/45 2445/4643/45 +f 2445/4644/45 2446/4645/45 2432/4629/4 2431/4628/4 +f 2462/4646/77 2461/4647/134 2459/4648/135 2460/4649/44 +f 2464/4650/4 2463/4651/133 2461/4647/134 2462/4646/77 +f 2466/4652/84 2465/4653/132 2463/4651/133 2464/4650/4 +f 2468/4654/45 2467/4655/131 2465/4656/132 2466/4657/84 +f 2470/4658/83 2469/4659/509 2467/4655/131 2468/4654/45 +f 2472/4660/3 2471/4661/129 2469/4659/509 2470/4658/83 +f 2474/4662/82 2473/4663/128 2471/4661/129 2472/4660/3 +f 2476/4664/47 2475/4665/127 2473/4663/128 2474/4662/82 +f 2478/4666/81 2477/4667/510 2475/4665/127 2476/4664/47 +f 2480/4668/2 2479/4669/125 2477/4667/510 2478/4666/81 +f 2482/4670/80 2481/4671/124 2479/4669/125 2480/4668/2 +f 2484/4672/46 2483/4673/123 2481/4674/124 2482/4675/80 +f 2486/4676/79 2485/4677/122 2483/4673/123 2484/4672/46 +f 2488/4678/1 2487/4679/121 2485/4677/122 2486/4676/79 +f 2458/4680/78 2457/4681/136 2487/4679/121 2488/4678/1 +f 2460/4649/44 2459/4648/135 2457/4681/136 2458/4680/78 +f 2489/4682/511 2490/4683/133 2492/4684/512 2491/4685/513 +f 2491/4685/513 2492/4684/512 2494/4686/135 2493/4687/514 +f 2493/4687/514 2494/4686/135 2496/4688/136 2495/4689/515 +f 2495/4689/515 2496/4688/136 2498/4690/121 2497/4691/516 +f 2497/4691/516 2498/4690/121 2500/4692/122 2499/4693/517 +f 2499/4693/517 2500/4692/122 2502/4694/123 2501/4695/518 +f 2501/4695/518 2502/4694/123 2504/4696/124 2503/4697/519 +f 2503/4697/519 2504/4696/124 2506/4698/125 2505/4699/520 +f 2505/4699/520 2506/4698/125 2508/4700/126 2507/4701/521 +f 2507/4701/521 2508/4700/126 2510/4702/127 2509/4703/522 +f 2509/4703/522 2510/4702/127 2512/4704/523 2511/4705/524 +f 2511/4705/524 2512/4704/523 2514/4706/129 2513/4707/525 +f 2513/4707/525 2514/4706/129 2516/4708/130 2515/4709/526 +f 2515/4709/526 2516/4708/130 2518/4710/131 2517/4711/527 +f 2517/4711/527 2518/4710/131 2520/4712/528 2519/4713/529 +f 2519/4714/529 2520/4715/528 2490/4683/133 2489/4682/511 +o Cylinder.001 +v -0.332625 -0.043982 0.106628 +v -0.332625 0.038775 0.106627 +v -0.330588 -0.043982 0.085948 +v -0.330588 0.038775 0.085948 +v -0.324556 -0.043982 0.066063 +v -0.324556 0.038775 0.066063 +v -0.314761 -0.043982 0.047737 +v -0.314761 0.038775 0.047737 +v -0.301579 -0.043982 0.031674 +v -0.301579 0.038775 0.031674 +v -0.285516 -0.043982 0.018492 +v -0.285516 0.038775 0.018492 +v -0.267190 -0.043982 0.008696 +v -0.267190 0.038775 0.008696 +v -0.247305 -0.043982 0.002664 +v -0.247305 0.038775 0.002664 +v -0.226625 -0.043982 0.000628 +v -0.226625 0.038775 0.000627 +v -0.205946 -0.043982 0.002664 +v -0.205946 0.038775 0.002664 +v -0.186061 -0.043982 0.008696 +v -0.186061 0.038775 0.008696 +v -0.167735 -0.043982 0.018492 +v -0.167735 0.038775 0.018492 +v -0.151672 -0.043982 0.031674 +v -0.151672 0.038775 0.031674 +v -0.138489 -0.043982 0.047737 +v -0.138489 0.038775 0.047737 +v -0.128694 -0.043982 0.066063 +v -0.128694 0.038775 0.066063 +v -0.122662 -0.043982 0.085948 +v -0.122662 0.038775 0.085948 +v -0.120625 -0.043982 0.106628 +v -0.120625 0.038775 0.106627 +v -0.122662 -0.043982 0.127307 +v -0.122662 0.038775 0.127307 +v -0.128694 -0.043982 0.147192 +v -0.128694 0.038775 0.147192 +v -0.138489 -0.043981 0.165518 +v -0.138489 0.038775 0.165518 +v -0.151672 -0.043981 0.181581 +v -0.151672 0.038775 0.181581 +v -0.167735 -0.043981 0.194764 +v -0.167735 0.038776 0.194763 +v -0.186061 -0.043981 0.204559 +v -0.186061 0.038776 0.204559 +v -0.205946 -0.043981 0.210591 +v -0.205946 0.038776 0.210591 +v -0.226625 -0.043981 0.212628 +v -0.226625 0.038776 0.212628 +v -0.247305 -0.043981 0.210591 +v -0.247305 0.038776 0.210591 +v -0.267190 -0.043981 0.204559 +v -0.267190 0.038776 0.204559 +v -0.285516 -0.043981 0.194763 +v -0.285516 0.038776 0.194763 +v -0.301579 -0.043981 0.181581 +v -0.301579 0.038775 0.181581 +v -0.314761 -0.043981 0.165518 +v -0.314761 0.038775 0.165518 +v -0.324557 -0.043982 0.147192 +v -0.324557 0.038775 0.147192 +v -0.330588 -0.043982 0.127307 +v -0.330589 0.038775 0.127307 +v -0.024972 0.002289 -0.120355 +v -0.026381 0.000936 -0.121070 +v -0.040442 0.000936 -0.079054 +v -0.133555 0.000937 0.147355 +v -0.038926 0.002289 -0.078548 +v -0.132148 0.002290 0.147284 +v -0.036782 0.002289 -0.077832 +v -0.130159 0.002290 0.147183 +v -0.035265 0.000936 -0.077325 +v -0.128752 0.000937 0.147111 +v -0.035265 -0.000977 -0.077325 +v -0.128752 -0.000976 0.147111 +v -0.036782 -0.002330 -0.077832 +v -0.130159 -0.002329 0.147183 +v -0.038926 -0.002330 -0.078548 +v -0.132148 -0.002329 0.147284 +v -0.040442 -0.000977 -0.079054 +v -0.133555 -0.000976 0.147355 +v -0.022978 0.002289 -0.119345 +v -0.021569 0.000936 -0.118631 +v -0.021569 -0.000977 -0.118631 +v -0.022978 -0.002330 -0.119345 +v -0.024972 -0.002330 -0.120355 +v -0.026381 -0.000977 -0.121070 +v -0.012480 -0.000977 -0.171509 +v -0.012480 0.000936 -0.171509 +v -0.011038 -0.002330 -0.170950 +v -0.008998 -0.002330 -0.170160 +v -0.007556 -0.000977 -0.169601 +v -0.007556 0.000936 -0.169601 +v -0.008998 0.002289 -0.170160 +v -0.011038 0.002289 -0.170950 +v -0.003756 -0.000978 -0.218789 +v -0.003756 0.000936 -0.218788 +v -0.002280 -0.002331 -0.218451 +v -0.000192 -0.002331 -0.217973 +v 0.001284 -0.000978 -0.217635 +v 0.001284 0.000936 -0.217635 +v -0.000192 0.002289 -0.217973 +v -0.002280 0.002289 -0.218451 +v -0.001686 -0.001256 -0.263449 +v -0.001686 0.001214 -0.263449 +v -0.000032 -0.003003 -0.263449 +v 0.002309 -0.003003 -0.263449 +v 0.003963 -0.001256 -0.263449 +v 0.003963 0.001214 -0.263449 +v 0.002309 0.002961 -0.263449 +v -0.000032 0.002961 -0.263449 +vt 0.000000 0.500000 +vt 1.000000 0.500000 +vt 1.000000 0.562500 +vt 0.000000 0.562500 +vt 1.000000 0.625000 +vt 0.000000 0.625000 +vt 1.000000 0.687500 +vt 0.000000 0.687500 +vt 1.000000 0.750000 +vt 0.000000 0.750000 +vt 1.000000 0.812500 +vt 0.000000 0.812500 +vt 1.000000 0.875000 +vt 0.000000 0.875000 +vt 1.000000 0.937500 +vt 0.000000 0.937500 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.062500 +vt 0.000000 0.062500 +vt 1.000000 0.125000 +vt 0.000000 0.125000 +vt 1.000000 0.187500 +vt 0.000000 0.187500 +vt 1.000000 0.250000 +vt 0.000000 0.250000 +vt 1.000000 0.312500 +vt 0.000000 0.312500 +vt 1.000000 0.375000 +vt 0.000000 0.375000 +vt 1.000000 0.437500 +vt 0.000000 0.437500 +vt 1.000000 0.500000 +vt 0.000000 0.500000 +vt 1.000000 0.562500 +vt 0.000000 0.562500 +vt 1.000000 0.625000 +vt 0.000000 0.625000 +vt 1.000000 0.687500 +vt 0.000000 0.687500 +vt 1.000000 0.750000 +vt 0.000000 0.750000 +vt 1.000000 0.812500 +vt 0.000000 0.812500 +vt 1.000000 0.875000 +vt 0.000000 0.875000 +vt 1.000000 0.937500 +vt 0.000000 0.937500 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.062500 +vt 0.000000 0.062500 +vt 1.000000 0.125000 +vt 0.000000 0.125000 +vt 1.000000 0.187500 +vt 0.000000 0.187500 +vt 1.000000 0.250000 +vt 0.000000 0.250000 +vt 1.000000 0.312500 +vt 0.000000 0.312500 +vt 1.000000 0.375000 +vt 0.000000 0.375000 +vt 1.000000 0.437500 +vt 0.000000 0.437500 +vt 0.500000 0.187500 +vt 0.562500 0.125000 +vt 0.562500 0.187500 +vt 0.500000 0.250000 +vt 0.562500 0.187500 +vt 0.562500 0.250000 +vt 0.562500 0.250000 +vt 0.500000 0.687500 +vt 0.500000 0.250000 +vt 0.500000 0.187500 +vt 0.562500 0.125000 +vt 0.500000 0.250000 +vt 0.562500 0.187500 +vt 0.562500 0.250000 +vt 0.500000 0.250000 +vt 0.562500 0.250000 +vt 0.562500 0.250000 +vt 0.500000 0.687500 +vt 0.500000 0.250000 +vt 0.500000 0.187500 +vt 0.562500 0.125000 +vt 0.562500 0.187500 +vt 0.500000 0.187500 +vt 0.562500 0.187500 +vt 0.562500 0.687500 +vt 0.500000 0.125000 +vt 0.562500 0.125000 +vt 0.562500 0.250000 +vt 0.562500 0.687500 +vt 0.500000 0.125000 +vt 0.562500 0.062500 +vt 0.562500 0.125000 +vt 0.562500 0.125000 +vt 0.500000 0.187500 +vt 0.500000 0.125000 +vt 0.500000 0.187500 +vt 0.562500 0.687500 +vt 0.500000 0.187500 +vt 0.562500 0.187500 +vt 0.562500 0.687500 +vt 0.500000 0.250000 +vt 0.500000 0.125000 +vt 0.562500 0.125000 +vt 0.562500 0.187500 +vt 0.500000 0.125000 +vt 0.562500 0.125000 +vt 0.500000 0.062500 +vt 0.562500 0.062500 +vt 0.500000 0.062500 +vt 0.562500 0.062500 +vt 0.500000 0.062500 +vt 0.562500 0.062500 +vt 0.500000 0.125000 +vt 0.562500 0.062500 +vt 0.500000 0.125000 +vt 0.562500 0.062500 +vt 0.500000 0.062500 +vt 0.562500 0.000000 +vt 0.500000 0.000000 +vt 0.562500 0.000000 +vt 0.500000 0.000000 +vt 0.562500 0.000000 +vt 0.500000 0.000000 +vt 0.562500 0.000000 +vt 0.500000 0.062500 +vt 0.562500 0.000000 +vt 0.500000 0.062500 +vt 0.562500 0.000000 +vt 0.562500 0.687500 +vt 0.562500 0.687500 +vt 0.500000 0.125000 +vt 0.500000 0.687500 +vt 0.500000 0.687500 +vt 0.500000 0.062500 +vt 0.500000 0.000000 +vt 0.562500 0.000000 +vt 0.562500 0.187500 +vt 0.562500 0.250000 +vt 0.500000 0.250000 +vt 0.562500 0.687500 +vt 0.500000 0.687500 +vt 0.562500 0.062500 +vt 0.500000 0.687500 +vt 0.500000 0.687500 +vt 0.500000 0.062500 +vt 0.500000 0.000000 +vt 0.562500 0.062500 +vt 0.562500 0.000000 +vt 0.500000 0.250000 +vt 0.500000 0.187500 +vt 0.562500 0.250000 +vt 0.562500 0.687500 +vt 0.500000 0.687500 +vt 0.500000 0.000000 +vt 0.500000 0.000000 +vt 0.500000 0.000000 +vn -1.0000 0.0000 0.0000 +vn -0.9808 0.0000 -0.1951 +vn -0.9239 0.0000 -0.3827 +vn -0.8314 0.0000 -0.5556 +vn -0.7071 0.0000 -0.7071 +vn -0.5556 0.0000 -0.8314 +vn -0.3827 0.0000 -0.9239 +vn -0.1951 0.0000 -0.9808 +vn 0.0000 0.0000 -1.0000 +vn 0.1951 0.0000 -0.9808 +vn 0.3827 0.0000 -0.9239 +vn 0.5556 0.0000 -0.8314 +vn 0.7071 0.0000 -0.7071 +vn 0.8314 0.0000 -0.5556 +vn 0.9239 0.0000 -0.3827 +vn 0.9808 0.0000 -0.1951 +vn 1.0000 0.0000 0.0000 +vn 0.9808 0.0000 0.1951 +vn 0.9239 0.0000 0.3827 +vn 0.8314 0.0000 0.5556 +vn 0.7071 0.0000 0.7071 +vn 0.5556 0.0000 0.8314 +vn 0.3827 0.0000 0.9239 +vn 0.1951 0.0000 0.9808 +vn 0.0000 0.0000 1.0000 +vn -0.1951 0.0000 0.9808 +vn -0.3827 0.0000 0.9239 +vn -0.5556 0.0000 0.8314 +vn -0.7071 0.0000 0.7071 +vn -0.8314 0.0000 0.5556 +vn -0.9239 0.0000 0.3827 +vn -0.9808 0.0000 0.1951 +vn -0.8695 -0.4173 -0.2642 +vn -0.3364 -0.9384 -0.0782 +vn -0.3296 -0.9387 -0.1012 +vn 0.3290 -0.9362 0.1231 +vn 0.8716 -0.4122 0.2651 +vn 0.8516 -0.4168 0.3178 +vn -0.8487 0.4238 -0.3164 +vn -0.4559 0.8701 -0.1875 +vn -0.3162 0.9413 -0.1177 +vn 0.3403 -0.9347 0.1025 +vn 0.8902 -0.4068 0.2050 +vn 0.8716 0.4122 0.2651 +vn 0.8516 0.4168 0.3178 +vn -0.8487 -0.4238 -0.3164 +vn -0.3162 -0.9413 -0.1176 +vn 0.3290 0.9362 0.1231 +vn 0.8454 0.4020 0.3515 +vn -0.8695 0.4173 -0.2642 +vn -0.8869 -0.4151 -0.2025 +vn 0.3403 0.9347 0.1025 +vn 0.8902 0.4068 0.2050 +vn 0.3537 0.9319 0.0799 +vn 0.8454 -0.4020 0.3515 +vn 0.9092 0.4009 0.1120 +vn 0.3537 -0.9319 0.0799 +vn -0.4559 -0.8701 -0.1875 +vn -0.3296 0.9387 -0.1012 +vn -0.8738 -0.3276 -0.3594 +vn -0.3364 0.9384 -0.0782 +vn -0.8869 0.4151 -0.2025 +vn -0.9055 0.4123 -0.1000 +vn -0.9055 -0.4123 -0.1000 +vn -0.3440 0.9383 -0.0340 +vn 0.3681 0.9285 0.0481 +vn 0.9092 -0.4009 0.1120 +vn -0.3440 -0.9383 -0.0340 +vn 0.9283 0.3670 0.0583 +vn -0.9262 0.3749 -0.0406 +vn -0.9262 -0.3749 -0.0406 +vn -0.3822 0.9241 -0.0070 +vn 0.4050 0.9136 0.0359 +vn 0.3681 -0.9285 0.0481 +vn 0.9283 -0.3670 0.0583 +vn -0.3822 -0.9240 -0.0070 +vn -0.8738 0.3276 -0.3594 +vn 0.2801 0.9529 0.1162 +vn 0.2801 -0.9529 0.1162 +vn 0.4050 -0.9136 0.0359 +g Cylinder.001_Cylinder.001_filament +s 1 +f 2521/4716/594 2522/4717/594 2524/4718/595 2523/4719/595 +f 2523/4719/595 2524/4718/595 2526/4720/596 2525/4721/596 +f 2525/4721/596 2526/4720/596 2528/4722/597 2527/4723/597 +f 2527/4723/597 2528/4722/597 2530/4724/598 2529/4725/598 +f 2529/4725/598 2530/4724/598 2532/4726/599 2531/4727/599 +f 2531/4727/599 2532/4726/599 2534/4728/600 2533/4729/600 +f 2533/4729/600 2534/4728/600 2536/4730/601 2535/4731/601 +f 2535/4731/601 2536/4730/601 2538/4732/602 2537/4733/602 +f 2537/4734/602 2538/4735/602 2540/4736/603 2539/4737/603 +f 2539/4737/603 2540/4736/603 2542/4738/604 2541/4739/604 +f 2541/4739/604 2542/4738/604 2544/4740/605 2543/4741/605 +f 2543/4741/605 2544/4740/605 2546/4742/606 2545/4743/606 +f 2545/4743/606 2546/4742/606 2548/4744/607 2547/4745/607 +f 2547/4745/607 2548/4744/607 2550/4746/608 2549/4747/608 +f 2549/4747/608 2550/4746/608 2552/4748/609 2551/4749/609 +f 2551/4749/609 2552/4748/609 2554/4750/610 2553/4751/610 +f 2553/4751/610 2554/4750/610 2556/4752/611 2555/4753/611 +f 2555/4753/611 2556/4752/611 2558/4754/612 2557/4755/612 +f 2557/4755/612 2558/4754/612 2560/4756/613 2559/4757/613 +f 2559/4757/613 2560/4756/613 2562/4758/614 2561/4759/614 +f 2561/4759/614 2562/4758/614 2564/4760/615 2563/4761/615 +f 2563/4761/615 2564/4760/615 2566/4762/616 2565/4763/616 +f 2565/4763/616 2566/4762/616 2568/4764/617 2567/4765/617 +f 2567/4765/617 2568/4764/617 2570/4766/618 2569/4767/618 +f 2569/4768/618 2570/4769/618 2572/4770/619 2571/4771/619 +f 2571/4771/619 2572/4770/619 2574/4772/620 2573/4773/620 +f 2573/4773/620 2574/4772/620 2576/4774/621 2575/4775/621 +f 2575/4775/621 2576/4774/621 2578/4776/622 2577/4777/622 +f 2577/4777/622 2578/4776/622 2580/4778/623 2579/4779/623 +f 2579/4779/623 2580/4778/623 2582/4780/624 2581/4781/624 +f 2581/4781/624 2582/4780/624 2584/4782/625 2583/4783/625 +f 2583/4783/625 2584/4782/625 2522/4717/594 2521/4716/594 +f 2608/4784/626 2611/4785/627 2607/4786/628 +f 2597/4787/629 2605/4788/630 2595/4789/631 +f 2587/4790/632 2590/4791/633 2589/4792/634 +f 2606/4793/635 2613/4794/636 2605/4788/630 +f 2595/4795/631 2604/4796/637 2593/4797/638 +f 2601/4798/639 2607/4786/628 2599/4799/640 +f 2591/4800/641 2594/4801/642 2593/4802/638 +f 2586/4803/643 2609/4804/644 2608/4805/626 +f 2591/4800/641 2604/4806/637 2603/4807/645 +f 2594/4808/642 2595/4795/631 2593/4797/638 +f 2603/4807/645 2614/4809/646 2615/4810/647 +f 2601/4811/639 2586/4803/643 2608/4805/626 +f 2596/4812/648 2597/4787/629 2595/4789/631 +f 2613/4813/636 2622/4814/649 2614/4815/646 +f 2612/4816/650 2607/4817/628 2611/4818/627 +f 2605/4819/630 2614/4815/646 2604/4796/637 +f 2600/4820/651 2601/4798/639 2599/4799/640 +f 2587/4790/632 2585/4821/652 2586/4822/643 +f 2602/4823/653 2587/4824/632 2601/4811/639 +f 2615/4825/647 2616/4826/654 2585/4827/652 +f 2586/4822/643 2616/4828/654 2610/4829/655 +f 2609/4804/644 2618/4830/656 2617/4831/657 +f 2610/4829/655 2624/4832/658 2618/4833/656 +f 2615/4810/647 2622/4834/649 2623/4835/659 +f 2612/4836/650 2621/4837/660 2613/4794/636 +f 2609/4838/644 2619/4839/661 2611/4785/627 +f 2621/4840/660 2630/4841/662 2622/4814/649 +f 2617/4831/657 2626/4842/663 2625/4843/664 +f 2618/4833/656 2632/4844/665 2626/4845/663 +f 2623/4835/659 2630/4846/662 2631/4847/666 +f 2620/4848/667 2629/4849/668 2621/4837/660 +f 2617/4850/657 2627/4851/669 2619/4839/661 +f 2608/4784/626 2609/4838/644 2611/4785/627 +f 2597/4787/629 2606/4793/635 2605/4788/630 +f 2587/4790/632 2588/4852/670 2590/4791/633 +f 2606/4793/635 2612/4836/650 2613/4794/636 +f 2595/4795/631 2605/4819/630 2604/4796/637 +f 2601/4798/639 2608/4784/626 2607/4786/628 +f 2591/4800/641 2592/4853/671 2594/4801/642 +f 2586/4803/643 2610/4854/655 2609/4804/644 +f 2591/4800/641 2593/4802/638 2604/4806/637 +f 2594/4808/642 2596/4855/648 2595/4795/631 +f 2603/4807/645 2604/4806/637 2614/4809/646 +f 2601/4811/639 2587/4824/632 2586/4803/643 +f 2596/4812/648 2598/4856/672 2597/4787/629 +f 2613/4813/636 2621/4840/660 2622/4814/649 +f 2619/4857/661 2627/4858/669 2628/4859/673 +f 2612/4816/650 2606/4860/635 2607/4817/628 +f 2606/4860/635 2597/4861/629 2599/4862/640 +f 2607/4817/628 2606/4860/635 2599/4862/640 +f 2597/4861/629 2598/4863/672 2599/4862/640 +f 2598/4863/672 2600/4864/651 2599/4862/640 +f 2619/4857/661 2628/4859/673 2620/4865/667 +f 2611/4818/627 2619/4857/661 2620/4865/667 +f 2611/4818/627 2620/4865/667 2612/4816/650 +f 2605/4819/630 2613/4813/636 2614/4815/646 +f 2600/4820/651 2602/4866/653 2601/4798/639 +f 2587/4790/632 2589/4792/634 2585/4821/652 +f 2602/4823/653 2588/4867/670 2587/4824/632 +f 2623/4868/659 2631/4869/666 2624/4870/658 +f 2631/4869/666 2632/4871/665 2624/4870/658 +f 2591/4872/641 2603/4873/645 2589/4874/634 +f 2603/4873/645 2615/4825/647 2585/4827/652 +f 2590/4875/633 2592/4876/671 2589/4874/634 +f 2592/4876/671 2591/4872/641 2589/4874/634 +f 2615/4825/647 2623/4868/659 2616/4826/654 +f 2623/4868/659 2624/4870/658 2616/4826/654 +f 2585/4827/652 2589/4874/634 2603/4873/645 +f 2586/4822/643 2585/4821/652 2616/4828/654 +f 2609/4804/644 2610/4854/655 2618/4830/656 +f 2610/4829/655 2616/4828/654 2624/4832/658 +f 2615/4810/647 2614/4809/646 2622/4834/649 +f 2612/4836/650 2620/4848/667 2621/4837/660 +f 2609/4838/644 2617/4850/657 2619/4839/661 +f 2621/4840/660 2629/4877/668 2630/4841/662 +f 2617/4831/657 2618/4830/656 2626/4842/663 +f 2618/4833/656 2624/4832/658 2632/4844/665 +f 2623/4835/659 2622/4834/649 2630/4846/662 +f 2620/4848/667 2628/4878/673 2629/4849/668 +f 2617/4850/657 2625/4879/664 2627/4851/669 diff --git a/computer/printers.lua b/computer/printers.lua new file mode 100644 index 0000000..b372361 --- /dev/null +++ b/computer/printers.lua @@ -0,0 +1,61 @@ +-- Printers of some kind or another + +local S = homedecor.gettext + +minetest.register_node("computer:printer", { + description = S("Printer-Scanner Combo"), + inventory_image = "computer_printer_inv.png", + tiles = {"computer_printer_t.png","computer_printer_bt.png","computer_printer_l.png", + "computer_printer_r.png","computer_printer_b.png","computer_printer_f.png"}, + paramtype = "light", + paramtype2 = "facedir", + walkable = true, + groups = {snappy=3}, + sound = default.node_sound_wood_defaults(), + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = { + {-0.4375, -0.3125, -0.125, 0.4375, -0.0625, 0.375}, + {-0.4375, -0.5, -0.125, 0.4375, -0.4375, 0.375}, + {-0.4375, -0.5, -0.125, -0.25, -0.0625, 0.375}, + {0.25, -0.5, -0.125, 0.4375, -0.0625, 0.375}, + {-0.4375, -0.5, -0.0625, 0.4375, -0.0625, 0.375}, + {-0.375, -0.4375, 0.25, 0.375, -0.0625, 0.4375}, + {-0.25, -0.25, 0.4375, 0.25, 0.0625, 0.5}, + {-0.25, -0.481132, -0.3125, 0.25, -0.4375, 0} + }, + }, +}) + +-- "bedflinger" style 3D Printer (Prusa i3 or equivalent) + +local cbox = { + type = "fixed", + fixed = {-0.25, -0.25, -0.5, 0.3, 0.3, 0.25 } +} + +minetest.register_node("computer:3dprinter_bedflinger", { + description = S('3D Printer ("bedflinger")'), + inventory_image = "computer_3dprinter_bedflinger_inv.png", + tiles = { + { name = "computer_3dprinter_bedflinger.png", color = 0xffffffff }, + "computer_3dprinter_filament.png" + }, + paramtype = "light", + walkable = true, + groups = {snappy=3, ud_param2_colorable = 1}, + sound = default.node_sound_wood_defaults(), + drawtype = "mesh", + mesh = "computer_3dprinter_bedflinger.obj", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = cbox, + collision_box = cbox, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rotate = unifieddyes.fix_after_screwdriver_nsew, +}) + diff --git a/computer/tetris.lua b/computer/tetris.lua index 023fc4d..74dfd93 100755 --- a/computer/tetris.lua +++ b/computer/tetris.lua @@ -1,5 +1,4 @@ - -local S = homedecor_i18n.gettext +local S = homedecor.gettext local shapes = { { { x = {0, 1, 0, 1}, y = {0, 0, 1, 1} } }, @@ -220,10 +219,10 @@ local function step(pos, fields) if fields then if fields.new then new_game(pos) - else + elseif t then key(fields) end - else + elseif t then run = tick() end @@ -231,7 +230,7 @@ local function step(pos, fields) local scr = { formsize, background, t.boardstring, t.previewstring, draw_shape(t.cur, t.x, t.y, t.rot, boardx, boardy), - "label[3.8,0.1;"..S("Next...").."]label[3.8,2.7;"..S("Score: "), + "label[3.8,0.1;"..S("Next...").."]label[3.8,2.7;"..S("Score: "), t.score, close, buttons } diff --git a/computer/textures/computer_3dprinter_bedflinger.png b/computer/textures/computer_3dprinter_bedflinger.png new file mode 100644 index 0000000..b623a3f Binary files /dev/null and b/computer/textures/computer_3dprinter_bedflinger.png differ diff --git a/computer/textures/computer_3dprinter_bedflinger_inv.png b/computer/textures/computer_3dprinter_bedflinger_inv.png new file mode 100644 index 0000000..7032ea7 Binary files /dev/null and b/computer/textures/computer_3dprinter_bedflinger_inv.png differ diff --git a/computer/textures/computer_3dprinter_filament.png b/computer/textures/computer_3dprinter_filament.png new file mode 100644 index 0000000..621716c Binary files /dev/null and b/computer/textures/computer_3dprinter_filament.png differ diff --git a/homedecor/copyright.txt b/copyright.txt similarity index 82% rename from homedecor/copyright.txt rename to copyright.txt index 7dc11a3..cccfbe1 100755 --- a/homedecor/copyright.txt +++ b/copyright.txt @@ -1,8 +1,11 @@ -Most code and all textures by Vanessa Ezekowitz. +Most code and textures by Vanessa Ezekowitz. Some code copied and modified from the game's default mods (especially doors) and ironzorg's flowers mod. +Whatever is stated here applies to all homedecor modpack components, as +appropriate. + Licenses: * Door open/close sound by Slanesh on freesound.org http://freesound.org/people/Slanesh/sounds/31768/ @@ -14,3 +17,4 @@ Licenses: http://www.freesfx.co.uk/sfx/book?p=3 * Phone ringing sound by andyt's on http://www.freesfx.co.uk/ http://www.freesfx.co.uk/sfx/phone?p=5 + diff --git a/fake_fire/depends.txt b/fake_fire/depends.txt index f91fb9f..997cb0b 100755 --- a/fake_fire/depends.txt +++ b/fake_fire/depends.txt @@ -1,2 +1,2 @@ -default -homedecor +default +homedecor_common diff --git a/fake_fire/init.lua b/fake_fire/init.lua index 547ac10..cf3e7b0 100755 --- a/fake_fire/init.lua +++ b/fake_fire/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext screwdriver = screwdriver or {} diff --git a/homedecor/bathroom_furniture.lua b/homedecor/bathroom_furniture.lua deleted file mode 100755 index 146ad69..0000000 --- a/homedecor/bathroom_furniture.lua +++ /dev/null @@ -1,166 +0,0 @@ - -local S = homedecor_i18n.gettext - -minetest.register_node("homedecor:bathroom_tiles_dark", { - description = S("Bathroom/kitchen tiles (dark)"), - tiles = { - "homedecor_bathroom_tiles_bg.png" - }, - overlay_tiles = { - { name = "homedecor_bathroom_tiles_fg.png", color = 0xff606060 }, - }, - paramtype = "light", - paramtype2 = "color", - palette = "unifieddyes_palette_extended.png", - groups = {cracky=3, ud_param2_colorable = 1}, - sounds = default.node_sound_stone_defaults(), - on_construct = unifieddyes.on_construct, -}) - -minetest.register_node("homedecor:bathroom_tiles_medium", { - description = S("Bathroom/kitchen tiles (medium)"), - tiles = { - "homedecor_bathroom_tiles_bg.png" - }, - overlay_tiles = { - { name = "homedecor_bathroom_tiles_fg.png", color = 0xffc0c0c0 }, - }, - paramtype = "light", - paramtype2 = "color", - palette = "unifieddyes_palette_extended.png", - groups = {cracky=3, ud_param2_colorable = 1}, - sounds = default.node_sound_stone_defaults(), - on_construct = unifieddyes.on_construct, -}) - -minetest.register_node("homedecor:bathroom_tiles_light", { - description = S("Bathroom/kitchen tiles (light)"), - tiles = { - "homedecor_bathroom_tiles_bg.png" - }, - overlay_tiles = { - { name = "homedecor_bathroom_tiles_fg.png", color = 0xffffffff }, - }, - paramtype = "light", - paramtype2 = "color", - palette = "unifieddyes_palette_extended.png", - groups = {cracky=3, ud_param2_colorable = 1}, - sounds = default.node_sound_stone_defaults(), - on_construct = unifieddyes.on_construct, -}) - -local tr_cbox = { - type = "fixed", - fixed = { -0.375, -0.3125, 0.25, 0.375, 0.375, 0.5 } -} - -homedecor.register("towel_rod", { - description = S("Towel rod with towel"), - mesh = "homedecor_towel_rod.obj", - tiles = { - "homedecor_generic_terrycloth.png", - "default_wood.png", - }, - inventory_image = "homedecor_towel_rod_inv.png", - selection_box = tr_cbox, - walkable = false, - groups = {snappy=2,choppy=2,oddly_breakable_by_hand=3,flammable=3}, - sounds = default.node_sound_defaults(), -}) - -homedecor.register("medicine_cabinet", { - description = S("Medicine cabinet"), - mesh = "homedecor_medicine_cabinet.obj", - tiles = { - 'default_wood.png', - 'homedecor_medicine_cabinet_mirror.png' - }, - inventory_image = "homedecor_medicine_cabinet_inv.png", - selection_box = { - type = "fixed", - fixed = {-0.3125, -0.1875, 0.3125, 0.3125, 0.5, 0.5} - }, - walkable = false, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - on_punch = function(pos, node, puncher, pointed_thing) - node.name = "homedecor:medicine_cabinet_open" - minetest.swap_node(pos, node) - end, - infotext=S("Medicine cabinet"), - inventory = { - size=6, - }, -}) - -homedecor.register("medicine_cabinet_open", { - mesh = "homedecor_medicine_cabinet_open.obj", - tiles = { - 'default_wood.png', - 'homedecor_medicine_cabinet_mirror.png', - 'homedecor_medicine_cabinet_inside.png' - }, - selection_box = { - type = "fixed", - fixed = {-0.3125, -0.1875, -0.25, 0.3125, 0.5, 0.5} - }, - walkable = false, - groups = { snappy = 3, not_in_creative_inventory=1 }, - drop = "homedecor:medicine_cabinet", - on_punch = function(pos, node, puncher, pointed_thing) - node.name = "homedecor:medicine_cabinet" - minetest.swap_node(pos, node) - end, -}) - --- convert old static nodes - -homedecor.old_static_bathroom_tiles = { - "homedecor:tiles_1", - "homedecor:tiles_2", - "homedecor:tiles_3", - "homedecor:tiles_4", - "homedecor:tiles_red", - "homedecor:tiles_tan", - "homedecor:tiles_yellow", - "homedecor:tiles_green", - "homedecor:tiles_blue" -} - -local old_to_color = { - "light_grey", - "grey", - "black", - "black" -} - -minetest.register_lbm({ - name = "homedecor:convert_bathroom_tiles", - label = "Convert bathroom tiles to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_static_bathroom_tiles, - action = function(pos, node) - local name = node.name - local newname = "homedecor:bathroom_tiles_light" - local a = string.find(name, "_") - local color = string.sub(name, a + 1) - - if color == "tan" then - color = "yellow_s50" - elseif color == "1" or color == "2" or color == "3" or color == "4" then - if color == "4" then - newname = "homedecor:bathroom_tiles_medium" - end - color = old_to_color[tonumber(color)] - elseif color ~= "yellow" then - color = color.."_s50" - end - - local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended") - - minetest.set_node(pos, { name = newname, param2 = paletteidx }) - local meta = minetest.get_meta(pos) - meta:set_string("dye", "unifieddyes:"..color) - meta:set_string("palette", "ext") - end -}) diff --git a/homedecor/bathroom_sanitation.lua b/homedecor/bathroom_sanitation.lua deleted file mode 100755 index 52b88ef..0000000 --- a/homedecor/bathroom_sanitation.lua +++ /dev/null @@ -1,326 +0,0 @@ - -local S = homedecor_i18n.gettext - -local toilet_sbox = { - type = "fixed", - fixed = { -6/16, -8/16, -8/16, 6/16, 9/16, 8/16 }, -} - -local toilet_cbox = { - type = "fixed", - fixed = { - {-6/16, -8/16, -8/16, 6/16, 1/16, 8/16 }, - {-6/16, -8/16, 4/16, 6/16, 9/16, 8/16 } - } -} - -homedecor.register("toilet", { - description = S("Toilet"), - mesh = "homedecor_toilet_closed.obj", - tiles = { - "darkage_marble.png", - "darkage_marble.png", - "darkage_marble.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey } - }, - selection_box = toilet_sbox, - node_box = toilet_cbox, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - node.name = "homedecor:toilet_open" - minetest.set_node(pos, node) - end -}) - -homedecor.register("toilet_open", { - mesh = "homedecor_toilet_open.obj", - tiles = { - "darkage_marble.png", - "darkage_marble.png", - "darkage_marble.png", - "default_water.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey } - }, - selection_box = toilet_sbox, - collision_box = toilet_cbox, - drop = "homedecor:toilet", - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - node.name = "homedecor:toilet" - minetest.set_node(pos, node) - minetest.sound_play("homedecor_toilet_flush", { - pos=pos, - max_hear_distance = 5, - gain = 1, - }) - end -}) - --- toilet paper :-) - -local tp_cbox = { - type = "fixed", - fixed = { -0.25, 0.125, 0.0625, 0.1875, 0.4375, 0.5 } -} - -homedecor.register("toilet_paper", { - description = S("Toilet paper"), - mesh = "homedecor_toilet_paper.obj", - tiles = { - "homedecor_generic_quilted_paper.png", - "default_wood.png" - }, - inventory_image = "homedecor_toilet_paper_inv.png", - selection_box = tp_cbox, - walkable = false, - groups = {snappy=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_defaults(), -}) - ---Sink - -local sink_cbox = { - type = "fixed", - fixed = { -5/16, -8/16, 1/16, 5/16, 8/16, 8/16 } -} - -homedecor.register("sink", { - description = S("Bathroom Sink"), - mesh = "homedecor_bathroom_sink.obj", - tiles = { - "darkage_marble.png", - "darkage_marble.png", - "default_water.png" - }, - inventory_image="homedecor_bathroom_sink_inv.png", - selection_box = sink_cbox, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - node_box = { - type = "fixed", - fixed = { - { -5/16, 5/16, 1/16, -4/16, 8/16, 8/16 }, - { 5/16, 5/16, 1/16, 4/16, 8/16, 8/16 }, - { -5/16, 5/16, 1/16, 5/16, 8/16, 2/16 }, - { -5/16, 5/16, 6/16, 5/16, 8/16, 8/16 }, - { -4/16, -8/16, 1/16, 4/16, 5/16, 6/16 } - } - }, - on_destruct = function(pos) - homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) - end -}) - ---Taps - -local function taps_on_rightclick(pos, node, clicker, itemstack, pointed_thing) - local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) - if below and - below.name == "homedecor:shower_tray" or - below.name == "homedecor:sink" or - below.name == "homedecor:kitchen_cabinet_with_sink" or - below.name == "homedecor:kitchen_cabinet_with_sink_locked" then - local particledef = { - outlet = { x = 0, y = -0.44, z = 0.28 }, - velocity_x = { min = -0.1, max = 0.1 }, - velocity_y = -0.3, - velocity_z = { min = -0.1, max = 0 }, - spread = 0 - } - homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") - end - return itemstack -end - -homedecor.register("taps", { - description = S("Bathroom taps/faucet"), - mesh = "homedecor_bathroom_faucet.obj", - tiles = { - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - "homedecor_generic_metal_bright.png", - "homedecor_generic_metal.png", - "homedecor_generic_metal_bright.png" - }, - inventory_image = "3dforniture_taps_inv.png", - wield_image = "3dforniture_taps_inv.png", - selection_box = { - type = "fixed", - fixed = { -4/16, -7/16, 4/16, 4/16, -4/16, 8/16 }, - }, - walkable = false, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - on_rightclick = taps_on_rightclick, - on_destruct = homedecor.stop_particle_spawner, - on_rotate = screwdriver.disallow -}) - -homedecor.register("taps_brass", { - description = S("Bathroom taps/faucet (brass)"), - mesh = "homedecor_bathroom_faucet.obj", - tiles = { - "homedecor_generic_metal_brass.png", - "homedecor_generic_metal_brass.png", - "homedecor_generic_metal.png", - "homedecor_generic_metal_brass.png" - }, - inventory_image = "3dforniture_taps_brass_inv.png", - wield_image = "3dforniture_taps_brass_inv.png", - selection_box = { - type = "fixed", - fixed = { -4/16, -7/16, 4/16, 4/16, -4/16, 8/16 }, - }, - walkable = false, - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), - on_rightclick = taps_on_rightclick, - on_destruct = homedecor.stop_particle_spawner, - on_rotate = screwdriver.disallow -}) - ---Shower Tray - -homedecor.register("shower_tray", { - description = S("Shower Tray"), - tiles = { - "forniture_marble_base_ducha_top.png", - "darkage_marble.png" - }, - node_box = { - type = "fixed", - fixed = { - { -0.5, -0.5, -0.5, 0.5, -0.45, 0.5 }, - { -0.5, -0.45, -0.5, 0.5, -0.4, -0.45 }, - { -0.5, -0.45, 0.45, 0.5, -0.4, 0.5 }, - { -0.5, -0.45, -0.45, -0.45, -0.4, 0.45 }, - { 0.45, -0.45, -0.45, 0.5, -0.4, 0.45 } - }, - }, - selection_box = homedecor.nodebox.slab_y(0.1), - groups = {cracky=2}, - sounds = default.node_sound_stone_defaults(), - on_destruct = function(pos) - homedecor.stop_particle_spawner({x=pos.x, y=pos.y+2, z=pos.z}) -- the showerhead - homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) -- the taps, if any - end -}) - ---Shower Head - - -local sh_cbox = { - type = "fixed", - fixed = { -0.2, -0.4, -0.05, 0.2, 0.1, 0.5 } -} - -homedecor.register("shower_head", { - drawtype = "mesh", - mesh = "homedecor_shower_head.obj", - tiles = { - "homedecor_generic_metal.png", - "homedecor_shower_head.png" - }, - inventory_image = "homedecor_shower_head_inv.png", - description = S("Shower Head"), - groups = {snappy=3}, - selection_box = sh_cbox, - walkable = false, - on_rotate = screwdriver.disallow, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-2.0, z=pos.z}) - if below and below.name == "homedecor:shower_tray" then - local particledef = { - outlet = { x = 0, y = -0.42, z = 0.1 }, - velocity_x = { min = -0.15, max = 0.15 }, - velocity_y = -2, - velocity_z = { min = -0.3, max = 0.1 }, - spread = 0.12 - } - homedecor.start_particle_spawner(pos, node, particledef, "homedecor_shower") - end - return itemstack - end, - on_destruct = function(pos) - homedecor.stop_particle_spawner(pos) - end -}) - -homedecor.register("bathtub_clawfoot_brass_taps", { - drawtype = "mesh", - mesh = "homedecor_bathtub_clawfoot.obj", - tiles = { - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - "homedecor_generic_metal_bright.png", - "homedecor_generic_metal_bright.png", - "homedecor_generic_metal_brass.png", - "homedecor_marble.png", - "homedecor_bathtub_clawfoot_bottom_inside.png", - }, - description = S("Bathtub, clawfoot, with brass taps"), - groups = {cracky=3}, - selection_box = { - type = "fixed", - fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 }, - }, - sounds = default.node_sound_stone_defaults(), -}) - -homedecor.register("bathtub_clawfoot_chrome_taps", { - drawtype = "mesh", - mesh = "homedecor_bathtub_clawfoot.obj", - tiles = { - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - "homedecor_generic_metal_bright.png", - "homedecor_generic_metal_bright.png", - "homedecor_generic_metal_bright.png", - "homedecor_marble.png", - "homedecor_bathtub_clawfoot_bottom_inside.png", - }, - description = S("Bathtub, clawfoot, with chrome taps"), - groups = {cracky=3}, - selection_box = { - type = "fixed", - fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 }, - }, - sounds = default.node_sound_stone_defaults(), -}) - -local bs_cbox = { - type = "fixed", - fixed = { -8/16, -8/16, 1/16, 8/16, 8/16, 8/16 } -} - -homedecor.register("bathroom_set", { - drawtype = "mesh", - mesh = "homedecor_bathroom_set.obj", - tiles = { - "homedecor_bathroom_set_mirror.png", - "homedecor_bathroom_set_tray.png", - "homedecor_bathroom_set_toothbrush.png", - "homedecor_bathroom_set_cup.png", - "homedecor_bathroom_set_toothpaste.png", - }, - inventory_image = "homedecor_bathroom_set_inv.png", - description = S("Bathroom sundries set"), - groups = {snappy=3}, - selection_box = bs_cbox, - walkable = false, - sounds = default.node_sound_glass_defaults(), -}) - -minetest.register_alias("3dforniture:toilet", "homedecor:toilet") -minetest.register_alias("3dforniture:toilet_open", "homedecor:toilet_open") -minetest.register_alias("3dforniture:sink", "homedecor:sink") -minetest.register_alias("3dforniture:taps", "homedecor:taps") -minetest.register_alias("3dforniture:shower_tray", "homedecor:shower_tray") -minetest.register_alias("3dforniture:shower_head", "homedecor:shower_head") -minetest.register_alias("3dforniture:table_lamp", "homedecor:table_lamp_off") - -minetest.register_alias("toilet", "homedecor:toilet") -minetest.register_alias("sink", "homedecor:sink") -minetest.register_alias("taps", "homedecor:taps") -minetest.register_alias("shower_tray", "homedecor:shower_tray") -minetest.register_alias("shower_head", "homedecor:shower_head") -minetest.register_alias("table_lamp", "homedecor:table_lamp_off") diff --git a/homedecor/crafts.lua b/homedecor/crafts.lua deleted file mode 100755 index 883c831..0000000 --- a/homedecor/crafts.lua +++ /dev/null @@ -1,3017 +0,0 @@ --- Crafting for homedecor mod (includes folding) by Vanessa Ezekowitz --- --- Mostly my own code; overall template borrowed from game default - -local S = homedecor_i18n.gettext - --- misc craftitems - -minetest.register_craftitem("homedecor:roof_tile_terracotta", { - description = S("Terracotta Roof Tile"), - inventory_image = "homedecor_roof_tile_terracotta.png", -}) - -minetest.register_craftitem("homedecor:drawer_small", { - description = S("Small Wooden Drawer"), - inventory_image = "homedecor_drawer_small.png", -}) - -minetest.register_craftitem("homedecor:blank_canvas", { - description = S("Blank Canvas"), - inventory_image = "homedecor_blank_canvas.png" -}) - -minetest.register_craftitem("homedecor:vcr", { - description = S("VCR"), - inventory_image = "homedecor_vcr.png" -}) - -minetest.register_craftitem("homedecor:dvd_player", { - description = S("DVD Player"), - inventory_image = "homedecor_dvd_player.png" -}) - -minetest.register_craftitem("homedecor:speaker_driver", { - description = S("Speaker driver"), - inventory_image = "homedecor_speaker_driver_inv.png" -}) - -minetest.register_craftitem("homedecor:fan_blades", { - description = S("Fan blades"), - inventory_image = "homedecor_fan_blades.png" -}) - -minetest.register_craftitem("homedecor:soda_can", { - description = S("Soda Can"), - inventory_image = "homedecor_soda_can.png", - on_use = minetest.item_eat(2), -}) - --- the actual crafts - -minetest.register_craft( { - output = "homedecor:fan_blades 2", - recipe = { - { "", "basic_materials:plastic_sheet", "" }, - { "", "default:steel_ingot", "" }, - { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" } - }, -}) - -minetest.register_craft({ - type = "cooking", - output = "homedecor:roof_tile_terracotta", - recipe = "basic_materials:terracotta_base", -}) - -minetest.register_craft( { - output = "homedecor:shingles_terracotta", - recipe = { - { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta"}, - { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta"}, - }, -}) - -minetest.register_craft( { - output = "homedecor:roof_tile_terracotta 8", - recipe = { - { "homedecor:shingles_terracotta", "homedecor:shingles_terracotta" } - } -}) - -minetest.register_craft( { - output = "homedecor:flower_pot_terracotta", - recipe = { - { "homedecor:roof_tile_terracotta", "default:dirt", "homedecor:roof_tile_terracotta" }, - { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta" }, - }, -}) - --- - -minetest.register_craft( { - output = "homedecor:flower_pot_green", - recipe = { - { "", "dye:dark_green", "" }, - { "basic_materials:plastic_sheet", "default:dirt", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:flower_pot_black", - recipe = { - { "dye:black", "dye:black", "dye:black" }, - { "basic_materials:plastic_sheet", "default:dirt", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - }, -}) - --- - -minetest.register_craft( { - output = "homedecor:projection_screen 3", - recipe = { - { "", "default:glass", "" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:projection_screen", - burntime = 30, -}) - --- - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:ceiling_paint 20", - recipe = { - "dye:white", - "dye:white", - "default:sand", - "bucket:bucket_water", - }, - replacements = { { "bucket:bucket_water","bucket:bucket_empty" } } -}) - -minetest.register_craft( { - output = "homedecor:ceiling_tile 10", - recipe = { - { "", "dye:white", "" }, - { "default:steel_ingot", "default:stone", "default:steel_ingot" }, - - }, -}) - -minetest.register_craft( { - output = "homedecor:glass_table_small_round_b 15", - recipe = { - { "", "default:glass", "" }, - { "default:glass", "default:glass", "default:glass" }, - { "", "default:glass", "" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:glass_table_small_square_b 2", - recipe = { - {"homedecor:glass_table_small_round", "homedecor:glass_table_small_round" }, - } -}) - -minetest.register_craft( { - output = "homedecor:glass_table_large_b 2", - recipe = { - { "homedecor:glass_table_small_square", "homedecor:glass_table_small_square" }, - } -}) - --- - -minetest.register_craft( { - output = "homedecor:wood_table_small_round_b 15", - recipe = { - { "", "group:wood", "" }, - { "group:wood", "group:wood", "group:wood" }, - { "", "group:wood", "" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:wood_table_small_square_b 2", - recipe = { - { "homedecor:wood_table_small_round","homedecor:wood_table_small_round" }, - } -}) - -minetest.register_craft( { - output = "homedecor:wood_table_large_b 2", - recipe = { - { "homedecor:wood_table_small_square", "homedecor:wood_table_small_square" }, - } -}) - --- - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:wood_table_small_round_b", - burntime = 30, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:wood_table_small_square_b", - burntime = 30, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:wood_table_large_b", - burntime = 30, -}) - --- - -minetest.register_craft( { - output = "homedecor:shingles_asphalt 6", - recipe = { - { "building_blocks:gravel_spread", "dye:black", "building_blocks:gravel_spread" }, - { "group:sand", "dye:black", "group:sand" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - }, -}) - --- - -minetest.register_craft( { - output = "homedecor:shingles_wood 12", - recipe = { - { "group:stick", "group:wood"}, - { "group:wood", "group:stick"}, - }, -}) - -minetest.register_craft( { - output = "homedecor:shingles_wood 12", - recipe = { - { "group:wood", "group:stick"}, - { "group:stick", "group:wood"}, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:shingles_wood", - burntime = 30, -}) - --- - -minetest.register_craft( { - output = "homedecor:skylight 4", - recipe = { - { "homedecor:glass_table_large", "homedecor:glass_table_large" }, - { "homedecor:glass_table_large", "homedecor:glass_table_large" }, - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:skylight_frosted", - recipe = { - "dye:white", - "homedecor:skylight" - }, -}) - -minetest.register_craft({ - type = "cooking", - output = "homedecor:skylight", - recipe = "homedecor:skylight_frosted", -}) - -minetest.register_craft( { - output = "homedecor:shutter 2", - recipe = { - { "group:stick", "group:stick" }, - { "group:stick", "group:stick" }, - { "group:stick", "group:stick" }, - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:shutter_colored", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:shutter", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:shutter_oak", - burntime = 30, -}) - -minetest.register_craft( { - output = "homedecor:drawer_small", - recipe = { - { "group:wood", "default:steel_ingot", "group:wood" }, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:drawer_small", - burntime = 30, -}) - --- - -minetest.register_craft( { - output = "homedecor:nightstand_oak_one_drawer", - recipe = { - { "homedecor:drawer_small" }, - { "group:wood" }, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:nightstand_oak_one_drawer", - burntime = 30, -}) - -minetest.register_craft( { - output = "homedecor:nightstand_oak_two_drawers", - recipe = { - { "homedecor:drawer_small" }, - { "homedecor:drawer_small" }, - { "group:wood" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:nightstand_oak_two_drawers", - recipe = { - { "homedecor:nightstand_oak_one_drawer" }, - { "homedecor:drawer_small" }, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:nightstand_oak_two_drawers", - burntime = 30, -}) - --- - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:nightstand_mahogany_one_drawer", - recipe = { - "homedecor:nightstand_oak_one_drawer", - "dye:brown", - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:nightstand_mahogany_one_drawer", - burntime = 30, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:nightstand_mahogany_two_drawers", - recipe = { - "homedecor:nightstand_oak_two_drawers", - "dye:brown", - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:nightstand_mahogany_two_drawers", - burntime = 30, -}) - --- Table legs - -minetest.register_craft( { - output = "homedecor:table_legs_wrought_iron 3", - recipe = { - { "", "default:iron_lump", "" }, - { "", "default:iron_lump", "" }, - { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:table_legs_brass 3", - recipe = { - { "", "basic_materials:brass_ingot", "" }, - { "", "basic_materials:brass_ingot", "" }, - { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:utility_table_legs", - recipe = { - { "group:stick", "group:stick", "group:stick" }, - { "group:stick", "", "group:stick" }, - { "group:stick", "", "group:stick" }, - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:utility_table_legs", - burntime = 30, -}) - --- vertical poles/lampposts - -minetest.register_craft( { - output = "homedecor:pole_brass 4", - recipe = { - { "", "basic_materials:brass_ingot", "" }, - { "", "basic_materials:brass_ingot", "" }, - { "", "basic_materials:brass_ingot", "" } - }, -}) - -minetest.register_craft( { - output = "homedecor:pole_wrought_iron 4", - recipe = { - { "default:iron_lump", }, - { "default:iron_lump", }, - { "default:iron_lump", }, - }, -}) - --- Home electronics - -minetest.register_craft( { - output = "basic_materials:ic 4", - recipe = { - { "basic_materials:silicon", "basic_materials:silicon" }, - { "basic_materials:silicon", "default:copper_ingot" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:television", - recipe = { - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "moreblocks:glow_glass", "basic_materials:plastic_sheet" }, - { "basic_materials:ic", "basic_materials:ic", "basic_materials:ic" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:television", - recipe = { - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "default:glass", "basic_materials:plastic_sheet" }, - { "basic_materials:ic", "basic_materials:energy_crystal_simple", "basic_materials:ic" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:stereo", - recipe = { - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, - { "default:steel_ingot", "basic_materials:ic", "default:steel_ingot" }, - }, -}) - --- =========================================================== --- Recipes that require materials from wool (cotton alternate) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:rug_small 8", - recipe = { - "wool:red", - "wool:yellow", - "wool:blue", - "wool:black" - }, -}) - -minetest.register_craft( { - output = "homedecor:rug_persian 8", - recipe = { - { "", "wool:yellow", "" }, - { "wool:red", "wool:blue", "wool:red" }, - { "", "wool:yellow", "" } - }, -}) - --- cotton versions: - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:rug_small 8", - recipe = { - "cotton:red", - "cotton:yellow", - "cotton:blue", - "cotton:black" - }, -}) - -minetest.register_craft( { - output = "homedecor:rug_persian 8", - recipe = { - { "", "cotton:yellow", "" }, - { "cotton:red", "cotton:blue", "cotton:red" }, - { "", "cotton:yellow", "" } - }, -}) - --- fuel recipes for same - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:rug_small", - burntime = 30, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:rug_large 2", - recipe = { - "homedecor:rug_small", - "homedecor:rug_small", - }, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:rug_large", - burntime = 30, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:rug_persian", - burntime = 30, -}) - --- Speakers - -minetest.register_craft( { - output = "homedecor:speaker_driver 2", - recipe = { - { "", "default:steel_ingot", "" }, - { "default:paper", "basic_materials:copper_wire", "default:iron_lump" }, - { "", "default:steel_ingot", "" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:speaker_small", - recipe = { - { "wool:black", "homedecor:speaker_driver", "group:wood" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:speaker", - recipe = { - { "wool:black", "homedecor:speaker_driver", "group:wood" }, - { "wool:black", "homedecor:speaker_driver", "group:wood" }, - { "wool:black", "group:wood", "group:wood" }, - }, -}) - --- cotton version - -minetest.register_craft( { - output = "homedecor:speaker_small", - recipe = { - { "cotton:black", "homedecor:speaker_driver", "group:wood" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:speaker", - recipe = { - { "cotton:black", "homedecor:speaker_driver", "group:wood" }, - { "cotton:black", "homedecor:speaker_driver", "group:wood" }, - { "cotton:black", "group:wood", "group:wood" }, - }, -}) - --- Curtains - -minetest.register_craft( { - output = "homedecor:curtain_closed 4", - recipe = { - { "wool:white", "", ""}, - { "wool:white", "", ""}, - { "wool:white", "", ""}, - }, -}) - -minetest.register_craft( { - output = "homedecor:curtain_closed 4", - recipe = { - { "cottages:wool", "", ""}, - { "cottages:wool", "", ""}, - { "cottages:wool", "", ""}, - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:curtain_closed", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:curtain_closed", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -unifieddyes.register_color_craft({ - output = "homedecor:curtain_open", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:curtain_open", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -local mats = { - { "brass", "homedecor:pole_brass" }, - { "wrought_iron", "homedecor:pole_wrought_iron" }, - { "wood", "group:stick" } -} - -for i in ipairs(mats) do - local material = mats[i][1] - local ingredient = mats[i][2] - minetest.register_craft( { - output = "homedecor:curtainrod_"..material.." 3", - recipe = { - { ingredient, ingredient, ingredient }, - }, - }) -end - --- Recycling recipes - --- Some glass objects recycle via the glass fragments item/recipe in the Vessels mod. - -minetest.register_craft({ - type = "shapeless", - output = "vessels:glass_fragments", - recipe = { - "homedecor:glass_table_small_round", - "homedecor:glass_table_small_round", - "homedecor:glass_table_small_round" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "vessels:glass_fragments", - recipe = { - "homedecor:glass_table_small_square", - "homedecor:glass_table_small_square", - "homedecor:glass_table_small_square" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "vessels:glass_fragments", - recipe = { - "homedecor:glass_table_large", - "homedecor:glass_table_large", - "homedecor:glass_table_large" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "vessels:glass_fragments 2", - recipe = { - "homedecor:skylight", - "homedecor:skylight", - "homedecor:skylight", - "homedecor:skylight", - "homedecor:skylight", - "homedecor:skylight" - } -}) - --- Wooden tabletops can turn into sticks - -minetest.register_craft({ - type = "shapeless", - output = "default:stick 4", - recipe = { - "homedecor:wood_table_small_round", - "homedecor:wood_table_small_round", - "homedecor:wood_table_small_round" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "default:stick 4", - recipe = { - "homedecor:wood_table_small_square", - "homedecor:wood_table_small_square", - "homedecor:wood_table_small_square" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "default:stick 4", - recipe = { - "homedecor:wood_table_large", - "homedecor:wood_table_large", - "homedecor:wood_table_large" - } -}) - --- Kitchen stuff - -minetest.register_craft({ - output = "homedecor:oven_steel", - recipe = { - {"basic_materials:heating_element", "default:steel_ingot", "basic_materials:heating_element", }, - {"default:steel_ingot", "moreblocks:iron_glass", "default:steel_ingot", }, - {"default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot", }, - } -}) - -minetest.register_craft({ - output = "homedecor:oven_steel", - recipe = { - {"basic_materials:heating_element", "default:steel_ingot", "basic_materials:heating_element", }, - {"default:steel_ingot", "default:glass", "default:steel_ingot", }, - {"default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot", }, - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:oven", - recipe = { - "homedecor:oven_steel", - "dye:white", - "dye:white", - } -}) - -minetest.register_craft({ - output = "homedecor:microwave_oven 2", - recipe = { - {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot", }, - {"default:steel_ingot", "moreblocks:iron_glass", "basic_materials:ic", }, - {"default:steel_ingot", "default:copper_ingot", "basic_materials:energy_crystal_simple", }, - } -}) - -minetest.register_craft({ - output = "homedecor:microwave_oven 2", - recipe = { - {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot", }, - {"default:steel_ingot", "default:glass", "basic_materials:ic", }, - {"default:steel_ingot", "default:copper_ingot", "basic_materials:energy_crystal_simple", }, - } -}) - -minetest.register_craft({ - output = "homedecor:refrigerator_steel", - recipe = { - {"default:steel_ingot", "homedecor:glowlight_small_cube", "default:steel_ingot", }, - {"default:steel_ingot", "default:copperblock", "default:steel_ingot", }, - {"default:steel_ingot", "default:clay", "default:steel_ingot", }, - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:refrigerator_white", - recipe = { - "homedecor:refrigerator_steel", - "dye:white", - "dye:white", - "dye:white", - } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet", - recipe = { - {"group:wood", "group:stick", "group:wood", }, - {"group:wood", "group:stick", "group:wood", }, - {"group:wood", "group:stick", "group:wood", }, - } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet_steel", - recipe = { - {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, - {"", "homedecor:kitchen_cabinet", ""}, - } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet_steel", - recipe = { - {"moreblocks:slab_steelblock_1"}, - { "homedecor:kitchen_cabinet" }, - } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet_marble", - recipe = { - {"darkage:slab_marble"}, - {"homedecor:kitchen_cabinet"}, - } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet_granite", - recipe = { - {"technic:slab_granite_1"}, - {"homedecor:kitchen_cabinet"}, - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:kitchen_cabinet_half 2", - recipe = { "homedecor:kitchen_cabinet" } -}) - -minetest.register_craft({ - output = "homedecor:kitchen_cabinet_with_sink", - recipe = { - {"group:wood", "default:steel_ingot", "group:wood", }, - {"group:wood", "default:steel_ingot", "group:wood", }, - {"group:wood", "group:stick", "group:wood", }, - } -}) - -------- Lighting - --- candles - -minetest.register_craft({ - output = "homedecor:candle_thin 4", - recipe = { - {"farming:string" }, - {"basic_materials:paraffin" } - } -}) - -minetest.register_craft({ - output = "homedecor:candle 2", - recipe = { - {"farming:string" }, - {"basic_materials:paraffin" }, - {"basic_materials:paraffin" } - } -}) - -minetest.register_craft({ - output = "homedecor:wall_sconce 2", - recipe = { - {"default:iron_lump", "", ""}, - {"default:iron_lump", "homedecor:candle", ""}, - {"default:iron_lump", "", ""}, - } -}) - -minetest.register_craft({ - output = "homedecor:candlestick_wrought_iron", - recipe = { - {""}, - {"homedecor:candle_thin"}, - {"default:iron_lump"}, - } -}) - -minetest.register_craft({ - output = "homedecor:candlestick_brass", - recipe = { - {""}, - {"homedecor:candle_thin"}, - {"basic_materials:brass_ingot"}, - } -}) - -minetest.register_craft({ - output = "homedecor:oil_lamp", - recipe = { - { "", "vessels:glass_bottle", "" }, - { "", "farming:string", "" }, - { "default:steel_ingot", "basic_materials:oil_extract", "default:steel_ingot" } - } -}) - -minetest.register_craft({ - output = "homedecor:oil_lamp_tabletop", - recipe = { - { "", "vessels:glass_bottle", "" }, - { "", "farming:string", "" }, - { "default:iron_lump", "basic_materials:oil_extract", "default:iron_lump" } - } -}) - --- Wrought-iron wall latern - -minetest.register_craft({ - output = "homedecor:ground_lantern", - recipe = { - { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, - { "default:iron_lump", "default:torch", "default:iron_lump" }, - { "", "default:iron_lump", "" } - } -}) - --- wood-lattice lamps - -if minetest.get_modpath("darkage") then - minetest.register_craft( { - output = "homedecor:lattice_lantern_small 8", - recipe = { - { "darkage:lamp" }, - }, - }) - - minetest.register_craft( { - output = "darkage:lamp", - type = "shapeless", - recipe = { - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - }, - }) -else - minetest.register_craft( { - output = "homedecor:lattice_lantern_large 2", - recipe = { - { "dye:black", "dye:yellow", "dye:black" }, - { "group:stick", "building_blocks:woodglass", "group:stick" }, - { "group:stick", "basic_materials:energy_crystal_simple", "group:stick" } - }, - }) - - minetest.register_craft( { - output = "homedecor:lattice_lantern_small 8", - recipe = { - { "homedecor:lattice_lantern_large" }, - }, - }) - - minetest.register_craft( { - output = "homedecor:lattice_lantern_large", - type = "shapeless", - recipe = { - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - "homedecor:lattice_lantern_small", - }, - }) -end - --- glowlights - -minetest.register_craft({ - output = "homedecor:glowlight_half 6", - recipe = { - { "default:glass", "basic_materials:energy_crystal_simple", "default:glass", }, - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_half 6", - recipe = { - {"moreblocks:super_glow_glass", "moreblocks:glow_glass", "moreblocks:super_glow_glass", }, - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_half", - recipe = { - {"homedecor:glowlight_small_cube","homedecor:glowlight_small_cube"}, - {"homedecor:glowlight_small_cube","homedecor:glowlight_small_cube"} - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_half", - type = "shapeless", - recipe = { - "homedecor:glowlight_quarter", - "homedecor:glowlight_quarter" - } -}) - -unifieddyes.register_color_craft({ - output = "homedecor:glowlight_half", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:glowlight_half", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_quarter 6", - recipe = { - {"homedecor:glowlight_half", "homedecor:glowlight_half", "homedecor:glowlight_half", }, - } -}) - -unifieddyes.register_color_craft({ - output = "homedecor:glowlight_quarter", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:glowlight_quarter", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_small_cube 8", - recipe = { - { "dye:white" }, - { "default:glass" }, - { "basic_materials:energy_crystal_simple" }, - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_small_cube 8", - recipe = { - {"dye:white" }, - {"moreblocks:super_glow_glass" }, - } -}) - -minetest.register_craft({ - output = "homedecor:glowlight_small_cube 4", - recipe = { - {"homedecor:glowlight_half" }, - } -}) - -unifieddyes.register_color_craft({ - output = "homedecor:glowlight_small_cube", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:glowlight_small_cube", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - ----- - -minetest.register_craft({ - output = "homedecor:plasma_lamp", - recipe = { - {"", "default:glass", ""}, - {"default:glass", "basic_materials:energy_crystal_simple", "default:glass"}, - {"", "default:glass", ""} - } -}) - -minetest.register_craft({ - output = "homedecor:plasma_ball 2", - recipe = { - {"", "default:glass", ""}, - {"default:glass", "default:copper_ingot", "default:glass"}, - {"basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet"} - } -}) - --- Brass/wrought iron fences - - -minetest.register_craft( { - output = "homedecor:fence_brass 6", - recipe = { - { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, - { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:fence_wrought_iron 6", - recipe = { - { "default:iron_lump","default:iron_lump","default:iron_lump" }, - { "default:iron_lump","default:iron_lump","default:iron_lump" }, - }, -}) - --- other types of fences - -minetest.register_craft( { - 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( { - type = "shapeless", - output = "homedecor:fence_wrought_iron_2_corner", - recipe = { - "homedecor:fence_wrought_iron_2", - "homedecor:fence_wrought_iron_2" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_wrought_iron_2 2", - recipe = { - "homedecor:fence_wrought_iron_2_corner", - }, -}) - --- - -minetest.register_craft( { - output = "homedecor:fence_picket 6", - recipe = { - { "group:stick", "group:stick", "group:stick" }, - { "group:stick", "", "group:stick" }, - { "group:stick", "group:stick", "group:stick" } - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket_corner", - recipe = { - "homedecor:fence_picket", - "homedecor:fence_picket" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket 2", - recipe = { - "homedecor:fence_picket_corner" - }, -}) - --- - - -minetest.register_craft( { - output = "homedecor:fence_picket_white 6", - recipe = { - { "group:stick", "group:stick", "group:stick" }, - { "group:stick", "dye:white", "group:stick" }, - { "group:stick", "group:stick", "group:stick" } - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket_corner_white", - recipe = { - "homedecor:fence_picket_white", - "homedecor:fence_picket_white" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket_white 2", - recipe = { - "homedecor:fence_picket_corner_white" - }, -}) - --- - - -minetest.register_craft( { - output = "homedecor:fence_privacy 6", - recipe = { - { "group:wood", "group:stick", "group:wood" }, - { "group:wood", "", "group:wood" }, - { "group:wood", "group:stick", "group:wood" } - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_privacy_corner", - recipe = { - "homedecor:fence_privacy", - "homedecor:fence_privacy" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_privacy 2", - recipe = { - "homedecor:fence_privacy_corner" - }, -}) - --- - - -minetest.register_craft( { - output = "homedecor:fence_barbed_wire 6", - recipe = { - { "group:stick", "basic_materials:steel_wire", "group:stick" }, - { "group:stick", "", "group:stick" }, - { "group:stick", "basic_materials:steel_wire", "group:stick" } - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_barbed_wire_corner", - recipe = { "homedecor:fence_barbed_wire", "homedecor:fence_barbed_wire" }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_barbed_wire 2", - recipe = { "homedecor:fence_barbed_wire_corner" }, -}) - --- - - -minetest.register_craft( { - output = "homedecor:fence_chainlink 9", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, - { "basic_materials:steel_wire", "basic_materials:steel_wire", "default:steel_ingot" }, - { "basic_materials:steel_wire", "basic_materials:steel_wire", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_chainlink_corner", - recipe = { "homedecor:fence_chainlink", "homedecor:fence_chainlink" }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_chainlink 2", - recipe = { "homedecor:fence_chainlink_corner" }, -}) - - --- Gates - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:gate_picket_white_closed", - recipe = { - "homedecor:fence_picket_white" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket_white", - recipe = { - "homedecor:gate_picket_white_closed" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:gate_picket_closed", - recipe = { - "homedecor:fence_picket" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_picket", - recipe = { - "homedecor:gate_picket_closed" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:gate_barbed_wire_closed", - recipe = { - "homedecor:fence_barbed_wire" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_barbed_wire", - recipe = { - "homedecor:gate_barbed_wire_closed" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:gate_chainlink_closed", - recipe = { - "homedecor:fence_chainlink" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:fence_chainlink", - recipe = { - "homedecor:gate_chainlink_closed" - }, -}) - ------- Doors - --- plain wood, non-windowed - -minetest.register_craft( { - output = "homedecor:door_wood_plain_left 2", - recipe = { - { "group:wood", "group:wood", "" }, - { "group:wood", "group:wood", "default:steel_ingot" }, - { "group:wood", "group:wood", "" }, - }, -}) - --- fancy exterior - -minetest.register_craft( { - output = "homedecor:door_exterior_fancy_left 2", - recipe = { - { "group:wood", "default:glass" }, - { "group:wood", "group:wood" }, - { "group:wood", "group:wood" }, - }, -}) - --- wood and glass (grid style) - --- bare - -minetest.register_craft( { - output = "homedecor:door_wood_glass_oak_left 2", - recipe = { - { "default:glass", "group:wood" }, - { "group:wood", "default:glass" }, - { "default:glass", "group:wood" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:door_wood_glass_oak_left 2", - recipe = { - { "group:wood", "default:glass" }, - { "default:glass", "group:wood" }, - { "group:wood", "default:glass" }, - }, -}) - --- mahogany - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:door_wood_glass_mahogany_left 2", - recipe = { - "default:dirt", - "default:coal_lump", - "homedecor:door_wood_glass_oak_left", - "homedecor:door_wood_glass_oak_left" - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:door_wood_glass_mahogany_left 2", - recipe = { - "dye:brown", - "homedecor:door_wood_glass_oak_left", - "homedecor:door_wood_glass_oak_left" - }, -}) - --- white - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:door_wood_glass_white_left 2", - recipe = { - "dye:white", - "homedecor:door_wood_glass_oak_left", - "homedecor:door_wood_glass_oak_left" - }, -}) - --- Closet doors - --- oak - -minetest.register_craft( { - output = "homedecor:door_closet_oak_left 2", - recipe = { - { "", "group:stick", "group:stick" }, - { "default:steel_ingot", "group:stick", "group:stick" }, - { "", "group:stick", "group:stick" }, - }, -}) - --- mahogany - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:door_closet_mahogany_left 2", - recipe = { - "homedecor:door_closet_oak_left", - "homedecor:door_closet_oak_left", - "default:dirt", - "default:coal_lump", - }, -}) - -minetest.register_craft( { - type = "shapeless", - output = "homedecor:door_closet_mahogany_left 2", - recipe = { - "homedecor:door_closet_oak_left", - "homedecor:door_closet_oak_left", - "dye:brown" - }, -}) - --- wrought fence-like door - -minetest.register_craft( { - output = "homedecor:door_wrought_iron_left 2", - recipe = { - { "homedecor:pole_wrought_iron", "default:iron_lump" }, - { "homedecor:pole_wrought_iron", "default:iron_lump" }, - { "homedecor:pole_wrought_iron", "default:iron_lump" } - }, -}) - --- bedroom door - -minetest.register_craft( { - output = "homedecor:door_bedroom_left", - recipe = { - { "dye:white", "dye:white", "" }, - { "homedecor:door_wood_plain_left", "basic_materials:brass_ingot", "" }, - { "", "", "" }, - }, -}) - --- woodglass door - -minetest.register_craft( { - output = "homedecor:door_woodglass_left", - recipe = { - { "group:wood", "default:glass", "" }, - { "group:wood", "default:glass", "basic_materials:brass_ingot" }, - { "group:wood", "group:wood", "" }, - }, -}) - --- woodglass door type 2 - -minetest.register_craft( { - output = "homedecor:door_woodglass2_left", - recipe = { - { "default:glass", "default:glass", "" }, - { "group:wood", "group:wood", "default:iron_lump" }, - { "group:wood", "group:wood", "" }, - }, -}) - --- laundry stuff - -minetest.register_craft( { - output = "homedecor:washing_machine", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, - { "default:steel_ingot", "bucket:bucket_water", "default:steel_ingot" }, - { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:washing_machine", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, - { "default:steel_ingot", "bucket:bucket_water", "default:steel_ingot" }, - { "default:steel_ingot", "technic:motor", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:dryer", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, - { "default:steel_ingot", "bucket:bucket_empty", "basic_materials:motor" }, - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:dryer", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, - { "default:steel_ingot", "bucket:bucket_empty", "technic:motor" }, - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:ironing_board", - recipe = { - { "wool:grey", "wool:grey", "wool:grey"}, - { "", "default:steel_ingot", "" }, - { "default:steel_ingot", "", "default:steel_ingot" } - }, -}) - --- dishwashers - -minetest.register_craft( { - output = "homedecor:dishwasher", - recipe = { - { "basic_materials:ic", "homedecor:fence_chainlink", "default:steel_ingot", }, - { "default:steel_ingot", "homedecor:shower_head", "basic_materials:motor" }, - { "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" } - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher", - recipe = { - { "basic_materials:ic", "homedecor:fence_chainlink", "default:steel_ingot", }, - { "default:steel_ingot", "homedecor:shower_head", "technic:motor" }, - { "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" } - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_wood", - recipe = { - { "stairs:slab_wood" }, - { "homedecor:dishwasher" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_wood", - recipe = { - { "moreblocks:slab_wood" }, - { "homedecor:dishwasher" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_wood", - recipe = { - { "moreblocks:slab_wood_1" }, - { "homedecor:dishwasher" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_steel", - recipe = { - { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, - { "", "homedecor:dishwasher", "" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_steel", - recipe = { - { "moreblocks:slab_steelblock_1" }, - { "homedecor:dishwasher" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_marble", - recipe = { - { "darkage:slab_marble" }, - { "homedecor:dishwasher" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:dishwasher_granite", - recipe = { - { "technic:slab_granite_1" }, - { "homedecor:dishwasher" }, - }, -}) - --- paintings - -minetest.register_craft({ - output = "homedecor:blank_canvas", - recipe = { - { "", "group:stick", "" }, - { "group:stick", "wool:white", "group:stick" }, - { "", "group:stick", "" }, - } -}) - -local painting_patterns = { - [1] = { { "brown", "red", "brown" }, - { "dark_green", "red", "green" } }, - - [2] = { { "green", "yellow", "green" }, - { "green", "yellow", "green" } }, - - [3] = { { "green", "pink", "green" }, - { "brown", "pink", "brown" } }, - - [4] = { { "black", "orange", "grey" }, - { "dark_green", "orange", "orange" } }, - - [5] = { { "blue", "orange", "yellow" }, - { "green", "red", "brown" } }, - - [6] = { { "green", "red", "orange" }, - { "orange", "yellow", "green" } }, - - [7] = { { "blue", "dark_green", "dark_green" }, - { "green", "grey", "green" } }, - - [8] = { { "blue", "blue", "blue" }, - { "green", "green", "green" } }, - - [9] = { { "blue", "blue", "dark_green" }, - { "green", "grey", "dark_green" } }, - - [10] = { { "green", "white", "green" }, - { "dark_green", "white", "dark_green" } }, - - [11] = { { "blue", "white", "blue" }, - { "blue", "grey", "dark_green" } }, - - [12] = { { "green", "green", "green" }, - { "grey", "grey", "green" } }, - - [13] = { { "blue", "blue", "grey" }, - { "dark_green", "white", "white" } }, - - [14] = { { "red", "yellow", "blue" }, - { "blue", "green", "violet" } }, - - [15] = { { "blue", "yellow", "blue" }, - { "black", "black", "black" } }, - - [16] = { { "red", "orange", "blue" }, - { "black", "dark_grey", "grey" } }, - - [17] = { { "orange", "yellow", "orange" }, - { "black", "black", "black" } }, - - [18] = { { "grey", "dark_green", "grey" }, - { "white", "white", "white" } }, - - [19] = { { "white", "brown", "green" }, - { "green", "brown", "brown" } }, - - [20] = { { "blue", "blue", "blue" }, - { "red", "brown", "grey" } } -} - -for i,recipe in pairs(painting_patterns) do - - local item1 = "dye:"..recipe[1][1] - local item2 = "dye:"..recipe[1][2] - local item3 = "dye:"..recipe[1][3] - local item4 = "dye:"..recipe[2][1] - local item5 = "dye:"..recipe[2][2] - local item6 = "dye:"..recipe[2][3] - - minetest.register_craft({ - output = "homedecor:painting_"..i, - recipe = { - { item1, item2, item3 }, - { item4, item5, item6 }, - {"", "homedecor:blank_canvas", "" } - } - }) -end - --- more misc stuff here - -minetest.register_craft({ - output = "homedecor:chimney 2", - recipe = { - { "default:clay_brick", "", "default:clay_brick" }, - { "default:clay_brick", "", "default:clay_brick" }, - { "default:clay_brick", "", "default:clay_brick" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:fishtank", - recipe = { - { "basic_materials:plastic_sheet", "homedecor:glowlight_small_cube", "basic_materials:plastic_sheet" }, - { "default:glass", "bucket:bucket_water", "default:glass" }, - { "default:glass", "building_blocks:gravel_spread", "default:glass" }, - }, - replacements = { {"bucket:bucket_water", "bucket:bucket_empty"} } -}) - -minetest.register_craft({ - output = "homedecor:towel_rod", - recipe = { - { "group:wood", "group:stick", "group:wood" }, - { "", "building_blocks:terrycloth_towel", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:toilet_paper", - recipe = { - { "", "default:paper", "default:paper" }, - { "group:wood", "group:stick", "default:paper" }, - { "", "default:paper", "default:paper" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:medicine_cabinet", - recipe = { - { "group:stick", "default:glass", "group:stick" }, - { "group:stick", "default:glass", "group:stick" }, - { "group:stick", "default:glass", "group:stick" } - }, -}) - -minetest.register_craft({ - output = "homedecor:cardboard_box 2", - recipe = { - { "default:paper", "", "default:paper" }, - { "default:paper", "default:paper", "default:paper" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:cardboard_box_big 2", - recipe = { - { "default:paper", "", "default:paper" }, - { "default:paper", "", "default:paper" }, - { "default:paper", "default:paper", "default:paper" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:desk", - recipe = { - { "stairs:slab_wood", "stairs:slab_wood", "stairs:slab_wood" }, - { "homedecor:drawer_small", "default:wood", "default:wood" }, - { "homedecor:drawer_small", "", "default:wood" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:desk", - recipe = { - { "moreblocks:slab_wood", "moreblocks:slab_wood", "moreblocks:slab_wood" }, - { "homedecor:drawer_small", "default:wood", "default:wood" }, - { "homedecor:drawer_small", "", "default:wood" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:filing_cabinet", - recipe = { - { "", "default:wood", "" }, - { "default:wood", "homedecor:drawer_small", "default:wood" }, - { "", "default:wood", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:analog_clock_plastic 2", - recipe = { - { "basic_materials:plastic_sheet", "dye:black", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "dye:black", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:analog_clock_wood 2", - recipe = { - { "group:stick", "dye:black", "group:stick" }, - { "group:stick", "basic_materials:ic", "group:stick" }, - { "group:stick", "dye:black", "group:stick" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:digital_clock 2", - recipe = { - { "basic_materials:plastic_sheet", "default:paper", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:alarm_clock", - recipe = { - { "basic_materials:plastic_sheet", "homedecor:speaker_driver", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "homedecor:digital_clock", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:air_conditioner", - recipe = { - { "default:steel_ingot", "building_blocks:grate", "default:steel_ingot" }, - { "default:steel_ingot", "homedecor:fan_blades", "basic_materials:motor" }, - { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:air_conditioner", - recipe = { - { "default:steel_ingot", "building_blocks:grate", "default:steel_ingot" }, - { "default:steel_ingot", "technic:motor", "default:steel_ingot" }, - { "default:steel_ingot", "technic:motor", "default:steel_ingot" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:ceiling_fan", - recipe = { - { "basic_materials:motor" }, - { "homedecor:fan_blades" }, - { "homedecor:glowlight_small_cube" } - } -}) - -minetest.register_craft({ - output = "homedecor:ceiling_fan", - recipe = { - { "technic:motor" }, - { "homedecor:fan_blades" }, - { "homedecor:glowlight_small_cube" } - } -}) - -minetest.register_craft({ - output = "homedecor:welcome_mat_grey 2", - recipe = { - { "", "dye:black", "" }, - { "wool:grey", "wool:grey", "wool:grey" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:welcome_mat_brown 2", - recipe = { - { "", "dye:black", "" }, - { "wool:brown", "wool:brown", "wool:brown" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:welcome_mat_green 2", - recipe = { - { "", "dye:white", "" }, - { "wool:dark_green", "wool:dark_green", "wool:dark_green" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:welcome_mat_green 2", - recipe = { - { "", "dye:white", "" }, - { "dye:black", "dye:black", "dye:black" }, - { "wool:green", "wool:green", "wool:green" }, - }, -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:window_plain 8", - recipe = { - "dye:white", - "dye:white", - "dye:white", - "dye:white", - "building_blocks:woodglass" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:window_quartered", - recipe = { - "dye:white", - "group:stick", - "group:stick", - "homedecor:window_plain" - } -}) - -minetest.register_craft({ - output = "homedecor:vcr 2", - recipe = { - { "basic_materials:ic", "default:steel_ingot", "basic_materials:plastic_sheet" }, - { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, - { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:dvd_player 2", - recipe = { - { "", "basic_materials:plastic_sheet", "" }, - { "default:obsidian_glass", "basic_materials:motor", "basic_materials:motor" }, - { "default:mese_crystal_fragment", "basic_materials:ic", "basic_materials:energy_crystal_simple" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:dvd_player 2", - recipe = { - { "", "basic_materials:plastic_sheet", "" }, - { "default:obsidian_glass", "technic:motor", "technic:motor" }, - { "default:mese_crystal_fragment", "basic_materials:ic", "basic_materials:energy_crystal_simple" }, - }, -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:dvd_vcr", - recipe = { - "homedecor:vcr", - "homedecor:dvd_player" - }, -}) - -minetest.register_craft({ - output = "homedecor:blinds_thin", - recipe = { - { "group:stick", "basic_materials:plastic_sheet", "group:stick" }, - { "farming:string", "basic_materials:plastic_strip", "" }, - { "", "basic_materials:plastic_strip", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:blinds_thick", - recipe = { - { "group:stick", "basic_materials:plastic_sheet", "group:stick" }, - { "farming:string", "basic_materials:plastic_strip", "basic_materials:plastic_strip" }, - { "", "basic_materials:plastic_strip", "basic_materials:plastic_strip" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:openframe_bookshelf", - recipe = { - {"group:wood", "", "group:wood"}, - {"default:book", "default:book", "default:book"}, - {"group:wood", "", "group:wood"}, - }, -}) - -minetest.register_craft( { - output = "homedecor:desk_fan", - recipe = { - {"default:steel_ingot", "homedecor:fan_blades", "basic_materials:motor"}, - {"", "default:steel_ingot", ""} - }, -}) - -minetest.register_craft( { - output = "homedecor:space_heater", - recipe = { - {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"}, - {"basic_materials:plastic_sheet", "homedecor:fan_blades", "basic_materials:motor"}, - {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"} - }, -}) - -minetest.register_craft( { - output = "homedecor:radiator", - recipe = { - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" }, - { "basic_materials:ic", "basic_materials:heating_element", "" }, - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } - }, -}) - --- bathroom/kitchen tiles - -minetest.register_craft( { - output = "homedecor:bathroom_tiles_light 4", - recipe = { - { "group:marble", "group:marble", "" }, - { "group:marble", "group:marble", "dye:white" } - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bathroom_tiles_light", - palette = "extended", - type = "shapeless", - neutral_node = "homedecor:bathroom_tiles_light", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft( { - output = "homedecor:bathroom_tiles_medium 4", - recipe = { - { "darkage:marble", "darkage:marble", "" }, - { "darkage:marble", "darkage:marble", "dye:grey" } - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bathroom_tiles_medium", - palette = "extended", - type = "shapeless", - neutral_node = "homedecor:bathroom_tiles_medium", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft( { - output = "homedecor:bathroom_tiles_dark 4", - recipe = { - { "darkage:marble", "darkage:marble", "" }, - { "darkage:marble", "darkage:marble", "dye:dark_grey" } - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bathroom_tiles_dark", - palette = "extended", - type = "shapeless", - neutral_node = "homedecor:bathroom_tiles_dark", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - --- misc electrical - -minetest.register_craft( { - output = "homedecor:power_outlet", - recipe = { - {"basic_materials:plastic_sheet", "basic_materials:copper_strip"}, - {"basic_materials:plastic_sheet", ""}, - {"basic_materials:plastic_sheet", "basic_materials:copper_strip"} - }, -}) - -minetest.register_craft( { - output = "homedecor:light_switch", - recipe = { - {"", "basic_materials:plastic_sheet", "basic_materials:copper_strip"}, - {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:copper_strip"}, - {"", "basic_materials:plastic_sheet", "basic_materials:copper_strip"} - }, -}) - --- doghouse - -minetest.register_craft( { - output = "homedecor:doghouse", - recipe = { - {"homedecor:shingles_terracotta", "homedecor:shingles_terracotta", "homedecor:shingles_terracotta"}, - {"group:wood", "", "group:wood"}, - {"group:wood", "building_blocks:terrycloth_towel", "group:wood"} - }, -}) - --- japanese walls and mat - -minetest.register_craft( { - output = "homedecor:japanese_wall_top", - recipe = { - {"group:stick", "default:paper"}, - {"default:paper", "group:stick"}, - {"group:stick", "default:paper"} - }, -}) - -minetest.register_craft( { - output = "homedecor:japanese_wall_top", - recipe = { - {"default:paper", "group:stick"}, - {"group:stick", "default:paper"}, - {"default:paper", "group:stick"} - }, -}) - -minetest.register_craft( { - output = "homedecor:japanese_wall_middle", - recipe = { - {"homedecor:japanese_wall_top"} - }, -}) - -minetest.register_craft( { - output = "homedecor:japanese_wall_bottom", - recipe = { - {"homedecor:japanese_wall_middle"} - }, -}) - -minetest.register_craft( { - output = "homedecor:japanese_wall_top", - recipe = { - {"homedecor:japanese_wall_bottom"} - }, -}) - -minetest.register_craft( { - output = "homedecor:tatami_mat", - recipe = { - {"farming:wheat", "farming:wheat", "farming:wheat"} - }, -}) - -minetest.register_craft( { - output = "homedecor:wardrobe", - recipe = { - { "homedecor:drawer_small", "homedecor:kitchen_cabinet" }, - { "homedecor:drawer_small", "default:wood" }, - { "homedecor:drawer_small", "default:wood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:pool_table", - recipe = { - { "wool:dark_green", "wool:dark_green", "wool:dark_green" }, - { "building_blocks:hardwood", "building_blocks:hardwood", "building_blocks:hardwood" }, - { "building_blocks:slab_hardwood", "", "building_blocks:slab_hardwood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:trash_can 3", - recipe = { - { "basic_materials:steel_wire", "", "basic_materials:steel_wire" }, - { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:telephone", - recipe = { - { "homedecor:speaker_driver", "basic_materials:copper_wire", "homedecor:speaker_driver" }, - { "basic_materials:plastic_sheet", "default:steel_ingot", "basic_materials:plastic_sheet" }, - { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:cobweb_corner 5", - recipe = { - { "farming:string", "", "farming:string" }, - { "", "farming:string", "" }, - { "farming:string", "", "farming:string" } - }, -}) - -minetest.register_craft( { - output = "homedecor:well", - recipe = { - { "homedecor:shingles_wood", "homedecor:shingles_wood", "homedecor:shingles_wood" }, - { "group:wood", "group:stick", "group:wood" }, - { "group:stone", "", "group:stone" } - }, -}) - -minetest.register_craft( { - output = "homedecor:coat_tree", - recipe = { - { "group:stick", "group:stick", "group:stick" }, - { "", "group:stick", "" }, - { "", "group:wood", "" } - }, -}) - -minetest.register_craft( { - output = "homedecor:coatrack_wallmount", - recipe = { - { "group:stick", "homedecor:curtainrod_wood", "group:stick" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:doorbell", - recipe = { - { "homedecor:light_switch", "basic_materials:energy_crystal_simple", "homedecor:speaker_driver" } - }, -}) - - -minetest.register_craft( { - output = "homedecor:bench_large_1", - recipe = { - { "group:wood", "group:wood", "group:wood" }, - { "group:wood", "group:wood", "group:wood" }, - { "homedecor:pole_wrought_iron", "", "homedecor:pole_wrought_iron" } - }, -}) - -minetest.register_craft( { - output = "homedecor:bench_large_2_left", - recipe = { - { "homedecor:shutter_oak", "homedecor:shutter_oak", "homedecor:shutter_oak" }, - { "group:wood", "group:wood", "group:wood" }, - { "stairs:slab_wood", "", "stairs:slab_wood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:bench_large_2_left", - recipe = { - { "homedecor:shutter_oak", "homedecor:shutter_oak", "homedecor:shutter_oak" }, - { "group:wood", "group:wood", "group:wood" }, - { "moreblocks:slab_wood", "", "moreblocks:slab_wood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:kitchen_faucet", - recipe = { - { "", "default:steel_ingot" }, - { "default:steel_ingot", "" }, - { "homedecor:taps", "" } - }, -}) - -minetest.register_craft( { - output = "homedecor:cutlery_set", - recipe = { - { "", "vessels:drinking_glass", "" }, - { "basic_materials:steel_strip", "darkage:slab_marble", "basic_materials:steel_strip" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:cutlery_set", - recipe = { - { "", "vessels:drinking_glass", "" }, - { "basic_materials:steel_strip", "building_blocks:micro_marble_1", "basic_materials:steel_strip" }, - }, -}) - -minetest.register_craft( { - output = "homedecor:simple_bench", - recipe = { - { "stairs:slab_wood", "stairs:slab_wood", "stairs:slab_wood" }, - { "stairs:slab_wood", "", "stairs:slab_wood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:simple_bench", - recipe = { - { "moreblocks:slab_wood", "moreblocks:slab_wood", "moreblocks:slab_wood" }, - { "moreblocks:slab_wood", "", "moreblocks:slab_wood" } - }, -}) - -minetest.register_craft( { - output = "homedecor:bed_regular", - recipe = { - { "group:stick", "", "group:stick" }, - { "wool:white", "wool:white", "wool:white" }, - { "group:wood", "", "group:wood" }, - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bed_regular", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:bed_regular", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft( { - output = "homedecor:bed_kingsize", - recipe = { - { "homedecor:bed_regular", "homedecor:bed_regular" } - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bed_kingsize", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:bed_kingsize", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -unifieddyes.register_color_craft({ - output = "homedecor:bed_kingsize", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:bed_regular", - recipe = { - "NEUTRAL_NODE", - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft( { - output = "homedecor:bottle_green", - recipe = { - { "vessels:glass_bottle", "dye:green" } - }, -}) - -minetest.register_craft( { - output = "homedecor:bottle_brown", - recipe = { - { "vessels:glass_bottle", "dye:brown" } - }, -}) - -minetest.register_craft({ - output = "homedecor:coffee_maker", - recipe = { - {"basic_materials:plastic_sheet", "bucket:bucket_water", "basic_materials:plastic_sheet"}, - {"basic_materials:plastic_sheet", "default:glass", "basic_materials:plastic_sheet"}, - {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"} - }, -}) - -minetest.register_craft({ - output = "homedecor:dartboard", - recipe = { - {"dye:black", "basic_materials:plastic_sheet", "dye:white"}, - {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"}, - {"dye:dark_green", "basic_materials:plastic_sheet", "dye:red"} - }, -}) - -minetest.register_craft({ - output = "homedecor:piano", - recipe = { - { "", "basic_materials:steel_wire", "building_blocks:hardwood" }, - { "basic_materials:plastic_strip", "basic_materials:steel_wire", "building_blocks:hardwood" }, - { "basic_materials:brass_ingot", "default:steelblock", "building_blocks:hardwood" } - }, -}) - -minetest.register_craft({ - output = "homedecor:toaster", - recipe = { - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" }, - { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } - }, -}) - -minetest.register_craft({ - output = "homedecor:deckchair", - recipe = { - { "group:stick", "building_blocks:terrycloth_towel", "group:stick" }, - { "group:stick", "building_blocks:terrycloth_towel", "group:stick" }, - { "group:stick", "building_blocks:terrycloth_towel", "group:stick" } - }, -}) - -minetest.register_craft({ - output = "homedecor:deckchair_striped_blue", - type = "shapeless", - recipe = { - "homedecor:deckchair", - "dye:blue" - } -}) - -minetest.register_craft({ - output = "homedecor:office_chair_basic", - recipe = { - { "", "", "wool:black" }, - { "", "wool:black", "default:steel_ingot" }, - { "group:stick", "homedecor:pole_wrought_iron", "group:stick" } - }, -}) - -minetest.register_craft({ - output = "homedecor:office_chair_upscale", - recipe = { - { "dye:black", "building_blocks:sticks", "group:wool" }, - { "basic_materials:plastic_sheet", "group:wool", "default:steel_ingot" }, - { "building_blocks:sticks", "homedecor:pole_wrought_iron", "building_blocks:sticks" } - }, -}) - -minetest.register_craft({ - output = "homedecor:wall_shelf 2", - recipe = { - { "homedecor:wood_table_small_square", "homedecor:curtainrod_wood", "homedecor:curtainrod_wood" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:trophy 3", - recipe = { - { "default:gold_ingot","","default:gold_ingot" }, - { "","default:gold_ingot","" }, - { "group:wood","default:gold_ingot","group:wood" } - }, -}) - -minetest.register_craft({ - output = "homedecor:grandfather_clock", - recipe = { - { "building_blocks:slab_hardwood","homedecor:analog_clock_wood","building_blocks:slab_hardwood" }, - { "building_blocks:slab_hardwood","basic_materials:brass_ingot","building_blocks:slab_hardwood" }, - { "building_blocks:slab_hardwood","basic_materials:brass_ingot","building_blocks:slab_hardwood" } - }, -}) - -minetest.register_craft({ - output = "homedecor:sportbench", - recipe = { - { "stairs:slab_steelblock","homedecor:pole_wrought_iron","stairs:slab_steelblock" }, - { "default:steel_ingot","wool:black","default:steel_ingot" }, - { "default:steel_ingot","wool:black","default:steel_ingot" } - }, -}) - -minetest.register_craft({ - output = "homedecor:skateboard", - recipe = { - { "dye:yellow","dye:green","dye:blue" }, - { "homedecor:wood_table_small_square","homedecor:wood_table_small_square","homedecor:wood_table_small_square" }, - { "default:steel_ingot","","default:steel_ingot" } - }, -}) - -minetest.register_craft({ - output = "homedecor:copper_pans", - recipe = { - { "basic_materials:copper_strip","","basic_materials:copper_strip" }, - { "default:copper_ingot","","default:copper_ingot" }, - { "default:copper_ingot","","default:copper_ingot" } - }, -}) - -minetest.register_craft( { - output = "homedecor:window_flowerbox", - recipe = { - { "homedecor:roof_tile_terracotta", "default:dirt", "homedecor:roof_tile_terracotta" }, - { "", "homedecor:roof_tile_terracotta", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:paper_towel", - recipe = { - { "homedecor:toilet_paper", "homedecor:toilet_paper" } - }, -}) - -minetest.register_craft({ - output = "homedecor:stonepath 16", - recipe = { - { "stairs:slab_stone","","stairs:slab_stone" }, - { "","stairs:slab_stone","" }, - { "stairs:slab_stone","","stairs:slab_stone" } - }, -}) - -minetest.register_craft({ - output = "homedecor:stonepath 16", - recipe = { - { "moreblocks:slab_stone","","moreblocks:slab_stone" }, - { "","moreblocks:slab_stone","" }, - { "moreblocks:slab_stone","","moreblocks:slab_stone" } - }, -}) - -minetest.register_craft({ - output = "homedecor:stonepath 3", - recipe = { - { "moreblocks:micro_stone_1","","moreblocks:micro_stone_1" }, - { "","moreblocks:micro_stone_1","" }, - { "moreblocks:micro_stone_1","","moreblocks:micro_stone_1" } - }, -}) - -minetest.register_craft({ - output = "homedecor:barbecue", - recipe = { - { "","homedecor:fence_chainlink","" }, - { "default:steel_ingot","fake_fire:embers","default:steel_ingot" }, - { "homedecor:pole_wrought_iron","default:steel_ingot","homedecor:pole_wrought_iron" } - }, -}) - -minetest.register_craft({ - output = "homedecor:beer_tap", - recipe = { - { "group:stick","default:steel_ingot","group:stick" }, - { "homedecor:kitchen_faucet","default:steel_ingot","homedecor:kitchen_faucet" }, - { "default:steel_ingot","default:steel_ingot","default:steel_ingot" } - }, -}) - -minetest.register_craft({ - output = "homedecor:swing", - recipe = { - { "farming:string","","farming:string" }, - { "farming:string","","farming:string" }, - { "farming:string","stairs:slab_wood","farming:string" } - }, -}) - -minetest.register_craft({ - output = "homedecor:swing", - recipe = { - { "farming:string","","farming:string" }, - { "farming:string","","farming:string" }, - { "farming:string","moreblocks:slab_wood","farming:string" } - }, -}) - -minetest.register_craft({ - output = "homedecor:swing", - recipe = { - { "farming:string","","farming:string" }, - { "farming:string","","farming:string" }, - { "farming:string","moreblocks:panel_wood_1","farming:string" } - }, -}) - -local bookcolors = { - "red", - "green", - "blue", - "violet", - "grey", - "brown" -} - -for _, color in ipairs(bookcolors) do - minetest.register_craft({ - type = "shapeless", - output = "homedecor:book_"..color, - recipe = { - "dye:"..color, - "default:book" - }, - }) -end - -minetest.register_craft({ - output = "homedecor:door_japanese_closed", - recipe = { - { "homedecor:japanese_wall_top" }, - { "homedecor:japanese_wall_bottom" } - }, -}) - -minetest.register_craft({ - output = "homedecor:calendar", - recipe = { - { "","dye:red","" }, - { "","dye:black","" }, - { "","default:paper","" } - }, -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:4_bottles_brown", - recipe = { - "homedecor:bottle_brown", - "homedecor:bottle_brown", - "homedecor:bottle_brown", - "homedecor:bottle_brown" - }, -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:4_bottles_green", - recipe = { - "homedecor:bottle_green", - "homedecor:bottle_green", - "homedecor:bottle_green", - "homedecor:bottle_green" - }, -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:4_bottles_multi", - recipe = { - "homedecor:bottle_brown", - "homedecor:bottle_brown", - "homedecor:bottle_green", - "homedecor:bottle_green", - }, -}) - -minetest.register_craft({ - output = "homedecor:wine_rack", - recipe = { - { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, - { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, - { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, - }, -}) - -local picture_dyes = { - {"dye:brown", "dye:green"}, -- the figure sitting by the tree, wielding a pick - {"dye:green", "dye:blue"} -- the "family photo" -} - -for i in ipairs(picture_dyes) do - minetest.register_craft({ - output = "homedecor:picture_frame"..i, - recipe = { - { picture_dyes[i][1], picture_dyes[i][2] }, - { "homedecor:blank_canvas", "group:stick" }, - }, - }) -end - -minetest.register_craft({ - output = "homedecor:desk_lamp 2", - recipe = { - { "", "default:steel_ingot", "homedecor:glowlight_small_cube" }, - { "", "basic_materials:steel_strip", "" }, - { "basic_materials:plastic_sheet", "basic_materials:copper_wire", "basic_materials:plastic_sheet" }, - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:desk_lamp", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:desk_lamp", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - output = "homedecor:hanging_lantern 2", - recipe = { - { "default:iron_lump", "default:iron_lump", "" }, - { "default:iron_lump", "homedecor:lattice_lantern_large", "" }, - { "default:iron_lump", "", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:ceiling_lantern 2", - recipe = { - { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, - { "default:iron_lump", "homedecor:lattice_lantern_large", "default:iron_lump" }, - { "", "default:iron_lump", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:wall_lamp 2", - recipe = { - { "", "homedecor:lattice_lantern_large", "" }, - { "default:iron_lump", "group:stick", "" }, - { "default:iron_lump", "group:stick", "" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:desk_globe", - recipe = { - { "group:stick", "basic_materials:plastic_sheet", "dye:green" }, - { "group:stick", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "group:stick", "stairs:slab_wood", "dye:blue" } - }, -}) - -minetest.register_craft({ - output = "homedecor:desk_globe", - recipe = { - { "group:stick", "basic_materials:plastic_sheet", "dye:green" }, - { "group:stick", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, - { "group:stick", "moreblocks:slab_wood", "dye:blue" } - }, -}) - -minetest.register_craft({ - output = "homedecor:tool_cabinet", - recipe = { - { "basic_materials:motor", "default:axe_steel", "default:pick_steel" }, - { "default:steel_ingot", "homedecor:drawer_small", "default:steel_ingot" }, - { "default:steel_ingot", "homedecor:drawer_small", "default:steel_ingot" } - }, -}) - -minetest.register_craft({ - output = "homedecor:bathroom_set", - recipe = { - { "", "homedecor:glass_table_small_round", "" }, - { "basic_materials:plastic_sheet", "homedecor:glass_table_small_round", "basic_materials:plastic_sheet" }, - { "group:stick", "basic_materials:plastic_sheet", "group:stick" } - }, -}) - -minetest.register_craft({ - output = "homedecor:trash_can_green", - recipe = { - { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "dye:green", "basic_materials:plastic_sheet" }, - { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" } - }, -}) - -minetest.register_craft({ - output = "homedecor:ceiling_lamp", - recipe = { - { "", "basic_materials:brass_ingot", ""}, - { "", "basic_materials:chainlink_brass", ""}, - { "default:glass", "homedecor:glowlight_small_cube", "default:glass"} - }, -}) - -minetest.register_craft({ - output = "homedecor:ceiling_lamp", - recipe = { - { "", "basic_materials:chain_steel_top_brass", ""}, - { "default:glass", "homedecor:glowlight_small_cube", "default:glass"} - }, -}) - -minetest.register_craft({ - output = "homedecor:spiral_staircase", - recipe = { - { "default:steelblock", "homedecor:pole_wrought_iron", "" }, - { "", "homedecor:pole_wrought_iron", "default:steelblock" }, - { "default:steelblock", "homedecor:pole_wrought_iron", "" } - }, -}) - -minetest.register_craft({ - output = "homedecor:soda_machine", - recipe = { - {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, - {"default:steel_ingot", "dye:red", "default:steel_ingot"}, - {"default:steel_ingot", "default:copperblock", "default:steel_ingot"}, - }, -}) - -if minetest.settings:get_bool("homedecor.disable_coin_crafting") == false then - minetest.register_craft({ - type = "shapeless", - output = "homedecor:coin 5", - recipe = {"moreblocks:micro_goldblock_1", "default:sword_stone"} - }) - - minetest.register_craft({ - type = "shapeless", - output = "homedecor:coin 15", - recipe = {"default:gold_ingot", "default:sword_steel"} - }) - - minetest.register_craft({ - type = "shapeless", - output = "homedecor:coin 50", - recipe = {"default:goldblock", "default:sword_mese"} - }) -else - if minetest.settings:get("log_mods") then - minetest.log("[HomeDecor] " .. S("coin crafting is disabled!")) - end -end - -minetest.register_craft({ - output = "homedecor:lattice_wood 8", - recipe = { - {"group:stick", "group:wood", "group:stick"}, - {"group:wood", "", "group:wood"}, - {"group:stick", "group:wood", "group:stick"}, - }, -}) - -minetest.register_craft({ - output = "homedecor:lattice_white_wood 8", - recipe = { - {"group:stick", "group:wood", "group:stick"}, - {"group:wood", "dye:white", "group:wood"}, - {"group:stick", "group:wood", "group:stick"}, - }, -}) - -minetest.register_craft({ - output = "homedecor:lattice_wood_vegetal 8", - recipe = { - {"group:stick", "group:wood", "group:stick"}, - {"group:wood", "group:leaves", "group:wood"}, - {"group:stick", "group:wood", "group:stick"}, - }, -}) - -minetest.register_craft({ - output = "homedecor:lattice_white_wood_vegetal 8", - recipe = { - {"group:stick", "group:wood", "group:stick"}, - {"group:wood", "group:leaves", "group:wood"}, - {"group:stick", "dye:white", "group:stick"}, - }, -}) - -minetest.register_craft({ - output = "homedecor:stained_glass 8", - recipe = { - {"", "dye:blue", ""}, - {"dye:red", "default:glass", "dye:green"}, - {"", "dye:yellow", ""}, - }, -}) - -minetest.register_craft({ - output = "homedecor:stained_glass 3", - recipe = { - {"", "dye:blue", ""}, - {"dye:red", "xpanes:pane_flat", "dye:green"}, - {"", "dye:yellow", ""}, - }, -}) - -minetest.register_craft({ - output = "homedecor:stained_glass 2", - recipe = { - {"", "dye:blue", ""}, - {"dye:red", "cottages:glass_pane_side", "dye:green"}, - {"", "dye:yellow", ""}, - }, -}) - -minetest.register_craft({ - output = "homedecor:stained_glass 2", - recipe = { - {"", "dye:blue", ""}, - {"dye:red", "cottages:glass_pane", "dye:green"}, - {"", "dye:yellow", ""}, - }, -}) - -minetest.register_craftitem("homedecor:flower_pot_small", { - description = S("Small Flower Pot"), - inventory_image = "homedecor_flowerpot_small_inv.png" -}) - -minetest.register_craft( { - output = "homedecor:flower_pot_small", - recipe = { - { "default:clay_brick", "", "default:clay_brick" }, - { "", "default:clay_brick", "" } - } -}) - -minetest.register_craft( { - output = "homedecor:flower_pot_small 3", - recipe = { { "homedecor:flower_pot_terracotta" } } -}) - -minetest.register_craft({ - output = "homedecor:shrubbery_green 3", - recipe = { - { "group:leaves", "group:leaves", "group:leaves" }, - { "group:leaves", "group:leaves", "group:leaves" }, - { "group:stick", "group:stick", "group:stick" } - } -}) - -for _, color in ipairs(homedecor.shrub_colors) do - - minetest.register_craft({ - type = "shapeless", - output = "homedecor:shrubbery_large_"..color, - recipe = { - "homedecor:shrubbery_"..color - } - }) - - minetest.register_craft({ - type = "shapeless", - output = "homedecor:shrubbery_"..color, - recipe = { - "homedecor:shrubbery_large_"..color - } - }) - - if color ~= "green" then - minetest.register_craft({ - type = "shapeless", - output = "homedecor:shrubbery_large_"..color, - recipe = { - "homedecor:shrubbery_large_green", - "dye:"..color - } - }) - - minetest.register_craft({ - type = "shapeless", - output = "homedecor:shrubbery_"..color, - recipe = { - "homedecor:shrubbery_green", - "dye:"..color - } - }) - - end -end - -for i in ipairs(homedecor.banister_materials) do - - local name = homedecor.banister_materials[i][1] - local topmat = homedecor.banister_materials[i][5] - local vertmat = homedecor.banister_materials[i][6] - local dye1 = homedecor.banister_materials[i][7] - local dye2 = homedecor.banister_materials[i][8] - - minetest.register_craft({ - output = "homedecor:banister_"..name.."_horizontal 2", - recipe = { - { topmat, "", dye1 }, - { vertmat, topmat, "" }, - { dye2, vertmat, topmat } - }, - }) -end - -unifieddyes.register_color_craft({ - output = "", - palette = "split", - neutral_node = "homedecor:banister_wood_horizontal", - type = "shapeless", - output_prefix = "homedecor:banister_wood_horizontal_", - output_suffix = "", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE", - } -}) - -if (minetest.get_modpath("technic") and minetest.get_modpath("dye") and minetest.get_modpath("bees")) then - technic.register_separating_recipe({ input = {"bees:wax 1"}, output = {"basic_materials:oil_extract 2","dye:yellow 1"} }) -end diff --git a/homedecor/depends.txt b/homedecor/depends.txt deleted file mode 100755 index ec57479..0000000 --- a/homedecor/depends.txt +++ /dev/null @@ -1,19 +0,0 @@ -default -basic_materials -unifieddyes -homedecor_i18n -creative -currency? -building_blocks? -signs_lib? -moreblocks? -technic? -dye? -bees? -bucket? -beds? -flowers? -3d_armor? -skinsdb? -mesecons? -darkage? diff --git a/homedecor/doors_and_gates.lua b/homedecor/doors_and_gates.lua deleted file mode 100755 index afcc7ff..0000000 --- a/homedecor/doors_and_gates.lua +++ /dev/null @@ -1,662 +0,0 @@ --- Node definitions for Homedecor doors - -local S = homedecor_i18n.gettext - -local function N_(x) return x end - -local m_rules = mesecon and mesecon.rules and mesecon.rules.pplate - --- doors - -local function isSolid(pos, adjust) - local adj = {x = adjust[1], y = adjust[2], z = adjust[3]} - local node = minetest.get_node(vector.add(pos,adj)) - if node then - local idef = minetest.registered_nodes[minetest.get_node(vector.add(pos,adj)).name] - if idef then - return idef.walkable - end - end - return false -end - -local function countSolids(pos,node,level) - local solids = 0 - for x = -1, 1 do - for z = -1, 1 do - local y = (node.param2 == 5) and -level or level - -- special cases when x == z == 0 - if x == 0 and z == 0 then - if level == 1 then - -- when looking past the trap door, cannot be solid in center - if isSolid(pos,{x,y,z}) then - return false - end - -- no else. it doesn't matter if x == y == z is solid, that's us. - end - elseif isSolid(pos,{x,y,z}) then - solids = solids + 1 - end - end - end - return solids -end - -local function calculateClosed(pos) - local node = minetest.get_node(pos) - -- the door is considered closed if it is closing off something. - - local direction = node.param2 % 6 - local isTrap = direction == 0 or direction == 5 - if isTrap then - -- the trap door is considered closed when all nodes on its sides are solid - -- or all nodes in the 3x3 above/below it are solid except the center - for level = 0, 1 do - local solids = countSolids(pos,node,level) - if solids == 8 then - return true - end - end - return false - else - -- the door is considered closed when the nodes on its sides are solid - -- or the 3 nodes in its facing direction are solid nonsolid solid - -- if the door has two levels (i.e. not a gate) then this must - -- be true for the top node as well. - - -- sorry I dunno the math to figure whether to x or z - if direction == 1 or direction == 2 then - if isSolid(pos,{0,0,-1}) and isSolid(pos,{0,0,1}) then - if string.find(node.name,'_bottom_') then - return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z}) - else - return true - end - end - local x = (direction == 1) and 1 or -1 - if isSolid(pos,{x,0,-1}) and not isSolid(pos,{x,0,0}) and isSolid(pos,{x,0,1}) then - if string.find(node.name,'_bottom_') then - return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z}) - else - return true - end - end - return false - else - -- direction == 3 or 4 - if isSolid(pos,{-1,0,0}) and isSolid(pos,{1,0,0}) then - if string.find(node.name,'_bottom_') then - return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z}) - else - return true - end - end - local z = (direction == 3) and 1 or -1 - if isSolid(pos,{-1,0,z}) and not isSolid(pos,{0,0,z}) and isSolid(pos,{1,0,z}) then - if string.find(node.name,'_bottom_') then - return calculateClosed({x=pos.x,y=pos.y+1,z=pos.z}) - else - return true - end - end - return false - end - end -end - --- isClosed flag, is 0 or 1 0 = open, 1 = closed -local function getClosed(pos) - local isClosed = minetest.get_meta(pos):get_string('closed') - if isClosed=='' then - return calculateClosed(pos) - else - isClosed = tonumber(isClosed) - -- may be closed or open (1 or 0) - return isClosed == 1 - end -end - -local function addDoorNode(pos,def,isClosed) - minetest.set_node(pos, def) - minetest.get_meta(pos):set_int('closed', isClosed and 1 or 0) -end - -local door_model_list = { - { name = "closet_mahogany", - description = N_("Mahogany Closet Door (@1 opening)"), - mesh = "homedecor_door_closet.obj" - }, - - { name = "closet_oak", - description = N_("Oak Closet Door (@1 opening)"), - mesh = "homedecor_door_closet.obj" - }, - - { name = "exterior_fancy", - description = N_("Fancy Wood/Glass Door (@1 opening)"), - mesh = "homedecor_door_fancy.obj", - tiles = { - "homedecor_door_exterior_fancy.png", - "homedecor_door_exterior_fancy_insert.png" - }, - usealpha = true - }, - - { name = "wood_glass_oak", - description = N_("Glass and Wood, Oak-colored (@1 opening)"), - mesh = "homedecor_door_wood_glass.obj", - tiles = { - "homedecor_door_wood_glass_oak.png", - "homedecor_door_wood_glass_insert.png", - } - }, - - { name = "wood_glass_mahogany", - description = N_("Glass and Wood, Mahogany-colored (@1 opening)"), - mesh = "homedecor_door_wood_glass.obj", - tiles = { - "homedecor_door_wood_glass_mahogany.png", - "homedecor_door_wood_glass_insert.png", - } - }, - - { name = "wood_glass_white", - description = N_("Glass and Wood, White (@1 opening)"), - mesh = "homedecor_door_wood_glass.obj", - tiles = { - "homedecor_door_wood_glass_white.png", - "homedecor_door_wood_glass_insert.png", - } - }, - - { name = "wood_plain", - description = N_("Plain Wooden Door (@1 opening)"), - mesh = "homedecor_door_plain.obj" - }, - - { name = "bedroom", - description = N_("White Bedroom Door (@1 opening)"), - mesh = "homedecor_door_plain.obj" - }, - - { name = "wrought_iron", - description = N_("Wrought Iron Gate/Door (@1 opening)"), - mesh = "homedecor_door_wrought_iron.obj" - }, - - { name = "woodglass", - description = N_("Wooden door with glass insert (@1 opening)"), - mesh = "homedecor_door_woodglass_typea.obj", - tiles = { - "homedecor_door_woodglass_typea.png", - "homedecor_door_woodglass_typea_insert.png", - }, - usealpha = true - }, - - { name = "woodglass2", - description = N_("Wooden door with glass insert, type 2 (@1 opening)"), - mesh = "homedecor_door_plain.obj", - usealpha = true - }, -} - -local def_selbox = { - type = "fixed", - fixed = { -0.5, -0.5, 0.375, 0.5, 1.5, 0.5 } -} - -local sides = { N_("left"), N_("right") } - -for i, side in ipairs(sides) do - - for _, door_model in ipairs(door_model_list) do - - local doorname = door_model.name - - local selbox = door_model.selectbox or def_selbox - local colbox = door_model.collisionbox or door_model.selectbox or def_selbox - local mesh = door_model.mesh - local groups = {snappy = 3} - - if side == "right" then - mesh = string.gsub(door_model.mesh, ".obj", "_right.obj") - groups = {snappy = 3, not_in_creative_inventory = 1} - end - - minetest.register_node("homedecor:door_"..doorname.."_"..side, { - description = S(door_model.description, S(side)), - drawtype = "mesh", - mesh = mesh, - tiles = door_model.tiles or { "homedecor_door_"..doorname..".png" }, - inventory_image = "homedecor_door_"..doorname.."_inv.png", - wield_image = "homedecor_door_"..doorname.."_inv.png", - paramtype = "light", - paramtype2 = "facedir", - groups = groups, - sounds = default.node_sound_wood_defaults(), - use_texture_alpha = door_model.usealpha, - selection_box = selbox, - collision_box = colbox, - on_rotate = screwdriver.rotate_simple, - on_place = function(itemstack, placer, pointed_thing) - return homedecor.stack_wing(itemstack, placer, pointed_thing, - "homedecor:door_"..doorname.."_left", "air", - "homedecor:door_"..doorname.."_right", "air") - end, - on_construct = function(pos) - minetest.get_meta(pos):set_int("closed", 1) - end, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - homedecor.flip_door(pos, node, clicker, doorname, side) - return itemstack - end, - -- both left and right doors may be used for open or closed doors - -- so they have to have both action_on and action_off and just - -- check when that action is invoked if to continue - - on_punch = function(pos, node, puncher) - minetest.get_meta(pos):set_string('closed',nil) - end, - drop = "homedecor:door_"..doorname.."_left", - mesecons = { - effector = { - rules = m_rules, - action_on = function(pos,node) - local isClosed = getClosed(pos) - if isClosed then - homedecor.flip_door(pos,node,nil,doorname,side,isClosed) - end - end, - action_off = function(pos,node) - local isClosed = getClosed(pos) - if not isClosed then - homedecor.flip_door(pos,node,nil,doorname,side,isClosed) - end - end - } - } - }) - - minetest.register_alias("homedecor:door_"..doorname.."_top_"..side, "air") - minetest.register_alias("homedecor:door_"..doorname.."_bottom_"..side, "homedecor:door_"..doorname.."_"..side) - - end - - minetest.register_alias("homedecor:door_wood_glass_top_"..side, "air") - minetest.register_alias("homedecor:door_wood_glass_bottom_"..side, "homedecor:door_wood_glass_oak_"..side) - -end - --- Gates - -local gate_list = { - { "picket", S("Unpainted Picket Fence Gate") }, - { "picket_white", S("White Picket Fence Gate") }, - { "barbed_wire", S("Barbed Wire Fence Gate") }, - { "chainlink", S("Chainlink Fence Gate") }, - { "half_door", S("\"Half\" Door") }, - { "half_door_white", S("\"Half\" Door (white)") } -} - -local gate_models_closed = { - {{ -0.5, -0.5, 0.498, 0.5, 0.5, 0.498 }}, - - {{ -0.5, -0.5, 0.498, 0.5, 0.5, 0.498 }}, - - {{ -8/16, -8/16, 6/16, -6/16, 8/16, 8/16 }, -- left post - { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post - { -8/16, 7/16, 13/32, 8/16, 8/16, 15/32 }, -- top piece - { -8/16, -8/16, 13/32, 8/16, -7/16, 15/32 }, -- bottom piece - { -6/16, -8/16, 7/16, 6/16, 8/16, 7/16 }}, -- the wire - - {{ -8/16, -8/16, 6/16, -7/16, 8/16, 8/16 }, -- left post - { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post - { -8/16, 7/16, 13/32, 8/16, 8/16, 15/32 }, -- top piece - { -8/16, -8/16, 13/32, 8/16, -7/16, 15/32 }, -- bottom piece - { -8/16, -8/16, 7/16, 8/16, 8/16, 7/16 }, -- the chainlink itself - { -8/16, -3/16, 6/16, -6/16, 3/16, 8/16 }}, -- the lump representing the lock - - {{ -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }}, -- the whole door :P - - {{ -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }}, -- the whole door :P - -} - -local gate_models_open = { - {{ 0.498, -0.5, -0.5, 0.498, 0.5, 0.5 }}, - - {{ 0.498, -0.5, -0.5, 0.498, 0.5, 0.5 }}, - - {{ 6/16, -8/16, -8/16, 8/16, 8/16, -6/16 }, -- left post - { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post - { 13/32, 7/16, -8/16, 15/32, 8/16, 8/16 }, -- top piece - { 13/32, -8/16, -8/16, 15/32, -7/16, 8/16 }, -- bottom piece - { 7/16, -8/16, -6/16, 7/16, 8/16, 6/16 }}, -- the wire - - {{ 6/16, -8/16, -8/16, 8/16, 8/16, -7/16 }, -- left post - { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post - { 13/32, 7/16, -8/16, 15/32, 8/16, 8/16 }, -- top piece - { 13/32, -8/16, -8/16, 15/32, -7/16, 8/16 }, -- bottom piece - { 7/16, -8/16, -8/16, 7/16, 8/16, 8/16 }, -- the chainlink itself - { 6/16, -3/16, -8/16, 8/16, 3/16, -6/16 }}, -- the lump representing the lock - - {{ 6/16, -8/16, -8/16, 8/16, 8/16, 8/16 }}, -- the whole door :P - - {{ 6/16, -8/16, -8/16, 8/16, 8/16, 8/16 }}, -- the whole door :P -} - -for i, g in ipairs(gate_list) do - - local gate, gatedesc = unpack(g) - - local tiles = { - "homedecor_gate_"..gate.."_tb.png", - "homedecor_gate_"..gate.."_tb.png", - "homedecor_gate_"..gate.."_lr.png", - "homedecor_gate_"..gate.."_lr.png", - "homedecor_gate_"..gate.."_fb.png^[transformFX", - "homedecor_gate_"..gate.."_fb.png" - } - - if gate == "barbed_wire" then - tiles = { - "homedecor_gate_barbed_wire_edges.png", - "homedecor_gate_barbed_wire_edges.png", - "homedecor_gate_barbed_wire_edges.png", - "homedecor_gate_barbed_wire_edges.png", - "homedecor_gate_barbed_wire_fb.png^[transformFX", - "homedecor_gate_barbed_wire_fb.png" - } - end - - if gate == "picket" or gate == "picket_white" then - tiles = { - "homedecor_blanktile.png", - "homedecor_blanktile.png", - "homedecor_blanktile.png", - "homedecor_blanktile.png", - "homedecor_gate_"..gate.."_back.png", - "homedecor_gate_"..gate.."_front.png" - } - end - - local def = { - drawtype = "nodebox", - description = gatedesc, - tiles = tiles, - paramtype = "light", - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), - paramtype2 = "facedir", - selection_box = { - type = "fixed", - fixed = { -0.5, -0.5, 0.4, 0.5, 0.5, 0.5 } - }, - node_box = { - type = "fixed", - fixed = gate_models_closed[i] - }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - homedecor.flip_gate(pos, node, clicker, gate, "closed") - return itemstack - end, - mesecons = { - effector = { - rules = m_rules, - action_on = function(pos,node) homedecor.flip_gate(pos,node,nil,gate, "closed") end - } - } - } - - -- gates when placed default to closed, closed. - - minetest.register_node("homedecor:gate_"..gate.."_closed", def) - - -- this is either a terrible idea or a great one - def = table.copy(def) - def.groups.not_in_creative_inventory = 1 - def.selection_box.fixed = { 0.4, -0.5, -0.5, 0.5, 0.5, 0.5 } - def.node_box.fixed = gate_models_open[i] - def.tiles = { - tiles[1].."^[transformR90", - tiles[2].."^[transformR270", - tiles[6], - tiles[5], - tiles[4], - tiles[3] - } - def.drop = "homedecor:gate_"..gate.."_closed" - def.on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - homedecor.flip_gate(pos, node, clicker, gate, "open") - return itemstack - end - def.mesecons.effector = { - rules = m_rules, - action_off = function(pos,node) homedecor.flip_gate(pos,node,nil,gate, "open") end - } - - minetest.register_node("homedecor:gate_"..gate.."_open", def) -end - -minetest.register_alias("homedecor:fence_barbed_wire_gate_open", "homedecor:gate_barbed_wire_open") -minetest.register_alias("homedecor:fence_barbed_wire_gate_closed", "homedecor:gate_barbed_wire_closed") -minetest.register_alias("homedecor:fence_chainlink_gate_open", "homedecor:gate_chainlink_open") -minetest.register_alias("homedecor:fence_chainlink_gate_closed", "homedecor:gate_chainlink_closed") -minetest.register_alias("homedecor:fence_picket_gate_open", "homedecor:gate_picket_open") -minetest.register_alias("homedecor:fence_picket_gate_closed", "homedecor:gate_picket_closed") -minetest.register_alias("homedecor:fence_picket_gate_white_open", "homedecor:gate_picket_white_open") -minetest.register_alias("homedecor:fence_picket_gate_white_closed", "homedecor:gate_picket_white_closed") - --- to open a door, you switch left for right and subtract from param2, or vice versa right for left --- that is to say open "right" doors become left door nodes, and open left doors right door nodes. --- also adjusting param2 so the node is at 90 degrees. - -function homedecor.flip_door(pos, node, player, name, side, isClosed) - if isClosed == nil then - isClosed = getClosed(pos) - end - -- this is where we swap the isClosed status! - -- i.e. if isClosed, we're adding an open door - -- and if not isClosed, a closed door - isClosed = not isClosed - - local rside - local nfdir - local ofdir = node.param2 or 0 - if side == "left" then - rside = "right" - nfdir=ofdir - 1 - if nfdir < 0 then nfdir = 3 end - else - rside = "left" - nfdir=ofdir + 1 - if nfdir > 3 then nfdir = 0 end - end - local sound = isClosed and 'close' or 'open' - minetest.sound_play("homedecor_door_"..sound, { - pos=pos, - max_hear_distance = 5, - gain = 2, - }) - -- XXX: does the top half have to remember open/closed too? - minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, { name = "homedecor:door_"..name.."_top_"..rside, param2=nfdir}) - - addDoorNode(pos,{ name = "homedecor:door_"..name.."_bottom_"..rside, param2=nfdir },isClosed) -end - -function homedecor.flip_gate(pos, node, player, gate, oc) - local isClosed = getClosed(pos); - minetest.sound_play("homedecor_gate_open_close", { - pos=pos, - max_hear_distance = 5, - gain = 2, - }) - - local fdir = node.param2 or 0 - - -- since right facing gates use "open" nodes for closed, we need an - -- isClosed flag to tell if it's "really" closed. - - local gateresult - if oc == "closed" then - gateresult = "homedecor:gate_"..gate.."_open" - else - gateresult = "homedecor:gate_"..gate.."_closed" - end - - local def = {name=gateresult, param2=fdir} - - addDoorNode(pos, def, isClosed) - - -- the following opens and closes gates below and above in sync with this one - -- (without three gate open/close sounds) - - local above = {x=pos.x, y=pos.y+1, z=pos.z} - local below = {x=pos.x, y=pos.y-1, z=pos.z} - local nodeabove = minetest.get_node(above) - local nodebelow = minetest.get_node(below) - - if string.find(nodeabove.name, "homedecor:gate_"..gate) then - addDoorNode(above, def, isClosed) - end - - if string.find(nodebelow.name, "homedecor:gate_"..gate) then - addDoorNode(below, def, isClosed) - end -end - --- Japanese-style wood/paper wall pieces and door - -local jp_cbox = { - type = "fixed", - fixed = {-0.5, -0.5, 0, 0.5, 0.5, 0.0625}, -} - -minetest.register_node("homedecor:japanese_wall_top", { - description = S("Japanese wall (top)"), - drawtype = "mesh", - mesh = "homedecor_wall_japanese_top.obj", - tiles = { - homedecor.lux_wood, - "homedecor_japanese_paper.png" - }, - paramtype = "light", - paramtype2 = "facedir", - groups = {snappy=3}, - selection_box = jp_cbox, - collision_box = jp_cbox, - sounds = default.node_sound_wood_defaults(), -}) - -minetest.register_node("homedecor:japanese_wall_middle", { - description = S("Japanese wall"), - drawtype = "mesh", - mesh = "homedecor_wall_japanese_middle.obj", - tiles = { - homedecor.lux_wood, - "homedecor_japanese_paper.png" - }, - paramtype = "light", - paramtype2 = "facedir", - groups = {snappy=3}, - selection_box = jp_cbox, - collision_box = jp_cbox, - sounds = default.node_sound_wood_defaults(), -}) - -minetest.register_node("homedecor:japanese_wall_bottom", { - description = S("Japanese wall (bottom)"), - drawtype = "mesh", - mesh = "homedecor_wall_japanese_bottom.obj", - tiles = { - homedecor.lux_wood, - "homedecor_japanese_paper.png" - }, - paramtype = "light", - paramtype2 = "facedir", - groups = {snappy=3}, - selection_box = jp_cbox, - collision_box = jp_cbox, - sounds = default.node_sound_wood_defaults(), -}) - -minetest.register_node("homedecor:tatami_mat", { - tiles = { - "homedecor_tatami.png", - "homedecor_tatami.png", - "homedecor_tatami.png", - "homedecor_tatami.png", - "homedecor_tatami.png", - "homedecor_tatami.png" - }, - description = S("Japanese tatami"), - drawtype = "nodebox", - paramtype = "light", - groups = {snappy=3}, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, - } - } -}) - -homedecor.register("door_japanese_closed", { - description = S("Japanese-style door"), - inventory_image = "homedecor_door_japanese_inv.png", - tiles = { - homedecor.lux_wood, - "homedecor_japanese_paper.png" - }, - mesh = "homedecor_door_japanese_closed.obj", - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - selection_box = { - type = "fixed", - fixed = {-0.5, -0.5, 0, 0.5, 1.5, 0.0625}, - }, - collision_box = { - type = "fixed", - fixed = {-0.5, -0.5, -0.0625, 0.5, 1.5, 0}, - }, - expand = { top = "placeholder" }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:door_japanese_open", param2 = node.param2}) - return itemstack - end -}) - -homedecor.register("door_japanese_open", { - tiles = { - homedecor.lux_wood, - "homedecor_japanese_paper.png" - }, - mesh = "homedecor_door_japanese_open.obj", - groups = { snappy = 3, not_in_creative_inventory = 1 }, - sounds = default.node_sound_wood_defaults(), - on_rotate = screwdriver.disallow, - selection_box = { - type = "fixed", - fixed = {-1.5, -0.5, -0.0625, 0.5, 1.5, 0}, - }, - collision_box = { - type = "fixed", - fixed = {-1.5, -0.5, -0.0625, -0.5, 1.5, 0}, - }, - expand = { top = "placeholder" }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:door_japanese_closed", param2 = node.param2}) - return itemstack - end, - drop = "homedecor:door_japanese_closed", -}) - -minetest.register_alias("homedecor:jpn_door_top", "air") -minetest.register_alias("homedecor:jpn_door_bottom", "homedecor:door_japanese_closed") - -minetest.register_alias("homedecor:jpn_door_top_open", "air") -minetest.register_alias("homedecor:jpn_door_bottom_open", "homedecor:door_japanese_open") - -minetest.register_alias("homedecor:door_glass_right", "doors:door_glass_b") -minetest.register_alias("homedecor:door_glass_left", "doors:door_glass_a") diff --git a/homedecor/electrics.lua b/homedecor/electrics.lua deleted file mode 100755 index c5f27a6..0000000 --- a/homedecor/electrics.lua +++ /dev/null @@ -1,81 +0,0 @@ - -local S = homedecor_i18n.gettext - -homedecor.register("power_outlet", { - description = S("Power Outlet"), - tiles = { - "homedecor_outlet_edges.png", - "homedecor_outlet_edges.png", - "homedecor_outlet_edges.png", - "homedecor_outlet_edges.png", - "homedecor_outlet_back.png", - "homedecor_outlet_edges.png" - }, - inventory_image = "homedecor_outlet_inv.png", - node_box = { - type = "fixed", - fixed = { - { -0.125, -0.3125, 0.4375, 0.125, 0, 0.5}, - } - }, - selection_box = { - type = "fixed", - fixed = { - { -0.1875, -0.375, 0.375, 0.1875, 0.0625, 0.5}, - } - }, - groups = {cracky=3,dig_immediate=2}, - walkable = false -}) - -homedecor.register("light_switch", { - description = S("Light switch"), - tiles = { - "homedecor_light_switch_edges.png", - "homedecor_light_switch_edges.png", - "homedecor_light_switch_edges.png", - "homedecor_light_switch_edges.png", - "homedecor_light_switch_back.png", - "homedecor_light_switch_front.png" - }, - inventory_image = "homedecor_light_switch_inv.png", - node_box = { - type = "fixed", - fixed = { - { -0.125, -0.5, 0.4375, 0.125, -0.1875, 0.5 }, - { -0.03125, -0.3125, 0.40625, 0.03125, -0.25, 0.5 }, - - } - }, - selection_box = { - type = "fixed", - fixed = { - { -0.1875, -0.5625, 0.375, 0.1875, -0.1250, 0.5 }, - } - }, - groups = {cracky=3,dig_immediate=2}, - walkable = false -}) - - -homedecor.register("doorbell", { - tiles = { "homedecor_doorbell.png" }, - inventory_image = "homedecor_doorbell_inv.png", - description = S("Doorbell"), - groups = {snappy=3}, - walkable = false, - node_box = { - type = "fixed", - fixed = { - {-0.0625, 0, 0.46875, 0.0625, 0.1875, 0.5}, -- NodeBox1 - {-0.03125, 0.0625, 0.45, 0.03125, 0.125, 0.4675}, -- NodeBox2 - } - }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.sound_play("homedecor_doorbell", { - pos = pos, - gain = 1.0, - max_hear_distance = 15 - }) - end -}) diff --git a/homedecor/electronics.lua b/homedecor/electronics.lua deleted file mode 100755 index cfcc6fc..0000000 --- a/homedecor/electronics.lua +++ /dev/null @@ -1,143 +0,0 @@ --- Various home electronics - -local S = homedecor_i18n.gettext - -homedecor.register("speaker", { - description = S("Large Stereo Speaker"), - mesh="homedecor_speaker_large.obj", - tiles = { - "homedecor_speaker_sides.png", - "homedecor_speaker_front.png" - }, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:speaker_open", param2 = node.param2}) - end -}) - -homedecor.register("speaker_open", { - description = S("Large Stereo Speaker, open front"), - mesh="homedecor_speaker_large_open.obj", - tiles = { - "homedecor_speaker_sides.png", - "homedecor_speaker_driver.png", - "homedecor_speaker_open_front.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_black } - }, - groups = { snappy = 3, not_in_creative_inventory=1 }, - sounds = default.node_sound_wood_defaults(), - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:speaker", param2 = node.param2}) - end -}) - -local spk_cbox = { - type = "fixed", - fixed = { -3/16, -8/16, 1/16, 3/16, -2/16, 7/16 } -} - -homedecor.register("speaker_small", { - description = S("Small Surround Speaker"), - mesh="homedecor_speaker_small.obj", - tiles = { - "homedecor_speaker_sides.png", - "homedecor_speaker_front.png" - }, - selection_box = spk_cbox, - walkable = false, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), -}) - -homedecor.register("stereo", { - description = S("Stereo Receiver"), - tiles = { 'homedecor_stereo_top.png', - 'homedecor_stereo_bottom.png', - 'homedecor_stereo_left.png^[transformFX', - 'homedecor_stereo_left.png', - 'homedecor_stereo_back.png', - 'homedecor_stereo_front.png'}, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), -}) - -homedecor.register("projection_screen", { - description = S("Projection Screen Material"), - drawtype = 'signlike', - tiles = { 'homedecor_projection_screen.png' }, - wield_image = 'homedecor_projection_screen_inv.png', - inventory_image = 'homedecor_projection_screen_inv.png', - walkable = false, - groups = { snappy = 3 }, - sounds = default.node_sound_leaves_defaults(), - paramtype2 = 'wallmounted', - selection_box = { - type = "wallmounted", - --wall_side = = - }, -}) - -homedecor.register("television", { - description = S("Small CRT Television"), - tiles = { 'homedecor_television_top.png', - 'homedecor_television_bottom.png', - 'homedecor_television_left.png^[transformFX', - 'homedecor_television_left.png', - 'homedecor_television_back.png', - { name="homedecor_television_front_animated.png", - animation={ - type="vertical_frames", - aspect_w=16, - aspect_h=16, - length=80.0 - } - } - }, - light_source = default.LIGHT_MAX - 1, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), -}) - -homedecor.register("dvd_vcr", { - description = S("DVD and VCR"), - tiles = { - "homedecor_dvdvcr_top.png", - "homedecor_dvdvcr_bottom.png", - "homedecor_dvdvcr_sides.png", - "homedecor_dvdvcr_sides.png^[transformFX", - "homedecor_dvdvcr_back.png", - "homedecor_dvdvcr_front.png", - }, - inventory_image = "homedecor_dvdvcr_inv.png", - node_box = { - type = "fixed", - fixed = { - {-0.3125, -0.5, -0.25, 0.3125, -0.375, 0.1875}, - {-0.25, -0.5, -0.25, 0.25, -0.1875, 0.125}, - } - }, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), -}) - -local tel_cbox = { - type = "fixed", - fixed = { -0.25, -0.5, -0.1875, 0.25, -0.21, 0.15 } -} - -homedecor.register("telephone", { - mesh = "homedecor_telephone.obj", - tiles = { - "homedecor_telephone_dial.png", - "homedecor_telephone_base.png", - "homedecor_telephone_handset.png", - "homedecor_telephone_cord.png", - }, - inventory_image = "homedecor_telephone_inv.png", - description = S("Telephone"), - groups = {snappy=3}, - selection_box = tel_cbox, - walkable = false, - sounds = default.node_sound_wood_defaults(), -}) diff --git a/homedecor/furniture.lua b/homedecor/furniture.lua deleted file mode 100755 index 4acfa58..0000000 --- a/homedecor/furniture.lua +++ /dev/null @@ -1,246 +0,0 @@ - -local S = homedecor_i18n.gettext - -local table_colors = { - { "", S("Table"), homedecor.plain_wood }, - { "_mahogany", S("Mahogany Table"), homedecor.mahogany_wood }, - { "_white", S("White Table"), homedecor.white_wood } -} - -for _, t in ipairs(table_colors) do - local suffix, desc, texture = unpack(t) - - homedecor.register("table"..suffix, { - description = desc, - tiles = { texture }, - node_box = { - type = "fixed", - fixed = { - { -0.4, -0.5, -0.4, -0.3, 0.4, -0.3 }, - { 0.3, -0.5, -0.4, 0.4, 0.4, -0.3 }, - { -0.4, -0.5, 0.3, -0.3, 0.4, 0.4 }, - { 0.3, -0.5, 0.3, 0.4, 0.4, 0.4 }, - { -0.5, 0.4, -0.5, 0.5, 0.5, 0.5 }, - { -0.4, -0.2, -0.3, -0.3, -0.1, 0.3 }, - { 0.3, -0.2, -0.4, 0.4, -0.1, 0.3 }, - { -0.3, -0.2, -0.4, 0.4, -0.1, -0.3 }, - { -0.3, -0.2, 0.3, 0.3, -0.1, 0.4 }, - }, - }, - groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, - sounds = default.node_sound_wood_defaults(), - }) -end - -local kc_cbox = { - type = "fixed", - fixed = { -0.3125, -0.5, -0.3125, 0.3125, 0.5, 0.3125 }, -} - -local ac_cbox = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, 0, 0.5 }, - {-0.5, -0.5, 0.4, 0.5, 0.5, 0.5 } - } -} - -homedecor.register("kitchen_chair_wood", { - description = S("Kitchen chair"), - mesh = "homedecor_kitchen_chair.obj", - tiles = { - homedecor.plain_wood, - homedecor.plain_wood - }, - inventory_image = "homedecor_chair_wood_inv.png", - paramtype2 = "wallmounted", - selection_box = kc_cbox, - collision_box = kc_cbox, - groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, - sounds = default.node_sound_wood_defaults(), - after_place_node = unifieddyes.fix_rotation_nsew, - on_rotate = unifieddyes.fix_after_screwdriver_nsew, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - pos.y = pos.y+0 -- where do I put my ass ? - homedecor.sit(pos, node, clicker) - return itemstack - end -}) - -homedecor.register("kitchen_chair_padded", { - description = S("Kitchen chair"), - mesh = "homedecor_kitchen_chair.obj", - tiles = { - homedecor.plain_wood, - "wool_white.png", - }, - inventory_image = "homedecor_chair_padded_inv.png", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = kc_cbox, - collision_box = kc_cbox, - groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2, ud_param2_colorable = 1}, - sounds = default.node_sound_wood_defaults(), - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) - end, - on_rotate = unifieddyes.fix_after_screwdriver_nsew, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - pos.y = pos.y+0 -- where do I put my ass ? - homedecor.sit(pos, node, clicker) - return itemstack - end -}) - -homedecor.register("armchair", { - description = S("Armchair"), - mesh = "forniture_armchair.obj", - tiles = { - "wool_white.png", - { name = "wool_dark_grey.png", color = 0xffffffff }, - { name = "default_wood.png", color = 0xffffffff } - }, - inventory_image = "homedecor_armchair_inv.png", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - groups = {snappy=3, ud_param2_colorable = 1}, - sounds = default.node_sound_wood_defaults(), - node_box = ac_cbox, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) - end, - on_rotate = unifieddyes.fix_after_screwdriver_nsew, -}) - -local ob_cbox = { - type = "fixed", - fixed = { -0.5, -0.5, 0, 0.5, 0.5, 0.5 } -} - -minetest.register_node(":homedecor:openframe_bookshelf", { - description = S("Bookshelf (open-frame)"), - drawtype = "mesh", - mesh = "homedecor_openframe_bookshelf.obj", - tiles = { - "homedecor_openframe_bookshelf_books.png", - "default_wood.png" - }, - groups = {choppy=3,oddly_breakable_by_hand=2,flammable=3}, - sounds = default.node_sound_wood_defaults(), - paramtype = "light", - paramtype2 = "facedir", - selection_box = ob_cbox, - collision_box = ob_cbox, -}) - -homedecor.register("wall_shelf", { - description = S("Wall Shelf"), - tiles = { - "homedecor_wood_table_large_edges.png", - }, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - node_box = { - type = "fixed", - fixed = { - {-0.5, 0.4, 0.47, 0.5, 0.47, 0.5}, - {-0.5, 0.47, -0.1875, 0.5, 0.5, 0.5} - } - } -}) - --- Aliases for 3dforniture mod. - -minetest.register_alias("3dforniture:table", "homedecor:table") -minetest.register_alias("3dforniture:chair", "homedecor:chair") -minetest.register_alias("3dforniture:armchair", "homedecor:armchair_black") -minetest.register_alias("homedecor:armchair", "homedecor:armchair_black") - -minetest.register_alias('table', 'homedecor:table') -minetest.register_alias('chair', 'homedecor:chair') -minetest.register_alias('armchair', 'homedecor:armchair') - --- conversion to param2 colorization - -homedecor.old_static_chairs = {} - -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:armchair_"..color) -end -table.insert(homedecor.old_static_chairs, "homedecor:chair") - -minetest.register_lbm({ - name = "homedecor:convert_chairs", - label = "Convert homedecor chairs to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_static_chairs, - action = function(pos, node) - local name = node.name - local paletteidx = 0 - local color - local a,b = string.find(name, "_") - - if a then - color = string.sub(name, a+1) - - if color == "blue" then - color = "medium_blue" - elseif color == "violet" then - color = "medium_violet" - elseif color == "red" then - color = "medium_red" - elseif color == "black" then - color = "dark_grey" - end - - paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") - 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 - - local param2 = paletteidx + new_fdir - local newname = "homedecor:armchair" - - if node.name == "homedecor:chair" then - newname = "homedecor:kitchen_chair_wood" - elseif string.find(node.name, "homedecor:chair_") then - newname = "homedecor:kitchen_chair_padded" - end - - minetest.set_node(pos, { name = newname, param2 = param2 }) - local meta = minetest.get_meta(pos) - if color then - meta:set_string("dye", "unifieddyes:"..color) - end - end -}) diff --git a/homedecor/handlers/init.lua b/homedecor/handlers/init.lua deleted file mode 100755 index 05c27f4..0000000 --- a/homedecor/handlers/init.lua +++ /dev/null @@ -1,24 +0,0 @@ -local handlerpath = homedecor.modpath .. "/handlers/" - --- nodebox arithmetics and helpers --- (please keep non-generic nodeboxes with their node definition) -dofile(handlerpath.."nodeboxes.lua") - --- expand and unexpand decor -dofile(handlerpath.."expansion.lua") - --- register nodes that cook stuff -dofile(handlerpath.."furnaces.lua") - --- inventory related functionality, like initialization, ownership and spawning locked versions -dofile(handlerpath.."inventory.lua") - --- glue it all together into a registration function -dofile(handlerpath.."registration.lua") - --- some nodes have particle spawners -dofile(handlerpath.."water_particles.lua") - - -dofile(handlerpath.."mt_game_beds_functions.lua") -dofile(handlerpath.."sit.lua") diff --git a/homedecor/kitchen_appliances.lua b/homedecor/kitchen_appliances.lua deleted file mode 100755 index 1caa1ec..0000000 --- a/homedecor/kitchen_appliances.lua +++ /dev/null @@ -1,256 +0,0 @@ --- This file supplies refrigerators - -local S = homedecor_i18n.gettext - -local function N_(x) return x end - --- steel-textured fridge -homedecor.register("refrigerator_steel", { - mesh = "homedecor_refrigerator.obj", - tiles = { "homedecor_refrigerator_steel.png" }, - inventory_image = "homedecor_refrigerator_steel_inv.png", - description = S("Refrigerator (stainless steel)"), - groups = {snappy=3}, - sounds = default.node_sound_stone_defaults(), - selection_box = homedecor.nodebox.slab_y(2), - collision_box = homedecor.nodebox.slab_y(2), - expand = { top="placeholder" }, - infotext=S("Refrigerator"), - inventory = { - size=50, - lockable=true, - }, - on_rotate = screwdriver.rotate_simple -}) - --- white, enameled fridge -homedecor.register("refrigerator_white", { - mesh = "homedecor_refrigerator.obj", - tiles = { "homedecor_refrigerator_white.png" }, - inventory_image = "homedecor_refrigerator_white_inv.png", - description = S("Refrigerator"), - groups = {snappy=3}, - selection_box = homedecor.nodebox.slab_y(2), - collision_box = homedecor.nodebox.slab_y(2), - sounds = default.node_sound_stone_defaults(), - expand = { top="placeholder" }, - infotext=S("Refrigerator"), - inventory = { - size=50, - lockable=true, - }, - on_rotate = screwdriver.rotate_simple -}) - -minetest.register_alias("homedecor:refrigerator_white_bottom", "homedecor:refrigerator_white") -minetest.register_alias("homedecor:refrigerator_white_top", "air") - -minetest.register_alias("homedecor:refrigerator_steel_bottom", "homedecor:refrigerator_steel") -minetest.register_alias("homedecor:refrigerator_steel_top", "air") - -minetest.register_alias("homedecor:refrigerator_white_bottom_locked", "homedecor:refrigerator_white_locked") -minetest.register_alias("homedecor:refrigerator_white_top_locked", "air") -minetest.register_alias("homedecor:refrigerator_locked", "homedecor:refrigerator_white_locked") - -minetest.register_alias("homedecor:refrigerator_steel_bottom_locked", "homedecor:refrigerator_steel_locked") -minetest.register_alias("homedecor:refrigerator_steel_top_locked", "air") - --- kitchen "furnaces" -homedecor.register_furnace("oven", { - description = S("Oven"), - tile_format = "homedecor_oven_%s%s.png", - output_slots = 4, - output_width = 2, - cook_speed = 1.25, -}) - -homedecor.register_furnace("oven_steel", { - description = S("Oven (stainless steel)"), - tile_format = "homedecor_oven_steel_%s%s.png", - output_slots = 4, - output_width = 2, - cook_speed = 1.25, -}) - -homedecor.register_furnace("microwave_oven", { - description = S("Microwave Oven"), - tiles = { - "homedecor_microwave_top.png", "homedecor_microwave_top.png^[transformR180", - "homedecor_microwave_top.png^[transformR270", "homedecor_microwave_top.png^[transformR90", - "homedecor_microwave_top.png^[transformR180", "homedecor_microwave_front.png" - }, - tiles_active = { - "homedecor_microwave_top.png", "homedecor_microwave_top.png^[transformR180", - "homedecor_microwave_top.png^[transformR270", "homedecor_microwave_top.png^[transformR90", - "homedecor_microwave_top.png^[transformR180", "homedecor_microwave_front_active.png" - }, - output_slots = 2, - output_width = 2, - cook_speed = 1.5, - extra_nodedef_fields = { - node_box = { - type = "fixed", - fixed = { -0.5, -0.5, -0.125, 0.5, 0.125, 0.5 }, - }, - }, -}) - --- coffee! --- coffee! --- coffee! - -local cm_cbox = { - type = "fixed", - fixed = { - { 0, -8/16, 0, 7/16, 3/16, 8/16 }, - { -4/16, -8/16, -6/16, -1/16, -5/16, -3/16 } - } -} - -homedecor.register("coffee_maker", { - mesh = "homedecor_coffeemaker.obj", - tiles = { - "homedecor_coffeemaker_decanter.png", - "homedecor_coffeemaker_cup.png", - "homedecor_coffeemaker_case.png", - }, - description = S("Coffee Maker"), - inventory_image = "homedecor_coffeemaker_inv.png", - walkable = false, - groups = {snappy=3}, - selection_box = cm_cbox, - node_box = cm_cbox, - on_rotate = screwdriver.disallow -}) - -local fdir_to_steampos = { - x = { 0.15, 0.275, -0.15, -0.275 }, - z = { 0.275, -0.15, -0.275, 0.15 } -} - -minetest.register_abm({ - nodenames = "homedecor:coffee_maker", - label = "sfx", - interval = 2, - chance = 1, - action = function(pos, node) - local fdir = node.param2 - if fdir and fdir < 4 then - - local steamx = fdir_to_steampos.x[fdir + 1] - local steamz = fdir_to_steampos.z[fdir + 1] - - minetest.add_particlespawner({ - amount = 1, - time = 1, - minpos = {x=pos.x - steamx, y=pos.y - 0.35, z=pos.z - steamz}, - maxpos = {x=pos.x - steamx, y=pos.y - 0.35, z=pos.z - steamz}, - minvel = {x=-0.003, y=0.01, z=-0.003}, - maxvel = {x=0.003, y=0.01, z=-0.003}, - minacc = {x=0.0,y=-0.0,z=-0.0}, - maxacc = {x=0.0,y=0.003,z=-0.0}, - minexptime = 2, - maxexptime = 5, - minsize = 1, - maxsize = 1.2, - collisiondetection = false, - texture = "homedecor_steam.png", - }) - end - end -}) - -homedecor.register("toaster", { - description = S("Toaster"), - tiles = { "homedecor_toaster_sides.png" }, - inventory_image = "homedecor_toaster_inv.png", - walkable = false, - groups = { snappy=3 }, - node_box = { - type = "fixed", - fixed = { - {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 - }, - }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - local fdir = node.param2 - minetest.set_node(pos, { name = "homedecor:toaster_loaf", param2 = fdir }) - minetest.sound_play("toaster", { - pos = pos, - gain = 1.0, - max_hear_distance = 5 - }) - return itemstack - end -}) - -homedecor.register("toaster_loaf", { - tiles = { - "homedecor_toaster_toploaf.png", - "homedecor_toaster_sides.png", - "homedecor_toaster_sides.png", - "homedecor_toaster_sides.png", - "homedecor_toaster_sides.png", - "homedecor_toaster_sides.png" - }, - walkable = false, - groups = { snappy=3, not_in_creative_inventory=1 }, - node_box = { - type = "fixed", - fixed = { - {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 - {-0.03125, -0.3125, -0.0935, 0, -0.25, 0.0935}, -- NodeBox2 - {0.0625, -0.3125, -0.0935, 0.0935, -0.25, 0.0935}, -- NodeBox3 - }, - }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - local fdir = node.param2 - minetest.set_node(pos, { name = "homedecor:toaster", param2 = fdir }) - return itemstack - end, - drop = "homedecor:toaster" -}) - - -homedecor.register("dishwasher", { - description = S("Dishwasher"), - drawtype = "nodebox", - tiles = { - "homedecor_dishwasher_top.png", - "homedecor_dishwasher_bottom.png", - "homedecor_dishwasher_sides.png", - "homedecor_dishwasher_sides.png^[transformFX", - "homedecor_dishwasher_back.png", - "homedecor_dishwasher_front.png" - }, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, - {-0.5, -0.5, -0.5, 0.5, 0.5, -0.4375}, - {-0.5, -0.5, -0.5, 0.5, 0.1875, 0.1875}, - {-0.4375, -0.5, -0.5, 0.4375, 0.4375, 0.4375}, - } - }, - selection_box = { type = "regular" }, - sounds = default.node_sound_stone_defaults(), - groups = { snappy = 3 }, -}) - -local materials = { N_("granite"), N_("marble"), N_("steel"), N_("wood") } - -for _, m in ipairs(materials) do -homedecor.register("dishwasher_"..m, { - description = S("Dishwasher (@1)", S(m)), - tiles = { - "homedecor_kitchen_cabinet_top_"..m..".png", - "homedecor_dishwasher_bottom.png", - "homedecor_dishwasher_sides.png", - "homedecor_dishwasher_sides.png^[transformFX", - "homedecor_dishwasher_back.png", - "homedecor_dishwasher_front.png" - }, - groups = { snappy = 3 }, - sounds = default.node_sound_stone_defaults(), -}) -end diff --git a/homedecor/kitchen_furniture.lua b/homedecor/kitchen_furniture.lua deleted file mode 100755 index 2ecb7bf..0000000 --- a/homedecor/kitchen_furniture.lua +++ /dev/null @@ -1,157 +0,0 @@ --- This file supplies Kitchen cabinets and kitchen sink - -local S = homedecor_i18n.gettext - -local cabinet_sides = "(default_wood.png^[transformR90)^homedecor_kitchen_cabinet_bevel.png" -local cabinet_bottom = "(default_wood.png^[colorize:#000000:100)^(homedecor_kitchen_cabinet_bevel.png^[colorize:#46321580)" - -local function N_(x) return x end - -local counter_materials = { "", N_("granite"), N_("marble"), N_("steel") } - -for _, mat in ipairs(counter_materials) do - - local desc = S("Kitchen Cabinet") - local material = "" - - if mat ~= "" then - desc = S("Kitchen Cabinet (@1 top)", S(mat)) - material = "_"..mat - end - - homedecor.register("kitchen_cabinet"..material, { - description = desc, - tiles = { 'homedecor_kitchen_cabinet_top'..material..'.png', - cabinet_bottom, - cabinet_sides, - cabinet_sides, - cabinet_sides, - 'homedecor_kitchen_cabinet_front.png'}, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - infotext=S("Kitchen Cabinet"), - inventory = { - size=24, - lockable=true, - }, - }) -end - -local kitchen_cabinet_half_box = homedecor.nodebox.slab_y(0.5, 0.5) -homedecor.register("kitchen_cabinet_half", { - description = S('Half-height Kitchen Cabinet (on ceiling)'), - tiles = { - cabinet_sides, - cabinet_bottom, - cabinet_sides, - cabinet_sides, - cabinet_sides, - 'homedecor_kitchen_cabinet_front_half.png' - }, - selection_box = kitchen_cabinet_half_box, - node_box = kitchen_cabinet_half_box, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - infotext=S("Kitchen Cabinet"), - inventory = { - size=12, - lockable=true, - }, -}) - -homedecor.register("kitchen_cabinet_with_sink", { - description = S("Kitchen Cabinet with sink"), - mesh = "homedecor_kitchen_sink.obj", - tiles = { - "homedecor_kitchen_sink_top.png", - "homedecor_kitchen_cabinet_front.png", - cabinet_sides, - cabinet_bottom - }, - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - infotext=S("Under-sink cabinet"), - inventory = { - size=16, - lockable=true, - }, - node_box = { - type = "fixed", - fixed = { - { -8/16, -8/16, -8/16, 8/16, 6/16, 8/16 }, - { -8/16, 6/16, -8/16, -6/16, 8/16, 8/16 }, - { 6/16, 6/16, -8/16, 8/16, 8/16, 8/16 }, - { -8/16, 6/16, -8/16, 8/16, 8/16, -6/16 }, - { -8/16, 6/16, 6/16, 8/16, 8/16, 8/16 }, - } - }, - on_destruct = function(pos) - homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) - end -}) - -local cp_cbox = { - type = "fixed", - fixed = { -0.375, -0.5, -0.5, 0.375, -0.3125, 0.3125 } -} - -homedecor.register("copper_pans", { - description = S("Copper pans"), - mesh = "homedecor_copper_pans.obj", - tiles = { "homedecor_polished_copper.png" }, - inventory_image = "homedecor_copper_pans_inv.png", - groups = { snappy=3 }, - selection_box = cp_cbox, - walkable = false, - on_place = minetest.rotate_node -}) - -local kf_cbox = { - type = "fixed", - fixed = { -2/16, -8/16, 1/16, 2/16, -1/16, 8/16 } -} - -homedecor.register("kitchen_faucet", { - mesh = "homedecor_kitchen_faucet.obj", - tiles = { "homedecor_generic_metal_bright.png" }, - inventory_image = "homedecor_kitchen_faucet_inv.png", - description = S("Kitchen Faucet"), - groups = {snappy=3}, - selection_box = kf_cbox, - walkable = false, - on_rotate = screwdriver.disallow, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) - if below and - below.name == "homedecor:sink" or - below.name == "homedecor:kitchen_cabinet_with_sink" or - below.name == "homedecor:kitchen_cabinet_with_sink_locked" then - local particledef = { - outlet = { x = 0, y = -0.19, z = 0.13 }, - velocity_x = { min = -0.05, max = 0.05 }, - velocity_y = -0.3, - velocity_z = { min = -0.1, max = 0 }, - spread = 0 - } - homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") - end - return itemstack - end, - on_destruct = homedecor.stop_particle_spawner -}) - -homedecor.register("paper_towel", { - mesh = "homedecor_paper_towel.obj", - tiles = { - "homedecor_generic_quilted_paper.png", - "default_wood.png" - }, - inventory_image = "homedecor_paper_towel_inv.png", - description = S("Paper towels"), - groups = { snappy=3 }, - walkable = false, - selection_box = { - type = "fixed", - fixed = { -0.4375, 0.125, 0.0625, 0.4375, 0.4375, 0.5 } - }, -}) diff --git a/homedecor/laundry.lua b/homedecor/laundry.lua deleted file mode 100755 index 5ee9ec6..0000000 --- a/homedecor/laundry.lua +++ /dev/null @@ -1,61 +0,0 @@ --- laundry devices - -homedecor.register("washing_machine", { - description = "Washing Machine", - tiles = { - "homedecor_washing_machine_top.png", - "homedecor_washing_machine_bottom.png", - "homedecor_washing_machine_sides.png", - "homedecor_washing_machine_sides.png^[transformFX", - "homedecor_washing_machine_back.png", - "homedecor_washing_machine_front.png" - }, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, 0.375, 0.375}, - {-0.5, -0.5, 0.3125, 0.5, 0.5, 0.5}, - } - }, - selection_box = { type = "regular" }, - groups = { snappy = 3 }, -}) - -homedecor.register("dryer", { - description = "Tumble dryer", - tiles = { - "homedecor_dryer_top.png", - "homedecor_dryer_bottom.png", - "homedecor_dryer_sides.png", - "homedecor_dryer_sides.png^[transformFX", - "homedecor_dryer_back.png", - "homedecor_dryer_front.png" - }, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.5, 0.5, 0.375, 0.375}, - {-0.5, -0.5, 0.3125, 0.5, 0.5, 0.5}, - } - }, - selection_box = { type = "regular" }, - groups = { snappy = 3 }, -}) - -local ib_cbox = { - type = "fixed", - fixed = { -6/16, -8/16, -4/16, 17/16, 4/16, 4/16 } -} - -homedecor.register("ironing_board", { - description = "Ironing board", - mesh = "homedecor_ironing_board.obj", - tiles = { - "wool_grey.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - }, - expand = {right = "placeholder"}, - groups = { snappy = 3 }, - selection_box = ib_cbox, - collision_box = ib_cbox -}) diff --git a/homedecor/lighting.lua b/homedecor/lighting.lua deleted file mode 100755 index 797a42c..0000000 --- a/homedecor/lighting.lua +++ /dev/null @@ -1,883 +0,0 @@ --- This file supplies glowlights - -local S = homedecor_i18n.gettext - -local glowlight_nodebox = { - half = homedecor.nodebox.slab_y(1/2), - quarter = homedecor.nodebox.slab_y(1/4), - small_cube = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } - }, -} - -minetest.register_node("homedecor:glowlight_half", { - description = S("Thick Glowlight"), - tiles = { - "homedecor_glowlight_top.png", - "homedecor_glowlight_bottom.png", - "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", - paramtype = "light", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = { - type = "wallmounted", - wall_top = { -0.5, 0, -0.5, 0.5, 0.5, 0.5 }, - wall_bottom = { -0.5, -0.5, -0.5, 0.5, 0, 0.5 }, - wall_side = { -0.5, -0.5, -0.5, 0, 0.5, 0.5 } - }, - node_box = glowlight_nodebox.half, - groups = { snappy = 3, ud_param2_colorable = 1 }, - light_source = default.LIGHT_MAX, - sounds = default.node_sound_glass_defaults(), - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, -}) - -minetest.register_node("homedecor:glowlight_quarter", { - description = S("Thin Glowlight"), - tiles = { - "homedecor_glowlight_top.png", - "homedecor_glowlight_bottom.png", - "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", - paramtype = "light", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = { - type = "wallmounted", - wall_top = { -0.5, 0.25, -0.5, 0.5, 0.5, 0.5 }, - wall_bottom = { -0.5, -0.5, -0.5, 0.5, -0.25, 0.5 }, - wall_side = { -0.5, -0.5, -0.5, -0.25, 0.5, 0.5 } - }, - node_box = glowlight_nodebox.quarter, - groups = { snappy = 3, ud_param2_colorable = 1 }, - light_source = default.LIGHT_MAX-1, - sounds = default.node_sound_glass_defaults(), - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, -}) - -minetest.register_node("homedecor:glowlight_small_cube", { - description = S("Small Glowlight Cube"), - tiles = { - "homedecor_glowlight_cube_tb.png", - "homedecor_glowlight_cube_tb.png", - "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", - paramtype2 = "colorwallmounted", - drawtype = "nodebox", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = { - type = "wallmounted", - wall_top = { -0.25, 0, -0.25, 0.25, 0.5, 0.25 }, - wall_bottom = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 }, - wall_side = { -0.5, -0.25, -0.25, 0, 0.25, 0.25 } - }, - node_box = glowlight_nodebox.small_cube, - groups = { snappy = 3, ud_param2_colorable = 1 }, - light_source = default.LIGHT_MAX-1, - sounds = default.node_sound_glass_defaults(), - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, -}) - -homedecor.register("plasma_lamp", { - description = S("Plasma Lamp"), - drawtype = "mesh", - mesh = "plasma_lamp.obj", - tiles = { - "default_gold_block.png", - { - name="homedecor_plasma_storm.png", - animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, - } - }, - use_texture_alpha = true, - light_source = default.LIGHT_MAX - 1, - sunlight_propagates = true, - groups = {cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults(), -}) - -homedecor.register("plasma_ball", { - description = S("Plasma Ball"), - mesh = "homedecor_plasma_ball.obj", - tiles = { - { name = "homedecor_generic_plastic.png", color = homedecor.color_black }, - { - name = "homedecor_plasma_ball_streamers.png", - animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, - }, - "homedecor_plasma_ball_glass.png" - }, - inventory_image = "homedecor_plasma_ball_inv.png", - selection_box = { - type = "fixed", - fixed = { -0.1875, -0.5, -0.1875, 0.1875, 0, 0.1875 } - }, - walkable = false, - use_texture_alpha = true, - light_source = default.LIGHT_MAX - 5, - sunlight_propagates = true, - groups = {cracky=3,oddly_breakable_by_hand=3}, - sounds = default.node_sound_glass_defaults(), -}) - -local tc_cbox = { - type = "fixed", - fixed = { - { -0.1875, -0.5, -0.1875, 0.1875, 0.375, 0.1875 }, - } -} - -homedecor.register("candle", { - description = S("Thick Candle"), - mesh = "homedecor_candle_thick.obj", - tiles = { - 'homedecor_candle_sides.png', - {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, - }, - inventory_image = "homedecor_candle_inv.png", - selection_box = tc_cbox, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-4, -}) - -local c_cbox = { - type = "fixed", - fixed = { - { -0.125, -0.5, -0.125, 0.125, 0.05, 0.125 }, - } -} - -homedecor.register("candle_thin", { - description = S("Thin Candle"), - mesh = "homedecor_candle_thin.obj", - tiles = { - 'homedecor_candle_sides.png', - {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, - }, - inventory_image = "homedecor_candle_thin_inv.png", - selection_box = c_cbox, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-4, -}) - -local cs_cbox = { - type = "fixed", - fixed = { - { -0.15625, -0.5, -0.15625, 0.15625, 0.3125, 0.15625 }, - } -} - -homedecor.register("candlestick_wrought_iron", { - description = S("Candlestick (wrought iron)"), - mesh = "homedecor_candlestick.obj", - tiles = { - "homedecor_candle_sides.png", - {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, - "homedecor_generic_metal_wrought_iron.png", - }, - inventory_image = "homedecor_candlestick_wrought_iron_inv.png", - selection_box = cs_cbox, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-4, -}) - -homedecor.register("candlestick_brass", { - description = S("Candlestick (brass)"), - mesh = "homedecor_candlestick.obj", - tiles = { - "homedecor_candle_sides.png", - {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, - "homedecor_generic_metal_brass.png", - }, - inventory_image = "homedecor_candlestick_brass_inv.png", - selection_box = cs_cbox, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-4, -}) - -homedecor.register("wall_sconce", { - description = S("Wall sconce"), - mesh = "homedecor_wall_sconce.obj", - tiles = { - 'homedecor_candle_sides.png', - {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, - 'homedecor_wall_sconce_back.png', - 'homedecor_generic_metal_wrought_iron.png', - }, - inventory_image = "homedecor_wall_sconce_inv.png", - selection_box = { - type = "fixed", - fixed = { -0.1875, -0.25, 0.3125, 0.1875, 0.25, 0.5 } - }, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-4, -}) - -local ol_cbox = { - type = "fixed", - fixed = { - { -5/16, -8/16, -3/16, 5/16, 4/16, 3/16 }, - } -} - -homedecor.register("oil_lamp", { - description = S("Oil lamp (hurricane)"), - mesh = "homedecor_oil_lamp.obj", - tiles = { - "homedecor_generic_metal_brass.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_black }, - { name = "homedecor_generic_metal.png", color = 0xffa00000 }, - "homedecor_oil_lamp_wick.png", - { name = "homedecor_generic_metal.png", color = 0xffa00000 }, - "homedecor_oil_lamp_glass.png", - }, - use_texture_alpha = true, - inventory_image = "homedecor_oil_lamp_inv.png", - selection_box = ol_cbox, - walkable = false, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-3, - sounds = default.node_sound_glass_defaults(), -}) - -homedecor.register("oil_lamp_tabletop", { - description = S("Oil Lamp (tabletop)"), - mesh = "homedecor_oil_lamp_tabletop.obj", - tiles = {"homedecor_oil_lamp_tabletop.png"}, - inventory_image = "homedecor_oil_lamp_tabletop_inv.png", - selection_box = ol_cbox, - collision_box = ol_cbox, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX-3, - sounds = default.node_sound_glass_defaults(), -}) - -local gl_cbox = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 0.45, 0.25 }, -} - -minetest.register_alias("homedecor:wall_lantern", "homedecor:ground_lantern") - -homedecor.register("ground_lantern", { - description = S("Ground Lantern"), - mesh = "homedecor_ground_lantern.obj", - tiles = { "homedecor_light.png", "homedecor_generic_metal_wrought_iron.png" }, - use_texture_alpha = true, - inventory_image = "homedecor_ground_lantern_inv.png", - wield_image = "homedecor_ground_lantern_inv.png", - groups = {snappy=3}, - light_source = 11, - selection_box = gl_cbox, - walkable = false -}) - -local hl_cbox = { - type = "fixed", - fixed = { -0.25, -0.5, -0.2, 0.25, 0.5, 0.5 }, -} - -homedecor.register("hanging_lantern", { - description = S("Hanging Lantern"), - mesh = "homedecor_hanging_lantern.obj", - tiles = { "homedecor_generic_metal_wrought_iron.png", "homedecor_light.png" }, - use_texture_alpha = true, - inventory_image = "homedecor_hanging_lantern_inv.png", - wield_image = "homedecor_hanging_lantern_inv.png", - groups = {snappy=3}, - light_source = 11, - selection_box = hl_cbox, - walkable = false -}) - -local cl_cbox = { - type = "fixed", - fixed = { -0.35, -0.45, -0.35, 0.35, 0.5, 0.35 } -} - -homedecor.register("ceiling_lantern", { - drawtype = "mesh", - mesh = "homedecor_ceiling_lantern.obj", - tiles = { "homedecor_light.png", "homedecor_generic_metal_wrought_iron.png" }, - use_texture_alpha = true, - inventory_image = "homedecor_ceiling_lantern_inv.png", - description = S("Ceiling Lantern"), - groups = {snappy=3}, - light_source = 11, - selection_box = cl_cbox, - walkable = false -}) - -local sm_light = default.LIGHT_MAX-2 - ---[[if minetest.get_modpath("darkage") then - minetest.register_alias("homedecor:lattice_lantern_large", "darkage:lamp") - sm_light = default.LIGHT_MAX-5 -else]] - homedecor.register("lattice_lantern_large", { - description = S("Lattice lantern (large)"), - tiles = { 'homedecor_lattice_lantern_large.png' }, - groups = { snappy = 3 }, - light_source = default.LIGHT_MAX, - sounds = default.node_sound_glass_defaults(), - }) - minetest.register_alias("darkage:lamp", "homedecor:lattice_lantern_large") ---end - -homedecor.register("lattice_lantern_small", { - description = S("Lattice lantern (small)"), - tiles = { - 'homedecor_lattice_lantern_small_tb.png', - 'homedecor_lattice_lantern_small_tb.png', - 'homedecor_lattice_lantern_small_sides.png' - }, - selection_box = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } - }, - node_box = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } - }, - groups = { snappy = 3 }, - light_source = sm_light, - sounds = default.node_sound_glass_defaults(), - on_place = minetest.rotate_node -}) - -local brightness_tab = { - 0xffd0d0d0, - 0xffd8d8d8, - 0xffe0e0e0, - 0xffe8e8e8, - 0xffffffff, -} - --- table lamps and standing lamps - -local repl = { - ["off"] ="low", - ["low"] ="med", - ["med"] ="hi", - ["hi"] ="max", - ["max"] ="off", -} - -local lamp_colors = { - "white", - "blue", - "green", - "pink", - "red", - "violet", -} - -local tlamp_cbox = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 0.5, 0.25 } -} - -local slamp_cbox = { - type = "fixed", - fixed = { -0.25, -0.5, -0.25, 0.25, 1.5, 0.25 } -} - -local function reg_lamp(suffix, nxt, light, brightness) - - local wool_brighten = (light or 0) * 15 - - homedecor.register("table_lamp_"..suffix, { - description = S("Table Lamp"), - mesh = "homedecor_table_lamp.obj", - tiles = { - "wool_grey.png^[colorize:#ffffff:"..wool_brighten, - { name = "homedecor_table_standing_lamp_lightbulb.png", color = brightness_tab[brightness] }, - { name = "homedecor_generic_wood_red.png", color = 0xffffffff }, - { name = "homedecor_generic_metal.png", color = homedecor.color_black }, - }, - inventory_image = "homedecor_table_lamp_foot_inv.png^homedecor_table_lamp_top_inv.png", - paramtype = "light", - paramtype2 = "color", - palette = "unifieddyes_palette_extended.png", - walkable = false, - light_source = light, - selection_box = tlamp_cbox, - sounds = default.node_sound_wood_defaults(), - groups = {cracky=2,oddly_breakable_by_hand=1, ud_param2_colorable = 1, - not_in_creative_inventory=((light ~= nil) and 1) or nil, - }, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - node.name = "homedecor:table_lamp_"..repl[suffix] - minetest.set_node(pos, node) - end, - on_construct = unifieddyes.on_construct, - drop = { - items = { - {items = {"homedecor:table_lamp_off"}, inherit_color = true }, - } - } - - }) - - homedecor.register("standing_lamp_"..suffix, { - description = S("Standing Lamp"), - mesh = "homedecor_standing_lamp.obj", - tiles = { - "wool_grey.png^[colorize:#ffffff:"..wool_brighten, - { name = "homedecor_table_standing_lamp_lightbulb.png", color = brightness_tab[brightness] }, - { name = "homedecor_generic_wood_red.png", color = 0xffffffff }, - { name = "homedecor_generic_metal.png", color = homedecor.color_black }, - }, - inventory_image = "homedecor_standing_lamp_foot_inv.png^homedecor_standing_lamp_top_inv.png", - paramtype = "light", - paramtype2 = "color", - palette = "unifieddyes_palette_extended.png", - walkable = false, - light_source = light, - groups = {cracky=2,oddly_breakable_by_hand=1, ud_param2_colorable = 1, - not_in_creative_inventory=((light ~= nil) and 1) or nil, - }, - selection_box = slamp_cbox, - sounds = default.node_sound_wood_defaults(), - on_rotate = screwdriver.rotate_simple, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - node.name = "homedecor:standing_lamp_"..repl[suffix] - minetest.set_node(pos, node) - end, - on_construct = unifieddyes.on_construct, - --expand = { top="air" }, - drop = { - items = { - {items = {"homedecor:standing_lamp_off"}, inherit_color = true }, - } - } - }) - - -- for old maps that had the original 3dforniture mod - minetest.register_alias("3dforniture:table_lamp_"..suffix, "homedecor:table_lamp_"..suffix) -end - -reg_lamp("off", "low", nil, 1 ) -reg_lamp("low", "med", 3, 2 ) -reg_lamp("med", "hi", 7, 3 ) -reg_lamp("hi", "max", 11, 4 ) -reg_lamp("max", "off", 14, 5 ) - --- "gooseneck" style desk lamps - -local dlamp_cbox = { - type = "wallmounted", - wall_side = { -0.2, -0.5, -0.15, 0.32, 0.12, 0.15 }, -} - -homedecor.register("desk_lamp", { - description = S("Desk Lamp"), - mesh = "homedecor_desk_lamp.obj", - tiles = { - "homedecor_generic_metal.png", - "homedecor_generic_metal.png", - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - { name = "homedecor_table_standing_lamp_lightbulb.png", color = brightness_tab[5] }, - }, - inventory_image = "homedecor_desk_lamp_inv.png", - paramtype = "light", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = dlamp_cbox, - node_box = dlamp_cbox, - walkable = false, - groups = {snappy=3, ud_param2_colorable = 1}, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) - end, - on_rotate = unifieddyes.fix_after_screwdriver_nsew -}) - --- "kitchen"/"dining room" ceiling lamp - -homedecor.register("ceiling_lamp", { - description = S("Ceiling Lamp"), - mesh = "homedecor_ceiling_lamp.obj", - tiles = { - "homedecor_generic_metal_brass.png", - "homedecor_ceiling_lamp_glass.png", - "homedecor_table_standing_lamp_lightbulb.png", - { name = "homedecor_generic_plastic.png", color = 0xff442d04 }, - }, - inventory_image = "homedecor_ceiling_lamp_inv.png", - light_source = default.LIGHT_MAX, - groups = {snappy=3}, - walkable = false, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:ceiling_lamp_off"}) - end, -}) - -homedecor.register("ceiling_lamp_off", { - description = S("Ceiling Lamp (off)"), - mesh = "homedecor_ceiling_lamp.obj", - tiles = { - "homedecor_generic_metal_brass.png", - "homedecor_ceiling_lamp_glass.png", - { "homedecor_table_standing_lamp_lightbulb.png", color = 0xffd0d0d0 }, - { name = "homedecor_generic_plastic.png", color = 0xff442d04 }, - }, - groups = {snappy=3, not_in_creative_inventory=1}, - walkable = false, - on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) - minetest.set_node(pos, {name = "homedecor:ceiling_lamp"}) - end, - drop = "homedecor:ceiling_lamp" -}) - --- conversion LBM for param2 coloring - -homedecor.old_static_nodes = { - "homedecor:glowlight_quarter_white", - "homedecor:glowlight_quarter_yellow", - "homedecor:glowlight_half_white", - "homedecor:glowlight_half_yellow", - "homedecor:glowlight_small_cube_white", - "homedecor:glowlight_small_cube_yellow" -} - -local lamp_power = {"off", "low", "med", "hi", "max"} - -for _, power in ipairs(lamp_power) do - for _, color in ipairs(lamp_colors) do - table.insert(homedecor.old_static_nodes, "homedecor:table_lamp_"..color.."_"..power) - table.insert(homedecor.old_static_nodes, "homedecor:standing_lamp_"..color.."_"..power) - end -end - -minetest.register_lbm({ - name = "homedecor:convert_lighting", - label = "Convert homedecor glowlights, table lamps, and standing lamps to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_static_nodes, - action = function(pos, node) - local name = node.name - local newname - local color - - if string.find(name, "small_cube") then - newname = "homedecor:glowlight_small_cube" - elseif string.find(name, "glowlight_half") then - newname = "homedecor:glowlight_half" - elseif string.find(name, "glowlight_quarter") then - newname = "homedecor:glowlight_quarter" - end - - local lampname - if string.find(name, "standing_lamp") then - lampname = "homedecor:standing_lamp" - elseif string.find(name, "table_lamp") then - lampname = "homedecor:table_lamp" - end - if lampname then - newname = lampname - if string.find(name, "_off") then - newname = newname.."_off" - elseif string.find(name, "_low") then - newname = newname.."_low" - elseif string.find(name, "_med") then - newname = newname.."_med" - elseif string.find(name, "_hi") then - newname = newname.."_hi" - elseif string.find(name, "_max") then - newname = newname.."_max" - end - end - - if string.find(name, "red") then - color = "red" - elseif string.find(name, "pink") then - color = "pink" - elseif string.find(name, "green") then - color = "green" - elseif string.find(name, "blue") then - color = "blue" - elseif string.find(name, "yellow") then - color = "yellow" - elseif string.find(name, "violet") then - color = "violet" - else - color = "white" - end - - local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended") - - local old_fdir - local new_node = newname - local new_fdir = 1 - local param2 - - if string.find(name, "glowlight") then - paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") - - old_fdir = math.floor(node.param2 / 4) - - if old_fdir == 5 then - new_fdir = 0 - elseif old_fdir == 1 then - new_fdir = 5 - elseif old_fdir == 2 then - new_fdir = 4 - elseif old_fdir == 3 then - new_fdir = 3 - elseif old_fdir == 4 then - new_fdir = 2 - elseif old_fdir == 0 then - new_fdir = 1 - end - param2 = paletteidx + new_fdir - else - param2 = paletteidx - end - - local meta = minetest.get_meta(pos) - - if string.find(name, "table_lamp") or string.find(name, "standing_lamp") then - meta:set_string("palette", "ext") - end - - minetest.set_node(pos, { name = new_node, param2 = param2 }) - meta:set_string("dye", "unifieddyes:"..color) - end -}) - --- this one's for the small "gooseneck" desk lamps - -homedecor.old_static_desk_lamps = { - "homedecor:desk_lamp_red", - "homedecor:desk_lamp_blue", - "homedecor:desk_lamp_green", - "homedecor:desk_lamp_violet", -} - -minetest.register_lbm({ - name = "homedecor:convert_desk_lamps", - label = "Convert homedecor desk lamps to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_static_desk_lamps, - action = function(pos, node) - local name = node.name - local color = string.sub(name, string.find(name, "_", -8) + 1) - - if color == "green" then - color = "medium_green" - elseif color == "violet" then - color = "magenta" - end - - local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") - 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 - - local param2 = paletteidx + new_fdir - - minetest.set_node(pos, { name = "homedecor:desk_lamp", param2 = param2 }) - local meta = minetest.get_meta(pos) - meta:set_string("dye", "unifieddyes:"..color) - end -}) - -local chains_sbox = { - type = "fixed", - fixed = { -0.1, -0.5, -0.1, 0.1, 0.5, 0.1 } -} - -local topchains_sbox = { - type = "fixed", - fixed = { - { -0.25, 0.35, -0.25, 0.25, 0.5, 0.25 }, - { -0.1, -0.5, -0.1, 0.1, 0.4, 0.1 } - } -} - -minetest.register_node("homedecor:chain_steel_top", { - description = S("Hanging chain (ceiling mount, steel)"), - drawtype = "mesh", - mesh = "homedecor_chains_top.obj", - tiles = {"basic_materials_chain_steel.png"}, - walkable = false, - climbable = true, - sunlight_propagates = true, - paramtype = "light", - inventory_image = "basic_materials_chain_steel_inv.png", - groups = {cracky=3}, - selection_box = topchains_sbox, -}) - -minetest.register_node("homedecor:chain_brass_top", { - description = S("Hanging chain (ceiling mount, brass)"), - drawtype = "mesh", - mesh = "homedecor_chains_top.obj", - tiles = {"basic_materials_chain_brass.png"}, - walkable = false, - climbable = true, - sunlight_propagates = true, - paramtype = "light", - inventory_image = "basic_materials_chain_brass_inv.png", - groups = {cracky=3}, - selection_box = topchains_sbox, -}) - -minetest.register_node("homedecor:chandelier_steel", { - description = S("Chandelier (steel)"), - paramtype = "light", - light_source = 12, - walkable = false, - climbable = true, - sunlight_propagates = true, - tiles = { - "basic_materials_chain_steel.png", - "homedecor_candle_flat.png", - { - name="homedecor_candle_flame.png", - animation={ - type="vertical_frames", - aspect_w=16, - aspect_h=16, - length=3.0 - } - } - }, - drawtype = "mesh", - mesh = "homedecor_chandelier.obj", - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), -}) - -minetest.register_node("homedecor:chandelier_brass", { - description = S("Chandelier (brass)"), - paramtype = "light", - light_source = 12, - walkable = false, - climbable = true, - sunlight_propagates = true, - tiles = { - "basic_materials_chain_brass.png", - "homedecor_candle_flat.png", - { - name="homedecor_candle_flame.png", - animation={ - type="vertical_frames", - aspect_w=16, - aspect_h=16, - length=3.0 - } - } - }, - drawtype = "mesh", - mesh = "homedecor_chandelier.obj", - groups = {cracky=3}, - sounds = default.node_sound_stone_defaults(), -}) - --- crafts - -minetest.register_craft({ - output = 'homedecor:chain_steel_top', - recipe = { - {'default:steel_ingot'}, - {'basic_materials:chainlink_steel'}, - }, -}) - -minetest.register_craft({ - output = 'homedecor:chandelier_steel', - recipe = { - {'', 'basic_materials:chainlink_steel', ''}, - {'default:torch', 'basic_materials:chainlink_steel', 'default:torch'}, - {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'}, - } -}) - --- brass versions - -minetest.register_craft({ - output = 'homedecor:chain_brass_top', - recipe = { - {'basic_materials:brass_ingot'}, - {'basic_materials:chainlink_brass'}, - }, -}) - -minetest.register_craft({ - output = 'homedecor:chandelier_brass', - recipe = { - {'', 'basic_materials:chainlink_brass', ''}, - {'default:torch', 'basic_materials:chainlink_brass', 'default:torch'}, - {'basic_materials:brass_ingot', 'basic_materials:brass_ingot', 'basic_materials:brass_ingot'}, - } -}) - -minetest.register_alias("chains:chain_top", "homedecor:chain_steel_top") -minetest.register_alias("chains:chain_top_brass", "homedecor:chain_brass_top") - -minetest.register_alias("chains:chandelier_steel", "homedecor:chandelier_steel") -minetest.register_alias("chains:chandelier_brass", "homedecor:chandelier_brass") - diff --git a/homedecor/models/homedecor_door_closet.obj b/homedecor/models/homedecor_door_closet.obj deleted file mode 100755 index 3cbfca7..0000000 --- a/homedecor/models/homedecor_door_closet.obj +++ /dev/null @@ -1,518 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-closet.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v 0.374875 0.437531 0.499969 -v -0.374875 0.437531 0.499969 -v -0.374875 1.374531 0.499969 -v -0.374875 0.437531 0.375031 -v 0.374875 0.437531 0.375031 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.562469 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.562469 0.375031 -v -0.374875 0.562469 0.375031 -v 0.374875 0.562469 0.499969 -v 0.375000 1.365847 0.454073 -v 0.375000 1.360323 0.459597 -v -0.375000 1.360323 0.459597 -v -0.375000 1.365847 0.454073 -v 0.375000 1.327177 0.415403 -v 0.375000 1.321653 0.420927 -v -0.375000 1.321653 0.420927 -v -0.375000 1.327177 0.415403 -v 0.375000 1.303347 0.454073 -v 0.375000 1.297823 0.459597 -v -0.375000 1.297823 0.459597 -v -0.375000 1.303347 0.454073 -v 0.375000 1.264677 0.415403 -v 0.375000 1.259153 0.420927 -v -0.375000 1.259153 0.420927 -v -0.375000 1.264677 0.415403 -v 0.375000 1.240847 0.454073 -v 0.375000 1.235323 0.459597 -v -0.375000 1.235323 0.459597 -v -0.375000 1.240847 0.454073 -v 0.375000 1.202177 0.415403 -v 0.375000 1.196653 0.420927 -v -0.375000 1.196653 0.420927 -v -0.375000 1.202177 0.415403 -v 0.375000 1.178347 0.454073 -v 0.375000 1.172823 0.459597 -v -0.375000 1.172823 0.459597 -v -0.375000 1.178347 0.454073 -v 0.375000 1.139677 0.415403 -v 0.375000 1.134153 0.420927 -v -0.375000 1.134153 0.420927 -v -0.375000 1.139677 0.415403 -v 0.375000 1.115847 0.454073 -v 0.375000 1.110323 0.459597 -v -0.375000 1.110323 0.459597 -v -0.375000 1.115847 0.454073 -v 0.375000 1.077177 0.415403 -v 0.375000 1.071653 0.420927 -v -0.375000 1.071653 0.420927 -v -0.375000 1.077177 0.415403 -v 0.375000 1.053347 0.454073 -v 0.375000 1.047823 0.459597 -v -0.375000 1.047823 0.459597 -v -0.375000 1.053347 0.454073 -v 0.375000 1.014677 0.415403 -v 0.375000 1.009153 0.420927 -v -0.375000 1.009153 0.420927 -v -0.375000 1.014677 0.415403 -v 0.375000 0.928347 0.454073 -v 0.375000 0.922823 0.459597 -v -0.375000 0.922823 0.459597 -v -0.375000 0.928347 0.454073 -v 0.375000 0.889677 0.415403 -v 0.375000 0.884153 0.420927 -v -0.375000 0.884153 0.420927 -v -0.375000 0.889677 0.415403 -v 0.375000 0.990847 0.454073 -v 0.375000 0.985323 0.459597 -v -0.375000 0.985323 0.459597 -v -0.375000 0.990847 0.454073 -v 0.375000 0.952177 0.415403 -v 0.375000 0.946653 0.420927 -v -0.375000 0.946653 0.420927 -v -0.375000 0.952177 0.415403 -v 0.375000 0.865847 0.454073 -v 0.375000 0.860323 0.459597 -v -0.375000 0.860323 0.459597 -v -0.375000 0.865847 0.454073 -v 0.375000 0.827177 0.415403 -v 0.375000 0.821653 0.420927 -v -0.375000 0.821653 0.420927 -v -0.375000 0.827177 0.415403 -v 0.375000 0.803347 0.454073 -v 0.375000 0.797823 0.459597 -v -0.375000 0.797823 0.459597 -v -0.375000 0.803347 0.454073 -v 0.375000 0.764677 0.415403 -v 0.375000 0.759153 0.420927 -v -0.375000 0.759153 0.420927 -v -0.375000 0.764677 0.415403 -v 0.375000 0.740847 0.454073 -v 0.375000 0.735323 0.459597 -v -0.375000 0.735323 0.459597 -v -0.375000 0.740847 0.454073 -v 0.375000 0.702177 0.415403 -v 0.375000 0.696653 0.420927 -v -0.375000 0.696653 0.420927 -v -0.375000 0.702177 0.415403 -v 0.375000 0.678347 0.454073 -v 0.375000 0.672823 0.459597 -v -0.375000 0.672823 0.459597 -v -0.375000 0.678347 0.454073 -v 0.375000 0.639677 0.415403 -v 0.375000 0.634153 0.420927 -v -0.375000 0.634153 0.420927 -v -0.375000 0.639677 0.415403 -v 0.375000 0.615847 0.454073 -v 0.375000 0.610323 0.459597 -v -0.375000 0.610323 0.459597 -v -0.375000 0.615847 0.454073 -v 0.375000 0.577177 0.415403 -v 0.375000 0.571653 0.420927 -v -0.375000 0.571653 0.420927 -v -0.375000 0.577177 0.415403 -v 0.375000 0.428347 0.454073 -v 0.375000 0.422823 0.459597 -v -0.375000 0.422823 0.459597 -v -0.375000 0.428347 0.454073 -v 0.375000 0.389677 0.415403 -v 0.375000 0.384153 0.420927 -v -0.375000 0.384153 0.420927 -v -0.375000 0.389677 0.415403 -v 0.375000 0.365847 0.454073 -v 0.375000 0.360323 0.459597 -v -0.375000 0.360323 0.459597 -v -0.375000 0.365847 0.454073 -v 0.375000 0.327177 0.415403 -v 0.375000 0.321653 0.420927 -v -0.375000 0.321653 0.420927 -v -0.375000 0.327177 0.415403 -v 0.375000 0.303347 0.454073 -v 0.375000 0.297823 0.459597 -v -0.375000 0.297823 0.459597 -v -0.375000 0.303347 0.454073 -v 0.375000 0.264677 0.415403 -v 0.375000 0.259153 0.420927 -v -0.375000 0.259153 0.420927 -v -0.375000 0.264677 0.415403 -v 0.375000 0.240847 0.454073 -v 0.375000 0.235323 0.459597 -v -0.375000 0.235323 0.459597 -v -0.375000 0.240847 0.454073 -v 0.375000 0.202177 0.415403 -v 0.375000 0.196653 0.420927 -v -0.375000 0.196653 0.420927 -v -0.375000 0.202177 0.415403 -v 0.375000 0.178347 0.454073 -v 0.375000 0.172823 0.459597 -v -0.375000 0.172823 0.459597 -v -0.375000 0.178347 0.454073 -v 0.375000 0.139677 0.415403 -v 0.375000 0.134153 0.420927 -v -0.375000 0.134153 0.420927 -v -0.375000 0.139677 0.415403 -v 0.375000 0.115847 0.454073 -v 0.375000 0.110323 0.459597 -v -0.375000 0.110323 0.459597 -v -0.375000 0.115847 0.454073 -v 0.375000 0.077177 0.415403 -v 0.375000 0.071653 0.420927 -v -0.375000 0.071653 0.420927 -v -0.375000 0.077177 0.415403 -v 0.375000 -0.009153 0.454073 -v 0.375000 -0.014677 0.459597 -v -0.375000 -0.014677 0.459597 -v -0.375000 -0.009153 0.454073 -v 0.375000 -0.047823 0.415403 -v 0.375000 -0.053347 0.420927 -v -0.375000 -0.053347 0.420927 -v -0.375000 -0.047823 0.415403 -v 0.375000 0.053347 0.454073 -v 0.375000 0.047823 0.459597 -v -0.375000 0.047823 0.459597 -v -0.375000 0.053347 0.454073 -v 0.375000 0.014677 0.415403 -v 0.375000 0.009153 0.420927 -v -0.375000 0.009153 0.420927 -v -0.375000 0.014677 0.415403 -v 0.375000 -0.071653 0.454073 -v 0.375000 -0.077177 0.459597 -v -0.375000 -0.077177 0.459597 -v -0.375000 -0.071653 0.454073 -v 0.375000 -0.110323 0.415403 -v 0.375000 -0.115847 0.420927 -v -0.375000 -0.115847 0.420927 -v -0.375000 -0.110323 0.415403 -v 0.375000 -0.134153 0.454073 -v 0.375000 -0.139677 0.459597 -v -0.375000 -0.139677 0.459597 -v -0.375000 -0.134153 0.454073 -v 0.375000 -0.172823 0.415403 -v 0.375000 -0.178347 0.420927 -v -0.375000 -0.178347 0.420927 -v -0.375000 -0.172823 0.415403 -v 0.375000 -0.196653 0.454073 -v 0.375000 -0.202177 0.459597 -v -0.375000 -0.202177 0.459597 -v -0.375000 -0.196653 0.454073 -v 0.375000 -0.235323 0.415403 -v 0.375000 -0.240847 0.420927 -v -0.375000 -0.240847 0.420927 -v -0.375000 -0.235323 0.415403 -v 0.375000 -0.259153 0.454073 -v 0.375000 -0.264677 0.459597 -v -0.375000 -0.264677 0.459597 -v -0.375000 -0.259153 0.454073 -v 0.375000 -0.297823 0.415403 -v 0.375000 -0.303347 0.420927 -v -0.375000 -0.303347 0.420927 -v -0.375000 -0.297823 0.415403 -v 0.375000 -0.321653 0.454073 -v 0.375000 -0.327177 0.459597 -v -0.375000 -0.327177 0.459597 -v -0.375000 -0.321653 0.454073 -v 0.375000 -0.360323 0.415403 -v 0.375000 -0.365847 0.420927 -v -0.375000 -0.365847 0.420927 -v -0.375000 -0.360323 0.415403 -vt 0.515625 0.937500 -vt 0.140625 0.937500 -vt 0.078125 0.937500 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.578125 0.937500 -vt 0.515625 0.468750 -vt 0.515625 0.531250 -vt 0.140625 0.531250 -vt 0.140625 0.468750 -vt 0.015625 1.000000 -vt 0.015625 0.937500 -vt 0.015625 0.062500 -vt 0.015625 -0.000000 -vt 0.078125 -0.000000 -vt 0.078125 0.062500 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.578125 0.062500 -vt 0.515625 0.062500 -vt 0.140625 0.062500 -vt 0.578125 0.000000 -vt 0.640625 0.000000 -vt 0.640625 0.062500 -vt 0.640625 0.937500 -vt 0.640625 1.000000 -vt 0.140625 0.906250 -vt 0.515625 0.906250 -vt 0.015625 0.531250 -vt 0.078125 0.531250 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.578125 0.531250 -vt 0.640625 0.531250 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.015625 0.468750 -vt 0.078125 0.468750 -vt 0.640625 0.468750 -vt 0.578125 0.468750 -vt 0.515625 0.921875 -vt 0.140625 0.921875 -vt 0.140625 0.875000 -vt 0.515625 0.875000 -vt 0.515625 0.890625 -vt 0.140625 0.890625 -vt 0.140625 0.843750 -vt 0.515625 0.843750 -vt 0.515625 0.859375 -vt 0.140625 0.859375 -vt 0.140625 0.812500 -vt 0.515625 0.812500 -vt 0.515625 0.828125 -vt 0.140625 0.828125 -vt 0.140625 0.781250 -vt 0.515625 0.781250 -vt 0.515625 0.796875 -vt 0.140625 0.796875 -vt 0.140625 0.750000 -vt 0.515625 0.750000 -vt 0.515625 0.765625 -vt 0.140625 0.765625 -vt 0.140625 0.687500 -vt 0.140625 0.718750 -vt 0.515625 0.718750 -vt 0.515625 0.687500 -vt 0.515625 0.703125 -vt 0.140625 0.703125 -vt 0.515625 0.734375 -vt 0.140625 0.734375 -vt 0.140625 0.656250 -vt 0.515625 0.656250 -vt 0.515625 0.671875 -vt 0.140625 0.671875 -vt 0.140625 0.625000 -vt 0.515625 0.625000 -vt 0.515625 0.640625 -vt 0.140625 0.640625 -vt 0.140625 0.609375 -vt 0.515625 0.609375 -vt 0.140625 0.578125 -vt 0.515625 0.578125 -vt 0.515625 0.593750 -vt 0.140625 0.593750 -vt 0.140625 0.546875 -vt 0.515625 0.546875 -vt 0.515625 0.562500 -vt 0.140625 0.562500 -vt 0.140625 0.421875 -vt 0.140625 0.453125 -vt 0.515625 0.453125 -vt 0.515625 0.421875 -vt 0.515625 0.437500 -vt 0.140625 0.437500 -vt 0.140625 0.390625 -vt 0.515625 0.390625 -vt 0.515625 0.406250 -vt 0.140625 0.406250 -vt 0.140625 0.359375 -vt 0.515625 0.359375 -vt 0.515625 0.375000 -vt 0.140625 0.375000 -vt 0.140625 0.328125 -vt 0.515625 0.328125 -vt 0.515625 0.343750 -vt 0.140625 0.343750 -vt 0.140625 0.296875 -vt 0.515625 0.296875 -vt 0.515625 0.312500 -vt 0.140625 0.312500 -vt 0.140625 0.265625 -vt 0.515625 0.265625 -vt 0.515625 0.281250 -vt 0.140625 0.281250 -vt 0.140625 0.203125 -vt 0.140625 0.234375 -vt 0.515625 0.234375 -vt 0.515625 0.203125 -vt 0.515625 0.218750 -vt 0.140625 0.218750 -vt 0.515625 0.250000 -vt 0.140625 0.250000 -vt 0.140625 0.171875 -vt 0.515625 0.171875 -vt 0.515625 0.187500 -vt 0.140625 0.187500 -vt 0.140625 0.140625 -vt 0.515625 0.140625 -vt 0.515625 0.156250 -vt 0.140625 0.156250 -vt 0.140625 0.125000 -vt 0.515625 0.125000 -vt 0.140625 0.093750 -vt 0.515625 0.093750 -vt 0.515625 0.109375 -vt 0.140625 0.109375 -vt 0.515625 0.078125 -vt 0.140625 0.078125 -s off -f 15/1 20/2 10/3 1/4 2/5 21/6 -f 16/7 31/8 30/9 17/10 -f 23/3 6/4 1/11 10/12 22/13 3/14 8/15 11/16 -f 18/2 19/1 12/6 5/5 6/4 23/3 -f 2/17 1/18 6/19 5/20 -f 3/21 4/22 7/23 8/24 -f 13/10 32/9 27/8 14/7 -f 24/25 12/6 19/1 31/8 16/7 28/26 -f 22/16 10/3 20/2 32/9 13/10 25/27 -f 24/25 7/28 4/29 9/30 21/31 2/32 5/5 12/6 -f 26/26 14/7 27/8 15/1 21/6 9/25 -f 29/27 17/10 30/9 18/2 23/3 11/16 -f 8/15 7/28 24/25 28/26 29/27 11/16 -f 4/28 3/15 22/16 25/27 26/26 9/25 -f 33/33 37/2 40/1 36/34 -f 35/1 39/34 38/33 34/2 -f 15/12 27/35 31/36 19/3 -f 30/37 31/38 27/39 32/40 -f 18/6 30/41 32/42 20/31 -f 18/43 20/44 15/45 19/46 -f 14/47 26/13 28/16 16/48 -f 29/37 28/38 26/39 25/40 -f 13/49 17/50 29/25 25/30 -f 17/43 13/44 14/45 16/46 -f 40/51 37/52 38/2 39/1 -f 33/52 36/51 35/34 34/33 -f 41/53 45/33 48/34 44/54 -f 43/34 47/54 46/53 42/33 -f 48/55 45/56 46/33 47/34 -f 41/56 44/55 43/54 42/53 -f 49/57 53/53 56/54 52/58 -f 51/54 55/58 54/57 50/53 -f 56/59 53/60 54/53 55/54 -f 49/60 52/59 51/58 50/57 -f 57/61 61/57 64/58 60/62 -f 59/58 63/62 62/61 58/57 -f 64/63 61/64 62/57 63/58 -f 57/64 60/63 59/62 58/61 -f 65/65 69/61 72/62 68/66 -f 67/62 71/66 70/65 66/61 -f 72/67 69/68 70/61 71/62 -f 65/68 68/67 67/66 66/65 -f 73/69 77/65 80/66 76/70 -f 75/66 79/70 78/69 74/65 -f 80/71 77/72 78/65 79/66 -f 73/72 76/71 75/70 74/69 -f 81/73 85/74 88/75 84/76 -f 83/75 87/76 86/73 82/74 -f 88/77 85/78 86/74 87/75 -f 81/78 84/77 83/76 82/73 -f 89/74 93/69 96/70 92/75 -f 91/70 95/75 94/74 90/69 -f 96/79 93/80 94/69 95/70 -f 89/80 92/79 91/75 90/74 -f 97/81 101/73 104/76 100/82 -f 99/76 103/82 102/81 98/73 -f 104/83 101/84 102/73 103/76 -f 97/84 100/83 99/82 98/81 -f 105/85 109/81 112/82 108/86 -f 107/82 111/86 110/85 106/81 -f 112/87 109/88 110/81 111/82 -f 105/88 108/87 107/86 106/85 -f 113/89 117/88 120/87 116/90 -f 115/87 119/90 118/89 114/88 -f 120/86 117/85 118/88 119/87 -f 113/85 116/86 115/90 114/89 -f 121/91 125/89 128/90 124/92 -f 123/90 127/92 126/91 122/89 -f 128/93 125/94 126/89 127/90 -f 121/94 124/93 123/92 122/91 -f 129/95 133/91 136/92 132/96 -f 131/92 135/96 134/95 130/91 -f 136/97 133/98 134/91 135/92 -f 129/98 132/97 131/96 130/95 -f 137/99 141/100 144/101 140/102 -f 139/101 143/102 142/99 138/100 -f 144/103 141/104 142/100 143/101 -f 137/104 140/103 139/102 138/99 -f 145/105 149/99 152/102 148/106 -f 147/102 151/106 150/105 146/99 -f 152/107 149/108 150/99 151/102 -f 145/108 148/107 147/106 146/105 -f 153/109 157/105 160/106 156/110 -f 155/106 159/110 158/109 154/105 -f 160/111 157/112 158/105 159/106 -f 153/112 156/111 155/110 154/109 -f 161/113 165/109 168/110 164/114 -f 163/110 167/114 166/113 162/109 -f 168/115 165/116 166/109 167/110 -f 161/116 164/115 163/114 162/113 -f 169/117 173/113 176/114 172/118 -f 171/114 175/118 174/117 170/113 -f 176/119 173/120 174/113 175/114 -f 169/120 172/119 171/118 170/117 -f 177/121 181/117 184/118 180/122 -f 179/118 183/122 182/121 178/117 -f 184/123 181/124 182/117 183/118 -f 177/124 180/123 179/122 178/121 -f 185/125 189/126 192/127 188/128 -f 187/127 191/128 190/125 186/126 -f 192/129 189/130 190/126 191/127 -f 185/130 188/129 187/128 186/125 -f 193/126 197/121 200/122 196/127 -f 195/122 199/127 198/126 194/121 -f 200/131 197/132 198/121 199/122 -f 193/132 196/131 195/127 194/126 -f 201/133 205/125 208/128 204/134 -f 203/128 207/134 206/133 202/125 -f 208/135 205/136 206/125 207/128 -f 201/136 204/135 203/134 202/133 -f 209/137 213/133 216/134 212/138 -f 211/134 215/138 214/137 210/133 -f 216/139 213/140 214/133 215/134 -f 209/140 212/139 211/138 210/137 -f 217/141 221/140 224/139 220/142 -f 219/139 223/142 222/141 218/140 -f 224/138 221/137 222/140 223/139 -f 217/137 220/138 219/142 218/141 -f 225/143 229/141 232/142 228/144 -f 227/142 231/144 230/143 226/141 -f 232/145 229/146 230/141 231/142 -f 225/146 228/145 227/144 226/143 -f 233/27 237/143 240/144 236/26 -f 235/144 239/26 238/27 234/143 -f 240/147 237/148 238/143 239/144 -f 233/148 236/147 235/26 234/27 diff --git a/homedecor/models/homedecor_door_closet_right.obj b/homedecor/models/homedecor_door_closet_right.obj deleted file mode 100755 index 196860b..0000000 --- a/homedecor/models/homedecor_door_closet_right.obj +++ /dev/null @@ -1,518 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-closet-right.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v 0.374875 0.437531 0.499969 -v -0.374875 0.437531 0.499969 -v -0.374875 1.374531 0.499969 -v -0.374875 0.437531 0.375031 -v 0.374875 0.437531 0.375031 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.562469 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.562469 0.375031 -v -0.374875 0.562469 0.375031 -v 0.374875 0.562469 0.499969 -v 0.375000 1.365847 0.454073 -v 0.375000 1.360323 0.459597 -v -0.375000 1.360323 0.459597 -v -0.375000 1.365847 0.454073 -v 0.375000 1.327177 0.415403 -v 0.375000 1.321653 0.420927 -v -0.375000 1.321653 0.420927 -v -0.375000 1.327177 0.415403 -v 0.375000 1.303347 0.454073 -v 0.375000 1.297823 0.459597 -v -0.375000 1.297823 0.459597 -v -0.375000 1.303347 0.454073 -v 0.375000 1.264677 0.415403 -v 0.375000 1.259153 0.420927 -v -0.375000 1.259153 0.420927 -v -0.375000 1.264677 0.415403 -v 0.375000 1.240847 0.454073 -v 0.375000 1.235323 0.459597 -v -0.375000 1.235323 0.459597 -v -0.375000 1.240847 0.454073 -v 0.375000 1.202177 0.415403 -v 0.375000 1.196653 0.420927 -v -0.375000 1.196653 0.420927 -v -0.375000 1.202177 0.415403 -v 0.375000 1.178347 0.454073 -v 0.375000 1.172823 0.459597 -v -0.375000 1.172823 0.459597 -v -0.375000 1.178347 0.454073 -v 0.375000 1.139677 0.415403 -v 0.375000 1.134153 0.420927 -v -0.375000 1.134153 0.420927 -v -0.375000 1.139677 0.415403 -v 0.375000 1.115847 0.454073 -v 0.375000 1.110323 0.459597 -v -0.375000 1.110323 0.459597 -v -0.375000 1.115847 0.454073 -v 0.375000 1.077177 0.415403 -v 0.375000 1.071653 0.420927 -v -0.375000 1.071653 0.420927 -v -0.375000 1.077177 0.415403 -v 0.375000 1.053347 0.454073 -v 0.375000 1.047823 0.459597 -v -0.375000 1.047823 0.459597 -v -0.375000 1.053347 0.454073 -v 0.375000 1.014677 0.415403 -v 0.375000 1.009153 0.420927 -v -0.375000 1.009153 0.420927 -v -0.375000 1.014677 0.415403 -v 0.375000 0.928347 0.454073 -v 0.375000 0.922823 0.459597 -v -0.375000 0.922823 0.459597 -v -0.375000 0.928347 0.454073 -v 0.375000 0.889677 0.415403 -v 0.375000 0.884153 0.420927 -v -0.375000 0.884153 0.420927 -v -0.375000 0.889677 0.415403 -v 0.375000 0.990847 0.454073 -v 0.375000 0.985323 0.459597 -v -0.375000 0.985323 0.459597 -v -0.375000 0.990847 0.454073 -v 0.375000 0.952177 0.415403 -v 0.375000 0.946653 0.420927 -v -0.375000 0.946653 0.420927 -v -0.375000 0.952177 0.415403 -v 0.375000 0.865847 0.454073 -v 0.375000 0.860323 0.459597 -v -0.375000 0.860323 0.459597 -v -0.375000 0.865847 0.454073 -v 0.375000 0.827177 0.415403 -v 0.375000 0.821653 0.420927 -v -0.375000 0.821653 0.420927 -v -0.375000 0.827177 0.415403 -v 0.375000 0.803347 0.454073 -v 0.375000 0.797823 0.459597 -v -0.375000 0.797823 0.459597 -v -0.375000 0.803347 0.454073 -v 0.375000 0.764677 0.415403 -v 0.375000 0.759153 0.420927 -v -0.375000 0.759153 0.420927 -v -0.375000 0.764677 0.415403 -v 0.375000 0.740847 0.454073 -v 0.375000 0.735323 0.459597 -v -0.375000 0.735323 0.459597 -v -0.375000 0.740847 0.454073 -v 0.375000 0.702177 0.415403 -v 0.375000 0.696653 0.420927 -v -0.375000 0.696653 0.420927 -v -0.375000 0.702177 0.415403 -v 0.375000 0.678347 0.454073 -v 0.375000 0.672823 0.459597 -v -0.375000 0.672823 0.459597 -v -0.375000 0.678347 0.454073 -v 0.375000 0.639677 0.415403 -v 0.375000 0.634153 0.420927 -v -0.375000 0.634153 0.420927 -v -0.375000 0.639677 0.415403 -v 0.375000 0.615847 0.454073 -v 0.375000 0.610323 0.459597 -v -0.375000 0.610323 0.459597 -v -0.375000 0.615847 0.454073 -v 0.375000 0.577177 0.415403 -v 0.375000 0.571653 0.420927 -v -0.375000 0.571653 0.420927 -v -0.375000 0.577177 0.415403 -v 0.375000 0.428347 0.454073 -v 0.375000 0.422823 0.459597 -v -0.375000 0.422823 0.459597 -v -0.375000 0.428347 0.454073 -v 0.375000 0.389677 0.415403 -v 0.375000 0.384153 0.420927 -v -0.375000 0.384153 0.420927 -v -0.375000 0.389677 0.415403 -v 0.375000 0.365847 0.454073 -v 0.375000 0.360323 0.459597 -v -0.375000 0.360323 0.459597 -v -0.375000 0.365847 0.454073 -v 0.375000 0.327177 0.415403 -v 0.375000 0.321653 0.420927 -v -0.375000 0.321653 0.420927 -v -0.375000 0.327177 0.415403 -v 0.375000 0.303347 0.454073 -v 0.375000 0.297823 0.459597 -v -0.375000 0.297823 0.459597 -v -0.375000 0.303347 0.454073 -v 0.375000 0.264677 0.415403 -v 0.375000 0.259153 0.420927 -v -0.375000 0.259153 0.420927 -v -0.375000 0.264677 0.415403 -v 0.375000 0.240847 0.454073 -v 0.375000 0.235323 0.459597 -v -0.375000 0.235323 0.459597 -v -0.375000 0.240847 0.454073 -v 0.375000 0.202177 0.415403 -v 0.375000 0.196653 0.420927 -v -0.375000 0.196653 0.420927 -v -0.375000 0.202177 0.415403 -v 0.375000 0.178347 0.454073 -v 0.375000 0.172823 0.459597 -v -0.375000 0.172823 0.459597 -v -0.375000 0.178347 0.454073 -v 0.375000 0.139677 0.415403 -v 0.375000 0.134153 0.420927 -v -0.375000 0.134153 0.420927 -v -0.375000 0.139677 0.415403 -v 0.375000 0.115847 0.454073 -v 0.375000 0.110323 0.459597 -v -0.375000 0.110323 0.459597 -v -0.375000 0.115847 0.454073 -v 0.375000 0.077177 0.415403 -v 0.375000 0.071653 0.420927 -v -0.375000 0.071653 0.420927 -v -0.375000 0.077177 0.415403 -v 0.375000 -0.009153 0.454073 -v 0.375000 -0.014677 0.459597 -v -0.375000 -0.014677 0.459597 -v -0.375000 -0.009153 0.454073 -v 0.375000 -0.047823 0.415403 -v 0.375000 -0.053347 0.420927 -v -0.375000 -0.053347 0.420927 -v -0.375000 -0.047823 0.415403 -v 0.375000 0.053347 0.454073 -v 0.375000 0.047823 0.459597 -v -0.375000 0.047823 0.459597 -v -0.375000 0.053347 0.454073 -v 0.375000 0.014677 0.415403 -v 0.375000 0.009153 0.420927 -v -0.375000 0.009153 0.420927 -v -0.375000 0.014677 0.415403 -v 0.375000 -0.071653 0.454073 -v 0.375000 -0.077177 0.459597 -v -0.375000 -0.077177 0.459597 -v -0.375000 -0.071653 0.454073 -v 0.375000 -0.110323 0.415403 -v 0.375000 -0.115847 0.420927 -v -0.375000 -0.115847 0.420927 -v -0.375000 -0.110323 0.415403 -v 0.375000 -0.134153 0.454073 -v 0.375000 -0.139677 0.459597 -v -0.375000 -0.139677 0.459597 -v -0.375000 -0.134153 0.454073 -v 0.375000 -0.172823 0.415403 -v 0.375000 -0.178347 0.420927 -v -0.375000 -0.178347 0.420927 -v -0.375000 -0.172823 0.415403 -v 0.375000 -0.196653 0.454073 -v 0.375000 -0.202177 0.459597 -v -0.375000 -0.202177 0.459597 -v -0.375000 -0.196653 0.454073 -v 0.375000 -0.235323 0.415403 -v 0.375000 -0.240847 0.420927 -v -0.375000 -0.240847 0.420927 -v -0.375000 -0.235323 0.415403 -v 0.375000 -0.259153 0.454073 -v 0.375000 -0.264677 0.459597 -v -0.375000 -0.264677 0.459597 -v -0.375000 -0.259153 0.454073 -v 0.375000 -0.297823 0.415403 -v 0.375000 -0.303347 0.420927 -v -0.375000 -0.303347 0.420927 -v -0.375000 -0.297823 0.415403 -v 0.375000 -0.321653 0.454073 -v 0.375000 -0.327177 0.459597 -v -0.375000 -0.327177 0.459597 -v -0.375000 -0.321653 0.454073 -v 0.375000 -0.360323 0.415403 -v 0.375000 -0.365847 0.420927 -v -0.375000 -0.365847 0.420927 -v -0.375000 -0.360323 0.415403 -vt 0.140625 0.937500 -vt 0.515625 0.937500 -vt 0.578125 0.937500 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.078125 0.937500 -vt 0.140625 0.468750 -vt 0.140625 0.531250 -vt 0.515625 0.531250 -vt 0.515625 0.468750 -vt 0.640625 1.000000 -vt 0.640625 0.937500 -vt 0.640625 0.062500 -vt 0.640625 0.000000 -vt 0.578125 0.000000 -vt 0.578125 0.062500 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.078125 0.062500 -vt 0.140625 0.062500 -vt 0.515625 0.062500 -vt 0.078125 0.000000 -vt 0.015625 0.000000 -vt 0.015625 0.062500 -vt 0.015625 0.937500 -vt 0.015625 1.000000 -vt 0.515625 0.906250 -vt 0.140625 0.906250 -vt 0.640625 0.531250 -vt 0.578125 0.531250 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.078125 0.531250 -vt 0.015625 0.531250 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.640625 0.468750 -vt 0.578125 0.468750 -vt 0.015625 0.468750 -vt 0.078125 0.468750 -vt 0.140625 0.921875 -vt 0.515625 0.921875 -vt 0.515625 0.875000 -vt 0.140625 0.875000 -vt 0.140625 0.890625 -vt 0.515625 0.890625 -vt 0.515625 0.843750 -vt 0.140625 0.843750 -vt 0.140625 0.859375 -vt 0.515625 0.859375 -vt 0.515625 0.812500 -vt 0.140625 0.812500 -vt 0.140625 0.828125 -vt 0.515625 0.828125 -vt 0.515625 0.781250 -vt 0.140625 0.781250 -vt 0.140625 0.796875 -vt 0.515625 0.796875 -vt 0.515625 0.750000 -vt 0.140625 0.750000 -vt 0.140625 0.765625 -vt 0.515625 0.765625 -vt 0.515625 0.687500 -vt 0.515625 0.718750 -vt 0.140625 0.718750 -vt 0.140625 0.687500 -vt 0.140625 0.703125 -vt 0.515625 0.703125 -vt 0.140625 0.734375 -vt 0.515625 0.734375 -vt 0.515625 0.656250 -vt 0.140625 0.656250 -vt 0.140625 0.671875 -vt 0.515625 0.671875 -vt 0.515625 0.625000 -vt 0.140625 0.625000 -vt 0.140625 0.640625 -vt 0.515625 0.640625 -vt 0.515625 0.609375 -vt 0.140625 0.609375 -vt 0.515625 0.578125 -vt 0.140625 0.578125 -vt 0.140625 0.593750 -vt 0.515625 0.593750 -vt 0.515625 0.546875 -vt 0.140625 0.546875 -vt 0.140625 0.562500 -vt 0.515625 0.562500 -vt 0.515625 0.421875 -vt 0.515625 0.453125 -vt 0.140625 0.453125 -vt 0.140625 0.421875 -vt 0.140625 0.437500 -vt 0.515625 0.437500 -vt 0.515625 0.390625 -vt 0.140625 0.390625 -vt 0.140625 0.406250 -vt 0.515625 0.406250 -vt 0.515625 0.359375 -vt 0.140625 0.359375 -vt 0.140625 0.375000 -vt 0.515625 0.375000 -vt 0.515625 0.328125 -vt 0.140625 0.328125 -vt 0.140625 0.343750 -vt 0.515625 0.343750 -vt 0.515625 0.296875 -vt 0.140625 0.296875 -vt 0.140625 0.312500 -vt 0.515625 0.312500 -vt 0.515625 0.265625 -vt 0.140625 0.265625 -vt 0.140625 0.281250 -vt 0.515625 0.281250 -vt 0.515625 0.203125 -vt 0.515625 0.234375 -vt 0.140625 0.234375 -vt 0.140625 0.203125 -vt 0.140625 0.218750 -vt 0.515625 0.218750 -vt 0.140625 0.250000 -vt 0.515625 0.250000 -vt 0.515625 0.171875 -vt 0.140625 0.171875 -vt 0.140625 0.187500 -vt 0.515625 0.187500 -vt 0.515625 0.140625 -vt 0.140625 0.140625 -vt 0.140625 0.156250 -vt 0.515625 0.156250 -vt 0.515625 0.125000 -vt 0.140625 0.125000 -vt 0.515625 0.093750 -vt 0.140625 0.093750 -vt 0.140625 0.109375 -vt 0.515625 0.109375 -vt 0.140625 0.078125 -vt 0.515625 0.078125 -s off -f 15/1 20/2 10/3 1/4 2/5 21/6 -f 16/7 31/8 30/9 17/10 -f 23/3 6/4 1/11 10/12 22/13 3/14 8/15 11/16 -f 18/2 19/1 12/6 5/5 6/4 23/3 -f 2/17 1/18 6/19 5/20 -f 3/21 4/22 7/23 8/24 -f 13/10 32/9 27/8 14/7 -f 24/25 12/6 19/1 31/8 16/7 28/26 -f 22/16 10/3 20/2 32/9 13/10 25/27 -f 24/25 7/28 4/29 9/30 21/31 2/32 5/5 12/6 -f 26/26 14/7 27/8 15/1 21/6 9/25 -f 29/27 17/10 30/9 18/2 23/3 11/16 -f 8/15 7/28 24/25 28/26 29/27 11/16 -f 4/28 3/15 22/16 25/27 26/26 9/25 -f 33/33 37/2 40/1 36/34 -f 35/1 39/34 38/33 34/2 -f 15/12 27/35 31/36 19/3 -f 30/37 31/38 27/39 32/40 -f 18/6 30/41 32/42 20/31 -f 18/43 20/44 15/45 19/46 -f 14/47 26/13 28/16 16/48 -f 29/37 28/38 26/39 25/40 -f 13/49 17/50 29/25 25/30 -f 17/43 13/44 14/45 16/46 -f 40/51 37/52 38/2 39/1 -f 33/52 36/51 35/34 34/33 -f 41/53 45/33 48/34 44/54 -f 43/34 47/54 46/53 42/33 -f 48/55 45/56 46/33 47/34 -f 41/56 44/55 43/54 42/53 -f 49/57 53/53 56/54 52/58 -f 51/54 55/58 54/57 50/53 -f 56/59 53/60 54/53 55/54 -f 49/60 52/59 51/58 50/57 -f 57/61 61/57 64/58 60/62 -f 59/58 63/62 62/61 58/57 -f 64/63 61/64 62/57 63/58 -f 57/64 60/63 59/62 58/61 -f 65/65 69/61 72/62 68/66 -f 67/62 71/66 70/65 66/61 -f 72/67 69/68 70/61 71/62 -f 65/68 68/67 67/66 66/65 -f 73/69 77/65 80/66 76/70 -f 75/66 79/70 78/69 74/65 -f 80/71 77/72 78/65 79/66 -f 73/72 76/71 75/70 74/69 -f 81/73 85/74 88/75 84/76 -f 83/75 87/76 86/73 82/74 -f 88/77 85/78 86/74 87/75 -f 81/78 84/77 83/76 82/73 -f 89/74 93/69 96/70 92/75 -f 91/70 95/75 94/74 90/69 -f 96/79 93/80 94/69 95/70 -f 89/80 92/79 91/75 90/74 -f 97/81 101/73 104/76 100/82 -f 99/76 103/82 102/81 98/73 -f 104/83 101/84 102/73 103/76 -f 97/84 100/83 99/82 98/81 -f 105/85 109/81 112/82 108/86 -f 107/82 111/86 110/85 106/81 -f 112/87 109/88 110/81 111/82 -f 105/88 108/87 107/86 106/85 -f 113/89 117/88 120/87 116/90 -f 115/87 119/90 118/89 114/88 -f 120/86 117/85 118/88 119/87 -f 113/85 116/86 115/90 114/89 -f 121/91 125/89 128/90 124/92 -f 123/90 127/92 126/91 122/89 -f 128/93 125/94 126/89 127/90 -f 121/94 124/93 123/92 122/91 -f 129/95 133/91 136/92 132/96 -f 131/92 135/96 134/95 130/91 -f 136/97 133/98 134/91 135/92 -f 129/98 132/97 131/96 130/95 -f 137/99 141/100 144/101 140/102 -f 139/101 143/102 142/99 138/100 -f 144/103 141/104 142/100 143/101 -f 137/104 140/103 139/102 138/99 -f 145/105 149/99 152/102 148/106 -f 147/102 151/106 150/105 146/99 -f 152/107 149/108 150/99 151/102 -f 145/108 148/107 147/106 146/105 -f 153/109 157/105 160/106 156/110 -f 155/106 159/110 158/109 154/105 -f 160/111 157/112 158/105 159/106 -f 153/112 156/111 155/110 154/109 -f 161/113 165/109 168/110 164/114 -f 163/110 167/114 166/113 162/109 -f 168/115 165/116 166/109 167/110 -f 161/116 164/115 163/114 162/113 -f 169/117 173/113 176/114 172/118 -f 171/114 175/118 174/117 170/113 -f 176/119 173/120 174/113 175/114 -f 169/120 172/119 171/118 170/117 -f 177/121 181/117 184/118 180/122 -f 179/118 183/122 182/121 178/117 -f 184/123 181/124 182/117 183/118 -f 177/124 180/123 179/122 178/121 -f 185/125 189/126 192/127 188/128 -f 187/127 191/128 190/125 186/126 -f 192/129 189/130 190/126 191/127 -f 185/130 188/129 187/128 186/125 -f 193/126 197/121 200/122 196/127 -f 195/122 199/127 198/126 194/121 -f 200/131 197/132 198/121 199/122 -f 193/132 196/131 195/127 194/126 -f 201/133 205/125 208/128 204/134 -f 203/128 207/134 206/133 202/125 -f 208/135 205/136 206/125 207/128 -f 201/136 204/135 203/134 202/133 -f 209/137 213/133 216/134 212/138 -f 211/134 215/138 214/137 210/133 -f 216/139 213/140 214/133 215/134 -f 209/140 212/139 211/138 210/137 -f 217/141 221/140 224/139 220/142 -f 219/139 223/142 222/141 218/140 -f 224/138 221/137 222/140 223/139 -f 217/137 220/138 219/142 218/141 -f 225/143 229/141 232/142 228/144 -f 227/142 231/144 230/143 226/141 -f 232/145 229/146 230/141 231/142 -f 225/146 228/145 227/144 226/143 -f 233/27 237/143 240/144 236/26 -f 235/144 239/26 238/27 234/143 -f 240/147 237/148 238/143 239/144 -f 233/148 236/147 235/26 234/27 diff --git a/homedecor/models/homedecor_door_fancy.obj b/homedecor/models/homedecor_door_fancy.obj deleted file mode 100755 index 2996ee8..0000000 --- a/homedecor/models/homedecor_door_fancy.obj +++ /dev/null @@ -1,112 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-fancy.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v -0.374875 1.374531 0.499969 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.374969 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.374969 0.375031 -v -0.374875 0.374969 0.375031 -v 0.374875 0.374969 0.499969 -v -0.375000 0.375000 0.438458 -v 0.375000 0.375000 0.438458 -v -0.375000 1.375000 0.438458 -v 0.375000 1.375000 0.438458 -v 0.375000 0.375000 0.436542 -v -0.375000 0.375000 0.436542 -v 0.375000 1.375000 0.436542 -v -0.375000 1.375000 0.436542 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.078125 0.062500 -vt 0.078125 0.000000 -vt 0.578125 0.000000 -vt 0.578125 0.062500 -vt 0.515625 0.937500 -vt 0.515625 0.062500 -vt 0.578125 0.937500 -vt 0.140625 0.437500 -vt 0.140625 0.062500 -vt 0.515625 0.437500 -vt 0.140625 0.937500 -vt 0.078125 0.937500 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.765625 0.250000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.640625 0.000000 -vt 0.640625 1.000000 -vt 0.015625 1.000000 -vt 0.015625 0.000000 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.640625 0.937500 -vt 0.578125 0.437500 -vt 0.640625 0.437500 -vt 0.015625 0.937500 -vt 0.015625 0.437500 -vt 0.078125 0.437500 -vt 0.125000 1.000000 -vt 0.875000 1.000000 -vt 0.875000 0.000000 -vt 0.125000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -0.000000 0.000000 -1.000000 -vn 0.000000 0.000000 1.000000 -vn 0.000000 1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn 1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 14/1/1 16/2/1 13/3/1 15/4/1 -f 11/5/2 8/6/2 7/7/2 20/8/2 -f 15/9/2 24/10/2 20/8/2 12/11/2 -f 26/12/2 25/13/2 24/10/2 27/14/2 -f 11/5/2 25/13/2 14/15/2 19/16/2 -f 19/16/2 12/11/2 5/17/2 6/18/2 -f 9/8/3 4/7/3 3/6/3 18/5/3 -f 9/8/3 22/10/3 13/9/3 17/11/3 -f 17/11/3 10/16/3 1/18/3 2/17/3 -f 16/15/3 21/13/3 18/5/3 10/16/3 -f 23/14/3 22/10/3 21/13/3 28/12/3 -f 8/19/1 3/20/1 4/21/1 7/22/1 -f 6/23/4 5/24/4 2/25/4 1/26/4 -f 5/17/5 7/7/5 4/27/5 2/28/5 -f 8/6/6 6/18/6 1/29/6 3/30/6 -f 26/31/4 27/32/4 23/33/4 28/34/4 -f 16/35/5 14/11/5 26/36/5 28/37/5 -f 15/16/6 13/38/6 23/39/6 27/40/6 -g Cylinder_Cylinder_glass -f 32/41/3 31/42/3 29/43/3 30/44/3 -f 36/42/2 35/41/2 33/44/2 34/43/2 diff --git a/homedecor/models/homedecor_door_fancy_right.obj b/homedecor/models/homedecor_door_fancy_right.obj deleted file mode 100755 index a7bab10..0000000 --- a/homedecor/models/homedecor_door_fancy_right.obj +++ /dev/null @@ -1,112 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-fancy-right.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v -0.374875 1.374531 0.499969 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.374969 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.374969 0.375031 -v -0.374875 0.374969 0.375031 -v 0.374875 0.374969 0.499969 -v -0.375000 0.375000 0.438458 -v 0.375000 0.375000 0.438458 -v -0.375000 1.375000 0.438458 -v 0.375000 1.375000 0.438458 -v 0.375000 0.375000 0.436542 -v -0.375000 0.375000 0.436542 -v 0.375000 1.375000 0.436542 -v -0.375000 1.375000 0.436542 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.578125 0.062500 -vt 0.578125 0.000000 -vt 0.078125 0.000000 -vt 0.078125 0.062500 -vt 0.140625 0.937500 -vt 0.140625 0.062500 -vt 0.078125 0.937500 -vt 0.515625 0.437500 -vt 0.515625 0.062500 -vt 0.140625 0.437500 -vt 0.515625 0.937500 -vt 0.578125 0.937500 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.765625 0.250000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.015625 0.000000 -vt 0.015625 1.000000 -vt 0.640625 1.000000 -vt 0.640625 0.000000 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.015625 0.937500 -vt 0.078125 0.437500 -vt 0.015625 0.437500 -vt 0.640625 0.937500 -vt 0.640625 0.437500 -vt 0.578125 0.437500 -vt 0.875000 1.000000 -vt 0.125000 1.000000 -vt 0.125000 0.000000 -vt 0.875000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -0.000000 0.000000 -1.000000 -vn 0.000000 0.000000 1.000000 -vn 0.000000 1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -vn 1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 14/1/1 16/2/1 13/3/1 15/4/1 -f 11/5/2 8/6/2 7/7/2 20/8/2 -f 15/9/2 24/10/2 20/8/2 12/11/2 -f 26/12/2 25/13/2 24/10/2 27/14/2 -f 11/5/2 25/13/2 14/15/2 19/16/2 -f 19/16/2 12/11/2 5/17/2 6/18/2 -f 9/8/3 4/7/3 3/6/3 18/5/3 -f 9/8/3 22/10/3 13/9/3 17/11/3 -f 17/11/3 10/16/3 1/18/3 2/17/3 -f 16/15/3 21/13/3 18/5/3 10/16/3 -f 23/14/3 22/10/3 21/13/3 28/12/3 -f 8/19/1 3/20/1 4/21/1 7/22/1 -f 6/23/4 5/24/4 2/25/4 1/26/4 -f 5/17/5 7/7/5 4/27/5 2/28/5 -f 8/6/6 6/18/6 1/29/6 3/30/6 -f 26/31/4 27/32/4 23/33/4 28/34/4 -f 16/35/5 14/11/5 26/36/5 28/37/5 -f 15/16/6 13/38/6 23/39/6 27/40/6 -g Cylinder_Cylinder_glass -f 32/41/3 31/42/3 29/43/3 30/44/3 -f 36/42/2 35/41/2 33/44/2 34/43/2 diff --git a/homedecor/models/homedecor_door_plain.obj b/homedecor/models/homedecor_door_plain.obj deleted file mode 100755 index 035c0c0..0000000 --- a/homedecor/models/homedecor_door_plain.obj +++ /dev/null @@ -1,35 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-plain.blend' -# www.blender.org -o Cylinder -v 0.497500 1.495000 0.496875 -v -0.497500 1.495000 0.496875 -v 0.497500 -0.495000 0.496875 -v -0.497500 -0.495000 0.496875 -v -0.497500 1.495000 0.378125 -v 0.497500 1.495000 0.378125 -v -0.497500 -0.495000 0.378125 -v 0.497500 -0.495000 0.378125 -vt 0.578125 0.000000 -vt 0.078125 0.000000 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.015625 -0.000000 -vt 0.015625 1.000000 -vt 0.640625 1.000000 -vt 0.640625 0.000000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.765625 0.750000 -vt 0.828125 0.750000 -vt 0.828125 0.250000 -vt 0.765625 0.250000 -g Cylinder_Cylinder_None -s off -f 4/1 3/2 1/3 2/4 -f 8/2 7/1 5/4 6/3 -f 3/5 8/2 6/3 1/6 -f 2/4 5/7 7/8 4/1 -f 1/9 6/10 5/11 2/12 -f 4/13 7/14 8/15 3/16 diff --git a/homedecor/models/homedecor_door_plain_right.obj b/homedecor/models/homedecor_door_plain_right.obj deleted file mode 100755 index f735e3e..0000000 --- a/homedecor/models/homedecor_door_plain_right.obj +++ /dev/null @@ -1,35 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-plain-right.blend' -# www.blender.org -o Cylinder -v 0.497500 1.495000 0.496875 -v -0.497500 1.495000 0.496875 -v 0.497500 -0.495000 0.496875 -v -0.497500 -0.495000 0.496875 -v -0.497500 1.495000 0.378125 -v 0.497500 1.495000 0.378125 -v -0.497500 -0.495000 0.378125 -v 0.497500 -0.495000 0.378125 -vt 0.078125 0.000000 -vt 0.578125 0.000000 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.640625 0.000000 -vt 0.640625 1.000000 -vt 0.015625 1.000000 -vt 0.015625 0.000000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.828125 0.250000 -vt 0.765625 0.250000 -vt 0.765625 0.750000 -vt 0.828125 0.750000 -g Cylinder_Cylinder_None -s off -f 4/1 3/2 1/3 2/4 -f 8/2 7/1 5/4 6/3 -f 3/5 8/2 6/3 1/6 -f 2/4 5/7 7/8 4/1 -f 1/9 6/10 5/11 2/12 -f 4/13 7/14 8/15 3/16 diff --git a/homedecor/models/homedecor_door_wood_glass.obj b/homedecor/models/homedecor_door_wood_glass.obj deleted file mode 100755 index b1b6b40..0000000 --- a/homedecor/models/homedecor_door_wood_glass.obj +++ /dev/null @@ -1,243 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-woodglass-standard.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v 0.374875 0.437531 0.499969 -v -0.374875 0.437531 0.499969 -v -0.374875 1.374531 0.499969 -v -0.374875 0.437531 0.375031 -v 0.374875 0.437531 0.375031 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.562469 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.562469 0.375031 -v -0.374875 0.562469 0.375031 -v 0.374875 0.562469 0.499969 -v 0.374875 -0.031219 0.499969 -v -0.374875 -0.031219 0.499969 -v -0.374875 -0.031219 0.375031 -v 0.374875 -0.031219 0.375031 -v -0.374875 0.093719 0.499969 -v 0.374875 0.093719 0.375031 -v -0.374875 0.093719 0.375031 -v 0.374875 0.093719 0.499969 -v 0.374875 1.031219 0.499969 -v -0.374875 1.031219 0.375031 -v 0.374875 1.031219 0.375031 -v -0.374875 1.031219 0.499969 -v 0.374875 0.906281 0.375031 -v -0.374875 0.906281 0.375031 -v -0.374875 0.906281 0.499969 -v 0.374875 0.906281 0.499969 -v -0.062500 1.031250 0.500000 -v -0.062500 1.031250 0.375000 -v 0.062500 1.031250 0.375000 -v 0.062500 1.031250 0.500000 -v -0.062500 1.375000 0.500000 -v -0.062500 1.375000 0.375000 -v 0.062500 1.375000 0.375000 -v 0.062500 1.375000 0.500000 -v -0.062500 0.562500 0.500000 -v -0.062500 0.562500 0.375000 -v 0.062500 0.562500 0.375000 -v 0.062500 0.562500 0.500000 -v -0.062500 0.906250 0.500000 -v -0.062500 0.906250 0.375000 -v 0.062500 0.906250 0.375000 -v 0.062500 0.906250 0.500000 -v -0.062500 0.093750 0.500000 -v -0.062500 0.093750 0.375000 -v 0.062500 0.093750 0.375000 -v 0.062500 0.093750 0.500000 -v -0.062500 0.437500 0.500000 -v -0.062500 0.437500 0.375000 -v 0.062500 0.437500 0.375000 -v 0.062500 0.437500 0.500000 -v -0.062500 -0.375000 0.500000 -v -0.062500 -0.375000 0.375000 -v 0.062500 -0.375000 0.375000 -v 0.062500 -0.375000 0.500000 -v -0.062500 -0.031250 0.500000 -v -0.062500 -0.031250 0.375000 -v 0.062500 -0.031250 0.375000 -v 0.062500 -0.031250 0.500000 -v -0.375000 -0.375000 0.438458 -v 0.375000 -0.375000 0.438458 -v -0.375000 1.375000 0.438458 -v 0.375000 1.375000 0.438458 -v 0.375000 -0.375000 0.436542 -v -0.375000 -0.375000 0.436542 -v 0.375000 1.375000 0.436542 -v -0.375000 1.375000 0.436542 -vt 0.515625 0.937500 -vt 0.140625 0.937500 -vt 0.078125 0.937500 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.578125 0.937500 -vt 0.515625 0.468750 -vt 0.515625 0.531250 -vt 0.140625 0.531250 -vt 0.140625 0.468750 -vt 0.015625 1.000000 -vt 0.015625 0.937500 -vt 0.015625 0.062500 -vt 0.015625 0.000000 -vt 0.078125 0.000000 -vt 0.078125 0.062500 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.578125 0.062500 -vt 0.515625 0.062500 -vt 0.140625 0.062500 -vt 0.578125 -0.000000 -vt 0.640625 -0.000000 -vt 0.640625 0.062500 -vt 0.640625 0.937500 -vt 0.640625 1.000000 -vt 0.015625 0.531250 -vt 0.078125 0.531250 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.578125 0.531250 -vt 0.640625 0.531250 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.015625 0.468750 -vt 0.078125 0.468750 -vt 0.640625 0.468750 -vt 0.578125 0.468750 -vt 0.515625 0.234375 -vt 0.515625 0.296875 -vt 0.140625 0.296875 -vt 0.140625 0.234375 -vt 0.140625 0.703125 -vt 0.140625 0.765625 -vt 0.515625 0.765625 -vt 0.515625 0.703125 -vt 0.578125 0.765625 -vt 0.640625 0.765625 -vt 0.359375 0.937500 -vt 0.296875 0.937500 -vt 0.296875 0.765625 -vt 0.359375 0.765625 -vt 0.015625 0.765625 -vt 0.078125 0.765625 -vt 0.000000 0.000000 -vt 0.640625 0.703125 -vt 0.578125 0.703125 -vt 0.359375 0.703125 -vt 0.296875 0.703125 -vt 0.296875 0.531250 -vt 0.359375 0.531250 -vt 0.078125 0.703125 -vt 0.015625 0.703125 -vt 0.578125 0.296875 -vt 0.640625 0.296875 -vt 0.359375 0.468750 -vt 0.296875 0.468750 -vt 0.296875 0.296875 -vt 0.359375 0.296875 -vt 0.015625 0.296875 -vt 0.078125 0.296875 -vt 0.640625 0.234375 -vt 0.578125 0.234375 -vt 0.359375 0.234375 -vt 0.296875 0.234375 -vt 0.296875 0.062500 -vt 0.359375 0.062500 -vt 0.078125 0.234375 -vt 0.015625 0.234375 -vt 0.390625 0.109375 -vt 0.015625 0.109375 -vt 0.015625 0.984375 -vt 0.390625 0.984375 -vn 0.000000 0.000000 1.000000 -vn -0.000000 0.000000 -1.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 1.000000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 -f 16/7/2 31/8/2 30/9/2 17/10/2 -f 23/3/3 6/4/3 1/11/3 10/12/3 22/13/3 3/14/3 8/15/3 11/16/3 -f 18/2/2 19/1/2 12/6/2 5/5/2 6/4/2 23/3/2 -f 2/17/4 1/18/4 6/19/4 5/20/4 -f 3/21/5 4/22/5 7/23/5 8/24/5 -f 13/10/1 32/9/1 27/8/1 14/7/1 -f 24/25/2 12/6/2 19/1/2 31/8/2 16/7/2 28/26/2 -f 22/16/1 10/3/1 20/2/1 32/9/1 13/10/1 25/27/1 -f 24/25/6 7/28/6 4/29/6 9/30/6 21/31/6 2/32/6 5/5/6 12/6/6 -f 26/26/1 14/7/1 27/8/1 15/1/1 21/6/1 9/25/1 -f 29/27/2 17/10/2 30/9/2 18/2/2 23/3/2 11/16/2 -f 8/15/2 7/28/2 24/25/2 28/26/2 29/27/2 11/16/2 -f 4/28/1 3/15/1 22/16/1 25/27/1 26/26/1 9/25/1 -f 15/12/3 27/33/3 31/34/3 19/3/3 -f 30/35/4 31/36/4 27/37/4 32/38/4 -f 18/6/6 30/39/6 32/40/6 20/31/6 -f 18/41/5 20/42/5 15/43/5 19/44/5 -f 14/45/3 26/13/3 28/16/3 16/46/3 -f 29/35/4 28/36/4 26/37/4 25/38/4 -f 13/47/6 17/48/6 29/25/6 25/30/6 -f 17/41/5 13/42/5 14/43/5 16/44/5 -f 35/49/2 39/50/2 38/51/2 36/52/2 -f 33/52/1 40/51/1 37/50/1 34/49/1 -f 38/35/4 39/36/4 37/37/4 40/38/4 -f 36/41/5 33/42/5 34/43/5 35/44/5 -f 45/41/5 48/42/5 47/43/5 46/44/5 -f 43/35/4 42/36/4 44/37/4 41/38/4 -f 48/53/1 41/54/1 44/55/1 47/56/1 -f 46/56/2 42/55/2 43/54/2 45/53/2 -f 53/31/6 54/6/6 50/57/6 49/58/6 -f 54/59/2 55/60/2 51/61/2 50/62/2 -f 55/3/3 56/12/3 52/63/3 51/64/3 -f 56/60/1 53/59/1 49/62/1 52/61/1 -f 49/65/5 50/65/5 51/65/5 52/65/5 -f 56/65/4 55/65/4 54/65/4 53/65/4 -f 61/66/6 62/67/6 58/39/6 57/40/6 -f 62/68/2 63/69/2 59/70/2 58/71/2 -f 63/72/3 64/73/3 60/33/3 59/34/3 -f 64/69/1 61/68/1 57/71/1 60/70/1 -f 69/47/6 70/48/6 66/74/6 65/75/6 -f 70/76/2 71/77/2 67/78/2 66/79/2 -f 71/46/3 72/45/3 68/80/3 67/81/3 -f 72/77/1 69/76/1 65/79/1 68/78/1 -f 77/82/6 78/83/6 74/25/6 73/30/6 -f 78/84/2 79/85/2 75/86/2 74/87/2 -f 79/88/3 80/89/3 76/13/3 75/16/3 -f 80/85/1 77/84/1 73/87/1 76/86/1 -g Cylinder_Cylinder_glass -f 81/90/1 82/91/1 84/92/1 83/93/1 -f 85/91/2 86/90/2 88/93/2 87/92/2 diff --git a/homedecor/models/homedecor_door_wood_glass_right.obj b/homedecor/models/homedecor_door_wood_glass_right.obj deleted file mode 100755 index 3c544b8..0000000 --- a/homedecor/models/homedecor_door_wood_glass_right.obj +++ /dev/null @@ -1,243 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-woodglass-standard-right.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.374531 0.375031 -v 0.374875 0.437531 0.499969 -v -0.374875 0.437531 0.499969 -v -0.374875 1.374531 0.499969 -v -0.374875 0.437531 0.375031 -v 0.374875 0.437531 0.375031 -v 0.374875 1.374531 0.375031 -v -0.374875 1.374531 0.375031 -v 0.374875 1.374531 0.499969 -v -0.499750 1.374531 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.374531 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.374875 -0.374531 0.499969 -v -0.374875 -0.374531 0.499969 -v -0.374875 0.562469 0.499969 -v -0.374875 -0.374531 0.375031 -v 0.374875 -0.374531 0.375031 -v 0.374875 0.562469 0.375031 -v -0.374875 0.562469 0.375031 -v 0.374875 0.562469 0.499969 -v 0.374875 -0.031219 0.499969 -v -0.374875 -0.031219 0.499969 -v -0.374875 -0.031219 0.375031 -v 0.374875 -0.031219 0.375031 -v -0.374875 0.093719 0.499969 -v 0.374875 0.093719 0.375031 -v -0.374875 0.093719 0.375031 -v 0.374875 0.093719 0.499969 -v 0.374875 1.031219 0.499969 -v -0.374875 1.031219 0.375031 -v 0.374875 1.031219 0.375031 -v -0.374875 1.031219 0.499969 -v 0.374875 0.906281 0.375031 -v -0.374875 0.906281 0.375031 -v -0.374875 0.906281 0.499969 -v 0.374875 0.906281 0.499969 -v -0.062500 1.031250 0.500000 -v -0.062500 1.031250 0.375000 -v 0.062500 1.031250 0.375000 -v 0.062500 1.031250 0.500000 -v -0.062500 1.375000 0.500000 -v -0.062500 1.375000 0.375000 -v 0.062500 1.375000 0.375000 -v 0.062500 1.375000 0.500000 -v -0.062500 0.562500 0.500000 -v -0.062500 0.562500 0.375000 -v 0.062500 0.562500 0.375000 -v 0.062500 0.562500 0.500000 -v -0.062500 0.906250 0.500000 -v -0.062500 0.906250 0.375000 -v 0.062500 0.906250 0.375000 -v 0.062500 0.906250 0.500000 -v -0.062500 0.093750 0.500000 -v -0.062500 0.093750 0.375000 -v 0.062500 0.093750 0.375000 -v 0.062500 0.093750 0.500000 -v -0.062500 0.437500 0.500000 -v -0.062500 0.437500 0.375000 -v 0.062500 0.437500 0.375000 -v 0.062500 0.437500 0.500000 -v -0.062500 -0.375000 0.500000 -v -0.062500 -0.375000 0.375000 -v 0.062500 -0.375000 0.375000 -v 0.062500 -0.375000 0.500000 -v -0.062500 -0.031250 0.500000 -v -0.062500 -0.031250 0.375000 -v 0.062500 -0.031250 0.375000 -v 0.062500 -0.031250 0.500000 -v -0.375000 -0.375000 0.438458 -v 0.375000 -0.375000 0.438458 -v -0.375000 1.375000 0.438458 -v 0.375000 1.375000 0.438458 -v 0.375000 -0.375000 0.436542 -v -0.375000 -0.375000 0.436542 -v 0.375000 1.375000 0.436542 -v -0.375000 1.375000 0.436542 -vt 0.140625 0.937500 -vt 0.515625 0.937500 -vt 0.578125 0.937500 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.078125 0.937500 -vt 0.140625 0.468750 -vt 0.140625 0.531250 -vt 0.515625 0.531250 -vt 0.515625 0.468750 -vt 0.640625 1.000000 -vt 0.640625 0.937500 -vt 0.640625 0.062500 -vt 0.640625 -0.000000 -vt 0.578125 -0.000000 -vt 0.578125 0.062500 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.078125 0.062500 -vt 0.140625 0.062500 -vt 0.515625 0.062500 -vt 0.078125 -0.000000 -vt 0.015625 -0.000000 -vt 0.015625 0.062500 -vt 0.015625 0.937500 -vt 0.015625 1.000000 -vt 0.640625 0.531250 -vt 0.578125 0.531250 -vt 0.734375 0.312500 -vt 0.734375 0.687500 -vt 0.671875 0.687500 -vt 0.671875 0.312500 -vt 0.078125 0.531250 -vt 0.015625 0.531250 -vt 0.765625 0.312500 -vt 0.828125 0.312500 -vt 0.828125 0.687500 -vt 0.765625 0.687500 -vt 0.640625 0.468750 -vt 0.578125 0.468750 -vt 0.015625 0.468750 -vt 0.078125 0.468750 -vt 0.140625 0.234375 -vt 0.140625 0.296875 -vt 0.515625 0.296875 -vt 0.515625 0.234375 -vt 0.515625 0.703125 -vt 0.515625 0.765625 -vt 0.140625 0.765625 -vt 0.140625 0.703125 -vt 0.078125 0.765625 -vt 0.015625 0.765625 -vt 0.296875 0.937500 -vt 0.359375 0.937500 -vt 0.359375 0.765625 -vt 0.296875 0.765625 -vt 0.640625 0.765625 -vt 0.578125 0.765625 -vt 0.656250 -0.000000 -vt 0.015625 0.703125 -vt 0.078125 0.703125 -vt 0.296875 0.703125 -vt 0.359375 0.703125 -vt 0.359375 0.531250 -vt 0.296875 0.531250 -vt 0.578125 0.703125 -vt 0.640625 0.703125 -vt 0.078125 0.296875 -vt 0.015625 0.296875 -vt 0.296875 0.468750 -vt 0.359375 0.468750 -vt 0.359375 0.296875 -vt 0.296875 0.296875 -vt 0.640625 0.296875 -vt 0.578125 0.296875 -vt 0.015625 0.234375 -vt 0.078125 0.234375 -vt 0.296875 0.234375 -vt 0.359375 0.234375 -vt 0.359375 0.062500 -vt 0.296875 0.062500 -vt 0.578125 0.234375 -vt 0.640625 0.234375 -vt 0.015625 0.109375 -vt 0.390625 0.109375 -vt 0.390625 0.984375 -vt 0.015625 0.984375 -vn 0.000000 0.000000 1.000000 -vn -0.000000 0.000000 -1.000000 -vn 1.000000 0.000000 0.000000 -vn 0.000000 1.000000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 -f 16/7/2 31/8/2 30/9/2 17/10/2 -f 23/3/3 6/4/3 1/11/3 10/12/3 22/13/3 3/14/3 8/15/3 11/16/3 -f 18/2/2 19/1/2 12/6/2 5/5/2 6/4/2 23/3/2 -f 2/17/4 1/18/4 6/19/4 5/20/4 -f 3/21/5 4/22/5 7/23/5 8/24/5 -f 13/10/1 32/9/1 27/8/1 14/7/1 -f 24/25/2 12/6/2 19/1/2 31/8/2 16/7/2 28/26/2 -f 22/16/1 10/3/1 20/2/1 32/9/1 13/10/1 25/27/1 -f 24/25/6 7/28/6 4/29/6 9/30/6 21/31/6 2/32/6 5/5/6 12/6/6 -f 26/26/1 14/7/1 27/8/1 15/1/1 21/6/1 9/25/1 -f 29/27/2 17/10/2 30/9/2 18/2/2 23/3/2 11/16/2 -f 8/15/2 7/28/2 24/25/2 28/26/2 29/27/2 11/16/2 -f 4/28/1 3/15/1 22/16/1 25/27/1 26/26/1 9/25/1 -f 15/12/3 27/33/3 31/34/3 19/3/3 -f 30/35/4 31/36/4 27/37/4 32/38/4 -f 18/6/6 30/39/6 32/40/6 20/31/6 -f 18/41/5 20/42/5 15/43/5 19/44/5 -f 14/45/3 26/13/3 28/16/3 16/46/3 -f 29/35/4 28/36/4 26/37/4 25/38/4 -f 13/47/6 17/48/6 29/25/6 25/30/6 -f 17/41/5 13/42/5 14/43/5 16/44/5 -f 35/49/2 39/50/2 38/51/2 36/52/2 -f 33/52/1 40/51/1 37/50/1 34/49/1 -f 38/35/4 39/36/4 37/37/4 40/38/4 -f 36/41/5 33/42/5 34/43/5 35/44/5 -f 45/41/5 48/42/5 47/43/5 46/44/5 -f 43/35/4 42/36/4 44/37/4 41/38/4 -f 48/53/1 41/54/1 44/55/1 47/56/1 -f 46/56/2 42/55/2 43/54/2 45/53/2 -f 53/31/6 54/6/6 50/57/6 49/58/6 -f 54/59/2 55/60/2 51/61/2 50/62/2 -f 55/3/3 56/12/3 52/63/3 51/64/3 -f 56/60/1 53/59/1 49/62/1 52/61/1 -f 49/65/5 50/65/5 51/65/5 52/65/5 -f 56/65/4 55/65/4 54/65/4 53/65/4 -f 61/66/6 62/67/6 58/39/6 57/40/6 -f 62/68/2 63/69/2 59/70/2 58/71/2 -f 63/72/3 64/73/3 60/33/3 59/34/3 -f 64/69/1 61/68/1 57/71/1 60/70/1 -f 69/47/6 70/48/6 66/74/6 65/75/6 -f 70/76/2 71/77/2 67/78/2 66/79/2 -f 71/46/3 72/45/3 68/80/3 67/81/3 -f 72/77/1 69/76/1 65/79/1 68/78/1 -f 77/82/6 78/83/6 74/25/6 73/30/6 -f 78/84/2 79/85/2 75/86/2 74/87/2 -f 79/88/3 80/89/3 76/13/3 75/16/3 -f 80/85/1 77/84/1 73/87/1 76/86/1 -g Cylinder_Cylinder_glass -f 81/90/1 82/91/1 84/92/1 83/93/1 -f 85/91/2 86/90/2 88/93/2 87/92/2 diff --git a/homedecor/models/homedecor_door_woodglass_typea.obj b/homedecor/models/homedecor_door_woodglass_typea.obj deleted file mode 100755 index 68fbf86..0000000 --- a/homedecor/models/homedecor_door_woodglass_typea.obj +++ /dev/null @@ -1,114 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-woodglass-inset.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.312031 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.312031 0.375031 -v 0.187375 0.437531 0.499969 -v -0.187375 0.437531 0.499969 -v -0.187375 1.312031 0.499969 -v -0.187375 0.437531 0.375031 -v 0.187375 0.437531 0.375031 -v 0.187375 1.312031 0.375031 -v -0.187375 1.312031 0.375031 -v 0.187375 1.312031 0.499969 -v -0.499750 1.312031 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.312031 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.187375 -0.374531 0.499969 -v -0.187375 -0.374531 0.499969 -v -0.187375 -0.374531 0.375031 -v 0.187375 -0.374531 0.375031 -v -0.187500 0.437500 0.438458 -v 0.187500 0.437500 0.438458 -v -0.187500 1.312500 0.438458 -v 0.187500 1.312500 0.438458 -v 0.187500 0.437500 0.436542 -v -0.187500 0.437500 0.436542 -v 0.187500 1.312500 0.436542 -v -0.187500 1.312500 0.436542 -vt 0.421875 0.906250 -vt 0.234375 0.906250 -vt 0.078125 0.906250 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.578125 0.906250 -vt 0.015625 1.000000 -vt 0.015625 0.906250 -vt 0.015625 0.062500 -vt 0.015625 0.000000 -vt 0.078125 0.000000 -vt 0.078125 0.062500 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.578125 0.062500 -vt 0.421875 0.468750 -vt 0.421875 0.062500 -vt 0.234375 0.468750 -vt 0.234375 0.062500 -vt 0.578125 0.000000 -vt 0.640625 0.000000 -vt 0.640625 0.062500 -vt 0.640625 0.906250 -vt 0.640625 1.000000 -vt 0.734375 0.593750 -vt 0.671875 0.593750 -vt 0.671875 0.406250 -vt 0.734375 0.406250 -vt 0.765625 0.406250 -vt 0.828125 0.406250 -vt 0.828125 0.593750 -vt 0.765625 0.593750 -vt 0.578125 0.468750 -vt 0.640625 0.468750 -vt 0.078125 0.468750 -vt 0.015625 0.468750 -vt 0.031250 0.093750 -vt 0.406250 0.093750 -vt 0.406250 0.968750 -vt 0.031250 0.968750 -vn 0.000000 0.000000 1.000000 -vn 1.000000 0.000000 0.000000 -vn -0.000000 0.000000 -1.000000 -vn 0.000000 1.000000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 -f 23/3/2 6/4/2 1/7/2 10/8/2 22/9/2 3/10/2 8/11/2 11/12/2 -f 18/2/3 19/1/3 12/6/3 5/5/3 6/4/3 23/3/3 -f 2/13/4 1/14/4 6/15/4 5/16/4 -f 3/17/5 4/18/5 7/19/5 8/20/5 -f 24/21/3 12/6/3 19/1/3 16/22/3 27/23/3 -f 22/12/1 10/3/1 20/2/1 13/24/1 25/25/1 -f 24/21/6 7/26/6 4/27/6 9/28/6 21/29/6 2/30/6 5/5/6 12/6/6 -f 26/23/1 14/22/1 15/1/1 21/6/1 9/21/1 -f 28/25/3 17/24/3 18/2/3 23/3/3 11/12/3 -f 8/11/3 7/26/3 24/21/3 27/23/3 28/25/3 11/12/3 -f 4/26/1 3/11/1 22/12/1 25/25/1 26/23/1 9/21/1 -f 16/31/4 14/32/4 13/33/4 17/34/4 -f 18/35/5 20/36/5 15/37/5 19/38/5 -f 16/22/3 17/24/3 28/25/3 27/23/3 -f 13/24/1 14/22/1 26/23/1 25/25/1 -f 18/6/6 17/39/6 13/40/6 20/29/6 -f 16/41/2 19/3/2 15/8/2 14/42/2 -g Cylinder_Cylinder_glass -f 29/43/1 30/44/1 32/45/1 31/46/1 -f 33/44/3 34/43/3 36/46/3 35/45/3 diff --git a/homedecor/models/homedecor_door_woodglass_typea_right.obj b/homedecor/models/homedecor_door_woodglass_typea_right.obj deleted file mode 100755 index 51c3e26..0000000 --- a/homedecor/models/homedecor_door_woodglass_typea_right.obj +++ /dev/null @@ -1,114 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-woodglass-typea-right.blend' -# www.blender.org -o Cylinder -v 0.499750 1.499500 0.499969 -v -0.499750 1.499500 0.499969 -v 0.499750 -0.499500 0.499969 -v -0.499750 -0.499500 0.499969 -v -0.499750 1.499500 0.375031 -v 0.499750 1.499500 0.375031 -v -0.499750 -0.499500 0.375031 -v 0.499750 -0.499500 0.375031 -v -0.499750 -0.374531 0.499969 -v 0.499750 1.312031 0.499969 -v 0.499750 -0.374531 0.375031 -v -0.499750 1.312031 0.375031 -v 0.187375 0.437531 0.499969 -v -0.187375 0.437531 0.499969 -v -0.187375 1.312031 0.499969 -v -0.187375 0.437531 0.375031 -v 0.187375 0.437531 0.375031 -v 0.187375 1.312031 0.375031 -v -0.187375 1.312031 0.375031 -v 0.187375 1.312031 0.499969 -v -0.499750 1.312031 0.499969 -v 0.499750 -0.374531 0.499969 -v 0.499750 1.312031 0.375031 -v -0.499750 -0.374531 0.375031 -v 0.187375 -0.374531 0.499969 -v -0.187375 -0.374531 0.499969 -v -0.187375 -0.374531 0.375031 -v 0.187375 -0.374531 0.375031 -v -0.187500 0.437500 0.438458 -v 0.187500 0.437500 0.438458 -v -0.187500 1.312500 0.438458 -v 0.187500 1.312500 0.438458 -v 0.187500 0.437500 0.436542 -v -0.187500 0.437500 0.436542 -v 0.187500 1.312500 0.436542 -v -0.187500 1.312500 0.436542 -vt 0.234375 0.906250 -vt 0.421875 0.906250 -vt 0.578125 0.906250 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.078125 0.906250 -vt 0.640625 1.000000 -vt 0.640625 0.906250 -vt 0.640625 0.062500 -vt 0.640625 0.000000 -vt 0.578125 0.000000 -vt 0.578125 0.062500 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.078125 0.062500 -vt 0.234375 0.468750 -vt 0.234375 0.062500 -vt 0.421875 0.468750 -vt 0.421875 0.062500 -vt 0.078125 0.000000 -vt 0.015625 0.000000 -vt 0.015625 0.062500 -vt 0.015625 0.906250 -vt 0.015625 1.000000 -vt 0.734375 0.593750 -vt 0.671875 0.593750 -vt 0.671875 0.406250 -vt 0.734375 0.406250 -vt 0.765625 0.406250 -vt 0.828125 0.406250 -vt 0.828125 0.593750 -vt 0.765625 0.593750 -vt 0.078125 0.468750 -vt 0.015625 0.468750 -vt 0.578125 0.468750 -vt 0.640625 0.468750 -vt 0.406250 0.093750 -vt 0.031250 0.093750 -vt 0.031250 0.968750 -vt 0.406250 0.968750 -vn 0.000000 0.000000 1.000000 -vn 1.000000 0.000000 0.000000 -vn -0.000000 0.000000 -1.000000 -vn 0.000000 1.000000 0.000000 -vn 0.000000 -1.000000 0.000000 -vn -1.000000 0.000000 0.000000 -g Cylinder_Cylinder_door -s off -f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 -f 23/3/2 6/4/2 1/7/2 10/8/2 22/9/2 3/10/2 8/11/2 11/12/2 -f 18/2/3 19/1/3 12/6/3 5/5/3 6/4/3 23/3/3 -f 2/13/4 1/14/4 6/15/4 5/16/4 -f 3/17/5 4/18/5 7/19/5 8/20/5 -f 24/21/3 12/6/3 19/1/3 16/22/3 27/23/3 -f 22/12/1 10/3/1 20/2/1 13/24/1 25/25/1 -f 24/21/6 7/26/6 4/27/6 9/28/6 21/29/6 2/30/6 5/5/6 12/6/6 -f 26/23/1 14/22/1 15/1/1 21/6/1 9/21/1 -f 28/25/3 17/24/3 18/2/3 23/3/3 11/12/3 -f 8/11/3 7/26/3 24/21/3 27/23/3 28/25/3 11/12/3 -f 4/26/1 3/11/1 22/12/1 25/25/1 26/23/1 9/21/1 -f 16/31/4 14/32/4 13/33/4 17/34/4 -f 18/35/5 20/36/5 15/37/5 19/38/5 -f 16/22/3 17/24/3 28/25/3 27/23/3 -f 13/24/1 14/22/1 26/23/1 25/25/1 -f 18/6/6 17/39/6 13/40/6 20/29/6 -f 16/41/2 19/3/2 15/8/2 14/42/2 -g Cylinder_Cylinder_glass -f 29/43/1 30/44/1 32/45/1 31/46/1 -f 33/44/3 34/43/3 36/46/3 35/45/3 diff --git a/homedecor/models/homedecor_door_wrought_iron.obj b/homedecor/models/homedecor_door_wrought_iron.obj deleted file mode 100755 index 6d89066..0000000 --- a/homedecor/models/homedecor_door_wrought_iron.obj +++ /dev/null @@ -1,88 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-wrought-iron.blend' -# www.blender.org -mtllib homedecor_door_wrought_iron.mtl -o Cylinder -v 0.500000 1.500000 0.500000 -v -0.500000 1.500000 0.500000 -v 0.500000 -0.500000 0.500000 -v -0.500000 -0.500000 0.500000 -v -0.500000 1.500000 0.375000 -v 0.500000 1.500000 0.375000 -v -0.500000 -0.500000 0.375000 -v 0.500000 -0.500000 0.375000 -v 0.484375 1.484375 0.438451 -v -0.484375 1.484375 0.438451 -v 0.484375 -0.484375 0.438451 -v -0.484375 -0.484375 0.438451 -v -0.484375 1.484375 0.436547 -v 0.484375 1.484375 0.436547 -v -0.484375 -0.484375 0.436547 -v 0.484375 -0.484375 0.436547 -v 0.468750 -0.500000 0.500000 -v -0.468750 -0.500000 0.500000 -v 0.500000 1.484375 0.500000 -v -0.500000 1.484375 0.500000 -v -0.500000 1.484375 0.375000 -v 0.500000 1.484375 0.375000 -v 0.500000 -0.484375 0.500000 -v -0.500000 -0.484375 0.500000 -v -0.500000 -0.484375 0.375000 -v 0.500000 -0.484375 0.375000 -v 0.484375 1.484375 0.500000 -v 0.484375 -0.484375 0.500000 -v 0.484375 1.484375 0.375000 -v 0.484375 -0.484375 0.375000 -v -0.484375 1.484375 0.500000 -v -0.484375 -0.484375 0.500000 -v -0.484375 1.484375 0.375000 -v -0.484375 -0.484375 0.375000 -vt 0.085938 0.007812 -vt 0.570312 0.007812 -vt 0.570312 0.992188 -vt 0.085938 0.992188 -vt 0.578125 0.007812 -vt 0.578125 0.992188 -vt 0.078125 0.007812 -vt 0.078125 0.992188 -vt 0.015625 0.992188 -vt 0.015625 0.007812 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.078125 1.000000 -vt 0.578125 1.000000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.578125 0.000000 -vt 0.078125 0.000000 -vt 0.640625 0.007812 -vt 0.640625 0.992188 -vt 0.640625 0.000000 -vt 0.640625 1.000000 -vt 0.015625 1.000000 -vt 0.015625 0.000000 -usemtl None -s off -f 16/1 15/2 13/3 14/4 -f 12/2 11/1 9/4 10/3 -f 25/5 21/6 33/3 34/2 -f 23/7 19/8 27/4 28/1 -f 31/9 32/10 34/7 33/8 -f 30/1 29/4 22/8 26/7 -f 32/2 31/3 20/6 24/5 -f 19/11 20/12 21/13 22/14 -f 6/15 22/8 21/6 5/16 -f 2/16 20/6 19/8 1/15 -f 24/17 23/18 26/19 25/20 -f 7/21 25/5 26/7 8/22 -f 3/22 23/7 24/5 4/21 -f 28/23 27/24 29/6 30/5 -f 4/25 2/26 5/16 7/21 -f 1/18 6/19 5/20 2/17 -f 1/27 3/28 8/22 6/15 -f 4/12 7/13 8/14 3/11 -l 17 3 -l 4 18 diff --git a/homedecor/models/homedecor_door_wrought_iron_right.obj b/homedecor/models/homedecor_door_wrought_iron_right.obj deleted file mode 100755 index fe55003..0000000 --- a/homedecor/models/homedecor_door_wrought_iron_right.obj +++ /dev/null @@ -1,88 +0,0 @@ -# Blender v2.73 (sub 0) OBJ File: 'door-wrought-iron-right.blend' -# www.blender.org -mtllib homedecor_door_wrought_iron_right.mtl -o Cylinder -v 0.500000 1.500000 0.500000 -v -0.500000 1.500000 0.500000 -v 0.500000 -0.500000 0.500000 -v -0.500000 -0.500000 0.500000 -v -0.500000 1.500000 0.375000 -v 0.500000 1.500000 0.375000 -v -0.500000 -0.500000 0.375000 -v 0.500000 -0.500000 0.375000 -v 0.484375 1.484375 0.438451 -v -0.484375 1.484375 0.438451 -v 0.484375 -0.484375 0.438451 -v -0.484375 -0.484375 0.438451 -v -0.484375 1.484375 0.436547 -v 0.484375 1.484375 0.436547 -v -0.484375 -0.484375 0.436547 -v 0.484375 -0.484375 0.436547 -v 0.468750 -0.500000 0.500000 -v -0.468750 -0.500000 0.500000 -v 0.500000 1.484375 0.500000 -v -0.500000 1.484375 0.500000 -v -0.500000 1.484375 0.375000 -v 0.500000 1.484375 0.375000 -v 0.500000 -0.484375 0.500000 -v -0.500000 -0.484375 0.500000 -v -0.500000 -0.484375 0.375000 -v 0.500000 -0.484375 0.375000 -v 0.484375 1.484375 0.500000 -v 0.484375 -0.484375 0.500000 -v 0.484375 1.484375 0.375000 -v 0.484375 -0.484375 0.375000 -v -0.484375 1.484375 0.500000 -v -0.484375 -0.484375 0.500000 -v -0.484375 1.484375 0.375000 -v -0.484375 -0.484375 0.375000 -vt 0.570312 0.007812 -vt 0.085938 0.007812 -vt 0.085938 0.992188 -vt 0.570312 0.992188 -vt 0.078125 0.007812 -vt 0.078125 0.992188 -vt 0.578125 0.007812 -vt 0.578125 0.992188 -vt 0.640625 0.992188 -vt 0.640625 0.007812 -vt 0.765625 0.750000 -vt 0.765625 0.250000 -vt 0.828125 0.250000 -vt 0.828125 0.750000 -vt 0.578125 1.000000 -vt 0.078125 1.000000 -vt 0.734375 0.250000 -vt 0.734375 0.750000 -vt 0.671875 0.750000 -vt 0.671875 0.250000 -vt 0.078125 -0.000000 -vt 0.578125 -0.000000 -vt 0.015625 0.007812 -vt 0.015625 0.992188 -vt 0.015625 -0.000000 -vt 0.015625 1.000000 -vt 0.640625 1.000000 -vt 0.640625 -0.000000 -usemtl None -s off -f 16/1 15/2 13/3 14/4 -f 12/2 11/1 9/4 10/3 -f 25/5 21/6 33/3 34/2 -f 23/7 19/8 27/4 28/1 -f 31/9 32/10 34/7 33/8 -f 30/1 29/4 22/8 26/7 -f 32/2 31/3 20/6 24/5 -f 19/11 20/12 21/13 22/14 -f 6/15 22/8 21/6 5/16 -f 2/16 20/6 19/8 1/15 -f 24/17 23/18 26/19 25/20 -f 7/21 25/5 26/7 8/22 -f 3/22 23/7 24/5 4/21 -f 28/23 27/24 29/6 30/5 -f 4/25 2/26 5/16 7/21 -f 1/18 6/19 5/20 2/17 -f 1/27 3/28 8/22 6/15 -f 4/12 7/13 8/14 3/11 -l 17 3 -l 4 18 diff --git a/homedecor/shutters.lua b/homedecor/shutters.lua deleted file mode 100755 index 0e7b0f2..0000000 --- a/homedecor/shutters.lua +++ /dev/null @@ -1,101 +0,0 @@ --- Various kinds of window shutters - -local S = homedecor_i18n.gettext - -local shutters = { - "mahogany", - "red", - "yellow", - "forest_green", - "light_blue", - "violet", - "black", - "dark_grey", - "grey", - "white", -} - -local shutter_cbox = { - type = "wallmounted", - wall_top = { -0.5, 0.4375, -0.5, 0.5, 0.5, 0.5 }, - wall_bottom = { -0.5, -0.5, -0.5, 0.5, -0.4375, 0.5 }, - wall_side = { -0.5, -0.5, -0.5, -0.4375, 0.5, 0.5 } -} - -local inv = "homedecor_window_shutter_inv.png^[colorize:#a87034:150" - -homedecor.register("shutter", { - mesh = "homedecor_window_shutter.obj", - tiles = { - { name = "homedecor_window_shutter.png", color = 0xffa87034 } - }, - description = S("Wooden Shutter"), - inventory_image = inv, - wield_image = inv, - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - airbrush_replacement_node = "homedecor:shutter_colored", - groups = { snappy = 3, ud_param2_colorable = 1 }, - sounds = default.node_sound_wood_defaults(), - selection_box = shutter_cbox, - node_box = shutter_cbox, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, -}) - -homedecor.register("shutter_colored", { - mesh = "homedecor_window_shutter.obj", - tiles = { "homedecor_window_shutter.png" }, - description = S("Wooden Shutter"), - inventory_image = "homedecor_window_shutter_inv.png", - wield_image = "homedecor_window_shutter_inv.png", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - groups = { snappy = 3 , not_in_creative_inventory = 1, ud_param2_colorable = 1}, - sounds = default.node_sound_wood_defaults(), - selection_box = shutter_cbox, - node_box = shutter_cbox, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, -}) - -minetest.register_alias("homedecor:shutter_purple", "homedecor:shutter_violet") -minetest.register_alias("homedecor:shutter_oak", "homedecor:shutter") - --- convert to param2 coloring - -homedecor.old_shutter_nodes = {} - -for _, color in ipairs(shutters) do - table.insert(homedecor.old_shutter_nodes, "homedecor:shutter_"..color) -end - -minetest.register_lbm({ - name = "homedecor:convert_shutters", - label = "Convert shutter static nodes to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_shutter_nodes, - action = function(pos, node) - local name = node.name - local color = string.sub(name, string.find(name, "_") + 1) - - if color == "mahogany" then - color = "dark_red" - elseif color == "forest_green" then - color = "dark_green" - elseif color == "light_blue" then - color = "medium_cyan" - elseif color == "red" then - color = "medium_red" - end - - local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") - local param2 = paletteidx + node.param2 - - minetest.set_node(pos, { name = "homedecor:shutter_colored", param2 = param2 }) - local meta = minetest.get_meta(pos) - meta:set_string("dye", "unifieddyes:"..color) - end -}) diff --git a/homedecor/textures/homedecor_clothes_female4.png b/homedecor/textures/homedecor_clothes_female4.png deleted file mode 100755 index 3e64c5d..0000000 Binary files a/homedecor/textures/homedecor_clothes_female4.png and /dev/null differ diff --git a/homedecor/textures/homedecor_clothes_female4_preview.png b/homedecor/textures/homedecor_clothes_female4_preview.png deleted file mode 100755 index b8eea30..0000000 Binary files a/homedecor/textures/homedecor_clothes_female4_preview.png and /dev/null differ diff --git a/homedecor/textures/homedecor_clothes_female5.png b/homedecor/textures/homedecor_clothes_female5.png deleted file mode 100755 index ad634f4..0000000 Binary files a/homedecor/textures/homedecor_clothes_female5.png and /dev/null differ diff --git a/homedecor/textures/homedecor_clothes_female5_preview.png b/homedecor/textures/homedecor_clothes_female5_preview.png deleted file mode 100755 index f07d654..0000000 Binary files a/homedecor/textures/homedecor_clothes_female5_preview.png and /dev/null differ diff --git a/homedecor/textures/homedecor_coin.png b/homedecor/textures/homedecor_coin.png deleted file mode 100755 index 84b0932..0000000 Binary files a/homedecor/textures/homedecor_coin.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_bedroom.png b/homedecor/textures/homedecor_door_bedroom.png deleted file mode 100755 index f94875f..0000000 Binary files a/homedecor/textures/homedecor_door_bedroom.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_closet_mahogany.png b/homedecor/textures/homedecor_door_closet_mahogany.png deleted file mode 100755 index e2f51f7..0000000 Binary files a/homedecor/textures/homedecor_door_closet_mahogany.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_closet_oak.png b/homedecor/textures/homedecor_door_closet_oak.png deleted file mode 100755 index 9355e85..0000000 Binary files a/homedecor/textures/homedecor_door_closet_oak.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_exterior_fancy.png b/homedecor/textures/homedecor_door_exterior_fancy.png deleted file mode 100755 index 9f89482..0000000 Binary files a/homedecor/textures/homedecor_door_exterior_fancy.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_exterior_fancy_insert.png b/homedecor/textures/homedecor_door_exterior_fancy_insert.png deleted file mode 100755 index ddc5d22..0000000 Binary files a/homedecor/textures/homedecor_door_exterior_fancy_insert.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_glass.png b/homedecor/textures/homedecor_door_glass.png deleted file mode 100755 index 4e5ea5a..0000000 Binary files a/homedecor/textures/homedecor_door_glass.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_glass_insert.png b/homedecor/textures/homedecor_door_wood_glass_insert.png deleted file mode 100755 index 892f306..0000000 Binary files a/homedecor/textures/homedecor_door_wood_glass_insert.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_glass_mahogany.png b/homedecor/textures/homedecor_door_wood_glass_mahogany.png deleted file mode 100755 index ca0ca15..0000000 Binary files a/homedecor/textures/homedecor_door_wood_glass_mahogany.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_glass_oak.png b/homedecor/textures/homedecor_door_wood_glass_oak.png deleted file mode 100755 index 0f08771..0000000 Binary files a/homedecor/textures/homedecor_door_wood_glass_oak.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_glass_white.png b/homedecor/textures/homedecor_door_wood_glass_white.png deleted file mode 100755 index 202e600..0000000 Binary files a/homedecor/textures/homedecor_door_wood_glass_white.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_glass_white_inv.png b/homedecor/textures/homedecor_door_wood_glass_white_inv.png deleted file mode 100755 index 61c50ad..0000000 Binary files a/homedecor/textures/homedecor_door_wood_glass_white_inv.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wood_plain.png b/homedecor/textures/homedecor_door_wood_plain.png deleted file mode 100755 index 6b12552..0000000 Binary files a/homedecor/textures/homedecor_door_wood_plain.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_woodglass2.png b/homedecor/textures/homedecor_door_woodglass2.png deleted file mode 100755 index ee8ca2b..0000000 Binary files a/homedecor/textures/homedecor_door_woodglass2.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_woodglass2_inv.png b/homedecor/textures/homedecor_door_woodglass2_inv.png deleted file mode 100755 index 9afd7cf..0000000 Binary files a/homedecor/textures/homedecor_door_woodglass2_inv.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_woodglass_typea.png b/homedecor/textures/homedecor_door_woodglass_typea.png deleted file mode 100755 index 2d5902a..0000000 Binary files a/homedecor/textures/homedecor_door_woodglass_typea.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_woodglass_typea_insert.png b/homedecor/textures/homedecor_door_woodglass_typea_insert.png deleted file mode 100755 index 12fb2c6..0000000 Binary files a/homedecor/textures/homedecor_door_woodglass_typea_insert.png and /dev/null differ diff --git a/homedecor/textures/homedecor_door_wrought_iron.png b/homedecor/textures/homedecor_door_wrought_iron.png deleted file mode 100755 index e39b46a..0000000 Binary files a/homedecor/textures/homedecor_door_wrought_iron.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_fb.png b/homedecor/textures/homedecor_gate_half_door_fb.png deleted file mode 100755 index c9be70a..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_fb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_lr.png b/homedecor/textures/homedecor_gate_half_door_lr.png deleted file mode 100755 index 48329d8..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_lr.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_tb.png b/homedecor/textures/homedecor_gate_half_door_tb.png deleted file mode 100755 index 03b360f..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_tb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_white_fb.png b/homedecor/textures/homedecor_gate_half_door_white_fb.png deleted file mode 100755 index ca5c5d1..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_white_fb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_white_lr.png b/homedecor/textures/homedecor_gate_half_door_white_lr.png deleted file mode 100755 index 038d20d..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_white_lr.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_half_door_white_tb.png b/homedecor/textures/homedecor_gate_half_door_white_tb.png deleted file mode 100755 index 2d592e7..0000000 Binary files a/homedecor/textures/homedecor_gate_half_door_white_tb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_picket_front.png b/homedecor/textures/homedecor_gate_picket_front.png deleted file mode 100755 index 858da6b..0000000 Binary files a/homedecor/textures/homedecor_gate_picket_front.png and /dev/null differ diff --git a/homedecor/textures/homedecor_gate_picket_white_front.png b/homedecor/textures/homedecor_gate_picket_white_front.png deleted file mode 100755 index a85aaa2..0000000 Binary files a/homedecor/textures/homedecor_gate_picket_white_front.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_bottom.png b/homedecor/textures/homedecor_glowlight_bottom.png deleted file mode 100755 index 37a6b4d..0000000 Binary files a/homedecor/textures/homedecor_glowlight_bottom.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_cube_sides.png b/homedecor/textures/homedecor_glowlight_cube_sides.png deleted file mode 100755 index 31ba821..0000000 Binary files a/homedecor/textures/homedecor_glowlight_cube_sides.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_cube_tb.png b/homedecor/textures/homedecor_glowlight_cube_tb.png deleted file mode 100755 index c415202..0000000 Binary files a/homedecor/textures/homedecor_glowlight_cube_tb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_thick_sides.png b/homedecor/textures/homedecor_glowlight_thick_sides.png deleted file mode 100755 index bae0108..0000000 Binary files a/homedecor/textures/homedecor_glowlight_thick_sides.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_thick_sides_overlay.png b/homedecor/textures/homedecor_glowlight_thick_sides_overlay.png deleted file mode 100755 index 0d871d1..0000000 Binary files a/homedecor/textures/homedecor_glowlight_thick_sides_overlay.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_thin_sides.png b/homedecor/textures/homedecor_glowlight_thin_sides.png deleted file mode 100755 index 51832b5..0000000 Binary files a/homedecor/textures/homedecor_glowlight_thin_sides.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_thin_sides_overlay.png b/homedecor/textures/homedecor_glowlight_thin_sides_overlay.png deleted file mode 100755 index f9335ef..0000000 Binary files a/homedecor/textures/homedecor_glowlight_thin_sides_overlay.png and /dev/null differ diff --git a/homedecor/textures/homedecor_glowlight_top.png b/homedecor/textures/homedecor_glowlight_top.png deleted file mode 100755 index 70518e7..0000000 Binary files a/homedecor/textures/homedecor_glowlight_top.png and /dev/null differ diff --git a/homedecor/textures/homedecor_lattice_lantern_large.png b/homedecor/textures/homedecor_lattice_lantern_large.png deleted file mode 100755 index ac32230..0000000 Binary files a/homedecor/textures/homedecor_lattice_lantern_large.png and /dev/null differ diff --git a/homedecor/textures/homedecor_lattice_lantern_small_sides.png b/homedecor/textures/homedecor_lattice_lantern_small_sides.png deleted file mode 100755 index 48c517f..0000000 Binary files a/homedecor/textures/homedecor_lattice_lantern_small_sides.png and /dev/null differ diff --git a/homedecor/textures/homedecor_lattice_lantern_small_tb.png b/homedecor/textures/homedecor_lattice_lantern_small_tb.png deleted file mode 100755 index eb28a0d..0000000 Binary files a/homedecor/textures/homedecor_lattice_lantern_small_tb.png and /dev/null differ diff --git a/homedecor/textures/homedecor_light_switch_back.png b/homedecor/textures/homedecor_light_switch_back.png deleted file mode 100755 index 8ad7c7e..0000000 Binary files a/homedecor/textures/homedecor_light_switch_back.png and /dev/null differ diff --git a/homedecor/textures/homedecor_light_switch_edges.png b/homedecor/textures/homedecor_light_switch_edges.png deleted file mode 100755 index 0db6f43..0000000 Binary files a/homedecor/textures/homedecor_light_switch_edges.png and /dev/null differ diff --git a/homedecor/textures/homedecor_light_switch_front.png b/homedecor/textures/homedecor_light_switch_front.png deleted file mode 100755 index f91ab5e..0000000 Binary files a/homedecor/textures/homedecor_light_switch_front.png and /dev/null differ diff --git a/homedecor/textures/homedecor_marble.png b/homedecor/textures/homedecor_marble.png deleted file mode 100755 index b8b6dd3..0000000 Binary files a/homedecor/textures/homedecor_marble.png and /dev/null differ diff --git a/homedecor/window_treatments.lua b/homedecor/window_treatments.lua deleted file mode 100755 index c7eff50..0000000 --- a/homedecor/window_treatments.lua +++ /dev/null @@ -1,260 +0,0 @@ - -local S = homedecor_i18n.gettext - -homedecor.register("window_quartered", { - description = S("Window (quartered)"), - tiles = { - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_quartered.png", - "homedecor_window_quartered.png" - }, - use_texture_alpha = true, - groups = {snappy=3}, - sounds = default.node_sound_glass_defaults(), - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, 0.025, 0.5, 0.5, 0}, -- NodeBox1 - {-0.5, 0.4375, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox2 - {-0.5, -0.5, -0.0625, 0.5, -0.4375, 0.0625}, -- NodeBox3 - {-0.5, -0.0625, -0.025, 0.5, 0.0625, 0.025}, -- NodeBox4 - {0.4375, -0.5, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox5 - {-0.5, -0.5, -0.0625, -0.4375, 0.5, 0.0625}, -- NodeBox6 - {-0.0625, -0.5, -0.025, 0.0625, 0.5, 0.025}, -- NodeBox7 - } - }, - selection_box = { - type = "fixed", - fixed = {-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625} - } -}) - -homedecor.register("window_plain", { - description = S("Window (plain)"), - tiles = { - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_sides.png", - "homedecor_window_frame.png", - "homedecor_window_frame.png" - }, - use_texture_alpha = true, - groups = {snappy=3}, - sounds = default.node_sound_glass_defaults(), - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, 0.025, 0.5, 0.5, 0}, -- NodeBox1 - {-0.5, 0.4375, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox2 - {-0.5, -0.5, -0.0625, 0.5, -0.4375, 0.0625}, -- NodeBox3 - {0.4375, -0.5, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox4 - {-0.5, -0.5, -0.0625, -0.4375, 0.5, 0.0625}, -- NodeBox5 - } - }, - selection_box = { - type = "fixed", - fixed = {-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625} - } -}) - -local wb1_cbox = { - type = "fixed", - fixed = { -8/16, -8/16, 5/16, 8/16, 8/16, 8/16 }, -} - -homedecor.register("blinds_thick", { - description = S("Window Blinds (thick)"), - mesh = "homedecor_windowblind_thick.obj", - inventory_image = "homedecor_windowblind_thick_inv.png", - tiles = { - "homedecor_windowblind_strings.png", - "homedecor_windowblinds.png" - }, - walkable = false, - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), - selection_box = wb1_cbox -}) - -local wb2_cbox = { - type = "fixed", - fixed = { -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -} - -homedecor.register("blinds_thin", { - description = S("Window Blinds (thin)"), - mesh = "homedecor_windowblind_thin.obj", - inventory_image = "homedecor_windowblind_thin_inv.png", - tiles = { - "homedecor_windowblind_strings.png", - "homedecor_windowblinds.png" - }, - walkable = false, - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), - selection_box = wb2_cbox -}) - -minetest.register_node("homedecor:curtain_closed", { - description = S("Curtains"), - tiles = { "homedecor_curtain.png" }, - inventory_image = "homedecor_curtain.png", - drawtype = 'signlike', - use_texture_alpha = true, - walkable = false, - groups = { snappy = 3, ud_param2_colorable = 1 }, - sounds = default.node_sound_leaves_defaults(), - paramtype = "light", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = { type = "wallmounted" }, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, - 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}) - if string.find(topnode.name, "homedecor:curtainrod") then - -- Open the curtains - local fdir = node.param2 - minetest.set_node(pos, { name = "homedecor:curtain_open", param2 = fdir }) - end - return itemstack - end -}) - -minetest.register_node("homedecor:curtain_open", { - description = S("Curtains (open)"), - tiles = { "homedecor_curtain_open.png" }, - inventory_image = "homedecor_curtain_open.png", - drawtype = 'signlike', - use_texture_alpha = true, - walkable = false, - groups = { snappy = 3, ud_param2_colorable = 1 }, - sounds = default.node_sound_leaves_defaults(), - paramtype = "light", - paramtype2 = "colorwallmounted", - palette = "unifieddyes_palette_colorwallmounted.png", - selection_box = { type = "wallmounted" }, - after_place_node = function(pos, placer, itemstack, pointed_thing) - unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) - end, - 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}) - if string.find(topnode.name, "homedecor:curtainrod") then - -- Close the curtains - local fdir = node.param2 - minetest.set_node(pos, { name = "homedecor:curtain_closed", param2 = fdir }) - end - return itemstack - end -}) - -local mats = { - { "brass", S("brass"), "homedecor_generic_metal_brass.png" }, - { "wrought_iron", S("wrought iron"), "homedecor_generic_metal_wrought_iron.png" }, - { "wood", S("wood"), "default_wood.png" } -} - -for _, m in ipairs(mats) do - local material, mat_name, texture = unpack(m) - homedecor.register("curtainrod_"..material, { - tiles = { texture }, - inventory_image = "homedecor_curtainrod_"..material.."_inv.png", - description = S("Curtain Rod (@1)", mat_name), - groups = { snappy = 3 }, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.5, 0.375, 0.5, -0.4375, 0.4375}, - {-0.4375, -0.5, 0.4375, -0.375, -0.4375, 0.5}, - {0.375, -0.5, 0.4375, 0.4375, -0.4375, 0.5} - } - } - }) -end - -homedecor.register("window_flowerbox", { - description = S("Window flowerbox"), - tiles = { - "homedecor_flowerbox_top.png", - "homedecor_flowerbox_bottom.png", - "homedecor_flowerbox_sides.png" - }, - inventory_image = "homedecor_flowerbox_inv.png", - sounds = default.node_sound_stone_defaults(), - groups = { snappy = 3 }, - node_box = { - type = "fixed", - fixed = { - {-0.375, 0.25, -0.125, 0.375, 0.5, 0.375}, -- NodeBox1 - {-0.3125, 0.4375, 0.375, -0.25, 0.4875, 0.5}, -- NodeBox2 - {0.25, 0.4375, 0.375, 0.3125, 0.4875, 0.5}, -- NodeBox3 - } - } -}) - -homedecor.register("stained_glass", { - description = S("Stained Glass"), - tiles = {"homedecor_stained_glass.png"}, - inventory_image = "homedecor_stained_glass.png", - groups = {snappy=3}, - use_texture_alpha = true, - light_source = 3, - sounds = default.node_sound_glass_defaults(), - node_box = { - type = "fixed", - fixed = { {-0.5, -0.5, 0.46875, 0.5, 0.5, 0.5} } - } -}) - --- Convert old curtain nodes to param2-colorization - -local curtaincolors = { - "red", - "green", - "blue", - "white", - "pink", - "violet", -} - -homedecor.old_static_curtain_nodes = {} - -for _, color in ipairs(curtaincolors) do - table.insert(homedecor.old_static_curtain_nodes, "homedecor:curtain_"..color) - table.insert(homedecor.old_static_curtain_nodes, "homedecor:curtain_open_"..color) -end - -minetest.register_lbm({ - name = "homedecor:convert_curtains", - label = "Convert static curtain nodes to use param2 color", - run_at_every_load = false, - nodenames = homedecor.old_static_curtain_nodes, - action = function(pos, node) - local name = node.name - local color = string.sub(name, 19) - local openclose = "closed" - - if string.find(color, "open") then - color = string.sub(color, 6) - openclose = "open" - end - - local metadye = "medium_"..color - if color == "white" then - metadye = "white" - end - - local newnode = "homedecor:curtain_"..openclose - local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..metadye, "wallmounted") - local newparam2 = paletteidx + (node.param2 % 8) - - minetest.set_node(pos, { name = newnode, param2 = newparam2 }) - local meta = minetest.get_meta(pos) - meta:set_string("dye", "unifieddyes:"..metadye) - end -}) diff --git a/homedecor_3d_extras/depends.txt b/homedecor_3d_extras/depends.txt index e6de01a..18f4f61 100755 --- a/homedecor_3d_extras/depends.txt +++ b/homedecor_3d_extras/depends.txt @@ -1,3 +1,4 @@ default -moreblocks? vessels? +moreblocks? +doors? diff --git a/homedecor_3d_extras/init.lua b/homedecor_3d_extras/init.lua index 498e09c..53d7554 100755 --- a/homedecor_3d_extras/init.lua +++ b/homedecor_3d_extras/init.lua @@ -1,27 +1,23 @@ minetest.override_item("default:bookshelf", { drawtype = "mesh", - mesh = "3dbookshelf.obj", + mesh = "homedecor_3d_bookshelf.obj", tiles = { "default_wood.png", - "default_wood.png^3dbookshelf_inside_back.png", - "3dbookshelf_books.png", + "default_wood.png^homedecor_3d_bookshelf_inside_back.png", + "homedecor_3d_bookshelf_books.png", }, paramtype = "light", paramtype2 = "facedir", }) -if minetest.get_modpath("vessels") - and minetest.registered_nodes["vessels:shelf"] - and minetest.registered_nodes["vessels:glass_bottle"] - and minetest.registered_nodes["vessels:drinking_glass"] then - +if minetest.get_modpath("vessels") then minetest.override_item("vessels:shelf", { drawtype = "mesh", - mesh = "3dvessels_shelf.obj", + mesh = "homedecor_3d_vessels_shelf.obj", tiles = { "default_wood.png", - "default_wood.png^3dbookshelf_inside_back.png", - "3dvessels_shelf_glass.png", + "default_wood.png^homedecor_3d_bookshelf_inside_back.png", + "homedecor_3d_vessels_shelf_glass.png", }, paramtype = "light", paramtype2 = "facedir", @@ -35,29 +31,29 @@ if minetest.get_modpath("vessels") minetest.override_item("vessels:glass_bottle", { drawtype = "mesh", - mesh = "3dvessels_bottle.obj", - tiles = {"3dvessels_shelf_glass.png"}, - inventory_image = "3dvessels_glass_bottle_inv.png", - wield_image = "3dvessels_glass_bottle_inv.png", + mesh = "homedecor_3d_vessels_bottle.obj", + tiles = {"homedecor_3d_vessels_shelf_glass.png"}, + inventory_image = "homedecor_3d_vessels_glass_bottle_inv.png", + wield_image = "homedecor_3d_vessels_glass_bottle_inv.png", use_texture_alpha = true, selection_box = sbox }) minetest.override_item("vessels:steel_bottle", { drawtype = "mesh", - mesh = "3dvessels_bottle_steel.obj", - tiles = {"bottle_metal_bright.png"}, - inventory_image = "3dvessels_steel_bottle_inv.png", - wield_image = "3dvessels_steel_bottle_inv.png", + mesh = "homedecor_3d_vessels_bottle_steel.obj", + tiles = {"homedecor_3d_bottle_metal_bright.png"}, + inventory_image = "homedecor_3d_vessels_steel_bottle_inv.png", + wield_image = "homedecor_3d_vessels_steel_bottle_inv.png", selection_box = sbox }) minetest.override_item("vessels:drinking_glass", { drawtype = "mesh", - mesh = "3dvessels_drink.obj", - tiles = {"3dvessels_shelf_glass.png"}, - inventory_image = "3dvessels_drinking_glass_inv.png", - wield_image = "3dvessels_drinking_glass_inv.png", + mesh = "homedecor_3d_vessels_drink.obj", + tiles = {"homedecor_3d_vessels_shelf_glass.png"}, + inventory_image = "homedecor_3d_vessels_drinking_glass_inv.png", + wield_image = "homedecor_3d_vessels_drinking_glass_inv.png", use_texture_alpha = true, selection_box = sbox }) @@ -71,8 +67,8 @@ if minetest.get_modpath("moreblocks") then "default_wood.png", "default_wood.png^[transformR90", "default_wood.png^[transformR270", - "default_wood.png^3dbookshelf_inside_back.png", - "default_wood.png^3dbookshelf_inside_back.png" + "default_wood.png^homedecor_3d_bookshelf_inside_back.png", + "default_wood.png^homedecor_3d_bookshelf_inside_back.png" }, paramtype = "light", paramtype2 = "facedir", @@ -89,3 +85,39 @@ if minetest.get_modpath("moreblocks") then } }) end + +-- 3d-ify default mtg wood and steel doors and trap doors + +if minetest.get_modpath("doors") then + local def + for _,mat in ipairs({"wood", "steel"}) do + def = table.copy(minetest.registered_nodes["doors:door_"..mat.."_a"]) + def.mesh = "homedecor_3d_door_"..mat.."_a.obj" + minetest.register_node(":doors:door_"..mat.."_a", def) + + def = table.copy(minetest.registered_nodes["doors:door_"..mat.."_b"]) + def.mesh = "homedecor_3d_door_"..mat.."_b.obj" + minetest.register_node(":doors:door_"..mat.."_b", def) + end + + for _,mat in ipairs({"", "_steel"}) do + def = table.copy(minetest.registered_nodes["doors:trapdoor"..mat]) + def.drawtype = "mesh" + def.mesh = "homedecor_3d_trapdoor"..mat..".obj" + def.tiles = { + "doors_trapdoor"..mat..".png", + "doors_trapdoor"..mat.."_side.png" + } + minetest.register_node(":doors:trapdoor"..mat, def) + + def = table.copy(minetest.registered_nodes["doors:trapdoor"..mat.."_open"]) + def.mesh = "homedecor_3d_trapdoor"..mat.."_open.obj" + def.drawtype = "mesh" + def.tiles = { + "doors_trapdoor"..mat..".png", + "doors_trapdoor"..mat.."_side.png" + } + minetest.register_node(":doors:trapdoor"..mat.."_open", def) + end + +end diff --git a/homedecor_3d_extras/models/3dbookshelf.obj b/homedecor_3d_extras/models/homedecor_3d_bookshelf.obj similarity index 100% rename from homedecor_3d_extras/models/3dbookshelf.obj rename to homedecor_3d_extras/models/homedecor_3d_bookshelf.obj diff --git a/homedecor_3d_extras/models/homedecor_3d_door_steel_a.obj b/homedecor_3d_extras/models/homedecor_3d_door_steel_a.obj new file mode 100644 index 0000000..ba2d827 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_door_steel_a.obj @@ -0,0 +1,152 @@ +# Blender v2.79 (sub 0) OBJ File: 'default door steel 3d.blend' +# www.blender.org +o Cylinder_Cylinder_door +v 0.375000 1.375000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.375000 0.625000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.375000 0.625000 -0.500000 +v 0.312500 0.687500 -0.453125 +v -0.312500 1.312500 -0.453125 +v -0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.500000 +v 0.312500 1.312500 -0.421875 +v 0.312500 1.312500 -0.453125 +v -0.375000 0.625000 -0.375000 +v -0.312500 0.687500 -0.453125 +v -0.312500 0.687500 -0.421875 +v 0.375000 0.625000 -0.500000 +v 0.312500 0.687500 -0.421875 +v -0.312500 1.312500 -0.421875 +v -0.312500 0.687500 -0.436500 +v 0.312500 1.312500 -0.436500 +v -0.312500 1.312500 -0.436500 +v 0.312500 0.687500 -0.436500 +v -0.312500 0.687500 -0.437500 +v 0.312500 1.312500 -0.437500 +v -0.312500 1.312500 -0.437500 +v 0.312500 0.687500 -0.437500 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.421053 0.000000 +vt 0.842105 0.000000 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 -0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 -0.000000 +vt 0.842105 1.000000 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 0.763158 0.906250 +vt 0.500000 0.906250 +vt 0.868421 0.906250 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.906250 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.093750 +vt 1.000000 0.093750 +vt 0.078947 0.593750 +vt 0.078947 0.906250 +vt 0.342105 0.593750 +vt 0.342105 0.906250 +vt 0.078947 0.906250 +vt 0.078947 0.593750 +vt 0.342105 0.593750 +vt 0.342105 0.906250 +vt 0.500000 0.906250 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.763158 0.906250 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.0000 -0.6000 -0.8000 +vn 0.0000 0.6000 -0.8000 +vn 0.7071 0.7071 0.0000 +vn 0.6000 0.0000 -0.8000 +vn -0.7071 0.7071 0.0000 +vn 0.6000 0.0000 0.8000 +vn 0.0000 0.6000 0.8000 +vn -0.6000 -0.0000 -0.8000 +vn -0.6000 0.0000 0.8000 +vn 0.0000 -0.6000 0.8000 +s off +f 11/1/1 22/2/1 7/3/1 8/4/1 +f 4/5/2 19/6/2 2/7/2 3/8/2 +f 2/7/2 19/6/2 14/9/2 6/10/2 +f 3/8/2 5/11/2 1/12/2 4/5/2 +f 5/11/2 6/10/2 14/9/2 1/12/2 +f 15/13/1 11/1/1 8/4/1 9/14/1 +f 10/15/1 16/16/1 15/13/1 9/14/1 +f 16/16/1 10/15/1 7/3/1 22/2/1 +f 2/17/3 8/18/3 7/19/3 3/20/3 +f 6/21/4 5/22/4 10/23/4 9/24/4 +f 5/25/5 3/26/5 7/27/5 10/28/5 +f 2/29/6 6/30/6 9/31/6 8/32/6 +f 24/33/3 13/34/3 18/35/3 17/36/3 +f 13/37/7 15/13/7 16/16/7 18/38/7 +f 24/39/5 21/40/5 20/41/5 13/42/5 +f 12/43/8 22/2/8 11/1/8 20/44/8 +f 14/45/9 24/46/9 13/47/9 15/48/9 +f 20/44/10 11/1/10 15/13/10 13/37/10 +f 17/49/11 1/50/11 16/51/11 18/52/11 +f 23/53/4 12/54/4 20/55/4 21/56/4 +f 14/9/12 19/6/12 21/57/12 24/58/12 +f 21/57/13 19/6/13 4/5/13 23/59/13 +f 16/16/14 22/2/14 12/43/14 18/38/14 +f 23/59/15 4/5/15 1/12/15 17/60/15 +f 14/9/16 24/58/16 17/60/16 1/12/16 +f 27/61/2 25/62/2 28/63/2 26/64/2 +f 30/65/1 32/66/1 29/67/1 31/68/1 +f 17/69/6 18/70/6 12/71/6 23/72/6 diff --git a/homedecor_3d_extras/models/homedecor_3d_door_steel_b.obj b/homedecor_3d_extras/models/homedecor_3d_door_steel_b.obj new file mode 100644 index 0000000..33bac1f --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_door_steel_b.obj @@ -0,0 +1,152 @@ +# Blender v2.79 (sub 0) OBJ File: 'default door steel 3d.blend' +# www.blender.org +o Cylinder_Cylinder_door +v -0.375000 1.375000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.375000 0.625000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.375000 0.625000 -0.375000 +v -0.312500 0.687500 -0.421875 +v 0.312500 1.312500 -0.421875 +v 0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.375000 +v -0.312500 1.312500 -0.453125 +v -0.312500 1.312500 -0.421875 +v 0.375000 0.625000 -0.500000 +v 0.312500 0.687500 -0.421875 +v 0.312500 0.687500 -0.453125 +v -0.375000 0.625000 -0.375000 +v -0.312500 0.687500 -0.453125 +v 0.312500 1.312500 -0.453125 +v 0.312500 0.687500 -0.438500 +v -0.312500 1.312500 -0.438500 +v 0.312500 1.312500 -0.438500 +v -0.312500 0.687500 -0.438500 +v 0.312500 0.687500 -0.437500 +v -0.312500 1.312500 -0.437500 +v 0.312500 1.312500 -0.437500 +v -0.312500 0.687500 -0.437500 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.421053 0.000000 +vt 0.842105 0.000000 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 -0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 -0.000000 +vt 0.842105 1.000000 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 0.763158 0.906250 +vt 0.500000 0.906250 +vt 0.868421 0.906250 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.906250 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.093750 +vt 1.000000 0.093750 +vt 0.078947 0.593750 +vt 0.078947 0.906250 +vt 0.342105 0.593750 +vt 0.342105 0.906250 +vt 0.078947 0.906250 +vt 0.078947 0.593750 +vt 0.342105 0.593750 +vt 0.342105 0.906250 +vt 0.500000 0.906250 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.763158 0.906250 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vn 0.0000 0.0000 1.0000 +vn -0.0000 -0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -0.6000 0.8000 +vn 0.0000 0.6000 0.8000 +vn -0.7071 0.7071 0.0000 +vn -0.6000 -0.0000 0.8000 +vn 0.7071 0.7071 0.0000 +vn -0.6000 0.0000 -0.8000 +vn -0.0000 0.6000 -0.8000 +vn 0.6000 -0.0000 0.8000 +vn 0.6000 0.0000 -0.8000 +vn -0.0000 -0.6000 -0.8000 +s off +f 11/1/1 22/2/1 7/3/1 8/4/1 +f 4/5/2 19/6/2 2/7/2 3/8/2 +f 2/7/2 19/6/2 14/9/2 6/10/2 +f 3/8/2 5/11/2 1/12/2 4/5/2 +f 5/11/2 6/10/2 14/9/2 1/12/2 +f 15/13/1 11/1/1 8/4/1 9/14/1 +f 10/15/1 16/16/1 15/13/1 9/14/1 +f 16/16/1 10/15/1 7/3/1 22/2/1 +f 2/17/3 8/18/3 7/19/3 3/20/3 +f 6/21/4 5/22/4 10/23/4 9/24/4 +f 5/25/5 3/26/5 7/27/5 10/28/5 +f 2/29/6 6/30/6 9/31/6 8/32/6 +f 24/33/3 13/34/3 18/35/3 17/36/3 +f 13/37/7 15/13/7 16/16/7 18/38/7 +f 24/39/5 21/40/5 20/41/5 13/42/5 +f 12/43/8 22/2/8 11/1/8 20/44/8 +f 14/45/9 24/46/9 13/47/9 15/48/9 +f 20/44/10 11/1/10 15/13/10 13/37/10 +f 17/49/11 1/50/11 16/51/11 18/52/11 +f 23/53/4 12/54/4 20/55/4 21/56/4 +f 14/9/12 19/6/12 21/57/12 24/58/12 +f 21/57/13 19/6/13 4/5/13 23/59/13 +f 16/16/14 22/2/14 12/43/14 18/38/14 +f 23/59/15 4/5/15 1/12/15 17/60/15 +f 14/9/16 24/58/16 17/60/16 1/12/16 +f 27/61/2 25/62/2 28/63/2 26/64/2 +f 30/65/1 32/66/1 29/67/1 31/68/1 +f 17/69/6 18/70/6 12/71/6 23/72/6 diff --git a/homedecor_3d_extras/models/homedecor_3d_door_wood_a.obj b/homedecor_3d_extras/models/homedecor_3d_door_wood_a.obj new file mode 100644 index 0000000..2c99928 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_door_wood_a.obj @@ -0,0 +1,248 @@ +# Blender v2.79 (sub 0) OBJ File: 'default door wood 3d.blend' +# www.blender.org +o Cylinder_Cylinder_door +v 0.375000 1.375000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.375000 0.625000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.375000 0.625000 -0.500000 +v -0.062500 0.687500 -0.421875 +v -0.062500 1.312500 -0.453125 +v 0.062500 0.937500 -0.453125 +v 0.312500 0.937500 -0.453125 +v 0.312500 1.062500 -0.453125 +v -0.062500 0.937500 -0.453125 +v -0.062500 1.062500 -0.453125 +v -0.312500 1.062500 -0.453125 +v -0.312500 1.312500 -0.453125 +v -0.312500 1.312500 -0.421875 +v 0.062500 1.062500 -0.421875 +v 0.062500 1.062500 -0.453125 +v -0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.500000 +v 0.312500 0.687500 -0.453125 +v 0.312500 1.312500 -0.421875 +v 0.312500 1.312500 -0.453125 +v -0.375000 0.625000 -0.375000 +v -0.062500 1.062500 -0.421875 +v -0.062500 0.937500 -0.421875 +v 0.062500 0.937500 -0.421875 +v -0.312500 0.687500 -0.453125 +v -0.312500 0.687500 -0.421875 +v 0.375000 0.625000 -0.500000 +v 0.312500 0.687500 -0.421875 +v -0.062500 1.312500 -0.421875 +v 0.062500 1.312500 -0.421875 +v 0.062500 1.312500 -0.453125 +v 0.062500 0.687500 -0.421875 +v 0.062500 0.687500 -0.453125 +v -0.062500 0.687500 -0.453125 +v -0.312500 1.062500 -0.421875 +v -0.312500 0.937500 -0.453125 +v -0.312500 0.937500 -0.421875 +v 0.312500 1.062500 -0.421875 +v 0.312500 0.937500 -0.421875 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.421053 0.000000 +vt 0.842105 0.000000 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 0.842105 1.000000 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 0.868421 0.718750 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.718750 +vt 0.947368 0.718750 +vt 0.921053 0.718750 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vt 1.000000 0.718750 +vt 0.973684 0.718750 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 1.000000 0.718750 +vt 0.973684 0.718750 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 1.000000 0.281250 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.281250 +vt 0.763158 0.906250 +vt 0.500000 0.906250 +vt 0.605263 0.906250 +vt 0.657895 0.906250 +vt 0.763158 0.781250 +vt 0.657895 0.781250 +vt 0.605263 0.781250 +vt 0.500000 0.781250 +vt 0.500000 0.718750 +vt 0.605263 0.718750 +vt 0.657895 0.718750 +vt 0.763158 0.718750 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.781250 +vt 1.000000 0.781250 +vt 1.000000 0.093750 +vt 1.000000 0.218750 +vt 0.973684 0.218750 +vt 0.973684 0.093750 +vt 0.078947 0.906250 +vt 0.184211 0.906250 +vt 0.236842 0.906250 +vt 0.342105 0.906250 +vt 0.868421 0.718750 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.718750 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.657895 0.593750 +vt 0.605263 0.593750 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 0.868421 0.906250 +vt 0.868421 0.781250 +vt 0.894737 0.781250 +vt 0.894737 0.906250 +vt 0.342105 0.593750 +vt 0.342105 0.781250 +vt 0.342105 0.718750 +vt 0.947368 0.718750 +vt 0.921053 0.718750 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.781250 +vt 0.947368 0.781250 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 1.000000 0.218750 +vt 0.973684 0.218750 +vt 0.973684 0.093750 +vt 1.000000 0.093750 +vt 0.078947 0.593750 +vt 0.078947 0.718750 +vt 0.078947 0.781250 +vt 0.236842 0.593750 +vt 0.184211 0.593750 +vt 0.236842 0.781250 +vt 0.184211 0.781250 +vt 0.184211 0.718750 +vt 0.236842 0.718750 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.781250 +vt 1.000000 0.781250 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.281250 +vt 1.000000 0.281250 +vt 0.868421 0.906250 +vt 0.868421 0.781250 +vt 0.894737 0.781250 +vt 0.894737 0.906250 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.781250 +vt 0.947368 0.781250 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.0000 -0.6000 -0.8000 +vn 0.0000 -0.6000 0.8000 +vn 0.0000 0.6000 -0.8000 +vn 0.7071 0.7071 0.0000 +vn -0.6000 0.0000 0.8000 +vn 0.6000 0.0000 -0.8000 +vn -0.7071 0.7071 0.0000 +vn 0.6000 0.0000 0.8000 +vn 0.0000 0.6000 0.8000 +vn -0.6000 -0.0000 -0.8000 +s off +f 11/1/1 36/2/1 7/3/1 8/4/1 +f 4/5/2 30/6/2 2/7/2 3/8/2 +f 2/7/2 30/6/2 24/9/2 6/10/2 +f 3/8/2 5/11/2 1/12/2 4/5/2 +f 5/11/2 6/10/2 24/9/2 1/12/2 +f 25/13/1 11/1/1 8/4/1 9/14/1 +f 10/15/1 26/16/1 25/13/1 9/14/1 +f 26/16/1 10/15/1 7/3/1 36/2/1 +f 2/17/3 8/18/3 7/19/3 3/20/3 +f 6/21/4 5/22/4 10/23/4 9/24/4 +f 5/25/5 3/26/5 7/27/5 10/28/5 +f 2/29/6 6/30/6 9/31/6 8/32/6 +f 33/33/5 41/34/5 42/35/5 14/36/5 +f 32/37/6 17/38/6 43/39/6 12/40/6 +f 39/41/3 40/42/3 29/43/3 28/44/3 +f 33/45/3 14/46/3 15/47/3 48/48/3 +f 22/49/4 47/50/4 16/51/4 23/52/4 +f 20/53/7 25/13/7 26/16/7 29/54/7 40/55/7 13/56/7 +f 19/57/1 18/58/1 23/59/1 16/60/1 15/61/1 14/62/1 17/63/1 45/64/1 +f 46/65/3 45/66/3 17/67/3 32/68/3 +f 44/69/4 31/70/4 18/71/4 19/72/4 +f 24/9/8 21/73/8 38/74/8 39/75/8 28/76/8 1/12/8 +f 46/77/5 35/78/5 34/79/5 45/80/5 +f 27/81/9 36/2/9 11/1/9 34/82/9 43/83/9 42/84/9 +f 24/85/10 21/86/10 20/87/10 25/88/10 +f 39/89/5 22/90/5 23/91/5 40/92/5 +f 37/93/11 4/5/11 1/12/11 28/76/11 47/94/11 48/95/11 +f 48/96/6 15/97/6 27/98/6 37/99/6 +f 34/82/12 11/1/12 25/13/12 20/53/12 19/57/12 45/64/12 +f 38/100/6 13/101/6 18/102/6 31/103/6 +f 28/104/13 1/105/13 26/106/13 29/107/13 +f 12/108/4 43/109/4 34/110/4 35/111/4 +f 24/9/14 30/6/14 35/112/14 46/113/14 44/114/14 21/73/14 +f 35/112/15 30/6/15 4/5/15 37/93/15 41/115/15 12/116/15 +f 26/16/16 36/2/16 27/81/16 15/61/16 16/60/16 29/54/16 +f 40/55/1 23/59/1 18/58/1 13/56/1 +f 22/117/2 31/118/2 44/114/2 46/113/2 32/119/2 33/120/2 48/95/2 47/94/2 +f 14/62/1 42/84/1 43/83/1 17/63/1 +f 41/115/2 33/120/2 32/119/2 12/116/2 +f 22/117/2 39/75/2 38/74/2 31/118/2 +f 21/121/3 20/122/3 13/123/3 38/124/3 +f 37/125/4 27/126/4 42/127/4 41/128/4 +f 21/129/5 44/130/5 19/131/5 20/132/5 +f 28/133/6 29/134/6 16/135/6 47/136/6 diff --git a/homedecor_3d_extras/models/homedecor_3d_door_wood_b.obj b/homedecor_3d_extras/models/homedecor_3d_door_wood_b.obj new file mode 100644 index 0000000..48049de --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_door_wood_b.obj @@ -0,0 +1,248 @@ +# Blender v2.79 (sub 0) OBJ File: 'default door wood 3d.blend' +# www.blender.org +o Cylinder_Cylinder_door +v -0.375000 1.375000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.375000 0.625000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.375000 0.625000 -0.375000 +v 0.062500 0.687500 -0.453125 +v 0.062500 1.312500 -0.421875 +v -0.062500 0.937500 -0.421875 +v -0.312500 0.937500 -0.421875 +v -0.312500 1.062500 -0.421875 +v 0.062500 0.937500 -0.421875 +v 0.062500 1.062500 -0.421875 +v 0.312500 1.062500 -0.421875 +v 0.312500 1.312500 -0.421875 +v 0.312500 1.312500 -0.453125 +v -0.062500 1.062500 -0.453125 +v -0.062500 1.062500 -0.421875 +v 0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.375000 +v -0.312500 0.687500 -0.421875 +v -0.312500 1.312500 -0.453125 +v -0.312500 1.312500 -0.421875 +v 0.375000 0.625000 -0.500000 +v 0.062500 1.062500 -0.453125 +v 0.062500 0.937500 -0.453125 +v -0.062500 0.937500 -0.453125 +v 0.312500 0.687500 -0.421875 +v 0.312500 0.687500 -0.453125 +v -0.375000 0.625000 -0.375000 +v -0.312500 0.687500 -0.453125 +v 0.062500 1.312500 -0.453125 +v -0.062500 1.312500 -0.453125 +v -0.062500 1.312500 -0.421875 +v -0.062500 0.687500 -0.453125 +v -0.062500 0.687500 -0.421875 +v 0.062500 0.687500 -0.421875 +v 0.312500 1.062500 -0.453125 +v 0.312500 0.937500 -0.421875 +v 0.312500 0.937500 -0.453125 +v -0.312500 1.062500 -0.453125 +v -0.312500 0.937500 -0.453125 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.421053 0.000000 +vt 0.842105 0.000000 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 0.842105 1.000000 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 0.868421 0.718750 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.718750 +vt 0.947368 0.718750 +vt 0.921053 0.718750 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vt 1.000000 0.718750 +vt 0.973684 0.718750 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 1.000000 0.718750 +vt 0.973684 0.718750 +vt 0.973684 0.593750 +vt 1.000000 0.593750 +vt 1.000000 0.281250 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.281250 +vt 0.763158 0.906250 +vt 0.500000 0.906250 +vt 0.605263 0.906250 +vt 0.657895 0.906250 +vt 0.763158 0.781250 +vt 0.657895 0.781250 +vt 0.605263 0.781250 +vt 0.500000 0.781250 +vt 0.500000 0.718750 +vt 0.605263 0.718750 +vt 0.657895 0.718750 +vt 0.763158 0.718750 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.781250 +vt 1.000000 0.781250 +vt 1.000000 0.093750 +vt 1.000000 0.218750 +vt 0.973684 0.218750 +vt 0.973684 0.093750 +vt 0.078947 0.906250 +vt 0.184211 0.906250 +vt 0.236842 0.906250 +vt 0.342105 0.906250 +vt 0.868421 0.718750 +vt 0.868421 0.593750 +vt 0.894737 0.593750 +vt 0.894737 0.718750 +vt 0.500000 0.593750 +vt 0.763158 0.593750 +vt 0.657895 0.593750 +vt 0.605263 0.593750 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 0.868421 0.906250 +vt 0.868421 0.781250 +vt 0.894737 0.781250 +vt 0.894737 0.906250 +vt 0.342105 0.593750 +vt 0.342105 0.781250 +vt 0.342105 0.718750 +vt 0.947368 0.718750 +vt 0.921053 0.718750 +vt 0.921053 0.593750 +vt 0.947368 0.593750 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.781250 +vt 0.947368 0.781250 +vt 0.947368 0.937500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.937500 +vt 1.000000 0.218750 +vt 0.973684 0.218750 +vt 0.973684 0.093750 +vt 1.000000 0.093750 +vt 0.078947 0.593750 +vt 0.078947 0.718750 +vt 0.078947 0.781250 +vt 0.236842 0.593750 +vt 0.184211 0.593750 +vt 0.236842 0.781250 +vt 0.184211 0.781250 +vt 0.184211 0.718750 +vt 0.236842 0.718750 +vt 1.000000 0.906250 +vt 0.973684 0.906250 +vt 0.973684 0.781250 +vt 1.000000 0.781250 +vt 1.000000 0.406250 +vt 0.973684 0.406250 +vt 0.973684 0.281250 +vt 1.000000 0.281250 +vt 0.868421 0.906250 +vt 0.868421 0.781250 +vt 0.894737 0.781250 +vt 0.894737 0.906250 +vt 0.947368 0.906250 +vt 0.921053 0.906250 +vt 0.921053 0.781250 +vt 0.947368 0.781250 +vn 0.0000 0.0000 1.0000 +vn -0.0000 -0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -0.6000 0.8000 +vn -0.0000 -0.6000 -0.8000 +vn 0.0000 0.6000 0.8000 +vn -0.7071 0.7071 0.0000 +vn 0.6000 0.0000 -0.8000 +vn -0.6000 -0.0000 0.8000 +vn 0.7071 0.7071 0.0000 +vn -0.6000 0.0000 -0.8000 +vn -0.0000 0.6000 -0.8000 +vn 0.6000 -0.0000 0.8000 +s off +f 11/1/1 36/2/1 7/3/1 8/4/1 +f 4/5/2 30/6/2 2/7/2 3/8/2 +f 2/7/2 30/6/2 24/9/2 6/10/2 +f 3/8/2 5/11/2 1/12/2 4/5/2 +f 5/11/2 6/10/2 24/9/2 1/12/2 +f 25/13/1 11/1/1 8/4/1 9/14/1 +f 10/15/1 26/16/1 25/13/1 9/14/1 +f 26/16/1 10/15/1 7/3/1 36/2/1 +f 2/17/3 8/18/3 7/19/3 3/20/3 +f 6/21/4 5/22/4 10/23/4 9/24/4 +f 5/25/5 3/26/5 7/27/5 10/28/5 +f 2/29/6 6/30/6 9/31/6 8/32/6 +f 33/33/5 41/34/5 42/35/5 14/36/5 +f 32/37/6 17/38/6 43/39/6 12/40/6 +f 39/41/3 40/42/3 29/43/3 28/44/3 +f 33/45/3 14/46/3 15/47/3 48/48/3 +f 22/49/4 47/50/4 16/51/4 23/52/4 +f 20/53/7 25/13/7 26/16/7 29/54/7 40/55/7 13/56/7 +f 19/57/1 18/58/1 23/59/1 16/60/1 15/61/1 14/62/1 17/63/1 45/64/1 +f 46/65/3 45/66/3 17/67/3 32/68/3 +f 44/69/4 31/70/4 18/71/4 19/72/4 +f 24/9/8 21/73/8 38/74/8 39/75/8 28/76/8 1/12/8 +f 46/77/5 35/78/5 34/79/5 45/80/5 +f 27/81/9 36/2/9 11/1/9 34/82/9 43/83/9 42/84/9 +f 24/85/10 21/86/10 20/87/10 25/88/10 +f 39/89/5 22/90/5 23/91/5 40/92/5 +f 37/93/11 4/5/11 1/12/11 28/76/11 47/94/11 48/95/11 +f 48/96/6 15/97/6 27/98/6 37/99/6 +f 34/82/12 11/1/12 25/13/12 20/53/12 19/57/12 45/64/12 +f 38/100/6 13/101/6 18/102/6 31/103/6 +f 28/104/13 1/105/13 26/106/13 29/107/13 +f 12/108/4 43/109/4 34/110/4 35/111/4 +f 24/9/14 30/6/14 35/112/14 46/113/14 44/114/14 21/73/14 +f 35/112/15 30/6/15 4/5/15 37/93/15 41/115/15 12/116/15 +f 26/16/16 36/2/16 27/81/16 15/61/16 16/60/16 29/54/16 +f 40/55/1 23/59/1 18/58/1 13/56/1 +f 22/117/2 31/118/2 44/114/2 46/113/2 32/119/2 33/120/2 48/95/2 47/94/2 +f 14/62/1 42/84/1 43/83/1 17/63/1 +f 41/115/2 33/120/2 32/119/2 12/116/2 +f 22/117/2 39/75/2 38/74/2 31/118/2 +f 21/121/3 20/122/3 13/123/3 38/124/3 +f 37/125/4 27/126/4 42/127/4 41/128/4 +f 21/129/5 44/130/5 19/131/5 20/132/5 +f 28/133/6 29/134/6 16/135/6 47/136/6 diff --git a/homedecor_3d_extras/models/homedecor_3d_trapdoor.obj b/homedecor_3d_extras/models/homedecor_3d_trapdoor.obj new file mode 100644 index 0000000..60008e9 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_trapdoor.obj @@ -0,0 +1,318 @@ +# Blender v2.79 (sub 0) OBJ File: 'default trapdoor wood 3d.blend' +# www.blender.org +o Cube.001 +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.375000 -0.500000 +v 0.500000 -0.500000 0.500000 +v 0.500000 -0.375000 0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 -0.375000 -0.500000 +v -0.500000 -0.500000 0.500000 +v -0.500000 -0.375000 0.500000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 -0.375000 0.375000 +v -0.500000 -0.500000 0.375000 +v -0.500000 -0.375000 -0.375000 +v 0.500000 -0.500000 0.375000 +v 0.500000 -0.375000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v -0.500000 -0.375000 0.375000 +v -0.125000 -0.468750 -0.125000 +v 0.125000 -0.406250 -0.125000 +v -0.125000 -0.406250 -0.125000 +v -0.375000 -0.375000 -0.375000 +v -0.375000 -0.375000 0.375000 +v 0.375000 -0.375000 0.375000 +v 0.125000 -0.406250 0.125000 +v 0.125000 -0.468750 -0.125000 +v 0.375000 -0.500000 -0.375000 +v 0.375000 -0.500000 0.375000 +v -0.375000 -0.500000 0.375000 +v -0.125000 -0.468750 0.125000 +v 0.125000 -0.468750 0.125000 +v -0.125000 -0.406250 0.125000 +v 0.375000 -0.375000 -0.375000 +v -0.375000 -0.500000 -0.375000 +v 0.500000 -0.500000 0.062500 +v 0.500000 -0.375000 -0.062500 +v -0.500000 -0.500000 -0.062500 +v -0.500000 -0.375000 0.062500 +v 0.500000 -0.500000 -0.062500 +v 0.500000 -0.375000 0.062500 +v -0.500000 -0.500000 0.062500 +v -0.500000 -0.375000 -0.062500 +v -0.375000 -0.500000 -0.062500 +v -0.312500 -0.468750 -0.125000 +v -0.125000 -0.468750 -0.312500 +v -0.062500 -0.500000 -0.375000 +v 0.375000 -0.375000 -0.062500 +v 0.312500 -0.406250 -0.125000 +v 0.125000 -0.406250 -0.312500 +v 0.062500 -0.375000 -0.375000 +v -0.375000 -0.375000 -0.062500 +v -0.312500 -0.406250 -0.125000 +v -0.125000 -0.406250 0.312500 +v -0.062500 -0.375000 0.375000 +v -0.375000 -0.375000 0.062500 +v -0.312500 -0.406250 0.125000 +v 0.125000 -0.406250 0.312500 +v 0.062500 -0.375000 0.375000 +v 0.375000 -0.500000 -0.062500 +v 0.312500 -0.468750 -0.125000 +v 0.125000 -0.468750 0.312500 +v 0.062500 -0.500000 0.375000 +v 0.375000 -0.500000 0.062500 +v 0.312500 -0.468750 0.125000 +v -0.125000 -0.468750 0.312500 +v -0.062500 -0.500000 0.375000 +v -0.375000 -0.500000 0.062500 +v -0.312500 -0.468750 0.125000 +v 0.125000 -0.468750 -0.312500 +v 0.062500 -0.500000 -0.375000 +v 0.375000 -0.375000 0.062500 +v 0.312500 -0.406250 0.125000 +v -0.125000 -0.406250 -0.312500 +v -0.062500 -0.375000 -0.375000 +v -0.312500 -0.468750 -0.312500 +v 0.312500 -0.406250 -0.312500 +v -0.062500 -0.500000 0.062500 +v -0.312500 -0.468750 0.312500 +v 0.312500 -0.468750 -0.312500 +v 0.062500 -0.500000 -0.062500 +v 0.062500 -0.375000 0.062500 +v 0.312500 -0.406250 0.312500 +v -0.312500 -0.406250 -0.312500 +v -0.062500 -0.375000 -0.062500 +v 0.062500 -0.375000 -0.062500 +v -0.062500 -0.500000 -0.062500 +v -0.312500 -0.406250 0.312500 +v 0.312500 -0.468750 0.312500 +v 0.062500 -0.500000 0.062500 +v -0.062500 -0.375000 0.062500 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.437500 0.125000 +vt 0.562500 0.125000 +vt 0.875000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.562500 0.437500 +vt 0.875000 0.437500 +vt 0.812500 0.375000 +vt 0.625000 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.187500 +vt 0.437500 0.125000 +vt 0.437500 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.875000 0.437500 +vt 0.125000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.125000 0.437500 +vt 0.437500 0.437500 +vt 0.375000 0.375000 +vt 0.187500 0.375000 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.875000 0.875000 +vt 0.625000 0.625000 +vt 0.562500 0.562500 +vt 0.562500 0.875000 +vt 0.625000 0.812500 +vt 1.000000 0.562500 +vt 1.000000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.562500 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.812500 0.187500 +vt 0.875000 0.125000 +vt 0.375000 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.375000 +vt 0.562500 0.875000 +vt 0.562500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.375000 0.625000 +vt 0.187500 0.625000 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.625000 0.187500 +vt 0.562500 0.125000 +vt 0.187500 0.625000 +vt 0.125000 0.875000 +vt 0.187500 0.812500 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 0.000000 0.875000 +vt 0.812500 0.187500 +vt 0.625000 0.187500 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.125000 0.875000 +vt 1.000000 0.875000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.875000 +vt 1.000000 0.437500 +vt 1.000000 0.125000 +vt 0.000000 0.562500 +vt 1.000000 0.562500 +vt 0.000000 1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.875000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.187500 0.812500 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 -0.8944 -0.4472 +vn 0.4472 0.8944 0.0000 +vn 0.0000 0.8944 -0.4472 +vn 0.0000 1.0000 0.0000 +vn 0.4472 -0.8944 0.0000 +vn -0.4472 -0.8944 0.0000 +vn 0.0000 -0.8944 0.4472 +vn -0.4472 0.8944 0.0000 +vn 0.0000 0.8944 0.4472 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +g Cube.001_Cube.001_top-bottom +s off +f 1/1/1 9/2/1 25/3/1 68/4/1 44/5/1 32/6/1 15/7/1 5/8/1 +f 84/9/2 41/10/2 42/11/2 17/12/2 +f 18/13/3 47/14/3 48/15/3 83/16/3 +f 82/17/4 19/18/4 50/19/4 49/20/4 +f 45/21/5 34/22/5 14/23/5 31/24/5 +f 57/25/2 78/26/2 24/27/2 58/28/2 +f 65/29/6 66/30/6 76/31/6 27/32/6 +f 28/33/7 75/34/7 64/35/7 63/36/7 +f 65/29/1 39/37/1 35/38/1 41/10/1 84/9/1 78/26/1 57/25/1 37/39/1 33/40/1 61/41/1 87/42/1 75/34/1 +f 81/43/3 20/44/3 49/20/3 50/19/3 +f 67/45/8 68/4/8 25/3/8 77/46/8 +f 45/21/9 31/24/9 74/47/9 46/48/9 +f 47/14/10 74/47/10 31/24/10 48/15/10 +f 52/49/9 88/50/9 30/51/9 51/52/9 +f 30/51/10 88/50/10 53/53/10 54/54/10 +f 23/55/10 70/56/10 69/57/10 79/58/10 +f 87/42/6 29/59/6 59/60/6 60/61/6 +f 75/34/8 28/33/8 66/30/8 65/29/8 +f 81/43/10 71/62/10 72/63/10 20/44/10 +f 62/64/7 61/41/7 26/65/7 86/66/7 +f 29/59/8 87/42/8 61/41/8 62/64/8 +f 54/54/3 53/53/3 21/67/3 85/68/3 +f 60/61/1 64/35/1 75/34/1 87/42/1 +f 52/49/4 51/52/4 85/68/4 21/67/4 +f 33/40/1 13/69/1 26/65/1 61/41/1 +f 26/65/2 60/61/2 59/60/2 86/66/2 +f 73/70/8 32/6/8 44/5/8 43/71/8 +f 77/46/7 25/3/7 57/25/7 58/28/7 +f 55/72/3 23/55/3 79/58/3 56/73/3 +f 22/74/5 56/73/5 52/49/5 21/67/5 16/75/5 8/76/5 4/77/5 10/78/5 +f 40/79/5 49/20/5 20/44/5 12/80/5 +f 10/78/5 38/81/5 69/57/5 22/74/5 +f 48/15/5 72/63/5 82/17/5 83/16/5 +f 83/16/5 82/17/5 49/20/5 40/79/5 36/82/5 53/53/5 88/50/5 79/58/5 69/57/5 38/81/5 34/22/5 45/21/5 +f 17/12/7 43/71/7 44/5/7 84/9/7 +f 88/50/5 52/49/5 56/73/5 79/58/5 +f 15/7/1 32/6/1 41/10/1 35/38/1 +f 83/16/4 45/21/4 46/48/4 18/13/4 +f 64/35/2 27/32/2 76/31/2 63/36/2 +f 26/65/1 13/69/1 3/83/1 7/84/1 11/85/1 27/32/1 64/35/1 60/61/1 +f 44/5/1 68/4/1 78/26/1 84/9/1 +f 57/25/1 25/3/1 9/2/1 37/39/1 +f 39/37/1 65/29/1 27/32/1 11/85/1 +f 6/86/5 12/80/5 20/44/5 72/63/5 48/15/5 31/24/5 14/23/5 2/87/5 +f 53/53/5 36/82/5 16/75/5 21/67/5 +f 56/73/4 22/74/4 80/88/4 55/72/4 +f 72/63/9 71/62/9 19/18/9 82/17/9 +f 22/74/9 69/57/9 70/56/9 80/88/9 +f 41/10/6 32/6/6 73/70/6 42/11/6 +f 68/4/6 67/45/6 24/27/6 78/26/6 +g Cube.001_Cube.001_sides +f 8/89/11 7/90/11 3/91/11 4/92/11 +f 6/93/12 5/8/12 15/94/12 35/95/12 39/96/12 11/97/12 7/90/12 8/89/12 16/98/12 36/99/12 40/100/12 12/80/12 +f 3/91/13 13/101/13 33/102/13 37/103/13 9/104/13 1/1/13 2/105/13 14/23/13 34/106/13 38/107/13 10/108/13 4/92/13 +f 1/1/14 5/8/14 6/93/14 2/105/14 +f 70/109/12 62/110/12 86/111/12 80/112/12 +f 23/113/11 29/114/11 62/110/11 70/109/11 +f 55/115/13 59/116/13 29/114/13 23/113/13 +f 59/116/14 55/115/14 80/112/14 86/111/14 +f 76/117/14 85/118/14 51/119/14 63/120/14 +f 51/119/12 30/121/12 28/122/12 63/120/12 +f 66/123/13 54/124/13 85/118/13 76/117/13 +f 28/122/11 30/121/11 54/124/11 66/123/11 +f 43/125/12 17/126/12 19/127/12 71/128/12 +f 42/129/14 50/130/14 19/127/14 17/126/14 +f 73/131/13 81/132/13 50/130/13 42/129/13 +f 73/131/11 43/125/11 71/128/11 81/132/11 +f 74/133/12 77/134/12 58/135/12 46/136/12 +f 46/136/14 58/135/14 24/137/14 18/138/14 +f 47/139/13 18/138/13 24/137/13 67/140/13 +f 74/133/11 47/139/11 67/140/11 77/134/11 diff --git a/homedecor_3d_extras/models/homedecor_3d_trapdoor_open.obj b/homedecor_3d_extras/models/homedecor_3d_trapdoor_open.obj new file mode 100644 index 0000000..85274b5 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_trapdoor_open.obj @@ -0,0 +1,318 @@ +# Blender v2.79 (sub 0) OBJ File: 'default trapdoor wood 3d.blend' +# www.blender.org +o Cube.001 +v 0.500000 0.500000 0.375000 +v 0.500000 0.500000 0.500000 +v 0.500000 -0.500000 0.375000 +v 0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.375000 +v -0.500000 0.500000 0.500000 +v -0.500000 -0.500000 0.375000 +v -0.500000 -0.500000 0.500000 +v 0.500000 0.375000 0.375000 +v 0.500000 -0.375000 0.500000 +v -0.500000 -0.375000 0.375000 +v -0.500000 0.375000 0.500000 +v 0.500000 -0.375000 0.375000 +v 0.500000 0.375000 0.500000 +v -0.500000 0.375000 0.375000 +v -0.500000 -0.375000 0.500000 +v -0.125000 0.125000 0.406250 +v 0.125000 0.125000 0.468750 +v -0.125000 0.125000 0.468750 +v -0.375000 0.375000 0.500000 +v -0.375000 -0.375000 0.500000 +v 0.375000 -0.375000 0.500000 +v 0.125000 -0.125000 0.468750 +v 0.125000 0.125000 0.406250 +v 0.375000 0.375000 0.375000 +v 0.375000 -0.375000 0.375000 +v -0.375000 -0.375000 0.375000 +v -0.125000 -0.125000 0.406250 +v 0.125000 -0.125000 0.406250 +v -0.125000 -0.125000 0.468750 +v 0.375000 0.375000 0.500000 +v -0.375000 0.375000 0.375000 +v 0.500000 -0.062500 0.375000 +v 0.500000 0.062500 0.500000 +v -0.500000 0.062500 0.375000 +v -0.500000 -0.062500 0.500000 +v 0.500000 0.062500 0.375000 +v 0.500000 -0.062500 0.500000 +v -0.500000 -0.062500 0.375000 +v -0.500000 0.062500 0.500000 +v -0.375000 0.062500 0.375000 +v -0.312500 0.125000 0.406250 +v -0.125000 0.312500 0.406250 +v -0.062500 0.375000 0.375000 +v 0.375000 0.062500 0.500000 +v 0.312500 0.125000 0.468750 +v 0.125000 0.312500 0.468750 +v 0.062500 0.375000 0.500000 +v -0.375000 0.062500 0.500000 +v -0.312500 0.125000 0.468750 +v -0.125000 -0.312500 0.468750 +v -0.062500 -0.375000 0.500000 +v -0.375000 -0.062500 0.500000 +v -0.312500 -0.125000 0.468750 +v 0.125000 -0.312500 0.468750 +v 0.062500 -0.375000 0.500000 +v 0.375000 0.062500 0.375000 +v 0.312500 0.125000 0.406250 +v 0.125000 -0.312500 0.406250 +v 0.062500 -0.375000 0.375000 +v 0.375000 -0.062500 0.375000 +v 0.312500 -0.125000 0.406250 +v -0.125000 -0.312500 0.406250 +v -0.062500 -0.375000 0.375000 +v -0.375000 -0.062500 0.375000 +v -0.312500 -0.125000 0.406250 +v 0.125000 0.312500 0.406250 +v 0.062500 0.375000 0.375000 +v 0.375000 -0.062500 0.500000 +v 0.312500 -0.125000 0.468750 +v -0.125000 0.312500 0.468750 +v -0.062500 0.375000 0.500000 +v -0.312500 0.312500 0.406250 +v 0.312500 0.312500 0.468750 +v -0.062500 -0.062500 0.375000 +v -0.312500 -0.312500 0.406250 +v 0.312500 0.312500 0.406250 +v 0.062500 0.062500 0.375000 +v 0.062500 -0.062500 0.500000 +v 0.312500 -0.312500 0.468750 +v -0.312500 0.312500 0.468750 +v -0.062500 0.062500 0.500000 +v 0.062500 0.062500 0.500000 +v -0.062500 0.062500 0.375000 +v -0.312500 -0.312500 0.468750 +v 0.312500 -0.312500 0.406250 +v 0.062500 -0.062500 0.375000 +v -0.062500 -0.062500 0.500000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.437500 0.125000 +vt 0.562500 0.125000 +vt 0.875000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.562500 0.437500 +vt 0.875000 0.437500 +vt 0.812500 0.375000 +vt 0.625000 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.187500 +vt 0.437500 0.125000 +vt 0.437500 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.875000 0.437500 +vt 0.125000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.125000 0.437500 +vt 0.437500 0.437500 +vt 0.375000 0.375000 +vt 0.187500 0.375000 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.875000 0.875000 +vt 0.625000 0.625000 +vt 0.562500 0.562500 +vt 0.562500 0.875000 +vt 0.625000 0.812500 +vt 1.000000 0.562500 +vt 1.000000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.562500 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.812500 0.187500 +vt 0.875000 0.125000 +vt 0.375000 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.375000 +vt 0.562500 0.875000 +vt 0.562500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.375000 0.625000 +vt 0.187500 0.625000 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.625000 0.187500 +vt 0.562500 0.125000 +vt 0.187500 0.625000 +vt 0.125000 0.875000 +vt 0.187500 0.812500 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 0.000000 0.875000 +vt 0.812500 0.187500 +vt 0.625000 0.187500 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.125000 0.875000 +vt 1.000000 0.875000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.875000 +vt 1.000000 0.437500 +vt 1.000000 0.125000 +vt 0.000000 0.562500 +vt 1.000000 0.562500 +vt 0.000000 1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.875000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.187500 0.812500 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vn 0.0000 -0.0000 -1.0000 +vn 0.0000 0.4472 -0.8944 +vn 0.4472 0.0000 0.8944 +vn 0.0000 0.4472 0.8944 +vn 0.0000 0.0000 1.0000 +vn 0.4472 -0.0000 -0.8944 +vn -0.4472 -0.0000 -0.8944 +vn 0.0000 -0.4472 -0.8944 +vn -0.4472 0.0000 0.8944 +vn 0.0000 -0.4472 0.8944 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +g Cube.001_Cube.001_top-bottom +s off +f 1/1/1 9/2/1 25/3/1 68/4/1 44/5/1 32/6/1 15/7/1 5/8/1 +f 84/9/2 41/10/2 42/11/2 17/12/2 +f 18/13/3 47/14/3 48/15/3 83/16/3 +f 82/17/4 19/18/4 50/19/4 49/20/4 +f 45/21/5 34/22/5 14/23/5 31/24/5 +f 57/25/2 78/26/2 24/27/2 58/28/2 +f 65/29/6 66/30/6 76/31/6 27/32/6 +f 28/33/7 75/34/7 64/35/7 63/36/7 +f 65/29/1 39/37/1 35/38/1 41/10/1 84/9/1 78/26/1 57/25/1 37/39/1 33/40/1 61/41/1 87/42/1 75/34/1 +f 81/43/3 20/44/3 49/20/3 50/19/3 +f 67/45/8 68/4/8 25/3/8 77/46/8 +f 45/21/9 31/24/9 74/47/9 46/48/9 +f 47/14/10 74/47/10 31/24/10 48/15/10 +f 52/49/9 88/50/9 30/51/9 51/52/9 +f 30/51/10 88/50/10 53/53/10 54/54/10 +f 23/55/10 70/56/10 69/57/10 79/58/10 +f 87/42/6 29/59/6 59/60/6 60/61/6 +f 75/34/8 28/33/8 66/30/8 65/29/8 +f 81/43/10 71/62/10 72/63/10 20/44/10 +f 62/64/7 61/41/7 26/65/7 86/66/7 +f 29/59/8 87/42/8 61/41/8 62/64/8 +f 54/54/3 53/53/3 21/67/3 85/68/3 +f 60/61/1 64/35/1 75/34/1 87/42/1 +f 52/49/4 51/52/4 85/68/4 21/67/4 +f 33/40/1 13/69/1 26/65/1 61/41/1 +f 26/65/2 60/61/2 59/60/2 86/66/2 +f 73/70/8 32/6/8 44/5/8 43/71/8 +f 77/46/7 25/3/7 57/25/7 58/28/7 +f 55/72/3 23/55/3 79/58/3 56/73/3 +f 22/74/5 56/73/5 52/49/5 21/67/5 16/75/5 8/76/5 4/77/5 10/78/5 +f 40/79/5 49/20/5 20/44/5 12/80/5 +f 10/78/5 38/81/5 69/57/5 22/74/5 +f 48/15/5 72/63/5 82/17/5 83/16/5 +f 83/16/5 82/17/5 49/20/5 40/79/5 36/82/5 53/53/5 88/50/5 79/58/5 69/57/5 38/81/5 34/22/5 45/21/5 +f 17/12/7 43/71/7 44/5/7 84/9/7 +f 88/50/5 52/49/5 56/73/5 79/58/5 +f 15/7/1 32/6/1 41/10/1 35/38/1 +f 83/16/4 45/21/4 46/48/4 18/13/4 +f 64/35/2 27/32/2 76/31/2 63/36/2 +f 26/65/1 13/69/1 3/83/1 7/84/1 11/85/1 27/32/1 64/35/1 60/61/1 +f 44/5/1 68/4/1 78/26/1 84/9/1 +f 57/25/1 25/3/1 9/2/1 37/39/1 +f 39/37/1 65/29/1 27/32/1 11/85/1 +f 6/86/5 12/80/5 20/44/5 72/63/5 48/15/5 31/24/5 14/23/5 2/87/5 +f 53/53/5 36/82/5 16/75/5 21/67/5 +f 56/73/4 22/74/4 80/88/4 55/72/4 +f 72/63/9 71/62/9 19/18/9 82/17/9 +f 22/74/9 69/57/9 70/56/9 80/88/9 +f 41/10/6 32/6/6 73/70/6 42/11/6 +f 68/4/6 67/45/6 24/27/6 78/26/6 +g Cube.001_Cube.001_sides +f 8/89/11 7/90/11 3/91/11 4/92/11 +f 6/93/12 5/8/12 15/94/12 35/95/12 39/96/12 11/97/12 7/90/12 8/89/12 16/98/12 36/99/12 40/100/12 12/80/12 +f 3/91/13 13/101/13 33/102/13 37/103/13 9/104/13 1/1/13 2/105/13 14/23/13 34/106/13 38/107/13 10/108/13 4/92/13 +f 1/1/14 5/8/14 6/93/14 2/105/14 +f 70/109/12 62/110/12 86/111/12 80/112/12 +f 23/113/11 29/114/11 62/110/11 70/109/11 +f 55/115/13 59/116/13 29/114/13 23/113/13 +f 59/116/14 55/115/14 80/112/14 86/111/14 +f 76/117/14 85/118/14 51/119/14 63/120/14 +f 51/119/12 30/121/12 28/122/12 63/120/12 +f 66/123/13 54/124/13 85/118/13 76/117/13 +f 28/122/11 30/121/11 54/124/11 66/123/11 +f 43/125/12 17/126/12 19/127/12 71/128/12 +f 42/129/14 50/130/14 19/127/14 17/126/14 +f 73/131/13 81/132/13 50/130/13 42/129/13 +f 73/131/11 43/125/11 71/128/11 81/132/11 +f 74/133/12 77/134/12 58/135/12 46/136/12 +f 46/136/14 58/135/14 24/137/14 18/138/14 +f 47/139/13 18/138/13 24/137/13 67/140/13 +f 74/133/11 47/139/11 67/140/11 77/134/11 diff --git a/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel.obj b/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel.obj new file mode 100644 index 0000000..5051676 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel.obj @@ -0,0 +1,392 @@ +# Blender v2.79 (sub 0) OBJ File: 'default trapdoor steel 3d.blend' +# www.blender.org +o Cube.001 +v 0.500000 -0.500000 -0.500000 +v 0.500000 -0.375000 -0.500000 +v 0.500000 -0.500000 0.500000 +v 0.500000 -0.375000 0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 -0.375000 -0.500000 +v -0.500000 -0.500000 0.500000 +v -0.500000 -0.375000 0.500000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 -0.375000 0.375000 +v -0.500000 -0.500000 0.375000 +v -0.500000 -0.375000 -0.375000 +v 0.500000 -0.500000 0.375000 +v 0.500000 -0.375000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v -0.500000 -0.375000 0.375000 +v -0.125000 -0.453125 -0.125000 +v 0.125000 -0.421875 -0.125000 +v -0.125000 -0.421875 -0.125000 +v -0.375000 -0.375000 -0.375000 +v -0.375000 -0.375000 0.375000 +v 0.375000 -0.375000 0.375000 +v 0.125000 -0.421875 0.125000 +v 0.125000 -0.453125 -0.125000 +v 0.375000 -0.500000 -0.375000 +v 0.375000 -0.500000 0.375000 +v -0.375000 -0.500000 0.375000 +v -0.125000 -0.453125 0.125000 +v 0.125000 -0.453125 0.125000 +v -0.125000 -0.421875 0.125000 +v 0.375000 -0.375000 -0.375000 +v -0.375000 -0.500000 -0.375000 +v 0.500000 -0.500000 0.062500 +v 0.500000 -0.375000 -0.062500 +v -0.500000 -0.500000 -0.062500 +v -0.500000 -0.375000 0.062500 +v 0.500000 -0.500000 -0.062500 +v 0.500000 -0.375000 0.062500 +v -0.500000 -0.500000 0.062500 +v -0.500000 -0.375000 -0.062500 +v -0.375000 -0.500000 -0.062500 +v -0.312500 -0.453125 -0.125000 +v -0.125000 -0.453125 -0.312500 +v -0.062500 -0.500000 -0.375000 +v 0.375000 -0.375000 -0.062500 +v 0.312500 -0.421875 -0.125000 +v 0.125000 -0.421875 -0.312500 +v 0.062500 -0.375000 -0.375000 +v -0.375000 -0.375000 -0.062500 +v -0.312500 -0.421875 -0.125000 +v -0.125000 -0.421875 0.312500 +v -0.062500 -0.375000 0.375000 +v -0.375000 -0.375000 0.062500 +v -0.312500 -0.421875 0.125000 +v 0.125000 -0.421875 0.312500 +v 0.062500 -0.375000 0.375000 +v 0.375000 -0.500000 -0.062500 +v 0.312500 -0.453125 -0.125000 +v 0.125000 -0.453125 0.312500 +v 0.062500 -0.500000 0.375000 +v 0.375000 -0.500000 0.062500 +v 0.312500 -0.453125 0.125000 +v -0.125000 -0.453125 0.312500 +v -0.062500 -0.500000 0.375000 +v -0.375000 -0.500000 0.062500 +v -0.312500 -0.453125 0.125000 +v 0.125000 -0.453125 -0.312500 +v 0.062500 -0.500000 -0.375000 +v 0.375000 -0.375000 0.062500 +v 0.312500 -0.421875 0.125000 +v -0.125000 -0.421875 -0.312500 +v -0.062500 -0.375000 -0.375000 +v -0.312500 -0.453125 -0.312500 +v 0.312500 -0.421875 -0.312500 +v -0.062500 -0.500000 0.062500 +v -0.312500 -0.453125 0.312500 +v 0.312500 -0.453125 -0.312500 +v 0.062500 -0.500000 -0.062500 +v 0.062500 -0.375000 0.062500 +v 0.312500 -0.421875 0.312500 +v -0.312500 -0.421875 -0.312500 +v -0.062500 -0.375000 -0.062500 +v 0.062500 -0.375000 -0.062500 +v -0.062500 -0.500000 -0.062500 +v -0.312500 -0.421875 0.312500 +v 0.312500 -0.453125 0.312500 +v 0.062500 -0.500000 0.062500 +v -0.062500 -0.375000 0.062500 +v -0.125000 -0.437500 -0.125000 +v 0.125000 -0.437500 -0.125000 +v -0.125000 -0.437500 0.125000 +v 0.125000 -0.437500 0.125000 +v -0.312500 -0.437500 -0.125000 +v -0.125000 -0.437500 -0.312500 +v 0.312500 -0.437500 -0.125000 +v 0.125000 -0.437500 0.312500 +v 0.312500 -0.437500 0.125000 +v -0.125000 -0.437500 0.312500 +v -0.312500 -0.437500 0.125000 +v 0.125000 -0.437500 -0.312500 +v -0.312500 -0.437500 -0.312500 +v -0.312500 -0.437500 0.312500 +v 0.312500 -0.437500 -0.312500 +v 0.312500 -0.437500 0.312500 +v 0.125000 -0.438500 -0.125000 +v -0.125000 -0.438500 -0.125000 +v 0.125000 -0.438500 0.125000 +v -0.125000 -0.438500 0.125000 +v 0.312500 -0.438500 -0.125000 +v 0.125000 -0.438500 -0.312500 +v -0.312500 -0.438500 -0.125000 +v -0.125000 -0.438500 0.312500 +v -0.312500 -0.438500 0.125000 +v 0.125000 -0.438500 0.312500 +v 0.312500 -0.438500 0.125000 +v -0.125000 -0.438500 -0.312500 +v 0.312500 -0.438500 -0.312500 +v 0.312500 -0.438500 0.312500 +v -0.312500 -0.438500 -0.312500 +v -0.312500 -0.438500 0.312500 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 0.875000 0.125000 +vt 0.562500 0.125000 +vt 0.437500 0.125000 +vt 0.125000 0.125000 +vt -0.000000 0.125000 +vt -0.000000 0.000000 +vt 0.437500 0.437500 +vt 0.125000 0.437500 +vt 0.187500 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.187500 +vt 0.437500 0.125000 +vt 0.437500 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.875000 0.437500 +vt 0.125000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.875000 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.125000 0.562500 +vt 0.187500 0.625000 +vt 0.187500 0.812500 +vt 0.125000 0.875000 +vt 0.375000 0.625000 +vt 0.437500 0.562500 +vt 0.437500 0.875000 +vt 0.375000 0.812500 +vt -0.000000 0.562500 +vt -0.000000 0.437500 +vt 1.000000 0.437500 +vt 1.000000 0.562500 +vt 0.875000 0.562500 +vt 0.562500 0.562500 +vt 0.812500 0.187500 +vt 0.875000 0.125000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.375000 +vt 0.562500 0.875000 +vt 0.562500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.375000 0.625000 +vt 0.187500 0.625000 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.562500 0.875000 +vt 0.625000 0.187500 +vt 0.562500 0.125000 +vt 0.812500 0.625000 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 1.000000 0.875000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.125000 0.875000 +vt 1.000000 0.875000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.875000 +vt 1.000000 0.437500 +vt 1.000000 0.125000 +vt 0.000000 0.562500 +vt 1.000000 0.562500 +vt 1.000000 1.000000 +vt -0.000000 1.000000 +vt -0.000000 0.875000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.187500 0.812500 +vt 0.625000 0.375000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.812500 0.375000 +vt 0.625000 0.625000 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.625000 0.812500 +vt 0.187500 0.625000 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.187500 0.812500 +vt 0.187500 0.375000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.375000 0.375000 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.187500 0.812500 +vt 0.187500 0.625000 +vt 0.375000 0.375000 +vt 0.187500 0.375000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.812500 0.375000 +vt 0.625000 0.375000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.625000 0.812500 +vt 0.625000 0.625000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 -0.8000 -0.6000 +vn 0.6000 0.8000 0.0000 +vn 0.0000 0.8000 -0.6000 +vn 0.0000 1.0000 0.0000 +vn 0.6000 -0.8000 0.0000 +vn -0.6000 -0.8000 0.0000 +vn 0.0000 -0.8000 0.6000 +vn -0.6000 0.8000 0.0000 +vn 0.0000 0.8000 0.6000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +g Cube.001_Cube.001_top-bottom +s off +f 1/1/1 9/2/1 25/3/1 68/4/1 44/5/1 32/6/1 15/7/1 5/8/1 +f 84/9/2 41/10/2 42/11/2 17/12/2 +f 18/13/3 47/14/3 48/15/3 83/16/3 +f 82/17/4 19/18/4 50/19/4 49/20/4 +f 45/21/5 34/22/5 14/23/5 31/24/5 +f 57/25/2 78/26/2 24/27/2 58/28/2 +f 65/29/6 66/30/6 76/31/6 27/32/6 +f 28/33/7 75/34/7 64/35/7 63/36/7 +f 65/29/1 39/37/1 35/38/1 41/10/1 84/9/1 78/26/1 57/25/1 37/39/1 33/40/1 61/41/1 87/42/1 75/34/1 +f 81/43/3 20/44/3 49/20/3 50/19/3 +f 67/45/8 68/4/8 25/3/8 77/46/8 +f 45/21/9 31/24/9 74/47/9 46/48/9 +f 47/14/10 74/47/10 31/24/10 48/15/10 +f 52/49/9 88/50/9 30/51/9 51/52/9 +f 30/51/10 88/50/10 53/53/10 54/54/10 +f 23/55/10 70/56/10 69/57/10 79/58/10 +f 87/42/6 29/59/6 59/60/6 60/61/6 +f 75/34/8 28/33/8 66/30/8 65/29/8 +f 81/43/10 71/62/10 72/63/10 20/44/10 +f 62/64/7 61/41/7 26/65/7 86/66/7 +f 29/59/8 87/42/8 61/41/8 62/64/8 +f 54/54/3 53/53/3 21/67/3 85/68/3 +f 60/61/1 64/35/1 75/34/1 87/42/1 +f 52/49/4 51/52/4 85/68/4 21/67/4 +f 33/40/1 13/69/1 26/65/1 61/41/1 +f 26/65/2 60/61/2 59/60/2 86/66/2 +f 73/70/8 32/6/8 44/5/8 43/71/8 +f 77/46/7 25/3/7 57/25/7 58/28/7 +f 55/72/3 23/55/3 79/58/3 56/73/3 +f 22/74/5 56/73/5 52/49/5 21/67/5 16/75/5 8/76/5 4/77/5 10/78/5 +f 40/79/5 49/20/5 20/44/5 12/80/5 +f 10/78/5 38/81/5 69/57/5 22/74/5 +f 48/15/5 72/63/5 82/17/5 83/16/5 +f 83/16/5 82/17/5 49/20/5 40/79/5 36/82/5 53/53/5 88/50/5 79/58/5 69/57/5 38/81/5 34/22/5 45/21/5 +f 17/12/7 43/71/7 44/5/7 84/9/7 +f 88/50/5 52/49/5 56/73/5 79/58/5 +f 15/7/1 32/6/1 41/10/1 35/38/1 +f 83/16/4 45/21/4 46/48/4 18/13/4 +f 64/35/2 27/32/2 76/31/2 63/36/2 +f 26/65/1 13/69/1 3/83/1 7/84/1 11/85/1 27/32/1 64/35/1 60/61/1 +f 44/5/1 68/4/1 78/26/1 84/9/1 +f 57/25/1 25/3/1 9/2/1 37/39/1 +f 39/37/1 65/29/1 27/32/1 11/85/1 +f 6/86/5 12/80/5 20/44/5 72/63/5 48/15/5 31/24/5 14/23/5 2/87/5 +f 53/53/5 36/82/5 16/75/5 21/67/5 +f 56/73/4 22/74/4 80/88/4 55/72/4 +f 72/63/9 71/62/9 19/18/9 82/17/9 +f 22/74/9 69/57/9 70/56/9 80/88/9 +f 41/10/6 32/6/6 73/70/6 42/11/6 +f 68/4/6 67/45/6 24/27/6 78/26/6 +f 89/89/5 94/90/5 101/91/5 93/92/5 +f 91/93/5 99/94/5 102/95/5 98/96/5 +f 97/97/5 92/98/5 96/99/5 104/100/5 +f 95/101/5 103/102/5 100/103/5 90/104/5 +f 105/105/1 110/106/1 117/107/1 109/108/1 +f 107/109/1 115/110/1 118/111/1 114/112/1 +f 113/113/1 108/114/1 112/115/1 120/116/1 +f 111/117/1 119/118/1 116/119/1 106/120/1 +g Cube.001_Cube.001_sides +f 8/121/11 7/122/11 3/123/11 4/124/11 +f 6/125/12 5/126/12 15/127/12 35/128/12 39/129/12 11/130/12 7/122/12 8/121/12 16/131/12 36/132/12 40/133/12 12/80/12 +f 3/123/13 13/134/13 33/135/13 37/136/13 9/137/13 1/138/13 2/139/13 14/23/13 34/140/13 38/141/13 10/142/13 4/124/13 +f 1/138/14 5/126/14 6/125/14 2/139/14 +f 70/143/12 62/144/12 86/145/12 80/146/12 +f 23/147/11 29/148/11 62/144/11 70/143/11 +f 55/149/13 59/150/13 29/148/13 23/147/13 +f 59/150/14 55/149/14 80/146/14 86/145/14 +f 76/151/14 85/152/14 51/153/14 63/154/14 +f 51/153/12 30/155/12 28/156/12 63/154/12 +f 66/157/13 54/158/13 85/152/13 76/151/13 +f 28/156/11 30/155/11 54/158/11 66/157/11 +f 43/159/12 17/160/12 19/161/12 71/162/12 +f 42/163/14 50/164/14 19/161/14 17/160/14 +f 73/165/13 81/166/13 50/164/13 42/163/13 +f 73/165/11 43/159/11 71/162/11 81/166/11 +f 74/167/12 77/168/12 58/169/12 46/170/12 +f 46/170/14 58/169/14 24/171/14 18/172/14 +f 47/173/13 18/172/13 24/171/13 67/174/13 +f 74/167/11 47/173/11 67/174/11 77/168/11 diff --git a/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel_open.obj b/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel_open.obj new file mode 100644 index 0000000..ffce970 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_3d_trapdoor_steel_open.obj @@ -0,0 +1,392 @@ +# Blender v2.79 (sub 0) OBJ File: 'default trapdoor steel 3d.blend' +# www.blender.org +o Cube.001 +v 0.500000 0.500000 0.375000 +v 0.500000 0.500000 0.500000 +v 0.500000 -0.500000 0.375000 +v 0.500000 -0.500000 0.500000 +v -0.500000 0.500000 0.375000 +v -0.500000 0.500000 0.500000 +v -0.500000 -0.500000 0.375000 +v -0.500000 -0.500000 0.500000 +v 0.500000 0.375000 0.375000 +v 0.500000 -0.375000 0.500000 +v -0.500000 -0.375000 0.375000 +v -0.500000 0.375000 0.500000 +v 0.500000 -0.375000 0.375000 +v 0.500000 0.375000 0.500000 +v -0.500000 0.375000 0.375000 +v -0.500000 -0.375000 0.500000 +v -0.125000 0.125000 0.421875 +v 0.125000 0.125000 0.453125 +v -0.125000 0.125000 0.453125 +v -0.375000 0.375000 0.500000 +v -0.375000 -0.375000 0.500000 +v 0.375000 -0.375000 0.500000 +v 0.125000 -0.125000 0.453125 +v 0.125000 0.125000 0.421875 +v 0.375000 0.375000 0.375000 +v 0.375000 -0.375000 0.375000 +v -0.375000 -0.375000 0.375000 +v -0.125000 -0.125000 0.421875 +v 0.125000 -0.125000 0.421875 +v -0.125000 -0.125000 0.453125 +v 0.375000 0.375000 0.500000 +v -0.375000 0.375000 0.375000 +v 0.500000 -0.062500 0.375000 +v 0.500000 0.062500 0.500000 +v -0.500000 0.062500 0.375000 +v -0.500000 -0.062500 0.500000 +v 0.500000 0.062500 0.375000 +v 0.500000 -0.062500 0.500000 +v -0.500000 -0.062500 0.375000 +v -0.500000 0.062500 0.500000 +v -0.375000 0.062500 0.375000 +v -0.312500 0.125000 0.421875 +v -0.125000 0.312500 0.421875 +v -0.062500 0.375000 0.375000 +v 0.375000 0.062500 0.500000 +v 0.312500 0.125000 0.453125 +v 0.125000 0.312500 0.453125 +v 0.062500 0.375000 0.500000 +v -0.375000 0.062500 0.500000 +v -0.312500 0.125000 0.453125 +v -0.125000 -0.312500 0.453125 +v -0.062500 -0.375000 0.500000 +v -0.375000 -0.062500 0.500000 +v -0.312500 -0.125000 0.453125 +v 0.125000 -0.312500 0.453125 +v 0.062500 -0.375000 0.500000 +v 0.375000 0.062500 0.375000 +v 0.312500 0.125000 0.421875 +v 0.125000 -0.312500 0.421875 +v 0.062500 -0.375000 0.375000 +v 0.375000 -0.062500 0.375000 +v 0.312500 -0.125000 0.421875 +v -0.125000 -0.312500 0.421875 +v -0.062500 -0.375000 0.375000 +v -0.375000 -0.062500 0.375000 +v -0.312500 -0.125000 0.421875 +v 0.125000 0.312500 0.421875 +v 0.062500 0.375000 0.375000 +v 0.375000 -0.062500 0.500000 +v 0.312500 -0.125000 0.453125 +v -0.125000 0.312500 0.453125 +v -0.062500 0.375000 0.500000 +v -0.312500 0.312500 0.421875 +v 0.312500 0.312500 0.453125 +v -0.062500 -0.062500 0.375000 +v -0.312500 -0.312500 0.421875 +v 0.312500 0.312500 0.421875 +v 0.062500 0.062500 0.375000 +v 0.062500 -0.062500 0.500000 +v 0.312500 -0.312500 0.453125 +v -0.312500 0.312500 0.453125 +v -0.062500 0.062500 0.500000 +v 0.062500 0.062500 0.500000 +v -0.062500 0.062500 0.375000 +v -0.312500 -0.312500 0.453125 +v 0.312500 -0.312500 0.421875 +v 0.062500 -0.062500 0.375000 +v -0.062500 -0.062500 0.500000 +v -0.125000 0.125000 0.437500 +v 0.125000 0.125000 0.437500 +v -0.125000 -0.125000 0.437500 +v 0.125000 -0.125000 0.437500 +v -0.312500 0.125000 0.437500 +v -0.125000 0.312500 0.437500 +v 0.312500 0.125000 0.437500 +v 0.125000 -0.312500 0.437500 +v 0.312500 -0.125000 0.437500 +v -0.125000 -0.312500 0.437500 +v -0.312500 -0.125000 0.437500 +v 0.125000 0.312500 0.437500 +v -0.312500 0.312500 0.437500 +v -0.312500 -0.312500 0.437500 +v 0.312500 0.312500 0.437500 +v 0.312500 -0.312500 0.437500 +v 0.125000 0.125000 0.436500 +v -0.125000 0.125000 0.436500 +v 0.125000 -0.125000 0.436500 +v -0.125000 -0.125000 0.436500 +v 0.312500 0.125000 0.436500 +v 0.125000 0.312500 0.436500 +v -0.312500 0.125000 0.436500 +v -0.125000 -0.312500 0.436500 +v -0.312500 -0.125000 0.436500 +v 0.125000 -0.312500 0.436500 +v 0.312500 -0.125000 0.436500 +v -0.125000 0.312500 0.436500 +v 0.312500 0.312500 0.436500 +v 0.312500 -0.312500 0.436500 +v -0.312500 0.312500 0.436500 +v -0.312500 -0.312500 0.436500 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 0.875000 0.125000 +vt 0.562500 0.125000 +vt 0.437500 0.125000 +vt 0.125000 0.125000 +vt -0.000000 0.125000 +vt -0.000000 0.000000 +vt 0.437500 0.437500 +vt 0.125000 0.437500 +vt 0.187500 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.375000 +vt 0.375000 0.187500 +vt 0.437500 0.125000 +vt 0.437500 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.875000 0.437500 +vt 0.125000 0.437500 +vt 0.000000 0.437500 +vt 0.000000 0.125000 +vt 0.125000 0.125000 +vt 0.875000 0.437500 +vt 0.562500 0.437500 +vt 0.625000 0.375000 +vt 0.812500 0.375000 +vt 0.125000 0.562500 +vt 0.187500 0.625000 +vt 0.187500 0.812500 +vt 0.125000 0.875000 +vt 0.375000 0.625000 +vt 0.437500 0.562500 +vt 0.437500 0.875000 +vt 0.375000 0.812500 +vt -0.000000 0.562500 +vt -0.000000 0.437500 +vt 1.000000 0.437500 +vt 1.000000 0.562500 +vt 0.875000 0.562500 +vt 0.562500 0.562500 +vt 0.812500 0.187500 +vt 0.875000 0.125000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.187500 0.187500 +vt 0.187500 0.375000 +vt 0.562500 0.875000 +vt 0.562500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.875000 0.562500 +vt 0.812500 0.625000 +vt 0.375000 0.625000 +vt 0.187500 0.625000 +vt 0.125000 0.562500 +vt 0.437500 0.562500 +vt 0.625000 0.625000 +vt 0.625000 0.812500 +vt 0.562500 0.875000 +vt 0.625000 0.187500 +vt 0.562500 0.125000 +vt 0.812500 0.625000 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 0.875000 0.875000 +vt 0.812500 0.812500 +vt 1.000000 0.875000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.375000 0.812500 +vt 0.437500 0.875000 +vt 0.125000 0.875000 +vt 1.000000 0.875000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.875000 +vt 1.000000 0.437500 +vt 1.000000 0.125000 +vt 0.000000 0.562500 +vt 1.000000 0.562500 +vt 1.000000 1.000000 +vt -0.000000 1.000000 +vt -0.000000 0.875000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.187500 0.812500 +vt 0.625000 0.375000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.812500 0.375000 +vt 0.625000 0.625000 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.625000 0.812500 +vt 0.187500 0.625000 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.187500 0.812500 +vt 0.187500 0.375000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.375000 0.375000 +vt 0.375000 0.625000 +vt 0.375000 0.812500 +vt 0.187500 0.812500 +vt 0.187500 0.625000 +vt 0.375000 0.375000 +vt 0.187500 0.375000 +vt 0.187500 0.187500 +vt 0.375000 0.187500 +vt 0.812500 0.375000 +vt 0.625000 0.375000 +vt 0.625000 0.187500 +vt 0.812500 0.187500 +vt 0.812500 0.625000 +vt 0.812500 0.812500 +vt 0.625000 0.812500 +vt 0.625000 0.625000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 1.000000 0.125000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.000000 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.062500 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.625000 0.062500 +vt 0.625000 0.062500 +vt 0.625000 0.125000 +vt 0.625000 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.812500 0.062500 +vt 0.812500 0.125000 +vt 0.187500 0.125000 +vt 0.187500 0.062500 +vt 0.187500 0.062500 +vt 0.187500 0.125000 +vt 0.375000 0.062500 +vt 0.375000 0.125000 +vt 0.375000 0.125000 +vt 0.375000 0.062500 +vn 0.0000 -0.0000 -1.0000 +vn 0.0000 0.6000 -0.8000 +vn 0.6000 0.0000 0.8000 +vn 0.0000 0.6000 0.8000 +vn 0.0000 0.0000 1.0000 +vn 0.6000 -0.0000 -0.8000 +vn -0.6000 -0.0000 -0.8000 +vn 0.0000 -0.6000 -0.8000 +vn -0.6000 0.0000 0.8000 +vn 0.0000 -0.6000 0.8000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +g Cube.001_Cube.001_top-bottom +s off +f 1/1/1 9/2/1 25/3/1 68/4/1 44/5/1 32/6/1 15/7/1 5/8/1 +f 84/9/2 41/10/2 42/11/2 17/12/2 +f 18/13/3 47/14/3 48/15/3 83/16/3 +f 82/17/4 19/18/4 50/19/4 49/20/4 +f 45/21/5 34/22/5 14/23/5 31/24/5 +f 57/25/2 78/26/2 24/27/2 58/28/2 +f 65/29/6 66/30/6 76/31/6 27/32/6 +f 28/33/7 75/34/7 64/35/7 63/36/7 +f 65/29/1 39/37/1 35/38/1 41/10/1 84/9/1 78/26/1 57/25/1 37/39/1 33/40/1 61/41/1 87/42/1 75/34/1 +f 81/43/3 20/44/3 49/20/3 50/19/3 +f 67/45/8 68/4/8 25/3/8 77/46/8 +f 45/21/9 31/24/9 74/47/9 46/48/9 +f 47/14/10 74/47/10 31/24/10 48/15/10 +f 52/49/9 88/50/9 30/51/9 51/52/9 +f 30/51/10 88/50/10 53/53/10 54/54/10 +f 23/55/10 70/56/10 69/57/10 79/58/10 +f 87/42/6 29/59/6 59/60/6 60/61/6 +f 75/34/8 28/33/8 66/30/8 65/29/8 +f 81/43/10 71/62/10 72/63/10 20/44/10 +f 62/64/7 61/41/7 26/65/7 86/66/7 +f 29/59/8 87/42/8 61/41/8 62/64/8 +f 54/54/3 53/53/3 21/67/3 85/68/3 +f 60/61/1 64/35/1 75/34/1 87/42/1 +f 52/49/4 51/52/4 85/68/4 21/67/4 +f 33/40/1 13/69/1 26/65/1 61/41/1 +f 26/65/2 60/61/2 59/60/2 86/66/2 +f 73/70/8 32/6/8 44/5/8 43/71/8 +f 77/46/7 25/3/7 57/25/7 58/28/7 +f 55/72/3 23/55/3 79/58/3 56/73/3 +f 22/74/5 56/73/5 52/49/5 21/67/5 16/75/5 8/76/5 4/77/5 10/78/5 +f 40/79/5 49/20/5 20/44/5 12/80/5 +f 10/78/5 38/81/5 69/57/5 22/74/5 +f 48/15/5 72/63/5 82/17/5 83/16/5 +f 83/16/5 82/17/5 49/20/5 40/79/5 36/82/5 53/53/5 88/50/5 79/58/5 69/57/5 38/81/5 34/22/5 45/21/5 +f 17/12/7 43/71/7 44/5/7 84/9/7 +f 88/50/5 52/49/5 56/73/5 79/58/5 +f 15/7/1 32/6/1 41/10/1 35/38/1 +f 83/16/4 45/21/4 46/48/4 18/13/4 +f 64/35/2 27/32/2 76/31/2 63/36/2 +f 26/65/1 13/69/1 3/83/1 7/84/1 11/85/1 27/32/1 64/35/1 60/61/1 +f 44/5/1 68/4/1 78/26/1 84/9/1 +f 57/25/1 25/3/1 9/2/1 37/39/1 +f 39/37/1 65/29/1 27/32/1 11/85/1 +f 6/86/5 12/80/5 20/44/5 72/63/5 48/15/5 31/24/5 14/23/5 2/87/5 +f 53/53/5 36/82/5 16/75/5 21/67/5 +f 56/73/4 22/74/4 80/88/4 55/72/4 +f 72/63/9 71/62/9 19/18/9 82/17/9 +f 22/74/9 69/57/9 70/56/9 80/88/9 +f 41/10/6 32/6/6 73/70/6 42/11/6 +f 68/4/6 67/45/6 24/27/6 78/26/6 +f 89/89/5 94/90/5 101/91/5 93/92/5 +f 91/93/5 99/94/5 102/95/5 98/96/5 +f 97/97/5 92/98/5 96/99/5 104/100/5 +f 95/101/5 103/102/5 100/103/5 90/104/5 +f 105/105/1 110/106/1 117/107/1 109/108/1 +f 107/109/1 115/110/1 118/111/1 114/112/1 +f 113/113/1 108/114/1 112/115/1 120/116/1 +f 111/117/1 119/118/1 116/119/1 106/120/1 +g Cube.001_Cube.001_sides +f 8/121/11 7/122/11 3/123/11 4/124/11 +f 6/125/12 5/126/12 15/127/12 35/128/12 39/129/12 11/130/12 7/122/12 8/121/12 16/131/12 36/132/12 40/133/12 12/80/12 +f 3/123/13 13/134/13 33/135/13 37/136/13 9/137/13 1/138/13 2/139/13 14/23/13 34/140/13 38/141/13 10/142/13 4/124/13 +f 1/138/14 5/126/14 6/125/14 2/139/14 +f 70/143/12 62/144/12 86/145/12 80/146/12 +f 23/147/11 29/148/11 62/144/11 70/143/11 +f 55/149/13 59/150/13 29/148/13 23/147/13 +f 59/150/14 55/149/14 80/146/14 86/145/14 +f 76/151/14 85/152/14 51/153/14 63/154/14 +f 51/153/12 30/155/12 28/156/12 63/154/12 +f 66/157/13 54/158/13 85/152/13 76/151/13 +f 28/156/11 30/155/11 54/158/11 66/157/11 +f 43/159/12 17/160/12 19/161/12 71/162/12 +f 42/163/14 50/164/14 19/161/14 17/160/14 +f 73/165/13 81/166/13 50/164/13 42/163/13 +f 73/165/11 43/159/11 71/162/11 81/166/11 +f 74/167/12 77/168/12 58/169/12 46/170/12 +f 46/170/14 58/169/14 24/171/14 18/172/14 +f 47/173/13 18/172/13 24/171/13 67/174/13 +f 74/167/11 47/173/11 67/174/11 77/168/11 diff --git a/homedecor_3d_extras/models/3dvessels_bottle.obj b/homedecor_3d_extras/models/homedecor_3d_vessels_bottle.obj similarity index 100% rename from homedecor_3d_extras/models/3dvessels_bottle.obj rename to homedecor_3d_extras/models/homedecor_3d_vessels_bottle.obj diff --git a/homedecor_3d_extras/models/3dvessels_bottle_steel.obj b/homedecor_3d_extras/models/homedecor_3d_vessels_bottle_steel.obj similarity index 100% rename from homedecor_3d_extras/models/3dvessels_bottle_steel.obj rename to homedecor_3d_extras/models/homedecor_3d_vessels_bottle_steel.obj diff --git a/homedecor_3d_extras/models/3dvessels_drink.obj b/homedecor_3d_extras/models/homedecor_3d_vessels_drink.obj similarity index 100% rename from homedecor_3d_extras/models/3dvessels_drink.obj rename to homedecor_3d_extras/models/homedecor_3d_vessels_drink.obj diff --git a/homedecor_3d_extras/models/3dvessels_shelf.obj b/homedecor_3d_extras/models/homedecor_3d_vessels_shelf.obj similarity index 100% rename from homedecor_3d_extras/models/3dvessels_shelf.obj rename to homedecor_3d_extras/models/homedecor_3d_vessels_shelf.obj diff --git a/homedecor_3d_extras/models/homedecor_door_closet_a.obj b/homedecor_3d_extras/models/homedecor_door_closet_a.obj new file mode 100644 index 0000000..c835503 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_closet_a.obj @@ -0,0 +1,878 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-closet.blend' +# www.blender.org +o Cylinder +v -0.500000 1.500000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 1.500000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.375000 -0.375000 +v -0.500000 1.375000 -0.375000 +v -0.500000 -0.375000 -0.500000 +v 0.500000 1.375000 -0.500000 +v -0.374999 0.437500 -0.375000 +v 0.375000 0.437500 -0.375000 +v 0.375000 1.375000 -0.375000 +v 0.375000 0.437500 -0.500000 +v -0.374999 0.437500 -0.500000 +v -0.374999 1.375000 -0.500000 +v 0.375000 1.375000 -0.500000 +v -0.374999 1.375000 -0.375000 +v 0.500000 1.375000 -0.375000 +v -0.500000 -0.375000 -0.375000 +v -0.500000 1.375000 -0.500000 +v 0.500000 -0.375000 -0.500000 +v -0.374999 -0.375000 -0.375000 +v 0.375000 -0.375000 -0.375000 +v 0.375000 0.562500 -0.375000 +v 0.375000 -0.375000 -0.500000 +v -0.374999 -0.375000 -0.500000 +v -0.374999 0.562500 -0.500000 +v 0.375000 0.562500 -0.500000 +v -0.374999 0.562500 -0.375000 +v -0.374999 1.365847 -0.420927 +v -0.374999 1.360323 -0.415403 +v 0.375000 1.360323 -0.415403 +v 0.375000 1.365847 -0.420927 +v -0.374999 1.327177 -0.459597 +v -0.374999 1.321653 -0.454073 +v 0.375000 1.321653 -0.454073 +v 0.375000 1.327177 -0.459597 +v -0.374999 1.303347 -0.420927 +v -0.374999 1.297823 -0.415403 +v 0.375000 1.297823 -0.415403 +v 0.375000 1.303347 -0.420927 +v -0.374999 1.264677 -0.459597 +v -0.374999 1.259153 -0.454073 +v 0.375000 1.259153 -0.454073 +v 0.375000 1.264677 -0.459597 +v -0.374999 1.240847 -0.420927 +v -0.374999 1.235323 -0.415403 +v 0.375000 1.235323 -0.415403 +v 0.375000 1.240847 -0.420927 +v -0.374999 1.202177 -0.459597 +v -0.374999 1.196653 -0.454073 +v 0.375000 1.196653 -0.454073 +v 0.375000 1.202177 -0.459597 +v -0.374999 1.178347 -0.420927 +v -0.374999 1.172823 -0.415403 +v 0.375000 1.172823 -0.415403 +v 0.375000 1.178347 -0.420927 +v -0.374999 1.139677 -0.459597 +v -0.374999 1.134153 -0.454073 +v 0.375000 1.134153 -0.454073 +v 0.375000 1.139677 -0.459597 +v -0.374999 1.115847 -0.420927 +v -0.374999 1.110323 -0.415403 +v 0.375000 1.110323 -0.415403 +v 0.375000 1.115847 -0.420927 +v -0.374999 1.077177 -0.459597 +v -0.374999 1.071653 -0.454073 +v 0.375000 1.071653 -0.454073 +v 0.375000 1.077177 -0.459597 +v -0.374999 1.053347 -0.420927 +v -0.374999 1.047823 -0.415403 +v 0.375000 1.047823 -0.415403 +v 0.375000 1.053347 -0.420927 +v -0.374999 1.014677 -0.459597 +v -0.374999 1.009153 -0.454073 +v 0.375000 1.009153 -0.454073 +v 0.375000 1.014677 -0.459597 +v -0.374999 0.928347 -0.420927 +v -0.374999 0.922823 -0.415403 +v 0.375000 0.922823 -0.415403 +v 0.375000 0.928347 -0.420927 +v -0.374999 0.889677 -0.459597 +v -0.374999 0.884153 -0.454073 +v 0.375000 0.884153 -0.454073 +v 0.375000 0.889677 -0.459597 +v -0.374999 0.990847 -0.420927 +v -0.374999 0.985323 -0.415403 +v 0.375000 0.985323 -0.415403 +v 0.375000 0.990847 -0.420927 +v -0.374999 0.952177 -0.459597 +v -0.374999 0.946653 -0.454073 +v 0.375000 0.946653 -0.454073 +v 0.375000 0.952177 -0.459597 +v -0.374999 0.865847 -0.420927 +v -0.374999 0.860323 -0.415403 +v 0.375000 0.860323 -0.415403 +v 0.375000 0.865847 -0.420927 +v -0.374999 0.827177 -0.459597 +v -0.374999 0.821653 -0.454073 +v 0.375000 0.821653 -0.454073 +v 0.375000 0.827177 -0.459597 +v -0.374999 0.803347 -0.420927 +v -0.374999 0.797823 -0.415403 +v 0.375000 0.797823 -0.415403 +v 0.375000 0.803347 -0.420927 +v -0.374999 0.764677 -0.459597 +v -0.374999 0.759153 -0.454073 +v 0.375000 0.759153 -0.454073 +v 0.375000 0.764677 -0.459597 +v -0.374999 0.740847 -0.420927 +v -0.374999 0.735323 -0.415403 +v 0.375000 0.735323 -0.415403 +v 0.375000 0.740847 -0.420927 +v -0.374999 0.702177 -0.459597 +v -0.374999 0.696653 -0.454073 +v 0.375000 0.696653 -0.454073 +v 0.375000 0.702177 -0.459597 +v -0.374999 0.678347 -0.420927 +v -0.374999 0.672823 -0.415403 +v 0.375000 0.672823 -0.415403 +v 0.375000 0.678347 -0.420927 +v -0.374999 0.639677 -0.459597 +v -0.374999 0.634153 -0.454073 +v 0.375000 0.634153 -0.454073 +v 0.375000 0.639677 -0.459597 +v -0.374999 0.615847 -0.420927 +v -0.374999 0.610323 -0.415403 +v 0.375000 0.610323 -0.415403 +v 0.375000 0.615847 -0.420927 +v -0.374999 0.577177 -0.459597 +v -0.374999 0.571653 -0.454073 +v 0.375000 0.571653 -0.454073 +v 0.375000 0.577177 -0.459597 +v -0.374999 0.428347 -0.420927 +v -0.374999 0.422823 -0.415403 +v 0.375000 0.422823 -0.415403 +v 0.375000 0.428347 -0.420927 +v -0.374999 0.389677 -0.459597 +v -0.374999 0.384153 -0.454073 +v 0.375000 0.384153 -0.454073 +v 0.375000 0.389677 -0.459597 +v -0.374999 0.365847 -0.420927 +v -0.374999 0.360323 -0.415403 +v 0.375000 0.360323 -0.415403 +v 0.375000 0.365847 -0.420927 +v -0.374999 0.327177 -0.459597 +v -0.374999 0.321653 -0.454073 +v 0.375000 0.321653 -0.454073 +v 0.375000 0.327177 -0.459597 +v -0.374999 0.303347 -0.420927 +v -0.374999 0.297823 -0.415403 +v 0.375000 0.297823 -0.415403 +v 0.375000 0.303347 -0.420927 +v -0.374999 0.264677 -0.459597 +v -0.374999 0.259153 -0.454073 +v 0.375000 0.259153 -0.454073 +v 0.375000 0.264677 -0.459597 +v -0.374999 0.240847 -0.420927 +v -0.374999 0.235323 -0.415403 +v 0.375000 0.235323 -0.415403 +v 0.375000 0.240847 -0.420927 +v -0.374999 0.202177 -0.459597 +v -0.374999 0.196653 -0.454073 +v 0.375000 0.196653 -0.454073 +v 0.375000 0.202177 -0.459597 +v -0.374999 0.178347 -0.420927 +v -0.374999 0.172823 -0.415403 +v 0.375000 0.172823 -0.415403 +v 0.375000 0.178347 -0.420927 +v -0.374999 0.139677 -0.459597 +v -0.374999 0.134153 -0.454073 +v 0.375000 0.134153 -0.454073 +v 0.375000 0.139677 -0.459597 +v -0.374999 0.115847 -0.420927 +v -0.374999 0.110323 -0.415403 +v 0.375000 0.110323 -0.415403 +v 0.375000 0.115847 -0.420927 +v -0.374999 0.077177 -0.459597 +v -0.374999 0.071653 -0.454073 +v 0.375000 0.071653 -0.454073 +v 0.375000 0.077177 -0.459597 +v -0.374999 -0.009153 -0.420927 +v -0.374999 -0.014677 -0.415403 +v 0.375000 -0.014677 -0.415403 +v 0.375000 -0.009153 -0.420927 +v -0.374999 -0.047823 -0.459597 +v -0.374999 -0.053347 -0.454073 +v 0.375000 -0.053347 -0.454073 +v 0.375000 -0.047823 -0.459597 +v -0.374999 0.053347 -0.420927 +v -0.374999 0.047823 -0.415403 +v 0.375000 0.047823 -0.415403 +v 0.375000 0.053347 -0.420927 +v -0.374999 0.014677 -0.459597 +v -0.374999 0.009153 -0.454073 +v 0.375000 0.009153 -0.454073 +v 0.375000 0.014677 -0.459597 +v -0.374999 -0.071653 -0.420927 +v -0.374999 -0.077177 -0.415403 +v 0.375000 -0.077177 -0.415403 +v 0.375000 -0.071653 -0.420927 +v -0.374999 -0.110323 -0.459597 +v -0.374999 -0.115847 -0.454073 +v 0.375000 -0.115847 -0.454073 +v 0.375000 -0.110323 -0.459597 +v -0.374999 -0.134153 -0.420927 +v -0.374999 -0.139677 -0.415403 +v 0.375000 -0.139677 -0.415403 +v 0.375000 -0.134153 -0.420927 +v -0.374999 -0.172823 -0.459597 +v -0.374999 -0.178347 -0.454073 +v 0.375000 -0.178347 -0.454073 +v 0.375000 -0.172823 -0.459597 +v -0.374999 -0.196653 -0.420927 +v -0.374999 -0.202177 -0.415403 +v 0.375000 -0.202177 -0.415403 +v 0.375000 -0.196653 -0.420927 +v -0.374999 -0.235323 -0.459597 +v -0.374999 -0.240847 -0.454073 +v 0.375000 -0.240847 -0.454073 +v 0.375000 -0.235323 -0.459597 +v -0.374999 -0.259153 -0.420927 +v -0.374999 -0.264677 -0.415403 +v 0.375000 -0.264677 -0.415403 +v 0.375000 -0.259153 -0.420927 +v -0.374999 -0.297823 -0.459597 +v -0.374999 -0.303347 -0.454073 +v 0.375000 -0.303347 -0.454073 +v 0.375000 -0.297823 -0.459597 +v -0.374999 -0.321653 -0.420927 +v -0.374999 -0.327177 -0.415403 +v 0.375000 -0.327177 -0.415403 +v 0.375000 -0.321653 -0.420927 +v -0.374999 -0.360323 -0.459597 +v -0.374999 -0.365847 -0.454073 +v 0.375000 -0.365847 -0.454073 +v 0.375000 -0.360323 -0.459597 +vt 0.473684 0.937500 +vt 0.421053 0.937500 +vt 0.421053 1.000000 +vt 0.842105 1.000000 +vt 0.842105 0.937500 +vt 0.789474 0.937500 +vt 0.368421 0.468750 +vt 0.052632 0.468750 +vt 0.052632 0.531250 +vt 0.368421 0.531250 +vt 0.894737 0.937500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.842105 0.000000 +vt 0.842105 0.062500 +vt 0.894737 1.000000 +vt 0.052632 0.937500 +vt 0.000000 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.937500 +vt 0.368421 0.937500 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 0.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.789474 0.468750 +vt 0.473684 0.468750 +vt 0.473684 0.531250 +vt 0.789474 0.531250 +vt 0.421053 0.062500 +vt 0.368421 0.062500 +vt 0.789474 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.937500 +vt 0.894737 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.937500 +vt 0.947368 0.062500 +vt 0.947368 0.000000 +vt 0.894737 0.000000 +vt 0.473684 0.062500 +vt 0.421053 0.062500 +vt 0.052632 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.921875 +vt 0.368421 0.921875 +vt 0.368421 0.906250 +vt 0.052632 0.906250 +vt 0.473684 0.921875 +vt 0.789474 0.921875 +vt 0.789474 0.906250 +vt 0.473684 0.906250 +vt 0.842105 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.531250 +vt 0.842105 0.531250 +vt 1.000000 0.062500 +vt 0.947368 0.062500 +vt 0.947368 0.437500 +vt 1.000000 0.437500 +vt 0.894737 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.531250 +vt 0.894737 0.531250 +vt 1.000000 0.937500 +vt 1.000000 0.562500 +vt 0.947368 0.562500 +vt 0.842105 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.062500 +vt 0.842105 0.062500 +vt 1.000000 0.062500 +vt 0.947368 0.062500 +vt 0.947368 0.437500 +vt 1.000000 0.437500 +vt 0.947368 0.468750 +vt 0.894737 0.062500 +vt 0.894737 0.468750 +vt 1.000000 0.937500 +vt 1.000000 0.562500 +vt 0.947368 0.562500 +vt 0.947368 0.937500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.890625 +vt 0.368421 0.890625 +vt 0.368421 0.875000 +vt 0.052632 0.875000 +vt 0.473684 0.890625 +vt 0.789474 0.890625 +vt 0.789474 0.875000 +vt 0.473684 0.875000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.859375 +vt 0.368421 0.859375 +vt 0.368421 0.843750 +vt 0.052632 0.843750 +vt 0.473684 0.859375 +vt 0.789474 0.859375 +vt 0.789474 0.843750 +vt 0.473684 0.843750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.828125 +vt 0.368421 0.828125 +vt 0.368421 0.812500 +vt 0.052632 0.812500 +vt 0.473684 0.828125 +vt 0.789474 0.828125 +vt 0.789474 0.812500 +vt 0.473684 0.812500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.796875 +vt 0.368421 0.796875 +vt 0.368421 0.781250 +vt 0.052632 0.781250 +vt 0.473684 0.796875 +vt 0.789474 0.796875 +vt 0.789474 0.781250 +vt 0.473684 0.781250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.765625 +vt 0.368421 0.765625 +vt 0.368421 0.750000 +vt 0.052632 0.750000 +vt 0.473684 0.765625 +vt 0.789474 0.765625 +vt 0.789474 0.750000 +vt 0.473684 0.750000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.703125 +vt 0.368421 0.703125 +vt 0.368421 0.687500 +vt 0.052632 0.687500 +vt 0.473684 0.703125 +vt 0.789474 0.703125 +vt 0.789474 0.687500 +vt 0.473684 0.687500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.734375 +vt 0.368421 0.734375 +vt 0.368421 0.718750 +vt 0.052632 0.718750 +vt 0.473684 0.734375 +vt 0.789474 0.734375 +vt 0.789474 0.718750 +vt 0.473684 0.718750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.671875 +vt 0.368421 0.671875 +vt 0.368421 0.656250 +vt 0.052632 0.656250 +vt 0.473684 0.671875 +vt 0.789474 0.671875 +vt 0.789474 0.656250 +vt 0.473684 0.656250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.640625 +vt 0.368421 0.640625 +vt 0.368421 0.625000 +vt 0.052632 0.625000 +vt 0.473684 0.640625 +vt 0.789474 0.640625 +vt 0.789474 0.625000 +vt 0.473684 0.625000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.609375 +vt 0.368421 0.609375 +vt 0.368421 0.593750 +vt 0.052632 0.593750 +vt 0.473684 0.609375 +vt 0.789474 0.609375 +vt 0.789474 0.593750 +vt 0.473684 0.593750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.578125 +vt 0.368421 0.578125 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.473684 0.578125 +vt 0.789474 0.578125 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.546875 +vt 0.368421 0.546875 +vt 0.368421 0.531250 +vt 0.052632 0.531250 +vt 0.473684 0.546875 +vt 0.789474 0.546875 +vt 0.789474 0.531250 +vt 0.473684 0.531250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.468750 +vt 0.368421 0.468750 +vt 0.368421 0.453125 +vt 0.052632 0.453125 +vt 0.473684 0.468750 +vt 0.789474 0.468750 +vt 0.789474 0.453125 +vt 0.473684 0.453125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.437500 +vt 0.368421 0.437500 +vt 0.368421 0.421875 +vt 0.052632 0.421875 +vt 0.473684 0.437500 +vt 0.789474 0.437500 +vt 0.789474 0.421875 +vt 0.473684 0.421875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.406250 +vt 0.368421 0.406250 +vt 0.368421 0.390625 +vt 0.052632 0.390625 +vt 0.473684 0.406250 +vt 0.789474 0.406250 +vt 0.789474 0.390625 +vt 0.473684 0.390625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.375000 +vt 0.368421 0.375000 +vt 0.368421 0.359375 +vt 0.052632 0.359375 +vt 0.473684 0.375000 +vt 0.789474 0.375000 +vt 0.789474 0.359375 +vt 0.473684 0.359375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.343750 +vt 0.368421 0.343750 +vt 0.368421 0.328125 +vt 0.052632 0.328125 +vt 0.473684 0.343750 +vt 0.789474 0.343750 +vt 0.789474 0.328125 +vt 0.473684 0.328125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.312500 +vt 0.368421 0.312500 +vt 0.368421 0.296875 +vt 0.052632 0.296875 +vt 0.473684 0.312500 +vt 0.789474 0.312500 +vt 0.789474 0.296875 +vt 0.473684 0.296875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.250000 +vt 0.368421 0.250000 +vt 0.368421 0.234375 +vt 0.052632 0.234375 +vt 0.473684 0.250000 +vt 0.789474 0.250000 +vt 0.789474 0.234375 +vt 0.473684 0.234375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.281250 +vt 0.368421 0.281250 +vt 0.368421 0.265625 +vt 0.052632 0.265625 +vt 0.473684 0.281250 +vt 0.789474 0.281250 +vt 0.789474 0.265625 +vt 0.473684 0.265625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.218750 +vt 0.368421 0.218750 +vt 0.368421 0.203125 +vt 0.052632 0.203125 +vt 0.473684 0.218750 +vt 0.789474 0.218750 +vt 0.789474 0.203125 +vt 0.473684 0.203125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.187500 +vt 0.368421 0.187500 +vt 0.368421 0.171875 +vt 0.052632 0.171875 +vt 0.473684 0.187500 +vt 0.789474 0.187500 +vt 0.789474 0.171875 +vt 0.473684 0.171875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.156250 +vt 0.368421 0.156250 +vt 0.368421 0.140625 +vt 0.052632 0.140625 +vt 0.473684 0.156250 +vt 0.789474 0.156250 +vt 0.789474 0.140625 +vt 0.473684 0.140625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.125000 +vt 0.368421 0.125000 +vt 0.368421 0.109375 +vt 0.052632 0.109375 +vt 0.473684 0.125000 +vt 0.789474 0.125000 +vt 0.789474 0.109375 +vt 0.473684 0.109375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.093750 +vt 0.368421 0.093750 +vt 0.368421 0.078125 +vt 0.052632 0.078125 +vt 0.473684 0.093750 +vt 0.789474 0.093750 +vt 0.789474 0.078125 +vt 0.473684 0.078125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vn -0.0000 -0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.7071 -0.7071 +vn -0.0000 -0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn -0.0000 0.7071 0.7071 +s off +f 15/1/1 21/2/1 2/3/1 1/4/1 10/5/1 20/6/1 +f 16/7/2 17/8/2 30/9/2 31/10/2 +f 23/11/3 11/12/3 8/13/3 3/14/3 22/15/3 10/5/3 1/4/3 6/16/3 +f 18/17/2 23/18/2 6/19/2 5/20/2 12/21/2 19/22/2 +f 2/23/4 5/24/4 6/25/4 1/26/4 +f 3/27/5 8/28/5 7/29/5 4/30/5 +f 13/31/1 14/32/1 27/33/1 32/34/1 +f 24/35/2 28/36/2 16/7/2 31/10/2 19/22/2 12/21/2 +f 22/15/1 25/37/1 13/31/1 32/34/1 20/6/1 10/5/1 +f 24/38/6 12/39/6 5/40/6 2/41/6 21/42/6 9/43/6 4/44/6 7/45/6 +f 26/46/1 9/47/1 21/2/1 15/1/1 27/33/1 14/32/1 +f 29/48/2 11/49/2 23/18/2 18/17/2 30/9/2 17/8/2 +f 8/50/2 11/49/2 29/48/2 28/36/2 24/35/2 7/51/2 +f 4/52/1 9/47/1 26/46/1 25/37/1 22/15/1 3/14/1 +f 33/53/7 36/54/7 40/55/7 37/56/7 +f 35/57/8 34/58/8 38/59/8 39/60/8 +f 15/61/3 19/62/3 31/63/3 27/64/3 +f 30/65/4 32/66/4 27/67/4 31/68/4 +f 18/69/6 20/70/6 32/71/6 30/72/6 +f 18/73/5 19/74/5 15/75/5 20/70/5 +f 14/76/3 16/77/3 28/78/3 26/79/3 +f 29/80/4 25/81/4 26/82/4 28/83/4 +f 13/84/6 25/81/6 29/85/6 17/86/6 +f 17/87/5 16/88/5 14/89/5 13/90/5 +f 40/91/9 39/92/9 38/93/9 37/94/9 +f 33/95/10 34/96/10 35/97/10 36/98/10 +f 41/99/7 44/100/7 48/101/7 45/102/7 +f 43/103/8 42/104/8 46/105/8 47/106/8 +f 48/107/9 47/108/9 46/109/9 45/110/9 +f 41/111/10 42/112/10 43/113/10 44/114/10 +f 49/115/7 52/116/7 56/117/7 53/118/7 +f 51/119/8 50/120/8 54/121/8 55/122/8 +f 56/123/9 55/124/9 54/125/9 53/126/9 +f 49/127/10 50/128/10 51/129/10 52/130/10 +f 57/131/7 60/132/7 64/133/7 61/134/7 +f 59/135/8 58/136/8 62/137/8 63/138/8 +f 64/139/9 63/140/9 62/141/9 61/142/9 +f 57/143/10 58/144/10 59/145/10 60/146/10 +f 65/147/7 68/148/7 72/149/7 69/150/7 +f 67/151/8 66/152/8 70/153/8 71/154/8 +f 72/155/9 71/156/9 70/157/9 69/158/9 +f 65/159/10 66/160/10 67/161/10 68/162/10 +f 73/163/7 76/164/7 80/165/7 77/166/7 +f 75/167/8 74/168/8 78/169/8 79/170/8 +f 80/171/9 79/172/9 78/173/9 77/174/9 +f 73/175/10 74/176/10 75/177/10 76/178/10 +f 81/179/7 84/180/7 88/181/7 85/182/7 +f 83/183/8 82/184/8 86/185/8 87/186/8 +f 88/187/9 87/188/9 86/189/9 85/190/9 +f 81/191/10 82/192/10 83/193/10 84/194/10 +f 89/195/7 92/196/7 96/197/7 93/198/7 +f 91/199/8 90/200/8 94/201/8 95/202/8 +f 96/203/9 95/204/9 94/205/9 93/206/9 +f 89/207/10 90/208/10 91/209/10 92/210/10 +f 97/211/7 100/212/7 104/213/7 101/214/7 +f 99/215/8 98/216/8 102/217/8 103/218/8 +f 104/219/9 103/220/9 102/221/9 101/222/9 +f 97/223/10 98/224/10 99/225/10 100/226/10 +f 105/227/7 108/228/7 112/229/7 109/230/7 +f 107/231/8 106/232/8 110/233/8 111/234/8 +f 112/235/9 111/236/9 110/237/9 109/238/9 +f 105/239/10 106/240/10 107/241/10 108/242/10 +f 113/243/7 116/244/7 120/245/7 117/246/7 +f 115/247/8 114/248/8 118/249/8 119/250/8 +f 120/251/9 119/252/9 118/253/9 117/254/9 +f 113/255/10 114/256/10 115/257/10 116/258/10 +f 121/259/7 124/260/7 128/261/7 125/262/7 +f 123/263/8 122/264/8 126/265/8 127/266/8 +f 128/267/9 127/268/9 126/269/9 125/270/9 +f 121/271/10 122/272/10 123/273/10 124/274/10 +f 129/275/7 132/276/7 136/277/7 133/278/7 +f 131/279/8 130/280/8 134/281/8 135/282/8 +f 136/283/9 135/284/9 134/285/9 133/286/9 +f 129/287/10 130/288/10 131/289/10 132/290/10 +f 137/291/7 140/292/7 144/293/7 141/294/7 +f 139/295/8 138/296/8 142/297/8 143/298/8 +f 144/299/9 143/300/9 142/301/9 141/302/9 +f 137/303/10 138/304/10 139/305/10 140/306/10 +f 145/307/7 148/308/7 152/309/7 149/310/7 +f 147/311/8 146/312/8 150/313/8 151/314/8 +f 152/315/9 151/316/9 150/317/9 149/318/9 +f 145/319/10 146/320/10 147/321/10 148/322/10 +f 153/323/7 156/324/7 160/325/7 157/326/7 +f 155/327/8 154/328/8 158/329/8 159/330/8 +f 160/331/9 159/332/9 158/333/9 157/334/9 +f 153/335/10 154/336/10 155/337/10 156/338/10 +f 161/339/7 164/340/7 168/341/7 165/342/7 +f 163/343/8 162/344/8 166/345/8 167/346/8 +f 168/347/9 167/348/9 166/349/9 165/350/9 +f 161/351/10 162/352/10 163/353/10 164/354/10 +f 169/355/7 172/356/7 176/357/7 173/358/7 +f 171/359/8 170/360/8 174/361/8 175/362/8 +f 176/363/9 175/364/9 174/365/9 173/366/9 +f 169/367/10 170/368/10 171/369/10 172/370/10 +f 177/371/7 180/372/7 184/373/7 181/374/7 +f 179/375/8 178/376/8 182/377/8 183/378/8 +f 184/379/9 183/380/9 182/381/9 181/382/9 +f 177/383/10 178/384/10 179/385/10 180/386/10 +f 185/387/7 188/388/7 192/389/7 189/390/7 +f 187/391/8 186/392/8 190/393/8 191/394/8 +f 192/395/9 191/396/9 190/397/9 189/398/9 +f 185/399/10 186/400/10 187/401/10 188/402/10 +f 193/403/7 196/404/7 200/405/7 197/406/7 +f 195/407/8 194/408/8 198/409/8 199/410/8 +f 200/411/9 199/412/9 198/413/9 197/414/9 +f 193/415/10 194/416/10 195/417/10 196/418/10 +f 201/419/7 204/420/7 208/421/7 205/422/7 +f 203/423/8 202/424/8 206/425/8 207/426/8 +f 208/427/9 207/428/9 206/429/9 205/430/9 +f 201/431/10 202/432/10 203/433/10 204/434/10 +f 209/435/7 212/436/7 216/437/7 213/438/7 +f 211/439/8 210/440/8 214/441/8 215/442/8 +f 216/443/9 215/444/9 214/445/9 213/446/9 +f 209/447/10 210/448/10 211/449/10 212/450/10 +f 217/451/7 220/452/7 224/453/7 221/454/7 +f 219/455/8 218/456/8 222/457/8 223/458/8 +f 224/459/9 223/460/9 222/461/9 221/462/9 +f 217/463/10 218/464/10 219/465/10 220/466/10 +f 225/467/7 228/468/7 232/469/7 229/470/7 +f 227/471/8 226/472/8 230/473/8 231/474/8 +f 232/475/9 231/476/9 230/477/9 229/478/9 +f 225/479/10 226/480/10 227/481/10 228/482/10 +f 233/483/7 236/484/7 240/485/7 237/486/7 +f 235/487/8 234/488/8 238/489/8 239/490/8 +f 240/491/9 239/492/9 238/493/9 237/494/9 +f 233/495/10 234/496/10 235/497/10 236/498/10 diff --git a/homedecor_3d_extras/models/homedecor_door_closet_b.obj b/homedecor_3d_extras/models/homedecor_door_closet_b.obj new file mode 100644 index 0000000..5098ea9 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_closet_b.obj @@ -0,0 +1,878 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-closet.blend' +# www.blender.org +o Cylinder +v 0.500000 1.500000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 1.500000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.500000 -0.375000 -0.500000 +v 0.500000 1.375000 -0.500000 +v 0.500000 -0.375000 -0.375000 +v -0.500000 1.375000 -0.375000 +v 0.374999 0.437500 -0.500000 +v -0.375000 0.437500 -0.500000 +v -0.375000 1.375000 -0.500000 +v -0.375000 0.437500 -0.375000 +v 0.374999 0.437500 -0.375000 +v 0.374999 1.375000 -0.375000 +v -0.375000 1.375000 -0.375000 +v 0.374999 1.375000 -0.500000 +v -0.500000 1.375000 -0.500000 +v 0.500000 -0.375000 -0.500000 +v 0.500000 1.375000 -0.375000 +v -0.500000 -0.375000 -0.375000 +v 0.374999 -0.375000 -0.500000 +v -0.375000 -0.375000 -0.500000 +v -0.375000 0.562500 -0.500000 +v -0.375000 -0.375000 -0.375000 +v 0.374999 -0.375000 -0.375000 +v 0.374999 0.562500 -0.375000 +v -0.375000 0.562500 -0.375000 +v 0.374999 0.562500 -0.500000 +v 0.374999 1.365847 -0.454073 +v 0.374999 1.360323 -0.459597 +v -0.375000 1.360323 -0.459597 +v -0.375000 1.365847 -0.454073 +v 0.374999 1.327177 -0.415403 +v 0.374999 1.321653 -0.420927 +v -0.375000 1.321653 -0.420927 +v -0.375000 1.327177 -0.415403 +v 0.374999 1.303347 -0.454073 +v 0.374999 1.297823 -0.459597 +v -0.375000 1.297823 -0.459597 +v -0.375000 1.303347 -0.454073 +v 0.374999 1.264677 -0.415403 +v 0.374999 1.259153 -0.420927 +v -0.375000 1.259153 -0.420927 +v -0.375000 1.264677 -0.415403 +v 0.374999 1.240847 -0.454073 +v 0.374999 1.235323 -0.459597 +v -0.375000 1.235323 -0.459597 +v -0.375000 1.240847 -0.454073 +v 0.374999 1.202177 -0.415403 +v 0.374999 1.196653 -0.420927 +v -0.375000 1.196653 -0.420927 +v -0.375000 1.202177 -0.415403 +v 0.374999 1.178347 -0.454073 +v 0.374999 1.172823 -0.459597 +v -0.375000 1.172823 -0.459597 +v -0.375000 1.178347 -0.454073 +v 0.374999 1.139677 -0.415403 +v 0.374999 1.134153 -0.420927 +v -0.375000 1.134153 -0.420927 +v -0.375000 1.139677 -0.415403 +v 0.374999 1.115847 -0.454073 +v 0.374999 1.110323 -0.459597 +v -0.375000 1.110323 -0.459597 +v -0.375000 1.115847 -0.454073 +v 0.374999 1.077177 -0.415403 +v 0.374999 1.071653 -0.420927 +v -0.375000 1.071653 -0.420927 +v -0.375000 1.077177 -0.415403 +v 0.374999 1.053347 -0.454073 +v 0.374999 1.047823 -0.459597 +v -0.375000 1.047823 -0.459597 +v -0.375000 1.053347 -0.454073 +v 0.374999 1.014677 -0.415403 +v 0.374999 1.009153 -0.420927 +v -0.375000 1.009153 -0.420927 +v -0.375000 1.014677 -0.415403 +v 0.374999 0.928347 -0.454073 +v 0.374999 0.922823 -0.459597 +v -0.375000 0.922823 -0.459597 +v -0.375000 0.928347 -0.454073 +v 0.374999 0.889677 -0.415403 +v 0.374999 0.884153 -0.420927 +v -0.375000 0.884153 -0.420927 +v -0.375000 0.889677 -0.415403 +v 0.374999 0.990847 -0.454073 +v 0.374999 0.985323 -0.459597 +v -0.375000 0.985323 -0.459597 +v -0.375000 0.990847 -0.454073 +v 0.374999 0.952177 -0.415403 +v 0.374999 0.946653 -0.420927 +v -0.375000 0.946653 -0.420927 +v -0.375000 0.952177 -0.415403 +v 0.374999 0.865847 -0.454073 +v 0.374999 0.860323 -0.459597 +v -0.375000 0.860323 -0.459597 +v -0.375000 0.865847 -0.454073 +v 0.374999 0.827177 -0.415403 +v 0.374999 0.821653 -0.420927 +v -0.375000 0.821653 -0.420927 +v -0.375000 0.827177 -0.415403 +v 0.374999 0.803347 -0.454073 +v 0.374999 0.797823 -0.459597 +v -0.375000 0.797823 -0.459597 +v -0.375000 0.803347 -0.454073 +v 0.374999 0.764677 -0.415403 +v 0.374999 0.759153 -0.420927 +v -0.375000 0.759153 -0.420927 +v -0.375000 0.764677 -0.415403 +v 0.374999 0.740847 -0.454073 +v 0.374999 0.735323 -0.459597 +v -0.375000 0.735323 -0.459597 +v -0.375000 0.740847 -0.454073 +v 0.374999 0.702177 -0.415403 +v 0.374999 0.696653 -0.420927 +v -0.375000 0.696653 -0.420927 +v -0.375000 0.702177 -0.415403 +v 0.374999 0.678347 -0.454073 +v 0.374999 0.672823 -0.459597 +v -0.375000 0.672823 -0.459597 +v -0.375000 0.678347 -0.454073 +v 0.374999 0.639677 -0.415403 +v 0.374999 0.634153 -0.420927 +v -0.375000 0.634153 -0.420927 +v -0.375000 0.639677 -0.415403 +v 0.374999 0.615847 -0.454073 +v 0.374999 0.610323 -0.459597 +v -0.375000 0.610323 -0.459597 +v -0.375000 0.615847 -0.454073 +v 0.374999 0.577177 -0.415403 +v 0.374999 0.571653 -0.420927 +v -0.375000 0.571653 -0.420927 +v -0.375000 0.577177 -0.415403 +v 0.374999 0.428347 -0.454073 +v 0.374999 0.422823 -0.459597 +v -0.375000 0.422823 -0.459597 +v -0.375000 0.428347 -0.454073 +v 0.374999 0.389677 -0.415403 +v 0.374999 0.384153 -0.420927 +v -0.375000 0.384153 -0.420927 +v -0.375000 0.389677 -0.415403 +v 0.374999 0.365847 -0.454073 +v 0.374999 0.360323 -0.459597 +v -0.375000 0.360323 -0.459597 +v -0.375000 0.365847 -0.454073 +v 0.374999 0.327177 -0.415403 +v 0.374999 0.321653 -0.420927 +v -0.375000 0.321653 -0.420927 +v -0.375000 0.327177 -0.415403 +v 0.374999 0.303347 -0.454073 +v 0.374999 0.297823 -0.459597 +v -0.375000 0.297823 -0.459597 +v -0.375000 0.303347 -0.454073 +v 0.374999 0.264677 -0.415403 +v 0.374999 0.259153 -0.420927 +v -0.375000 0.259153 -0.420927 +v -0.375000 0.264677 -0.415403 +v 0.374999 0.240847 -0.454073 +v 0.374999 0.235323 -0.459597 +v -0.375000 0.235323 -0.459597 +v -0.375000 0.240847 -0.454073 +v 0.374999 0.202177 -0.415403 +v 0.374999 0.196653 -0.420927 +v -0.375000 0.196653 -0.420927 +v -0.375000 0.202177 -0.415403 +v 0.374999 0.178347 -0.454073 +v 0.374999 0.172823 -0.459597 +v -0.375000 0.172823 -0.459597 +v -0.375000 0.178347 -0.454073 +v 0.374999 0.139677 -0.415403 +v 0.374999 0.134153 -0.420927 +v -0.375000 0.134153 -0.420927 +v -0.375000 0.139677 -0.415403 +v 0.374999 0.115847 -0.454073 +v 0.374999 0.110323 -0.459597 +v -0.375000 0.110323 -0.459597 +v -0.375000 0.115847 -0.454073 +v 0.374999 0.077177 -0.415403 +v 0.374999 0.071653 -0.420927 +v -0.375000 0.071653 -0.420927 +v -0.375000 0.077177 -0.415403 +v 0.374999 -0.009153 -0.454073 +v 0.374999 -0.014677 -0.459597 +v -0.375000 -0.014677 -0.459597 +v -0.375000 -0.009153 -0.454073 +v 0.374999 -0.047823 -0.415403 +v 0.374999 -0.053347 -0.420927 +v -0.375000 -0.053347 -0.420927 +v -0.375000 -0.047823 -0.415403 +v 0.374999 0.053347 -0.454073 +v 0.374999 0.047823 -0.459597 +v -0.375000 0.047823 -0.459597 +v -0.375000 0.053347 -0.454073 +v 0.374999 0.014677 -0.415403 +v 0.374999 0.009153 -0.420927 +v -0.375000 0.009153 -0.420927 +v -0.375000 0.014677 -0.415403 +v 0.374999 -0.071653 -0.454073 +v 0.374999 -0.077177 -0.459597 +v -0.375000 -0.077177 -0.459597 +v -0.375000 -0.071653 -0.454073 +v 0.374999 -0.110323 -0.415403 +v 0.374999 -0.115847 -0.420927 +v -0.375000 -0.115847 -0.420927 +v -0.375000 -0.110323 -0.415403 +v 0.374999 -0.134153 -0.454073 +v 0.374999 -0.139677 -0.459597 +v -0.375000 -0.139677 -0.459597 +v -0.375000 -0.134153 -0.454073 +v 0.374999 -0.172823 -0.415403 +v 0.374999 -0.178347 -0.420927 +v -0.375000 -0.178347 -0.420927 +v -0.375000 -0.172823 -0.415403 +v 0.374999 -0.196653 -0.454073 +v 0.374999 -0.202177 -0.459597 +v -0.375000 -0.202177 -0.459597 +v -0.375000 -0.196653 -0.454073 +v 0.374999 -0.235323 -0.415403 +v 0.374999 -0.240847 -0.420927 +v -0.375000 -0.240847 -0.420927 +v -0.375000 -0.235323 -0.415403 +v 0.374999 -0.259153 -0.454073 +v 0.374999 -0.264677 -0.459597 +v -0.375000 -0.264677 -0.459597 +v -0.375000 -0.259153 -0.454073 +v 0.374999 -0.297823 -0.415403 +v 0.374999 -0.303347 -0.420927 +v -0.375000 -0.303347 -0.420927 +v -0.375000 -0.297823 -0.415403 +v 0.374999 -0.321653 -0.454073 +v 0.374999 -0.327177 -0.459597 +v -0.375000 -0.327177 -0.459597 +v -0.375000 -0.321653 -0.454073 +v 0.374999 -0.360323 -0.415403 +v 0.374999 -0.365847 -0.420927 +v -0.375000 -0.365847 -0.420927 +v -0.375000 -0.360323 -0.415403 +vt 0.473684 0.937500 +vt 0.421053 0.937500 +vt 0.421053 1.000000 +vt 0.842105 1.000000 +vt 0.842105 0.937500 +vt 0.789474 0.937500 +vt 0.368421 0.468750 +vt 0.052632 0.468750 +vt 0.052632 0.531250 +vt 0.368421 0.531250 +vt 0.894737 0.937500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.842105 0.000000 +vt 0.842105 0.062500 +vt 0.894737 1.000000 +vt 0.052632 0.937500 +vt 0.000000 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.937500 +vt 0.368421 0.937500 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 0.000000 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 1.000000 1.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.789474 0.468750 +vt 0.473684 0.468750 +vt 0.473684 0.531250 +vt 0.789474 0.531250 +vt 0.421053 0.062500 +vt 0.368421 0.062500 +vt 0.789474 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.937500 +vt 0.894737 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.937500 +vt 0.947368 0.062500 +vt 0.947368 0.000000 +vt 0.894737 0.000000 +vt 0.473684 0.062500 +vt 0.421053 0.062500 +vt 0.052632 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 0.052632 0.921875 +vt 0.368421 0.921875 +vt 0.368421 0.906250 +vt 0.052632 0.906250 +vt 0.473684 0.921875 +vt 0.789474 0.921875 +vt 0.789474 0.906250 +vt 0.473684 0.906250 +vt 0.842105 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.531250 +vt 0.842105 0.531250 +vt 1.000000 0.062500 +vt 0.947368 0.062500 +vt 0.947368 0.437500 +vt 1.000000 0.437500 +vt 0.894737 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.531250 +vt 0.894737 0.531250 +vt 1.000000 0.937500 +vt 1.000000 0.562500 +vt 0.947368 0.562500 +vt 0.842105 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.062500 +vt 0.842105 0.062500 +vt 1.000000 0.062500 +vt 0.947368 0.062500 +vt 0.947368 0.437500 +vt 1.000000 0.437500 +vt 0.947368 0.468750 +vt 0.894737 0.062500 +vt 0.894737 0.468750 +vt 1.000000 0.937500 +vt 1.000000 0.562500 +vt 0.947368 0.562500 +vt 0.947368 0.937500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.890625 +vt 0.368421 0.890625 +vt 0.368421 0.875000 +vt 0.052632 0.875000 +vt 0.473684 0.890625 +vt 0.789474 0.890625 +vt 0.789474 0.875000 +vt 0.473684 0.875000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.859375 +vt 0.368421 0.859375 +vt 0.368421 0.843750 +vt 0.052632 0.843750 +vt 0.473684 0.859375 +vt 0.789474 0.859375 +vt 0.789474 0.843750 +vt 0.473684 0.843750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.828125 +vt 0.368421 0.828125 +vt 0.368421 0.812500 +vt 0.052632 0.812500 +vt 0.473684 0.828125 +vt 0.789474 0.828125 +vt 0.789474 0.812500 +vt 0.473684 0.812500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.796875 +vt 0.368421 0.796875 +vt 0.368421 0.781250 +vt 0.052632 0.781250 +vt 0.473684 0.796875 +vt 0.789474 0.796875 +vt 0.789474 0.781250 +vt 0.473684 0.781250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.765625 +vt 0.368421 0.765625 +vt 0.368421 0.750000 +vt 0.052632 0.750000 +vt 0.473684 0.765625 +vt 0.789474 0.765625 +vt 0.789474 0.750000 +vt 0.473684 0.750000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.703125 +vt 0.368421 0.703125 +vt 0.368421 0.687500 +vt 0.052632 0.687500 +vt 0.473684 0.703125 +vt 0.789474 0.703125 +vt 0.789474 0.687500 +vt 0.473684 0.687500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.734375 +vt 0.368421 0.734375 +vt 0.368421 0.718750 +vt 0.052632 0.718750 +vt 0.473684 0.734375 +vt 0.789474 0.734375 +vt 0.789474 0.718750 +vt 0.473684 0.718750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.671875 +vt 0.368421 0.671875 +vt 0.368421 0.656250 +vt 0.052632 0.656250 +vt 0.473684 0.671875 +vt 0.789474 0.671875 +vt 0.789474 0.656250 +vt 0.473684 0.656250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.640625 +vt 0.368421 0.640625 +vt 0.368421 0.625000 +vt 0.052632 0.625000 +vt 0.473684 0.640625 +vt 0.789474 0.640625 +vt 0.789474 0.625000 +vt 0.473684 0.625000 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.609375 +vt 0.368421 0.609375 +vt 0.368421 0.593750 +vt 0.052632 0.593750 +vt 0.473684 0.609375 +vt 0.789474 0.609375 +vt 0.789474 0.593750 +vt 0.473684 0.593750 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.578125 +vt 0.368421 0.578125 +vt 0.368421 0.562500 +vt 0.052632 0.562500 +vt 0.473684 0.578125 +vt 0.789474 0.578125 +vt 0.789474 0.562500 +vt 0.473684 0.562500 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.546875 +vt 0.368421 0.546875 +vt 0.368421 0.531250 +vt 0.052632 0.531250 +vt 0.473684 0.546875 +vt 0.789474 0.546875 +vt 0.789474 0.531250 +vt 0.473684 0.531250 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.468750 +vt 0.368421 0.468750 +vt 0.368421 0.453125 +vt 0.052632 0.453125 +vt 0.473684 0.468750 +vt 0.789474 0.468750 +vt 0.789474 0.453125 +vt 0.473684 0.453125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.437500 +vt 0.368421 0.437500 +vt 0.368421 0.421875 +vt 0.052632 0.421875 +vt 0.473684 0.437500 +vt 0.789474 0.437500 +vt 0.789474 0.421875 +vt 0.473684 0.421875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.406250 +vt 0.368421 0.406250 +vt 0.368421 0.390625 +vt 0.052632 0.390625 +vt 0.473684 0.406250 +vt 0.789474 0.406250 +vt 0.789474 0.390625 +vt 0.473684 0.390625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.375000 +vt 0.368421 0.375000 +vt 0.368421 0.359375 +vt 0.052632 0.359375 +vt 0.473684 0.375000 +vt 0.789474 0.375000 +vt 0.789474 0.359375 +vt 0.473684 0.359375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.343750 +vt 0.368421 0.343750 +vt 0.368421 0.328125 +vt 0.052632 0.328125 +vt 0.473684 0.343750 +vt 0.789474 0.343750 +vt 0.789474 0.328125 +vt 0.473684 0.328125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.312500 +vt 0.368421 0.312500 +vt 0.368421 0.296875 +vt 0.052632 0.296875 +vt 0.473684 0.312500 +vt 0.789474 0.312500 +vt 0.789474 0.296875 +vt 0.473684 0.296875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.250000 +vt 0.368421 0.250000 +vt 0.368421 0.234375 +vt 0.052632 0.234375 +vt 0.473684 0.250000 +vt 0.789474 0.250000 +vt 0.789474 0.234375 +vt 0.473684 0.234375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.281250 +vt 0.368421 0.281250 +vt 0.368421 0.265625 +vt 0.052632 0.265625 +vt 0.473684 0.281250 +vt 0.789474 0.281250 +vt 0.789474 0.265625 +vt 0.473684 0.265625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.218750 +vt 0.368421 0.218750 +vt 0.368421 0.203125 +vt 0.052632 0.203125 +vt 0.473684 0.218750 +vt 0.789474 0.218750 +vt 0.789474 0.203125 +vt 0.473684 0.203125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.187500 +vt 0.368421 0.187500 +vt 0.368421 0.171875 +vt 0.052632 0.171875 +vt 0.473684 0.187500 +vt 0.789474 0.187500 +vt 0.789474 0.171875 +vt 0.473684 0.171875 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.156250 +vt 0.368421 0.156250 +vt 0.368421 0.140625 +vt 0.052632 0.140625 +vt 0.473684 0.156250 +vt 0.789474 0.156250 +vt 0.789474 0.140625 +vt 0.473684 0.140625 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.125000 +vt 0.368421 0.125000 +vt 0.368421 0.109375 +vt 0.052632 0.109375 +vt 0.473684 0.125000 +vt 0.789474 0.125000 +vt 0.789474 0.109375 +vt 0.473684 0.109375 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vt 0.052632 0.093750 +vt 0.368421 0.093750 +vt 0.368421 0.078125 +vt 0.052632 0.078125 +vt 0.473684 0.093750 +vt 0.789474 0.093750 +vt 0.789474 0.078125 +vt 0.473684 0.078125 +vt 0.986842 0.562500 +vt 0.973684 0.562500 +vt 0.973684 0.937500 +vt 0.986842 0.937500 +vt 0.973684 0.062500 +vt 0.960526 0.062500 +vt 0.960526 0.437500 +vt 0.973684 0.437500 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 +s off +f 15/1/1 21/2/1 2/3/1 1/4/1 10/5/1 20/6/1 +f 16/7/2 17/8/2 30/9/2 31/10/2 +f 23/11/3 11/12/3 8/13/3 3/14/3 22/15/3 10/5/3 1/4/3 6/16/3 +f 18/17/2 23/18/2 6/19/2 5/20/2 12/21/2 19/22/2 +f 2/23/4 5/24/4 6/25/4 1/26/4 +f 3/27/5 8/28/5 7/29/5 4/30/5 +f 13/31/1 14/32/1 27/33/1 32/34/1 +f 24/35/2 28/36/2 16/7/2 31/10/2 19/22/2 12/21/2 +f 22/15/1 25/37/1 13/31/1 32/34/1 20/6/1 10/5/1 +f 24/38/6 12/39/6 5/40/6 2/41/6 21/42/6 9/43/6 4/44/6 7/45/6 +f 26/46/1 9/47/1 21/2/1 15/1/1 27/33/1 14/32/1 +f 29/48/2 11/49/2 23/18/2 18/17/2 30/9/2 17/8/2 +f 8/50/2 11/49/2 29/48/2 28/36/2 24/35/2 7/51/2 +f 4/52/1 9/47/1 26/46/1 25/37/1 22/15/1 3/14/1 +f 33/53/7 36/54/7 40/55/7 37/56/7 +f 35/57/8 34/58/8 38/59/8 39/60/8 +f 15/61/3 19/62/3 31/63/3 27/64/3 +f 30/65/4 32/66/4 27/67/4 31/68/4 +f 18/69/6 20/70/6 32/71/6 30/72/6 +f 18/73/5 19/74/5 15/75/5 20/70/5 +f 14/76/3 16/77/3 28/78/3 26/79/3 +f 29/80/4 25/81/4 26/82/4 28/83/4 +f 13/84/6 25/81/6 29/85/6 17/86/6 +f 17/87/5 16/88/5 14/89/5 13/90/5 +f 40/91/9 39/92/9 38/93/9 37/94/9 +f 33/95/10 34/96/10 35/97/10 36/98/10 +f 41/99/7 44/100/7 48/101/7 45/102/7 +f 43/103/8 42/104/8 46/105/8 47/106/8 +f 48/107/9 47/108/9 46/109/9 45/110/9 +f 41/111/10 42/112/10 43/113/10 44/114/10 +f 49/115/7 52/116/7 56/117/7 53/118/7 +f 51/119/8 50/120/8 54/121/8 55/122/8 +f 56/123/9 55/124/9 54/125/9 53/126/9 +f 49/127/10 50/128/10 51/129/10 52/130/10 +f 57/131/7 60/132/7 64/133/7 61/134/7 +f 59/135/8 58/136/8 62/137/8 63/138/8 +f 64/139/9 63/140/9 62/141/9 61/142/9 +f 57/143/10 58/144/10 59/145/10 60/146/10 +f 65/147/7 68/148/7 72/149/7 69/150/7 +f 67/151/8 66/152/8 70/153/8 71/154/8 +f 72/155/9 71/156/9 70/157/9 69/158/9 +f 65/159/10 66/160/10 67/161/10 68/162/10 +f 73/163/7 76/164/7 80/165/7 77/166/7 +f 75/167/8 74/168/8 78/169/8 79/170/8 +f 80/171/9 79/172/9 78/173/9 77/174/9 +f 73/175/10 74/176/10 75/177/10 76/178/10 +f 81/179/7 84/180/7 88/181/7 85/182/7 +f 83/183/8 82/184/8 86/185/8 87/186/8 +f 88/187/9 87/188/9 86/189/9 85/190/9 +f 81/191/10 82/192/10 83/193/10 84/194/10 +f 89/195/7 92/196/7 96/197/7 93/198/7 +f 91/199/8 90/200/8 94/201/8 95/202/8 +f 96/203/9 95/204/9 94/205/9 93/206/9 +f 89/207/10 90/208/10 91/209/10 92/210/10 +f 97/211/7 100/212/7 104/213/7 101/214/7 +f 99/215/8 98/216/8 102/217/8 103/218/8 +f 104/219/9 103/220/9 102/221/9 101/222/9 +f 97/223/10 98/224/10 99/225/10 100/226/10 +f 105/227/7 108/228/7 112/229/7 109/230/7 +f 107/231/8 106/232/8 110/233/8 111/234/8 +f 112/235/9 111/236/9 110/237/9 109/238/9 +f 105/239/10 106/240/10 107/241/10 108/242/10 +f 113/243/7 116/244/7 120/245/7 117/246/7 +f 115/247/8 114/248/8 118/249/8 119/250/8 +f 120/251/9 119/252/9 118/253/9 117/254/9 +f 113/255/10 114/256/10 115/257/10 116/258/10 +f 121/259/7 124/260/7 128/261/7 125/262/7 +f 123/263/8 122/264/8 126/265/8 127/266/8 +f 128/267/9 127/268/9 126/269/9 125/270/9 +f 121/271/10 122/272/10 123/273/10 124/274/10 +f 129/275/7 132/276/7 136/277/7 133/278/7 +f 131/279/8 130/280/8 134/281/8 135/282/8 +f 136/283/9 135/284/9 134/285/9 133/286/9 +f 129/287/10 130/288/10 131/289/10 132/290/10 +f 137/291/7 140/292/7 144/293/7 141/294/7 +f 139/295/8 138/296/8 142/297/8 143/298/8 +f 144/299/9 143/300/9 142/301/9 141/302/9 +f 137/303/10 138/304/10 139/305/10 140/306/10 +f 145/307/7 148/308/7 152/309/7 149/310/7 +f 147/311/8 146/312/8 150/313/8 151/314/8 +f 152/315/9 151/316/9 150/317/9 149/318/9 +f 145/319/10 146/320/10 147/321/10 148/322/10 +f 153/323/7 156/324/7 160/325/7 157/326/7 +f 155/327/8 154/328/8 158/329/8 159/330/8 +f 160/331/9 159/332/9 158/333/9 157/334/9 +f 153/335/10 154/336/10 155/337/10 156/338/10 +f 161/339/7 164/340/7 168/341/7 165/342/7 +f 163/343/8 162/344/8 166/345/8 167/346/8 +f 168/347/9 167/348/9 166/349/9 165/350/9 +f 161/351/10 162/352/10 163/353/10 164/354/10 +f 169/355/7 172/356/7 176/357/7 173/358/7 +f 171/359/8 170/360/8 174/361/8 175/362/8 +f 176/363/9 175/364/9 174/365/9 173/366/9 +f 169/367/10 170/368/10 171/369/10 172/370/10 +f 177/371/7 180/372/7 184/373/7 181/374/7 +f 179/375/8 178/376/8 182/377/8 183/378/8 +f 184/379/9 183/380/9 182/381/9 181/382/9 +f 177/383/10 178/384/10 179/385/10 180/386/10 +f 185/387/7 188/388/7 192/389/7 189/390/7 +f 187/391/8 186/392/8 190/393/8 191/394/8 +f 192/395/9 191/396/9 190/397/9 189/398/9 +f 185/399/10 186/400/10 187/401/10 188/402/10 +f 193/403/7 196/404/7 200/405/7 197/406/7 +f 195/407/8 194/408/8 198/409/8 199/410/8 +f 200/411/9 199/412/9 198/413/9 197/414/9 +f 193/415/10 194/416/10 195/417/10 196/418/10 +f 201/419/7 204/420/7 208/421/7 205/422/7 +f 203/423/8 202/424/8 206/425/8 207/426/8 +f 208/427/9 207/428/9 206/429/9 205/430/9 +f 201/431/10 202/432/10 203/433/10 204/434/10 +f 209/435/7 212/436/7 216/437/7 213/438/7 +f 211/439/8 210/440/8 214/441/8 215/442/8 +f 216/443/9 215/444/9 214/445/9 213/446/9 +f 209/447/10 210/448/10 211/449/10 212/450/10 +f 217/451/7 220/452/7 224/453/7 221/454/7 +f 219/455/8 218/456/8 222/457/8 223/458/8 +f 224/459/9 223/460/9 222/461/9 221/462/9 +f 217/463/10 218/464/10 219/465/10 220/466/10 +f 225/467/7 228/468/7 232/469/7 229/470/7 +f 227/471/8 226/472/8 230/473/8 231/474/8 +f 232/475/9 231/476/9 230/477/9 229/478/9 +f 225/479/10 226/480/10 227/481/10 228/482/10 +f 233/483/7 236/484/7 240/485/7 237/486/7 +f 235/487/8 234/488/8 238/489/8 239/490/8 +f 240/491/9 239/492/9 238/493/9 237/494/9 +f 233/495/10 234/496/10 235/497/10 236/498/10 diff --git a/homedecor_3d_extras/models/homedecor_door_fancy_a.obj b/homedecor_3d_extras/models/homedecor_door_fancy_a.obj new file mode 100644 index 0000000..1456e9c --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_fancy_a.obj @@ -0,0 +1,108 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-fancy.blend' +# www.blender.org +o Cylinder_Cylinder_door +v -0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.375000 0.375000 -0.375000 +v 0.375000 0.375000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v 0.375000 0.375000 -0.500000 +v -0.375000 0.375000 -0.500000 +v -0.375000 1.375000 -0.437500 +v 0.375000 1.375000 -0.437500 +v 0.375000 0.375000 -0.437500 +v -0.375000 0.375000 -0.437500 +v 0.375000 1.375000 -0.436500 +v -0.375000 1.375000 -0.436500 +v -0.375000 0.375000 -0.436500 +v 0.375000 0.375000 -0.436500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.789474 0.437500 +vt 0.473684 0.437500 +vt 0.421053 -0.000000 +vt 0.842105 -0.000000 +vt 0.368421 0.437500 +vt 0.052632 0.437500 +vt 0.000000 -0.000000 +vt 0.421053 -0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 -0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 -0.000000 +vt 0.842105 1.000000 +vt 0.842105 -0.000000 +vt 0.894737 -0.000000 +vt 0.894737 1.000000 +vt 0.947368 -0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 -0.000000 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.894737 0.937500 +vt 0.842105 0.937500 +vt 0.842105 0.437500 +vt 0.894737 0.437500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.437500 +vt 0.947368 0.437500 +vt 0.789474 0.937500 +vt 0.473684 0.937500 +vt 0.473684 0.437500 +vt 0.789474 0.437500 +vt 0.368421 0.937500 +vt 0.052632 0.937500 +vt 0.052632 0.437500 +vt 0.368421 0.437500 +vn 0.0000 -1.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 +vn -1.0000 0.0000 0.0000 +s off +f 1/1/1 2/2/1 3/3/1 4/4/1 +f 16/5/2 15/6/2 11/7/2 12/8/2 +f 8/9/3 7/10/3 5/11/3 6/12/3 +f 5/11/3 7/10/3 1/13/3 10/14/3 +f 6/12/3 9/15/3 4/16/3 8/9/3 +f 9/15/3 10/14/3 1/13/3 4/16/3 +f 2/17/2 16/5/2 12/8/2 13/18/2 +f 14/19/2 3/20/2 2/17/2 13/18/2 +f 3/20/2 14/19/2 11/7/2 15/6/2 +f 5/21/1 12/22/1 11/23/1 6/24/1 +f 10/25/4 9/26/4 14/27/4 13/28/4 +f 9/29/5 6/30/5 11/31/5 14/32/5 +f 5/33/6 10/34/6 13/35/6 12/36/6 +f 7/37/4 8/38/4 15/39/4 16/40/4 +f 2/41/5 1/42/5 7/43/5 16/44/5 +f 4/45/6 3/46/6 15/47/6 8/48/6 +f 17/49/2 18/50/2 19/51/2 20/52/2 +f 21/53/3 22/54/3 23/55/3 24/56/3 diff --git a/homedecor_3d_extras/models/homedecor_door_fancy_b.obj b/homedecor_3d_extras/models/homedecor_door_fancy_b.obj new file mode 100644 index 0000000..3f894c3 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_fancy_b.obj @@ -0,0 +1,108 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-fancy.blend' +# www.blender.org +o Cylinder_Cylinder_door +v 0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.375000 0.375000 -0.500000 +v -0.375000 0.375000 -0.500000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v -0.375000 0.375000 -0.375000 +v 0.375000 0.375000 -0.375000 +v 0.375000 1.375000 -0.437500 +v -0.375000 1.375000 -0.437500 +v -0.375000 0.375000 -0.437500 +v 0.375000 0.375000 -0.437500 +v -0.375000 1.375000 -0.438500 +v 0.375000 1.375000 -0.438500 +v 0.375000 0.375000 -0.438500 +v -0.375000 0.375000 -0.438500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.789474 0.437500 +vt 0.473684 0.437500 +vt 0.421053 -0.000000 +vt 0.842105 -0.000000 +vt 0.368421 0.437500 +vt 0.052632 0.437500 +vt 0.000000 -0.000000 +vt 0.421053 -0.000000 +vt 0.052632 0.937500 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.368421 0.937500 +vt 0.789474 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.473684 0.937500 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 -0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.947368 -0.000000 +vt 0.842105 1.000000 +vt 0.842105 -0.000000 +vt 0.894737 -0.000000 +vt 0.894737 1.000000 +vt 0.947368 -0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 -0.000000 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.894737 0.937500 +vt 0.842105 0.937500 +vt 0.842105 0.437500 +vt 0.894737 0.437500 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.437500 +vt 0.947368 0.437500 +vt 0.789474 0.937500 +vt 0.473684 0.937500 +vt 0.473684 0.437500 +vt 0.789474 0.437500 +vt 0.368421 0.937500 +vt 0.052632 0.937500 +vt 0.052632 0.437500 +vt 0.368421 0.437500 +vn 0.0000 -1.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 +vn 1.0000 0.0000 0.0000 +s off +f 1/1/1 2/2/1 3/3/1 4/4/1 +f 16/5/2 15/6/2 11/7/2 12/8/2 +f 8/9/3 7/10/3 5/11/3 6/12/3 +f 5/11/3 7/10/3 1/13/3 10/14/3 +f 6/12/3 9/15/3 4/16/3 8/9/3 +f 9/15/3 10/14/3 1/13/3 4/16/3 +f 2/17/2 16/5/2 12/8/2 13/18/2 +f 14/19/2 3/20/2 2/17/2 13/18/2 +f 3/20/2 14/19/2 11/7/2 15/6/2 +f 5/21/1 12/22/1 11/23/1 6/24/1 +f 10/25/4 9/26/4 14/27/4 13/28/4 +f 9/29/5 6/30/5 11/31/5 14/32/5 +f 5/33/6 10/34/6 13/35/6 12/36/6 +f 7/37/4 8/38/4 15/39/4 16/40/4 +f 2/41/5 1/42/5 7/43/5 16/44/5 +f 4/45/6 3/46/6 15/47/6 8/48/6 +f 17/49/2 18/50/2 19/51/2 20/52/2 +f 21/53/3 22/54/3 23/55/3 24/56/3 diff --git a/homedecor_3d_extras/models/homedecor_door_french_a.obj b/homedecor_3d_extras/models/homedecor_door_french_a.obj new file mode 100644 index 0000000..55c1af0 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_french_a.obj @@ -0,0 +1,334 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-woodglass-standard.blend' +# www.blender.org +o Cylinder +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v 0.500000 -0.375000 -0.500000 +v -0.500000 1.375000 -0.500000 +v -0.500000 -0.375000 -0.375000 +v 0.500000 1.375000 -0.375000 +v -0.375000 0.437500 -0.500000 +v 0.375000 0.437500 -0.500000 +v 0.375000 1.375000 -0.500000 +v 0.375000 0.437500 -0.375000 +v -0.375000 0.437500 -0.375000 +v -0.375000 1.375000 -0.375000 +v 0.375000 1.375000 -0.375000 +v -0.375000 1.375000 -0.500000 +v 0.500000 1.375000 -0.500000 +v -0.500000 -0.375000 -0.500000 +v -0.500000 1.375000 -0.375000 +v 0.500000 -0.375000 -0.375000 +v -0.375000 -0.375000 -0.500000 +v 0.375000 -0.375000 -0.500000 +v 0.375000 0.562500 -0.500000 +v 0.375000 -0.375000 -0.375000 +v -0.375000 -0.375000 -0.375000 +v -0.375000 0.562500 -0.375000 +v 0.375000 0.562500 -0.375000 +v -0.375000 0.562500 -0.500000 +v -0.375000 -0.031250 -0.500000 +v 0.375000 -0.031250 -0.500000 +v 0.375000 -0.031250 -0.375000 +v -0.375000 -0.031250 -0.375000 +v 0.375000 0.093750 -0.500000 +v -0.375000 0.093750 -0.375000 +v 0.375000 0.093750 -0.375000 +v -0.375000 0.093750 -0.500000 +v -0.375000 1.031250 -0.500000 +v 0.375000 1.031250 -0.375000 +v -0.375000 1.031250 -0.375000 +v 0.375000 1.031250 -0.500000 +v -0.375000 0.906250 -0.375000 +v 0.375000 0.906250 -0.375000 +v 0.375000 0.906250 -0.500000 +v -0.375000 0.906250 -0.500000 +v 0.062500 1.031250 -0.500000 +v 0.062500 1.031250 -0.375000 +v -0.062500 1.031250 -0.375000 +v -0.062500 1.031250 -0.500000 +v 0.062500 1.375000 -0.500000 +v 0.062500 1.375000 -0.375000 +v -0.062500 1.375000 -0.375000 +v -0.062500 1.375000 -0.500000 +v 0.062500 0.562500 -0.500000 +v 0.062500 0.562500 -0.375000 +v -0.062500 0.562500 -0.375000 +v -0.062500 0.562500 -0.500000 +v 0.062500 0.906250 -0.500000 +v 0.062500 0.906250 -0.375000 +v -0.062500 0.906250 -0.375000 +v -0.062500 0.906250 -0.500000 +v 0.062500 0.093750 -0.500000 +v 0.062500 0.093750 -0.375000 +v -0.062500 0.093750 -0.375000 +v -0.062500 0.093750 -0.500000 +v 0.062500 0.437500 -0.500000 +v 0.062500 0.437500 -0.375000 +v -0.062500 0.437500 -0.375000 +v -0.062500 0.437500 -0.500000 +v 0.062500 -0.375000 -0.500000 +v 0.062500 -0.375000 -0.375000 +v -0.062500 -0.375000 -0.375000 +v -0.062500 -0.375000 -0.500000 +v 0.062500 -0.031250 -0.500000 +v 0.062500 -0.031250 -0.375000 +v -0.062500 -0.031250 -0.375000 +v -0.062500 -0.031250 -0.500000 +v 0.375000 -0.375000 -0.437500 +v -0.375000 -0.375000 -0.437500 +v 0.375000 1.375000 -0.437500 +v -0.375000 1.375000 -0.437500 +v -0.375000 -0.375000 -0.436500 +v 0.375000 -0.375000 -0.436500 +v -0.375000 1.375000 -0.436500 +v 0.375000 1.375000 -0.436500 +vt 0.473684 0.937500 +vt 0.789474 0.937500 +vt 0.842105 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.937500 +vt 0.368421 0.468750 +vt 0.368421 0.531250 +vt 0.052632 0.531250 +vt 0.052632 0.468750 +vt 0.894737 0.937500 +vt 0.894737 1.000000 +vt 0.842105 0.062500 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 0.062500 +vt 0.052632 0.937500 +vt 0.368421 0.937500 +vt 0.421053 0.937500 +vt 0.421053 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.937500 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.789474 0.468750 +vt 0.789474 0.531250 +vt 0.473684 0.531250 +vt 0.473684 0.468750 +vt 0.421053 0.062500 +vt 0.368421 0.062500 +vt 0.789474 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 0.947368 0.062500 +vt 0.947368 0.937500 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.937500 +vt 0.473684 0.062500 +vt 0.421053 0.062500 +vt 0.052632 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 0.842105 0.937500 +vt 0.842105 0.531250 +vt 0.894737 0.531250 +vt 0.894737 0.937500 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.894737 0.937500 +vt 0.894737 0.531250 +vt 0.947368 0.531250 +vt 0.947368 0.937500 +vt 1.000000 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.842105 0.468750 +vt 0.842105 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.468750 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.947368 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.062500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.368421 0.234375 +vt 0.368421 0.296875 +vt 0.052632 0.296875 +vt 0.052632 0.234375 +vt 0.789474 0.234375 +vt 0.789474 0.296875 +vt 0.473684 0.296875 +vt 0.473684 0.234375 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.789474 0.703125 +vt 0.789474 0.765625 +vt 0.473684 0.765625 +vt 0.473684 0.703125 +vt 0.368421 0.703125 +vt 0.368421 0.765625 +vt 0.052632 0.765625 +vt 0.052632 0.703125 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.765625 +vt 0.947368 0.765625 +vt 0.236842 0.937500 +vt 0.184211 0.937500 +vt 0.184211 0.765625 +vt 0.236842 0.765625 +vt 0.894737 0.937500 +vt 0.842105 0.937500 +vt 0.842105 0.765625 +vt 0.894737 0.765625 +vt 0.657895 0.937500 +vt 0.605263 0.937500 +vt 0.605263 0.765625 +vt 0.657895 0.765625 +vt 0.947368 0.703125 +vt 0.894737 0.703125 +vt 0.894737 0.531250 +vt 0.947368 0.531250 +vt 0.236842 0.703125 +vt 0.184211 0.703125 +vt 0.184211 0.531250 +vt 0.236842 0.531250 +vt 0.894737 0.703125 +vt 0.842105 0.703125 +vt 0.842105 0.531250 +vt 0.894737 0.531250 +vt 0.657895 0.703125 +vt 0.605263 0.703125 +vt 0.605263 0.531250 +vt 0.657895 0.531250 +vt 0.947368 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.296875 +vt 0.947368 0.296875 +vt 0.236842 0.468750 +vt 0.184211 0.468750 +vt 0.184211 0.296875 +vt 0.236842 0.296875 +vt 0.894737 0.468750 +vt 0.842105 0.468750 +vt 0.842105 0.296875 +vt 0.894737 0.296875 +vt 0.657895 0.468750 +vt 0.605263 0.468750 +vt 0.605263 0.296875 +vt 0.657895 0.296875 +vt 0.947368 0.234375 +vt 0.894737 0.234375 +vt 0.894737 0.062500 +vt 0.947368 0.062500 +vt 0.236842 0.234375 +vt 0.184211 0.234375 +vt 0.184211 0.062500 +vt 0.236842 0.062500 +vt 0.894737 0.234375 +vt 0.842105 0.234375 +vt 0.842105 0.062500 +vt 0.894737 0.062500 +vt 0.657895 0.234375 +vt 0.605263 0.234375 +vt 0.605263 0.062500 +vt 0.657895 0.062500 +vt 0.473684 0.062500 +vt 0.789474 0.062500 +vt 0.789474 0.937500 +vt 0.473684 0.937500 +vt 0.052632 0.062500 +vt 0.368421 0.062500 +vt 0.368421 0.937500 +vt 0.052632 0.937500 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +g Cylinder_Cylinder_door +s off +f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 +f 16/7/2 31/8/2 30/9/2 17/10/2 +f 23/11/3 6/12/3 1/4/3 10/3/3 22/13/3 3/14/3 8/15/3 11/16/3 +f 18/17/2 19/18/2 12/19/2 5/20/2 6/21/2 23/22/2 +f 2/23/4 1/24/4 6/25/4 5/26/4 +f 3/27/5 4/28/5 7/29/5 8/30/5 +f 13/31/1 32/32/1 27/33/1 14/34/1 +f 24/35/2 12/19/2 19/18/2 31/8/2 16/7/2 28/36/2 +f 22/13/1 10/3/1 20/2/1 32/32/1 13/31/1 25/37/1 +f 24/38/6 7/39/6 4/40/6 9/41/6 21/42/6 2/43/6 5/44/6 12/45/6 +f 26/46/1 14/34/1 27/33/1 15/1/1 21/6/1 9/47/1 +f 29/48/2 17/10/2 30/9/2 18/17/2 23/22/2 11/49/2 +f 8/50/2 7/51/2 24/35/2 28/36/2 29/48/2 11/49/2 +f 4/52/1 3/14/1 22/13/1 25/37/1 26/46/1 9/47/1 +f 15/53/3 27/54/3 31/55/3 19/56/3 +f 30/57/4 31/58/4 27/59/4 32/60/4 +f 18/61/6 30/62/6 32/63/6 20/64/6 +f 18/65/5 20/64/5 15/66/5 19/67/5 +f 14/68/3 26/69/3 28/70/3 16/71/3 +f 29/72/4 28/73/4 26/74/4 25/75/4 +f 13/76/6 17/77/6 29/78/6 25/75/6 +f 17/79/5 13/80/5 14/81/5 16/82/5 +f 35/83/2 39/84/2 38/85/2 36/86/2 +f 33/87/1 40/88/1 37/89/1 34/90/1 +f 38/91/4 39/92/4 37/93/4 40/94/4 +f 36/95/5 33/96/5 34/97/5 35/98/5 +f 45/99/5 48/100/5 47/101/5 46/102/5 +f 43/103/4 42/104/4 44/105/4 41/106/4 +f 48/107/1 41/108/1 44/109/1 47/110/1 +f 46/111/2 42/112/2 43/113/2 45/114/2 +f 53/115/6 54/116/6 50/117/6 49/118/6 +f 54/119/2 55/120/2 51/121/2 50/122/2 +f 55/123/3 56/124/3 52/125/3 51/126/3 +f 56/127/1 53/128/1 49/129/1 52/130/1 +f 61/131/6 62/132/6 58/133/6 57/134/6 +f 62/135/2 63/136/2 59/137/2 58/138/2 +f 63/139/3 64/140/3 60/141/3 59/142/3 +f 64/143/1 61/144/1 57/145/1 60/146/1 +f 69/147/6 70/148/6 66/149/6 65/150/6 +f 70/151/2 71/152/2 67/153/2 66/154/2 +f 71/155/3 72/156/3 68/157/3 67/158/3 +f 72/159/1 69/160/1 65/161/1 68/162/1 +f 77/163/6 78/164/6 74/165/6 73/166/6 +f 78/167/2 79/168/2 75/169/2 74/170/2 +f 79/171/3 80/172/3 76/173/3 75/174/3 +f 80/175/1 77/176/1 73/177/1 76/178/1 +g Cylinder_Cylinder_glass +f 81/179/1 82/180/1 84/181/1 83/182/1 +f 85/183/2 86/184/2 88/185/2 87/186/2 diff --git a/homedecor_3d_extras/models/homedecor_door_french_b.obj b/homedecor_3d_extras/models/homedecor_door_french_b.obj new file mode 100644 index 0000000..7cb59de --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_french_b.obj @@ -0,0 +1,334 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-woodglass-standard.blend' +# www.blender.org +o Cylinder +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v -0.500000 -0.375000 -0.375000 +v 0.500000 1.375000 -0.375000 +v 0.500000 -0.375000 -0.500000 +v -0.500000 1.375000 -0.500000 +v 0.375000 0.437500 -0.375000 +v -0.375000 0.437500 -0.375000 +v -0.375000 1.375000 -0.375000 +v -0.375000 0.437500 -0.500000 +v 0.375000 0.437500 -0.500000 +v 0.375000 1.375000 -0.500000 +v -0.375000 1.375000 -0.500000 +v 0.375000 1.375000 -0.375000 +v -0.500000 1.375000 -0.375000 +v 0.500000 -0.375000 -0.375000 +v 0.500000 1.375000 -0.500000 +v -0.500000 -0.375000 -0.500000 +v 0.375000 -0.375000 -0.375000 +v -0.375000 -0.375000 -0.375000 +v -0.375000 0.562500 -0.375000 +v -0.375000 -0.375000 -0.500000 +v 0.375000 -0.375000 -0.500000 +v 0.375000 0.562500 -0.500000 +v -0.375000 0.562500 -0.500000 +v 0.375000 0.562500 -0.375000 +v 0.375000 -0.031250 -0.375000 +v -0.375000 -0.031250 -0.375000 +v -0.375000 -0.031250 -0.500000 +v 0.375000 -0.031250 -0.500000 +v -0.375000 0.093750 -0.375000 +v 0.375000 0.093750 -0.500000 +v -0.375000 0.093750 -0.500000 +v 0.375000 0.093750 -0.375000 +v 0.375000 1.031250 -0.375000 +v -0.375000 1.031250 -0.500000 +v 0.375000 1.031250 -0.500000 +v -0.375000 1.031250 -0.375000 +v 0.375000 0.906250 -0.500000 +v -0.375000 0.906250 -0.500000 +v -0.375000 0.906250 -0.375000 +v 0.375000 0.906250 -0.375000 +v -0.062500 1.031250 -0.375000 +v -0.062500 1.031250 -0.500000 +v 0.062500 1.031250 -0.500000 +v 0.062500 1.031250 -0.375000 +v -0.062500 1.375000 -0.375000 +v -0.062500 1.375000 -0.500000 +v 0.062500 1.375000 -0.500000 +v 0.062500 1.375000 -0.375000 +v -0.062500 0.562500 -0.375000 +v -0.062500 0.562500 -0.500000 +v 0.062500 0.562500 -0.500000 +v 0.062500 0.562500 -0.375000 +v -0.062500 0.906250 -0.375000 +v -0.062500 0.906250 -0.500000 +v 0.062500 0.906250 -0.500000 +v 0.062500 0.906250 -0.375000 +v -0.062500 0.093750 -0.375000 +v -0.062500 0.093750 -0.500000 +v 0.062500 0.093750 -0.500000 +v 0.062500 0.093750 -0.375000 +v -0.062500 0.437500 -0.375000 +v -0.062500 0.437500 -0.500000 +v 0.062500 0.437500 -0.500000 +v 0.062500 0.437500 -0.375000 +v -0.062500 -0.375000 -0.375000 +v -0.062500 -0.375000 -0.500000 +v 0.062500 -0.375000 -0.500000 +v 0.062500 -0.375000 -0.375000 +v -0.062500 -0.031250 -0.375000 +v -0.062500 -0.031250 -0.500000 +v 0.062500 -0.031250 -0.500000 +v 0.062500 -0.031250 -0.375000 +v -0.375000 -0.375000 -0.437500 +v 0.375000 -0.375000 -0.437500 +v -0.375000 1.375000 -0.437500 +v 0.375000 1.375000 -0.437500 +v 0.375000 -0.375000 -0.438500 +v -0.375000 -0.375000 -0.438500 +v 0.375000 1.375000 -0.438500 +v -0.375000 1.375000 -0.438500 +vt 0.473684 0.937500 +vt 0.789474 0.937500 +vt 0.842105 0.937500 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.937500 +vt 0.368421 0.468750 +vt 0.368421 0.531250 +vt 0.052632 0.531250 +vt 0.052632 0.468750 +vt 0.894737 0.937500 +vt 0.894737 1.000000 +vt 0.842105 0.062500 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 0.062500 +vt 0.052632 0.937500 +vt 0.368421 0.937500 +vt 0.421053 0.937500 +vt 0.421053 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.937500 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.789474 0.468750 +vt 0.789474 0.531250 +vt 0.473684 0.531250 +vt 0.473684 0.468750 +vt 0.421053 0.062500 +vt 0.368421 0.062500 +vt 0.789474 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 0.947368 0.062500 +vt 0.947368 0.937500 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.937500 +vt 0.473684 0.062500 +vt 0.421053 0.062500 +vt 0.052632 0.062500 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 0.842105 0.937500 +vt 0.842105 0.531250 +vt 0.894737 0.531250 +vt 0.894737 0.937500 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.894737 0.937500 +vt 0.894737 0.531250 +vt 0.947368 0.531250 +vt 0.947368 0.937500 +vt 1.000000 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.842105 0.468750 +vt 0.842105 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.468750 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.947368 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.062500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 0.368421 0.234375 +vt 0.368421 0.296875 +vt 0.052632 0.296875 +vt 0.052632 0.234375 +vt 0.789474 0.234375 +vt 0.789474 0.296875 +vt 0.473684 0.296875 +vt 0.473684 0.234375 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 1.000000 0.937500 +vt 0.947368 0.937500 +vt 0.947368 0.562500 +vt 1.000000 0.562500 +vt 1.000000 0.062500 +vt 1.000000 0.437500 +vt 0.947368 0.437500 +vt 0.947368 0.062500 +vt 0.789474 0.703125 +vt 0.789474 0.765625 +vt 0.473684 0.765625 +vt 0.473684 0.703125 +vt 0.368421 0.703125 +vt 0.368421 0.765625 +vt 0.052632 0.765625 +vt 0.052632 0.703125 +vt 0.947368 0.937500 +vt 0.894737 0.937500 +vt 0.894737 0.765625 +vt 0.947368 0.765625 +vt 0.236842 0.937500 +vt 0.184211 0.937500 +vt 0.184211 0.765625 +vt 0.236842 0.765625 +vt 0.894737 0.937500 +vt 0.842105 0.937500 +vt 0.842105 0.765625 +vt 0.894737 0.765625 +vt 0.657895 0.937500 +vt 0.605263 0.937500 +vt 0.605263 0.765625 +vt 0.657895 0.765625 +vt 0.947368 0.703125 +vt 0.894737 0.703125 +vt 0.894737 0.531250 +vt 0.947368 0.531250 +vt 0.236842 0.703125 +vt 0.184211 0.703125 +vt 0.184211 0.531250 +vt 0.236842 0.531250 +vt 0.894737 0.703125 +vt 0.842105 0.703125 +vt 0.842105 0.531250 +vt 0.894737 0.531250 +vt 0.657895 0.703125 +vt 0.605263 0.703125 +vt 0.605263 0.531250 +vt 0.657895 0.531250 +vt 0.947368 0.468750 +vt 0.894737 0.468750 +vt 0.894737 0.296875 +vt 0.947368 0.296875 +vt 0.236842 0.468750 +vt 0.184211 0.468750 +vt 0.184211 0.296875 +vt 0.236842 0.296875 +vt 0.894737 0.468750 +vt 0.842105 0.468750 +vt 0.842105 0.296875 +vt 0.894737 0.296875 +vt 0.657895 0.468750 +vt 0.605263 0.468750 +vt 0.605263 0.296875 +vt 0.657895 0.296875 +vt 0.947368 0.234375 +vt 0.894737 0.234375 +vt 0.894737 0.062500 +vt 0.947368 0.062500 +vt 0.236842 0.234375 +vt 0.184211 0.234375 +vt 0.184211 0.062500 +vt 0.236842 0.062500 +vt 0.894737 0.234375 +vt 0.842105 0.234375 +vt 0.842105 0.062500 +vt 0.894737 0.062500 +vt 0.657895 0.234375 +vt 0.605263 0.234375 +vt 0.605263 0.062500 +vt 0.657895 0.062500 +vt 0.473684 0.062500 +vt 0.789474 0.062500 +vt 0.789474 0.937500 +vt 0.473684 0.937500 +vt 0.052632 0.062500 +vt 0.368421 0.062500 +vt 0.368421 0.937500 +vt 0.052632 0.937500 +vn 0.0000 0.0000 1.0000 +vn -0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +g Cylinder_Cylinder_door +s off +f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 +f 16/7/2 31/8/2 30/9/2 17/10/2 +f 23/11/3 6/12/3 1/4/3 10/3/3 22/13/3 3/14/3 8/15/3 11/16/3 +f 18/17/2 19/18/2 12/19/2 5/20/2 6/21/2 23/22/2 +f 2/23/4 1/24/4 6/25/4 5/26/4 +f 3/27/5 4/28/5 7/29/5 8/30/5 +f 13/31/1 32/32/1 27/33/1 14/34/1 +f 24/35/2 12/19/2 19/18/2 31/8/2 16/7/2 28/36/2 +f 22/13/1 10/3/1 20/2/1 32/32/1 13/31/1 25/37/1 +f 24/38/6 7/39/6 4/40/6 9/41/6 21/42/6 2/43/6 5/44/6 12/45/6 +f 26/46/1 14/34/1 27/33/1 15/1/1 21/6/1 9/47/1 +f 29/48/2 17/10/2 30/9/2 18/17/2 23/22/2 11/49/2 +f 8/50/2 7/51/2 24/35/2 28/36/2 29/48/2 11/49/2 +f 4/52/1 3/14/1 22/13/1 25/37/1 26/46/1 9/47/1 +f 15/53/3 27/54/3 31/55/3 19/56/3 +f 30/57/4 31/58/4 27/59/4 32/60/4 +f 18/61/6 30/62/6 32/63/6 20/64/6 +f 18/65/5 20/64/5 15/66/5 19/67/5 +f 14/68/3 26/69/3 28/70/3 16/71/3 +f 29/72/4 28/73/4 26/74/4 25/75/4 +f 13/76/6 17/77/6 29/78/6 25/75/6 +f 17/79/5 13/80/5 14/81/5 16/82/5 +f 35/83/2 39/84/2 38/85/2 36/86/2 +f 33/87/1 40/88/1 37/89/1 34/90/1 +f 38/91/4 39/92/4 37/93/4 40/94/4 +f 36/95/5 33/96/5 34/97/5 35/98/5 +f 45/99/5 48/100/5 47/101/5 46/102/5 +f 43/103/4 42/104/4 44/105/4 41/106/4 +f 48/107/1 41/108/1 44/109/1 47/110/1 +f 46/111/2 42/112/2 43/113/2 45/114/2 +f 53/115/6 54/116/6 50/117/6 49/118/6 +f 54/119/2 55/120/2 51/121/2 50/122/2 +f 55/123/3 56/124/3 52/125/3 51/126/3 +f 56/127/1 53/128/1 49/129/1 52/130/1 +f 61/131/6 62/132/6 58/133/6 57/134/6 +f 62/135/2 63/136/2 59/137/2 58/138/2 +f 63/139/3 64/140/3 60/141/3 59/142/3 +f 64/143/1 61/144/1 57/145/1 60/146/1 +f 69/147/6 70/148/6 66/149/6 65/150/6 +f 70/151/2 71/152/2 67/153/2 66/154/2 +f 71/155/3 72/156/3 68/157/3 67/158/3 +f 72/159/1 69/160/1 65/161/1 68/162/1 +f 77/163/6 78/164/6 74/165/6 73/166/6 +f 78/167/2 79/168/2 75/169/2 74/170/2 +f 79/171/3 80/172/3 76/173/3 75/174/3 +f 80/175/1 77/176/1 73/177/1 76/178/1 +g Cylinder_Cylinder_glass +f 81/179/1 82/180/1 84/181/1 83/182/1 +f 85/183/2 86/184/2 88/185/2 87/186/2 diff --git a/homedecor_3d_extras/models/homedecor_door_wood_glass_3_a.obj b/homedecor_3d_extras/models/homedecor_door_wood_glass_3_a.obj new file mode 100644 index 0000000..aa82672 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_wood_glass_3_a.obj @@ -0,0 +1,138 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-woodglass-typea.blend' +# www.blender.org +o Cylinder +v -0.499750 1.499500 -0.499969 +v 0.499750 1.499500 -0.499969 +v -0.499750 -0.499500 -0.499969 +v 0.499750 -0.499500 -0.499969 +v 0.499750 1.499500 -0.375031 +v -0.499750 1.499500 -0.375031 +v 0.499750 -0.499500 -0.375031 +v -0.499750 -0.499500 -0.375031 +v 0.499750 -0.374531 -0.499969 +v -0.499750 1.312031 -0.499969 +v -0.499750 -0.374531 -0.375031 +v 0.499750 1.312031 -0.375031 +v -0.187375 0.437531 -0.499969 +v 0.187375 0.437531 -0.499969 +v 0.187375 1.312031 -0.499969 +v 0.187375 0.437531 -0.375031 +v -0.187375 0.437531 -0.375031 +v -0.187375 1.312031 -0.375031 +v 0.187375 1.312031 -0.375031 +v -0.187375 1.312031 -0.499969 +v 0.499750 1.312031 -0.499969 +v -0.499750 -0.374531 -0.499969 +v -0.499750 1.312031 -0.375031 +v 0.499750 -0.374531 -0.375031 +v -0.187375 -0.374531 -0.499969 +v 0.187375 -0.374531 -0.499969 +v 0.187375 -0.374531 -0.375031 +v -0.187375 -0.374531 -0.375031 +v 0.187500 0.437500 -0.438458 +v -0.187500 0.437500 -0.438458 +v 0.187500 1.312500 -0.438458 +v -0.187500 1.312500 -0.438458 +v -0.187500 0.437500 -0.436542 +v 0.187500 0.437500 -0.436542 +v -0.187500 1.312500 -0.436542 +v 0.187500 1.312500 -0.436542 +vt 0.552632 0.906250 +vt 0.710526 0.906250 +vt 0.842105 0.906250 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.906250 +vt 0.894737 0.906250 +vt 0.894737 1.000000 +vt 0.842105 0.062500 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 0.062500 +vt 0.131579 0.906250 +vt 0.289474 0.906250 +vt 0.421053 0.906250 +vt 0.421053 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.906250 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.421053 0.062500 +vt 0.289474 0.468750 +vt 0.289474 0.062500 +vt 0.710526 0.468750 +vt 0.710526 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 0.947368 0.062500 +vt 0.947368 0.906250 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.906250 +vt 0.552632 0.062500 +vt 0.552632 0.468750 +vt 0.421053 0.062500 +vt 0.131579 0.062500 +vt 0.131579 0.468750 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 1.000000 0.343750 +vt 0.947368 0.343750 +vt 0.947368 0.156250 +vt 1.000000 0.156250 +vt 1.000000 0.843750 +vt 0.947368 0.843750 +vt 0.947368 0.656250 +vt 1.000000 0.656250 +vt 0.552632 0.468750 +vt 0.710526 0.468750 +vt 0.710526 0.906250 +vt 0.552632 0.906250 +vt 0.131579 0.468750 +vt 0.289474 0.468750 +vt 0.289474 0.906250 +vt 0.131579 0.906250 +vt 0.894737 0.906250 +vt 0.894737 0.468750 +vt 0.947368 0.468750 +vt 0.947368 0.906250 +vt 0.894737 0.468750 +vt 0.894737 0.906250 +vt 0.842105 0.906250 +vt 0.842105 0.468750 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +s off +f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 +f 23/7/2 6/8/2 1/4/2 10/3/2 22/9/2 3/10/2 8/11/2 11/12/2 +f 18/13/3 19/14/3 12/15/3 5/16/3 6/17/3 23/18/3 +f 2/19/4 1/20/4 6/21/4 5/22/4 +f 3/23/5 4/24/5 7/25/5 8/26/5 +f 24/27/3 12/15/3 19/14/3 16/28/3 27/29/3 +f 22/9/1 10/3/1 20/2/1 13/30/1 25/31/1 +f 24/32/6 7/33/6 4/34/6 9/35/6 21/36/6 2/37/6 5/38/6 12/39/6 +f 26/40/1 14/41/1 15/1/1 21/6/1 9/42/1 +f 28/43/3 17/44/3 18/13/3 23/18/3 11/45/3 +f 8/46/3 7/47/3 24/27/3 27/29/3 28/43/3 11/45/3 +f 4/48/1 3/10/1 22/9/1 25/31/1 26/40/1 9/42/1 +f 16/49/4 14/50/4 13/51/4 17/52/4 +f 18/53/5 20/54/5 15/55/5 19/56/5 +f 16/28/3 17/44/3 28/43/3 27/29/3 +f 13/30/1 14/41/1 26/40/1 25/31/1 +f 29/57/1 30/58/1 32/59/1 31/60/1 +f 33/61/3 34/62/3 36/63/3 35/64/3 +f 18/65/6 17/66/6 13/67/6 20/68/6 +f 16/69/2 19/70/2 15/71/2 14/72/2 diff --git a/homedecor_3d_extras/models/homedecor_door_wood_glass_3_b.obj b/homedecor_3d_extras/models/homedecor_door_wood_glass_3_b.obj new file mode 100644 index 0000000..0fcfb2d --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_wood_glass_3_b.obj @@ -0,0 +1,138 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-woodglass-typea.blend' +# www.blender.org +o Cylinder +v 0.499250 1.499500 -0.374969 +v -0.500250 1.499500 -0.374969 +v 0.499250 -0.499500 -0.374969 +v -0.500250 -0.499500 -0.374969 +v -0.500250 1.499500 -0.499906 +v 0.499250 1.499500 -0.499906 +v -0.500250 -0.499500 -0.499906 +v 0.499250 -0.499500 -0.499907 +v -0.500250 -0.374531 -0.374969 +v 0.499250 1.312031 -0.374969 +v 0.499250 -0.374531 -0.499907 +v -0.500250 1.312031 -0.499906 +v 0.186875 0.437531 -0.374969 +v -0.187875 0.437531 -0.374969 +v -0.187875 1.312031 -0.374969 +v -0.187875 0.437531 -0.499906 +v 0.186875 0.437531 -0.499906 +v 0.186875 1.312031 -0.499906 +v -0.187875 1.312031 -0.499906 +v 0.186875 1.312031 -0.374969 +v -0.500250 1.312031 -0.374969 +v 0.499250 -0.374531 -0.374969 +v 0.499250 1.312031 -0.499906 +v -0.500250 -0.374531 -0.499906 +v 0.186875 -0.374531 -0.374969 +v -0.187875 -0.374531 -0.374969 +v -0.187875 -0.374531 -0.499906 +v 0.186875 -0.374531 -0.499906 +v -0.188000 0.437500 -0.436479 +v 0.187000 0.437500 -0.436479 +v -0.188000 1.312500 -0.436479 +v 0.187000 1.312500 -0.436480 +v 0.187000 0.437500 -0.438396 +v -0.188000 0.437500 -0.438396 +v 0.187000 1.312500 -0.438396 +v -0.188000 1.312500 -0.438396 +vt 0.552632 0.906250 +vt 0.710526 0.906250 +vt 0.842105 0.906250 +vt 0.842105 1.000000 +vt 0.421053 1.000000 +vt 0.421053 0.906250 +vt 0.894737 0.906250 +vt 0.894737 1.000000 +vt 0.842105 0.062500 +vt 0.842105 0.000000 +vt 0.894737 0.000000 +vt 0.894737 0.062500 +vt 0.131579 0.906250 +vt 0.289474 0.906250 +vt 0.421053 0.906250 +vt 0.421053 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.906250 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.421053 0.062500 +vt 0.289474 0.468750 +vt 0.289474 0.062500 +vt 0.710526 0.468750 +vt 0.710526 0.062500 +vt 0.894737 0.062500 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 0.947368 0.062500 +vt 0.947368 0.906250 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.906250 +vt 0.552632 0.062500 +vt 0.552632 0.468750 +vt 0.421053 0.062500 +vt 0.131579 0.062500 +vt 0.131579 0.468750 +vt 0.000000 0.062500 +vt 0.000000 0.000000 +vt 0.421053 0.000000 +vt 0.421053 0.000000 +vt 1.000000 0.343750 +vt 0.947368 0.343750 +vt 0.947368 0.156250 +vt 1.000000 0.156250 +vt 1.000000 0.843750 +vt 0.947368 0.843750 +vt 0.947368 0.656250 +vt 1.000000 0.656250 +vt 0.552632 0.468750 +vt 0.710526 0.468750 +vt 0.710526 0.906250 +vt 0.552632 0.906250 +vt 0.131579 0.468750 +vt 0.289474 0.468750 +vt 0.289474 0.906250 +vt 0.131579 0.906250 +vt 0.894737 0.906250 +vt 0.894737 0.468750 +vt 0.947368 0.468750 +vt 0.947368 0.906250 +vt 0.894737 0.468750 +vt 0.894737 0.906250 +vt 0.842105 0.906250 +vt 0.842105 0.468750 +vn 0.0000 0.0000 1.0000 +vn 1.0000 0.0000 0.0000 +vn -0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +s off +f 15/1/1 20/2/1 10/3/1 1/4/1 2/5/1 21/6/1 +f 23/7/2 6/8/2 1/4/2 10/3/2 22/9/2 3/10/2 8/11/2 11/12/2 +f 18/13/3 19/14/3 12/15/3 5/16/3 6/17/3 23/18/3 +f 2/19/4 1/20/4 6/21/4 5/22/4 +f 3/23/5 4/24/5 7/25/5 8/26/5 +f 24/27/3 12/15/3 19/14/3 16/28/3 27/29/3 +f 22/9/1 10/3/1 20/2/1 13/30/1 25/31/1 +f 24/32/6 7/33/6 4/34/6 9/35/6 21/36/6 2/37/6 5/38/6 12/39/6 +f 26/40/1 14/41/1 15/1/1 21/6/1 9/42/1 +f 28/43/3 17/44/3 18/13/3 23/18/3 11/45/3 +f 8/46/3 7/47/3 24/27/3 27/29/3 28/43/3 11/45/3 +f 4/48/1 3/10/1 22/9/1 25/31/1 26/40/1 9/42/1 +f 16/49/4 14/50/4 13/51/4 17/52/4 +f 18/53/5 20/54/5 15/55/5 19/56/5 +f 16/28/3 17/44/3 28/43/3 27/29/3 +f 13/30/1 14/41/1 26/40/1 25/31/1 +f 29/57/1 30/58/1 32/59/1 31/60/1 +f 33/61/3 34/62/3 36/63/3 35/64/3 +f 18/65/6 17/66/6 13/67/6 20/68/6 +f 16/69/2 19/70/2 15/71/2 14/72/2 diff --git a/homedecor_3d_extras/models/homedecor_door_wrought_iron_a.obj b/homedecor_3d_extras/models/homedecor_door_wrought_iron_a.obj new file mode 100644 index 0000000..dde98da --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_wrought_iron_a.obj @@ -0,0 +1,124 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-wrought-iron.blend' +# www.blender.org +o Cylinder +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v -0.484375 1.484375 -0.438451 +v 0.484375 1.484375 -0.438451 +v -0.484375 -0.484375 -0.438451 +v 0.484375 -0.484375 -0.438451 +v 0.484375 1.484375 -0.436547 +v -0.484375 1.484375 -0.436547 +v 0.484375 -0.484375 -0.436547 +v -0.484375 -0.484375 -0.436547 +v -0.468750 -0.500000 -0.500000 +v 0.468750 -0.500000 -0.500000 +v -0.500000 1.484375 -0.500000 +v 0.500000 1.484375 -0.500000 +v 0.500000 1.484375 -0.375000 +v -0.500000 1.484375 -0.375000 +v -0.500000 -0.484375 -0.500000 +v 0.500000 -0.484375 -0.500000 +v 0.500000 -0.484375 -0.375000 +v -0.500000 -0.484375 -0.375000 +v -0.484375 1.484375 -0.500000 +v -0.484375 -0.484375 -0.500000 +v -0.484375 1.484375 -0.375000 +v -0.484375 -0.484375 -0.375000 +v 0.484375 1.484375 -0.500000 +v 0.484375 -0.484375 -0.500000 +v 0.484375 1.484375 -0.375000 +v 0.484375 -0.484375 -0.375000 +vt 0.006579 0.007812 +vt 0.414474 0.007812 +vt 0.414474 0.992188 +vt 0.006579 0.992188 +vt 0.427632 0.007812 +vt 0.835526 0.007812 +vt 0.835526 0.992188 +vt 0.427632 0.992188 +vt 0.421053 0.007812 +vt 0.421053 0.992188 +vt 0.414474 0.992188 +vt 0.414474 0.007812 +vt 0.842105 0.007812 +vt 0.842105 0.992188 +vt 0.835526 0.992188 +vt 0.835526 0.007812 +vt 0.842105 0.992188 +vt 0.842105 0.007812 +vt 0.894737 0.007812 +vt 0.894737 0.992188 +vt 0.006579 0.007812 +vt 0.006579 0.992188 +vt 0.000000 0.992188 +vt 0.000000 0.007812 +vt 0.427632 0.007812 +vt 0.427632 0.992188 +vt 0.421053 0.992188 +vt 0.421053 0.007812 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.421053 1.000000 +vt 0.842105 1.000000 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.421053 0.000000 +vt 0.000000 0.000000 +vt 0.842105 0.000000 +vt 0.421053 0.000000 +vt 0.947368 0.007812 +vt 0.947368 0.992188 +vt 0.894737 0.992188 +vt 0.894737 0.007812 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 -0.0000 0.0000 +s off +f 16/1/1 15/2/1 13/3/1 14/4/1 +f 12/5/2 11/6/2 9/7/2 10/8/2 +f 25/9/1 21/10/1 33/11/1 34/12/1 +f 23/13/2 19/14/2 27/15/2 28/16/2 +f 31/17/3 32/18/3 34/19/3 33/20/3 +f 30/21/1 29/22/1 22/23/1 26/24/1 +f 32/25/2 31/26/2 20/27/2 24/28/2 +f 19/29/4 20/30/4 21/31/4 22/32/4 +f 6/33/1 22/23/1 21/10/1 5/34/1 +f 2/35/2 20/27/2 19/14/2 1/36/2 +f 24/37/5 23/38/5 26/39/5 25/40/5 +f 7/41/1 25/9/1 26/24/1 8/42/1 +f 3/43/2 23/13/2 24/28/2 4/44/2 +f 28/45/6 27/46/6 29/47/6 30/48/6 +f 4/49/6 2/50/6 5/51/6 7/52/6 +f 1/53/5 6/54/5 5/55/5 2/56/5 +f 1/36/3 3/43/3 8/57/3 6/58/3 +f 4/59/4 7/60/4 8/61/4 3/62/4 diff --git a/homedecor_3d_extras/models/homedecor_door_wrought_iron_b.obj b/homedecor_3d_extras/models/homedecor_door_wrought_iron_b.obj new file mode 100644 index 0000000..06fbe12 --- /dev/null +++ b/homedecor_3d_extras/models/homedecor_door_wrought_iron_b.obj @@ -0,0 +1,123 @@ +# Blender v2.79 (sub 0) OBJ File: 'door-wrought-iron.blend' +# www.blender.org +o Cylinder +v 0.500000 1.500000 -0.375000 +v -0.500000 1.500000 -0.375000 +v 0.500000 -0.500000 -0.375000 +v -0.500000 -0.500000 -0.375000 +v -0.500000 1.500000 -0.500000 +v 0.500000 1.500000 -0.500000 +v -0.500000 -0.500000 -0.500000 +v 0.500000 -0.500000 -0.500000 +v 0.484375 1.484375 -0.436549 +v -0.484375 1.484375 -0.436549 +v 0.484375 -0.484375 -0.436549 +v -0.484375 -0.484375 -0.436549 +v -0.484375 1.484375 -0.438453 +v 0.484375 1.484375 -0.438453 +v -0.484375 -0.484375 -0.438453 +v 0.484375 -0.484375 -0.438454 +v 0.468750 -0.500000 -0.375000 +v 0.500000 1.484375 -0.375000 +v -0.500000 1.484375 -0.375000 +v -0.500000 1.484375 -0.500000 +v 0.500000 1.484375 -0.500000 +v 0.500000 -0.484375 -0.375000 +v -0.500000 -0.484375 -0.375000 +v -0.500000 -0.484375 -0.500000 +v 0.500000 -0.484375 -0.500000 +v 0.484375 1.484375 -0.375000 +v 0.484375 -0.484375 -0.375000 +v 0.484375 1.484375 -0.500000 +v 0.484375 -0.484375 -0.500000 +v -0.484375 1.484375 -0.375000 +v -0.484375 -0.484375 -0.375000 +v -0.484375 1.484375 -0.500000 +v -0.484375 -0.484375 -0.500000 +vt 0.006579 0.007812 +vt 0.414474 0.007812 +vt 0.414474 0.992188 +vt 0.006579 0.992188 +vt 0.427632 0.007812 +vt 0.835526 0.007812 +vt 0.835526 0.992188 +vt 0.427632 0.992188 +vt 0.421053 0.007812 +vt 0.421053 0.992188 +vt 0.414474 0.992188 +vt 0.414474 0.007812 +vt 0.842105 0.007812 +vt 0.842105 0.992188 +vt 0.835526 0.992188 +vt 0.835526 0.007812 +vt 0.842105 0.992188 +vt 0.842105 0.007812 +vt 0.894737 0.007812 +vt 0.894737 0.992188 +vt 0.006579 0.007812 +vt 0.006579 0.992188 +vt 0.000000 0.992188 +vt 0.000000 0.007812 +vt 0.427632 0.007812 +vt 0.427632 0.992188 +vt 0.421053 0.992188 +vt 0.421053 0.007812 +vt 0.947368 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.421053 1.000000 +vt 0.421053 1.000000 +vt 0.842105 1.000000 +vt 0.947368 0.500000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.421053 0.000000 +vt 0.000000 0.000000 +vt 0.842105 0.000000 +vt 0.421053 0.000000 +vt 0.947368 0.007812 +vt 0.947368 0.992188 +vt 0.894737 0.992188 +vt 0.894737 0.007812 +vt 0.947368 0.000000 +vt 0.947368 1.000000 +vt 0.894737 1.000000 +vt 0.894737 0.000000 +vt 0.947368 0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.500000 +vt 0.947368 0.500000 +vt 0.894737 0.000000 +vt 0.894737 1.000000 +vt 0.947368 0.500000 +vt 1.000000 0.500000 +vt 1.000000 1.000000 +vt 0.947368 1.000000 +vn -0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +s off +f 16/1/1 15/2/1 13/3/1 14/4/1 +f 12/5/2 11/6/2 9/7/2 10/8/2 +f 24/9/1 20/10/1 32/11/1 33/12/1 +f 22/13/2 18/14/2 26/15/2 27/16/2 +f 30/17/3 31/18/3 33/19/3 32/20/3 +f 29/21/1 28/22/1 21/23/1 25/24/1 +f 31/25/2 30/26/2 19/27/2 23/28/2 +f 18/29/4 19/30/4 20/31/4 21/32/4 +f 6/33/1 21/23/1 20/10/1 5/34/1 +f 2/35/2 19/27/2 18/14/2 1/36/2 +f 23/37/5 22/38/5 25/39/5 24/40/5 +f 7/41/1 24/9/1 25/24/1 8/42/1 +f 3/43/2 22/13/2 23/28/2 4/44/2 +f 27/45/6 26/46/6 28/47/6 29/48/6 +f 4/49/6 2/50/6 5/51/6 7/52/6 +f 1/53/5 6/54/5 5/55/5 2/56/5 +f 1/36/3 3/43/3 8/57/3 6/58/3 +f 4/59/4 7/60/4 8/61/4 3/62/4 diff --git a/homedecor_3d_extras/textures/3dbookshelf_books.png b/homedecor_3d_extras/textures/homedecor_3d_bookshelf_books.png similarity index 100% rename from homedecor_3d_extras/textures/3dbookshelf_books.png rename to homedecor_3d_extras/textures/homedecor_3d_bookshelf_books.png diff --git a/homedecor_3d_extras/textures/3dbookshelf_inside_back.png b/homedecor_3d_extras/textures/homedecor_3d_bookshelf_inside_back.png similarity index 100% rename from homedecor_3d_extras/textures/3dbookshelf_inside_back.png rename to homedecor_3d_extras/textures/homedecor_3d_bookshelf_inside_back.png diff --git a/homedecor_3d_extras/textures/bottle_metal_bright.png b/homedecor_3d_extras/textures/homedecor_3d_bottle_metal_bright.png similarity index 100% rename from homedecor_3d_extras/textures/bottle_metal_bright.png rename to homedecor_3d_extras/textures/homedecor_3d_bottle_metal_bright.png diff --git a/homedecor_3d_extras/textures/3dvessels_drinking_glass_inv.png b/homedecor_3d_extras/textures/homedecor_3d_vessels_drinking_glass_inv.png similarity index 100% rename from homedecor_3d_extras/textures/3dvessels_drinking_glass_inv.png rename to homedecor_3d_extras/textures/homedecor_3d_vessels_drinking_glass_inv.png diff --git a/homedecor_3d_extras/textures/3dvessels_glass_bottle_inv.png b/homedecor_3d_extras/textures/homedecor_3d_vessels_glass_bottle_inv.png similarity index 100% rename from homedecor_3d_extras/textures/3dvessels_glass_bottle_inv.png rename to homedecor_3d_extras/textures/homedecor_3d_vessels_glass_bottle_inv.png diff --git a/homedecor_3d_extras/textures/3dvessels_shelf_glass.png b/homedecor_3d_extras/textures/homedecor_3d_vessels_shelf_glass.png similarity index 100% rename from homedecor_3d_extras/textures/3dvessels_shelf_glass.png rename to homedecor_3d_extras/textures/homedecor_3d_vessels_shelf_glass.png diff --git a/homedecor_3d_extras/textures/3dvessels_steel_bottle_inv.png b/homedecor_3d_extras/textures/homedecor_3d_vessels_steel_bottle_inv.png similarity index 100% rename from homedecor_3d_extras/textures/3dvessels_steel_bottle_inv.png rename to homedecor_3d_extras/textures/homedecor_3d_vessels_steel_bottle_inv.png diff --git a/homedecor_bathroom/depends.txt b/homedecor_bathroom/depends.txt new file mode 100644 index 0000000..e778f7d --- /dev/null +++ b/homedecor_bathroom/depends.txt @@ -0,0 +1,7 @@ +homedecor_common +default +basic_materials +unifieddyes +building_blocks +bucket? +homedecor_fences? diff --git a/homedecor_bathroom/init.lua b/homedecor_bathroom/init.lua new file mode 100644 index 0000000..85cf43a --- /dev/null +++ b/homedecor_bathroom/init.lua @@ -0,0 +1,682 @@ + +local S = homedecor.gettext + +minetest.register_node(":homedecor:bathroom_tiles_dark", { + description = S("Bathroom/kitchen tiles (dark)"), + tiles = { + "homedecor_bathroom_tiles_bg.png" + }, + overlay_tiles = { + { name = "homedecor_bathroom_tiles_fg.png", color = 0xff606060 }, + }, + paramtype = "light", + paramtype2 = "color", + palette = "unifieddyes_palette_extended.png", + groups = {cracky=3, ud_param2_colorable = 1}, + sounds = default.node_sound_stone_defaults(), + on_construct = unifieddyes.on_construct, + on_dig = unifieddyes.on_dig, +}) + +minetest.register_node(":homedecor:bathroom_tiles_medium", { + description = S("Bathroom/kitchen tiles (medium)"), + tiles = { + "homedecor_bathroom_tiles_bg.png" + }, + overlay_tiles = { + { name = "homedecor_bathroom_tiles_fg.png", color = 0xffc0c0c0 }, + }, + paramtype = "light", + paramtype2 = "color", + palette = "unifieddyes_palette_extended.png", + groups = {cracky=3, ud_param2_colorable = 1}, + sounds = default.node_sound_stone_defaults(), + on_construct = unifieddyes.on_construct, + on_dig = unifieddyes.on_dig, +}) + +minetest.register_node(":homedecor:bathroom_tiles_light", { + description = S("Bathroom/kitchen tiles (light)"), + tiles = { + "homedecor_bathroom_tiles_bg.png" + }, + overlay_tiles = { + { name = "homedecor_bathroom_tiles_fg.png", color = 0xffffffff }, + }, + paramtype = "light", + paramtype2 = "color", + palette = "unifieddyes_palette_extended.png", + groups = {cracky=3, ud_param2_colorable = 1}, + sounds = default.node_sound_stone_defaults(), + on_construct = unifieddyes.on_construct, + on_dig = unifieddyes.on_dig, +}) + +local tr_cbox = { + type = "fixed", + fixed = { -0.375, -0.3125, 0.25, 0.375, 0.375, 0.5 } +} + +homedecor.register("towel_rod", { + description = S("Towel rod with towel"), + mesh = "homedecor_towel_rod.obj", + tiles = { + "homedecor_generic_terrycloth.png", + "default_wood.png", + }, + inventory_image = "homedecor_towel_rod_inv.png", + selection_box = tr_cbox, + walkable = false, + groups = {snappy=2,choppy=2,oddly_breakable_by_hand=3,flammable=3}, + sounds = default.node_sound_defaults(), +}) + +homedecor.register("medicine_cabinet", { + description = S("Medicine cabinet"), + mesh = "homedecor_medicine_cabinet.obj", + tiles = { + 'default_wood.png', + 'homedecor_medicine_cabinet_mirror.png' + }, + inventory_image = "homedecor_medicine_cabinet_inv.png", + selection_box = { + type = "fixed", + fixed = {-0.3125, -0.1875, 0.3125, 0.3125, 0.5, 0.5} + }, + walkable = false, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + on_punch = function(pos, node, puncher, pointed_thing) + node.name = "homedecor:medicine_cabinet_open" + minetest.swap_node(pos, node) + end, + infotext=S("Medicine cabinet"), + inventory = { + size=6, + }, +}) + +homedecor.register("medicine_cabinet_open", { + mesh = "homedecor_medicine_cabinet_open.obj", + tiles = { + 'default_wood.png', + 'homedecor_medicine_cabinet_mirror.png', + 'homedecor_medicine_cabinet_inside.png' + }, + selection_box = { + type = "fixed", + fixed = {-0.3125, -0.1875, -0.25, 0.3125, 0.5, 0.5} + }, + walkable = false, + groups = { snappy = 3, not_in_creative_inventory=1 }, + drop = "homedecor:medicine_cabinet", + on_punch = function(pos, node, puncher, pointed_thing) + node.name = "homedecor:medicine_cabinet" + minetest.swap_node(pos, node) + end, +}) + +-- "Sanitation" related + +local toilet_sbox = { + type = "fixed", + fixed = { -6/16, -8/16, -8/16, 6/16, 9/16, 8/16 }, +} + +local toilet_cbox = { + type = "fixed", + fixed = { + {-6/16, -8/16, -8/16, 6/16, 1/16, 8/16 }, + {-6/16, -8/16, 4/16, 6/16, 9/16, 8/16 } + } +} + +homedecor.register("toilet", { + description = S("Toilet"), + mesh = "homedecor_toilet_closed.obj", + tiles = { + "building_blocks_marble.png", + "building_blocks_marble.png", + "building_blocks_marble.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey } + }, + selection_box = toilet_sbox, + node_box = toilet_cbox, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + node.name = "homedecor:toilet_open" + minetest.set_node(pos, node) + end +}) + +homedecor.register("toilet_open", { + mesh = "homedecor_toilet_open.obj", + tiles = { + "building_blocks_marble.png", + "building_blocks_marble.png", + "building_blocks_marble.png", + "default_water.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey } + }, + selection_box = toilet_sbox, + collision_box = toilet_cbox, + drop = "homedecor:toilet", + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + node.name = "homedecor:toilet" + minetest.set_node(pos, node) + minetest.sound_play("homedecor_toilet_flush", { + pos=pos, + max_hear_distance = 5, + gain = 1, + }) + end +}) + +-- toilet paper :-) + +local tp_cbox = { + type = "fixed", + fixed = { -0.25, 0.125, 0.0625, 0.1875, 0.4375, 0.5 } +} + +homedecor.register("toilet_paper", { + description = S("Toilet paper"), + mesh = "homedecor_toilet_paper.obj", + tiles = { + "homedecor_generic_quilted_paper.png", + "default_wood.png" + }, + inventory_image = "homedecor_toilet_paper_inv.png", + selection_box = tp_cbox, + walkable = false, + groups = {snappy=3,oddly_breakable_by_hand=3}, + sounds = default.node_sound_defaults(), +}) + +--Sink + +local sink_sbox = { + type = "fixed", + fixed = { -5/16, -8/16, 1/16, 5/16, 8/16, 8/16 } +} + +local sink_cbox = { + type = "fixed", + fixed = { + { -5/16, 5/16, 1/16, -4/16, 8/16, 8/16 }, + { 5/16, 5/16, 1/16, 4/16, 8/16, 8/16 }, + { -5/16, 5/16, 1/16, 5/16, 8/16, 2/16 }, + { -5/16, 5/16, 6/16, 5/16, 8/16, 8/16 }, + { -4/16, -8/16, 1/16, 4/16, 5/16, 6/16 } + } +} + +homedecor.register("sink", { + description = S("Bathroom Sink"), + mesh = "homedecor_bathroom_sink.obj", + tiles = { + "building_blocks_marble.png", + "building_blocks_marble.png", + "default_water.png" + }, + inventory_image="homedecor_bathroom_sink_inv.png", + selection_box = sink_sbox, + collision_box = sink_cbox, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + on_destruct = function(pos) + homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) + end +}) + +--Taps + +local function taps_on_rightclick(pos, node, clicker, itemstack, pointed_thing) + local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) + if below and + below.name == "homedecor:shower_tray" or + below.name == "homedecor:sink" or + below.name == "homedecor:kitchen_cabinet_with_sink" or + below.name == "homedecor:kitchen_cabinet_with_sink_locked" then + local particledef = { + outlet = { x = 0, y = -0.44, z = 0.28 }, + velocity_x = { min = -0.1, max = 0.1 }, + velocity_y = -0.3, + velocity_z = { min = -0.1, max = 0 }, + spread = 0, + die_on_collision = true, + } + homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") + end + return itemstack +end + +homedecor.register("taps", { + description = S("Bathroom taps/faucet"), + mesh = "homedecor_bathroom_faucet.obj", + tiles = { + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + "homedecor_generic_metal_bright.png", + "homedecor_generic_metal.png", + "homedecor_generic_metal_bright.png" + }, + inventory_image = "3dforniture_taps_inv.png", + wield_image = "3dforniture_taps_inv.png", + selection_box = { + type = "fixed", + fixed = { -4/16, -7/16, 4/16, 4/16, -4/16, 8/16 }, + }, + walkable = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + on_rightclick = taps_on_rightclick, + on_destruct = homedecor.stop_particle_spawner, + on_rotate = screwdriver.disallow +}) + +homedecor.register("taps_brass", { + description = S("Bathroom taps/faucet (brass)"), + mesh = "homedecor_bathroom_faucet.obj", + tiles = { + "homedecor_generic_metal_brass.png", + "homedecor_generic_metal_brass.png", + "homedecor_generic_metal.png", + "homedecor_generic_metal_brass.png" + }, + inventory_image = "3dforniture_taps_brass_inv.png", + wield_image = "3dforniture_taps_brass_inv.png", + selection_box = { + type = "fixed", + fixed = { -4/16, -7/16, 4/16, 4/16, -4/16, 8/16 }, + }, + walkable = false, + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), + on_rightclick = taps_on_rightclick, + on_destruct = homedecor.stop_particle_spawner, + on_rotate = screwdriver.disallow +}) + +--Shower Tray + +homedecor.register("shower_tray", { + description = S("Shower Tray"), + tiles = { + "forniture_marble_base_ducha_top.png", + "building_blocks_marble.png" + }, + node_box = { + type = "fixed", + fixed = { + { -0.5, -0.5, -0.5, 0.5, -0.45, 0.5 }, + { -0.5, -0.45, -0.5, 0.5, -0.4, -0.45 }, + { -0.5, -0.45, 0.45, 0.5, -0.4, 0.5 }, + { -0.5, -0.45, -0.45, -0.45, -0.4, 0.45 }, + { 0.45, -0.45, -0.45, 0.5, -0.4, 0.45 } + }, + }, + selection_box = homedecor.nodebox.slab_y(0.1), + groups = {cracky=2}, + sounds = default.node_sound_stone_defaults(), + on_destruct = function(pos) + homedecor.stop_particle_spawner({x=pos.x, y=pos.y+2, z=pos.z}) -- the showerhead + homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) -- the taps, if any + end +}) + +--Shower Head + + +local sh_cbox = { + type = "fixed", + fixed = { -0.2, -0.4, -0.05, 0.2, 0.1, 0.5 } +} + +homedecor.register("shower_head", { + drawtype = "mesh", + mesh = "homedecor_shower_head.obj", + tiles = { + "homedecor_generic_metal.png", + "homedecor_shower_head.png" + }, + inventory_image = "homedecor_shower_head_inv.png", + description = S("Shower Head"), + groups = {snappy=3}, + selection_box = sh_cbox, + walkable = false, + on_rotate = screwdriver.disallow, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-2.0, z=pos.z}) + if below and ( + below.name == "homedecor:shower_tray" or + below.name == "homedecor:bathtub_clawfoot_brass_taps" or + below.name == "homedecor:bathtub_clawfoot_chrome_taps" ) then + local particledef = { + outlet = { x = 0, y = -0.42, z = 0.1 }, + velocity_x = { min = -0.15, max = 0.15 }, + velocity_y = -2, + velocity_z = { min = -0.3, max = 0.1 }, + spread = 0.12 + } + homedecor.start_particle_spawner(pos, node, particledef, "homedecor_shower") + end + return itemstack + end, + on_destruct = function(pos) + homedecor.stop_particle_spawner(pos) + end +}) + +local tub_sbox = { + type = "fixed", + fixed = { -0.5, -0.5, -0.5, 1.5, 0.3125, 0.5 }, +} + +local tub_cbox = { + type = "fixed", + fixed = { + {-0.4375, -0.0625, -0.5, 1.4375, 0.5, -0.4375}, -- NodeBox1 + {-0.4375, -0.0625, 0.4375, 1.4375, 0.5, 0.5}, -- NodeBox2 + {-0.5, 0.1875, -0.4375, -0.4375, 0.5, 0.4375}, -- NodeBox3 + {1.4375, -0.0625, -0.4375, 1.5, 0.5, 0.4375}, -- NodeBox4 + {-0.3125, -0.3125, -0.4375, -0.125, -0.0625, 0.4375}, -- NodeBox5 + {1.375, -0.3125, -0.4375, 1.4375, -0.0625, 0.4375}, -- NodeBox6 + {-0.125, -0.3125, 0.375, 1.375, -0.0625, 0.4375}, -- NodeBox7 + {-0.125, -0.3125, -0.4375, 1.375, -0.0625, -0.375}, -- NodeBox8 + {-0.125, -0.5, -0.375, 1.375, -0.3125, 0.375}, -- NodeBox9 + {-0.4375, -0.0625, -0.4375, -0.3125, 0.1875, 0.4375}, -- NodeBox10 + } +} + +homedecor.register("bathtub_clawfoot_brass_taps", { + drawtype = "mesh", + mesh = "homedecor_bathtub_clawfoot.obj", + tiles = { + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + "homedecor_generic_metal_bright.png", + "homedecor_generic_metal_bright.png", + "homedecor_generic_metal_brass.png", + "building_blocks_marble.png", + "homedecor_bathtub_clawfoot_bottom_inside.png", + }, + description = S("Bathtub, clawfoot, with brass taps"), + groups = {cracky=3}, + selection_box = tub_sbox, + node_box = tub_cbox, + sounds = default.node_sound_stone_defaults(), +}) + +homedecor.register("bathtub_clawfoot_chrome_taps", { + drawtype = "mesh", + mesh = "homedecor_bathtub_clawfoot.obj", + tiles = { + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + "homedecor_generic_metal_bright.png", + "homedecor_generic_metal_bright.png", + "homedecor_generic_metal_bright.png", + "building_blocks_marble.png", + "homedecor_bathtub_clawfoot_bottom_inside.png", + }, + description = S("Bathtub, clawfoot, with chrome taps"), + groups = {cracky=3}, + selection_box = tub_sbox, + node_box = tub_cbox, + sounds = default.node_sound_stone_defaults(), +}) + +local bs_cbox = { + type = "fixed", + fixed = { -8/16, -8/16, 1/16, 8/16, 8/16, 8/16 } +} + +homedecor.register("bathroom_set", { + drawtype = "mesh", + mesh = "homedecor_bathroom_set.obj", + tiles = { + "homedecor_bathroom_set_mirror.png", + "homedecor_bathroom_set_tray.png", + "homedecor_bathroom_set_toothbrush.png", + "homedecor_bathroom_set_cup.png", + "homedecor_bathroom_set_toothpaste.png", + }, + inventory_image = "homedecor_bathroom_set_inv.png", + description = S("Bathroom sundries set"), + groups = {snappy=3}, + selection_box = bs_cbox, + walkable = false, + sounds = default.node_sound_glass_defaults(), +}) + +-- aliases + +minetest.register_alias("3dforniture:toilet", "homedecor:toilet") +minetest.register_alias("3dforniture:toilet_open", "homedecor:toilet_open") +minetest.register_alias("3dforniture:sink", "homedecor:sink") +minetest.register_alias("3dforniture:taps", "homedecor:taps") +minetest.register_alias("3dforniture:shower_tray", "homedecor:shower_tray") +minetest.register_alias("3dforniture:shower_head", "homedecor:shower_head") +minetest.register_alias("3dforniture:table_lamp", "homedecor:table_lamp_off") + +minetest.register_alias("toilet", "homedecor:toilet") +minetest.register_alias("sink", "homedecor:sink") +minetest.register_alias("taps", "homedecor:taps") +minetest.register_alias("shower_tray", "homedecor:shower_tray") +minetest.register_alias("shower_head", "homedecor:shower_head") +minetest.register_alias("table_lamp", "homedecor:table_lamp_off") + +-- convert old static nodes + +homedecor.old_static_bathroom_tiles = { + "homedecor:tiles_1", + "homedecor:tiles_2", + "homedecor:tiles_3", + "homedecor:tiles_4", + "homedecor:tiles_red", + "homedecor:tiles_tan", + "homedecor:tiles_yellow", + "homedecor:tiles_green", + "homedecor:tiles_blue" +} + +local old_to_color = { + "light_grey", + "grey", + "black", + "black" +} + +minetest.register_lbm({ + name = ":homedecor:convert_bathroom_tiles", + label = "Convert bathroom tiles to use param2 color", + run_at_every_load = false, + nodenames = homedecor.old_static_bathroom_tiles, + action = function(pos, node) + local name = node.name + local newname = "homedecor:bathroom_tiles_light" + local a = string.find(name, "_") + local color = string.sub(name, a + 1) + + if color == "tan" then + color = "yellow_s50" + elseif color == "1" or color == "2" or color == "3" or color == "4" then + if color == "4" then + newname = "homedecor:bathroom_tiles_medium" + end + color = old_to_color[tonumber(color)] + elseif color ~= "yellow" then + color = color.."_s50" + end + + local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended") + + minetest.set_node(pos, { name = newname, param2 = paletteidx }) + local meta = minetest.get_meta(pos) + meta:set_string("dye", "unifieddyes:"..color) + meta:set_string("palette", "ext") + end +}) + +-- crafting + + +minetest.register_craft({ + output = "homedecor:towel_rod", + recipe = { + { "group:wood", "group:stick", "group:wood" }, + { "", "building_blocks:terrycloth_towel", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:toilet_paper", + recipe = { + { "", "default:paper", "default:paper" }, + { "group:wood", "group:stick", "default:paper" }, + { "", "default:paper", "default:paper" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:medicine_cabinet", + recipe = { + { "group:stick", "default:glass", "group:stick" }, + { "group:stick", "default:glass", "group:stick" }, + { "group:stick", "default:glass", "group:stick" } + }, +}) + + +-- bathroom/kitchen tiles + +minetest.register_craft( { + output = "homedecor:bathroom_tiles_light 4", + recipe = { + { "group:marble", "group:marble" }, + { "group:marble", "group:marble" } + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bathroom_tiles_light", + palette = "extended", + type = "shapeless", + neutral_node = "homedecor:bathroom_tiles_light", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft( { + output = "homedecor:bathroom_tiles_medium 4", + recipe = { + { "group:marble", "group:marble", "" }, + { "group:marble", "group:marble", "dye:grey" } + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bathroom_tiles_medium", + palette = "extended", + type = "shapeless", + neutral_node = "homedecor:bathroom_tiles_medium", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft( { + output = "homedecor:bathroom_tiles_dark 4", + recipe = { + { "group:marble", "group:marble", "" }, + { "group:marble", "group:marble", "dye:dark_grey" } + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bathroom_tiles_dark", + palette = "extended", + type = "shapeless", + neutral_node = "homedecor:bathroom_tiles_dark", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + output = "homedecor:bathroom_set", + recipe = { + { "", "homedecor:glass_table_small_round", "" }, + { "basic_materials:plastic_sheet", "homedecor:glass_table_small_round", "basic_materials:plastic_sheet" }, + { "group:stick", "basic_materials:plastic_sheet", "group:stick" } + }, +}) + +minetest.register_craft({ + output = "homedecor:toilet", + recipe = { + { "","","bucket:bucket_water"}, + { "group:marble","group:marble", "group:marble" }, + { "", "bucket:bucket_empty", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:sink", + recipe = { + { "group:marble","bucket:bucket_empty", "group:marble" }, + { "", "group:marble", "" } + }, +}) + +minetest.register_craft({ + output = "homedecor:taps", + recipe = { + { "default:steel_ingot","bucket:bucket_water", "default:steel_ingot" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:taps_brass", + recipe = { + { "basic_materials:brass_ingot","bucket:bucket_water", "basic_materials:brass_ingot" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:shower_tray", + recipe = { + { "group:marble","bucket:bucket_empty", "group:marble" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:shower_head", + recipe = { + {"default:steel_ingot", "bucket:bucket_water"}, + }, +}) + +minetest.register_craft({ + output = "homedecor:bathtub_clawfoot_brass_taps", + recipe = { + { "homedecor:taps_brass", "", "" }, + { "group:marble", "", "group:marble" }, + { "default:steel_ingot", "group:marble", "default:steel_ingot"}, + }, +}) + +minetest.register_craft({ + output = "homedecor:bathtub_clawfoot_chrome_taps", + recipe = { + { "homedecor:taps", "", "" }, + { "group:marble", "", "group:marble" }, + {"default:steel_ingot", "group:marble", "default:steel_ingot"}, + }, +}) + diff --git a/homedecor/models/homedecor_bathroom_faucet.obj b/homedecor_bathroom/models/homedecor_bathroom_faucet.obj similarity index 100% rename from homedecor/models/homedecor_bathroom_faucet.obj rename to homedecor_bathroom/models/homedecor_bathroom_faucet.obj diff --git a/homedecor/models/homedecor_bathroom_set.obj b/homedecor_bathroom/models/homedecor_bathroom_set.obj similarity index 100% rename from homedecor/models/homedecor_bathroom_set.obj rename to homedecor_bathroom/models/homedecor_bathroom_set.obj diff --git a/homedecor/models/homedecor_bathroom_sink.obj b/homedecor_bathroom/models/homedecor_bathroom_sink.obj similarity index 100% rename from homedecor/models/homedecor_bathroom_sink.obj rename to homedecor_bathroom/models/homedecor_bathroom_sink.obj diff --git a/homedecor/models/homedecor_bathtub_clawfoot.obj b/homedecor_bathroom/models/homedecor_bathtub_clawfoot.obj similarity index 100% rename from homedecor/models/homedecor_bathtub_clawfoot.obj rename to homedecor_bathroom/models/homedecor_bathtub_clawfoot.obj diff --git a/homedecor/models/homedecor_medicine_cabinet.obj b/homedecor_bathroom/models/homedecor_medicine_cabinet.obj similarity index 100% rename from homedecor/models/homedecor_medicine_cabinet.obj rename to homedecor_bathroom/models/homedecor_medicine_cabinet.obj diff --git a/homedecor/models/homedecor_medicine_cabinet_open.obj b/homedecor_bathroom/models/homedecor_medicine_cabinet_open.obj similarity index 100% rename from homedecor/models/homedecor_medicine_cabinet_open.obj rename to homedecor_bathroom/models/homedecor_medicine_cabinet_open.obj diff --git a/homedecor/models/homedecor_shower_head.obj b/homedecor_bathroom/models/homedecor_shower_head.obj similarity index 100% rename from homedecor/models/homedecor_shower_head.obj rename to homedecor_bathroom/models/homedecor_shower_head.obj diff --git a/homedecor/models/homedecor_toilet_closed.obj b/homedecor_bathroom/models/homedecor_toilet_closed.obj similarity index 100% rename from homedecor/models/homedecor_toilet_closed.obj rename to homedecor_bathroom/models/homedecor_toilet_closed.obj diff --git a/homedecor/models/homedecor_toilet_open.obj b/homedecor_bathroom/models/homedecor_toilet_open.obj similarity index 100% rename from homedecor/models/homedecor_toilet_open.obj rename to homedecor_bathroom/models/homedecor_toilet_open.obj diff --git a/homedecor/models/homedecor_toilet_paper.obj b/homedecor_bathroom/models/homedecor_toilet_paper.obj similarity index 100% rename from homedecor/models/homedecor_toilet_paper.obj rename to homedecor_bathroom/models/homedecor_toilet_paper.obj diff --git a/homedecor/models/homedecor_towel_rod.obj b/homedecor_bathroom/models/homedecor_towel_rod.obj similarity index 100% rename from homedecor/models/homedecor_towel_rod.obj rename to homedecor_bathroom/models/homedecor_towel_rod.obj diff --git a/homedecor/sounds/homedecor_shower.ogg b/homedecor_bathroom/sounds/homedecor_shower.ogg similarity index 100% rename from homedecor/sounds/homedecor_shower.ogg rename to homedecor_bathroom/sounds/homedecor_shower.ogg diff --git a/homedecor/sounds/homedecor_toilet_flush.ogg b/homedecor_bathroom/sounds/homedecor_toilet_flush.ogg similarity index 100% rename from homedecor/sounds/homedecor_toilet_flush.ogg rename to homedecor_bathroom/sounds/homedecor_toilet_flush.ogg diff --git a/homedecor/textures/3dforniture_taps_brass_inv.png b/homedecor_bathroom/textures/3dforniture_taps_brass_inv.png similarity index 100% rename from homedecor/textures/3dforniture_taps_brass_inv.png rename to homedecor_bathroom/textures/3dforniture_taps_brass_inv.png diff --git a/homedecor/textures/3dforniture_taps_inv.png b/homedecor_bathroom/textures/3dforniture_taps_inv.png similarity index 100% rename from homedecor/textures/3dforniture_taps_inv.png rename to homedecor_bathroom/textures/3dforniture_taps_inv.png diff --git a/homedecor/textures/forniture_marble_base_ducha_top.png b/homedecor_bathroom/textures/forniture_marble_base_ducha_top.png similarity index 100% rename from homedecor/textures/forniture_marble_base_ducha_top.png rename to homedecor_bathroom/textures/forniture_marble_base_ducha_top.png diff --git a/homedecor/textures/homedecor_bathroom_set_cup.png b/homedecor_bathroom/textures/homedecor_bathroom_set_cup.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_cup.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_cup.png diff --git a/homedecor/textures/homedecor_bathroom_set_inv.png b/homedecor_bathroom/textures/homedecor_bathroom_set_inv.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_inv.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_inv.png diff --git a/homedecor/textures/homedecor_bathroom_set_mirror.png b/homedecor_bathroom/textures/homedecor_bathroom_set_mirror.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_mirror.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_mirror.png diff --git a/homedecor/textures/homedecor_bathroom_set_toothbrush.png b/homedecor_bathroom/textures/homedecor_bathroom_set_toothbrush.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_toothbrush.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_toothbrush.png diff --git a/homedecor/textures/homedecor_bathroom_set_toothpaste.png b/homedecor_bathroom/textures/homedecor_bathroom_set_toothpaste.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_toothpaste.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_toothpaste.png diff --git a/homedecor/textures/homedecor_bathroom_set_tray.png b/homedecor_bathroom/textures/homedecor_bathroom_set_tray.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_set_tray.png rename to homedecor_bathroom/textures/homedecor_bathroom_set_tray.png diff --git a/homedecor/textures/homedecor_bathroom_sink_inv.png b/homedecor_bathroom/textures/homedecor_bathroom_sink_inv.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_sink_inv.png rename to homedecor_bathroom/textures/homedecor_bathroom_sink_inv.png diff --git a/homedecor/textures/homedecor_bathroom_tiles_bg.png b/homedecor_bathroom/textures/homedecor_bathroom_tiles_bg.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_tiles_bg.png rename to homedecor_bathroom/textures/homedecor_bathroom_tiles_bg.png diff --git a/homedecor/textures/homedecor_bathroom_tiles_fg.png b/homedecor_bathroom/textures/homedecor_bathroom_tiles_fg.png similarity index 100% rename from homedecor/textures/homedecor_bathroom_tiles_fg.png rename to homedecor_bathroom/textures/homedecor_bathroom_tiles_fg.png diff --git a/homedecor/textures/homedecor_bathtub_clawfoot_bottom_inside.png b/homedecor_bathroom/textures/homedecor_bathtub_clawfoot_bottom_inside.png similarity index 100% rename from homedecor/textures/homedecor_bathtub_clawfoot_bottom_inside.png rename to homedecor_bathroom/textures/homedecor_bathtub_clawfoot_bottom_inside.png diff --git a/homedecor/textures/homedecor_medicine_cabinet_inside.png b/homedecor_bathroom/textures/homedecor_medicine_cabinet_inside.png similarity index 100% rename from homedecor/textures/homedecor_medicine_cabinet_inside.png rename to homedecor_bathroom/textures/homedecor_medicine_cabinet_inside.png diff --git a/homedecor/textures/homedecor_medicine_cabinet_inv.png b/homedecor_bathroom/textures/homedecor_medicine_cabinet_inv.png similarity index 100% rename from homedecor/textures/homedecor_medicine_cabinet_inv.png rename to homedecor_bathroom/textures/homedecor_medicine_cabinet_inv.png diff --git a/homedecor/textures/homedecor_medicine_cabinet_mirror.png b/homedecor_bathroom/textures/homedecor_medicine_cabinet_mirror.png similarity index 100% rename from homedecor/textures/homedecor_medicine_cabinet_mirror.png rename to homedecor_bathroom/textures/homedecor_medicine_cabinet_mirror.png diff --git a/homedecor/textures/homedecor_shower_head.png b/homedecor_bathroom/textures/homedecor_shower_head.png similarity index 100% rename from homedecor/textures/homedecor_shower_head.png rename to homedecor_bathroom/textures/homedecor_shower_head.png diff --git a/homedecor/textures/homedecor_shower_head_inv.png b/homedecor_bathroom/textures/homedecor_shower_head_inv.png similarity index 100% rename from homedecor/textures/homedecor_shower_head_inv.png rename to homedecor_bathroom/textures/homedecor_shower_head_inv.png diff --git a/homedecor/textures/homedecor_toilet_paper_inv.png b/homedecor_bathroom/textures/homedecor_toilet_paper_inv.png similarity index 100% rename from homedecor/textures/homedecor_toilet_paper_inv.png rename to homedecor_bathroom/textures/homedecor_toilet_paper_inv.png diff --git a/homedecor/textures/homedecor_towel_rod_inv.png b/homedecor_bathroom/textures/homedecor_towel_rod_inv.png similarity index 100% rename from homedecor/textures/homedecor_towel_rod_inv.png rename to homedecor_bathroom/textures/homedecor_towel_rod_inv.png diff --git a/homedecor_bedroom/depends.txt b/homedecor_bedroom/depends.txt new file mode 100644 index 0000000..f2e42cf --- /dev/null +++ b/homedecor_bedroom/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +basic_materials +unifieddyes +creative diff --git a/homedecor/bedroom.lua b/homedecor_bedroom/init.lua similarity index 74% rename from homedecor/bedroom.lua rename to homedecor_bedroom/init.lua index 7059809..b0e2557 100755 --- a/homedecor/bedroom.lua +++ b/homedecor_bedroom/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local function N_(x) return x end @@ -59,6 +59,7 @@ homedecor.register("bed_regular", { after_dig_node = function(pos, oldnode, oldmetadata, digger) homedecor.unextend_bed(pos) end, + on_dig = unifieddyes.on_dig, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) local itemname = itemstack:get_name() if itemname == "homedecor:bed_regular" then @@ -92,6 +93,7 @@ homedecor.register("bed_extended", { after_dig_node = function(pos, oldnode, oldmetadata, digger) homedecor.unextend_bed(pos) end, + on_dig = unifieddyes.on_dig, -- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) -- homedecor.beds_on_rightclick(pos, node, clicker) -- return itemstack @@ -128,6 +130,7 @@ homedecor.register("bed_kingsize", { inv:add_item("main", "homedecor:bed_regular 2") end end, + on_dig = unifieddyes.on_dig, -- on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) -- homedecor.beds_on_rightclick(pos, node, clicker) -- return itemstack @@ -220,7 +223,7 @@ for _, color in ipairs(bedcolors) do end minetest.register_lbm({ - name = "homedecor:convert_beds", + name = ":homedecor:convert_beds", label = "Convert homedecor static bed nodes to use param2 color", run_at_every_load = false, nodenames = homedecor.old_bed_nodes, @@ -265,3 +268,126 @@ minetest.register_lbm({ meta:set_string("dye", "unifieddyes:"..color) end }) + +-- crafting + + +minetest.register_craft( { + output = "homedecor:nightstand_oak_one_drawer", + recipe = { + { "homedecor:drawer_small" }, + { "group:wood" }, + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:nightstand_oak_one_drawer", + burntime = 30, +}) + +minetest.register_craft( { + output = "homedecor:nightstand_oak_two_drawers", + recipe = { + { "homedecor:drawer_small" }, + { "homedecor:drawer_small" }, + { "group:wood" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:nightstand_oak_two_drawers", + recipe = { + { "homedecor:nightstand_oak_one_drawer" }, + { "homedecor:drawer_small" }, + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:nightstand_oak_two_drawers", + burntime = 30, +}) + +-- + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:nightstand_mahogany_one_drawer", + recipe = { + "homedecor:nightstand_oak_one_drawer", + "dye:brown", + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:nightstand_mahogany_one_drawer", + burntime = 30, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:nightstand_mahogany_two_drawers", + recipe = { + "homedecor:nightstand_oak_two_drawers", + "dye:brown", + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:nightstand_mahogany_two_drawers", + burntime = 30, +}) + + +minetest.register_craft( { + output = "homedecor:bed_regular", + recipe = { + { "group:stick", "", "group:stick" }, + { "wool:white", "wool:white", "wool:white" }, + { "group:wood", "", "group:wood" }, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bed_regular", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:bed_regular", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft( { + output = "homedecor:bed_kingsize", + recipe = { + { "homedecor:bed_regular", "homedecor:bed_regular" } + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bed_kingsize", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:bed_kingsize", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +unifieddyes.register_color_craft({ + output = "homedecor:bed_kingsize", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:bed_regular", + recipe = { + "NEUTRAL_NODE", + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) diff --git a/homedecor/models/homedecor_bed_extended.obj b/homedecor_bedroom/models/homedecor_bed_extended.obj similarity index 100% rename from homedecor/models/homedecor_bed_extended.obj rename to homedecor_bedroom/models/homedecor_bed_extended.obj diff --git a/homedecor/models/homedecor_bed_kingsize.obj b/homedecor_bedroom/models/homedecor_bed_kingsize.obj similarity index 100% rename from homedecor/models/homedecor_bed_kingsize.obj rename to homedecor_bedroom/models/homedecor_bed_kingsize.obj diff --git a/homedecor/models/homedecor_bed_regular.obj b/homedecor_bedroom/models/homedecor_bed_regular.obj similarity index 100% rename from homedecor/models/homedecor_bed_regular.obj rename to homedecor_bedroom/models/homedecor_bed_regular.obj diff --git a/homedecor/textures/homedecor_bed_bottom.png b/homedecor_bedroom/textures/homedecor_bed_bottom.png similarity index 100% rename from homedecor/textures/homedecor_bed_bottom.png rename to homedecor_bedroom/textures/homedecor_bed_bottom.png diff --git a/homedecor/textures/homedecor_bed_frame.png b/homedecor_bedroom/textures/homedecor_bed_frame.png similarity index 100% rename from homedecor/textures/homedecor_bed_frame.png rename to homedecor_bedroom/textures/homedecor_bed_frame.png diff --git a/homedecor/textures/homedecor_bed_inv.png b/homedecor_bedroom/textures/homedecor_bed_inv.png similarity index 100% rename from homedecor/textures/homedecor_bed_inv.png rename to homedecor_bedroom/textures/homedecor_bed_inv.png diff --git a/homedecor/textures/homedecor_bed_kingsize_inv.png b/homedecor_bedroom/textures/homedecor_bed_kingsize_inv.png similarity index 100% rename from homedecor/textures/homedecor_bed_kingsize_inv.png rename to homedecor_bedroom/textures/homedecor_bed_kingsize_inv.png diff --git a/homedecor/textures/homedecor_nightstand_mahogany_1_drawer_front.png b/homedecor_bedroom/textures/homedecor_nightstand_mahogany_1_drawer_front.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_mahogany_1_drawer_front.png rename to homedecor_bedroom/textures/homedecor_nightstand_mahogany_1_drawer_front.png diff --git a/homedecor/textures/homedecor_nightstand_mahogany_2_drawer_front.png b/homedecor_bedroom/textures/homedecor_nightstand_mahogany_2_drawer_front.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_mahogany_2_drawer_front.png rename to homedecor_bedroom/textures/homedecor_nightstand_mahogany_2_drawer_front.png diff --git a/homedecor/textures/homedecor_nightstand_mahogany_back.png b/homedecor_bedroom/textures/homedecor_nightstand_mahogany_back.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_mahogany_back.png rename to homedecor_bedroom/textures/homedecor_nightstand_mahogany_back.png diff --git a/homedecor/textures/homedecor_nightstand_mahogany_lr.png b/homedecor_bedroom/textures/homedecor_nightstand_mahogany_lr.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_mahogany_lr.png rename to homedecor_bedroom/textures/homedecor_nightstand_mahogany_lr.png diff --git a/homedecor/textures/homedecor_nightstand_mahogany_tb.png b/homedecor_bedroom/textures/homedecor_nightstand_mahogany_tb.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_mahogany_tb.png rename to homedecor_bedroom/textures/homedecor_nightstand_mahogany_tb.png diff --git a/homedecor/textures/homedecor_nightstand_oak_1_drawer_front.png b/homedecor_bedroom/textures/homedecor_nightstand_oak_1_drawer_front.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_oak_1_drawer_front.png rename to homedecor_bedroom/textures/homedecor_nightstand_oak_1_drawer_front.png diff --git a/homedecor/textures/homedecor_nightstand_oak_2_drawer_front.png b/homedecor_bedroom/textures/homedecor_nightstand_oak_2_drawer_front.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_oak_2_drawer_front.png rename to homedecor_bedroom/textures/homedecor_nightstand_oak_2_drawer_front.png diff --git a/homedecor/textures/homedecor_nightstand_oak_back.png b/homedecor_bedroom/textures/homedecor_nightstand_oak_back.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_oak_back.png rename to homedecor_bedroom/textures/homedecor_nightstand_oak_back.png diff --git a/homedecor/textures/homedecor_nightstand_oak_lr.png b/homedecor_bedroom/textures/homedecor_nightstand_oak_lr.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_oak_lr.png rename to homedecor_bedroom/textures/homedecor_nightstand_oak_lr.png diff --git a/homedecor/textures/homedecor_nightstand_oak_tb.png b/homedecor_bedroom/textures/homedecor_nightstand_oak_tb.png similarity index 100% rename from homedecor/textures/homedecor_nightstand_oak_tb.png rename to homedecor_bedroom/textures/homedecor_nightstand_oak_tb.png diff --git a/homedecor_books/depends.txt b/homedecor_books/depends.txt new file mode 100644 index 0000000..ddb63ed --- /dev/null +++ b/homedecor_books/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +unifieddyes +creative + diff --git a/homedecor/books.lua b/homedecor_books/init.lua similarity index 95% rename from homedecor/books.lua rename to homedecor_books/init.lua index 20b1e39..3bdce05 100755 --- a/homedecor/books.lua +++ b/homedecor_books/init.lua @@ -1,4 +1,4 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local function N_(x) return x end @@ -183,5 +183,30 @@ minetest.register_on_player_receive_fields(function(player, form_name, fields) return true end) +-- crafting + + +local bookcolors = { + "red", + "green", + "blue", + "violet", + "grey", + "brown" +} + +for _, color in ipairs(bookcolors) do + minetest.register_craft({ + type = "shapeless", + output = "homedecor:book_"..color, + recipe = { + "dye:"..color, + "default:book" + }, + }) +end + +-- aliases + minetest.register_alias("homedecor:book", "homedecor:book_grey") minetest.register_alias("homedecor:book_open", "homedecor:book_open_grey") diff --git a/homedecor/models/homedecor_book.obj b/homedecor_books/models/homedecor_book.obj similarity index 100% rename from homedecor/models/homedecor_book.obj rename to homedecor_books/models/homedecor_book.obj diff --git a/homedecor/models/homedecor_book_open.obj b/homedecor_books/models/homedecor_book_open.obj similarity index 100% rename from homedecor/models/homedecor_book_open.obj rename to homedecor_books/models/homedecor_book_open.obj diff --git a/homedecor/textures/homedecor_book_cover.png b/homedecor_books/textures/homedecor_book_cover.png similarity index 100% rename from homedecor/textures/homedecor_book_cover.png rename to homedecor_books/textures/homedecor_book_cover.png diff --git a/homedecor/textures/homedecor_book_cover_trim.png b/homedecor_books/textures/homedecor_book_cover_trim.png similarity index 100% rename from homedecor/textures/homedecor_book_cover_trim.png rename to homedecor_books/textures/homedecor_book_cover_trim.png diff --git a/homedecor/textures/homedecor_book_edges.png b/homedecor_books/textures/homedecor_book_edges.png similarity index 100% rename from homedecor/textures/homedecor_book_edges.png rename to homedecor_books/textures/homedecor_book_edges.png diff --git a/homedecor/textures/homedecor_book_inv.png b/homedecor_books/textures/homedecor_book_inv.png similarity index 100% rename from homedecor/textures/homedecor_book_inv.png rename to homedecor_books/textures/homedecor_book_inv.png diff --git a/homedecor/textures/homedecor_book_pages.png b/homedecor_books/textures/homedecor_book_pages.png similarity index 100% rename from homedecor/textures/homedecor_book_pages.png rename to homedecor_books/textures/homedecor_book_pages.png diff --git a/homedecor/textures/homedecor_book_trim_inv.png b/homedecor_books/textures/homedecor_book_trim_inv.png similarity index 100% rename from homedecor/textures/homedecor_book_trim_inv.png rename to homedecor_books/textures/homedecor_book_trim_inv.png diff --git a/homedecor_climate_control/depends.txt b/homedecor_climate_control/depends.txt new file mode 100644 index 0000000..f37b655 --- /dev/null +++ b/homedecor_climate_control/depends.txt @@ -0,0 +1,4 @@ +homedecor_common +default +basic_materials +building_blocks? diff --git a/homedecor/climate-control.lua b/homedecor_climate_control/init.lua similarity index 61% rename from homedecor/climate-control.lua rename to homedecor_climate_control/init.lua index 412fedf..bddf858 100755 --- a/homedecor/climate-control.lua +++ b/homedecor_climate_control/init.lua @@ -1,6 +1,6 @@ -- Nodes that would affect the local temperature e.g. fans, heater, A/C -local S = homedecor_i18n.gettext +local S = homedecor.gettext homedecor.register("air_conditioner", { description = S("Air Conditioner"), @@ -16,7 +16,7 @@ homedecor.register("air_conditioner", { -- fans -minetest.register_entity("homedecor:mesh_desk_fan", { +minetest.register_entity(":homedecor:mesh_desk_fan", { collisionbox = homedecor.nodebox.null, visual = "mesh", mesh = "homedecor_desk_fan.b3d", @@ -141,3 +141,81 @@ homedecor.register("radiator", { collision_box = r_cbox, sounds = default.node_sound_wood_defaults(), }) + +-- crafting +minetest.register_craftitem(":homedecor:fan_blades", { + description = S("Fan blades"), + inventory_image = "homedecor_fan_blades.png" +}) + +minetest.register_craft( { + output = "homedecor:fan_blades 2", + recipe = { + { "", "basic_materials:plastic_sheet", "" }, + { "", "default:steel_ingot", "" }, + { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" } + }, +}) + +minetest.register_craft({ + output = "homedecor:air_conditioner", + recipe = { + { "default:steel_ingot", "building_blocks:grate", "default:steel_ingot" }, + { "default:steel_ingot", "homedecor:fan_blades", "basic_materials:motor" }, + { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:air_conditioner", + recipe = { + { "default:steel_ingot", "building_blocks:grate", "default:steel_ingot" }, + { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" }, + { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:ceiling_fan", + recipe = { + { "basic_materials:motor" }, + { "homedecor:fan_blades" }, + { "homedecor:glowlight_small_cube" } + } +}) + +minetest.register_craft({ + output = "homedecor:ceiling_fan", + recipe = { + { "basic_materials:motor" }, + { "homedecor:fan_blades" }, + { "homedecor:glowlight_small_cube" } + } +}) + + +minetest.register_craft( { + output = "homedecor:desk_fan", + recipe = { + {"default:steel_ingot", "homedecor:fan_blades", "basic_materials:motor"}, + {"", "default:steel_ingot", ""} + }, +}) + +minetest.register_craft( { + output = "homedecor:space_heater", + recipe = { + {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"}, + {"basic_materials:plastic_sheet", "homedecor:fan_blades", "basic_materials:motor"}, + {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"} + }, +}) + +minetest.register_craft( { + output = "homedecor:radiator", + recipe = { + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" }, + { "basic_materials:ic", "basic_materials:heating_element", "" }, + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } + }, +}) diff --git a/homedecor/models/homedecor_ac.obj b/homedecor_climate_control/models/homedecor_ac.obj similarity index 100% rename from homedecor/models/homedecor_ac.obj rename to homedecor_climate_control/models/homedecor_ac.obj diff --git a/homedecor/models/homedecor_desk_fan.b3d b/homedecor_climate_control/models/homedecor_desk_fan.b3d similarity index 100% rename from homedecor/models/homedecor_desk_fan.b3d rename to homedecor_climate_control/models/homedecor_desk_fan.b3d diff --git a/homedecor/models/homedecor_radiator.obj b/homedecor_climate_control/models/homedecor_radiator.obj similarity index 100% rename from homedecor/models/homedecor_radiator.obj rename to homedecor_climate_control/models/homedecor_radiator.obj diff --git a/homedecor/textures/homedecor_ac.png b/homedecor_climate_control/textures/homedecor_ac.png similarity index 100% rename from homedecor/textures/homedecor_ac.png rename to homedecor_climate_control/textures/homedecor_ac.png diff --git a/homedecor/textures/homedecor_ceiling_fan_bottom.png b/homedecor_climate_control/textures/homedecor_ceiling_fan_bottom.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_fan_bottom.png rename to homedecor_climate_control/textures/homedecor_ceiling_fan_bottom.png diff --git a/homedecor/textures/homedecor_ceiling_fan_inv.png b/homedecor_climate_control/textures/homedecor_ceiling_fan_inv.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_fan_inv.png rename to homedecor_climate_control/textures/homedecor_ceiling_fan_inv.png diff --git a/homedecor/textures/homedecor_ceiling_fan_sides.png b/homedecor_climate_control/textures/homedecor_ceiling_fan_sides.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_fan_sides.png rename to homedecor_climate_control/textures/homedecor_ceiling_fan_sides.png diff --git a/homedecor/textures/homedecor_ceiling_fan_top.png b/homedecor_climate_control/textures/homedecor_ceiling_fan_top.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_fan_top.png rename to homedecor_climate_control/textures/homedecor_ceiling_fan_top.png diff --git a/homedecor/textures/homedecor_desk_fan_body.png b/homedecor_climate_control/textures/homedecor_desk_fan_body.png similarity index 100% rename from homedecor/textures/homedecor_desk_fan_body.png rename to homedecor_climate_control/textures/homedecor_desk_fan_body.png diff --git a/homedecor/textures/homedecor_desk_fan_inv.png b/homedecor_climate_control/textures/homedecor_desk_fan_inv.png similarity index 100% rename from homedecor/textures/homedecor_desk_fan_inv.png rename to homedecor_climate_control/textures/homedecor_desk_fan_inv.png diff --git a/homedecor/models/homedecor_desk_fan_uv.png b/homedecor_climate_control/textures/homedecor_desk_fan_uv.png similarity index 100% rename from homedecor/models/homedecor_desk_fan_uv.png rename to homedecor_climate_control/textures/homedecor_desk_fan_uv.png diff --git a/homedecor/textures/homedecor_fan_blades.png b/homedecor_climate_control/textures/homedecor_fan_blades.png similarity index 100% rename from homedecor/textures/homedecor_fan_blades.png rename to homedecor_climate_control/textures/homedecor_fan_blades.png diff --git a/homedecor/textures/homedecor_heater_back.png b/homedecor_climate_control/textures/homedecor_heater_back.png similarity index 100% rename from homedecor/textures/homedecor_heater_back.png rename to homedecor_climate_control/textures/homedecor_heater_back.png diff --git a/homedecor/textures/homedecor_heater_front.png b/homedecor_climate_control/textures/homedecor_heater_front.png similarity index 100% rename from homedecor/textures/homedecor_heater_front.png rename to homedecor_climate_control/textures/homedecor_heater_front.png diff --git a/homedecor/textures/homedecor_heater_inv.png b/homedecor_climate_control/textures/homedecor_heater_inv.png similarity index 100% rename from homedecor/textures/homedecor_heater_inv.png rename to homedecor_climate_control/textures/homedecor_heater_inv.png diff --git a/homedecor/textures/homedecor_heater_sides.png b/homedecor_climate_control/textures/homedecor_heater_sides.png similarity index 100% rename from homedecor/textures/homedecor_heater_sides.png rename to homedecor_climate_control/textures/homedecor_heater_sides.png diff --git a/homedecor/textures/homedecor_heater_tb.png b/homedecor_climate_control/textures/homedecor_heater_tb.png similarity index 100% rename from homedecor/textures/homedecor_heater_tb.png rename to homedecor_climate_control/textures/homedecor_heater_tb.png diff --git a/homedecor/textures/homedecor_radiator_controls.png b/homedecor_climate_control/textures/homedecor_radiator_controls.png similarity index 100% rename from homedecor/textures/homedecor_radiator_controls.png rename to homedecor_climate_control/textures/homedecor_radiator_controls.png diff --git a/homedecor/textures/homedecor_radiator_inv.png b/homedecor_climate_control/textures/homedecor_radiator_inv.png similarity index 100% rename from homedecor/textures/homedecor_radiator_inv.png rename to homedecor_climate_control/textures/homedecor_radiator_inv.png diff --git a/homedecor_clocks/depends.txt b/homedecor_clocks/depends.txt new file mode 100644 index 0000000..ff3cb2b --- /dev/null +++ b/homedecor_clocks/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +basic_materials +dye +building_blocks? diff --git a/homedecor/clocks.lua b/homedecor_clocks/init.lua similarity index 59% rename from homedecor/clocks.lua rename to homedecor_clocks/init.lua index 71d7ecd..4251060 100755 --- a/homedecor/clocks.lua +++ b/homedecor_clocks/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local clock_sbox = { type = "fixed", @@ -97,5 +97,55 @@ homedecor.register("grandfather_clock", { on_rotate = screwdriver.rotate_simple }) +-- crafting + + +minetest.register_craft({ + output = "homedecor:analog_clock_plastic 2", + recipe = { + { "basic_materials:plastic_sheet", "dye:black", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "dye:black", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:analog_clock_wood 2", + recipe = { + { "group:stick", "dye:black", "group:stick" }, + { "group:stick", "basic_materials:ic", "group:stick" }, + { "group:stick", "dye:black", "group:stick" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:digital_clock 2", + recipe = { + { "basic_materials:plastic_sheet", "default:paper", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:alarm_clock", + recipe = { + { "basic_materials:plastic_sheet", "homedecor:speaker_driver", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "homedecor:digital_clock", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:grandfather_clock", + recipe = { + { "building_blocks:slab_hardwood","homedecor:analog_clock_wood","building_blocks:slab_hardwood" }, + { "building_blocks:slab_hardwood","basic_materials:brass_ingot","building_blocks:slab_hardwood" }, + { "building_blocks:slab_hardwood","basic_materials:brass_ingot","building_blocks:slab_hardwood" } + }, +}) + +-- aliases + minetest.register_alias("homedecor:grandfather_clock_bottom", "homedecor:grandfather_clock") minetest.register_alias("homedecor:grandfather_clock_top", "air") diff --git a/homedecor/models/homedecor_analog_clock.obj b/homedecor_clocks/models/homedecor_analog_clock.obj similarity index 100% rename from homedecor/models/homedecor_analog_clock.obj rename to homedecor_clocks/models/homedecor_analog_clock.obj diff --git a/homedecor/models/homedecor_grandfather_clock.obj b/homedecor_clocks/models/homedecor_grandfather_clock.obj similarity index 100% rename from homedecor/models/homedecor_grandfather_clock.obj rename to homedecor_clocks/models/homedecor_grandfather_clock.obj diff --git a/homedecor/textures/homedecor_alarm_clock_back.png b/homedecor_clocks/textures/homedecor_alarm_clock_back.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_back.png rename to homedecor_clocks/textures/homedecor_alarm_clock_back.png diff --git a/homedecor/textures/homedecor_alarm_clock_bottom.png b/homedecor_clocks/textures/homedecor_alarm_clock_bottom.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_bottom.png rename to homedecor_clocks/textures/homedecor_alarm_clock_bottom.png diff --git a/homedecor/textures/homedecor_alarm_clock_front.png b/homedecor_clocks/textures/homedecor_alarm_clock_front.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_front.png rename to homedecor_clocks/textures/homedecor_alarm_clock_front.png diff --git a/homedecor/textures/homedecor_alarm_clock_inv.png b/homedecor_clocks/textures/homedecor_alarm_clock_inv.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_inv.png rename to homedecor_clocks/textures/homedecor_alarm_clock_inv.png diff --git a/homedecor/textures/homedecor_alarm_clock_sides.png b/homedecor_clocks/textures/homedecor_alarm_clock_sides.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_sides.png rename to homedecor_clocks/textures/homedecor_alarm_clock_sides.png diff --git a/homedecor/textures/homedecor_alarm_clock_top.png b/homedecor_clocks/textures/homedecor_alarm_clock_top.png similarity index 100% rename from homedecor/textures/homedecor_alarm_clock_top.png rename to homedecor_clocks/textures/homedecor_alarm_clock_top.png diff --git a/homedecor/textures/homedecor_analog_clock_back.png b/homedecor_clocks/textures/homedecor_analog_clock_back.png similarity index 100% rename from homedecor/textures/homedecor_analog_clock_back.png rename to homedecor_clocks/textures/homedecor_analog_clock_back.png diff --git a/homedecor/textures/homedecor_analog_clock_face.png b/homedecor_clocks/textures/homedecor_analog_clock_face.png similarity index 100% rename from homedecor/textures/homedecor_analog_clock_face.png rename to homedecor_clocks/textures/homedecor_analog_clock_face.png diff --git a/homedecor/textures/homedecor_analog_clock_plastic_inv.png b/homedecor_clocks/textures/homedecor_analog_clock_plastic_inv.png similarity index 100% rename from homedecor/textures/homedecor_analog_clock_plastic_inv.png rename to homedecor_clocks/textures/homedecor_analog_clock_plastic_inv.png diff --git a/homedecor/textures/homedecor_analog_clock_wood_inv.png b/homedecor_clocks/textures/homedecor_analog_clock_wood_inv.png similarity index 100% rename from homedecor/textures/homedecor_analog_clock_wood_inv.png rename to homedecor_clocks/textures/homedecor_analog_clock_wood_inv.png diff --git a/homedecor/textures/homedecor_digital_clock_back.png b/homedecor_clocks/textures/homedecor_digital_clock_back.png similarity index 100% rename from homedecor/textures/homedecor_digital_clock_back.png rename to homedecor_clocks/textures/homedecor_digital_clock_back.png diff --git a/homedecor/textures/homedecor_digital_clock_edges.png b/homedecor_clocks/textures/homedecor_digital_clock_edges.png similarity index 100% rename from homedecor/textures/homedecor_digital_clock_edges.png rename to homedecor_clocks/textures/homedecor_digital_clock_edges.png diff --git a/homedecor/textures/homedecor_digital_clock_front.png b/homedecor_clocks/textures/homedecor_digital_clock_front.png similarity index 100% rename from homedecor/textures/homedecor_digital_clock_front.png rename to homedecor_clocks/textures/homedecor_digital_clock_front.png diff --git a/homedecor/textures/homedecor_digital_clock_inv.png b/homedecor_clocks/textures/homedecor_digital_clock_inv.png similarity index 100% rename from homedecor/textures/homedecor_digital_clock_inv.png rename to homedecor_clocks/textures/homedecor_digital_clock_inv.png diff --git a/homedecor/textures/homedecor_grandfather_clock_face.png b/homedecor_clocks/textures/homedecor_grandfather_clock_face.png similarity index 100% rename from homedecor/textures/homedecor_grandfather_clock_face.png rename to homedecor_clocks/textures/homedecor_grandfather_clock_face.png diff --git a/homedecor/textures/homedecor_grandfather_clock_face_edge.png b/homedecor_clocks/textures/homedecor_grandfather_clock_face_edge.png similarity index 100% rename from homedecor/textures/homedecor_grandfather_clock_face_edge.png rename to homedecor_clocks/textures/homedecor_grandfather_clock_face_edge.png diff --git a/homedecor/textures/homedecor_grandfather_clock_inv.png b/homedecor_clocks/textures/homedecor_grandfather_clock_inv.png similarity index 100% rename from homedecor/textures/homedecor_grandfather_clock_inv.png rename to homedecor_clocks/textures/homedecor_grandfather_clock_inv.png diff --git a/homedecor_cobweb/depends.txt b/homedecor_cobweb/depends.txt new file mode 100644 index 0000000..917d513 --- /dev/null +++ b/homedecor_cobweb/depends.txt @@ -0,0 +1,2 @@ +homedecor_common +default diff --git a/homedecor/cobweb.lua b/homedecor_cobweb/init.lua similarity index 91% rename from homedecor/cobweb.lua rename to homedecor_cobweb/init.lua index 43b7794..23f6556 100755 --- a/homedecor/cobweb.lua +++ b/homedecor_cobweb/init.lua @@ -1,7 +1,7 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext -minetest.register_node("homedecor:cobweb_corner", { +minetest.register_node(":homedecor:cobweb_corner", { description = S("Cobweb"), drawtype = "torchlike", tiles = { "homedecor_cobweb_torchlike.png" }, @@ -25,7 +25,7 @@ minetest.register_node("homedecor:cobweb_corner", { end }) -minetest.register_node("homedecor:cobweb_centered", { +minetest.register_node(":homedecor:cobweb_centered", { description = S("Cobweb"), drawtype = "nodebox", tiles = { "homedecor_cobweb.png" }, @@ -52,7 +52,7 @@ minetest.register_node("homedecor:cobweb_centered", { drop = "homedecor:cobweb_corner" }) -minetest.register_node("homedecor:cobweb_flat", { +minetest.register_node(":homedecor:cobweb_flat", { description = S("Cobweb"), drawtype = "nodebox", tiles = { "homedecor_cobweb.png" }, @@ -79,7 +79,7 @@ minetest.register_node("homedecor:cobweb_flat", { drop = "homedecor:cobweb_corner" }) -minetest.register_node("homedecor:cobweb_plantlike", { +minetest.register_node(":homedecor:cobweb_plantlike", { description = S("Cobweb"), drawtype = "plantlike", tiles = { "homedecor_cobweb_plantlike.png" }, @@ -158,13 +158,13 @@ function homedecor.rotate_cobweb(pos) end --- convert existing cobwebs +-- crafting -minetest.register_abm({ - nodenames = { "homedecor:cobweb" }, - interval = 1, - chance = 1, - action = function(pos, node, active_object_count, active_object_count_wider) - homedecor.rotate_cobweb(pos) - end +minetest.register_craft( { + output = "homedecor:cobweb_corner 5", + recipe = { + { "farming:string", "", "farming:string" }, + { "", "farming:string", "" }, + { "farming:string", "", "farming:string" } + }, }) diff --git a/homedecor/textures/homedecor_cobweb.png b/homedecor_cobweb/textures/homedecor_cobweb.png similarity index 100% rename from homedecor/textures/homedecor_cobweb.png rename to homedecor_cobweb/textures/homedecor_cobweb.png diff --git a/homedecor/textures/homedecor_cobweb_plantlike.png b/homedecor_cobweb/textures/homedecor_cobweb_plantlike.png similarity index 100% rename from homedecor/textures/homedecor_cobweb_plantlike.png rename to homedecor_cobweb/textures/homedecor_cobweb_plantlike.png diff --git a/homedecor/textures/homedecor_cobweb_torchlike.png b/homedecor_cobweb/textures/homedecor_cobweb_torchlike.png similarity index 100% rename from homedecor/textures/homedecor_cobweb_torchlike.png rename to homedecor_cobweb/textures/homedecor_cobweb_torchlike.png diff --git a/homedecor_common/crafts.lua b/homedecor_common/crafts.lua new file mode 100644 index 0000000..547ef18 --- /dev/null +++ b/homedecor_common/crafts.lua @@ -0,0 +1,73 @@ +-- crafts for common items that are used by more than one home decor component + +local S = homedecor.gettext + +-- items + +minetest.register_craftitem(":homedecor:roof_tile_terracotta", { + description = S("Terracotta Roof Tile"), + inventory_image = "homedecor_roof_tile_terracotta.png", +}) + +minetest.register_craftitem(":homedecor:drawer_small", { + description = S("Small Wooden Drawer"), + inventory_image = "homedecor_drawer_small.png", +}) + +-- cooking/fuel + +minetest.register_craft({ + type = "cooking", + output = "homedecor:roof_tile_terracotta", + recipe = "basic_materials:terracotta_base", +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:shingles_wood", + burntime = 30, +}) + + +-- crafing + +minetest.register_craft( { + output = "homedecor:shingles_terracotta", + recipe = { + { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta"}, + { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta"}, + }, +}) + +minetest.register_craft( { + output = "homedecor:roof_tile_terracotta 8", + recipe = { + { "homedecor:shingles_terracotta", "homedecor:shingles_terracotta" } + } +}) + +minetest.register_craft( { + output = "homedecor:shingles_wood 12", + recipe = { + { "group:stick", "group:wood"}, + { "group:wood", "group:stick"}, + }, +}) + +minetest.register_craft( { + output = "homedecor:shingles_wood 12", + recipe = { + { "group:wood", "group:stick"}, + { "group:stick", "group:wood"}, + }, +}) + +minetest.register_craft( { + output = "homedecor:shingles_asphalt 6", + recipe = { + { "building_blocks:gravel_spread", "dye:black", "building_blocks:gravel_spread" }, + { "group:sand", "dye:black", "group:sand" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + }, +}) + diff --git a/homedecor_common/depends.txt b/homedecor_common/depends.txt new file mode 100644 index 0000000..0d59c2b --- /dev/null +++ b/homedecor_common/depends.txt @@ -0,0 +1,3 @@ +default +creative +intllib? diff --git a/homedecor/handlers/expansion.lua b/homedecor_common/expansion.lua similarity index 99% rename from homedecor/handlers/expansion.lua rename to homedecor_common/expansion.lua index bd87e90..26efc6a 100755 --- a/homedecor/handlers/expansion.lua +++ b/homedecor_common/expansion.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext -- vectors to place one node next to or behind another diff --git a/homedecor/handlers/furnaces.lua b/homedecor_common/furnaces.lua similarity index 98% rename from homedecor/handlers/furnaces.lua rename to homedecor_common/furnaces.lua index 36a7939..b82c14c 100755 --- a/homedecor/handlers/furnaces.lua +++ b/homedecor_common/furnaces.lua @@ -1,6 +1,6 @@ -- This code supplies an oven/stove. Basically it's just a copy of the default furnace with different textures. -local S = homedecor_i18n.gettext +local S = homedecor.gettext local function swap_node(pos, name) local node = minetest.get_node(pos) @@ -80,7 +80,7 @@ local furnace_can_dig = function(pos,player) end function homedecor.register_furnace(name, furnacedef) - furnacedef.fire_fg = furnacedef.fire_bg or "default_furnace_fire_fg.png" + furnacedef.fire_fg = furnacedef.fire_fg or "default_furnace_fire_fg.png" furnacedef.fire_bg = furnacedef.fire_bg or "default_furnace_fire_bg.png" furnacedef.output_slots = furnacedef.output_slots or 4 diff --git a/homedecor/init.lua b/homedecor_common/init.lua similarity index 51% rename from homedecor/init.lua rename to homedecor_common/init.lua index 96215d9..6d81c44 100755 --- a/homedecor/init.lua +++ b/homedecor_common/init.lua @@ -1,20 +1,16 @@ --- Home Decor mod by VanessaE --- --- Mostly my own code, with bits and pieces lifted from Minetest's default --- lua files and from ironzorg's flowers mod. Many thanks to GloopMaster --- for helping me figure out the inventories used in the nightstands/dressers. --- --- The code for ovens, nightstands, refrigerators are basically modified --- copies of the code for chests and furnaces. +-- Home Decor API/functions, and common textures and models +-- by VanessaE -local modpath = minetest.get_modpath("homedecor") - -minetest.get_modpath("darkage") -local S = homedecor_i18n.gettext +local modpath = minetest.get_modpath("homedecor_common") homedecor = {} homedecor.modpath = modpath +-- Intllib support +homedecor.gettext, homedecor.ngettext = dofile(modpath.."/intllib.lua") + +local S = homedecor.gettext + -- Determine if the item being pointed at is the underside of a node (e.g a ceiling) function homedecor.find_ceiling(itemstack, placer, pointed_thing) -- most of this is copied from the rotate-and-place function in builtin @@ -71,57 +67,16 @@ homedecor.color_dark_grey = 0xff606060 homedecor.color_med_grey = 0xffa0a0a0 -- load different handler subsystems -dofile(modpath.."/handlers/init.lua") - --- load various other components -dofile(modpath.."/misc-nodes.lua") -- the catch-all for all misc nodes -dofile(modpath.."/tables.lua") -dofile(modpath.."/electronics.lua") -dofile(modpath.."/shutters.lua") - -dofile(modpath.."/roofing.lua") - -dofile(modpath.."/foyer.lua") - -dofile(modpath.."/doors_and_gates.lua") - -dofile(modpath.."/fences.lua") - -dofile(modpath.."/lighting.lua") - -dofile(modpath.."/kitchen_appliances.lua") -dofile(modpath.."/kitchen_furniture.lua") -dofile(modpath.."/gastronomy.lua") - -dofile(modpath.."/bathroom_furniture.lua") -dofile(modpath.."/bathroom_sanitation.lua") - -dofile(modpath.."/bedroom.lua") - -dofile(modpath.."/laundry.lua") - -dofile(modpath.."/office.lua") - -dofile(modpath.."/clocks.lua") -dofile(modpath.."/electrics.lua") - -dofile(modpath.."/window_treatments.lua") - -dofile(modpath.."/furniture.lua") -dofile(modpath.."/furniture_medieval.lua") -dofile(modpath.."/furniture_recipes.lua") -dofile(modpath.."/climate-control.lua") - -dofile(modpath.."/cobweb.lua") -dofile(modpath.."/books.lua") -dofile(modpath.."/exterior.lua") -dofile(modpath.."/trash_cans.lua") ---dofile(modpath.."/wardrobe.lua") - +dofile(modpath.."/nodeboxes.lua") +dofile(modpath.."/expansion.lua") +dofile(modpath.."/furnaces.lua") +dofile(modpath.."/inventory.lua") +dofile(modpath.."/registration.lua") +dofile(modpath.."/water_particles.lua") +dofile(modpath.."/mt_game_beds_functions.lua") +dofile(modpath.."/sit.lua") dofile(modpath.."/crafts.lua") if minetest.settings:get_bool("log_mod") then - minetest.log("action", "[HomeDecor] " .. S("Loaded!")) + minetest.log("action", "[HomeDecor API] " .. S("Loaded!")) end - -minetest.register_alias("chains:chandelier", "homedecor:chandelier_steel") diff --git a/homedecor_i18n/intllib.lua b/homedecor_common/intllib.lua similarity index 100% rename from homedecor_i18n/intllib.lua rename to homedecor_common/intllib.lua diff --git a/homedecor/handlers/inventory.lua b/homedecor_common/inventory.lua similarity index 99% rename from homedecor/handlers/inventory.lua rename to homedecor_common/inventory.lua index dd09133..2a49228 100755 --- a/homedecor/handlers/inventory.lua +++ b/homedecor_common/inventory.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local default_can_dig = function(pos,player) local meta = minetest.get_meta(pos) diff --git a/homedecor_i18n/locale/de.po b/homedecor_common/locale/de.po similarity index 100% rename from homedecor_i18n/locale/de.po rename to homedecor_common/locale/de.po diff --git a/homedecor_i18n/locale/es.po b/homedecor_common/locale/es.po similarity index 100% rename from homedecor_i18n/locale/es.po rename to homedecor_common/locale/es.po diff --git a/homedecor_i18n/locale/fr.po b/homedecor_common/locale/fr.po similarity index 100% rename from homedecor_i18n/locale/fr.po rename to homedecor_common/locale/fr.po diff --git a/homedecor_i18n/locale/it.po b/homedecor_common/locale/it.po similarity index 100% rename from homedecor_i18n/locale/it.po rename to homedecor_common/locale/it.po diff --git a/homedecor_i18n/locale/ms.po b/homedecor_common/locale/ms.po similarity index 100% rename from homedecor_i18n/locale/ms.po rename to homedecor_common/locale/ms.po diff --git a/homedecor_i18n/locale/pt.po b/homedecor_common/locale/pt.po similarity index 100% rename from homedecor_i18n/locale/pt.po rename to homedecor_common/locale/pt.po diff --git a/homedecor_i18n/locale/pt_BR.po b/homedecor_common/locale/pt_BR.po similarity index 100% rename from homedecor_i18n/locale/pt_BR.po rename to homedecor_common/locale/pt_BR.po diff --git a/homedecor_i18n/locale/ru.po b/homedecor_common/locale/ru.po similarity index 100% rename from homedecor_i18n/locale/ru.po rename to homedecor_common/locale/ru.po diff --git a/homedecor_i18n/locale/template.pot b/homedecor_common/locale/template.pot similarity index 100% rename from homedecor_i18n/locale/template.pot rename to homedecor_common/locale/template.pot diff --git a/homedecor/models/homedecor_cube.obj b/homedecor_common/models/homedecor_cube.obj similarity index 100% rename from homedecor/models/homedecor_cube.obj rename to homedecor_common/models/homedecor_cube.obj diff --git a/homedecor/models/homedecor_slope.obj b/homedecor_common/models/homedecor_slope.obj similarity index 100% rename from homedecor/models/homedecor_slope.obj rename to homedecor_common/models/homedecor_slope.obj diff --git a/homedecor/models/homedecor_slope_inner_corner.obj b/homedecor_common/models/homedecor_slope_inner_corner.obj similarity index 100% rename from homedecor/models/homedecor_slope_inner_corner.obj rename to homedecor_common/models/homedecor_slope_inner_corner.obj diff --git a/homedecor/models/homedecor_slope_outer_corner.obj b/homedecor_common/models/homedecor_slope_outer_corner.obj similarity index 100% rename from homedecor/models/homedecor_slope_outer_corner.obj rename to homedecor_common/models/homedecor_slope_outer_corner.obj diff --git a/homedecor/handlers/mt_game_beds_functions.lua b/homedecor_common/mt_game_beds_functions.lua similarity index 100% rename from homedecor/handlers/mt_game_beds_functions.lua rename to homedecor_common/mt_game_beds_functions.lua diff --git a/homedecor/handlers/nodeboxes.lua b/homedecor_common/nodeboxes.lua similarity index 100% rename from homedecor/handlers/nodeboxes.lua rename to homedecor_common/nodeboxes.lua diff --git a/homedecor/handlers/registration.lua b/homedecor_common/registration.lua similarity index 98% rename from homedecor/handlers/registration.lua rename to homedecor_common/registration.lua index 8c20558..f2d9bff 100755 --- a/homedecor/handlers/registration.lua +++ b/homedecor_common/registration.lua @@ -91,5 +91,5 @@ function homedecor.register(name, original_def) end -- register the actual minetest node - minetest.register_node("homedecor:" .. name, def) + minetest.register_node(":homedecor:" .. name, def) end diff --git a/homedecor/handlers/sit.lua b/homedecor_common/sit.lua similarity index 100% rename from homedecor/handlers/sit.lua rename to homedecor_common/sit.lua diff --git a/homedecor/sounds/homedecor_faucet.ogg b/homedecor_common/sounds/homedecor_faucet.ogg similarity index 100% rename from homedecor/sounds/homedecor_faucet.ogg rename to homedecor_common/sounds/homedecor_faucet.ogg diff --git a/homedecor/textures/homedecor_blanktile.png b/homedecor_common/textures/homedecor_blanktile.png similarity index 100% rename from homedecor/textures/homedecor_blanktile.png rename to homedecor_common/textures/homedecor_blanktile.png diff --git a/homedecor/textures/homedecor_drawer_small.png b/homedecor_common/textures/homedecor_drawer_small.png similarity index 100% rename from homedecor/textures/homedecor_drawer_small.png rename to homedecor_common/textures/homedecor_drawer_small.png diff --git a/homedecor/textures/homedecor_generic_metal.png b/homedecor_common/textures/homedecor_generic_metal.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal.png rename to homedecor_common/textures/homedecor_generic_metal.png diff --git a/homedecor/textures/homedecor_generic_metal_brass.png b/homedecor_common/textures/homedecor_generic_metal_brass.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_brass.png rename to homedecor_common/textures/homedecor_generic_metal_brass.png diff --git a/homedecor/textures/homedecor_generic_metal_bright.png b/homedecor_common/textures/homedecor_generic_metal_bright.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_bright.png rename to homedecor_common/textures/homedecor_generic_metal_bright.png diff --git a/homedecor/textures/homedecor_generic_metal_gold.png b/homedecor_common/textures/homedecor_generic_metal_gold.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_gold.png rename to homedecor_common/textures/homedecor_generic_metal_gold.png diff --git a/homedecor/textures/homedecor_generic_metal_gold2.png b/homedecor_common/textures/homedecor_generic_metal_gold2.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_gold2.png rename to homedecor_common/textures/homedecor_generic_metal_gold2.png diff --git a/homedecor/textures/homedecor_generic_metal_lines_overlay.png b/homedecor_common/textures/homedecor_generic_metal_lines_overlay.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_lines_overlay.png rename to homedecor_common/textures/homedecor_generic_metal_lines_overlay.png diff --git a/homedecor/textures/homedecor_generic_metal_wrought_iron.png b/homedecor_common/textures/homedecor_generic_metal_wrought_iron.png similarity index 100% rename from homedecor/textures/homedecor_generic_metal_wrought_iron.png rename to homedecor_common/textures/homedecor_generic_metal_wrought_iron.png diff --git a/homedecor/textures/homedecor_generic_plastic.png b/homedecor_common/textures/homedecor_generic_plastic.png similarity index 100% rename from homedecor/textures/homedecor_generic_plastic.png rename to homedecor_common/textures/homedecor_generic_plastic.png diff --git a/homedecor/textures/homedecor_generic_quilted_paper.png b/homedecor_common/textures/homedecor_generic_quilted_paper.png similarity index 100% rename from homedecor/textures/homedecor_generic_quilted_paper.png rename to homedecor_common/textures/homedecor_generic_quilted_paper.png diff --git a/homedecor/textures/homedecor_generic_terrycloth.png b/homedecor_common/textures/homedecor_generic_terrycloth.png similarity index 100% rename from homedecor/textures/homedecor_generic_terrycloth.png rename to homedecor_common/textures/homedecor_generic_terrycloth.png diff --git a/homedecor/textures/homedecor_generic_wood_luxury.png b/homedecor_common/textures/homedecor_generic_wood_luxury.png similarity index 100% rename from homedecor/textures/homedecor_generic_wood_luxury.png rename to homedecor_common/textures/homedecor_generic_wood_luxury.png diff --git a/homedecor/textures/homedecor_generic_wood_old.png b/homedecor_common/textures/homedecor_generic_wood_old.png similarity index 100% rename from homedecor/textures/homedecor_generic_wood_old.png rename to homedecor_common/textures/homedecor_generic_wood_old.png diff --git a/homedecor/textures/homedecor_generic_wood_plain.png b/homedecor_common/textures/homedecor_generic_wood_plain.png similarity index 100% rename from homedecor/textures/homedecor_generic_wood_plain.png rename to homedecor_common/textures/homedecor_generic_wood_plain.png diff --git a/homedecor/textures/homedecor_generic_wood_red.png b/homedecor_common/textures/homedecor_generic_wood_red.png similarity index 100% rename from homedecor/textures/homedecor_generic_wood_red.png rename to homedecor_common/textures/homedecor_generic_wood_red.png diff --git a/homedecor/textures/homedecor_polished_copper.png b/homedecor_common/textures/homedecor_polished_copper.png similarity index 100% rename from homedecor/textures/homedecor_polished_copper.png rename to homedecor_common/textures/homedecor_polished_copper.png diff --git a/homedecor/textures/homedecor_roof_tile_terracotta.png b/homedecor_common/textures/homedecor_roof_tile_terracotta.png similarity index 100% rename from homedecor/textures/homedecor_roof_tile_terracotta.png rename to homedecor_common/textures/homedecor_roof_tile_terracotta.png diff --git a/homedecor/textures/homedecor_shingles_asphalt.png b/homedecor_common/textures/homedecor_shingles_asphalt.png similarity index 100% rename from homedecor/textures/homedecor_shingles_asphalt.png rename to homedecor_common/textures/homedecor_shingles_asphalt.png diff --git a/homedecor/textures/homedecor_shingles_terracotta.png b/homedecor_common/textures/homedecor_shingles_terracotta.png similarity index 100% rename from homedecor/textures/homedecor_shingles_terracotta.png rename to homedecor_common/textures/homedecor_shingles_terracotta.png diff --git a/homedecor/textures/homedecor_shingles_terracotta_inv.png b/homedecor_common/textures/homedecor_shingles_terracotta_inv.png similarity index 100% rename from homedecor/textures/homedecor_shingles_terracotta_inv.png rename to homedecor_common/textures/homedecor_shingles_terracotta_inv.png diff --git a/homedecor/textures/homedecor_shingles_wood.png b/homedecor_common/textures/homedecor_shingles_wood.png similarity index 100% rename from homedecor/textures/homedecor_shingles_wood.png rename to homedecor_common/textures/homedecor_shingles_wood.png diff --git a/homedecor/textures/homedecor_water_particle.png b/homedecor_common/textures/homedecor_water_particle.png similarity index 100% rename from homedecor/textures/homedecor_water_particle.png rename to homedecor_common/textures/homedecor_water_particle.png diff --git a/homedecor_i18n/tools/updatepo.sh b/homedecor_common/tools/updatepo.sh similarity index 100% rename from homedecor_i18n/tools/updatepo.sh rename to homedecor_common/tools/updatepo.sh diff --git a/homedecor/handlers/water_particles.lua b/homedecor_common/water_particles.lua similarity index 98% rename from homedecor/handlers/water_particles.lua rename to homedecor_common/water_particles.lua index d318d58..8042599 100755 --- a/homedecor/handlers/water_particles.lua +++ b/homedecor_common/water_particles.lua @@ -71,6 +71,7 @@ function homedecor.start_particle_spawner(pos, node, particledef, soundname) amount = 60, time = 0, collisiondetection = true, + collision_removal = particledef.die_on_collision, minpos = {x=pos.x - minx, y=pos.y + outlety, z=pos.z - minz}, maxpos = {x=pos.x - maxx, y=pos.y + outlety, z=pos.z - maxz}, minvel = {x = minvelx, y = velocityy, z = minvelz}, diff --git a/homedecor_doors_and_gates/depends.txt b/homedecor_doors_and_gates/depends.txt new file mode 100644 index 0000000..8879c41 --- /dev/null +++ b/homedecor_doors_and_gates/depends.txt @@ -0,0 +1,8 @@ +homedecor_common +homedecor_misc? +homedecor_3d_extras? +default +basic_materials +dye +doors +mesecons? diff --git a/homedecor_doors_and_gates/init.lua b/homedecor_doors_and_gates/init.lua new file mode 100644 index 0000000..1b3ee86 --- /dev/null +++ b/homedecor_doors_and_gates/init.lua @@ -0,0 +1,760 @@ +-- Node definitions for Homedecor doors + +local S = homedecor.gettext +local mesecons_mp = minetest.get_modpath("mesecons") + +-- new doors using minetest_game doors API + +local door_list = { + { name = "wood_plain", + description = "Plain Wooden Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + open = "homedecor_door_open", + close = "homedecor_door_close", + } + }, + + { name = "exterior_fancy", + description = "Fancy Wood/Glass Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + open = "homedecor_door_open", + close = "homedecor_door_close", + }, + backface = true, + alpha = true, + custom_model = "homedecor_door_fancy" + }, + + { name = "french_oak", + description = "French door, Oak-colored", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_glass_defaults(), + }, + backface = true, + alpha = true, + custom_model = "homedecor_door_french" + }, + + { name = "french_mahogany", + description = "French door, Mahogany-colored", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_glass_defaults(), + }, + backface = true, + alpha = true, + custom_model = "homedecor_door_french" + }, + + { name = "french_white", + description = "French door, White", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_glass_defaults(), + }, + backface = true, + alpha = true, + custom_model = "homedecor_door_french" + }, + + { name = "basic_panel", + description = "Basic white panel Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + open = "homedecor_door_open", + close = "homedecor_door_close", + } + }, + + { name = "wrought_iron", + description = "Wrought Iron Gate/Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_metal_defaults(), + open = "doors_steel_door_open", + close = "doors_steel_door_close", + }, + backface = true, + custom_model = "homedecor_door_wrought_iron" + }, + + { name = "carolina", + description = "Wooden Carolina door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + open = "homedecor_door_open", + close = "homedecor_door_close", + }, + backface = true, + alpha = true + }, + + { name = "woodglass", + description = "Wooden door with glass insert, type 3", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + open = "homedecor_door_open", + close = "homedecor_door_close", + }, + backface = true, + alpha = true, + custom_model = "homedecor_door_wood_glass_3" + }, + + { name = "closet_mahogany", + description = "Mahogany Closet Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + }, + custom_model = "homedecor_door_closet" + }, + + { name = "closet_oak", + description = "Oak Closet Door", + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + sounds = { + main = default.node_sound_wood_defaults(), + }, + custom_model = "homedecor_door_closet" + }, +} + +local old_doors = {} +local mesecons + +-- This part blatantly copied from Mesecons, and modified :-) +if mesecons_mp then + mesecons = { + effector = { + action_on = function(pos, node) + local door = doors.get(pos) + if door then + door:open() + end + end, + action_off = function(pos, node) + local door = doors.get(pos) + if door then + door:close() + end + end, + rules = mesecon.rules.pplate + } + } +end + +local hd_3d = minetest.get_modpath("homedecor_3d_extras") + +for _, door in ipairs(door_list) do + doors.register("homedecor_"..door.name, { + tiles = {{ name = "homedecor_door_"..door.name..".png", backface_culling = door.backface }}, + description = door.description, + inventory_image = "homedecor_door_"..door.name.."_inv.png", + groups = table.copy(door.groups), + sounds = door.sounds.main, + sound_open = door.sounds.open, + sound_close = door.sounds.close, + mesecons = mesecons + }) + + local nn_a = "doors:homedecor_"..door.name.."_a" + local nn_b = "doors:homedecor_"..door.name.."_b" + + if door.alpha then + local def = table.copy(minetest.registered_nodes[nn_a]) + def.use_texture_alpha = true + def.mesh = "door_a.obj" -- leaving this out will break the _a model + minetest.register_node(":"..nn_a, def) -- assignment when the override takes place + + def = table.copy(minetest.registered_nodes[nn_b]) + def.use_texture_alpha = true + minetest.register_node(":"..nn_b, def) + end + + if door.custom_model and hd_3d then + def = table.copy(minetest.registered_nodes[nn_a]) + def.mesh = door.custom_model.."_a.obj" + minetest.register_node(":"..nn_a, def) + + def = table.copy(minetest.registered_nodes[nn_b]) + def.mesh = door.custom_model.."_b.obj" + minetest.register_node(":"..nn_b, def) + end + + old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_left" + old_doors[#old_doors + 1] = "homedecor:door_"..door.name.."_right" + + minetest.register_alias("doors:"..door.name.."_a", "doors:homedecor_"..door.name.."_a") + minetest.register_alias("doors:"..door.name.."_b", "doors:homedecor_"..door.name.."_b") +end + +-- Gates + +local gate_list = { + { "picket", S("Unpainted Picket Fence Gate") }, + { "picket_white", S("White Picket Fence Gate") }, + { "barbed_wire", S("Barbed Wire Fence Gate") }, + { "chainlink", S("Chainlink Fence Gate") }, + { "half_door", S("\"Half\" Door") }, + { "half_door_white", S("\"Half\" Door (white)") } +} + +local gate_models_closed = { + {{ -0.5, -0.5, 0.498, 0.5, 0.5, 0.498 }}, + + {{ -0.5, -0.5, 0.498, 0.5, 0.5, 0.498 }}, + + {{ -8/16, -8/16, 6/16, -6/16, 8/16, 8/16 }, -- left post + { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post + { -8/16, 7/16, 13/32, 8/16, 8/16, 15/32 }, -- top piece + { -8/16, -8/16, 13/32, 8/16, -7/16, 15/32 }, -- bottom piece + { -6/16, -8/16, 7/16, 6/16, 8/16, 7/16 }}, -- the wire + + {{ -8/16, -8/16, 6/16, -7/16, 8/16, 8/16 }, -- left post + { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post + { -8/16, 7/16, 13/32, 8/16, 8/16, 15/32 }, -- top piece + { -8/16, -8/16, 13/32, 8/16, -7/16, 15/32 }, -- bottom piece + { -8/16, -8/16, 7/16, 8/16, 8/16, 7/16 }, -- the chainlink itself + { -8/16, -3/16, 6/16, -6/16, 3/16, 8/16 }}, -- the lump representing the lock + + {{ -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }}, -- the whole door :P + + {{ -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }}, -- the whole door :P + +} + +local gate_models_open = { + {{ 0.498, -0.5, -0.5, 0.498, 0.5, 0.5 }}, + + {{ 0.498, -0.5, -0.5, 0.498, 0.5, 0.5 }}, + + {{ 6/16, -8/16, -8/16, 8/16, 8/16, -6/16 }, -- left post + { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post + { 13/32, 7/16, -8/16, 15/32, 8/16, 8/16 }, -- top piece + { 13/32, -8/16, -8/16, 15/32, -7/16, 8/16 }, -- bottom piece + { 7/16, -8/16, -6/16, 7/16, 8/16, 6/16 }}, -- the wire + + {{ 6/16, -8/16, -8/16, 8/16, 8/16, -7/16 }, -- left post + { 6/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, -- right post + { 13/32, 7/16, -8/16, 15/32, 8/16, 8/16 }, -- top piece + { 13/32, -8/16, -8/16, 15/32, -7/16, 8/16 }, -- bottom piece + { 7/16, -8/16, -8/16, 7/16, 8/16, 8/16 }, -- the chainlink itself + { 6/16, -3/16, -8/16, 8/16, 3/16, -6/16 }}, -- the lump representing the lock + + {{ 6/16, -8/16, -8/16, 8/16, 8/16, 8/16 }}, -- the whole door :P + + {{ 6/16, -8/16, -8/16, 8/16, 8/16, 8/16 }}, -- the whole door :P +} + +for i, g in ipairs(gate_list) do + + local gate, gatedesc = unpack(g) + + local tiles = { + "homedecor_gate_"..gate.."_tb.png", + "homedecor_gate_"..gate.."_tb.png", + "homedecor_gate_"..gate.."_lr.png", + "homedecor_gate_"..gate.."_lr.png", + "homedecor_gate_"..gate.."_fb.png^[transformFX", + "homedecor_gate_"..gate.."_fb.png" + } + + if gate == "barbed_wire" then + tiles = { + "homedecor_gate_barbed_wire_edges.png", + "homedecor_gate_barbed_wire_edges.png", + "homedecor_gate_barbed_wire_edges.png", + "homedecor_gate_barbed_wire_edges.png", + "homedecor_gate_barbed_wire_fb.png^[transformFX", + "homedecor_gate_barbed_wire_fb.png" + } + end + + if gate == "picket" or gate == "picket_white" then + tiles = { + "homedecor_blanktile.png", + "homedecor_blanktile.png", + "homedecor_blanktile.png", + "homedecor_blanktile.png", + "homedecor_gate_"..gate.."_back.png", + "homedecor_gate_"..gate.."_front.png" + } + end + + local def = { + drawtype = "nodebox", + description = gatedesc, + tiles = tiles, + paramtype = "light", + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + paramtype2 = "facedir", + selection_box = { + type = "fixed", + fixed = { -0.5, -0.5, 0.4, 0.5, 0.5, 0.5 } + }, + node_box = { + type = "fixed", + fixed = gate_models_closed[i] + }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + homedecor.flip_gate(pos, node, clicker, gate, "closed") + return itemstack + end, + } + + if mesecons_mp then + def.mesecons = { + effector = { + rules = mesecon.rules.pplate, + action_on = function(pos,node) homedecor.flip_gate(pos,node,nil,gate, "closed") end + } + } + end + + -- gates when placed default to closed, closed. + + minetest.register_node(":homedecor:gate_"..gate.."_closed", def) + + -- this is either a terrible idea or a great one + def = table.copy(def) + def.groups.not_in_creative_inventory = 1 + def.selection_box.fixed = { 0.4, -0.5, -0.5, 0.5, 0.5, 0.5 } + def.node_box.fixed = gate_models_open[i] + def.tiles = { + tiles[1].."^[transformR90", + tiles[2].."^[transformR270", + tiles[6], + tiles[5], + tiles[4], + tiles[3] + } + def.drop = "homedecor:gate_"..gate.."_closed" + def.on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + homedecor.flip_gate(pos, node, clicker, gate, "open") + return itemstack + end + + if mesecons_mp then + def.mesecons.effector = { + rules = mesecon.rules.pplate, + action_off = function(pos,node) homedecor.flip_gate(pos,node,nil,gate, "open") end + } + end + + minetest.register_node(":homedecor:gate_"..gate.."_open", def) +end + +minetest.register_alias("homedecor:fence_barbed_wire_gate_open", "homedecor:gate_barbed_wire_open") +minetest.register_alias("homedecor:fence_barbed_wire_gate_closed", "homedecor:gate_barbed_wire_closed") +minetest.register_alias("homedecor:fence_chainlink_gate_open", "homedecor:gate_chainlink_open") +minetest.register_alias("homedecor:fence_chainlink_gate_closed", "homedecor:gate_chainlink_closed") +minetest.register_alias("homedecor:fence_picket_gate_open", "homedecor:gate_picket_open") +minetest.register_alias("homedecor:fence_picket_gate_closed", "homedecor:gate_picket_closed") +minetest.register_alias("homedecor:fence_picket_gate_white_open", "homedecor:gate_picket_white_open") +minetest.register_alias("homedecor:fence_picket_gate_white_closed", "homedecor:gate_picket_white_closed") + +function homedecor.flip_gate(pos, node, player, gate, oc) + + + local fdir = node.param2 or 0 + + local gateresult + if oc == "closed" then + gateresult = "homedecor:gate_"..gate.."_open" + else + gateresult = "homedecor:gate_"..gate.."_closed" + end + + minetest.set_node(pos, {name = gateresult, param2 = fdir}) + minetest.sound_play("homedecor_gate_open_close", { + pos=pos, + max_hear_distance = 5, + gain = 2, + }) + + -- the following opens and closes gates below and above in sync with this one + + local above = {x=pos.x, y=pos.y+1, z=pos.z} + local below = {x=pos.x, y=pos.y-1, z=pos.z} + local nodeabove = minetest.get_node(above) + local nodebelow = minetest.get_node(below) + + if string.find(nodeabove.name, "homedecor:gate_"..gate) then + minetest.set_node(above, {name = gateresult, param2 = fdir}) + end + + if string.find(nodebelow.name, "homedecor:gate_"..gate) then + minetest.set_node(below, {name = gateresult, param2 = fdir}) + end +end + +-- Japanese-style wood/paper door +homedecor.register("door_japanese_closed", { + description = S("Japanese-style door"), + inventory_image = "homedecor_door_japanese_inv.png", + tiles = { + homedecor.lux_wood, + "homedecor_japanese_paper.png" + }, + mesh = "homedecor_door_japanese_closed.obj", + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, 0, 0.5, 1.5, 0.0625}, + }, + collision_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.0625, 0.5, 1.5, 0}, + }, + expand = { top = "placeholder" }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, {name = "homedecor:door_japanese_open", param2 = node.param2}) + return itemstack + end +}) + +homedecor.register("door_japanese_open", { + tiles = { + homedecor.lux_wood, + "homedecor_japanese_paper.png" + }, + mesh = "homedecor_door_japanese_open.obj", + groups = { snappy = 3, not_in_creative_inventory = 1 }, + sounds = default.node_sound_wood_defaults(), + on_rotate = screwdriver.disallow, + selection_box = { + type = "fixed", + fixed = {-1.5, -0.5, -0.0625, 0.5, 1.5, 0}, + }, + collision_box = { + type = "fixed", + fixed = {-1.5, -0.5, -0.0625, -0.5, 1.5, 0}, + }, + expand = { top = "placeholder" }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, {name = "homedecor:door_japanese_closed", param2 = node.param2}) + return itemstack + end, + drop = "homedecor:door_japanese_closed", +}) + +-- crafting + +-- half-doors + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_half_door_closed 4", + recipe = { + "doors:homedecor_wood_plain_a", + "doors:homedecor_wood_plain_a" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_half_door_white_closed 4", + recipe = { + "doors:homedecor_bedroom_a", + "doors:homedecor_bedroom_a" + }, +}) + +-- Gates + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_picket_white_closed", + recipe = { + "homedecor:fence_picket_white" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket_white", + recipe = { + "homedecor:gate_picket_white_closed" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_picket_closed", + recipe = { + "homedecor:fence_picket" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket", + recipe = { + "homedecor:gate_picket_closed" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_barbed_wire_closed", + recipe = { + "homedecor:fence_barbed_wire" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_barbed_wire", + recipe = { + "homedecor:gate_barbed_wire_closed" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:gate_chainlink_closed", + recipe = { + "homedecor:fence_chainlink" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_chainlink", + recipe = { + "homedecor:gate_chainlink_closed" + }, +}) + +------ Doors + +-- plain wood, non-windowed + +minetest.register_craft( { + output = "doors:homedecor_wood_plain 2", + recipe = { + { "group:wood", "group:wood", "" }, + { "group:wood", "group:wood", "default:steel_ingot" }, + { "group:wood", "group:wood", "" }, + }, +}) + +-- fancy exterior + +minetest.register_craft( { + output = "doors:homedecor_exterior_fancy 2", + recipe = { + { "group:wood", "default:glass" }, + { "group:wood", "group:wood" }, + { "group:wood", "group:wood" }, + }, +}) + +-- French style wood/glass + +minetest.register_craft( { + output = "doors:homedecor_french_oak 2", + recipe = { + { "default:glass", "group:wood" }, + { "group:wood", "default:glass" }, + { "default:glass", "group:wood" }, + }, +}) + +minetest.register_craft( { + output = "doors:homedecor_french_oak 2", + recipe = { + { "group:wood", "default:glass" }, + { "default:glass", "group:wood" }, + { "group:wood", "default:glass" }, + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "doors:homedecor_french_mahogany 2", + recipe = { + "dye:brown", + "doors:homedecor_french_oak", + "doors:homedecor_french_oak" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "doors:homedecor_french_white 2", + recipe = { + "dye:white", + "doors:homedecor_french_oak", + "doors:homedecor_french_oak" + }, +}) + +-- Closet doors + +-- oak + +minetest.register_craft( { + output = "doors:homedecor_closet_oak 2", + recipe = { + { "", "group:stick", "group:stick" }, + { "default:steel_ingot", "group:stick", "group:stick" }, + { "", "group:stick", "group:stick" }, + }, +}) + +-- mahogany + +minetest.register_craft( { + type = "shapeless", + output = "doors:homedecor_closet_mahogany 2", + recipe = { + "doors:homedecor_closet_oak", + "doors:homedecor_closet_oak", + "dye:brown" + }, +}) + +-- wrought iron fence-like door + +minetest.register_craft( { + output = "doors:homedecor_wrought_iron 2", + recipe = { + { "homedecor:pole_wrought_iron", "default:iron_lump" }, + { "homedecor:pole_wrought_iron", "default:iron_lump" }, + { "homedecor:pole_wrought_iron", "default:iron_lump" } + }, +}) + +-- bedroom/panel door + +minetest.register_craft( { + output = "doors:homedecor_basic_panel", + recipe = { + { "dye:white", "dye:white", "" }, + { "doors:homedecor_wood_plain", "basic_materials:brass_ingot", "" }, + { "", "", "" }, + }, +}) + +-- basic wood/glass single-lite door + +minetest.register_craft( { + output = "doors:homedecor_woodglass", + recipe = { + { "group:wood", "default:glass", "" }, + { "group:wood", "default:glass", "basic_materials:brass_ingot" }, + { "group:wood", "group:wood", "" }, + }, +}) + +-- "Carolina" door + +minetest.register_craft( { + output = "doors:homedecor_carolina", + recipe = { + { "default:glass", "default:glass", "" }, + { "group:wood", "group:wood", "default:iron_lump" }, + { "group:wood", "group:wood", "" }, + }, +}) + + +minetest.register_craft({ + output = "homedecor:door_japanese_closed", + recipe = { + { "homedecor:japanese_wall_top" }, + { "homedecor:japanese_wall_bottom" } + }, +}) + +-- aliases + +minetest.register_alias("homedecor:jpn_door_top", "air") +minetest.register_alias("homedecor:jpn_door_top_open", "air") + +minetest.register_alias("homedecor:jpn_door_bottom", "homedecor:door_japanese_closed") +minetest.register_alias("homedecor:jpn_door_bottom_open", "homedecor:door_japanese_open") + +minetest.register_alias("homedecor:door_glass_right", "doors:door_glass_b") +minetest.register_alias("homedecor:door_glass_left", "doors:door_glass_a") + +minetest.register_alias("doors:wood_glass_oak_a", "doors:homedecor_french_oak_a") +minetest.register_alias("doors:wood_glass_oak_b", "doors:homedecor_french_oak_b") + +minetest.register_alias("doors:wood_glass_white_a", "doors:homedecor_french_white_a") +minetest.register_alias("doors:wood_glass_white_b", "doors:homedecor_french_white_b") + +minetest.register_alias("doors:wood_glass_mahogany_a", "doors:homedecor_french_mahogany_a") +minetest.register_alias("doors:wood_glass_mahogany_b", "doors:homedecor_french_mahogany_b") + +minetest.register_alias("doors:homedecor_wood_glass_oak_a", "doors:homedecor_french_oak_a") +minetest.register_alias("doors:homedecor_wood_glass_oak_b", "doors:homedecor_french_oak_b") + +minetest.register_alias("doors:homedecor_wood_glass_white_a", "doors:homedecor_french_white_a") +minetest.register_alias("doors:homedecor_wood_glass_white_b", "doors:homedecor_french_white_b") + +minetest.register_alias("doors:homedecor_wood_glass_mahogany_a", "doors:homedecor_french_mahogany_a") +minetest.register_alias("doors:homedecor_wood_glass_mahogany_b", "doors:homedecor_french_mahogany_b") + +minetest.register_alias("doors:homedecor_woodglass2_a", "doors:homedecor_carolina_a") +minetest.register_alias("doors:homedecor_woodglass2_b", "doors:homedecor_carolina_b") + +minetest.register_alias("doors:woodglass2_a", "doors:homedecor_carolina_a") +minetest.register_alias("doors:woodglass2_b", "doors:homedecor_carolina_b") + +minetest.register_alias("doors:homedecor_bedroom_a", "doors:homedecor_basic_panel_a") +minetest.register_alias("doors:homedecor_bedroom_b", "doors:homedecor_basic_panel_b") + +minetest.register_alias("doors:bedroom_a", "doors:homedecor_basic_panel_a") +minetest.register_alias("doors:bedroom_b", "doors:homedecor_basic_panel_b") + +-- flip old homedecor doors around, since they use minetest_game doors API now + +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_oak_left" +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_oak_right" + +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_white_left" +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_white_right" + +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_mahogany_left" +old_doors[#old_doors + 1] = "homedecor:door_wood_glass_mahogany_right" + +old_doors[#old_doors + 1] = "homedecor:door_woodglass2_left" +old_doors[#old_doors + 1] = "homedecor:door_woodglass2_right" + +old_doors[#old_doors + 1] = "homedecor:door_bedroom_left" +old_doors[#old_doors + 1] = "homedecor:door_bedroom_right" + +minetest.register_lbm({ + name = ":homedecor:convert_doors_3", + label = "Convert Homedecor doors to mtg doors API", + nodenames = old_doors, + run_at_every_load = false, + action = function(pos, node) + -- old doors param2: N=0, E=1, S=2, W=3 + local newparam2 = (node.param2 + 2) % 4 + local e = string.find(node.name, "_", -7) + local dir = string.sub(node.name, e+1) + local newname = "doors:homedecor_"..string.sub(node.name, 16, e-1) + if dir == "right" then + print("Want to replace "..node.name.." with "..newname.."_a") + minetest.set_node(pos, {name = newname.."_a", param2 = newparam2 }) + else + print("Want to replace "..node.name.." with "..newname.."_b") + minetest.set_node(pos, {name = newname.."_b", param2 = newparam2 }) + end + minetest.set_node({x=pos.x, y=pos.y+1, z=pos.z}, {name = "doors:hidden"}) + end +}) diff --git a/homedecor/models/homedecor_door_japanese_closed.obj b/homedecor_doors_and_gates/models/homedecor_door_japanese_closed.obj similarity index 100% rename from homedecor/models/homedecor_door_japanese_closed.obj rename to homedecor_doors_and_gates/models/homedecor_door_japanese_closed.obj diff --git a/homedecor/models/homedecor_door_japanese_open.obj b/homedecor_doors_and_gates/models/homedecor_door_japanese_open.obj similarity index 100% rename from homedecor/models/homedecor_door_japanese_open.obj rename to homedecor_doors_and_gates/models/homedecor_door_japanese_open.obj diff --git a/homedecor/models/homedecor_wall_japanese_bottom.obj b/homedecor_doors_and_gates/models/homedecor_wall_japanese_bottom.obj similarity index 100% rename from homedecor/models/homedecor_wall_japanese_bottom.obj rename to homedecor_doors_and_gates/models/homedecor_wall_japanese_bottom.obj diff --git a/homedecor/models/homedecor_wall_japanese_middle.obj b/homedecor_doors_and_gates/models/homedecor_wall_japanese_middle.obj similarity index 100% rename from homedecor/models/homedecor_wall_japanese_middle.obj rename to homedecor_doors_and_gates/models/homedecor_wall_japanese_middle.obj diff --git a/homedecor/models/homedecor_wall_japanese_top.obj b/homedecor_doors_and_gates/models/homedecor_wall_japanese_top.obj similarity index 100% rename from homedecor/models/homedecor_wall_japanese_top.obj rename to homedecor_doors_and_gates/models/homedecor_wall_japanese_top.obj diff --git a/homedecor/sounds/homedecor_book_close.ogg b/homedecor_doors_and_gates/sounds/homedecor_book_close.ogg similarity index 100% rename from homedecor/sounds/homedecor_book_close.ogg rename to homedecor_doors_and_gates/sounds/homedecor_book_close.ogg diff --git a/homedecor/sounds/homedecor_door_close.ogg b/homedecor_doors_and_gates/sounds/homedecor_door_close.ogg similarity index 100% rename from homedecor/sounds/homedecor_door_close.ogg rename to homedecor_doors_and_gates/sounds/homedecor_door_close.ogg diff --git a/homedecor/sounds/homedecor_door_open.ogg b/homedecor_doors_and_gates/sounds/homedecor_door_open.ogg similarity index 100% rename from homedecor/sounds/homedecor_door_open.ogg rename to homedecor_doors_and_gates/sounds/homedecor_door_open.ogg diff --git a/homedecor/sounds/homedecor_gate_open_close.ogg b/homedecor_doors_and_gates/sounds/homedecor_gate_open_close.ogg similarity index 100% rename from homedecor/sounds/homedecor_gate_open_close.ogg rename to homedecor_doors_and_gates/sounds/homedecor_gate_open_close.ogg diff --git a/homedecor_doors_and_gates/textures/homedecor_door_basic_panel.png b/homedecor_doors_and_gates/textures/homedecor_door_basic_panel.png new file mode 100644 index 0000000..a63ccc0 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_basic_panel.png differ diff --git a/homedecor/textures/homedecor_door_bedroom_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_basic_panel_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_bedroom_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_basic_panel_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_carolina.png b/homedecor_doors_and_gates/textures/homedecor_door_carolina.png new file mode 100644 index 0000000..d5081e2 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_carolina.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_carolina_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_carolina_inv.png new file mode 100644 index 0000000..2fdd342 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_carolina_inv.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_closet_mahogany.png b/homedecor_doors_and_gates/textures/homedecor_door_closet_mahogany.png new file mode 100644 index 0000000..b5cc750 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_closet_mahogany.png differ diff --git a/homedecor/textures/homedecor_door_closet_mahogany_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_closet_mahogany_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_closet_mahogany_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_closet_mahogany_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_closet_oak.png b/homedecor_doors_and_gates/textures/homedecor_door_closet_oak.png new file mode 100644 index 0000000..5ada708 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_closet_oak.png differ diff --git a/homedecor/textures/homedecor_door_closet_oak_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_closet_oak_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_closet_oak_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_closet_oak_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy.png b/homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy.png new file mode 100644 index 0000000..2951afd Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy.png differ diff --git a/homedecor/textures/homedecor_door_exterior_fancy_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy_inv.png similarity index 92% rename from homedecor/textures/homedecor_door_exterior_fancy_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy_inv.png index a7ec3f3..9a9c64e 100755 Binary files a/homedecor/textures/homedecor_door_exterior_fancy_inv.png and b/homedecor_doors_and_gates/textures/homedecor_door_exterior_fancy_inv.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_french_mahogany.png b/homedecor_doors_and_gates/textures/homedecor_door_french_mahogany.png new file mode 100644 index 0000000..d44f859 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_french_mahogany.png differ diff --git a/homedecor/textures/homedecor_door_wood_glass_mahogany_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_french_mahogany_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_wood_glass_mahogany_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_french_mahogany_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_french_oak.png b/homedecor_doors_and_gates/textures/homedecor_door_french_oak.png new file mode 100644 index 0000000..5e3e786 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_french_oak.png differ diff --git a/homedecor/textures/homedecor_door_wood_glass_oak_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_french_oak_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_wood_glass_oak_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_french_oak_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_french_white.png b/homedecor_doors_and_gates/textures/homedecor_door_french_white.png new file mode 100644 index 0000000..4c4ad11 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_french_white.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_french_white_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_french_white_inv.png new file mode 100644 index 0000000..7153a83 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_french_white_inv.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_glass.png b/homedecor_doors_and_gates/textures/homedecor_door_glass.png new file mode 100644 index 0000000..1920a0e Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_glass.png differ diff --git a/homedecor/textures/homedecor_door_glass_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_glass_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_glass_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_glass_inv.png diff --git a/homedecor/textures/homedecor_door_japanese_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_japanese_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_japanese_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_japanese_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_wood_plain.png b/homedecor_doors_and_gates/textures/homedecor_door_wood_plain.png new file mode 100644 index 0000000..9e7dcc7 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_wood_plain.png differ diff --git a/homedecor/textures/homedecor_door_wood_plain_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_wood_plain_inv.png similarity index 64% rename from homedecor/textures/homedecor_door_wood_plain_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_wood_plain_inv.png index 0e9e7a0..8d398ff 100755 Binary files a/homedecor/textures/homedecor_door_wood_plain_inv.png and b/homedecor_doors_and_gates/textures/homedecor_door_wood_plain_inv.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_door_woodglass.png b/homedecor_doors_and_gates/textures/homedecor_door_woodglass.png new file mode 100644 index 0000000..fd399c3 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_woodglass.png differ diff --git a/homedecor/textures/homedecor_door_woodglass_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_woodglass_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_woodglass_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_woodglass_inv.png diff --git a/homedecor_doors_and_gates/textures/homedecor_door_wrought_iron.png b/homedecor_doors_and_gates/textures/homedecor_door_wrought_iron.png new file mode 100644 index 0000000..191cc26 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_door_wrought_iron.png differ diff --git a/homedecor/textures/homedecor_door_wrought_iron_inv.png b/homedecor_doors_and_gates/textures/homedecor_door_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/homedecor_door_wrought_iron_inv.png rename to homedecor_doors_and_gates/textures/homedecor_door_wrought_iron_inv.png diff --git a/homedecor/textures/homedecor_gate_barbed_wire_edges.png b/homedecor_doors_and_gates/textures/homedecor_gate_barbed_wire_edges.png similarity index 100% rename from homedecor/textures/homedecor_gate_barbed_wire_edges.png rename to homedecor_doors_and_gates/textures/homedecor_gate_barbed_wire_edges.png diff --git a/homedecor/textures/homedecor_gate_barbed_wire_fb.png b/homedecor_doors_and_gates/textures/homedecor_gate_barbed_wire_fb.png similarity index 100% rename from homedecor/textures/homedecor_gate_barbed_wire_fb.png rename to homedecor_doors_and_gates/textures/homedecor_gate_barbed_wire_fb.png diff --git a/homedecor/textures/homedecor_gate_chainlink_fb.png b/homedecor_doors_and_gates/textures/homedecor_gate_chainlink_fb.png similarity index 100% rename from homedecor/textures/homedecor_gate_chainlink_fb.png rename to homedecor_doors_and_gates/textures/homedecor_gate_chainlink_fb.png diff --git a/homedecor/textures/homedecor_gate_chainlink_lr.png b/homedecor_doors_and_gates/textures/homedecor_gate_chainlink_lr.png similarity index 100% rename from homedecor/textures/homedecor_gate_chainlink_lr.png rename to homedecor_doors_and_gates/textures/homedecor_gate_chainlink_lr.png diff --git a/homedecor/textures/homedecor_gate_chainlink_tb.png b/homedecor_doors_and_gates/textures/homedecor_gate_chainlink_tb.png similarity index 100% rename from homedecor/textures/homedecor_gate_chainlink_tb.png rename to homedecor_doors_and_gates/textures/homedecor_gate_chainlink_tb.png diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_fb.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_fb.png new file mode 100644 index 0000000..15f4db3 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_fb.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_lr.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_lr.png new file mode 100644 index 0000000..bc95dc5 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_lr.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_tb.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_tb.png new file mode 100644 index 0000000..64556a1 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_tb.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_fb.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_fb.png new file mode 100644 index 0000000..86a00f2 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_fb.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_lr.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_lr.png new file mode 100644 index 0000000..e1bbbb4 Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_lr.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_tb.png b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_tb.png new file mode 100644 index 0000000..7bc05ed Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_half_door_white_tb.png differ diff --git a/homedecor/textures/homedecor_gate_picket_back.png b/homedecor_doors_and_gates/textures/homedecor_gate_picket_back.png similarity index 100% rename from homedecor/textures/homedecor_gate_picket_back.png rename to homedecor_doors_and_gates/textures/homedecor_gate_picket_back.png diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_picket_front.png b/homedecor_doors_and_gates/textures/homedecor_gate_picket_front.png new file mode 100644 index 0000000..b21cd8b Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_picket_front.png differ diff --git a/homedecor/textures/homedecor_gate_picket_white_back.png b/homedecor_doors_and_gates/textures/homedecor_gate_picket_white_back.png similarity index 60% rename from homedecor/textures/homedecor_gate_picket_white_back.png rename to homedecor_doors_and_gates/textures/homedecor_gate_picket_white_back.png index bb608de..0663496 100755 Binary files a/homedecor/textures/homedecor_gate_picket_white_back.png and b/homedecor_doors_and_gates/textures/homedecor_gate_picket_white_back.png differ diff --git a/homedecor_doors_and_gates/textures/homedecor_gate_picket_white_front.png b/homedecor_doors_and_gates/textures/homedecor_gate_picket_white_front.png new file mode 100644 index 0000000..a900bbf Binary files /dev/null and b/homedecor_doors_and_gates/textures/homedecor_gate_picket_white_front.png differ diff --git a/homedecor/textures/homedecor_japanese_paper.png b/homedecor_doors_and_gates/textures/homedecor_japanese_paper.png similarity index 76% rename from homedecor/textures/homedecor_japanese_paper.png rename to homedecor_doors_and_gates/textures/homedecor_japanese_paper.png index b4a09d1..f1fcaa8 100755 Binary files a/homedecor/textures/homedecor_japanese_paper.png and b/homedecor_doors_and_gates/textures/homedecor_japanese_paper.png differ diff --git a/homedecor/textures/homedecor_jpn_door_inv.png b/homedecor_doors_and_gates/textures/homedecor_jpn_door_inv.png similarity index 100% rename from homedecor/textures/homedecor_jpn_door_inv.png rename to homedecor_doors_and_gates/textures/homedecor_jpn_door_inv.png diff --git a/homedecor_electrical/depends.txt b/homedecor_electrical/depends.txt new file mode 100644 index 0000000..382015e --- /dev/null +++ b/homedecor_electrical/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +basic_materials +mesecons? +mesecons_receiver? diff --git a/homedecor_electrical/init.lua b/homedecor_electrical/init.lua new file mode 100644 index 0000000..cf4a447 --- /dev/null +++ b/homedecor_electrical/init.lua @@ -0,0 +1,166 @@ + +local S = homedecor.gettext + +function homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing) + if not clicker then return false end + local playername = clicker:get_player_name() + if minetest.is_protected(pos, playername) then + minetest.record_protection_violation(pos, playername) + return false + end + local sep = string.find(node.name, "_o", -5) + local onoff = string.sub(node.name, sep + 1) + local newname = string.sub(node.name, 1, sep - 1)..((onoff == "off") and "_on" or "_off") + minetest.swap_node(pos, {name = newname, param2 = node.param2}) + return true +end + +local on_rc +if minetest.get_modpath("mesecons") then + on_rc = function(pos, node, clicker, itemstack, pointed_thing) + local t = homedecor.toggle_switch(pos, node, clicker, itemstack, pointed_thing) + if not t then return end + if string.find(node.name, "_on", -5) then + mesecon.receptor_off(pos, mesecon.rules.buttonlike_get(node)) + else + mesecon.receptor_on(pos, mesecon.rules.buttonlike_get(node)) + end + end +end + +homedecor.register("power_outlet", { + description = S("Power Outlet"), + tiles = { + "homedecor_outlet_edges.png", + "homedecor_outlet_edges.png", + "homedecor_outlet_edges.png", + "homedecor_outlet_edges.png", + "homedecor_outlet_back.png", + "homedecor_outlet_edges.png" + }, + inventory_image = "homedecor_outlet_inv.png", + node_box = { + type = "fixed", + fixed = { + { -0.125, -0.3125, 0.4375, 0.125, 0, 0.5}, + } + }, + selection_box = { + type = "fixed", + fixed = { + { -0.1875, -0.375, 0.375, 0.1875, 0.0625, 0.5}, + } + }, + groups = {cracky=3,dig_immediate=2}, + walkable = false +}) + +for _, onoff in ipairs ({"on", "off"}) do + + local switch_receptor + if minetest.get_modpath("mesecons") then + switch_receptor = { + receptor = { + state = mesecon.state[onoff], + rules = mesecon.rules.buttonlike_get + } + } + end + + local model = { + { -0.125, -0.1875, 0.4375, 0.125, 0.125, 0.5 }, + { -0.03125, 0, 0.40625, 0.03125, 0.0625, 0.5 }, + } + + if onoff == "on" then + model = { + { -0.125, -0.1875, 0.4375, 0.125, 0.125, 0.5 }, + { -0.03125, -0.125, 0.40625, 0.03125, -0.0625, 0.5 }, + } + end + + homedecor.register("light_switch_"..onoff, { + description = S("Light switch"), + tiles = { + "homedecor_light_switch_edges.png", + "homedecor_light_switch_edges.png", + "homedecor_light_switch_edges.png", + "homedecor_light_switch_edges.png", + "homedecor_light_switch_back.png", + "homedecor_light_switch_front_"..onoff..".png" + }, + inventory_image = "homedecor_light_switch_inv.png", + node_box = { + type = "fixed", + fixed = model + }, + selection_box = { + type = "fixed", + fixed = { + { -0.1875, -0.25, 0.375, 0.1875, 0.1875, 0.5 }, + } + }, + groups = {cracky=3, dig_immediate=2, mesecon_needs_receiver=1, not_in_creative_inventory = (onoff == "on") and 1 or nil}, + walkable = false, + drop = { + items = { + {items = {"homedecor:light_switch_off"}, inherit_color = true }, + } + }, + mesecons = switch_receptor, + on_rightclick = on_rc + }) +end + +homedecor.register("doorbell", { + tiles = { "homedecor_doorbell.png" }, + inventory_image = "homedecor_doorbell_inv.png", + description = S("Doorbell"), + groups = {snappy=3}, + walkable = false, + node_box = { + type = "fixed", + fixed = { + {-0.0625, 0, 0.46875, 0.0625, 0.1875, 0.5}, -- NodeBox1 + {-0.03125, 0.0625, 0.45, 0.03125, 0.125, 0.4675}, -- NodeBox2 + } + }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.sound_play("homedecor_doorbell", { + pos = pos, + gain = 1.0, + max_hear_distance = 15 + }) + end +}) + +-- crafting + +minetest.register_craft( { + output = "homedecor:power_outlet", + recipe = { + {"basic_materials:plastic_sheet", "basic_materials:copper_strip"}, + {"basic_materials:plastic_sheet", ""}, + {"basic_materials:plastic_sheet", "basic_materials:copper_strip"} + }, +}) + +minetest.register_craft( { + output = "homedecor:light_switch_off", + recipe = { + {"", "basic_materials:plastic_sheet", "basic_materials:copper_strip"}, + {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:copper_strip"}, + {"", "basic_materials:plastic_sheet", "basic_materials:copper_strip"} + }, +}) + +minetest.register_craft( { + output = "homedecor:doorbell", + recipe = { + { "homedecor:light_switch", "basic_materials:energy_crystal_simple", "homedecor:speaker_driver" } + }, +}) + +-- aliases + +minetest.register_alias("homedecor:light_switch", "homedecor:light_switch_on") diff --git a/homedecor/sounds/homedecor_doorbell.ogg b/homedecor_electrical/sounds/homedecor_doorbell.ogg similarity index 100% rename from homedecor/sounds/homedecor_doorbell.ogg rename to homedecor_electrical/sounds/homedecor_doorbell.ogg diff --git a/homedecor/textures/homedecor_doorbell.png b/homedecor_electrical/textures/homedecor_doorbell.png similarity index 100% rename from homedecor/textures/homedecor_doorbell.png rename to homedecor_electrical/textures/homedecor_doorbell.png diff --git a/homedecor/textures/homedecor_doorbell_inv.png b/homedecor_electrical/textures/homedecor_doorbell_inv.png similarity index 100% rename from homedecor/textures/homedecor_doorbell_inv.png rename to homedecor_electrical/textures/homedecor_doorbell_inv.png diff --git a/homedecor_electrical/textures/homedecor_light_switch_back.png b/homedecor_electrical/textures/homedecor_light_switch_back.png new file mode 100644 index 0000000..f3357d1 Binary files /dev/null and b/homedecor_electrical/textures/homedecor_light_switch_back.png differ diff --git a/homedecor_electrical/textures/homedecor_light_switch_edges.png b/homedecor_electrical/textures/homedecor_light_switch_edges.png new file mode 100644 index 0000000..db6d618 Binary files /dev/null and b/homedecor_electrical/textures/homedecor_light_switch_edges.png differ diff --git a/homedecor_electrical/textures/homedecor_light_switch_front_off.png b/homedecor_electrical/textures/homedecor_light_switch_front_off.png new file mode 100644 index 0000000..eecc8b3 Binary files /dev/null and b/homedecor_electrical/textures/homedecor_light_switch_front_off.png differ diff --git a/homedecor_electrical/textures/homedecor_light_switch_front_on.png b/homedecor_electrical/textures/homedecor_light_switch_front_on.png new file mode 100644 index 0000000..1b6c3f6 Binary files /dev/null and b/homedecor_electrical/textures/homedecor_light_switch_front_on.png differ diff --git a/homedecor/textures/homedecor_light_switch_inv.png b/homedecor_electrical/textures/homedecor_light_switch_inv.png similarity index 100% rename from homedecor/textures/homedecor_light_switch_inv.png rename to homedecor_electrical/textures/homedecor_light_switch_inv.png diff --git a/homedecor/textures/homedecor_outlet_back.png b/homedecor_electrical/textures/homedecor_outlet_back.png similarity index 100% rename from homedecor/textures/homedecor_outlet_back.png rename to homedecor_electrical/textures/homedecor_outlet_back.png diff --git a/homedecor/textures/homedecor_outlet_edges.png b/homedecor_electrical/textures/homedecor_outlet_edges.png similarity index 100% rename from homedecor/textures/homedecor_outlet_edges.png rename to homedecor_electrical/textures/homedecor_outlet_edges.png diff --git a/homedecor/textures/homedecor_outlet_inv.png b/homedecor_electrical/textures/homedecor_outlet_inv.png similarity index 100% rename from homedecor/textures/homedecor_outlet_inv.png rename to homedecor_electrical/textures/homedecor_outlet_inv.png diff --git a/homedecor_electronics/depends.txt b/homedecor_electronics/depends.txt new file mode 100644 index 0000000..6879386 --- /dev/null +++ b/homedecor_electronics/depends.txt @@ -0,0 +1,4 @@ +homedecor_common +default +basic_materials +moreblocks? diff --git a/homedecor_electronics/init.lua b/homedecor_electronics/init.lua new file mode 100644 index 0000000..004a639 --- /dev/null +++ b/homedecor_electronics/init.lua @@ -0,0 +1,301 @@ +-- Various home electronics + +local S = homedecor.gettext + +homedecor.register("speaker", { + description = S("Large Stereo Speaker"), + mesh="homedecor_speaker_large.obj", + tiles = { + "homedecor_speaker_sides.png", + "homedecor_speaker_front.png" + }, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, {name = "homedecor:speaker_open", param2 = node.param2}) + end +}) + +homedecor.register("speaker_open", { + description = S("Large Stereo Speaker, open front"), + mesh="homedecor_speaker_large_open.obj", + tiles = { + "homedecor_speaker_sides.png", + "homedecor_speaker_driver.png", + "homedecor_speaker_open_front.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_black } + }, + groups = { snappy = 3, not_in_creative_inventory=1 }, + sounds = default.node_sound_wood_defaults(), + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, {name = "homedecor:speaker", param2 = node.param2}) + end +}) + +local spk_cbox = { + type = "fixed", + fixed = { -3/16, -8/16, 1/16, 3/16, -2/16, 7/16 } +} + +homedecor.register("speaker_small", { + description = S("Small Surround Speaker"), + mesh="homedecor_speaker_small.obj", + tiles = { + "homedecor_speaker_sides.png", + "homedecor_speaker_front.png" + }, + selection_box = spk_cbox, + walkable = false, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), +}) + +homedecor.register("stereo", { + description = S("Stereo Receiver"), + tiles = { 'homedecor_stereo_top.png', + 'homedecor_stereo_bottom.png', + 'homedecor_stereo_left.png^[transformFX', + 'homedecor_stereo_left.png', + 'homedecor_stereo_back.png', + 'homedecor_stereo_front.png'}, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), +}) + +homedecor.register("projection_screen", { + description = S("Projection Screen Material"), + drawtype = 'signlike', + tiles = { 'homedecor_projection_screen.png' }, + wield_image = 'homedecor_projection_screen_inv.png', + inventory_image = 'homedecor_projection_screen_inv.png', + walkable = false, + groups = { snappy = 3 }, + sounds = default.node_sound_leaves_defaults(), + paramtype2 = 'wallmounted', + selection_box = { + type = "wallmounted", + --wall_side = = + }, +}) + +homedecor.register("television", { + description = S("Small CRT Television"), + tiles = { 'homedecor_television_top.png', + 'homedecor_television_bottom.png', + 'homedecor_television_left.png^[transformFX', + 'homedecor_television_left.png', + 'homedecor_television_back.png', + { name="homedecor_television_front_animated.png", + animation={ + type="vertical_frames", + aspect_w=16, + aspect_h=16, + length=80.0 + } + } + }, + light_source = default.LIGHT_MAX - 1, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), +}) + +homedecor.register("dvd_vcr", { + description = S("DVD and VCR"), + tiles = { + "homedecor_dvdvcr_top.png", + "homedecor_dvdvcr_bottom.png", + "homedecor_dvdvcr_sides.png", + "homedecor_dvdvcr_sides.png^[transformFX", + "homedecor_dvdvcr_back.png", + "homedecor_dvdvcr_front.png", + }, + inventory_image = "homedecor_dvdvcr_inv.png", + node_box = { + type = "fixed", + fixed = { + {-0.3125, -0.5, -0.25, 0.3125, -0.375, 0.1875}, + {-0.25, -0.5, -0.25, 0.25, -0.1875, 0.125}, + } + }, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), +}) + +local tel_cbox = { + type = "fixed", + fixed = { -0.25, -0.5, -0.1875, 0.25, -0.21, 0.15 } +} + +homedecor.register("telephone", { + mesh = "homedecor_telephone.obj", + tiles = { + "homedecor_telephone_dial.png", + "homedecor_telephone_base.png", + "homedecor_telephone_handset.png", + "homedecor_telephone_cord.png", + }, + inventory_image = "homedecor_telephone_inv.png", + description = S("Telephone"), + groups = {snappy=3}, + selection_box = tel_cbox, + walkable = false, + sounds = default.node_sound_wood_defaults(), +}) + +-- crafting + +minetest.register_craftitem(":homedecor:vcr", { + description = S("VCR"), + inventory_image = "homedecor_vcr.png" +}) + +minetest.register_craftitem(":homedecor:dvd_player", { + description = S("DVD Player"), + inventory_image = "homedecor_dvd_player.png" +}) + +minetest.register_craftitem(":homedecor:speaker_driver", { + description = S("Speaker driver"), + inventory_image = "homedecor_speaker_driver_inv.png" +}) + +minetest.register_craft( { + output = "homedecor:projection_screen 3", + recipe = { + { "", "default:glass", "" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:projection_screen", + burntime = 30, +}) + + +minetest.register_craft( { + output = "basic_materials:ic 4", + recipe = { + { "basic_materials:silicon", "basic_materials:silicon" }, + { "basic_materials:silicon", "default:copper_ingot" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:television", + recipe = { + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "moreblocks:glow_glass", "basic_materials:plastic_sheet" }, + { "basic_materials:ic", "basic_materials:ic", "basic_materials:ic" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:television", + recipe = { + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "default:glass", "basic_materials:plastic_sheet" }, + { "basic_materials:ic", "basic_materials:energy_crystal_simple", "basic_materials:ic" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:stereo", + recipe = { + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:ic", "basic_materials:plastic_sheet" }, + { "default:steel_ingot", "basic_materials:ic", "default:steel_ingot" }, + }, +}) + + +minetest.register_craft( { + output = "homedecor:speaker_driver 2", + recipe = { + { "", "default:steel_ingot", "" }, + { "default:paper", "basic_materials:copper_wire", "default:iron_lump" }, + { "", "default:steel_ingot", "" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:speaker_small", + recipe = { + { "wool:black", "homedecor:speaker_driver", "group:wood" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:speaker", + recipe = { + { "wool:black", "homedecor:speaker_driver", "group:wood" }, + { "wool:black", "homedecor:speaker_driver", "group:wood" }, + { "wool:black", "group:wood", "group:wood" }, + }, +}) + +-- cotton version + +minetest.register_craft( { + output = "homedecor:speaker_small", + recipe = { + { "cotton:black", "homedecor:speaker_driver", "group:wood" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:speaker", + recipe = { + { "cotton:black", "homedecor:speaker_driver", "group:wood" }, + { "cotton:black", "homedecor:speaker_driver", "group:wood" }, + { "cotton:black", "group:wood", "group:wood" }, + }, +}) + + +minetest.register_craft({ + output = "homedecor:vcr 2", + recipe = { + { "basic_materials:ic", "default:steel_ingot", "basic_materials:plastic_sheet" }, + { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, + { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:dvd_player 2", + recipe = { + { "", "basic_materials:plastic_sheet", "" }, + { "default:obsidian_glass", "basic_materials:motor", "basic_materials:motor" }, + { "default:mese_crystal_fragment", "basic_materials:ic", "basic_materials:energy_crystal_simple" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:dvd_player 2", + recipe = { + { "", "basic_materials:plastic_sheet", "" }, + { "default:obsidian_glass", "basic_materials:motor", "basic_materials:motor" }, + { "default:mese_crystal_fragment", "basic_materials:ic", "basic_materials:energy_crystal_simple" }, + }, +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:dvd_vcr", + recipe = { + "homedecor:vcr", + "homedecor:dvd_player" + }, +}) + +minetest.register_craft( { + output = "homedecor:telephone", + recipe = { + { "homedecor:speaker_driver", "basic_materials:copper_wire", "homedecor:speaker_driver" }, + { "basic_materials:plastic_sheet", "default:steel_ingot", "basic_materials:plastic_sheet" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" } + }, +}) diff --git a/homedecor/models/homedecor_speaker_large.obj b/homedecor_electronics/models/homedecor_speaker_large.obj similarity index 100% rename from homedecor/models/homedecor_speaker_large.obj rename to homedecor_electronics/models/homedecor_speaker_large.obj diff --git a/homedecor/models/homedecor_speaker_large_open.obj b/homedecor_electronics/models/homedecor_speaker_large_open.obj similarity index 100% rename from homedecor/models/homedecor_speaker_large_open.obj rename to homedecor_electronics/models/homedecor_speaker_large_open.obj diff --git a/homedecor/models/homedecor_speaker_small.obj b/homedecor_electronics/models/homedecor_speaker_small.obj similarity index 100% rename from homedecor/models/homedecor_speaker_small.obj rename to homedecor_electronics/models/homedecor_speaker_small.obj diff --git a/homedecor/models/homedecor_telephone.obj b/homedecor_electronics/models/homedecor_telephone.obj similarity index 100% rename from homedecor/models/homedecor_telephone.obj rename to homedecor_electronics/models/homedecor_telephone.obj diff --git a/homedecor/textures/homedecor_dvd_player.png b/homedecor_electronics/textures/homedecor_dvd_player.png similarity index 100% rename from homedecor/textures/homedecor_dvd_player.png rename to homedecor_electronics/textures/homedecor_dvd_player.png diff --git a/homedecor/textures/homedecor_dvdvcr_back.png b/homedecor_electronics/textures/homedecor_dvdvcr_back.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_back.png rename to homedecor_electronics/textures/homedecor_dvdvcr_back.png diff --git a/homedecor/textures/homedecor_dvdvcr_bottom.png b/homedecor_electronics/textures/homedecor_dvdvcr_bottom.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_bottom.png rename to homedecor_electronics/textures/homedecor_dvdvcr_bottom.png diff --git a/homedecor/textures/homedecor_dvdvcr_front.png b/homedecor_electronics/textures/homedecor_dvdvcr_front.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_front.png rename to homedecor_electronics/textures/homedecor_dvdvcr_front.png diff --git a/homedecor/textures/homedecor_dvdvcr_inv.png b/homedecor_electronics/textures/homedecor_dvdvcr_inv.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_inv.png rename to homedecor_electronics/textures/homedecor_dvdvcr_inv.png diff --git a/homedecor/textures/homedecor_dvdvcr_sides.png b/homedecor_electronics/textures/homedecor_dvdvcr_sides.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_sides.png rename to homedecor_electronics/textures/homedecor_dvdvcr_sides.png diff --git a/homedecor/textures/homedecor_dvdvcr_top.png b/homedecor_electronics/textures/homedecor_dvdvcr_top.png similarity index 100% rename from homedecor/textures/homedecor_dvdvcr_top.png rename to homedecor_electronics/textures/homedecor_dvdvcr_top.png diff --git a/homedecor/textures/homedecor_projection_screen.png b/homedecor_electronics/textures/homedecor_projection_screen.png similarity index 100% rename from homedecor/textures/homedecor_projection_screen.png rename to homedecor_electronics/textures/homedecor_projection_screen.png diff --git a/homedecor/textures/homedecor_projection_screen_inv.png b/homedecor_electronics/textures/homedecor_projection_screen_inv.png similarity index 100% rename from homedecor/textures/homedecor_projection_screen_inv.png rename to homedecor_electronics/textures/homedecor_projection_screen_inv.png diff --git a/homedecor/textures/homedecor_speaker_driver.png b/homedecor_electronics/textures/homedecor_speaker_driver.png similarity index 100% rename from homedecor/textures/homedecor_speaker_driver.png rename to homedecor_electronics/textures/homedecor_speaker_driver.png diff --git a/homedecor/textures/homedecor_speaker_driver_inv.png b/homedecor_electronics/textures/homedecor_speaker_driver_inv.png similarity index 100% rename from homedecor/textures/homedecor_speaker_driver_inv.png rename to homedecor_electronics/textures/homedecor_speaker_driver_inv.png diff --git a/homedecor/textures/homedecor_speaker_front.png b/homedecor_electronics/textures/homedecor_speaker_front.png similarity index 100% rename from homedecor/textures/homedecor_speaker_front.png rename to homedecor_electronics/textures/homedecor_speaker_front.png diff --git a/homedecor/textures/homedecor_speaker_open_front.png b/homedecor_electronics/textures/homedecor_speaker_open_front.png similarity index 100% rename from homedecor/textures/homedecor_speaker_open_front.png rename to homedecor_electronics/textures/homedecor_speaker_open_front.png diff --git a/homedecor/textures/homedecor_speaker_sides.png b/homedecor_electronics/textures/homedecor_speaker_sides.png similarity index 100% rename from homedecor/textures/homedecor_speaker_sides.png rename to homedecor_electronics/textures/homedecor_speaker_sides.png diff --git a/homedecor/textures/homedecor_stereo_back.png b/homedecor_electronics/textures/homedecor_stereo_back.png similarity index 100% rename from homedecor/textures/homedecor_stereo_back.png rename to homedecor_electronics/textures/homedecor_stereo_back.png diff --git a/homedecor/textures/homedecor_stereo_bottom.png b/homedecor_electronics/textures/homedecor_stereo_bottom.png similarity index 100% rename from homedecor/textures/homedecor_stereo_bottom.png rename to homedecor_electronics/textures/homedecor_stereo_bottom.png diff --git a/homedecor/textures/homedecor_stereo_front.png b/homedecor_electronics/textures/homedecor_stereo_front.png similarity index 100% rename from homedecor/textures/homedecor_stereo_front.png rename to homedecor_electronics/textures/homedecor_stereo_front.png diff --git a/homedecor/textures/homedecor_stereo_left.png b/homedecor_electronics/textures/homedecor_stereo_left.png similarity index 100% rename from homedecor/textures/homedecor_stereo_left.png rename to homedecor_electronics/textures/homedecor_stereo_left.png diff --git a/homedecor/textures/homedecor_stereo_top.png b/homedecor_electronics/textures/homedecor_stereo_top.png similarity index 100% rename from homedecor/textures/homedecor_stereo_top.png rename to homedecor_electronics/textures/homedecor_stereo_top.png diff --git a/homedecor/textures/homedecor_telephone_base.png b/homedecor_electronics/textures/homedecor_telephone_base.png similarity index 100% rename from homedecor/textures/homedecor_telephone_base.png rename to homedecor_electronics/textures/homedecor_telephone_base.png diff --git a/homedecor/textures/homedecor_telephone_cord.png b/homedecor_electronics/textures/homedecor_telephone_cord.png similarity index 100% rename from homedecor/textures/homedecor_telephone_cord.png rename to homedecor_electronics/textures/homedecor_telephone_cord.png diff --git a/homedecor/textures/homedecor_telephone_dial.png b/homedecor_electronics/textures/homedecor_telephone_dial.png similarity index 100% rename from homedecor/textures/homedecor_telephone_dial.png rename to homedecor_electronics/textures/homedecor_telephone_dial.png diff --git a/homedecor/textures/homedecor_telephone_handset.png b/homedecor_electronics/textures/homedecor_telephone_handset.png similarity index 100% rename from homedecor/textures/homedecor_telephone_handset.png rename to homedecor_electronics/textures/homedecor_telephone_handset.png diff --git a/homedecor/textures/homedecor_telephone_inv.png b/homedecor_electronics/textures/homedecor_telephone_inv.png similarity index 100% rename from homedecor/textures/homedecor_telephone_inv.png rename to homedecor_electronics/textures/homedecor_telephone_inv.png diff --git a/homedecor/textures/homedecor_television_back.png b/homedecor_electronics/textures/homedecor_television_back.png similarity index 100% rename from homedecor/textures/homedecor_television_back.png rename to homedecor_electronics/textures/homedecor_television_back.png diff --git a/homedecor/textures/homedecor_television_bottom.png b/homedecor_electronics/textures/homedecor_television_bottom.png similarity index 100% rename from homedecor/textures/homedecor_television_bottom.png rename to homedecor_electronics/textures/homedecor_television_bottom.png diff --git a/homedecor/textures/homedecor_television_front.png b/homedecor_electronics/textures/homedecor_television_front.png similarity index 100% rename from homedecor/textures/homedecor_television_front.png rename to homedecor_electronics/textures/homedecor_television_front.png diff --git a/homedecor/textures/homedecor_television_front_animated.png b/homedecor_electronics/textures/homedecor_television_front_animated.png similarity index 100% rename from homedecor/textures/homedecor_television_front_animated.png rename to homedecor_electronics/textures/homedecor_television_front_animated.png diff --git a/homedecor/textures/homedecor_television_left.png b/homedecor_electronics/textures/homedecor_television_left.png similarity index 100% rename from homedecor/textures/homedecor_television_left.png rename to homedecor_electronics/textures/homedecor_television_left.png diff --git a/homedecor/textures/homedecor_television_top.png b/homedecor_electronics/textures/homedecor_television_top.png similarity index 100% rename from homedecor/textures/homedecor_television_top.png rename to homedecor_electronics/textures/homedecor_television_top.png diff --git a/homedecor/textures/homedecor_vcr.png b/homedecor_electronics/textures/homedecor_vcr.png similarity index 100% rename from homedecor/textures/homedecor_vcr.png rename to homedecor_electronics/textures/homedecor_vcr.png diff --git a/homedecor_exterior/depends.txt b/homedecor_exterior/depends.txt new file mode 100644 index 0000000..3f99280 --- /dev/null +++ b/homedecor_exterior/depends.txt @@ -0,0 +1,8 @@ +homedecor_common +default +dye +creative +basic_materials +moreblocks? +building_blocks? +bucket? diff --git a/homedecor/exterior.lua b/homedecor_exterior/init.lua similarity index 65% rename from homedecor/exterior.lua rename to homedecor_exterior/init.lua index a4e0fda..961565a 100755 --- a/homedecor/exterior.lua +++ b/homedecor_exterior/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local function N_(x) return x end @@ -34,99 +34,6 @@ homedecor.register("barbecue", { minetest.register_alias("homedecor:barbecue_meat", "air") -local bl1_sbox = { - type = "fixed", - fixed = { -0.5, -0.5, -0.25, 1.5, 0.5, 0.5 } -} - -local bl1_cbox = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.25, 1.5, 0, 0.5 }, - {-0.5, -0.5, 0.45, 1.5, 0.5, 0.5 }, - } -} - -homedecor.register("bench_large_1", { - mesh = "homedecor_bench_large_1.obj", - tiles = { - "homedecor_generic_wood_old.png", - "homedecor_generic_metal_wrought_iron.png" - }, - description = S("Garden Bench (style 1)"), - inventory_image = "homedecor_bench_large_1_inv.png", - groups = { snappy = 3 }, - expand = { right="placeholder" }, - sounds = default.node_sound_wood_defaults(), - selection_box = bl1_sbox, - node_box = bl1_cbox, - on_rotate = screwdriver.disallow -}) - -minetest.register_alias("homedecor:bench_large_1_left", "homedecor:bench_large_1") -minetest.register_alias("homedecor:bench_large_1_right", "air") - -local bl2_sbox = { - type = "fixed", - fixed = { -0.5, -0.5, -0.25, 1.5, 0.5, 0.5 } -} - -local bl2_cbox = { - type = "fixed", - fixed = { - {-0.5, -0.5, -0.25, 1.5, 0, 0.5 }, - {-0.5, -0.5, 0.45, 1.5, 0.5, 0.5 }, - } -} - -homedecor.register("bench_large_2", { - description = S("Garden Bench (style 2)"), - mesh = "homedecor_bench_large_2.obj", - tiles = { "homedecor_generic_wood_old.png" }, - inventory_image = "homedecor_bench_large_2_inv.png", - groups = {snappy=3}, - selection_box = bl2_sbox, - node_box = bl2_cbox, - expand = { right="placeholder" }, - sounds = default.node_sound_wood_defaults(), - on_rotate = screwdriver.disallow -}) - -minetest.register_alias("homedecor:bench_large_2_left", "homedecor:bench_large_2") -minetest.register_alias("homedecor:bench_large_2_right", "air") - -local dc_cbox = { - type = "fixed", - fixed = { -0.5, -0.5, -0.5, 0.5, 0, 1 } -} - -homedecor.register("deckchair", { - mesh = "homedecor_deckchair.obj", - tiles = {"homedecor_deckchair.png"}, - description = S("Deck Chair"), - groups = { snappy = 3 }, - expand = { forward="placeholder" }, - sounds = default.node_sound_wood_defaults(), - selection_box = dc_cbox, - collision_box = dc_cbox, - on_rotate = screwdriver.disallow -}) - -minetest.register_alias("homedecor:deckchair_foot", "homedecor:deckchair") -minetest.register_alias("homedecor:deckchair_head", "air") - -homedecor.register("deckchair_striped_blue", { - mesh = "homedecor_deckchair.obj", - tiles = {"homedecor_deckchair_striped_blue.png"}, - description = S("Deck Chair (blue striped)"), - groups = { snappy = 3 }, - expand = { forward="placeholder" }, - sounds = default.node_sound_wood_defaults(), - selection_box = dc_cbox, - collision_box = dc_cbox, - on_rotate = screwdriver.disallow -}) - homedecor.register("doghouse", { mesh = "homedecor_doghouse.obj", tiles = { @@ -147,21 +54,6 @@ homedecor.register("doghouse", { minetest.register_alias("homedecor:doghouse_roof", "air") minetest.register_alias("homedecor:doghouse_base", "homedecor:doghouse") -homedecor.register("simple_bench", { - tiles = { "homedecor_generic_wood_old.png" }, - description = S("Simple Bench"), - groups = {snappy=3}, - node_box = { - type = "fixed", - fixed = { - {-0.5, -0.15, 0, 0.5, -0.05, 0.4}, - {-0.4, -0.5, 0.1, -0.3, -0.15, 0.3}, - { 0.3, -0.5, 0.1, 0.4, -0.15, 0.3}, - } - }, - sounds = default.node_sound_wood_defaults(), -}) - homedecor.register("stonepath", { description = S("Garden stone path"), tiles = { @@ -367,7 +259,7 @@ homedecor.shrub_colors = { local shrub_cbox = { -0.5, -0.5, -0.5, 0.5, 0.5, 0.5 } for _, color in ipairs(homedecor.shrub_colors) do - minetest.register_node("homedecor:shrubbery_large_"..color, { + minetest.register_node(":homedecor:shrubbery_large_"..color, { description = S("Shrubbery (large, @1)", S(color)), drawtype = "mesh", mesh = "homedecor_cube.obj", @@ -378,7 +270,7 @@ for _, color in ipairs(homedecor.shrub_colors) do sounds = default.node_sound_leaves_defaults(), }) - minetest.register_node("homedecor:shrubbery_"..color, { + minetest.register_node(":homedecor:shrubbery_"..color, { description = S("Shrubbery (@1)", S(color)), drawtype = "mesh", mesh = "homedecor_shrubbery.obj", @@ -396,6 +288,186 @@ for _, color in ipairs(homedecor.shrub_colors) do }) end +-- crafting + +minetest.register_craft({ + output = "homedecor:chimney 2", + recipe = { + { "default:clay_brick", "", "default:clay_brick" }, + { "default:clay_brick", "", "default:clay_brick" }, + { "default:clay_brick", "", "default:clay_brick" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:doghouse", + recipe = { + {"homedecor:shingles_terracotta", "homedecor:shingles_terracotta", "homedecor:shingles_terracotta"}, + {"group:wood", "", "group:wood"}, + {"group:wood", "building_blocks:terrycloth_towel", "group:wood"} + }, +}) + +minetest.register_craft( { + output = "homedecor:well", + recipe = { + { "homedecor:shingles_wood", "homedecor:shingles_wood", "homedecor:shingles_wood" }, + { "group:wood", "group:stick", "group:wood" }, + { "group:stone", "", "group:stone" } + }, +}) + +minetest.register_craft({ + output = "homedecor:stonepath 16", + recipe = { + { "stairs:slab_stone","","stairs:slab_stone" }, + { "","stairs:slab_stone","" }, + { "stairs:slab_stone","","stairs:slab_stone" } + }, +}) + +minetest.register_craft({ + output = "homedecor:stonepath 16", + recipe = { + { "moreblocks:slab_stone","","moreblocks:slab_stone" }, + { "","moreblocks:slab_stone","" }, + { "moreblocks:slab_stone","","moreblocks:slab_stone" } + }, +}) + +minetest.register_craft({ + output = "homedecor:stonepath 3", + recipe = { + { "moreblocks:micro_stone_1","","moreblocks:micro_stone_1" }, + { "","moreblocks:micro_stone_1","" }, + { "moreblocks:micro_stone_1","","moreblocks:micro_stone_1" } + }, +}) + +minetest.register_craft({ + output = "homedecor:barbecue", + recipe = { + { "","homedecor:fence_chainlink","" }, + { "default:steel_ingot","fake_fire:embers","default:steel_ingot" }, + { "basic_materials:steel_bar","default:steel_ingot","basic_materials:steel_bar" } + }, +}) + +minetest.register_craft({ + output = "homedecor:swing", + recipe = { + { "farming:string","","farming:string" }, + { "farming:string","","farming:string" }, + { "farming:string","stairs:slab_wood","farming:string" } + }, +}) + +minetest.register_craft({ + output = "homedecor:swing", + recipe = { + { "farming:string","","farming:string" }, + { "farming:string","","farming:string" }, + { "farming:string","moreblocks:slab_wood","farming:string" } + }, +}) + +minetest.register_craft({ + output = "homedecor:swing", + recipe = { + { "farming:string","","farming:string" }, + { "farming:string","","farming:string" }, + { "farming:string","moreblocks:panel_wood_1","farming:string" } + }, +}) + +minetest.register_craft({ + output = "homedecor:lattice_wood 8", + recipe = { + {"group:stick", "group:wood", "group:stick"}, + {"group:wood", "", "group:wood"}, + {"group:stick", "group:wood", "group:stick"}, + }, +}) + +minetest.register_craft({ + output = "homedecor:lattice_white_wood 8", + recipe = { + {"group:stick", "group:wood", "group:stick"}, + {"group:wood", "dye:white", "group:wood"}, + {"group:stick", "group:wood", "group:stick"}, + }, +}) + +minetest.register_craft({ + output = "homedecor:lattice_wood_vegetal 8", + recipe = { + {"group:stick", "group:wood", "group:stick"}, + {"group:wood", "group:leaves", "group:wood"}, + {"group:stick", "group:wood", "group:stick"}, + }, +}) + +minetest.register_craft({ + output = "homedecor:lattice_white_wood_vegetal 8", + recipe = { + {"group:stick", "group:wood", "group:stick"}, + {"group:wood", "group:leaves", "group:wood"}, + {"group:stick", "dye:white", "group:stick"}, + }, +}) + + +minetest.register_craft({ + output = "homedecor:shrubbery_green 3", + recipe = { + { "group:leaves", "group:leaves", "group:leaves" }, + { "group:leaves", "group:leaves", "group:leaves" }, + { "group:stick", "group:stick", "group:stick" } + } +}) + +for _, color in ipairs(homedecor.shrub_colors) do + + minetest.register_craft({ + type = "shapeless", + output = "homedecor:shrubbery_large_"..color, + recipe = { + "homedecor:shrubbery_"..color + } + }) + + minetest.register_craft({ + type = "shapeless", + output = "homedecor:shrubbery_"..color, + recipe = { + "homedecor:shrubbery_large_"..color + } + }) + + if color ~= "green" then + minetest.register_craft({ + type = "shapeless", + output = "homedecor:shrubbery_large_"..color, + recipe = { + "homedecor:shrubbery_large_green", + "dye:"..color + } + }) + + minetest.register_craft({ + type = "shapeless", + output = "homedecor:shrubbery_"..color, + recipe = { + "homedecor:shrubbery_green", + "dye:"..color + } + }) + + end +end + +-- aliases + minetest.register_alias("homedecor:well_top", "air") minetest.register_alias("homedecor:well_base", "homedecor:well") diff --git a/homedecor/models/homedecor_barbecue.obj b/homedecor_exterior/models/homedecor_barbecue.obj similarity index 100% rename from homedecor/models/homedecor_barbecue.obj rename to homedecor_exterior/models/homedecor_barbecue.obj diff --git a/homedecor/models/homedecor_chimney.obj b/homedecor_exterior/models/homedecor_chimney.obj similarity index 100% rename from homedecor/models/homedecor_chimney.obj rename to homedecor_exterior/models/homedecor_chimney.obj diff --git a/homedecor/models/homedecor_doghouse.obj b/homedecor_exterior/models/homedecor_doghouse.obj similarity index 100% rename from homedecor/models/homedecor_doghouse.obj rename to homedecor_exterior/models/homedecor_doghouse.obj diff --git a/homedecor/models/homedecor_shrubbery.obj b/homedecor_exterior/models/homedecor_shrubbery.obj similarity index 100% rename from homedecor/models/homedecor_shrubbery.obj rename to homedecor_exterior/models/homedecor_shrubbery.obj diff --git a/homedecor/models/homedecor_well.obj b/homedecor_exterior/models/homedecor_well.obj similarity index 100% rename from homedecor/models/homedecor_well.obj rename to homedecor_exterior/models/homedecor_well.obj diff --git a/homedecor/textures/homedecor_barbecue_meat.png b/homedecor_exterior/textures/homedecor_barbecue_meat.png similarity index 100% rename from homedecor/textures/homedecor_barbecue_meat.png rename to homedecor_exterior/textures/homedecor_barbecue_meat.png diff --git a/homedecor/textures/homedecor_chimney_tb.png b/homedecor_exterior/textures/homedecor_chimney_tb.png similarity index 100% rename from homedecor/textures/homedecor_chimney_tb.png rename to homedecor_exterior/textures/homedecor_chimney_tb.png diff --git a/homedecor/textures/homedecor_doghouse_inv.png b/homedecor_exterior/textures/homedecor_doghouse_inv.png similarity index 100% rename from homedecor/textures/homedecor_doghouse_inv.png rename to homedecor_exterior/textures/homedecor_doghouse_inv.png diff --git a/homedecor/textures/homedecor_embers.png b/homedecor_exterior/textures/homedecor_embers.png similarity index 100% rename from homedecor/textures/homedecor_embers.png rename to homedecor_exterior/textures/homedecor_embers.png diff --git a/homedecor/textures/homedecor_lattice.png b/homedecor_exterior/textures/homedecor_lattice.png similarity index 100% rename from homedecor/textures/homedecor_lattice.png rename to homedecor_exterior/textures/homedecor_lattice.png diff --git a/homedecor/textures/homedecor_lattice_vegetal.png b/homedecor_exterior/textures/homedecor_lattice_vegetal.png similarity index 100% rename from homedecor/textures/homedecor_lattice_vegetal.png rename to homedecor_exterior/textures/homedecor_lattice_vegetal.png diff --git a/homedecor/textures/homedecor_rope_texture.png b/homedecor_exterior/textures/homedecor_rope_texture.png similarity index 100% rename from homedecor/textures/homedecor_rope_texture.png rename to homedecor_exterior/textures/homedecor_rope_texture.png diff --git a/homedecor/textures/homedecor_shrubbery_green.png b/homedecor_exterior/textures/homedecor_shrubbery_green.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_green.png rename to homedecor_exterior/textures/homedecor_shrubbery_green.png diff --git a/homedecor/textures/homedecor_shrubbery_green_bottom.png b/homedecor_exterior/textures/homedecor_shrubbery_green_bottom.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_green_bottom.png rename to homedecor_exterior/textures/homedecor_shrubbery_green_bottom.png diff --git a/homedecor/textures/homedecor_shrubbery_red.png b/homedecor_exterior/textures/homedecor_shrubbery_red.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_red.png rename to homedecor_exterior/textures/homedecor_shrubbery_red.png diff --git a/homedecor/textures/homedecor_shrubbery_red_bottom.png b/homedecor_exterior/textures/homedecor_shrubbery_red_bottom.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_red_bottom.png rename to homedecor_exterior/textures/homedecor_shrubbery_red_bottom.png diff --git a/homedecor/textures/homedecor_shrubbery_roots.png b/homedecor_exterior/textures/homedecor_shrubbery_roots.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_roots.png rename to homedecor_exterior/textures/homedecor_shrubbery_roots.png diff --git a/homedecor/textures/homedecor_shrubbery_yellow.png b/homedecor_exterior/textures/homedecor_shrubbery_yellow.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_yellow.png rename to homedecor_exterior/textures/homedecor_shrubbery_yellow.png diff --git a/homedecor/textures/homedecor_shrubbery_yellow_bottom.png b/homedecor_exterior/textures/homedecor_shrubbery_yellow_bottom.png similarity index 100% rename from homedecor/textures/homedecor_shrubbery_yellow_bottom.png rename to homedecor_exterior/textures/homedecor_shrubbery_yellow_bottom.png diff --git a/homedecor/textures/homedecor_stonepath_inv.png b/homedecor_exterior/textures/homedecor_stonepath_inv.png similarity index 100% rename from homedecor/textures/homedecor_stonepath_inv.png rename to homedecor_exterior/textures/homedecor_stonepath_inv.png diff --git a/homedecor/textures/homedecor_swing_inv.png b/homedecor_exterior/textures/homedecor_swing_inv.png similarity index 100% rename from homedecor/textures/homedecor_swing_inv.png rename to homedecor_exterior/textures/homedecor_swing_inv.png diff --git a/homedecor/textures/homedecor_swing_top.png b/homedecor_exterior/textures/homedecor_swing_top.png similarity index 100% rename from homedecor/textures/homedecor_swing_top.png rename to homedecor_exterior/textures/homedecor_swing_top.png diff --git a/homedecor/textures/homedecor_swingrope_sides.png b/homedecor_exterior/textures/homedecor_swingrope_sides.png similarity index 100% rename from homedecor/textures/homedecor_swingrope_sides.png rename to homedecor_exterior/textures/homedecor_swingrope_sides.png diff --git a/homedecor/textures/homedecor_well_inv.png b/homedecor_exterior/textures/homedecor_well_inv.png similarity index 100% rename from homedecor/textures/homedecor_well_inv.png rename to homedecor_exterior/textures/homedecor_well_inv.png diff --git a/homedecor_fences/depends.txt b/homedecor_fences/depends.txt new file mode 100644 index 0000000..8505ec7 --- /dev/null +++ b/homedecor_fences/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +basic_materials +dye +signs_lib? diff --git a/homedecor/fences.lua b/homedecor_fences/init.lua similarity index 62% rename from homedecor/fences.lua rename to homedecor_fences/init.lua index 3affefe..72e5a5f 100755 --- a/homedecor/fences.lua +++ b/homedecor_fences/init.lua @@ -1,20 +1,6 @@ -- This file adds fences of various types -local signs_modpath = minetest.get_modpath("signs_lib") - -local sign_post_model = { - type = "fixed", - fixed = { - {-0.4375, -0.25, -0.1875, 0.4375, 0.375, -0.125}, - {-0.125, -0.5, -0.125, 0.125, 0.5, 0.125}, - } -} - -if signs_modpath then - sign_post_model = signs_lib.sign_post_model.nodebox -end - -local S = homedecor_i18n.gettext +local S = homedecor.gettext local materials = { { S("brass"), "brass" }, @@ -23,43 +9,17 @@ local materials = { for _, m in ipairs(materials) do -local desc, name = unpack(m) + local desc, name = unpack(m) -homedecor.register("fence_"..name, { - description = S("Fence/railing (@1)", desc), - drawtype = "fencelike", - tiles = {"homedecor_generic_metal_"..name..".png"}, - inventory_image = "homedecor_fence_"..name..".png", - selection_box = homedecor.nodebox.bar_y(1/7), - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), -}) - --- brass/wrought iron with signs: - -homedecor.register("fence_"..name.."_with_sign", { - description = S("Fence/railing with sign (@1)", desc), - tiles = { - "homedecor_sign_"..name.."_post_top.png", - "homedecor_sign_"..name.."_post_bottom.png", - "homedecor_sign_"..name.."_post_side.png", - "homedecor_sign_"..name.."_post_side.png", - "homedecor_sign_"..name.."_post_back.png", - "homedecor_sign_"..name.."_post_front.png", - }, - wield_image = "homedecor_sign_"..name.."_post.png", - node_box = sign_post_model, - groups = {snappy=3,not_in_creative_inventory=1}, - sounds = default.node_sound_wood_defaults(), - sunlight_propagates = true, - drop = { - max_items = 2, - items = { - { items = { "default:sign_wall" }}, - { items = { "homedecor:fence_"..name }}, - }, - }, -}) + homedecor.register("fence_"..name, { + description = S("Fence/railing (@1)", desc), + drawtype = "fencelike", + tiles = {"homedecor_generic_metal_"..name..".png"}, + inventory_image = "homedecor_fence_"..name..".png", + selection_box = homedecor.nodebox.bar_y(1/7), + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + }) end @@ -303,7 +263,193 @@ homedecor.register("fence_wrought_iron_2_corner", { }, }) -if signs_modpath then - signs_lib.register_fence_with_sign("homedecor:fence_brass", "homedecor:fence_brass_with_sign") - signs_lib.register_fence_with_sign("homedecor:fence_wrought_iron", "homedecor:fence_wrought_iron_with_sign") +-- insert the old wood signs-on-metal-fences into signs_lib's conversion LBM +if minetest.get_modpath("signs_lib") then + table.insert(signs_lib.old_fenceposts_with_signs, "homedecor:fence_brass_with_sign") + signs_lib.old_fenceposts["homedecor:fence_brass_with_sign"] = "homedecor:fence_brass" + signs_lib.old_fenceposts_replacement_signs["homedecor:fence_brass_with_sign"] = "default:sign_wall_wood_onpole" + + table.insert(signs_lib.old_fenceposts_with_signs, "homedecor:fence_wrought_iron_with_sign") + signs_lib.old_fenceposts["homedecor:fence_wrought_iron_with_sign"] = "homedecor:fence_wrought_iron" + signs_lib.old_fenceposts_replacement_signs["homedecor:fence_wrought_iron_with_sign"] = "default:sign_wall_wood_onpole" end + +-- crafting + +-- Brass/wrought iron fences + +minetest.register_craft( { + output = "homedecor:fence_brass 6", + recipe = { + { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, + { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:fence_wrought_iron 6", + recipe = { + { "default:iron_lump","default:iron_lump","default:iron_lump" }, + { "default:iron_lump","default:iron_lump","default:iron_lump" }, + }, +}) + +-- other types of fences + +minetest.register_craft( { + 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( { + type = "shapeless", + output = "homedecor:fence_wrought_iron_2_corner", + recipe = { + "homedecor:fence_wrought_iron_2", + "homedecor:fence_wrought_iron_2" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_wrought_iron_2 2", + recipe = { + "homedecor:fence_wrought_iron_2_corner", + }, +}) + +-- + +minetest.register_craft( { + output = "homedecor:fence_picket 6", + recipe = { + { "group:stick", "group:stick", "group:stick" }, + { "group:stick", "", "group:stick" }, + { "group:stick", "group:stick", "group:stick" } + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket_corner", + recipe = { + "homedecor:fence_picket", + "homedecor:fence_picket" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket 2", + recipe = { + "homedecor:fence_picket_corner" + }, +}) + +-- + + +minetest.register_craft( { + output = "homedecor:fence_picket_white 6", + recipe = { + { "group:stick", "group:stick", "group:stick" }, + { "group:stick", "dye:white", "group:stick" }, + { "group:stick", "group:stick", "group:stick" } + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket_corner_white", + recipe = { + "homedecor:fence_picket_white", + "homedecor:fence_picket_white" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_picket_white 2", + recipe = { + "homedecor:fence_picket_corner_white" + }, +}) + +-- + + +minetest.register_craft( { + output = "homedecor:fence_privacy 6", + recipe = { + { "group:wood", "group:stick", "group:wood" }, + { "group:wood", "", "group:wood" }, + { "group:wood", "group:stick", "group:wood" } + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_privacy_corner", + recipe = { + "homedecor:fence_privacy", + "homedecor:fence_privacy" + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_privacy 2", + recipe = { + "homedecor:fence_privacy_corner" + }, +}) + +-- + + +minetest.register_craft( { + output = "homedecor:fence_barbed_wire 6", + recipe = { + { "group:stick", "basic_materials:steel_wire", "group:stick" }, + { "group:stick", "", "group:stick" }, + { "group:stick", "basic_materials:steel_wire", "group:stick" } + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_barbed_wire_corner", + recipe = { "homedecor:fence_barbed_wire", "homedecor:fence_barbed_wire" }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_barbed_wire 2", + recipe = { "homedecor:fence_barbed_wire_corner" }, +}) + +-- + +minetest.register_craft( { + output = "homedecor:fence_chainlink 9", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, + { "basic_materials:steel_wire", "basic_materials:steel_wire", "default:steel_ingot" }, + { "basic_materials:steel_wire", "basic_materials:steel_wire", "default:steel_ingot" } + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_chainlink_corner", + recipe = { "homedecor:fence_chainlink", "homedecor:fence_chainlink" }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:fence_chainlink 2", + recipe = { "homedecor:fence_chainlink_corner" }, +}) diff --git a/homedecor/models/homedecor_fence_barbed_wire.obj b/homedecor_fences/models/homedecor_fence_barbed_wire.obj similarity index 100% rename from homedecor/models/homedecor_fence_barbed_wire.obj rename to homedecor_fences/models/homedecor_fence_barbed_wire.obj diff --git a/homedecor/models/homedecor_fence_barbed_wire_corner.obj b/homedecor_fences/models/homedecor_fence_barbed_wire_corner.obj similarity index 100% rename from homedecor/models/homedecor_fence_barbed_wire_corner.obj rename to homedecor_fences/models/homedecor_fence_barbed_wire_corner.obj diff --git a/homedecor/models/homedecor_fence_chainlink.obj b/homedecor_fences/models/homedecor_fence_chainlink.obj similarity index 100% rename from homedecor/models/homedecor_fence_chainlink.obj rename to homedecor_fences/models/homedecor_fence_chainlink.obj diff --git a/homedecor/models/homedecor_fence_chainlink_corner.obj b/homedecor_fences/models/homedecor_fence_chainlink_corner.obj similarity index 100% rename from homedecor/models/homedecor_fence_chainlink_corner.obj rename to homedecor_fences/models/homedecor_fence_chainlink_corner.obj diff --git a/homedecor/textures/homedecor_fence_barbed_wire.png b/homedecor_fences/textures/homedecor_fence_barbed_wire.png similarity index 100% rename from homedecor/textures/homedecor_fence_barbed_wire.png rename to homedecor_fences/textures/homedecor_fence_barbed_wire.png diff --git a/homedecor/textures/homedecor_fence_brass.png b/homedecor_fences/textures/homedecor_fence_brass.png similarity index 100% rename from homedecor/textures/homedecor_fence_brass.png rename to homedecor_fences/textures/homedecor_fence_brass.png diff --git a/homedecor/textures/homedecor_fence_chainlink_corner_front.png b/homedecor_fences/textures/homedecor_fence_chainlink_corner_front.png similarity index 100% rename from homedecor/textures/homedecor_fence_chainlink_corner_front.png rename to homedecor_fences/textures/homedecor_fence_chainlink_corner_front.png diff --git a/homedecor/textures/homedecor_fence_chainlink_corner_top.png b/homedecor_fences/textures/homedecor_fence_chainlink_corner_top.png similarity index 100% rename from homedecor/textures/homedecor_fence_chainlink_corner_top.png rename to homedecor_fences/textures/homedecor_fence_chainlink_corner_top.png diff --git a/homedecor/textures/homedecor_fence_chainlink_fb.png b/homedecor_fences/textures/homedecor_fence_chainlink_fb.png similarity index 100% rename from homedecor/textures/homedecor_fence_chainlink_fb.png rename to homedecor_fences/textures/homedecor_fence_chainlink_fb.png diff --git a/homedecor/textures/homedecor_fence_chainlink_sides.png b/homedecor_fences/textures/homedecor_fence_chainlink_sides.png similarity index 100% rename from homedecor/textures/homedecor_fence_chainlink_sides.png rename to homedecor_fences/textures/homedecor_fence_chainlink_sides.png diff --git a/homedecor/textures/homedecor_fence_chainlink_tb.png b/homedecor_fences/textures/homedecor_fence_chainlink_tb.png similarity index 100% rename from homedecor/textures/homedecor_fence_chainlink_tb.png rename to homedecor_fences/textures/homedecor_fence_chainlink_tb.png diff --git a/homedecor/textures/homedecor_fence_corner_wrought_iron_2_sides.png b/homedecor_fences/textures/homedecor_fence_corner_wrought_iron_2_sides.png similarity index 100% rename from homedecor/textures/homedecor_fence_corner_wrought_iron_2_sides.png rename to homedecor_fences/textures/homedecor_fence_corner_wrought_iron_2_sides.png diff --git a/homedecor/textures/homedecor_fence_corner_wrought_iron_2_tb.png b/homedecor_fences/textures/homedecor_fence_corner_wrought_iron_2_tb.png similarity index 100% rename from homedecor/textures/homedecor_fence_corner_wrought_iron_2_tb.png rename to homedecor_fences/textures/homedecor_fence_corner_wrought_iron_2_tb.png diff --git a/homedecor/textures/homedecor_fence_picket.png b/homedecor_fences/textures/homedecor_fence_picket.png similarity index 100% rename from homedecor/textures/homedecor_fence_picket.png rename to homedecor_fences/textures/homedecor_fence_picket.png diff --git a/homedecor/textures/homedecor_fence_picket_backside.png b/homedecor_fences/textures/homedecor_fence_picket_backside.png similarity index 100% rename from homedecor/textures/homedecor_fence_picket_backside.png rename to homedecor_fences/textures/homedecor_fence_picket_backside.png diff --git a/homedecor/textures/homedecor_fence_picket_white.png b/homedecor_fences/textures/homedecor_fence_picket_white.png similarity index 100% rename from homedecor/textures/homedecor_fence_picket_white.png rename to homedecor_fences/textures/homedecor_fence_picket_white.png diff --git a/homedecor/textures/homedecor_fence_picket_white_backside.png b/homedecor_fences/textures/homedecor_fence_picket_white_backside.png similarity index 100% rename from homedecor/textures/homedecor_fence_picket_white_backside.png rename to homedecor_fences/textures/homedecor_fence_picket_white_backside.png diff --git a/homedecor/textures/homedecor_fence_privacy_backside.png b/homedecor_fences/textures/homedecor_fence_privacy_backside.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_backside.png rename to homedecor_fences/textures/homedecor_fence_privacy_backside.png diff --git a/homedecor/textures/homedecor_fence_privacy_backside2.png b/homedecor_fences/textures/homedecor_fence_privacy_backside2.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_backside2.png rename to homedecor_fences/textures/homedecor_fence_privacy_backside2.png diff --git a/homedecor/textures/homedecor_fence_privacy_corner_front.png b/homedecor_fences/textures/homedecor_fence_privacy_corner_front.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_corner_front.png rename to homedecor_fences/textures/homedecor_fence_privacy_corner_front.png diff --git a/homedecor/textures/homedecor_fence_privacy_corner_right.png b/homedecor_fences/textures/homedecor_fence_privacy_corner_right.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_corner_right.png rename to homedecor_fences/textures/homedecor_fence_privacy_corner_right.png diff --git a/homedecor/textures/homedecor_fence_privacy_corner_tb.png b/homedecor_fences/textures/homedecor_fence_privacy_corner_tb.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_corner_tb.png rename to homedecor_fences/textures/homedecor_fence_privacy_corner_tb.png diff --git a/homedecor/textures/homedecor_fence_privacy_front.png b/homedecor_fences/textures/homedecor_fence_privacy_front.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_front.png rename to homedecor_fences/textures/homedecor_fence_privacy_front.png diff --git a/homedecor/textures/homedecor_fence_privacy_sides.png b/homedecor_fences/textures/homedecor_fence_privacy_sides.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_sides.png rename to homedecor_fences/textures/homedecor_fence_privacy_sides.png diff --git a/homedecor/textures/homedecor_fence_privacy_tb.png b/homedecor_fences/textures/homedecor_fence_privacy_tb.png similarity index 100% rename from homedecor/textures/homedecor_fence_privacy_tb.png rename to homedecor_fences/textures/homedecor_fence_privacy_tb.png diff --git a/homedecor/textures/homedecor_fence_wrought_iron.png b/homedecor_fences/textures/homedecor_fence_wrought_iron.png similarity index 100% rename from homedecor/textures/homedecor_fence_wrought_iron.png rename to homedecor_fences/textures/homedecor_fence_wrought_iron.png diff --git a/homedecor/textures/homedecor_fence_wrought_iron_2_fb.png b/homedecor_fences/textures/homedecor_fence_wrought_iron_2_fb.png similarity index 100% rename from homedecor/textures/homedecor_fence_wrought_iron_2_fb.png rename to homedecor_fences/textures/homedecor_fence_wrought_iron_2_fb.png diff --git a/homedecor/textures/homedecor_fence_wrought_iron_2_sides.png b/homedecor_fences/textures/homedecor_fence_wrought_iron_2_sides.png similarity index 100% rename from homedecor/textures/homedecor_fence_wrought_iron_2_sides.png rename to homedecor_fences/textures/homedecor_fence_wrought_iron_2_sides.png diff --git a/homedecor/textures/homedecor_fence_wrought_iron_2_tb.png b/homedecor_fences/textures/homedecor_fence_wrought_iron_2_tb.png similarity index 100% rename from homedecor/textures/homedecor_fence_wrought_iron_2_tb.png rename to homedecor_fences/textures/homedecor_fence_wrought_iron_2_tb.png diff --git a/homedecor/textures/homedecor_sign_brass_post.png b/homedecor_fences/textures/homedecor_sign_brass_post.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post.png rename to homedecor_fences/textures/homedecor_sign_brass_post.png diff --git a/homedecor/textures/homedecor_sign_brass_post_back.png b/homedecor_fences/textures/homedecor_sign_brass_post_back.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post_back.png rename to homedecor_fences/textures/homedecor_sign_brass_post_back.png diff --git a/homedecor/textures/homedecor_sign_brass_post_bottom.png b/homedecor_fences/textures/homedecor_sign_brass_post_bottom.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post_bottom.png rename to homedecor_fences/textures/homedecor_sign_brass_post_bottom.png diff --git a/homedecor/textures/homedecor_sign_brass_post_front.png b/homedecor_fences/textures/homedecor_sign_brass_post_front.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post_front.png rename to homedecor_fences/textures/homedecor_sign_brass_post_front.png diff --git a/homedecor/textures/homedecor_sign_brass_post_side.png b/homedecor_fences/textures/homedecor_sign_brass_post_side.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post_side.png rename to homedecor_fences/textures/homedecor_sign_brass_post_side.png diff --git a/homedecor/textures/homedecor_sign_brass_post_top.png b/homedecor_fences/textures/homedecor_sign_brass_post_top.png similarity index 100% rename from homedecor/textures/homedecor_sign_brass_post_top.png rename to homedecor_fences/textures/homedecor_sign_brass_post_top.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post_back.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post_back.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post_back.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post_back.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post_bottom.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post_bottom.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post_bottom.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post_bottom.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post_front.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post_front.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post_front.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post_front.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post_side.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post_side.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post_side.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post_side.png diff --git a/homedecor/textures/homedecor_sign_wrought_iron_post_top.png b/homedecor_fences/textures/homedecor_sign_wrought_iron_post_top.png similarity index 100% rename from homedecor/textures/homedecor_sign_wrought_iron_post_top.png rename to homedecor_fences/textures/homedecor_sign_wrought_iron_post_top.png diff --git a/homedecor_foyer/depends.txt b/homedecor_foyer/depends.txt new file mode 100644 index 0000000..d0de51e --- /dev/null +++ b/homedecor_foyer/depends.txt @@ -0,0 +1,3 @@ +homedecor_common +default +dye diff --git a/homedecor/foyer.lua b/homedecor_foyer/init.lua similarity index 62% rename from homedecor/foyer.lua rename to homedecor_foyer/init.lua index c6fb401..0b466f3 100755 --- a/homedecor/foyer.lua +++ b/homedecor_foyer/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext homedecor.register("coatrack_wallmount", { tiles = { homedecor.plain_wood }, @@ -67,3 +67,55 @@ for _, mat in ipairs(mat_colors) do } }) end + +-- crafting + + +minetest.register_craft({ + output = "homedecor:welcome_mat_grey 2", + recipe = { + { "", "dye:black", "" }, + { "wool:grey", "wool:grey", "wool:grey" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:welcome_mat_brown 2", + recipe = { + { "", "dye:black", "" }, + { "wool:brown", "wool:brown", "wool:brown" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:welcome_mat_green 2", + recipe = { + { "", "dye:white", "" }, + { "wool:dark_green", "wool:dark_green", "wool:dark_green" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:welcome_mat_green 2", + recipe = { + { "", "dye:white", "" }, + { "dye:black", "dye:black", "dye:black" }, + { "wool:green", "wool:green", "wool:green" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:coat_tree", + recipe = { + { "group:stick", "group:stick", "group:stick" }, + { "", "group:stick", "" }, + { "", "group:wood", "" } + }, +}) + +minetest.register_craft( { + output = "homedecor:coatrack_wallmount", + recipe = { + { "group:stick", "homedecor:curtainrod_wood", "group:stick" }, + }, +}) diff --git a/homedecor/models/homedecor_coatrack.obj b/homedecor_foyer/models/homedecor_coatrack.obj similarity index 100% rename from homedecor/models/homedecor_coatrack.obj rename to homedecor_foyer/models/homedecor_coatrack.obj diff --git a/homedecor/textures/homedecor_coatrack_inv.png b/homedecor_foyer/textures/homedecor_coatrack_inv.png similarity index 100% rename from homedecor/textures/homedecor_coatrack_inv.png rename to homedecor_foyer/textures/homedecor_coatrack_inv.png diff --git a/homedecor/textures/homedecor_coatrack_wallmount_inv.png b/homedecor_foyer/textures/homedecor_coatrack_wallmount_inv.png similarity index 100% rename from homedecor/textures/homedecor_coatrack_wallmount_inv.png rename to homedecor_foyer/textures/homedecor_coatrack_wallmount_inv.png diff --git a/homedecor/textures/homedecor_welcome_mat_bottom.png b/homedecor_foyer/textures/homedecor_welcome_mat_bottom.png similarity index 100% rename from homedecor/textures/homedecor_welcome_mat_bottom.png rename to homedecor_foyer/textures/homedecor_welcome_mat_bottom.png diff --git a/homedecor/textures/homedecor_welcome_mat_brown.png b/homedecor_foyer/textures/homedecor_welcome_mat_brown.png similarity index 100% rename from homedecor/textures/homedecor_welcome_mat_brown.png rename to homedecor_foyer/textures/homedecor_welcome_mat_brown.png diff --git a/homedecor/textures/homedecor_welcome_mat_green.png b/homedecor_foyer/textures/homedecor_welcome_mat_green.png similarity index 100% rename from homedecor/textures/homedecor_welcome_mat_green.png rename to homedecor_foyer/textures/homedecor_welcome_mat_green.png diff --git a/homedecor/textures/homedecor_welcome_mat_grey.png b/homedecor_foyer/textures/homedecor_welcome_mat_grey.png similarity index 100% rename from homedecor/textures/homedecor_welcome_mat_grey.png rename to homedecor_foyer/textures/homedecor_welcome_mat_grey.png diff --git a/homedecor_furniture/depends.txt b/homedecor_furniture/depends.txt new file mode 100644 index 0000000..016b9c4 --- /dev/null +++ b/homedecor_furniture/depends.txt @@ -0,0 +1,7 @@ +homedecor_common +default +unifieddyes +wool +moreblocks? +technic? +bucket? diff --git a/homedecor/furniture_recipes.lua b/homedecor_furniture/init.lua similarity index 69% rename from homedecor/furniture_recipes.lua rename to homedecor_furniture/init.lua index 1e96751..089728d 100755 --- a/homedecor/furniture_recipes.lua +++ b/homedecor_furniture/init.lua @@ -1,4 +1,79 @@ +local S = homedecor.gettext + +local table_colors = { + { "", S("Table"), homedecor.plain_wood }, + { "_mahogany", S("Mahogany Table"), homedecor.mahogany_wood }, + { "_white", S("White Table"), homedecor.white_wood } +} + +for _, t in ipairs(table_colors) do + local suffix, desc, texture = unpack(t) + + homedecor.register("table"..suffix, { + description = desc, + tiles = { texture }, + node_box = { + type = "fixed", + fixed = { + { -0.4, -0.5, -0.4, -0.3, 0.4, -0.3 }, + { 0.3, -0.5, -0.4, 0.4, 0.4, -0.3 }, + { -0.4, -0.5, 0.3, -0.3, 0.4, 0.4 }, + { 0.3, -0.5, 0.3, 0.4, 0.4, 0.4 }, + { -0.5, 0.4, -0.5, 0.5, 0.5, 0.5 }, + { -0.4, -0.2, -0.3, -0.3, -0.1, 0.3 }, + { 0.3, -0.2, -0.4, 0.4, -0.1, 0.3 }, + { -0.3, -0.2, -0.4, 0.4, -0.1, -0.3 }, + { -0.3, -0.2, 0.3, 0.3, -0.1, 0.4 }, + }, + }, + groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, + sounds = default.node_sound_wood_defaults(), + }) +end + + + +local ob_cbox = { + type = "fixed", + fixed = { -0.5, -0.5, 0, 0.5, 0.5, 0.5 } +} + +minetest.register_node(":homedecor:openframe_bookshelf", { + description = S("Bookshelf (open-frame)"), + drawtype = "mesh", + mesh = "homedecor_openframe_bookshelf.obj", + tiles = { + "homedecor_openframe_bookshelf_books.png", + "default_wood.png" + }, + groups = {choppy=3,oddly_breakable_by_hand=2,flammable=3}, + sounds = default.node_sound_wood_defaults(), + paramtype = "light", + paramtype2 = "facedir", + selection_box = ob_cbox, + collision_box = ob_cbox, +}) + +homedecor.register("wall_shelf", { + description = S("Wall Shelf"), + tiles = { + "default_wood.png", + }, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + node_box = { + type = "fixed", + fixed = { + {-0.5, 0.4, 0.47, 0.5, 0.47, 0.5}, + {-0.5, 0.47, -0.1875, 0.5, 0.5, 0.5} + } + } +}) + +-- Crafts + + minetest.register_craft({ output = "homedecor:table", recipe = { @@ -52,73 +127,6 @@ minetest.register_craft({ burntime = 30, }) -minetest.register_craft({ - output = "homedecor:kitchen_chair_wood 2", - recipe = { - { "group:stick",""}, - { "group:wood","group:wood" }, - { "group:stick","group:stick" }, - }, -}) - -minetest.register_craft({ - output = "homedecor:armchair 2", - recipe = { - { "wool:white",""}, - { "group:wood","group:wood" }, - { "wool:white","wool:white" }, - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:armchair", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:armchair", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - type = "shapeless", - output = "homedecor:kitchen_chair_padded", - recipe = { - "homedecor:kitchen_chair_wood", - "wool:white", - }, -}) - -unifieddyes.register_color_craft({ - output = "homedecor:kitchen_chair_padded", - palette = "wallmounted", - type = "shapeless", - neutral_node = "homedecor:kitchen_chair_padded", - recipe = { - "NEUTRAL_NODE", - "MAIN_DYE" - } -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:kitchen_chair_wood", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:kitchen_chair_padded", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "homedecor:armchair", - burntime = 30, -}) - minetest.register_craft({ output = "homedecor:standing_lamp_off", recipe = { @@ -278,3 +286,8 @@ minetest.register_craft({ { "default:steel_ingot" }, }, }) + +-- Aliases for 3dforniture mod. + +minetest.register_alias("3dforniture:table", "homedecor:table") +minetest.register_alias('table', 'homedecor:table') diff --git a/homedecor/models/homedecor_openframe_bookshelf.obj b/homedecor_furniture/models/homedecor_openframe_bookshelf.obj similarity index 100% rename from homedecor/models/homedecor_openframe_bookshelf.obj rename to homedecor_furniture/models/homedecor_openframe_bookshelf.obj diff --git a/homedecor/textures/homedecor_openframe_bookshelf_books.png b/homedecor_furniture/textures/homedecor_openframe_bookshelf_books.png similarity index 100% rename from homedecor/textures/homedecor_openframe_bookshelf_books.png rename to homedecor_furniture/textures/homedecor_openframe_bookshelf_books.png diff --git a/homedecor_furniture_medieval/depends.txt b/homedecor_furniture_medieval/depends.txt new file mode 100644 index 0000000..dccb7bc --- /dev/null +++ b/homedecor_furniture_medieval/depends.txt @@ -0,0 +1,3 @@ +homedecor_common +default +creative diff --git a/homedecor/furniture_medieval.lua b/homedecor_furniture_medieval/init.lua similarity index 60% rename from homedecor/furniture_medieval.lua rename to homedecor_furniture_medieval/init.lua index e0932a4..87b9def 100755 --- a/homedecor/furniture_medieval.lua +++ b/homedecor_furniture_medieval/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext homedecor.register("bars", { description = S("Bars"), @@ -58,61 +58,10 @@ homedecor.register("chains", { sounds = default.node_sound_stone_defaults(), }) -homedecor.register("torch_wall", { - description = S("Wall Torch"), - mesh = "forniture_torch.obj", - tiles = { - { - name="forniture_torch_flame.png", - animation={ - type="vertical_frames", - aspect_w=40, - aspect_h=40, - length=1.0, - }, - }, - { name = "homedecor_generic_metal.png", color = homedecor.color_black }, - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - "forniture_coal.png", - }, - inventory_image="forniture_torch_inv.png", - walkable = false, - light_source = 14, - selection_box = { - type = "fixed", - fixed = { -0.15, -0.45, 0.15, 0.15,0.35, 0.5 }, - }, - groups = {cracky=3}, -}) - -local wl_cbox = { - type = "fixed", - fixed = { -0.2, -0.5, 0, 0.2, 0.5, 0.5 }, -} - -homedecor.register("wall_lamp", { - description = S("Wall Lamp"), - mesh = "homedecor_wall_lamp.obj", - tiles = { - { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, - homedecor.lux_wood, - "homedecor_light.png", - "homedecor_generic_metal_wrought_iron.png" - }, - use_texture_alpha = true, - inventory_image = "homedecor_wall_lamp_inv.png", - groups = {snappy=3}, - light_source = 11, - selection_box = wl_cbox, - walkable = false -}) - minetest.register_alias("3dforniture:bars", "homedecor:bars") minetest.register_alias("3dforniture:L_binding_bars", "homedecor:L_binding_bars") minetest.register_alias("3dforniture:chains", "homedecor:chains") -minetest.register_alias("3dforniture:torch_wall", "homedecor:torch_wall") minetest.register_alias('bars', 'homedecor:bars') minetest.register_alias('binding_bars', 'homedecor:L_binding_bars') minetest.register_alias('chains', 'homedecor:chains') -minetest.register_alias('torch_wall', 'homedecor:torch_wall') diff --git a/homedecor/models/forniture_chains.obj b/homedecor_furniture_medieval/models/forniture_chains.obj similarity index 100% rename from homedecor/models/forniture_chains.obj rename to homedecor_furniture_medieval/models/forniture_chains.obj diff --git a/homedecor/textures/forniture_chains_inv.png b/homedecor_furniture_medieval/textures/forniture_chains_inv.png similarity index 100% rename from homedecor/textures/forniture_chains_inv.png rename to homedecor_furniture_medieval/textures/forniture_chains_inv.png diff --git a/homedecor/textures/forniture_coal.png b/homedecor_furniture_medieval/textures/forniture_coal.png similarity index 100% rename from homedecor/textures/forniture_coal.png rename to homedecor_furniture_medieval/textures/forniture_coal.png diff --git a/homedecor/textures/forniture_marble_top_toilet.png b/homedecor_furniture_medieval/textures/forniture_marble_top_toilet.png similarity index 100% rename from homedecor/textures/forniture_marble_top_toilet.png rename to homedecor_furniture_medieval/textures/forniture_marble_top_toilet.png diff --git a/homedecor_gastronomy/depends.txt b/homedecor_gastronomy/depends.txt new file mode 100644 index 0000000..c378b98 --- /dev/null +++ b/homedecor_gastronomy/depends.txt @@ -0,0 +1,7 @@ +homedecor_common +default +basic_materials +dye +creative +currency? +bucket? diff --git a/homedecor/gastronomy.lua b/homedecor_gastronomy/init.lua similarity index 50% rename from homedecor/gastronomy.lua rename to homedecor_gastronomy/init.lua index 8274b3f..68262e4 100755 --- a/homedecor/gastronomy.lua +++ b/homedecor_gastronomy/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local cutlery_cbox = { type = "fixed", @@ -104,22 +104,6 @@ homedecor.register("wine_rack", { sounds = default.node_sound_defaults(), }) -homedecor.register("dartboard", { - description = S("Dartboard"), - mesh = "homedecor_dartboard.obj", - tiles = { "homedecor_dartboard.png" }, - inventory_image = "homedecor_dartboard_inv.png", - wield_image = "homedecor_dartboard_inv.png", - paramtype2 = "wallmounted", - walkable = false, - selection_box = { - type = "wallmounted", - }, - groups = {choppy=2,dig_immediate=2,attached_node=1}, - legacy_wallmounted = true, - sounds = default.node_sound_wood_defaults(), -}) - homedecor.register("beer_tap", { description = S("Beer tap"), mesh = "homedecor_beer_taps.obj", @@ -180,18 +164,7 @@ homedecor.register("beer_mug", { on_use = function(itemstack, user, pointed_thing) local inv = user:get_inventory() if not creative.is_enabled_for(user:get_player_name()) then - if inv:room_for_item("main", "vessels:drinking_glass 1") then - inv:add_item("main", "vessels:drinking_glass 1") - else - local pos = user:get_pos() - local dir = user:get_look_dir() - local fdir = minetest.dir_to_facedir(dir) - local pos_fwd = { x = pos.x + homedecor.fdir_to_fwd[fdir+1][1], - y = pos.y + 1, - z = pos.z + homedecor.fdir_to_fwd[fdir+1][2] } - minetest.add_item(pos_fwd, "vessels:drinking_glass 1") - end - minetest.do_item_eat(2, nil, itemstack, user, pointed_thing) + minetest.do_item_eat(2, "vessels:drinking_glass 1", itemstack, user, pointed_thing) return itemstack end end @@ -236,3 +209,218 @@ homedecor.register("soda_machine", { }) minetest.register_alias("homedecor:coin", "currency:minegeld_cent_25") + +-- coffee! +-- coffee! +-- coffee! + +local cm_cbox = { + type = "fixed", + fixed = { + { 0, -8/16, 0, 7/16, 3/16, 8/16 }, + { -4/16, -8/16, -6/16, -1/16, -5/16, -3/16 } + } +} + +homedecor.register("coffee_maker", { + mesh = "homedecor_coffeemaker.obj", + tiles = { + "homedecor_coffeemaker_decanter.png", + "homedecor_coffeemaker_cup.png", + "homedecor_coffeemaker_case.png", + }, + description = S("Coffee Maker"), + inventory_image = "homedecor_coffeemaker_inv.png", + walkable = false, + groups = {snappy=3}, + selection_box = cm_cbox, + node_box = cm_cbox, + on_rotate = screwdriver.disallow +}) + +homedecor.register("toaster", { + description = S("Toaster"), + tiles = { "homedecor_toaster_sides.png" }, + inventory_image = "homedecor_toaster_inv.png", + walkable = false, + groups = { snappy=3 }, + node_box = { + type = "fixed", + fixed = { + {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 + }, + }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + local fdir = node.param2 + minetest.set_node(pos, { name = "homedecor:toaster_loaf", param2 = fdir }) + minetest.sound_play("toaster", { + pos = pos, + gain = 1.0, + max_hear_distance = 5 + }) + return itemstack + end +}) + +homedecor.register("toaster_loaf", { + tiles = { + "homedecor_toaster_toploaf.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png", + "homedecor_toaster_sides.png" + }, + walkable = false, + groups = { snappy=3, not_in_creative_inventory=1 }, + node_box = { + type = "fixed", + fixed = { + {-0.0625, -0.5, -0.125, 0.125, -0.3125, 0.125}, -- NodeBox1 + {-0.03125, -0.3125, -0.0935, 0, -0.25, 0.0935}, -- NodeBox2 + {0.0625, -0.3125, -0.0935, 0.0935, -0.25, 0.0935}, -- NodeBox3 + }, + }, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + local fdir = node.param2 + minetest.set_node(pos, { name = "homedecor:toaster", param2 = fdir }) + return itemstack + end, + drop = "homedecor:toaster" +}) + +local fdir_to_steampos = { + x = { 0.15, 0.275, -0.15, -0.275 }, + z = { 0.275, -0.15, -0.275, 0.15 } +} + +minetest.register_abm({ + nodenames = "homedecor:coffee_maker", + label = "sfx", + interval = 2, + chance = 1, + action = function(pos, node) + local fdir = node.param2 + if fdir and fdir < 4 then + + local steamx = fdir_to_steampos.x[fdir + 1] + local steamz = fdir_to_steampos.z[fdir + 1] + + minetest.add_particlespawner({ + amount = 1, + time = 1, + minpos = {x=pos.x - steamx, y=pos.y - 0.35, z=pos.z - steamz}, + maxpos = {x=pos.x - steamx, y=pos.y - 0.35, z=pos.z - steamz}, + minvel = {x=-0.003, y=0.01, z=-0.003}, + maxvel = {x=0.003, y=0.01, z=-0.003}, + minacc = {x=0.0,y=-0.0,z=-0.0}, + maxacc = {x=0.0,y=0.003,z=-0.0}, + minexptime = 2, + maxexptime = 5, + minsize = 1, + maxsize = 1.2, + collisiondetection = false, + texture = "homedecor_steam.png", + }) + end + end +}) + +-- crafting + +minetest.register_craftitem(":homedecor:soda_can", { + description = S("Soda Can"), + inventory_image = "homedecor_soda_can.png", + on_use = minetest.item_eat(2), +}) + +minetest.register_craft( { + output = "homedecor:bottle_green", + recipe = { + { "vessels:glass_bottle", "dye:green" } + }, +}) + +minetest.register_craft( { + output = "homedecor:bottle_brown", + recipe = { + { "vessels:glass_bottle", "dye:brown" } + }, +}) + +minetest.register_craft({ + output = "homedecor:coffee_maker", + recipe = { + {"basic_materials:plastic_sheet", "bucket:bucket_water", "basic_materials:plastic_sheet"}, + {"basic_materials:plastic_sheet", "default:glass", "basic_materials:plastic_sheet"}, + {"basic_materials:plastic_sheet", "basic_materials:heating_element", "basic_materials:plastic_sheet"} + }, +}) + +minetest.register_craft({ + output = "homedecor:toaster", + recipe = { + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" }, + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:beer_tap", + recipe = { + { "group:stick","default:steel_ingot","group:stick" }, + { "homedecor:kitchen_faucet","default:steel_ingot","homedecor:kitchen_faucet" }, + { "default:steel_ingot","default:steel_ingot","default:steel_ingot" } + }, +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:4_bottles_brown", + recipe = { + "homedecor:bottle_brown", + "homedecor:bottle_brown", + "homedecor:bottle_brown", + "homedecor:bottle_brown" + }, +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:4_bottles_green", + recipe = { + "homedecor:bottle_green", + "homedecor:bottle_green", + "homedecor:bottle_green", + "homedecor:bottle_green" + }, +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:4_bottles_multi", + recipe = { + "homedecor:bottle_brown", + "homedecor:bottle_brown", + "homedecor:bottle_green", + "homedecor:bottle_green", + }, +}) + +minetest.register_craft({ + output = "homedecor:wine_rack", + recipe = { + { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, + { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, + { "homedecor:4_bottles_brown", "group:wood", "homedecor:4_bottles_brown" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:soda_machine", + recipe = { + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + {"default:steel_ingot", "dye:red", "default:steel_ingot"}, + {"default:steel_ingot", "default:copperblock", "default:steel_ingot"}, + }, +}) diff --git a/homedecor/models/homedecor_4_bottles.obj b/homedecor_gastronomy/models/homedecor_4_bottles.obj similarity index 100% rename from homedecor/models/homedecor_4_bottles.obj rename to homedecor_gastronomy/models/homedecor_4_bottles.obj diff --git a/homedecor/models/homedecor_beer_mug.obj b/homedecor_gastronomy/models/homedecor_beer_mug.obj similarity index 100% rename from homedecor/models/homedecor_beer_mug.obj rename to homedecor_gastronomy/models/homedecor_beer_mug.obj diff --git a/homedecor/models/homedecor_beer_taps.obj b/homedecor_gastronomy/models/homedecor_beer_taps.obj similarity index 100% rename from homedecor/models/homedecor_beer_taps.obj rename to homedecor_gastronomy/models/homedecor_beer_taps.obj diff --git a/homedecor/models/homedecor_bottle.obj b/homedecor_gastronomy/models/homedecor_bottle.obj similarity index 100% rename from homedecor/models/homedecor_bottle.obj rename to homedecor_gastronomy/models/homedecor_bottle.obj diff --git a/homedecor/models/homedecor_coffeemaker.obj b/homedecor_gastronomy/models/homedecor_coffeemaker.obj similarity index 100% rename from homedecor/models/homedecor_coffeemaker.obj rename to homedecor_gastronomy/models/homedecor_coffeemaker.obj diff --git a/homedecor/models/homedecor_cutlery_set.obj b/homedecor_gastronomy/models/homedecor_cutlery_set.obj similarity index 100% rename from homedecor/models/homedecor_cutlery_set.obj rename to homedecor_gastronomy/models/homedecor_cutlery_set.obj diff --git a/homedecor/models/homedecor_soda_machine.obj b/homedecor_gastronomy/models/homedecor_soda_machine.obj similarity index 100% rename from homedecor/models/homedecor_soda_machine.obj rename to homedecor_gastronomy/models/homedecor_soda_machine.obj diff --git a/homedecor/models/homedecor_wine_rack.obj b/homedecor_gastronomy/models/homedecor_wine_rack.obj similarity index 100% rename from homedecor/models/homedecor_wine_rack.obj rename to homedecor_gastronomy/models/homedecor_wine_rack.obj diff --git a/homedecor/sounds/insert_coin.ogg b/homedecor_gastronomy/sounds/insert_coin.ogg similarity index 100% rename from homedecor/sounds/insert_coin.ogg rename to homedecor_gastronomy/sounds/insert_coin.ogg diff --git a/homedecor/sounds/toaster.ogg b/homedecor_gastronomy/sounds/toaster.ogg similarity index 100% rename from homedecor/sounds/toaster.ogg rename to homedecor_gastronomy/sounds/toaster.ogg diff --git a/homedecor/textures/homedecor_4_bottles_brown_inv.png b/homedecor_gastronomy/textures/homedecor_4_bottles_brown_inv.png similarity index 100% rename from homedecor/textures/homedecor_4_bottles_brown_inv.png rename to homedecor_gastronomy/textures/homedecor_4_bottles_brown_inv.png diff --git a/homedecor/textures/homedecor_4_bottles_green_inv.png b/homedecor_gastronomy/textures/homedecor_4_bottles_green_inv.png similarity index 100% rename from homedecor/textures/homedecor_4_bottles_green_inv.png rename to homedecor_gastronomy/textures/homedecor_4_bottles_green_inv.png diff --git a/homedecor/textures/homedecor_4_bottles_multi_inv.png b/homedecor_gastronomy/textures/homedecor_4_bottles_multi_inv.png similarity index 100% rename from homedecor/textures/homedecor_4_bottles_multi_inv.png rename to homedecor_gastronomy/textures/homedecor_4_bottles_multi_inv.png diff --git a/homedecor/textures/homedecor_beer_mug.png b/homedecor_gastronomy/textures/homedecor_beer_mug.png similarity index 100% rename from homedecor/textures/homedecor_beer_mug.png rename to homedecor_gastronomy/textures/homedecor_beer_mug.png diff --git a/homedecor/textures/homedecor_beer_mug_inv.png b/homedecor_gastronomy/textures/homedecor_beer_mug_inv.png similarity index 100% rename from homedecor/textures/homedecor_beer_mug_inv.png rename to homedecor_gastronomy/textures/homedecor_beer_mug_inv.png diff --git a/homedecor/textures/homedecor_beertap_inv.png b/homedecor_gastronomy/textures/homedecor_beertap_inv.png similarity index 100% rename from homedecor/textures/homedecor_beertap_inv.png rename to homedecor_gastronomy/textures/homedecor_beertap_inv.png diff --git a/homedecor/textures/homedecor_bottle_brown.png b/homedecor_gastronomy/textures/homedecor_bottle_brown.png similarity index 100% rename from homedecor/textures/homedecor_bottle_brown.png rename to homedecor_gastronomy/textures/homedecor_bottle_brown.png diff --git a/homedecor/textures/homedecor_bottle_brown2.png b/homedecor_gastronomy/textures/homedecor_bottle_brown2.png similarity index 100% rename from homedecor/textures/homedecor_bottle_brown2.png rename to homedecor_gastronomy/textures/homedecor_bottle_brown2.png diff --git a/homedecor/textures/homedecor_bottle_brown3.png b/homedecor_gastronomy/textures/homedecor_bottle_brown3.png similarity index 100% rename from homedecor/textures/homedecor_bottle_brown3.png rename to homedecor_gastronomy/textures/homedecor_bottle_brown3.png diff --git a/homedecor/textures/homedecor_bottle_brown4.png b/homedecor_gastronomy/textures/homedecor_bottle_brown4.png similarity index 100% rename from homedecor/textures/homedecor_bottle_brown4.png rename to homedecor_gastronomy/textures/homedecor_bottle_brown4.png diff --git a/homedecor/textures/homedecor_bottle_brown_inv.png b/homedecor_gastronomy/textures/homedecor_bottle_brown_inv.png similarity index 100% rename from homedecor/textures/homedecor_bottle_brown_inv.png rename to homedecor_gastronomy/textures/homedecor_bottle_brown_inv.png diff --git a/homedecor/textures/homedecor_bottle_green.png b/homedecor_gastronomy/textures/homedecor_bottle_green.png similarity index 100% rename from homedecor/textures/homedecor_bottle_green.png rename to homedecor_gastronomy/textures/homedecor_bottle_green.png diff --git a/homedecor/textures/homedecor_bottle_green_inv.png b/homedecor_gastronomy/textures/homedecor_bottle_green_inv.png similarity index 100% rename from homedecor/textures/homedecor_bottle_green_inv.png rename to homedecor_gastronomy/textures/homedecor_bottle_green_inv.png diff --git a/homedecor/textures/homedecor_coffeemaker_case.png b/homedecor_gastronomy/textures/homedecor_coffeemaker_case.png similarity index 100% rename from homedecor/textures/homedecor_coffeemaker_case.png rename to homedecor_gastronomy/textures/homedecor_coffeemaker_case.png diff --git a/homedecor/textures/homedecor_coffeemaker_cup.png b/homedecor_gastronomy/textures/homedecor_coffeemaker_cup.png similarity index 100% rename from homedecor/textures/homedecor_coffeemaker_cup.png rename to homedecor_gastronomy/textures/homedecor_coffeemaker_cup.png diff --git a/homedecor/textures/homedecor_coffeemaker_decanter.png b/homedecor_gastronomy/textures/homedecor_coffeemaker_decanter.png similarity index 100% rename from homedecor/textures/homedecor_coffeemaker_decanter.png rename to homedecor_gastronomy/textures/homedecor_coffeemaker_decanter.png diff --git a/homedecor/textures/homedecor_coffeemaker_inv.png b/homedecor_gastronomy/textures/homedecor_coffeemaker_inv.png similarity index 100% rename from homedecor/textures/homedecor_coffeemaker_inv.png rename to homedecor_gastronomy/textures/homedecor_coffeemaker_inv.png diff --git a/homedecor/textures/homedecor_cutlery_set.png b/homedecor_gastronomy/textures/homedecor_cutlery_set.png similarity index 100% rename from homedecor/textures/homedecor_cutlery_set.png rename to homedecor_gastronomy/textures/homedecor_cutlery_set.png diff --git a/homedecor/textures/homedecor_cutlery_set_inv.png b/homedecor_gastronomy/textures/homedecor_cutlery_set_inv.png similarity index 100% rename from homedecor/textures/homedecor_cutlery_set_inv.png rename to homedecor_gastronomy/textures/homedecor_cutlery_set_inv.png diff --git a/homedecor/textures/homedecor_soda_can.png b/homedecor_gastronomy/textures/homedecor_soda_can.png similarity index 100% rename from homedecor/textures/homedecor_soda_can.png rename to homedecor_gastronomy/textures/homedecor_soda_can.png diff --git a/homedecor/textures/homedecor_soda_machine.png b/homedecor_gastronomy/textures/homedecor_soda_machine.png similarity index 100% rename from homedecor/textures/homedecor_soda_machine.png rename to homedecor_gastronomy/textures/homedecor_soda_machine.png diff --git a/homedecor/textures/homedecor_steam.png b/homedecor_gastronomy/textures/homedecor_steam.png similarity index 100% rename from homedecor/textures/homedecor_steam.png rename to homedecor_gastronomy/textures/homedecor_steam.png diff --git a/homedecor/textures/homedecor_toaster_inv.png b/homedecor_gastronomy/textures/homedecor_toaster_inv.png similarity index 100% rename from homedecor/textures/homedecor_toaster_inv.png rename to homedecor_gastronomy/textures/homedecor_toaster_inv.png diff --git a/homedecor/textures/homedecor_toaster_sides.png b/homedecor_gastronomy/textures/homedecor_toaster_sides.png similarity index 100% rename from homedecor/textures/homedecor_toaster_sides.png rename to homedecor_gastronomy/textures/homedecor_toaster_sides.png diff --git a/homedecor/textures/homedecor_toaster_toploaf.png b/homedecor_gastronomy/textures/homedecor_toaster_toploaf.png similarity index 100% rename from homedecor/textures/homedecor_toaster_toploaf.png rename to homedecor_gastronomy/textures/homedecor_toaster_toploaf.png diff --git a/homedecor/textures/homedecor_wine_rack_inv.png b/homedecor_gastronomy/textures/homedecor_wine_rack_inv.png similarity index 100% rename from homedecor/textures/homedecor_wine_rack_inv.png rename to homedecor_gastronomy/textures/homedecor_wine_rack_inv.png diff --git a/homedecor_i18n/depends.txt b/homedecor_i18n/depends.txt deleted file mode 100755 index 77e8d97..0000000 --- a/homedecor_i18n/depends.txt +++ /dev/null @@ -1 +0,0 @@ -intllib? diff --git a/homedecor_i18n/init.lua b/homedecor_i18n/init.lua deleted file mode 100755 index 1256ff1..0000000 --- a/homedecor_i18n/init.lua +++ /dev/null @@ -1,7 +0,0 @@ - --- This file intentionally left blank. - -homedecor_i18n = { } - -local MP = minetest.get_modpath(minetest.get_current_modname()) -homedecor_i18n.gettext, homedecor_i18n.ngettext = dofile(MP.."/intllib.lua") diff --git a/homedecor_kitchen/depends.txt b/homedecor_kitchen/depends.txt new file mode 100644 index 0000000..d122ec0 --- /dev/null +++ b/homedecor_kitchen/depends.txt @@ -0,0 +1,8 @@ +homedecor_common +default +basic_materials +dye +moreblocks? +building_blocks? +technic? +bucket? diff --git a/homedecor_kitchen/init.lua b/homedecor_kitchen/init.lua new file mode 100644 index 0000000..905fecc --- /dev/null +++ b/homedecor_kitchen/init.lua @@ -0,0 +1,558 @@ +-- This file supplies Kitchen stuff like refrigerators, sinks, etc. + +local S = homedecor.gettext + +local function N_(x) return x end + +-- steel-textured fridge +homedecor.register("refrigerator_steel", { + mesh = "homedecor_refrigerator.obj", + tiles = { "homedecor_refrigerator_steel.png" }, + inventory_image = "homedecor_refrigerator_steel_inv.png", + description = S("Refrigerator (stainless steel)"), + groups = {snappy=3}, + sounds = default.node_sound_stone_defaults(), + selection_box = homedecor.nodebox.slab_y(2), + collision_box = homedecor.nodebox.slab_y(2), + expand = { top="placeholder" }, + infotext=S("Refrigerator"), + inventory = { + size=50, + lockable=true, + }, + on_rotate = screwdriver.rotate_simple +}) + +-- white, enameled fridge +homedecor.register("refrigerator_white", { + mesh = "homedecor_refrigerator.obj", + tiles = { "homedecor_refrigerator_white.png" }, + inventory_image = "homedecor_refrigerator_white_inv.png", + description = S("Refrigerator"), + groups = {snappy=3}, + selection_box = homedecor.nodebox.slab_y(2), + collision_box = homedecor.nodebox.slab_y(2), + sounds = default.node_sound_stone_defaults(), + expand = { top="placeholder" }, + infotext=S("Refrigerator"), + inventory = { + size=50, + lockable=true, + }, + on_rotate = screwdriver.rotate_simple +}) + +minetest.register_alias("homedecor:refrigerator_white_bottom", "homedecor:refrigerator_white") +minetest.register_alias("homedecor:refrigerator_white_top", "air") + +minetest.register_alias("homedecor:refrigerator_steel_bottom", "homedecor:refrigerator_steel") +minetest.register_alias("homedecor:refrigerator_steel_top", "air") + +minetest.register_alias("homedecor:refrigerator_white_bottom_locked", "homedecor:refrigerator_white_locked") +minetest.register_alias("homedecor:refrigerator_white_top_locked", "air") +minetest.register_alias("homedecor:refrigerator_locked", "homedecor:refrigerator_white_locked") + +minetest.register_alias("homedecor:refrigerator_steel_bottom_locked", "homedecor:refrigerator_steel_locked") +minetest.register_alias("homedecor:refrigerator_steel_top_locked", "air") + +-- kitchen "furnaces" +homedecor.register_furnace("oven", { + description = S("Oven"), + tile_format = "homedecor_oven_%s%s.png", + output_slots = 4, + output_width = 2, + cook_speed = 1.25, +}) + +homedecor.register_furnace("oven_steel", { + description = S("Oven (stainless steel)"), + tile_format = "homedecor_oven_steel_%s%s.png", + output_slots = 4, + output_width = 2, + cook_speed = 1.25, +}) + +homedecor.register_furnace("microwave_oven", { + description = S("Microwave Oven"), + tiles = { + "homedecor_microwave_top.png", "homedecor_microwave_top.png^[transformR180", + "homedecor_microwave_top.png^[transformR270", "homedecor_microwave_top.png^[transformR90", + "homedecor_microwave_top.png^[transformR180", "homedecor_microwave_front.png" + }, + tiles_active = { + "homedecor_microwave_top.png", "homedecor_microwave_top.png^[transformR180", + "homedecor_microwave_top.png^[transformR270", "homedecor_microwave_top.png^[transformR90", + "homedecor_microwave_top.png^[transformR180", "homedecor_microwave_front_active.png" + }, + output_slots = 2, + output_width = 2, + cook_speed = 1.5, + extra_nodedef_fields = { + node_box = { + type = "fixed", + fixed = { -0.5, -0.5, -0.125, 0.5, 0.125, 0.5 }, + }, + }, +}) + +homedecor.register("dishwasher", { + description = S("Dishwasher"), + drawtype = "nodebox", + tiles = { + "homedecor_dishwasher_top.png", + "homedecor_dishwasher_bottom.png", + "homedecor_dishwasher_sides.png", + "homedecor_dishwasher_sides.png^[transformFX", + "homedecor_dishwasher_back.png", + "homedecor_dishwasher_front.png" + }, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, + {-0.5, -0.5, -0.5, 0.5, 0.5, -0.4375}, + {-0.5, -0.5, -0.5, 0.5, 0.1875, 0.1875}, + {-0.4375, -0.5, -0.5, 0.4375, 0.4375, 0.4375}, + } + }, + selection_box = { type = "regular" }, + sounds = default.node_sound_stone_defaults(), + groups = { snappy = 3 }, +}) + +local materials = { N_("granite"), N_("marble"), N_("steel"), N_("wood") } + +for _, m in ipairs(materials) do +homedecor.register("dishwasher_"..m, { + description = S("Dishwasher (@1)", S(m)), + tiles = { + "homedecor_kitchen_cabinet_top_"..m..".png", + "homedecor_dishwasher_bottom.png", + "homedecor_dishwasher_sides.png", + "homedecor_dishwasher_sides.png^[transformFX", + "homedecor_dishwasher_back.png", + "homedecor_dishwasher_front.png" + }, + groups = { snappy = 3 }, + sounds = default.node_sound_stone_defaults(), +}) +end + +local cabinet_sides = "(default_wood.png^[transformR90)^homedecor_kitchen_cabinet_bevel.png" +local cabinet_bottom = "(default_wood.png^[colorize:#000000:100)^(homedecor_kitchen_cabinet_bevel.png^[colorize:#46321580)" + +local function N_(x) return x end + +local counter_materials = { "", N_("granite"), N_("marble"), N_("steel") } + +for _, mat in ipairs(counter_materials) do + + local desc = S("Kitchen Cabinet") + local material = "" + + if mat ~= "" then + desc = S("Kitchen Cabinet (@1 top)", S(mat)) + material = "_"..mat + end + + homedecor.register("kitchen_cabinet"..material, { + description = desc, + tiles = { 'homedecor_kitchen_cabinet_top'..material..'.png', + cabinet_bottom, + cabinet_sides, + cabinet_sides, + cabinet_sides, + 'homedecor_kitchen_cabinet_front.png'}, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + infotext=S("Kitchen Cabinet"), + inventory = { + size=24, + lockable=true, + }, + }) +end + +local kitchen_cabinet_half_box = homedecor.nodebox.slab_y(0.5, 0.5) +homedecor.register("kitchen_cabinet_half", { + description = S('Half-height Kitchen Cabinet (on ceiling)'), + tiles = { + cabinet_sides, + cabinet_bottom, + cabinet_sides, + cabinet_sides, + cabinet_sides, + 'homedecor_kitchen_cabinet_front_half.png' + }, + selection_box = kitchen_cabinet_half_box, + node_box = kitchen_cabinet_half_box, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + infotext=S("Kitchen Cabinet"), + inventory = { + size=12, + lockable=true, + }, +}) + +homedecor.register("kitchen_cabinet_with_sink", { + description = S("Kitchen Cabinet with sink"), + mesh = "homedecor_kitchen_sink.obj", + tiles = { + "homedecor_kitchen_sink_top.png", + "homedecor_kitchen_cabinet_front.png", + cabinet_sides, + cabinet_bottom + }, + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + infotext=S("Under-sink cabinet"), + inventory = { + size=16, + lockable=true, + }, + node_box = { + type = "fixed", + fixed = { + { -8/16, -8/16, -8/16, 8/16, 6/16, 8/16 }, + { -8/16, 6/16, -8/16, -6/16, 8/16, 8/16 }, + { 6/16, 6/16, -8/16, 8/16, 8/16, 8/16 }, + { -8/16, 6/16, -8/16, 8/16, 8/16, -6/16 }, + { -8/16, 6/16, 6/16, 8/16, 8/16, 8/16 }, + } + }, + on_destruct = function(pos) + homedecor.stop_particle_spawner({x=pos.x, y=pos.y+1, z=pos.z}) + end +}) + +local cp_cbox = { + type = "fixed", + fixed = { -0.375, -0.5, -0.5, 0.375, -0.3125, 0.3125 } +} + +homedecor.register("copper_pans", { + description = S("Copper pans"), + mesh = "homedecor_copper_pans.obj", + tiles = { "homedecor_polished_copper.png" }, + inventory_image = "homedecor_copper_pans_inv.png", + groups = { snappy=3 }, + selection_box = cp_cbox, + walkable = false, + on_place = minetest.rotate_node +}) + +local kf_cbox = { + type = "fixed", + fixed = { -2/16, -8/16, 1/16, 2/16, -1/16, 8/16 } +} + +homedecor.register("kitchen_faucet", { + mesh = "homedecor_kitchen_faucet.obj", + tiles = { "homedecor_generic_metal_bright.png" }, + inventory_image = "homedecor_kitchen_faucet_inv.png", + description = S("Kitchen Faucet"), + groups = {snappy=3}, + selection_box = kf_cbox, + walkable = false, + on_rotate = screwdriver.disallow, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + local below = minetest.get_node_or_nil({x=pos.x, y=pos.y-1, z=pos.z}) + if below and + below.name == "homedecor:sink" or + below.name == "homedecor:kitchen_cabinet_with_sink" or + below.name == "homedecor:kitchen_cabinet_with_sink_locked" then + local particledef = { + outlet = { x = 0, y = -0.19, z = 0.13 }, + velocity_x = { min = -0.05, max = 0.05 }, + velocity_y = -0.3, + velocity_z = { min = -0.1, max = 0 }, + spread = 0 + } + homedecor.start_particle_spawner(pos, node, particledef, "homedecor_faucet") + end + return itemstack + end, + on_destruct = homedecor.stop_particle_spawner +}) + +homedecor.register("paper_towel", { + mesh = "homedecor_paper_towel.obj", + tiles = { + "homedecor_generic_quilted_paper.png", + "default_wood.png" + }, + inventory_image = "homedecor_paper_towel_inv.png", + description = S("Paper towels"), + groups = { snappy=3 }, + walkable = false, + selection_box = { + type = "fixed", + fixed = { -0.4375, 0.125, 0.0625, 0.4375, 0.4375, 0.5 } + }, +}) + +-- crafting + + +minetest.register_craft({ + output = "homedecor:oven_steel", + recipe = { + {"basic_materials:heating_element", "default:steel_ingot", "basic_materials:heating_element", }, + {"default:steel_ingot", "moreblocks:iron_glass", "default:steel_ingot", }, + {"default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot", }, + } +}) + +minetest.register_craft({ + output = "homedecor:oven_steel", + recipe = { + {"basic_materials:heating_element", "default:steel_ingot", "basic_materials:heating_element", }, + {"default:steel_ingot", "default:glass", "default:steel_ingot", }, + {"default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot", }, + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:oven", + recipe = { + "homedecor:oven_steel", + "dye:white", + "dye:white", + } +}) + +minetest.register_craft({ + output = "homedecor:microwave_oven 2", + recipe = { + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot", }, + {"default:steel_ingot", "moreblocks:iron_glass", "basic_materials:ic", }, + {"default:steel_ingot", "default:copper_ingot", "basic_materials:energy_crystal_simple", }, + } +}) + +minetest.register_craft({ + output = "homedecor:microwave_oven 2", + recipe = { + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot", }, + {"default:steel_ingot", "default:glass", "basic_materials:ic", }, + {"default:steel_ingot", "default:copper_ingot", "basic_materials:energy_crystal_simple", }, + } +}) + +minetest.register_craft({ + output = "homedecor:refrigerator_steel", + recipe = { + {"default:steel_ingot", "homedecor:glowlight_small_cube", "default:steel_ingot", }, + {"default:steel_ingot", "default:copperblock", "default:steel_ingot", }, + {"default:steel_ingot", "default:clay", "default:steel_ingot", }, + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:refrigerator_white", + recipe = { + "homedecor:refrigerator_steel", + "dye:white", + "dye:white", + "dye:white", + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet", + recipe = { + {"group:wood", "group:stick", "group:wood", }, + {"group:wood", "group:stick", "group:wood", }, + {"group:wood", "group:stick", "group:wood", }, + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_steel", + recipe = { + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + {"", "homedecor:kitchen_cabinet", ""}, + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_steel", + recipe = { + {"moreblocks:slab_steelblock_1"}, + { "homedecor:kitchen_cabinet" }, + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_marble", + recipe = { + {"building_blocks:slab_marble"}, + {"homedecor:kitchen_cabinet"}, + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_marble", + recipe = { + {"technic:slab_marble_1"}, + {"homedecor:kitchen_cabinet"}, + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_granite", + recipe = { + {"technic:slab_granite_1"}, + {"homedecor:kitchen_cabinet"}, + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:kitchen_cabinet_half 2", + recipe = { "homedecor:kitchen_cabinet" } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_cabinet_with_sink", + recipe = { + {"group:wood", "default:steel_ingot", "group:wood", }, + {"group:wood", "default:steel_ingot", "group:wood", }, + {"group:wood", "group:stick", "group:wood", }, + } +}) + +minetest.register_craft( { + output = "homedecor:dishwasher", + recipe = { + { "basic_materials:ic", "building_blocks:slab_grate_1", "default:steel_ingot", }, + { "default:steel_ingot", "homedecor:shower_head", "basic_materials:motor" }, + { "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" } + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher", + recipe = { + { "basic_materials:ic", "homedecor:fence_chainlink", "default:steel_ingot", }, + { "default:steel_ingot", "homedecor:shower_head", "basic_materials:motor" }, + { "default:steel_ingot", "basic_materials:heating_element", "bucket:bucket_water" } + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_wood", + recipe = { + { "stairs:slab_wood" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_wood", + recipe = { + { "moreblocks:slab_wood" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_wood", + recipe = { + { "moreblocks:slab_wood_1" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_steel", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, + { "", "homedecor:dishwasher", "" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_steel", + recipe = { + { "moreblocks:slab_steelblock_1" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_marble", + recipe = { + { "building_blocks:slab_marble" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_marble", + recipe = { + { "technic:slab_marble_1" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:dishwasher_granite", + recipe = { + { "technic:slab_granite_1" }, + { "homedecor:dishwasher" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:kitchen_faucet", + recipe = { + { "", "default:steel_ingot" }, + { "default:steel_ingot", "" }, + { "homedecor:taps", "" } + }, +}) + +minetest.register_craft( { + output = "homedecor:kitchen_faucet", + recipe = { + { "default:steel_ingot","" }, + { "", "default:steel_ingot" }, + { "", "homedecor:taps" } + }, +}) + +minetest.register_craft( { + output = "homedecor:cutlery_set", + recipe = { + { "", "vessels:drinking_glass", "" }, + { "basic_materials:steel_strip", "building_blocks:slab_marble", "basic_materials:steel_strip" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:cutlery_set", + recipe = { + { "", "vessels:drinking_glass", "" }, + { "basic_materials:steel_strip", "building_blocks:micro_marble_1", "basic_materials:steel_strip" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:copper_pans", + recipe = { + { "basic_materials:copper_strip","","basic_materials:copper_strip" }, + { "default:copper_ingot","","default:copper_ingot" }, + { "default:copper_ingot","","default:copper_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:paper_towel", + recipe = { + { "homedecor:toilet_paper", "homedecor:toilet_paper" } + }, +}) diff --git a/homedecor/models/homedecor_copper_pans.obj b/homedecor_kitchen/models/homedecor_copper_pans.obj similarity index 100% rename from homedecor/models/homedecor_copper_pans.obj rename to homedecor_kitchen/models/homedecor_copper_pans.obj diff --git a/homedecor/models/homedecor_kitchen_faucet.obj b/homedecor_kitchen/models/homedecor_kitchen_faucet.obj similarity index 100% rename from homedecor/models/homedecor_kitchen_faucet.obj rename to homedecor_kitchen/models/homedecor_kitchen_faucet.obj diff --git a/homedecor/models/homedecor_kitchen_sink.obj b/homedecor_kitchen/models/homedecor_kitchen_sink.obj similarity index 100% rename from homedecor/models/homedecor_kitchen_sink.obj rename to homedecor_kitchen/models/homedecor_kitchen_sink.obj diff --git a/homedecor/models/homedecor_paper_towel.obj b/homedecor_kitchen/models/homedecor_paper_towel.obj similarity index 100% rename from homedecor/models/homedecor_paper_towel.obj rename to homedecor_kitchen/models/homedecor_paper_towel.obj diff --git a/homedecor/models/homedecor_refrigerator.obj b/homedecor_kitchen/models/homedecor_refrigerator.obj similarity index 100% rename from homedecor/models/homedecor_refrigerator.obj rename to homedecor_kitchen/models/homedecor_refrigerator.obj diff --git a/homedecor/textures/homedecor_copper_pans_inv.png b/homedecor_kitchen/textures/homedecor_copper_pans_inv.png similarity index 100% rename from homedecor/textures/homedecor_copper_pans_inv.png rename to homedecor_kitchen/textures/homedecor_copper_pans_inv.png diff --git a/homedecor/textures/homedecor_dishwasher_back.png b/homedecor_kitchen/textures/homedecor_dishwasher_back.png similarity index 100% rename from homedecor/textures/homedecor_dishwasher_back.png rename to homedecor_kitchen/textures/homedecor_dishwasher_back.png diff --git a/homedecor/textures/homedecor_dishwasher_bottom.png b/homedecor_kitchen/textures/homedecor_dishwasher_bottom.png similarity index 100% rename from homedecor/textures/homedecor_dishwasher_bottom.png rename to homedecor_kitchen/textures/homedecor_dishwasher_bottom.png diff --git a/homedecor/textures/homedecor_dishwasher_front.png b/homedecor_kitchen/textures/homedecor_dishwasher_front.png similarity index 100% rename from homedecor/textures/homedecor_dishwasher_front.png rename to homedecor_kitchen/textures/homedecor_dishwasher_front.png diff --git a/homedecor/textures/homedecor_dishwasher_sides.png b/homedecor_kitchen/textures/homedecor_dishwasher_sides.png similarity index 100% rename from homedecor/textures/homedecor_dishwasher_sides.png rename to homedecor_kitchen/textures/homedecor_dishwasher_sides.png diff --git a/homedecor/textures/homedecor_dishwasher_top.png b/homedecor_kitchen/textures/homedecor_dishwasher_top.png similarity index 100% rename from homedecor/textures/homedecor_dishwasher_top.png rename to homedecor_kitchen/textures/homedecor_dishwasher_top.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_bevel.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_bevel.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_bevel.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_bevel.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_front.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_front.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_front.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_front.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_front_half.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_front_half.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_front_half.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_front_half.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_top.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_top.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_top.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_top.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_top_granite.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_granite.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_top_granite.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_granite.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_top_marble.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_marble.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_top_marble.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_marble.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_top_steel.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_steel.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_top_steel.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_steel.png diff --git a/homedecor/textures/homedecor_kitchen_cabinet_top_wood.png b/homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_wood.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_cabinet_top_wood.png rename to homedecor_kitchen/textures/homedecor_kitchen_cabinet_top_wood.png diff --git a/homedecor/textures/homedecor_kitchen_faucet_inv.png b/homedecor_kitchen/textures/homedecor_kitchen_faucet_inv.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_faucet_inv.png rename to homedecor_kitchen/textures/homedecor_kitchen_faucet_inv.png diff --git a/homedecor/textures/homedecor_kitchen_sink_top.png b/homedecor_kitchen/textures/homedecor_kitchen_sink_top.png similarity index 100% rename from homedecor/textures/homedecor_kitchen_sink_top.png rename to homedecor_kitchen/textures/homedecor_kitchen_sink_top.png diff --git a/homedecor/textures/homedecor_microwave_front.png b/homedecor_kitchen/textures/homedecor_microwave_front.png similarity index 100% rename from homedecor/textures/homedecor_microwave_front.png rename to homedecor_kitchen/textures/homedecor_microwave_front.png diff --git a/homedecor/textures/homedecor_microwave_front_active.png b/homedecor_kitchen/textures/homedecor_microwave_front_active.png similarity index 100% rename from homedecor/textures/homedecor_microwave_front_active.png rename to homedecor_kitchen/textures/homedecor_microwave_front_active.png diff --git a/homedecor/textures/homedecor_microwave_top.png b/homedecor_kitchen/textures/homedecor_microwave_top.png similarity index 100% rename from homedecor/textures/homedecor_microwave_top.png rename to homedecor_kitchen/textures/homedecor_microwave_top.png diff --git a/homedecor/textures/homedecor_oven_bottom.png b/homedecor_kitchen/textures/homedecor_oven_bottom.png similarity index 100% rename from homedecor/textures/homedecor_oven_bottom.png rename to homedecor_kitchen/textures/homedecor_oven_bottom.png diff --git a/homedecor/textures/homedecor_oven_front.png b/homedecor_kitchen/textures/homedecor_oven_front.png similarity index 100% rename from homedecor/textures/homedecor_oven_front.png rename to homedecor_kitchen/textures/homedecor_oven_front.png diff --git a/homedecor/textures/homedecor_oven_front_active.png b/homedecor_kitchen/textures/homedecor_oven_front_active.png similarity index 100% rename from homedecor/textures/homedecor_oven_front_active.png rename to homedecor_kitchen/textures/homedecor_oven_front_active.png diff --git a/homedecor/textures/homedecor_oven_side.png b/homedecor_kitchen/textures/homedecor_oven_side.png similarity index 100% rename from homedecor/textures/homedecor_oven_side.png rename to homedecor_kitchen/textures/homedecor_oven_side.png diff --git a/homedecor/textures/homedecor_oven_steel_bottom.png b/homedecor_kitchen/textures/homedecor_oven_steel_bottom.png similarity index 100% rename from homedecor/textures/homedecor_oven_steel_bottom.png rename to homedecor_kitchen/textures/homedecor_oven_steel_bottom.png diff --git a/homedecor/textures/homedecor_oven_steel_front.png b/homedecor_kitchen/textures/homedecor_oven_steel_front.png similarity index 100% rename from homedecor/textures/homedecor_oven_steel_front.png rename to homedecor_kitchen/textures/homedecor_oven_steel_front.png diff --git a/homedecor/textures/homedecor_oven_steel_front_active.png b/homedecor_kitchen/textures/homedecor_oven_steel_front_active.png similarity index 100% rename from homedecor/textures/homedecor_oven_steel_front_active.png rename to homedecor_kitchen/textures/homedecor_oven_steel_front_active.png diff --git a/homedecor/textures/homedecor_oven_steel_side.png b/homedecor_kitchen/textures/homedecor_oven_steel_side.png similarity index 100% rename from homedecor/textures/homedecor_oven_steel_side.png rename to homedecor_kitchen/textures/homedecor_oven_steel_side.png diff --git a/homedecor/textures/homedecor_oven_steel_top.png b/homedecor_kitchen/textures/homedecor_oven_steel_top.png similarity index 100% rename from homedecor/textures/homedecor_oven_steel_top.png rename to homedecor_kitchen/textures/homedecor_oven_steel_top.png diff --git a/homedecor/textures/homedecor_oven_top.png b/homedecor_kitchen/textures/homedecor_oven_top.png similarity index 100% rename from homedecor/textures/homedecor_oven_top.png rename to homedecor_kitchen/textures/homedecor_oven_top.png diff --git a/homedecor/textures/homedecor_paper_towel_inv.png b/homedecor_kitchen/textures/homedecor_paper_towel_inv.png similarity index 100% rename from homedecor/textures/homedecor_paper_towel_inv.png rename to homedecor_kitchen/textures/homedecor_paper_towel_inv.png diff --git a/homedecor/textures/homedecor_refrigerator_steel.png b/homedecor_kitchen/textures/homedecor_refrigerator_steel.png similarity index 100% rename from homedecor/textures/homedecor_refrigerator_steel.png rename to homedecor_kitchen/textures/homedecor_refrigerator_steel.png diff --git a/homedecor/textures/homedecor_refrigerator_steel_inv.png b/homedecor_kitchen/textures/homedecor_refrigerator_steel_inv.png similarity index 100% rename from homedecor/textures/homedecor_refrigerator_steel_inv.png rename to homedecor_kitchen/textures/homedecor_refrigerator_steel_inv.png diff --git a/homedecor/textures/homedecor_refrigerator_white.png b/homedecor_kitchen/textures/homedecor_refrigerator_white.png similarity index 100% rename from homedecor/textures/homedecor_refrigerator_white.png rename to homedecor_kitchen/textures/homedecor_refrigerator_white.png diff --git a/homedecor/textures/homedecor_refrigerator_white_inv.png b/homedecor_kitchen/textures/homedecor_refrigerator_white_inv.png similarity index 100% rename from homedecor/textures/homedecor_refrigerator_white_inv.png rename to homedecor_kitchen/textures/homedecor_refrigerator_white_inv.png diff --git a/homedecor_laundry/depends.txt b/homedecor_laundry/depends.txt new file mode 100644 index 0000000..4536f36 --- /dev/null +++ b/homedecor_laundry/depends.txt @@ -0,0 +1,4 @@ +homedecor_common +default +basic_materials +bucket? diff --git a/homedecor_laundry/init.lua b/homedecor_laundry/init.lua new file mode 100644 index 0000000..ee59c8c --- /dev/null +++ b/homedecor_laundry/init.lua @@ -0,0 +1,112 @@ +-- laundry devices + +homedecor.register("washing_machine", { + description = "Washing Machine", + tiles = { + "homedecor_washing_machine_top.png", + "homedecor_washing_machine_bottom.png", + "homedecor_washing_machine_sides.png", + "homedecor_washing_machine_sides.png^[transformFX", + "homedecor_washing_machine_back.png", + "homedecor_washing_machine_front.png" + }, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0.375, 0.375}, + {-0.5, -0.5, 0.3125, 0.5, 0.5, 0.5}, + } + }, + selection_box = { type = "regular" }, + groups = { snappy = 3 }, +}) + +homedecor.register("dryer", { + description = "Tumble dryer", + tiles = { + "homedecor_dryer_top.png", + "homedecor_dryer_bottom.png", + "homedecor_dryer_sides.png", + "homedecor_dryer_sides.png^[transformFX", + "homedecor_dryer_back.png", + "homedecor_dryer_front.png" + }, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0.375, 0.375}, + {-0.5, -0.5, 0.3125, 0.5, 0.5, 0.5}, + } + }, + selection_box = { type = "regular" }, + groups = { snappy = 3 }, +}) + +local ib_cbox = { + type = "fixed", + fixed = { -6/16, -8/16, -4/16, 17/16, 4/16, 4/16 } +} + +homedecor.register("ironing_board", { + description = "Ironing board", + mesh = "homedecor_ironing_board.obj", + tiles = { + "wool_grey.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + }, + expand = {right = "placeholder"}, + groups = { snappy = 3 }, + selection_box = ib_cbox, + collision_box = ib_cbox +}) + +-- crafting + + +-- laundry stuff + +minetest.register_craft( { + output = "homedecor:washing_machine", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, + { "default:steel_ingot", "bucket:bucket_water", "default:steel_ingot" }, + { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" } + }, +}) + +minetest.register_craft( { + output = "homedecor:washing_machine", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, + { "default:steel_ingot", "bucket:bucket_water", "default:steel_ingot" }, + { "default:steel_ingot", "basic_materials:motor", "default:steel_ingot" } + }, +}) + +minetest.register_craft( { + output = "homedecor:dryer", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, + { "default:steel_ingot", "bucket:bucket_empty", "basic_materials:motor" }, + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } + }, +}) + +minetest.register_craft( { + output = "homedecor:dryer", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "basic_materials:ic" }, + { "default:steel_ingot", "bucket:bucket_empty", "basic_materials:motor" }, + { "default:steel_ingot", "basic_materials:heating_element", "default:steel_ingot" } + }, +}) + +minetest.register_craft( { + output = "homedecor:ironing_board", + recipe = { + { "wool:grey", "wool:grey", "wool:grey"}, + { "", "default:steel_ingot", "" }, + { "default:steel_ingot", "", "default:steel_ingot" } + }, +}) + diff --git a/homedecor/models/homedecor_ironing_board.obj b/homedecor_laundry/models/homedecor_ironing_board.obj similarity index 100% rename from homedecor/models/homedecor_ironing_board.obj rename to homedecor_laundry/models/homedecor_ironing_board.obj diff --git a/homedecor/textures/homedecor_dryer_back.png b/homedecor_laundry/textures/homedecor_dryer_back.png similarity index 100% rename from homedecor/textures/homedecor_dryer_back.png rename to homedecor_laundry/textures/homedecor_dryer_back.png diff --git a/homedecor/textures/homedecor_dryer_bottom.png b/homedecor_laundry/textures/homedecor_dryer_bottom.png similarity index 100% rename from homedecor/textures/homedecor_dryer_bottom.png rename to homedecor_laundry/textures/homedecor_dryer_bottom.png diff --git a/homedecor/textures/homedecor_dryer_front.png b/homedecor_laundry/textures/homedecor_dryer_front.png similarity index 100% rename from homedecor/textures/homedecor_dryer_front.png rename to homedecor_laundry/textures/homedecor_dryer_front.png diff --git a/homedecor/textures/homedecor_dryer_sides.png b/homedecor_laundry/textures/homedecor_dryer_sides.png similarity index 100% rename from homedecor/textures/homedecor_dryer_sides.png rename to homedecor_laundry/textures/homedecor_dryer_sides.png diff --git a/homedecor/textures/homedecor_dryer_top.png b/homedecor_laundry/textures/homedecor_dryer_top.png similarity index 100% rename from homedecor/textures/homedecor_dryer_top.png rename to homedecor_laundry/textures/homedecor_dryer_top.png diff --git a/homedecor/textures/homedecor_washing_machine_back.png b/homedecor_laundry/textures/homedecor_washing_machine_back.png similarity index 100% rename from homedecor/textures/homedecor_washing_machine_back.png rename to homedecor_laundry/textures/homedecor_washing_machine_back.png diff --git a/homedecor/textures/homedecor_washing_machine_bottom.png b/homedecor_laundry/textures/homedecor_washing_machine_bottom.png similarity index 100% rename from homedecor/textures/homedecor_washing_machine_bottom.png rename to homedecor_laundry/textures/homedecor_washing_machine_bottom.png diff --git a/homedecor/textures/homedecor_washing_machine_front.png b/homedecor_laundry/textures/homedecor_washing_machine_front.png similarity index 100% rename from homedecor/textures/homedecor_washing_machine_front.png rename to homedecor_laundry/textures/homedecor_washing_machine_front.png diff --git a/homedecor/textures/homedecor_washing_machine_sides.png b/homedecor_laundry/textures/homedecor_washing_machine_sides.png similarity index 100% rename from homedecor/textures/homedecor_washing_machine_sides.png rename to homedecor_laundry/textures/homedecor_washing_machine_sides.png diff --git a/homedecor/textures/homedecor_washing_machine_top.png b/homedecor_laundry/textures/homedecor_washing_machine_top.png similarity index 100% rename from homedecor/textures/homedecor_washing_machine_top.png rename to homedecor_laundry/textures/homedecor_washing_machine_top.png diff --git a/homedecor_lighting/depends.txt b/homedecor_lighting/depends.txt new file mode 100644 index 0000000..9dfccf1 --- /dev/null +++ b/homedecor_lighting/depends.txt @@ -0,0 +1,10 @@ +homedecor_common +default +basic_materials +unifieddyes +creative +moreblocks? +building_blocks? +darkage? +mesecons? +digilines? diff --git a/homedecor_lighting/init.lua b/homedecor_lighting/init.lua new file mode 100755 index 0000000..32625a0 --- /dev/null +++ b/homedecor_lighting/init.lua @@ -0,0 +1,1897 @@ +-- This file supplies the majority of homedecor's lighting + +local S = homedecor.gettext + +local function is_protected(pos, clicker) + if minetest.is_protected(pos, clicker:get_player_name()) then + minetest.record_protection_violation(pos, + clicker:get_player_name()) + return true + end + return false +end + +local hd_mesecons = minetest.get_modpath("mesecons") + +-- control and brightness for dimmable lamps + +local brightn_cycle = { + ["off"] = "low", + ["low"] = "med", + ["med"] = "hi", + ["hi"] = "max", + ["max"] = "off", + ["on"] = "off", +} + +local word_to_bright = { + ["off"] = 0, + ["low"] = 3, + ["med"] = 7, + ["hi"] = 11, + ["on"] = 14, + ["max"] = 14, +} + +local rules_alldir = { + {x = 0, y = 0, z = -1}, -- borrowed from lightstones + {x = 1, y = 0, z = 0}, + {x = -1, y = 0, z = 0}, + {x = 0, y = 0, z = 1}, + {x = 1, y = 1, z = 0}, + {x = 1, y = -1, z = 0}, + {x = -1, y = 1, z = 0}, + {x = -1, y = -1, z = 0}, + {x = 0, y = 1, z = 1}, + {x = 0, y = -1, z = 1}, + {x = 0, y = 1, z = -1}, + {x = 0, y = -1, z = -1}, + {x = 0, y = -1, z = 0}, +} + +-- mesecons compatibility + +local actions + +if hd_mesecons then + + actions = { + action_off = function(pos, node) + local sep = string.find(node.name, "_", -5) + local onoff = string.sub(node.name, sep + 1) + if minetest.get_meta(pos):get_int("toggled") > 0 then + minetest.swap_node(pos, { + name = string.sub(node.name, 1, sep - 1).."_off", + param2 = node.param2 + }) + end + end, + action_on = function(pos, node) + minetest.get_meta(pos):set_int("toggled", 1) + local sep = string.find(node.name, "_", -5) + local onoff = string.sub(node.name, sep + 1) + minetest.swap_node(pos, { + name = string.sub(node.name, 1, sep - 1).."_on", + param2 = node.param2 + }) + end + } + + homedecor.mesecon_wall_light = { + effector = table.copy(actions) + } + homedecor.mesecon_wall_light.effector.rules = mesecon.rules.wallmounted_get + + homedecor.mesecon_alldir_light = { + effector = table.copy(actions), + } + homedecor.mesecon_alldir_light.effector.rules = rules_alldir +end + +-- digilines compatibility +-- this one is based on the so-named one in Jeija's digilines mod + +local player_last_clicked = {} + +local digiline_on_punch + +if minetest.get_modpath("digilines") then + + local on_digiline_receive_string = function(pos, node, channel, msg) + if not msg or not channel then return end + local meta = minetest.get_meta(pos) + local setchan = meta:get_string("channel") + if setchan ~= channel then return end + + if msg ~= "" and (type(msg) == "string" or type(msg) == "number" ) then + local n = tonumber(msg) + local suff = word_to_bright[msg] or "invalid" + + local basename = string.sub(node.name, 1, string.find(node.name, "_", -5) - 1) + + if minetest.registered_nodes[basename.."_"..msg] then + minetest.swap_node(pos, {name = basename.."_"..msg, param2 = node.param2}) + elseif minetest.registered_nodes[basename.."_"..suff] then + minetest.swap_node(pos, {name = basename.."_"..suff, param2 = node.param2}) + elseif minetest.registered_nodes[basename.."_on"] + and (msg == "med" or msg == "hi" or msg == "max" or (n and n > 3)) then + minetest.swap_node(pos, {name = basename.."_on", param2 = node.param2}) + elseif minetest.registered_nodes[basename.."_off"] + and (msg == "low" or (n and n < 4)) then + minetest.swap_node(pos, {name = basename.."_off", param2 = node.param2}) + end + end + end + + minetest.register_on_player_receive_fields(function(player, formname, fields) + local name = player:get_player_name() + local pos = player_last_clicked[name] + if pos and formname == "homedecor:lamp_set_channel" then + if is_protected(pos, player) then return end + if (fields.channel) then + local meta = minetest.get_meta(pos) + meta:set_string("channel", fields.channel) + end + end + end) + + if hd_mesecons then + homedecor.digiline_wall_light = { + effector = { + action = on_digiline_receive_string, + }, + wire = { + rules = mesecon.rules.wallmounted_get + } + } + else + homedecor.digiline_wall_light = { + effector = { + action = on_digiline_receive_string, + }, + wire = { + rules = rules_alldir + } + } + end + + homedecor.digiline_alldir_light = { + effector = { + action = on_digiline_receive_string, + }, + wire = { + rules = rules_alldir + } + } + + function digiline_on_punch(pos, node, puncher, pointed_thing) + if is_protected(pos, puncher) then return end + + if puncher:get_player_control().sneak then + local name = puncher:get_player_name() + player_last_clicked[name] = pos + local meta = minetest.get_meta(pos) + local form = "field[channel;Channel;]" + minetest.show_formspec(name, "homedecor:lamp_set_channel", form) + end + end +end + +-- turn on/off, cycle brightness + +function homedecor.toggle_light(pos, node, clicker, itemstack, pointed_thing) + if is_protected(pos, clicker) then return end + local sep = string.find(node.name, "_", -5) + local level = string.sub(node.name, sep + 1) + local n = tonumber(level) or 0 + + if level == "on" then + newsuff = "_off" + elseif level == "off" then + newsuff = "_on" + elseif n > 3 then + newsuff = "_0" + else + newsuff = "_14" + end + + minetest.swap_node(pos, {name = string.sub(node.name, 1, sep - 1)..newsuff, param2 = node.param2}) +end + +------------------ +-- Dimmable lights + +--for light_brightn_name in pairs(word_to_bright) do + +for brightness_level = 0, 14 do + + local tiles + local overlay + + local onflag = (brightness_level > 0) + local nici = (brightness_level ~= 14) and 1 or nil + + local gen_ls_tex_white = "homedecor_generic_light_source_off.png" + if onflag then gen_ls_tex_white = "homedecor_generic_light_source_white.png" end + + local gen_ls_tex_yellow = "homedecor_generic_light_source_off.png" + if onflag then gen_ls_tex_yellow = "homedecor_generic_light_source_yellow.png" end + + local h = (brightness_level == 0) and "0" or string.format("%x", brightness_level+1) + local brightness_hex = tonumber("0xff"..string.rep(h, 6)) + + local glowlight_nodebox = { + half = homedecor.nodebox.slab_y(1/2), + quarter = homedecor.nodebox.slab_y(1/4), + small_cube = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } + }, + } + + local base = "homedecor_glowlight_base.png" + + local tb_edges = "homedecor_glowlight_tb_edges.png" + local sides_edges = "homedecor_glowlight_thick_sides_edges.png" + local sides_glare = "homedecor_glowlight_thick_sides_glare.png" + + if onflag then + tiles = { + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + } + overlay = { + { name = "homedecor_glowlight_top_glare.png", color = "white"}, + "", + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + } + else + tiles = { + base.."^"..tb_edges, + base.."^"..tb_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + } + overlay = nil + end + + minetest.register_node(":homedecor:glowlight_half_"..brightness_level, { + description = S("Thick Glowlight"), + tiles = tiles, + overlay_tiles = overlay, + use_texture_alpha = true, + drawtype = "nodebox", + paramtype = "light", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = { + type = "wallmounted", + wall_top = { -0.5, 0, -0.5, 0.5, 0.5, 0.5 }, + wall_bottom = { -0.5, -0.5, -0.5, 0.5, 0, 0.5 }, + wall_side = { -0.5, -0.5, -0.5, 0, 0.5, 0.5 } + }, + node_box = glowlight_nodebox.half, + groups = { snappy = 3, ud_param2_colorable = 1, not_in_creative_inventory = nici }, + light_source = brightness_level, + sounds = default.node_sound_glass_defaults(), + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:glowlight_half_on"}, inherit_color = true }, + } + }, + mesecons = homedecor.mesecon_wall_light, + digiline = homedecor.digiline_wall_light, + on_punch = digiline_on_punch + }) + + sides_edges = "homedecor_glowlight_thin_sides_edges.png" + sides_glare = "homedecor_glowlight_thin_sides_glare.png" + + if onflag then + tiles = { + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + } + overlay = { + { name = "homedecor_glowlight_top_glare.png", color = "white"}, + "", + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + } + else + tiles = { + base.."^"..tb_edges, + base.."^"..tb_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + } + overlay = nil + end + + minetest.register_node(":homedecor:glowlight_quarter_"..brightness_level, { + description = S("Thin Glowlight"), + tiles = tiles, + overlay_tiles = overlay, + use_texture_alpha = true, + drawtype = "nodebox", + paramtype = "light", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = { + type = "wallmounted", + wall_top = { -0.5, 0.25, -0.5, 0.5, 0.5, 0.5 }, + wall_bottom = { -0.5, -0.5, -0.5, 0.5, -0.25, 0.5 }, + wall_side = { -0.5, -0.5, -0.5, -0.25, 0.5, 0.5 } + }, + node_box = glowlight_nodebox.quarter, + groups = { snappy = 3, ud_param2_colorable = 1, not_in_creative_inventory = nici }, + light_source = brightness_level, + sounds = default.node_sound_glass_defaults(), + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:glowlight_quarter_on"}, inherit_color = true }, + } + }, + mesecons = homedecor.mesecon_wall_light, + digiline = homedecor.digiline_wall_light, + on_punch = digiline_on_punch + }) + + tb_edges = "homedecor_glowlight_cube_tb_edges.png" + sides_edges = "homedecor_glowlight_cube_sides_edges.png" + sides_glare = "homedecor_glowlight_cube_sides_glare.png" + + if onflag then + tiles = { + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..tb_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + "("..base.."^"..sides_edges..")^[brighten", + } + overlay = { + { name = "homedecor_glowlight_cube_top_glare.png", color = "white"}, + "", + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + { name = sides_glare, color = "white"}, + } + else + tiles = { + base.."^"..tb_edges, + base.."^"..tb_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + base.."^"..sides_edges, + } + overlay = nil + end + + minetest.register_node(":homedecor:glowlight_small_cube_"..brightness_level, { + description = S("Small Glowlight Cube"), + tiles = tiles, + overlay_tiles = overlay, + use_texture_alpha = true, + paramtype = "light", + paramtype2 = "colorwallmounted", + drawtype = "nodebox", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = { + type = "wallmounted", + wall_top = { -0.25, 0, -0.25, 0.25, 0.5, 0.25 }, + wall_bottom = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 }, + wall_side = { -0.5, -0.25, -0.25, 0, 0.25, 0.25 } + }, + node_box = glowlight_nodebox.small_cube, + groups = { snappy = 3, ud_param2_colorable = 1, not_in_creative_inventory = nici }, + light_source = brightness_level, + sounds = default.node_sound_glass_defaults(), + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:glowlight_small_cube_on"}, inherit_color = true }, + } + }, + mesecons = homedecor.mesecon_wall_light, + digiline = homedecor.digiline_wall_light, + on_punch = digiline_on_punch + }) + + local lighttex + + if onflag then + local b = (brightness_level > 6) and brightness_level or 6 + local brightened = "^[multiply:#"..string.rep(string.format("%x", b), 6) + + lighttex = { + name="homedecor_plasma_storm.png"..brightened, + animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, + } + else + lighttex = "homedecor_plasma_lamp_off.png" + end + + homedecor.register("plasma_lamp_"..brightness_level, { + description = S("Plasma Lamp/Light"), + drawtype = "mesh", + mesh = "plasma_lamp.obj", + tiles = { + "default_gold_block.png", + lighttex + }, + use_texture_alpha = true, + light_source = brightness_level, + sunlight_propagates = true, + groups = {cracky=3, oddly_breakable_by_hand=3, not_in_creative_inventory = nici}, + sounds = default.node_sound_glass_defaults(), + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:plasma_lamp_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + local gl_cbox = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 0.45, 0.25 }, + } + + homedecor.register("ground_lantern_"..brightness_level, { + description = S("Ground Lantern/Light"), + mesh = "homedecor_ground_lantern.obj", + tiles = { gen_ls_tex_yellow, "homedecor_generic_metal_wrought_iron.png" }, + use_texture_alpha = true, + inventory_image = "homedecor_ground_lantern_inv.png", + wield_image = "homedecor_ground_lantern_inv.png", + groups = {snappy=3, not_in_creative_inventory = nici}, + light_source = brightness_level, + selection_box = gl_cbox, + walkable = false, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:ground_lantern_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + local hl_cbox = { + type = "fixed", + fixed = { -0.25, -0.5, -0.2, 0.25, 0.5, 0.5 }, + } + + homedecor.register("hanging_lantern_"..brightness_level, { + description = S("Hanging Lantern/Light"), + mesh = "homedecor_hanging_lantern.obj", + tiles = { "homedecor_generic_metal_wrought_iron.png", gen_ls_tex_yellow }, + use_texture_alpha = true, + inventory_image = "homedecor_hanging_lantern_inv.png", + wield_image = "homedecor_hanging_lantern_inv.png", + groups = {snappy=3, not_in_creative_inventory = nici}, + light_source = brightness_level, + selection_box = hl_cbox, + walkable = false, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:hanging_lantern_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + local cl_cbox = { + type = "fixed", + fixed = { -0.35, -0.45, -0.35, 0.35, 0.5, 0.35 } + } + + homedecor.register("ceiling_lantern_"..brightness_level, { + drawtype = "mesh", + mesh = "homedecor_ceiling_lantern.obj", + tiles = { gen_ls_tex_yellow, "homedecor_generic_metal_wrought_iron.png" }, + use_texture_alpha = true, + inventory_image = "homedecor_ceiling_lantern_inv.png", + description = S("Ceiling Lantern/Light"), + groups = {snappy=3, not_in_creative_inventory = nici}, + light_source = brightness_level, + selection_box = cl_cbox, + walkable = false, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:ceiling_lantern_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + +--[[ if minetest.get_modpath("darkage") then + sm_light = default.LIGHT_MAX-5 + else]] + + homedecor.register("lattice_lantern_large_"..brightness_level, { + description = S("Lattice lantern/Light (large)"), + tiles = { gen_ls_tex_yellow.."^homedecor_lattice_lantern_large_overlay.png" }, + groups = { snappy = 3, not_in_creative_inventory = nici }, + light_source = brightness_level, + sounds = default.node_sound_glass_defaults(), + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:lattice_lantern_large_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) +-- end + + local lighttex_tb + local lighttex_sides + + if onflag then + lighttex_tb = "homedecor_lattice_lantern_small_tb_light.png" + lighttex_sides = "homedecor_lattice_lantern_small_sides_light.png" + else + lighttex_tb = "homedecor_generic_light_source_off.png" + lighttex_sides = "homedecor_generic_light_source_off.png" + end + + homedecor.register("lattice_lantern_small_"..brightness_level, { + description = S("Lattice lantern/light (small)"), + tiles = { + lighttex_tb.."^homedecor_lattice_lantern_small_tb_overlay.png", + lighttex_tb.."^homedecor_lattice_lantern_small_tb_overlay.png", + lighttex_sides.."^homedecor_lattice_lantern_small_sides_overlay.png" + }, + selection_box = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } + }, + node_box = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 0, 0.25 } + }, + groups = { snappy = 3, not_in_creative_inventory = nici }, + light_source = brightness_level, + sounds = default.node_sound_glass_defaults(), + on_place = minetest.rotate_node, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:lattice_lantern_small_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + -- "gooseneck" style desk lamps + + local dlamp_cbox = { + type = "wallmounted", + wall_side = { -0.2, -0.5, -0.15, 0.32, 0.12, 0.15 }, + } + + homedecor.register("desk_lamp_"..brightness_level, { + description = S("Desk Lamp/Light"), + mesh = "homedecor_desk_lamp.obj", + tiles = { + "homedecor_generic_metal.png", + "homedecor_generic_metal.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + { name = gen_ls_tex_white, color = brightness_hex }, + }, + inventory_image = "homedecor_desk_lamp_inv.png", + paramtype = "light", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = dlamp_cbox, + node_box = dlamp_cbox, + walkable = false, + groups = {snappy=3, ud_param2_colorable = 1, not_in_creative_inventory = nici}, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rotate = unifieddyes.fix_after_screwdriver_nsew, + light_source = brightness_level, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:desk_lamp_on"}, inherit_color = true }, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + -- "kitchen"/"dining room" ceiling lamp + + homedecor.register("ceiling_lamp_"..brightness_level, { + description = S("Ceiling Lamp/Light"), + mesh = "homedecor_ceiling_lamp.obj", + tiles = { + "homedecor_generic_metal_brass.png", + "homedecor_ceiling_lamp_glass.png", + gen_ls_tex_white, + { name = "homedecor_generic_plastic.png", color = 0xff442d04 }, + }, + inventory_image = "homedecor_ceiling_lamp_inv.png", + light_source = brightness_level, + groups = {snappy=3, not_in_creative_inventory = nici}, + walkable = false, + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:ceiling_lamp_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + local tlamp_cbox = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 0.5, 0.25 } + } + + local slamp_cbox = { + type = "fixed", + fixed = { -0.25, -0.5, -0.25, 0.25, 1.5, 0.25 } + } + + local wool_brightened = "wool_grey.png^[colorize:#ffffff:"..(brightness_level * 15) + + homedecor.register("table_lamp_"..brightness_level, { + description = S("Table Lamp/Light"), + mesh = "homedecor_table_lamp.obj", + tiles = { + wool_brightened, + { name = gen_ls_tex_white, color = brightness_hex }, + { name = "homedecor_generic_wood_red.png", color = 0xffffffff }, + { name = "homedecor_generic_metal.png", color = homedecor.color_black }, + }, + inventory_image = "homedecor_table_lamp_foot_inv.png^homedecor_table_lamp_top_inv.png", + paramtype = "light", + paramtype2 = "color", + palette = "unifieddyes_palette_extended.png", + walkable = false, + light_source = brightness_level, + selection_box = tlamp_cbox, + sounds = default.node_sound_wood_defaults(), + groups = {cracky=2,oddly_breakable_by_hand=1, ud_param2_colorable = 1, not_in_creative_inventory=nici }, + drop = { + items = { + {items = {"homedecor:table_lamp_hi"}, inherit_color = true }, + } + }, + digiline = homedecor.digiline_alldir_light, + mesecons = homedecor.mesecon_wall_light, + on_rightclick = homedecor.toggle_light, + on_punch = digiline_on_punch, + on_dig = unifieddyes.on_dig, + }) + + homedecor.register("standing_lamp_"..brightness_level, { + description = S("Standing Lamp/Light"), + mesh = "homedecor_standing_lamp.obj", + tiles = { + wool_brightened, + { name = gen_ls_tex_white, color = brightness_hex }, + { name = "homedecor_generic_wood_red.png", color = 0xffffffff }, + { name = "homedecor_generic_metal.png", color = homedecor.color_black }, + }, + inventory_image = "homedecor_standing_lamp_foot_inv.png^homedecor_standing_lamp_top_inv.png", + paramtype = "light", + paramtype2 = "color", + palette = "unifieddyes_palette_extended.png", + walkable = false, + light_source = brightness_level, + groups = {cracky=2,oddly_breakable_by_hand=1, ud_param2_colorable = 1, not_in_creative_inventory=nici }, + selection_box = slamp_cbox, + sounds = default.node_sound_wood_defaults(), + on_rotate = screwdriver.rotate_simple, + --expand = { top="air" }, + drop = { + items = { + {items = {"homedecor:standing_lamp_hi"}, inherit_color = true }, + } + }, + digiline = homedecor.digiline_alldir_light, + mesecons = homedecor.mesecon_wall_light, + on_rightclick = homedecor.toggle_light, + on_punch = digiline_on_punch, + on_dig = unifieddyes.on_dig, + }) +end + +------------------------------------------ +-- Simple non-dimmable, on/off-only lights + +for _, light_brightn_name in ipairs({"off", "on"}) do + + local onflag = (light_brightn_name == "on") + local nici = (light_brightn_name == "off") and 1 or nil + local nici_m = (light_brightn_name == "off") and 1 or nil + local on_rc = homedecor.toggle_light + local di = "on" + + if hd_mesecons then + nici_m = (light_brightn_name ~= "off") and 1 or nil + on_rc = nil + di = "off" + end + + local gen_ls_tex_white = "homedecor_generic_light_source_off.png" + if onflag then gen_ls_tex_white = "homedecor_generic_light_source_white.png" end + + local gen_ls_tex_yellow = "homedecor_generic_light_source_off.png" + if onflag then gen_ls_tex_yellow = "homedecor_generic_light_source_yellow.png" end + + local lighttex = "homedecor_blanktile.png" + if onflag then + lighttex = { + name = "homedecor_plasma_ball_streamers.png", + animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=2.0}, + } + end + + homedecor.register("plasma_ball_"..light_brightn_name, { + description = S("Plasma Ball/light"), + mesh = "homedecor_plasma_ball.obj", + tiles = { + { name = "homedecor_generic_plastic.png", color = homedecor.color_black }, + lighttex, + "homedecor_plasma_ball_glass.png" + }, + inventory_image = "homedecor_plasma_ball_inv.png", + selection_box = { + type = "fixed", + fixed = { -0.1875, -0.5, -0.1875, 0.1875, 0, 0.1875 } + }, + walkable = false, + use_texture_alpha = true, + light_source = onflag and (default.LIGHT_MAX - 5) or nil, + sunlight_propagates = true, + groups = {cracky=3, oddly_breakable_by_hand=3, not_in_creative_inventory = nici}, + sounds = default.node_sound_glass_defaults(), + on_rightclick = homedecor.toggle_light, + drop = { + items = { + {items = {"homedecor:plasma_ball_on"}}, + } + }, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) + + local wl_cbox = { + type = "fixed", + fixed = { -0.2, -0.5, 0, 0.2, 0.5, 0.5 }, + } + + -- rope lighting + + minetest.register_node(":homedecor:rope_light_on_floor_"..light_brightn_name, { + description = "Rope lighting (on floor)", + inventory_image = "homedecor_rope_light_on_floor.png", + paramtype = "light", + light_source = word_to_bright[light_brightn_name], + walkable = false, + sunlight_propagates = true, + tiles = { gen_ls_tex_white }, + drawtype = "nodebox", + node_box = { + type = "connected", + fixed = {}, + connect_front = { -1/16, -8/16, -8/16, 1/16, -6/16, 1/16 }, + connect_left = { -8/16, -8/16, -1/16, 1/16, -6/16, 1/16 }, + connect_back = { -1/16, -8/16, -1/16, 1/16, -6/16, 8/16 }, + connect_right = { -1/16, -8/16, -1/16, 8/16, -6/16, 1/16 }, + disconnected_sides = { + { -6/16, -8/16, -6/16, -4/16, -6/16, 6/16 }, + { 4/16, -8/16, -6/16, 6/16, -6/16, 6/16 }, + { -6/16, -8/16, -6/16, 6/16, -6/16, -4/16 }, + { -6/16, -8/16, 4/16, 6/16, -6/16, 6/16 } + }, + }, + connects_to = { + "homedecor:rope_light_on_floor_on", + "homedecor:rope_light_on_floor_off", + "group:mesecon_conductor_craftable" + }, + groups = {cracky=3, oddly_breakable_by_hand=3, not_in_creative_inventory = nici_m}, + sounds = default.node_sound_stone_defaults(), + drop = { + items = { + {items = {"homedecor:rope_light_on_floor_"..di} }, + } + }, + on_rightclick = on_rc, + mesecons = { + conductor = { + state = mesecon and (onflag and mesecon.state.on or mesecon.state.off), + onstate = "homedecor:rope_light_on_floor_on", + offstate = "homedecor:rope_light_on_floor_off", + rules = rules_alldir + }, + } + }) + + minetest.register_node(":homedecor:rope_light_on_ceiling_"..light_brightn_name, { + description = "Rope lighting (on ceiling)", + inventory_image = "homedecor_rope_light_on_ceiling.png", + paramtype = "light", + light_source = word_to_bright[light_brightn_name], + walkable = false, + sunlight_propagates = true, + tiles = { gen_ls_tex_white }, + drawtype = "nodebox", + node_box = { + type = "connected", + fixed = {}, + connect_front = { -1/16, 8/16, -8/16, 1/16, 6/16, 1/16 }, + connect_left = { -8/16, 8/16, -1/16, 1/16, 6/16, 1/16 }, + connect_back = { -1/16, 8/16, -1/16, 1/16, 6/16, 8/16 }, + connect_right = { -1/16, 8/16, -1/16, 8/16, 6/16, 1/16 }, + disconnected_sides = { + { -6/16, 8/16, -6/16, -4/16, 6/16, 6/16 }, + { 4/16, 8/16, -6/16, 6/16, 6/16, 6/16 }, + { -6/16, 8/16, -6/16, 6/16, 6/16, -4/16 }, + { -6/16, 8/16, 4/16, 6/16, 6/16, 6/16 } + }, + }, + connects_to = { + "homedecor:rope_light_on_ceiling_on", + "homedecor:rope_light_on_ceiling_off", + "group:mesecon_conductor_craftable" + }, + groups = {cracky=3, oddly_breakable_by_hand=3, not_in_creative_inventory = nici_m}, + sounds = default.node_sound_stone_defaults(), + drop = { + items = { + {items = {"homedecor:rope_light_on_ceiling_"..di}}, + } + }, + on_rightclick = on_rc, + mesecons = { + conductor = { + state = mesecon and (onflag and mesecon.state.on or mesecon.state.off), + onstate = "homedecor:rope_light_on_ceiling_on", + offstate = "homedecor:rope_light_on_ceiling_off", + rules = rules_alldir + }, + } + }) + + homedecor.register("wall_lamp_"..light_brightn_name, { + description = S("Wall Lamp/light"), + mesh = "homedecor_wall_lamp.obj", + tiles = { + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + homedecor.lux_wood, + gen_ls_tex_yellow, + "homedecor_generic_metal_wrought_iron.png" + }, + use_texture_alpha = true, + inventory_image = "homedecor_wall_lamp_inv.png", + groups = {snappy=3, not_in_creative_inventory = nici}, + light_source = onflag and (default.LIGHT_MAX - 3) or nil, + selection_box = wl_cbox, + walkable = false, + drop = { + items = { + {items = {"homedecor:wall_lamp_on"}}, + } + }, + on_rightclick = homedecor.toggle_light, + mesecons = homedecor.mesecon_alldir_light, + digiline = homedecor.digiline_alldir_light, + on_punch = digiline_on_punch + }) +end + +------------------------------------------------------- +-- Light sources and other items that don't turn on/off + +local tc_cbox = { + type = "fixed", + fixed = { + { -0.1875, -0.5, -0.1875, 0.1875, 0.375, 0.1875 }, + } +} + +homedecor.register("candle", { + description = S("Thick Candle"), + mesh = "homedecor_candle_thick.obj", + tiles = { + 'homedecor_candle_sides.png', + {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, + }, + inventory_image = "homedecor_candle_inv.png", + selection_box = tc_cbox, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-4, +}) + +local c_cbox = { + type = "fixed", + fixed = { + { -0.125, -0.5, -0.125, 0.125, 0.05, 0.125 }, + } +} + +homedecor.register("candle_thin", { + description = S("Thin Candle"), + mesh = "homedecor_candle_thin.obj", + tiles = { + 'homedecor_candle_sides.png', + {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, + }, + inventory_image = "homedecor_candle_thin_inv.png", + selection_box = c_cbox, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-4, +}) + +local cs_cbox = { + type = "fixed", + fixed = { + { -0.15625, -0.5, -0.15625, 0.15625, 0.3125, 0.15625 }, + } +} + +homedecor.register("candlestick_wrought_iron", { + description = S("Candlestick (wrought iron)"), + mesh = "homedecor_candlestick.obj", + tiles = { + "homedecor_candle_sides.png", + {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, + "homedecor_generic_metal_wrought_iron.png", + }, + inventory_image = "homedecor_candlestick_wrought_iron_inv.png", + selection_box = cs_cbox, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-4, +}) + +homedecor.register("candlestick_brass", { + description = S("Candlestick (brass)"), + mesh = "homedecor_candlestick.obj", + tiles = { + "homedecor_candle_sides.png", + {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, + "homedecor_generic_metal_brass.png", + }, + inventory_image = "homedecor_candlestick_brass_inv.png", + selection_box = cs_cbox, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-4, +}) + +homedecor.register("wall_sconce", { + description = S("Wall sconce"), + mesh = "homedecor_wall_sconce.obj", + tiles = { + 'homedecor_candle_sides.png', + {name="homedecor_candle_flame.png", animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=3.0}}, + 'homedecor_wall_sconce_back.png', + 'homedecor_generic_metal_wrought_iron.png', + }, + inventory_image = "homedecor_wall_sconce_inv.png", + selection_box = { + type = "fixed", + fixed = { -0.1875, -0.25, 0.3125, 0.1875, 0.25, 0.5 } + }, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-4, +}) + +local ol_cbox = { + type = "fixed", + fixed = { + { -5/16, -8/16, -3/16, 5/16, 4/16, 3/16 }, + } +} + +homedecor.register("oil_lamp", { + description = S("Oil lamp/Light (hurricane)"), + mesh = "homedecor_oil_lamp.obj", + tiles = { + "homedecor_generic_metal_brass.png", + { name = "homedecor_generic_metal.png", color = homedecor.color_black }, + { name = "homedecor_generic_metal.png", color = 0xffa00000 }, + "homedecor_oil_lamp_wick.png", + { name = "homedecor_generic_metal.png", color = 0xffa00000 }, + "homedecor_oil_lamp_glass.png", + }, + use_texture_alpha = true, + inventory_image = "homedecor_oil_lamp_inv.png", + selection_box = ol_cbox, + walkable = false, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-3, + sounds = default.node_sound_glass_defaults(), +}) + +homedecor.register("oil_lamp_tabletop", { + description = S("Oil Lamp/Light (tabletop)"), + mesh = "homedecor_oil_lamp_tabletop.obj", + tiles = {"homedecor_oil_lamp_tabletop.png"}, + inventory_image = "homedecor_oil_lamp_tabletop_inv.png", + selection_box = ol_cbox, + collision_box = ol_cbox, + groups = { snappy = 3 }, + light_source = default.LIGHT_MAX-3, + sounds = default.node_sound_glass_defaults(), +}) + +local chains_sbox = { + type = "fixed", + fixed = { -0.1, -0.5, -0.1, 0.1, 0.5, 0.1 } +} + +local topchains_sbox = { + type = "fixed", + fixed = { + { -0.25, 0.35, -0.25, 0.25, 0.5, 0.25 }, + { -0.1, -0.5, -0.1, 0.1, 0.4, 0.1 } + } +} + +minetest.register_node(":homedecor:chain_steel_top", { + description = S("Hanging chain (ceiling mount, steel)"), + drawtype = "mesh", + mesh = "homedecor_chains_top.obj", + tiles = {"basic_materials_chain_steel.png"}, + walkable = false, + climbable = true, + sunlight_propagates = true, + paramtype = "light", + inventory_image = "basic_materials_chain_steel_inv.png", + groups = {cracky=3}, + selection_box = topchains_sbox, +}) + +minetest.register_node(":homedecor:chain_brass_top", { + description = S("Hanging chain (ceiling mount, brass)"), + drawtype = "mesh", + mesh = "homedecor_chains_top.obj", + tiles = {"basic_materials_chain_brass.png"}, + walkable = false, + climbable = true, + sunlight_propagates = true, + paramtype = "light", + inventory_image = "basic_materials_chain_brass_inv.png", + groups = {cracky=3}, + selection_box = topchains_sbox, +}) + +minetest.register_node(":homedecor:chandelier_steel", { + description = S("Chandelier (steel)"), + paramtype = "light", + light_source = 12, + walkable = false, + climbable = true, + sunlight_propagates = true, + tiles = { + "basic_materials_chain_steel.png", + "homedecor_candle_flat.png", + { + name="homedecor_candle_flame.png", + animation={ + type="vertical_frames", + aspect_w=16, + aspect_h=16, + length=3.0 + } + } + }, + drawtype = "mesh", + mesh = "homedecor_chandelier.obj", + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node(":homedecor:chandelier_brass", { + description = S("Chandelier (brass)"), + paramtype = "light", + light_source = 12, + walkable = false, + climbable = true, + sunlight_propagates = true, + tiles = { + "basic_materials_chain_brass.png", + "homedecor_candle_flat.png", + { + name="homedecor_candle_flame.png", + animation={ + type="vertical_frames", + aspect_w=16, + aspect_h=16, + length=3.0 + } + } + }, + drawtype = "mesh", + mesh = "homedecor_chandelier.obj", + groups = {cracky=3}, + sounds = default.node_sound_stone_defaults(), +}) + +homedecor.register("torch_wall", { + description = S("Wall Torch"), + mesh = "forniture_torch.obj", + tiles = { + { + name="forniture_torch_flame.png", + animation={ + type="vertical_frames", + aspect_w=40, + aspect_h=40, + length=1.0, + }, + }, + { name = "homedecor_generic_metal.png", color = homedecor.color_black }, + { name = "homedecor_generic_metal.png", color = homedecor.color_med_grey }, + "forniture_coal.png", + }, + inventory_image="forniture_torch_inv.png", + walkable = false, + light_source = 14, + selection_box = { + type = "fixed", + fixed = { -0.15, -0.45, 0.15, 0.15,0.35, 0.5 }, + }, + groups = {cracky=3}, +}) + +-- table lamps and standing lamps + +local lamp_colors = { + "white", + "blue", + "green", + "pink", + "red", + "violet", +} + +-- conversion LBM for param2 coloring + +homedecor.old_static_nodes = { + "homedecor:glowlight_quarter_white", + "homedecor:glowlight_quarter_yellow", + "homedecor:glowlight_half_white", + "homedecor:glowlight_half_yellow", + "homedecor:glowlight_small_cube_white", + "homedecor:glowlight_small_cube_yellow" +} + +local lamp_power = {"off", "low", "med", "hi", "max"} + +for _, power in ipairs(lamp_power) do + for _, color in ipairs(lamp_colors) do + table.insert(homedecor.old_static_nodes, "homedecor:table_lamp_"..color.."_"..power) + table.insert(homedecor.old_static_nodes, "homedecor:standing_lamp_"..color.."_"..power) + end +end + +minetest.register_lbm({ + name = ":homedecor:convert_lighting", + label = "Convert homedecor glowlights, table lamps, and standing lamps to use param2 color", + run_at_every_load = false, + nodenames = homedecor.old_static_nodes, + action = function(pos, node) + local name = node.name + local newname + local color + + if string.find(name, "small_cube") then + newname = "homedecor:glowlight_small_cube" + elseif string.find(name, "glowlight_half") then + newname = "homedecor:glowlight_half" + elseif string.find(name, "glowlight_quarter") then + newname = "homedecor:glowlight_quarter" + end + + local lampname + if string.find(name, "standing_lamp") then + lampname = "homedecor:standing_lamp" + elseif string.find(name, "table_lamp") then + lampname = "homedecor:table_lamp" + end + if lampname then + newname = lampname + if string.find(name, "_off") then + newname = newname.."_off" + elseif string.find(name, "_low") then + newname = newname.."_low" + elseif string.find(name, "_med") then + newname = newname.."_med" + elseif string.find(name, "_hi") then + newname = newname.."_hi" + elseif string.find(name, "_max") then + newname = newname.."_max" + end + end + + if string.find(name, "red") then + color = "red" + elseif string.find(name, "pink") then + color = "pink" + elseif string.find(name, "green") then + color = "green" + elseif string.find(name, "blue") then + color = "blue" + elseif string.find(name, "yellow") then + color = "yellow" + elseif string.find(name, "violet") then + color = "violet" + else + color = "white" + end + + local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "extended") + + local old_fdir + local new_node = newname + local new_fdir = 1 + local param2 + + if string.find(name, "glowlight") then + paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") + + old_fdir = math.floor(node.param2 / 4) + + if old_fdir == 5 then + new_fdir = 0 + elseif old_fdir == 1 then + new_fdir = 5 + elseif old_fdir == 2 then + new_fdir = 4 + elseif old_fdir == 3 then + new_fdir = 3 + elseif old_fdir == 4 then + new_fdir = 2 + elseif old_fdir == 0 then + new_fdir = 1 + end + param2 = paletteidx + new_fdir + else + param2 = paletteidx + end + + local meta = minetest.get_meta(pos) + + if string.find(name, "table_lamp") or string.find(name, "standing_lamp") then + meta:set_string("palette", "ext") + end + + minetest.set_node(pos, { name = new_node, param2 = param2 }) + meta:set_string("dye", "unifieddyes:"..color) + end +}) + +-- this one's for the small "gooseneck" desk lamps + +homedecor.old_static_desk_lamps = { + "homedecor:desk_lamp_red", + "homedecor:desk_lamp_blue", + "homedecor:desk_lamp_green", + "homedecor:desk_lamp_violet", +} + +minetest.register_lbm({ + name = ":homedecor:convert_desk_lamps", + label = "Convert homedecor desk lamps to use param2 color", + run_at_every_load = false, + nodenames = homedecor.old_static_desk_lamps, + action = function(pos, node) + local name = node.name + local color = string.sub(name, string.find(name, "_", -8) + 1) + + if color == "green" then + color = "medium_green" + elseif color == "violet" then + color = "magenta" + end + + local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") + 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 + + local param2 = paletteidx + new_fdir + + minetest.set_node(pos, { name = "homedecor:desk_lamp", param2 = param2 }) + local meta = minetest.get_meta(pos) + meta:set_string("dye", "unifieddyes:"..color) + end +}) + + + +-- crafting + +minetest.register_craft({ + output = 'homedecor:chain_steel_top', + recipe = { + {'default:steel_ingot'}, + {'basic_materials:chainlink_steel'}, + }, +}) + +minetest.register_craft({ + output = 'homedecor:chandelier_steel', + recipe = { + {'', 'basic_materials:chainlink_steel', ''}, + {'default:torch', 'basic_materials:chainlink_steel', 'default:torch'}, + {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'}, + } +}) + +-- brass versions + +minetest.register_craft({ + output = 'homedecor:chain_brass_top', + recipe = { + {'basic_materials:brass_ingot'}, + {'basic_materials:chainlink_brass'}, + }, +}) + +minetest.register_craft({ + output = 'homedecor:chandelier_brass', + recipe = { + {'', 'basic_materials:chainlink_brass', ''}, + {'default:torch', 'basic_materials:chainlink_brass', 'default:torch'}, + {'basic_materials:brass_ingot', 'basic_materials:brass_ingot', 'basic_materials:brass_ingot'}, + } +}) + +-- candles + +minetest.register_craft({ + output = "homedecor:candle_thin 4", + recipe = { + {"farming:string" }, + {"basic_materials:paraffin" } + } +}) + +minetest.register_craft({ + output = "homedecor:candle 2", + recipe = { + {"farming:string" }, + {"basic_materials:paraffin" }, + {"basic_materials:paraffin" } + } +}) + +minetest.register_craft({ + output = "homedecor:wall_sconce 2", + recipe = { + {"default:iron_lump", "", ""}, + {"default:iron_lump", "homedecor:candle", ""}, + {"default:iron_lump", "", ""}, + } +}) + +minetest.register_craft({ + output = "homedecor:candlestick_wrought_iron", + recipe = { + {""}, + {"homedecor:candle_thin"}, + {"default:iron_lump"}, + } +}) + +minetest.register_craft({ + output = "homedecor:candlestick_brass", + recipe = { + {""}, + {"homedecor:candle_thin"}, + {"basic_materials:brass_ingot"}, + } +}) + +minetest.register_craft({ + output = "homedecor:oil_lamp", + recipe = { + { "", "vessels:glass_bottle", "" }, + { "", "farming:string", "" }, + { "default:steel_ingot", "basic_materials:oil_extract", "default:steel_ingot" } + } +}) + +minetest.register_craft({ + output = "homedecor:oil_lamp_tabletop", + recipe = { + { "", "vessels:glass_bottle", "" }, + { "", "farming:string", "" }, + { "default:iron_lump", "basic_materials:oil_extract", "default:iron_lump" } + } +}) + +-- Wrought-iron wall latern + +minetest.register_craft({ + output = "homedecor:ground_lantern", + recipe = { + { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, + { "default:iron_lump", "default:torch", "default:iron_lump" }, + { "", "default:iron_lump", "" } + } +}) + +-- wood-lattice lamps + +if minetest.get_modpath("darkage") then + minetest.register_craft( { + output = "homedecor:lattice_lantern_small 8", + recipe = { + { "darkage:lamp" }, + }, + }) + + minetest.register_craft( { + output = "darkage:lamp", + type = "shapeless", + recipe = { + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + }, + }) +else + minetest.register_craft( { + output = "homedecor:lattice_lantern_large 2", + recipe = { + { "dye:black", "dye:yellow", "dye:black" }, + { "group:stick", "building_blocks:woodglass", "group:stick" }, + { "group:stick", "basic_materials:energy_crystal_simple", "group:stick" } + }, + }) + + minetest.register_craft( { + output = "homedecor:lattice_lantern_small 8", + recipe = { + { "homedecor:lattice_lantern_large" }, + }, + }) + + minetest.register_craft( { + output = "homedecor:lattice_lantern_large", + type = "shapeless", + recipe = { + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + "homedecor:lattice_lantern_small", + }, + }) +end + +-- glowlights + +minetest.register_craft({ + output = "homedecor:glowlight_half 6", + recipe = { + { "default:glass", "basic_materials:energy_crystal_simple", "default:glass", }, + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_half 6", + recipe = { + {"moreblocks:super_glow_glass", "moreblocks:glow_glass", "moreblocks:super_glow_glass", }, + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_half", + recipe = { + {"homedecor:glowlight_small_cube","homedecor:glowlight_small_cube"}, + {"homedecor:glowlight_small_cube","homedecor:glowlight_small_cube"} + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_half", + type = "shapeless", + recipe = { + "homedecor:glowlight_quarter", + "homedecor:glowlight_quarter" + } +}) + +unifieddyes.register_color_craft({ + output = "homedecor:glowlight_half", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:glowlight_half", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_quarter 6", + recipe = { + {"homedecor:glowlight_half", "homedecor:glowlight_half", "homedecor:glowlight_half", }, + } +}) + +unifieddyes.register_color_craft({ + output = "homedecor:glowlight_quarter", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:glowlight_quarter", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_small_cube 8", + recipe = { + { "dye:white" }, + { "default:glass" }, + { "basic_materials:energy_crystal_simple" }, + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_small_cube 8", + recipe = { + {"dye:white" }, + {"moreblocks:super_glow_glass" }, + } +}) + +minetest.register_craft({ + output = "homedecor:glowlight_small_cube 4", + recipe = { + {"homedecor:glowlight_half" }, + } +}) + +unifieddyes.register_color_craft({ + output = "homedecor:glowlight_small_cube", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:glowlight_small_cube", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +---- + +minetest.register_craft({ + output = "homedecor:plasma_lamp", + recipe = { + {"", "default:glass", ""}, + {"default:glass", "basic_materials:energy_crystal_simple", "default:glass"}, + {"", "default:glass", ""} + } +}) + +minetest.register_craft({ + output = "homedecor:plasma_ball 2", + recipe = { + {"", "default:glass", ""}, + {"default:glass", "default:copper_ingot", "default:glass"}, + {"basic_materials:plastic_sheet", "basic_materials:energy_crystal_simple", "basic_materials:plastic_sheet"} + } +}) + + +minetest.register_craft({ + output = "homedecor:desk_lamp 2", + recipe = { + { "", "default:steel_ingot", "homedecor:glowlight_small_cube" }, + { "", "basic_materials:steel_strip", "" }, + { "basic_materials:plastic_sheet", "basic_materials:copper_wire", "basic_materials:plastic_sheet" }, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:desk_lamp", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:desk_lamp", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + output = "homedecor:hanging_lantern 2", + recipe = { + { "default:iron_lump", "default:iron_lump", "" }, + { "default:iron_lump", "homedecor:lattice_lantern_large", "" }, + { "default:iron_lump", "", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:ceiling_lantern 2", + recipe = { + { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, + { "default:iron_lump", "homedecor:lattice_lantern_large", "default:iron_lump" }, + { "", "default:iron_lump", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:wall_lamp 2", + recipe = { + { "", "homedecor:lattice_lantern_large", "" }, + { "default:iron_lump", "group:stick", "" }, + { "default:iron_lump", "group:stick", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:ceiling_lamp", + recipe = { + { "", "basic_materials:brass_ingot", ""}, + { "", "basic_materials:chainlink_brass", ""}, + { "default:glass", "homedecor:glowlight_small_cube", "default:glass"} + }, +}) + +minetest.register_craft({ + output = "homedecor:ceiling_lamp", + recipe = { + { "", "basic_materials:chain_steel_top_brass", ""}, + { "default:glass", "homedecor:glowlight_small_cube", "default:glass"} + }, +}) + +minetest.register_craft({ + output = "homedecor:standing_lamp_hi", + recipe = { + {"homedecor:table_lamp_hi"}, + {"group:stick"}, + {"group:stick"}, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:standing_lamp_hi", + palette = "extended", + type = "shapeless", + neutral_node = "homedecor:standing_lamp_hi", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:table_lamp_hi", + burntime = 10, +}) + +minetest.register_craft({ + output = "homedecor:table_lamp_hi", + recipe = { + { "wool:white", "default:torch", "wool:white"}, + { "", "group:stick", ""}, + { "", "stairs:slab_wood", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:table_lamp_hi", + recipe = { + { "cottages:wool", "default:torch", "cottages:wool"}, + { "", "group:stick", ""}, + { "", "stairs:slab_wood", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:table_lamp_hi", + recipe = { + { "wool:white", "default:torch", "wool:white"}, + { "", "group:stick", ""}, + { "", "moreblocks:slab_wood", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:table_lamp_hi", + recipe = { + { "cottages:wool", "default:torch", "cottages:wool"}, + { "", "group:stick", ""}, + { "", "moreblocks:slab_wood", "" }, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:table_lamp_hi", + palette = "extended", + type = "shapeless", + neutral_node = "homedecor:table_lamp_hi", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +-- aliases + +minetest.register_alias("chains:chain_top", "homedecor:chain_steel_top") +minetest.register_alias("chains:chain_top_brass", "homedecor:chain_brass_top") + +minetest.register_alias("chains:chandelier", "homedecor:chandelier_steel") +minetest.register_alias("chains:chandelier_steel", "homedecor:chandelier_steel") +minetest.register_alias("chains:chandelier_brass", "homedecor:chandelier_brass") + +minetest.register_alias("homedecor:glowlight_half", "homedecor:glowlight_half_14") +minetest.register_alias("homedecor:glowlight_half_max", "homedecor:glowlight_half_14") + +minetest.register_alias("homedecor:glowlight_quarter", "homedecor:glowlight_quarter_14") +minetest.register_alias("homedecor:glowlight_quarter_max", "homedecor:glowlight_quarter_14") + +minetest.register_alias("homedecor:glowlight_small_cube", "homedecor:glowlight_small_cube_14") +minetest.register_alias("homedecor:glowlight_small_cube_max", "homedecor:glowlight_small_cube_14") + +minetest.register_alias("homedecor:plasma_lamp", "homedecor:plasma_lamp_14") +minetest.register_alias("homedecor:plasma_lamp_max", "homedecor:plasma_lamp_14") + +minetest.register_alias("homedecor:ground_lantern", "homedecor:ground_lantern_14") +minetest.register_alias("homedecor:ground_lantern_max", "homedecor:ground_lantern_14") + +minetest.register_alias("homedecor:hanging_lantern", "homedecor:hanging_lantern_14") +minetest.register_alias("homedecor:hanging_lantern_max", "homedecor:hanging_lantern_14") + +minetest.register_alias("homedecor:ceiling_lantern", "homedecor:ceiling_lantern_14") +minetest.register_alias("homedecor:ceiling_lantern_max", "homedecor:ceiling_lantern_14") + +minetest.register_alias("homedecor:lattice_lantern_large", "homedecor:lattice_lantern_large_14") +minetest.register_alias("homedecor:lattice_lantern_large_max", "homedecor:lattice_lantern_large_14") + +minetest.register_alias("homedecor:lattice_lantern_small", "homedecor:lattice_lantern_small_14") +minetest.register_alias("homedecor:lattice_lantern_small_max", "homedecor:lattice_lantern_small_14") + +minetest.register_alias("homedecor:desk_lamp", "homedecor:desk_lamp_14") +minetest.register_alias("homedecor:desk_lamp_max", "homedecor:desk_lamp_14") + +minetest.register_alias("homedecor:ceiling_lamp", "homedecor:ceiling_lamp_14") +minetest.register_alias("homedecor:ceiling_lamp_max", "homedecor:ceiling_lamp_14") + +minetest.register_alias("homedecor:table_lamp", "homedecor:table_lamp_14") +minetest.register_alias("homedecor:table_lamp_max", "homedecor:table_lamp_14") + +minetest.register_alias("homedecor:standing_lamp", "homedecor:standing_lamp_14") +minetest.register_alias("homedecor:standing_lamp_max", "homedecor:standing_lamp_14") + +minetest.register_alias("3dforniture:table_lamp", "homedecor:table_lamp_14") +minetest.register_alias("3dforniture:table_lamp_max", "homedecor:table_lamp_14") + +minetest.register_alias("3dforniture:torch_wall", "homedecor:torch_wall") +minetest.register_alias("torch_wall", "homedecor:torch_wall") + +minetest.register_alias("homedecor:plasma_ball", "homedecor:plasma_ball_on") +minetest.register_alias("homedecor:wall_lamp", "homedecor:wall_lamp_on") + +minetest.register_alias("homedecor:rope_light_on_floor_0", "homedecor:rope_light_on_floor_off") +minetest.register_alias("homedecor:rope_light_on_floor_14", "homedecor:rope_light_on_floor_on") + +minetest.register_alias("homedecor:rope_light_on_ceiling_0", "homedecor:rope_light_on_ceiling_off") +minetest.register_alias("homedecor:rope_light_on_ceiling_14", "homedecor:rope_light_on_ceiling_on") + +for name, level in pairs(word_to_bright) do + minetest.register_alias("homedecor:glowlight_half_"..name, "homedecor:glowlight_half_"..level) + minetest.register_alias("homedecor:glowlight_quarter_"..name, "homedecor:glowlight_quarter_"..level) + minetest.register_alias("homedecor:glowlight_small_cube_"..name, "homedecor:glowlight_small_cube_"..level) + minetest.register_alias("homedecor:rope_light_on_floor_"..name, "homedecor:rope_light_on_floor_"..level) + minetest.register_alias("homedecor:rope_light_on_ceiling_"..name, "homedecor:rope_light_on_ceiling_"..level) + minetest.register_alias("homedecor:plasma_lamp_"..name, "homedecor:plasma_lamp_"..level) + minetest.register_alias("homedecor:plasma_ball_"..name, "homedecor:plasma_ball_"..level) + minetest.register_alias("homedecor:ground_lantern_"..name, "homedecor:ground_lantern_"..level) + minetest.register_alias("homedecor:hanging_lantern_"..name, "homedecor:hanging_lantern_"..level) + minetest.register_alias("homedecor:ceiling_lantern_"..name, "homedecor:ceiling_lantern_"..level) + minetest.register_alias("homedecor:lattice_lantern_large_"..name, "homedecor:lattice_lantern_large_"..level) + minetest.register_alias("homedecor:lattice_lantern_small_"..name, "homedecor:lattice_lantern_small_"..level) + minetest.register_alias("homedecor:desk_lamp_"..name, "homedecor:desk_lamp_"..level) + minetest.register_alias("homedecor:ceiling_lamp_"..name, "homedecor:ceiling_lamp_"..level) + minetest.register_alias("homedecor:table_lamp_"..name, "homedecor:table_lamp_"..level) + minetest.register_alias("homedecor:standing_lamp_"..name, "homedecor:standing_lamp_"..level) + minetest.register_alias("3dforniture:table_lamp_"..name, "homedecor:table_lamp_"..level) +end + +--[[if minetest.get_modpath("darkage") then + minetest.register_alias("homedecor:lattice_lantern_large", "darkage:lamp") + for n = 0, 14 do + minetest.register_alias("homedecor:lattice_lantern_large_"..n, "darkage:lamp") + end + for name, level in pairs(word_to_bright) do + minetest.register_alias("homedecor:lattice_lantern_large_"..name, "darkage:lamp") + end +end]] + diff --git a/homedecor/models/forniture_torch.obj b/homedecor_lighting/models/forniture_torch.obj similarity index 100% rename from homedecor/models/forniture_torch.obj rename to homedecor_lighting/models/forniture_torch.obj diff --git a/homedecor/models/homedecor_candle_thick.obj b/homedecor_lighting/models/homedecor_candle_thick.obj similarity index 100% rename from homedecor/models/homedecor_candle_thick.obj rename to homedecor_lighting/models/homedecor_candle_thick.obj diff --git a/homedecor/models/homedecor_candle_thin.obj b/homedecor_lighting/models/homedecor_candle_thin.obj similarity index 100% rename from homedecor/models/homedecor_candle_thin.obj rename to homedecor_lighting/models/homedecor_candle_thin.obj diff --git a/homedecor/models/homedecor_candlestick.obj b/homedecor_lighting/models/homedecor_candlestick.obj similarity index 100% rename from homedecor/models/homedecor_candlestick.obj rename to homedecor_lighting/models/homedecor_candlestick.obj diff --git a/homedecor/models/homedecor_ceiling_lamp.obj b/homedecor_lighting/models/homedecor_ceiling_lamp.obj similarity index 100% rename from homedecor/models/homedecor_ceiling_lamp.obj rename to homedecor_lighting/models/homedecor_ceiling_lamp.obj diff --git a/homedecor/models/homedecor_ceiling_lantern.obj b/homedecor_lighting/models/homedecor_ceiling_lantern.obj similarity index 100% rename from homedecor/models/homedecor_ceiling_lantern.obj rename to homedecor_lighting/models/homedecor_ceiling_lantern.obj diff --git a/homedecor/models/homedecor_chains_top.obj b/homedecor_lighting/models/homedecor_chains_top.obj similarity index 100% rename from homedecor/models/homedecor_chains_top.obj rename to homedecor_lighting/models/homedecor_chains_top.obj diff --git a/homedecor/models/homedecor_chandelier.obj b/homedecor_lighting/models/homedecor_chandelier.obj similarity index 100% rename from homedecor/models/homedecor_chandelier.obj rename to homedecor_lighting/models/homedecor_chandelier.obj diff --git a/homedecor/models/homedecor_desk_lamp.obj b/homedecor_lighting/models/homedecor_desk_lamp.obj similarity index 100% rename from homedecor/models/homedecor_desk_lamp.obj rename to homedecor_lighting/models/homedecor_desk_lamp.obj diff --git a/homedecor/models/homedecor_ground_lantern.obj b/homedecor_lighting/models/homedecor_ground_lantern.obj similarity index 100% rename from homedecor/models/homedecor_ground_lantern.obj rename to homedecor_lighting/models/homedecor_ground_lantern.obj diff --git a/homedecor/models/homedecor_hanging_lantern.obj b/homedecor_lighting/models/homedecor_hanging_lantern.obj similarity index 100% rename from homedecor/models/homedecor_hanging_lantern.obj rename to homedecor_lighting/models/homedecor_hanging_lantern.obj diff --git a/homedecor/models/homedecor_oil_lamp.obj b/homedecor_lighting/models/homedecor_oil_lamp.obj similarity index 100% rename from homedecor/models/homedecor_oil_lamp.obj rename to homedecor_lighting/models/homedecor_oil_lamp.obj diff --git a/homedecor/models/homedecor_oil_lamp_tabletop.obj b/homedecor_lighting/models/homedecor_oil_lamp_tabletop.obj similarity index 100% rename from homedecor/models/homedecor_oil_lamp_tabletop.obj rename to homedecor_lighting/models/homedecor_oil_lamp_tabletop.obj diff --git a/homedecor/models/homedecor_plasma_ball.obj b/homedecor_lighting/models/homedecor_plasma_ball.obj similarity index 100% rename from homedecor/models/homedecor_plasma_ball.obj rename to homedecor_lighting/models/homedecor_plasma_ball.obj diff --git a/homedecor/models/homedecor_standing_lamp.obj b/homedecor_lighting/models/homedecor_standing_lamp.obj similarity index 100% rename from homedecor/models/homedecor_standing_lamp.obj rename to homedecor_lighting/models/homedecor_standing_lamp.obj diff --git a/homedecor/models/homedecor_table_lamp.obj b/homedecor_lighting/models/homedecor_table_lamp.obj similarity index 100% rename from homedecor/models/homedecor_table_lamp.obj rename to homedecor_lighting/models/homedecor_table_lamp.obj diff --git a/homedecor/models/homedecor_wall_lamp.obj b/homedecor_lighting/models/homedecor_wall_lamp.obj similarity index 100% rename from homedecor/models/homedecor_wall_lamp.obj rename to homedecor_lighting/models/homedecor_wall_lamp.obj diff --git a/homedecor/models/homedecor_wall_sconce.obj b/homedecor_lighting/models/homedecor_wall_sconce.obj similarity index 100% rename from homedecor/models/homedecor_wall_sconce.obj rename to homedecor_lighting/models/homedecor_wall_sconce.obj diff --git a/homedecor/models/plasma_lamp.obj b/homedecor_lighting/models/plasma_lamp.obj similarity index 100% rename from homedecor/models/plasma_lamp.obj rename to homedecor_lighting/models/plasma_lamp.obj diff --git a/homedecor/textures/forniture_torch_flame.png b/homedecor_lighting/textures/forniture_torch_flame.png similarity index 100% rename from homedecor/textures/forniture_torch_flame.png rename to homedecor_lighting/textures/forniture_torch_flame.png diff --git a/homedecor/textures/forniture_torch_inv.png b/homedecor_lighting/textures/forniture_torch_inv.png similarity index 100% rename from homedecor/textures/forniture_torch_inv.png rename to homedecor_lighting/textures/forniture_torch_inv.png diff --git a/homedecor/textures/homedecor_candle_flame.png b/homedecor_lighting/textures/homedecor_candle_flame.png similarity index 100% rename from homedecor/textures/homedecor_candle_flame.png rename to homedecor_lighting/textures/homedecor_candle_flame.png diff --git a/homedecor/textures/homedecor_candle_flat.png b/homedecor_lighting/textures/homedecor_candle_flat.png similarity index 100% rename from homedecor/textures/homedecor_candle_flat.png rename to homedecor_lighting/textures/homedecor_candle_flat.png diff --git a/homedecor/textures/homedecor_candle_inv.png b/homedecor_lighting/textures/homedecor_candle_inv.png similarity index 100% rename from homedecor/textures/homedecor_candle_inv.png rename to homedecor_lighting/textures/homedecor_candle_inv.png diff --git a/homedecor/textures/homedecor_candle_sides.png b/homedecor_lighting/textures/homedecor_candle_sides.png similarity index 100% rename from homedecor/textures/homedecor_candle_sides.png rename to homedecor_lighting/textures/homedecor_candle_sides.png diff --git a/homedecor/textures/homedecor_candle_thin_inv.png b/homedecor_lighting/textures/homedecor_candle_thin_inv.png similarity index 100% rename from homedecor/textures/homedecor_candle_thin_inv.png rename to homedecor_lighting/textures/homedecor_candle_thin_inv.png diff --git a/homedecor/textures/homedecor_candlestick_brass_inv.png b/homedecor_lighting/textures/homedecor_candlestick_brass_inv.png similarity index 100% rename from homedecor/textures/homedecor_candlestick_brass_inv.png rename to homedecor_lighting/textures/homedecor_candlestick_brass_inv.png diff --git a/homedecor/textures/homedecor_candlestick_wrought_iron_inv.png b/homedecor_lighting/textures/homedecor_candlestick_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/homedecor_candlestick_wrought_iron_inv.png rename to homedecor_lighting/textures/homedecor_candlestick_wrought_iron_inv.png diff --git a/homedecor/textures/homedecor_ceiling_lamp_glass.png b/homedecor_lighting/textures/homedecor_ceiling_lamp_glass.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_lamp_glass.png rename to homedecor_lighting/textures/homedecor_ceiling_lamp_glass.png diff --git a/homedecor/textures/homedecor_ceiling_lamp_inv.png b/homedecor_lighting/textures/homedecor_ceiling_lamp_inv.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_lamp_inv.png rename to homedecor_lighting/textures/homedecor_ceiling_lamp_inv.png diff --git a/homedecor/textures/homedecor_ceiling_lantern_inv.png b/homedecor_lighting/textures/homedecor_ceiling_lantern_inv.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_lantern_inv.png rename to homedecor_lighting/textures/homedecor_ceiling_lantern_inv.png diff --git a/homedecor/textures/homedecor_desk_lamp_inv.png b/homedecor_lighting/textures/homedecor_desk_lamp_inv.png similarity index 100% rename from homedecor/textures/homedecor_desk_lamp_inv.png rename to homedecor_lighting/textures/homedecor_desk_lamp_inv.png diff --git a/homedecor_lighting/textures/homedecor_generic_light_source_off.png b/homedecor_lighting/textures/homedecor_generic_light_source_off.png new file mode 100644 index 0000000..e18bb2c Binary files /dev/null and b/homedecor_lighting/textures/homedecor_generic_light_source_off.png differ diff --git a/homedecor/textures/homedecor_table_standing_lamp_lightbulb.png b/homedecor_lighting/textures/homedecor_generic_light_source_white.png similarity index 100% rename from homedecor/textures/homedecor_table_standing_lamp_lightbulb.png rename to homedecor_lighting/textures/homedecor_generic_light_source_white.png diff --git a/homedecor/textures/homedecor_light.png b/homedecor_lighting/textures/homedecor_generic_light_source_yellow.png similarity index 100% rename from homedecor/textures/homedecor_light.png rename to homedecor_lighting/textures/homedecor_generic_light_source_yellow.png diff --git a/homedecor_lighting/textures/homedecor_glowlight_base.png b/homedecor_lighting/textures/homedecor_glowlight_base.png new file mode 100644 index 0000000..1cee3bc Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_base.png differ diff --git a/homedecor_lighting/textures/homedecor_glowlight_cube_sides_edges.png b/homedecor_lighting/textures/homedecor_glowlight_cube_sides_edges.png new file mode 100644 index 0000000..49f6179 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_cube_sides_edges.png differ diff --git a/homedecor/textures/homedecor_glowlight_cube_sides_overlay.png b/homedecor_lighting/textures/homedecor_glowlight_cube_sides_glare.png similarity index 100% rename from homedecor/textures/homedecor_glowlight_cube_sides_overlay.png rename to homedecor_lighting/textures/homedecor_glowlight_cube_sides_glare.png diff --git a/homedecor_lighting/textures/homedecor_glowlight_cube_tb_edges.png b/homedecor_lighting/textures/homedecor_glowlight_cube_tb_edges.png new file mode 100644 index 0000000..f7bca65 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_cube_tb_edges.png differ diff --git a/homedecor/textures/homedecor_glowlight_cube_tb_overlay.png b/homedecor_lighting/textures/homedecor_glowlight_cube_top_glare.png similarity index 100% rename from homedecor/textures/homedecor_glowlight_cube_tb_overlay.png rename to homedecor_lighting/textures/homedecor_glowlight_cube_top_glare.png diff --git a/homedecor_lighting/textures/homedecor_glowlight_tb_edges.png b/homedecor_lighting/textures/homedecor_glowlight_tb_edges.png new file mode 100644 index 0000000..fcf524f Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_tb_edges.png differ diff --git a/homedecor_lighting/textures/homedecor_glowlight_thick_sides_edges.png b/homedecor_lighting/textures/homedecor_glowlight_thick_sides_edges.png new file mode 100644 index 0000000..a421750 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_thick_sides_edges.png differ diff --git a/homedecor/textures/homedecor_glowlight_top_overlay.png b/homedecor_lighting/textures/homedecor_glowlight_thick_sides_glare.png similarity index 100% rename from homedecor/textures/homedecor_glowlight_top_overlay.png rename to homedecor_lighting/textures/homedecor_glowlight_thick_sides_glare.png diff --git a/homedecor_lighting/textures/homedecor_glowlight_thin_sides_edges.png b/homedecor_lighting/textures/homedecor_glowlight_thin_sides_edges.png new file mode 100644 index 0000000..6110d67 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_thin_sides_edges.png differ diff --git a/homedecor_lighting/textures/homedecor_glowlight_thin_sides_glare.png b/homedecor_lighting/textures/homedecor_glowlight_thin_sides_glare.png new file mode 100644 index 0000000..fd92157 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_thin_sides_glare.png differ diff --git a/homedecor_lighting/textures/homedecor_glowlight_top_glare.png b/homedecor_lighting/textures/homedecor_glowlight_top_glare.png new file mode 100644 index 0000000..5fbf891 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_glowlight_top_glare.png differ diff --git a/homedecor/textures/homedecor_ground_lantern_inv.png b/homedecor_lighting/textures/homedecor_ground_lantern_inv.png similarity index 100% rename from homedecor/textures/homedecor_ground_lantern_inv.png rename to homedecor_lighting/textures/homedecor_ground_lantern_inv.png diff --git a/homedecor/textures/homedecor_hanging_lantern_inv.png b/homedecor_lighting/textures/homedecor_hanging_lantern_inv.png similarity index 100% rename from homedecor/textures/homedecor_hanging_lantern_inv.png rename to homedecor_lighting/textures/homedecor_hanging_lantern_inv.png diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_large_light.png b/homedecor_lighting/textures/homedecor_lattice_lantern_large_light.png new file mode 100644 index 0000000..55bc341 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_large_light.png differ diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_large_overlay.png b/homedecor_lighting/textures/homedecor_lattice_lantern_large_overlay.png new file mode 100644 index 0000000..e6bbae5 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_large_overlay.png differ diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_light.png b/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_light.png new file mode 100644 index 0000000..e0b37be Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_light.png differ diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_overlay.png b/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_overlay.png new file mode 100644 index 0000000..7122b6b Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_small_sides_overlay.png differ diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_light.png b/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_light.png new file mode 100644 index 0000000..4d7c325 Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_light.png differ diff --git a/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_overlay.png b/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_overlay.png new file mode 100644 index 0000000..f22874d Binary files /dev/null and b/homedecor_lighting/textures/homedecor_lattice_lantern_small_tb_overlay.png differ diff --git a/homedecor/textures/homedecor_oil_lamp_glass.png b/homedecor_lighting/textures/homedecor_oil_lamp_glass.png similarity index 100% rename from homedecor/textures/homedecor_oil_lamp_glass.png rename to homedecor_lighting/textures/homedecor_oil_lamp_glass.png diff --git a/homedecor/textures/homedecor_oil_lamp_inv.png b/homedecor_lighting/textures/homedecor_oil_lamp_inv.png similarity index 100% rename from homedecor/textures/homedecor_oil_lamp_inv.png rename to homedecor_lighting/textures/homedecor_oil_lamp_inv.png diff --git a/homedecor/textures/homedecor_oil_lamp_tabletop.png b/homedecor_lighting/textures/homedecor_oil_lamp_tabletop.png similarity index 100% rename from homedecor/textures/homedecor_oil_lamp_tabletop.png rename to homedecor_lighting/textures/homedecor_oil_lamp_tabletop.png diff --git a/homedecor/textures/homedecor_oil_lamp_tabletop_inv.png b/homedecor_lighting/textures/homedecor_oil_lamp_tabletop_inv.png similarity index 100% rename from homedecor/textures/homedecor_oil_lamp_tabletop_inv.png rename to homedecor_lighting/textures/homedecor_oil_lamp_tabletop_inv.png diff --git a/homedecor/textures/homedecor_oil_lamp_wick.png b/homedecor_lighting/textures/homedecor_oil_lamp_wick.png similarity index 100% rename from homedecor/textures/homedecor_oil_lamp_wick.png rename to homedecor_lighting/textures/homedecor_oil_lamp_wick.png diff --git a/homedecor/textures/homedecor_plasma_ball_glass.png b/homedecor_lighting/textures/homedecor_plasma_ball_glass.png similarity index 100% rename from homedecor/textures/homedecor_plasma_ball_glass.png rename to homedecor_lighting/textures/homedecor_plasma_ball_glass.png diff --git a/homedecor/textures/homedecor_plasma_ball_inv.png b/homedecor_lighting/textures/homedecor_plasma_ball_inv.png similarity index 100% rename from homedecor/textures/homedecor_plasma_ball_inv.png rename to homedecor_lighting/textures/homedecor_plasma_ball_inv.png diff --git a/homedecor/textures/homedecor_plasma_ball_streamers.png b/homedecor_lighting/textures/homedecor_plasma_ball_streamers.png similarity index 100% rename from homedecor/textures/homedecor_plasma_ball_streamers.png rename to homedecor_lighting/textures/homedecor_plasma_ball_streamers.png diff --git a/homedecor_lighting/textures/homedecor_plasma_lamp_off.png b/homedecor_lighting/textures/homedecor_plasma_lamp_off.png new file mode 100644 index 0000000..82dbcba Binary files /dev/null and b/homedecor_lighting/textures/homedecor_plasma_lamp_off.png differ diff --git a/homedecor/textures/homedecor_plasma_storm.png b/homedecor_lighting/textures/homedecor_plasma_storm.png similarity index 100% rename from homedecor/textures/homedecor_plasma_storm.png rename to homedecor_lighting/textures/homedecor_plasma_storm.png diff --git a/homedecor_lighting/textures/homedecor_rope_light_on_ceiling.png b/homedecor_lighting/textures/homedecor_rope_light_on_ceiling.png new file mode 100644 index 0000000..78e6d4b Binary files /dev/null and b/homedecor_lighting/textures/homedecor_rope_light_on_ceiling.png differ diff --git a/homedecor_lighting/textures/homedecor_rope_light_on_floor.png b/homedecor_lighting/textures/homedecor_rope_light_on_floor.png new file mode 100644 index 0000000..30bd14c Binary files /dev/null and b/homedecor_lighting/textures/homedecor_rope_light_on_floor.png differ diff --git a/homedecor/textures/homedecor_standing_lamp_foot_inv.png b/homedecor_lighting/textures/homedecor_standing_lamp_foot_inv.png similarity index 100% rename from homedecor/textures/homedecor_standing_lamp_foot_inv.png rename to homedecor_lighting/textures/homedecor_standing_lamp_foot_inv.png diff --git a/homedecor/textures/homedecor_standing_lamp_top_inv.png b/homedecor_lighting/textures/homedecor_standing_lamp_top_inv.png similarity index 100% rename from homedecor/textures/homedecor_standing_lamp_top_inv.png rename to homedecor_lighting/textures/homedecor_standing_lamp_top_inv.png diff --git a/homedecor/textures/homedecor_table_lamp_foot_inv.png b/homedecor_lighting/textures/homedecor_table_lamp_foot_inv.png similarity index 100% rename from homedecor/textures/homedecor_table_lamp_foot_inv.png rename to homedecor_lighting/textures/homedecor_table_lamp_foot_inv.png diff --git a/homedecor/textures/homedecor_table_lamp_top_inv.png b/homedecor_lighting/textures/homedecor_table_lamp_top_inv.png similarity index 100% rename from homedecor/textures/homedecor_table_lamp_top_inv.png rename to homedecor_lighting/textures/homedecor_table_lamp_top_inv.png diff --git a/homedecor/textures/homedecor_wall_lamp_inv.png b/homedecor_lighting/textures/homedecor_wall_lamp_inv.png similarity index 100% rename from homedecor/textures/homedecor_wall_lamp_inv.png rename to homedecor_lighting/textures/homedecor_wall_lamp_inv.png diff --git a/homedecor/textures/homedecor_wall_sconce_back.png b/homedecor_lighting/textures/homedecor_wall_sconce_back.png similarity index 100% rename from homedecor/textures/homedecor_wall_sconce_back.png rename to homedecor_lighting/textures/homedecor_wall_sconce_back.png diff --git a/homedecor/textures/homedecor_wall_sconce_inv.png b/homedecor_lighting/textures/homedecor_wall_sconce_inv.png similarity index 100% rename from homedecor/textures/homedecor_wall_sconce_inv.png rename to homedecor_lighting/textures/homedecor_wall_sconce_inv.png diff --git a/homedecor_misc/depends.txt b/homedecor_misc/depends.txt new file mode 100644 index 0000000..879b82b --- /dev/null +++ b/homedecor_misc/depends.txt @@ -0,0 +1,8 @@ +homedecor_common +default +basic_materials +unifieddyes +building_blocks? +technic? +bucket? +signs_lib? diff --git a/homedecor/misc-nodes.lua b/homedecor_misc/init.lua similarity index 54% rename from homedecor/misc-nodes.lua rename to homedecor_misc/init.lua index 7bfb063..aad6467 100755 --- a/homedecor/misc-nodes.lua +++ b/homedecor_misc/init.lua @@ -1,7 +1,13 @@ +-- Home Decor mod by VanessaE +-- +-- Mostly my own code, with bits and pieces lifted from Minetest's default +-- lua files and from ironzorg's flowers mod. Many thanks to GloopMaster +-- for helping me figure out the inventories used in the nightstands/dressers. +-- +-- The code for ovens, nightstands, refrigerators are basically modified +-- copies of the code for chests and furnaces. -local S = homedecor_i18n.gettext - -local function N_(x) return x end +local S = homedecor.gettext homedecor.register("ceiling_paint", { description = S("Textured Ceiling Paint"), @@ -28,9 +34,9 @@ homedecor.register("ceiling_tile", { }) local rug_types = { - { N_("small"), "homedecor_small_rug.obj" }, - { N_("large"), homedecor.box.slab_y(0.0625) }, - { N_("persian"), homedecor.box.slab_y(0.0625) }, + { "small", "homedecor_small_rug.obj" }, + { "large", homedecor.box.slab_y(0.0625) }, + { "persian", homedecor.box.slab_y(0.0625) }, } for _, rt in ipairs(rug_types) do @@ -66,7 +72,7 @@ for _, rt in ipairs(rug_types) do }) end -local pot_colors = { N_("black"), N_("green"), N_("terracotta") } +local pot_colors = { "black", "green", "terracotta" } for _, p in ipairs(pot_colors) do homedecor.register("flower_pot_"..p, { @@ -124,21 +130,22 @@ for _, f in ipairs(flowers_list) do end homedecor.register("pole_brass", { - description = S("Brass Pole"), + description = S("Brass Pole"), mesh = "homedecor_round_pole.obj", - tiles = {"homedecor_generic_metal_brass.png^homedecor_generic_metal_lines_overlay.png",}, - inventory_image = "homedecor_pole_brass_inv.png", - wield_image = "homedecor_pole_brass_inv.png", - selection_box = { - type = "fixed", - fixed = { -0.125, -0.5, -0.125, 0.125, 0.5, 0.125 }, - }, - collision_box = { - type = "fixed", - fixed = { -0.125, -0.5, -0.125, 0.125, 0.5, 0.125 }, - }, - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), + tiles = {"homedecor_generic_metal_brass.png^homedecor_generic_metal_lines_overlay.png",}, + inventory_image = "homedecor_pole_brass_inv.png", + wield_image = "homedecor_pole_brass_inv.png", + selection_box = { + type = "fixed", + fixed = { -0.125, -0.5, -0.125, 0.125, 0.5, 0.125 }, + }, + collision_box = { + type = "fixed", + fixed = { -0.125, -0.5, -0.125, 0.125, 0.5, 0.125 }, + }, + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + check_for_pole = true }) homedecor.register("pole_wrought_iron", { @@ -388,53 +395,6 @@ homedecor.register("tool_cabinet", { minetest.register_alias("homedecor:tool_cabinet_bottom", "homedecor:tool_cabinet") minetest.register_alias("homedecor:tool_cabinet_top", "air") -local pframe_cbox = { - type = "fixed", - fixed = { -0.18, -0.5, -0.08, 0.18, -0.08, 0.18 } -} -local n = { 1, 2 } - -for _, i in ipairs(n) do - homedecor.register("picture_frame"..i, { - description = S("Picture Frame "..i), - mesh = "homedecor_picture_frame.obj", - tiles = { - "homedecor_picture_frame_image"..i..".png", - homedecor.lux_wood, - "homedecor_picture_frame_back.png", - }, - inventory_image = "homedecor_picture_frame"..i.."_inv.png", - wield_image = "homedecor_picture_frame"..i.."_inv.png", - groups = {snappy = 3}, - selection_box = pframe_cbox, - walkable = false, - sounds = default.node_sound_glass_defaults() - }) -end - -local p_cbox = { - type = "fixed", - fixed = { - { -0.5, -0.5, 0.4375, 0.5, 0.5, 0.5 } - } -} - -for i = 1,20 do - homedecor.register("painting_"..i, { - description = S("Decorative painting #@1", i), - mesh = "homedecor_painting.obj", - tiles = { - "default_wood.png", - "homedecor_blank_canvas.png", - "homedecor_painting"..i..".png" - }, - selection_box = p_cbox, - walkable = false, - groups = {snappy=3}, - sounds = default.node_sound_wood_defaults(), - }) -end - homedecor.banister_materials = { { "wood", S("wood"), @@ -511,7 +471,7 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do } if side ~= "horizontal" then - def.groups.not_in_creative_inventory = 1 + def.groups.not_in_creative_inventory = 1 end if name == "wood" then @@ -519,6 +479,7 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do def.airbrush_replacement_node = "homedecor:banister_wood_"..side.."_grey" def.groups.ud_param2_colorable = 1 def.paramtype2 = "colorfacedir" + def.on_dig = unifieddyes.on_dig end homedecor.register(nodename, def) @@ -530,7 +491,7 @@ for _, side in ipairs({"diagonal_left", "diagonal_right", "horizontal"}) do homedecor.white_wood } def2.inventory_image = "homedecor_banister_wood_colored_inv.png" - def2.groups.not_in_creative_inventory = 1 + def2.groups.not_in_creative_inventory = 1 --unifieddyes.generate_split_palette_nodes(nn, def2, "homedecor:banister_"..name.."_horizontal") end @@ -627,3 +588,471 @@ minetest.register_on_placenode(function(pos, newnode, placer, oldnode, itemstack end end end) + +minetest.register_node(":homedecor:tatami_mat", { + tiles = { + "homedecor_tatami.png", + "homedecor_tatami.png", + "homedecor_tatami.png", + "homedecor_tatami.png", + "homedecor_tatami.png", + "homedecor_tatami.png" + }, + description = S("Japanese tatami"), + drawtype = "nodebox", + paramtype = "light", + groups = {snappy=3}, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5}, + } + } +}) + +homedecor.register("dartboard", { + description = S("Dartboard"), + mesh = "homedecor_dartboard.obj", + tiles = { "homedecor_dartboard.png" }, + inventory_image = "homedecor_dartboard_inv.png", + wield_image = "homedecor_dartboard_inv.png", + paramtype2 = "wallmounted", + walkable = false, + selection_box = { + type = "wallmounted", + }, + groups = {choppy=2,dig_immediate=2,attached_node=1}, + legacy_wallmounted = true, + sounds = default.node_sound_wood_defaults(), +}) + +-- crafting + +-- Crafting for homedecor mod (includes folding) by Vanessa Ezekowitz +-- +-- Mostly my own code; overall template borrowed from game default + +local S = homedecor.gettext + +minetest.register_craft( { + output = "homedecor:flower_pot_terracotta", + recipe = { + { "homedecor:roof_tile_terracotta", "default:dirt", "homedecor:roof_tile_terracotta" }, + { "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta", "homedecor:roof_tile_terracotta" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:flower_pot_green", + recipe = { + { "", "dye:dark_green", "" }, + { "basic_materials:plastic_sheet", "default:dirt", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:flower_pot_black", + recipe = { + { "dye:black", "dye:black", "dye:black" }, + { "basic_materials:plastic_sheet", "default:dirt", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:ceiling_paint 20", + recipe = { + "dye:white", + "dye:white", + "default:sand", + "bucket:bucket_water", + }, + replacements = { { "bucket:bucket_water","bucket:bucket_empty" } } +}) + +minetest.register_craft( { + output = "homedecor:ceiling_tile 10", + recipe = { + { "", "dye:white", "" }, + { "default:steel_ingot", "default:stone", "default:steel_ingot" }, + + }, +}) + +minetest.register_craft( { + output = "homedecor:drawer_small", + recipe = { + { "group:wood", "default:steel_ingot", "group:wood" }, + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:drawer_small", + burntime = 30, +}) + +-- vertical poles/lampposts + +minetest.register_craft( { + output = "homedecor:pole_brass 4", + recipe = { + { "", "basic_materials:brass_ingot", "" }, + { "", "basic_materials:brass_ingot", "" }, + { "", "basic_materials:brass_ingot", "" } + }, +}) + +minetest.register_craft( { + output = "homedecor:pole_wrought_iron 4", + recipe = { + { "default:iron_lump", }, + { "default:iron_lump", }, + { "default:iron_lump", }, + }, +}) + +-- =========================================================== +-- Recipes that require materials from wool (cotton alternate) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:rug_small 8", + recipe = { + "wool:red", + "wool:yellow", + "wool:blue", + "wool:black" + }, +}) + +minetest.register_craft( { + output = "homedecor:rug_persian 8", + recipe = { + { "", "wool:yellow", "" }, + { "wool:red", "wool:blue", "wool:red" }, + { "", "wool:yellow", "" } + }, +}) + +-- cotton versions: + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:rug_small 8", + recipe = { + "cotton:red", + "cotton:yellow", + "cotton:blue", + "cotton:black" + }, +}) + +minetest.register_craft( { + output = "homedecor:rug_persian 8", + recipe = { + { "", "cotton:yellow", "" }, + { "cotton:red", "cotton:blue", "cotton:red" }, + { "", "cotton:yellow", "" } + }, +}) + +-- fuel recipes for same + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:rug_small", + burntime = 30, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:rug_large 2", + recipe = { + "homedecor:rug_small", + "homedecor:rug_small", + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:rug_large", + burntime = 30, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:rug_persian", + burntime = 30, +}) + +-- more misc stuff here + +minetest.register_craft({ + output = "homedecor:fishtank", + recipe = { + { "basic_materials:plastic_sheet", "homedecor:glowlight_small_cube", "basic_materials:plastic_sheet" }, + { "default:glass", "bucket:bucket_water", "default:glass" }, + { "default:glass", "building_blocks:gravel_spread", "default:glass" }, + }, + replacements = { {"bucket:bucket_water", "bucket:bucket_empty"} } +}) + +minetest.register_craft({ + output = "homedecor:cardboard_box 2", + recipe = { + { "default:paper", "", "default:paper" }, + { "default:paper", "default:paper", "default:paper" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:cardboard_box_big 2", + recipe = { + { "default:paper", "", "default:paper" }, + { "default:paper", "", "default:paper" }, + { "default:paper", "default:paper", "default:paper" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:openframe_bookshelf", + recipe = { + {"group:wood", "", "group:wood"}, + {"default:book", "default:book", "default:book"}, + {"group:wood", "", "group:wood"}, + }, +}) + +-- japanese walls and mat + +minetest.register_craft( { + output = "homedecor:japanese_wall_top", + recipe = { + {"group:stick", "default:paper"}, + {"default:paper", "group:stick"}, + {"group:stick", "default:paper"} + }, +}) + +minetest.register_craft( { + output = "homedecor:japanese_wall_top", + recipe = { + {"default:paper", "group:stick"}, + {"group:stick", "default:paper"}, + {"default:paper", "group:stick"} + }, +}) + +minetest.register_craft( { + output = "homedecor:japanese_wall_middle", + recipe = { + {"homedecor:japanese_wall_top"} + }, +}) + +minetest.register_craft( { + output = "homedecor:japanese_wall_bottom", + recipe = { + {"homedecor:japanese_wall_middle"} + }, +}) + +minetest.register_craft( { + output = "homedecor:japanese_wall_top", + recipe = { + {"homedecor:japanese_wall_bottom"} + }, +}) + +minetest.register_craft( { + output = "homedecor:tatami_mat", + recipe = { + {"farming:wheat", "farming:wheat", "farming:wheat"} + }, +}) + +minetest.register_craft( { + output = "homedecor:pool_table", + recipe = { + { "wool:dark_green", "wool:dark_green", "wool:dark_green" }, + { "building_blocks:hardwood", "building_blocks:hardwood", "building_blocks:hardwood" }, + { "building_blocks:slab_hardwood", "", "building_blocks:slab_hardwood" } + }, +}) + +minetest.register_craft({ + output = "homedecor:dartboard", + recipe = { + {"dye:black", "basic_materials:plastic_sheet", "dye:white"}, + {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"}, + {"dye:dark_green", "basic_materials:plastic_sheet", "dye:red"} + }, +}) + +minetest.register_craft({ + output = "homedecor:piano", + recipe = { + { "", "basic_materials:steel_wire", "building_blocks:hardwood" }, + { "basic_materials:plastic_strip", "basic_materials:steel_wire", "building_blocks:hardwood" }, + { "basic_materials:brass_ingot", "default:steelblock", "building_blocks:hardwood" } + }, +}) + +minetest.register_craft({ + output = "homedecor:wall_shelf 2", + recipe = { + { "homedecor:wood_table_small_square", "homedecor:curtainrod_wood", "homedecor:curtainrod_wood" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:trophy 3", + recipe = { + { "default:gold_ingot","","default:gold_ingot" }, + { "","default:gold_ingot","" }, + { "group:wood","default:gold_ingot","group:wood" } + }, +}) + +minetest.register_craft({ + output = "homedecor:sportbench", + recipe = { + { "stairs:slab_steelblock","basic_materials:steel_bar","stairs:slab_steelblock" }, + { "default:steel_ingot","wool:black","default:steel_ingot" }, + { "default:steel_ingot","wool:black","default:steel_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:skateboard", + recipe = { + { "dye:yellow","dye:green","dye:blue" }, + { "homedecor:wood_table_small_square","homedecor:wood_table_small_square","homedecor:wood_table_small_square" }, + { "default:steel_ingot","","default:steel_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:tool_cabinet", + recipe = { + { "basic_materials:motor", "default:axe_steel", "default:pick_steel" }, + { "default:steel_ingot", "homedecor:drawer_small", "default:steel_ingot" }, + { "default:steel_ingot", "homedecor:drawer_small", "default:steel_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:spiral_staircase", + recipe = { + { "default:steelblock", "homedecor:pole_wrought_iron", "" }, + { "", "homedecor:pole_wrought_iron", "default:steelblock" }, + { "default:steelblock", "homedecor:pole_wrought_iron", "" } + }, +}) + +minetest.register_craftitem(":homedecor:flower_pot_small", { + description = S("Small Flower Pot"), + inventory_image = "homedecor_flowerpot_small_inv.png" +}) + +minetest.register_craft( { + output = "homedecor:flower_pot_small", + recipe = { + { "default:clay_brick", "", "default:clay_brick" }, + { "", "default:clay_brick", "" } + } +}) + +minetest.register_craft( { + output = "homedecor:flower_pot_small 3", + recipe = { { "homedecor:flower_pot_terracotta" } } +}) + +for i in ipairs(homedecor.banister_materials) do + + local name = homedecor.banister_materials[i][1] + local topmat = homedecor.banister_materials[i][5] + local vertmat = homedecor.banister_materials[i][6] + local dye1 = homedecor.banister_materials[i][7] + local dye2 = homedecor.banister_materials[i][8] + + minetest.register_craft({ + output = "homedecor:banister_"..name.."_horizontal 2", + recipe = { + { topmat, "", dye1 }, + { vertmat, topmat, "" }, + { dye2, vertmat, topmat } + }, + }) +end + +unifieddyes.register_color_craft({ + output = "", + palette = "split", + neutral_node = "homedecor:banister_wood_horizontal", + type = "shapeless", + output_prefix = "homedecor:banister_wood_horizontal_", + output_suffix = "", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE", + } +}) + +-- Japanese-style wood/paper wall pieces and door + +local jp_cbox = { + type = "fixed", + fixed = {-0.5, -0.5, 0, 0.5, 0.5, 0.0625}, +} + +minetest.register_node(":homedecor:japanese_wall_top", { + description = S("Japanese wall (top)"), + drawtype = "mesh", + mesh = "homedecor_wall_japanese_top.obj", + tiles = { + homedecor.lux_wood, + "homedecor_japanese_paper.png" + }, + paramtype = "light", + paramtype2 = "facedir", + groups = {snappy=3}, + selection_box = jp_cbox, + collision_box = jp_cbox, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_node(":homedecor:japanese_wall_middle", { + description = S("Japanese wall"), + drawtype = "mesh", + mesh = "homedecor_wall_japanese_middle.obj", + tiles = { + homedecor.lux_wood, + "homedecor_japanese_paper.png" + }, + paramtype = "light", + paramtype2 = "facedir", + groups = {snappy=3}, + selection_box = jp_cbox, + collision_box = jp_cbox, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_node(":homedecor:japanese_wall_bottom", { + description = S("Japanese wall (bottom)"), + drawtype = "mesh", + mesh = "homedecor_wall_japanese_bottom.obj", + tiles = { + homedecor.lux_wood, + "homedecor_japanese_paper.png" + }, + paramtype = "light", + paramtype2 = "facedir", + groups = {snappy=3}, + selection_box = jp_cbox, + collision_box = jp_cbox, + sounds = default.node_sound_wood_defaults(), +}) diff --git a/homedecor/models/homedecor_banister_diagonal_left.obj b/homedecor_misc/models/homedecor_banister_diagonal_left.obj similarity index 100% rename from homedecor/models/homedecor_banister_diagonal_left.obj rename to homedecor_misc/models/homedecor_banister_diagonal_left.obj diff --git a/homedecor/models/homedecor_banister_diagonal_right.obj b/homedecor_misc/models/homedecor_banister_diagonal_right.obj similarity index 100% rename from homedecor/models/homedecor_banister_diagonal_right.obj rename to homedecor_misc/models/homedecor_banister_diagonal_right.obj diff --git a/homedecor/models/homedecor_banister_horizontal.obj b/homedecor_misc/models/homedecor_banister_horizontal.obj similarity index 100% rename from homedecor/models/homedecor_banister_horizontal.obj rename to homedecor_misc/models/homedecor_banister_horizontal.obj diff --git a/homedecor/models/homedecor_dartboard.obj b/homedecor_misc/models/homedecor_dartboard.obj similarity index 100% rename from homedecor/models/homedecor_dartboard.obj rename to homedecor_misc/models/homedecor_dartboard.obj diff --git a/homedecor/models/homedecor_dvd_cabinet.obj b/homedecor_misc/models/homedecor_dvd_cabinet.obj similarity index 100% rename from homedecor/models/homedecor_dvd_cabinet.obj rename to homedecor_misc/models/homedecor_dvd_cabinet.obj diff --git a/homedecor/models/homedecor_fishtank.obj b/homedecor_misc/models/homedecor_fishtank.obj similarity index 100% rename from homedecor/models/homedecor_fishtank.obj rename to homedecor_misc/models/homedecor_fishtank.obj diff --git a/homedecor/models/homedecor_flowerpot.obj b/homedecor_misc/models/homedecor_flowerpot.obj similarity index 100% rename from homedecor/models/homedecor_flowerpot.obj rename to homedecor_misc/models/homedecor_flowerpot.obj diff --git a/homedecor/models/homedecor_piano.obj b/homedecor_misc/models/homedecor_piano.obj similarity index 100% rename from homedecor/models/homedecor_piano.obj rename to homedecor_misc/models/homedecor_piano.obj diff --git a/homedecor/models/homedecor_pool_table.obj b/homedecor_misc/models/homedecor_pool_table.obj similarity index 100% rename from homedecor/models/homedecor_pool_table.obj rename to homedecor_misc/models/homedecor_pool_table.obj diff --git a/homedecor/models/homedecor_potted_plant.obj b/homedecor_misc/models/homedecor_potted_plant.obj similarity index 100% rename from homedecor/models/homedecor_potted_plant.obj rename to homedecor_misc/models/homedecor_potted_plant.obj diff --git a/homedecor/models/homedecor_round_pole.obj b/homedecor_misc/models/homedecor_round_pole.obj similarity index 100% rename from homedecor/models/homedecor_round_pole.obj rename to homedecor_misc/models/homedecor_round_pole.obj diff --git a/homedecor/models/homedecor_skateboard.obj b/homedecor_misc/models/homedecor_skateboard.obj similarity index 100% rename from homedecor/models/homedecor_skateboard.obj rename to homedecor_misc/models/homedecor_skateboard.obj diff --git a/homedecor/models/homedecor_small_rug.obj b/homedecor_misc/models/homedecor_small_rug.obj similarity index 100% rename from homedecor/models/homedecor_small_rug.obj rename to homedecor_misc/models/homedecor_small_rug.obj diff --git a/homedecor/models/homedecor_spiral_staircase.obj b/homedecor_misc/models/homedecor_spiral_staircase.obj similarity index 100% rename from homedecor/models/homedecor_spiral_staircase.obj rename to homedecor_misc/models/homedecor_spiral_staircase.obj diff --git a/homedecor/models/homedecor_sport_bench.obj b/homedecor_misc/models/homedecor_sport_bench.obj similarity index 100% rename from homedecor/models/homedecor_sport_bench.obj rename to homedecor_misc/models/homedecor_sport_bench.obj diff --git a/homedecor/models/homedecor_tool_cabinet.obj b/homedecor_misc/models/homedecor_tool_cabinet.obj similarity index 100% rename from homedecor/models/homedecor_tool_cabinet.obj rename to homedecor_misc/models/homedecor_tool_cabinet.obj diff --git a/homedecor/models/homedecor_trophy.obj b/homedecor_misc/models/homedecor_trophy.obj similarity index 100% rename from homedecor/models/homedecor_trophy.obj rename to homedecor_misc/models/homedecor_trophy.obj diff --git a/homedecor/textures/flowers_bonsai.png b/homedecor_misc/textures/flowers_bonsai.png similarity index 100% rename from homedecor/textures/flowers_bonsai.png rename to homedecor_misc/textures/flowers_bonsai.png diff --git a/homedecor/textures/flowers_cactus.png b/homedecor_misc/textures/flowers_cactus.png similarity index 100% rename from homedecor/textures/flowers_cactus.png rename to homedecor_misc/textures/flowers_cactus.png diff --git a/homedecor/textures/homedecor_banister_brass_inv.png b/homedecor_misc/textures/homedecor_banister_brass_inv.png similarity index 100% rename from homedecor/textures/homedecor_banister_brass_inv.png rename to homedecor_misc/textures/homedecor_banister_brass_inv.png diff --git a/homedecor/textures/homedecor_banister_white_dark_inv.png b/homedecor_misc/textures/homedecor_banister_white_dark_inv.png similarity index 100% rename from homedecor/textures/homedecor_banister_white_dark_inv.png rename to homedecor_misc/textures/homedecor_banister_white_dark_inv.png diff --git a/homedecor/textures/homedecor_banister_wood_colored_inv.png b/homedecor_misc/textures/homedecor_banister_wood_colored_inv.png similarity index 100% rename from homedecor/textures/homedecor_banister_wood_colored_inv.png rename to homedecor_misc/textures/homedecor_banister_wood_colored_inv.png diff --git a/homedecor/textures/homedecor_banister_wood_inv.png b/homedecor_misc/textures/homedecor_banister_wood_inv.png similarity index 100% rename from homedecor/textures/homedecor_banister_wood_inv.png rename to homedecor_misc/textures/homedecor_banister_wood_inv.png diff --git a/homedecor/textures/homedecor_banister_wrought_iron_inv.png b/homedecor_misc/textures/homedecor_banister_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/homedecor_banister_wrought_iron_inv.png rename to homedecor_misc/textures/homedecor_banister_wrought_iron_inv.png diff --git a/homedecor/textures/homedecor_cardbox_big_sides.png b/homedecor_misc/textures/homedecor_cardbox_big_sides.png similarity index 100% rename from homedecor/textures/homedecor_cardbox_big_sides.png rename to homedecor_misc/textures/homedecor_cardbox_big_sides.png diff --git a/homedecor/textures/homedecor_cardbox_big_tb.png b/homedecor_misc/textures/homedecor_cardbox_big_tb.png similarity index 100% rename from homedecor/textures/homedecor_cardbox_big_tb.png rename to homedecor_misc/textures/homedecor_cardbox_big_tb.png diff --git a/homedecor/textures/homedecor_cardbox_sides.png b/homedecor_misc/textures/homedecor_cardbox_sides.png similarity index 100% rename from homedecor/textures/homedecor_cardbox_sides.png rename to homedecor_misc/textures/homedecor_cardbox_sides.png diff --git a/homedecor/textures/homedecor_cardbox_tb.png b/homedecor_misc/textures/homedecor_cardbox_tb.png similarity index 100% rename from homedecor/textures/homedecor_cardbox_tb.png rename to homedecor_misc/textures/homedecor_cardbox_tb.png diff --git a/homedecor/textures/homedecor_ceiling_paint.png b/homedecor_misc/textures/homedecor_ceiling_paint.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_paint.png rename to homedecor_misc/textures/homedecor_ceiling_paint.png diff --git a/homedecor/textures/homedecor_ceiling_paint_roller.png b/homedecor_misc/textures/homedecor_ceiling_paint_roller.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_paint_roller.png rename to homedecor_misc/textures/homedecor_ceiling_paint_roller.png diff --git a/homedecor/textures/homedecor_ceiling_tile.png b/homedecor_misc/textures/homedecor_ceiling_tile.png similarity index 100% rename from homedecor/textures/homedecor_ceiling_tile.png rename to homedecor_misc/textures/homedecor_ceiling_tile.png diff --git a/homedecor/textures/homedecor_dartboard.png b/homedecor_misc/textures/homedecor_dartboard.png similarity index 100% rename from homedecor/textures/homedecor_dartboard.png rename to homedecor_misc/textures/homedecor_dartboard.png diff --git a/homedecor/textures/homedecor_dartboard_inv.png b/homedecor_misc/textures/homedecor_dartboard_inv.png similarity index 100% rename from homedecor/textures/homedecor_dartboard_inv.png rename to homedecor_misc/textures/homedecor_dartboard_inv.png diff --git a/homedecor/textures/homedecor_dvdcd_cabinet_back.png b/homedecor_misc/textures/homedecor_dvdcd_cabinet_back.png similarity index 100% rename from homedecor/textures/homedecor_dvdcd_cabinet_back.png rename to homedecor_misc/textures/homedecor_dvdcd_cabinet_back.png diff --git a/homedecor/textures/homedecor_dvdcd_cabinet_front.png b/homedecor_misc/textures/homedecor_dvdcd_cabinet_front.png similarity index 100% rename from homedecor/textures/homedecor_dvdcd_cabinet_front.png rename to homedecor_misc/textures/homedecor_dvdcd_cabinet_front.png diff --git a/homedecor/textures/homedecor_fishtank_filter.png b/homedecor_misc/textures/homedecor_fishtank_filter.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_filter.png rename to homedecor_misc/textures/homedecor_fishtank_filter.png diff --git a/homedecor/textures/homedecor_fishtank_fishes.png b/homedecor_misc/textures/homedecor_fishtank_fishes.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_fishes.png rename to homedecor_misc/textures/homedecor_fishtank_fishes.png diff --git a/homedecor/textures/homedecor_fishtank_fishes_lighted.png b/homedecor_misc/textures/homedecor_fishtank_fishes_lighted.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_fishes_lighted.png rename to homedecor_misc/textures/homedecor_fishtank_fishes_lighted.png diff --git a/homedecor/textures/homedecor_fishtank_gravel.png b/homedecor_misc/textures/homedecor_fishtank_gravel.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_gravel.png rename to homedecor_misc/textures/homedecor_fishtank_gravel.png diff --git a/homedecor/textures/homedecor_fishtank_gravel_lighted.png b/homedecor_misc/textures/homedecor_fishtank_gravel_lighted.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_gravel_lighted.png rename to homedecor_misc/textures/homedecor_fishtank_gravel_lighted.png diff --git a/homedecor/textures/homedecor_fishtank_sides.png b/homedecor_misc/textures/homedecor_fishtank_sides.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_sides.png rename to homedecor_misc/textures/homedecor_fishtank_sides.png diff --git a/homedecor/textures/homedecor_fishtank_sides_lighted.png b/homedecor_misc/textures/homedecor_fishtank_sides_lighted.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_sides_lighted.png rename to homedecor_misc/textures/homedecor_fishtank_sides_lighted.png diff --git a/homedecor/textures/homedecor_fishtank_water_top.png b/homedecor_misc/textures/homedecor_fishtank_water_top.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_water_top.png rename to homedecor_misc/textures/homedecor_fishtank_water_top.png diff --git a/homedecor/textures/homedecor_fishtank_water_top_lighted.png b/homedecor_misc/textures/homedecor_fishtank_water_top_lighted.png similarity index 100% rename from homedecor/textures/homedecor_fishtank_water_top_lighted.png rename to homedecor_misc/textures/homedecor_fishtank_water_top_lighted.png diff --git a/homedecor/textures/homedecor_flower_pot_black.png b/homedecor_misc/textures/homedecor_flower_pot_black.png similarity index 100% rename from homedecor/textures/homedecor_flower_pot_black.png rename to homedecor_misc/textures/homedecor_flower_pot_black.png diff --git a/homedecor/textures/homedecor_flower_pot_green.png b/homedecor_misc/textures/homedecor_flower_pot_green.png similarity index 100% rename from homedecor/textures/homedecor_flower_pot_green.png rename to homedecor_misc/textures/homedecor_flower_pot_green.png diff --git a/homedecor/textures/homedecor_flower_pot_terracotta.png b/homedecor_misc/textures/homedecor_flower_pot_terracotta.png similarity index 100% rename from homedecor/textures/homedecor_flower_pot_terracotta.png rename to homedecor_misc/textures/homedecor_flower_pot_terracotta.png diff --git a/homedecor/textures/homedecor_flowerpot_small_inv.png b/homedecor_misc/textures/homedecor_flowerpot_small_inv.png similarity index 100% rename from homedecor/textures/homedecor_flowerpot_small_inv.png rename to homedecor_misc/textures/homedecor_flowerpot_small_inv.png diff --git a/homedecor/textures/homedecor_piano_inv.png b/homedecor_misc/textures/homedecor_piano_inv.png similarity index 100% rename from homedecor/textures/homedecor_piano_inv.png rename to homedecor_misc/textures/homedecor_piano_inv.png diff --git a/homedecor/textures/homedecor_piano_keys.png b/homedecor_misc/textures/homedecor_piano_keys.png similarity index 100% rename from homedecor/textures/homedecor_piano_keys.png rename to homedecor_misc/textures/homedecor_piano_keys.png diff --git a/homedecor/textures/homedecor_pole_brass_inv.png b/homedecor_misc/textures/homedecor_pole_brass_inv.png similarity index 100% rename from homedecor/textures/homedecor_pole_brass_inv.png rename to homedecor_misc/textures/homedecor_pole_brass_inv.png diff --git a/homedecor/textures/homedecor_pole_wrought_iron_inv.png b/homedecor_misc/textures/homedecor_pole_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/homedecor_pole_wrought_iron_inv.png rename to homedecor_misc/textures/homedecor_pole_wrought_iron_inv.png diff --git a/homedecor/textures/homedecor_pool_table_baize.png b/homedecor_misc/textures/homedecor_pool_table_baize.png similarity index 100% rename from homedecor/textures/homedecor_pool_table_baize.png rename to homedecor_misc/textures/homedecor_pool_table_baize.png diff --git a/homedecor/textures/homedecor_pool_table_balls.png b/homedecor_misc/textures/homedecor_pool_table_balls.png similarity index 100% rename from homedecor/textures/homedecor_pool_table_balls.png rename to homedecor_misc/textures/homedecor_pool_table_balls.png diff --git a/homedecor/textures/homedecor_pool_table_cue.png b/homedecor_misc/textures/homedecor_pool_table_cue.png similarity index 100% rename from homedecor/textures/homedecor_pool_table_cue.png rename to homedecor_misc/textures/homedecor_pool_table_cue.png diff --git a/homedecor/textures/homedecor_pool_table_inv.png b/homedecor_misc/textures/homedecor_pool_table_inv.png similarity index 100% rename from homedecor/textures/homedecor_pool_table_inv.png rename to homedecor_misc/textures/homedecor_pool_table_inv.png diff --git a/homedecor/textures/homedecor_pool_table_pockets.png b/homedecor_misc/textures/homedecor_pool_table_pockets.png similarity index 100% rename from homedecor/textures/homedecor_pool_table_pockets.png rename to homedecor_misc/textures/homedecor_pool_table_pockets.png diff --git a/homedecor/textures/homedecor_rug_large.png b/homedecor_misc/textures/homedecor_rug_large.png similarity index 100% rename from homedecor/textures/homedecor_rug_large.png rename to homedecor_misc/textures/homedecor_rug_large.png diff --git a/homedecor/textures/homedecor_rug_persian.png b/homedecor_misc/textures/homedecor_rug_persian.png similarity index 100% rename from homedecor/textures/homedecor_rug_persian.png rename to homedecor_misc/textures/homedecor_rug_persian.png diff --git a/homedecor/textures/homedecor_rug_small.png b/homedecor_misc/textures/homedecor_rug_small.png similarity index 100% rename from homedecor/textures/homedecor_rug_small.png rename to homedecor_misc/textures/homedecor_rug_small.png diff --git a/homedecor/textures/homedecor_skateboard.png b/homedecor_misc/textures/homedecor_skateboard.png similarity index 100% rename from homedecor/textures/homedecor_skateboard.png rename to homedecor_misc/textures/homedecor_skateboard.png diff --git a/homedecor/textures/homedecor_skateboard_inv.png b/homedecor_misc/textures/homedecor_skateboard_inv.png similarity index 100% rename from homedecor/textures/homedecor_skateboard_inv.png rename to homedecor_misc/textures/homedecor_skateboard_inv.png diff --git a/homedecor/textures/homedecor_sport_bench_inv.png b/homedecor_misc/textures/homedecor_sport_bench_inv.png similarity index 100% rename from homedecor/textures/homedecor_sport_bench_inv.png rename to homedecor_misc/textures/homedecor_sport_bench_inv.png diff --git a/homedecor/textures/homedecor_tatami.png b/homedecor_misc/textures/homedecor_tatami.png similarity index 100% rename from homedecor/textures/homedecor_tatami.png rename to homedecor_misc/textures/homedecor_tatami.png diff --git a/homedecor/textures/homedecor_tool_cabinet_drawers.png b/homedecor_misc/textures/homedecor_tool_cabinet_drawers.png similarity index 100% rename from homedecor/textures/homedecor_tool_cabinet_drawers.png rename to homedecor_misc/textures/homedecor_tool_cabinet_drawers.png diff --git a/homedecor/textures/homedecor_tool_cabinet_inv.png b/homedecor_misc/textures/homedecor_tool_cabinet_inv.png similarity index 100% rename from homedecor/textures/homedecor_tool_cabinet_inv.png rename to homedecor_misc/textures/homedecor_tool_cabinet_inv.png diff --git a/homedecor/textures/homedecor_tool_cabinet_misc.png b/homedecor_misc/textures/homedecor_tool_cabinet_misc.png similarity index 100% rename from homedecor/textures/homedecor_tool_cabinet_misc.png rename to homedecor_misc/textures/homedecor_tool_cabinet_misc.png diff --git a/homedecor/textures/homedecor_trophy_inv.png b/homedecor_misc/textures/homedecor_trophy_inv.png similarity index 100% rename from homedecor/textures/homedecor_trophy_inv.png rename to homedecor_misc/textures/homedecor_trophy_inv.png diff --git a/homedecor/textures/top_chain_brass_inv.png b/homedecor_misc/textures/top_chain_brass_inv.png similarity index 100% rename from homedecor/textures/top_chain_brass_inv.png rename to homedecor_misc/textures/top_chain_brass_inv.png diff --git a/homedecor/textures/top_chain_wrought_iron_inv.png b/homedecor_misc/textures/top_chain_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/top_chain_wrought_iron_inv.png rename to homedecor_misc/textures/top_chain_wrought_iron_inv.png diff --git a/homedecor_office/depends.txt b/homedecor_office/depends.txt new file mode 100644 index 0000000..f3234ae --- /dev/null +++ b/homedecor_office/depends.txt @@ -0,0 +1,6 @@ +homedecor_common +default +basic_materials +dye +moreblocks? +building_blocks? diff --git a/homedecor/office.lua b/homedecor_office/init.lua similarity index 62% rename from homedecor/office.lua rename to homedecor_office/init.lua index 6e9bbc1..954bfb8 100755 --- a/homedecor/office.lua +++ b/homedecor_office/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext homedecor.register("filing_cabinet", { description = S("Filing cabinet"), @@ -90,37 +90,60 @@ homedecor.register("calendar", { end }) -local ofchairs_sbox = { - type = "fixed", - fixed = { -8/16, -8/16, -8/16, 8/16, 29/32, 8/16 } -} -local ofchairs_cbox = { - type = "fixed", - fixed = { - { -5/16, 1/16, -7/16, 5/16, 4/16, 7/16 }, -- seat - { -5/16, 4/16, 4/16, 5/16, 29/32, 15/32 }, -- seatback - { -1/16, -11/32, -1/16, 1/16, 1/16, 1/16 }, -- cylinder - { -8/16, -8/16, -8/16, 8/16, -11/32, 8/16 } -- legs/wheels - } -} +-- crafting -local chairs = { - { "basic", S("Basic office chair") }, - { "upscale", S("Upscale office chair") }, -} -for _, c in pairs(chairs) do - local name, desc = unpack(c) - homedecor.register("office_chair_"..name, { - description = desc, - drawtype = "mesh", - tiles = { "homedecor_office_chair_"..name..".png" }, - mesh = "homedecor_office_chair_"..name..".obj", - groups = { snappy = 3 }, - sounds = default.node_sound_wood_defaults(), - selection_box = ofchairs_sbox, - collision_box = ofchairs_cbox, - expand = { top = "placeholder" }, - on_rotate = screwdriver.rotate_simple - }) -end +minetest.register_craft({ + output = "homedecor:desk", + recipe = { + { "stairs:slab_wood", "stairs:slab_wood", "stairs:slab_wood" }, + { "homedecor:drawer_small", "default:wood", "default:wood" }, + { "homedecor:drawer_small", "", "default:wood" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:desk", + recipe = { + { "moreblocks:slab_wood", "moreblocks:slab_wood", "moreblocks:slab_wood" }, + { "homedecor:drawer_small", "default:wood", "default:wood" }, + { "homedecor:drawer_small", "", "default:wood" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:filing_cabinet", + recipe = { + { "", "default:wood", "" }, + { "default:wood", "homedecor:drawer_small", "default:wood" }, + { "", "default:wood", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:calendar", + recipe = { + { "","dye:red","" }, + { "","dye:black","" }, + { "","default:paper","" } + }, +}) + +minetest.register_craft({ + output = "homedecor:desk_globe", + recipe = { + { "group:stick", "basic_materials:plastic_sheet", "dye:green" }, + { "group:stick", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "group:stick", "stairs:slab_wood", "dye:blue" } + }, +}) + +minetest.register_craft({ + output = "homedecor:desk_globe", + recipe = { + { "group:stick", "basic_materials:plastic_sheet", "dye:green" }, + { "group:stick", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, + { "group:stick", "moreblocks:slab_wood", "dye:blue" } + }, +}) + diff --git a/homedecor/models/homedecor_calendar.obj b/homedecor_office/models/homedecor_calendar.obj similarity index 100% rename from homedecor/models/homedecor_calendar.obj rename to homedecor_office/models/homedecor_calendar.obj diff --git a/homedecor/models/homedecor_desk.obj b/homedecor_office/models/homedecor_desk.obj similarity index 100% rename from homedecor/models/homedecor_desk.obj rename to homedecor_office/models/homedecor_desk.obj diff --git a/homedecor/models/homedecor_desk_globe.obj b/homedecor_office/models/homedecor_desk_globe.obj similarity index 100% rename from homedecor/models/homedecor_desk_globe.obj rename to homedecor_office/models/homedecor_desk_globe.obj diff --git a/homedecor/models/homedecor_filing_cabinet.obj b/homedecor_office/models/homedecor_filing_cabinet.obj similarity index 100% rename from homedecor/models/homedecor_filing_cabinet.obj rename to homedecor_office/models/homedecor_filing_cabinet.obj diff --git a/homedecor/textures/homedecor_calendar.png b/homedecor_office/textures/homedecor_calendar.png similarity index 100% rename from homedecor/textures/homedecor_calendar.png rename to homedecor_office/textures/homedecor_calendar.png diff --git a/homedecor/textures/homedecor_calendar_inv.png b/homedecor_office/textures/homedecor_calendar_inv.png similarity index 100% rename from homedecor/textures/homedecor_calendar_inv.png rename to homedecor_office/textures/homedecor_calendar_inv.png diff --git a/homedecor/textures/homedecor_desk_drawers.png b/homedecor_office/textures/homedecor_desk_drawers.png similarity index 100% rename from homedecor/textures/homedecor_desk_drawers.png rename to homedecor_office/textures/homedecor_desk_drawers.png diff --git a/homedecor/textures/homedecor_desk_globe_inv.png b/homedecor_office/textures/homedecor_desk_globe_inv.png similarity index 100% rename from homedecor/textures/homedecor_desk_globe_inv.png rename to homedecor_office/textures/homedecor_desk_globe_inv.png diff --git a/homedecor/textures/homedecor_desk_inv.png b/homedecor_office/textures/homedecor_desk_inv.png similarity index 100% rename from homedecor/textures/homedecor_desk_inv.png rename to homedecor_office/textures/homedecor_desk_inv.png diff --git a/homedecor/textures/homedecor_earth.png b/homedecor_office/textures/homedecor_earth.png similarity index 100% rename from homedecor/textures/homedecor_earth.png rename to homedecor_office/textures/homedecor_earth.png diff --git a/homedecor/textures/homedecor_filing_cabinet_bottom.png b/homedecor_office/textures/homedecor_filing_cabinet_bottom.png similarity index 100% rename from homedecor/textures/homedecor_filing_cabinet_bottom.png rename to homedecor_office/textures/homedecor_filing_cabinet_bottom.png diff --git a/homedecor/textures/homedecor_filing_cabinet_front.png b/homedecor_office/textures/homedecor_filing_cabinet_front.png similarity index 100% rename from homedecor/textures/homedecor_filing_cabinet_front.png rename to homedecor_office/textures/homedecor_filing_cabinet_front.png diff --git a/homedecor_pictures_and_paintings/depends.txt b/homedecor_pictures_and_paintings/depends.txt new file mode 100644 index 0000000..d0de51e --- /dev/null +++ b/homedecor_pictures_and_paintings/depends.txt @@ -0,0 +1,3 @@ +homedecor_common +default +dye diff --git a/homedecor_pictures_and_paintings/init.lua b/homedecor_pictures_and_paintings/init.lua new file mode 100644 index 0000000..6608107 --- /dev/null +++ b/homedecor_pictures_and_paintings/init.lua @@ -0,0 +1,162 @@ +local S = homedecor.gettext + +local pframe_cbox = { + type = "fixed", + fixed = { -0.18, -0.5, -0.08, 0.18, -0.08, 0.18 } +} +local n = { 1, 2 } + +for _, i in ipairs(n) do + homedecor.register("picture_frame"..i, { + description = S("Picture Frame "..i), + mesh = "homedecor_picture_frame.obj", + tiles = { + "homedecor_picture_frame_image"..i..".png", + homedecor.lux_wood, + "homedecor_picture_frame_back.png", + }, + inventory_image = "homedecor_picture_frame"..i.."_inv.png", + wield_image = "homedecor_picture_frame"..i.."_inv.png", + groups = {snappy = 3}, + selection_box = pframe_cbox, + walkable = false, + sounds = default.node_sound_glass_defaults() + }) +end + +local p_cbox = { + type = "fixed", + fixed = { + { -0.5, -0.5, 0.4375, 0.5, 0.5, 0.5 } + } +} + +for i = 1,20 do + homedecor.register("painting_"..i, { + description = S("Decorative painting #@1", i), + mesh = "homedecor_painting.obj", + tiles = { + "default_wood.png", + "homedecor_blank_canvas.png", + "homedecor_painting"..i..".png" + }, + selection_box = p_cbox, + walkable = false, + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + }) +end + +-- crafting + +minetest.register_craftitem(":homedecor:blank_canvas", { + description = S("Blank Canvas"), + inventory_image = "homedecor_blank_canvas.png" +}) + +-- paintings + +minetest.register_craft({ + output = "homedecor:blank_canvas", + recipe = { + { "", "group:stick", "" }, + { "group:stick", "wool:white", "group:stick" }, + { "", "group:stick", "" }, + } +}) + +local painting_patterns = { + [1] = { { "brown", "red", "brown" }, + { "dark_green", "red", "green" } }, + + [2] = { { "green", "yellow", "green" }, + { "green", "yellow", "green" } }, + + [3] = { { "green", "pink", "green" }, + { "brown", "pink", "brown" } }, + + [4] = { { "black", "orange", "grey" }, + { "dark_green", "orange", "orange" } }, + + [5] = { { "blue", "orange", "yellow" }, + { "green", "red", "brown" } }, + + [6] = { { "green", "red", "orange" }, + { "orange", "yellow", "green" } }, + + [7] = { { "blue", "dark_green", "dark_green" }, + { "green", "grey", "green" } }, + + [8] = { { "blue", "blue", "blue" }, + { "green", "green", "green" } }, + + [9] = { { "blue", "blue", "dark_green" }, + { "green", "grey", "dark_green" } }, + + [10] = { { "green", "white", "green" }, + { "dark_green", "white", "dark_green" } }, + + [11] = { { "blue", "white", "blue" }, + { "blue", "grey", "dark_green" } }, + + [12] = { { "green", "green", "green" }, + { "grey", "grey", "green" } }, + + [13] = { { "blue", "blue", "grey" }, + { "dark_green", "white", "white" } }, + + [14] = { { "red", "yellow", "blue" }, + { "blue", "green", "violet" } }, + + [15] = { { "blue", "yellow", "blue" }, + { "black", "black", "black" } }, + + [16] = { { "red", "orange", "blue" }, + { "black", "dark_grey", "grey" } }, + + [17] = { { "orange", "yellow", "orange" }, + { "black", "black", "black" } }, + + [18] = { { "grey", "dark_green", "grey" }, + { "white", "white", "white" } }, + + [19] = { { "white", "brown", "green" }, + { "green", "brown", "brown" } }, + + [20] = { { "blue", "blue", "blue" }, + { "red", "brown", "grey" } } +} + +for i,recipe in pairs(painting_patterns) do + + local item1 = "dye:"..recipe[1][1] + local item2 = "dye:"..recipe[1][2] + local item3 = "dye:"..recipe[1][3] + local item4 = "dye:"..recipe[2][1] + local item5 = "dye:"..recipe[2][2] + local item6 = "dye:"..recipe[2][3] + + minetest.register_craft({ + output = "homedecor:painting_"..i, + recipe = { + { item1, item2, item3 }, + { item4, item5, item6 }, + {"", "homedecor:blank_canvas", "" } + } + }) +end + +local picture_dyes = { + {"dye:brown", "dye:green"}, -- the figure sitting by the tree, wielding a pick + {"dye:green", "dye:blue"} -- the "family photo" +} + +for i in ipairs(picture_dyes) do + minetest.register_craft({ + output = "homedecor:picture_frame"..i, + recipe = { + { picture_dyes[i][1], picture_dyes[i][2] }, + { "homedecor:blank_canvas", "group:stick" }, + }, + }) +end diff --git a/homedecor/models/homedecor_painting.obj b/homedecor_pictures_and_paintings/models/homedecor_painting.obj similarity index 100% rename from homedecor/models/homedecor_painting.obj rename to homedecor_pictures_and_paintings/models/homedecor_painting.obj diff --git a/homedecor/models/homedecor_picture_frame.obj b/homedecor_pictures_and_paintings/models/homedecor_picture_frame.obj similarity index 100% rename from homedecor/models/homedecor_picture_frame.obj rename to homedecor_pictures_and_paintings/models/homedecor_picture_frame.obj diff --git a/homedecor/textures/homedecor_blank_canvas.png b/homedecor_pictures_and_paintings/textures/homedecor_blank_canvas.png similarity index 100% rename from homedecor/textures/homedecor_blank_canvas.png rename to homedecor_pictures_and_paintings/textures/homedecor_blank_canvas.png diff --git a/homedecor/textures/homedecor_painting1.png b/homedecor_pictures_and_paintings/textures/homedecor_painting1.png similarity index 100% rename from homedecor/textures/homedecor_painting1.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting1.png diff --git a/homedecor/textures/homedecor_painting10.png b/homedecor_pictures_and_paintings/textures/homedecor_painting10.png similarity index 100% rename from homedecor/textures/homedecor_painting10.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting10.png diff --git a/homedecor/textures/homedecor_painting11.png b/homedecor_pictures_and_paintings/textures/homedecor_painting11.png similarity index 100% rename from homedecor/textures/homedecor_painting11.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting11.png diff --git a/homedecor/textures/homedecor_painting12.png b/homedecor_pictures_and_paintings/textures/homedecor_painting12.png similarity index 100% rename from homedecor/textures/homedecor_painting12.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting12.png diff --git a/homedecor/textures/homedecor_painting13.png b/homedecor_pictures_and_paintings/textures/homedecor_painting13.png similarity index 100% rename from homedecor/textures/homedecor_painting13.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting13.png diff --git a/homedecor/textures/homedecor_painting14.png b/homedecor_pictures_and_paintings/textures/homedecor_painting14.png similarity index 100% rename from homedecor/textures/homedecor_painting14.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting14.png diff --git a/homedecor/textures/homedecor_painting15.png b/homedecor_pictures_and_paintings/textures/homedecor_painting15.png similarity index 100% rename from homedecor/textures/homedecor_painting15.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting15.png diff --git a/homedecor/textures/homedecor_painting16.png b/homedecor_pictures_and_paintings/textures/homedecor_painting16.png similarity index 100% rename from homedecor/textures/homedecor_painting16.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting16.png diff --git a/homedecor/textures/homedecor_painting17.png b/homedecor_pictures_and_paintings/textures/homedecor_painting17.png similarity index 100% rename from homedecor/textures/homedecor_painting17.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting17.png diff --git a/homedecor/textures/homedecor_painting18.png b/homedecor_pictures_and_paintings/textures/homedecor_painting18.png similarity index 100% rename from homedecor/textures/homedecor_painting18.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting18.png diff --git a/homedecor/textures/homedecor_painting19.png b/homedecor_pictures_and_paintings/textures/homedecor_painting19.png similarity index 100% rename from homedecor/textures/homedecor_painting19.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting19.png diff --git a/homedecor/textures/homedecor_painting2.png b/homedecor_pictures_and_paintings/textures/homedecor_painting2.png similarity index 100% rename from homedecor/textures/homedecor_painting2.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting2.png diff --git a/homedecor/textures/homedecor_painting20.png b/homedecor_pictures_and_paintings/textures/homedecor_painting20.png similarity index 100% rename from homedecor/textures/homedecor_painting20.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting20.png diff --git a/homedecor/textures/homedecor_painting3.png b/homedecor_pictures_and_paintings/textures/homedecor_painting3.png similarity index 100% rename from homedecor/textures/homedecor_painting3.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting3.png diff --git a/homedecor/textures/homedecor_painting4.png b/homedecor_pictures_and_paintings/textures/homedecor_painting4.png similarity index 100% rename from homedecor/textures/homedecor_painting4.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting4.png diff --git a/homedecor/textures/homedecor_painting5.png b/homedecor_pictures_and_paintings/textures/homedecor_painting5.png similarity index 100% rename from homedecor/textures/homedecor_painting5.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting5.png diff --git a/homedecor/textures/homedecor_painting6.png b/homedecor_pictures_and_paintings/textures/homedecor_painting6.png similarity index 100% rename from homedecor/textures/homedecor_painting6.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting6.png diff --git a/homedecor/textures/homedecor_painting7.png b/homedecor_pictures_and_paintings/textures/homedecor_painting7.png similarity index 100% rename from homedecor/textures/homedecor_painting7.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting7.png diff --git a/homedecor/textures/homedecor_painting8.png b/homedecor_pictures_and_paintings/textures/homedecor_painting8.png similarity index 100% rename from homedecor/textures/homedecor_painting8.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting8.png diff --git a/homedecor/textures/homedecor_painting9.png b/homedecor_pictures_and_paintings/textures/homedecor_painting9.png similarity index 100% rename from homedecor/textures/homedecor_painting9.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting9.png diff --git a/homedecor/textures/homedecor_painting_back.png b/homedecor_pictures_and_paintings/textures/homedecor_painting_back.png similarity index 100% rename from homedecor/textures/homedecor_painting_back.png rename to homedecor_pictures_and_paintings/textures/homedecor_painting_back.png diff --git a/homedecor/textures/homedecor_picture_frame1_inv.png b/homedecor_pictures_and_paintings/textures/homedecor_picture_frame1_inv.png similarity index 100% rename from homedecor/textures/homedecor_picture_frame1_inv.png rename to homedecor_pictures_and_paintings/textures/homedecor_picture_frame1_inv.png diff --git a/homedecor/textures/homedecor_picture_frame2_inv.png b/homedecor_pictures_and_paintings/textures/homedecor_picture_frame2_inv.png similarity index 100% rename from homedecor/textures/homedecor_picture_frame2_inv.png rename to homedecor_pictures_and_paintings/textures/homedecor_picture_frame2_inv.png diff --git a/homedecor/textures/homedecor_picture_frame_back.png b/homedecor_pictures_and_paintings/textures/homedecor_picture_frame_back.png similarity index 100% rename from homedecor/textures/homedecor_picture_frame_back.png rename to homedecor_pictures_and_paintings/textures/homedecor_picture_frame_back.png diff --git a/homedecor/textures/homedecor_picture_frame_image1.png b/homedecor_pictures_and_paintings/textures/homedecor_picture_frame_image1.png similarity index 100% rename from homedecor/textures/homedecor_picture_frame_image1.png rename to homedecor_pictures_and_paintings/textures/homedecor_picture_frame_image1.png diff --git a/homedecor/textures/homedecor_picture_frame_image2.png b/homedecor_pictures_and_paintings/textures/homedecor_picture_frame_image2.png similarity index 100% rename from homedecor/textures/homedecor_picture_frame_image2.png rename to homedecor_pictures_and_paintings/textures/homedecor_picture_frame_image2.png diff --git a/homedecor_roofing/depends.txt b/homedecor_roofing/depends.txt new file mode 100644 index 0000000..d0de51e --- /dev/null +++ b/homedecor_roofing/depends.txt @@ -0,0 +1,3 @@ +homedecor_common +default +dye diff --git a/homedecor/roofing.lua b/homedecor_roofing/init.lua similarity index 86% rename from homedecor/roofing.lua rename to homedecor_roofing/init.lua index 1299fcb..31f2a1e 100755 --- a/homedecor/roofing.lua +++ b/homedecor_roofing/init.lua @@ -1,9 +1,9 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local function N_(x) return x end -minetest.register_node("homedecor:skylight", { +minetest.register_node(":homedecor:skylight", { description = S("Glass Skylight"), drawtype = "raillike", tiles = { "default_glass.png" }, @@ -15,7 +15,7 @@ minetest.register_node("homedecor:skylight", { selection_box = homedecor.nodebox.slab_y(0.1), }) -minetest.register_node("homedecor:skylight_frosted", { +minetest.register_node(":homedecor:skylight_frosted", { description = S("Glass Skylight Frosted"), drawtype = "raillike", tiles = { "homedecor_skylight_frosted.png" }, @@ -29,7 +29,7 @@ minetest.register_node("homedecor:skylight_frosted", { }) for _, s in pairs({ N_("asphalt"), N_("terracotta"), N_("wood") }) do - minetest.register_node("homedecor:shingles_"..s, { + minetest.register_node(":homedecor:shingles_"..s, { description = S("Shingles (@1)", S(s)), drawtype = "raillike", tiles = { "homedecor_shingles_"..s..".png" }, @@ -83,7 +83,7 @@ homedecor.register_outer_corner = function(modname, subname, groups, slope_image tiles = { "homedecor_slope_outer_corner_"..slope_image..".png" } end - minetest.register_node(modname..":shingle_outer_corner_" .. subname, { + minetest.register_node(":"..modname..":shingle_outer_corner_" .. subname, { description = S("@1 (outer corner)", description), drawtype = "mesh", mesh = "homedecor_slope_outer_corner.obj", @@ -105,7 +105,7 @@ homedecor.register_inner_corner = function(modname, subname, groups, slope_image tiles = { "homedecor_slope_outer_corner_"..slope_image..".png" } end - minetest.register_node(modname..":shingle_inner_corner_" .. subname, { + minetest.register_node(":"..modname..":shingle_inner_corner_" .. subname, { description = S("@1 (inner corner)", description), drawtype = "mesh", mesh = "homedecor_slope_inner_corner.obj", @@ -126,7 +126,7 @@ homedecor.register_slope = function(modname, subname, recipeitem, groups, slope_ tiles = { "homedecor_slope_outer_corner_"..slope_image..".png" } end - minetest.register_node(modname..":shingle_side_" .. subname, { + minetest.register_node(":"..modname..":shingle_side_" .. subname, { description = description, drawtype = "mesh", mesh = "homedecor_slope.obj", @@ -319,3 +319,43 @@ homedecor.register("chimney", { groups = {cracky=3}, sounds = default.node_sound_stone_defaults() }) + +-- crafting + +minetest.register_craft( { + output = "homedecor:skylight 4", + recipe = { + { "homedecor:glass_table_large", "homedecor:glass_table_large" }, + { "homedecor:glass_table_large", "homedecor:glass_table_large" }, + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "homedecor:skylight_frosted", + recipe = { + "dye:white", + "homedecor:skylight" + }, +}) + +minetest.register_craft({ + type = "cooking", + output = "homedecor:skylight", + recipe = "homedecor:skylight_frosted", +}) + +-- recycling + +minetest.register_craft({ + type = "shapeless", + output = "vessels:glass_fragments 2", + recipe = { + "homedecor:skylight", + "homedecor:skylight", + "homedecor:skylight", + "homedecor:skylight", + "homedecor:skylight", + "homedecor:skylight" + } +}) diff --git a/homedecor/textures/homedecor_shingles_asphalt_inv.png b/homedecor_roofing/textures/homedecor_shingles_asphalt_inv.png similarity index 100% rename from homedecor/textures/homedecor_shingles_asphalt_inv.png rename to homedecor_roofing/textures/homedecor_shingles_asphalt_inv.png diff --git a/homedecor/textures/homedecor_shingles_glass.png b/homedecor_roofing/textures/homedecor_shingles_glass.png similarity index 100% rename from homedecor/textures/homedecor_shingles_glass.png rename to homedecor_roofing/textures/homedecor_shingles_glass.png diff --git a/homedecor/textures/homedecor_shingles_wood_inv.png b/homedecor_roofing/textures/homedecor_shingles_wood_inv.png similarity index 100% rename from homedecor/textures/homedecor_shingles_wood_inv.png rename to homedecor_roofing/textures/homedecor_shingles_wood_inv.png diff --git a/homedecor/textures/homedecor_skylight_frosted.png b/homedecor_roofing/textures/homedecor_skylight_frosted.png similarity index 100% rename from homedecor/textures/homedecor_skylight_frosted.png rename to homedecor_roofing/textures/homedecor_skylight_frosted.png diff --git a/homedecor/textures/homedecor_skylight_frosted_inv.png b/homedecor_roofing/textures/homedecor_skylight_frosted_inv.png similarity index 100% rename from homedecor/textures/homedecor_skylight_frosted_inv.png rename to homedecor_roofing/textures/homedecor_skylight_frosted_inv.png diff --git a/homedecor/textures/homedecor_skylight_inv.png b/homedecor_roofing/textures/homedecor_skylight_inv.png similarity index 100% rename from homedecor/textures/homedecor_skylight_inv.png rename to homedecor_roofing/textures/homedecor_skylight_inv.png diff --git a/lrfurn/README.txt b/homedecor_seating/README.txt similarity index 100% rename from lrfurn/README.txt rename to homedecor_seating/README.txt diff --git a/lrfurn/armchairs.lua b/homedecor_seating/armchairs.lua similarity index 67% rename from lrfurn/armchairs.lua rename to homedecor_seating/armchairs.lua index fcb84e5..36f47cb 100755 --- a/lrfurn/armchairs.lua +++ b/homedecor_seating/armchairs.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local armchair_cbox = { type = "fixed", fixed = { @@ -8,7 +8,7 @@ local armchair_cbox = { } } -minetest.register_node("lrfurn:armchair", { +minetest.register_node(":lrfurn:armchair", { description = S("Armchair"), drawtype = "mesh", mesh = "lrfurn_armchair.obj", @@ -26,6 +26,7 @@ minetest.register_node("lrfurn:armchair", { after_place_node = function(pos, placer, itemstack, pointed_thing) unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) end, + on_dig = unifieddyes.on_dig, on_rotate = unifieddyes.fix_after_screwdriver_nsew, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) if not clicker:is_player() then @@ -38,6 +39,29 @@ minetest.register_node("lrfurn:armchair", { end }) +homedecor.register("armchair", { + description = S("Armchair"), + mesh = "forniture_armchair.obj", + tiles = { + "wool_white.png", + { name = "wool_dark_grey.png", color = 0xffffffff }, + { name = "default_wood.png", color = 0xffffffff } + }, + inventory_image = "homedecor_armchair_inv.png", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + groups = {snappy=3, ud_param2_colorable = 1}, + sounds = default.node_sound_wood_defaults(), + node_box = armchair_cbox, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rotate = unifieddyes.fix_after_screwdriver_nsew, +}) + +-- crafts + minetest.register_craft({ output = "lrfurn:armchair", recipe = { @@ -67,6 +91,34 @@ unifieddyes.register_color_craft({ } }) +minetest.register_craft({ + output = "homedecor:armchair 2", + recipe = { + { "wool:white",""}, + { "group:wood","group:wood" }, + { "wool:white","wool:white" }, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:armchair", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:armchair", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:armchair", + burntime = 30, +}) + +minetest.register_alias('armchair', 'homedecor:armchair') + -- convert old static nodes to param2 color lrfurn.old_static_armchairs = {} @@ -76,7 +128,7 @@ for _, color in ipairs(lrfurn.colors) do end minetest.register_lbm({ - name = "lrfurn:convert_armchairs", + name = ":lrfurn:convert_armchairs", label = "Convert lrfurn armchairs to use param2 color", run_at_every_load = false, nodenames = lrfurn.old_static_armchairs, diff --git a/homedecor_seating/depends.txt b/homedecor_seating/depends.txt new file mode 100644 index 0000000..c238ee6 --- /dev/null +++ b/homedecor_seating/depends.txt @@ -0,0 +1,5 @@ +default +wool +homedecor_common +unifieddyes +basic_materials diff --git a/lrfurn/init.lua b/homedecor_seating/init.lua similarity index 85% rename from lrfurn/init.lua rename to homedecor_seating/init.lua index 631e79a..fe10327 100755 --- a/lrfurn/init.lua +++ b/homedecor_seating/init.lua @@ -1,4 +1,8 @@ -local S = homedecor_i18n.gettext +-- Home decor seating +-- forked from the previous lrfurn mod + +local S = homedecor.gettext +local modpath = minetest.get_modpath("homedecor_seating") lrfurn = {} screwdriver = screwdriver or {} @@ -68,8 +72,7 @@ function lrfurn.fix_sofa_rotation_nsew(pos, placer, itemstack, pointed_thing) minetest.swap_node(pos, { name = node.name, param2 = fdir+colorbits }) end -dofile(minetest.get_modpath("lrfurn").."/longsofas.lua") -dofile(minetest.get_modpath("lrfurn").."/sofas.lua") -dofile(minetest.get_modpath("lrfurn").."/armchairs.lua") -dofile(minetest.get_modpath("lrfurn").."/coffeetable.lua") -dofile(minetest.get_modpath("lrfurn").."/endtable.lua") +dofile(modpath.."/longsofas.lua") +dofile(modpath.."/sofas.lua") +dofile(modpath.."/armchairs.lua") +dofile(modpath.."/misc.lua") diff --git a/lrfurn/longsofas.lua b/homedecor_seating/longsofas.lua similarity index 96% rename from lrfurn/longsofas.lua rename to homedecor_seating/longsofas.lua index eeb3ca2..b9ed4e9 100755 --- a/lrfurn/longsofas.lua +++ b/homedecor_seating/longsofas.lua @@ -1,12 +1,12 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local longsofa_cbox = { type = "wallmounted", wall_side = {-0.5, -0.5, -0.5, 0.5, 0.5, 2.5}, } -minetest.register_node("lrfurn:longsofa", { +minetest.register_node(":lrfurn:longsofa", { description = S("Long Sofa"), drawtype = "mesh", mesh = "lrfurn_sofa_long.obj", @@ -41,6 +41,7 @@ minetest.register_node("lrfurn:longsofa", { end return itemstack end, + on_dig = unifieddyes.on_dig, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) if not clicker:is_player() then return itemstack @@ -90,7 +91,7 @@ for _, color in ipairs(lrfurn.colors) do end minetest.register_lbm({ - name = "lrfurn:convert_longsofas", + name = ":lrfurn:convert_longsofas", label = "Convert lrfurn long sofas to use param2 color", run_at_every_load = false, nodenames = lrfurn.old_static_longsofas, diff --git a/homedecor_seating/misc.lua b/homedecor_seating/misc.lua new file mode 100644 index 0000000..e34a6fa --- /dev/null +++ b/homedecor_seating/misc.lua @@ -0,0 +1,335 @@ +-- this component contains all of the random types of seating previously +-- scattered among homedecor's other mods + +local dc_cbox = { + type = "fixed", + fixed = { -0.5, -0.5, -0.5, 0.5, 0, 1 } +} + +homedecor.register("deckchair", { + mesh = "homedecor_deckchair.obj", + tiles = {"homedecor_deckchair.png"}, + description = "Deck Chair", + groups = { snappy = 3 }, + expand = { forward="placeholder" }, + sounds = default.node_sound_wood_defaults(), + selection_box = dc_cbox, + collision_box = dc_cbox, + on_rotate = screwdriver.disallow +}) + +minetest.register_alias("homedecor:deckchair_foot", "homedecor:deckchair") +minetest.register_alias("homedecor:deckchair_head", "air") + +homedecor.register("deckchair_striped_blue", { + mesh = "homedecor_deckchair.obj", + tiles = {"homedecor_deckchair_striped_blue.png"}, + description = "Deck Chair (blue striped)", + groups = { snappy = 3 }, + expand = { forward="placeholder" }, + sounds = default.node_sound_wood_defaults(), + selection_box = dc_cbox, + collision_box = dc_cbox, + on_rotate = screwdriver.disallow +}) + +homedecor.register("simple_bench", { + tiles = { "homedecor_generic_wood_old.png" }, + description = "Simple Bench", + groups = {snappy=3}, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.15, 0, 0.5, -0.05, 0.4}, + {-0.4, -0.5, 0.1, -0.3, -0.15, 0.3}, + { 0.3, -0.5, 0.1, 0.4, -0.15, 0.3}, + } + }, + sounds = default.node_sound_wood_defaults(), +}) + +local bl1_sbox = { + type = "fixed", + fixed = { -0.5, -0.5, -0.25, 1.5, 0.5, 0.5 } +} + +local bl1_cbox = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.25, 1.5, 0, 0.5 }, + {-0.5, -0.5, 0.45, 1.5, 0.5, 0.5 }, + } +} + +homedecor.register("bench_large_1", { + mesh = "homedecor_bench_large_1.obj", + tiles = { + "homedecor_generic_wood_old.png", + "homedecor_generic_metal_wrought_iron.png" + }, + description = "Garden Bench (style 1)", + inventory_image = "homedecor_bench_large_1_inv.png", + groups = { snappy = 3 }, + expand = { right="placeholder" }, + sounds = default.node_sound_wood_defaults(), + selection_box = bl1_sbox, + node_box = bl1_cbox, + on_rotate = screwdriver.disallow +}) + +minetest.register_alias("homedecor:bench_large_1_left", "homedecor:bench_large_1") +minetest.register_alias("homedecor:bench_large_1_right", "air") + +local bl2_sbox = { + type = "fixed", + fixed = { -0.5, -0.5, -0.25, 1.5, 0.5, 0.5 } +} + +local bl2_cbox = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.25, 1.5, 0, 0.5 }, + {-0.5, -0.5, 0.45, 1.5, 0.5, 0.5 }, + } +} + +homedecor.register("bench_large_2", { + description = "Garden Bench (style 2)", + mesh = "homedecor_bench_large_2.obj", + tiles = { "homedecor_generic_wood_old.png" }, + inventory_image = "homedecor_bench_large_2_inv.png", + groups = {snappy=3}, + selection_box = bl2_sbox, + node_box = bl2_cbox, + expand = { right="placeholder" }, + sounds = default.node_sound_wood_defaults(), + on_rotate = screwdriver.disallow +}) + +minetest.register_alias("homedecor:bench_large_2_left", "homedecor:bench_large_2") +minetest.register_alias("homedecor:bench_large_2_right", "air") + +local kc_cbox = { + type = "fixed", + fixed = { -0.3125, -0.3125, -0.5, 0.3125, 0.3125, 0.5 }, +} + +homedecor.register("kitchen_chair_wood", { + description = "Kitchen chair", + mesh = "homedecor_kitchen_chair.obj", + tiles = { + homedecor.plain_wood, + homedecor.plain_wood + }, + inventory_image = "homedecor_chair_wood_inv.png", + paramtype2 = "wallmounted", + selection_box = kc_cbox, + collision_box = kc_cbox, + groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2}, + sounds = default.node_sound_wood_defaults(), + after_place_node = unifieddyes.fix_rotation_nsew, + on_rotate = unifieddyes.fix_after_screwdriver_nsew, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + pos.y = pos.y+0 -- where do I put my ass ? + homedecor.sit(pos, node, clicker) + return itemstack + end +}) + +homedecor.register("kitchen_chair_padded", { + description = "Kitchen chair", + mesh = "homedecor_kitchen_chair.obj", + tiles = { + homedecor.plain_wood, + "wool_white.png", + }, + inventory_image = "homedecor_chair_padded_inv.png", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = kc_cbox, + collision_box = kc_cbox, + groups = {snappy=2,choppy=2,oddly_breakable_by_hand=2, ud_param2_colorable = 1}, + sounds = default.node_sound_wood_defaults(), + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation_nsew(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rotate = unifieddyes.fix_after_screwdriver_nsew, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + pos.y = pos.y+0 -- where do I put my ass ? + homedecor.sit(pos, node, clicker) + return itemstack + end +}) + +local ac_cbox = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0, 0.5 }, + {-0.5, -0.5, 0.4, 0.5, 0.5, 0.5 } + } +} + +local ofchairs_sbox = { + type = "fixed", + fixed = { -8/16, -8/16, -8/16, 8/16, 29/32, 8/16 } +} +local ofchairs_cbox = { + type = "fixed", + fixed = { + { -5/16, 1/16, -7/16, 5/16, 4/16, 7/16 }, -- seat + { -5/16, 4/16, 4/16, 5/16, 29/32, 15/32 }, -- seatback + { -1/16, -11/32, -1/16, 1/16, 1/16, 1/16 }, -- cylinder + { -8/16, -8/16, -8/16, 8/16, -11/32, 8/16 } -- legs/wheels + } +} + +local chairs = { + { "basic", "Basic office chair" }, + { "upscale", "Upscale office chair" }, +} + +for _, c in pairs(chairs) do + local name, desc = unpack(c) + homedecor.register("office_chair_"..name, { + description = desc, + drawtype = "mesh", + tiles = { "homedecor_office_chair_"..name..".png" }, + mesh = "homedecor_office_chair_"..name..".obj", + groups = { snappy = 3 }, + sounds = default.node_sound_wood_defaults(), + selection_box = ofchairs_sbox, + collision_box = ofchairs_cbox, + expand = { top = "placeholder" }, + on_rotate = screwdriver.rotate_simple + }) +end + +-- crafts! + +minetest.register_craft( { + output = "homedecor:bench_large_1", + recipe = { + { "group:wood", "group:wood", "group:wood" }, + { "group:wood", "group:wood", "group:wood" }, + { "basic_materials:steel_bar", "", "basic_materials:steel_bar" } + }, +}) + +minetest.register_craft( { + output = "homedecor:bench_large_2_left", + recipe = { + { "homedecor:shutter_oak", "homedecor:shutter_oak", "homedecor:shutter_oak" }, + { "group:wood", "group:wood", "group:wood" }, + { "stairs:slab_wood", "", "stairs:slab_wood" } + }, +}) + +minetest.register_craft( { + output = "homedecor:bench_large_2_left", + recipe = { + { "homedecor:shutter_oak", "homedecor:shutter_oak", "homedecor:shutter_oak" }, + { "group:wood", "group:wood", "group:wood" }, + { "moreblocks:slab_wood", "", "moreblocks:slab_wood" } + }, +}) + +minetest.register_craft( { + output = "homedecor:simple_bench", + recipe = { + { "stairs:slab_wood", "stairs:slab_wood", "stairs:slab_wood" }, + { "stairs:slab_wood", "", "stairs:slab_wood" } + }, +}) + +minetest.register_craft( { + output = "homedecor:simple_bench", + recipe = { + { "moreblocks:slab_wood", "moreblocks:slab_wood", "moreblocks:slab_wood" }, + { "moreblocks:slab_wood", "", "moreblocks:slab_wood" } + }, +}) + + +minetest.register_craft({ + output = "homedecor:deckchair", + recipe = { + { "group:stick", "building_blocks:terrycloth_towel", "group:stick" }, + { "group:stick", "building_blocks:terrycloth_towel", "group:stick" }, + { "group:stick", "building_blocks:terrycloth_towel", "group:stick" } + }, +}) + +minetest.register_craft({ + output = "homedecor:deckchair_striped_blue", + type = "shapeless", + recipe = { + "homedecor:deckchair", + "dye:blue" + } +}) + +minetest.register_craft({ + output = "homedecor:kitchen_chair_wood 2", + recipe = { + { "group:stick",""}, + { "group:wood","group:wood" }, + { "group:stick","group:stick" }, + }, +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:kitchen_chair_padded", + recipe = { + "homedecor:kitchen_chair_wood", + "wool:white", + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:kitchen_chair_padded", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:kitchen_chair_padded", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:kitchen_chair_wood", + burntime = 15, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:kitchen_chair_padded", + burntime = 15, +}) + + +minetest.register_craft({ + output = "homedecor:office_chair_basic", + recipe = { + { "", "", "wool:black" }, + { "", "wool:black", "default:steel_ingot" }, + { "group:stick", "basic_materials:steel_bar", "group:stick" } + }, +}) + +minetest.register_craft({ + output = "homedecor:office_chair_upscale", + recipe = { + { "dye:black", "building_blocks:sticks", "group:wool" }, + { "basic_materials:plastic_sheet", "group:wool", "default:steel_ingot" }, + { "building_blocks:sticks", "basic_materials:steel_bar", "building_blocks:sticks" } + }, +}) + +-- aliases + +minetest.register_alias("3dforniture:chair", "homedecor:chair") +minetest.register_alias('chair', 'homedecor:chair') diff --git a/homedecor/models/forniture_armchair.obj b/homedecor_seating/models/forniture_armchair.obj similarity index 100% rename from homedecor/models/forniture_armchair.obj rename to homedecor_seating/models/forniture_armchair.obj diff --git a/homedecor/models/homedecor_bench_large_1.obj b/homedecor_seating/models/homedecor_bench_large_1.obj similarity index 100% rename from homedecor/models/homedecor_bench_large_1.obj rename to homedecor_seating/models/homedecor_bench_large_1.obj diff --git a/homedecor/models/homedecor_bench_large_2.obj b/homedecor_seating/models/homedecor_bench_large_2.obj similarity index 100% rename from homedecor/models/homedecor_bench_large_2.obj rename to homedecor_seating/models/homedecor_bench_large_2.obj diff --git a/homedecor/models/homedecor_deckchair.obj b/homedecor_seating/models/homedecor_deckchair.obj similarity index 100% rename from homedecor/models/homedecor_deckchair.obj rename to homedecor_seating/models/homedecor_deckchair.obj diff --git a/homedecor/models/homedecor_kitchen_chair.obj b/homedecor_seating/models/homedecor_kitchen_chair.obj similarity index 100% rename from homedecor/models/homedecor_kitchen_chair.obj rename to homedecor_seating/models/homedecor_kitchen_chair.obj diff --git a/homedecor/models/homedecor_office_chair_basic.obj b/homedecor_seating/models/homedecor_office_chair_basic.obj similarity index 100% rename from homedecor/models/homedecor_office_chair_basic.obj rename to homedecor_seating/models/homedecor_office_chair_basic.obj diff --git a/homedecor/models/homedecor_office_chair_upscale.obj b/homedecor_seating/models/homedecor_office_chair_upscale.obj similarity index 100% rename from homedecor/models/homedecor_office_chair_upscale.obj rename to homedecor_seating/models/homedecor_office_chair_upscale.obj diff --git a/lrfurn/models/lrfurn_armchair.obj b/homedecor_seating/models/lrfurn_armchair.obj similarity index 100% rename from lrfurn/models/lrfurn_armchair.obj rename to homedecor_seating/models/lrfurn_armchair.obj diff --git a/lrfurn/models/lrfurn_sofa_long.obj b/homedecor_seating/models/lrfurn_sofa_long.obj similarity index 100% rename from lrfurn/models/lrfurn_sofa_long.obj rename to homedecor_seating/models/lrfurn_sofa_long.obj diff --git a/lrfurn/models/lrfurn_sofa_short.obj b/homedecor_seating/models/lrfurn_sofa_short.obj similarity index 100% rename from lrfurn/models/lrfurn_sofa_short.obj rename to homedecor_seating/models/lrfurn_sofa_short.obj diff --git a/lrfurn/sofas.lua b/homedecor_seating/sofas.lua similarity index 96% rename from lrfurn/sofas.lua rename to homedecor_seating/sofas.lua index 6f89bea..94febb1 100755 --- a/lrfurn/sofas.lua +++ b/homedecor_seating/sofas.lua @@ -1,12 +1,12 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local sofa_cbox = { type = "wallmounted", wall_side = {-0.5, -0.5, -0.5, 0.5, 0.5, 1.5} } -minetest.register_node("lrfurn:sofa", { +minetest.register_node(":lrfurn:sofa", { description = S("Sofa"), drawtype = "mesh", mesh = "lrfurn_sofa_short.obj", @@ -41,6 +41,7 @@ minetest.register_node("lrfurn:sofa", { end return itemstack end, + on_dig = unifieddyes.on_dig, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) if not clicker:is_player() then return itemstack @@ -90,7 +91,7 @@ for _, color in ipairs(lrfurn.colors) do end minetest.register_lbm({ - name = "lrfurn:convert_sofas", + name = ":lrfurn:convert_sofas", label = "Convert lrfurn short sofas to use param2 color", run_at_every_load = false, nodenames = lrfurn.old_static_sofas, diff --git a/homedecor/textures/homedecor_armchair_inv.png b/homedecor_seating/textures/homedecor_armchair_inv.png similarity index 100% rename from homedecor/textures/homedecor_armchair_inv.png rename to homedecor_seating/textures/homedecor_armchair_inv.png diff --git a/homedecor/textures/homedecor_bench_large_1_inv.png b/homedecor_seating/textures/homedecor_bench_large_1_inv.png similarity index 100% rename from homedecor/textures/homedecor_bench_large_1_inv.png rename to homedecor_seating/textures/homedecor_bench_large_1_inv.png diff --git a/homedecor/textures/homedecor_bench_large_2_inv.png b/homedecor_seating/textures/homedecor_bench_large_2_inv.png similarity index 100% rename from homedecor/textures/homedecor_bench_large_2_inv.png rename to homedecor_seating/textures/homedecor_bench_large_2_inv.png diff --git a/homedecor/textures/homedecor_chair_padded_inv.png b/homedecor_seating/textures/homedecor_chair_padded_inv.png similarity index 100% rename from homedecor/textures/homedecor_chair_padded_inv.png rename to homedecor_seating/textures/homedecor_chair_padded_inv.png diff --git a/homedecor/textures/homedecor_chair_wood_inv.png b/homedecor_seating/textures/homedecor_chair_wood_inv.png similarity index 100% rename from homedecor/textures/homedecor_chair_wood_inv.png rename to homedecor_seating/textures/homedecor_chair_wood_inv.png diff --git a/homedecor/textures/homedecor_deckchair.png b/homedecor_seating/textures/homedecor_deckchair.png similarity index 100% rename from homedecor/textures/homedecor_deckchair.png rename to homedecor_seating/textures/homedecor_deckchair.png diff --git a/homedecor/textures/homedecor_deckchair_striped_blue.png b/homedecor_seating/textures/homedecor_deckchair_striped_blue.png similarity index 100% rename from homedecor/textures/homedecor_deckchair_striped_blue.png rename to homedecor_seating/textures/homedecor_deckchair_striped_blue.png diff --git a/homedecor/textures/homedecor_office_chair_basic.png b/homedecor_seating/textures/homedecor_office_chair_basic.png similarity index 100% rename from homedecor/textures/homedecor_office_chair_basic.png rename to homedecor_seating/textures/homedecor_office_chair_basic.png diff --git a/homedecor/textures/homedecor_office_chair_upscale.png b/homedecor_seating/textures/homedecor_office_chair_upscale.png similarity index 100% rename from homedecor/textures/homedecor_office_chair_upscale.png rename to homedecor_seating/textures/homedecor_office_chair_upscale.png diff --git a/lrfurn/textures/lrfurn_armchair_inv.png b/homedecor_seating/textures/lrfurn_armchair_inv.png similarity index 100% rename from lrfurn/textures/lrfurn_armchair_inv.png rename to homedecor_seating/textures/lrfurn_armchair_inv.png diff --git a/lrfurn/textures/lrfurn_longsofa_inv.png b/homedecor_seating/textures/lrfurn_longsofa_inv.png similarity index 100% rename from lrfurn/textures/lrfurn_longsofa_inv.png rename to homedecor_seating/textures/lrfurn_longsofa_inv.png diff --git a/lrfurn/textures/lrfurn_sofa_bottom.png b/homedecor_seating/textures/lrfurn_sofa_bottom.png similarity index 100% rename from lrfurn/textures/lrfurn_sofa_bottom.png rename to homedecor_seating/textures/lrfurn_sofa_bottom.png diff --git a/lrfurn/textures/lrfurn_sofa_inv.png b/homedecor_seating/textures/lrfurn_sofa_inv.png similarity index 100% rename from lrfurn/textures/lrfurn_sofa_inv.png rename to homedecor_seating/textures/lrfurn_sofa_inv.png diff --git a/lrfurn/textures/lrfurn_upholstery.png b/homedecor_seating/textures/lrfurn_upholstery.png similarity index 100% rename from lrfurn/textures/lrfurn_upholstery.png rename to homedecor_seating/textures/lrfurn_upholstery.png diff --git a/lrfurn/coffeetable.lua b/homedecor_tables/coffeetable.lua similarity index 61% rename from lrfurn/coffeetable.lua rename to homedecor_tables/coffeetable.lua index 827657a..a9b4f20 100755 --- a/lrfurn/coffeetable.lua +++ b/homedecor_tables/coffeetable.lua @@ -1,10 +1,49 @@ +-- formerly lrfurn coffee table component -local S = homedecor_i18n.gettext +local S = homedecor.gettext + +local fdir_to_right = { + { 1, 0 }, + { 0, -1 }, + { -1, 0 }, + { 0, 1 }, +} + +local function check_right(pos, fdir, long, placer) + if not fdir or fdir > 3 then fdir = 0 end + + local pos2 = { x = pos.x + fdir_to_right[fdir+1][1], y=pos.y, z = pos.z + fdir_to_right[fdir+1][2] } + local pos3 = { x = pos.x + fdir_to_right[fdir+1][1] * 2, y=pos.y, z = pos.z + fdir_to_right[fdir+1][2] * 2 } + + local node2 = minetest.get_node(pos2) + if node2 and node2.name ~= "air" then + return false + elseif minetest.is_protected(pos2, placer:get_player_name()) then + if not long then + minetest.chat_send_player(placer:get_player_name(), S("Someone else owns the spot where other end goes!")) + else + minetest.chat_send_player(placer:get_player_name(), S("Someone else owns the spot where the middle or far end goes!")) + end + return false + end + + if long then + local node3 = minetest.get_node(pos3) + if node3 and node3.name ~= "air" then + return false + elseif minetest.is_protected(pos3, placer:get_player_name()) then + minetest.chat_send_player(placer:get_player_name(), S("Someone else owns the spot where the other end goes!")) + return false + end + end + + return true +end minetest.register_alias("lrfurn:coffeetable_back", "lrfurn:coffeetable") minetest.register_alias("lrfurn:coffeetable_front", "air") -minetest.register_node("lrfurn:coffeetable", { +minetest.register_node(":lrfurn:coffeetable", { description = S("Coffee Table"), drawtype = "nodebox", tiles = {"lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png"}, @@ -36,7 +75,7 @@ minetest.register_node("lrfurn:coffeetable", { local node = minetest.get_node(pos) local fdir = node.param2 - if lrfurn.check_right(pos, fdir, false, placer) then + if check_right(pos, fdir, false, placer) then minetest.set_node(pos, { name = node.name, param2 = (fdir + 1) % 4 }) else minetest.chat_send_player(placer:get_player_name(), diff --git a/homedecor_tables/depends.txt b/homedecor_tables/depends.txt new file mode 100644 index 0000000..fb5d601 --- /dev/null +++ b/homedecor_tables/depends.txt @@ -0,0 +1,3 @@ +homedecor_common +default +basic_materials diff --git a/lrfurn/endtable.lua b/homedecor_tables/endtable.lua similarity index 92% rename from lrfurn/endtable.lua rename to homedecor_tables/endtable.lua index a318376..c3bba97 100755 --- a/lrfurn/endtable.lua +++ b/homedecor_tables/endtable.lua @@ -1,7 +1,8 @@ +-- formerly lrfurn endtable component -local S = homedecor_i18n.gettext +local S = homedecor.gettext -minetest.register_node("lrfurn:endtable", { +minetest.register_node(":lrfurn:endtable", { description = S("End Table"), drawtype = "nodebox", tiles = {"lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png", "lrfurn_coffeetable_back.png"}, diff --git a/homedecor_tables/init.lua b/homedecor_tables/init.lua new file mode 100644 index 0000000..56ae778 --- /dev/null +++ b/homedecor_tables/init.lua @@ -0,0 +1,6 @@ +local modpath = minetest.get_modpath("homedecor_tables") + +dofile(modpath.."/misc.lua") +dofile(modpath.."/endtable.lua") +dofile(modpath.."/coffeetable.lua") + diff --git a/homedecor/tables.lua b/homedecor_tables/misc.lua similarity index 58% rename from homedecor/tables.lua rename to homedecor_tables/misc.lua index 70ced41..beb94c3 100755 --- a/homedecor/tables.lua +++ b/homedecor_tables/misc.lua @@ -1,7 +1,6 @@ +-- formerly homedecor's misc tables component -local S = homedecor_i18n.gettext - --- Various kinds of tables +local S = homedecor.gettext local materials = { { "glass", @@ -200,3 +199,172 @@ homedecor.register("utility_table_legs", { fixed = { -0.37, -0.5, -0.37, 0.37, 0.5, 0.37 } }, }) + +-- crafting + + +minetest.register_craft( { + output = "homedecor:glass_table_small_round_b 15", + recipe = { + { "", "default:glass", "" }, + { "default:glass", "default:glass", "default:glass" }, + { "", "default:glass", "" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:glass_table_small_square_b 2", + recipe = { + {"homedecor:glass_table_small_round", "homedecor:glass_table_small_round" }, + } +}) + +minetest.register_craft( { + output = "homedecor:glass_table_large_b 2", + recipe = { + { "homedecor:glass_table_small_square", "homedecor:glass_table_small_square" }, + } +}) + +-- + +minetest.register_craft( { + output = "homedecor:wood_table_small_round_b 15", + recipe = { + { "", "group:wood", "" }, + { "group:wood", "group:wood", "group:wood" }, + { "", "group:wood", "" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:wood_table_small_square_b 2", + recipe = { + { "homedecor:wood_table_small_round","homedecor:wood_table_small_round" }, + } +}) + +minetest.register_craft( { + output = "homedecor:wood_table_large_b 2", + recipe = { + { "homedecor:wood_table_small_square", "homedecor:wood_table_small_square" }, + } +}) + +-- + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:wood_table_small_round_b", + burntime = 30, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:wood_table_small_square_b", + burntime = 30, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:wood_table_large_b", + burntime = 30, +}) + + +minetest.register_craft( { + output = "homedecor:table_legs_wrought_iron 3", + recipe = { + { "", "default:iron_lump", "" }, + { "", "default:iron_lump", "" }, + { "default:iron_lump", "default:iron_lump", "default:iron_lump" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:table_legs_brass 3", + recipe = { + { "", "basic_materials:brass_ingot", "" }, + { "", "basic_materials:brass_ingot", "" }, + { "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" } + }, +}) + +minetest.register_craft( { + output = "homedecor:utility_table_legs", + recipe = { + { "group:stick", "group:stick", "group:stick" }, + { "group:stick", "", "group:stick" }, + { "group:stick", "", "group:stick" }, + }, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:utility_table_legs", + burntime = 30, +}) + + + +-- recycling + +minetest.register_craft({ + type = "shapeless", + output = "vessels:glass_fragments", + recipe = { + "homedecor:glass_table_small_round", + "homedecor:glass_table_small_round", + "homedecor:glass_table_small_round" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "vessels:glass_fragments", + recipe = { + "homedecor:glass_table_small_square", + "homedecor:glass_table_small_square", + "homedecor:glass_table_small_square" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "vessels:glass_fragments", + recipe = { + "homedecor:glass_table_large", + "homedecor:glass_table_large", + "homedecor:glass_table_large" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "default:stick 4", + recipe = { + "homedecor:wood_table_small_round", + "homedecor:wood_table_small_round", + "homedecor:wood_table_small_round" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "default:stick 4", + recipe = { + "homedecor:wood_table_small_square", + "homedecor:wood_table_small_square", + "homedecor:wood_table_small_square" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "default:stick 4", + recipe = { + "homedecor:wood_table_large", + "homedecor:wood_table_large", + "homedecor:wood_table_large" + } +}) diff --git a/homedecor/models/homedecor_table_small_round.obj b/homedecor_tables/models/homedecor_table_small_round.obj similarity index 100% rename from homedecor/models/homedecor_table_small_round.obj rename to homedecor_tables/models/homedecor_table_small_round.obj diff --git a/homedecor/models/homedecor_table_small_square.obj b/homedecor_tables/models/homedecor_table_small_square.obj similarity index 100% rename from homedecor/models/homedecor_table_small_square.obj rename to homedecor_tables/models/homedecor_table_small_square.obj diff --git a/homedecor/textures/homedecor_glass_face_clean.png b/homedecor_tables/textures/homedecor_glass_face_clean.png similarity index 100% rename from homedecor/textures/homedecor_glass_face_clean.png rename to homedecor_tables/textures/homedecor_glass_face_clean.png diff --git a/homedecor/textures/homedecor_glass_table_large_edges.png b/homedecor_tables/textures/homedecor_glass_table_large_edges.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_large_edges.png rename to homedecor_tables/textures/homedecor_glass_table_large_edges.png diff --git a/homedecor/textures/homedecor_glass_table_large_inv.png b/homedecor_tables/textures/homedecor_glass_table_large_inv.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_large_inv.png rename to homedecor_tables/textures/homedecor_glass_table_large_inv.png diff --git a/homedecor/textures/homedecor_glass_table_large_tb.png b/homedecor_tables/textures/homedecor_glass_table_large_tb.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_large_tb.png rename to homedecor_tables/textures/homedecor_glass_table_large_tb.png diff --git a/homedecor/textures/homedecor_glass_table_small_round.png b/homedecor_tables/textures/homedecor_glass_table_small_round.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_small_round.png rename to homedecor_tables/textures/homedecor_glass_table_small_round.png diff --git a/homedecor/textures/homedecor_glass_table_small_round_inv.png b/homedecor_tables/textures/homedecor_glass_table_small_round_inv.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_small_round_inv.png rename to homedecor_tables/textures/homedecor_glass_table_small_round_inv.png diff --git a/homedecor/textures/homedecor_glass_table_small_square.png b/homedecor_tables/textures/homedecor_glass_table_small_square.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_small_square.png rename to homedecor_tables/textures/homedecor_glass_table_small_square.png diff --git a/homedecor/textures/homedecor_glass_table_small_square_inv.png b/homedecor_tables/textures/homedecor_glass_table_small_square_inv.png similarity index 100% rename from homedecor/textures/homedecor_glass_table_small_square_inv.png rename to homedecor_tables/textures/homedecor_glass_table_small_square_inv.png diff --git a/homedecor/textures/homedecor_table_legs_brass.png b/homedecor_tables/textures/homedecor_table_legs_brass.png similarity index 100% rename from homedecor/textures/homedecor_table_legs_brass.png rename to homedecor_tables/textures/homedecor_table_legs_brass.png diff --git a/homedecor/textures/homedecor_table_legs_wrought_iron.png b/homedecor_tables/textures/homedecor_table_legs_wrought_iron.png similarity index 100% rename from homedecor/textures/homedecor_table_legs_wrought_iron.png rename to homedecor_tables/textures/homedecor_table_legs_wrought_iron.png diff --git a/homedecor/textures/homedecor_utility_table_edges.png b/homedecor_tables/textures/homedecor_utility_table_edges.png similarity index 100% rename from homedecor/textures/homedecor_utility_table_edges.png rename to homedecor_tables/textures/homedecor_utility_table_edges.png diff --git a/homedecor/textures/homedecor_utility_table_legs.png b/homedecor_tables/textures/homedecor_utility_table_legs.png similarity index 100% rename from homedecor/textures/homedecor_utility_table_legs.png rename to homedecor_tables/textures/homedecor_utility_table_legs.png diff --git a/homedecor/textures/homedecor_utility_table_legs_inv.png b/homedecor_tables/textures/homedecor_utility_table_legs_inv.png similarity index 100% rename from homedecor/textures/homedecor_utility_table_legs_inv.png rename to homedecor_tables/textures/homedecor_utility_table_legs_inv.png diff --git a/homedecor/textures/homedecor_utility_table_tb.png b/homedecor_tables/textures/homedecor_utility_table_tb.png similarity index 100% rename from homedecor/textures/homedecor_utility_table_tb.png rename to homedecor_tables/textures/homedecor_utility_table_tb.png diff --git a/homedecor/textures/homedecor_wood_table_large_edges.png b/homedecor_tables/textures/homedecor_wood_table_large_edges.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_large_edges.png rename to homedecor_tables/textures/homedecor_wood_table_large_edges.png diff --git a/homedecor/textures/homedecor_wood_table_large_inv.png b/homedecor_tables/textures/homedecor_wood_table_large_inv.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_large_inv.png rename to homedecor_tables/textures/homedecor_wood_table_large_inv.png diff --git a/homedecor/textures/homedecor_wood_table_large_tb.png b/homedecor_tables/textures/homedecor_wood_table_large_tb.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_large_tb.png rename to homedecor_tables/textures/homedecor_wood_table_large_tb.png diff --git a/homedecor/textures/homedecor_wood_table_small_round.png b/homedecor_tables/textures/homedecor_wood_table_small_round.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_small_round.png rename to homedecor_tables/textures/homedecor_wood_table_small_round.png diff --git a/homedecor/textures/homedecor_wood_table_small_round_inv.png b/homedecor_tables/textures/homedecor_wood_table_small_round_inv.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_small_round_inv.png rename to homedecor_tables/textures/homedecor_wood_table_small_round_inv.png diff --git a/homedecor/textures/homedecor_wood_table_small_square.png b/homedecor_tables/textures/homedecor_wood_table_small_square.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_small_square.png rename to homedecor_tables/textures/homedecor_wood_table_small_square.png diff --git a/homedecor/textures/homedecor_wood_table_small_square_inv.png b/homedecor_tables/textures/homedecor_wood_table_small_square_inv.png similarity index 100% rename from homedecor/textures/homedecor_wood_table_small_square_inv.png rename to homedecor_tables/textures/homedecor_wood_table_small_square_inv.png diff --git a/lrfurn/textures/lrfurn_coffeetable_back.png b/homedecor_tables/textures/lrfurn_coffeetable_back.png similarity index 100% rename from lrfurn/textures/lrfurn_coffeetable_back.png rename to homedecor_tables/textures/lrfurn_coffeetable_back.png diff --git a/lrfurn/textures/lrfurn_coffeetable_front.png b/homedecor_tables/textures/lrfurn_coffeetable_front.png similarity index 100% rename from lrfurn/textures/lrfurn_coffeetable_front.png rename to homedecor_tables/textures/lrfurn_coffeetable_front.png diff --git a/homedecor_trash_cans/depends.txt b/homedecor_trash_cans/depends.txt new file mode 100644 index 0000000..ac31e7d --- /dev/null +++ b/homedecor_trash_cans/depends.txt @@ -0,0 +1,4 @@ +homedecor_common +default +basic_materials +dye diff --git a/homedecor/trash_cans.lua b/homedecor_trash_cans/init.lua similarity index 68% rename from homedecor/trash_cans.lua rename to homedecor_trash_cans/init.lua index 7da6c04..dbd4e11 100755 --- a/homedecor/trash_cans.lua +++ b/homedecor_trash_cans/init.lua @@ -1,15 +1,17 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local tg_cbox = { type = "fixed", fixed = { -0.35, -0.5, -0.35, 0.35, 0.4, 0.35 } } +local trashcan_green = 0x00006000 + homedecor.register("trash_can_green", { drawtype = "mesh", mesh = "homedecor_trash_can_green.obj", - tiles = { "homedecor_pool_table_baize.png" }, + tiles = { { name = "homedecor_generic_plastic.png", color = trashcan_green } }, inventory_image = "homedecor_trash_can_green_inv.png", description = S("Green Trash Can"), groups = {snappy=3}, @@ -23,7 +25,7 @@ homedecor.register("trash_can_green", { homedecor.register("trash_can_green_open", { drawtype = "mesh", mesh = "homedecor_trash_can_green_open.obj", - tiles = { "homedecor_pool_table_baize.png" }, + tiles = { { name = "homedecor_generic_plastic.png", color = trashcan_green } }, groups = {snappy=3, not_in_creative_inventory=1}, selection_box = tg_cbox, collision_box = tg_cbox, @@ -64,3 +66,23 @@ homedecor.register("trash_can", { selection_box = trash_cbox, collision_box = trash_cbox, }) + +-- crafting + + +minetest.register_craft( { + output = "homedecor:trash_can 3", + recipe = { + { "basic_materials:steel_wire", "", "basic_materials:steel_wire" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" } + }, +}) + +minetest.register_craft({ + output = "homedecor:trash_can_green", + recipe = { + { "basic_materials:plastic_sheet", "", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "dye:green", "basic_materials:plastic_sheet" }, + { "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" } + }, +}) diff --git a/homedecor/models/homedecor_trash_can.obj b/homedecor_trash_cans/models/homedecor_trash_can.obj similarity index 100% rename from homedecor/models/homedecor_trash_can.obj rename to homedecor_trash_cans/models/homedecor_trash_can.obj diff --git a/homedecor/models/homedecor_trash_can_green.obj b/homedecor_trash_cans/models/homedecor_trash_can_green.obj similarity index 100% rename from homedecor/models/homedecor_trash_can_green.obj rename to homedecor_trash_cans/models/homedecor_trash_can_green.obj diff --git a/homedecor/models/homedecor_trash_can_green_open.obj b/homedecor_trash_cans/models/homedecor_trash_can_green_open.obj similarity index 100% rename from homedecor/models/homedecor_trash_can_green_open.obj rename to homedecor_trash_cans/models/homedecor_trash_can_green_open.obj diff --git a/homedecor/sounds/homedecor_trash_all.ogg b/homedecor_trash_cans/sounds/homedecor_trash_all.ogg similarity index 100% rename from homedecor/sounds/homedecor_trash_all.ogg rename to homedecor_trash_cans/sounds/homedecor_trash_all.ogg diff --git a/homedecor/textures/homedecor_trash_can.png b/homedecor_trash_cans/textures/homedecor_trash_can.png similarity index 100% rename from homedecor/textures/homedecor_trash_can.png rename to homedecor_trash_cans/textures/homedecor_trash_can.png diff --git a/homedecor/textures/homedecor_trash_can_green_inv.png b/homedecor_trash_cans/textures/homedecor_trash_can_green_inv.png similarity index 100% rename from homedecor/textures/homedecor_trash_can_green_inv.png rename to homedecor_trash_cans/textures/homedecor_trash_can_green_inv.png diff --git a/homedecor/textures/homedecor_trash_can_inv.png b/homedecor_trash_cans/textures/homedecor_trash_can_inv.png similarity index 100% rename from homedecor/textures/homedecor_trash_can_inv.png rename to homedecor_trash_cans/textures/homedecor_trash_can_inv.png diff --git a/homedecor_wardrobe/depends.txt b/homedecor_wardrobe/depends.txt new file mode 100644 index 0000000..bb7fec0 --- /dev/null +++ b/homedecor_wardrobe/depends.txt @@ -0,0 +1,7 @@ +homedecor_common +default +player_api +homedecor_kitchen? +homedecor_misc? +3d_armor? +skinsdb? diff --git a/homedecor/wardrobe.lua b/homedecor_wardrobe/init.lua similarity index 56% rename from homedecor/wardrobe.lua rename to homedecor_wardrobe/init.lua index 6ce13f8..067acb3 100755 --- a/homedecor/wardrobe.lua +++ b/homedecor_wardrobe/init.lua @@ -1,10 +1,9 @@ +modpath = minetest.get_modpath("homedecor_wardrobe") -local S = homedecor_i18n.gettext +screwdriver = screwdriver or {} -local wd_cbox = { - type = "fixed", - fixed = { -0.5, -0.5, -0.5, 0.5, 1.5, 0.5 } -} +local placeholder_node = "air" +local wd_cbox = {type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, 1.5, 0.5}} -- cache set_textures function (fallback to old version) -- default.player_set_textures is deprecated and will be removed in future @@ -16,38 +15,54 @@ local armor_mod_path = minetest.get_modpath("3d_armor") local skinslist = {"male1", "male2", "male3", "male4", "male5"} local default_skin = "character.png" - local skinsdb_mod_path = minetest.get_modpath("skinsdb") + if skinsdb_mod_path then + for _, shrt in ipairs(skinslist) do + for _, prefix in ipairs({"", "fe"}) do + local skin_name = prefix..shrt - local skin_obj = skins.new("homedecor_clothes_"..skin_name..".png") -- Texture PNG file as key to be compatible in set_player_skin + local skin_obj = skins.new("homedecor_clothes_"..skin_name..".png") + skin_obj:set_preview("homedecor_clothes_"..skin_name.."_preview.png") skin_obj:set_texture("homedecor_clothes_"..skin_name..".png") skin_obj:set_meta("name", "Wardrobe "..skin_name) skin_obj:set_meta("author", 'Calinou and Jordach') skin_obj:set_meta("license", 'CC-by-SA-4.0') - local file = io.open(homedecor.modpath.."/textures/homedecor_clothes_"..skin_name..".png", "r") + + local file = io.open(modpath .. + "/textures/homedecor_clothes_" .. skin_name .. ".png", "r") + skin_obj:set_meta("format", skins.get_skin_format(file)) + file:close() + skin_obj:set_meta("in_inventory_list", false) end end end -function homedecor.get_player_skin(player) +local function get_player_skin(player) + local skin = player:get_attribute("homedecor:player_skin") + if not skin or skin == "" then return default_skin, true end + return skin, false end -function homedecor.set_player_skin(player, skin, save) +local function set_player_skin(player, skin, save) + if skinsdb_mod_path then + skins.set_player_skin(player, skin or skins.default) + elseif armor_mod_path then -- if 3D_armor's installed, let it set the skin + armor.textures[player:get_player_name()].skin = skin or default_skin armor:update_player_visuals(player) else @@ -55,92 +70,143 @@ function homedecor.set_player_skin(player, skin, save) end if save and not skinsdb_mod_path then + if skin == default_skin then skin = "default" player:set_attribute("homedecor:player_skin", "") else player:set_attribute("homedecor:player_skin", skin) end - if save == "player" then -- if player action - minetest.log("verbose", - S("player @1 sets skin to @2", player:get_player_name(), skin) .. - (armor_mod_path and ' [3d_armor]' or '') - ) - end end end -function homedecor.unset_player_skin(player) - homedecor.set_player_skin(player, nil, true) +local function unset_player_skin(player) + set_player_skin(player, nil, true) end -homedecor.register("wardrobe", { +local def = { + + description = "Wardrobe", + drawtype = "mesh", mesh = "homedecor_bedroom_wardrobe.obj", tiles = { - homedecor.plain_wood, + {name = "homedecor_generic_wood_plain.png", color = 0xffa76820}, "homedecor_wardrobe_drawers.png", "homedecor_wardrobe_doors.png" }, inventory_image = "homedecor_wardrobe_inv.png", - description = S("Wardrobe"), - groups = {snappy=3}, + + paramtype = "light", + paramtype2 = "facedir", + + groups = {snappy = 3}, selection_box = wd_cbox, collision_box = wd_cbox, sounds = default.node_sound_wood_defaults(), - expand = { top="placeholder" }, + on_rotate = screwdriver.rotate_simple, - infotext = S("Wardrobe"), - inventory = { - size = 10 - }, - on_construct = function(pos) + + on_place = function(itemstack, placer, pointed_thing) + + return homedecor.stack_vertically(itemstack, placer, pointed_thing, + itemstack:get_name(), "placeholder") + end, + + can_dig = function(pos,player) + local meta = minetest.get_meta(pos) + + return meta:get_inventory():is_empty("main") + end, + + on_construct = function(pos) + + local meta = minetest.get_meta(pos) + + meta:set_string("infotext", "Wardrobe") + + meta:get_inventory():set_size("main", 10) + -- textures made by the Minetest community (mostly Calinou and Jordach) local clothes_strings = "" - for i = 1,5 do - clothes_strings = clothes_strings.. - "image_button_exit["..(i-1)..".5,0;1.1,2;homedecor_clothes_"..skinslist[i].."_preview.png;"..skinslist[i]..";]".. - "image_button_exit["..(i-1)..".5,2;1.1,2;homedecor_clothes_fe"..skinslist[i].."_preview.png;fe"..skinslist[i]..";]" + + for i = 1, 5 do + + clothes_strings = clothes_strings .. + "image_button_exit[" .. (i-1) .. + ".5,0;1.1,2;homedecor_clothes_" .. skinslist[i] .. + "_preview.png;" .. skinslist[i] .. ";]" .. + "image_button_exit[" .. (i-1) .. + ".5,2;1.1,2;homedecor_clothes_fe" .. skinslist[i] .. + "_preview.png;fe" .. skinslist[i] .. ";]" end - meta:set_string("formspec", "size[5.5,8.5]"..default.gui_bg..default.gui_bg_img..default.gui_slots.. - "vertlabel[0,0.5;"..minetest.formspec_escape(S("Clothes")).."]".. - "button_exit[0,3.29;0.6,0.6;default;x]".. - clothes_strings.. - "vertlabel[0,5.2;"..minetest.formspec_escape(S("Storage")).."]".. - "list[current_name;main;0.5,4.5;5,2;]".. + + meta:set_string("formspec", "size[5.5,8.5]" .. + default.gui_bg .. default.gui_bg_img .. default.gui_slots .. + "vertlabel[0,0.5;" .. minetest.formspec_escape("Clothes") .. "]" .. + "button_exit[0,3.29;0.6,0.6;default;x]" .. + clothes_strings .. + "vertlabel[0,5.2;" .. minetest.formspec_escape("Storage") .. "]" .. + "list[current_name;main;0.5,4.5;5,2;]" .. "list[current_player;main;0.5,6.8;5,2;]" .. - "listring[]") + "listring[]" + ) end, + on_receive_fields = function(pos, formname, fields, sender) + if fields.default then - homedecor.set_player_skin(sender, nil, "player") + + set_player_skin(sender, nil, "player") + return end - for i = 1,5 do + for i = 1, 5 do + if fields[skinslist[i]] then - homedecor.set_player_skin(sender, "homedecor_clothes_"..skinslist[i]..".png", "player") + + set_player_skin(sender, + "homedecor_clothes_" .. skinslist[i] .. ".png", "player") break - elseif fields["fe"..skinslist[i]] then - homedecor.set_player_skin(sender, "homedecor_clothes_fe"..skinslist[i]..".png", "player") + + elseif fields["fe" .. skinslist[i]] then + + set_player_skin(sender, + "homedecor_clothes_fe" .. skinslist[i] .. ".png", "player") break end end end -}) +} + +-- register the actual minetest node +minetest.register_node(":homedecor:wardrobe", def) minetest.register_alias("homedecor:wardrobe_bottom", "homedecor:wardrobe") minetest.register_alias("homedecor:wardrobe_top", "air") if not skinsdb_mod_path then -- If not managed by skinsdb + minetest.register_on_joinplayer(function(player) + local skin = player:get_attribute("homedecor:player_skin") if skin and skin ~= "" then + -- setting player skin on connect has no effect, so delay skin change minetest.after(1, function(player, skin) - homedecor.set_player_skin(player, skin) + set_player_skin(player, skin) end, player, skin) end end) end + +minetest.register_craft( { + output = "homedecor:wardrobe", + recipe = { + { "homedecor:drawer_small", "homedecor:kitchen_cabinet" }, + { "homedecor:drawer_small", "default:wood" }, + { "homedecor:drawer_small", "default:wood" } + }, +}) diff --git a/homedecor/models/homedecor_bedroom_wardrobe.obj b/homedecor_wardrobe/models/homedecor_bedroom_wardrobe.obj similarity index 100% rename from homedecor/models/homedecor_bedroom_wardrobe.obj rename to homedecor_wardrobe/models/homedecor_bedroom_wardrobe.obj diff --git a/homedecor/textures/homedecor_clothes_female1.png b/homedecor_wardrobe/textures/homedecor_clothes_female1.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female1.png rename to homedecor_wardrobe/textures/homedecor_clothes_female1.png diff --git a/homedecor/textures/homedecor_clothes_female1_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_female1_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female1_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_female1_preview.png diff --git a/homedecor/textures/homedecor_clothes_female2.png b/homedecor_wardrobe/textures/homedecor_clothes_female2.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female2.png rename to homedecor_wardrobe/textures/homedecor_clothes_female2.png diff --git a/homedecor/textures/homedecor_clothes_female2_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_female2_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female2_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_female2_preview.png diff --git a/homedecor/textures/homedecor_clothes_female3.png b/homedecor_wardrobe/textures/homedecor_clothes_female3.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female3.png rename to homedecor_wardrobe/textures/homedecor_clothes_female3.png diff --git a/homedecor/textures/homedecor_clothes_female3_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_female3_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_female3_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_female3_preview.png diff --git a/homedecor_wardrobe/textures/homedecor_clothes_female4.png b/homedecor_wardrobe/textures/homedecor_clothes_female4.png new file mode 100644 index 0000000..87c9e46 Binary files /dev/null and b/homedecor_wardrobe/textures/homedecor_clothes_female4.png differ diff --git a/homedecor_wardrobe/textures/homedecor_clothes_female4_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_female4_preview.png new file mode 100644 index 0000000..4a93933 Binary files /dev/null and b/homedecor_wardrobe/textures/homedecor_clothes_female4_preview.png differ diff --git a/homedecor_wardrobe/textures/homedecor_clothes_female5.png b/homedecor_wardrobe/textures/homedecor_clothes_female5.png new file mode 100644 index 0000000..be8d97c Binary files /dev/null and b/homedecor_wardrobe/textures/homedecor_clothes_female5.png differ diff --git a/homedecor_wardrobe/textures/homedecor_clothes_female5_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_female5_preview.png new file mode 100644 index 0000000..4ebf47b Binary files /dev/null and b/homedecor_wardrobe/textures/homedecor_clothes_female5_preview.png differ diff --git a/homedecor/textures/homedecor_clothes_male1.png b/homedecor_wardrobe/textures/homedecor_clothes_male1.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male1.png rename to homedecor_wardrobe/textures/homedecor_clothes_male1.png diff --git a/homedecor/textures/homedecor_clothes_male1_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_male1_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male1_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_male1_preview.png diff --git a/homedecor/textures/homedecor_clothes_male2.png b/homedecor_wardrobe/textures/homedecor_clothes_male2.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male2.png rename to homedecor_wardrobe/textures/homedecor_clothes_male2.png diff --git a/homedecor/textures/homedecor_clothes_male2_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_male2_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male2_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_male2_preview.png diff --git a/homedecor/textures/homedecor_clothes_male3.png b/homedecor_wardrobe/textures/homedecor_clothes_male3.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male3.png rename to homedecor_wardrobe/textures/homedecor_clothes_male3.png diff --git a/homedecor/textures/homedecor_clothes_male3_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_male3_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male3_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_male3_preview.png diff --git a/homedecor/textures/homedecor_clothes_male4.png b/homedecor_wardrobe/textures/homedecor_clothes_male4.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male4.png rename to homedecor_wardrobe/textures/homedecor_clothes_male4.png diff --git a/homedecor/textures/homedecor_clothes_male4_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_male4_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male4_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_male4_preview.png diff --git a/homedecor/textures/homedecor_clothes_male5.png b/homedecor_wardrobe/textures/homedecor_clothes_male5.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male5.png rename to homedecor_wardrobe/textures/homedecor_clothes_male5.png diff --git a/homedecor/textures/homedecor_clothes_male5_preview.png b/homedecor_wardrobe/textures/homedecor_clothes_male5_preview.png similarity index 100% rename from homedecor/textures/homedecor_clothes_male5_preview.png rename to homedecor_wardrobe/textures/homedecor_clothes_male5_preview.png diff --git a/homedecor_wardrobe/textures/homedecor_generic_wood_plain.png b/homedecor_wardrobe/textures/homedecor_generic_wood_plain.png new file mode 100644 index 0000000..04d3a91 Binary files /dev/null and b/homedecor_wardrobe/textures/homedecor_generic_wood_plain.png differ diff --git a/homedecor/textures/homedecor_wardrobe_doors.png b/homedecor_wardrobe/textures/homedecor_wardrobe_doors.png similarity index 100% rename from homedecor/textures/homedecor_wardrobe_doors.png rename to homedecor_wardrobe/textures/homedecor_wardrobe_doors.png diff --git a/homedecor/textures/homedecor_wardrobe_drawers.png b/homedecor_wardrobe/textures/homedecor_wardrobe_drawers.png similarity index 100% rename from homedecor/textures/homedecor_wardrobe_drawers.png rename to homedecor_wardrobe/textures/homedecor_wardrobe_drawers.png diff --git a/homedecor/textures/homedecor_wardrobe_inv.png b/homedecor_wardrobe/textures/homedecor_wardrobe_inv.png similarity index 100% rename from homedecor/textures/homedecor_wardrobe_inv.png rename to homedecor_wardrobe/textures/homedecor_wardrobe_inv.png diff --git a/homedecor_windows_and_treatments/depends.txt b/homedecor_windows_and_treatments/depends.txt new file mode 100644 index 0000000..8c8316a --- /dev/null +++ b/homedecor_windows_and_treatments/depends.txt @@ -0,0 +1,5 @@ +homedecor_common +default +basic_materials +unifieddyes +building_blocks? diff --git a/homedecor_windows_and_treatments/init.lua b/homedecor_windows_and_treatments/init.lua new file mode 100644 index 0000000..3f17e48 --- /dev/null +++ b/homedecor_windows_and_treatments/init.lua @@ -0,0 +1,527 @@ + +local S = homedecor.gettext + +homedecor.register("window_quartered", { + description = S("Window (quartered)"), + tiles = { + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_quartered.png", + "homedecor_window_quartered.png" + }, + use_texture_alpha = true, + groups = {snappy=3}, + sounds = default.node_sound_glass_defaults(), + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, 0.025, 0.5, 0.5, 0}, -- NodeBox1 + {-0.5, 0.4375, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox2 + {-0.5, -0.5, -0.0625, 0.5, -0.4375, 0.0625}, -- NodeBox3 + {-0.5, -0.0625, -0.025, 0.5, 0.0625, 0.025}, -- NodeBox4 + {0.4375, -0.5, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox5 + {-0.5, -0.5, -0.0625, -0.4375, 0.5, 0.0625}, -- NodeBox6 + {-0.0625, -0.5, -0.025, 0.0625, 0.5, 0.025}, -- NodeBox7 + } + }, + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625} + } +}) + +homedecor.register("window_plain", { + description = S("Window (plain)"), + tiles = { + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_sides.png", + "homedecor_window_frame.png", + "homedecor_window_frame.png" + }, + use_texture_alpha = true, + groups = {snappy=3}, + sounds = default.node_sound_glass_defaults(), + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, 0.025, 0.5, 0.5, 0}, -- NodeBox1 + {-0.5, 0.4375, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox2 + {-0.5, -0.5, -0.0625, 0.5, -0.4375, 0.0625}, -- NodeBox3 + {0.4375, -0.5, -0.0625, 0.5, 0.5, 0.0625}, -- NodeBox4 + {-0.5, -0.5, -0.0625, -0.4375, 0.5, 0.0625}, -- NodeBox5 + } + }, + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.0625, 0.5, 0.5, 0.0625} + } +}) + +local wb1_cbox = { + type = "fixed", + fixed = { -8/16, -8/16, 5/16, 8/16, 8/16, 8/16 }, +} + +homedecor.register("blinds_thick", { + description = S("Window Blinds (thick)"), + mesh = "homedecor_windowblind_thick.obj", + inventory_image = "homedecor_windowblind_thick_inv.png", + tiles = { + "homedecor_windowblind_strings.png", + "homedecor_windowblinds.png" + }, + walkable = false, + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + selection_box = wb1_cbox +}) + +local wb2_cbox = { + type = "fixed", + fixed = { -8/16, -8/16, 6/16, 8/16, 8/16, 8/16 }, +} + +homedecor.register("blinds_thin", { + description = S("Window Blinds (thin)"), + mesh = "homedecor_windowblind_thin.obj", + inventory_image = "homedecor_windowblind_thin_inv.png", + tiles = { + "homedecor_windowblind_strings.png", + "homedecor_windowblinds.png" + }, + walkable = false, + groups = {snappy=3}, + sounds = default.node_sound_wood_defaults(), + selection_box = wb2_cbox +}) + +minetest.register_node(":homedecor:curtain_closed", { + description = S("Curtains"), + tiles = { "homedecor_curtain.png" }, + inventory_image = "homedecor_curtain.png", + drawtype = 'signlike', + use_texture_alpha = true, + walkable = false, + groups = { snappy = 3, ud_param2_colorable = 1, not_in_creative_inventory=1 }, + sounds = default.node_sound_leaves_defaults(), + paramtype = "light", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = { type = "wallmounted" }, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, { name = "homedecor:curtain_open", param2 = node.param2 }) + return itemstack + end +}) + +minetest.register_node(":homedecor:curtain_open", { + description = S("Curtains (open)"), + tiles = { "homedecor_curtain_open.png" }, + inventory_image = "homedecor_curtain_open.png", + drawtype = 'signlike', + use_texture_alpha = true, + walkable = false, + groups = { snappy = 3, ud_param2_colorable = 1 }, + sounds = default.node_sound_leaves_defaults(), + paramtype = "light", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + selection_box = { type = "wallmounted" }, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, + on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) + minetest.set_node(pos, { name = "homedecor:curtain_closed", param2 = node.param2 }) + return itemstack + end +}) + +local mats = { + { "brass", S("brass"), "homedecor_generic_metal_brass.png" }, + { "wrought_iron", S("wrought iron"), "homedecor_generic_metal_wrought_iron.png" }, + { "wood", S("wood"), "default_wood.png" } +} + +for _, m in ipairs(mats) do + local material, mat_name, texture = unpack(m) + homedecor.register("curtainrod_"..material, { + tiles = { texture }, + inventory_image = "homedecor_curtainrod_"..material.."_inv.png", + description = S("Curtain Rod (@1)", mat_name), + groups = { snappy = 3 }, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, 0.375, 0.5, -0.4375, 0.4375}, + {-0.4375, -0.5, 0.4375, -0.375, -0.4375, 0.5}, + {0.375, -0.5, 0.4375, 0.4375, -0.4375, 0.5} + } + } + }) +end + +homedecor.register("window_flowerbox", { + description = S("Window flowerbox"), + tiles = { + "homedecor_flowerbox_top.png", + "homedecor_flowerbox_bottom.png", + "homedecor_flowerbox_sides.png" + }, + inventory_image = "homedecor_flowerbox_inv.png", + sounds = default.node_sound_stone_defaults(), + groups = { snappy = 3 }, + node_box = { + type = "fixed", + fixed = { + {-0.375, 0.25, -0.125, 0.375, 0.5, 0.375}, -- NodeBox1 + {-0.3125, 0.4375, 0.375, -0.25, 0.4875, 0.5}, -- NodeBox2 + {0.25, 0.4375, 0.375, 0.3125, 0.4875, 0.5}, -- NodeBox3 + } + } +}) + +homedecor.register("stained_glass", { + description = S("Stained Glass"), + tiles = {"homedecor_stained_glass.png"}, + inventory_image = "homedecor_stained_glass.png", + groups = {snappy=3}, + use_texture_alpha = true, + light_source = 3, + sounds = default.node_sound_glass_defaults(), + node_box = { + type = "fixed", + fixed = { {-0.5, -0.5, 0.46875, 0.5, 0.5, 0.5} } + } +}) + +-- Various kinds of window shutters + +local shutters = { + "mahogany", + "red", + "yellow", + "forest_green", + "light_blue", + "violet", + "black", + "dark_grey", + "grey", + "white", +} + +local shutter_cbox = { + type = "wallmounted", + wall_top = { -0.5, 0.4375, -0.5, 0.5, 0.5, 0.5 }, + wall_bottom = { -0.5, -0.5, -0.5, 0.5, -0.4375, 0.5 }, + wall_side = { -0.5, -0.5, -0.5, -0.4375, 0.5, 0.5 } +} + +local inv = "homedecor_window_shutter_inv.png^[colorize:#a87034:150" + +homedecor.register("shutter", { + mesh = "homedecor_window_shutter.obj", + tiles = { + { name = "homedecor_window_shutter.png", color = 0xffa87034 } + }, + description = S("Wooden Shutter"), + inventory_image = inv, + wield_image = inv, + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + airbrush_replacement_node = "homedecor:shutter_colored", + groups = { snappy = 3, ud_param2_colorable = 1 }, + sounds = default.node_sound_wood_defaults(), + selection_box = shutter_cbox, + node_box = shutter_cbox, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, +}) + +homedecor.register("shutter_colored", { + mesh = "homedecor_window_shutter.obj", + tiles = { "homedecor_window_shutter.png" }, + description = S("Wooden Shutter"), + inventory_image = "homedecor_window_shutter_inv.png", + wield_image = "homedecor_window_shutter_inv.png", + paramtype2 = "colorwallmounted", + palette = "unifieddyes_palette_colorwallmounted.png", + groups = { snappy = 3 , not_in_creative_inventory = 1, ud_param2_colorable = 1}, + sounds = default.node_sound_wood_defaults(), + selection_box = shutter_cbox, + node_box = shutter_cbox, + after_place_node = function(pos, placer, itemstack, pointed_thing) + unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing) + end, + on_dig = unifieddyes.on_dig, +}) + +minetest.register_alias("homedecor:shutter_purple", "homedecor:shutter_violet") +minetest.register_alias("homedecor:shutter_oak", "homedecor:shutter") + +-- convert old shutters to param2 coloring + +homedecor.old_shutter_nodes = {} + +for _, color in ipairs(shutters) do + table.insert(homedecor.old_shutter_nodes, "homedecor:shutter_"..color) +end + +minetest.register_lbm({ + name = ":homedecor:convert_shutters", + label = "Convert shutter static nodes to use param2 color", + run_at_every_load = false, + nodenames = homedecor.old_shutter_nodes, + action = function(pos, node) + local name = node.name + local color = string.sub(name, string.find(name, "_") + 1) + + if color == "mahogany" then + color = "dark_red" + elseif color == "forest_green" then + color = "dark_green" + elseif color == "light_blue" then + color = "medium_cyan" + elseif color == "red" then + color = "medium_red" + end + + local paletteidx = unifieddyes.getpaletteidx("unifieddyes:"..color, "wallmounted") + local param2 = paletteidx + node.param2 + + minetest.set_node(pos, { name = "homedecor:shutter_colored", param2 = param2 }) + local meta = minetest.get_meta(pos) + meta:set_string("dye", "unifieddyes:"..color) + end +}) + +-- Convert old curtain nodes to param2-colorization + +local curtaincolors = { + "red", + "green", + "blue", + "white", + "pink", + "violet", +} + +homedecor.old_static_curtain_nodes = {} + +for _, color in ipairs(curtaincolors) do + table.insert(homedecor.old_static_curtain_nodes, "homedecor:curtain_"..color) + table.insert(homedecor.old_static_curtain_nodes, "homedecor:curtain_open_"..color) +end + +minetest.register_lbm({ + name = ":homedecor:convert_curtains", + label = "Convert static curtain nodes to use param2 color", + run_at_every_load = false, + nodenames = homedecor.old_static_curtain_nodes, + action = function(pos, node) + local name = node.name + local color = string.sub(name, 19) + local openclose = "closed" + + if string.find(color, "open") then + color = string.sub(color, 6) + openclose = "open" + end + + local metadye = "medium_"..color + if color == "white" then + metadye = "white" + end + + local newnode = "homedecor:curtain_"..openclose + local paletteidx, _ = unifieddyes.getpaletteidx("unifieddyes:"..metadye, "wallmounted") + local newparam2 = paletteidx + (node.param2 % 8) + + minetest.set_node(pos, { name = newnode, param2 = newparam2 }) + local meta = minetest.get_meta(pos) + meta:set_string("dye", "unifieddyes:"..metadye) + end +}) + +-- crafting + + +minetest.register_craft( { + output = "homedecor:shutter 2", + recipe = { + { "group:stick", "group:stick" }, + { "group:stick", "group:stick" }, + { "group:stick", "group:stick" }, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:shutter_colored", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:shutter", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +minetest.register_craft({ + type = "fuel", + recipe = "homedecor:shutter_oak", + burntime = 30, +}) + + +minetest.register_craft( { + output = "homedecor:curtain_open 4", + recipe = { + { "wool:white", "", ""}, + { "wool:white", "", ""}, + { "wool:white", "", ""}, + }, +}) + +minetest.register_craft( { + output = "homedecor:curtain_open 4", + recipe = { + { "cottages:wool", "", ""}, + { "cottages:wool", "", ""}, + { "cottages:wool", "", ""}, + }, +}) + +unifieddyes.register_color_craft({ + output = "homedecor:curtain_closed", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:curtain_closed", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +unifieddyes.register_color_craft({ + output = "homedecor:curtain_open", + palette = "wallmounted", + type = "shapeless", + neutral_node = "homedecor:curtain_open", + recipe = { + "NEUTRAL_NODE", + "MAIN_DYE" + } +}) + +local mats = { + { "brass", "homedecor:pole_brass" }, + { "wrought_iron", "homedecor:pole_wrought_iron" }, + { "wood", "group:stick" } +} + +for i in ipairs(mats) do + local material = mats[i][1] + local ingredient = mats[i][2] + minetest.register_craft( { + output = "homedecor:curtainrod_"..material.." 3", + recipe = { + { ingredient, ingredient, ingredient }, + }, + }) +end + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:window_plain 8", + recipe = { + "dye:white", + "dye:white", + "dye:white", + "dye:white", + "building_blocks:woodglass" + } +}) + +minetest.register_craft({ + type = "shapeless", + output = "homedecor:window_quartered", + recipe = { + "dye:white", + "group:stick", + "group:stick", + "homedecor:window_plain" + } +}) + +minetest.register_craft({ + output = "homedecor:blinds_thin", + recipe = { + { "group:stick", "basic_materials:plastic_sheet", "group:stick" }, + { "farming:string", "basic_materials:plastic_strip", "" }, + { "", "basic_materials:plastic_strip", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:blinds_thick", + recipe = { + { "group:stick", "basic_materials:plastic_sheet", "group:stick" }, + { "farming:string", "basic_materials:plastic_strip", "basic_materials:plastic_strip" }, + { "", "basic_materials:plastic_strip", "basic_materials:plastic_strip" }, + }, +}) + +minetest.register_craft( { + output = "homedecor:window_flowerbox", + recipe = { + { "homedecor:roof_tile_terracotta", "default:dirt", "homedecor:roof_tile_terracotta" }, + { "", "homedecor:roof_tile_terracotta", "" }, + }, +}) + +minetest.register_craft({ + output = "homedecor:stained_glass 8", + recipe = { + {"", "dye:blue", ""}, + {"dye:red", "default:glass", "dye:green"}, + {"", "dye:yellow", ""}, + }, +}) + +minetest.register_craft({ + output = "homedecor:stained_glass 3", + recipe = { + {"", "dye:blue", ""}, + {"dye:red", "xpanes:pane_flat", "dye:green"}, + {"", "dye:yellow", ""}, + }, +}) + +minetest.register_craft({ + output = "homedecor:stained_glass 2", + recipe = { + {"", "dye:blue", ""}, + {"dye:red", "cottages:glass_pane_side", "dye:green"}, + {"", "dye:yellow", ""}, + }, +}) + +minetest.register_craft({ + output = "homedecor:stained_glass 2", + recipe = { + {"", "dye:blue", ""}, + {"dye:red", "cottages:glass_pane", "dye:green"}, + {"", "dye:yellow", ""}, + }, +}) + diff --git a/homedecor/models/homedecor_window_shutter.obj b/homedecor_windows_and_treatments/models/homedecor_window_shutter.obj similarity index 100% rename from homedecor/models/homedecor_window_shutter.obj rename to homedecor_windows_and_treatments/models/homedecor_window_shutter.obj diff --git a/homedecor/models/homedecor_windowblind_thick.obj b/homedecor_windows_and_treatments/models/homedecor_windowblind_thick.obj similarity index 100% rename from homedecor/models/homedecor_windowblind_thick.obj rename to homedecor_windows_and_treatments/models/homedecor_windowblind_thick.obj diff --git a/homedecor/models/homedecor_windowblind_thin.obj b/homedecor_windows_and_treatments/models/homedecor_windowblind_thin.obj similarity index 100% rename from homedecor/models/homedecor_windowblind_thin.obj rename to homedecor_windows_and_treatments/models/homedecor_windowblind_thin.obj diff --git a/homedecor/textures/homedecor_curtain.png b/homedecor_windows_and_treatments/textures/homedecor_curtain.png similarity index 100% rename from homedecor/textures/homedecor_curtain.png rename to homedecor_windows_and_treatments/textures/homedecor_curtain.png diff --git a/homedecor/textures/homedecor_curtain_open.png b/homedecor_windows_and_treatments/textures/homedecor_curtain_open.png similarity index 100% rename from homedecor/textures/homedecor_curtain_open.png rename to homedecor_windows_and_treatments/textures/homedecor_curtain_open.png diff --git a/homedecor/textures/homedecor_curtainrod_brass_inv.png b/homedecor_windows_and_treatments/textures/homedecor_curtainrod_brass_inv.png similarity index 100% rename from homedecor/textures/homedecor_curtainrod_brass_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_curtainrod_brass_inv.png diff --git a/homedecor/textures/homedecor_curtainrod_wood_inv.png b/homedecor_windows_and_treatments/textures/homedecor_curtainrod_wood_inv.png similarity index 100% rename from homedecor/textures/homedecor_curtainrod_wood_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_curtainrod_wood_inv.png diff --git a/homedecor/textures/homedecor_curtainrod_wrought_iron_inv.png b/homedecor_windows_and_treatments/textures/homedecor_curtainrod_wrought_iron_inv.png similarity index 100% rename from homedecor/textures/homedecor_curtainrod_wrought_iron_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_curtainrod_wrought_iron_inv.png diff --git a/homedecor/textures/homedecor_flowerbox_bottom.png b/homedecor_windows_and_treatments/textures/homedecor_flowerbox_bottom.png similarity index 100% rename from homedecor/textures/homedecor_flowerbox_bottom.png rename to homedecor_windows_and_treatments/textures/homedecor_flowerbox_bottom.png diff --git a/homedecor/textures/homedecor_flowerbox_inv.png b/homedecor_windows_and_treatments/textures/homedecor_flowerbox_inv.png similarity index 100% rename from homedecor/textures/homedecor_flowerbox_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_flowerbox_inv.png diff --git a/homedecor/textures/homedecor_flowerbox_sides.png b/homedecor_windows_and_treatments/textures/homedecor_flowerbox_sides.png similarity index 100% rename from homedecor/textures/homedecor_flowerbox_sides.png rename to homedecor_windows_and_treatments/textures/homedecor_flowerbox_sides.png diff --git a/homedecor/textures/homedecor_flowerbox_top.png b/homedecor_windows_and_treatments/textures/homedecor_flowerbox_top.png similarity index 100% rename from homedecor/textures/homedecor_flowerbox_top.png rename to homedecor_windows_and_treatments/textures/homedecor_flowerbox_top.png diff --git a/homedecor/textures/homedecor_stained_glass.png b/homedecor_windows_and_treatments/textures/homedecor_stained_glass.png similarity index 100% rename from homedecor/textures/homedecor_stained_glass.png rename to homedecor_windows_and_treatments/textures/homedecor_stained_glass.png diff --git a/homedecor/textures/homedecor_window_frame.png b/homedecor_windows_and_treatments/textures/homedecor_window_frame.png similarity index 100% rename from homedecor/textures/homedecor_window_frame.png rename to homedecor_windows_and_treatments/textures/homedecor_window_frame.png diff --git a/homedecor/textures/homedecor_window_quartered.png b/homedecor_windows_and_treatments/textures/homedecor_window_quartered.png similarity index 100% rename from homedecor/textures/homedecor_window_quartered.png rename to homedecor_windows_and_treatments/textures/homedecor_window_quartered.png diff --git a/homedecor/textures/homedecor_window_shutter.png b/homedecor_windows_and_treatments/textures/homedecor_window_shutter.png similarity index 100% rename from homedecor/textures/homedecor_window_shutter.png rename to homedecor_windows_and_treatments/textures/homedecor_window_shutter.png diff --git a/homedecor/textures/homedecor_window_shutter_inv.png b/homedecor_windows_and_treatments/textures/homedecor_window_shutter_inv.png similarity index 100% rename from homedecor/textures/homedecor_window_shutter_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_window_shutter_inv.png diff --git a/homedecor/textures/homedecor_window_sides.png b/homedecor_windows_and_treatments/textures/homedecor_window_sides.png similarity index 100% rename from homedecor/textures/homedecor_window_sides.png rename to homedecor_windows_and_treatments/textures/homedecor_window_sides.png diff --git a/homedecor/textures/homedecor_windowblind_strings.png b/homedecor_windows_and_treatments/textures/homedecor_windowblind_strings.png similarity index 100% rename from homedecor/textures/homedecor_windowblind_strings.png rename to homedecor_windows_and_treatments/textures/homedecor_windowblind_strings.png diff --git a/homedecor/textures/homedecor_windowblind_thick_inv.png b/homedecor_windows_and_treatments/textures/homedecor_windowblind_thick_inv.png similarity index 100% rename from homedecor/textures/homedecor_windowblind_thick_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_windowblind_thick_inv.png diff --git a/homedecor/textures/homedecor_windowblind_thin_inv.png b/homedecor_windows_and_treatments/textures/homedecor_windowblind_thin_inv.png similarity index 100% rename from homedecor/textures/homedecor_windowblind_thin_inv.png rename to homedecor_windows_and_treatments/textures/homedecor_windowblind_thin_inv.png diff --git a/homedecor/textures/homedecor_windowblinds.png b/homedecor_windows_and_treatments/textures/homedecor_windowblinds.png similarity index 100% rename from homedecor/textures/homedecor_windowblinds.png rename to homedecor_windows_and_treatments/textures/homedecor_windowblinds.png diff --git a/inbox/depends.txt b/inbox/depends.txt index ace758c..e13666d 100755 --- a/inbox/depends.txt +++ b/inbox/depends.txt @@ -1,3 +1,3 @@ default -homedecor_i18n +homedecor_common screwdriver? diff --git a/inbox/init.lua b/inbox/init.lua index 5ee77a8..29c1745 100755 --- a/inbox/init.lua +++ b/inbox/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local inbox = {} local screwdriver = rawget(_G, "screwdriver") or {} diff --git a/itemframes/depends.txt b/itemframes/depends.txt index 29ebd95..ae7019b 100755 --- a/itemframes/depends.txt +++ b/itemframes/depends.txt @@ -1,3 +1,3 @@ default -homedecor_i18n +homedecor_common mesecons_mvps? diff --git a/itemframes/init.lua b/itemframes/init.lua index 698c0ef..ccab7c5 100755 --- a/itemframes/init.lua +++ b/itemframes/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext local tmp = {} screwdriver = screwdriver or {} @@ -299,4 +299,4 @@ minetest.register_craft({ if minetest.get_modpath("mesecons_mvps") then mesecon.register_mvps_stopper("itemframes:frame") mesecon.register_mvps_stopper("itemframes:pedestal") -end \ No newline at end of file +end diff --git a/lavalamp/depends.txt b/lavalamp/depends.txt index 9944202..bbc40a7 100755 --- a/lavalamp/depends.txt +++ b/lavalamp/depends.txt @@ -1,4 +1,4 @@ wool bucket -homedecor_i18n +homedecor_common unifieddyes diff --git a/lavalamp/init.lua b/lavalamp/init.lua index 756bf1d..39172c9 100755 --- a/lavalamp/init.lua +++ b/lavalamp/init.lua @@ -1,10 +1,10 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext lavalamp = {} minetest.register_node("lavalamp:lavalamp", { - description = S("Lava Lamp"), + description = S("Lava Lamp/Light"), drawtype = "mesh", mesh = "lavalamp.obj", tiles = { @@ -38,6 +38,7 @@ minetest.register_node("lavalamp:lavalamp", { groups = {snappy=2,cracky=3,oddly_breakable_by_hand=3, ud_param2_colorable = 1}, sounds = default.node_sound_glass_defaults(), on_construct = unifieddyes.on_construct, + on_dig = unifieddyes.on_dig, on_rightclick = function(pos, node, clicker, itemstack, pointed_thing) node.name = "lavalamp:lavalamp_off" minetest.swap_node(pos, node) @@ -46,7 +47,7 @@ minetest.register_node("lavalamp:lavalamp", { }) minetest.register_node("lavalamp:lavalamp_off", { - description = S("Lava Lamp (off)"), + description = S("Lava Lamp/Light (off)"), drawtype = "mesh", mesh = "lavalamp.obj", tiles = { diff --git a/homedecor/listnodes.sh b/listnodes.sh similarity index 100% rename from homedecor/listnodes.sh rename to listnodes.sh diff --git a/lrfurn/depends.txt b/lrfurn/depends.txt deleted file mode 100755 index 973de17..0000000 --- a/lrfurn/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -default -wool -homedecor_i18n -unifieddyes diff --git a/plasmascreen/depends.txt b/plasmascreen/depends.txt index 7b3e79f..5a0ba06 100755 --- a/plasmascreen/depends.txt +++ b/plasmascreen/depends.txt @@ -1,2 +1,3 @@ default -homedecor +homedecor_common +homedecor_electronics diff --git a/plasmascreen/init.lua b/plasmascreen/init.lua index 183d1f9..37ec395 100755 --- a/plasmascreen/init.lua +++ b/plasmascreen/init.lua @@ -1,5 +1,5 @@ -local S = homedecor_i18n.gettext +local S = homedecor.gettext screwdriver = screwdriver or {}