general cleanup, d_menu_quit / d_a_obj_testcube mostly done, d_msg_scrn_explain debug (#3065)

* typedef for cPhs_Step

* make sdk includes consistent

* d_menu_quit / d_msg_scrn_explain debug

* d_a_obj_testcube mostly done

* d_debug_pad mostly done

* jstudio tool library headers

* some JStudioCameraEditor headers

* d_jcam_editor mostly done

* try fixing some shield regressions

* d_bg_parts mostly done

* fix merge errors

* debug fix
This commit is contained in:
TakaRikka
2026-01-24 23:36:23 -08:00
committed by GitHub
parent 6f73e18bd2
commit c9e2a73dda
612 changed files with 4052 additions and 1141 deletions
@@ -0,0 +1,39 @@
#ifndef JSTUDIOTOOLLIBRARY_ANCHOR_H
#define JSTUDIOTOOLLIBRARY_ANCHOR_H
#include "JSystem/JStudio/JStudioToolLibrary/scroll.h"
namespace JStudioToolLibrary {
enum TEAnchor {
};
struct TPoint {
TPoint(const TPoint&);
TPoint(int, int);
void setX(int);
void setY(int);
int getX() const;
int getY() const;
/* 0x0 */ int iX_;
/* 0x4 */ int iY_;
};
struct TAnchor_corner {
TAnchor_corner(TEAnchor, int, int);
void setAnchor(TEAnchor);
void setAnchorPosition(const TPoint&);
void getPosition(TPoint*, const TRectangle&, int, int) const;
TEAnchor getAnchor() const;
TPoint* getAnchorPosition() const;
/* 0x0 */ TEAnchor eAnchor_;
/* 0x4 */ TPoint oAnchorPosition_;
};
}
#endif
@@ -0,0 +1,87 @@
#ifndef JSTUDIOTOOLLIBRARY_CONSOLE_H
#define JSTUDIOTOOLLIBRARY_CONSOLE_H
#include "JSystem/JKernel/JKRHeap.h"
#include "JSystem/JHostIO/JORReflexible.h"
#include "JSystem/JUtility/TColor.h"
namespace JStudioToolLibrary {
struct JORValPrpEvent {};
struct JORStrValPrpEvent {};
struct TConsole {
TConsole(const char*, JORReflexible*);
u32 memory_allocate_available(JKRHeap*, double, u32*);
bool memory_isAllocatable(JKRHeap*);
bool memory_isAllocatable(JKRHeap*, u32);
bool memory_isAllocatable_available(JKRHeap*, double, u32*);
bool memory_allocate(JKRHeap*, u32);
void control_enable(const u32*, bool);
void control_enable(u32, bool);
void control_setStyle(u32, u32);
void control_generateRadioButton(JORMContext*, u32, const char*, const char*, int);
void control_generateSelectList(JORMContext*, u32, const char*, uint, const char*, int);
void control_generateLabel(JORMContext*, u32, const char*);
void control_getRadioButton(const JORValPrpEvent*);
void control_isCheckBox(const JORValPrpEvent*);
void control_getSelectList(const JORValPrpEvent*);
void control_generateEditBox_float(JORMContext*, u32, const char*, const f32&);
void control_generateEditBox_uint(JORMContext*, u32, const char*, const uint&);
void control_generateTitle(JORMContext*, const char*) const;
void control_generateSeparator(JORMContext*, const char*);
void control_setCheckBox(u32, bool);
void control_generateRadioButton_style(JORMContext*, u32, u32, const char*, const char**, int);
void control_setRadioButton(u32, int);
void control_generateSelectList_style(JORMContext*, u32, u32, const char*, uint, const char**, int);
void control_setSelectList(u32, int);
void control_generateLabel_style(JORMContext*, u32, u32, const char*);
void control_generateEditBox_style(JORMContext*, u32, u32, const char*, const char*);
void control_generateEditBox_style_int(JORMContext*, u32, u32, const char*, const int&);
void control_generateEditBox_style_uint(JORMContext*, u32, u32, const char*, const uint&);
void control_generateEditBox_style_float(JORMContext*, u32, u32, const char*, const f32&);
void control_generateEditBox_style_RGBA(JORMContext*, u32, u32, const char*, JUtility::TColor);
void control_generateEditBox_int(JORMContext*, u32, const char*, const int&);
void control_setEditBox(u32, const char*);
void control_setEditBox_f(u32, const char*, ...);
void control_setEditBox_f_va(u32, const char*, va_list);
void control_setEditBox_int(u32, const int&);
void control_setEditBox_uint(u32, const uint&);
void control_setEditBox_float(u32, const f32&);
void control_setEditBox_RGBA(u32, const JUtility::TColor&);
void control_replyEditBox_int(const JORStrValPrpEvent*, int*);
void control_replyEditBox_uint(const JORStrValPrpEvent*, uint*);
void control_replyEditBox_float(const JORStrValPrpEvent*, f32*);
void control_replyEditBox_float_not(const JORStrValPrpEvent*, f32*, const f32&);
void control_replyEditBox_float_greaterEqual(const JORStrValPrpEvent*, f32*, const f32&);
void control_replyEditBox_RGBA(const JORStrValPrpEvent*, JUtility::TColor*);
void control_forceEditBox(u32, const char*, const char*);
void control_replyEditBox_float_range(const JORStrValPrpEvent*, f32*, const f32&, const f32&);
void control_replyEditBox_uint_range(const JORStrValPrpEvent*, uint*, const uint&, const uint&);
bool parseValue_int(const char*, int*);
bool parseValue_uint(const char*, uint*);
bool parseValue_float(const char*, f32*);
bool parseValue_double(const char*, double*);
bool parseValue_RGBA(const char*, JUtility::TColor*);
bool parseValueList_float(const char*, char, f32*, f32*);
int openMessageBox(uint, const char*);
int openMessageBox_f(uint, const char*, ...);
int openMessageBox_f_va(uint, const char*, va_list);
bool openBrowser(const char*);
void toValue_style_(u32);
void getValueString_int(char*, u32, int);
void getValueString_uint(char*, u32, uint);
void getValueString_float(char*, u32, f32);
void getValueString_RGBA(char*, u32, const JUtility::TColor&);
/* 0x0 */ char* szTitle_;
/* 0x4 */ JORReflexible* pReflexible_;
};
}
#endif
@@ -0,0 +1,81 @@
#ifndef JSTUDIOTOOLLIBRARY_CONTROLSET_PREVIEW_H
#define JSTUDIOTOOLLIBRARY_CONTROLSET_PREVIEW_H
#include "JSystem/JStudio/JStudioToolLibrary/controlset.h"
namespace JStudioToolLibrary {
struct TControlSet_preview : public TControlSet {
struct TAdaptor {
virtual bool do_isReady();
virtual void do_begin();
virtual void do_end();
virtual void do_current(u32, s32);
};
enum TEPreview {};
TControlSet_preview(TConsole*, u32, uint, TAdaptor*);
void preview_start();
void preview_stop();
void preview_rewind();
void preview_step();
void preview_pause();
void preview_play();
bool isPreview_stop() const;
u32 getTime() const;
u8 isTime_end() const;
void update();
void forwardTime_next_();
int getTime_step() const;
void adaptor_current_(u32, s32);
void flushTime_();
void setTime_(u32);
void value_setTime_(u32);
void preview(TEPreview);
void adaptor_begin_();
void resetTime_();
bool adaptor_isReady_();
u32 getControlStyle_time_end_() const;
u32 getControlStyle_time_() const;
void adaptor_end_();
void control_updateTime_();
void control_generate_preview(JORMContext*, TControlSet*, const TControl&);
void control_reply_preview(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_preview(TControlSet*, const TControl&);
void control_generate_preview_rewind(JORMContext*, TControlSet*, const TControl&);
void control_reply_preview_rewind(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_preview_rewind(TControlSet*, const TControl&);
void control_generate_preview_play(JORMContext*, TControlSet*, const TControl&);
void control_reply_preview_play(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_preview_play(TControlSet*, const TControl&);
void control_generate_preview_step(JORMContext*, TControlSet*, const TControl&);
void control_reply_preview_step(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_preview_step(TControlSet*, const TControl&);
void control_generate_time(JORMContext*, TControlSet*, const TControl&);
void control_reply_time(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_time(TControlSet*, const TControl&);
void control_generate_time_end(JORMContext*, TControlSet*, const TControl&);
u32 getTime_end() const;
void control_reply_time_end(const JORPropertyEvent*, TControlSet*, const TControl&);
void control_update_time_end(TControlSet*, const TControl&);
void control_generate_time_step(JORMContext*, TControlSet*, const TControl&);
void control_reply_time_step(const JORPropertyEvent*, TControlSet*, const TControl&);
void setTime_step(u32);
void control_updateTime_step();
void value_setTime_step(u32);
void control_update_time_step(TControlSet*, const TControl&);
/* 0x14 */ u8 field_0x14;
/* 0x18 */ int field_0x18;
/* 0x1C */ u32 uTime_;
/* 0x20 */ u32 field_0x20;
/* 0x24 */ int field_0x24;
/* 0x28 */ u32 field_0x28;
/* 0x2C */ int iTimeStep_;
/* 0x30 */ u8 bTimeEnd_;
/* 0x34 */ TAdaptor* pAdaptor_;
};
}
#endif
@@ -0,0 +1,54 @@
#ifndef JSTUDIOTOOLLIBRARY_CONTROLSET_TRANSFORM_H
#define JSTUDIOTOOLLIBRARY_CONTROLSET_TRANSFORM_H
#include "JSystem/JStudio/JStudioToolLibrary/controlset.h"
#include "JSystem/JStudio/JStudio/jstudio-control.h"
namespace JStudioToolLibrary_JStudio {
struct TControlSet_transform : public JStudioToolLibrary::TControlSet {
TControlSet_transform(JStudioToolLibrary::TConsole*, u32, JStudio::TControl);
void resetOrigin();
void setOrigin(const Vec&, f32);
void setEnabled(bool);
JStudio::TControl* jstudio_getControl() const;
void jstudio_setControl(JStudio::TControl*);
void control_updateEnabled();
void value_setEnabled(bool);
void control_updateOrigin();
void value_setOrigin(const Vec&, f32);
bool setOrigin(const char*);
bool setOrigin_TxyzRy_(TControlSet_transform*, const char*);
void control_generate_float_(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&, f32);
void control_reply_float_(const JORPropertyEvent*, TControlSet_transform*, f32*);
void control_update_float_(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&, f32);
void control_generate_enable(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
bool isEnabled() const;
void control_reply_enable(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_enable(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_generate_origin_translationX(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_reply_origin_translationX(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_origin_translationX(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_generate_origin_translationY(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_reply_origin_translationY(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_origin_translationY(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_generate_origin_translationZ(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_reply_origin_translationZ(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_origin_translationZ(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_generate_origin_rotationY(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_reply_origin_rotationY(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_origin_rotationY(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_generate_origin_reset(JORMContext*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_reply_origin_reset(const JORPropertyEvent*, TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
void control_update_origin_reset(TControlSet_transform*, const JStudioToolLibrary::TControlSet::TControl&);
/* 0x14 */ bool bEnabled_;
/* 0x18 */ TControl* pControl_;
/* 0x1C */ Vec field_0x1c;
/* 0x28 */ f32 field_0x28;
};
}
#endif
@@ -0,0 +1,63 @@
#ifndef JSTUDIOTOOLLIBRARY_CONTROLSET_H
#define JSTUDIOTOOLLIBRARY_CONTROLSET_H
#include "JSystem/JStudio/JStudioToolLibrary/console.h"
namespace JStudioToolLibrary {
struct TControlSet {
struct TControl {
typedef void* (*generateFn)(JORMContext*, TControlSet*, const TControl&);
typedef void* (*replyFn)(const JORPropertyEvent*, TControlSet*, const TControl&);
typedef void* (*updateFn)(TControlSet*, const TControl&);
TControl();
TControl(const char*, generateFn, replyFn, updateFn);
void update(TControlSet*) const;
void reply(const JORPropertyEvent*, TControlSet*) const;
void generate(JORMContext*, TControlSet*) const;
bool isEnd() const;
const char* getLabel() const;
int getID(const TControlSet&) const;
void setStyle(TControlSet*, u32) const;
/* 0x00 */ char* szLabel_;
/* 0x04 */ void* pfnGenerate_;
/* 0x08 */ void* pfnReply_;
/* 0x0C */ void* pfnUpdate_;
};
TControlSet(TConsole*, const TControl*, u32, u32, const u32*);
TConsole* getConsole();
TControl* control_getControl_IDOffset(u32) const;
u32 control_getNumber() const;
void control_generate(JORMContext*);
void control_generate_all(JORMContext*);
void control_generate(JORMContext*, const TControl&);
void control_generate_IDOffset(JORMContext*, const u32*);
void control_generate_IDOffset(JORMContext*, u32);
void control_generate_separator(JORMContext*, TControlSet*, const TControl&);
void control_generate_label(JORMContext*, TControlSet*, const TControl&);
void control_reply(const JORPropertyEvent*);
void control_getControl(u32) const;
u32 control_getIDBegin() const;
void control_toID(const TControl*) const;
u32 control_toID_IDOffset(u32) const;
u32 control_toIDOffset(const TControl&) const;
void control_update_IDOffset(u32);
void control_update(const TControl&);
void control_update_IDOffset(const u32*);
void control_setStyle(const TControl&, u32);
void control_setStyle_IDOffset(u32, u32);
/* 0x00 */ TConsole* pConsole_;
/* 0x04 */ TControl* paoControl_;
/* 0x08 */ u32 uNumber_;
/* 0x0C */ u32 field_0xc;
/* 0x10 */ u32 field_0x10;
};
}
#endif
@@ -0,0 +1,47 @@
#ifndef JSTUDIOTOOLLIBRARY_INTERFACE_H
#define JSTUDIOTOOLLIBRARY_INTERFACE_H
#include "JSystem/JUtility/JUTGamePad.h"
namespace JStudioToolLibrary {
struct TPad {
struct TData {
TData();
void reset();
/* 0x00 */ int iButton_;
/* 0x04 */ int iButtonTrigger_;
/* 0x08 */ int iButtonRelease_;
/* 0x0C */ int iButtonRepeat_;
/* 0x10 */ f32 fAnalogMainStickX_;
/* 0x14 */ f32 fAnalogMainStickY_;
/* 0x18 */ f32 fAnalogSubStickX_;
/* 0x1C */ f32 fAnalogSubStickY_;
/* 0x20 */ f32 fAnalogTriggerL_;
/* 0x24 */ f32 fAnalogTriggerR_;
};
TPad();
void setPad(const JUTGamePad* pPad) {
pPad_ = pPad;
}
bool isEnabled() const;
void getData(TData*) const;
f32 getAnalog_triggerR() const;
f32 getAnalog_triggerL() const;
f32 getAnalog_subStickY() const;
f32 getAnalog_subStickX() const;
f32 getAnalog_mainStickY() const;
f32 getAnalog_mainStickX() const;
int getButton_repeat() const;
int getButton_release() const;
int getButton_trigger() const;
int getButton() const;
/* 0x0 */ const JUTGamePad* pPad_;
};
}
#endif
@@ -0,0 +1,49 @@
#ifndef JSTUDIOTOOLLIBRARY_SCROLL_H
#define JSTUDIOTOOLLIBRARY_SCROLL_H
#include "JSystem/JStudio/JStudioToolLibrary/visual.h"
namespace JStudioToolLibrary {
struct TScroll {
TScroll();
virtual ~TScroll();
int getStride() const;
int getValue() const;
int getMin() const;
int getMax() const;
void setStride(int);
void setValue_scroll(int);
void setValue(int);
void setRange(int, int);
void setValue_range_(int, int, int);
/* 0x04 */ int iValue_;
/* 0x08 */ int iMin_;
/* 0x0C */ int iMax_;
/* 0x10 */ int field_0x10;
/* 0x14 */ int iStride_;
};
struct TScroll_drawBar : public TScroll {
void setRectangle(int, int, int, int);
TRectangle& getRectangle() const;
JUtility::TColor& getColor_disabled() const;
JUtility::TColor& getColor_background() const;
JUtility::TColor& getColor_foreground() const;
JUtility::TColor& getColor_frame() const;
/* 0x18 */ TRectangle oRectangle_;
/* 0x28 */ JUtility::TColor oColorFrame_;
/* 0x2C */ JUtility::TColor oColorBackground_;
/* 0x30 */ JUtility::TColor oColorForeground_;
/* 0x34 */ JUtility::TColor oColorDisabled_;
};
struct TScroll_drawBar_horizontal : public TScroll_drawBar {
virtual ~TScroll_drawBar_horizontal();
virtual void draw(TDrawPrimitive2D*) const;
};
}
#endif
@@ -0,0 +1,125 @@
#ifndef JSTUDIOTOOLLIBRARY_VISUAL_H
#define JSTUDIOTOOLLIBRARY_VISUAL_H
#include "JSystem/JUtility/TColor.h"
#include "JSystem/JUtility/JUTFont.h"
#include "JSystem/J2DGraph/J2DOrthoGraph.h"
namespace JStudioToolLibrary {
struct TRectangle {
TRectangle();
TRectangle(int, int, int, int);
void set(int, int, int, int);
int getBottom() const;
int getTop() const;
int getRight() const;
int getLeft() const;
int getWidth() const;
int getHeight() const;
/* 0x00 */ int iLeft_;
/* 0x04 */ int iTop_;
/* 0x08 */ int iRight_;
/* 0x0C */ int iBottom_;
};
struct TDrawPrimitive2D {
TDrawPrimitive2D();
void setRender(J2DOrthoGraph* pOrthoGraph) {
pOrthoGraph_ = pOrthoGraph;
}
void fillRectangle(int, int, int, int);
void setColor(const JUtility::TColor&);
void prepare();
bool isEnabled() const;
TRectangle getRectangle() const;
void setColor(const JUtility::TColor&, const JUtility::TColor&, const JUtility::TColor&, const JUtility::TColor&);
void frameRectangle(int, int, int, int);
void setLineWidth(f32);
/* 0x0 */ J2DOrthoGraph* pOrthoGraph_;
};
struct TDrawPrimitive3D {
TDrawPrimitive3D();
void setColor(GXColor);
void setLineWidth(f32);
void setGXState_position3f32();
void endGX();
void beginGX(GXPrimitive, u32);
void setGXColor(GXColor);
void setGXLineWidth(f32);
void prepare();
void drawAxis();
void setGXColor();
void setGXLineWidth();
void setGXState_position1x8();
void drawAxis_arrow();
void drawAxis_color();
void setGXState_position1x8_color1x8();
void drawAxis_color_arrow();
void drawGrid_xyz(uint);
void setGXState_position3s16();
void drawGrid_xy(uint);
void drawGrid_xz(uint);
void drawGrid_yz(uint);
/* 0x0 */ f32 fLineWidth_;
/* 0x4 */ GXColor oColor_;
};
struct TPrint {
TPrint();
int getY() const;
int getX() const;
void setFont(JUTFont* pFont) {
pFont_ = pFont;
}
void setColor(const JUtility::TColor&);
void locate(int, int);
void prepare();
int getFontHeight() const;
int getFontWidth() const;
bool isEnabled() const;
void processControlCharacter(int);
void print(int);
void drawCharacter(int);
void print(const char*);
void print_f(const char*, ...);
void print_f_va(const char*, va_list);
/* 0x00 */ JUTFont* pFont_;
/* 0x04 */ int field_0x4;
/* 0x08 */ int field_0x8;
/* 0x0C */ int iX_;
/* 0x10 */ int iY_;
};
struct TColor_variable {
struct TVelocity {
TVelocity(const TVelocity&);
TVelocity(int, int, int, int);
/* 0x00 */ int field_0x0;
/* 0x04 */ int field_0x4;
/* 0x08 */ int field_0x8;
/* 0x0C */ int field_0xc;
};
TColor_variable(const JUtility::TColor&, const TVelocity&);
void update();
void updateValue_(u8*, int*);
/* 0x00 */ JUtility::TColor oColor_;
/* 0x04 */ TVelocity oVelocity_;
};
}
#endif