annotate Game.h @ 582:88dd54e6e44a

Слияние
author Ritor1
date Wed, 06 Mar 2013 16:51:39 +0600
parents 7c0763248a87
children 96f48cfdd657
rev   line source
0
Ritor1
parents:
diff changeset
1 #pragma once
Ritor1
parents:
diff changeset
2 #include "LightmapBuilder.h"
Ritor1
parents:
diff changeset
3 #include "DecalBuilder.h"
Ritor1
parents:
diff changeset
4 #include "ParticleEngine.h"
Ritor1
parents:
diff changeset
5 #include "Vis.h"
Ritor1
parents:
diff changeset
6 #include "Mouse.h"
Ritor1
parents:
diff changeset
7 #include "Keyboard.h"
Ritor1
parents:
diff changeset
8 #include "IndoorCameraD3D.h"
Ritor1
parents:
diff changeset
9 #include "CShow.h"
Ritor1
parents:
diff changeset
10 #include "GammaControl.h"
Ritor1
parents:
diff changeset
11 #include "stru6.h"
Ritor1
parents:
diff changeset
12 #include "stru9.h"
Ritor1
parents:
diff changeset
13 #include "stru10.h"
Ritor1
parents:
diff changeset
14 #include "stru11.h"
Ritor1
parents:
diff changeset
15 #include "stru12.h"
Ritor1
parents:
diff changeset
16
Ritor1
parents:
diff changeset
17
Ritor1
parents:
diff changeset
18
573
Nomad
parents: 522
diff changeset
19 #define GAME_FLAGS_2_DRAW_BLOODSPLATS 0x20
Nomad
parents: 522
diff changeset
20
0
Ritor1
parents:
diff changeset
21
Ritor1
parents:
diff changeset
22
Ritor1
parents:
diff changeset
23 /* 320 */
Ritor1
parents:
diff changeset
24 enum GAME_STATE
Ritor1
parents:
diff changeset
25 {
Ritor1
parents:
diff changeset
26 GAME_STATE_0 = 0x0,
Ritor1
parents:
diff changeset
27 GAME_FINISHED = 0x1,
Ritor1
parents:
diff changeset
28 GAME_STATE_2 = 0x2,
Ritor1
parents:
diff changeset
29 GAME_STATE_3 = 0x3,
101
2fb33d31ca0d 8.02.13
Ritor1
parents: 0
diff changeset
30 GAME_STATE_NEWGAME_OUT_GAMEMENU = 0x4,
0
Ritor1
parents:
diff changeset
31 GAME_STATE_5 = 0x5,
Ritor1
parents:
diff changeset
32 GAME_STATE_6 = 0x6,
Ritor1
parents:
diff changeset
33 GAME_STATE_7 = 0x7,
Ritor1
parents:
diff changeset
34 GAME_STATE_8 = 0x8,
Ritor1
parents:
diff changeset
35 GAME_STATE_FINAL_WINDOW = 0x9,
Ritor1
parents:
diff changeset
36 GAME_STATE_A = 0xA
Ritor1
parents:
diff changeset
37 };
Ritor1
parents:
diff changeset
38
Ritor1
parents:
diff changeset
39
Ritor1
parents:
diff changeset
40
Ritor1
parents:
diff changeset
41 /* 105 */
Ritor1
parents:
diff changeset
42 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
43 struct Game__StationaryLight
Ritor1
parents:
diff changeset
44 {
Ritor1
parents:
diff changeset
45 Vec3_float_ vPosition;
Ritor1
parents:
diff changeset
46 Vec3_float_ vRGBColor;
Ritor1
parents:
diff changeset
47 float flt_18;
Ritor1
parents:
diff changeset
48 };
Ritor1
parents:
diff changeset
49 #pragma pack(pop)
Ritor1
parents:
diff changeset
50
Ritor1
parents:
diff changeset
51
Ritor1
parents:
diff changeset
52 /* 108 */
Ritor1
parents:
diff changeset
53 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
54 struct Game_stru0
Ritor1
parents:
diff changeset
55 {
Ritor1
parents:
diff changeset
56 int field_0;
Ritor1
parents:
diff changeset
57 unsigned __int8 *ptr_4;
Ritor1
parents:
diff changeset
58 int field_8;
Ritor1
parents:
diff changeset
59 int field_C;
Ritor1
parents:
diff changeset
60 };
Ritor1
parents:
diff changeset
61 #pragma pack(pop)
Ritor1
parents:
diff changeset
62
Ritor1
parents:
diff changeset
63
Ritor1
parents:
diff changeset
64 /* 279 */
Ritor1
parents:
diff changeset
65 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
66 //Game_stru1
Ritor1
parents:
diff changeset
67 struct Game_Bloodsplat
Ritor1
parents:
diff changeset
68 {
Ritor1
parents:
diff changeset
69 float x;
Ritor1
parents:
diff changeset
70 float y;
Ritor1
parents:
diff changeset
71 float z;
Ritor1
parents:
diff changeset
72 float r;
Ritor1
parents:
diff changeset
73 float g;
Ritor1
parents:
diff changeset
74 float b;
Ritor1
parents:
diff changeset
75 float radius;
Ritor1
parents:
diff changeset
76 };
Ritor1
parents:
diff changeset
77 #pragma pack(pop)
Ritor1
parents:
diff changeset
78
Ritor1
parents:
diff changeset
79 /* 104 */
Ritor1
parents:
diff changeset
80 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
81 struct Game
Ritor1
parents:
diff changeset
82 {
Ritor1
parents:
diff changeset
83 static Game *Create();
Ritor1
parents:
diff changeset
84 static void Destroy();
Ritor1
parents:
diff changeset
85
Ritor1
parents:
diff changeset
86 protected: Game();
522
61343380715b Origianl structures integrity test added
Nomad
parents: 194
diff changeset
87 protected: virtual ~Game();
0
Ritor1
parents:
diff changeset
88
Ritor1
parents:
diff changeset
89 public:
Ritor1
parents:
diff changeset
90 void _44E904();
Ritor1
parents:
diff changeset
91 bool InitializeGammaController();
194
650d96af8855 Vis overhaul; sprites can be picked by mouse
Nomad
parents: 101
diff changeset
92 bool PickMouse(float fPickDepth, unsigned int uMouseX, unsigned int uMouseY, bool bOutline, struct Vis_SelectionFilter *sprite_filter, struct Vis_SelectionFilter *face_filter);
650d96af8855 Vis overhaul; sprites can be picked by mouse
Nomad
parents: 101
diff changeset
93 bool PickKeyboard(bool bOutline, struct Vis_SelectionFilter *sprite_filter, struct Vis_SelectionFilter *face_filter);
0
Ritor1
parents:
diff changeset
94 void OutlineSelection();
Ritor1
parents:
diff changeset
95 signed int _44EC23(struct stru148 *a2, int *a3, signed int a4);
Ritor1
parents:
diff changeset
96 signed int _44ED0A(struct BLVFace *a2, int *a3, signed int a4);
Ritor1
parents:
diff changeset
97 bool AlterGamma(struct BLVFace *pFace, unsigned int *pColor);
Ritor1
parents:
diff changeset
98 bool _44EE30(struct ODMFace *a2, int a3);
Ritor1
parents:
diff changeset
99 bool draw_debug_outlines();
Ritor1
parents:
diff changeset
100 bool _44EEA7();
Ritor1
parents:
diff changeset
101 bool _44F07B();
Ritor1
parents:
diff changeset
102 void ToggleFlags(unsigned int uMask);
Ritor1
parents:
diff changeset
103 void ToggleFlags2(unsigned int uFlag);
Ritor1
parents:
diff changeset
104 void _44F0FD();
Ritor1
parents:
diff changeset
105 void PushStationaryLights(int a2);
Ritor1
parents:
diff changeset
106 void PrepareBloodsplats();
Ritor1
parents:
diff changeset
107 void Deinitialize();
Ritor1
parents:
diff changeset
108 void Loop();
Ritor1
parents:
diff changeset
109 void DrawParticles();
Ritor1
parents:
diff changeset
110 void Draw();
Ritor1
parents:
diff changeset
111
Ritor1
parents:
diff changeset
112 //----- (0042EB6A) --------------------------------------------------------
Ritor1
parents:
diff changeset
113 struct stru6 *GetStru6() {return this->pStru6Instance;}
Ritor1
parents:
diff changeset
114 //----- (0042EB71) --------------------------------------------------------
Ritor1
parents:
diff changeset
115 struct IndoorCameraD3D *GetIndoorCamera() {return this->pIndoorCameraD3D;}
Ritor1
parents:
diff changeset
116
Ritor1
parents:
diff changeset
117
522
61343380715b Origianl structures integrity test added
Nomad
parents: 194
diff changeset
118 //void (__thiscall ***vdestructor_ptr)(Game *, bool);
0
Ritor1
parents:
diff changeset
119 Game__StationaryLight pStationaryLights[25];
Ritor1
parents:
diff changeset
120 char field_2C0[1092];
Ritor1
parents:
diff changeset
121 unsigned int uNumStationaryLights;
Ritor1
parents:
diff changeset
122 Game_Bloodsplat pBloodsplats[20];
Ritor1
parents:
diff changeset
123 int field_938;
Ritor1
parents:
diff changeset
124 int field_93C;
Ritor1
parents:
diff changeset
125 int field_940;
Ritor1
parents:
diff changeset
126 int field_944;
Ritor1
parents:
diff changeset
127 int field_948;
Ritor1
parents:
diff changeset
128 int field_94C;
Ritor1
parents:
diff changeset
129 int field_950;
Ritor1
parents:
diff changeset
130 int field_954;
Ritor1
parents:
diff changeset
131 int field_958;
Ritor1
parents:
diff changeset
132 int field_95C;
Ritor1
parents:
diff changeset
133 int field_960;
Ritor1
parents:
diff changeset
134 int field_964;
Ritor1
parents:
diff changeset
135 int field_968;
Ritor1
parents:
diff changeset
136 int field_96C;
Ritor1
parents:
diff changeset
137 int field_970;
Ritor1
parents:
diff changeset
138 Mouse *pMouse;
Ritor1
parents:
diff changeset
139 int field_978;
Ritor1
parents:
diff changeset
140 Game_stru0 stru_97C;
Ritor1
parents:
diff changeset
141 char field_98C[1148];
Ritor1
parents:
diff changeset
142 int uNumBloodsplats;
Ritor1
parents:
diff changeset
143 int field_E0C;
Ritor1
parents:
diff changeset
144 __int64 field_E10;
Ritor1
parents:
diff changeset
145 int uNumStationaryLights_in_pStationaryLightsStack;
Ritor1
parents:
diff changeset
146 unsigned int bGammaControlInitialized;
Ritor1
parents:
diff changeset
147 unsigned int uFlags;
Ritor1
parents:
diff changeset
148 unsigned int uFlags2;
Ritor1
parents:
diff changeset
149 float fSaturation;
Ritor1
parents:
diff changeset
150 unsigned __int64 uSomeGammaStartTime;
Ritor1
parents:
diff changeset
151 __int64 uSomeGammaDeltaTime;
Ritor1
parents:
diff changeset
152 ThreadWard *pThreadWardInstance;
Ritor1
parents:
diff changeset
153 ParticleEngine *pParticleEngine;
Ritor1
parents:
diff changeset
154 Mouse *pMouseInstance;
Ritor1
parents:
diff changeset
155 LightmapBuilder *pLightmapBuilder;
Ritor1
parents:
diff changeset
156 Vis *pVisInstance;
Ritor1
parents:
diff changeset
157 stru6 *pStru6Instance;
Ritor1
parents:
diff changeset
158 IndoorCameraD3D *pIndoorCameraD3D;
Ritor1
parents:
diff changeset
159 stru9 *pStru9Instance;
Ritor1
parents:
diff changeset
160 stru10 *pStru10Instance;
Ritor1
parents:
diff changeset
161 stru11 *pStru11Instance;
Ritor1
parents:
diff changeset
162 stru12 *pStru12Instance;
Ritor1
parents:
diff changeset
163 CShow *pCShow;
Ritor1
parents:
diff changeset
164 Keyboard *pKeyboardInstance;
Ritor1
parents:
diff changeset
165 GammaController *pGammaController;
Ritor1
parents:
diff changeset
166 int field_E74;
Ritor1
parents:
diff changeset
167 };
Ritor1
parents:
diff changeset
168 #pragma pack(pop)
Ritor1
parents:
diff changeset
169
Ritor1
parents:
diff changeset
170
Ritor1
parents:
diff changeset
171
Ritor1
parents:
diff changeset
172
Ritor1
parents:
diff changeset
173
Ritor1
parents:
diff changeset
174
Ritor1
parents:
diff changeset
175 extern Game *pGame;