comparison CShow.h @ 0:8b8875f5b359

Initial commit
author Nomad
date Fri, 05 Oct 2012 16:07:14 +0200
parents
children 2ca04ccb612a
comparison
equal deleted inserted replaced
-1:000000000000 0:8b8875f5b359
1 #pragma once
2 #include "VideoPlayer.h"
3 #include "Mouse.h"
4
5
6
7 /* 302 */
8 enum MovieType
9 {
10 MOVIE_Invalid = 0x0,
11 MOVIE_3DOLogo = 0x1,
12 MOVIE_NWCLogo = 0x2,
13 MOVIE_JVC = 0x3,
14 MOVIE_Intro = 0x4,
15 MOVIE_Emerald = 0x5,
16 MOVIE_Death = 0x6,
17 MOVIE_Outro = 0x7,
18 };
19
20
21 #pragma pack(push, 1)
22 struct CShow
23 {
24 //----- (004A9507) --------------------------------------------------------
25 CShow() {}
26
27 //----- (004A9510) --------------------------------------------------------
28 virtual ~CShow() {}
29
30
31 //----- (004A952D) --------------------------------------------------------
32 void CShow::PlayMovie(MovieType eVideo, bool bShowMouseAfterPlayback)
33 {
34 int v3; // edx@5
35 const char *v4; // ecx@5
36 std::string v5; // [sp-18h] [bp-24h]@4
37 signed int v6; // [sp-Ch] [bp-18h]@10
38 int v7; // [sp-8h] [bp-14h]@4
39 int v8; // [sp-4h] [bp-10h]@4
40 char v9; // [sp+0h] [bp-Ch]@14
41 char v10; // [sp+4h] [bp-8h]@4
42 int a3; // [sp+Bh] [bp-1h]@14
43
44 if ( pAsyncMouse )
45 pAsyncMouse->Suspend();
46 switch ( eVideo )
47 {
48 case MOVIE_Invalid:
49 MessageBoxW(nullptr, L"No movie", L"E:\\WORK\\MSDEV\\MM7\\MM7\\Code\\Show.cpp:40", 0);
50 break;
51 case MOVIE_3DOLogo:
52 v8 = 1;
53 v7 = 0;
54 v3 = 0;
55 v4 = "3dologo";
56 goto LABEL_13;
57 case MOVIE_NWCLogo:
58 v8 = 1;
59 v7 = 1;
60 v3 = 0;
61 v4 = "new world logo";
62 goto LABEL_13;
63 case MOVIE_JVC:
64 v8 = 1;
65 v7 = 1;
66 v3 = 0;
67 v4 = "jvc";
68 goto LABEL_13;
69 case MOVIE_Emerald:
70 v8 = 1;
71 v7 = 1;
72 v3 = 0;
73 v4 = "Intro";
74 goto LABEL_13;
75 case MOVIE_Intro:
76 v8 = 1;
77 v7 = 1;
78 v3 = 0;
79 v4 = "Intro Post";
80 goto LABEL_13;
81 case MOVIE_Death:
82 v8 = 1;
83 v7 = 1;
84 v6 = 2;
85 v4 = "losegame";
86 goto LABEL_12;
87 case MOVIE_Outro:
88 v8 = 1;
89 v7 = 1;
90 v6 = 20;
91 v4 = "end_seq1";
92 LABEL_12:
93 v3 = v6;
94 LABEL_13:
95 VideoPlayer::MovieLoop(v4, v3, v7, v8);
96 break;
97 default:
98 MessageBoxW(nullptr, L"Invalid movie requested in CShow::Run()", L"E:\\WORK\\MSDEV\\MM7\\MM7\\Code\\Show.cpp:72", 0);
99 break;
100 }
101 if ( bShowMouseAfterPlayback )
102 {
103 if ( pAsyncMouse )
104 pAsyncMouse->Resume();
105 }
106 }
107
108
109 void (__thiscall ***vdestructor_ptr)(CShow *, bool);
110 };
111 #pragma pack(pop)