diff --git a/configure.py b/configure.py index 5e551c0a284..22dc8d0d161 100755 --- a/configure.py +++ b/configure.py @@ -791,7 +791,7 @@ config.libs = [ [ Object(NonMatching, "JSystem/JStudio/JStudio_JStage/control.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio_JStage/object.cpp"), - Object(NonMatching, "JSystem/JStudio/JStudio_JStage/object-actor.cpp"), + Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio_JStage/object-actor.cpp", extra_cflags=['-pragma "nosyminline off"']), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio_JStage/object-ambientlight.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio_JStage/object-camera.cpp"), Object(MatchingFor("GZ2E01"), "JSystem/JStudio/JStudio_JStage/object-fog.cpp"), diff --git a/include/JSystem/JStudio/JStudio/jstudio-object.h b/include/JSystem/JStudio/JStudio/jstudio-object.h index a9b411a1f1d..1c87b6ba038 100644 --- a/include/JSystem/JStudio/JStudio/jstudio-object.h +++ b/include/JSystem/JStudio/JStudio/jstudio-object.h @@ -24,7 +24,7 @@ struct TAdaptor; struct TVariableValue { struct TOutput { virtual void operator()(f32, JStudio::TAdaptor*) const = 0; - /* 80285E0C */ ~TOutput(); + /* 80285E0C */ virtual ~TOutput() = 0; }; struct TOutput_none_ { @@ -36,8 +36,7 @@ struct TVariableValue { /* 80285EB8 */ static void update_immediate_(JStudio::TVariableValue*, f64); /* 80285ECC */ static void update_time_(JStudio::TVariableValue*, f64); /* 80285F08 */ static void update_functionValue_(JStudio::TVariableValue*, f64); - /* 8028B568 */ TVariableValue(); - //TVariableValue() : field_0x4(0), field_0x8(NULL), pOutput_((TOutput*)soOutput_none_) {} + /* 8028B568 */ TVariableValue() : field_0x4(0), field_0x8(NULL), pOutput_((TOutput*)soOutput_none_) {} void setValue_immediate(f32 value) { field_0x8 = &update_immediate_; @@ -83,7 +82,7 @@ struct TVariableValue { } } - void setOutput(TOutput* param_1) { + void setOutput(const TOutput* param_1) { pOutput_ = (param_1 != NULL) ? param_1 : (TOutput*)soOutput_none_; } @@ -96,7 +95,7 @@ struct TVariableValue { TFunctionValue* fv; f32 val; } field_0xc; - /* 0x10 */ TOutput* pOutput_; + /* 0x10 */ const TOutput* pOutput_; }; // Size: 0x14 typedef void (TObject::*paragraphFunc)(u32, void const*, u32); @@ -113,8 +112,9 @@ public: /* 8028680C */ virtual void do_wait(u32); /* 8028682C */ virtual void do_data(void const*, u32, void const*, u32); - TAdaptor* getAdaptor() { return mpAdaptor; } - TControl* getControl() const { return (TControl*)stb::TObject::getControl(); } + TAdaptor* getAdaptor() const { return mpAdaptor; } + TControl* getControl() { return (TControl*)stb::TObject::getControl(); } + const TControl* getControl() const { return (const TControl*)stb::TObject::getControl(); } inline void prepareAdaptor(); @@ -211,7 +211,16 @@ inline void TObject::prepareAdaptor() { } struct TAdaptor_actor : public TAdaptor { - TAdaptor_actor() : TAdaptor(mValue, 14) {} + enum TEVariableValue { + TE_VALUE_NONE = -1, + TEACTOR_1 = 1, + }; + + TAdaptor_actor() + : TAdaptor(mValue, ARRAY_SIZE(mValue)) + , mValue() + { + } /* 802868B0 */ virtual ~TAdaptor_actor() = 0; virtual void adaptor_do_PARENT(JStudio::data::TEOperationData, const void*, u32) = 0; virtual void adaptor_do_PARENT_NODE(JStudio::data::TEOperationData, const void*, u32) = 0; @@ -260,6 +269,13 @@ struct TObject_ambientLight : public TObject { }; struct TAdaptor_camera : public TAdaptor { + enum TEVariableValue { + TECAMERA_6 = 6, + TECAMERA_7 = 7, + TECAMERA_8 = 8, + TECAMERA_9 = 9, + }; + TAdaptor_camera() : TAdaptor(mValue, 12) {} /* 80286E1C */ virtual ~TAdaptor_camera() = 0; @@ -287,6 +303,11 @@ struct TObject_camera : public TObject { }; struct TAdaptor_fog : public TAdaptor { + enum TEVariableValue { + TEFOG_4 = 4, + TEFOG_5 = 5, + }; + TAdaptor_fog() : TAdaptor(mValue, 6) {} /* 8028717C */ virtual ~TAdaptor_fog() = 0; @@ -306,6 +327,15 @@ struct TObject_fog : public TObject { }; struct TAdaptor_light : public TAdaptor { + enum TEVariableValue { + TE_VALUE_NONE = -1, + TE_VALUE_7 = 7, + TE_VALUE_8 = 8, + TE_VALUE_9 = 9, + TE_VALUE_10 = 10, + TE_VALUE_11 = 11, + }; + TAdaptor_light() : TAdaptor(mValue, 13) {} /* 80287308 */ virtual ~TAdaptor_light() = 0; @@ -363,6 +393,15 @@ struct TObject_particle : public TObject { }; struct TAdaptor_sound : public TAdaptor { + enum TEVariableValue { + UNK_7 = 7, + UNK_8 = 8, + UNK_9 = 9, + UNK_10 = 10, + UNK_11 = 11, + UNK_NONE = -1, + }; + TAdaptor_sound() : TAdaptor(mValue, 13) {} /* 80287B3C */ virtual ~TAdaptor_sound() = 0; diff --git a/include/JSystem/JStudio/JStudio/stb.h b/include/JSystem/JStudio/JStudio/stb.h index 256ae9f1db1..d1846bdb497 100644 --- a/include/JSystem/JStudio/JStudio/stb.h +++ b/include/JSystem/JStudio/JStudio/stb.h @@ -94,7 +94,7 @@ public: /* 0x10 */ JGadget::TLinkListNode ocObject_; -private: +public: // private: // public for the fakematch in JStudio_JStage::TAdaptor_actor::adaptor_do_begin /* 0x14 */ TControl* pControl; /* 0x18 */ u32 signature; /* 0x1C */ u16 mFlag; diff --git a/include/JSystem/JStudio/JStudio_JAudio2/control.h b/include/JSystem/JStudio/JStudio_JAudio2/control.h index 731c132c26b..b67f8193ae5 100644 --- a/include/JSystem/JStudio/JStudio_JAudio2/control.h +++ b/include/JSystem/JStudio/JStudio_JAudio2/control.h @@ -37,15 +37,6 @@ struct TAdaptor_sound : public JStudio::TAdaptor_sound { typedef void (*TVVOSoundSetFunc)(JAISound*, f32); typedef JStudio::TObject_sound ObjectType; - enum TEVariableValue { - UNK_7 = 7, - UNK_8 = 8, - UNK_9 = 9, - UNK_10 = 10, - UNK_11 = 11, - UNK_NONE = -1, - }; - struct TVVOSetValue_ : public JStudio::TVariableValue::TOutput { TVVOSetValue_(TEVariableValue param_1, TVVOSoundSetFunc param_2) : field_0x04(param_1), field_0x08(param_2) {} diff --git a/include/JSystem/JStudio/JStudio_JStage/control.h b/include/JSystem/JStudio/JStudio_JStage/control.h index 7ee1f52aa05..04da734dbb7 100644 --- a/include/JSystem/JStudio/JStudio_JStage/control.h +++ b/include/JSystem/JStudio/JStudio_JStage/control.h @@ -10,15 +10,6 @@ #include "JSystem/JStudio/JStudio/jstudio-object.h" #include "JSystem/JStudio/JStudio/jstudio-math.h" -#ifdef DEBUG -namespace JStudio_JStage { -template -struct TVariableValueOutput_object_; -}; // namespace JStudio_JStage -#else -#include "JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h" -#endif - namespace JStudio_JStage { typedef JStudio::TObject* (*ObjCreateFuncT)(const JStudio::stb::data::TParse_TBlock_object&, JStage::TObject*, const JStage::TSystem*); @@ -50,6 +41,9 @@ struct TAdaptor_object_ { /* 0x4 */ JStage::TObject* pJSGObject_; }; +template +struct TVariableValueOutput_object_; + struct TAdaptor_actor : public JStudio::TAdaptor_actor, public JStudio_JStage::TAdaptor_object_ { typedef JStudio::TObject_actor ObjectType; typedef TVariableValueOutput_object_ TVVOutputObject; @@ -57,10 +51,6 @@ struct TAdaptor_actor : public JStudio::TAdaptor_actor, public JStudio_JStage::T typedef f32 (JStage::TActor::*Getter)() const; typedef f32 (JStage::TActor::*MaxGetter)() const; - enum TEVariableValue { - TEACTOR_1 = 1, - }; - struct TVVOutput_ANIMATION_FRAME_ : public JStudio::TVariableValue::TOutput { @@ -81,9 +71,9 @@ struct TAdaptor_actor : public JStudio::TAdaptor_actor, public JStudio_JStage::T } /* 8028B064 */ virtual void operator()(f32, JStudio::TAdaptor*) const; - /* 8028B138 */ virtual ~TVVOutput_ANIMATION_FRAME_(); + /* 8028B138 */ inline virtual ~TVVOutput_ANIMATION_FRAME_(); - void adaptor_setOutput_(TAdaptor* adaptor) { + void adaptor_setOutput_(TAdaptor* adaptor) const { adaptor->adaptor_referVariableValue(mValueIndex)->setOutput(this); } @@ -137,8 +127,8 @@ struct TAdaptor_actor : public JStudio::TAdaptor_actor, public JStudio_JStage::T JStage::TActor* get_pJSG_() { return (JStage::TActor*) pJSGObject_; } - static TVVOutputObject saoVVOutput_[2]; - static TVVOutput_ANIMATION_FRAME_ saoVVOutput_ANIMATION_FRAME_[3]; + static const TVVOutputObject saoVVOutput_[]; + static const TVVOutput_ANIMATION_FRAME_ saoVVOutput_ANIMATION_FRAME_[]; /* 0x130 */ u32 field_0x130; /* 0x134 */ u32 field_0x134; @@ -168,13 +158,6 @@ struct TAdaptor_camera : public JStudio::TAdaptor_camera, public TAdaptor_object typedef JStudio::TObject_camera ObjectType; typedef TVariableValueOutput_object_ TVVOutput; - enum TEVariableValue { - TECAMERA_6 = 6, - TECAMERA_7 = 7, - TECAMERA_8 = 8, - TECAMERA_9 = 9, - }; - /* 8028B8A0 */ TAdaptor_camera(JStage::TSystem const*, JStage::TCamera*); /* 8028B960 */ virtual ~TAdaptor_camera(); /* 8028B9D4 */ virtual void adaptor_do_prepare(); @@ -200,7 +183,7 @@ struct TAdaptor_camera : public JStudio::TAdaptor_camera, public TAdaptor_object JStage::TCamera* get_pJSG_() { return (JStage::TCamera*)pJSGObject_; } - static TVVOutput saoVVOutput_[5]; + static TVVOutput saoVVOutput_[]; /* 0x108 */ int field_0x108; /* 0x10C */ JStage::TObject* field_0x10c; @@ -213,10 +196,6 @@ struct TAdaptor_camera : public JStudio::TAdaptor_camera, public TAdaptor_object struct TAdaptor_fog : public JStudio::TAdaptor_fog, public TAdaptor_object_ { typedef JStudio::TObject_fog ObjectType; - enum TEVariableValue { - TEFOG_4 = 4, - TEFOG_5 = 5, - }; /* 8028C574 */ TAdaptor_fog(JStage::TSystem const*, JStage::TFog*); /* 8028C610 */ virtual ~TAdaptor_fog(); @@ -228,20 +207,38 @@ struct TAdaptor_fog : public JStudio::TAdaptor_fog, public TAdaptor_object_ { JStage::TFog* get_pJSG_() { return (JStage::TFog*)pJSGObject_; } - static TVariableValueOutput_object_ saoVVOutput_[3]; + static TVariableValueOutput_object_ saoVVOutput_[]; +}; + +template +struct TVariableValueOutput_object_ : public JStudio::TVariableValue::TOutput { + typedef f32 (TStageObject::*GetFunc)() const; + typedef void (TStageObject::*SetFunc)(f32); + TVariableValueOutput_object_() : field_0x4(-1), field_0x8(NULL), field_0x14(NULL) {} + TVariableValueOutput_object_(typename TAdaptor::TEVariableValue param_1, SetFunc param_2, GetFunc param_3) : field_0x4(param_1), field_0x8(param_2), field_0x14(param_3) {} + + virtual void operator()(f32 param_1, JStudio::TAdaptor* param_2) const { + (((TAdaptor*)param_2)->get_pJSG_()->*field_0x8)(param_1); + } + virtual ~TVariableValueOutput_object_() {} + + bool isEnd_() const { return field_0x4 == -1; } + void adaptor_setOutput_(TAdaptor* adaptor) const { + adaptor->adaptor_referVariableValue(field_0x4)->setOutput(this); + } + void setVariableValue_(const TStageObject* pObj, TAdaptor* pAdaptor) const { + f32 val = (pObj->*field_0x14)(); + pAdaptor->adaptor_setVariableValue_immediate(field_0x4, val); + } + + int field_0x4; + SetFunc field_0x8; + GetFunc field_0x14; }; struct TAdaptor_light : public JStudio::TAdaptor_light, public TAdaptor_object_ { typedef JStudio::TObject_light ObjectType; - enum TEVariableValue { - TE_VALUE_NONE = -1, - TE_VALUE_7 = 7, - TE_VALUE_8 = 8, - TE_VALUE_9 = 9, - TE_VALUE_10 = 10, - TE_VALUE_11 = 11, - }; enum TEDirection_ { DIRECTION_0, DIRECTION_1, @@ -315,8 +312,4 @@ inline bool transform_toGlobalFromLocal(JStudio::TControl::TTransform_position* JStage::TObject const*, u32); }; // namespace JStudio_JStage -#ifdef DEBUG -#include "JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h" -#endif - #endif /* JSTUDIO_JSTAGE_CONTROL_H */ diff --git a/include/JSystem/JStudio/JStudio_JStage/object-actor.h b/include/JSystem/JStudio/JStudio_JStage/object-actor.h index 09332fbfef1..c137b5ca253 100644 --- a/include/JSystem/JStudio/JStudio_JStage/object-actor.h +++ b/include/JSystem/JStudio/JStudio_JStage/object-actor.h @@ -1,6 +1,6 @@ #ifndef OBJECT_ACTOR_H #define OBJECT_ACTOR_H -#include "JSystem/JStudio/JStudio_JStage/control.h" +#include "JSystem/JStudio/JStudio_JStage/control.h" // IWYU pragma: export #endif /* OBJECT_ACTOR_H */ diff --git a/include/JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h b/include/JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h deleted file mode 100644 index 38eabc9da50..00000000000 --- a/include/JSystem/JStudio/JStudio_JStage/tvariable_value_output_object.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef TVARIABLE_VALUE_OUTPUT_OBJECT_H -#define TVARIABLE_VALUE_OUTPUT_OBJECT_H - -#include "JSystem/JStudio/JStudio/jstudio-object.h" - -// Fake header for JStudio_JStage/control.h. Due to compiler version differences, retail needs the -// class definition of TVariableValueOutput_object_ to come before it's used, while debug needs it -// to come after it's used. The include of this header is ifdefed to support both. - -namespace JStudio_JStage { - -template -struct TVariableValueOutput_object_ : public JStudio::TVariableValue::TOutput { - typedef f32 (TStageObject::*GetFunc)() const; - typedef void (TStageObject::*SetFunc)(f32); - TVariableValueOutput_object_() : field_0x4(-1), field_0x8(NULL), field_0x14(NULL) {} - TVariableValueOutput_object_(typename TAdaptor::TEVariableValue param_1, - SetFunc param_2, GetFunc param_3) : field_0x4(param_1), field_0x8(param_2), field_0x14(param_3) { - - } - - virtual void operator()(f32 param_1, JStudio::TAdaptor* param_2) const { - (((TAdaptor*)param_2)->get_pJSG_()->*field_0x8)(param_1); - } - virtual ~TVariableValueOutput_object_() {} - - bool isEnd_() const { return field_0x4 == -1; } - void adaptor_setOutput_(TAdaptor* adaptor) { - adaptor->adaptor_referVariableValue(field_0x4)->setOutput(this); - } - void setVariableValue_(const TStageObject* pObj, TAdaptor* pAdaptor) const { - f32 val = (pObj->*field_0x14)(); - pAdaptor->adaptor_setVariableValue_immediate(field_0x4, val); - } - - int field_0x4; - SetFunc field_0x8; - GetFunc field_0x14; -}; - -}; // namespace JStudio_JStage - -#endif /* TVARIABLE_VALUE_OUTPUT_OBJECT_H */ diff --git a/include/d/actor/d_a_obj_lv6TogeRoll.h b/include/d/actor/d_a_obj_lv6TogeRoll.h index 178ca9c58e9..7467157dace 100644 --- a/include/d/actor/d_a_obj_lv6TogeRoll.h +++ b/include/d/actor/d_a_obj_lv6TogeRoll.h @@ -99,6 +99,8 @@ public: /* 80C77C2C */ daTogeRoll_HIO_c(); /* 80C798D0 */ ~daTogeRoll_HIO_c() {} + void genMessage(JORMContext*); + /* 0x00 */ /* vtable */ /* 0x04 */ s8 field_0x04; diff --git a/src/JSystem/JStudio/JStudio_JParticle/object-particle.cpp b/src/JSystem/JStudio/JStudio_JParticle/object-particle.cpp index d7ccd2bd227..ae395856069 100644 --- a/src/JSystem/JStudio/JStudio_JParticle/object-particle.cpp +++ b/src/JSystem/JStudio/JStudio_JParticle/object-particle.cpp @@ -79,7 +79,7 @@ void JStudio_JParticle::TAdaptor_particle::adaptor_do_end() { void JStudio_JParticle::TAdaptor_particle::adaptor_do_update(u32 param_1) { const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(179, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(181, pControl != 0); if (u32FadeTime_end != 0 && field_0x1c4 < u32FadeTime_end) { JUT_ASSERT(187, state_isFade_()); @@ -278,7 +278,7 @@ JStudio_JParticle::TAdaptor_particle::TJPACallback_emitter_::execute(JPABaseEmit } const JStudio::TObject* pObject = pThis_->adaptor_getObject(); JUT_ASSERT(534, pObject!=0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(536, pControl!=0); TJPAEmitter_stopDrawParticle_ aTStack_21c(pJPAEmitter); JStudio::TControl::TTransform_translation_rotation_scaling VStack_19c; @@ -428,4 +428,4 @@ void JStudio_JParticle::TAdaptor_particle::endParticle_fadeOut_(u32 param_1) { JUT_ASSERT(793, u32Denominator!=0); u32FadeTime_end = ((f64)param_1 * (f64)u32FadeTime_end) / u32Denominator; field_0x1c4 = u32FadeTime_end - param_1; -} \ No newline at end of file +} diff --git a/src/JSystem/JStudio/JStudio_JStage/object-actor.cpp b/src/JSystem/JStudio/JStudio_JStage/object-actor.cpp index 7ba626bac4d..d86e09d65b2 100644 --- a/src/JSystem/JStudio/JStudio_JStage/object-actor.cpp +++ b/src/JSystem/JStudio/JStudio_JStage/object-actor.cpp @@ -4,260 +4,20 @@ // #include "JSystem/JStudio/JStudio_JStage/object-actor.h" -#include "dol2asm.h" - -// -// Forward References: -// - -extern "C" void __ct__Q214JStudio_JStage14TAdaptor_actorFPCQ26JStage7TSystemPQ26JStage6TActor(); -extern "C" void __dt__Q214JStudio_JStage14TAdaptor_actorFv(); -extern "C" void adaptor_do_prepare__Q214JStudio_JStage14TAdaptor_actorFv(); -extern "C" void adaptor_do_begin__Q214JStudio_JStage14TAdaptor_actorFv(); -extern "C" void adaptor_do_end__Q214JStudio_JStage14TAdaptor_actorFv(); -extern "C" void adaptor_do_update__Q214JStudio_JStage14TAdaptor_actorFUl(); -extern "C" void adaptor_do_data__Q214JStudio_JStage14TAdaptor_actorFPCvUlPCvUl(); -extern "C" void -adaptor_do_SHAPE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_ANIMATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_ANIMATION_MODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_TEXTURE_ANIMATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_TEXTURE_ANIMATION_MODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_PARENT__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_PARENT_NODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_PARENT_ENABLE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_PARENT_FUNCTION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_RELATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_RELATION_NODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -adaptor_do_RELATION_ENABLE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void -setJSG_ID___Q214JStudio_JStage14TAdaptor_actorFMQ26JStage6TActorFPCvPvUl_vQ37JStudio4data15TEOperationDataPCvUl(); -extern "C" void setJSG_SRT___Q214JStudio_JStage14TAdaptor_actorFPCQ27JStudio8TControl(); -extern "C" void getJSG_SRT___Q214JStudio_JStage14TAdaptor_actorFPCQ27JStudio8TControl(); -extern "C" void -__cl__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_CFfPQ27JStudio8TAdaptor(); -extern "C" void __dt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_Fv(); -extern "C" void func_8028B198(); -extern "C" void __ct__Q27JStudio14TVariableValueFv(); -extern "C" void func_8028B580(void* _this); -extern "C" void func_8028B5E0(void* _this, f32, JStudio::TAdaptor*); -extern "C" u8 saoVVOutput___Q214JStudio_JStage14TAdaptor_actor[64]; -extern "C" u8 - saoVVOutput_ANIMATION_FRAME___Q214JStudio_JStage14TAdaptor_actor[144 + 4 /* padding */]; - -// -// External References: -// - -extern "C" void toFunction_outside__Q27JStudio14TFunctionValueFi(); -extern "C" void getFromTransformation_SRxyzT__Q27JStudio4mathFP3VecP3VecP3VecPA4_Cf(); -extern "C" void __dt__Q37JStudio14TVariableValue7TOutputFv(); -extern "C" void update_immediate___Q27JStudio14TVariableValueFPQ27JStudio14TVariableValued(); -extern "C" void adaptor_setVariableValue_Vec__Q27JStudio8TAdaptorFPCUlRC3Vec(); -extern "C" void adaptor_getVariableValue_Vec__Q27JStudio8TAdaptorCFP3VecPCUl(); -extern "C" void __dt__Q27JStudio14TAdaptor_actorFv(); -extern "C" void -transform_toGlobalFromLocal__14JStudio_JStageFPA4_fRCQ37JStudio8TControl39TTransform_translation_rotation_scalingPCQ26JStage7TObjectUl(); -extern "C" void -transform_toLocalFromGlobal__14JStudio_JStageFPA4_fRCQ37JStudio8TControl39TTransform_translation_rotation_scalingPCQ26JStage7TObjectUl(); -extern "C" void adaptor_object_data___Q214JStudio_JStage16TAdaptor_object_FPCvUlPCvUl(); -extern "C" void adaptor_object_findJSGObject___Q214JStudio_JStage16TAdaptor_object_FPCc(); -extern "C" void -adaptor_object_findJSGObjectNode___Q214JStudio_JStage16TAdaptor_object_FPCQ26JStage7TObjectPCc(); -extern "C" void __dl__FPv(); -extern "C" void __register_global_object(); -extern "C" void __construct_array(); -extern "C" void __ptmf_scall(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_28(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_28(); -extern "C" void _restgpr_29(); -extern "C" u8 const sauVariableValue_3_TRANSLATION_XYZ__Q27JStudio14TAdaptor_actor[12]; -extern "C" u8 const sauVariableValue_3_ROTATION_XYZ__Q27JStudio14TAdaptor_actor[12]; -extern "C" u8 const sauVariableValue_3_SCALING_XYZ__Q27JStudio14TAdaptor_actor[12]; -extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* __vt__Q27JStudio14TAdaptor_actor[20]; -extern "C" extern void* __vt__Q27JStudio8TAdaptor[8]; -extern "C" extern void* __vt__Q37JStudio14TVariableValue7TOutput[4]; -extern "C" u8 soOutput_none___Q27JStudio14TVariableValue[4 + 4 /* padding */]; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 803C5730-803C573C 022850 000C+00 2/2 0/0 0/0 .data @890 */ -SECTION_DATA static u8 lit_890[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x00, -}; - -/* 803C573C-803C5748 02285C 000C+00 1/1 0/0 0/0 .data @899 */ -SECTION_DATA static u8 lit_899[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, -}; - -/* 803C5748-803C5754 022868 000C+00 1/1 0/0 0/0 .data @916 */ -SECTION_DATA static u8 lit_916[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, -}; - -/* 803C5754-803C5760 022874 000C+00 0/1 0/0 0/0 .data @1083 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1083[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C5760-803C576C 022880 000C+00 0/1 0/0 0/0 .data @1084 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1084[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C576C-803C5778 02288C 000C+00 0/1 0/0 0/0 .data @1089 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1089[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C5778-803C5784 022898 000C+00 0/1 0/0 0/0 .data @1090 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1090[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C5784-803C5790 0228A4 000C+00 0/1 0/0 0/0 .data @1091 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1091[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6C, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C5790-803C579C 0228B0 000C+00 0/1 0/0 0/0 .data @1096 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1096[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C579C-803C57A8 0228BC 000C+00 0/1 0/0 0/0 .data @1097 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1097[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C57A8-803C57B4 0228C8 000C+00 0/1 0/0 0/0 .data @1098 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 lit_1098[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 803C57B4-803C57C4 0228D4 0010+00 1/2 0/0 0/0 .data - * __vt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_ */ -SECTION_DATA extern void* __vt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*) - __cl__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_CFfPQ27JStudio8TAdaptor, - (void*)__dt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_Fv, -}; - -/* 803C57C4-803C5864 0228E4 0050+50 2/2 0/0 0/0 .data __vt__Q214JStudio_JStage14TAdaptor_actor */ -SECTION_DATA extern void* __vt__Q214JStudio_JStage14TAdaptor_actor[20 + 20 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__Q214JStudio_JStage14TAdaptor_actorFv, - (void*)adaptor_do_prepare__Q214JStudio_JStage14TAdaptor_actorFv, - (void*)adaptor_do_begin__Q214JStudio_JStage14TAdaptor_actorFv, - (void*)adaptor_do_end__Q214JStudio_JStage14TAdaptor_actorFv, - (void*)adaptor_do_update__Q214JStudio_JStage14TAdaptor_actorFUl, - (void*)adaptor_do_data__Q214JStudio_JStage14TAdaptor_actorFPCvUlPCvUl, - (void*) - adaptor_do_PARENT__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_PARENT_NODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_PARENT_ENABLE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_PARENT_FUNCTION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_RELATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_RELATION_NODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_RELATION_ENABLE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_SHAPE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_ANIMATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_ANIMATION_MODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_TEXTURE_ANIMATION__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - (void*) - adaptor_do_TEXTURE_ANIMATION_MODE__Q214JStudio_JStage14TAdaptor_actorFQ37JStudio4data15TEOperationDataPCvUl, - /* padding */ - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, -}; /* 8028A5F0-8028A6B4 284F30 00C4+00 0/0 1/1 0/0 .text * __ct__Q214JStudio_JStage14TAdaptor_actorFPCQ26JStage7TSystemPQ26JStage6TActor */ JStudio_JStage::TAdaptor_actor::TAdaptor_actor(JStage::TSystem const* param_1, JStage::TActor* param_2) : TAdaptor_object_(param_1,param_2) { - field_0x130 = 0; - field_0x134 = 0; - field_0x138 = 0; - field_0x13c = NULL; - field_0x140 = -1; - field_0x144 = 0; - field_0x148 = NULL; - field_0x14c = -1; + field_0x130 = 0; + field_0x134 = 0; + field_0x138 = 0; + field_0x13c = NULL; + field_0x140 = -1; + field_0x144 = 0; + field_0x148 = NULL; + field_0x14c = -1; } /* 8028A6B4-8028A728 284FF4 0074+00 1/0 0/0 0/0 .text __dt__Q214JStudio_JStage14TAdaptor_actorFv @@ -267,52 +27,16 @@ JStudio_JStage::TAdaptor_actor::~TAdaptor_actor() { } -/* ############################################################################################## */ -/* 80431188-80431194 05DEA8 000C+00 1/1 0/0 0/0 .bss @1087 */ -static u8 lit_1087[12]; - -/* 80431194-804311A0 05DEB4 000C+00 0/1 0/0 0/0 .bss @1088 */ -#pragma push -#pragma force_active on -static u8 lit_1088[12]; -#pragma pop - -/* 804311A0-804311E0 05DEC0 0040+00 2/3 0/0 0/0 .bss - * saoVVOutput___Q214JStudio_JStage14TAdaptor_actor */ -JStudio_JStage::TAdaptor_actor::TVVOutputObject JStudio_JStage::TAdaptor_actor::saoVVOutput_[2]; - -/* 804311E0-804311EC 05DF00 000C+00 0/1 0/0 0/0 .bss @1095 */ -#pragma push -#pragma force_active on -static u8 lit_1095[12]; -#pragma pop - -/* 804311EC-804311F8 05DF0C 000C+00 0/1 0/0 0/0 .bss @1102 */ -#pragma push -#pragma force_active on -static u8 lit_1102[12]; -#pragma pop - -/* 804311F8-80431204 05DF18 000C+00 0/1 0/0 0/0 .bss @1103 */ -#pragma push -#pragma force_active on -static u8 lit_1103[12]; -#pragma pop - -/* 80431204-80431298 05DF24 0090+04 2/3 0/0 0/0 .bss - * saoVVOutput_ANIMATION_FRAME___Q214JStudio_JStage14TAdaptor_actor */ -JStudio_JStage::TAdaptor_actor::TVVOutput_ANIMATION_FRAME_ JStudio_JStage::TAdaptor_actor::saoVVOutput_ANIMATION_FRAME_[3]; - /* 8028A728-8028A7B4 285068 008C+00 1/0 0/0 0/0 .text * adaptor_do_prepare__Q214JStudio_JStage14TAdaptor_actorFv */ void JStudio_JStage::TAdaptor_actor::adaptor_do_prepare() { - TVVOutputObject* pOutput = saoVVOutput_; + const TVVOutputObject* pOutput = saoVVOutput_; while (!pOutput->isEnd_()) { pOutput->adaptor_setOutput_(this); pOutput++; } - TVVOutput_ANIMATION_FRAME_* pAnimOutput = saoVVOutput_ANIMATION_FRAME_; + const TVVOutput_ANIMATION_FRAME_* pAnimOutput = saoVVOutput_ANIMATION_FRAME_; while (!pAnimOutput->isEnd_()) { pAnimOutput->adaptor_setOutput_(this); pAnimOutput++; @@ -322,23 +46,29 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_prepare() { /* 8028A7B4-8028A8D8 2850F4 0124+00 1/0 0/0 0/0 .text * adaptor_do_begin__Q214JStudio_JStage14TAdaptor_actorFv */ -// NONMATCHING - instruction order void JStudio_JStage::TAdaptor_actor::adaptor_do_begin() { adaptor_object_begin_(); - JStage::TActor* pActor = get_pJSG_(); - const JStudio::TObject* pObject = adaptor_getObject(); - JUT_ASSERT(72, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); - JUT_ASSERT(74, pControl != 0); - getJSG_SRT_(adaptor_getObject()->getControl()); + const JStage::TActor* pActor = get_pJSG_(); +#ifdef DEBUG + { // This block is needed to match the stack in debug + const JStudio::TObject* pObject = adaptor_getObject(); + JUT_ASSERT(72, pObject!=0); + const JStudio::TControl* pControl = pObject->getControl(); + JUT_ASSERT(74, pControl!=0); + getJSG_SRT_(pControl); + } +#else + // Fakematch, load order is wrong in retail when using the inlines shown in debug + getJSG_SRT_((const JStudio::TControl*)(adaptor_getObject()->pControl)); +#endif - TVVOutputObject* pOutput = saoVVOutput_; + const TVVOutputObject* pOutput = saoVVOutput_; while (!pOutput->isEnd_()) { pOutput->setVariableValue_(pActor, this); pOutput++; } - TVVOutput_ANIMATION_FRAME_* pAnimOutput = saoVVOutput_ANIMATION_FRAME_; + const TVVOutput_ANIMATION_FRAME_* pAnimOutput = saoVVOutput_ANIMATION_FRAME_; while (!pAnimOutput->isEnd_()) { pAnimOutput->setVariableValue_(pActor, this); pAnimOutput++; @@ -356,7 +86,7 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_end() { void JStudio_JStage::TAdaptor_actor::adaptor_do_update(u32 param_1) { const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(104, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(106, pControl != 0); setJSG_SRT_(pControl); pJSGObject_->JSGUpdate(); @@ -427,12 +157,12 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_TEXTURE_ANIMATION_MODE( void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT( JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x18: + case JStudio::data::UNK_0x18: JUT_ASSERT(203, pContent!=0); JUT_ASSERT(204, uSize!=0); - field_0x13c = adaptor_object_findJSGObject_((const char*)pContent); - break; - } + field_0x13c = adaptor_object_findJSGObject_((const char*)pContent); + break; + } } /* 8028AB0C-8028AB68 28544C 005C+00 1/0 0/0 0/0 .text @@ -441,17 +171,17 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT( void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT_NODE( JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x18: + case JStudio::data::UNK_0x18: JUT_ASSERT(226, pContent!=0); JUT_ASSERT(227, uSize!=0); - field_0x140 = adaptor_object_findJSGObjectNode_(field_0x13c, (const char*)pContent); - break; - case JStudio::data::UNK_0x19: + field_0x140 = adaptor_object_findJSGObjectNode_(field_0x13c, (const char*)pContent); + break; + case JStudio::data::UNK_0x19: JUT_ASSERT(237, uSize==4); JUT_ASSERT(238, pContent!=0); - field_0x140 = *(u32*)pContent; - break; - } + field_0x140 = *(u32*)pContent; + break; + } } /* 8028AB68-8028ABF0 2854A8 0088+00 1/0 0/0 0/0 .text @@ -460,28 +190,28 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT_NODE( void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT_ENABLE( JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x2: + case JStudio::data::UNK_0x2: JUT_ASSERT(257, uSize==4); JUT_ASSERT(258, pContent!=0); - bool v0 = (*(u32*)pContent != 0); - if (field_0x144 != v0) { - field_0x144 = v0; - switch (field_0x138) { - case 0: - break; - case 1: - JStage::TObject* object = NULL; - u32 v1 = -1; - if (v0 != 0) { - object = field_0x13c; - v1 = field_0x140; - } - pJSGObject_->JSGSetParent(object, v1); - break; - } - } - break; - } + bool v0 = (*(u32*)pContent != 0); + if (field_0x144 != v0) { + field_0x144 = v0; + switch (field_0x138) { + case 0: + break; + case 1: + JStage::TObject* object = NULL; + u32 v1 = -1; + if (v0 != 0) { + object = field_0x13c; + v1 = field_0x140; + } + pJSGObject_->JSGSetParent(object, v1); + break; + } + } + break; + } } /* 8028ABF0-8028AC04 285530 0014+00 1/0 0/0 0/0 .text @@ -503,11 +233,11 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_PARENT_FUNCTION( void JStudio_JStage::TAdaptor_actor::adaptor_do_RELATION( JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x18: + case JStudio::data::UNK_0x18: JUT_ASSERT(324, pContent!=0); JUT_ASSERT(325, uSize!=0); - field_0x148 = adaptor_object_findJSGObject_((const char*)pContent); - break; + field_0x148 = adaptor_object_findJSGObject_((const char*)pContent); + break; } } @@ -517,17 +247,17 @@ void JStudio_JStage::TAdaptor_actor::adaptor_do_RELATION( void JStudio_JStage::TAdaptor_actor::adaptor_do_RELATION_NODE( JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x18: + case JStudio::data::UNK_0x18: JUT_ASSERT(347, pContent!=0); JUT_ASSERT(348, uSize!=0); - field_0x14c = adaptor_object_findJSGObjectNode_(field_0x13c, (const char*)pContent); - break; - case JStudio::data::UNK_0x19: + field_0x14c = adaptor_object_findJSGObjectNode_(field_0x13c, (const char*)pContent); + break; + case JStudio::data::UNK_0x19: JUT_ASSERT(358, uSize==4); JUT_ASSERT(359, pContent!=0); - field_0x14c = *(u32*)pContent; - break; - } + field_0x14c = *(u32*)pContent; + break; + } } /* 8028ACA4-8028ACFC 2855E4 0058+00 1/0 0/0 0/0 .text @@ -551,10 +281,10 @@ void JStudio_JStage::TAdaptor_actor::setJSG_ID_(void (JStage::TActor::*function) JStudio::data::TEOperationData operation, void const* pContent, u32 uSize) { switch (operation) { - case JStudio::data::UNK_0x19: - (((JStage::TActor*)pJSGObject_)->*function)(*(u32*)pContent); - break; - } + case JStudio::data::UNK_0x19: + (((JStage::TActor*)pJSGObject_)->*function)(*(u32*)pContent); + break; + } } /* 8028AD38-8028AECC 285678 0194+00 1/1 0/0 0/0 .text @@ -647,77 +377,47 @@ void JStudio_JStage::TAdaptor_actor::getJSG_SRT_(JStudio::TControl const* pContr void JStudio_JStage::TAdaptor_actor::TVVOutput_ANIMATION_FRAME_::operator()( f32 param_1, JStudio::TAdaptor* adaptor) const { JStage::TActor* actor = static_cast(adaptor)->get_pJSG_(); - // not sure what this bit is - u32 idx = *(u32*)(((u32)adaptor - 1) + field_0x8); + // not sure what this bit is + u32 idx = *(u32*)(((u32)adaptor - 1) + field_0x8); - u8 idx_lowBytes = idx; - u8 idx_highBytes = idx >> 8; + u8 idx_lowBytes = idx; + u8 idx_highBytes = idx >> 8; - f32 maxVal = (actor->*mMaxGetter)(); - switch (idx_highBytes) { - case 1: - param_1 = maxVal - param_1; - break; - case 0: - break; - } + f32 maxVal = (actor->*mMaxGetter)(); + switch (idx_highBytes) { + case 1: + param_1 = maxVal - param_1; + break; + case 0: + break; + } - if (maxVal > 0.0f) { - param_1 = (f32)(*JStudio::TFunctionValue::toFunction_outside(idx_lowBytes))(param_1, maxVal); - } - (actor->*mSetter)(param_1); + if (maxVal > 0.0f) { + param_1 = (f32)(*JStudio::TFunctionValue::toFunction_outside(idx_lowBytes))(param_1, maxVal); + } + (actor->*mSetter)(param_1); } /* 8028B138-8028B198 285A78 0060+00 2/1 0/0 0/0 .text * __dt__Q314JStudio_JStage14TAdaptor_actor26TVVOutput_ANIMATION_FRAME_Fv */ -// NONMATCHING JStudio_JStage::TAdaptor_actor::TVVOutput_ANIMATION_FRAME_::~TVVOutput_ANIMATION_FRAME_() { } -/* ############################################################################################## */ -/* 803C5864-803C5888 022984 0010+14 2/2 0/0 0/0 .data - * __vt__Q214JStudio_JStage81TVariableValueOutput_object_ - */ -SECTION_DATA extern void* data_803C5864[4 + 5 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)func_8028B5E0, - (void*)func_8028B580, - /* padding */ - NULL, - NULL, - NULL, - NULL, - NULL, +namespace JStudio_JStage { + +/* 804311A0-804311E0 05DEC0 0040+00 2/3 0/0 0/0 .bss + * saoVVOutput___Q214JStudio_JStage14TAdaptor_actor */ +const TAdaptor_actor::TVVOutputObject TAdaptor_actor::saoVVOutput_[] = { + TVVOutputObject(TAdaptor_actor::TEACTOR_1, &JStage::TActor::JSGSetAnimationTransition, &JStage::TActor::JSGGetAnimationTransition), + TVVOutputObject() }; -/* 8028B198-8028B568 285AD8 03D0+00 0/0 1/0 0/0 .text __sinit_object-actor_cpp */ -void func_8028B198() { - // NONMATCHING -} +/* 80431204-80431298 05DF24 0090+04 2/3 0/0 0/0 .bss + * saoVVOutput_ANIMATION_FRAME___Q214JStudio_JStage14TAdaptor_actor */ +const TAdaptor_actor::TVVOutput_ANIMATION_FRAME_ TAdaptor_actor::saoVVOutput_ANIMATION_FRAME_[] = { + TVVOutput_ANIMATION_FRAME_(0, 305, &JStage::TActor::JSGSetAnimationFrame, &JStage::TActor::JSGGetAnimationFrame, &JStage::TActor::JSGGetAnimationFrameMax), + TVVOutput_ANIMATION_FRAME_(2, 309, &JStage::TActor::JSGSetTextureAnimationFrame, &JStage::TActor::JSGGetTextureAnimationFrame, &JStage::TActor::JSGGetTextureAnimationFrameMax), + TVVOutput_ANIMATION_FRAME_() +}; -#pragma push -#pragma force_active on -REGISTER_CTORS(0x8028B198, func_8028B198); -#pragma pop - -/* 8028B568-8028B580 285EA8 0018+00 1/1 6/6 0/0 .text __ct__Q27JStudio14TVariableValueFv - */ -JStudio::TVariableValue::TVariableValue() { - // NONMATCHING -} - -/* 8028B580-8028B5E0 285EC0 0060+00 2/1 0/0 0/0 .text - * __dt__Q214JStudio_JStage81TVariableValueOutput_object_Fv - */ -extern "C" void func_8028B580(void* _this) { - // NONMATCHING -} - -/* 8028B5E0-8028B610 285F20 0030+00 1/0 0/0 0/0 .text - * __cl__Q214JStudio_JStage81TVariableValueOutput_object_CFfPQ27JStudio8TAdaptor - */ -extern "C" void func_8028B5E0(void* _this, f32 param_0, - JStudio::TAdaptor* param_1) /* const */ { - // NONMATCHING -} +}; // namespace JStudio_JStage diff --git a/src/JSystem/JStudio/JStudio_JStage/object-camera.cpp b/src/JSystem/JStudio/JStudio_JStage/object-camera.cpp index 5100a315f58..48fa80ace0e 100644 --- a/src/JSystem/JStudio/JStudio_JStage/object-camera.cpp +++ b/src/JSystem/JStudio/JStudio_JStage/object-camera.cpp @@ -55,7 +55,7 @@ void JStudio_JStage::TAdaptor_camera::adaptor_do_begin() { JStage::TCamera* pCamera = get_pJSG_(); const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(70, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(72, pControl != 0); getJSG_position_(pControl); getJSG_targetPosition_(pControl); @@ -77,7 +77,7 @@ void JStudio_JStage::TAdaptor_camera::adaptor_do_end() { void JStudio_JStage::TAdaptor_camera::adaptor_do_update(u32 param_1) { const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(98, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(100, pControl != 0); setJSG_position_(pControl); setJSG_targetPosition_(pControl); @@ -330,4 +330,4 @@ void JStudio_JStage::TAdaptor_camera::getJSG_targetPosition_(JStudio::TControl c } adaptor_setVariableValue_Vec(sauVariableValue_3_TARGET_POSITION_XYZ, *outTransform); -} \ No newline at end of file +} diff --git a/src/JSystem/JStudio/JStudio_JStage/object-light.cpp b/src/JSystem/JStudio/JStudio_JStage/object-light.cpp index 6bc49090c87..b96e675d254 100644 --- a/src/JSystem/JStudio/JStudio_JStage/object-light.cpp +++ b/src/JSystem/JStudio/JStudio_JStage/object-light.cpp @@ -131,7 +131,7 @@ void JStudio_JStage::TAdaptor_light::adaptor_do_begin() { JStage::TLight* pLightObj = get_pJSG_(); const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(60, pObject != 0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); GXColor lightColor = pLightObj->JSGGetColor(); adaptor_setVariableValue_GXColor(sauVariableValue_4_COLOR_RGBA, lightColor); JStudio::TControl::TTransform_position_direction lightObjTransform; @@ -171,7 +171,7 @@ void JStudio_JStage::TAdaptor_light::adaptor_do_update(u32 param_1) { JStage::TLight* lightObj = get_pJSG_(); const JStudio::TObject* pObject = adaptor_getObject(); JUT_ASSERT(118, pObject!=0); - JStudio::TControl* pControl = pObject->getControl(); + const JStudio::TControl* pControl = pObject->getControl(); JUT_ASSERT(120, pControl!=0); GXColor lightColor; adaptor_getVariableValue_GXColor(&lightColor, sauVariableValue_4_COLOR_RGBA);