Work on weak function ordering (#2917)

* Fix functionvalue weak func order

* Add script to help diffing weak function order

* Improve alink weak func order (44 -> 15)

* Improve m_Do_ext weak order (12 -> 7)

* Remove old hack

* Fix d_a_tbox weak func order

* Fix d_a_npc_ks weak func order

* Fix error when trying to diff weak func order for ShieldD due to hidden function alignment gap symbols
This commit is contained in:
LagoLunatic
2025-12-05 21:46:58 -05:00
committed by GitHub
parent e6b1f3a4f2
commit ae9fa8922a
16 changed files with 248 additions and 145 deletions
+1
View File
@@ -6,6 +6,7 @@
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_crvhahen.h"
#include "d/actor/d_a_player.h"
static const char* l_arcName = "CrvFence";
+2 -1
View File
@@ -6,6 +6,7 @@
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_ornament_cloth.h"
#include "d/actor/d_a_player.h"
#include "d/d_a_obj.h"
enum J_Necktie_RES_File_ID {
@@ -192,7 +193,7 @@ void daObjOnCloth_c::checkPlayerMove() {
field_0x650[attr().delayedVibrationFrame - 1] = 0.0f;
if (!(fopAcM_searchPlayerDistanceXZ2(this) > attr().playerReactionDist * attr().playerReactionDist)) {
f32 fVar2 = fopAcM_GetSpeedF((fopAc_ac_c*)daPy_getPlayerActorClass());
f32 fVar2 = fopAcM_GetSpeedF(daPy_getPlayerActorClass());
if (fVar2 > attr().playerReactionSpeed) {
field_0x650[attr().delayedVibrationFrame - 1] = fVar2;
}
+1
View File
@@ -6,6 +6,7 @@
#include "d/dolzel_rel.h" // IWYU pragma: keep
#include "d/actor/d_a_obj_stopper2.h"
#include "d/actor/d_a_player.h"
static char* l_arcName = "Stop00";
+1
View File
@@ -7,6 +7,7 @@
#include "d/actor/d_a_tag_yami.h"
#include "d/d_com_inf_game.h"
#include "d/actor/d_a_player.h"
const static dCcD_SrcCyl l_sph_src = {
{
+29
View File
@@ -43,6 +43,35 @@ static daTbox_ModelInfo l_modelInfo[3] = {
static cXyz l_light_offset(0.0f, 35.0f, 0.0f);
class daTbox_HIO_c : public mDoHIO_entry_c {
public:
daTbox_HIO_c();
virtual ~daTbox_HIO_c() {}
void genMessage(JORMContext*);
/* 0x04 */ u8 mItemNo;
/* 0x05 */ u8 mUseDebugItemNo;
/* 0x06 */ u8 mClearSwitch;
/* 0x07 */ u8 mDemoType;
/* 0x08 */ u8 mDebugLightColorEnabled;
/* 0x09 */ u8 mTimerDisplay;
/* 0x0A */ u8 mCheckDisplay;
/* 0x0B */ u8 mSaveOff;
/* 0x0C */ f32 mGravity;
/* 0x10 */ cXyz mLightOffset;
/* 0x1C */ s16 mLightColorR;
/* 0x1E */ s16 mLightColorG;
/* 0x20 */ s16 mLightColorB;
/* 0x24 */ f32 mLightPower;
/* 0x28 */ f32 mFluctuationRate;
/* 0x2C */ f32 mEnvColorInfluence;
/* 0x30 */ s16 mFluctuationSpeed;
/* 0x32 */ u8 mForPlacementCheck;
};
STATIC_ASSERT(sizeof(daTbox_HIO_c) == 0x34);
daTbox_HIO_c::daTbox_HIO_c() {
mItemNo = 1;
mUseDebugItemNo = 0;
-2
View File
@@ -1,7 +1,5 @@
#include "d/dolzel.h" // IWYU pragma: keep
#define DISABLE_MSG_OBJECT_EXTERN
#include "d/d_msg_object.h"
#include "d/d_msg_class.h"
#include "d/d_msg_string.h"