#include <ARootTask.h>
Definition at line 8 of file ARootTask.h.
◆ BaseClass
◆ ThisClass
◆ ARootTask()
Definition at line 44 of file ARootTask.cpp.
45{
47
51 m_bStopRenderingScene =
TFALSE;
52 m_bGameSystemCreated =
TFALSE;
53 m_pOptions = AOptions::CreateSingleton();
55
57
58 m_pGUISystem = pScheduler->
CreateTask<AGUISystem>( this );
59 m_pGUI2 = pScheduler->CreateTask<AGUI2>( this );
60 m_pRenderer = pScheduler->CreateTask<ARenderer>( this );
61 m_pInputHandler = pScheduler->CreateTask<AInputHandler>( this );
62 m_pGameStateController = pScheduler->CreateTask<AGameStateController>( this );
63 m_pSoundManager = pScheduler->CreateTask<ASoundManager>( this );
64 m_pMoviePlayer = pScheduler->CreateTask<ABINKMoviePlayer>( this );
65 m_bGameSystemCreated =
TFALSE;
66}
TSystemManager g_oSystemManager
TTask * CreateTask(TClass *a_pClass, TTask *a_pParent=nullptr)
TScheduler * GetScheduler() const
static void CreatePool(POOL a_ePool)
◆ CreateStartupGameStates()
void ARootTask::CreateStartupGameStates |
( |
| ) |
|
Definition at line 207 of file ARootTask.cpp.
208{
210
212 auto bluetongueMovie =
new AMovieState(
"BTE",
TFALSE, attractMovie,
TFALSE );
213 auto thqMovie =
new AMovieState(
"THQ",
TFALSE, bluetongueMovie,
TFALSE );
214 auto nickmovsMovie =
new AMovieState(
"NickMovs",
TFALSE, thqMovie,
TFALSE );
215
216 AGUISlideshow::Params slideshowSettings = {
217 .iUnk1 = 0,
218 .bSlideSkippable =
TTRUE,
220 .bInstaSkippable =
TFALSE,
222 .bHasFadeOut =
TTRUE,
225 .fDuration = 2.0f,
226 .fFadeInTime = 1.0f,
227 .fFadeOutTime = 0.5f,
228 .fUnk5 = -1.0f,
229 };
230
231 auto fmodSlide =
new ASlideshowState( slideshowSettings, nickmovsMovie,
TFALSE );
232 fmodSlide->AddSlide(
TPS8( bkg_fmod ) );
233
234 auto binkSlide =
new ASlideshowState( slideshowSettings, fmodSlide,
TFALSE );
235 binkSlide->AddSlide(
TPS8( bkg_Bink_Big ) );
236
238 auto legalSlide =
new ASlideshowState( slideshowSettings, binkSlide,
TTRUE );
239 legalSlide->AddSlide(
TPS8( bkg_by_legal1 ) );
240
241 AGameStateController::GetSingleton()->PushState( legalSlide );
242
243 m_bStartedGame =
TTRUE;
244}
◆ CreateTObject()
Toshi::TObject * ARootTask::CreateTObject |
( |
| ) |
|
|
static |
◆ CreateTObjectInPlace()
Toshi::TObject * ARootTask::CreateTObjectInPlace |
( |
void * | a_pPtr | ) |
|
|
static |
◆ DeinitialiseClass()
void ARootTask::DeinitialiseClass |
( |
| ) |
|
|
static |
◆ GetClass()
Toshi::TClass * ARootTask::GetClass |
( |
| ) |
|
|
overridevirtual |
◆ GetClassStatic()
static TFORCEINLINE Toshi::TClass * ARootTask::GetClassStatic |
( |
| ) |
|
|
inlinestatic |
◆ InitialiseClass()
void ARootTask::InitialiseClass |
( |
| ) |
|
|
static |
◆ IsGameSystemCreated()
TBOOL ARootTask::IsGameSystemCreated |
( |
| ) |
const |
|
inline |
Definition at line 27 of file ARootTask.h.
27{ return m_bGameSystemCreated; }
◆ IsPaused()
TBOOL ARootTask::IsPaused |
( |
| ) |
const |
◆ IsRenderWorld()
TBOOL ARootTask::IsRenderWorld |
( |
| ) |
|
|
inline |
Definition at line 30 of file ARootTask.h.
30{ return m_bRenderWorld; }
◆ LoadStartupData()
void ARootTask::LoadStartupData |
( |
| ) |
|
Definition at line 246 of file ARootTask.cpp.
247{
248 TString8 startupLibPath;
249 startupLibPath.
Format(
"Data/%s.trb",
"lib_startup" );
250
251 TTRB trb;
252 trb.
Load( startupLibPath );
253
254 auto properties = PBProperties::LoadFromTRB( trb );
255 auto matlibProperty = properties->GetProperty( "matlib" );
256
257 if ( matlibProperty )
258 {
259 AMaterialLibraryManager::GetSingleton()->LoadLibrariesFromProperties(
260 matlibProperty,
263 );
264 }
265
267
268 if ( m_pGUI2 && !m_pGUI2->Create() )
269 {
271 }
272
273 if ( m_pGUISystem && !m_pGUISystem->Create() )
274 {
275 m_pGUISystem =
TNULL;
276 }
277
281
283}
ERROR Load(const TCHAR *a_szFilePath, TUINT32 a_uiUnknown=0)
void FlushDyingResources()
static TFORCEINLINE TRenderInterface * GetSingleton()
TString8 & Format(const TCHAR *a_pcFormat,...)
static Toshi::TTRB * GetAssetTRB(AAssetType a_eAssetType)
static void UpdateMaterials()
◆ OnActivate()
void ARootTask::OnActivate |
( |
| ) |
|
|
overridevirtual |
Definition at line 175 of file ARootTask.cpp.
176{
177 if ( m_pGUISystem ) m_pGUISystem->Activate(
TTRUE );
178 if ( m_pGUI2 ) m_pGUI2->Activate(
TTRUE );
179 if ( m_pRenderer ) m_pRenderer->Activate(
TTRUE );
180 if ( m_pInputHandler ) m_pInputHandler->Activate(
TTRUE );
181 if ( m_pGameStateController ) m_pGameStateController->Activate(
TTRUE );
182 if ( m_pMoviePlayer ) m_pMoviePlayer->Activate(
TTRUE );
183
184 if ( m_bGameSystemCreated )
185 {
186 TTODO(
"Activate three more tasks" );
187 }
188}
◆ OnChildDied()
void ARootTask::OnChildDied |
( |
Toshi::TClass * | a_pClass, |
|
|
Toshi::TTask * | a_pDeletedTask ) |
|
overridevirtual |
Definition at line 160 of file ARootTask.cpp.
161{
162 if ( a_pDeletedTask == m_pGUISystem ) m_pGUISystem =
TNULL;
163 else if ( a_pDeletedTask == m_pGUI2 )
165 else if ( a_pDeletedTask == m_pInputHandler )
166 m_pInputHandler =
TNULL;
167 else if ( a_pDeletedTask == m_pRenderer )
169 else if ( a_pDeletedTask == m_pGameStateController )
170 m_pGameStateController =
TNULL;
171 else if ( a_pDeletedTask == m_pMoviePlayer )
172 m_pMoviePlayer =
TNULL;
173}
◆ OnCreate()
TBOOL ARootTask::OnCreate |
( |
| ) |
|
|
overridevirtual |
Definition at line 68 of file ARootTask.cpp.
69{
71
75
76
80 []( TClass* a_pClass, void* ) {
82 {
84 }
85
87 },
89 );
90
92
93 if ( m_pRenderer )
94 {
95 if ( !m_pRenderer->Create() )
96 {
98 }
99 }
100
101 if ( !m_pRenderer )
102 {
104 }
105
106 m_pInputHandler->Create();
107 m_pSoundManager->Create();
108
109 ARandom::CreateSingleton();
110
111 if ( m_pMoviePlayer )
112 {
113 m_pMoviePlayer->Create();
114 }
115
116 TGetClass( AInputMapManager ).CreateObject();
117 AInputMapManager::GetSingleton()->ReadControlsData();
118
120 m_pGameStateController->Create();
121
123 ARenderer::GetSingleton()->ForceUpdate30FPS();
124 ARenderer::GetSingleton()->ForceUpdate30FPS();
126
128}
TBOOL IsInitialized() const
static TBOOL Load(const TCHAR *a_szFileName, AAssetType a_eAssetType, TBOOL a_bStream)
static void AllowBackgroundClear(TBOOL a_bAllow)
◆ OnDeactivate()
void ARootTask::OnDeactivate |
( |
| ) |
|
|
overridevirtual |
Definition at line 190 of file ARootTask.cpp.
191{
192 if ( m_pGUISystem ) m_pGUISystem->Activate(
TFALSE );
193 if ( m_pGUI2 ) m_pGUI2->Activate(
TFALSE );
194 if ( m_pRenderer ) m_pRenderer->Activate(
TFALSE );
195 if ( m_pInputHandler ) m_pInputHandler->Activate(
TFALSE );
196 if ( m_pGameStateController ) m_pGameStateController->Activate(
TFALSE );
197 if ( m_pMoviePlayer ) m_pMoviePlayer->Activate(
TFALSE );
198
199 TTODO(
"Deactivate two more tasks" );
200}
◆ OnUpdate()
Definition at line 130 of file ARootTask.cpp.
131{
133 {
134 if ( !AGameStateController::GetSingleton()->IsCurrentState( &
TGetClass( ASlideshowState ) ) &&
135 !AGameStateController::GetSingleton()->IsCurrentState( &
TGetClass( SaveLoadSKU ) ) &&
136 !AGameStateController::GetSingleton()->IsCurrentState( &
TGetClass( AMovieState ) ) &&
137 !AGameStateController::GetSingleton()->IsCurrentState( &
TGetClass( AMessagePopupState ) ) )
138 {
139 if ( !m_bStartedGame )
140 {
143 }
144 else
145 {
147 CreateGameSystem();
148 LoadFrontEnd();
150 }
151 }
152 }
153
154 TTODO(
"FUN_00427e70" );
156
158}
ALoadScreen g_oLoadScreen
void Update(TFLOAT a_fDeltaTime=1.0f, TBOOL a_bRender=true)
TBOOL IsGameSystemCreated() const
void CreateStartupGameStates()
◆ SetRenderWorld()
void ARootTask::SetRenderWorld |
( |
TBOOL | a_bReady | ) |
|
|
inline |
Definition at line 29 of file ARootTask.h.
29{ m_bRenderWorld = a_bReady; }
◆ ShouldRenderMainScene()
TBOOL ARootTask::ShouldRenderMainScene |
( |
| ) |
const |
|
inline |
Definition at line 32 of file ARootTask.h.
32{ return !m_bStopRenderingScene; }
◆ ms_oClass
◆ PARENTCLASS
Toshi::TClass* ARootTask::PARENTCLASS = & Toshi::TTask::ms_oClass |
|
staticconstexpr |
The documentation for this class was generated from the following files:
- D:/_dev/OpenBarnyard/Source/OpenBarnyard/Source/Tasks/ARootTask.h
- D:/_dev/OpenBarnyard/Source/OpenBarnyard/Source/Tasks/ARootTask.cpp