diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..65c5ca8 --- /dev/null +++ b/LICENSE @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..ebd9987 --- /dev/null +++ b/depends.txt @@ -0,0 +1,2 @@ +dye +default diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..94a4ee3 --- /dev/null +++ b/init.lua @@ -0,0 +1,28 @@ +--[[ + Mod Tintas_Reais para Minetest + Copyright (C) 2017 BrunoMine (https://github.com/BrunoMine) + + Recebeste uma cópia da GNU Lesser General + Public License junto com esse software, + se não, veja em . + + Inicializador de scripts + ]] + +-- Notificador de Inicializador +local notificar = function(msg) + if minetest.setting_get("log_mods") then + minetest.debug("[TINTAS_REAIS]"..msg) + end +end + +local modpath = minetest.get_modpath("tintas_reais") + +-- Carregar scripts +notificar("Carregando...") + +-- Trocar receitas +dofile(modpath.."/receitas.lua") +dofile(modpath.."/texturas.lua") + +notificar("OK") diff --git a/receitas.lua b/receitas.lua new file mode 100644 index 0000000..aaa3b90 --- /dev/null +++ b/receitas.lua @@ -0,0 +1,169 @@ +--[[ + Mod Tintas_Reais para Minetest + Copyright (C) 2017 BrunoMine (https://github.com/BrunoMine) + + Recebeste uma cópia da GNU Lesser General + Public License junto com esse software, + se não, veja em . + + Troca as receitas das tintas + ]] + +-- Verifica se está habilitado para trocar receitas +local status = minetest.setting_getbool("tintas_reais:crafting") +if not (status == nil) and (status == false) then + return +end + +-- Remover todas as receitas padrões +for _, c in ipairs(dye.dyes) do + minetest.clear_craft({output = 'dye:' .. c[1]}) +end + +-- Receitas +minetest.register_craft({ + output = 'dye:white 10', + recipe = { + {'default:stone','flowers:dandelion_white','default:stone'}, + {'flowers:dandelion_white','flowers:dandelion_white','flowers:dandelion_white'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:grey', + recipe = { + {'default:stone','default:coal_lump','default:stone'}, + {'default:stone','default:coal_lump','default:stone'}, + {'default:paper','dye:white','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:dark_grey', + recipe = { + {'default:stone','default:coal_lump','default:stone'}, + {'default:stone','default:coal_lump','default:stone'}, + {'default:paper','dye:grey','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:black 10', + recipe = { + {'default:stone','default:coal_lump','default:stone'}, + {'default:stone','default:coal_lump','default:stone'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:violet 10', + recipe = { + {'default:stone','flowers:viola','default:stone'}, + {'flowers:viola','flowers:viola','flowers:viola'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:blue 10', + recipe = { + {'default:stone','flowers:geranium','default:stone'}, + {'flowers:geranium','flowers:geranium','flowers:geranium'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:cyan', + recipe = { + {'default:stone','flowers:dandelion_white','default:stone'}, + {'default:stone','default:cactus','default:stone'}, + {'default:paper','dye:blue','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:dark_green', + recipe = { + {'default:stone','default:coal_lump','default:stone'}, + {'default:stone','default:coal_lump','default:stone'}, + {'default:paper','dye:green','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:green 10', + recipe = { + {'default:stone','default:cactus','default:stone'}, + {'default:cactus','default:cactus','default:cactus'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:yellow 10', + recipe = { + {'default:stone','flowers:dandelion_yellow','default:stone'}, + {'flowers:dandelion_yellow','flowers:dandelion_yellow','flowers:dandelion_yellow'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:brown 3', + recipe = { + {'','',''}, + {'','default:stick',''}, + {'dye:orange','dye:blue','dye:orange'}, + } +}) +minetest.register_craft({ + output = 'dye:orange 10', + recipe = { + {'default:stone','flowers:tulip','default:stone'}, + {'flowers:tulip','flowers:tulip','flowers:tulip'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:red 10', + recipe = { + {'default:stone','flowers:rose','default:stone'}, + {'flowers:rose','flowers:rose','flowers:rose'}, + {'default:paper','default:steel_ingot','default:paper'}, + } +}) +minetest.register_craft({ + output = 'dye:pink 3', + recipe = { + {'','',''}, + {'','default:stick',''}, + {'dye:red','dye:white','dye:red'}, + } +}) + +-- Refazer receitas misturas + +local mixbases = {"pink", "magenta", "red", "orange", "brown", "yellow", "green", "dark_green", "cyan", "blue", "violet", "black", "dark_grey", "grey", "white"} + +local mixes = { + -- pink, magenta, red, orange, brown, yellow, green, dark_green, cyan, blue, violet, black, dark_grey, grey, white + white = {"pink", "pink", "pink", "orange", "orange", "yellow", "green", "green", "grey", "cyan", "violet","grey", "grey", "grey","white"}, + grey = {"pink", "pink", "pink", "orange", "orange", "yellow", "green", "green", "grey", "cyan", "violet","dark_grey","grey", "grey"}, + dark_grey = {"brown", "brown", "brown", "brown", "brown", "brown", "dark_green","dark_green","blue", "blue", "violet","black", "dark_grey"}, + black = {"black", "black", "black", "black", "black", "black", "black", "black", "black","black", "black", "black"}, + violet = {"magenta","magenta","magenta","red", "brown", "red", "cyan", "brown", "blue", "violet","violet"}, + blue = {"violet", "violet", "magenta","brown", "brown", "dark_green","cyan", "cyan", "cyan", "blue"}, + cyan = {"brown", "blue", "brown", "dark_green","dark_grey", "green", "cyan", "dark_green","cyan"}, + dark_green = {"brown", "brown", "brown", "brown", "brown", "green", "green", "dark_green"}, + green = {"yellow", "brown", "yellow", "yellow", "dark_green","green", "green"}, + yellow = {"orange", "red", "orange", "yellow", "orange", "yellow"}, + brown = {"brown", "brown", "brown", "orange", "brown"}, + orange = {"orange", "red", "orange", "orange"}, + red = {"pink", "magenta","red"}, + magenta = {"magenta","magenta"}, + pink = {"pink"}, +} + +for one, results in pairs(mixes) do + for i, result in ipairs(results) do + local another = mixbases[i] + minetest.register_craft({ + type = "shapeless", + output = 'dye:' .. result .. ' 2', + recipe = {'dye:' .. one, 'dye:' .. another}, + }) + end +end diff --git a/texturas.lua b/texturas.lua new file mode 100644 index 0000000..a187ce5 --- /dev/null +++ b/texturas.lua @@ -0,0 +1,23 @@ +--[[ + Mod Tintas_Reais para Minetest + Copyright (C) 2017 BrunoMine (https://github.com/BrunoMine) + + Recebeste uma cópia da GNU Lesser General + Public License junto com esse software, + se não, veja em . + + Mudar texturas (evitando sobreposição de pacotes de texturas) + ]] + + +-- Verifica se está habilitado para trocar receitas +local status = minetest.setting_getbool("tintas_reais:textures") +if not (status == nil) and (status == false) then + return +end + +-- Altera todas as texturas +for _, c in ipairs(dye.dyes) do + minetest.override_item("dye:" .. c[1], {inventory_image = "tintas_reais_" .. c[1] .. ".png"}) +end + diff --git a/textures/tintas_reais_black.png b/textures/tintas_reais_black.png new file mode 100644 index 0000000..cd9603e Binary files /dev/null and b/textures/tintas_reais_black.png differ diff --git a/textures/tintas_reais_blue.png b/textures/tintas_reais_blue.png new file mode 100644 index 0000000..dc48660 Binary files /dev/null and b/textures/tintas_reais_blue.png differ diff --git a/textures/tintas_reais_brown.png b/textures/tintas_reais_brown.png new file mode 100644 index 0000000..0976053 Binary files /dev/null and b/textures/tintas_reais_brown.png differ diff --git a/textures/tintas_reais_cyan.png b/textures/tintas_reais_cyan.png new file mode 100644 index 0000000..df1229a Binary files /dev/null and b/textures/tintas_reais_cyan.png differ diff --git a/textures/tintas_reais_dark_green.png b/textures/tintas_reais_dark_green.png new file mode 100644 index 0000000..2fef0c3 Binary files /dev/null and b/textures/tintas_reais_dark_green.png differ diff --git a/textures/tintas_reais_dark_grey.png b/textures/tintas_reais_dark_grey.png new file mode 100644 index 0000000..4fa6db3 Binary files /dev/null and b/textures/tintas_reais_dark_grey.png differ diff --git a/textures/tintas_reais_green.png b/textures/tintas_reais_green.png new file mode 100644 index 0000000..d8a61a2 Binary files /dev/null and b/textures/tintas_reais_green.png differ diff --git a/textures/tintas_reais_grey.png b/textures/tintas_reais_grey.png new file mode 100644 index 0000000..f2fded6 Binary files /dev/null and b/textures/tintas_reais_grey.png differ diff --git a/textures/tintas_reais_magenta.png b/textures/tintas_reais_magenta.png new file mode 100644 index 0000000..810f29c Binary files /dev/null and b/textures/tintas_reais_magenta.png differ diff --git a/textures/tintas_reais_orange.png b/textures/tintas_reais_orange.png new file mode 100644 index 0000000..dd5cfa1 Binary files /dev/null and b/textures/tintas_reais_orange.png differ diff --git a/textures/tintas_reais_pink.png b/textures/tintas_reais_pink.png new file mode 100644 index 0000000..4e19530 Binary files /dev/null and b/textures/tintas_reais_pink.png differ diff --git a/textures/tintas_reais_red.png b/textures/tintas_reais_red.png new file mode 100644 index 0000000..047c667 Binary files /dev/null and b/textures/tintas_reais_red.png differ diff --git a/textures/tintas_reais_violet.png b/textures/tintas_reais_violet.png new file mode 100644 index 0000000..3ad9cd2 Binary files /dev/null and b/textures/tintas_reais_violet.png differ diff --git a/textures/tintas_reais_white.png b/textures/tintas_reais_white.png new file mode 100644 index 0000000..3dc12ea Binary files /dev/null and b/textures/tintas_reais_white.png differ diff --git a/textures/tintas_reais_yellow.png b/textures/tintas_reais_yellow.png new file mode 100644 index 0000000..0c13991 Binary files /dev/null and b/textures/tintas_reais_yellow.png differ