rott/kf_sources/HideMut/Classes/menu_Old.uc
2026-07-14 20:27:09 +07:00

977 lines
26 KiB
Ucode

class menu_Old extends PopupPageBase
transient;
var(DEBUG) transient array<StaticMeshActor> cachedStaticMeshes;
var(DEBUG) transient array<Light> cachedLights;
var(DEBUG) transient array<Emitter> cachedEmitters;
var(DEBUG) transient array<Decoration> cachedDecorations;
var(DEBUG) transient array<Mover> cachedMovers;
var(DEBUG) transient array<Projector> cachedProjectors; // KFBloodSplatter
var(DEBUG) transient array<KF_RotatingMeshActor> cachedRotatingMeshActors; // terraininfo
var PlayerController PC;
var editinline array<byte> CloseKey;
var ActortListController ALC;
var string mapName;
var automated GUIButton b_HideAllActors, b_ShowAllActors, b_CacheAllActors,
b_UncacheAllActors, b_RefreshScreen, b_DisplayCachedActors,
b_ValidateCachedActors, b_ClearCache, b_ActivateInteraction;
var automated BackgroundArea a_List;
var automated GUIListBox lb_ActortListsList;
var GUIList li_ActortListsList;
var automated GUILabel l_WeaponList;
var string colorG, colorB, colorY, colorW;
simulated function InitComponent(GUIController MyController, GUIComponent MyOwner)
{
super.InitComponent(MyController,MyOwner);
PC = PlayerOwner();
colorG = chr(27) $ chr(1) $ chr(240) $ chr(1);
colorB = chr(27) $ chr(90) $ chr(90) $ chr(240);
colorY = chr(27) $ chr(127) $ chr(127) $ chr(1);
colorW = chr(27) $ chr(255) $ chr(255) $ chr(255);
}
event Opened(GUIComponent Sender)
{
local int i;
local string KeyName;
local array<string> KeyNames;
local array<string> ActortListNames;
super.Opened(Sender);
PC = PlayerOwner();
// write in KeyNames all bind keys that onen this window to use 'closeWindowWithBind()' then
CloseKey.Remove(0, CloseKey.Length);
KeyName = PC.ConsoleCommand("BINDINGTOKEY hideMenu");
Split(KeyName, ",", KeyNames);
for (i = 0; i < KeyNames.Length; i++)
CloseKey[CloseKey.Length] = byte(PC.ConsoleCommand("KEYNUMBER"@KeyNames[i]));
mapName = class'KFGameType'.static.GetCurrentMapName(PC.Level);
// in case of 255.255.225.228:8080/KF-WestLondon
i = InStr(mapName, "/") + 1;
MapName = Mid(MapName, i, Len(MapName) - i);
l_WeaponList.caption = MapName;
// refresh list with ActortLists
GetALL().clear();
ActortListNames = GetALC().GetAllActortLists();
for (i = 0; i < ActortListNames.Length; i++)
{
if (Left(ActortListNames[i], Len(MapName)) ~= MapName)
GetALL().add(ActortListNames[i]);
}
}
simulated function Closed(GUIComponent Sender, bool bCancelled)
{
super.Closed(Sender, bCancelled);
b_CacheAllActors.MenuState=MSAT_Disabled;
b_UncacheAllActors.MenuState=MSAT_Disabled;
}
// safe cleanup
event Free()
{
// all automated components are cleaned in super code
pc = none;
ALC = none;
li_ActortListsList = none;
// clear all arrays
clearCache();
super.Free();
}
// =============================================================================
// getters for safe calls
final private function PCMsg(coerce string s, optional Name Type)
{
if (pc != none)
PC.ClientMessage(s, Type);
}
final private function ActortListController GetALC()
{
if (ALC == none)
ALC = new class'ActortListController';
return ALC;
}
final private function GUIList GetALL()
{
if (li_ActortListsList == none)
{
li_ActortListsList = lb_ActortListsList.List;
li_ActortListsList.TextAlign = TXTA_Left;
li_ActortListsList.OnClick = ActivateAllButtons;
li_ActortListsList.bMultiSelect = true;
li_ActortListsList.bDropSource = true;
li_ActortListsList.bDropTarget = true;
}
return li_ActortListsList;
}
// =============================================================================
simulated function bool ButtonClicked(GUIComponent Sender)
{
// local StaticMeshActor tempActor;
// local Emitter tempEmitter;
// local Light tempLight;
// local mover tempMover;
// local array<string> uselessActors;
// local int i, count;
switch (Sender)
{
case b_CacheAllActors:
cacheStaticMeshes();
cacheLights();
cacheEmitters();
cacheDecorations();
cacheMovers();
cacheRotatingMeshActors();
break;
case b_UncacheAllActors:
// UNCACHE
break;
case b_HideAllActors:
checkAvailability();
PCMsg(colorW$"----------------------------------------");
PCMsg(colorG$"Following actors were hided:");
hideStaticMeshes();
hideLights();
hideEmitters();
hideDecorations();
hideMovers();
hideRotatingMeshActors();
PCMsg(colorW$"----------------------------------------");
break;
case b_ShowAllActors:
checkAvailability();
PCMsg(colorW$"----------------------------------------");
PCMsg(colorG$"Following actors were unhided:");
showStaticMeshes();
showLights();
showEmitters();
showDecorations();
showMovers();
showRotatingMeshActors();
PCMsg(colorW$"----------------------------------------");
break;
case b_RefreshScreen:
hideSMeshesWithoutColliding();
break;
case b_DisplayCachedActors:
checkAvailability();
PCMsg(colorW$"----------------------------------------");
PCMsg(colorG$"Cached actors:");
displayCachedStaticMeshes();
displayCachedLights();
displayCachedEmitters();
displayCachedDecorations();
displayCachedMovers();
displayCachedRotatingMeshActors();
PCMsg(colorW$"----------------------------------------");
break;
case b_ClearCache:
clearCache();
break;
case b_ActivateInteraction:
// runInteraction();
closeInteraction();
break;
default:
return false;
}
return true;
}
simulated function runInteraction()
{
// local int i;
local PlayerController dude;
dude = PlayerOwner();
if (dude != none)
{
// dude.Player.LocalInteractions[dude.Player.LocalInteractions.Length] = none;
// for(i = 0; i < dude.Player.LocalInteractions.Length; i++)
// PCMsg(colorW$string(dude.Player.LocalInteractions[i].name));
dude.Player.LocalInteractions[0] = new class<Interaction>(DynamicLoadObject(string(class'HideMutInteraction'), class'Class', true));
dude.Player.LocalInteractions[0].ViewportOwner = dude.Player;
}
// dude.Player.InteractionMaster.AddInteraction(string(class'HideMutInteraction'), dude.Player);
}
simulated function closeInteraction()
{
PlayerOwner().Player.LocalInteractions[0].ViewportOwner = none;
PlayerOwner().Player.LocalInteractions.Remove(0, 1);
}
// STATIC MESHES
simulated function cacheStaticMeshes()
{
local StaticMeshActor tempSM;
local array<string> uselessStaticMeshes;
local int i, count;
uselessStaticMeshes = GetALC().getUselessStaticMeshes(GetALL().get(false));
PCMsg("Meshes in ini file:"$uselessStaticMeshes.length);
forEach AllObjects (class'StaticMeshActor', tempSM)
{
for (i = 0; i < uselessStaticMeshes.length; i++)
{
if (string(tempSM.name) == uselessStaticMeshes[i])
{
cachedStaticMeshes[cachedStaticMeshes.length] = tempSM;
uselessStaticMeshes.remove(i,1);
count++;
break;
}
}
}
PCMsg("Meshes added:"$count);
PCMsg(colorG$"All static meshes were cached sucessfully.");
}
simulated function hideStaticMeshes()
{
local int i;
PCMsg(colorB$"Static meshes");
for (i = 0; i < cachedStaticMeshes.length; i++)
{
if (cachedStaticMeshes[i].bHidden == false)
{
cachedStaticMeshes[i].bHidden = true;
cachedStaticMeshes[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedStaticMeshes[i].name));
}
}
}
simulated function showStaticMeshes()
{
local int i;
PCMsg(colorB$"Static meshes");
for (i = 0; i < cachedStaticMeshes.length; i++)
{
if (cachedStaticMeshes[i].bHidden == true)
{
cachedStaticMeshes[i].bHidden = false;
cachedStaticMeshes[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedStaticMeshes[i].name));
}
}
}
simulated function displayCachedStaticMeshes()
{
local int i;
PCMsg(colorB$"Static meshes ["$cachedStaticMeshes.length$"]");
for (i = 0; i < cachedStaticMeshes.length; i++)
PCMsg(colorY$" "@string(cachedStaticMeshes[i].name));
}
// LIGHTS
simulated function cacheLights()
{
local Light tempL;
local array<string> uselessLights;
local int i;
uselessLights = GetALC().getUselessLights(GetALL().get(false));
forEach AllObjects (class'Light', tempL)
{
for (i = 0; i < uselessLights.length; i++)
{
if (string(tempL.name) == uselessLights[i])
{
cachedLights[cachedLights.length] = tempL;
uselessLights.remove(i,1);
break;
}
}
}
PCMsg(colorG$"All lights were cached sucessfully.");
}
simulated function hideLights()
{
local int i;
PCMsg(colorB$"Lights[coronas]");
for (i = 0; i < cachedLights.length; i++)
{
if (cachedLights[i].bCorona == true)
{
cachedLights[i].bCorona = false;
if (cachedLights[i].bStatic)
cachedLights[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedLights[i].name));
}
}
}
simulated function showLights()
{
local int i;
PCMsg(colorB$"Lights[coronas]");
for(i = 0; i < cachedLights.length; i++)
if(cachedLights[i].bCorona == false)
{
cachedLights[i].bCorona = true;
if(cachedLights[i].bStatic)
cachedLights[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedLights[i].name));
}
}
simulated function displayCachedLights()
{
local int i;
PCMsg(colorB$"Lights ["$cachedLights.length$"]");
for(i = 0; i < cachedLights.length; i++)
PCMsg(colorY$" "@string(cachedLights[i].name));
}
/*EMITTERS*/
simulated function cacheEmitters()
{
local Emitter tempE;
local array<string> uselessEmitters;
local int i;
uselessEmitters = GetALC().getUselessEmitters(GetALL().get(false));
forEach AllObjects (class'Emitter', tempE)
{
for(i = 0; i < uselessEmitters.length; i++)
{
if(string(tempE.name) == uselessEmitters[i])
{
cachedEmitters[cachedEmitters.length] = tempE;
uselessEmitters.remove(i,1);
break;
}
}
}
PCMsg(colorG$"All emitters were cached sucessfully.");
}
simulated function hideEmitters()
{
local int i;
PCMsg(colorB$"Emitters");
for(i = 0; i < cachedEmitters.length; i++)
if(cachedEmitters[i].bHidden == false)
{
cachedEmitters[i].bHidden = true;
if(cachedEmitters[i].bStatic)
cachedEmitters[i].ResetStaticFilterState();
// PCMsg(colorY$" "@string(cachedEmitters[i].name));
}
}
simulated function showEmitters()
{
local int i;
PCMsg(colorB$"Emitters");
for(i = 0; i < cachedEmitters.length; i++)
if(cachedEmitters[i].bHidden == true)
{
cachedEmitters[i].bHidden = false;
if(cachedEmitters[i].bStatic)
cachedEmitters[i].ResetStaticFilterState();
// PCMsg(colorY$" "@string(cachedEmitters[i].name));
}
}
simulated function displayCachedEmitters()
{
local int i;
PCMsg(colorB$"Emitters ["$cachedEmitters.length$"]");
for(i = 0; i < cachedEmitters.length; i++)
PCMsg(colorY$" "@string(cachedEmitters[i].name));
}
// DECORATIONS
simulated function cacheDecorations()
{
local Decoration tempD;
local array<string> uselessDecorations;
local int i;
uselessDecorations = GetALC().getUselessDecorations(GetALL().get(false));
forEach AllObjects (class'Decoration', tempD)
{
for(i = 0; i < uselessDecorations.length; i++)
{
if(string(tempD.name) == uselessDecorations[i])
{
cachedDecorations[cachedDecorations.length] = tempD;
uselessDecorations.remove(i,1);
break;
}
}
}
PCMsg(colorG$"All decorations were cached sucessfully.");
}
simulated function hideDecorations()
{
local int i;
PCMsg(colorB$"Decorations");
for (i = 0; i < cachedDecorations.length; i++)
if (cachedDecorations[i].bHidden == false)
{
cachedDecorations[i].bHidden = true;
if (cachedDecorations[i].bStatic)
cachedDecorations[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedDecorations[i].name));
}
}
simulated function showDecorations()
{
local int i;
PCMsg(colorB$"Decorations");
for (i = 0; i < cachedDecorations.length; i++)
if (cachedDecorations[i].bHidden == true)
{
cachedDecorations[i].bHidden = false;
if (cachedDecorations[i].bStatic)
cachedDecorations[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedDecorations[i].name));
}
}
simulated function displayCachedDecorations()
{
local int i;
PCMsg(colorB$"Decorations ["$cachedDecorations.length$"]");
for (i = 0; i < cachedDecorations.length; i++)
PCMsg(colorY$" "@string(cachedDecorations[i].name));
}
// MOVERS
simulated function cacheMovers()
{
local Mover tempM;
local array<string> uselessMovers;
local int i;
uselessMovers = GetALC().getUselessMovers(GetALL().get(false));
forEach AllObjects (class'Mover', tempM)
{
for (i = 0; i < uselessMovers.length; i++)
{
if (string(tempM.name) == uselessMovers[i])
{
cachedMovers[cachedMovers.length] = tempM;
uselessMovers.remove(i,1);
break;
}
}
}
PCMsg(colorG$"All movers were cached sucessfully.");
}
simulated function hideMovers()
{
local int i;
PCMsg(colorB$"Movers");
for (i = 0; i < cachedMovers.length; i++)
if (cachedMovers[i].bHidden == false)
{
cachedMovers[i].bHidden = true;
if (cachedMovers[i].bStatic)
cachedMovers[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedMovers[i].name));
}
}
simulated function showMovers()
{
local int i;
PCMsg(colorB$"Movers");
for (i = 0; i < cachedMovers.length; i++)
if (cachedMovers[i].bHidden == true)
{
cachedMovers[i].bHidden = false;
if (cachedMovers[i].bStatic)
cachedMovers[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedMovers[i].name));
}
}
simulated function displayCachedMovers()
{
local int i;
PCMsg(colorB$"Movers ["$cachedMovers.length$"]");
for (i = 0; i < cachedMovers.length; i++)
PCMsg(colorY$" "@string(cachedMovers[i].name));
}
// KF_RotatingMeshActor
// Chaos code
simulated function cacheRotatingMeshActors()
{
local KF_RotatingMeshActor tempRM;
local array<string> uselessRotatingMeshActors;
local int i, count;
uselessRotatingMeshActors = GetALC().getuselessRotatingMeshActors(GetALL().get(false));
PCMsg("Rotating Movers in ini file:"$uselessRotatingMeshActors.length);
forEach AllObjects (class'KF_RotatingMeshActor', tempRM)
{
for (i = 0; i < uselessRotatingMeshActors.length; i++)
{
if (string(tempRM.name) == uselessRotatingMeshActors[i])
{
cachedRotatingMeshActors[cachedRotatingMeshActors.length] = tempRM;
uselessRotatingMeshActors.remove(i,1);
count++;
break;
}
}
}
PCMsg("RotatingMeshActors added:"$count);
PCMsg(colorG$"All RotatingMeshActors were cached sucessfully.");
}
simulated function hideRotatingMeshActors()
{
local int i;
PCMsg(colorB$"RotatingMeshActors");
for (i = 0; i < cachedRotatingMeshActors.length; i++)
if (cachedRotatingMeshActors[i].bHidden == false)
{
cachedRotatingMeshActors[i].bHidden = true;
cachedRotatingMeshActors[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedRotatingMeshActors[i].name));
}
}
simulated function showRotatingMeshActors()
{
local int i;
PCMsg(colorB$"RotatingMeshActors");
for (i = 0; i < cachedRotatingMeshActors.length; i++)
if (cachedRotatingMeshActors[i].bHidden == true)
{
cachedRotatingMeshActors[i].bHidden = false;
cachedRotatingMeshActors[i].ResetStaticFilterState();
PCMsg(colorY$" "@string(cachedRotatingMeshActors[i].name));
}
}
simulated function displayCachedRotatingMeshActors()
{
local int i;
PCMsg(colorB$"RotatingMeshActors ["$cachedRotatingMeshActors.length$"]");
for (i = 0; i < cachedRotatingMeshActors.length; i++)
PCMsg(colorY$" "@string(cachedRotatingMeshActors[i].name));
}
// Chaos code
simulated function clearCache()
{
if (cachedStaticMeshes.length > 0)
cachedStaticMeshes.remove(0,cachedStaticMeshes.length);
if (cachedLights.length > 0)
cachedLights.remove(0,cachedLights.length);
if (cachedEmitters.length > 0)
cachedEmitters.remove(0,cachedEmitters.length);
if (cachedDecorations.length > 0)
cachedDecorations.remove(0,cachedDecorations.length);
if (cachedMovers.length > 0)
cachedMovers.remove(0,cachedMovers.length);
if (cachedProjectors.length > 0)
cachedProjectors.remove(0,cachedProjectors.length);
if (cachedRotatingMeshActors.length > 0)
cachedRotatingMeshActors.remove(0,cachedRotatingMeshActors.length);
PCMsg(colorG$"The cache was cleared.");
}
simulated function bool closeWindowWithBind(out byte Key, out byte State, float delta)
{
local int i;
for (i = 0; i < CloseKey.Length; i++)
if (Key == CloseKey[i])
{
Controller.CloseMenu(false);
return true;
}
}
simulated function bool ActivateAllButtons(GUIComponent Sender)
{
GetALL().InternalOnClick(Sender);
b_CacheAllActors.MenuState=MSAT_Blurry;
// b_UncacheAllActors.MenuState=MSAT_Blurry;
return true;
}
simulated function hideSMeshesWithoutColliding()
{
local StaticMeshActor tempMesh;
local Emitter tempE;
local Light tempL;
local Decoration tempD;
local Mover tempM;
local KF_RotatingMeshActor tempR;
forEach AllObjects (class'StaticMeshActor', tempMesh)
{
if(tempMesh.bBlockActors == false && tempMesh.bBlockZeroExtentTraces == false)
{
tempMesh.bHidden = true;
tempMesh.ResetStaticFilterState();
cachedStaticMeshes[cachedStaticMeshes.length] = tempMesh;
}
}
forEach AllObjects (class'Emitter', tempE)
{
if(tempE.Instigator == none)
{
tempE.bHidden = true;
if(tempE.bStatic)
tempE.ResetStaticFilterState();
cachedEmitters[cachedEmitters.length] = tempE;
}
}
forEach AllObjects (class'Light', tempL)
{
if(tempL.bCorona == true)
{
tempL.bCorona = false;
if(tempL.bStatic)
tempL.ResetStaticFilterState();
cachedLights[cachedLights.length] = tempL;
}
}
forEach AllObjects (class'Decoration', tempD)
{
tempD.bHidden = true;
if(tempD.bStatic)
tempD.ResetStaticFilterState();
cachedDecorations[cachedDecorations.length] = tempD;
}
forEach AllObjects (class'Mover', tempM)
{
if(tempM.bBlockActors == false && tempM.bBlockZeroExtentTraces == false)
{
tempM.bHidden = true;
if(tempM.bStatic)
tempM.ResetStaticFilterState();
cachedMovers[cachedMovers.length] = tempM;
}
}
// TODO:Check it later
forEach AllObjects (class'KF_RotatingMeshActor', tempR)
{
if(tempR.bBlockActors == false)
{
tempR.bHidden = true;
if(tempR.bStatic)
tempR.ResetStaticFilterState();
cachedRotatingMeshActors[cachedRotatingMeshActors.length] = tempR;
}
}
}
simulated function checkAvailability()
{
local int i;
if (cachedStaticMeshes.length > 0)
{
for (i = 0; i < cachedStaticMeshes.length && cachedStaticMeshes[i] == none; i++)
cachedStaticMeshes.remove(i, 1);
}
if (cachedLights.length > 0)
{
for (i = 0; i < cachedLights.length && cachedLights[i] == none; i++)
cachedLights.remove(i, 1);
}
if (cachedEmitters.length > 0)
{
for (i = 0; i < cachedEmitters.length && (cachedEmitters[i] == none || cachedEmitters[i].bDeleteMe); i++)
cachedEmitters.remove(i, 1);
}
if (cachedDecorations.length > 0)
{
for (i = 0; i < cachedDecorations.length && cachedDecorations[i] == none; i++)
cachedDecorations.remove(i, 1);
}
if (cachedMovers.length > 0)
{
for (i = 0; i < cachedMovers.length && cachedMovers[i] == none; i++)
cachedMovers.remove(i, 1);
}
}
defaultproperties
{
Begin Object Class=GUIButton Name=HideAllActorsButton
Caption="Hide cached"
WinTop=0.722000
WinLeft=0.605000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=HideAllActorsButton.InternalOnKeyEvent
End Object
b_HideAllActors=GUIButton'HideMut.menu_Old.HideAllActorsButton'
Begin Object Class=GUIButton Name=ShowAllActorsButton
Caption="Unhide cached"
WinTop=0.722000
WinLeft=0.700000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=ShowAllActorsButton.InternalOnKeyEvent
End Object
b_ShowAllActors=GUIButton'HideMut.menu_Old.ShowAllActorsButton'
Begin Object Class=GUIButton Name=CacheAllActorsButton
Caption="Cache"
MenuState=MSAT_Disabled
WinTop=0.712000
WinLeft=0.405000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=CacheAllActorsButton.InternalOnKeyEvent
End Object
b_CacheAllActors=GUIButton'HideMut.menu_Old.CacheAllActorsButton'
Begin Object Class=GUIButton Name=UncacheAllActorsButton
Caption="Uncache"
MenuState=MSAT_Disabled
WinTop=0.712000
WinLeft=0.505000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=UncacheAllActorsButton.InternalOnKeyEvent
End Object
b_UncacheAllActors=GUIButton'HideMut.menu_Old.UncacheAllActorsButton'
Begin Object Class=GUIButton Name=RefreshScreenButton
Caption="Just button"
WinTop=0.722000
WinLeft=0.795000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=RefreshScreenButton.InternalOnKeyEvent
End Object
b_RefreshScreen=GUIButton'HideMut.menu_Old.RefreshScreenButton'
Begin Object Class=GUIButton Name=DisplayCachedActorsButton
Caption="Display cached"
WinTop=0.722000
WinLeft=0.305000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=DisplayCachedActorsButton.InternalOnKeyEvent
End Object
b_DisplayCachedActors=GUIButton'HideMut.menu_Old.DisplayCachedActorsButton'
Begin Object Class=GUIButton Name=ValidateCachedActorsButton
Caption="Validate cache"
MenuState=MSAT_Disabled
WinTop=0.722000
WinLeft=0.210000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=ValidateCachedActorsButton.InternalOnKeyEvent
End Object
b_ValidateCachedActors=GUIButton'HideMut.menu_Old.ValidateCachedActorsButton'
Begin Object Class=GUIButton Name=ClearCacheButton
Caption="Clear cache"
WinTop=0.722000
WinLeft=0.115000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=ClearCacheButton.InternalOnKeyEvent
End Object
b_ClearCache=GUIButton'HideMut.menu_Old.ClearCacheButton'
Begin Object Class=GUIButton Name=ActivateInteractionButton
Caption="Run interaction"
WinTop=0.712000
WinLeft=0.015000
WinWidth=0.090000
WinHeight=0.080000
OnClick=menu_Old.ButtonClicked
OnKeyEvent=ActivateInteractionButton.InternalOnKeyEvent
End Object
b_ActivateInteraction=GUIButton'HideMut.menu_Old.ActivateInteractionButton'
Begin Object Class=BackgroundArea Name=ListArea
WinTop=0.550000
WinLeft=0.400000
WinWidth=0.200000
WinHeight=0.150000
End Object
a_List=BackgroundArea'HideMut.menu_Old.ListArea'
Begin Object Class=GUIListBox Name=ActortListsListBox
bVisibleWhenEmpty=True
OnCreateComponent=ActortListsListBox.InternalOnCreateComponent
WinTop=0.557000
WinLeft=0.403000
WinWidth=0.194000
WinHeight=0.140000
End Object
lb_ActortListsList=GUIListBox'HideMut.menu_Old.ActortListsListBox'
Begin Object Class=GUILabel Name=WeaponListLabel
Caption="Current map"
TextAlign=TXTA_Center
VertAlign=TXTA_Center
StyleName="TextLabel"
Hint="Current map"
WinTop=0.530000
WinLeft=0.400000
WinWidth=0.200000
WinHeight=0.020000
End Object
l_WeaponList=GUILabel'HideMut.menu_Old.WeaponListLabel'
bPersistent=True
bAllowedAsLast=True
WinTop=0.700000
WinLeft=0.400000
WinWidth=0.200000
WinHeight=0.100000
OnKeyEvent=menu_Old.closeWindowWithBind
}