1#include "Game/MapObj/SimpleMapObj.hpp"
6 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
7 MapObjActorUtil::setupInitInfoTypical(&info, mObjectName);
8 MapObjActorUtil::setupInitInfoColorChangeArg0(&info, rIter);
9 MapObjActorUtil::setupInitInfoTextureChangeArg1(&info, rIter);
10 MapObjActorUtil::setupInitInfoShadowLengthArg2(&info, rIter);
11 initialize(rIter, info);
15 if (rInfo.mConnectToScene) {
17 MR::connectToSceneEnvironmentStrongLight(
this);
20 else if (rInfo._5C != 1) {
21 MR::connectToSceneEnvironment(
this);
29 MR::setClippingFarMax(
this);
33 if (rInfo.mConnectToScene) {
35 MR::connectToSceneNoSilhouettedMapObjStrongLight(
this);
38 else if (rInfo._5C != 1) {
39 MR::connectToSceneNoSilhouettedMapObj(
this);
47 MR::listenStageSwitchOnA(
this, func);
51 if (rInfo.mConnectToScene) {
52 MR::connectToScene(
this, 0x22, 5, 0x22, -1);
56SimpleMirrorObj::SimpleMirrorObj(
const char *pName,
const char *a2, MtxPtr mtx) :
MapObjActor(pName) {
58 MR::createMirrorCamera();
67 reflectionPos.set(mMtx);
68 MR::setMirrorReflectionInfoFromMtxYUp(reflectionPos);
69 f32 z = reflectionPos.mMtx[2][3];
70 f32 y = reflectionPos.mMtx[1][3];
71 f32 x = reflectionPos.mMtx[0][3];
73 MR::setBaseTRMtx(
this, mMtx);
79 MR::invalidateClipping(
this);
83 MR::connectToSceneMirrorMapObjNoMovement(
this);
88 for (u32 i = 0; i < 8; i++) {
89 if (MR::isEqualString(pName, sSeDataTable[i].objectName)) {
90 return &sSeDataTable[i];
98SimpleSeesawObj::SimpleSeesawObj(
const char *pName) :
MapObjActor(pName) {
105 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
107 const char* sound_name = entry !=
nullptr ? entry->soundName :
nullptr;
108 entry = getSeParam(mObjectName);
109 MapObjActorUtil::setupInitInfoSeesaw(&info, rIter, sound_name, entry !=
nullptr ? entry->_8 : 0.0f);
110 initialize(rIter, info);
113void SimpleSeesawObj::control() {
114 MapObjActor::control();
118 if (MR::isSensorPlayer(a2)) {
119 MR::sendMsgPush(a2, a1);
126 info.setupFarClipping(-1.0f);
127 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
128 MapObjActorUtil::setupInitInfoColorChangeArg0(&info, rIter);
129 MapObjActorUtil::setupInitInfoTextureChangeArg1(&info, rIter);
130 MapObjActorUtil::setupInitInfoShadowLengthArg2(&info, rIter);
132 if (MR::isEqualString(
"UFOKinokoUnderConstruction", mObjectName)) {
134 if (MR::isUFOKinokoUnderConstruction()) {
135 info.mModelName =
"UFOKinokoUnderConstruction";
138 info.mModelName =
"UFOKinokoLandingAstro";
142 initialize(rIter, info);
143 if (MR::isUFOKinokoBeforeConstruction()) {
152 if (MR::isUFOKinokoBeforeConstruction()) {
153 archive =
"UFOKinokoUnderConstruction";
156 archive =
"UFOKinokoLandingAstro";
159 pArchiveList->addArchive(archive);
166 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
167 info.setupHioNode(
"環境");
168 initialize(rIter, info);
171void SimpleTextureSwitchChangeObj::changeTexture() {
172 MR::startBtk(
this,
"TexChange");
173 MR::setBtkFrameAndStop(
this, getChangedTextureNo());
182 MapObjActorUtil::setupInitInfoSimpleMapObj(&info);
185 info.setupHioNode(
"地形オブジェ");
186 info.setupConnectToScene();
187 info.setupEffect(
nullptr);
189 info.setupGroupClipping(0x80);
190 info.setupDefaultPos();
194 info.setupMirrorReflection(hasMtx);
195 initialize(rIter, info);
196 MR::invalidateClipping(
this);
199s32 SimpleTextureSwitchChangeObj::getChangedTextureNo()
const {
203SimpleEnvironmentObj::~SimpleEnvironmentObj() {
207SimpleMapObjNoSilhouetted::~SimpleMapObjNoSilhouetted() {
211SimpleTextureSwitchChangeObj::~SimpleTextureSwitchChangeObj() {
215GlaringLight::~GlaringLight() {
219SimpleMirrorObj::~SimpleMirrorObj() {
223SimpleMirrorReflectionObj::~SimpleMirrorReflectionObj() {
227SimpleSeesawObj::~SimpleSeesawObj() {
231SimpleMapObjPush::~SimpleMapObjPush() {
235UFOKinokoUnderConstruction::~UFOKinokoUnderConstruction() {
TVec3f mPosition
3D vector of the actor's position.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
Stores archive names of NameObjs.
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.
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.
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
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.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.