1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-20 20:23:03 +02:00

Merge pull request #2808 from Laserlicht/credits

VCMI credits
This commit is contained in:
Ivan Savenko 2023-09-16 12:02:32 +03:00 committed by GitHub
commit ed60675a01
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 75 additions and 93 deletions

86
AUTHORS
View File

@ -1,86 +0,0 @@
VCMI PROJECT CODE CONTRIBUTORS:
Michał Urbańczyk aka Tow, <impono@gmail.com>
* project originator; programming, making releases, website
maintenance, reverse engineering, general support.
Mateusz B. aka Tow dragon, <matcio1@gmail.com>
* general support, battle support, support for many Heroes 3 config files, reverse engineering, ERM/VERM parser and interpreter
Stefan Pavlov aka Ste, <mailste@gmail.com>
* minor fixes in pregame
Yifeng Sun aka phoebus118, <pkusunyifeng@gmail.com>
* a part of .snd handling, minor fixes and updates
Andrea Palmate aka afxgroup, <andrea@amigasoft.net>
* GCC/AmigaOS4 compatibility updates and makefile
Vadim Glazunov aka neweagle, <neweagle@gmail.com>
* minor GCC/Linux compatibility changes
Rafal R. aka ambtrip, <ambtrip@wp.pl>
* GeniusAI (battles)
Lukasz Wychrystenko aka tezeriusz, <t0@czlug.icis.pcz.pl>
* minor GCC/Linux compatibility changes, code review
Xiaomin Ding, <dingding303@gmail.com>
* smack videos player
Tom Zielinski aka Warmonger, <Warmonger@vp.pl>
* game objects, mechanics
Frank Zago aka ubuntux, <>
* GCC/Linux compatibility changes, sound/music support, video support on Linux
Trevor Standley aka tstandley, <>
* adventure map part of Genius AI
Rickard Westerlund aka Onion Knight, <onionknigh@gmail.com>
* battle functionality and general support
Ivan Savenko, <saven.ivan@gmail.com>
* GCC/Linux support, client development, general support
Benjamin Gentner aka beegee, <>
* battle support, programming
Alexey aka Macron1Robot, <>
* minor modding changes
Alexander Shishkin aka alexvins,
* MinGW platform support, modding related programming
Arseniy Shestakov aka SXX, <me@arseniyshestakov.com>
* pathfinding improvements, programming
Vadim Markovtsev, <gmarkhor@gmail.com>
* resolving problems with macOS, bug fixes
Michał Kalinowski, <feniks_fire@o2.pl>
* refactoring code
Dydzio, <blood990@gmail.com>
* Small features, improvements and bug fixes in all VCMI parts
Piotr Wójcik aka Chocimier, <chocimier@tlen.pl>
* Various bug fixes
Henning Koehler, <henning.koehler.nz@gmail.com>
* skill modding, bonus updaters
Andrzej Żak aka godric3
* minor bug fixes and modding features
Andrii Danylchenko
* Nullkiller AI, VCAI improvements
Dmitry Orlov, <shubus.corporation@gmail.com>
* special buildings support in fan towns, new features and bug fixes
Andrey Cherkas aka nordsoft, <nordsoft@yahoo.com>
* new terrain support, rmg features, map editor, multiplayer improvements, bug fixes
Andrey Filipenkov aka kambala-decapitator, <decapitator@ukr.net>
* iOS support, macOS improvements, various bug fixes

53
AUTHORS.h Normal file
View File

