code used in LoginQueBase class (part when it crashes):
m_DynamicLoadingScreens.Set( "Chernarus", "Loading_Generic/gui/data/video/Loadingscreen_Chernarus.mp4" );
m_DynamicLoadingScreens.Set( "Livonia", "Loading_Generic/gui/data/video/Loadingscreen_Livonia.mp4" );
m_DynamicLoadingScreens.Set( "Namalsk", "Loading_Generic/gui/data/video/Loadingscreen_Namalsk.mp4" );
m_DynamicLoadingScreens.Set( "Alteria", "Loading_Generic/gui/data/video/Loadingscreen_Alteria.mp4" );
m_DynamicLoadingScreens.Set( "DeerIsle", "Loading_Generic/gui/data/video/Loadingscreen_DeerIsle.mp4" );
//-------------------------------------------------------------------------------------------//
m_Video.Set( "Chernarus", "Loadingscreen_Chernarus.mp4" );
m_Video.Set( "Livonia", "Loadingscreen_Livonia.mp4" );
m_Video.Set( "Namalsk", "Loadingscreen_Namalsk.mp4" );
m_Video.Set( "Alteria", "Loadingscreen_Alteria.mp4" );
m_Video.Set( "DeerIsle", "Loadingscreen_DeerIsle.mp4" );
//------------------------------------------------------//
Widget Init
//------------------------------------------------------//
override Widget Init()
{
layoutRoot = GetGame().GetWorkspace().CreateWidgets("Loading_Generic/gui/layouts/dialog_queue_positionVanillaChanged.layout");
m_DayZGame = DayZGame.Cast(GetGame());
Widget oldInput = layoutRoot.FindAnyWidget( "TextInputDialog" );
oldInput.Unlink();
layoutRoot.Update();
Widget newInput = GetGame().GetWorkspace().CreateWidgets( "Loading_Generic/gui/layouts/queue_dialog_input.layout", layoutRoot );
layoutRoot.Update();
m_txtPosition = TextWidget.Cast( layoutRoot.FindAnyWidget( "txtPosition" ) );
m_txtNote = TextWidget.Cast( layoutRoot.FindAnyWidget( "txtNote" ) );
m_btnLeave = ButtonWidget.Cast( newInput.FindAnyWidget( "btnLeave" ) );
m_Priority = ButtonWidget.Cast( newInput.FindAnyWidget( "prioritybtn" ) );
m_Discord = ButtonWidget.Cast( newInput.FindAnyWidget( "discordbtn" ) );
m_HintPanel = new UiHintPanelLoading(layoutRoot.FindAnyWidget("hint_frame0"));
m_txtNote.Show( true );
layoutRoot.FindAnyWidget("notification_root").Show(false);
string hostname = g_Game.GetHostName();
if(m_DayZGame.GetCLSProfileVal( ECLSProfileOptions.SCREEN ) == 1) // <----- Checking if Custom Loading Option is Enabled
{
string lscreen = m_LoadingScreens.Get( "Default" );
string dynamic_screen;
string video_name;
if ( hostname != "" )
{
array<string> keys = m_LoadingScreens.GetKeyArray();
foreach ( string k : keys )
{
if ( hostname.Contains( k ) )
{
lscreen = m_LoadingScreens.Get( k );
dynamic_screen = m_DynamicLoadingScreens.Get( k );
video_name = m_Video.Get ( k );
break;
}
}
}
if (FileExist("$profile:" + video_name))
{
Print("Video Check");
}
else
{
Print("File do not exist, copying file...");
CopyFile(dynamic_screen, "$saves:" + video_name);
}
}
else {
lscreen = m_LoadingScreens.Get( "Vanilla" );
}
ImageWidget background = ImageWidget.Cast( layoutRoot.FindAnyWidget( "Background" ) );
background.LoadImageFile( 0, lscreen );
VideoWidget video = VideoWidget.Cast( layoutRoot.FindAnyWidget( "Video" ) );
video.Load( "$saves:"+video_name, true ); // ("Path to video", bool loop)
video.Play();
return layoutRoot;
}
{F4156437}
{F4156436}