commit 76bca11478fd59adbe6c615de1189e12c75bd32b Author: Leslie Krause Date: Fri Aug 31 19:58:00 2018 -0400 Build 01 - separated common routines into standalone mod - included support files for public release diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..1f86dc9 --- /dev/null +++ b/README.txt @@ -0,0 +1,206 @@ +Extra Doors Mod v2.0 +By Leslie Krause + +Repository +---------------------- + +Browse source code: + https://bitbucket.org/sorcerykid/extra_doors + +Download archive: + https://bitbucket.org/sorcerykid/extra_doors/get/master.zip + https://bitbucket.org/sorcerykid/extra_doors/get/master.tar.gz + +Revision History +---------------------- + +Version 1.0b (12-Jan-2018) + - initial version within doors mod + +Version 2.0 (31-Aug-2018) + - separated common routines into standalone mod + - included support files for public release + +Compatability +---------------------- + +Minetest 0.4.15+ required + +Dependencies +---------------------- + +Doors Mod (required) + https://github.com/minetest/minetest_game/doors + +Installation +---------------------- + + 1) Unzip the archive into the mods directory of your game + 2) Rename the extra_doors-master directory to "extra_doors" + + +Source Code License +---------------------- + +GNU Lesser General Public License v3 (LGPL-3.0) + +Copyright (c) 2018, Leslie Krause (leslie@searstower.org) + +This program is free software; you can redistribute it and/or modify it under the terms of +the GNU Lesser General Public License as published by the Free Software Foundation; either +version 3 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details. + +http://www.gnu.org/licenses/lgpl-2.1.html + +License of media (textures, sounds, and models) +---------------------------------------------------------- + +Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) + + /textures/doors_door_cottage1.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_door_cottage2.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_door_french.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_door_japanese.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_item_cottage1.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_item_cottage2.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_item_french.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/doors_item_japanese.png + by kilbith (relicensed WTFPL) + modified by sorcerykid + + /textures/default_steel_rod.png + by sorcerykid + + /textures/doors_door_barn1.png + by sorcerykid + + /textures/doors_door_barn2.png + by sorcerykid + + /textures/doors_door_castle1.png + by sorcerykid + + /textures/doors_door_castle2.png + by sorcerykid + + /textures/doors_door_dungeon1.png + by sorcerykid + + /textures/doors_door_dungeon2.png + by sorcerykid + + /textures/doors_door_mansion1.png + by sorcerykid + + /textures/doors_door_mansion2.png + by sorcerykid + + /textures/doors_door_steelglass1.png + by sorcerykid + + /textures/doors_door_steelglass2.png + by sorcerykid + + /textures/doors_door_steelpanel1.png + by sorcerykid + + /textures/doors_door_woodglass1.png + by sorcerykid + + /textures/doors_door_woodglass2.png + by sorcerykid + + /textures/doors_door_woodpanel1.png + by sorcerykid + + /textures/doors_item_barn1.png + by sorcerykid + + /textures/doors_item_barn2.png + by sorcerykid + + /textures/doors_item_castle1.png + by sorcerykid + + /textures/doors_item_castle2.png + by sorcerykid + + /textures/doors_item_dungeon1.png + by sorcerykid + + /textures/doors_item_dungeon2.png + by sorcerykid + + /textures/doors_item_mansion1.png + by sorcerykid + + /textures/doors_item_mansion2.png + by sorcerykid + + /textures/doors_item_steelglass1.png + by sorcerykid + + /textures/doors_item_steelglass2.png + by sorcerykid + + /textures/doors_item_steelpanel1.png + by sorcerykid + + /textures/doors_item_woodglass1.png + by sorcerykid + + /textures/doors_item_woodglass2.png + by sorcerykid + + /textures/doors_item_woodpanel1.png + by sorcerykid + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..678b31b --- /dev/null +++ b/depends.txt @@ -0,0 +1 @@ +doors diff --git a/description.txt b/description.txt new file mode 100644 index 0000000..1622783 --- /dev/null +++ b/description.txt @@ -0,0 +1 @@ +Extra Doors adds a set of 18 new doors to Minetest including castle, dungeon, barn, cottage, and multi-panel styles. diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..395387d --- /dev/null +++ b/init.lua @@ -0,0 +1,284 @@ +-------------------------------------------------------- +-- Minetest :: Extra Doors v2.0 (extra_doors) +-- +-- See README.txt for licensing and release notes. +-- Copyright (c) 2018, Leslie E. Krause +-------------------------------------------------------- + +-- One of the most essential but often overlooked elements of building design is door selection. +-- Doors set the tone and character, and having the wrong style of door can make or break a build. + +minetest.register_craftitem( ":default:steel_rod", { + description = "Steel Rod", + inventory_image = "default_steel_rod.png", +} ) + +minetest.register_craft( { + output = "default:steel_rod 4", + recipe = { + { "default:steel_ingot" }, + } +} ) + +doors.register( "door_woodpanel1", { + -- Colonial Style (6 panel) + tiles = { { name = "doors_door_woodpanel1.png", backface_culling = true } }, + description = "Wooden Colonial Door", + inventory_image = "doors_item_woodpanel1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood", "default:stick" }, + { "group:wood", "group:wood", "default:stick" }, + { "group:wood", "group:wood", "default:stick" }, + } +} ) + +doors.register( "door_woodglass1", { + -- Cambridge Style (2 panel) + tiles = { { name = "doors_door_woodglass1.png", backface_culling = true } }, + description = "Wooden Single-Lite Door", + inventory_image = "doors_item_woodglass1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:glass", "default:glass", "default:stick" }, + { "group:wood", "group:wood", "" }, + { "group:wood", "group:wood", "" }, + } +} ) + +doors.register( "door_woodglass2", { + -- Atherton Style (4 panel) + tiles = { { name = "doors_door_woodglass2.png", backface_culling = true } }, + description = "Wooden Double-Lite Door", + inventory_image = "doors_item_woodglass2.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:glass", "default:glass", "default:stick" }, + { "group:wood", "group:wood", "default:stick" }, + { "group:wood", "group:wood", "" }, + } +} ) + +doors.register( "door_japanese", { + tiles = { { name = "doors_door_japanese.png", backface_culling = true } }, + description = "Japanese Door", + inventory_image = "doors_item_japanese.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:paper", "group:wood", "default:stick" }, + { "default:paper", "group:wood", "default:stick" }, + { "default:paper", "group:wood", "default:stick" }, + } +} ) + +doors.register( "door_french", { + tiles = { { name = "doors_door_french.png", backface_culling = true } }, + description = "French Door", + inventory_image = "doors_item_french.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:glass", "group:wood", "default:stick" }, + { "default:glass", "group:wood", "default:stick" }, + { "default:glass", "group:wood", "default:stick" }, + } +} ) + +doors.register( "door_cottage1", { + tiles = { { name = "doors_door_cottage1.png", backface_culling = true } }, + description = "Cottage Interior Door", + inventory_image = "doors_item_cottage1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood" }, + { "default:stick", "default:stick" }, + { "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_cottage2", { + tiles = { { name = "doors_door_cottage2.png", backface_culling = true } }, + description = "Cottage Exterior Door", + inventory_image = "doors_item_cottage2.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:glass", "default:glass" }, + { "default:stick", "default:stick" }, + { "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_barn1", { + tiles = { { name = "doors_door_barn1.png", backface_culling = true } }, + description = "Barn Interior Door", + inventory_image = "doors_item_barn1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood", "group:wood" }, + { "default:stick", "default:stick", "default:stick" }, + { "group:wood", "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_barn2", { + tiles = { { name = "doors_door_barn2.png", backface_culling = true } }, + description = "Barn Exterior Door", + inventory_image = "doors_item_barn2.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood", "group:wood" }, + { "default:steel_rod", "default:steel_rod", "default:steel_rod" }, + { "group:wood", "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_castle1", { + tiles = { { name = "doors_door_castle1.png", backface_culling = true } }, + description = "Castle Interior Door", + inventory_image = "doors_item_castle1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:stick", "group:wood", "group:wood" }, + { "", "group:wood", "group:wood" }, + { "default:stick", "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_castle2", { + tiles = { { name = "doors_door_castle2.png", backface_culling = true } }, + description = "Castle Exterior Door", + inventory_image = "doors_item_castle2.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "default:steel_rod", "group:wood", "group:wood" }, + { "", "group:wood", "group:wood" }, + { "default:steel_rod", "group:wood", "group:wood" }, + } +} ) + +doors.register( "door_mansion1", { + tiles = { { name = "doors_door_mansion1.png", backface_culling = true } }, + description = "Mansion Interior Door", + inventory_image = "doors_item_mansion1.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood", "dye:white" }, + { "group:wood", "group:wood", "dye:yellow" }, + { "group:wood", "group:wood", "dye:white" }, + } +} ) + +doors.register( "door_mansion2", { + tiles = { { name = "doors_door_mansion2.png", backface_culling = true } }, + description = "Mansion Exterior Door ", + inventory_image = "doors_item_mansion2.png", + groups = { choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, + recipe = { + { "group:wood", "group:wood", "dye:black" }, + { "group:wood", "group:wood", "dye:yellow" }, + { "group:wood", "group:wood", "dye:black" }, + } +} ) + +doors.register("door_dungeon1", { + tiles = { { name = "doors_door_dungeon1.png", backface_culling = true } }, + description = "Dungeon Interior Door", + inventory_image = "doors_item_dungeon1.png", + protected = true, + groups = { cracky = 1, level = 2 }, + sounds = default.node_sound_metal_defaults( ), + sound_open = "doors_steel_door_open", + sound_close = "doors_steel_door_close", + recipe = { + { "default:steel_ingot", "default:steel_rod", "default:steel_ingot" }, + { "default:steel_rod", "default:steel_rod", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_rod", "default:steel_ingot" }, + } +} ) + +doors.register( "door_dungeon2", { + tiles = { { name = "doors_door_dungeon2.png", backface_culling = true } }, + description = "Dungeon Exterior Door", + inventory_image = "doors_item_dungeon2.png", + protected = true, + groups = { cracky = 1, level = 2 }, + sounds = default.node_sound_metal_defaults( ), + sound_open = "doors_steel_door_open", + sound_close = "doors_steel_door_close", + recipe = { + { "default:steel_rod", "default:steel_rod", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_ingot" }, + } +} ) + +doors.register( "door_steelpanel1", { + tiles = { { name = "doors_door_steelpanel.png", backface_culling = true } }, + description = "Steel Colonial Door", + inventory_image = "doors_item_steelpanel1.png", + protected = true, + groups = { cracky = 1, level = 2 }, + sounds = default.node_sound_metal_defaults( ), + sound_open = "doors_steel_door_open", + sound_close = "doors_steel_door_close", + recipe = { + { "default:steel_ingot", "default:steel_ingot", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_rod" }, + } +} ) + +doors.register( "door_steelglass1", { + tiles = { { name = "doors_door_steelglass1.png", backface_culling = true } }, + description = "Steel Single-Lite Door", + inventory_image = "doors_item_steelglass1.png", + protected = true, + groups = { cracky = 1, level = 2 }, + sounds = default.node_sound_metal_defaults( ), + sound_open = "doors_steel_door_open", + sound_close = "doors_steel_door_close", + recipe = { + { "default:glass", "default:glass", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "" }, + { "default:steel_ingot", "default:steel_ingot", "" }, + } +} ) + +doors.register( "door_steelglass2", { + tiles = { { name = "doors_door_steelglass2.png", backface_culling = true } }, + description = "Steel Double-Lite Door", + inventory_image = "doors_item_steelglass2.png", + protected = true, + groups = { cracky = 1, level = 2 }, + sounds = default.node_sound_metal_defaults( ), + sound_open = "doors_steel_door_open", + sound_close = "doors_steel_door_close", + recipe = { + { "default:glass", "default:glass", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "default:steel_rod" }, + { "default:steel_ingot", "default:steel_ingot", "" }, + } +} ) + +minetest.register_craft( { + type = "fuel", + recipe = "doors:door_barn1", + burntime = 14, +} ) + +minetest.register_craft( { + type = "fuel", + recipe = "doors:door_barn2", + burntime = 16, +} ) + +minetest.register_craft( { + type = "fuel", + recipe = "doors:door_castle1", + burntime = 8, +} ) + +minetest.register_craft( { + type = "fuel", + recipe = "doors:door_castle2", + burntime = 12, +} ) diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..5fa5a75 --- /dev/null +++ b/mod.conf @@ -0,0 +1,4 @@ +name = extra_doors +title = Extra Doors +author = sorcerykid +license = LGPL-3.0 diff --git a/textures/default_steel_rod.png b/textures/default_steel_rod.png new file mode 100644 index 0000000..0e692e9 Binary files /dev/null and b/textures/default_steel_rod.png differ diff --git a/textures/doors_door_barn1.png b/textures/doors_door_barn1.png new file mode 100644 index 0000000..0bf0035 Binary files /dev/null and b/textures/doors_door_barn1.png differ diff --git a/textures/doors_door_barn2.png b/textures/doors_door_barn2.png new file mode 100644 index 0000000..83e1497 Binary files /dev/null and b/textures/doors_door_barn2.png differ diff --git a/textures/doors_door_castle1.png b/textures/doors_door_castle1.png new file mode 100644 index 0000000..7ec1017 Binary files /dev/null and b/textures/doors_door_castle1.png differ diff --git a/textures/doors_door_castle2.png b/textures/doors_door_castle2.png new file mode 100644 index 0000000..5e6af94 Binary files /dev/null and b/textures/doors_door_castle2.png differ diff --git a/textures/doors_door_cottage1.png b/textures/doors_door_cottage1.png new file mode 100644 index 0000000..2d9113b Binary files /dev/null and b/textures/doors_door_cottage1.png differ diff --git a/textures/doors_door_cottage2.png b/textures/doors_door_cottage2.png new file mode 100644 index 0000000..e7ce435 Binary files /dev/null and b/textures/doors_door_cottage2.png differ diff --git a/textures/doors_door_dungeon1.png b/textures/doors_door_dungeon1.png new file mode 100644 index 0000000..0537f5d Binary files /dev/null and b/textures/doors_door_dungeon1.png differ diff --git a/textures/doors_door_dungeon2.png b/textures/doors_door_dungeon2.png new file mode 100644 index 0000000..956bff0 Binary files /dev/null and b/textures/doors_door_dungeon2.png differ diff --git a/textures/doors_door_french.png b/textures/doors_door_french.png new file mode 100644 index 0000000..58b17e6 Binary files /dev/null and b/textures/doors_door_french.png differ diff --git a/textures/doors_door_japanese.png b/textures/doors_door_japanese.png new file mode 100644 index 0000000..64d6119 Binary files /dev/null and b/textures/doors_door_japanese.png differ diff --git a/textures/doors_door_mansion1.png b/textures/doors_door_mansion1.png new file mode 100644 index 0000000..d4991de Binary files /dev/null and b/textures/doors_door_mansion1.png differ diff --git a/textures/doors_door_mansion2.png b/textures/doors_door_mansion2.png new file mode 100644 index 0000000..8f73430 Binary files /dev/null and b/textures/doors_door_mansion2.png differ diff --git a/textures/doors_door_steelglass1.png b/textures/doors_door_steelglass1.png new file mode 100644 index 0000000..0168cd6 Binary files /dev/null and b/textures/doors_door_steelglass1.png differ diff --git a/textures/doors_door_steelglass2.png b/textures/doors_door_steelglass2.png new file mode 100644 index 0000000..8a990c5 Binary files /dev/null and b/textures/doors_door_steelglass2.png differ diff --git a/textures/doors_door_steelpanel1.png b/textures/doors_door_steelpanel1.png new file mode 100644 index 0000000..fdcec01 Binary files /dev/null and b/textures/doors_door_steelpanel1.png differ diff --git a/textures/doors_door_woodglass1.png b/textures/doors_door_woodglass1.png new file mode 100644 index 0000000..7d9232a Binary files /dev/null and b/textures/doors_door_woodglass1.png differ diff --git a/textures/doors_door_woodglass2.png b/textures/doors_door_woodglass2.png new file mode 100644 index 0000000..ca527ce Binary files /dev/null and b/textures/doors_door_woodglass2.png differ diff --git a/textures/doors_door_woodpanel1.png b/textures/doors_door_woodpanel1.png new file mode 100644 index 0000000..745a723 Binary files /dev/null and b/textures/doors_door_woodpanel1.png differ diff --git a/textures/doors_item_barn1.png b/textures/doors_item_barn1.png new file mode 100644 index 0000000..c63859d Binary files /dev/null and b/textures/doors_item_barn1.png differ diff --git a/textures/doors_item_barn2.png b/textures/doors_item_barn2.png new file mode 100644 index 0000000..6ece2a6 Binary files /dev/null and b/textures/doors_item_barn2.png differ diff --git a/textures/doors_item_castle1.png b/textures/doors_item_castle1.png new file mode 100644 index 0000000..9cd6317 Binary files /dev/null and b/textures/doors_item_castle1.png differ diff --git a/textures/doors_item_castle2.png b/textures/doors_item_castle2.png new file mode 100644 index 0000000..0aebe4e Binary files /dev/null and b/textures/doors_item_castle2.png differ diff --git a/textures/doors_item_cottage1.png b/textures/doors_item_cottage1.png new file mode 100644 index 0000000..2f57ec9 Binary files /dev/null and b/textures/doors_item_cottage1.png differ diff --git a/textures/doors_item_cottage2.png b/textures/doors_item_cottage2.png new file mode 100644 index 0000000..f657466 Binary files /dev/null and b/textures/doors_item_cottage2.png differ diff --git a/textures/doors_item_dungeon1.png b/textures/doors_item_dungeon1.png new file mode 100644 index 0000000..087e338 Binary files /dev/null and b/textures/doors_item_dungeon1.png differ diff --git a/textures/doors_item_dungeon2.png b/textures/doors_item_dungeon2.png new file mode 100644 index 0000000..bd203b8 Binary files /dev/null and b/textures/doors_item_dungeon2.png differ diff --git a/textures/doors_item_french.png b/textures/doors_item_french.png new file mode 100644 index 0000000..5ef5a73 Binary files /dev/null and b/textures/doors_item_french.png differ diff --git a/textures/doors_item_japanese.png b/textures/doors_item_japanese.png new file mode 100644 index 0000000..67c5aa0 Binary files /dev/null and b/textures/doors_item_japanese.png differ diff --git a/textures/doors_item_mansion1.png b/textures/doors_item_mansion1.png new file mode 100644 index 0000000..5921c99 Binary files /dev/null and b/textures/doors_item_mansion1.png differ diff --git a/textures/doors_item_mansion2.png b/textures/doors_item_mansion2.png new file mode 100644 index 0000000..c55b618 Binary files /dev/null and b/textures/doors_item_mansion2.png differ diff --git a/textures/doors_item_steelglass1.png b/textures/doors_item_steelglass1.png new file mode 100644 index 0000000..87f2085 Binary files /dev/null and b/textures/doors_item_steelglass1.png differ diff --git a/textures/doors_item_steelglass2.png b/textures/doors_item_steelglass2.png new file mode 100644 index 0000000..b2059f3 Binary files /dev/null and b/textures/doors_item_steelglass2.png differ diff --git a/textures/doors_item_steelpanel1.png b/textures/doors_item_steelpanel1.png new file mode 100644 index 0000000..1593407 Binary files /dev/null and b/textures/doors_item_steelpanel1.png differ diff --git a/textures/doors_item_woodglass1.png b/textures/doors_item_woodglass1.png new file mode 100644 index 0000000..8ef8eca Binary files /dev/null and b/textures/doors_item_woodglass1.png differ diff --git a/textures/doors_item_woodglass2.png b/textures/doors_item_woodglass2.png new file mode 100644 index 0000000..4f9b8a8 Binary files /dev/null and b/textures/doors_item_woodglass2.png differ diff --git a/textures/doors_item_woodpanel1.png b/textures/doors_item_woodpanel1.png new file mode 100644 index 0000000..accfc01 Binary files /dev/null and b/textures/doors_item_woodpanel1.png differ