1 | static HINSTANCE hinst; // The instance handle of our application |
2 | static RECT wndRect; // A rectangle object for the window's client area |
3 | static HWND hwndApp; // The handle of the application window |
4 | static LPDIRECTDRAW lpdd; // Pointer to DirectDraw object |
5 | static LPDIRECTDRAWSURFACE lpFrontBuffer; // Pointer to front buffer |
6 | static LPDIRECTDRAWSURFACE lpBackBuffer; // Pointer to back buffer |
7 | static LPGUID lpServiceProviderGuid; // Pointer to GUID of the service provider |
8 | static LPDIRECTPLAY lpDirectPlay1; // Pointer for the DirectPlay Object |
9 | static DPID playerID; // To store the player ID |
10 | static BOOL joinSession; // Join a session(TRUE) or create a new one(FALSE) |
11 | // Function declarations for forward references |
12 | static BOOL WinInit( HINSTANCE hInst, int nCmdShow ); //Initialize & set up Windows |
13 | static BOOL DXInit(void); //Initialize & set up DirectX components |
14 | static void UpdateFrame(char* direction); |
15 | static void CleanUp(); |
16 | // Called by DirectX when enumerating service providers |
17 | static BOOL FAR PASCAL DirectPlayEnumerateCallback( |
18 | LPGUID lpSPGuid, |
19 | LPTSTR lpszSPName, |
20 | DWORD dwMajorVersion, |
21 | DWORD dwMinorVersion, |
22 | LPVOID lpContext |
23 | ); |
24 | // Called by DirectPlay when enumerating sessions |
25 | static BOOL FAR PASCAL EnumSessionsCallback( |
26 | LPDPSESSIONDESC lpSessionDesc, |
27 | LPVOID lpContext, |
28 | LPDWORD lpdwTimeOut, |
29 | DWORD dwFlags |
30 | ); |
31 | //Helper functions |
32 | static HRESULT CreateDirectPlayInterface(); |
33 | static HRESULT FindSession(); |
34 | static HRESULT OpenSession(); |
35 | static HRESULT MakePlayer(); |
36 | Variable & |
37 | Function |
38 | Declarations |