## XIDInterf
Class XIIIMenuCompetencesIngame

source: C:\XIII\XIDInterf\Classes\XIIIMenuCompetencesIngame.uc

    Core.Object
       |
       +--GUI.GUI
          |
          +--GUI.GUIComponent
             |
             +--GUI.GUIMultiComponent
                |
                +--GUI.GUIPage
                   |
                   +--XIDInterf.XIIIWindow
                      |
                      +--XIDInterf.XIIIMenuCompetencesIngame

Direct Known Subclasses:None

class XIIIMenuCompetencesIngame
extends XIDInterf.XIIIWindow

    //============================================================================
    // Competences light ingame menu.
    //
    //============================================================================

Variables
`tBackPlane[4],` | `ArrowText`
`Doc11Button,` | `Doc12Button`
`Doc7LabText,` | `Doc8LabText`
`MessageText,` | `NoSKill`
`PickLockText,` | `SilentWalkText`
`Texture` | `ValidatedTex`

Function Summary
`void` | `Created()`
`bool` | `InternalOnKeyEvent(out byte, out byte, float delta)`
`void` | `Paint(Canvas C, float X, float Y)`

Source Code

    00001	//============================================================================
    00002	// Competences light ingame menu.
    00003	//
    00004	//============================================================================
    00005	class XIIIMenuCompetencesIngame extends XIIIWindow;
    00006
    00007	var localized string TitleText, DualWeaponText, BreathText, FirstAidText, SixSenseText, SniperText, StunningText, PickLockText, SilentWalkText;
    00008	var XIIITextureButton Doc1Button, Doc2Button, Doc3Button, Doc4Button, Doc5Button, Doc6Button, Doc7Button, Doc8Button, Doc9Button, Doc10Button, Doc11Button, Doc12Button;
    00009	var texture ValidatedTex;
    00010	var  localized string Doc1LabText, Doc2LabText, Doc3LabText, Doc4LabText, Doc5LabText, Doc6LabText, Doc7LabText, Doc8LabText;
    00011
    00012	var texture tBackGround[20], tHighlight[20], tBackPlane[4], ArrowText;
    00013	var string sBackGround[20], sHighlight[20], sBackPlane[4], MessageText, NoSKill;
    00014
    00015
    00016	function Created()
    00017	{
    00018	    local int i;
    00019
    00020	    Super.Created();
    00021
    00022	    bShowBCK = true;
    00023	    bShowSEL = true;
    00024
    00025
    00026	    for (i=0; i<4; i++)
    00027	    {
    00028	        tBackPlane[i] = texture(DynamicLoadObject(sBackPlane[i], class'Texture'));
    00029	    }
    00030
    00031	    for (i=0; i<20; i++)
    00032	    {
    00033	        tHighlight[i] = texture(DynamicLoadObject(sHighlight[i], class'Texture'));
    00034	        //tBackGround[i] = texture(DynamicLoadObject(sBackGround[i], class'Texture'));
    00035	    }
    00036
    00037
    00038	    Doc1Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 65*fScaleTo, 20, 20*fScaleTo));
    00039	    Doc1Button.bUseBorder=false;
    00040
    00041	    Doc2Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 105*fScaleTo, 20, 20*fScaleTo));
    00042	    Doc2Button.bUseBorder=false;
    00043
    00044	    Doc3Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 145*fScaleTo, 20, 20*fScaleTo));
    00045	    Doc3Button.bUseBorder=false;
    00046
    00047	    Doc4Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 185*fScaleTo, 20, 20*fScaleTo));
    00048	    Doc4Button.bUseBorder=false;
    00049
    00050	    Doc5Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 225*fScaleTo, 20, 20*fScaleTo));
    00051	    Doc5Button.bUseBorder=false;
    00052
    00053	    Doc6Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 265*fScaleTo, 20, 20*fScaleTo));
    00054	    Doc6Button.bUseBorder=false;
    00055
    00056	    Doc7Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 305*fScaleTo, 20, 20*fScaleTo));
    00057	    Doc7Button.bUseBorder=false;
    00058
    00059	    Doc8Button = XIIITextureButton(CreateControl(class'XIIITextureButton', 230, 345*fScaleTo, 20, 20*fScaleTo));
    00060	    Doc8Button.bUseBorder=false;
    00061
    00062
    00063
    00064	    Doc1Button.tFirstTex[0]=myRoot.FondMenu;
    00065	    Doc1Button.tFirstTex[1]=ArrowText;
    00066
    00067	    Doc2Button.tFirstTex[0]=myRoot.FondMenu;
    00068	    Doc2Button.tFirstTex[1]=ArrowText;
    00069
    00070	    Doc3Button.tFirstTex[0]=myRoot.FondMenu;
    00071	    Doc3Button.tFirstTex[1]=ArrowText;
    00072
    00073	    Doc4Button.tFirstTex[0]=myRoot.FondMenu;
    00074	    Doc4Button.tFirstTex[1]=ArrowText;
    00075	    Doc5Button.tFirstTex[0]=myRoot.FondMenu;
    00076	    Doc5Button.tFirstTex[1]=ArrowText;
    00077
    00078	    Doc6Button.tFirstTex[0]=myRoot.FondMenu;
    00079	    Doc6Button.tFirstTex[1]=ArrowText;
    00080	    Doc7Button.tFirstTex[0]=myRoot.FondMenu;
    00081	    Doc7Button.tFirstTex[1]=ArrowText;
    00082
    00083	    Doc8Button.tFirstTex[0]=myRoot.FondMenu;
    00084	    Doc8Button.tFirstTex[1]=ArrowText;
    00085
    00086	    Controls[0]=Doc1Button;
    00087	    Controls[1]=Doc2Button;
    00088	    Controls[2]=Doc3Button;
    00089	    Controls[3]=Doc4Button;
    00090	    Controls[4]=Doc5Button;
    00091	    Controls[5]=Doc6Button;
    00092	    Controls[6]=Doc7Button;
    00093	    Controls[7]=Doc8Button;
    00094
    00095
    00096	}
    00097
    00098	function Paint(Canvas C, float X, float Y)
    00099	{
    00100	    local float W, H;
    00101	    local int i, index;
    00102
    00103	   local mapinfo Currentmap;
    00104
    00105	   local string MessageText;
    00106	   local array<string> MsgArray;
    00107	   local int v;
    00108	   local int Length;
    00109	   local int TextWith;
    00110
    00111
    00112	    index = FindComponentIndex(FocusedControl);
    00113
    00114
    00115	    Super.Paint(C,X,Y);
    00116
    00117	    // background
    00118	    if (myRoot.GetLevel().bCineFrame)
    00119		{
    00120		    C.Style = 5;
    00121			C.DrawColor = BlackColor;
    00122			C.DrawColor.A = 192;
    00123		    DrawStretchedTexture(C, 0, 0, WinWidth*C.ClipX, WinHeight*C.ClipY, myRoot.FondMenu);
    00124			C.Style = 1;
    00125		}
    00126
    00127			C.DrawMsgboxBackground(false, 120*fRatioX, 50*fRatioY*fScaleTo, 10, 10, 420*fRatioX, 390*fRatioY*fScaleTo);
    00128
    00129
    00130
    00131	   /* // main design
    00132	    if (!myRoot.GetLevel().bCineFrame)
    00133		{
    00134			C.DrawMsgboxBackground(false, 120*fRatioX, 50*fRatioY*fScaleTo, 10, 10, 420*fRatioX, 350*fRatioY*fScaleTo);
    00135		}
    00136	    else
    00137	    {
    00138			C.DrawMsgboxBackground(false, 0.09*C.ClipX*fRatioX, 0.2*C.ClipY*fRatioY*fScaleTo, 10, 10, 0.82*C.ClipX*fRatioX, 0.6*C.ClipY*fRatioY*fScaleTo);
    00139	    }*/
    00140
    00141
    00142	    // page title
    00143	    C.bUseBorder = true;
    00144	    C.DrawColor = WhiteColor;
    00145	    C.TextSize(TitleText, W, H);
    00146	    DrawStretchedTexture(C, 80*fRatioX, 110*fRatioY*fScaleTo, W+40*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00147	    C.DrawColor = BlackColor;
    00148	    //C.SetPos(100*fRatioX-W/40, (130*fScaleTo*fRatioY)-H/2);
    00149	    C.SetPos(80*fRatioX+(40*fRatioX)/2, (110*fRatioY+(40*fRatioY-H)/2)*fScaleTo);
    00150	    C.DrawText(TitleText, false);
    00151
    00152	    // restore old param
    00153		C.DrawColor = WhiteColor;
    00154	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00155
    00156
    00157
    00158	// skill title
    00159	    C.bUseBorder = false;
    00160	    C.DrawColor = WhiteColor;
    00161	    C.TextSize(SilentWalkText, W, H);
    00162	    //DrawStretchedTexture(C, 320, 80*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00163	    C.DrawColor = BlackColor;
    00164	    C.SetPos(300*fRatioX, (75*fScaleTo*fRatioY)-H/2);
    00165	    C.DrawText(SilentWalkText, false);
    00166
    00167	    // restore old param
    00168		C.DrawColor = WhiteColor;
    00169	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00170
    00171
    00172	// skill title
    00173	    C.bUseBorder = false;
    00174	    C.DrawColor = WhiteColor;
    00175	    C.TextSize(DualWeaponText, W, H);
    00176	    //DrawStretchedTexture(C, 320, 120*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00177	    C.DrawColor = BlackColor;
    00178	    C.SetPos(300*fRatioX, (115*fScaleTo*fRatioY)-H/2);
    00179	    C.DrawText(DualWeaponText, false);
    00180
    00181	    // restore old param
    00182		C.DrawColor = WhiteColor;
    00183	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00184
    00185
    00186	// skill title
    00187	    C.bUseBorder = false;
    00188	    C.DrawColor = WhiteColor;
    00189	    C.TextSize(BreathText, W, H);
    00190	    //DrawStretchedTexture(C, 320, 160*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00191	    C.DrawColor = BlackColor;
    00192	    C.SetPos(300*fRatioX, (155*fScaleTo*fRatioY)-H/2);
    00193	    C.DrawText(BreathText, false);
    00194
    00195	    // restore old param
    00196		C.DrawColor = WhiteColor;
    00197	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00198
    00199	// skill title
    00200	    C.bUseBorder = false;
    00201	    C.DrawColor = WhiteColor;
    00202	    C.TextSize(FirstAidText, W, H);
    00203	    //DrawStretchedTexture(C, 320, 200*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00204	    C.DrawColor = BlackColor;
    00205	    C.SetPos(300*fRatioX, (195*fScaleTo*fRatioY)-H/2);
    00206	    C.DrawText(FirstAidText, false);
    00207
    00208	    // restore old param
    00209		C.DrawColor = WhiteColor;
    00210	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00211
    00212	// skill title
    00213	    C.bUseBorder = false;
    00214	    C.DrawColor = WhiteColor;
    00215	    C.TextSize(SixSenseText, W, H);
    00216	    //DrawStretchedTexture(C, 320, 240*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00217	    C.DrawColor = BlackColor;
    00218	    C.SetPos(300*fRatioX, (235*fScaleTo*fRatioY)-H/2);
    00219	    C.DrawText(SixSenseText, false);
    00220
    00221	    // restore old param
    00222		C.DrawColor = WhiteColor;
    00223	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00224
    00225	// skill title
    00226	    C.bUseBorder = false;
    00227	    C.DrawColor = WhiteColor;
    00228	    C.TextSize(SniperText, W, H);
    00229	    //DrawStretchedTexture(C, 320, 280*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00230	    C.DrawColor = BlackColor;
    00231	    C.SetPos(300*fRatioX, (275*fScaleTo*fRatioY)-H/2);
    00232	    C.DrawText(SniperText, false);
    00233
    00234	    // restore old param
    00235		C.DrawColor = WhiteColor;
    00236	    C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false;
    00237
    00238	// skill title
    00239	    C.bUseBorder = false;
    00240	    C.DrawColor = WhiteColor;
    00241	    C.TextSize(StunningText, W, H);
    00242	    //DrawStretchedTexture(C, 320, 320*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu);
    00243	    C.DrawColor = BlackColor;
    00244	    C.SetPos(300*fRatioX, (315*fScaleTo*fRatioY)-H/2);
    00245
C.DrawText(StunningText, false); 00246 00247 // restore old param 00248 C.DrawColor = WhiteColor; 00249 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00250 00251 // skill title 00252 C.bUseBorder = false; 00253 C.DrawColor = WhiteColor; 00254 C.TextSize(PickLockText, W, H); 00255 //DrawStretchedTexture(C, 320, 360*fScaleTo*fRatioY, (W+40)*fRatioX, 40*fScaleTo*fRatioY, myRoot.FondMenu); 00256 C.DrawColor = BlackColor; 00257 C.SetPos(300*fRatioX, (355*fScaleTo*fRatioY)-H/2); 00258 C.DrawText(PickLockText, false); 00259 00260 // restore old param 00261 C.DrawColor = WhiteColor; 00262 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00263 00264 CurrentMap = XIIIGameInfo(GetPlayerOwner().Player.Actor.Level.Game).MapInfo; 00265 00266 if ( CurrentMap.XIIIPawn.FindInventoryKind('SilentWalkSkill') != none ) 00267 { 00268 C.bUseBorder = true; 00269 if (index==0) 00270 MessageText=Doc1LabText; 00271 C.DrawColor = BlackColor; 00272 DrawStretchedTexture(C, 260*fRatioX, 65*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00273 C.DrawColor = WhiteColor; 00274 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00275 } 00276 else 00277 { 00278 C.bUseBorder = true; 00279 if (index==0) 00280 MessageText=NoSkill; 00281 C.DrawColor = WhiteColor; 00282 DrawStretchedTexture(C, 260*fRatioX, 65*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00283 C.DrawColor = WhiteColor; 00284 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00285 } 00286 00287 if ( CurrentMap.XIIIPawn.FindInventoryKind('DualWeaponSkill') != none ) 00288 { 00289 C.bUseBorder = true; 00290 if (index==1) 00291 MessageText=Doc2LabText; 00292 C.DrawColor = BlackColor; 00293 DrawStretchedTexture(C, 260*fRatioX, 105*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00294 C.DrawColor = WhiteColor; 00295 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00296 } 00297 else 00298 { 00299 C.bUseBorder = true; 00300 if (index==1) 00301 MessageText=NoSkill; 00302 C.DrawColor = WhiteColor; 00303 DrawStretchedTexture(C, 260*fRatioX, 105*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00304 C.DrawColor = WhiteColor; 00305 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00306 } 00307 00308 if ( CurrentMap.XIIIPawn.FindInventoryKind('BreathSkill') != none ) 00309 { 00310 C.bUseBorder = true; 00311 if (index==2) 00312 MessageText=Doc3LabText; 00313 C.DrawColor = BlackColor; 00314 DrawStretchedTexture(C, 260*fRatioX, 145*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00315 C.DrawColor = WhiteColor; 00316 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00317 } 00318 else 00319 { 00320 C.bUseBorder = true; 00321 if (index==2) 00322 MessageText=NoSkill; 00323 C.DrawColor = WhiteColor; 00324 DrawStretchedTexture(C, 260*fRatioX, 145*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00325 C.DrawColor = WhiteColor; 00326 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00327 } 00328 00329 if ( CurrentMap.XIIIPawn.FindInventoryKind('FirstAidSkill') != none ) 00330 { 00331 C.bUseBorder = true; 00332 if (index==3) 00333 MessageText=Doc4LabText; 00334 C.DrawColor = BlackColor; 00335 DrawStretchedTexture(C, 260*fRatioX, 185*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00336 C.DrawColor = WhiteColor; 00337 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00338 } 00339 else 00340 { 00341 C.bUseBorder = true; 00342 if (index==3) 00343 MessageText=NoSkill; 00344 C.DrawColor = WhiteColor; 00345 DrawStretchedTexture(C, 260*fRatioX, 185*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00346 C.DrawColor = WhiteColor; 00347 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00348 } 00349 00350 if ( CurrentMap.XIIIPawn.FindInventoryKind('SixSenseSkill') != none ) 00351 { 00352 C.bUseBorder = true; 00353 if (index==4) 00354 MessageText=Doc5LabText; 00355 C.DrawColor = BlackColor; 00356 DrawStretchedTexture(C, 260*fRatioX, 225*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00357 C.DrawColor = WhiteColor; 00358 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00359 } 00360 else 00361 { 00362 C.bUseBorder = true; 00363 if (index==4) 00364 MessageText=NoSkill; 00365 C.DrawColor = WhiteColor; 00366 DrawStretchedTexture(C, 260*fRatioX, 225*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00367 C.DrawColor = WhiteColor; 00368 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00369 } 00370 00371 if ( CurrentMap.XIIIPawn.FindInventoryKind('SniperSkill') != none ) 00372 { 00373 C.bUseBorder = true; 00374 if (index==5) 00375 MessageText=Doc6LabText; 00376 C.DrawColor = BlackColor; 00377 DrawStretchedTexture(C, 260*fRatioX, 265*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00378 C.DrawColor = WhiteColor; 00379 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00380 } 00381 else 00382 { 00383 C.bUseBorder = true; 00384 if (index==5) 00385 MessageText=NoSkill; 00386 C.DrawColor = WhiteColor; 00387 DrawStretchedTexture(C, 260*fRatioX, 265*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00388 C.DrawColor = WhiteColor; 00389 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00390 } 00391 00392 00393 00394 if ( CurrentMap.XIIIPawn.FindInventoryKind('StunningSkill') != none ) 00395 { 00396 C.bUseBorder = true; 00397 if (index==6) 00398 MessageText=Doc7LabText; 00399 C.DrawColor = BlackColor; 00400 DrawStretchedTexture(C, 260*fRatioX, 305*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00401 C.DrawColor = WhiteColor; 00402 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00403 } 00404 else 00405 { 00406 C.bUseBorder = true; 00407 if (index==6) 00408 MessageText=NoSkill; 00409 C.DrawColor = WhiteColor; 00410 DrawStretchedTexture(C, 260*fRatioX, 305*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00411 C.DrawColor = WhiteColor; 00412 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00413 } 00414 00415 00416 if ( CurrentMap.XIIIPawn.FindInventoryKind('PickLockSkill') != none ) 00417 { 00418 C.bUseBorder = true; 00419 if (index==7) 00420 MessageText=Doc8LabText; 00421 C.DrawColor = BlackColor; 00422 DrawStretchedTexture(C, 260*fRatioX, 345*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, ValidatedTex); 00423 C.DrawColor = WhiteColor; 00424 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00425 } 00426 else 00427 { 00428 C.bUseBorder = true; 00429 if (index==7) 00430 MessageText=NoSKill; 00431 C.DrawColor = WhiteColor; 00432 DrawStretchedTexture(C, 260*fRatioX, 345*fScaleTo*fRatioY, 20*fRatioX, 20*fScaleTo*fRatioY, myRoot.FondMenu); 00433 C.DrawColor = WhiteColor; 00434 C.DrawColor.A = 255; C.Style = 1; C.bUseBorder = false; 00435 } 00436 00437 TextWith = 400*fRatioX; 00438 C.Font = font'XIIIFonts.XIIIConsoleFont'; 00439 C.DrawColor = BlackColor; 00440 C.WrapStringToArray(MessageText, MsgArray, TextWith, "|"); 00441 Length = MsgArray.Length; 00442 if (Length > 1) 00443 { 00444 for(v=0;v<Length;v++) 00445 { 00446 C.TextSize(MsgArray[v], W, H); 00447 C.SetPos(130*fRatioX, 380*fRatioY*fScaleTo + (H*v*fRatioY)*fScaleTo); 00448 C.DrawText(MsgArray[v], false); 00449 } 00450 } 00451 else 00452 { 00453 if (MessageText!="?") 00454 { 00455 C.TextSize(MsgArray[v], W, H); 00456 C.SetPos(130*fRatioX, 390*fRatioY*fScaleTo + (H*fRatioY)*fScaleTo); 00457 C.DrawText(MsgArray[v], false); 00458 } 00459 else 00460 { 00461 C.TextSize(MsgArray[v], W, H); 00462 C.SetPos(320*fRatioX, 390*fRatioY*fScaleTo + (H*fRatioY)*fScaleTo); 00463 C.DrawText(MsgArray[v], false); 00464 } 00465 00466 } 00467 C.DrawColor = WhiteColor; 00468 00469 00470 } 00471 00472 function bool InternalOnKeyEvent(out byte Key, out byte State, float delta) 00473 { 00474 local int index; 00475 local bool bLeft, bRight, bUp, bDown; 00476 00477 if (State==1)// IST_Press // to avoid auto-repeat 00478 { 00479 if ((Key==0x0D/*IK_Enter*/) || (Key==0x01)/*IK_LeftMouse*/) 00480 { 00481 myRoot.CloseMenu(true); 00482 return true; 00483 } 00484 else if ((Key==0x08/*IK_Backspace*/)|| (Key==0x1B) /*IK_Escape*/) 00485 { 00486 myRoot.CloseMenu(true); 00487 return true; 00488 } 00489 bUp = (Key==0x26); 00490 bDown = (Key==0x28); 00491 bLeft = (Key==0x25); 00492 bRight = (Key==0x27); 00493 if ( bUp || bDown || bLeft || bRight ) 00494 { 00495 index = FindComponentIndex(FocusedControl); 00496 switch (index) 00497 { 00498 case 0 : 00499 if ( bDown) Controls[1].FocusFirst(Self,false); 00500 if ( bUp ) Controls[7].FocusFirst(Self,false); 00501 break; 00502 case 1 : 00503 if ( bDown ) Controls[2].FocusFirst(Self,false); 00504 if ( bUp ) Controls[0].FocusFirst(Self,false); 00505 break; 00506 case 2 : 00507 if ( bDown) Controls[3].FocusFirst(Self,false); 00508 if ( bUp ) Controls[1].FocusFirst(Self,false); 00509 break; 00510 case 3 : 00511 if ( bDown) Controls[4].FocusFirst(Self,false); 00512 if ( bUp ) Controls[2].FocusFirst(Self,false); 00513 break; 00514 case 4 : 00515 if ( bUp ) Controls[3].FocusFirst(Self,false); 00516 if ( bDown) Controls[5].FocusFirst(Self,false); 00517 break; 00518 case 5 : 00519 if ( bUp ) Controls[4].FocusFirst(Self,false); 00520 if ( bDown) Controls[6].FocusFirst(Self,false); 00521 break; 00522 case 6 : 00523 if ( bUp ) Controls[5].FocusFirst(Self,false); 00524 if ( bDown) Controls[7].FocusFirst(Self,false); 00525 break; 00526 case 7 : 00527 if ( bUp ) Controls[6].FocusFirst(Self,false); 00528 if ( bDown) Controls[0].FocusFirst(Self,false); 00529 break; 00530 } 00531 return true; 00532 } 00533 } 00534 return super.InternalOnKeyEvent(Key, state, delta); 00535 } 00536 00537 00538 00539 defaultproperties 00540 { 00541 TitleText="Skills" 00542 DualWeaponText="Dual Weapon Skill" 00543 BreathText="Breathing Skill" 00544 FirstAidText="First Aid SKill" 00545 SixSenseText="Sixth Sense Skill" 00546 SniperText="Sniper Skill" 00547 StunningText="Stunning SKill" 00548 PickLockText="Lockpicking SKill" 00549 SilentWalkText="Silent Walk Skill" 00550 ValidatedTex=Texture'XIIIMenu.HUD.Valid' 00551 Doc1LabText="You remember your gift for stealth. From now on, you'll make 50% less noise when you move around." 00552 Doc2LabText="Remember… You used to be able to shoot 2 handguns at once, using ALTERNATING fire." 00553 Doc3LabText="You just remembered your records for holding your breath. From now on, you can stay twice as long underwater." 00554 Doc4LabText="You recall your healing powers. All at once, MEDIKITs have double the effect on you." 00555 Doc5LabText="There should go the English description of the sixth sense skill" 00556 Doc6LabText="You got back your powers of concentration. From now on, you can stabilize your fire when sniping at an enemy." 00557 Doc7LabText="You remember how to deliver a forearm blow: Move discreetly towards an enemy, then press ACTION to knock him out." 00558 Doc8LabText="You remember your skill. Once again, you can open doors twice as fast." 00559 ArrowText=Texture'XIIIMenuStart.Control_Console.fleche_droite' 00560 NoSKill="?" 00561 bForceHelp=True 00562 Background=None 00563 }

End Source Code