--Minetest --Copyright (C) 2013 sapier -- --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.0 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. -- --You should have received a copy of the GNU Lesser General Public License along --with this program; if not, write to the Free Software Foundation, Inc., --51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. local esc = core.formspec_escape local defaulttexturedir = esc(defaulttexturedir) -------------------------------------------------------------------------------- local multicraft_developers = { "Maksim Gamarnik (MoNTE48) ", "Bektur Mambetov (ubulem) ", "Alexander Zavrin (Ransom.00) ", "Luke (luk3yx) ", "Nathan Salapat (NathanS21) ", "Vitaliy Lobachevskiy (numberZero) ", "Abdullaah Iqbal (An0n3m0us) ", "ElCeejo", "Jean-Patrick Guerrero (kilbith) ", "sfan5 ", "Stuart Jones (stujones11) ", "And other people who helped make the world better!" } local core_developers = { "Perttu Ahola (celeron55) ", "sfan5 ", "Nathanaël Courant (Nore/Ekdohibs) ", "Loic Blot (nerzhul/nrz) ", "paramat", "Andrew Ward (rubenwardy) ", "Krock/SmallJoker ", "Lars Hofhansl ", "Pierre-Yves Rollo ", "v-rob ", } -- For updating active/previous contributors, see the script in ./util/gather_git_credits.py local active_contributors = { "Wuzzy [devtest game, visual corrections]", "Zughy [Visual improvements, various fixes]", "Maksim (MoNTE48) [Android]", "numzero [Graphics and rendering]", "appgurueu [Various internal fixes]", "Desour [Formspec and vector API changes]", "HybridDog [Rendering fixes and documentation]", "Hugues Ross [Graphics-related improvements]", "ANAND (ClobberXD) [Mouse buttons rebinding]", "luk3yx [Fixes]", "hecks [Audiovisuals, Lua API]", "LoneWolfHT [Object crosshair, documentation fixes]", "Lejo [Server-related improvements]", "EvidenceB [Compass HUD element]", "Paul Ouellette (pauloue) [Lua API, documentation]", "TheTermos [Collision detection, physics]", "David CARLIER [Unix & Haiku build fixes]", "dcbrwn [Object shading]", "Elias Fleckenstein [API features/fixes]", "Jean-Patrick Guerrero (kilbith) [model element, visual fixes]", "k.h.lai [Memory leak fixes, documentation]", } local previous_core_developers = { "BlockMen", "Maciej Kasatkin (RealBadAngel) [RIP]", "Lisa Milne (darkrose) ", "proller", "Ilya Zhuravlev (xyz) ", "PilzAdam ", "est31 ", "kahrl ", "Ryan Kwolek (kwolekr) ", "sapier", "Zeno", "ShadowNinja ", "Auke Kok (sofar) ", } local previous_contributors = { "Nils Dagsson Moskopp (erlehmann) [Minetest Logo]", "red-001 ", "Giuseppe Bilotta", "Dániel Juhász (juhdanad) ", "MirceaKitsune ", "Constantin Wenger (SpeedProg)", "Ciaran Gultnieks (CiaranG)", "stujones11 [Android UX improvements]", "Rogier [Fixes]", "Gregory Currie (gregorycu) [optimisation]", "srifqi [Fixes]", "JacobF", "Jeija [HTTP, particles]", } local function buildCreditList(source) local ret = {} for i = 1, #source do ret[i] = esc(source[i]) end return table.concat(ret, ",,") end return { name = "credits", caption = "", -- fgettext("Credits"), cbf_formspec = function(tabview, name, tabdata) local version = core.get_version() local logofile = defaulttexturedir .. "logo.png" local fs = "image[-0.25,-0.3;2,2;" .. logofile .. "]" .. "label[1.3,-0.25;" .. "MultiCraft Open Source, ver. " .. version.string .. "\n" .. "Copyright (C) 2014-2022 MultiCraft Development Team\n" .. "License: GNU LGPLv3.0+ and CC BY-SA 4.0\n" .. "Created and Powered by Minetest Engine, ver. 5.4.1]" .. "style[homepage;padding=-5;bgimg=" .. defaulttexturedir .. "select_btn.png;bgimg_middle=10]" .. "image_button[9.5,-0.2;2.6,0.8;;homepage;Home Page;true;false]" .. "style[privacy;padding=-5;bgimg=" .. defaulttexturedir .. "select_btn.png;bgimg_middle=10]" .. "image_button[9.5,0.65;2.6,0.8;;privacy;Privacy Policy;true;false]" .. "background9[0,1.5;12,4.2;" .. defaulttexturedir .. "worldlist_bg.png" .. ";false;40]" .. "tablecolumns[color;text]" .. "tableoptions[background=#0000;highlight=#00000000;border=false]" .. "table[0,1.5;11.75,4.05;list_credits;" .. "#FFFF00," .. fgettext("Core Developers") .. " (MultiCraft)" .. ",," .. buildCreditList(multicraft_developers) .. ",,," .. "#FFFF00," .. fgettext("Core Developers") .. " (Minetest Engine)" .. ",," .. buildCreditList(core_developers) .. ",,," .. "#FFFF00," .. fgettext("Active Contributors") .. ",," .. buildCreditList(active_contributors) .. ",,," .. "#FFFF00," .. fgettext("Previous Core Developers") ..",," .. buildCreditList(previous_core_developers) .. ",,," .. "#FFFF00," .. fgettext("Previous Contributors") .. ",," .. buildCreditList(previous_contributors) .. ";1]" --[[if PLATFORM ~= "Android" then fs = fs .. "tooltip[userdata;" .. fgettext("Opens the directory that contains user-provided worlds, games, mods,\n" .. "and texture packs in a file manager / explorer.") .. "]" fs = fs .. "button[0,4.75;3.5,1;userdata;" .. fgettext("Open User Data Directory") .. "]" end]] return fs end, cbf_button_handler = function(this, fields, name, tabdata) if fields.homepage then core.open_url("http://multicraft.world") end if fields.privacy then core.open_url("http://multicraft.world/privacy") end if fields.userdata then core.open_dir(core.get_user_path()) end end, }