mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-19 05:22:39 -04:00
d_bg_w_deform OK
This commit is contained in:
+1
-1
@@ -394,7 +394,7 @@ config.libs = [
|
||||
Object(Matching, "d/d_bg_s_spl_grp_chk.cpp"),
|
||||
Object(Matching, "d/d_bg_s_wtr_chk.cpp"),
|
||||
Object(NonMatching, "d/d_bg_w.cpp"),
|
||||
Object(NonMatching, "d/d_bg_w_deform.cpp"),
|
||||
Object(Matching, "d/d_bg_w_deform.cpp"),
|
||||
Object(NonMatching, "d/d_bg_w_hf.cpp"),
|
||||
Object(NonMatching, "d/d_bg_w_sv.cpp"),
|
||||
Object(Matching, "d/d_cc_d.cpp"),
|
||||
|
||||
+1
-1
@@ -70,7 +70,7 @@ public:
|
||||
/* 0xB8 */ u16 mRoomNo;
|
||||
/* 0xBA */ u8 mFlag;
|
||||
/* 0xBB */ u8 mRoomNo2;
|
||||
};
|
||||
}; // Size: 0xBC
|
||||
|
||||
dBgW* dBgW_NewSet(cBgD_t*, unsigned long, float(*)[3][4]);
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#ifndef D_BG_W_DEFORM_H
|
||||
#define D_BG_W_DEFORM_H
|
||||
|
||||
#include "d/d_bg_w_sv.h"
|
||||
#include "JSystem/J3DGraphAnimator/J3DSkinDeform.h"
|
||||
|
||||
class dBgWDeform : public dBgWSv, public J3DSkinDeform {
|
||||
public:
|
||||
bool Set(cBgD_t*, J3DModel*, u32);
|
||||
|
||||
public:
|
||||
/* 0x00 */ /* dBgWSv */
|
||||
/* 0xC4 */ /* J3DSkinDeform */
|
||||
}; // Size: 0xDC
|
||||
|
||||
#endif /* D_BG_W_DEFORM_H */
|
||||
@@ -17,6 +17,10 @@ public:
|
||||
virtual void CrrPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
void TransPosWork(cXyz*, int, int, int);
|
||||
virtual void TransPos(cBgS_PolyInfo&, void*, bool, cXyz*, csXyz*, csXyz*);
|
||||
};
|
||||
|
||||
public:
|
||||
/* 0xBC */ u32 mBC;
|
||||
/* 0xC0 */ Vec* mC0;
|
||||
}; // Size: 0xC4
|
||||
|
||||
#endif /* D_BG_W_SV_H */
|
||||
|
||||
+22
-5
@@ -3,11 +3,28 @@
|
||||
// Translation Unit: d_bg_w_deform.cpp
|
||||
//
|
||||
|
||||
#include "d_bg_w_deform.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/d_bg_w_deform.h"
|
||||
#include "JSystem/J3DGraphAnimator/J3DModel.h"
|
||||
#include "JSystem/J3DGraphAnimator/J3DModelData.h"
|
||||
|
||||
/* 800A9928-800A9A48 .text Set__10dBgWDeformFP6cBgD_tP8J3DModelUl */
|
||||
void dBgWDeform::Set(cBgD_t*, J3DModel*, unsigned long) {
|
||||
/* Nonmatching */
|
||||
bool dBgWDeform::Set(cBgD_t* bgd, J3DModel* pmodel, u32 r30) {
|
||||
JUT_ASSERT(32, pmodel->getModelData()->isDeformablePositionFormat() == true);
|
||||
if (cBgW::Set(bgd, 0x33, NULL)) {
|
||||
return true;
|
||||
}
|
||||
mBC = r30;
|
||||
if (pmodel->setSkinDeform(this, 1) == J3DErrType_OutOfMemory) {
|
||||
return true;
|
||||
}
|
||||
pmodel->offFlag(J3DMdlFlag_SkinNrmCpu);
|
||||
pmodel->onFlag(J3DMdlFlag_SkinPosCpu);
|
||||
if (mBC & 1) {
|
||||
return false;
|
||||
}
|
||||
mC0 = new Vec[pm_bgd->m_v_num];
|
||||
if (mC0 == NULL) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user