KF2-Server-Extension/ServerExt/Classes/ExtMoviePlayer_Manager.uc

128 lines
3.7 KiB
Ucode
Raw Normal View History

2017-10-20 02:00:49 +00:00
Class ExtMoviePlayer_Manager extends KFGFxMoviePlayer_Manager;
var ExtMenu_Gear EGearMenu;
var transient KFGUI_Page PerksPage;
2017-10-20 02:00:49 +00:00
event bool WidgetInitialized(name WidgetName, name WidgetPath, GFxObject Widget)
{
local PlayerController PC;
switch ( WidgetName )
{
case 'gearMenu':
PC = GetPC();
if( PC.PlayerReplicationInfo.bReadyToPlay && PC.WorldInfo.GRI.bMatchHasBegun )
return true;
if (EGearMenu == none)
{
EGearMenu = ExtMenu_Gear(Widget);
EGearMenu.InitializeMenu(self);
}
OnMenuOpen( WidgetPath, EGearMenu );
return true;
default:
return Super.WidgetInitialized(WidgetName,WidgetPath,Widget);
}
}
function LaunchMenus( optional bool bForceSkipLobby )
{
local GFxWidgetBinding WidgetBinding;
local bool bSkippedLobby;
// Add either the in game party or out of game party widget
WidgetBinding.WidgetName = 'partyWidget';
bSkippedLobby = bForceSkipLobby || CheckSkipLobby();
WidgetBinding.WidgetClass = class'ExtWidget_PartyInGame';
ManagerObject.SetBool("backgroundVisible", false);
ManagerObject.SetBool("IISMovieVisible", false);
if(bSkippedLobby)
CurrentBackgroundMovie.Stop();
WidgetBindings.AddItem(WidgetBinding);
// Load the platform-specific graphics options menu
switch( class'KFGameEngine'.static.GetPlatform() )
{
case PLATFORM_PC_DX10:
WidgetBinding.WidgetName = 'optionsGraphicsMenu';
WidgetBinding.WidgetClass = class'KFGFxOptionsMenu_Graphics_DX10';
WidgetBindings.AddItem(WidgetBinding);
break;
default:
WidgetBinding.WidgetName = 'optionsGraphicsMenu';
WidgetBinding.WidgetClass = class'KFGFxOptionsMenu_Graphics';
WidgetBindings.AddItem(WidgetBinding);
}
if (!bSkippedLobby)
{
LoadWidgets(WidgetPaths);
OpenMenu(UI_Start);
AllowCloseMenu();
}
// do this stuff in case CheckSkipLobby failed
if( bForceSkipLobby )
{
bAfterLobby = true;
CloseMenus(true);
}
}
function OpenMenu( byte NewMenuIndex, optional bool bShowWidgets = true )
{
local KF2GUIController GUIController;
GUIController = class'KF2GUIController'.Static.GetGUIController(GetPC());
Super.OpenMenu(NewMenuIndex, bShowWidgets);
if( bAfterLobby )
return;
if( NewMenuIndex == UI_Perks )
{
PerksPage = GUIController.OpenMenu(class'ExtGUI_PerkSelectionPage');
SetMovieCanReceiveInput(false);
PerksMenu.ActionScriptVoid("closeContainer");
}
else GUIController.CloseMenu(class'ExtGUI_PerkSelectionPage');
}
function CloseMenus(optional bool bForceClose=false)
{
local KF2GUIController GUIController;
if( PerksPage != None )
{
GUIController = class'KF2GUIController'.Static.GetGUIController(GetPC());
GUIController.CloseMenu(class'ExtGUI_PerkSelectionPage');
}
Super.CloseMenus(bForceClose);
}
function OnMenuOpen( name WidgetPath, KFGFxObject_Menu Widget )
{
Super.OnMenuOpen(WidgetPath, Widget);
if( !bAfterLobby && Widget == PerksMenu )
PerksMenu.ActionScriptVoid("closeContainer");
}
2017-10-20 02:00:49 +00:00
defaultproperties
{
InGamePartyWidgetClass=class'ExtWidget_PartyInGame'
WidgetPaths.Remove("../UI_Widgets/PartyWidget_SWF.swf")
WidgetPaths.Add("../UI_Widgets/VersusLobbyWidget_SWF.swf")
2017-10-20 02:00:49 +00:00
WidgetBindings.Remove((WidgetName="PerksMenu",WidgetClass=class'KFGFxMenu_Perks'))
WidgetBindings.Add((WidgetName="PerksMenu",WidgetClass=class'ExtMenu_Perks'))
WidgetBindings.Remove((WidgetName="gearMenu",WidgetClass=class'KFGFxMenu_Gear'))
WidgetBindings.Add((WidgetName="gearMenu",WidgetClass=class'ExtMenu_Gear'))
WidgetBindings.Remove((WidgetName="traderMenu",WidgetClass=class'KFGFxMenu_Trader'))
WidgetBindings.Add((WidgetName="traderMenu",WidgetClass=class'ExtMenu_Trader'))
//WidgetBindings.Remove((WidgetName="inventoryMenu",WidgetClass=class'KFGFxMenu_Inventory'))
//WidgetBindings.Add((WidgetName="inventoryMenu",WidgetClass=class'ExtMenu_Inventory'))
2017-10-20 02:00:49 +00:00
}