123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- --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 2.1 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.
- -- https://github.com/orgs/minetest/teams/engine/members
- local core_developers = {
- "Perttu Ahola (celeron55) <celeron55@gmail.com> [Project founder]",
- "sfan5 <sfan5@live.de>",
- "ShadowNinja <shadowninja@minetest.net>",
- "Nathanaëlle Courant (Nore/Ekdohibs) <nore@mesecons.net>",
- "Loic Blot (nerzhul/nrz) <loic.blot@unix-experience.fr>",
- "Andrew Ward (rubenwardy) <rw@rubenwardy.com>",
- "Krock/SmallJoker <mk939@ymail.com>",
- "Lars Hofhansl <larsh@apache.org>",
- "v-rob <robinsonvincent89@gmail.com>",
- "Desour/DS",
- "srifqi",
- "Gregor Parzefall (grorp)",
- }
- -- currently only https://github.com/orgs/minetest/teams/triagers/members
- local core_team = {
- "Zughy [Issue triager]",
- "wsor [Issue triager]",
- "Hugo Locurcio (Calinou) [Issue triager]",
- }
- -- For updating active/previous contributors, see the script in ./util/gather_git_credits.py
- local active_contributors = {
- "Wuzzy [Features, translations, documentation]",
- "numzero [Optimizations, work on OpenGL driver]",
- "ROllerozxa [Bugfixes, Mainmenu]",
- "Lars Müller [Bugfixes]",
- "AFCMS [Documentation]",
- "savilli [Bugfixes]",
- "fluxionary [Bugfixes]",
- "Bradley Pierce (Thresher) [Documentation]",
- "Stvk imension [Android]",
- "JosiahWI [Code cleanups]",
- "OgelGames [UI, Bugfixes]",
- "ndren [Bugfixes]",
- "Abdou-31 [Documentation]",
- }
- local previous_core_developers = {
- "BlockMen",
- "Maciej Kasatkin (RealBadAngel) [RIP]",
- "Lisa Milne (darkrose) <lisa@ltmnet.com>",
- "proller",
- "Ilya Zhuravlev (xyz) <xyz@minetest.net>",
- "PilzAdam <pilzadam@minetest.net>",
- "est31 <MTest31@outlook.com>",
- "kahrl <kahrl@gmx.net>",
- "Ryan Kwolek (kwolekr) <kwolekr@minetest.net>",
- "sapier",
- "Zeno",
- "Auke Kok (sofar) <sofar@foo-projects.org>",
- "Aaron Suen <warr1024@gmail.com>",
- "paramat",
- "Pierre-Yves Rollo <dev@pyrollo.com>",
- "hecks",
- "Jude Melton-Houghton (TurkeyMcMac) [RIP]",
- "Hugues Ross <hugues.ross@gmail.com>",
- "Dmitry Kostenko (x2048) <codeforsmile@gmail.com>",
- }
- local previous_contributors = {
- "Nils Dagsson Moskopp (erlehmann) <nils@dieweltistgarnichtso.net> [Minetest logo]",
- "red-001 <red-001@outlook.ie>",
- "Giuseppe Bilotta",
- "HybridDog",
- "ClobberXD",
- "Dániel Juhász (juhdanad) <juhdanad@gmail.com>",
- "MirceaKitsune <mirceakitsune@gmail.com>",
- "Jean-Patrick Guerrero (kilbith)",
- "MoNTE48",
- "Constantin Wenger (SpeedProg)",
- "Ciaran Gultnieks (CiaranG)",
- "Paul Ouellette (pauloue)",
- "stujones11",
- "Rogier <rogier777@gmail.com>",
- "Gregory Currie (gregorycu)",
- "JacobF",
- "Jeija <jeija@mesecons.net>",
- }
- local function prepare_credits(dest, source)
- local string = table.concat(source, "\n") .. "\n"
- local hypertext_escapes = {
- ["\\"] = "\\\\",
- ["<"] = "\\<",
- [">"] = "\\>",
- }
- string = string:gsub("[\\<>]", hypertext_escapes)
- string = string:gsub("%[.-%]", "<gray>%1</gray>")
- table.insert(dest, string)
- end
- return {
- name = "about",
- caption = fgettext("About"),
- cbf_formspec = function(tabview, name, tabdata)
- local logofile = defaulttexturedir .. "logo.png"
- local version = core.get_version()
- local hypertext = {
- "<tag name=heading color=#ff0>",
- "<tag name=gray color=#aaa>",
- }
- table.insert_all(hypertext, {
- "<heading>", fgettext_ne("Core Developers"), "</heading>\n",
- })
- prepare_credits(hypertext, core_developers)
- table.insert_all(hypertext, {
- "\n",
- "<heading>", fgettext_ne("Core Team"), "</heading>\n",
- })
- prepare_credits(hypertext, core_team)
- table.insert_all(hypertext, {
- "\n",
- "<heading>", fgettext_ne("Active Contributors"), "</heading>\n",
- })
- prepare_credits(hypertext, active_contributors)
- table.insert_all(hypertext, {
- "\n",
- "<heading>", fgettext_ne("Previous Core Developers"), "</heading>\n",
- })
- prepare_credits(hypertext, previous_core_developers)
- table.insert_all(hypertext, {
- "\n",
- "<heading>", fgettext_ne("Previous Contributors"), "</heading>\n",
- })
- prepare_credits(hypertext, previous_contributors)
- hypertext = table.concat(hypertext):sub(1, -2)
- local fs = "image[1.5,0.6;2.5,2.5;" .. core.formspec_escape(logofile) .. "]" ..
- "style[label_button;border=false]" ..
- "button[0.1,3.4;5.3,0.5;label_button;" ..
- core.formspec_escape(version.project .. " " .. version.string) .. "]" ..
- "button_url[1.5,4.1;2.5,0.8;homepage;minetest.net;https://www.minetest.net/]" ..
- "hypertext[5.5,0.25;9.75,6.6;credits;" .. minetest.formspec_escape(hypertext) .. "]"
- -- Render information
- local active_renderer_info = fgettext("Active renderer:") .. " " ..
- core.formspec_escape(core.get_active_renderer())
- fs = fs .. "style[label_button2;border=false]" ..
- "button[0.1,6;5.3,0.5;label_button2;" .. active_renderer_info .. "]"..
- "tooltip[label_button2;" .. active_renderer_info .. "]"
- -- Irrlicht device information
- local irrlicht_device_info = fgettext("Irrlicht device:") .. " " ..
- core.formspec_escape(core.get_active_irrlicht_device())
- fs = fs .. "style[label_button3;border=false]" ..
- "button[0.1,6.5;5.3,0.5;label_button3;" .. irrlicht_device_info .. "]"..
- "tooltip[label_button3;" .. irrlicht_device_info .. "]"
- if PLATFORM == "Android" then
- fs = fs .. "button[0.5,5.1;4.5,0.8;share_debug;" .. fgettext("Share debug log") .. "]"
- else
- 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.5,5.1;4.5,0.8;userdata;" .. fgettext("Open User Data Directory") .. "]"
- end
- return fs
- end,
- cbf_button_handler = function(this, fields, name, tabdata)
- if fields.share_debug then
- local path = core.get_user_path() .. DIR_DELIM .. "debug.txt"
- core.share_file(path)
- end
- if fields.userdata then
- core.open_dir(core.get_user_path())
- end
- end,
- on_change = function(type)
- if type == "ENTER" then
- mm_game_theme.set_engine()
- end
- end,
- }
|