mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
big d_a_alink pass (#214)
* d_a_alink pass1 wip * more d_a_alink work * remove asm * more daalink work * 20% dol code decompiled * fixed some nonmatchings for building * a few daalink functions and labeling some HIO data
This commit is contained in:
@@ -531,7 +531,7 @@ static void action(b_go_class* b_go) {
|
||||
break;
|
||||
}
|
||||
|
||||
cLib_addCalcAngleS2(&b_go->mCollisionRot.y, b_go->current.angle.y, 4, 0x2000);
|
||||
cLib_addCalcAngleS2(&b_go->shape_angle.y, b_go->current.angle.y, 4, 0x2000);
|
||||
mDoMtx_stack_c::YrotS(b_go->current.angle.y);
|
||||
|
||||
cXyz speed;
|
||||
@@ -579,7 +579,7 @@ static int daB_GO_Execute(b_go_class* b_go) {
|
||||
damage_check(b_go);
|
||||
|
||||
mDoMtx_stack_c::transS(b_go->current.pos.x, b_go->current.pos.y, b_go->current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(b_go->mCollisionRot.y);
|
||||
mDoMtx_stack_c::YrotM(b_go->shape_angle.y);
|
||||
mDoMtx_stack_c::scaleM((*(daB_GO_HIO_c*)l_HIO).mSmallSize, (*(daB_GO_HIO_c*)l_HIO).mSmallSize, (*(daB_GO_HIO_c*)l_HIO).mSmallSize);
|
||||
mDoMtx_stack_c::copy(b_go->mpMorf->getModel()->getBaseTRMtx());
|
||||
b_go->mpMorf->play(0, dComIfGp_getReverb(b_go->current.mRoomNo));
|
||||
|
||||
@@ -185,8 +185,8 @@ int daAlldie_c::create() {
|
||||
mAction = ACT_WAIT;
|
||||
}
|
||||
|
||||
mCollisionRot.z = 0;
|
||||
mCollisionRot.x = 0;
|
||||
shape_angle.z = 0;
|
||||
shape_angle.x = 0;
|
||||
current.angle.z = 0;
|
||||
current.angle.x = 0;
|
||||
|
||||
|
||||
+17
-319
@@ -5,301 +5,7 @@
|
||||
|
||||
#include "rel/d/a/d_a_arrow/d_a_arrow.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct csXyz {
|
||||
/* 802673F4 */ csXyz(s16, s16, s16);
|
||||
};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CD9C */ void transM(f32, f32, f32);
|
||||
/* 8000CF44 */ void ZXYrotM(csXyz const&);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
/* 80266AE4 */ void operator+(Vec const&) const;
|
||||
/* 80266B34 */ void operator-(Vec const&) const;
|
||||
/* 80266B84 */ void operator*(f32) const;
|
||||
/* 80266F48 */ void normalizeZP();
|
||||
/* 80267150 */ void atan2sY_XZ() const;
|
||||
/* 8049A334 */ ~cXyz();
|
||||
};
|
||||
|
||||
struct fopAcM_wt_c {
|
||||
/* 8001DD84 */ void waterCheck(cXyz const*);
|
||||
|
||||
static u8 mWaterCheck[84 + 4 /* padding */];
|
||||
static f32 mWaterY[1 + 1 /* padding */];
|
||||
};
|
||||
|
||||
struct fopAcM_gc_c {
|
||||
/* 8001DCBC */ void gndCheck(cXyz const*);
|
||||
|
||||
static u8 mGndCheck[84];
|
||||
};
|
||||
|
||||
struct daPy_actorKeep_c {
|
||||
/* 8015EC48 */ void setActor();
|
||||
/* 8015ECB8 */ void setData(fopAc_ac_c*);
|
||||
/* 8015ECFC */ void clearData();
|
||||
};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 80083A28 */ dCcD_GObjInf();
|
||||
/* 800840E4 */ ~dCcD_GObjInf();
|
||||
/* 800842C0 */ void ChkAtHit();
|
||||
/* 80084318 */ void ResetAtHit();
|
||||
/* 800843A8 */ void GetAtHitGObj();
|
||||
/* 80084460 */ void ChkTgHit();
|
||||
/* 80084548 */ void GetTgHitGObj();
|
||||
/* 80084658 */ void ChkCoHit();
|
||||
};
|
||||
|
||||
struct daArrow_c {
|
||||
/* 80499C6C */ void createHeap();
|
||||
/* 80499D8C */ void atHitCallBack(dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
/* 80499FBC */ void decAlphaBlur();
|
||||
/* 8049A04C */ void setBlur();
|
||||
/* 8049A110 */ void setLightArrowHitMark(cXyz const*);
|
||||
/* 8049A1EC */ void setLightChargeEffect(int);
|
||||
/* 8049A370 */ void setArrowWaterNextPos(cXyz*, cXyz*);
|
||||
/* 8049A76C */ void setArrowAt(f32);
|
||||
/* 8049A9CC */ void arrowShooting();
|
||||
/* 8049AC84 */ void setBombArrowExplode(cXyz*);
|
||||
/* 8049ACE0 */ void setRoomInfo();
|
||||
/* 8049AD74 */ void clearNearActorData();
|
||||
/* 8049AD94 */ void getVibAngle();
|
||||
/* 8049AE64 */ void setNormalMatrix();
|
||||
/* 8049AF18 */ void setSmokePos();
|
||||
/* 8049AFEC */ void setKeepMatrix();
|
||||
/* 8049B120 */ void setStopActorMatrix();
|
||||
/* 8049B214 */ void setBombMoveEffect();
|
||||
/* 8049B370 */ void checkReget();
|
||||
/* 8049B45C */ void procWait();
|
||||
/* 8049B764 */ void procMove();
|
||||
/* 8049C700 */ void procReturnInit(int);
|
||||
/* 8049C874 */ void procReturn();
|
||||
/* 8049CB70 */ void procBGStop();
|
||||
/* 8049CC60 */ void procActorStop();
|
||||
/* 8049CCCC */ void procActorControllStop();
|
||||
/* 8049CCF0 */ void procSlingHitInit(cXyz*, dCcD_GObjInf*);
|
||||
/* 8049CE50 */ void procSlingHit();
|
||||
/* 8049CEA0 */ void execute();
|
||||
/* 8049D0CC */ void draw();
|
||||
/* 8049D440 */ void create();
|
||||
/* 8049D98C */ ~daArrow_c();
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct daAlink_c {
|
||||
/* 8009D884 */ void getAlinkArcName();
|
||||
/* 800D1788 */ void notSwordHitVibActor(fopAc_ac_c*);
|
||||
/* 800D6D94 */ void getFreezeR() const;
|
||||
/* 800D6DA4 */ void getFreezeG() const;
|
||||
/* 800D6DB4 */ void getFreezeB() const;
|
||||
/* 800D7768 */ void checkIcePolygonDamage(cBgS_PolyInfo*);
|
||||
/* 800DE64C */ void getArrowFlyData(f32*, f32*, int) const;
|
||||
/* 800DE740 */ void getArrowIncAtR() const;
|
||||
/* 800DE750 */ void getBombArrowFlyExplodeTime() const;
|
||||
/* 800DE760 */ void getArrowIncAtMaxStart() const;
|
||||
/* 800DE770 */ void getArrowIncAtMax() const;
|
||||
/* 800DE884 */ void checkBowCameraArrowPosP(s16*, s16*);
|
||||
/* 800E3760 */ void getBombExplodeTime() const;
|
||||
};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct dScnKy_env_light_c {
|
||||
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
|
||||
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {
|
||||
/* 8049D808 */ void cleanup();
|
||||
/* 8049D80C */ ~dPa_levelEcallBack();
|
||||
};
|
||||
|
||||
struct dPa_hermiteEcallBack_c {
|
||||
/* 8004F6B8 */ void setOldPosP(cXyz const*, cXyz const*);
|
||||
};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct dPa_control_c {
|
||||
struct level_c {
|
||||
/* 8004B8B4 */ void forceOnEventMove(u32);
|
||||
/* 8004B918 */ void getEmitter(u32);
|
||||
};
|
||||
|
||||
/* 8004C218 */ void setHitMark(u16, fopAc_ac_c*, cXyz const*, csXyz const*, cXyz const*, u32);
|
||||
/* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
|
||||
cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
|
||||
_GXColor const*, cXyz const*, f32);
|
||||
/* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
|
||||
u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
|
||||
cXyz const*, f32);
|
||||
|
||||
static u8 mParticleTracePCB[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct dJntCol_c {
|
||||
/* 80036AEC */ void getArrowOffsetPosAndAngle(cXyz const*, csXyz const*, cXyz*, cXyz*) const;
|
||||
/* 80036FA8 */ void setArrowPosAndAngle(cXyz const*, cXyz const*, int, cXyz*, csXyz*);
|
||||
};
|
||||
|
||||
struct cCcD_Obj {};
|
||||
|
||||
struct dCcMassS_Mng {
|
||||
/* 80085D98 */ void Set(cCcD_Obj*, u8);
|
||||
};
|
||||
|
||||
struct dCcD_Stts {
|
||||
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
|
||||
};
|
||||
|
||||
struct dCcD_SrcSph {};
|
||||
|
||||
struct dCcD_SrcCps {};
|
||||
|
||||
struct dCcD_Sph {
|
||||
/* 80084A34 */ void Set(dCcD_SrcSph const&);
|
||||
};
|
||||
|
||||
struct dCcD_GStts {
|
||||
/* 80083760 */ dCcD_GStts();
|
||||
/* 8049D910 */ ~dCcD_GStts();
|
||||
};
|
||||
|
||||
struct dCcD_GAtTgCoCommonBase {
|
||||
/* 80083688 */ void GetAc();
|
||||
};
|
||||
|
||||
struct dCcD_Cps {
|
||||
/* 800847D0 */ void Set(dCcD_SrcCps const&);
|
||||
/* 80084824 */ void CalcAtVec();
|
||||
};
|
||||
|
||||
struct dBgS_ObjLinChk {
|
||||
/* 80077F5C */ dBgS_ObjLinChk();
|
||||
/* 80077FB8 */ ~dBgS_ObjLinChk();
|
||||
};
|
||||
|
||||
struct dBgS_LinChk {
|
||||
/* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*);
|
||||
};
|
||||
|
||||
struct dBgS_ArrowLinChk {
|
||||
/* 800781D8 */ dBgS_ArrowLinChk();
|
||||
/* 80078240 */ ~dBgS_ArrowLinChk();
|
||||
};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074ABC */ void ChkMoveBG(cBgS_PolyInfo const&);
|
||||
/* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80075100 */ void GetRoomId(cBgS_PolyInfo const&);
|
||||
/* 80075880 */ void MoveBgTransPos(cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*);
|
||||
/* 80075BF4 */ void ArrowStickCallBack(cBgS_PolyInfo const&, fopAc_ac_c*, cXyz&);
|
||||
};
|
||||
|
||||
struct cM3dGSph {
|
||||
/* 8026F648 */ void SetC(cXyz const&);
|
||||
/* 8049D880 */ ~cM3dGSph();
|
||||
};
|
||||
|
||||
struct cM3dGPla {
|
||||
/* 8049C6B8 */ ~cM3dGPla();
|
||||
};
|
||||
|
||||
struct cM3dGCps {
|
||||
/* 8026EF88 */ cM3dGCps();
|
||||
/* 8026EFA4 */ ~cM3dGCps();
|
||||
/* 8026F000 */ void Set(cXyz const&, cXyz const&, f32);
|
||||
};
|
||||
|
||||
struct cM3dGAab {
|
||||
/* 8049D8C8 */ ~cM3dGAab();
|
||||
};
|
||||
|
||||
struct cCcS {
|
||||
/* 80264BA8 */ void Set(cCcD_Obj*);
|
||||
};
|
||||
|
||||
struct cCcD_GStts {
|
||||
/* 8049DC00 */ ~cCcD_GStts();
|
||||
};
|
||||
|
||||
struct cBgS_LinChk {};
|
||||
|
||||
struct cBgS {
|
||||
/* 800743B4 */ void LineCross(cBgS_LinChk*);
|
||||
/* 80074660 */ void ChkPolySafe(cBgS_PolyInfo const&);
|
||||
/* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const;
|
||||
};
|
||||
|
||||
struct Z2SoundObjBase {
|
||||
/* 802BDFF8 */ void deleteObject();
|
||||
};
|
||||
|
||||
struct Z2SoundObjArrow {
|
||||
/* 802BEB38 */ Z2SoundObjArrow();
|
||||
};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
|
||||
struct Z2DopplerSoundObjBase {
|
||||
/* 802BE5FC */ ~Z2DopplerSoundObjBase();
|
||||
};
|
||||
|
||||
struct Z2CreatureLink {
|
||||
/* 802C4814 */ void startHitItemSE(u32, u32, Z2SoundObjBase*, f32);
|
||||
};
|
||||
|
||||
struct Z2AudioMgr {
|
||||
static u8 mAudioMgrPtr[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct JPABaseEmitter {};
|
||||
|
||||
struct JPAEmitterCallBack {
|
||||
/* 8027E6A4 */ ~JPAEmitterCallBack();
|
||||
/* 8049DC48 */ void execute(JPABaseEmitter*);
|
||||
/* 8049DC4C */ void executeAfter(JPABaseEmitter*);
|
||||
/* 8049DC50 */ void draw(JPABaseEmitter*);
|
||||
/* 8049DC54 */ void drawAfter(JPABaseEmitter*);
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
struct J3DModel {};
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
@@ -474,15 +180,6 @@ extern "C" void __dt__21Z2DopplerSoundObjBaseFv();
|
||||
extern "C" void __ct__15Z2SoundObjArrowFv();
|
||||
extern "C" void startHitItemSE__14Z2CreatureLinkFUlUlP14Z2SoundObjBasef();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void PSMTXCopy();
|
||||
extern "C" void PSMTXConcat();
|
||||
extern "C" void PSMTXTrans();
|
||||
extern "C" void PSMTXMultVec();
|
||||
extern "C" void PSVECAdd();
|
||||
extern "C" void PSVECScale();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void C_VECReflect();
|
||||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_25();
|
||||
@@ -497,7 +194,6 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern void* __vt__22dPa_hermiteEcallBack_c[9];
|
||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||
extern "C" extern void* __vt__8dCcD_Cps[36];
|
||||
@@ -510,14 +206,8 @@ extern "C" extern void* __vt__15Z2SoundObjArrow[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mGndCheck__11fopAcM_gc_c[84];
|
||||
extern "C" u8 mWaterCheck__11fopAcM_wt_c[84 + 4 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern void* calc_mtx[1 + 1 /* padding */];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u32 __float_max;
|
||||
extern "C" f32 mWaterY__11fopAcM_wt_c[1 + 1 /* padding */];
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
extern "C" extern u8 m_count__9daArrow_c[4];
|
||||
extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
@@ -728,7 +418,8 @@ asm void daArrow_c::setLightChargeEffect(int param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cXyz::~cXyz() {
|
||||
// asm cXyz::~cXyz() {
|
||||
extern "C" asm void __dt__4cXyzFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__4cXyzFv.s"
|
||||
}
|
||||
@@ -1345,7 +1036,8 @@ asm void daArrow_c::procMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGPla::~cM3dGPla() {
|
||||
// asm cM3dGPla::~cM3dGPla() {
|
||||
extern "C" asm void __dt__8cM3dGPlaFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__8cM3dGPlaFv.s"
|
||||
}
|
||||
@@ -1583,7 +1275,8 @@ void dPa_levelEcallBack::cleanup() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dPa_levelEcallBack::~dPa_levelEcallBack() {
|
||||
// asm dPa_levelEcallBack::~dPa_levelEcallBack() {
|
||||
extern "C" asm void __dt__18dPa_levelEcallBackFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__18dPa_levelEcallBackFv.s"
|
||||
}
|
||||
@@ -1593,7 +1286,8 @@ asm dPa_levelEcallBack::~dPa_levelEcallBack() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGSph::~cM3dGSph() {
|
||||
// asm cM3dGSph::~cM3dGSph() {
|
||||
extern "C" asm void __dt__8cM3dGSphFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__8cM3dGSphFv.s"
|
||||
}
|
||||
@@ -1603,7 +1297,8 @@ asm cM3dGSph::~cM3dGSph() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGAab::~cM3dGAab() {
|
||||
// asm cM3dGAab::~cM3dGAab() {
|
||||
extern "C" asm void __dt__8cM3dGAabFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__8cM3dGAabFv.s"
|
||||
}
|
||||
@@ -1613,7 +1308,8 @@ asm cM3dGAab::~cM3dGAab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_GStts::~dCcD_GStts() {
|
||||
// asm dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" asm void __dt__10dCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__10dCcD_GSttsFv.s"
|
||||
}
|
||||
@@ -1653,7 +1349,8 @@ static asm void daArrow_delete(daArrow_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cCcD_GStts::~cCcD_GStts() {
|
||||
// asm cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" asm void __dt__10cCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_arrow/d_a_arrow/__dt__10cCcD_GSttsFv.s"
|
||||
}
|
||||
@@ -1661,7 +1358,8 @@ asm cCcD_GStts::~cCcD_GStts() {
|
||||
|
||||
/* 8049DC48-8049DC4C 0040C8 0004+00 2/0 0/0 0/0 .text
|
||||
* execute__18JPAEmitterCallBackFP14JPABaseEmitter */
|
||||
void JPAEmitterCallBack::execute(JPABaseEmitter* param_0) {
|
||||
// void JPAEmitterCallBack::execute(JPABaseEmitter* param_0) {
|
||||
extern "C" void execute__18JPAEmitterCallBackFP14JPABaseEmitter() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
|
||||
@@ -6,19 +6,12 @@
|
||||
#include "rel/d/a/d_a_boomerang/d_a_boomerang.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CD64 */ void transS(cXyz const&);
|
||||
/* 8000CD9C */ void transM(f32, f32, f32);
|
||||
/* 8000CF44 */ void ZXYrotM(csXyz const&);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct daMirror_c {
|
||||
/* 8003194C */ void entry(J3DModel*);
|
||||
};
|
||||
@@ -32,100 +25,6 @@ struct daBoomerang_HIO_c0 {
|
||||
static f32 const m_lockWindScale;
|
||||
};
|
||||
|
||||
struct daAlink_c {
|
||||
/* 8009D884 */ void getAlinkArcName();
|
||||
/* 800A9248 */ void simpleAnmPlay(J3DAnmBase*);
|
||||
/* 800B26FC */ void itemActionTrigger();
|
||||
/* 800DFFE0 */ void checkBoomerangLockAccept();
|
||||
/* 800E0010 */ void getBoomSpeed();
|
||||
/* 800E00B0 */ void getBoomCatchSpeed() const;
|
||||
/* 800E00C0 */ void getBoomFlyMax() const;
|
||||
/* 800E011C */ void getBoomLockMax();
|
||||
/* 800E0190 */ void getBoomBgThroughTime() const;
|
||||
/* 800E08C4 */ void returnBoomerang(int);
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct dPa_control_c {
|
||||
struct level_c {
|
||||
/* 8004B918 */ void getEmitter(u32);
|
||||
};
|
||||
|
||||
/* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
|
||||
cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
|
||||
_GXColor const*, cXyz const*, f32);
|
||||
};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80074DAC */ void GetUnderwaterRoofCode(cBgS_PolyInfo const&);
|
||||
/* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80075100 */ void GetRoomId(cBgS_PolyInfo const&);
|
||||
};
|
||||
|
||||
struct cCcD_Obj {};
|
||||
|
||||
struct dCcMassS_Mng {
|
||||
/* 80085D98 */ void Set(cCcD_Obj*, u8);
|
||||
};
|
||||
|
||||
struct dCcD_Stts {
|
||||
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
|
||||
};
|
||||
|
||||
struct dCcD_SrcCyl {};
|
||||
|
||||
struct dCcD_SrcCps {};
|
||||
|
||||
struct dCcD_GStts {
|
||||
/* 80083760 */ dCcD_GStts();
|
||||
/* 804A262C */ ~dCcD_GStts();
|
||||
};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 80083A28 */ dCcD_GObjInf();
|
||||
/* 800840E4 */ ~dCcD_GObjInf();
|
||||
/* 80084318 */ void ResetAtHit();
|
||||
};
|
||||
|
||||
struct dCcD_Cyl {
|
||||
/* 800848B4 */ void Set(dCcD_SrcCyl const&);
|
||||
};
|
||||
|
||||
struct dCcD_Cps {
|
||||
/* 800847D0 */ void Set(dCcD_SrcCps const&);
|
||||
/* 80084824 */ void CalcAtVec();
|
||||
};
|
||||
|
||||
struct cM3dGCps {
|
||||
/* 8026EF88 */ cM3dGCps();
|
||||
/* 8026EFA4 */ ~cM3dGCps();
|
||||
/* 8026F000 */ void Set(cXyz const&, cXyz const&, f32);
|
||||
};
|
||||
|
||||
struct cM3dGAab {
|
||||
/* 804A25E4 */ ~cM3dGAab();
|
||||
};
|
||||
|
||||
struct cCcS {
|
||||
/* 80264BA8 */ void Set(cCcD_Obj*);
|
||||
};
|
||||
|
||||
struct cCcD_GStts {
|
||||
/* 804A271C */ ~cCcD_GStts();
|
||||
};
|
||||
|
||||
struct cBgS {
|
||||
/* 800743B4 */ void LineCross(cBgS_LinChk*);
|
||||
/* 800744A0 */ void GroundCross(cBgS_GndChk*);
|
||||
/* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const;
|
||||
};
|
||||
|
||||
struct J2DAnmLoaderDataBase {
|
||||
/* 80308A6C */ void load(void const*);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -341,7 +240,6 @@ extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" extern void* __vt__16Z2SoundObjSimple[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mRoofCheck__11fopAcM_rc_c[80];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 mCurrentMtx__6J3DSys[48];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" f32 mRoofY__11fopAcM_rc_c;
|
||||
@@ -1591,7 +1489,8 @@ extern "C" asm void __dt__8cM3dGCylFv() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGAab::~cM3dGAab() {
|
||||
// asm cM3dGAab::~cM3dGAab() {
|
||||
extern "C" asm void __dt__8cM3dGAabFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_boomerang/d_a_boomerang/__dt__8cM3dGAabFv.s"
|
||||
}
|
||||
@@ -1601,7 +1500,8 @@ asm cM3dGAab::~cM3dGAab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_GStts::~dCcD_GStts() {
|
||||
// asm dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" asm void __dt__10dCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_boomerang/d_a_boomerang/__dt__10dCcD_GSttsFv.s"
|
||||
}
|
||||
@@ -1638,7 +1538,8 @@ void draw__12dDlst_base_cFv() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cCcD_GStts::~cCcD_GStts() {
|
||||
// asm cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" asm void __dt__10cCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_boomerang/d_a_boomerang/__dt__10cCcD_GSttsFv.s"
|
||||
}
|
||||
|
||||
+23
-295
@@ -5,287 +5,20 @@
|
||||
|
||||
#include "rel/d/a/d_a_canoe/d_a_canoe.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct request_of_phase_process_class {};
|
||||
|
||||
struct csXyz {};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CD9C */ void transM(f32, f32, f32);
|
||||
/* 8000CF44 */ void ZXYrotM(csXyz const&);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
/* 80266AE4 */ void operator+(Vec const&) const;
|
||||
/* 80266B34 */ void operator-(Vec const&) const;
|
||||
/* 80266B84 */ void operator*(f32) const;
|
||||
/* 80267128 */ void atan2sX_Z() const;
|
||||
/* 80267150 */ void atan2sY_XZ() const;
|
||||
/* 804DA5B8 */ ~cXyz();
|
||||
|
||||
static f32 Zero[3];
|
||||
};
|
||||
|
||||
struct fopAcM_wt_c {
|
||||
/* 8001DD84 */ void waterCheck(cXyz const*);
|
||||
|
||||
static u8 mWaterCheck[84 + 4 /* padding */];
|
||||
static f32 mWaterY[1 + 1 /* padding */];
|
||||
};
|
||||
|
||||
struct daTagWaterFall_c {
|
||||
/* 80D64768 */ void checkHitWaterFall(cXyz);
|
||||
};
|
||||
|
||||
struct daPy_py_c {
|
||||
/* 8015EA20 */ void checkFishingRodItem(int);
|
||||
};
|
||||
|
||||
struct daObjGOMIKABE_c {
|
||||
/* 80BFE52C */ void BreakSet();
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {
|
||||
/* 802680B0 */ ~cBgS_PolyInfo();
|
||||
};
|
||||
|
||||
struct daCanoe_c {
|
||||
/* 804DA5F4 */ void createHeap();
|
||||
/* 804DA740 */ void create();
|
||||
/* 804DAEA8 */ ~daCanoe_c();
|
||||
/* 804DB008 */ void setRoomInfo();
|
||||
/* 804DB0B0 */ void setMatrix();
|
||||
/* 804DB3F4 */ void setCollision();
|
||||
/* 804DB578 */ void posMove();
|
||||
/* 804DB754 */ void checkGomikabe(cBgS_PolyInfo&);
|
||||
/* 804DB7AC */ void setFrontBackPos();
|
||||
/* 804DB828 */ void frontBackBgCheck();
|
||||
/* 804DC330 */ void setPaddleEffect();
|
||||
/* 804DC554 */ void setCanoeSliderEffect();
|
||||
/* 804DC7B4 */ void execute();
|
||||
/* 804DD35C */ void draw();
|
||||
};
|
||||
|
||||
struct daAlink_c {
|
||||
/* 800A21E0 */ void getMoveBGActorName(cBgS_PolyInfo&, int);
|
||||
/* 800F3BB0 */ void getCanoeMaxSpeed() const;
|
||||
/* 800F3BDC */ void getCanoeBackMaxSpeed() const;
|
||||
/* 800F3BEC */ void getCanoeCres() const;
|
||||
/* 800F3C44 */ void getCanoeMaxRotSpeed() const;
|
||||
/* 800F3CCC */ void getCanoeLocalPaddleTop();
|
||||
/* 800F3DFC */ void getCanoePaddleMatrix();
|
||||
/* 800F3EB8 */ void checkCanoePaddleGrab(fopAc_ac_c*) const;
|
||||
};
|
||||
|
||||
struct dVibration_c {
|
||||
/* 8006FA24 */ void StartShock(int, int, cXyz);
|
||||
};
|
||||
|
||||
struct dSv_event_flag_c {
|
||||
static u8 saveBitLabels[1644 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct dSv_event_c {
|
||||
/* 800349BC */ void isEventBit(u16) const;
|
||||
};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct dScnKy_env_light_c {
|
||||
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
|
||||
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct dPa_control_c {
|
||||
struct level_c {
|
||||
/* 8004B918 */ void getEmitter(u32);
|
||||
};
|
||||
|
||||
/* 8004C838 */ void setWaterRipple(u32*, cBgS_PolyInfo&, cXyz const*, f32, dKy_tevstr_c const*,
|
||||
cXyz const*, s8);
|
||||
/* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
|
||||
cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
|
||||
_GXColor const*, cXyz const*, f32);
|
||||
};
|
||||
|
||||
struct dMeter2Info_c {
|
||||
/* 8021E268 */ void setMiniGameCount(s8);
|
||||
};
|
||||
|
||||
struct J3DModel {};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
/* 80055F1C */ void addReal(u32, J3DModel*);
|
||||
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct dCcD_Stts {
|
||||
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
|
||||
};
|
||||
|
||||
struct dCcD_SrcCyl {};
|
||||
|
||||
struct dCcD_GStts {
|
||||
/* 80083760 */ dCcD_GStts();
|
||||
/* 80083830 */ void Move();
|
||||
/* 804DAE2C */ ~dCcD_GStts();
|
||||
};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 80083A28 */ dCcD_GObjInf();
|
||||
/* 800840E4 */ ~dCcD_GObjInf();
|
||||
/* 80084658 */ void ChkCoHit();
|
||||
};
|
||||
|
||||
struct dCcD_GAtTgCoCommonBase {
|
||||
/* 80083688 */ void GetAc();
|
||||
};
|
||||
|
||||
struct dCcD_Cyl {
|
||||
/* 800848B4 */ void Set(dCcD_SrcCyl const&);
|
||||
/* 804DAB18 */ ~dCcD_Cyl();
|
||||
/* 804DABE4 */ dCcD_Cyl();
|
||||
};
|
||||
|
||||
struct dBgS_PolyPassChk {
|
||||
/* 80078E98 */ void SetLink();
|
||||
};
|
||||
|
||||
struct dBgS_LinkLinChk {
|
||||
/* 80078030 */ dBgS_LinkLinChk();
|
||||
/* 8007808C */ ~dBgS_LinkLinChk();
|
||||
};
|
||||
|
||||
struct dBgS_LinkAcch {
|
||||
/* 804DACF8 */ ~dBgS_LinkAcch();
|
||||
/* 804DAD68 */ dBgS_LinkAcch();
|
||||
};
|
||||
|
||||
struct dBgS_LinChk {
|
||||
/* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*);
|
||||
};
|
||||
|
||||
struct dBgS_AcchCir {
|
||||
/* 80075EAC */ dBgS_AcchCir();
|
||||
/* 80075F58 */ void SetWall(f32, f32);
|
||||
/* 804DADBC */ ~dBgS_AcchCir();
|
||||
};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80075100 */ void GetRoomId(cBgS_PolyInfo const&);
|
||||
};
|
||||
|
||||
struct dBgS_Acch {
|
||||
/* 80075F94 */ ~dBgS_Acch();
|
||||
/* 800760A0 */ dBgS_Acch();
|
||||
/* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*);
|
||||
/* 80076288 */ void Set(fopAc_ac_c*, int, dBgS_AcchCir*);
|
||||
/* 80076AAC */ void CrrPos(dBgS&);
|
||||
};
|
||||
|
||||
struct cM3dGPla {
|
||||
/* 804DC2E8 */ ~cM3dGPla();
|
||||
};
|
||||
|
||||
struct cM3dGCyl {
|
||||
/* 8026F1DC */ void SetC(cXyz const&);
|
||||
/* 804DAC68 */ ~cM3dGCyl();
|
||||
};
|
||||
|
||||
struct cM3dGCir {
|
||||
/* 8026EF18 */ ~cM3dGCir();
|
||||
};
|
||||
|
||||
struct cM3dGAab {
|
||||
/* 804DACB0 */ ~cM3dGAab();
|
||||
};
|
||||
|
||||
struct cCcD_Obj {};
|
||||
|
||||
struct cCcS {
|
||||
/* 80264BA8 */ void Set(cCcD_Obj*);
|
||||
};
|
||||
|
||||
struct cCcD_Stts {
|
||||
/* 8026395C */ void ClrCcMove();
|
||||
};
|
||||
|
||||
struct cCcD_ObjCo {
|
||||
/* 8026491C */ void SetVsGrp(u32);
|
||||
};
|
||||
|
||||
struct cCcD_GStts {
|
||||
/* 804DD574 */ ~cCcD_GStts();
|
||||
};
|
||||
|
||||
struct cBgS_LinChk {};
|
||||
|
||||
struct cBgS {
|
||||
/* 800743B4 */ void LineCross(cBgS_LinChk*);
|
||||
/* 80074618 */ void GetActorPointer(int) const;
|
||||
/* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const;
|
||||
};
|
||||
|
||||
struct _GXTexObj {};
|
||||
|
||||
struct Z2SoundObjSimple {
|
||||
/* 802BE844 */ Z2SoundObjSimple();
|
||||
};
|
||||
|
||||
struct Z2SoundObjBase {
|
||||
/* 802BDF48 */ ~Z2SoundObjBase();
|
||||
/* 802BDFF8 */ void deleteObject();
|
||||
};
|
||||
|
||||
struct JAISoundID {};
|
||||
|
||||
struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
|
||||
struct Z2AudioMgr {
|
||||
static u8 mAudioMgrPtr[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
struct JGeometry {
|
||||
template <typename A1>
|
||||
struct TVec3 {};
|
||||
/* TVec3<f32> */
|
||||
struct TVec3__template0 {};
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -419,13 +152,6 @@ extern "C" void __dt__14Z2SoundObjBaseFv();
|
||||
extern "C" void deleteObject__14Z2SoundObjBaseFv();
|
||||
extern "C" void __ct__16Z2SoundObjSimpleFv();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void PSMTXCopy();
|
||||
extern "C" void PSMTXTrans();
|
||||
extern "C" void PSMTXMultVec();
|
||||
extern "C" void PSVECAdd();
|
||||
extern "C" void PSVECSubtract();
|
||||
extern "C" void PSVECScale();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __cvt_fp2unsigned();
|
||||
@@ -443,10 +169,7 @@ extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" void abs();
|
||||
extern "C" void strcmp();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
@@ -456,16 +179,10 @@ extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" extern void* __vt__16Z2SoundObjSimple[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mWaterCheck__11fopAcM_wt_c[84 + 4 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" extern u8 g_meter2_info[248];
|
||||
extern "C" f32 Zero__4cXyz[3];
|
||||
extern "C" extern u8 j3dSys[284];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" f32 mWaterY__11fopAcM_wt_c[1 + 1 /* padding */];
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
extern "C" void __register_global_object();
|
||||
extern "C" void BreakSet__15daObjGOMIKABE_cFv();
|
||||
@@ -490,7 +207,8 @@ static asm void daCanoe_searchTagWaterFall(fopAc_ac_c* param_0, void* param_1) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cXyz::~cXyz() {
|
||||
// asm cXyz::~cXyz() {
|
||||
extern "C" asm void __dt__4cXyzFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__4cXyzFv.s"
|
||||
}
|
||||
@@ -744,7 +462,8 @@ SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_Cyl::~dCcD_Cyl() {
|
||||
// asm dCcD_Cyl::~dCcD_Cyl() {
|
||||
extern "C" asm void __dt__8dCcD_CylFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__8dCcD_CylFv.s"
|
||||
}
|
||||
@@ -754,7 +473,8 @@ asm dCcD_Cyl::~dCcD_Cyl() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_Cyl::dCcD_Cyl() {
|
||||
// asm dCcD_Cyl::dCcD_Cyl() {
|
||||
extern "C" asm void __ct__8dCcD_CylFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__ct__8dCcD_CylFv.s"
|
||||
}
|
||||
@@ -764,7 +484,8 @@ asm dCcD_Cyl::dCcD_Cyl() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGCyl::~cM3dGCyl() {
|
||||
// asm cM3dGCyl::~cM3dGCyl() {
|
||||
extern "C" asm void __dt__8cM3dGCylFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__8cM3dGCylFv.s"
|
||||
}
|
||||
@@ -774,7 +495,8 @@ asm cM3dGCyl::~cM3dGCyl() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGAab::~cM3dGAab() {
|
||||
// asm cM3dGAab::~cM3dGAab() {
|
||||
extern "C" asm void __dt__8cM3dGAabFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__8cM3dGAabFv.s"
|
||||
}
|
||||
@@ -784,7 +506,8 @@ asm cM3dGAab::~cM3dGAab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dBgS_LinkAcch::~dBgS_LinkAcch() {
|
||||
// asm dBgS_LinkAcch::~dBgS_LinkAcch() {
|
||||
extern "C" asm void __dt__13dBgS_LinkAcchFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__13dBgS_LinkAcchFv.s"
|
||||
}
|
||||
@@ -794,7 +517,8 @@ asm dBgS_LinkAcch::~dBgS_LinkAcch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dBgS_LinkAcch::dBgS_LinkAcch() {
|
||||
// asm dBgS_LinkAcch::dBgS_LinkAcch() {
|
||||
extern "C" asm void __ct__13dBgS_LinkAcchFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__ct__13dBgS_LinkAcchFv.s"
|
||||
}
|
||||
@@ -804,7 +528,8 @@ asm dBgS_LinkAcch::dBgS_LinkAcch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
// asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
extern "C" asm void __dt__12dBgS_AcchCirFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__12dBgS_AcchCirFv.s"
|
||||
}
|
||||
@@ -814,7 +539,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_GStts::~dCcD_GStts() {
|
||||
// asm dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" asm void __dt__10dCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__10dCcD_GSttsFv.s"
|
||||
}
|
||||
@@ -1119,7 +845,8 @@ asm void daCanoe_c::frontBackBgCheck() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGPla::~cM3dGPla() {
|
||||
// asm cM3dGPla::~cM3dGPla() {
|
||||
extern "C" asm void __dt__8cM3dGPlaFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__8cM3dGPlaFv.s"
|
||||
}
|
||||
@@ -1414,7 +1141,8 @@ static asm void daCanoe_Draw(daCanoe_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cCcD_GStts::~cCcD_GStts() {
|
||||
// asm cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" asm void __dt__10cCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_canoe/d_a_canoe/__dt__10cCcD_GSttsFv.s"
|
||||
}
|
||||
|
||||
@@ -5,345 +5,7 @@
|
||||
|
||||
#include "rel/d/a/d_a_cstatue/d_a_cstatue.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct request_of_phase_process_class {};
|
||||
|
||||
struct csXyz {
|
||||
/* 802673F4 */ csXyz(s16, s16, s16);
|
||||
|
||||
static u8 Zero[4];
|
||||
};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
/* 80266AE4 */ void operator+(Vec const&) const;
|
||||
/* 80266B84 */ void operator*(f32) const;
|
||||
/* 80267128 */ void atan2sX_Z() const;
|
||||
/* 80663B34 */ ~cXyz();
|
||||
};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CD64 */ void transS(cXyz const&);
|
||||
/* 8000CD9C */ void transM(f32, f32, f32);
|
||||
/* 8000CF44 */ void ZXYrotM(csXyz const&);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct mDoExt_morf_c {
|
||||
/* 8000FB7C */ void setMorf(f32);
|
||||
};
|
||||
|
||||
struct J3DModel {};
|
||||
|
||||
struct mDoExt_invisibleModel {
|
||||
/* 8000E53C */ void create(J3DModel*, u8);
|
||||
/* 8000E7C0 */ void entryDL(cXyz*);
|
||||
};
|
||||
|
||||
struct J3DMaterialTable {};
|
||||
|
||||
struct J3DAnmTextureSRTKey {};
|
||||
|
||||
struct mDoExt_btkAnm {
|
||||
/* 8000D63C */ void init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16);
|
||||
/* 8000D6D8 */ void entry(J3DMaterialTable*, f32);
|
||||
};
|
||||
|
||||
struct J3DAnmTevRegKey {};
|
||||
|
||||
struct mDoExt_brkAnm {
|
||||
/* 8000D70C */ void init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16);
|
||||
/* 8000D7A8 */ void entry(J3DMaterialTable*, f32);
|
||||
};
|
||||
|
||||
struct mDoExt_baseAnm {
|
||||
/* 8000D428 */ void play();
|
||||
};
|
||||
|
||||
struct mDoExt_McaMorfCallBack2_c {};
|
||||
|
||||
struct mDoExt_McaMorfCallBack1_c {};
|
||||
|
||||
struct J3DAnmTransform {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct Z2Creature {
|
||||
/* 802C03C8 */ Z2Creature();
|
||||
/* 802C0420 */ ~Z2Creature();
|
||||
/* 802C0530 */ void init(Vec*, Vec*, u8, u8);
|
||||
};
|
||||
|
||||
struct mDoExt_McaMorfSO {
|
||||
/* 800107D0 */ mDoExt_McaMorfSO(J3DModelData*, mDoExt_McaMorfCallBack1_c*,
|
||||
mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int,
|
||||
int, Z2Creature*, u32, u32);
|
||||
/* 80010E70 */ void setAnm(J3DAnmTransform*, int, f32, f32, f32, f32);
|
||||
/* 800110B0 */ void play(u32, s8);
|
||||
/* 800111EC */ void modelCalc();
|
||||
/* 80011310 */ void stopZelAnime();
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct fopAcM_lc_c {
|
||||
/* 8001DC68 */ void lineCheck(cXyz const*, cXyz const*, fopAc_ac_c const*);
|
||||
|
||||
static u8 mLineCheck[112];
|
||||
};
|
||||
|
||||
struct fopAcM_gc_c {
|
||||
/* 8001DCBC */ void gndCheck(cXyz const*);
|
||||
|
||||
static u8 mGndCheck[84];
|
||||
static f32 mGroundY;
|
||||
};
|
||||
|
||||
struct daPy_actorKeep_c {
|
||||
/* 8015ECFC */ void clearData();
|
||||
};
|
||||
|
||||
struct daCstatue_c {
|
||||
/* 806636AC */ void atHitCallback(fopAc_ac_c*);
|
||||
/* 806636EC */ void createHeap();
|
||||
/* 80663D28 */ void create();
|
||||
/* 80664840 */ ~daCstatue_c();
|
||||
/* 80664AA0 */ void setRoomInfo();
|
||||
/* 80664B38 */ void setMatrix();
|
||||
/* 80664C9C */ void posMove();
|
||||
/* 8066555C */ void setCollision();
|
||||
/* 80665E14 */ void checkHammerReverse();
|
||||
/* 80665F80 */ void setDemo();
|
||||
/* 80666390 */ void setAnime();
|
||||
/* 80666B80 */ void initBrk(u16);
|
||||
/* 80666BF8 */ void initStopBrkBtk();
|
||||
/* 80666C38 */ void initStartBrkBtk();
|
||||
/* 80666DE8 */ void execute();
|
||||
/* 80667438 */ void draw();
|
||||
|
||||
static u8 const m_bckIdxTable[70 + 2 /* padding */];
|
||||
};
|
||||
|
||||
struct daAlink_c {
|
||||
/* 800E1330 */ void getCopyRodBallDisMax() const;
|
||||
/* 800E1374 */ void getCopyRodControllActor();
|
||||
};
|
||||
|
||||
struct dVibration_c {
|
||||
/* 8006FA24 */ void StartShock(int, int, cXyz);
|
||||
};
|
||||
|
||||
struct dTres_c {
|
||||
/* 8009C3CC */ void setPosition(int, u8, Vec const*, int);
|
||||
};
|
||||
|
||||
struct dSv_memBit_c {
|
||||
/* 800347A0 */ void onTbox(int);
|
||||
/* 800347C4 */ void offTbox(int);
|
||||
/* 800347E8 */ void isTbox(int) const;
|
||||
};
|
||||
|
||||
struct dSv_info_c {
|
||||
/* 80035200 */ void onSwitch(int, int);
|
||||
/* 80035360 */ void isSwitch(int, int) const;
|
||||
};
|
||||
|
||||
struct dSv_event_c {
|
||||
/* 8003498C */ void onEventBit(u16);
|
||||
};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct dScnKy_env_light_c {
|
||||
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
|
||||
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct dPa_control_c {
|
||||
/* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
|
||||
u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
|
||||
cXyz const*, f32);
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {
|
||||
/* 802680B0 */ ~cBgS_PolyInfo();
|
||||
};
|
||||
|
||||
struct dBgS {
|
||||
/* 80074B40 */ void ChkMoveBG_NoDABg(cBgS_PolyInfo const&);
|
||||
/* 80074BE8 */ void GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 80074E00 */ void GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 80075100 */ void GetRoomId(cBgS_PolyInfo const&);
|
||||
};
|
||||
|
||||
struct dBgS_AcchCir {
|
||||
/* 80075EAC */ dBgS_AcchCir();
|
||||
/* 80075F58 */ void SetWall(f32, f32);
|
||||
/* 80664768 */ ~dBgS_AcchCir();
|
||||
};
|
||||
|
||||
struct dBgS_Acch {
|
||||
/* 80075F94 */ ~dBgS_Acch();
|
||||
/* 800760A0 */ dBgS_Acch();
|
||||
/* 80076288 */ void Set(fopAc_ac_c*, int, dBgS_AcchCir*);
|
||||
/* 80076AAC */ void CrrPos(dBgS&);
|
||||
};
|
||||
|
||||
struct dPaPo_c {
|
||||
/* 80050C9C */ void init(dBgS_Acch*, f32, f32);
|
||||
/* 80051008 */ void setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
|
||||
csXyz const*, cXyz const*, s8, f32, f32);
|
||||
};
|
||||
|
||||
struct dEvt_control_c {
|
||||
/* 80042468 */ void reset();
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct dCcD_Stts {
|
||||
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
|
||||
};
|
||||
|
||||
struct dCcD_SrcSph {};
|
||||
|
||||
struct dCcD_SrcCyl {};
|
||||
|
||||
struct dCcD_SrcCps {};
|
||||
|
||||
struct dCcD_Sph {
|
||||
/* 80084A34 */ void Set(dCcD_SrcSph const&);
|
||||
/* 80084AC4 */ void MoveCAt(cXyz&);
|
||||
/* 80663B70 */ ~dCcD_Sph();
|
||||
/* 80663C3C */ dCcD_Sph();
|
||||
};
|
||||
|
||||
struct dCcD_GStts {
|
||||
/* 80083760 */ dCcD_GStts();
|
||||
/* 80083830 */ void Move();
|
||||
/* 8066469C */ ~dCcD_GStts();
|
||||
};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 80083A28 */ dCcD_GObjInf();
|
||||
/* 800840E4 */ ~dCcD_GObjInf();
|
||||
/* 80084318 */ void ResetAtHit();
|
||||
/* 80084460 */ void ChkTgHit();
|
||||
/* 800844B8 */ void ResetTgHit();
|
||||
/* 80084548 */ void GetTgHitGObj();
|
||||
/* 8008457C */ void GetTgHitObjSe();
|
||||
/* 800845B0 */ void getHitSeID(u8, int);
|
||||
/* 800846B0 */ void ResetCoHit();
|
||||
};
|
||||
|
||||
struct dCcD_Cyl {
|
||||
/* 800848B4 */ void Set(dCcD_SrcCyl const&);
|
||||
/* 80084908 */ void StartCAt(cXyz&);
|
||||
/* 80084954 */ void MoveCAt(cXyz&);
|
||||
};
|
||||
|
||||
struct dCcD_Cps {
|
||||
/* 800847D0 */ void Set(dCcD_SrcCps const&);
|
||||
};
|
||||
|
||||
struct dCamera_c {
|
||||
/* 801614AC */ void Start();
|
||||
/* 801614D0 */ void Stop();
|
||||
/* 8016300C */ void SetTrimSize(s32);
|
||||
/* 80180AA8 */ void Set(cXyz, cXyz);
|
||||
};
|
||||
|
||||
struct dBgS_StatueAcch {
|
||||
/* 806646F8 */ ~dBgS_StatueAcch();
|
||||
};
|
||||
|
||||
struct dBgS_PolyPassChk {
|
||||
/* 80078F7C */ void SetStatue();
|
||||
};
|
||||
|
||||
struct cM3dGSph {
|
||||
/* 8026F708 */ void SetR(f32);
|
||||
/* 80663CC0 */ ~cM3dGSph();
|
||||
};
|
||||
|
||||
struct cM3dGPla {
|
||||
/* 80665514 */ ~cM3dGPla();
|
||||
};
|
||||
|
||||
struct cM3dGLin {
|
||||
/* 8026F2E8 */ void SetStartEnd(cXyz const&, cXyz const&);
|
||||
};
|
||||
|
||||
struct cM3dGCyl {
|
||||
/* 8026F1DC */ void SetC(cXyz const&);
|
||||
/* 8026F1F8 */ void SetH(f32);
|
||||
/* 8026F200 */ void SetR(f32);
|
||||
/* 80663AA4 */ ~cM3dGCyl();
|
||||
};
|
||||
|
||||
struct cM3dGCps {
|
||||
/* 8026EF88 */ cM3dGCps();
|
||||
};
|
||||
|
||||
struct cM3dGCir {
|
||||
/* 8026EF18 */ ~cM3dGCir();
|
||||
};
|
||||
|
||||
struct cM3dGAab {
|
||||
/* 80663AEC */ ~cM3dGAab();
|
||||
};
|
||||
|
||||
struct cCcD_Obj {};
|
||||
|
||||
struct cCcS {
|
||||
/* 80264BA8 */ void Set(cCcD_Obj*);
|
||||
};
|
||||
|
||||
struct cCcD_Stts {
|
||||
/* 8026395C */ void ClrCcMove();
|
||||
};
|
||||
|
||||
struct cCcD_GStts {
|
||||
/* 80667630 */ ~cCcD_GStts();
|
||||
};
|
||||
|
||||
struct cBgS {
|
||||
/* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const;
|
||||
};
|
||||
|
||||
struct _GXTexObj {};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
struct J3DFrameCtrl {
|
||||
/* 803283FC */ void init(s16);
|
||||
/* 8032842C */ void checkPass(f32);
|
||||
/* 806647D8 */ ~J3DFrameCtrl();
|
||||
};
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
@@ -506,11 +168,6 @@ extern "C" void* __nwa__FUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void init__12J3DFrameCtrlFs();
|
||||
extern "C" void checkPass__12J3DFrameCtrlFf();
|
||||
extern "C" void PSMTXCopy();
|
||||
extern "C" void PSMTXMultVec();
|
||||
extern "C" void PSVECAdd();
|
||||
extern "C" void PSVECSquareMag();
|
||||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void __construct_new_array();
|
||||
@@ -525,7 +182,6 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||
extern "C" extern void* __vt__8dCcD_Cps[36];
|
||||
@@ -538,13 +194,9 @@ extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mLineCheck__11fopAcM_lc_c[112];
|
||||
extern "C" u8 mGndCheck__11fopAcM_gc_c[84];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" f32 mGroundY__11fopAcM_gc_c;
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
extern "C" u8 Zero__5csXyz[4];
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
@@ -872,7 +524,8 @@ asm void daCstatue_c::createHeap() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGCyl::~cM3dGCyl() {
|
||||
// asm cM3dGCyl::~cM3dGCyl() {
|
||||
extern "C" asm void __dt__8cM3dGCylFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__8cM3dGCylFv.s"
|
||||
}
|
||||
@@ -882,7 +535,8 @@ asm cM3dGCyl::~cM3dGCyl() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGAab::~cM3dGAab() {
|
||||
// asm cM3dGAab::~cM3dGAab() {
|
||||
extern "C" asm void __dt__8cM3dGAabFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__8cM3dGAabFv.s"
|
||||
}
|
||||
@@ -892,7 +546,8 @@ asm cM3dGAab::~cM3dGAab() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cXyz::~cXyz() {
|
||||
// asm cXyz::~cXyz() {
|
||||
extern "C" asm void __dt__4cXyzFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__4cXyzFv.s"
|
||||
}
|
||||
@@ -902,7 +557,8 @@ asm cXyz::~cXyz() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_Sph::~dCcD_Sph() {
|
||||
// asm dCcD_Sph::~dCcD_Sph() {
|
||||
extern "C" asm void __dt__8dCcD_SphFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__8dCcD_SphFv.s"
|
||||
}
|
||||
@@ -912,7 +568,8 @@ asm dCcD_Sph::~dCcD_Sph() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_Sph::dCcD_Sph() {
|
||||
// asm dCcD_Sph::dCcD_Sph() {
|
||||
extern "C" asm void __ct__8dCcD_SphFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__ct__8dCcD_SphFv.s"
|
||||
}
|
||||
@@ -922,7 +579,8 @@ asm dCcD_Sph::dCcD_Sph() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGSph::~cM3dGSph() {
|
||||
// asm cM3dGSph::~cM3dGSph() {
|
||||
extern "C" asm void __dt__8cM3dGSphFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__8cM3dGSphFv.s"
|
||||
}
|
||||
@@ -1179,7 +837,8 @@ asm void daCstatue_c::create() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dCcD_GStts::~dCcD_GStts() {
|
||||
// asm dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" asm void __dt__10dCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__10dCcD_GSttsFv.s"
|
||||
}
|
||||
@@ -1189,7 +848,8 @@ asm dCcD_GStts::~dCcD_GStts() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dBgS_StatueAcch::~dBgS_StatueAcch() {
|
||||
// asm dBgS_StatueAcch::~dBgS_StatueAcch() {
|
||||
extern "C" asm void __dt__15dBgS_StatueAcchFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__15dBgS_StatueAcchFv.s"
|
||||
}
|
||||
@@ -1199,7 +859,8 @@ asm dBgS_StatueAcch::~dBgS_StatueAcch() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
// asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
extern "C" asm void __dt__12dBgS_AcchCirFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__12dBgS_AcchCirFv.s"
|
||||
}
|
||||
@@ -1209,7 +870,8 @@ asm dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm J3DFrameCtrl::~J3DFrameCtrl() {
|
||||
// asm J3DFrameCtrl::~J3DFrameCtrl() {
|
||||
extern "C" asm void __dt__12J3DFrameCtrlFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__12J3DFrameCtrlFv.s"
|
||||
}
|
||||
@@ -1440,7 +1102,8 @@ asm void daCstatue_c::posMove() {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cM3dGPla::~cM3dGPla() {
|
||||
// asm cM3dGPla::~cM3dGPla() {
|
||||
extern "C" asm void __dt__8cM3dGPlaFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__8cM3dGPlaFv.s"
|
||||
}
|
||||
@@ -1932,7 +1595,8 @@ static asm void daCstatue_Draw(daCstatue_c* param_0) {
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cCcD_GStts::~cCcD_GStts() {
|
||||
// asm cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" asm void __dt__10cCcD_GSttsFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_cstatue/d_a_cstatue/__dt__10cCcD_GSttsFv.s"
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// Translation Unit: d_a_mg_rod
|
||||
//
|
||||
|
||||
#include "rel/d/a/d_a_mg_rod/d_a_mg_rod.h"
|
||||
// #include "rel/d/a/d_a_mg_rod/d_a_mg_rod.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ static int daScex_Create(fopAc_ac_c* ac) {
|
||||
daScex_c* scex = static_cast<daScex_c*>(ac);
|
||||
|
||||
mDoMtx_stack_c::transS(scex->current.pos.x, scex->current.pos.y, scex->current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(scex->mCollisionRot.y);
|
||||
mDoMtx_stack_c::YrotM(scex->shape_angle.y);
|
||||
PSMTXInverse(mDoMtx_stack_c::get(), scex->mMatrix);
|
||||
scex->mScale.x *= 75.0f;
|
||||
scex->mScale.z *= 75.0f;
|
||||
@@ -145,25 +145,25 @@ COMPILER_STRIP_GATE(0x80485CA8, &lit_3842);
|
||||
// regalloc
|
||||
#ifdef NONMATCHING
|
||||
int daScex_c::execute() {
|
||||
Vec spC;
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
cXyz spC;
|
||||
|
||||
if (checkWork()) {
|
||||
PSMTXMultVec(mMatrix, &player->current.pos, &spC);
|
||||
mDoMtx_multVec(mMatrix, &player->current.pos, &spC);
|
||||
|
||||
if (spC.y >= 0.0f && spC.y <= mScale.y && fabsf(spC.x) <= mScale.x && fabsf(spC.z) <= mScale.z) {
|
||||
switch (getArg1()) {
|
||||
case 0xFF:
|
||||
case 1:
|
||||
player->onSceneChangeArea(getArg0(), ((fopAcM_GetParam(this) >> 0x10) & 0xFF), this);
|
||||
player->onSceneChangeArea(getArg0(), getPathID(), this);
|
||||
break;
|
||||
case 2:
|
||||
case 0:
|
||||
player->onSceneChangeAreaJump(getArg0(), ((fopAcM_GetParam(this) >> 0x10) & 0xFF), this);
|
||||
player->onSceneChangeAreaJump(getArg0(), getPathID(), this);
|
||||
break;
|
||||
case 3:
|
||||
case 4:
|
||||
player->onSceneChangeAreaJump(getArg0(), ((fopAcM_GetParam(this) >> 0x10) & 0xFF), this);
|
||||
player->onSceneChangeAreaJump(getArg0(), getPathID(), this);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,73 +1,16 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d_a_skip_2D
|
||||
//
|
||||
/**
|
||||
* d_a_skip2D.cpp
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rel/d/a/d_a_skip_2D/d_a_skip_2D.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct daSkip2D_c {
|
||||
/* 80D4D498 */ void createHeap();
|
||||
/* 80D4D4F4 */ void create();
|
||||
/* 80D4D588 */ bool destroy();
|
||||
/* 80D4D590 */ void draw();
|
||||
/* 80D4D5D0 */ bool execute();
|
||||
/* 80D4D5D8 */ void initiate();
|
||||
/* 80D4D674 */ ~daSkip2D_c();
|
||||
};
|
||||
|
||||
struct dMeterButton_c {
|
||||
/* 80201328 */ dMeterButton_c();
|
||||
};
|
||||
|
||||
struct dDlst_base_c {};
|
||||
|
||||
struct dDlst_list_c {
|
||||
/* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" static void daSkip2D_createHeap__FP10fopAc_ac_c();
|
||||
extern "C" void createHeap__10daSkip2D_cFv();
|
||||
extern "C" void create__10daSkip2D_cFv();
|
||||
extern "C" bool destroy__10daSkip2D_cFv();
|
||||
extern "C" void draw__10daSkip2D_cFv();
|
||||
extern "C" bool execute__10daSkip2D_cFv();
|
||||
extern "C" void initiate__10daSkip2D_cFv();
|
||||
extern "C" static void daSkip2D_Create__FPv();
|
||||
extern "C" static void daSkip2D_Delete__FPv();
|
||||
extern "C" static void daSkip2D_Execute__FPv();
|
||||
extern "C" static void daSkip2D_Draw__FPv();
|
||||
extern "C" static bool daSkip2D_IsDelete__FPv();
|
||||
extern "C" void __dt__10daSkip2D_cFv();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void __dt__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c();
|
||||
extern "C" void __ct__14dMeterButton_cFv();
|
||||
extern "C" void* __nw__FUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -75,33 +18,91 @@ extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
|
||||
/* 80D4D478-80D4D498 000078 0020+00 1/1 0/0 0/0 .text daSkip2D_createHeap__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSkip2D_createHeap(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/daSkip2D_createHeap__FP10fopAc_ac_c.s"
|
||||
static int daSkip2D_createHeap(fopAc_ac_c* i_this) {
|
||||
return static_cast<daSkip2D_c*>(i_this)->createHeap();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D498-80D4D4F4 000098 005C+00 1/1 0/0 0/0 .text createHeap__10daSkip2D_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSkip2D_c::createHeap() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/createHeap__10daSkip2D_cFv.s"
|
||||
int daSkip2D_c::createHeap() {
|
||||
mpButton = new dMeterButton_c();
|
||||
|
||||
if (mpButton == NULL) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4D4F4-80D4D588 0000F4 0094+00 1/1 0/0 0/0 .text create__10daSkip2D_cFv */
|
||||
int daSkip2D_c::create() {
|
||||
if (!fopAcM_CheckCondition(this, 8)) {
|
||||
new (this) daSkip2D_c();
|
||||
fopAcM_OnCondition(this, 8);
|
||||
}
|
||||
|
||||
if (!fopAcM_entrySolidHeap(this, daSkip2D_createHeap, 0)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
/* 80D4D588-80D4D590 000188 0008+00 1/1 0/0 0/0 .text destroy__10daSkip2D_cFv */
|
||||
int daSkip2D_c::destroy() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4D590-80D4D5D0 000190 0040+00 1/1 0/0 0/0 .text draw__10daSkip2D_cFv */
|
||||
int daSkip2D_c::draw() {
|
||||
dComIfGd_set2DOpaTop((dDlst_base_c*)&mpButton); // ???
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4D5D0-80D4D5D8 0001D0 0008+00 1/1 0/0 0/0 .text execute__10daSkip2D_cFv */
|
||||
int daSkip2D_c::execute() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D4D5D8-80D4D5EC 0001D8 0014+00 1/1 0/0 0/0 .text initiate__10daSkip2D_cFv */
|
||||
void daSkip2D_c::initiate() {
|
||||
field_0x56c = 0;
|
||||
mpButton = NULL;
|
||||
field_0x574 = 0;
|
||||
}
|
||||
|
||||
/* 80D4D5EC-80D4D60C 0001EC 0020+00 1/0 0/0 0/0 .text daSkip2D_Create__FPv */
|
||||
static int daSkip2D_Create(void* i_this) {
|
||||
return static_cast<daSkip2D_c*>(i_this)->create();
|
||||
}
|
||||
|
||||
/* 80D4D60C-80D4D62C 00020C 0020+00 1/0 0/0 0/0 .text daSkip2D_Delete__FPv */
|
||||
static int daSkip2D_Delete(void* i_this) {
|
||||
return static_cast<daSkip2D_c*>(i_this)->destroy();
|
||||
}
|
||||
|
||||
/* 80D4D62C-80D4D64C 00022C 0020+00 1/0 0/0 0/0 .text daSkip2D_Execute__FPv */
|
||||
static int daSkip2D_Execute(void* i_this) {
|
||||
return static_cast<daSkip2D_c*>(i_this)->execute();
|
||||
}
|
||||
|
||||
/* 80D4D64C-80D4D66C 00024C 0020+00 1/0 0/0 0/0 .text daSkip2D_Draw__FPv */
|
||||
static int daSkip2D_Draw(void* i_this) {
|
||||
return static_cast<daSkip2D_c*>(i_this)->draw();
|
||||
}
|
||||
|
||||
/* 80D4D66C-80D4D674 00026C 0008+00 1/0 0/0 0/0 .text daSkip2D_IsDelete__FPv */
|
||||
static int daSkip2D_IsDelete(void*) {
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80D4D6DC-80D4D6FC -00001 0020+00 1/0 0/0 0/0 .data daSkip2D_MethodTable */
|
||||
SECTION_DATA static void* daSkip2D_MethodTable[8] = {
|
||||
(void*)daSkip2D_Create__FPv,
|
||||
(void*)daSkip2D_Delete__FPv,
|
||||
(void*)daSkip2D_Execute__FPv,
|
||||
(void*)daSkip2D_IsDelete__FPv,
|
||||
(void*)daSkip2D_Draw__FPv,
|
||||
(void*)daSkip2D_Create,
|
||||
(void*)daSkip2D_Delete,
|
||||
(void*)daSkip2D_Execute,
|
||||
(void*)daSkip2D_IsDelete,
|
||||
(void*)daSkip2D_Draw,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
@@ -115,106 +116,4 @@ SECTION_DATA extern void* g_profile_SKIP2D[12] = {
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x03040000, (void*)&daSkip2D_MethodTable,
|
||||
(void*)0x00040000, (void*)NULL,
|
||||
};
|
||||
|
||||
/* 80D4D72C-80D4D738 000050 000C+00 2/2 0/0 0/0 .data __vt__10daSkip2D_c */
|
||||
SECTION_DATA extern void* __vt__10daSkip2D_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__10daSkip2D_cFv,
|
||||
};
|
||||
|
||||
/* 80D4D4F4-80D4D588 0000F4 0094+00 1/1 0/0 0/0 .text create__10daSkip2D_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSkip2D_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/create__10daSkip2D_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D588-80D4D590 000188 0008+00 1/1 0/0 0/0 .text destroy__10daSkip2D_cFv */
|
||||
bool daSkip2D_c::destroy() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80D4D590-80D4D5D0 000190 0040+00 1/1 0/0 0/0 .text draw__10daSkip2D_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSkip2D_c::draw() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/draw__10daSkip2D_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D5D0-80D4D5D8 0001D0 0008+00 1/1 0/0 0/0 .text execute__10daSkip2D_cFv */
|
||||
bool daSkip2D_c::execute() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80D4D5D8-80D4D5EC 0001D8 0014+00 1/1 0/0 0/0 .text initiate__10daSkip2D_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daSkip2D_c::initiate() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/initiate__10daSkip2D_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D5EC-80D4D60C 0001EC 0020+00 1/0 0/0 0/0 .text daSkip2D_Create__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSkip2D_Create(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/daSkip2D_Create__FPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D60C-80D4D62C 00020C 0020+00 1/0 0/0 0/0 .text daSkip2D_Delete__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSkip2D_Delete(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/daSkip2D_Delete__FPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D62C-80D4D64C 00022C 0020+00 1/0 0/0 0/0 .text daSkip2D_Execute__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSkip2D_Execute(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/daSkip2D_Execute__FPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D64C-80D4D66C 00024C 0020+00 1/0 0/0 0/0 .text daSkip2D_Draw__FPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daSkip2D_Draw(void* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/daSkip2D_Draw__FPv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D4D66C-80D4D674 00026C 0008+00 1/0 0/0 0/0 .text daSkip2D_IsDelete__FPv */
|
||||
static bool daSkip2D_IsDelete(void* param_0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80D4D674-80D4D6D4 000274 0060+00 1/0 0/0 0/0 .text __dt__10daSkip2D_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daSkip2D_c::~daSkip2D_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_skip_2D/d_a_skip_2D/__dt__10daSkip2D_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
};
|
||||
@@ -76,7 +76,7 @@ SECTION_RODATA static f32 const lit_3708 = -100.0f;
|
||||
COMPILER_STRIP_GATE(0x805A1D94, &lit_3708);
|
||||
|
||||
inline u8 daSwc00_getCondition(daSwc00_c* i_this) {
|
||||
return i_this->mCollisionRot.x;
|
||||
return i_this->shape_angle.x;
|
||||
}
|
||||
|
||||
inline int daSwc00_getShape(daSwc00_c* i_this) {
|
||||
|
||||
@@ -521,8 +521,8 @@ static int daNPC_TR_Execute(npc_tr_class* npc_tr) {
|
||||
action(npc_tr);
|
||||
|
||||
mDoMtx_stack_c::transS(npc_tr->current.pos.x, npc_tr->current.pos.y, npc_tr->current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(npc_tr->mCollisionRot.y + npc_tr->field_0x5f0);
|
||||
mDoMtx_stack_c::XrotM(npc_tr->mCollisionRot.x);
|
||||
mDoMtx_stack_c::YrotM(npc_tr->shape_angle.y + npc_tr->field_0x5f0);
|
||||
mDoMtx_stack_c::XrotM(npc_tr->shape_angle.x);
|
||||
|
||||
f32 scale = npc_tr->mScale.x * l_HIO.field_0x8;
|
||||
mDoMtx_stack_c::scaleM(scale, scale, scale);
|
||||
|
||||
@@ -753,7 +753,7 @@ void daTagTWGate_c::executeDemoFilone3() {
|
||||
|
||||
if (old_5e1 == 43) {
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
csXyz sxyz(0, player->mCollisionRot.y + 0x8000, 0);
|
||||
csXyz sxyz(0, player->shape_angle.y + 0x8000, 0);
|
||||
|
||||
mDoMtx_stack_c::transS(player->current.pos);
|
||||
mDoMtx_stack_c::YrotM(sxyz.y);
|
||||
@@ -1013,9 +1013,9 @@ void daTagTWGate_c::initBaseMtx() {
|
||||
mCullMtx = mpMorf->getModel()->getBaseTRMtx();
|
||||
fopAc_ac_c* player = (fopAc_ac_c*)dComIfGp_getPlayer(0);
|
||||
|
||||
mCollisionRot.y = player->mCollisionRot.y + 0x8000;
|
||||
shape_angle.y = player->shape_angle.y + 0x8000;
|
||||
mDoMtx_stack_c::transS(player->current.pos);
|
||||
mDoMtx_stack_c::YrotM(mCollisionRot.y);
|
||||
mDoMtx_stack_c::YrotM(shape_angle.y);
|
||||
mDoMtx_stack_c::transM(0.0f, 250.0f, -840.0f);
|
||||
|
||||
current.pos.x = mDoMtx_stack_c::get()[0][3];
|
||||
|
||||
@@ -1,150 +1,104 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d_a_tag_hinit
|
||||
//
|
||||
/**
|
||||
* d_a_tag_hinit.cpp
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct daTagHinit_c {
|
||||
/* 805A3758 */ void create();
|
||||
/* 805A3820 */ ~daTagHinit_c();
|
||||
/* 805A389C */ void execute();
|
||||
};
|
||||
|
||||
struct dSv_info_c {
|
||||
/* 80035200 */ void onSwitch(int, int);
|
||||
/* 80035360 */ void isSwitch(int, int) const;
|
||||
};
|
||||
|
||||
struct dSv_event_flag_c {
|
||||
static u8 saveBitLabels[1644 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct dSv_event_c {
|
||||
/* 800349BC */ void isEventBit(u16) const;
|
||||
};
|
||||
#include "rel/d/a/d_a_horse/d_a_horse.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void create__12daTagHinit_cFv();
|
||||
extern "C" static void daTagHinit_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__12daTagHinit_cFv();
|
||||
extern "C" static void daTagHinit_Delete__FP12daTagHinit_c();
|
||||
extern "C" void execute__12daTagHinit_cFv();
|
||||
extern "C" static void daTagHinit_Execute__FP12daTagHinit_c();
|
||||
extern "C" static bool daTagHinit_Draw__FP12daTagHinit_c();
|
||||
extern "C" extern void* g_profile_Tag_Hinit[12];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void __dt__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void isEventBit__11dSv_event_cCFUs();
|
||||
extern "C" void onSwitch__10dSv_info_cFii();
|
||||
extern "C" void isSwitch__10dSv_info_cCFii();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 805A3758-805A3800 000078 00A8+00 1/1 0/0 0/0 .text create__12daTagHinit_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagHinit_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/create__12daTagHinit_cFv.s"
|
||||
int daTagHinit_c::create() {
|
||||
if (!fopAcM_CheckCondition(this, 8)) {
|
||||
new (this) daTagHinit_c();
|
||||
fopAcM_OnCondition(this, 8);
|
||||
}
|
||||
|
||||
field_0x569 = shape_angle.x;
|
||||
|
||||
if (field_0x569 != 0xFF && i_fopAcM_isSwitch(this, field_0x569)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
field_0x568 = (shape_angle.x >> 8) & 0xFF;
|
||||
field_0x56c = fopAcM_GetParam(this);
|
||||
field_0x56e = (fopAcM_GetParam(this) >> 0x10);
|
||||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805A3800-805A3820 000120 0020+00 1/0 0/0 0/0 .text daTagHinit_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagHinit_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/daTagHinit_Create__FP10fopAc_ac_c.s"
|
||||
static int daTagHinit_Create(fopAc_ac_c* i_this) {
|
||||
return static_cast<daTagHinit_c*>(i_this)->create();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805A3820-805A3874 000140 0054+00 1/1 0/0 0/0 .text __dt__12daTagHinit_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daTagHinit_c::~daTagHinit_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/__dt__12daTagHinit_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
daTagHinit_c::~daTagHinit_c() {}
|
||||
|
||||
/* 805A3874-805A389C 000194 0028+00 1/0 0/0 0/0 .text daTagHinit_Delete__FP12daTagHinit_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagHinit_Delete(daTagHinit_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/daTagHinit_Delete__FP12daTagHinit_c.s"
|
||||
static int daTagHinit_Delete(daTagHinit_c* i_this) {
|
||||
i_this->~daTagHinit_c();
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805A389C-805A39B8 0001BC 011C+00 1/1 0/0 0/0 .text execute__12daTagHinit_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagHinit_c::execute() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/execute__12daTagHinit_cFv.s"
|
||||
int daTagHinit_c::execute() {
|
||||
if ((field_0x56c == 0xFFFF ||
|
||||
i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[field_0x56c])) &&
|
||||
(field_0x56e == 0xFFFF ||
|
||||
!i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[field_0x56e])) &&
|
||||
(field_0x568 == 0xFF || i_fopAcM_isSwitch(this, field_0x568))) {
|
||||
if (field_0x569 != 0xFF) {
|
||||
i_fopAcM_onSwitch(this, field_0x569);
|
||||
}
|
||||
|
||||
daHorse_c* horse = i_dComIfGp_getHorseActor();
|
||||
horse->i_setHorsePosAndAngle(¤t.pos, shape_angle.y);
|
||||
horse->offNoDrawWait();
|
||||
fopAcM_delete(this);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805A39B8-805A39D8 0002D8 0020+00 1/0 0/0 0/0 .text daTagHinit_Execute__FP12daTagHinit_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagHinit_Execute(daTagHinit_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit/daTagHinit_Execute__FP12daTagHinit_c.s"
|
||||
static int daTagHinit_Execute(daTagHinit_c* i_this) {
|
||||
return i_this->execute();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 805A39D8-805A39E0 0002F8 0008+00 1/0 0/0 0/0 .text daTagHinit_Draw__FP12daTagHinit_c
|
||||
*/
|
||||
static bool daTagHinit_Draw(daTagHinit_c* param_0) {
|
||||
return true;
|
||||
static int daTagHinit_Draw(daTagHinit_c*) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 805A39E8-805A3A08 -00001 0020+00 1/0 0/0 0/0 .data l_daTagHinit_Method */
|
||||
SECTION_DATA static void* l_daTagHinit_Method[8] = {
|
||||
(void*)daTagHinit_Create__FP10fopAc_ac_c,
|
||||
(void*)daTagHinit_Delete__FP12daTagHinit_c,
|
||||
(void*)daTagHinit_Execute__FP12daTagHinit_c,
|
||||
(void*)daTagHinit_Create,
|
||||
(void*)daTagHinit_Delete,
|
||||
(void*)daTagHinit_Execute,
|
||||
(void*)NULL,
|
||||
(void*)daTagHinit_Draw__FP12daTagHinit_c,
|
||||
(void*)daTagHinit_Draw,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
|
||||
@@ -121,7 +121,7 @@ dMsgFlow_c daTagHstop_c::m_msgFlow;
|
||||
int daTagHstop_c::execute() {
|
||||
if (mEvtInfo.checkCommandTalk()) {
|
||||
if (field_0x573 == 2) {
|
||||
m_msgFlow.init(this, (u16)mCollisionRot.z, 0, NULL);
|
||||
m_msgFlow.init(this, (u16)shape_angle.z, 0, NULL);
|
||||
field_0x573 = 3;
|
||||
} else if (m_msgFlow.doFlow(this, NULL, 0)) {
|
||||
i_dComIfGp_getEvent().reset();
|
||||
|
||||
@@ -120,7 +120,7 @@ bool daTag_Lv5Soup_c::isAreaCheck() {
|
||||
f32 boundX = mScale.x * 100.0f;
|
||||
f32 boundY = mScale.y * 100.0f;
|
||||
|
||||
if (sqrtf(dist.abs2XZ()) < boundX && -boundY < dist.y && dist.y < boundY) {
|
||||
if (dist.absXZ() < boundX && -boundY < dist.y && dist.y < boundY) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
|
||||
@@ -1,201 +1,150 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d_a_tag_setrestart
|
||||
//
|
||||
/**
|
||||
* d_a_tag_setrestart.cpp
|
||||
* RMBack0
|
||||
* Sets player room restart info
|
||||
*/
|
||||
|
||||
#include "rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
/* 80266AE4 */ void operator+(Vec const&) const;
|
||||
/* 80D60520 */ ~cXyz();
|
||||
/* 80D6055C */ cXyz();
|
||||
};
|
||||
|
||||
struct fopAcM_gc_c {
|
||||
/* 8001DCBC */ void gndCheck(cXyz const*);
|
||||
|
||||
static f32 mGroundY;
|
||||
};
|
||||
|
||||
struct daTagRestart_c {
|
||||
/* 80D603F8 */ void Create();
|
||||
/* 80D6048C */ void create();
|
||||
/* 80D60560 */ void execute();
|
||||
/* 80D60744 */ bool _delete();
|
||||
};
|
||||
|
||||
struct dSv_restart_c {
|
||||
/* 80034F80 */ void setRoom(cXyz const&, s16, s8);
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void Create__14daTagRestart_cFv();
|
||||
extern "C" void create__14daTagRestart_cFv();
|
||||
extern "C" void __dt__4cXyzFv();
|
||||
extern "C" void __ct__4cXyzFv();
|
||||
extern "C" void execute__14daTagRestart_cFv();
|
||||
extern "C" bool _delete__14daTagRestart_cFv();
|
||||
extern "C" static void daTagRestart_Execute__FP14daTagRestart_c();
|
||||
extern "C" static void daTagRestart_Delete__FP14daTagRestart_c();
|
||||
extern "C" static void daTagRestart_Create__FP10fopAc_ac_c();
|
||||
extern "C" extern void* g_profile_Tag_Restart[12];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_YrotS__FPA4_fs();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void gndCheck__11fopAcM_gc_cFPC4cXyz();
|
||||
extern "C" void setRoom__13dSv_restart_cFRC4cXyzsSc();
|
||||
extern "C" void __pl__4cXyzCFRC3Vec();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void PSMTXMultVec();
|
||||
extern "C" void PSVECSubtract();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" f32 mGroundY__11fopAcM_gc_c;
|
||||
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80D607B4-80D607B8 000000 0004+00 2/2 0/0 0/0 .rodata @3650 */
|
||||
SECTION_RODATA static f32 const lit_3650 = -100.0f;
|
||||
COMPILER_STRIP_GATE(0x80D607B4, &lit_3650);
|
||||
|
||||
/* 80D607B8-80D607BC 000004 0004+00 0/2 0/0 0/0 .rodata @3651 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3651 = 100.0f;
|
||||
COMPILER_STRIP_GATE(0x80D607B8, &lit_3651);
|
||||
#pragma pop
|
||||
|
||||
/* 80D607BC-80D607C0 000008 0004+00 0/2 0/0 0/0 .rodata @3652 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const lit_3652[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80D607BC, &lit_3652);
|
||||
#pragma pop
|
||||
|
||||
/* 80D603F8-80D6048C 000078 0094+00 1/1 0/0 0/0 .text Create__14daTagRestart_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagRestart_c::Create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/Create__14daTagRestart_cFv.s"
|
||||
int daTagRestart_c::Create() {
|
||||
field_0x56c[0].x = mScale.x * -100.0f;
|
||||
field_0x56c[0].z = mScale.z * -100.0f;
|
||||
|
||||
field_0x56c[1].x = mScale.x * 100.0f;
|
||||
field_0x56c[1].z = mScale.z * -100.0f;
|
||||
|
||||
field_0x56c[2].x = mScale.x * 100.0f;
|
||||
field_0x56c[2].z = mScale.z * 100.0f;
|
||||
|
||||
field_0x56c[3].x = mScale.x * -100.0f;
|
||||
field_0x56c[3].z = mScale.z * 100.0f;
|
||||
|
||||
field_0x56c[3].y = 0.0f;
|
||||
field_0x56c[2].y = 0.0f;
|
||||
field_0x56c[1].y = 0.0f;
|
||||
field_0x56c[0].y = 0.0f;
|
||||
|
||||
mPlayerRoomNo = -1;
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D6048C-80D60520 00010C 0094+00 1/1 0/0 0/0 .text create__14daTagRestart_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagRestart_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/func_80D6048C.s"
|
||||
int daTagRestart_c::create() {
|
||||
if (!fopAcM_CheckCondition(this, 8)) {
|
||||
new (this) daTagRestart_c();
|
||||
fopAcM_OnCondition(this, 8);
|
||||
}
|
||||
|
||||
if (!Create()) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D60520-80D6055C 0001A0 003C+00 1/1 0/0 0/0 .text __dt__4cXyzFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm cXyz::~cXyz() {
|
||||
// asm cXyz::~cXyz() {
|
||||
extern "C" asm void __dt__4cXyzFv() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/__dt__4cXyzFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D6055C-80D60560 0001DC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */
|
||||
cXyz::cXyz() {
|
||||
/* empty function */
|
||||
}
|
||||
// cXyz::cXyz() {
|
||||
extern "C" void __ct__4cXyzFv() {}
|
||||
|
||||
/* 80D60560-80D60744 0001E0 01E4+00 1/1 0/0 0/0 .text execute__14daTagRestart_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagRestart_c::execute() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/execute__14daTagRestart_cFv.s"
|
||||
int daTagRestart_c::execute() {
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
|
||||
cXyz player_pos = player->current.pos;
|
||||
player_pos -= orig.pos;
|
||||
mDoMtx_stack_c::YrotS(-current.angle.y);
|
||||
mDoMtx_stack_c::multVec(&player_pos, &player_pos);
|
||||
|
||||
if (field_0x56c[0].x < player_pos.x && field_0x56c[0].z < player_pos.z &&
|
||||
field_0x56c[2].x > player_pos.x && field_0x56c[2].z > player_pos.z) {
|
||||
int roomNo = dComIfGp_roomControl_getStayNo();
|
||||
if (roomNo != mPlayerRoomNo) {
|
||||
cXyz pos_offset;
|
||||
s16 restart_angle;
|
||||
if (roomNo == daTagRestart_prm::getFRoomNo(this)) {
|
||||
restart_angle = orig.angle.y;
|
||||
pos_offset.set(0.0f, 0.0f, 100.0f);
|
||||
} else {
|
||||
restart_angle = orig.angle.y + 0x8000;
|
||||
pos_offset.set(0.0f, 0.0f, -100.0f);
|
||||
}
|
||||
|
||||
pos_offset.y += 100.0f;
|
||||
mDoMtx_stack_c::YrotS(orig.angle.y);
|
||||
mDoMtx_stack_c::multVec(&pos_offset, &pos_offset);
|
||||
cXyz restart_pos = current.pos + pos_offset;
|
||||
|
||||
if (fopAcM_gc_c::gndCheck(&restart_pos)) {
|
||||
restart_pos.y = fopAcM_gc_c::getGroundY();
|
||||
}
|
||||
|
||||
s32 player_roomNo = fopAcM_GetRoomNo(player);
|
||||
dComIfGs_setRestartRoom(restart_pos, restart_angle, player_roomNo);
|
||||
}
|
||||
}
|
||||
|
||||
mPlayerRoomNo = fopAcM_GetRoomNo(player);
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D60744-80D6074C 0003C4 0008+00 1/1 0/0 0/0 .text _delete__14daTagRestart_cFv */
|
||||
bool daTagRestart_c::_delete() {
|
||||
return true;
|
||||
int daTagRestart_c::_delete() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D6074C-80D6076C 0003CC 0020+00 1/0 0/0 0/0 .text daTagRestart_Execute__FP14daTagRestart_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagRestart_Execute(daTagRestart_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/daTagRestart_Execute__FP14daTagRestart_c.s"
|
||||
static int daTagRestart_Execute(daTagRestart_c* i_this) {
|
||||
return i_this->execute();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D6076C-80D6078C 0003EC 0020+00 1/0 0/0 0/0 .text daTagRestart_Delete__FP14daTagRestart_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagRestart_Delete(daTagRestart_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/daTagRestart_Delete__FP14daTagRestart_c.s"
|
||||
static int daTagRestart_Delete(daTagRestart_c* i_this) {
|
||||
return i_this->_delete();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D6078C-80D607AC 00040C 0020+00 1/0 0/0 0/0 .text daTagRestart_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagRestart_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart/daTagRestart_Create__FP10fopAc_ac_c.s"
|
||||
static int daTagRestart_Create(fopAc_ac_c* i_this) {
|
||||
return static_cast<daTagRestart_c*>(i_this)->create();
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80D607C0-80D607E0 -00001 0020+00 1/0 0/0 0/0 .data l_daTagRestart_Method */
|
||||
SECTION_DATA static void* l_daTagRestart_Method[8] = {
|
||||
(void*)daTagRestart_Create__FP10fopAc_ac_c,
|
||||
(void*)daTagRestart_Delete__FP14daTagRestart_c,
|
||||
(void*)daTagRestart_Execute__FP14daTagRestart_c,
|
||||
(void*)daTagRestart_Create,
|
||||
(void*)daTagRestart_Delete,
|
||||
(void*)daTagRestart_Execute,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
|
||||
@@ -4,70 +4,114 @@
|
||||
//
|
||||
|
||||
#include "rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
/* 80018C8C */ ~fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct daTagWrHowl_c {
|
||||
/* 80D63F38 */ daTagWrHowl_c();
|
||||
/* 80D63F74 */ ~daTagWrHowl_c();
|
||||
/* 80D63FD4 */ void create();
|
||||
/* 80D6402C */ bool Delete();
|
||||
/* 80D64034 */ bool draw();
|
||||
/* 80D6403C */ void execute();
|
||||
/* 80D64090 */ void init();
|
||||
/* 80D640B4 */ void chkWlfInTag();
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__13daTagWrHowl_cFv();
|
||||
extern "C" void __dt__13daTagWrHowl_cFv();
|
||||
extern "C" void create__13daTagWrHowl_cFv();
|
||||
extern "C" bool Delete__13daTagWrHowl_cFv();
|
||||
extern "C" bool draw__13daTagWrHowl_cFv();
|
||||
extern "C" void execute__13daTagWrHowl_cFv();
|
||||
extern "C" void init__13daTagWrHowl_cFv();
|
||||
extern "C" void chkWlfInTag__13daTagWrHowl_cFv();
|
||||
extern "C" static void daTagWrHowl_create__FP13daTagWrHowl_c();
|
||||
extern "C" static void daTagWrHowl_Delete__FP13daTagWrHowl_c();
|
||||
extern "C" static void daTagWrHowl_execute__FP13daTagWrHowl_c();
|
||||
extern "C" static void daTagWrHowl_draw__FP13daTagWrHowl_c();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void __dt__10fopAc_ac_cFv();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void PSVECSquareDistance();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 80D63F38-80D63F74 000078 003C+00 2/2 0/0 0/0 .text __ct__13daTagWrHowl_cFv */
|
||||
daTagWrHowl_c::daTagWrHowl_c() {}
|
||||
|
||||
/* 80D63F74-80D63FD4 0000B4 0060+00 1/0 0/0 0/0 .text __dt__13daTagWrHowl_cFv */
|
||||
daTagWrHowl_c::~daTagWrHowl_c() {}
|
||||
|
||||
/* 80D63FD4-80D6402C 000114 0058+00 1/1 0/0 0/0 .text create__13daTagWrHowl_cFv */
|
||||
int daTagWrHowl_c::create() {
|
||||
if (!fopAcM_CheckCondition(this, 8)) {
|
||||
new (this) daTagWrHowl_c();
|
||||
fopAcM_OnCondition(this, 8);
|
||||
}
|
||||
|
||||
init();
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
/* 80D6402C-80D64034 00016C 0008+00 1/1 0/0 0/0 .text Delete__13daTagWrHowl_cFv */
|
||||
int daTagWrHowl_c::Delete() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D64034-80D6403C 000174 0008+00 1/1 0/0 0/0 .text draw__13daTagWrHowl_cFv */
|
||||
int daTagWrHowl_c::draw() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D6403C-80D64090 00017C 0054+00 1/1 0/0 0/0 .text execute__13daTagWrHowl_cFv */
|
||||
int daTagWrHowl_c::execute() {
|
||||
mAttentionInfo.mFlags = 0;
|
||||
|
||||
if (chkWlfInTag()) {
|
||||
mAttentionInfo.mFlags |= 0x80;
|
||||
mAttentionInfo.field_0x4[3] = 65;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80D64090-80D640B4 0001D0 0024+00 1/1 0/0 0/0 .text init__13daTagWrHowl_cFv */
|
||||
void daTagWrHowl_c::init() {
|
||||
field_0x56c = 50.0f * mScale.x;
|
||||
field_0x570 = field_0x56c * field_0x56c;
|
||||
}
|
||||
|
||||
/* 80D640B4-80D64144 0001F4 0090+00 1/1 0/0 0/0 .text chkWlfInTag__13daTagWrHowl_cFv */
|
||||
bool daTagWrHowl_c::chkWlfInTag() {
|
||||
if (dComIfGp_getPlayer(0) == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (daPy_py_c::i_checkNowWolf()) {
|
||||
cXyz player_pos = dComIfGp_getPlayer(0)->current.pos;
|
||||
if (player_pos.abs2(current.pos) < field_0x570) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 80D64144-80D64198 000284 0054+00 1/0 0/0 0/0 .text daTagWrHowl_create__FP13daTagWrHowl_c */
|
||||
static int daTagWrHowl_create(daTagWrHowl_c* i_this) {
|
||||
if (!fopAcM_CheckCondition(i_this, 8)) {
|
||||
new (i_this) daTagWrHowl_c();
|
||||
fopAcM_OnCondition(i_this, 8);
|
||||
}
|
||||
|
||||
return i_this->create();
|
||||
}
|
||||
|
||||
/* 80D64198-80D641B8 0002D8 0020+00 1/0 0/0 0/0 .text daTagWrHowl_Delete__FP13daTagWrHowl_c */
|
||||
static int daTagWrHowl_Delete(daTagWrHowl_c* i_this) {
|
||||
return i_this->Delete();
|
||||
}
|
||||
|
||||
/* 80D641B8-80D641D8 0002F8 0020+00 1/0 0/0 0/0 .text daTagWrHowl_execute__FP13daTagWrHowl_c */
|
||||
static int daTagWrHowl_execute(daTagWrHowl_c* i_this) {
|
||||
return i_this->execute();
|
||||
}
|
||||
|
||||
/* 80D641D8-80D641F8 000318 0020+00 1/0 0/0 0/0 .text daTagWrHowl_draw__FP13daTagWrHowl_c
|
||||
*/
|
||||
static int daTagWrHowl_draw(daTagWrHowl_c* i_this) {
|
||||
return i_this->draw();
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80D64204-80D64224 -00001 0020+00 1/0 0/0 0/0 .data daTagWrHowl_METHODS */
|
||||
SECTION_DATA static void* daTagWrHowl_METHODS[8] = {
|
||||
(void*)daTagWrHowl_create__FP13daTagWrHowl_c,
|
||||
(void*)daTagWrHowl_Delete__FP13daTagWrHowl_c,
|
||||
(void*)daTagWrHowl_execute__FP13daTagWrHowl_c,
|
||||
(void*)daTagWrHowl_create,
|
||||
(void*)daTagWrHowl_Delete,
|
||||
(void*)daTagWrHowl_execute,
|
||||
(void*)NULL,
|
||||
(void*)daTagWrHowl_draw__FP13daTagWrHowl_c,
|
||||
(void*)daTagWrHowl_draw,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
@@ -81,127 +125,4 @@ SECTION_DATA extern void* g_profile_Tag_WaraHowl[12] = {
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x02DD0000, (void*)&daTagWrHowl_METHODS,
|
||||
(void*)0x00040000, (void*)0x000E0000,
|
||||
};
|
||||
|
||||
/* 80D64254-80D64260 000050 000C+00 2/2 0/0 0/0 .data __vt__13daTagWrHowl_c */
|
||||
SECTION_DATA extern void* __vt__13daTagWrHowl_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__13daTagWrHowl_cFv,
|
||||
};
|
||||
|
||||
/* 80D63F38-80D63F74 000078 003C+00 2/2 0/0 0/0 .text __ct__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daTagWrHowl_c::daTagWrHowl_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/__ct__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D63F74-80D63FD4 0000B4 0060+00 1/0 0/0 0/0 .text __dt__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm daTagWrHowl_c::~daTagWrHowl_c() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/__dt__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D63FD4-80D6402C 000114 0058+00 1/1 0/0 0/0 .text create__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagWrHowl_c::create() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/create__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D6402C-80D64034 00016C 0008+00 1/1 0/0 0/0 .text Delete__13daTagWrHowl_cFv */
|
||||
bool daTagWrHowl_c::Delete() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80D64034-80D6403C 000174 0008+00 1/1 0/0 0/0 .text draw__13daTagWrHowl_cFv */
|
||||
bool daTagWrHowl_c::draw() {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80D6403C-80D64090 00017C 0054+00 1/1 0/0 0/0 .text execute__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagWrHowl_c::execute() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/execute__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80D64200-80D64204 000000 0004+00 1/1 0/0 0/0 .rodata @3680 */
|
||||
SECTION_RODATA static f32 const lit_3680 = 50.0f;
|
||||
COMPILER_STRIP_GATE(0x80D64200, &lit_3680);
|
||||
|
||||
/* 80D64090-80D640B4 0001D0 0024+00 1/1 0/0 0/0 .text init__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagWrHowl_c::init() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/init__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D640B4-80D64144 0001F4 0090+00 1/1 0/0 0/0 .text chkWlfInTag__13daTagWrHowl_cFv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void daTagWrHowl_c::chkWlfInTag() {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/chkWlfInTag__13daTagWrHowl_cFv.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D64144-80D64198 000284 0054+00 1/0 0/0 0/0 .text daTagWrHowl_create__FP13daTagWrHowl_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagWrHowl_create(daTagWrHowl_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/daTagWrHowl_create__FP13daTagWrHowl_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D64198-80D641B8 0002D8 0020+00 1/0 0/0 0/0 .text daTagWrHowl_Delete__FP13daTagWrHowl_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagWrHowl_Delete(daTagWrHowl_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/daTagWrHowl_Delete__FP13daTagWrHowl_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D641B8-80D641D8 0002F8 0020+00 1/0 0/0 0/0 .text daTagWrHowl_execute__FP13daTagWrHowl_c */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagWrHowl_execute(daTagWrHowl_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/daTagWrHowl_execute__FP13daTagWrHowl_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80D641D8-80D641F8 000318 0020+00 1/0 0/0 0/0 .text daTagWrHowl_draw__FP13daTagWrHowl_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daTagWrHowl_draw(daTagWrHowl_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl/daTagWrHowl_draw__FP13daTagWrHowl_c.s"
|
||||
}
|
||||
#pragma pop
|
||||
};
|
||||
Reference in New Issue
Block a user