mirror of https://github.com/zeldaret/tp.git
d_a_myna equivalent (#2516)
This commit is contained in:
parent
ffa8e9bb9a
commit
a41de30a24
|
@ -1753,7 +1753,7 @@ config.libs = [
|
|||
ActorRel(NonMatching, "d_a_mg_fshop"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_mirror"),
|
||||
ActorRel(NonMatching, "d_a_movie_player", extra_cflags=["-O3,p"]),
|
||||
ActorRel(NonMatching, "d_a_myna"),
|
||||
ActorRel(Equivalent, "d_a_myna"), # weak function order
|
||||
ActorRel(NonMatching, "d_a_ni"),
|
||||
ActorRel(NonMatching, "d_a_npc_aru"),
|
||||
ActorRel(NonMatching, "d_a_npc_ash"),
|
||||
|
|
|
@ -8,6 +8,35 @@
|
|||
#include "m_Do/m_Do_ext.h"
|
||||
#include "m_Do/m_Do_hostIO.h"
|
||||
|
||||
|
||||
class daMyna_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
/* 8094A960 */ virtual ~daMyna_HIO_c() {}
|
||||
|
||||
// Must be inlined but defined in .cpp for sinit to match
|
||||
inline daMyna_HIO_c();
|
||||
|
||||
void genMessage(JORMContext*);
|
||||
|
||||
/* 0x04 */ f32 field_0x04; // DAT_8094ba40
|
||||
/* 0x08 */ f32 field_0x08; // DAT_8094ba44
|
||||
/* 0x0C */ f32 field_0x0C; // DAT_8094ba48
|
||||
/* 0x10 */ f32 field_0x10; // DAT_8094ba4c
|
||||
/* 0x14 */ f32 field_0x14; // DAT_8094ba50
|
||||
/* 0x18 */ f32 field_0x18; // DAT_8094ba54
|
||||
/* 0x1C */ f32 field_0x1C; // DAT_8094ba58
|
||||
/* 0x20 */ f32 field_0x20; // DAT_8094ba5c
|
||||
/* 0x24 */ s16 field_0x24; // DAT_8094ba60
|
||||
/* 0x26 */ s16 field_0x26; // DAT_8094ba62
|
||||
/* 0x28 */ s16 field_0x28; // DAT_8094ba64
|
||||
/* 0x2A */ s16 field_0x2A; // DAT_8094ba66
|
||||
/* 0x2C */ s16 field_0x2C; // DAT_8094ba68
|
||||
/* 0x2E */ s16 field_0x2E; // DAT_8094ba6a
|
||||
/* 0x30 */ s16 field_0x30; // DAT_8094ba6c
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daMyna_HIO_c) == 0x34);
|
||||
|
||||
// This struct may end up belonging elsewhere
|
||||
struct ShopItem {
|
||||
/* 0x0 */ u32 mTargetActorID;
|
||||
|
@ -184,32 +213,5 @@ public:
|
|||
|
||||
STATIC_ASSERT(sizeof(daMyna_c) == 0x93C);
|
||||
|
||||
class daMyna_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
/* 8094A960 */ virtual ~daMyna_HIO_c() {}
|
||||
|
||||
// Must be inlined but defined in .cpp for sinit to match
|
||||
inline daMyna_HIO_c();
|
||||
|
||||
void genMessage(JORMContext*);
|
||||
|
||||
/* 0x04 */ f32 field_0x04; // DAT_8094ba40
|
||||
/* 0x08 */ f32 field_0x08; // DAT_8094ba44
|
||||
/* 0x0C */ f32 field_0x0C; // DAT_8094ba48
|
||||
/* 0x10 */ f32 field_0x10; // DAT_8094ba4c
|
||||
/* 0x14 */ f32 field_0x14; // DAT_8094ba50
|
||||
/* 0x18 */ f32 field_0x18; // DAT_8094ba54
|
||||
/* 0x1C */ f32 field_0x1C; // DAT_8094ba58
|
||||
/* 0x20 */ f32 field_0x20; // DAT_8094ba5c
|
||||
/* 0x24 */ s16 field_0x24; // DAT_8094ba60
|
||||
/* 0x26 */ s16 field_0x26; // DAT_8094ba62
|
||||
/* 0x28 */ s16 field_0x28; // DAT_8094ba64
|
||||
/* 0x2A */ s16 field_0x2A; // DAT_8094ba66
|
||||
/* 0x2C */ s16 field_0x2C; // DAT_8094ba68
|
||||
/* 0x2E */ s16 field_0x2E; // DAT_8094ba6a
|
||||
/* 0x30 */ s16 field_0x30; // DAT_8094ba6c
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daMyna_HIO_c) == 0x34);
|
||||
|
||||
#endif /* D_A_MYNA_H */
|
||||
|
|
|
@ -11,20 +11,7 @@
|
|||
#include "d/actor/d_a_tag_myna_light.h"
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
|
||||
/* 8094B360-8094B36C 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */
|
||||
static u8 cNullVec__6Z2Calc[12] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 8094B36C-8094B380 00000C 0004+10 0/0 0/0 0/0 .data @1787 */
|
||||
static u32 lit_1787[1 + 4 /* padding */] = {
|
||||
0x02000201,
|
||||
/* padding */
|
||||
0x40080000,
|
||||
0x00000000,
|
||||
0x3FE00000,
|
||||
0x00000000,
|
||||
};
|
||||
UNK_REL_DATA
|
||||
|
||||
/* 8094B488-8094B590 000128 0108+00 2/3 0/0 0/0 .data init_proc */
|
||||
static daMyna_c::ProcFunc init_proc[] = {
|
||||
|
@ -94,98 +81,7 @@ static int jntNodeCallBack(J3DJoint* i_jnt, int param_1) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
/* 8094B9F0-8094B9F4 000008 0001+03 2/2 0/0 0/0 .bss @1109 */
|
||||
static u8 lit_1109[1 + 3 /* padding */];
|
||||
|
||||
/* 8094B9F4-8094B9F8 00000C 0001+03 0/0 0/0 0/0 .bss @1107 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1107[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094B9F8-8094B9FC 000010 0001+03 0/0 0/0 0/0 .bss @1105 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1105[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094B9FC-8094BA00 000014 0001+03 0/0 0/0 0/0 .bss @1104 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1104[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA00-8094BA04 000018 0001+03 0/0 0/0 0/0 .bss @1099 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1099[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA04-8094BA08 00001C 0001+03 0/0 0/0 0/0 .bss @1097 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1097[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA08-8094BA0C 000020 0001+03 0/0 0/0 0/0 .bss @1095 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1095[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA0C-8094BA10 000024 0001+03 0/0 0/0 0/0 .bss @1094 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1094[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA10-8094BA14 000028 0001+03 0/0 0/0 0/0 .bss @1057 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1057[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA14-8094BA18 00002C 0001+03 0/0 0/0 0/0 .bss @1055 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1055[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA18-8094BA1C 000030 0001+03 0/0 0/0 0/0 .bss @1053 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1053[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA1C-8094BA20 000034 0001+03 0/0 0/0 0/0 .bss @1052 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1052[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA20-8094BA24 000038 0001+03 0/0 0/0 0/0 .bss @1014 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1014[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA24-8094BA28 00003C 0001+03 0/0 0/0 0/0 .bss @1012 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1012[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA28-8094BA2C 000040 0001+03 0/0 0/0 0/0 .bss @1010 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1010[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
|
||||
/* 8094BA2C-8094BA30 000044 0001+03 0/0 0/0 0/0 .bss @1009 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
static u8 lit_1009[1 + 3 /* padding */];
|
||||
#pragma pop
|
||||
UNK_REL_BSS
|
||||
|
||||
/* 8094BA3C-8094BA70 000054 0034+00 15/15 0/0 0/0 .bss l_HOSTIO */
|
||||
static daMyna_HIO_c l_HOSTIO;
|
||||
|
@ -1754,16 +1650,20 @@ void daMyna_c::animeControl() {
|
|||
case 8:
|
||||
attr = J3DFrameCtrl::EMode_NONE;
|
||||
break;
|
||||
case 14:
|
||||
case 13:
|
||||
attr = J3DFrameCtrl::EMode_NONE;
|
||||
break;
|
||||
case 14:
|
||||
break;
|
||||
}
|
||||
|
||||
setMcaMorfAnm(getTrnsfrmKeyAnm(l_bckFileNameTBL[field_0x935]), rate, morf, attr, 0, -1);
|
||||
if (cLib_checkBit<u16>(field_0x914, 0x40) == 0) {
|
||||
J3DAnmTransformKey* anm = getTrnsfrmKeyAnm(l_bckFileNameTBL[field_0x935]);
|
||||
setMcaMorfAnm(anm, rate, morf, attr, 0, -1);
|
||||
if (cLib_checkBit<u16>((u16)field_0x914, 0x40) == 0) {
|
||||
int attribute = 2;
|
||||
J3DAnmTexPattern* btp = getTexPtrnAnm(l_btpFileNameTBL[field_0x936]);
|
||||
if (btp != NULL) {
|
||||
setBtpAnm(btp, mpMorf->getModel()->getModelData(), 1.0f, 2);
|
||||
setBtpAnm(btp, mpMorf->getModel()->getModelData(), 1.0f, attribute);
|
||||
cLib_onBit<u16>(field_0x914, 0x44);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue