mirror of
https://github.com/zeldaret/tp
synced 2026-09-03 18:13:58 -04:00
j2d / map_path work, d_drawlist / d_attention cleanup (#208)
* work on fop actor / actor mng, daalink, d_a_obj_item * d_a_title mostly decompiled * daalink / d_event / JMessage / dmsg_out_font work * msg_scrn_base / msg_scrn_boss * some work on mDo machine, d_menu_save, d_tresure, and various * remove asm * progress * finish d_menu_save / d_pane_class_alpha / d_pane_class / rename some data * rename more data * remove asm / progress * match all of d_pane_class * fixes / some dKankyo doc * bunch of j2d work. d_drawlist / d_attention cleanup * progress / asm * cleanup wip * decompile JStage * setup some more JStudio structs * set up d_demo classes * some d_demo work * cleanup dolphin os stuff * some initial dEvent documentation * some At collision documentation * match JUTConsole::doDraw * dbgs work / split up some of d_a_alink into .inc files * d_a_alink_spinner work
This commit is contained in:
@@ -2,5 +2,65 @@
|
||||
#define CTB_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JGadget/binary.h"
|
||||
#include "JSystem/JGadget/linklist.h"
|
||||
#include "JSystem/JStudio/JStudio/object-id.h"
|
||||
|
||||
namespace JStudio {
|
||||
namespace ctb {
|
||||
struct TObject : public object::TObject_ID {
|
||||
/* 80280F18 */ virtual ~TObject() = 0;
|
||||
|
||||
/* 0x08 vtable */
|
||||
/* 0x0C */ JGadget::TLinkListNode field_0xc;
|
||||
/* 0x14 */ void* pData_;
|
||||
};
|
||||
|
||||
struct data {
|
||||
struct TParse_TBlock : public JGadget::binary::TParseData_aligned<4> {};
|
||||
|
||||
static u32 ga4cSignature;
|
||||
};
|
||||
|
||||
struct TObject_TxyzRy : public TObject {
|
||||
/* 80280F60 */ TObject_TxyzRy(JStudio::ctb::data::TParse_TBlock const&);
|
||||
|
||||
/* 80281554 */ virtual ~TObject_TxyzRy();
|
||||
/* 80280FBC */ virtual bool getScheme() const;
|
||||
};
|
||||
|
||||
struct TFactory {
|
||||
TFactory() {}
|
||||
|
||||
/* 80281274 */ virtual ~TFactory();
|
||||
/* 802812BC */ virtual void create(JStudio::ctb::data::TParse_TBlock const&);
|
||||
/* 80281320 */ virtual void destroy(JStudio::ctb::TObject*);
|
||||
};
|
||||
|
||||
struct TControl {
|
||||
/* 80280FC4 */ TControl();
|
||||
/* 80280FF4 */ virtual ~TControl();
|
||||
/* 80281060 */ void appendObject(JStudio::ctb::TObject*);
|
||||
/* 802810AC */ void removeObject(JStudio::ctb::TObject*);
|
||||
/* 802810DC */ void destroyObject(JStudio::ctb::TObject*);
|
||||
/* 8028112C */ void destroyObject_all();
|
||||
/* 80281190 */ void getObject(void const*, u32);
|
||||
/* 80281230 */ void getObject_index(u32);
|
||||
|
||||
/* 0x4 */ TFactory* pFactory_;
|
||||
/* 0x8 */ JGadget::TLinkList<TObject, 2> mList;
|
||||
};
|
||||
|
||||
struct TParse : public JGadget::binary::TParse_header_block {
|
||||
/* 8028135C */ TParse(JStudio::ctb::TControl*);
|
||||
/* 8028137C */ virtual ~TParse();
|
||||
/* 802813DC */ virtual void parseHeader_next(void const**, u32*, u32);
|
||||
/* 80281470 */ virtual void parseBlock_next(void const**, u32*, u32);
|
||||
|
||||
/* 0x4 */ TControl* pControl_;
|
||||
};
|
||||
|
||||
}; // namespace ctb
|
||||
}; // namespace JStudio
|
||||
|
||||
#endif /* CTB_H */
|
||||
|
||||
@@ -10,7 +10,7 @@ namespace JStudio {
|
||||
namespace fvb {
|
||||
namespace data {
|
||||
|
||||
extern f32 ga4cSignature[1 + 1 /* padding */];
|
||||
extern const char ga4cSignature[4];
|
||||
|
||||
const int PARAGRAPH_DATA = 1;
|
||||
|
||||
|
||||
@@ -49,8 +49,9 @@ private:
|
||||
|
||||
class TFactory {
|
||||
public:
|
||||
/* 80284918 */ virtual ~TFactory();
|
||||
TFactory() {}
|
||||
|
||||
/* 80284918 */ virtual ~TFactory();
|
||||
/* 80284960 */ virtual TObject* create(JStudio::fvb::data::TParse_TBlock const&);
|
||||
/* 80284AA0 */ virtual void destroy(JStudio::fvb::TObject*);
|
||||
};
|
||||
@@ -70,9 +71,9 @@ public:
|
||||
TFactory* getFactory() const { return pFactory; }
|
||||
|
||||
private:
|
||||
TFactory* pFactory;
|
||||
JGadget::TLinkList<TObject, 12> ocObject_;
|
||||
};
|
||||
/* 0x4 */ TFactory* pFactory;
|
||||
/* 0x8 */ JGadget::TLinkList<TObject, 12> ocObject_;
|
||||
}; // Size: 0x14
|
||||
|
||||
class TObject_composite : public TObject {
|
||||
public:
|
||||
|
||||
@@ -1,6 +1,96 @@
|
||||
#ifndef JSTUDIO_CONTROL_H
|
||||
#define JSTUDIO_CONTROL_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JGadget/binary.h"
|
||||
#include "JSystem/JStudio/JStudio/fvb.h"
|
||||
#include "JSystem/JStudio/JStudio/stb.h"
|
||||
#include "JSystem/JStudio/JStudio/ctb.h"
|
||||
#include "dolphin/gx/GX.h"
|
||||
|
||||
namespace JStudio {
|
||||
struct TCreateObject {
|
||||
TCreateObject() {}
|
||||
/* 80285488 */ virtual ~TCreateObject() = 0;
|
||||
|
||||
/* 0x4 */ JGadget::TLinkListNode mNode;
|
||||
}; // Size: 0xC
|
||||
|
||||
struct TFactory : public stb::TFactory {
|
||||
TFactory() {}
|
||||
|
||||
/* 802854D0 */ virtual ~TFactory();
|
||||
/* 802855AC */ virtual void create(JStudio::stb::data::TParse_TBlock_object const&);
|
||||
|
||||
/* 80285560 */ void appendCreateObject(JStudio::TCreateObject*);
|
||||
|
||||
/* 0x04 */ JGadget::TLinkList<TCreateObject, -4> mList;
|
||||
/* 0x10 */ fvb::TFactory fvb_Factory;
|
||||
/* 0x14 */ ctb::TFactory ctb_Factory;
|
||||
};
|
||||
|
||||
class TControl : public stb::TControl {
|
||||
public:
|
||||
struct TTransform_translation_rotation_scaling {};
|
||||
struct TTransform_position {};
|
||||
|
||||
/* 80285114 */ TControl();
|
||||
/* 802851AC */ virtual ~TControl();
|
||||
/* 80285228 */ void setFactory(JStudio::TFactory*);
|
||||
/* 80285250 */ void transformOnSet_setOrigin_TxyzRy(Vec const&, f32);
|
||||
/* 802852D0 */ void transformOnGet_setOrigin_TxyzRy(Vec const&, f32);
|
||||
/* 80285368 */ void transform_setOrigin_ctb(JStudio::ctb::TObject const&);
|
||||
/* 8028543C */ void transform_setOrigin_ctb_index(u32);
|
||||
|
||||
void stb_destroyObject_all() { stb::TControl::destroyObject_all(); }
|
||||
void fvb_destroyObject_all() { fvb_Control.destroyObject_all(); }
|
||||
void ctb_destroyObject_all() { ctb_Control.destroyObject_all(); }
|
||||
|
||||
void destroyObject_all() {
|
||||
stb_destroyObject_all();
|
||||
fvb_destroyObject_all();
|
||||
ctb_destroyObject_all();
|
||||
}
|
||||
|
||||
void transformOnSet_enable(bool param_0) { mTransformOnSet = param_0; }
|
||||
void transformOnGet_enable(bool param_0) { mTransformOnGet = param_0; }
|
||||
|
||||
void transform_enable(bool param_0) {
|
||||
transformOnSet_enable(param_0);
|
||||
transformOnGet_enable(param_0);
|
||||
}
|
||||
|
||||
void transform_setOrigin_TxyzRy(const Vec& xyz, f32 rotY) {
|
||||
transformOnSet_setOrigin_TxyzRy(xyz, rotY);
|
||||
transformOnGet_setOrigin_TxyzRy(xyz, rotY);
|
||||
}
|
||||
|
||||
void transform_setOrigin(const Vec& xyz, f32 rotY) {
|
||||
transform_setOrigin_TxyzRy(xyz, rotY);
|
||||
}
|
||||
|
||||
/* 0x58 */ f64 mSecondPerFrame;
|
||||
/* 0x60 */ fvb::TControl fvb_Control;
|
||||
/* 0x74 */ ctb::TControl ctb_Control;
|
||||
/* 0x88 */ bool mTransformOnSet;
|
||||
/* 0x89 */ bool mTransformOnGet;
|
||||
/* 0x8C */ Vec field_0x8c;
|
||||
/* 0x98 */ Vec field_0x98;
|
||||
/* 0xA4 */ f32 mTransformOnSet_RotationY;
|
||||
/* 0xA8 */ u8 field_0xa8[4];
|
||||
/* 0xAC */ Mtx mTransformOnSet_Matrix;
|
||||
/* 0xDC */ Mtx mTransformOnGet_Matrix;
|
||||
};
|
||||
|
||||
struct TParse : public stb::TParse {
|
||||
/* 8028566C */ TParse(JStudio::TControl*);
|
||||
/* 80285844 */ void parseBlock_block_fvb_(JStudio::stb::data::TParse_TBlock const&, u32);
|
||||
/* 802858F0 */ void parseBlock_block_ctb_(JStudio::stb::data::TParse_TBlock const&, u32);
|
||||
|
||||
/* 802856A8 */ virtual ~TParse();
|
||||
/* 80285708 */ virtual void parseHeader(JStudio::stb::data::TParse_THeader const&, u32);
|
||||
/* 802857E4 */ virtual void parseBlock_block(JStudio::stb::data::TParse_TBlock const&, u32);
|
||||
};
|
||||
|
||||
}; // namespace JStudio
|
||||
|
||||
#endif /* JSTUDIO_CONTROL_H */
|
||||
|
||||
@@ -3,4 +3,10 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
namespace JStudio {
|
||||
namespace data {
|
||||
extern const char ga8cSignature[8];
|
||||
} // namespace data
|
||||
} // namespace JStudio
|
||||
|
||||
#endif /* JSTUDIO_DATA_H */
|
||||
|
||||
@@ -2,5 +2,14 @@
|
||||
#define JSTUDIO_MATH_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "dolphin/mtx/mtxvec.h"
|
||||
|
||||
namespace JStudio {
|
||||
namespace math {
|
||||
/* 802859DC */ void getRotation_xyz(MtxP, f32, f32, f32);
|
||||
/* 80285B44 */ void getTransformation_SRxyzT(MtxP, Vec const&, Vec const&, Vec const&);
|
||||
/* 80285BCC */ void getFromTransformation_SRxyzT(Vec*, Vec*, Vec*, CMtxP);
|
||||
};
|
||||
}; // namespace JStudio
|
||||
|
||||
#endif /* JSTUDIO_MATH_H */
|
||||
|
||||
@@ -1,6 +1,237 @@
|
||||
#ifndef JSTUDIO_OBJECT_H
|
||||
#define JSTUDIO_OBJECT_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JStudio/JStudio/fvb.h"
|
||||
#include "JSystem/JStudio/JStudio/stb.h"
|
||||
#include "JSystem/JStudio/JStudio/ctb.h"
|
||||
#include "JSystem/JStudio/JStudio/jstudio-control.h"
|
||||
#include "dolphin/gx/GX.h"
|
||||
|
||||
namespace JStudio {
|
||||
namespace data {
|
||||
struct TEOperationData {};
|
||||
};
|
||||
|
||||
struct TAdaptor;
|
||||
struct TVariableValue {
|
||||
struct TOutput {
|
||||
/* 80285E0C */ ~TOutput();
|
||||
};
|
||||
|
||||
struct TOutput_none_ {
|
||||
/* 80285F6C */ ~TOutput_none_();
|
||||
/* 80285FCC */ void operator()(f32, JStudio::TAdaptor*) const;
|
||||
};
|
||||
|
||||
/* 80285E54 */ void update(f64, JStudio::TAdaptor*);
|
||||
/* 80285EB8 */ void update_immediate_(JStudio::TVariableValue*, f64);
|
||||
/* 80285ECC */ void update_time_(JStudio::TVariableValue*, f64);
|
||||
/* 80285F08 */ void update_functionValue_(JStudio::TVariableValue*, f64);
|
||||
/* 8028B568 */ TVariableValue();
|
||||
|
||||
static u8 soOutput_none_[4 + 4 /* padding */];
|
||||
|
||||
/* 0x00 */ f32 mValue;
|
||||
/* 0x04 */ u32 field_0x4;
|
||||
/* 0x08 */ void (*field_0x8)(TVariableValue*, double);
|
||||
/* 0x0C */ TFunctionValue* field_0xc;
|
||||
/* 0x10 */ TOutput* pOutput_;
|
||||
}; // Size: 0x14
|
||||
|
||||
class TObject : public stb::TObject {
|
||||
public:
|
||||
/* 80286864 */ TObject(JStudio::stb::data::TParse_TBlock_object const&, JStudio::TAdaptor*);
|
||||
/* 80286734 */ void forward_value(u32);
|
||||
|
||||
/* 802866B0 */ virtual ~TObject() = 0;
|
||||
/* 8028679C */ virtual void do_begin();
|
||||
/* 802867D4 */ virtual void do_end();
|
||||
virtual void do_paragraph(u32, void const*, u32) = 0;
|
||||
/* 8028680C */ virtual void do_wait(u32);
|
||||
/* 8028682C */ virtual void do_data(void const*, u32, void const*, u32);
|
||||
|
||||
/* 0x34 */ TAdaptor* mpAdaptor;
|
||||
};
|
||||
|
||||
struct TAdaptor {
|
||||
struct TSetVariableValue_immediate {};
|
||||
|
||||
/* 80285FD0 */ virtual ~TAdaptor() = 0;
|
||||
/* 80286018 */ virtual void adaptor_do_prepare();
|
||||
/* 8028601C */ virtual void adaptor_do_begin();
|
||||
/* 80286020 */ virtual void adaptor_do_end();
|
||||
/* 80286024 */ virtual void adaptor_do_update(u32);
|
||||
/* 80286028 */ virtual void adaptor_do_data(void const*, u32, void const*, u32);
|
||||
|
||||
/* 8028602C */ void adaptor_setVariableValue(JStudio::TControl*, u32,
|
||||
JStudio::data::TEOperationData, void const*, u32);
|
||||
/* 802860CC */ void adaptor_setVariableValue_n(JStudio::TControl*, u32 const*, u32,
|
||||
JStudio::data::TEOperationData, void const*,
|
||||
u32);
|
||||
/* 802861C0 */ void
|
||||
adaptor_setVariableValue_immediate(JStudio::TAdaptor::TSetVariableValue_immediate const*);
|
||||
/* 80286204 */ void adaptor_setVariableValue_Vec(u32 const*, Vec const&);
|
||||
/* 80286274 */ void adaptor_getVariableValue_Vec(Vec*, u32 const*) const;
|
||||
/* 802862AC */ void adaptor_setVariableValue_GXColor(u32 const*, GXColor const&);
|
||||
/* 8028638C */ void adaptor_getVariableValue_GXColor(GXColor*, u32 const*) const;
|
||||
/* 802864D8 */ void adaptor_updateVariableValue(JStudio::TControl*, u32);
|
||||
/* 8028656C */ void adaptor_setVariableValue_VOID_(JStudio::TAdaptor*, JStudio::TControl*, u32,
|
||||
void const*, u32);
|
||||
/* 80286584 */ void adaptor_setVariableValue_IMMEDIATE_(JStudio::TAdaptor*, JStudio::TControl*,
|
||||
u32, void const*, u32);
|
||||
/* 802865B0 */ void adaptor_setVariableValue_TIME_(JStudio::TAdaptor*, JStudio::TControl*, u32,
|
||||
void const*, u32);
|
||||
/* 802865DC */ void adaptor_setVariableValue_FVR_NAME_(JStudio::TAdaptor*, JStudio::TControl*,
|
||||
u32, void const*, u32);
|
||||
/* 80286648 */ void adaptor_setVariableValue_FVR_INDEX_(JStudio::TAdaptor*, JStudio::TControl*,
|
||||
u32, void const*, u32);
|
||||
|
||||
/* 0x4 */ TObject* pObject_;
|
||||
/* 0x8 */ TVariableValue* pValue_;
|
||||
/* 0xC */ u32 u;
|
||||
};
|
||||
|
||||
struct TAdaptor_actor : public TAdaptor {
|
||||
/* 802868B0 */ virtual ~TAdaptor_actor() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[14];
|
||||
|
||||
static u8 const sauVariableValue_3_TRANSLATION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_ROTATION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_SCALING_XYZ[12];
|
||||
}; // Size: 0x128
|
||||
|
||||
struct TObject_actor : public TObject {
|
||||
/* 80286910 */ TObject_actor(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_actor*);
|
||||
|
||||
/* 802881A4 */ virtual ~TObject_actor();
|
||||
/* 8028694C */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_ambientLight : public TAdaptor {
|
||||
/* 80286C9C */ virtual ~TAdaptor_ambientLight() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[4];
|
||||
|
||||
static u8 const sauVariableValue_3_COLOR_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR_RGBA[16];
|
||||
};
|
||||
|
||||
struct TObject_ambientLight : public TObject {
|
||||
/* 80286CFC */ TObject_ambientLight(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_ambientLight*);
|
||||
|
||||
/* 80288144 */ virtual ~TObject_ambientLight();
|
||||
/* 80286D38 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_camera : public TAdaptor {
|
||||
/* 80286E1C */ virtual ~TAdaptor_camera() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[12];
|
||||
|
||||
static u8 const sauVariableValue_3_POSITION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_TARGET_POSITION_XYZ[12];
|
||||
static u8 sauVariableValue_2_DISTANCE_NEAR_FAR[8];
|
||||
};
|
||||
|
||||
struct TObject_camera : public TObject {
|
||||
/* 80286E7C */ TObject_camera(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_camera*);
|
||||
|
||||
/* 802880E4 */ virtual ~TObject_camera();
|
||||
/* 80286EB8 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_fog : public TAdaptor {
|
||||
/* 8028717C */ virtual ~TAdaptor_fog() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[6];
|
||||
|
||||
static u8 const sauVariableValue_3_COLOR_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR_RGBA[16];
|
||||
static u8 sauVariableValue_2_RANGE_BEGIN_END[8];
|
||||
};
|
||||
|
||||
struct TObject_fog : public TObject {
|
||||
/* 802871DC */ TObject_fog(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_fog*);
|
||||
|
||||
/* 80288084 */ virtual ~TObject_fog();
|
||||
/* 80287218 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_light : public TAdaptor {
|
||||
/* 80287308 */ virtual ~TAdaptor_light() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[13];
|
||||
|
||||
static u8 const sauVariableValue_3_COLOR_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR_RGBA[16];
|
||||
static u8 const sauVariableValue_3_POSITION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_TARGET_POSITION_XYZ[12];
|
||||
static u8 sauVariableValue_2_DIRECTION_THETA_PHI[8];
|
||||
};
|
||||
|
||||
struct TObject_light : public TObject {
|
||||
/* 80287368 */ TObject_light(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_light*);
|
||||
|
||||
/* 80288024 */ virtual ~TObject_light();
|
||||
/* 802873A4 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_message : public TAdaptor {
|
||||
/* 802875E0 */ virtual ~TAdaptor_message() = 0;
|
||||
};
|
||||
|
||||
struct TObject_message : public TObject {
|
||||
/* 80287640 */ TObject_message(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_message*);
|
||||
|
||||
/* 80287FC4 */ virtual ~TObject_message();
|
||||
/* 8028767C */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_particle : public TAdaptor {
|
||||
/* 8028770C */ virtual ~TAdaptor_particle() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[20];
|
||||
|
||||
static u8 const sauVariableValue_3_TRANSLATION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_ROTATION_XYZ[12];
|
||||
static u8 const sauVariableValue_3_SCALING_XYZ[12];
|
||||
static u8 const sauVariableValue_3_COLOR_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR_RGBA[16];
|
||||
static u8 const sauVariableValue_3_COLOR1_RGB[12];
|
||||
static u8 const sauVariableValue_4_COLOR1_RGBA[16];
|
||||
};
|
||||
|
||||
struct TObject_particle : public TObject {
|
||||
/* 8028776C */ TObject_particle(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_particle*);
|
||||
|
||||
/* 80287F64 */ virtual ~TObject_particle();
|
||||
/* 802877A8 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
struct TAdaptor_sound : public TAdaptor {
|
||||
/* 80287B3C */ virtual ~TAdaptor_sound() = 0;
|
||||
|
||||
/* 0x10 */ TVariableValue mValue[13];
|
||||
|
||||
static u8 const sauVariableValue_3_POSITION_XYZ[12];
|
||||
}; // Size: 0x114
|
||||
|
||||
struct TObject_sound : public TObject {
|
||||
/* 80287B9C */ TObject_sound(JStudio::stb::data::TParse_TBlock_object const&,
|
||||
JStudio::TAdaptor_sound*);
|
||||
|
||||
/* 80287F04 */ virtual ~TObject_sound();
|
||||
/* 80287BD8 */ virtual void do_paragraph(u32, void const*, u32);
|
||||
};
|
||||
|
||||
}; // namespace JStudio
|
||||
|
||||
#endif /* JSTUDIO_OBJECT_H */
|
||||
|
||||
@@ -15,8 +15,8 @@ public:
|
||||
/* 80288988 */ void isEqual(JStudio::object::TIDData const&, JStudio::object::TIDData const&);
|
||||
|
||||
private:
|
||||
const void* mID;
|
||||
u32 mID_size;
|
||||
/* 0x00 */ const void* mID;
|
||||
/* 0x04 */ u32 mID_size;
|
||||
};
|
||||
|
||||
struct TObject_ID : public TIDData {
|
||||
|
||||
@@ -21,8 +21,8 @@ const int BLOCK_NONE = -1;
|
||||
|
||||
// Used to expand a signed 24 int to a signed 32 int
|
||||
const u32 gu32Mask_TSequence_value_signExpansion = 0xFF000000;
|
||||
extern const u32 ga4cSignature; // 'STB/0'
|
||||
extern const u8 gauDataSize_TEParagraph_data[32];
|
||||
extern u32 ga4cSignature; // 'STB/0'
|
||||
extern const s32 gauDataSize_TEParagraph_data[8];
|
||||
|
||||
inline void toString_block(char* a5c, u32 arg1) {
|
||||
// from debug, todo
|
||||
|
||||
@@ -107,6 +107,8 @@ private:
|
||||
|
||||
class TFactory {
|
||||
public:
|
||||
TFactory() {}
|
||||
|
||||
/* 802895B4 */ virtual ~TFactory();
|
||||
/* 802895FC */ virtual TObject* create(data::TParse_TBlock_object const&);
|
||||
/* 80289604 */ virtual void destroy(TObject*);
|
||||
@@ -130,13 +132,15 @@ public:
|
||||
/* 80289300 */ void destroyObject_all();
|
||||
/* 80289364 */ TObject* getObject(void const*, u32);
|
||||
/* 80289404 */ void reset();
|
||||
/* 802894B4 */ void forward(u32);
|
||||
/* 802894B4 */ u8 forward(u32);
|
||||
|
||||
void setStatus_(u32 status) { mStatus = status; }
|
||||
void resetStatus_() { setStatus_(0); }
|
||||
bool isSuspended() const { return _54 > 0; }
|
||||
TFactory* getFactory() const { return pFactory; }
|
||||
TObject_control& referObject_control() { return mObject_control; }
|
||||
int getSuspend() const { return _54; }
|
||||
void setSuspend(s32 suspend) { mObject_control.setSuspend(suspend); }
|
||||
|
||||
private:
|
||||
/* 0x04 */ u32 _4;
|
||||
@@ -145,7 +149,7 @@ private:
|
||||
/* 0x10 */ JGadget::TLinkList<TObject, 12> mObjectContainer;
|
||||
/* 0x1C */ u32 mStatus;
|
||||
/* 0x20 */ TObject_control mObject_control;
|
||||
/* 0x54 */ s32 _54; // "second per frame"?
|
||||
/* 0x54 */ s32 _54;
|
||||
};
|
||||
|
||||
} // namespace stb
|
||||
|
||||
Reference in New Issue
Block a user