Integrate dynamic list sizes for credited patrons, add CONTRIBUTORS to credits

(Also added myself to the credits, only took 6 years to not be lazy about it)
This commit is contained in:
Ethan Lee 2020-01-16 20:14:56 -05:00
parent 73335c347c
commit 2aa4aa5f8a
5 changed files with 148 additions and 83 deletions

View File

@ -395,6 +395,101 @@ Game::Game(void):
//updatestate(dwgfx, map, obj, help, music);
skipfakeload = false;
/* Terry's Patrons... */
superpatrons.push_back("Anders Ekermo");
superpatrons.push_back("Andreas K|mper");
superpatrons.push_back("Anthony Burch");
superpatrons.push_back("Bennett Foddy");
superpatrons.push_back("Brendan O'Sullivan");
superpatrons.push_back("Christopher Armstrong");
superpatrons.push_back("Daniel Benmergui");
superpatrons.push_back("David Pittman");
superpatrons.push_back("Ian Bogost");
superpatrons.push_back("Jaz McDougall");
superpatrons.push_back("John Faulkenbury");
superpatrons.push_back("Jonathan Whiting");
superpatrons.push_back("Kyle Pulver");
superpatrons.push_back("Markus Persson");
superpatrons.push_back("Nathan Ostgard");
superpatrons.push_back("Nick Easler");
superpatrons.push_back("Stephen Lavelle");
patrons.push_back("Adam Wendt");
patrons.push_back("Andreas J{rgensen");
patrons.push_back("}ngel Louzao Penalva");
patrons.push_back("Ashley Burton");
patrons.push_back("Aubrey Hesselgren");
patrons.push_back("Bradley Rose");
patrons.push_back("Brendan Urquhart");
patrons.push_back("Chris Ayotte");
patrons.push_back("Christopher Zamanillo");
patrons.push_back("Daniel Schuller");
patrons.push_back("Hybrid Mind Studios");
patrons.push_back("Emilie McGinley");
patrons.push_back("Francisco Solares");
patrons.push_back("Hal Helms");
patrons.push_back("Hayden Scott-Baron");
patrons.push_back("Hermit Games");
patrons.push_back("Ido Yehieli");
patrons.push_back("Jade Vault Games");
patrons.push_back("James Andrews");
patrons.push_back("James Riley");
patrons.push_back("James Hsieh");
patrons.push_back("Jasper Byrne");
patrons.push_back("Jedediah Baker");
patrons.push_back("Jens Bergensten");
patrons.push_back("Jeremy J. Penner");
patrons.push_back("Jeremy Peterson");
patrons.push_back("Jim McGinley");
patrons.push_back("Jonathan Cartwright");
patrons.push_back("John Nesky");
patrons.push_back("Jos Yule");
patrons.push_back("Jose Flores");
patrons.push_back("Josh Bizeau");
patrons.push_back("Joshua Buergel");
patrons.push_back("Joshua Hochner");
patrons.push_back("Kurt Ostfeld");
patrons.push_back("Magnus P~lsson");
patrons.push_back("Mark Neschadimenko");
patrons.push_back("Matt Antonellis");
patrons.push_back("Matthew Reppert");
patrons.push_back("Michael Falkensteiner");
patrons.push_back("Michael Vendittelli");
patrons.push_back("Mike Kasprzak");
patrons.push_back("Mitchel Stein");
patrons.push_back("Sean Murray");
patrons.push_back("Simon Michael");
patrons.push_back("Simon Schmid");
patrons.push_back("Stephen Maxwell");
patrons.push_back("Swing Swing Submarine");
patrons.push_back("Tam Toucan");
patrons.push_back("Terry Dooher");
patrons.push_back("Tim W.");
patrons.push_back("Timothy Bragan");
/* CONTRIBUTORS.txt, again listed alphabetically (according to `sort`) by last name */
githubfriends.push_back("Christoph B{hmwalder");
githubfriends.push_back("Charlie Bruce");
githubfriends.push_back("Brian Callahan");
githubfriends.push_back("Dav999");
githubfriends.push_back("Allison Fleischer");
githubfriends.push_back("Daniel Lee");
githubfriends.push_back("Elliott Saltar");
githubfriends.push_back("Marvin Scholz");
githubfriends.push_back("Keith Stellyes");
githubfriends.push_back("Elijah Stone");
githubfriends.push_back("Thomas S|nger");
githubfriends.push_back("Info Teddy");
githubfriends.push_back("leo60228");
githubfriends.push_back("Emmanuel Vadot");
githubfriends.push_back("Remi Verschelde"); // TODO: Change to "Rémi" if/when UTF-8 support is added
githubfriends.push_back("viri");
githubfriends.push_back("Wouter");
/* Calculate credits length, finally. */
creditmaxposition = 1050 + (10 * (
superpatrons.size() + patrons.size() + githubfriends.size()
));
}
Game::~Game(void)

