3 #define CREDITS(TITLE, FUNCTION, PERSON, PERSON_, NL) \ 4 TITLE(_("Core Team")) \ 5 PERSON(Rudolf "divVerent" Polzer) \ 6 PERSON(Ant "Antibody" Zucaro) \ 7 PERSON(Marvin "Mirio" Beck) \ 8 PERSON(Merlijn Hofstra) \ 9 PERSON(Ruszkai "CuBe0wL" Ákos) \ 10 PERSON(Tyler "-z-" Mulligan) \ 11 PERSON(Zac "Mario" Jardine) \ 13 TITLE(_("Extended Team")) \ 14 PERSON(Antonio "terencehill" Piu) \ 15 PERSON(bones_was_here) \ 16 PERSON(David "Cloudwalk" Knapp) \ 19 PERSON(Jan "zykure" Behrens) \ 25 PERSON(Severin "sev" Meyer) \ 27 PERSON(Thomas "illwieckz" Debesse) \ 28 PERSON(Victor "LegendGuard" Jaume) \ 32 FUNCTION(_("Website")) \ 33 PERSON(Ant "Antibody" Zucaro (web)) \ 34 PERSON(Merlijn Hofstra) \ 35 PERSON(Tyler "-z-" Mulligan (web / game)) \ 37 FUNCTION(_("Stats")) \ 38 PERSON(Ant "Antibody" Zucaro) \ 39 PERSON(Jan "zykure" Behrens) \ 42 PERSON(Severin "sev" Meyer) \ 43 PERSON(Sahil "DiaboliK" Singhal) \ 44 PERSON(Peter "Morphed" Pielak) \ 45 PERSON(Sam "LJFHutch" Hutchinson) \ 46 PERSON(Pearce "theShadow" Michal) \ 47 PERSON(KingPimpCommander) \ 49 FUNCTION(_("Animation")) \ 50 PERSON(Sahil "DiaboliK" Singhal) \ 53 FUNCTION(_("Level Design")) \ 54 PERSON(Amadeusz "amade/proraide" Sławiński) \ 55 PERSON(Ben "MooKow" Banker) \ 57 PERSON(Cuinn "Cuinnton" Herrick) \ 59 PERSON(Hugo "Calinou" Locurcio) \ 60 PERSON(Jakob "tZork" Markström Gröhn) \ 61 PERSON(Konrad "Justin" Slawinski) \ 64 PERSON(Łukasz "kuniu the frogg" Polek) \ 65 PERSON(Maik "SavageX" Merten) \ 66 PERSON(Marvin "Mirio" Beck) \ 69 PERSON(Pearce "theShadow" Michal) \ 70 PERSON(Rasmus "FruitieX" Eskola) \ 71 PERSON(Ruszkai "CuBe0wL" Ákos) \ 72 PERSON(Severin "sev" Meyer) \ 76 FUNCTION(_("Music / Sound FX")) \ 77 PERSON(AquaNova (Archer)) \ 80 PERSON(Independent.nu) \ 81 PERSON(Lea "TheAudioMonkey" Edwards) \ 82 PERSON([master]mind) \ 83 PERSON(Merlijn Hofstra) \ 85 PERSON(Nick "bitbomb" Lucca) \ 87 PERSON(Saulo "mand1nga" Gil) \ 88 PERSON({SC0RP} - Ian "ID" Dorrell) \ 92 FUNCTION(_("Game Code")) \ 93 PERSON(Antonio "terencehill" Piu) \ 94 PERSON(Jakob "tZork" Markström Gröhn) \ 96 PERSON(Mattia "Melanosuchus" Basaglia) \ 97 PERSON(Matthias "matthiaskrgr" Krüger) \ 98 PERSON(Rasmus "FruitieX" Eskola) \ 99 PERSON(Rudolf "divVerent" Polzer) \ 100 PERSON(Samual "Ares" Lenks) \ 102 PERSON(Victor "LegendGuard" Jaume) \ 104 PERSON(Zac "Mario" Jardine) \ 106 FUNCTION(_("Marketing / PR")) \ 107 PERSON(Tyler "-z-" Mulligan) \ 108 PERSON(Ruszkai "CuBe0wL" Ákos) \ 109 PERSON(Samual "Ares" Lenks) \ 110 PERSON(Saulo "mand1nga" Gil) \ 112 FUNCTION(_("Legal")) \ 113 PERSON(Rudolf "divVerent" Polzer) \ 114 PERSON(Merlijn Hofstra) \ 117 TITLE(_("Game Engine")) \ 118 FUNCTION("DarkPlaces") \ 119 PERSON(Ashley Rose "LadyHavoc" Hale) \ 121 FUNCTION(_("Engine Additions")) \ 122 PERSON(David "Cloudwalk" Knapp) \ 123 PERSON(Rudolf "divVerent" Polzer) \ 124 PERSON(Samual "Ares" Lenks) \ 127 TITLE(_("Compiler")) \ 129 PERSON(Wolfgang "Blub\0" Bumiller) \ 130 PERSON(Dale "graphitemaster" Weiler) \ 133 TITLE(_("Other Active Contributors")) \ 135 PERSON(Mircea "Taoki" Kitsune) \ 138 PERSON(Victor "LegendGuard" Jaume) \ 141 TITLE(_("Translators")) \ 143 FUNCTION(_("Asturian")) \ 145 PERSON(Tornes "Tornes.Llume" Ḷḷume) \ 148 FUNCTION(_("Belarusian")) \ 149 PERSON(Mihail "meequz" Varantsou) \ 151 FUNCTION(_("Bulgarian")) \ 152 PERSON(Alexander "alex4o" Bonin) \ 153 PERSON(ifohancroft) \ 158 FUNCTION(_("Chinese (China)")) \ 162 PERSON(sapphireliu) \ 164 FUNCTION(_("Chinese (Taiwan)")) \ 167 PERSON(Jeff "s8321414" Huang) \ 169 FUNCTION(_("Cornish")) \ 170 PERSON(Nicky "nrowe" Rowe) \ 172 FUNCTION(_("Czech")) \ 173 PERSON(shogun assassin/woky) \ 175 PERSON(Tomáš "CZHeron" Volavka) \ 177 FUNCTION(_("Dutch")) \ 178 PERSON(Alexander "freefang" van Dam) \ 179 PERSON(Joeke "Mappack" de Graaf) \ 180 PERSON(Jonathan "Jonakeys" van der Steege) \ 184 FUNCTION(_("English (Australia)")) \ 185 PERSON(Laurene "sunflowers" Albrand) \ 186 PERSON(Stuart "Cefiar" Young) \ 187 PERSON(Zac "Mario" Jardine) \ 189 FUNCTION(_("Finnish")) \ 190 PERSON(Jonas "PowaTree" Sahlberg) \ 191 PERSON(Henry "Exitium" Sanmark) \ 192 PERSON(Rasmus "FruitieX" Eskola) \ 194 FUNCTION(_("French")) \ 195 PERSON(Hugo "Calinou" Locurcio) \ 196 PERSON(Kim "coughingmouse" Lee) \ 197 PERSON(Maxime "Taximus" Paradis) \ 199 PERSON(Thomas "illwieckz" Debesse) \ 200 PERSON(Yannick "SpiKe" Le Guen) \ 202 FUNCTION(_("German")) \ 205 PERSON(Erik "Ablu" Schilling) \ 206 PERSON(Jope "Sless" Withers) \ 207 PERSON(Marvin "Mirio" Beck) \ 208 PERSON(Paul "Snapper") \ 209 PERSON(Rudolf "divVerent" Polzer) \ 213 FUNCTION(_("Greek")) \ 214 PERSON_("Γιάννης \"Evropi\" Ανθυμίδης") \ 215 PERSON(Konstantinos "LDinos" Mihalenas) \ 219 FUNCTION(_("Hungarian")) \ 220 PERSON(Ruszkai "CuBe0wL" Ákos) \ 223 FUNCTION(_("Irish")) \ 224 PERSON(Kevin "kscanne" Scannell) \ 226 FUNCTION(_("Italian")) \ 227 PERSON(Antonio "terencehill" Piu) \ 228 PERSON(Felice "MaidenBeast" Sallustio) \ 232 FUNCTION(_("Japanese")) \ 233 PERSON(Victor "LegendGuard" Jaume) \ 235 FUNCTION(_("Kazakh")) \ 236 PERSON(Артем "bystrov.arterm" Быстров) \ 238 FUNCTION(_("Korean")) \ 239 PERSON(Jisoo "s6e9x" Lim) \ 240 PERSON(Kim "coughingmouse" Lee) \ 242 FUNCTION(_("Polish")) \ 244 PERSON(Alex "tiprogrammierer.alex" Progger) \ 245 PERSON(Amadeusz "amade/proraide" Sławiński) \ 246 PERSON(Artur "artur9010" Motyka) \ 247 PERSON(Jakub "KubeQ11" Pędziszewski) \ 250 FUNCTION(_("Portuguese")) \ 251 PERSON(Ivan Paulos "greylica" Tomé) \ 252 PERSON(Jean Trindade "Muleke_Trairao" Pereira) \ 253 PERSON(Ricardo Manuel "Hellgardia" da Cruz Coelho da Silva) \ 254 PERSON(xXxCHAOTICxXx) \ 256 FUNCTION(_("Romanian")) \ 257 PERSON(Adrian-Ciprian "adrian.tinjala" Tînjală) \ 259 PERSON(Mircea "Taoki" Kitsune) \ 260 PERSON(Sorin "unic_sorin" Botirla) \ 261 PERSON(Tudor "TropiKo" Ionel) \ 263 FUNCTION(_("Russian")) \ 264 PERSON(Alex "alextalker7" Talker) \ 265 PERSON(Alexandr "zrg") \ 266 PERSON(Andrei "adem4ik" Stepanov) \ 267 PERSON(Andrey "dekrY" P.) \ 270 PERSON(Lord Canistra) \ 272 PERSON(Sergej "Clearness High" Lutsyk) \ 274 FUNCTION(_("Scottish Gaelic")) \ 275 PERSON_("GunChleoc") \ 277 FUNCTION(_("Serbian")) \ 278 PERSON_("Саша \"salepetronije\" Петровић") \ 279 PERSON(Marko M. Kostić) \ 281 PERSON(Rafael "Ristovski") \ 283 FUNCTION(_("Spanish")) \ 284 PERSON_("0000simon") \ 285 PERSON(Alan "aagp" Garcia) \ 289 PERSON(roader_gentoo) \ 290 PERSON(Rodrigo Mouton Laudin) \ 292 PERSON(Starfire24680) \ 293 PERSON(Victor "LegendGuard" Jaume) \ 295 FUNCTION(_("Swedish")) \ 296 PERSON(Karl-Oskar "machine" Rikås) \ 299 FUNCTION(_("Ukrainian")) \ 300 PERSON(Dmitro "Gamebot" Sokhin) \ 301 PERSON(Oleh "BlaXpirit" Prypin) \ 302 PERSON(Vasyl "Harmata" Melnyk) \ 303 PERSON(Yuriy "herrniemand" Ackermann) \ 306 TITLE(_("Past Contributors")) \ 308 PERSON(Alexander "naryl" Suhoverhov) \ 309 PERSON(Alexander "motorsep" Zubov) \ 310 PERSON(Amos "torus" Dudley) \ 311 PERSON(Andreas "Black" Kirsch) \ 312 PERSON(Attila "WW3" Houtkooper) \ 314 PERSON(Braden "meoblast001" Walters) \ 315 PERSON(Brain Younds) \ 316 PERSON(BuddyFriendGuy) \ 317 PERSON(Chris "amethyst7" Matz) \ 318 PERSON(Christian Ice) \ 319 PERSON(Clinton "Kaziganthe" Freeman) \ 320 PERSON(Dan "Digger" Korostelev) \ 321 PERSON(Dan "Wazat" Hale) \ 326 PERSON(Dustin Geeraert) \ 327 PERSON(Edgenetwork) \ 328 PERSON(Edward "Ed" Holness) \ 329 PERSON(Eric "Munyul Verminard" Sambach) \ 330 PERSON(Erik "Ablu" Schilling) \ 331 PERSON(Fabien "H. Reaper" Tschirhart) \ 332 PERSON(Florian Paul "lda17h" Schmidt) \ 334 PERSON(Garth "Zombie" Hendy) \ 336 PERSON(Gerd "Elysis" Raudenbusch) \ 337 PERSON(Gottfried "Toddd" Hofmann) \ 338 PERSON(Henning "Tymo" Janssen) \ 342 PERSON(Jody Gallagher) \ 343 PERSON(Jope "Sless" Withers) \ 345 PERSON(Juergen "LowDragon" Timm) \ 346 PERSON(KadaverJack) \ 347 PERSON(Kevin "Tyrann" Shanahan) \ 348 PERSON(Kristian "morfar" Johansson) \ 349 PERSON(Kurt Dereli) \ 351 PERSON(Lee David Ash) \ 352 PERSON(Lee Vermeulen) \ 356 PERSON(Marius "GreEn`mArine" Shekow) \ 357 PERSON(Marko "Urre" Permanto) \ 358 PERSON(Mathieu "Elric" Olivier) \ 359 PERSON(Mattrew "Tronyn" Rye) \ 363 PERSON(Michael "Tenshihan" Quinn) \ 370 PERSON(Paul "Strahlemann" Evers) \ 373 PERSON(PlasmaSheep) \ 374 PERSON(Przemysław "atheros" Grzywacz) \ 375 PERSON(Q1 Retexturing Project) \ 377 PERSON(Oleh "BlaXpirit" Prypin) \ 378 PERSON(Rick "Rat" Kelley) \ 379 PERSON(Robert "ai" Kuroto) \ 382 PERSON(Samual "Ares" Lenks) \ 383 PERSON(Saulo "mand1nga" Gil) \ 387 PERSON(Simon O’Callaghan) \ 390 PERSON(SoulKeeper_p) \ 393 PERSON(Stephan "esteel" Stahl) \ 394 PERSON(Steve Vermeulen) \ 398 PERSON(The player with the unnecessarily long name) \ 400 PERSON(Ulrich Galbraith) \ 402 PERSON(William Libert) \ 403 PERSON(William "Willis" Weilep) \ 404 PERSON(Yves "EviLair" Allaire) \ 406 PERSON(... and a goat) \ 417 line =
strcat(
"**", line);
424 bufstr_add(n, line, 0);
429 #define CREDITS_TITLE(t) credits_add_line(fh, n, CREDITS_TYPE_TITLE, t); 430 #define CREDITS_FUNCTION(f) credits_add_line(fh, n, CREDITS_TYPE_FUNCTION, f); 431 #define CREDITS_PERSON(p) credits_add_line(fh, n, CREDITS_TYPE_PERSON, p); 432 #define _CREDITS_PERSON(p) CREDITS_PERSON(#p) 433 #define CREDITS_NL() credits_add_line(fh, n, CREDITS_TYPE_NL, ""); 436 #undef CREDITS_FUNCTION 437 #undef CREDITS_PERSON 438 #undef _CREDITS_PERSON 463 me.configureXonoticCreditsList(me);
468 me.configureXonoticListBox(me);
470 me.nItems = buf_getsize(me.bufferIndex);
471 if (
cvar(
"_menu_credits_export"))
474 cvar_set(
"_menu_credits_export",
"0");
479 buf_del(me.bufferIndex);
485 me.scrollPos =
bound(0, (
time - me.scrolling) * me.itemHeight, me.nItems * me.itemHeight - 1);
486 me.scrollPosTarget = me.scrollPos;
494 me.realFontSize_y = me.fontSize / (absSize.y * me.itemHeight);
495 me.realFontSize_x = me.fontSize / (absSize.x * (1 - me.controlWidth));
496 me.realUpperMargin = 0.5 * (1 - me.realFontSize.y);
504 s = bufstr_get(me.bufferIndex, i);
509 theColor = SKINCOLOR_CREDITS_TITLE;
510 theAlpha = SKINALPHA_CREDITS_TITLE;
515 theColor = SKINCOLOR_CREDITS_FUNCTION;
516 theAlpha = SKINALPHA_CREDITS_FUNCTION;
520 theColor = SKINCOLOR_CREDITS_PERSON;
521 theAlpha = SKINALPHA_CREDITS_PERSON;
524 draw_CenterText(me.realUpperMargin *
eY + 0.5 *
eX, s, me.realFontSize, theColor, theAlpha, 0);
void XonoticCreditsList_draw(entity me)
#define CREDITS(TITLE, FUNCTION, PERSON, PERSON_, NL)
void XonoticCreditsList_drawListBoxItem(entity me, int i, vector absSize, bool isSelected, bool isFocused)
void XonoticCreditsList_configureXonoticCreditsList(entity me)
void credits_build(int fh, int n)
#define _CREDITS_PERSON(p)
float XonoticCreditsList_keyDown(entity me, float key, float ascii, float shift)
spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 spree_cen s1 f1 s1 strcat(_("Level %s: "), "^BG%s\3\, _("^BGPress ^F2%s^BG to enter the game"))
#define CREDITS_PERSON(p)
entity makeXonoticCreditsList()
void XonoticCreditsList_destroy(entity me)
vector(float skel, float bonenum) _skel_get_boneabs_hidden
#define CREDITS_FUNCTION(f)
void credits_add_line(int fh, int n, int type, string line)
int CREDITS_TYPE_FUNCTION
void XonoticCreditsList_resizeNotify(entity me, vector relOrigin, vector relSize, vector absOrigin, vector absSize)