@ -0,0 +1,53 @@
/*
* AUTHORS.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
//VCMI PROJECT CODE CONTRIBUTORS:
std::vector<std::vector<std::string>> contributors = {
// Task Name Aka E-Mail
{ "Idea", "Michał Urbańczyk", "Tow", "impono@gmail.com" },
{ "Idea", "Mateusz B.", "Tow dragon", "matcio1@gmail.com" },
{ "Developing", "Andrea Palmate", "afxgroup", "andrea@amigasoft.net" },
{ "Developing", "Alexander Shishkin", "alexvins", "" },
{ "Developing", "Rafal R.", "ambtrip", "ambtrip@wp.pl" },
{ "Developing", "Andrii Danylchenko", "", "" },
{ "Developing", "Benjamin Gentner", "beegee", "" },
{ "Developing", "Piotr Wójcik", "Chocimier", "chocimier@tlen.pl" },
{ "Developing", "Dmitry Orlov", "", "shubus.corporation@gmail.com" },
{ "Developing", "", "Dydzio", "blood990@gmail.com" },
{ "Developing", "Andrzej Żak", "godric3", "" },
{ "Developing", "Henning Koehler", "henningkoehlernz", "henning.koehler.nz@gmail.com" },
{ "Developing", "Ivan Savenko", "", "saven.ivan@gmail.com" },
{ "Developing", "", "kambala-decapitator", "decapitator@ukr.net" },
{ "Developing", "", "krs0", "" },
{ "Developing", "", "Laserlicht", "" },
{ "Developing", "Alexey", "Macron1Robot", "" },
{ "Developing", "Michał Kalinowski", "", "feniks_fire@o2.pl" },
{ "Developing", "Vadim Glazunov", "neweagle", "neweagle@gmail.com" },
{ "Developing", "Andrey Cherkas", "nordsoft", "nordsoft@yahoo.com" },
{ "Developing", "Rickard Westerlund", "Onion Knight", "onionknigh@gmail.com" },
{ "Developing", "Yifeng Sun", "phoebus118", "pkusunyifeng@gmail.com" },
{ "Developing", "", "rilian-la-te", "" },
{ "Developing", "", "SoundSSGood", "" },
{ "Developing", "Stefan Pavlov", "Ste", "mailste@gmail.com" },
{ "Developing", "Arseniy Shestakov", "SXX", "me@arseniyshestakov.com" },
{ "Developing", "Lukasz Wychrystenko", "tezeriusz", "t0@czlug.icis.pcz.pl" },
{ "Developing", "Trevor Standley", "tstandley", "" },
{ "Developing", "Vadim Markovtsev", "", "gmarkhor@gmail.com" },
{ "Developing", "Frank Zago", "ubuntux", "" },
{ "Developing", "", "vmarkovtsev", "" },
{ "Developing", "Tom Zielinski", "Warmonger", "Warmonger@vp.pl" },
{ "Developing", "Xiaomin Ding", "", "dingding303@gmail.com" },
{ "Testing", "Ben Yan", "by003", "benyan9110@gmail.com," },
{ "Testing", "", "Misiokles", "" },
{ "Testing", "", "Povelitel", "" },
};

View File

@ -588,11 +588,6 @@ if(ANDROID)
)
endif()
install(FILES AUTHORS
DESTINATION res/raw
RENAME authors.txt
)
# zip internal assets - 'config' and 'Mods' dirs, save md5 of the zip
install(CODE "
cmake_path(ABSOLUTE_PATH CMAKE_INSTALL_PREFIX

View File

@ -40,11 +40,11 @@ public class DialogAuthors extends DialogFragment
try
{
// to be checked if this should be converted to async load (not really a file operation so it should be okay)
final String authorsContent = FileUtil.read(getResources().openRawResource(R.raw.authors));
final String authorsContent = "See ingame credits";
vcmiAuthorsView.setText(authorsContent);
launcherAuthorsView.setText("Fay"); // TODO hardcoded for now
}
catch (final IOException e)
catch (final Exception e)
{
Log.e(this, "Could not load authors content", e);
}

View File

@ -19,6 +19,8 @@
#include "../../lib/filesystem/Filesystem.h"
#include "../../AUTHORS.h"
CreditsScreen::CreditsScreen(Rect rect)
: CIntObject(LCLICK), positionCounter(0)
{
@ -26,10 +28,22 @@ CreditsScreen::CreditsScreen(Rect rect)
pos.h = rect.h;
setRedrawParent(true);
OBJ_CONSTRUCTION_CAPTURING_ALL_NO_DISPOSE;
std::string contributorsText = "";
std::string contributorsTask = "";
for (auto & element : contributors)
{
if(element[0] != contributorsTask)
contributorsText += "\r\n{" + element[0] + ":}\r\n";
contributorsText += (element[2] != "" ? element[2] : element[1]) + "\r\n";
contributorsTask = element[0];
}
auto textFile = CResourceHandler::get()->load(ResourcePath("DATA/CREDITS.TXT"))->readAll();
std::string text((char *)textFile.first.get(), textFile.second);
size_t firstQuote = text.find('\"') + 1;
text = text.substr(firstQuote, text.find('\"', firstQuote) - firstQuote);
text = "{- VCMI -}\r\n\r\n" + contributorsText + "\r\n\r\n{Website:}\r\nhttps://vcmi.eu\r\n\r\n\r\n\r\n\r\n{- Heroes of Might and Magic III -}\r\n\r\n" + text;
credits = std::make_shared<CMultiLineLabel>(Rect(pos.w - 350, 0, 350, 600), FONT_CREDITS, ETextAlignment::CENTER, Colors::WHITE, text);
credits->scrollTextTo(-600); // move all text below the screen
}

View File

@ -281,6 +281,7 @@ macro(add_main_lib TARGET_NAME LIBRARY_TYPE)
set(lib_HEADERS
${MAIN_LIB_DIR}/../include/vstd/CLoggerBase.h
${MAIN_LIB_DIR}/../Global.h
${MAIN_LIB_DIR}/../AUTHORS.h
${MAIN_LIB_DIR}/StdInc.h
${MAIN_LIB_DIR}/../include/vstd/ContainerUtils.h

View File

@ -127,6 +127,7 @@
</Linker>
<Unit filename="../CMakeLists.txt" />
<Unit filename="../Global.h" />
<Unit filename="../AUTHORS.h" />
<Unit filename="../Version.h" />
<Unit filename="../include/vcmi/Artifact.h" />
<Unit filename="../include/vcmi/ArtifactService.h" />

View File

@ -325,6 +325,7 @@
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\Global.h" />
<ClInclude Include="..\AUTHORS.h" />
<ClInclude Include="..\Version.h" />
<ClInclude Include="AI_Base.h" />
<ClInclude Include="battle\BattleAction.h" />

View File

@ -470,6 +470,9 @@
<ClInclude Include="..\Global.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="..\AUTHORS.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="AI_Base.h">
<Filter>Header Files</Filter>
</ClInclude>