View File

@ -220,6 +220,10 @@ public:
int timetrialpar, timetrialresulttime, timetrialrank;
int creditposition;
int creditmaxposition;
std::vector<const char*> superpatrons;
std::vector<const char*> patrons;
std::vector<const char*> githubfriends;
bool insecretlab;
bool inintermission;

View File

@ -2478,13 +2478,13 @@ void gamecompleteinput(KeyPoll& key, Graphics& dwgfx, Game& game, mapclass& map,
if (key.isDown(KEYBOARD_z) || key.isDown(KEYBOARD_SPACE) || key.isDown(KEYBOARD_v) || key.isDown(game.controllerButton_flip))
{
game.creditposition -= 6;
if (game.creditposition <= -1650)
if (game.creditposition <= -game.creditmaxposition)
{
if(dwgfx.fademode==0)
{
dwgfx.fademode = 2;
}
game.creditposition = -1650;
game.creditposition = -game.creditmaxposition;
}
else
{

View File

@ -53,9 +53,9 @@ void gamecompletelogic(Graphics& dwgfx, Game& game, entityclass& obj, musicclas
map.tdrawback = true;
game.creditposition--;
if (game.creditposition <= -1650)
if (game.creditposition <= -game.creditmaxposition)
{
game.creditposition = -1650;
game.creditposition = -game.creditmaxposition;
map.bscroll = 0;
}
else

View File

@ -1337,98 +1337,64 @@ void gamecompleterender(Graphics& dwgfx, Game& game, entityclass& obj, UtilityCl
{
dwgfx.Print(40, 680 + game.creditposition, "C++ Port by", tr, tg, tb);
dwgfx.bigprint(60, 690 + game.creditposition, "Simon Roth", tr, tg, tb);
dwgfx.bigprint(60, 710 + game.creditposition, "Ethan Lee", tr, tg, tb);
}
if (dwgfx.onscreen(720 + game.creditposition))
if (dwgfx.onscreen(740 + game.creditposition))
{
dwgfx.Print(40, 720 + game.creditposition, "Beta Testing by", tr, tg, tb);
dwgfx.bigprint(60, 730 + game.creditposition, "Sam Kaplan", tr, tg, tb);
dwgfx.bigprint(60, 750 + game.creditposition, "Pauli Kohberger", tr, tg, tb);
dwgfx.Print(40, 740 + game.creditposition, "Beta Testing by", tr, tg, tb);
dwgfx.bigprint(60, 750 + game.creditposition, "Sam Kaplan", tr, tg, tb);
dwgfx.bigprint(60, 770 + game.creditposition, "Pauli Kohberger", tr, tg, tb);
}
if (dwgfx.onscreen(780 + game.creditposition))
if (dwgfx.onscreen(800 + game.creditposition))
{
dwgfx.Print(40, 780 + game.creditposition, "Ending Picture by", tr, tg, tb);
dwgfx.bigprint(60, 790 + game.creditposition, "Pauli Kohberger", tr, tg, tb);
dwgfx.Print(40, 800 + game.creditposition, "Ending Picture by", tr, tg, tb);
dwgfx.bigprint(60, 810 + game.creditposition, "Pauli Kohberger", tr, tg, tb);
}
if (dwgfx.onscreen(870 + game.creditposition)) dwgfx.bigprint( -1, 870 + game.creditposition, "Patrons", tr, tg, tb, true, 3);
if (dwgfx.onscreen(890 + game.creditposition)) dwgfx.bigprint( -1, 870 + game.creditposition, "Patrons", tr, tg, tb, true, 3);
if (dwgfx.onscreen(910 + game.creditposition)) dwgfx.Print(-1, 910 + game.creditposition,"Anders Ekermo", tr, tg, tb, true);
if (dwgfx.onscreen(920 + game.creditposition)) dwgfx.Print(-1, 920 + game.creditposition,"Andreas K|mper", tr, tg, tb, true);
if (dwgfx.onscreen(930 + game.creditposition)) dwgfx.Print(-1, 930 + game.creditposition,"Anthony Burch", tr, tg, tb, true);
if (dwgfx.onscreen(940 + game.creditposition)) dwgfx.Print(-1, 940 + game.creditposition,"Bennett Foddy", tr, tg, tb, true);
if (dwgfx.onscreen(950 + game.creditposition)) dwgfx.Print(-1, 950 + game.creditposition,"Brendan O'Sullivan", tr, tg, tb, true);
if (dwgfx.onscreen(960 + game.creditposition)) dwgfx.Print(-1, 960 + game.creditposition,"Christopher Armstrong", tr, tg, tb, true);
if (dwgfx.onscreen(970 + game.creditposition)) dwgfx.Print(-1, 970 + game.creditposition,"Daniel Benmergui", tr, tg, tb, true);
if (dwgfx.onscreen(980 + game.creditposition)) dwgfx.Print(-1, 980 + game.creditposition,"David Pittman", tr, tg, tb, true);
if (dwgfx.onscreen(990 + game.creditposition)) dwgfx.Print(-1, 990 + game.creditposition,"Ian Bogost", tr, tg, tb, true);
if (dwgfx.onscreen(1000 + game.creditposition)) dwgfx.Print(-1, 1000 + game.creditposition,"Jaz McDougall", tr, tg, tb, true);
if (dwgfx.onscreen(1010 + game.creditposition)) dwgfx.Print(-1, 1010 + game.creditposition,"John Faulkenbury", tr, tg, tb, true);
if (dwgfx.onscreen(1020 + game.creditposition)) dwgfx.Print(-1, 1020 + game.creditposition,"Jonathan Whiting", tr, tg, tb, true);
if (dwgfx.onscreen(1030 + game.creditposition)) dwgfx.Print(-1, 1030 + game.creditposition,"Kyle Pulver", tr, tg, tb, true);
if (dwgfx.onscreen(1040 + game.creditposition)) dwgfx.Print(-1, 1040 + game.creditposition,"Markus Persson", tr, tg, tb, true);
if (dwgfx.onscreen(1050 + game.creditposition)) dwgfx.Print(-1, 1050 + game.creditposition,"Nathan Ostgard", tr, tg, tb, true);
if (dwgfx.onscreen(1060 + game.creditposition)) dwgfx.Print(-1, 1060 + game.creditposition,"Nick Easler", tr, tg, tb, true);
if (dwgfx.onscreen(1070 + game.creditposition)) dwgfx.Print(-1, 1070 + game.creditposition,"Stephen Lavelle", tr, tg, tb, true);
int creditOffset = 930;
if (dwgfx.onscreen(1090 + game.creditposition)) dwgfx.Print( -1, 1090 + game.creditposition, "and", tr, tg, tb, true);
for (size_t i = 0; i < game.superpatrons.size(); i += 1)
{
if (dwgfx.onscreen(creditOffset + game.creditposition))
{
dwgfx.Print(-1, creditOffset + game.creditposition, game.superpatrons[i], tr, tg, tb, true);
}
creditOffset += 10;
}
if (dwgfx.onscreen(1110 + game.creditposition)) dwgfx.Print(-1, 1110 + game.creditposition,"Adam Wendt", tr, tg, tb, true);
if (dwgfx.onscreen(1110 + game.creditposition)) dwgfx.Print(-1, 1120 + game.creditposition,"Andreas J{rgensen", tr, tg, tb, true);
if (dwgfx.onscreen(1120 + game.creditposition)) dwgfx.Print(-1, 1130 + game.creditposition,"}ngel Louzao Penalva", tr, tg, tb, true);
if (dwgfx.onscreen(1130 + game.creditposition)) dwgfx.Print(-1, 1140 + game.creditposition,"Ashley Burton", tr, tg, tb, true);
if (dwgfx.onscreen(1140 + game.creditposition)) dwgfx.Print(-1, 1150 + game.creditposition,"Aubrey Hesselgren", tr, tg, tb, true);
if (dwgfx.onscreen(1150 + game.creditposition)) dwgfx.Print(-1, 1160 + game.creditposition,"Bradley Rose", tr, tg, tb, true);
if (dwgfx.onscreen(1160 + game.creditposition)) dwgfx.Print(-1, 1170 + game.creditposition,"Brendan Urquhart", tr, tg, tb, true);
if (dwgfx.onscreen(1170 + game.creditposition)) dwgfx.Print(-1, 1180 + game.creditposition,"Chris Ayotte", tr, tg, tb, true);
if (dwgfx.onscreen(1180 + game.creditposition)) dwgfx.Print(-1, 1190 + game.creditposition,"Christopher Zamanillo", tr, tg, tb, true);
if (dwgfx.onscreen(1190 + game.creditposition)) dwgfx.Print(-1, 1200 + game.creditposition,"Daniel Schuller", tr, tg, tb, true);
if (dwgfx.onscreen(1200 + game.creditposition)) dwgfx.Print(-1, 1210 + game.creditposition,"Hybrid Mind Studios", tr, tg, tb, true);
if (dwgfx.onscreen(1210 + game.creditposition)) dwgfx.Print(-1, 1220 + game.creditposition,"Emilie McGinley", tr, tg, tb, true);
if (dwgfx.onscreen(1220 + game.creditposition)) dwgfx.Print(-1, 1230 + game.creditposition,"Francisco Solares", tr, tg, tb, true);
if (dwgfx.onscreen(1230 + game.creditposition)) dwgfx.Print(-1, 1240 + game.creditposition,"Hal Helms", tr, tg, tb, true);
if (dwgfx.onscreen(1240 + game.creditposition)) dwgfx.Print(-1, 1250 + game.creditposition,"Hayden Scott-Baron", tr, tg, tb, true);
if (dwgfx.onscreen(1250 + game.creditposition)) dwgfx.Print(-1, 1260 + game.creditposition,"Hermit Games", tr, tg, tb, true);
if (dwgfx.onscreen(1260 + game.creditposition)) dwgfx.Print(-1, 1270 + game.creditposition,"Ido Yehieli", tr, tg, tb, true);
if (dwgfx.onscreen(1270 + game.creditposition)) dwgfx.Print(-1, 1280 + game.creditposition,"Jade Vault Games", tr, tg, tb, true);
if (dwgfx.onscreen(1280 + game.creditposition)) dwgfx.Print(-1, 1290 + game.creditposition,"James Andrews", tr, tg, tb, true);
if (dwgfx.onscreen(1290 + game.creditposition)) dwgfx.Print(-1, 1300 + game.creditposition,"James Riley", tr, tg, tb, true);
if (dwgfx.onscreen(1300 + game.creditposition)) dwgfx.Print(-1, 1310 + game.creditposition,"James Hsieh", tr, tg, tb, true);
if (dwgfx.onscreen(1310 + game.creditposition)) dwgfx.Print(-1, 1320 + game.creditposition,"Jasper Byrne", tr, tg, tb, true);
if (dwgfx.onscreen(1320 + game.creditposition)) dwgfx.Print(-1, 1330 + game.creditposition,"Jedediah Baker", tr, tg, tb, true);
if (dwgfx.onscreen(1330 + game.creditposition)) dwgfx.Print(-1, 1340 + game.creditposition,"Jens Bergensten", tr, tg, tb, true);
if (dwgfx.onscreen(1340 + game.creditposition)) dwgfx.Print(-1, 1350 + game.creditposition,"Jeremy J. Penner", tr, tg, tb, true);
if (dwgfx.onscreen(1350 + game.creditposition)) dwgfx.Print(-1, 1360 + game.creditposition,"Jeremy Peterson", tr, tg, tb, true);
if (dwgfx.onscreen(1360 + game.creditposition)) dwgfx.Print(-1, 1370 + game.creditposition,"Jim McGinley", tr, tg, tb, true);
if (dwgfx.onscreen(1370 + game.creditposition)) dwgfx.Print(-1, 1380 + game.creditposition,"Jonathan Cartwright", tr, tg, tb, true);
if (dwgfx.onscreen(1380 + game.creditposition)) dwgfx.Print(-1, 1390 + game.creditposition,"John Nesky", tr, tg, tb, true);
if (dwgfx.onscreen(1390 + game.creditposition)) dwgfx.Print(-1, 1400 + game.creditposition,"Jos Yule", tr, tg, tb, true);
if (dwgfx.onscreen(1400 + game.creditposition)) dwgfx.Print(-1, 1410 + game.creditposition,"Jose Flores", tr, tg, tb, true);
if (dwgfx.onscreen(1410 + game.creditposition)) dwgfx.Print(-1, 1420 + game.creditposition,"Josh Bizeau", tr, tg, tb, true);
if (dwgfx.onscreen(1420 + game.creditposition)) dwgfx.Print(-1, 1430 + game.creditposition,"Joshua Buergel", tr, tg, tb, true);
if (dwgfx.onscreen(1430 + game.creditposition)) dwgfx.Print(-1, 1440 + game.creditposition,"Joshua Hochner", tr, tg, tb, true);
if (dwgfx.onscreen(1440 + game.creditposition)) dwgfx.Print(-1, 1450 + game.creditposition,"Kurt Ostfeld", tr, tg, tb, true);
if (dwgfx.onscreen(1450 + game.creditposition)) dwgfx.Print(-1, 1460 + game.creditposition, "Magnus P~lsson", tr, tg, tb, true);
if (dwgfx.onscreen(1460 + game.creditposition)) dwgfx.Print(-1, 1470 + game.creditposition,"Mark Neschadimenko", tr, tg, tb, true);
if (dwgfx.onscreen(1470 + game.creditposition)) dwgfx.Print(-1, 1480 + game.creditposition,"Matt Antonellis", tr, tg, tb, true);
if (dwgfx.onscreen(1480 + game.creditposition)) dwgfx.Print(-1, 1490 + game.creditposition,"Matthew Reppert", tr, tg, tb, true);
if (dwgfx.onscreen(1490 + game.creditposition)) dwgfx.Print(-1, 1500 + game.creditposition,"Michael Falkensteiner", tr, tg, tb, true);
if (dwgfx.onscreen(1500 + game.creditposition)) dwgfx.Print(-1, 1510 + game.creditposition,"Michael Vendittelli", tr, tg, tb, true);
if (dwgfx.onscreen(1510 + game.creditposition)) dwgfx.Print(-1, 1520 + game.creditposition,"Mike Kasprzak", tr, tg, tb, true);
if (dwgfx.onscreen(1520 + game.creditposition)) dwgfx.Print(-1, 1530 + game.creditposition,"Mitchel Stein", tr, tg, tb, true);
if (dwgfx.onscreen(1530 + game.creditposition)) dwgfx.Print(-1, 1540 + game.creditposition,"Sean Murray", tr, tg, tb, true);
if (dwgfx.onscreen(1540 + game.creditposition)) dwgfx.Print(-1, 1550 + game.creditposition,"Simon Michael", tr, tg, tb, true);
if (dwgfx.onscreen(1550 + game.creditposition)) dwgfx.Print(-1, 1560 + game.creditposition,"Simon Schmid", tr, tg, tb, true);
if (dwgfx.onscreen(1560 + game.creditposition)) dwgfx.Print(-1, 1570 + game.creditposition,"Stephen Maxwell", tr, tg, tb, true);
if (dwgfx.onscreen(1570 + game.creditposition)) dwgfx.Print(-1, 1580 + game.creditposition,"Swing Swing Submarine", tr, tg, tb, true);
if (dwgfx.onscreen(1580 + game.creditposition)) dwgfx.Print(-1, 1590 + game.creditposition,"Tam Toucan", tr, tg, tb, true);
if (dwgfx.onscreen(1590 + game.creditposition)) dwgfx.Print(-1, 1600 + game.creditposition,"Terry Dooher", tr, tg, tb, true);
if (dwgfx.onscreen(1600 + game.creditposition)) dwgfx.Print(-1, 1610 + game.creditposition,"Tim W.", tr, tg, tb, true);
if (dwgfx.onscreen(1610 + game.creditposition)) dwgfx.Print( -1, 1620 + game.creditposition, "Timothy Bragan", tr, tg, tb, true);
creditOffset += 10;
if (dwgfx.onscreen(creditOffset + game.creditposition)) dwgfx.Print( -1, creditOffset + game.creditposition, "and", tr, tg, tb, true);
creditOffset += 20;
if (dwgfx.onscreen(1760 + game.creditposition)) dwgfx.bigprint( -1, 1760 + game.creditposition, "Thanks for playing!", tr, tg, tb, true, 2);
for (size_t i = 0; i < game.patrons.size(); i += 1)
{
if (dwgfx.onscreen(creditOffset + game.creditposition))
{
dwgfx.Print(-1, creditOffset + game.creditposition, game.patrons[i], tr, tg, tb, true);
}
creditOffset += 10;
}
creditOffset += 20;
if (dwgfx.onscreen(creditOffset + game.creditposition)) dwgfx.bigprint(40, creditOffset + game.creditposition, "GitHub Contributors", tr, tg, tb, true);
creditOffset += 30;
for (size_t i = 0; i < game.githubfriends.size(); i += 1)
{
if (dwgfx.onscreen(creditOffset + game.creditposition))
{
dwgfx.Print(-1, creditOffset + game.creditposition, game.githubfriends[i], tr, tg, tb, true);
}
creditOffset += 10;
}
creditOffset += 140;
if (dwgfx.onscreen(creditOffset + game.creditposition)) dwgfx.bigprint( -1, creditOffset + game.creditposition, "Thanks for playing!", tr, tg, tb, true, 2);
if (game.test)
{