00001 class RuneCreditsWindow extends RuneMenuPageWindow;
00002
00003 // Import fonts
00004
00005
00006 var RuneMenuLabelControl ProgrammersHeader;
00007 var localized string ProgrammersText;
00008 var RuneMenuLabelControl ProgrammerLabels[10];
00009 var string ProgrammerNames[10];
00010 var int MaxProgs;
00011
00012 var RuneMenuLabelControl AddProgrammersHeader;
00013 var localized string AddProgrammersText;
00014 var RuneMenuLabelControl AddProgrammerLabels[10];
00015 var string AddProgrammerNames[10];
00016 var int MaxAddProgs;
00017
00018 var RuneMenuLabelControl LevelDesignHeader;
00019 var localized string LevelDesignText;
00020 var RuneMenuLabelControl DesignerLabels[10];
00021 var string DesignerNames[10];
00022 var int MaxDesigners;
00023
00024 var RuneMenuLabelControl ArtHeader;
00025 var localized string ArtText;
00026 var RuneMenuLabelControl ArtLabels[10];
00027 var string ArtNames[10];
00028 var int MaxArts;
00029
00030 var RuneMenuLabelControl AnimationHeader;
00031 var localized string AnimationText;
00032 var RuneMenuLabelControl AnimationLabels[10];
00033 var string AnimationNames[10];
00034 var int MaxAnimations;
00035
00036 var RuneMenuLabelControl AddAnimationHeader;
00037 var localized string AddAnimationText;
00038 var RuneMenuLabelControl AddAnimationLabels[10];
00039 var string AddAnimationNames[10];
00040 var int MaxAddAnimations;
00041
00042 var RuneMenuLabelControl SoundHeader;
00043 var localized string SoundText;
00044 var RuneMenuLabelControl SoundLabels[10];
00045 var string SoundNames[10];
00046 var int MaxSounds;
00047
00048 var RuneMenuLabelControl MusicHeader;
00049 var localized string MusicText;
00050 var RuneMenuLabelControl MusicLabels[10];
00051 var string MusicNames[10];
00052 var int MaxMusics;
00053
00054 var RuneMenuLabelControl BizHeader;
00055 var localized string BizText;
00056 var RuneMenuLabelControl BizLabels[10];
00057 var string BizNames[10];
00058 var int MaxBiz;
00059
00060 var RuneMenuLabelControl ThanksHeader;
00061 var localized string ThanksText;
00062 var RuneMenuLabelControl ThanksLabels[10];
00063 var string ThanksNames[10];
00064 var int MaxThanks;
00065
00066 var RuneMenuLabelControl VoiceHeader;
00067 var localized string VoiceText;
00068 var RuneMenuLabelControl VoiceLabels[10];
00069 var string VoiceNames[10];
00070 var int MaxVoice;
00071
00072 var RuneMenuLabelControl DedicationHeader;
00073 var localized string DedicationText;
00074 var RuneMenuLabelControl DedicationLabels[10];
00075 var string DedicationNames[10];
00076 var int MaxDedication;
00077
00078 var RuneMenuLabelControl LinksLabel;
00079 var localized string LinksText;
00080
00081 var RuneMenuHotlinkControl HHHotlink;
00082 var localized string HHHotlinkText;
00083
00084 var RuneMenuHotlinkControl TSHotlink;
00085 var localized string TSHotlinkText;
00086
00087 var RuneMenuHotlinkControl RGHotlink;
00088 var localized string RGHotlinkText;
00089
00090 // ===== Halls of Valhalla Credits =====
00091 var RuneMenuLabelControl HOVLeadHeader;
00092 var string HOVLeadText;
00093 var RuneMenuLabelControl HOVLeadHeader2;
00094 var string HOVLeadText2;
00095 var RuneMenuLabelControl HOVLeadLabel;
00096 var string HOVLeadName;
00097
00098 var RuneMenuLabelControl HOVArtLeadHeader;
00099 var string HOVArtLeadText;
00100 var RuneMenuLabelControl HOVArtLeadLabel;
00101 var string HOVArtLeadName;
00102
00103 var RuneMenuLabelControl HOVProjectManagerHeader;
00104 var string HOVProjectManagerText;
00105 var RuneMenuLabelControl HOVProjectManagerLabel;
00106 var string HOVProjectManagerName;
00107
00108 var RuneMenuLabelControl HOVDesignAssistantHeader;
00109 var string HOVDesignAssistantText;
00110 var RuneMenuLabelControl HOVDesignAssistantLabel;
00111 var string HOVDesignAssistantName;
00112
00113 var RuneMenuLabelControl HOVProgrammersHeader;
00114 var string HOVProgrammersText;
00115 var RuneMenuLabelControl HOVProgrammersLabels[10];
00116 var string HOVProgrammersNames[10];
00117 var int HOVMaxProgrammers;
00118
00119 var RuneMenuLabelControl HOVLevelDesignersHeader;
00120 var string HOVLevelDesignersText;
00121 var RuneMenuLabelControl HOVLevelDesignersLabels[10];
00122 var string HOVLevelDesignersNames[10];
00123 var int HOVMaxLevelDesigners;
00124
00125 var RuneMenuLabelControl HOVModelersSkinnersHeader;
00126 var string HOVModelersSkinnersText;
00127 var RuneMenuLabelControl HOVModelersSkinnersLabels[10];
00128 var string HOVModelersSkinnersNames[10];
00129 var int HOVMaxModelersSkinners;
00130
00131 var RuneMenuLabelControl HOVAnimatorsHeader;
00132 var string HOVAnimatorsText;
00133 var RuneMenuLabelControl HOVAnimatorsLabels[10];
00134 var string HOVAnimatorsNames[10];
00135 var int HOVMaxAnimators;
00136
00137 var RuneMenuLabelControl HOVTexturesHeader;
00138 var string HOVTexturesText;
00139 var RuneMenuLabelControl HOVTexturesLabels[10];
00140 var string HOVTexturesNames[10];
00141 var int HOVMaxTextures;
00142
00143 var RuneMenuLabelControl HOVSoundEffectsHeader;
00144 var string HOVSoundEffectsText;
00145 var RuneMenuLabelControl HOVSoundEffectsLabel;
00146 var string HOVSoundEffectsName;
00147
00148 var RuneMenuLabelControl HOVMusicHeader;
00149 var string HOVMusicText;
00150 var RuneMenuLabelControl HOVMusicLabels[10];
00151 var string HOVMusicNames[10];
00152 var int HOVMaxMusic;
00153
00154 var RuneMenuLabelControl HOVThanksHeader;
00155 var string HOVThanksText;
00156
00157 var bool bHallsOfValhalla;
00158
00159
00160 function Created()
00161 {
00162 local int i;
00163 local int ControlWidth, ControlLeft, ControlRight;
00164 local int CenterWidth, CenterPos;
00165 local int ButtonWidth;
00166 local float ControlOffset, BaseOffset;
00167 local string AddonStr;
00168
00169 Super.Created();
00170
00171 // Check if this machine has HOV installed
00172 // ISADDON returns:
00173 // STANDALONE if HOV is installed seperately
00174 // ADDON if HOV is installed on top of Rune
00175 // NONE if HOV isn't installed
00176 AddonStr = GetPlayerOwner().ConsoleCommand("ISADDON");
00177 if(AddonStr == "STANDALONE" || AddonStr == "ADDON")
00178 {
00179 bHallsOfValhalla = true;
00180 HOVCreated();
00181 return;
00182 }
00183
00184 ControlWidth = WinWidth/2.5;
00185 ControlLeft = (WinWidth/2 - ControlWidth)/2;
00186 ControlRight = WinWidth/2 + ControlLeft;
00187
00188 CenterWidth = (WinWidth/4)*3;
00189 CenterPos = (WinWidth - CenterWidth)/2;
00190
00191 BaseOffset = 25;
00192
00193 // Programming
00194 ControlOffset = BaseOffset;
00195 ProgrammersHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00196 ProgrammersHeader.SetText(ProgrammersText);
00197 ProgrammersHeader.SetFont(F_Bold);
00198 ProgrammersHeader.Align = TA_Left;
00199 for (i=0; i<MaxProgs; i++)
00200 {
00201 ControlOffset += 10;
00202 ProgrammerLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00203 ProgrammerLabels[i].SetText(ProgrammerNames[i]);
00204 ProgrammerLabels[i].SetFont(F_Normal);
00205 ProgrammerLabels[i].Align = TA_Left;
00206 }
00207 Controloffset += 25;
00208
00209 // AdditionalProgramming
00210 AddProgrammersHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00211 AddProgrammersHeader.SetText(AddProgrammersText);
00212 AddProgrammersHeader.SetFont(F_Bold);
00213 AddProgrammersHeader.Align = TA_Left;
00214 for (i=0; i<MaxAddProgs; i++)
00215 {
00216 ControlOffset += 10;
00217 AddProgrammerLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00218 AddProgrammerLabels[i].SetText(AddProgrammerNames[i]);
00219 AddProgrammerLabels[i].SetFont(F_Normal);
00220 AddProgrammerLabels[i].Align = TA_Left;
00221 }
00222 Controloffset += 25;
00223
00224 // Art
00225 ArtHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00226 ArtHeader.SetText(ArtText);
00227 ArtHeader.SetFont(F_Bold);
00228 ArtHeader.Align = TA_Left;
00229 for (i=0; i<MaxArts; i++)
00230 {
00231 ControlOffset += 10;
00232 ArtLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00233 ArtLabels[i].SetText(ArtNames[i]);
00234 ArtLabels[i].SetFont(F_Normal);
00235 ArtLabels[i].Align = TA_Left;
00236 }
00237 Controloffset += 25;
00238
00239 // Sound Effects
00240 SoundHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00241 SoundHeader.SetText(SoundText);
00242 SoundHeader.SetFont(F_Bold);
00243 SoundHeader.Align = TA_Left;
00244 for (i=0; i<MaxSounds; i++)
00245 {
00246 ControlOffset += 10;
00247 SoundLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00248 SoundLabels[i].SetText(SoundNames[i]);
00249 SoundLabels[i].SetFont(F_Normal);
00250 SoundLabels[i].Align = TA_Left;
00251 }
00252 Controloffset += 25;
00253
00254 // Music
00255 MusicHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00256 MusicHeader.SetText(MusicText);
00257 MusicHeader.SetFont(F_Bold);
00258 MusicHeader.Align = TA_Left;
00259 for (i=0; i<MaxMusics; i++)
00260 {
00261 ControlOffset += 10;
00262 MusicLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00263 MusicLabels[i].SetText(MusicNames[i]);
00264 MusicLabels[i].SetFont(F_Normal);
00265 MusicLabels[i].Align = TA_Left;
00266 }
00267 Controloffset += 25;
00268
00269 // Level Design
00270 ControlOffset = BaseOffset;
00271 LevelDesignHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00272 LevelDesignHeader.SetText(LevelDesignText);
00273 LevelDesignHeader.SetFont(F_Bold);
00274 LevelDesignHeader.Align = TA_Right;
00275 for (i=0; i<MaxDesigners; i++)
00276 {
00277 ControlOffset += 10;
00278 DesignerLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00279 DesignerLabels[i].SetText(DesignerNames[i]);
00280 DesignerLabels[i].SetFont(F_Normal);
00281 DesignerLabels[i].Align = TA_Right;
00282 }
00283 Controloffset += 25;
00284
00285 // Animation
00286 AnimationHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00287 AnimationHeader.SetText(AnimationText);
00288 AnimationHeader.SetFont(F_Bold);
00289 AnimationHeader.Align = TA_Right;
00290 for (i=0; i<MaxAnimations; i++)
00291 {
00292 ControlOffset += 10;
00293 AnimationLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00294 AnimationLabels[i].SetText(AnimationNames[i]);
00295 AnimationLabels[i].SetFont(F_Normal);
00296 AnimationLabels[i].Align = TA_Right;
00297 }
00298 Controloffset += 25;
00299
00300 // Additional Animation
00301 AddAnimationHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00302 AddAnimationHeader.SetText(AddAnimationText);
00303 AddAnimationHeader.SetFont(F_Bold);
00304 AddAnimationHeader.Align = TA_Right;
00305 for (i=0; i<MaxAddAnimations; i++)
00306 {
00307 ControlOffset += 10;
00308 AddAnimationLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00309 AddAnimationLabels[i].SetText(AddAnimationNames[i]);
00310 AddAnimationLabels[i].SetFont(F_Normal);
00311 AddAnimationLabels[i].Align = TA_Right;
00312 }
00313 Controloffset += 25;
00314
00315 // Voice actors
00316 VoiceHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00317 VoiceHeader.SetText(VoiceText);
00318 VoiceHeader.SetFont(F_Bold);
00319 VoiceHeader.Align = TA_Right;
00320 for (i=0; i<MaxVoice; i++)
00321 {
00322 ControlOffset += 10;
00323 VoiceLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00324 VoiceLabels[i].SetText(VoiceNames[i]);
00325 VoiceLabels[i].SetFont(F_Normal);
00326 VoiceLabels[i].Align = TA_Right;
00327 }
00328 ControlOffset += 25;
00329
00330 // Biz
00331 ControlOffset = BaseOffset+70;
00332 BizHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00333 BizHeader.SetText(BizText);
00334 BizHeader.SetFont(F_Bold);
00335 BizHeader.Align = TA_Center;
00336 for (i=0; i<MaxBiz; i++)
00337 {
00338 ControlOffset += 10;
00339 BizLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00340 BizLabels[i].SetText(BizNames[i]);
00341 BizLabels[i].SetFont(F_Normal);
00342 BizLabels[i].Align = TA_Center;
00343 }
00344 ControlOffset += 25;
00345 ControlOffset += 35;
00346
00347 // Special Thanks
00348 ThanksHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00349 ThanksHeader.SetText(ThanksText);
00350 ThanksHeader.SetFont(F_Bold);
00351 ThanksHeader.Align = TA_Center;
00352 for (i=0; i<MaxThanks; i++)
00353 {
00354 ControlOffset += 10;
00355 ThanksLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00356 ThanksLabels[i].SetText(ThanksNames[i]);
00357 ThanksLabels[i].SetFont(F_Normal);
00358 ThanksLabels[i].Align = TA_Center;
00359 }
00360 ControlOffset += 45;
00361
00362 // Dedication
00363 DedicationHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00364 DedicationHeader.SetText(DedicationText);
00365 DedicationHeader.SetFont(F_Bold);
00366 DedicationHeader.Align = TA_Center;
00367 for (i=0; i<MaxDedication; i++)
00368 {
00369 ControlOffset += 10;
00370 DedicationLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00371 DedicationLabels[i].SetText(DedicationNames[i]);
00372 DedicationLabels[i].SetFont(F_Normal);
00373 DedicationLabels[i].Align = TA_Center;
00374 }
00375 ControlOffset += 17;
00376
00377 LinksLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00378 LinksLabel.SetFont(F_Bold);
00379 LinksLabel.SetText(LinksText);
00380 LinksLabel.Align = TA_Left;
00381 ControlOffset += 17;
00382
00383 // HH link
00384 ButtonWidth = 110;
00385 HHHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00386 HHHotlink.SetText(HHHotlinkText);
00387 HHHotlink.SetFont(F_Bold);
00388 HHHotlink.Align = TA_Left;
00389 ControlOffset += 15;
00390
00391 // Rune link
00392 ButtonWidth = 110;
00393 RGHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00394 RGHotlink.SetText(RGHotlinkText);
00395 RGHotlink.SetFont(F_Bold);
00396 RGHotlink.Align = TA_Left;
00397 ControlOffset += 15;
00398
00399 // Troubleshoot link
00400 ButtonWidth = 200;
00401 TSHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00402 TSHotlink.SetText(TSHotlinkText);
00403 TSHotlink.SetFont(F_Bold);
00404 TSHotlink.Align = TA_Left;
00405 ControlOffset += 15;
00406 }
00407
00408 function BeforePaint(Canvas C, float X, float Y)
00409 {
00410 local int i;
00411 local int ControlWidth, ControlLeft, ControlRight;
00412 local int CenterWidth, CenterPos;
00413
00414 Super.BeforePaint(C, X, Y);
00415
00416 if(bHallsOfValhalla)
00417 {
00418 HOVBeforePaint(C, X, Y);
00419 return;
00420 }
00421
00422 ControlWidth = WinWidth/2.5;
00423 ControlLeft = (WinWidth/2 - ControlWidth)/2;
00424 ControlRight = WinWidth/2 + ControlLeft;
00425
00426 CenterWidth = (WinWidth/4)*3;
00427 CenterPos = (WinWidth - CenterWidth)/2;
00428
00429 ProgrammersHeader.SetSize(CenterWidth, 1);
00430 ProgrammersHeader.WinLeft = CenterPos;
00431 for (i=0; i<MaxProgs; i++)
00432 {
00433 ProgrammerLabels[i].SetSize(CenterWidth, 1);
00434 ProgrammerLabels[i].WinLeft = CenterPos;
00435 }
00436
00437 AddProgrammersHeader.SetSize(CenterWidth, 1);
00438 AddProgrammersHeader.WinLeft = CenterPos;
00439 for (i=0; i<MaxAddProgs; i++)
00440 {
00441 AddProgrammerLabels[i].SetSize(CenterWidth, 1);
00442 AddProgrammerLabels[i].WinLeft = CenterPos;
00443 }
00444
00445 LevelDesignHeader.SetSize(CenterWidth, 1);
00446 LevelDesignHeader.WinLeft = CenterPos;
00447 for (i=0; i<MaxDesigners; i++)
00448 {
00449 DesignerLabels[i].SetSize(CenterWidth, 1);
00450 DesignerLabels[i].WinLeft = CenterPos;
00451 }
00452
00453 ArtHeader.SetSize(CenterWidth, 1);
00454 ArtHeader.WinLeft = CenterPos;
00455 for (i=0; i<MaxArts; i++)
00456 {
00457 ArtLabels[i].SetSize(CenterWidth, 1);
00458 ArtLabels[i].WinLeft = CenterPos;
00459 }
00460
00461 AnimationHeader.SetSize(CenterWidth, 1);
00462 AnimationHeader.WinLeft = CenterPos;
00463 for (i=0; i<MaxAnimations; i++)
00464 {
00465 AnimationLabels[i].SetSize(CenterWidth, 1);
00466 AnimationLabels[i].WinLeft = CenterPos;
00467 }
00468
00469 AddAnimationHeader.SetSize(CenterWidth, 1);
00470 AddAnimationHeader.WinLeft = CenterPos;
00471 for (i=0; i<MaxAddAnimations; i++)
00472 {
00473 AddAnimationLabels[i].SetSize(CenterWidth, 1);
00474 AddAnimationLabels[i].WinLeft = CenterPos;
00475 }
00476
00477 SoundHeader.SetSize(CenterWidth, 1);
00478 SoundHeader.WinLeft = CenterPos;
00479 for (i=0; i<MaxSounds; i++)
00480 {
00481 SoundLabels[i].SetSize(CenterWidth, 1);
00482 SoundLabels[i].WinLeft = CenterPos;
00483 }
00484
00485 MusicHeader.SetSize(CenterWidth, 1);
00486 MusicHeader.WinLeft = CenterPos;
00487 for (i=0; i<MaxMusics; i++)
00488 {
00489 MusicLabels[i].SetSize(CenterWidth, 1);
00490 MusicLabels[i].WinLeft = CenterPos;
00491 }
00492
00493 BizHeader.SetSize(CenterWidth, 1);
00494 BizHeader.WinLeft = CenterPos;
00495 for (i=0; i<MaxBiz; i++)
00496 {
00497 BizLabels[i].SetSize(CenterWidth, 1);
00498 BizLabels[i].WinLeft = CenterPos;
00499 }
00500
00501 LinksLabel.SetSize(CenterWidth, 1);
00502 LinksLabel.WinLeft = CenterPos;
00503 }
00504
00505 // HOV-Specific Create/BeforePaint functions
00506
00507 function HOVCreated()
00508 {
00509 local int i;
00510 local int ControlWidth, ControlLeft, ControlRight;
00511 local int CenterWidth, CenterPos;
00512 local int ButtonWidth;
00513 local float ControlOffset, BaseOffset;
00514
00515 ControlWidth = WinWidth/2.5;
00516 ControlLeft = (WinWidth/2 - ControlWidth)/2;
00517 ControlRight = WinWidth/2 + ControlLeft;
00518
00519 CenterWidth = (WinWidth/4)*3;
00520 CenterPos = (WinWidth - CenterWidth)/2;
00521
00522 BaseOffset = 40;
00523
00524 // Leads
00525 ControlOffset = BaseOffset + 20;
00526
00527 HOVLeadHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00528 HOVLeadHeader.SetText(HOVLeadText);
00529 HOVLeadHeader.SetFont(F_Bold);
00530 HOVLeadHeader.Align = TA_Center;
00531 ControlOffset += 12;
00532 HOVLeadHeader2 = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00533 HOVLeadHeader2.SetText(HOVLeadText2);
00534 HOVLeadHeader2.SetFont(F_Bold);
00535 HOVLeadHeader2.Align = TA_Center;
00536 ControlOffset += 12;
00537 HOVLeadLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00538 HOVLeadLabel.SetText(HOVLeadName);
00539 HOVLeadLabel.SetFont(F_Normal);
00540 HOVLeadLabel.Align = TA_Center;
00541 ControlOffset += 35;
00542
00543 HOVArtLeadHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00544 HOVArtLeadHeader.SetText(HOVArtLeadText);
00545 HOVArtLeadHeader.SetFont(F_Bold);
00546 HOVArtLeadHeader.Align = TA_Center;
00547 ControlOffset += 12;
00548 HOVArtLeadLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00549 HOVArtLeadLabel.SetText(HOVArtLeadName);
00550 HOVArtLeadLabel.SetFont(F_Normal);
00551 HOVArtLeadLabel.Align = TA_Center;
00552 ControlOffset += 35;
00553
00554 HOVProjectManagerHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00555 HOVProjectManagerHeader.SetText(HOVProjectManagerText);
00556 HOVProjectManagerHeader.SetFont(F_Bold);
00557 HOVProjectManagerHeader.Align = TA_Center;
00558 ControlOffset += 12;
00559 HOVProjectManagerLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00560 HOVProjectManagerLabel.SetText(HOVProjectManagerName);
00561 HOVProjectManagerLabel.SetFont(F_Normal);
00562 HOVProjectManagerLabel.Align = TA_Center;
00563 ControlOffset += 35;
00564
00565 HOVDesignAssistantHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00566 HOVDesignAssistantHeader.SetText(HOVDesignAssistantText);
00567 HOVDesignAssistantHeader.SetFont(F_Bold);
00568 HOVDesignAssistantHeader.Align = TA_Center;
00569 ControlOffset += 12;
00570 HOVDesignAssistantLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00571 HOVDesignAssistantLabel.SetText(HOVDesignAssistantName);
00572 HOVDesignAssistantLabel.SetFont(F_Normal);
00573 HOVDesignAssistantLabel.Align = TA_Center;
00574
00575 // Programming
00576 ControlOffset = BaseOffset;
00577
00578 HOVProgrammersHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00579 HOVProgrammersHeader.SetText(HOVProgrammersText);
00580 HOVProgrammersHeader.SetFont(F_Bold);
00581 HOVProgrammersHeader.Align = TA_Left;
00582 for(i = 0; i < HOVMaxProgrammers; i++)
00583 {
00584 ControlOffset += 12;
00585 HOVProgrammersLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00586 HOVProgrammersLabels[i].SetText(HOVProgrammersNames[i]);
00587 HOVProgrammersLabels[i].SetFont(F_Normal);
00588 HOVProgrammersLabels[i].Align = TA_Left;
00589 }
00590 Controloffset += 35;
00591
00592 // Level Design
00593 HOVLevelDesignersHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00594 HOVLevelDesignersHeader.SetText(HOVLevelDesignersText);
00595 HOVLevelDesignersHeader.SetFont(F_Bold);
00596 HOVLevelDesignersHeader.Align = TA_Left;
00597 for(i = 0; i < HOVMaxLevelDesigners; i++)
00598 {
00599 ControlOffset += 12;
00600 HOVLevelDesignersLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00601 HOVLevelDesignersLabels[i].SetText(HOVLevelDesignersNames[i]);
00602 HOVLevelDesignersLabels[i].SetFont(F_Normal);
00603 HOVLevelDesignersLabels[i].Align = TA_Left;
00604 }
00605 Controloffset += 35;
00606
00607 // Sound
00608 HOVSoundEffectsHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00609 HOVSoundEffectsHeader.SetText(HOVSoundEffectsText);
00610 HOVSoundEffectsHeader.SetFont(F_Bold);
00611 HOVSoundEffectsHeader.Align = TA_Left;
00612 ControlOffset += 12;
00613 HOVSoundEffectsLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00614 HOVSoundEffectsLabel.SetText(HOVSoundEffectsName);
00615 HOVSoundEffectsLabel.SetFont(F_Normal);
00616 HOVSoundEffectsLabel.Align = TA_Left;
00617 ControlOffset += 35;
00618
00619 // Modeling
00620 ControlOffset = BaseOffset;
00621
00622 HOVModelersSkinnersHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00623 HOVModelersSkinnersHeader.SetText(HOVModelersSkinnersText);
00624 HOVModelersSkinnersHeader.SetFont(F_Bold);
00625 HOVModelersSkinnersHeader.Align = TA_Right;
00626 for(i = 0; i < HOVMaxModelersSkinners; i++)
00627 {
00628 ControlOffset += 12;
00629 HOVModelersSkinnersLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00630 HOVModelersSkinnersLabels[i].SetText(HOVModelersSkinnersNames[i]);
00631 HOVModelersSkinnersLabels[i].SetFont(F_Normal);
00632 HOVModelersSkinnersLabels[i].Align = TA_Right;
00633 }
00634 Controloffset += 35;
00635
00636 // Textures
00637 HOVTexturesHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00638 HOVTexturesHeader.SetText(HOVTexturesText);
00639 HOVTexturesHeader.SetFont(F_Bold);
00640 HOVTexturesHeader.Align = TA_Right;
00641 for(i = 0; i < HOVMaxTextures; i++)
00642 {
00643 ControlOffset += 12;
00644 HOVTexturesLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00645 HOVTexturesLabels[i].SetText(HOVTexturesNames[i]);
00646 HOVTexturesLabels[i].SetFont(F_Normal);
00647 HOVTexturesLabels[i].Align = TA_Right;
00648 }
00649 Controloffset += 35;
00650
00651 // Animation
00652 HOVAnimatorsHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00653 HOVAnimatorsHeader.SetText(HOVAnimatorsText);
00654 HOVAnimatorsHeader.SetFont(F_Bold);
00655 HOVAnimatorsHeader.Align = TA_Right;
00656 for(i = 0; i < HOVMaxAnimators; i++)
00657 {
00658 ControlOffset += 12;
00659 HOVAnimatorsLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00660 HOVAnimatorsLabels[i].SetText(HOVAnimatorsNames[i]);
00661 HOVAnimatorsLabels[i].SetFont(F_Normal);
00662 HOVAnimatorsLabels[i].Align = TA_Right;
00663 }
00664 Controloffset += 35;
00665
00666 // Music
00667 HOVMusicHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00668 HOVMusicHeader.SetText(HOVMusicText);
00669 HOVMusicHeader.SetFont(F_Bold);
00670 HOVMusicHeader.Align = TA_Right;
00671 for(i = 0; i < HOVMaxMusic; i++)
00672 {
00673 ControlOffset += 12;
00674 HOVMusicLabels[i] = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00675 HOVMusicLabels[i].SetText(HOVMusicNames[i]);
00676 HOVMusicLabels[i].SetFont(F_Normal);
00677 HOVMusicLabels[i].Align = TA_Right;
00678 }
00679
00680 // Thanks
00681 Controloffset += 40;
00682
00683 HOVThanksHeader = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00684 HOVThanksHeader.SetText(HOVThanksText);
00685 HOVThanksHeader.SetFont(F_Normal);
00686 HOVThanksHeader.Align = TA_Center;
00687
00688
00689 /*
00690 LinksLabel = RuneMenuLabelControl(CreateWindow(class'RuneMenuLabelControl', CenterPos, ControlOffset, CenterWidth, 1));
00691 LinksLabel.SetFont(F_Bold);
00692 LinksLabel.SetText(LinksText);
00693 LinksLabel.Align = TA_Left;
00694 ControlOffset += 10;
00695
00696 // HH link
00697 ButtonWidth = 110;
00698 HHHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00699 HHHotlink.SetText(HHHotlinkText);
00700 HHHotlink.SetFont(F_Bold);
00701 HHHotlink.Align = TA_Left;
00702 ControlOffset += 15;
00703
00704 // Rune link
00705 ButtonWidth = 110;
00706 RGHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00707 RGHotlink.SetText(RGHotlinkText);
00708 RGHotlink.SetFont(F_Bold);
00709 RGHotlink.Align = TA_Left;
00710 ControlOffset += 15;
00711
00712 // Troubleshoot link
00713 ButtonWidth = 200;
00714 TSHotlink = RuneMenuHotlinkControl(CreateControl(class'RuneMenuHotlinkControl', CenterPos+20, ControlOffset, ButtonWidth, 15));
00715 TSHotlink.SetText(TSHotlinkText);
00716 TSHotlink.SetFont(F_Bold);
00717 TSHotlink.Align = TA_Left;
00718 ControlOffset += 15;
00719 */
00720 }
00721
00722 function HOVBeforePaint(Canvas C, float X, float Y)
00723 {
00724 local int i;
00725 local int ControlWidth, ControlLeft, ControlRight;
00726 local int CenterWidth, CenterPos;
00727
00728 ControlWidth = WinWidth/2.5;
00729 ControlLeft = (WinWidth/2 - ControlWidth)/2;
00730 ControlRight = WinWidth/2 + ControlLeft;
00731
00732 CenterWidth = (WinWidth/4)*3;
00733 CenterPos = (WinWidth - CenterWidth)/2;
00734
00735 HOVLeadHeader.SetSize(CenterWidth, 1);
00736 HOVLeadHeader.WinLeft = CenterPos;
00737 HOVLeadHeader2.SetSize(CenterWidth, 1);
00738 HOVLeadHeader2.WinLeft = CenterPos;
00739 HOVLeadLabel.SetSize(CenterWidth, 1);
00740 HOVLeadLabel.WinLeft = CenterPos;
00741
00742 HOVArtLeadHeader.SetSize(CenterWidth, 1);
00743 HOVArtLeadHeader.WinLeft = CenterPos;
00744 HOVArtLeadLabel.SetSize(CenterWidth, 1);
00745 HOVArtLeadLabel.WinLeft = CenterPos;
00746
00747 HOVProjectManagerHeader.SetSize(CenterWidth, 1);
00748 HOVProjectManagerHeader.WinLeft = CenterPos;
00749 HOVProjectManagerLabel.SetSize(CenterWidth, 1);
00750 HOVProjectManagerLabel.WinLeft = CenterPos;
00751
00752 HOVDesignAssistantHeader.SetSize(CenterWidth, 1);
00753 HOVDesignAssistantHeader.WinLeft = CenterPos;
00754 HOVDesignAssistantLabel.SetSize(CenterWidth, 1);
00755 HOVDesignAssistantLabel.WinLeft = CenterPos;
00756
00757 // Programming
00758 HOVProgrammersHeader.SetSize(CenterWidth, 1);
00759 HOVProgrammersHeader.WinLeft = CenterPos;
00760 for(i = 0; i < HOVMaxProgrammers; i++)
00761 {
00762 HOVProgrammersLabels[i].SetSize(CenterWidth, 1);
00763 HOVProgrammersLabels[i].WinLeft = CenterPos;
00764 }
00765
00766 // Level Design
00767 HOVLevelDesignersHeader.SetSize(CenterWidth, 1);
00768 HOVLevelDesignersHeader.WinLeft = CenterPos;
00769 for(i = 0; i < HOVMaxLevelDesigners; i++)
00770 {
00771 HOVLevelDesignersLabels[i].SetSize(CenterWidth, 1);
00772 HOVLevelDesignersLabels[i].WinLeft = CenterPos;
00773 }
00774
00775 // Sound
00776 HOVSoundEffectsHeader.SetSize(CenterWidth, 1);
00777 HOVSoundEffectsHeader.WinLeft = CenterPos;
00778 HOVSoundEffectsLabel.SetSize(CenterWidth, 1);
00779 HOVSoundEffectsLabel.WinLeft = CenterPos;
00780
00781 // Modeling
00782 HOVModelersSkinnersHeader.SetSize(CenterWidth, 1);
00783 HOVModelersSkinnersHeader.WinLeft = CenterPos;
00784 for(i = 0; i < HOVMaxModelersSkinners; i++)
00785 {
00786 HOVModelersSkinnersLabels[i].SetSize(CenterWidth, 1);
00787 HOVModelersSkinnersLabels[i].WinLeft = CenterPos;
00788 }
00789
00790 // Textures
00791 HOVTexturesHeader.SetSize(CenterWidth, 1);
00792 HOVTexturesHeader.WinLeft = CenterPos;
00793 for(i = 0; i < HOVMaxTextures; i++)
00794 {
00795 HOVTexturesLabels[i].SetSize(CenterWidth, 1);
00796 HOVTexturesLabels[i].WinLeft = CenterPos;
00797 }
00798
00799 // Animation
00800 HOVAnimatorsHeader.SetSize(CenterWidth, 1);
00801 HOVAnimatorsHeader.WinLeft = CenterPos;
00802 for(i = 0; i < HOVMaxAnimators; i++)
00803 {
00804 HOVAnimatorsLabels[i].SetSize(CenterWidth, 1);
00805 HOVAnimatorsLabels[i].WinLeft = CenterPos;
00806 }
00807
00808 // Music
00809 HOVMusicHeader.SetSize(CenterWidth, 1);
00810 HOVMusicHeader.WinLeft = CenterPos;
00811 for(i = 0; i < HOVMaxMusic; i++)
00812 {
00813 HOVMusicLabels[i].SetSize(CenterWidth, 1);
00814 HOVMusicLabels[i].WinLeft = CenterPos;
00815 }
00816
00817 // Thanks
00818 HOVThanksHeader.SetSize(CenterWidth, 1);
00819 HOVThanksHeader.WinLeft = CenterPos;
00820 }
00821
00822 function Notify(UWindowDialogControl C, byte E)
00823 {
00824 Super.Notify(C, E);
00825
00826 switch(E)
00827 {
00828 case DE_Change:
00829 switch(C)
00830 {
00831 }
00832 case DE_Click:
00833 switch(C)
00834 {
00835 case HHHotlink:
00836 GetPlayerOwner().ConsoleCommand("start http://www.humanhead.com/");
00837 break;
00838 case RGHotlink:
00839 GetPlayerOwner().ConsoleCommand("start http://www.runegame.com/");
00840 break;
00841 case TSHotlink:
00842 GetPlayerOwner().ConsoleCommand("start http://www.runegame.com/support.php");
00843 break;
00844 }
00845 break;
00846 }
00847 }
00848
00849 /*
00850 * Message Crackers
00851 */
00852
00853
00854 function SaveConfigs()
00855 {
00856 GetPlayerOwner().SaveConfig();
00857 Super.SaveConfigs();
00858 }
00859
00860 defaultproperties
00861 {
00862 ProgrammersText="Programming"
00863 ProgrammerNames(0)="Paul MacArthur"
00864 ProgrammerNames(1)="Chris Rhinehart"
00865 MaxProgs=2
00866 AddProgrammersText="Additional Programming"
00867 AddProgrammerNames(0)="Ben Gokey"
00868 AddProgrammerNames(1)="Mike Craddick"
00869 MaxAddProgs=2
00870 LevelDesignText="Level Design"
00871 DesignerNames(0)="Mick Beard"
00872 DesignerNames(1)="Dave Halsted"
00873 DesignerNames(2)="Ted Halsted"
00874 DesignerNames(3)="James Sumwalt"
00875 MaxDesigners=4
00876 ArtText="Art & Models"
00877 ArtNames(0)="Tim Bowman"
00878 ArtNames(1)="Shane Gurno"
00879 ArtNames(2)="Greg Marshall"
00880 MaxArts=3
00881 AnimationText="Animation"
00882 AnimationNames(0)="Jeff DeWitt"
00883 AnimationNames(1)="Nathaniel Albright"
00884 MaxAnimations=2
00885 AddAnimationText="Additional Animation"
00886 AddAnimationNames(0)="Mike Werckle"
00887 MaxAddAnimations=1
00888 SoundText="Sound Effects"
00889 SoundNames(0)="Mike Larson"
00890 MaxSounds=1
00891 MusicText="Music"
00892 MusicNames(0)="Mike Larson"
00893 MusicNames(1)="Jim B-Reay"
00894 MusicNames(2)="Romulus Mars Priscus"
00895 MaxMusics=3
00896 BizText="Biz"
00897 BizNames(0)="Tim Gerritsen"
00898 MaxBiz=1
00899 ThanksText="Special Thanks to"
00900 ThanksNames(0)="Seth Johnson"
00901 ThanksNames(1)="Kenny Stoll"
00902 ThanksNames(2)="Sean Wipfli"
00903 ThanksNames(3)="Larry Hill"
00904 ThanksNames(4)="John Falgate"
00905 MaxThanks=5
00906 VoiceText="Voice Actors"
00907 VoiceNames(0)="Lee Ernst"
00908 VoiceNames(1)="Ted Halsted"
00909 VoiceNames(2)="Mike Larson"
00910 VoiceNames(3)="Tejumola F Ologboni"
00911 VoiceNames(4)="Sue Quinn"
00912 VoiceNames(5)="Nick Skrowaczewski"
00913 MaxVoice=6
00914 DedicationText="Dedicated to the Memory of:"
00915 DedicationNames(0)="Gene Rhinehart"
00916 DedicationNames(1)="1950 - 1999"
00917 MaxDedication=2
00918 LinksText="Links:"
00919 HHHotlinkText="www.humanhead.com"
00920 TSHotlinkText="www.runegame.com/support.php"
00921 RGHotlinkText="www.runegame.com"
00922 HOVLeadText="Project Lead /"
00923 HOVLeadText2=" Lead Programmer:"
00924 HOVLeadName="Chris Rhinehart"
00925 HOVArtLeadText="Art Lead:"
00926 HOVArtLeadName="Rowan Atalla"
00927 HOVProjectManagerText="Project Manager / Biz:"
00928 HOVProjectManagerName="Timothy S. Gerritsen"
00929 HOVDesignAssistantText="Design Assistant:"
00930 HOVDesignAssistantName="Seth Johnson"
00931 HOVProgrammersText="Programming"
00932 HOVProgrammersNames(0)="Chris Rhinehart"
00933 HOVProgrammersNames(1)="Mike Craddick"
00934 HOVProgrammersNames(2)="Ben Gokey"
00935 HOVProgrammersNames(3)="Paul MacArthur"
00936 HOVMaxProgrammers=4
00937 HOVLevelDesignersText="Level Designers:"
00938 HOVLevelDesignersNames(0)="Rowan Atalla"
00939 HOVLevelDesignersNames(1)="Mick Beard"
00940 HOVLevelDesignersNames(2)="Mike Flynn"
00941 HOVLevelDesignersNames(3)="Brian Frank"
00942 HOVLevelDesignersNames(4)="Dave Halsted"
00943 HOVLevelDesignersNames(5)="Ted Halsted"
00944 HOVLevelDesignersNames(6)="Jean-Paul LeBreton"
00945 HOVLevelDesignersNames(7)="Jim Sumwalt"
00946 HOVMaxLevelDesigners=8
00947 HOVModelersSkinnersText="Modelers/Skinners:"
00948 HOVModelersSkinnersNames(0)="Tim Bowman"
00949 HOVModelersSkinnersNames(1)="David Gulisano"
00950 HOVModelersSkinnersNames(2)="Shane Gurno"
00951 HOVModelersSkinnersNames(3)="Brett Hawkins"
00952 HOVMaxModelersSkinners=4
00953 HOVAnimatorsText="Animators:"
00954 HOVAnimatorsNames(0)="Jeff DeWitt"
00955 HOVAnimatorsNames(1)="Nathaniel Albright"
00956 HOVMaxAnimators=2
00957 HOVTexturesText="Level Textures:"
00958 HOVTexturesNames(0)="Greg Marshall"
00959 HOVTexturesNames(1)="Eli Quinn"
00960 HOVMaxTextures=2
00961 HOVSoundEffectsText="Sound Effects:"
00962 HOVSoundEffectsName="Mike Larson"
00963 HOVMusicText="Music:"
00964 HOVMusicNames(0)="Mike Larson"
00965 HOVMusicNames(1)="Romulus Mars Priscus"
00966 HOVMusicNames(2)="Jim B-Reay"
00967 HOVMaxMusic=3
00968 HOVThanksText="A long overdue special thanks to Terry Nagy for his assistance on Rune."
00969 }
|