Further documentations have made:
- src/fight: named all ActorInfos and related functions - src/core2: named shock jump and flight pad ActorInfos and related functions in code_43A40.c, partially documented code_CF3E0.c - include/enums.h: added some enum values
This commit is contained in:
@@ -2,34 +2,34 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
void func_802CA9D0(Actor *this);
|
||||
void func_802CAA44(Actor *this);
|
||||
void func_802CAB70(Actor *this);
|
||||
void chShockJump_update(Actor *this);
|
||||
void chFlightPad_update(Actor *this);
|
||||
void chFightFlightPad_update(Actor *this);
|
||||
|
||||
/* .data */
|
||||
extern ActorInfo D_80366F20 = {
|
||||
extern ActorInfo chShockJump = {
|
||||
0x0D4, ACTOR_B_SHOCKSPRING_PAD, ASSET_489_MODEL_SHOCKSPRING_PAD,
|
||||
0, NULL,
|
||||
func_802CA9D0, func_80326224, actor_draw,
|
||||
chShockJump_update, func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
extern ActorInfo D_80366F44 = {
|
||||
extern ActorInfo chFlightPad = {
|
||||
MARKER_45_FLIGHT_PAD, ACTOR_E4_FLIGHT_PAD, ASSET_48A_MODEL_FLIGHT_PAD,
|
||||
0, NULL,
|
||||
func_802CAA44, func_80326224, actor_draw,
|
||||
chFlightPad_update, func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
extern ActorInfo D_80366F68 = {
|
||||
extern ActorInfo chFightFlightPad = {
|
||||
MARKER_261_FIGHT_FLIGHT_PAD, ACTOR_39F_FIGHT_FLIGHT_PAD, ASSET_48A_MODEL_FLIGHT_PAD,
|
||||
0, NULL,
|
||||
func_802CAB70, func_80326224, actor_draw,
|
||||
chFightFlightPad_update, func_80326224, actor_draw,
|
||||
0, 0, 0.0f, 0
|
||||
};
|
||||
|
||||
|
||||
extern struct31s D_80366F8C = {
|
||||
extern struct31s chFightFlightPad_D_80366F8C = {
|
||||
{0.4f, 0.4f},
|
||||
{0.0f, 0.0f},
|
||||
{0.0f, 0.01f},
|
||||
@@ -38,14 +38,14 @@ extern struct31s D_80366F8C = {
|
||||
};
|
||||
|
||||
|
||||
extern struct43s D_80366FB4 = {
|
||||
extern struct43s chFightFlightPad_D_80366FB4 = {
|
||||
{{-360.0f, 360.0f, -360.0}, {360.0f, 660.0f, 360.0f}},
|
||||
{{0.0f, -1200.0f, 0.0f}, {0.0f, -1200.0f, 0.0f}},
|
||||
{{0.0f, 0.0f, 0.0f}, {0.0f, 40.0f, 0.0f}}
|
||||
};
|
||||
|
||||
/* .code */
|
||||
void func_802CA9D0(Actor *this){
|
||||
void chShockJump_update(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
if(func_803203FC(UNKFLAGS1_86_SANDCASTLE_SHOCKSPRING_JUMP_UNLOCKED)){
|
||||
ability_unlock(ABILITY_D_SHOCK_JUMP);
|
||||
@@ -59,7 +59,7 @@ void func_802CA9D0(Actor *this){
|
||||
}
|
||||
}
|
||||
|
||||
void func_802CAA44(Actor *this){
|
||||
void chFlightPad_update(Actor *this){
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
if(func_803203FC(UNKFLAGS1_8A_SANDCASTLE_FLIGHT_UNLOCKED)){
|
||||
ability_unlock(ABILITY_9_FLIGHT);
|
||||
@@ -80,20 +80,20 @@ void func_802CAA44(Actor *this){
|
||||
}
|
||||
}
|
||||
|
||||
void func_802CAAF0(f32 position[3]){
|
||||
void chFightFlightPad_emitSparklesAtPosition(f32 position[3]){
|
||||
ParticleEmitter *pCtrl = partEmitMgr_newEmitter(0x18);
|
||||
particleEmitter_setSprite(pCtrl, ASSET_715_SPRITE_SPARKLE_RED);
|
||||
particleEmitter_setPosition(pCtrl, position);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &D_80366FB4);
|
||||
func_802EFB98(pCtrl, &D_80366F8C);
|
||||
particleEmitter_setPositionVelocityAndAccelerationRanges(pCtrl, &chFightFlightPad_D_80366FB4);
|
||||
func_802EFB98(pCtrl, &chFightFlightPad_D_80366F8C);
|
||||
func_802EFA78(pCtrl, 1);
|
||||
particleEmitter_emitN(pCtrl, 0x18);
|
||||
}
|
||||
|
||||
void func_802CAB70(Actor *this){
|
||||
void chFightFlightPad_update(Actor *this){
|
||||
if(!this->unk16C_4){
|
||||
this->unk16C_4 = TRUE;
|
||||
func_802CAAF0(this->position);
|
||||
chFightFlightPad_emitSparklesAtPosition(this->position);
|
||||
FUNC_8030E8B4(SFX_113_PAD_APPEARS, 1.0f, 32000, this->position, 5000, 12000);
|
||||
}
|
||||
this->marker->propPtr->unk8_3 = TRUE;
|
||||
|
@@ -2,9 +2,10 @@
|
||||
#include "functions.h"
|
||||
#include "variables.h"
|
||||
|
||||
typedef KEY_VALUE_PAIR(s16, s16) unkD_80372730;
|
||||
typedef KEY_VALUE_PAIR(s16, s16) MapProgressFlagToDialogID;
|
||||
|
||||
unkD_80372730 D_80372730[] = {
|
||||
/* Mapping for file progess flags to Dialog IDs */
|
||||
MapProgressFlagToDialogID fileProgressDialogMap[] = {
|
||||
{ FILEPROG_AB_SWIM_OILY_WATER, 0xBA1},
|
||||
{ FILEPROG_AC_DIVE_OILY_WATER, 0xBA2},
|
||||
{ FILEPROG_AA_HAS_TOUCHED_CCW_BRAMBLE_FIELD, 0xCE6},
|
||||
@@ -33,8 +34,9 @@ unkD_80372730 D_80372730[] = {
|
||||
{ -1, -1}
|
||||
};
|
||||
|
||||
|
||||
unkD_80372730 D_80372798[] = {
|
||||
/* This progress IDs are not saved in the save file, like when Banjo goes near a Note door which requires more notes than the Banjo has. */
|
||||
/* Triggers a dialog every time after the game restarts. */
|
||||
MapProgressFlagToDialogID volatileProgressDialogMap[] = {
|
||||
{0x9E, 0xBA3},
|
||||
{0x9F, 0xCE8},
|
||||
{0xA0, 0x1032},
|
||||
@@ -59,52 +61,55 @@ unkD_80372730 D_80372798[] = {
|
||||
{ -1, -1}
|
||||
};
|
||||
|
||||
static s32 __findIndex(unkD_80372730 *arg0, s32 arg1) {
|
||||
s32 phi_v1 = 0;
|
||||
static s32 __findIndex(MapProgressFlagToDialogID *map, s32 key) {
|
||||
s32 i = 0;
|
||||
|
||||
while (arg0[phi_v1].key >= 0) {
|
||||
if (arg1 == arg0[phi_v1].key) {
|
||||
return phi_v1;
|
||||
while (map[i].key >= 0) {
|
||||
if (key == map[i].key) {
|
||||
return i;
|
||||
}
|
||||
phi_v1++;
|
||||
i++;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
s32 func_803563B8(enum file_progress_e arg0, s32 arg1) {
|
||||
/* Checks for a specific file progress flag and triggers a dialog only if the progress flag was not set and sets the progress flag */
|
||||
s32 func_803563B8(enum file_progress_e progress_flag, s32 arg1) {
|
||||
s32 index;
|
||||
|
||||
if (fileProgressFlag_get(arg0) != 0) {
|
||||
if (fileProgressFlag_get(progress_flag) != 0) {
|
||||
return 0;
|
||||
} else {
|
||||
index = __findIndex(D_80372730, arg0);
|
||||
index = __findIndex(fileProgressDialogMap, progress_flag);
|
||||
if (index != -1) {
|
||||
if (func_80311480(D_80372730[index].value, arg1, 0, 0, 0, 0) != 0) {
|
||||
fileProgressFlag_set(arg0, 1);
|
||||
if (func_80311480(fileProgressDialogMap[index].value, arg1, 0, 0, 0, 0) != 0) {
|
||||
fileProgressFlag_set(progress_flag, 1);
|
||||
}
|
||||
return fileProgressFlag_get(arg0);
|
||||
return fileProgressFlag_get(progress_flag);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
void func_8035644C(enum file_progress_e arg0){
|
||||
func_803563B8(arg0, 0);
|
||||
void func_8035644C(enum file_progress_e progress_flag){
|
||||
func_803563B8(progress_flag, 0);
|
||||
}
|
||||
|
||||
void func_8035646C(s32 arg0) {
|
||||
func_803563B8(arg0, 4);
|
||||
void func_8035646C(enum file_progress_e progress_flag) {
|
||||
func_803563B8(progress_flag, 4);
|
||||
}
|
||||
|
||||
/* Checks for a specific "volatile" progress flag and triggers a dialog only if the progress flag was not set and sets the progress flag */
|
||||
s32 func_8035648C(s32 arg0, s32 arg1) {
|
||||
s32 index;
|
||||
|
||||
if (func_803203FC() != 0) {
|
||||
return 0;
|
||||
} else {
|
||||
index = __findIndex(D_80372798, arg0);
|
||||
index = __findIndex(volatileProgressDialogMap, arg0);
|
||||
if (index != -1) {
|
||||
if (func_80311480(D_80372798[index].value, arg1, 0, 0, 0, 0) != 0) {
|
||||
if (func_80311480(volatileProgressDialogMap[index].value, arg1, 0, 0, 0, 0) != 0) {
|
||||
func_803204E4(arg0, 1);
|
||||
}
|
||||
return func_803203FC(arg0);
|
||||
|
@@ -38,8 +38,8 @@ extern ActorInfo D_80366C80; //chhoneycarrier
|
||||
extern ActorInfo D_80366CA4; //chhoney
|
||||
extern ActorInfo chTrainers;
|
||||
extern ActorInfo D_80366EF0; //large_shadow
|
||||
extern ActorInfo D_80366F20; //chshockjump
|
||||
extern ActorInfo D_80366F44; //flight_pad
|
||||
extern ActorInfo chShockJump; //chshockjump
|
||||
extern ActorInfo chFlightPad; //flight_pad
|
||||
extern ActorInfo D_803670B8; //snippet
|
||||
extern ActorInfo D_803670DC; //black_snippet
|
||||
extern ActorInfo D_80367100; //mutie_snippet
|
||||
@@ -251,8 +251,8 @@ void spawnQueue_reset(void){
|
||||
spawnableActorList_add(&D_80367F30, actor_new, 0x0000400);
|
||||
spawnableActorList_add(&chBubble, actor_new, 0x0000004);
|
||||
spawnableActorList_add(&chGloop, actor_new, 0x000008A); //gloop
|
||||
spawnableActorList_add(&D_80366F20, actor_new, 0x0000000); //chshockjump
|
||||
spawnableActorList_add(&D_80366F44, actor_new, 0x0000000); //flight_pad
|
||||
spawnableActorList_add(&chShockJump, actor_new, 0x0000000); //chshockjump
|
||||
spawnableActorList_add(&chFlightPad, actor_new, 0x0000000); //flight_pad
|
||||
spawnableActorList_add(&D_80367D24, actor_new, 0x0200000); //redfeather
|
||||
spawnableActorList_add(&D_80367D48, actor_new, 0x0200000); //goldfeather
|
||||
spawnableActorList_add(&D_80367C90, actor_new, 0x0000004); //spent_redfeather
|
||||
|
@@ -12,11 +12,11 @@ extern void func_80387470(Actor *, f32 [3], f32, f32, f32, f32, f32);
|
||||
extern void func_80329904(ActorMarker*, s32, f32*);
|
||||
|
||||
|
||||
void func_8038C840(Actor *this);
|
||||
void func_8038D014(Actor *this);
|
||||
void chBossJinjo_update(Actor *this);
|
||||
void chBossJinjo_func_8038D014(Actor *this);
|
||||
|
||||
/* .data */
|
||||
ActorAnimationInfo D_80391810[] = {
|
||||
ActorAnimationInfo chBossJinjoAnimations[] = {
|
||||
{0, 0.0f},
|
||||
{0x264, 1000000.0f},
|
||||
{0x264, 2.26f},
|
||||
@@ -25,31 +25,31 @@ ActorAnimationInfo D_80391810[] = {
|
||||
{0x262, 2.0f}
|
||||
};
|
||||
|
||||
ActorInfo D_80391840 = {
|
||||
ActorInfo chBossJinjoOrange = {
|
||||
MARKER_27B_BOSS_JINJO_ORANGE, ACTOR_3A5_BOSS_JINJO_ORANGE, ASSET_3BC_MODEL_JINJO_ORANGE,
|
||||
0x1, D_80391810,
|
||||
func_8038C840, func_8038D014, actor_draw,
|
||||
0x1, chBossJinjoAnimations,
|
||||
chBossJinjo_update, chBossJinjo_func_8038D014, actor_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_80391864 = {
|
||||
ActorInfo chBossJinjoGreen = {
|
||||
MARKER_27C_BOSS_JINJO_GREEN, ACTOR_3A6_BOSS_JINJO_GREEN, ASSET_3C2_MODEL_JINJO_GREEN,
|
||||
0x1, D_80391810,
|
||||
func_8038C840, func_8038D014, actor_draw,
|
||||
0x1, chBossJinjoAnimations,
|
||||
chBossJinjo_update, chBossJinjo_func_8038D014, actor_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_80391888 = {
|
||||
ActorInfo chBossJinjoPink = {
|
||||
MARKER_27D_BOSS_JINJO_PINK, ACTOR_3A7_BOSS_JINJO_PINK, ASSET_3C1_MODEL_JINJO_PINK,
|
||||
0x1, D_80391810,
|
||||
func_8038C840, func_8038D014, actor_draw,
|
||||
0x1, chBossJinjoAnimations,
|
||||
chBossJinjo_update, chBossJinjo_func_8038D014, actor_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_803918AC = {
|
||||
ActorInfo chBossJinjoYellow = {
|
||||
MARKER_27E_BOSS_JINJO_YELLOW, ACTOR_3A8_BOSS_JINJO_YELLOW, ASSET_3BB_MODEL_JINJO_YELLOW,
|
||||
0x1, D_80391810,
|
||||
func_8038C840, func_8038D014, actor_draw,
|
||||
0x1, chBossJinjoAnimations,
|
||||
chBossJinjo_update, chBossJinjo_func_8038D014, actor_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
@@ -184,7 +184,7 @@ void func_8038C79C(Actor *this){
|
||||
}
|
||||
}
|
||||
|
||||
void func_8038C840(Actor *this){
|
||||
void chBossJinjo_update(Actor *this){
|
||||
f32 sp74 = time_getDelta();
|
||||
f32 sp68[3];
|
||||
f32 sp5C[3];
|
||||
@@ -346,7 +346,7 @@ void func_8038CED8(f32 arg0[3], enum asset_e model_id, f32 arg2, f32 arg3){
|
||||
particleEmitter_emitN(s0, 1);
|
||||
}
|
||||
|
||||
void func_8038D014(Actor *this){
|
||||
void chBossJinjo_func_8038D014(Actor *this){
|
||||
s32 temp_a1;
|
||||
|
||||
if(!this->unk16C_4){
|
||||
|
@@ -9,7 +9,7 @@ typedef struct {
|
||||
void func_8038D568(Actor *this);
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_80391990 = {
|
||||
ActorInfo chBossJinjoBase = {
|
||||
MARKER_27A_JINJO_STATUE_BASE, ACTOR_3A2_JINJO_STATUE_BASE, ASSET_543_MODEL_JINJO_STATUE_BASE,
|
||||
0x1, NULL,
|
||||
func_8038D568, func_80326224, actor_draw,
|
||||
|
@@ -6,7 +6,7 @@ Actor *chbossshadow_draw(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3)
|
||||
void chbossshadow_update(Actor *this);
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_80392090 = {
|
||||
ActorInfo chBossShadow = {
|
||||
MARKER_288_GRUNTY_SHADOW, ACTOR_3AF_GRUNTY_SHADOW, ASSET_3BF_MODEL_PLAYER_SHADOW, 0x1, NULL,
|
||||
chbossshadow_update, func_80326224, chbossshadow_draw,
|
||||
0, 0, 0.0f, 0
|
||||
|
@@ -112,7 +112,7 @@ ActorAnimationInfo D_803913A0[] = {
|
||||
{ 0x266, 4.0f}
|
||||
};
|
||||
|
||||
ActorInfo fight_D_80391500 = {
|
||||
ActorInfo chFinalBoss = {
|
||||
MARKER_25E_GRUNTILDA_FINAL_BOSS, ACTOR_38B_GRUNTILDA_FINAL_BOSS, ASSET_53D_MODEL_GRUNTILDA_FINAL_BOSS,
|
||||
1, D_803913A0,
|
||||
chfinalboss_update, func_80326224, chfinalboss_draw,
|
||||
|
@@ -44,7 +44,7 @@ ActorAnimationInfo D_80391FB0[] = {
|
||||
{0x280, 0.4f}
|
||||
};
|
||||
|
||||
ActorInfo D_80392018 = {
|
||||
ActorInfo chJinjonator = {
|
||||
MARKER_285_JINJONATOR, ACTOR_3AC_JINJONATOR, ASSET_551_MODEL_JINJONATOR,
|
||||
0x1, D_80391FB0,
|
||||
chjinjonator_update, func_80326224, actor_draw,
|
||||
|
@@ -9,7 +9,7 @@ typedef struct {
|
||||
void chjinjonatorbase_update(Actor *);
|
||||
|
||||
/* .data */
|
||||
ActorInfo fight_D_80391A40 = {
|
||||
ActorInfo chJinjonatorBase = {
|
||||
MARKER_27F_JINJONATOR_STATUE_BASE, ACTOR_3A9_JINJONATOR_STATUE_BASE, ASSET_544_MODEL_JINJONATOR_STATUE_BASE,
|
||||
0x1, NULL,
|
||||
chjinjonatorbase_update, func_80326224, actor_draw,
|
||||
|
@@ -26,7 +26,7 @@ typedef struct {
|
||||
void chspellbarrier_update(Actor *this);
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_80391AD0 = {
|
||||
ActorInfo chSpellBarrier = {
|
||||
MARKER_284_GRUNTY_SPELL_BARRIER, ACTOR_3AB_GRUNTY_SPELL_BARRIER, ASSET_546_MODEL_GRUNTY_SPELL_BARRIER,
|
||||
0x1, NULL,
|
||||
chspellbarrier_update, func_80326224, actor_draw,
|
||||
|
@@ -19,14 +19,14 @@ typedef struct {
|
||||
void func_8038F620(Actor *this);
|
||||
|
||||
/* .data */
|
||||
ActorInfo fight_D_80391B00 = {
|
||||
ActorInfo chSpellFireball = {
|
||||
MARKER_25C_GRUNTY_SPELL_FIREBALL, ACTOR_389_GRUNTY_SPELL_FIREBALL, ASSET_541_SPRITE_FIREBALL_SPELL_ATTACK,
|
||||
0x1, NULL,
|
||||
func_8038F620, func_80326224, actor_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
ActorInfo D_80391B24 = {
|
||||
ActorInfo chSpellGreen = {
|
||||
MARKER_280_GRUNTY_SPELL_GREEN_ATTACK, ACTOR_3AA_GRUNTY_SPELL_GREEN_ATTACK, ASSET_6C9_SPRITE_GREEN_SPELL_ATTACK,
|
||||
0x1, NULL,
|
||||
func_8038F620, func_80326224, func_80325CAC,
|
||||
|
@@ -10,15 +10,15 @@ extern f32 chbossjinjo_8038D268(void);
|
||||
void chstonejinjo_update(Actor *);
|
||||
|
||||
/* .data */
|
||||
ActorAnimationInfo fight_D_803919F0[] ={
|
||||
ActorAnimationInfo chStoneJinjo_AnimationInfo[] ={
|
||||
{0, 0.0f},
|
||||
{0x265, 1e+8f},
|
||||
{0x265, 1e+8f},
|
||||
{0x265, 1e+8f},
|
||||
};
|
||||
ActorInfo fight_D_80391A10 = {
|
||||
ActorInfo chStoneJinjo = {
|
||||
MARKER_276_STONE_JINJO, ACTOR_3A1_STONE_JINJO, ASSET_545_MODEL_STONE_JINJO,
|
||||
0x1, fight_D_803919F0,
|
||||
0x1, chStoneJinjo_AnimationInfo,
|
||||
chstonejinjo_update, func_80326224, actor_draw,
|
||||
0, 0x800, 1.0f, 0
|
||||
};
|
||||
|
@@ -3,41 +3,41 @@
|
||||
#include "variables.h"
|
||||
|
||||
#include "prop.h"
|
||||
extern ActorInfo D_80366F68;
|
||||
|
||||
extern ActorInfo fight_D_80391500;
|
||||
extern ActorInfo D_80391840;
|
||||
extern ActorInfo D_80391864;
|
||||
extern ActorInfo D_80391888;
|
||||
extern ActorInfo D_803918AC;
|
||||
extern ActorInfo D_80391990;
|
||||
extern ActorInfo fight_D_80391A10;
|
||||
extern ActorInfo fight_D_80391A40;
|
||||
extern ActorInfo D_80391AD0;
|
||||
extern ActorInfo fight_D_80391B00;
|
||||
extern ActorInfo D_80391B24;
|
||||
extern ActorInfo D_80391DC0;
|
||||
extern ActorInfo D_80392018;
|
||||
extern ActorInfo D_80392090;
|
||||
extern ActorInfo chFightFlightPad;
|
||||
extern ActorInfo chFinalBoss;
|
||||
extern ActorInfo chBossJinjoOrange;
|
||||
extern ActorInfo chBossJinjoGreen;
|
||||
extern ActorInfo chBossJinjoPink;
|
||||
extern ActorInfo chBossJinjoYellow;
|
||||
extern ActorInfo chBossJinjoBase;
|
||||
extern ActorInfo chStoneJinjo;
|
||||
extern ActorInfo chJinjonatorBase;
|
||||
extern ActorInfo chSpellBarrier;
|
||||
extern ActorInfo chSpellFireball;
|
||||
extern ActorInfo chSpellGreen;
|
||||
extern ActorInfo chSpriteSmokeGreen2;
|
||||
extern ActorInfo chJinjonator;
|
||||
extern ActorInfo chBossShadow;
|
||||
|
||||
/* .bss */
|
||||
u8 pad_fight_80392740[0x10];
|
||||
|
||||
void fight_func_803863F0(void)
|
||||
{
|
||||
spawnableActorList_add(&fight_D_80391B00, actor_new, 0X108444);
|
||||
spawnableActorList_add(&D_80391DC0, actor_new, 0X108444);
|
||||
spawnableActorList_add(&fight_D_80391500, actor_new, 0X300468);
|
||||
spawnableActorList_add(&D_80391840, actor_new, 0X8464);
|
||||
spawnableActorList_add(&D_80391864, actor_new, 0X8464);
|
||||
spawnableActorList_add(&D_80391888, actor_new, 0X8464);
|
||||
spawnableActorList_add(&D_803918AC, actor_new, 0X8464);
|
||||
spawnableActorList_add(&fight_D_80391A10, actor_new, 0X20004);
|
||||
spawnableActorList_add(&D_80391990, actor_new, 0X800100C);
|
||||
spawnableActorList_add(&fight_D_80391A40, actor_new, 0X8009404);
|
||||
spawnableActorList_add(&D_80391B24, actor_new, 0X108444);
|
||||
spawnableActorList_add(&D_80391AD0, actor_new, 0X101404);
|
||||
spawnableActorList_add(&D_80366F68, actor_new, 0X100404);
|
||||
spawnableActorList_add(&D_80392018, actor_new, 0X9464);
|
||||
spawnableActorList_add(&D_80392090, actor_new, 0X100404);
|
||||
spawnableActorList_add(&chSpellFireball, actor_new, 0X108444);
|
||||
spawnableActorList_add(&chSpriteSmokeGreen2, actor_new, 0X108444);
|
||||
spawnableActorList_add(&chFinalBoss, actor_new, 0X300468);
|
||||
spawnableActorList_add(&chBossJinjoOrange, actor_new, 0X8464);
|
||||
spawnableActorList_add(&chBossJinjoGreen, actor_new, 0X8464);
|
||||
spawnableActorList_add(&chBossJinjoPink, actor_new, 0X8464);
|
||||
spawnableActorList_add(&chBossJinjoYellow, actor_new, 0X8464);
|
||||
spawnableActorList_add(&chStoneJinjo, actor_new, 0X20004);
|
||||
spawnableActorList_add(&chBossJinjoBase, actor_new, 0X800100C);
|
||||
spawnableActorList_add(&chJinjonatorBase, actor_new, 0X8009404);
|
||||
spawnableActorList_add(&chSpellGreen, actor_new, 0X108444);
|
||||
spawnableActorList_add(&chSpellBarrier, actor_new, 0X101404);
|
||||
spawnableActorList_add(&chFightFlightPad, actor_new, 0X100404);
|
||||
spawnableActorList_add(&chJinjonator, actor_new, 0X9464);
|
||||
spawnableActorList_add(&chBossShadow, actor_new, 0X100404);
|
||||
}
|
||||
|
@@ -6,14 +6,14 @@ extern void func_80386654(f32 arg0, f32 (*arg1)[4], f32 (*arg2)[4]);
|
||||
extern void func_80387470(Actor *, f32 [3], f32, f32, f32, f32, f32);
|
||||
extern Actor *func_80325CAC(ActorMarker *, Gfx **, Mtx **, Vtx**);
|
||||
|
||||
void func_8038FE94(Actor *this);
|
||||
Actor *func_8038FC40(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3);
|
||||
void chSpriteSmokeGreen2_update(Actor *this);
|
||||
Actor *chSpriteSmokeGreen2_draw(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3);
|
||||
|
||||
/* .data */
|
||||
ActorInfo D_80391DC0 = {
|
||||
0x25D, 0x38A, ASSET_6C7_SPRITE_SMOKE_GREEN_2,
|
||||
ActorInfo chSpriteSmokeGreen2 = {
|
||||
MARKER_25D_SPRITE_SMOKE_GREEN_2, ACTOR_38A_SPRITE_SMOKE_GREEN_2, ASSET_6C7_SPRITE_SMOKE_GREEN_2,
|
||||
0x1, NULL,
|
||||
func_8038FE94, func_80326224, func_8038FC40,
|
||||
chSpriteSmokeGreen2_update, func_80326224, chSpriteSmokeGreen2_draw,
|
||||
0, 0, 1.0f, 0
|
||||
};
|
||||
|
||||
@@ -48,7 +48,7 @@ f32 D_80391F94[4] = {0.0f, 0.01f, 0.7f, 0.8f};
|
||||
f32 D_80391FA4[2] = {0.0f, 0.65f};
|
||||
|
||||
/* .code */
|
||||
Actor *func_8038FC40(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3){
|
||||
Actor *chSpriteSmokeGreen2_draw(ActorMarker *marker, Gfx **gdl, Mtx **mptr, Vtx **arg3){
|
||||
Actor *actor = marker_getActor(marker);
|
||||
func_80344C2C(1);
|
||||
return func_80325CAC(marker, gdl, mptr, arg3);
|
||||
@@ -88,7 +88,7 @@ void func_8038FCF0(ActorMarker *marker, ActorMarker *other_marker){
|
||||
marker_despawn(actor->marker);
|
||||
}
|
||||
|
||||
void func_8038FE94(Actor *this){
|
||||
void chSpriteSmokeGreen2_update(Actor *this){
|
||||
f32 sp54 = time_getDelta();
|
||||
f32 sp48[3];
|
||||
|
||||
|
Reference in New Issue
Block a user