1#include "Game/AreaObj/RestartCube.hpp"
2#include "Game/AudioLib/AudWrap.hpp"
3#include "Game/System/GameDataTemporaryInGalaxy.hpp"
4#include "Game/GameAudio/AudStageBgmTable.hpp"
6RestartCube::RestartCube(
int type,
const char *pName) :
AreaObj(type, pName) {
13RestartCube::~RestartCube() {
25void RestartCube::updatePlayerRestartIdInfo() {
26 if (mObjArg3 == -1 || MR::isOnGroundPlayer()) {
27 MR::setPlayerRestartIdInfo(*mIdInfo);
29 if (!_48 && !MR::isCubeBgmChangeInvalid() && _40 >= 0) {
35void RestartCube::changeBgm() {
36 if (MR::isPowerStarGetDemoActive()) {
41 if (MR::isPlayingStageBgmID(0x2000014)) {
46 if (MR::isPlayingStageBgmID(0x200003E)) {
51 if (MR::isPlayerDead()) {
56 if (!MR::isPlayingStageBgmID(0x2000039)) {
57 u32 bgmID = AudStageBgmTable::getBgmId(MR::getCurrentStageName(), _40);
59 if (bgmID + 0x10000 != 0xFFFF) {
60 u32 val = AudWrap::getBgmMgr()->_10;
61 if (val == bgmID && MR::isPlayingStageBgm()) {
65 AudWrap::startStageBgm(bgmID,
false);
67 if (MR::isEqualStageName(
"ReverseKingdomGalaxy") && bgmID == 0x1010012) {
68 MR::setCubeBgmChangeInvalid();
71 if (MR::isEqualStageName(
"CannonFleetGalaxy") && bgmID == 0x1010002) {
72 MR::setCubeBgmChangeInvalid();
75 if (MR::isEqualStageName(
"BattleShipGalaxy") && bgmID == 0x1010002) {
76 MR::setCubeBgmChangeInvalid();
81 s32 state = AudStageBgmTable::getBgmState(MR::getCurrentStageName(), _44);
84 AudBgm* bgm = AudWrap::getStageBgm();
87 bgm->changeTrackMuteState(state, 0);
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.