view Game.h @ 2:2ca04ccb612a

NoCD, main menu, various
author Nomad
date Wed, 10 Oct 2012 14:21:15 +0200
parents 8b8875f5b359
children 540178ef9b18
line wrap: on
line source

#pragma once
#include "LightmapBuilder.h"
#include "DecalBuilder.h"
#include "ParticleEngine.h"
#include "Vis.h"
#include "Mouse.h"
#include "Keyboard.h"
#include "IndoorCameraD3D.h"
#include "CShow.h"
#include "GammaControl.h"
#include "stru6.h"
#include "stru9.h"
#include "stru10.h"
#include "stru11.h"
#include "stru12.h"





/*  320 */
enum GAME_STATE
{
  GAME_STATE_0 = 0x0,
  GAME_STATE_1 = 0x1,
  GAME_STATE_2 = 0x2,
  GAME_STATE_3 = 0x3,
  GAME_STATE_4 = 0x4,
  GAME_STATE_5 = 0x5,
  GAME_STATE_6 = 0x6,
  GAME_STATE_7 = 0x7,
  GAME_STATE_8 = 0x8,
  GAME_STATE_FINAL_WINDOW = 0x9,
  GAME_STATE_A = 0xA
};



/*  105 */
#pragma pack(push, 1)
struct Game__StationaryLight
{
  Vec3_float_ vPosition;
  Vec3_float_ vRGBColor;
  float flt_18;
};
#pragma pack(pop)


/*  108 */
#pragma pack(push, 1)
struct Game_stru0
{
  int field_0;
  unsigned __int8 *ptr_4;
  int field_8;
  int field_C;
};
#pragma pack(pop)


/*  279 */
#pragma pack(push, 1)
struct Game_stru1
{
  float flt_0;
  float flt_4;
  float flt_8;
  float flt_C;
  float flt_10;
  float flt_14;
  float flt_18;
};
#pragma pack(pop)

/*  104 */
#pragma pack(push, 1)
struct Game
{
  static Game *Create();
  static void  Destroy();

protected: Game();
protected: ~Game();

public:
  void _44E904();
  bool InitializeGammaController();
  char PickMouse(float fPickDepth, unsigned int uMouseX, unsigned int uMouseY, bool bOutline, struct stru157 *a5, struct stru157 *a6);
  bool _44EB12(bool bOutline, struct stru157 *a3, struct stru157 *a4);
  void OutlineSelection();
  signed int _44EC23(struct stru148 *a2, int *a3, signed int a4);
  signed int _44ED0A(struct BLVFace *a2, int *a3, signed int a4);
  bool _44EDE4(struct BLVFace *pFace, int *a3);
  bool _44EE30(struct ODMFace *a2, int a3);
  bool draw_debug_outlines();
  bool _44EEA7();
  bool _44F07B();
  void ToggleFlags(unsigned int uMask);
  void ToggleFlags2(unsigned int uFlag);
  void _44F0FD();
  void PushStationaryLights(int a2);
  void PushStru165s();
  void Deinitialize();
  void Loop();
  void DrawParticles();
  void Draw();

  //----- (0042EB6A) --------------------------------------------------------
  struct stru6 *GetStru6() {return this->pStru6Instance;}
  //----- (0042EB71) --------------------------------------------------------
  struct IndoorCameraD3D *GetIndoorCamera() {return this->pIndoorCameraD3D;}


  void (__thiscall ***vdestructor_ptr)(Game *, bool);
  Game__StationaryLight pStationaryLights[25];
  char field_2C0[1092];
  unsigned int uNumStationaryLights;
  Game_stru1 array_708[20];
  int field_938;
  int field_93C;
  int field_940;
  int field_944;
  int field_948;
  int field_94C;
  int field_950;
  int field_954;
  int field_958;
  int field_95C;
  int field_960;
  int field_964;
  int field_968;
  int field_96C;
  int field_970;
  Mouse *pMouse;
  int field_978;
  Game_stru0 stru_97C;
  char field_98C[1148];
  int array_708_size;
  int field_E0C;
  __int64 field_E10;
  int uNumStationaryLights_in_pStationaryLightsStack;
  unsigned int bGammaControlInitialized;
  unsigned int uFlags;
  unsigned int uFlags2;
  float _E28_timed_gamma_strength;
  unsigned __int64 uSomeGammaStartTime;
  __int64 uSomeGammaDeltaTime;
  ThreadWard *pThreadWardInstance;
  ParticleEngine *pParticleEngine;
  Mouse *pMouseInstance;
  LightmapBuilder *pLightmapBuilder;
  Vis *pVisInstance;
  stru6 *pStru6Instance;
  IndoorCameraD3D *pIndoorCameraD3D;
  stru9 *pStru9Instance;
  stru10 *pStru10Instance;
  stru11 *pStru11Instance;
  stru12 *pStru12Instance;
  CShow *pCShow;
  Keyboard *pKeyboardInstance;
  GammaController *pGammaController;
  int field_E74;
};
#pragma pack(pop)






extern Game *pGame;