i don't get it, isn't it like:
main menu
load
play trailer
continue game
?
if you want a loading bar, usually it's done like this:
you must know the number of the things you want to load, and keep track of the current thing you're loading, and in a loop (which a dbSync), you will stretch a sprite to fit the border it's in, the sprite will be the loading bar, you will stretch it using this formula: (curThingIndex / totalThingsCount) * totalBarWidth, the height remains constant, and you will load 1 thing every loop and increase the current thing index by 1
for the video to play after loading, you could use this:
#include <windows.h>
#include <vfw.h>
#pragma comment ( lib, "winmm.lib" )
#pragma comment ( lib, "vfw32.lib" )
HWND MCIWnd; // MCIWnd window handle
void PlayVideo ( HWND hwnd_ParentWindow, LPSTR lpstr, int OriginX, int OriginY, int Width, int Height, UINT* length )
{
MCIWnd = MCIWndCreate ( hwnd_ParentWindow, GetModuleHandle(NULL),
WS_CHILD | WS_VISIBLE | MCIWNDF_NOTIFYMODE | MCIWNDF_NOPLAYBAR, NULL );
MCIWndOpen ( MCIWnd, lpstr, NULL ); // new device in window
SetWindowPos ( MCIWnd, HWND_TOPMOST, OriginX, OriginY, Width, Height, SWP_NOMOVE | SWP_NOZORDER | SWP_NOACTIVATE );
MCIWndPlay ( MCIWnd ); // plays device
if ( length )
*length = MCIWndGetLength ( MCIWnd );
}
and to play the video:
UINT vidLength = 0;
PlayVideo ( g_pGlob->hWnd, "videoFileName", 0, 0, width, height, &vidLength );
dbWait ( vidLength );
DestroyWindow ( MCIWnd );