Files
GTASource/game/scene/scene.h
expvintl 419f2e4752 init
2025-02-23 17:40:52 +08:00

66 lines
1.5 KiB
C++

/////////////////////////////////////////////////////////////////////////////////
// Title : Scene.h
// Author(s): Adam Fowler
//
// description: class containing all scene information
/////////////////////////////////////////////////////////////////////////////////
#ifndef INC_SCENE_H_
#define INC_SCENE_H_
// rage includes
#include "fwscene/scene.h" // For fwSceneInterface.
#include "atl/hashstring.h"
// game includes
#include "control/leveldata.h"
namespace rage {
class bkBank;
class grcViewport;
}
class CRenderPhaseScanned;
class CScene
{
public:
static void Init (unsigned initMode);
static void Shutdown (unsigned shutdownMode);
static void LoadMap (const char* pName);
static void LoadMap (s32 levelNumber); // level number starts at 1
static atHashString GetCurrentLevelNameHash();
static void Update ();
static void SetupRender (s32 list, u32 renderFlags, const grcViewport &viewport, CRenderPhaseScanned *renderPhaseNew);
static CLevelData& GetLevelsData() { return m_levelData; }
#if __BANK
static void InitWidgets();
static void AddWidgets();
static void ShutdownWidgets();
static bkBank* ms_pBank;
#endif //__BANK
static void TidyReferences();
static const char* GetLevelName (s32 levelNumber);
private:
static CLevelData m_levelData;
static int m_currentLevelIndex;
};
class CGtaSceneInterface : public fwSceneInterface
{
public:
void InitPools();
void ShutdownPools();
};
#endif // INC_SCENE_H_