mirror of https://github.com/zeldaret/tp.git
d_a_disappear / d_a_kytag16 OK
This commit is contained in:
parent
7b680de442
commit
554e962be0
|
|
@ -452,9 +452,7 @@ public:
|
|||
mMesgCamInfoActor9 = param_9;
|
||||
mMesgCamInfoActor10 = param_10;
|
||||
}
|
||||
int getMesgCamInfo() {
|
||||
return mMesgCamInfoBasicID;
|
||||
}
|
||||
int getMesgCamInfo() { return mMesgCamInfoBasicID; }
|
||||
void setFontArchive(JKRArchive* arc) { mFontArchive = arc; }
|
||||
void setRubyArchive(JKRArchive* arc) { mRubyArchive = arc; }
|
||||
void setMain2DArchive(JKRArchive* arc) { mMain2DArchive = arc; }
|
||||
|
|
@ -494,9 +492,7 @@ public:
|
|||
|
||||
f32 getCameraZoomForcus(int i_no) { return mCameraInfo[i_no].mCameraZoomForcus; }
|
||||
|
||||
void setMesgCamInfoID(int param_0) {
|
||||
mMesgCamInfo = param_0;
|
||||
}
|
||||
void setMesgCamInfoID(int param_0) { mMesgCamInfo = param_0; }
|
||||
|
||||
void setStatus(u16 status) { mStatus = status; }
|
||||
s32 checkStatus(u16 flags) { return flags & mStatus; }
|
||||
|
|
@ -914,8 +910,8 @@ s16 dComIfGs_getWarpPlayerAngleY();
|
|||
s8 dComIfGs_getWarpRoomNo();
|
||||
BOOL dComIfGs_isOneZoneSwitch(int i_swBit, int i_roomNo);
|
||||
BOOL dComIfGs_isOneZoneItem(int i_swBit, int i_roomNo);
|
||||
BOOL dComIfGs_isZoneSwitch(int,int);
|
||||
BOOL dComIfGs_isZoneItem(int,int);
|
||||
BOOL dComIfGs_isZoneSwitch(int, int);
|
||||
BOOL dComIfGs_isZoneItem(int, int);
|
||||
void dComIfGs_setLastWarpMarkItemData(const char* stage, cXyz pos, s16 angle, s8 roomNo, u8, u8);
|
||||
u16 dComIfGs_getMaxLifeGauge();
|
||||
void dComIfGs_setWarpMarkFlag(u8);
|
||||
|
|
@ -1023,8 +1019,8 @@ inline void dComIfGs_setCollectClothes(u8 i_clothesNo) {
|
|||
g_dComIfG_gameInfo.info.getPlayer().getCollect().setCollect(COLLECT_CLOTHING, i_clothesNo);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setCardToMemory(char* card_ptr,int dataNum) {
|
||||
g_dComIfG_gameInfo.info.card_to_memory(card_ptr,dataNum);
|
||||
inline void dComIfGs_setCardToMemory(char* card_ptr, int dataNum) {
|
||||
g_dComIfG_gameInfo.info.card_to_memory(card_ptr, dataNum);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setRodTypeLevelUp() {
|
||||
|
|
@ -1098,7 +1094,6 @@ inline void dComIfGs_offSwitch(int i_no, int i_roomNo) {
|
|||
g_dComIfG_gameInfo.info.offSwitch(i_no, i_roomNo);
|
||||
}
|
||||
|
||||
|
||||
inline BOOL dComIfGs_isSwitch(int i_no, int i_roomNo) {
|
||||
return g_dComIfG_gameInfo.info.isSwitch(i_no, i_roomNo);
|
||||
}
|
||||
|
|
@ -1575,7 +1570,7 @@ inline BOOL dComIfGs_isActor(int i_no, int i_roomNo) {
|
|||
}
|
||||
|
||||
inline void dComIfGs_offActor(int i_no, int i_roomNo) {
|
||||
g_dComIfG_gameInfo.info.offActor(i_no,i_roomNo);
|
||||
g_dComIfG_gameInfo.info.offActor(i_no, i_roomNo);
|
||||
}
|
||||
|
||||
inline void dComIfGs_putSave(int i_stageNo) {
|
||||
|
|
@ -1752,7 +1747,6 @@ static dAttCatch_c* dComIfGp_att_getCatghTarget();
|
|||
static void dComIfGp_setBottleStatus(u8 param_0, u8 param_1);
|
||||
bool dComIfGp_getMapTrans(int i_roomNo, f32* o_transX, f32* o_transY, s16* o_angle);
|
||||
|
||||
|
||||
inline void dComIfGp_itemDataInit() {
|
||||
g_dComIfG_gameInfo.play.itemInit();
|
||||
}
|
||||
|
|
@ -3179,37 +3173,37 @@ inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2,
|
|||
0, 0);
|
||||
}
|
||||
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 param_1, const cXyz* param_2,
|
||||
const dKy_tevstr_c* param_3, const csXyz* param_4,
|
||||
const cXyz* param_5, u8 param_6,
|
||||
dPa_levelEcallBack* param_7, s8 param_8,
|
||||
const GXColor* param_9, const GXColor* param_10,
|
||||
const cXyz* param_11) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(param_1, param_2, param_3, param_4,
|
||||
param_5, param_6, param_7, param_8,
|
||||
param_9, param_10, param_11, 1.0f);
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 i_resID, const cXyz* i_pos,
|
||||
const dKy_tevstr_c* param_3, const csXyz* i_rotation,
|
||||
const cXyz* i_scale, u8 i_alpha,
|
||||
dPa_levelEcallBack* i_callback, s8 param_8,
|
||||
const GXColor* i_prmColor, const GXColor* i_envColor,
|
||||
const cXyz* i_particleScale) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(
|
||||
i_resID, i_pos, param_3, i_rotation, i_scale, i_alpha, i_callback, param_8, i_prmColor,
|
||||
i_envColor, i_particleScale, 1.0f);
|
||||
}
|
||||
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4, u8 param_5,
|
||||
dPa_levelEcallBack* param_6, s8 param_7,
|
||||
const GXColor* param_8, const GXColor* param_9,
|
||||
const cXyz* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(param_1, param_2, NULL, param_3,
|
||||
param_4, param_5, param_6, param_7,
|
||||
param_8, param_9, param_10, 1.0f);
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 i_resID, const cXyz* i_pos,
|
||||
const csXyz* i_rotation, const cXyz* i_scale,
|
||||
u8 i_alpha, dPa_levelEcallBack* i_callback, s8 param_7,
|
||||
const GXColor* i_prmColor, const GXColor* i_envColor,
|
||||
const cXyz* i_particleScale) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(
|
||||
i_resID, i_pos, NULL, i_rotation, i_scale, i_alpha, i_callback, param_7, i_prmColor,
|
||||
i_envColor, i_particleScale, 1.0f);
|
||||
}
|
||||
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz* param_2,
|
||||
const cXyz* param_3) {
|
||||
return dComIfGp_particle_set(param_0, param_1, NULL, param_2, param_3, 0xFF, NULL, -1, NULL,
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 i_resID, const cXyz* i_pos,
|
||||
const csXyz* i_rotation, const cXyz* i_scale) {
|
||||
return dComIfGp_particle_set(i_resID, i_pos, NULL, i_rotation, i_scale, 255, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 param_0, const cXyz* param_1,
|
||||
const dKy_tevstr_c* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4) {
|
||||
return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL,
|
||||
inline JPABaseEmitter* dComIfGp_particle_set(u16 i_resID, const cXyz* i_pos,
|
||||
const dKy_tevstr_c* param_2, const csXyz* i_rotation,
|
||||
const cXyz* i_scale) {
|
||||
return dComIfGp_particle_set(i_resID, i_pos, param_2, i_rotation, i_scale, 255, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
|
|
@ -3249,11 +3243,10 @@ inline JPABaseEmitter* dComIfGp_particle_setColor(u16 param_0, const cXyz* param
|
|||
NULL, NULL, NULL, -1, NULL);
|
||||
}
|
||||
|
||||
inline void dComIfGp_particle_setSimple(u16 param_0,cXyz* param_1,
|
||||
u8 param_2, _GXColor& param_3,
|
||||
_GXColor& param_4, int param_5,
|
||||
float param_6) {
|
||||
g_dComIfG_gameInfo.play.getParticle()->setSimple(param_0,param_1,0,param_2,param_3,param_4,param_5,param_6);
|
||||
inline void dComIfGp_particle_setSimple(u16 param_0, cXyz* param_1, u8 param_2, _GXColor& param_3,
|
||||
_GXColor& param_4, int param_5, float param_6) {
|
||||
g_dComIfG_gameInfo.play.getParticle()->setSimple(param_0, param_1, 0, param_2, param_3, param_4,
|
||||
param_5, param_6);
|
||||
}
|
||||
|
||||
inline void dComIfGp_particle_levelEmitterOnEventMove(u32 param_0) {
|
||||
|
|
@ -3265,12 +3258,13 @@ inline JPABaseEmitter* dComIfGp_particle_getEmitter(u32 param_0) {
|
|||
}
|
||||
|
||||
inline u32 dComIfGp_particle_setSimpleFoot(u32 param_0, u32* param_1, cBgS_PolyInfo& param_2,
|
||||
cXyz const* param_3, dKy_tevstr_c const* param_4, int param_5,
|
||||
csXyz const* param_6, cXyz const* param_7,
|
||||
dPa_levelEcallBack* param_8, s8 param_9,
|
||||
cXyz const* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setSimpleFoot(param_0, param_1, param_2, param_3, param_4, param_5,
|
||||
param_6, param_7, param_8, param_9, param_10);
|
||||
cXyz const* param_3, dKy_tevstr_c const* param_4,
|
||||
int param_5, csXyz const* param_6, cXyz const* param_7,
|
||||
dPa_levelEcallBack* param_8, s8 param_9,
|
||||
cXyz const* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setSimpleFoot(param_0, param_1, param_2, param_3,
|
||||
param_4, param_5, param_6, param_7,
|
||||
param_8, param_9, param_10);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_setPolyColor(u32 param_0, u16 param_1, cBgS_PolyInfo& param_2,
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ void dKy_GxFog_set();
|
|||
static void GxFog_set();
|
||||
static void GxXFog_set();
|
||||
u8 dKy_pol_argument_get(cBgS_PolyInfo const* i_poly);
|
||||
void dKy_Sound_set(cXyz param_0, int param_1, unsigned int param_2, int param_3);
|
||||
void dKy_Sound_set(cXyz i_pos, int param_1, unsigned int i_actorID, int param_3);
|
||||
void dKy_bg_MAxx_proc(void* param_0);
|
||||
void dKy_change_colpat(u8 colpat);
|
||||
void dKy_BossLight_set(cXyz* param_0, _GXColor* param_1, f32 param_2, u8 param_3);
|
||||
|
|
|
|||
|
|
@ -144,7 +144,10 @@ public:
|
|||
/* 0x544 */ actor_attention_types mAttentionInfo;
|
||||
/* 0x560 */ s16 field_0x560;
|
||||
/* 0x562 */ s16 mHealth;
|
||||
/* 0x564 */ u8 field_0x564[0x4];
|
||||
/* 0x564 */ u8 field_0x564;
|
||||
/* 0x565 */ u8 field_0x565;
|
||||
/* 0x566 */ u8 field_0x566;
|
||||
/* 0x567 */ s8 field_0x567;
|
||||
|
||||
fopAc_ac_c();
|
||||
~fopAc_ac_c();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,13 @@
|
|||
#ifndef D_A_DISAPPEAR_H
|
||||
#define D_A_DISAPPEAR_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class disappear_class : public fopAc_ac_c {
|
||||
public:
|
||||
/* 0x568 */ u8 field_0x568[0x574 - 0x568];
|
||||
/* 0x574 */ s16 mDeleteTimer;
|
||||
/* 0x576 */ u8 field_0x576[0x578 - 0x576];
|
||||
};
|
||||
|
||||
#endif /* D_A_DISAPPEAR_H */
|
||||
|
|
|
|||
|
|
@ -1,283 +1,156 @@
|
|||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d_a_disappear
|
||||
//
|
||||
/**
|
||||
* d_a_disappear.cpp
|
||||
* Disappear death effect when an enemy is defeated
|
||||
*/
|
||||
|
||||
#include "rel/d/a/d_a_disappear/d_a_disappear.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Types:
|
||||
//
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
};
|
||||
|
||||
struct disappear_class {};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct csXyz {};
|
||||
|
||||
struct _GXColor {};
|
||||
|
||||
struct cXyz {};
|
||||
|
||||
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 JAISoundID {};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
|
||||
struct Z2AudioMgr {
|
||||
static u8 mAudioMgrPtr[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" static bool daDisappear_Draw__FP15disappear_class();
|
||||
extern "C" static void s_ks_sub__FPvPv();
|
||||
extern "C" static void daDisappear_Execute__FP15disappear_class();
|
||||
extern "C" static bool daDisappear_IsDelete__FP15disappear_class();
|
||||
extern "C" static bool daDisappear_Delete__FP15disappear_class();
|
||||
extern "C" static void yami_disappear__FP15disappear_classf();
|
||||
extern "C" static void ghost_disappear__FP15disappear_classf();
|
||||
extern "C" static void set_disappear__FP15disappear_classf();
|
||||
extern "C" static void daDisappear_Create__FP10fopAc_ac_c();
|
||||
extern "C" extern void* g_profile_DISAPPEAR[12];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAc_IsActor__FPv();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_createItemFromEnemyID__FUcPC4cXyziiPC5csXyzPC4cXyzPfPf();
|
||||
extern "C" void fpcEx_Search__FPFPvPv_PvPv();
|
||||
extern "C" void dComIfGp_getReverb__Fi();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void dKy_Sound_set__F4cXyziUii();
|
||||
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
|
||||
extern "C" void _savegpr_25();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _restgpr_25();
|
||||
extern "C" void _restgpr_26();
|
||||
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];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
/* 804A8F18-804A8F20 000078 0008+00 1/0 0/0 0/0 .text daDisappear_Draw__FP15disappear_class */
|
||||
static bool daDisappear_Draw(disappear_class* param_0) {
|
||||
return true;
|
||||
static int daDisappear_Draw(disappear_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 804A8F20-804A8F6C 000080 004C+00 1/1 0/0 0/0 .text s_ks_sub__FPvPv */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void s_ks_sub(void* param_0, void* param_1) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/s_ks_sub__FPvPv.s"
|
||||
static void* s_ks_sub(void* i_actor, void*) {
|
||||
fopAc_ac_c* actor_p = (fopAc_ac_c*)i_actor;
|
||||
|
||||
if (fopAcM_IsActor(actor_p) && fopAcM_GetName(actor_p) == PROC_NPC_KS) {
|
||||
actor_p->mHealth = 1;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 804A8F6C-804A8FA8 0000CC 003C+00 1/0 0/0 0/0 .text daDisappear_Execute__FP15disappear_class */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daDisappear_Execute(disappear_class* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/daDisappear_Execute__FP15disappear_class.s"
|
||||
static int daDisappear_Execute(disappear_class* i_this) {
|
||||
if (i_this->mDeleteTimer != 0) {
|
||||
i_this->mDeleteTimer--;
|
||||
} else {
|
||||
fopAcM_delete(i_this);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 804A8FA8-804A8FB0 000108 0008+00 1/0 0/0 0/0 .text daDisappear_IsDelete__FP15disappear_class */
|
||||
static bool daDisappear_IsDelete(disappear_class* param_0) {
|
||||
return true;
|
||||
static int daDisappear_IsDelete(disappear_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 804A8FB0-804A8FB8 000110 0008+00 1/0 0/0 0/0 .text daDisappear_Delete__FP15disappear_class */
|
||||
static bool daDisappear_Delete(disappear_class* param_0) {
|
||||
return true;
|
||||
static int daDisappear_Delete(disappear_class* i_this) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804A9460-804A9464 000000 0004+00 4/4 0/0 0/0 .rodata @3704 */
|
||||
SECTION_RODATA static f32 const lit_3704 = 1.0f;
|
||||
COMPILER_STRIP_GATE(0x804A9460, &lit_3704);
|
||||
|
||||
/* 804A9480-804A9488 000000 0008+00 1/1 0/0 0/0 .data da_name$3684 */
|
||||
SECTION_DATA static u8 da_name_3684[8] = {
|
||||
0x82, 0x6C, 0x82, 0x6D, 0x82, 0x6E, 0x82, 0x6B,
|
||||
};
|
||||
|
||||
/* 804A8FB8-804A9080 000118 00C8+00 1/1 0/0 0/0 .text yami_disappear__FP15disappear_classf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void yami_disappear(disappear_class* param_0, f32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/yami_disappear__FP15disappear_classf.s"
|
||||
}
|
||||
#pragma pop
|
||||
static void yami_disappear(disappear_class* i_this, f32 i_scale) {
|
||||
static u16 da_name[] = {0x826C, 0x826D, 0x826E, 0x826B};
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804A9488-804A9494 000008 000A+02 1/1 0/0 0/0 .data da_name$3710 */
|
||||
SECTION_DATA static u8 da_name_3710[10 + 2 /* padding */] = {
|
||||
0x86,
|
||||
0xA7,
|
||||
0x86,
|
||||
0xA8,
|
||||
0x86,
|
||||
0xA9,
|
||||
0x86,
|
||||
0xAA,
|
||||
0x86,
|
||||
0xAB,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
cXyz scale;
|
||||
scale.set(i_scale, i_scale, i_scale);
|
||||
|
||||
int n = 3;
|
||||
if (i_this->field_0x567 == 2) {
|
||||
n = 4;
|
||||
}
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
dComIfGp_particle_set(da_name[i], &i_this->current.pos, NULL, &scale);
|
||||
}
|
||||
}
|
||||
|
||||
/* 804A9080-804A9130 0001E0 00B0+00 1/1 0/0 0/0 .text ghost_disappear__FP15disappear_classf */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void ghost_disappear(disappear_class* param_0, f32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/ghost_disappear__FP15disappear_classf.s"
|
||||
static void ghost_disappear(disappear_class* i_this, f32 i_scale) {
|
||||
static u16 da_name[] = {0x86A7, 0x86A8, 0x86A9, 0x86AA, 0x86AB};
|
||||
|
||||
cXyz scale;
|
||||
scale.set(i_scale, i_scale, i_scale);
|
||||
|
||||
for (int i = 0; i < 5; i++) {
|
||||
dComIfGp_particle_set(da_name[i], &i_this->current.pos, NULL, &scale);
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804A9464-804A9468 000004 0004+00 0/1 0/0 0/0 .rodata @3787 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3787 = -1.0f;
|
||||
COMPILER_STRIP_GATE(0x804A9464, &lit_3787);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9468-804A946C 000008 0004+00 0/1 0/0 0/0 .rodata @3788 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u32 const lit_3788 = 0x3FD53F7D;
|
||||
COMPILER_STRIP_GATE(0x804A9468, &lit_3788);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9494-804A94A4 000014 000E+02 1/1 0/0 0/0 .data da_name$3736 */
|
||||
SECTION_DATA static u8 da_name_3736[14 + 2 /* padding */] = {
|
||||
0x01,
|
||||
0x08,
|
||||
0x01,
|
||||
0x09,
|
||||
0x01,
|
||||
0x0A,
|
||||
0x01,
|
||||
0x0B,
|
||||
0x01,
|
||||
0x0C,
|
||||
0x01,
|
||||
0x54,
|
||||
0x01,
|
||||
0x55,
|
||||
/* padding */
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
|
||||
/* 804A9130-804A9364 000290 0234+00 1/1 0/0 0/0 .text set_disappear__FP15disappear_classf
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void set_disappear(disappear_class* param_0, f32 param_1) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/set_disappear__FP15disappear_classf.s"
|
||||
static void set_disappear(disappear_class* i_this, f32 i_scale) {
|
||||
static u16 da_name[] = {0x0108, 0x0109, 0x010A, 0x010B, 0x010C, 0x0154, 0x0155};
|
||||
|
||||
dKy_Sound_set(i_this->current.pos, 120, fopAcM_GetID(i_this), 10);
|
||||
|
||||
i_fpcM_Search(s_ks_sub, i_this);
|
||||
|
||||
if (i_this->field_0x567 == 3) {
|
||||
fopAcM_seStart(i_this, JA_SE_CM_MONS_EXPLODE, 0);
|
||||
ghost_disappear(i_this, i_scale);
|
||||
} else if (i_this->field_0x567 >= 1) {
|
||||
fopAcM_seStart(i_this, Z2SE_DARK_VANISH, 0);
|
||||
yami_disappear(i_this, i_scale * 1.666f);
|
||||
} else {
|
||||
fopAcM_seStart(i_this, JA_SE_CM_MONS_EXPLODE, 0);
|
||||
|
||||
cXyz scale;
|
||||
scale.set(i_scale, i_scale, i_scale);
|
||||
|
||||
i_this->mDeleteTimer = 58;
|
||||
for (int i = 0; i < 7; i++) {
|
||||
dComIfGp_particle_set(da_name[i], &i_this->current.pos, NULL, &scale);
|
||||
}
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804A946C-804A9470 00000C 0004+00 0/1 0/0 0/0 .rodata @3825 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3825 = 1.0f / 100.0f;
|
||||
COMPILER_STRIP_GATE(0x804A946C, &lit_3825);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9470-804A9474 000010 0004+00 0/1 0/0 0/0 .rodata @3826 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3826 = 1.0f / 10.0f;
|
||||
COMPILER_STRIP_GATE(0x804A9470, &lit_3826);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9474-804A9478 000014 0004+00 0/1 0/0 0/0 .rodata @3827 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3827 = 50.0f;
|
||||
COMPILER_STRIP_GATE(0x804A9474, &lit_3827);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9478-804A9480 000018 0008+00 0/1 0/0 0/0 .rodata @3829 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const lit_3829[8] = {
|
||||
0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x804A9478, &lit_3829);
|
||||
#pragma pop
|
||||
|
||||
/* 804A9364-804A9458 0004C4 00F4+00 1/0 0/0 0/0 .text daDisappear_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
static asm void daDisappear_Create(fopAc_ac_c* param_0) {
|
||||
nofralloc
|
||||
#include "asm/rel/d/a/d_a_disappear/d_a_disappear/daDisappear_Create__FP10fopAc_ac_c.s"
|
||||
static int daDisappear_Create(fopAc_ac_c* i_this) {
|
||||
if (!fopAcM_CheckCondition(i_this, 8)) {
|
||||
new (i_this) disappear_class();
|
||||
fopAcM_OnCondition(i_this, 8);
|
||||
}
|
||||
disappear_class* this_ = (disappear_class*)i_this;
|
||||
|
||||
this_->field_0x567 = fopAcM_GetParam(this_);
|
||||
|
||||
f32 particle_scale = (fopAcM_GetParam(this_) >> 0x8) & 0xFF;
|
||||
if (particle_scale >= 50.0f) {
|
||||
particle_scale *= 0.01f;
|
||||
} else {
|
||||
particle_scale *= 0.1f;
|
||||
}
|
||||
|
||||
u8 enemy_id = fopAcM_GetParam(this_) >> 0x10;
|
||||
if (enemy_id != 0xFF) {
|
||||
fopAcM_createItemFromEnemyID(enemy_id, &this_->current.pos, -1, -1, NULL, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
set_disappear(this_, particle_scale);
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804A94A4-804A94C4 -00001 0020+00 1/0 0/0 0/0 .data l_daDisappear_Method */
|
||||
SECTION_DATA static void* l_daDisappear_Method[8] = {
|
||||
(void*)daDisappear_Create__FP10fopAc_ac_c,
|
||||
(void*)daDisappear_Delete__FP15disappear_class,
|
||||
(void*)daDisappear_Execute__FP15disappear_class,
|
||||
(void*)daDisappear_IsDelete__FP15disappear_class,
|
||||
(void*)daDisappear_Draw__FP15disappear_class,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
static actor_method_class l_daDisappear_Method = {
|
||||
(process_method_func)daDisappear_Create, (process_method_func)daDisappear_Delete,
|
||||
(process_method_func)daDisappear_Execute, (process_method_func)daDisappear_IsDelete,
|
||||
(process_method_func)daDisappear_Draw,
|
||||
};
|
||||
|
||||
/* 804A94C4-804A94F4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_DISAPPEAR */
|
||||
SECTION_DATA extern void* g_profile_DISAPPEAR[12] = {
|
||||
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
|
||||
(void*)0x01390000, (void*)&g_fpcLf_Method,
|
||||
(void*)0x00000578, (void*)NULL,
|
||||
(void*)NULL, (void*)&g_fopAc_Method,
|
||||
(void*)0x02D50000, (void*)&l_daDisappear_Method,
|
||||
(void*)0x00044000, (void*)NULL,
|
||||
extern actor_process_profile_definition g_profile_DISAPPEAR = {
|
||||
-3,
|
||||
7,
|
||||
-3,
|
||||
PROC_DISAPPEAR,
|
||||
&g_fpcLf_Method.mBase,
|
||||
sizeof(disappear_class),
|
||||
0,
|
||||
0,
|
||||
&g_fopAc_Method.base,
|
||||
725,
|
||||
&l_daDisappear_Method,
|
||||
0x44000,
|
||||
0,
|
||||
0,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: d_a_kytag16
|
||||
//
|
||||
/**
|
||||
* d_a_kytag16.cpp
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
|
|
@ -101,7 +101,7 @@ static int daKytag16_Create(fopAc_ac_c* i_this) {
|
|||
|
||||
this_->field_0x573 = fopAcM_GetParam(this_) & 0xFF;
|
||||
this_->field_0x56c = (this_->current.angle.z >> 10) & 0x3F;
|
||||
|
||||
|
||||
this_->field_0x56d.r = fopAcM_GetParam(this_) >> 0x8;
|
||||
this_->field_0x56d.g = fopAcM_GetParam(this_) >> 0x10;
|
||||
this_->field_0x56d.b = fopAcM_GetParam(this_) >> 0x18;
|
||||
|
|
@ -173,10 +173,8 @@ static int daKytag16_Create(fopAc_ac_c* i_this) {
|
|||
/* ############################################################################################## */
|
||||
/* 808611BC-808611DC -00001 0020+00 1/0 0/0 0/0 .data l_daKytag16_Method */
|
||||
static actor_method_class l_daKytag16_Method = {
|
||||
(process_method_func)daKytag16_Create,
|
||||
(process_method_func)daKytag16_Delete,
|
||||
(process_method_func)daKytag16_Execute,
|
||||
(process_method_func)daKytag16_IsDelete,
|
||||
(process_method_func)daKytag16_Create, (process_method_func)daKytag16_Delete,
|
||||
(process_method_func)daKytag16_Execute, (process_method_func)daKytag16_IsDelete,
|
||||
(process_method_func)daKytag16_Draw,
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -2979,7 +2979,7 @@ static void dKy_Sound_init() {
|
|||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void dKy_Sound_set(cXyz param_0, int param_1, unsigned int param_2, int param_3) {
|
||||
asm void dKy_Sound_set(cXyz i_pos, int param_1, unsigned int i_actorID, int param_3) {
|
||||
nofralloc
|
||||
#include "asm/d/kankyo/d_kankyo/dKy_Sound_set__F4cXyziUii.s"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue