Merge pull request #505 from LagoLunatic/am

d_a_am OK
This commit is contained in:
Jasper St. Pierre
2023-10-05 23:41:08 -07:00
committed by GitHub
25 changed files with 1271 additions and 336 deletions
+2 -2
View File
@@ -414,7 +414,7 @@ config.libs = [
Object(NonMatching, "d/d_snap.cpp"),
Object(Matching, "d/d_point_wind.cpp"),
Object(NonMatching, "d/actor/d_a_agb.cpp"),
Object(Matching, "d/actor/d_a_arrow.cpp", cflags=[*cflags_framework, "-sym off"]),
Object(Matching, "d/actor/d_a_arrow.cpp", extra_cflags=["-sym off"]),
Object(NonMatching, "d/actor/d_a_bg.cpp"),
Object(NonMatching, "d/actor/d_a_bomb.cpp"),
Object(NonMatching, "d/actor/d_a_bomb2.cpp"),
@@ -1325,7 +1325,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_wbird"),
ActorRel(NonMatching, "d_a_ykgr"),
ActorRel(Matching, "d_a_alldie"),
ActorRel(NonMatching, "d_a_am"),
ActorRel(Matching, "d_a_am", extra_cflags=["-sym off"]),
ActorRel(NonMatching, "d_a_am2"),
ActorRel(NonMatching, "d_a_amiprop"),
ActorRel(NonMatching, "d_a_arrow_iceeff"),
+2 -1
View File
@@ -4,6 +4,7 @@
#include "dolphin/types.h"
#include "JAZelAudio/JAZelAudio_SE.h"
#include "JAZelAudio/JAZelAudio_BGM.h"
#include "dolphin/mtx/mtx.h"
class Vec;
class JAISound;
@@ -80,7 +81,7 @@ public:
void talkOut();
void menuIn();
void menuOut();
void getCameraInfo(Vec*, f32*[][][][], u32);
void getCameraInfo(Vec*, Mtx, u32);
void getCameraMapInfo(u32);
void setCameraPolygonPos(Vec*);
void setCameraGroupInfo(u8);
@@ -645,9 +645,9 @@ public:
}
void setFrame(f32 frame) { mFrame = frame; }
void setLoop(s16 loop) { mLoop = loop; }
bool checkState(u8 state) const { return mState & state; }
BOOL checkState(u8 state) const { return mState & state; }
private:
public:
/* 0x04 */ u8 mAttribute;
/* 0x05 */ u8 mState;
/* 0x06 */ s16 mStart;
+16 -7
View File
@@ -30,10 +30,10 @@ public:
JPACallBackBase() {}
virtual ~JPACallBackBase() {}
virtual void init(JPABaseEmitter*);
virtual void execute(JPABaseEmitter*);
virtual void executeAfter(JPABaseEmitter*);
virtual void draw(JPABaseEmitter*);
inline virtual void init(T);
inline virtual void execute(T);
inline virtual void executeAfter(T);
inline virtual void draw(T);
};
template<typename T, typename U>
@@ -42,9 +42,9 @@ public:
JPACallBackBase2() {}
virtual ~JPACallBackBase2() {}
virtual void init(JPABaseEmitter*, JPABaseParticle*);
virtual void execute(JPABaseEmitter*, JPABaseParticle*);
virtual void draw(JPABaseEmitter*, JPABaseParticle*);
inline virtual void init(T, U);
inline virtual void execute(T, U);
inline virtual void draw(T, U);
};
class JPABaseEmitter {
@@ -166,4 +166,13 @@ public:
/* 0x216 */ u8 field_0x216[0x218 - 0x216];
};
void JPACallBackBase<JPABaseEmitter*>::init(JPABaseEmitter*) {}
void JPACallBackBase<JPABaseEmitter*>::execute(JPABaseEmitter*) {}
void JPACallBackBase<JPABaseEmitter*>::executeAfter(JPABaseEmitter*) {}
void JPACallBackBase<JPABaseEmitter*>::draw(JPABaseEmitter*) {}
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::init(JPABaseEmitter*, JPABaseParticle*) {}
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::execute(JPABaseEmitter*, JPABaseParticle*) {}
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::draw(JPABaseEmitter*, JPABaseParticle*) {}
#endif /* JPAEMITTER_H */
+5
View File
@@ -15,6 +15,11 @@ class JPAParticleCallBack;
class JPAResourceManager;
struct JPAEmitterWorkData;
template<typename T>
class JPACallBackBase;
template<typename T, typename U>
class JPACallBackBase2;
class JPABaseParticle {
public:
void initParticle();
+5 -3
View File
@@ -364,9 +364,9 @@ public:
virtual ~cCcD_ObjCommonBase() {}
void ct();
void SetSPrm(u32 sprm) { mSPrm = sprm; }
s32 getSPrm() const { return mSPrm; }
void setRPrm(s32 rprm) { mRPrm = rprm; }
s32 getRPrm() const { return mRPrm; }
u32 getSPrm() const { return mSPrm; }
void SetRPrm(u32 rprm) { mRPrm = rprm; }
u32 getRPrm() const { return mRPrm; }
cCcD_Obj* GetHitObj() { return mHitObj; }
void ClrObj() { mHitObj = NULL; }
u32 MskSPrm(u32 mask) const { return mSPrm & mask; }
@@ -397,6 +397,7 @@ public:
void SetType(u32 type) { mType = type; }
void SetAtp(int atp) { mAtp = atp; }
void ClrSet() { OffSPrmBit(1); }
void OnHitBit() { SetRPrm(1); }
void OffHitBit() { ClrRPrm(1); }
u32 ChkHit() { return MskRPrm(1); }
@@ -495,6 +496,7 @@ public:
void SetTgType(u32 type) { mObjTg.SetType(type); }
void OnTgSPrmBit(u32 flag) { mObjTg.OnSPrmBit(flag); }
void OffAtSetBit() { mObjAt.ClrSet(); }
void OnAtHitBit() { mObjAt.OnHitBit(); }
void OffAtHitBit() { mObjAt.OffHitBit(); }
void OnTgSetBit() { mObjTg.OnSPrmBit(1); }
void OffTgSetBit() { mObjTg.ClrSet(); }
+110
View File
@@ -0,0 +1,110 @@
#ifndef D_A_BOMB_H
#define D_A_BOMB_H
#include "d/d_particle.h"
#include "d/d_bg_s_acch.h"
#include "f_op/f_op_actor.h"
class daBomb_fuseSmokeEcallBack : public dPa_levelEcallBack {
public:
void executeAfter(JPABaseEmitter*);
void execute(JPABaseEmitter*);
void draw(JPABaseEmitter*);
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char);
};
class daBomb_fuseSparksEcallBack : public dPa_levelEcallBack {
public:
void execute(JPABaseEmitter*);
void draw(JPABaseEmitter*);
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char);
};
class daBomb_c : public fopAc_ac_c {
public:
enum State_e {
};
s16 getBombRestTime();
s16 getBombCheck_Flag();
void setBombCheck_Flag();
void setBombFire_ON();
void setBombNoHit();
void setBombOffCoSet();
void setBombOnCoSet();
void setBombNoEff();
void setBombRestTime(short);
void setNoGravityTime(short);
void prm_make(State_e, bool, bool);
void chk_state(State_e) const;
void change_state(State_e);
void prm_get_state() const;
void get_explode_instant() const;
void prm_get_cheapEff() const;
void prm_get_angXZero() const;
void prm_get_version() const;
void _prm_chk_version() const;
void draw_norm();
void draw_nut();
void draw();
void checkExplodeCc_norm();
void checkExplodeCc_nut();
void checkExplodeCc_cannon();
void checkExplodeCc();
void checkExplodeTimer();
void checkExplode();
void checkExplodeBg_norm();
void checkExplodeBg_nut();
void checkExplodeBg_cannon();
void checkExplodeBg();
void water_tention();
void posMoveF();
void bgCrrPos();
void bgCrrPos_lava();
void bgCrrPos_water();
void chk_water_land();
void chk_water_in();
void chk_water_sink();
void chk_lava_hit();
void chk_dead_zone();
void bound(float);
void set_real_shadow_flag();
void setRoomInfo();
void makeFireEffect(cXyz&, csXyz&);
void makeWaterEffect();
void setFuseEffect();
void eff_explode_normal(const csXyz*);
void eff_explode_cheap(const csXyz*);
void eff_explode();
void procExplode_init();
void procExplode();
void procCarry_init();
void procCarry();
void procWait_init();
void procWait();
void waitState_cannon();
void waitState_bomtyu();
void procSink();
void execute();
void set_wind_vec();
void anm_play_nut();
void set_mtx();
void init_mtx();
void se_cannon_fly_set();
void se_cannon_fly_stop();
void eff_water_splash();
void bombDelete();
void createHeap();
void create();
daBomb_c();
void create_init();
};
class dBgS_BombAcch : public dBgS_Acch {
public:
};
#endif /* D_A_BOMB_H */
+135
View File
@@ -0,0 +1,135 @@
#ifndef D_A_BOMB2_H
#define D_A_BOMB2_H
#include "JSystem/JParticle/JPAEmitter.h"
#include "f_op/f_op_actor.h"
namespace daBomb2 {
class Env_c {
public:
void set(const cXyz&);
void clean();
void is_end() const;
void proc(const cXyz&);
};
class FuseSmokeCB_c {
public:
~FuseSmokeCB_c();
void setOldPosP(const cXyz*, const cXyz*);
void deleteCallBack();
void execute(JPABaseEmitter*);
void executeAfter(JPABaseEmitter*);
void draw(JPABaseEmitter*);
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char);
};
class FuseSparksCB_c {
public:
~FuseSparksCB_c();
void deleteCallBack();
void execute(JPABaseEmitter*);
void draw(JPABaseEmitter*);
void setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char);
};
class Act_c : public fopAc_ac_c {
public:
enum Prm_e {
};
void remove_fuse_effect();
void set_time(int);
s32 get_time() const;
bool chk_eat() const;
void set_eat();
void set_no_hit();
void chk_explode();
void solidHeapCB(fopAc_ac_c*);
void create_heap_nut();
void create_heap();
void crr_init();
void cc_init();
void start_explode_instant();
void start_explode_interval();
void start_carry();
void start_proc_call();
void create_init();
void _create();
Act_c();
void _delete();
void set_mtx();
void init_mtx();
void cc_set();
void camera_lockoff() const;
void posMoveF();
void bgCrrPos();
void bgCrrPos_lava();
void bgCrrPos_water();
void chk_water_in() const;
void chk_lava_in() const;
void setRoomInfo();
void bound(float);
void set_nut_exp_interval();
void anm_play();
void set_wind_vec();
void eff_explode();
void eff_explode_normal(const csXyz*);
void eff_explode_water();
void eff_fuse_init();
void eff_fuse_start();
void eff_fuse_move();
void eff_fuse_end();
void eff_water_splash();
void se_fall_water();
void se_explode();
void se_explode_water();
void se_ignition();
void set_sound_env(int, int);
void chk_exp_cc_nut();
void chk_exp_cc();
void chk_exp_bg_nut();
void chk_exp_bg();
void chk_exp_timer();
void chk_sink_bg_nut();
void chk_sink_bg();
void chk_exp_pre();
void chk_exp_post();
void chk_sink_post();
void set_real_shadow_flag();
void carry_fuse_start();
void on_carry();
void off_carry();
void mode_wait_init();
void mode_wait();
void mode_carry_init();
void mode_carry();
void mode_explode_init();
void mode_explode();
void mode_sink_init();
void mode_sink();
void mode_proc_call();
void tensor_init();
void vib_init();
void vib_proc();
void set_vib_tensor();
void tensor_wait();
void tensor_wait_drop();
void tensor_wait_ground();
void tensor_carry();
void tensor_explode();
void tensor_sink();
void tensor_proc_call();
void _execute();
void is_draw();
void draw_nut();
void draw_shadow();
void _draw();
};
};
#endif /* D_A_BOMB2_H */
+3 -2
View File
@@ -70,7 +70,7 @@ public:
/* 0x290 */ u8 mAttackState;
/* 0x291 */ u8 field_0x291;
/* 0x292 */ u8 field_0x292[0x294 - 0x292];
/* 0x294 */ s16 field_0x294;
/* 0x294 */ s16 mDamageWaitTimer;
/* 0x296 */ s16 mQuakeTimer;
/* 0x298 */ int field_0x298;
/* 0x29C */ u32 field_0x29c;
@@ -91,10 +91,11 @@ public:
/* 0x300 */ f32 field_0x300;
/* 0x304 */ daPy_demo_c mDemo;
u8 getCutType() const { return mAttackState; }
s16 getDamageWaitTimer() const { return mDamageWaitTimer; }
s16 getBodyAngleX() { return mBodyAngle.x; }
s16 getBodyAngleY() { return mBodyAngle.y; }
void changeDemoMoveAngle(s16 angle) { mDemo.setMoveAngle(angle); }
u8 getCutType() const { return mAttackState; }
void onPlayerNoDraw() { field_0x29c |= 0x8000000; }
void offPlayerNoDraw() { field_0x29c &= ~0x8000000; }
+29
View File
@@ -0,0 +1,29 @@
#ifndef D_CC_UTY_H
#define D_CC_UTY_H
#include "SSystem/SComponent/c_cc_d.h"
#include "f_op/f_op_actor.h"
struct CcAtInfo {
/* 0x00 */ cCcD_Obj* mpObj;
/* 0x04 */ fopAc_ac_c* mpActor;
/* 0x08 */ u8 mDamage;
/* 0x09 */ u8 mbDead;
/* 0x0A */ u8 mResultingAttackType;
/* 0x0B */ u8 m0B[0x0E - 0x0B];
/* 0x0E */ s16 m0E;
/* 0x10 */ u8 m10[0x12 - 0x10];
/* 0x12 */ u16 mPlCutBit;
/* 0x14 */ cXyz* pParticlePos;
/* 0x18 */ s32 mHitSoundId;
};
void cc_pl_cut_bit_get();
void at_se_get(cCcD_Obj*);
void at_se_getC(cCcD_Obj*);
void def_se_set(fopAc_ac_c*, cCcD_Obj*, unsigned long);
void def_se_set_p(fopAc_ac_c*, cXyz*, cCcD_Obj*, unsigned long);
void at_power_check(CcAtInfo*);
void cc_at_check(fopAc_ac_c*, CcAtInfo*);
#endif /* D_CC_UTY_H */
+4
View File
@@ -720,6 +720,10 @@ inline void dComIfGs_initDan(s8 i_stageNo) {
g_dComIfG_gameInfo.save.initDan(i_stageNo);
}
inline void dComIfGs_onActor(int i_no, int i_roomNo) {
g_dComIfG_gameInfo.save.onActor(i_no, i_roomNo);
}
inline BOOL dComIfGs_isActor(int i_no, int i_roomNo) {
return g_dComIfG_gameInfo.save.isActor(i_no, i_roomNo);
}
+1 -1
View File
@@ -34,7 +34,7 @@ public:
class dPa_levelEcallBack : public JPACallBackBase<JPABaseEmitter*> {
public:
virtual ~dPa_levelEcallBack() {}
virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8) {}
virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8) = 0;
};
class dPa_followEcallBack : public dPa_levelEcallBack {
+1 -1
View File
@@ -228,7 +228,7 @@ public:
/* 0x285 */ s8 mHealth;
/* 0x288 */ s32 mItemTableIdx;
/* 0x28C */ u8 mItemStealNum;
/* 0x28D */ u8 mItemStealLeft;
/* 0x28D */ s8 mItemStealLeft;
fopAc_ac_c();
~fopAc_ac_c();
+4
View File
@@ -545,6 +545,10 @@ inline void fopAcM_seStart(fopAc_ac_c* actor, u32 sfxID, u32 param_2) {
mDoAud_seStart(sfxID, &actor->mEyePos, param_2, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
}
inline void fopAcM_monsSeStart(fopAc_ac_c* actor, u32 sfxID, u32 param_2) {
mDoAud_monsSeStart(sfxID, &actor->mEyePos, fopAcM_GetID(actor), 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
}
extern "C" {
void fopAcM_initManager__Fv(void);
void fopAcM_CreateAppend__Fv(void);
+8
View File
@@ -74,6 +74,14 @@ inline void mDoAud_seDeleteObject(Vec* i_sePos) {
mDoAud_zelAudio_c::getInterface()->seDeleteObject(i_sePos);
}
inline void mDoAud_monsSeStart(u32 param_0, Vec* param_1, u32 param_2, u32 param_3, s8 i_reverb) {
mDoAud_zelAudio_c::getInterface()->monsSeStart(param_0, param_1, param_2, param_3, i_reverb);
}
inline void mDoAud_onEnemyDamage() {
mDoAud_zelAudio_c::getInterface()->onEnemyDamage();
}
inline void mDoAud_bgmMuteMtDragon() {
mDoAud_zelAudio_c::getInterface()->bgmMuteMtDragon();
}
+5 -3
View File
@@ -32,7 +32,7 @@ public:
void setFrame(f32 frame) { mFrameCtrl->setFrame(frame); }
void setPlayMode(int i_mode) { mFrameCtrl->setAttribute(i_mode); }
void setLoopFrame(f32 i_frame) { mFrameCtrl->setLoop(i_frame); }
bool isStop() {
BOOL isStop() {
bool stopped = true;
if (!mFrameCtrl->checkState(1) && mFrameCtrl->getRate() != 0.0f) {
stopped = false;
@@ -284,14 +284,16 @@ public:
J3DModel* getModel() { return mpModel; }
void setFrame(f32 frame) { mFrameCtrl.setFrame(frame); }
f32 getFrame() { return mFrameCtrl.getFrame(); }
bool isStop() const { //regswap somewhere here
BOOL isStop() { //regswap somewhere here
bool stopped = true;
if (!mFrameCtrl.checkState(1) && mFrameCtrl.getRate() != 0.0f) {
stopped = false;
}
return stopped;
}
BOOL checkFrame(f32 frame) {
return mFrameCtrl.checkPass(frame);
}
void update();
void updateDL();
+879 -114
View File
File diff suppressed because it is too large Load Diff
+2
View File
@@ -318,6 +318,8 @@ void daArrow_c::arrowUseMp() {
}
// This is a fake inline (not present in debug maps) which is required for ShieldReflect to match.
// It's possible that an inline similar to this was added to the final game even though it didn't exist in the demo,
// as this section of code was missing from the demo's version of ShieldReflect.
inline void setSphereCoordsFromXYAngles(cXyz& xyz, f32 mag, s16 targetAngleX, s16 targetAngleY) {
f32 normZ;
f32 normY;
+11 -40
View File
@@ -3,12 +3,19 @@
// Translation Unit: d_a_bomb.cpp
//
#include "d_a_bomb.h"
#include "d/actor/d_a_bomb.h"
#include "dolphin/types.h"
#include "m_Do/m_Do_ext.h"
/* 800D9318-800D9364 .text chk_attrState__22@unnamed@d_a_bomb_cpp@FPC8daBomb_cQ222@unnamed@d_a_bomb_cpp@8AttrSt_e */
void @unnamed@d_a_bomb_cpp@::chk_attrState(const daBomb_c*, @unnamed@d_a_bomb_cpp@::AttrSt_e) {
/* Nonmatching */
namespace {
enum AttrSt_e {
};
/* 800D9318-800D9364 .text chk_attrState__22@unnamed@d_a_bomb_cpp@FPC8daBomb_cQ222@unnamed@d_a_bomb_cpp@8AttrSt_e */
void chk_attrState(const daBomb_c*, AttrSt_e) {
/* Nonmatching */
}
}
/* 800D9364-800D977C .text executeAfter__25daBomb_fuseSmokeEcallBackFP14JPABaseEmitter */
@@ -311,11 +318,6 @@ daBomb_c::daBomb_c() {
/* Nonmatching */
}
/* 800DCEBC-800DCEF8 .text __dt__15LIGHT_INFLUENCEFv */
LIGHT_INFLUENCE::~LIGHT_INFLUENCE() {
/* Nonmatching */
}
/* 800DCEF8-800DCF18 .text daBomb_Create__FP10fopAc_ac_c */
void daBomb_Create(fopAc_ac_c*) {
/* Nonmatching */
@@ -326,26 +328,6 @@ void daBomb_c::create_init() {
/* Nonmatching */
}
/* 800DD1A4-800DD210 .text __dt__26daBomb_fuseSparksEcallBackFv */
daBomb_fuseSparksEcallBack::~daBomb_fuseSparksEcallBack() {
/* Nonmatching */
}
/* 800DD210-800DD27C .text __dt__25daBomb_fuseSmokeEcallBackFv */
daBomb_fuseSmokeEcallBack::~daBomb_fuseSmokeEcallBack() {
/* Nonmatching */
}
/* 800DD27C-800DD2EC .text __dt__13dBgS_BombAcchFv */
dBgS_BombAcch::~dBgS_BombAcch() {
/* Nonmatching */
}
/* 800DD2EC-800DD348 .text __dt__13mDoExt_bckAnmFv */
mDoExt_bckAnm::~mDoExt_bckAnm() {
/* Nonmatching */
}
/* 800DD348-800DD34C .text draw__26daBomb_fuseSparksEcallBackFP14JPABaseEmitter */
void daBomb_fuseSparksEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
@@ -370,14 +352,3 @@ void daBomb_fuseSmokeEcallBack::draw(JPABaseEmitter*) {
void daBomb_fuseSmokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
/* 800DD36C-800DD374 .text @32@__dt__13dBgS_BombAcchFv */
void @32@__dt__13dBgS_BombAcchFv {
/* Nonmatching */
}
/* 800DD374-800DD37C .text @20@__dt__13dBgS_BombAcchFv */
void @20@__dt__13dBgS_BombAcchFv {
/* Nonmatching */
}
+25 -27
View File
@@ -3,7 +3,7 @@
// Translation Unit: d_a_bomb2.cpp
//
#include "d_a_bomb2.h"
#include "d/actor/d_a_bomb2.h"
#include "dolphin/types.h"
/* 800DD37C-800DD454 .text set__Q27daBomb25Env_cFRC4cXyz */
@@ -476,30 +476,34 @@ void daBomb2::Act_c::_draw() {
/* Nonmatching */
}
/* 800E0A80-800E0AA0 .text Mthd_Create__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void daBomb2::@unnamed@d_a_bomb2_cpp@::Mthd_Create(void*) {
/* Nonmatching */
}
namespace daBomb2 {
namespace {
/* 800E0A80-800E0AA0 .text Mthd_Create__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void Mthd_Create(void*) {
/* Nonmatching */
}
/* 800E0AA0-800E0AC4 .text Mthd_Delete__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void daBomb2::@unnamed@d_a_bomb2_cpp@::Mthd_Delete(void*) {
/* Nonmatching */
}
/* 800E0AA0-800E0AC4 .text Mthd_Delete__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void Mthd_Delete(void*) {
/* Nonmatching */
}
/* 800E0AC4-800E0AE8 .text Mthd_Execute__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void daBomb2::@unnamed@d_a_bomb2_cpp@::Mthd_Execute(void*) {
/* Nonmatching */
}
/* 800E0AC4-800E0AE8 .text Mthd_Execute__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void Mthd_Execute(void*) {
/* Nonmatching */
}
/* 800E0AE8-800E0B0C .text Mthd_Draw__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void daBomb2::@unnamed@d_a_bomb2_cpp@::Mthd_Draw(void*) {
/* Nonmatching */
}
/* 800E0AE8-800E0B0C .text Mthd_Draw__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void Mthd_Draw(void*) {
/* Nonmatching */
}
/* 800E0B0C-800E0B14 .text Mthd_IsDelete__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void daBomb2::@unnamed@d_a_bomb2_cpp@::Mthd_IsDelete(void*) {
/* Nonmatching */
}
/* 800E0B0C-800E0B14 .text Mthd_IsDelete__Q27daBomb223@unnamed@d_a_bomb2_cpp@FPv */
void Mthd_IsDelete(void*) {
/* Nonmatching */
}
};
};
/* 800E0B14-800E0B80 .text __dt__Q27daBomb214FuseSparksCB_cFv */
daBomb2::FuseSparksCB_c::~FuseSparksCB_c() {
@@ -510,9 +514,3 @@ daBomb2::FuseSparksCB_c::~FuseSparksCB_c() {
daBomb2::FuseSmokeCB_c::~FuseSmokeCB_c() {
/* Nonmatching */
}
/* 800E0BEC-800E0C08 .text PrmAbstract<Q37daBomb25Act_c5Prm_e>__5daObjFPC10fopAc_ac_cQ37daBomb25Act_c5Prm_eQ37daBomb25Act_c5Prm_e */
void daObj::PrmAbstract<daBomb2::Act_c::Prm_e>(const fopAc_ac_c*, daBomb2::Act_c::Prm_e, daBomb2::Act_c::Prm_e) {
/* Nonmatching */
}
+1 -1
View File
@@ -540,7 +540,7 @@ void daObjBarrier_ef_c::execute() {
if (((active_flags >> i) & 1)) {
mBtk[i].play();
if ((int)mBtk[i].isStop() == true) {
if (mBtk[i].isStop() == true) {
active_flags ^= 1 << i;
mHitActor[i] = NULL;
}
+13 -4
View File
@@ -50,7 +50,6 @@ public:
int getMsgNormal();
u32 getMsg();
u16 next_msgStatus(u32* msgId);
void anmAtr(u16);
bool checkTalk();
void eventOrder();
void checkOrder();
@@ -151,7 +150,7 @@ const dCcD_SrcCyl daObjTpost_c::m_cyl_src = {
0.0, // Radius
0.0, // Height
};
static const s32 daObjTpost_c::m_send_price[] = {
const s32 daObjTpost_c::m_send_price[] = {
0x05,
0x0A,
0x14
@@ -305,7 +304,12 @@ void daObjTpost_c::cutSetAnmStart(int staffIdx) {
}
void daObjTpost_c::cutSetAnmProc(int staffIdx) {
if(mMorf->isStop()) { //probably regswap in isStop()
// Using the mDoExt_McaMorf::isStop inline causes regswap.
// if(mMorf->isStop()) { //
mDoExt_McaMorf* morf = mMorf;
bool stopped = true;
if (!morf->mFrameCtrl.checkState(1) && morf->mFrameCtrl.getRate() != 0.0f) { stopped = false; }
if (stopped) {
dComIfGp_evmng_cutEnd(staffIdx);
}
}
@@ -835,7 +839,12 @@ void daObjTpost_c::modeTalkXY() {
}
if(field_0x6C9 == 2 || field_0x6C9 == 3) {
if(mMorf->isStop()) { //probably regswap in isStop()
// Using the mDoExt_McaMorf::isStop inline causes regswap.
// if(mMorf->isStop()) {
mDoExt_McaMorf* morf = mMorf;
bool stopped = true;
if (!morf->mFrameCtrl.checkState(1) && morf->mFrameCtrl.getRate() != 0.0f) { stopped = false; }
if (stopped) {
if(cLib_calcTimer(&field_0x8DC) == 0 && talk(1) == dNpcMsgStts_BOX_CLOSED_e) {
modeProc(PROC_INIT, 0);
dComIfGp_event_onEventFlag(8);
+6 -11
View File
@@ -3,16 +3,17 @@
// Translation Unit: d_a_bomb_static.cpp
//
#include "d_a_bomb_static.h"
#include "d/actor/d_a_bomb.h"
#include "d/actor/d_a_bomb2.h"
#include "dolphin/types.h"
/* 80067FA0-80067FD0 .text getBombRestTime__8daBomb_cFv */
void daBomb_c::getBombRestTime() {
s16 daBomb_c::getBombRestTime() {
/* Nonmatching */
}
/* 80067FD0-80068000 .text getBombCheck_Flag__8daBomb_cFv */
void daBomb_c::getBombCheck_Flag() {
s16 daBomb_c::getBombCheck_Flag() {
/* Nonmatching */
}
@@ -112,12 +113,12 @@ void daBomb2::Act_c::set_time(int) {
}
/* 80068490-80068498 .text get_time__Q27daBomb25Act_cCFv */
void daBomb2::Act_c::get_time() const {
s32 daBomb2::Act_c::get_time() const {
/* Nonmatching */
}
/* 80068498-800684A0 .text chk_eat__Q27daBomb25Act_cCFv */
void daBomb2::Act_c::chk_eat() const {
bool daBomb2::Act_c::chk_eat() const {
/* Nonmatching */
}
@@ -135,9 +136,3 @@ void daBomb2::Act_c::set_no_hit() {
void daBomb2::Act_c::chk_explode() {
/* Nonmatching */
}
/* 800684F4-80068510 .text PrmAbstract<Q28daBomb_c5Prm_e>__5daObjFPC10fopAc_ac_cQ28daBomb_c5Prm_eQ28daBomb_c5Prm_e */
void daObj::PrmAbstract<daBomb_c::Prm_e>(const fopAc_ac_c*, daBomb_c::Prm_e, daBomb_c::Prm_e) {
/* Nonmatching */
}
+1 -7
View File
@@ -3,7 +3,7 @@
// Translation Unit: d_cc_uty.cpp
//
#include "d_cc_uty.h"
#include "d/d_cc_uty.h"
#include "dolphin/types.h"
/* 800AE938-800AE9E8 .text cc_pl_cut_bit_get__Fv */
@@ -40,9 +40,3 @@ void at_power_check(CcAtInfo*) {
void cc_at_check(fopAc_ac_c*, CcAtInfo*) {
/* Nonmatching */
}
/* 800AF368-800AF384 .text PrmAbstract<Q37daTsubo5Act_c5Prm_e>__5daObjFPC10fopAc_ac_cQ37daTsubo5Act_c5Prm_eQ37daTsubo5Act_c5Prm_e */
void daObj::PrmAbstract<daTsubo::Act_c::Prm_e>(const fopAc_ac_c*, daTsubo::Act_c::Prm_e, daTsubo::Act_c::Prm_e) {
/* Nonmatching */
}
+1 -110
View File
@@ -16,11 +16,6 @@ dPa_J3DmodelEmitter_c::dPa_J3DmodelEmitter_c(JPABaseEmitter*, J3DModelData*, dKy
/* Nonmatching */
}
// /* 8007A804-8007A84C .text __dt__18dPa_modelEmitter_cFv */
// dPa_modelEmitter_c::~dPa_modelEmitter_c() {
// /* Nonmatching */
// }
/* 8007A84C-8007A8C8 .text __dt__21dPa_J3DmodelEmitter_cFv */
dPa_J3DmodelEmitter_c::~dPa_J3DmodelEmitter_c() {
if (mpHeap) {
@@ -45,6 +40,7 @@ dPa_J3Dmodel_c::dPa_J3Dmodel_c() {
/* 8007AED8-8007AF64 .text __dt__18dPa_modelControl_cFv */
dPa_modelControl_c::~dPa_modelControl_c() {
/* Nonmatching (node_class has no virtual destructor) */
node_class* node = parent.mpHead;
while (node) {
node_class* nextNode = node->mpNextNode;
@@ -94,11 +90,6 @@ dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char) {
/* Nonmatching */
}
// /* 8007B444-8007B4B0 .text __dt__19dPa_followEcallBackFv */
// dPa_followEcallBack::~dPa_followEcallBack() {
// /* Nonmatching */
// }
/* 8007B4B0-8007B558 .text __ct__18dPa_smokeEcallBackFUcUcUcUc */
dPa_smokeEcallBack::dPa_smokeEcallBack(unsigned char, unsigned char, unsigned char, unsigned char) {
/* Nonmatching */
@@ -114,16 +105,6 @@ void dPa_smokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signe
/* Nonmatching */
}
// /* 8007B698-8007B6F4 .text __dt__18dPa_smokePcallBackFv */
// dPa_smokePcallBack::~dPa_smokePcallBack() {
// /* Nonmatching */
// }
// /* 8007B6F4-8007B73C .text __dt__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>Fv */
// JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::~JPACallBackBase2() {
// /* Nonmatching */
// }
/* 8007B73C-8007B804 .text initiateLighting__FR11_GXColorS10R8_GXColorR8_GXColor */
void initiateLighting(_GXColorS10&, _GXColor&, _GXColor&) {
/* Nonmatching */
@@ -170,11 +151,6 @@ dPa_simpleEcallBack::dPa_simpleEcallBack() {
mCount = 0;
}
// /* 8007C420-8007C45C .text __dt__16dPa_simpleData_cFv */
// dPa_simpleData_c::~dPa_simpleData_c() {
// /* Nonmatching */
// }
/* 8007C45C-8007C460 .text __ct__16dPa_simpleData_cFv */
dPa_simpleData_c::dPa_simpleData_c() {
/* Nonmatching */
@@ -185,11 +161,6 @@ void dPa_simpleEcallBack::executeAfter(JPABaseEmitter*) {
/* Nonmatching */
}
// /* 8007C618-8007C674 .text __dt__17dPa_windPcallBackFv */
// dPa_windPcallBack::~dPa_windPcallBack() {
// /* Nonmatching */
// }
/* 8007C674-8007C6EC .text draw__19dPa_simpleEcallBackFP14JPABaseEmitter */
void dPa_simpleEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
@@ -220,11 +191,6 @@ dPa_control_c::dPa_control_c() {
/* Nonmatching */
}
// /* 8007C9A4-8007CA28 .text __dt__19dPa_simpleEcallBackFv */
// dPa_simpleEcallBack::~dPa_simpleEcallBack() {
// /* Nonmatching */
// }
/* 8007CA28-8007CA30 .text getRM_ID__13dPa_control_cFUs */
void dPa_control_c::getRM_ID(unsigned short) {
/* Nonmatching */
@@ -465,91 +431,21 @@ void dPa_trackEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
}
// /* 8007F62C-8007F698 .text __dt__18dPa_trackEcallBackFv */
// dPa_trackEcallBack::~dPa_trackEcallBack() {
// /* Nonmatching */
// }
// /* 8007F698-8007F704 .text __dt__22dPa_bombSmokeEcallBackFv */
// dPa_bombSmokeEcallBack::~dPa_bombSmokeEcallBack() {
// /* Nonmatching */
// }
/* 8007F704-8007F708 .text setup__22dPa_bombSmokeEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_bombSmokeEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
// /* 8007F708-8007F764 .text __dt__19dPa_kageroEcallBackFv */
// dPa_kageroEcallBack::~dPa_kageroEcallBack() {
// /* Nonmatching */
// }
// /* 8007F764-8007F7D0 .text __dt__20dPa_stripesEcallBackFv */
// dPa_stripesEcallBack::~dPa_stripesEcallBack() {
// /* Nonmatching */
// }
/* 8007F7D0-8007F7D4 .text setup__20dPa_stripesEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_stripesEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
// /* 8007F7D4-8007F840 .text __dt__22dPa_cutTurnEcallBack_cFv */
// dPa_cutTurnEcallBack_c::~dPa_cutTurnEcallBack_c() {
// /* Nonmatching */
// }
// /* 8007F840-8007F8AC .text __dt__19dPa_splashEcallBackFv */
// dPa_splashEcallBack::~dPa_splashEcallBack() {
// /* Nonmatching */
// }
// /* 8007F8AC-8007F940 .text __dt__17dPa_waveEcallBackFv */
// dPa_waveEcallBack::~dPa_waveEcallBack() {
// /* Nonmatching */
// }
// /* 8007F940-8007F99C .text __dt__19dPa_ripplePcallBackFv */
// dPa_ripplePcallBack::~dPa_ripplePcallBack() {
// /* Nonmatching */
// }
/* 8007F99C-8007F9A0 .text init__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::init(JPABaseEmitter*, JPABaseParticle*) {
/* Nonmatching */
}
// /* 8007F9A0-8007FA0C .text __dt__25dPa_singleRippleEcallBackFv */
// dPa_singleRippleEcallBack::~dPa_singleRippleEcallBack() {
// /* Nonmatching */
// }
// /* 8007FA0C-8007FA78 .text __dt__19dPa_rippleEcallBackFv */
// dPa_rippleEcallBack::~dPa_rippleEcallBack() {
// /* Nonmatching */
// }
/* 8007FA78-8007FA7C .text draw__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::draw(JPABaseEmitter*, JPABaseParticle*) {
/* Nonmatching */
}
// /* 8007FA7C-8007FAE8 .text __dt__22dPa_selectTexEcallBackFv */
// dPa_selectTexEcallBack::~dPa_selectTexEcallBack() {
// /* Nonmatching */
// }
/* 8007FAE8-8007FAEC .text setup__22dPa_selectTexEcallBackFP14JPABaseEmitterPC4cXyzPC5csXyzSc */
void dPa_selectTexEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
/* 8007FAEC-8007FAF0 .text execute__54JPACallBackBase2<P14JPABaseEmitter,P15JPABaseParticle>FP14JPABaseEmitterP15JPABaseParticle */
void JPACallBackBase2<JPABaseEmitter*, JPABaseParticle*>::execute(JPABaseEmitter*, JPABaseParticle*) {
/* Nonmatching */
}
/* 8007FF78-8007FFA8 .text draw__21dPa_setColorEcallBackFP14JPABaseEmitter */
void dPa_setColorEcallBack::draw(JPABaseEmitter*) {
/* Nonmatching */
@@ -559,8 +455,3 @@ void dPa_setColorEcallBack::draw(JPABaseEmitter*) {
void dPa_setColorEcallBack::setup(JPABaseEmitter*, const cXyz*, const csXyz*, signed char) {
/* Nonmatching */
}
// /* 8007FFAC-80080018 .text __dt__21dPa_setColorEcallBackFv */
// dPa_setColorEcallBack::~dPa_setColorEcallBack() {
// /* Nonmatching */
// }