MCPcopy Create free account
hub / github.com/doldecomp/mkdd / RaceApp

Method RaceApp

src/Osako/RaceApp.cpp:39–237  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

37void RaceApp::call() { AppMgr::setNextApp(AppMgr::mcRace); }
38
39RaceApp::RaceApp() : GameApp(0x600000, "Race", nullptr)
40{
41 int i;
42 switch (NetGameMgr::ptr()->getState())
43 {
44 case 0:
45 case 6:
46 mState = 2;
47 mDrawFlags = 1;
48 _20 = 0;
49 break;
50 case 15:
51 mState = 0;
52 mDrawFlags = 0;
53 _20 = 1;
54 break;
55 default:
56#line 94
57 JUT_PANIC("illegal net state!")
58 }
59
60 setAudioRaceMode();
61 if (gRaceInfo.isDemoConsole(0))
62 GameAudio::Parameters::setPlayerMode(4);
63 else
64 GameAudio::Parameters::setPlayerMode(gRaceInfo.getStatusNumber() - 1);
65 // GameAudio::Parameters::setPlayerMode(gRaceInfo.isDemoConsole(0) ? 4 : (gRaceInfo.getStatusNumber() - 1));
66
67 for (u8 i = 0; i < gRaceInfo.getKartNumber(); i++)
68 {
69 KartInfo *kartInfo = gRaceInfo.getKartInfo(i);
70 GameAudio::Parameters::setChrType(i, kartInfo->getKartID());
71 GameAudio::Parameters::setKartType(i, kartInfo->getKartWeight());
72 }
73
74 GameAudio::Parameters::setRaceCourse(ResMgr::msCourseID);
75 GameAudio::Parameters::setNetworkMode(NetGameMgr::ptr()->getNetworkCubes(), NetGameMgr::ptr()->getNetworkNum());
76 SYSDBG_SetHeapGroup("Shadow Mgr", nullptr);
77 if (gRaceInfo.getStatusNumber() > 2)
78 ShadowManager::ptr()->setDepthMode(0);
79 else
80 ShadowManager::ptr()->setDepthMode(1);
81 // ShadowManager::ptr()->setDepthMode(gRaceInfo.getStatusNumber() > 2 ? 0 : 1);
82
83 if (!gRaceInfo.isWaitDemo())
84 {
85 ForceEffectMgr::create();
86 ForceEffectMgr::ptr()->start();
87 }
88
89 mRecorder = nullptr;
90
91 for (int i = 0; i < 4; i++)
92 {
93 mPadRecord[i] = nullptr;
94 }
95
96 switch (gRaceInfo.getRaceMode())

Callers

nothing calls this directly

Calls 15

setPlayerModeFunction · 0.85
setChrTypeFunction · 0.85
setKartTypeFunction · 0.85
setRaceCourseFunction · 0.85
setNetworkModeFunction · 0.85
getPtrFunction · 0.85
getDisplayFunction · 0.85
isDemoConsoleMethod · 0.80
getNetworkCubesMethod · 0.80
getNetworkNumMethod · 0.80
setDepthModeMethod · 0.80
isWaitDemoMethod · 0.80

Tested by

no test coverage detected