documentations
- spawnableActorList_add: decode flags - add some prototypes in functions.h - ActorMarker: docu unk8 (drawFunc) and unk14_20 (id)
This commit is contained in:
@@ -133,7 +133,7 @@ void chbossjinjo_spawnParticles(Actor *this, enum asset_e arg1, enum asset_e arg
|
||||
void chbossjinjo_spawnAttackParticles(Actor *this){
|
||||
s32 sparkle_sprite_id;
|
||||
s32 smoke_sprite_id;
|
||||
switch(this->marker->unk14_20){
|
||||
switch(this->marker->id){
|
||||
default:
|
||||
sparkle_sprite_id = ASSET_718_SPRITE_SPARKLE_WHITE_2;
|
||||
smoke_sprite_id = ASSET_6C2_SPRITE_SMOKE_WHITE;
|
||||
@@ -374,7 +374,7 @@ void chBossJinjo_func_8038D014(Actor *this){
|
||||
func_8030E6A4(0x3ee, randf2(1.0f, 1.15f), 32000);
|
||||
timed_playSfx(0.1f, 0x416, 0.6f, 32000);
|
||||
marker_despawn(this->marker);
|
||||
switch (this->marker->unk14_20)
|
||||
switch (this->marker->id)
|
||||
{
|
||||
case MARKER_27B_BOSS_JINJO_ORANGE:
|
||||
temp_a1 = 0x557;
|
||||
|
@@ -1586,7 +1586,7 @@ ActorMarker *chfinalboss_findCollidingJinjo(Actor *this, f32 arg1) {
|
||||
while(prop !=NULL){
|
||||
if (prop->markerFlag){
|
||||
jinjo = marker_getActor(prop->actorProp.marker);
|
||||
jinjo_marker_id = jinjo->marker->unk14_20;
|
||||
jinjo_marker_id = jinjo->marker->id;
|
||||
if(
|
||||
(jinjo_marker_id == MARKER_27B_BOSS_JINJO_ORANGE)
|
||||
|| (jinjo_marker_id == MARKER_27C_BOSS_JINJO_GREEN)
|
||||
@@ -1637,7 +1637,7 @@ void chfinalboss_phase4_update(ActorMarker *marker) {
|
||||
chfinalboss_phase4_setState(this, 0x20);
|
||||
}
|
||||
else{
|
||||
temp_t6 = marker_getActor(sp6C)->marker->unk14_20;
|
||||
temp_t6 = marker_getActor(sp6C)->marker->id;
|
||||
if ((temp_t6 == MARKER_27B_BOSS_JINJO_ORANGE) || (temp_t6 == MARKER_27E_BOSS_JINJO_YELLOW)) {
|
||||
local->mirror_phase5 = FALSE;
|
||||
} else {
|
||||
@@ -1851,7 +1851,7 @@ void chfinalboss_phase5_update(ActorMarker *marker) {
|
||||
sp38 = 0x14;
|
||||
sp34 = animctrl_getAnimTimer(this->animctrl);
|
||||
jinjonator_marker = chfinalboss_findCollidingJinjo(this, func_8033229C(this->marker) / 3.0f);
|
||||
if ((jinjonator_marker != NULL) && (jinjonator_marker->unk14_20 == MARKER_285_JINJONATOR)) {
|
||||
if ((jinjonator_marker != NULL) && (jinjonator_marker->id == MARKER_285_JINJONATOR)) {
|
||||
if (chjinjonator_8039125C(jinjonator_marker)) {
|
||||
__chFinalBossJinjonatorHits++;
|
||||
if (local->mirror_phase5) {
|
||||
@@ -2054,29 +2054,29 @@ bool func_8038B834(ActorMarker *marker, ActorMarker * arg1) {
|
||||
switch (local->phase) {
|
||||
case 1:
|
||||
if ((this->state == 6) || (this->state == 7)) {
|
||||
marker->unk14_20 = 0x260;
|
||||
marker->id = 0x260;
|
||||
} else {
|
||||
marker->unk14_20 = 0x25E;
|
||||
marker->id = 0x25E;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (local->unkA == 0) {
|
||||
marker->unk14_20 = 0x260;
|
||||
marker->id = 0x260;
|
||||
} else {
|
||||
marker->unk14_20 = 0x281;
|
||||
marker->id = 0x281;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
marker->unk14_20 = 0x282;
|
||||
marker->id = 0x282;
|
||||
break;
|
||||
case 4:
|
||||
marker->unk14_20 = 0x283;
|
||||
marker->id = 0x283;
|
||||
break;
|
||||
case 5:
|
||||
marker->unk14_20 = 0x283;
|
||||
marker->id = 0x283;
|
||||
break;
|
||||
default:
|
||||
marker->unk14_20 = 0x25E;
|
||||
marker->id = 0x25E;
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
|
@@ -88,7 +88,7 @@ void chspellbarrier_update(Actor *this){
|
||||
}//L8038E97C
|
||||
jinjo_marker = chfinalboss_findCollidingJinjo(this, 600.0f);
|
||||
if(jinjo_marker){
|
||||
if(jinjo_marker->unk14_20 == MARKER_285_JINJONATOR){
|
||||
if(jinjo_marker->id == MARKER_285_JINJONATOR){
|
||||
marker_despawn(this->marker);
|
||||
chfinalboss_spellBarrierInactive();
|
||||
return;
|
||||
|
@@ -184,7 +184,7 @@ void func_8038F084(ActorMarker *marker){
|
||||
timedFunc_set_0(0.3f, func_8038F050);
|
||||
actor->unk58_0 = 0;
|
||||
actor->scale *= 1.6;
|
||||
if(actor->marker->unk14_20 != MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
if(actor->marker->id != MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
chSpellFireball_emitSparkles(actor->position, 4, ASSET_713_SPRITE_SPARKLE_YELLOW,
|
||||
D_80391C0C, D_80391C24, D_80391C3C,
|
||||
D_80391C54, D_80391C64, D_80391C74
|
||||
@@ -220,9 +220,9 @@ void func_8038F084(ActorMarker *marker){
|
||||
}
|
||||
|
||||
void func_8038F3B4(ActorMarker *marker, ActorMarker *other){
|
||||
if( other->unk14_20 == 0x276
|
||||
|| other->unk14_20 == 0x27A
|
||||
|| other->unk14_20 == 0x27F
|
||||
if( other->id == 0x276
|
||||
|| other->id == 0x27A
|
||||
|| other->id == 0x27F
|
||||
) return;
|
||||
|
||||
func_8038F084(marker);
|
||||
@@ -283,7 +283,7 @@ void func_8038F620(Actor *this){
|
||||
actor_collisionOn(this);
|
||||
this->unk60 = 8.0f;
|
||||
this->scale = 0.1f;
|
||||
if( this->marker->unk14_20 == MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
if( this->marker->id == MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
actor_collisionOff(this);
|
||||
marker_setFreeMethod(this->marker, func_8038F5F8);
|
||||
func_80324CFC(0.0f, COMUSIC_43_ENTER_LEVEL_GLITTER, 32000);
|
||||
@@ -303,7 +303,7 @@ void func_8038F620(Actor *this){
|
||||
);
|
||||
}
|
||||
}//L8038F79C
|
||||
if(D_803928E5 && this->marker->unk14_20 == MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
if(D_803928E5 && this->marker->id == MARKER_280_GRUNTY_SPELL_GREEN_ATTACK){
|
||||
ncStaticCamera_rotateToTarget(this->position);
|
||||
}//L8038F7D4
|
||||
|
||||
@@ -312,7 +312,7 @@ void func_8038F620(Actor *this){
|
||||
D_80392914 = sp40*1.4;
|
||||
this->scale = (this->scale + D_80392914 < 1.0) ? this->scale + D_80392914 : 1.0f;
|
||||
|
||||
switch(this->marker->unk14_20){
|
||||
switch(this->marker->id){
|
||||
case MARKER_25C_GRUNTY_SPELL_FIREBALL://L8038F8AC
|
||||
chSpellFireball_emitExplosion(this->position, ASSET_4A0_SPRITE_EXPLOSION, 1,
|
||||
D_80391CEC, D_80391D34,
|
||||
@@ -359,7 +359,7 @@ void func_8038F620(Actor *this){
|
||||
}
|
||||
}
|
||||
// L8038FABC
|
||||
if( this->marker->unk14_20 != MARKER_280_GRUNTY_SPELL_GREEN_ATTACK
|
||||
if( this->marker->id != MARKER_280_GRUNTY_SPELL_GREEN_ATTACK
|
||||
&& func_8028F25C()
|
||||
){
|
||||
func_8038F084(this->marker);
|
||||
|
@@ -3,24 +3,25 @@
|
||||
#include "variables.h"
|
||||
#include "prop.h"
|
||||
#include "fight.h"
|
||||
#include "actor.h"
|
||||
|
||||
u8 pad_fight_80392740[0x10];
|
||||
|
||||
void fight_func_803863F0(void)
|
||||
{
|
||||
spawnableActorList_add(&chSpellFireball, actor_new, 0X108444);
|
||||
spawnableActorList_add(&chGreenBlast, 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);
|
||||
spawnableActorList_add(&chSpellFireball, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15 | ACTOR_FLAG_UNKNOWN_20);
|
||||
spawnableActorList_add(&chGreenBlast, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15 | ACTOR_FLAG_UNKNOWN_20);
|
||||
spawnableActorList_add(&chFinalBoss, actor_new, ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_20 | ACTOR_FLAG_UNKNOWN_21);
|
||||
spawnableActorList_add(&chBossJinjoOrange, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15);
|
||||
spawnableActorList_add(&chBossJinjoGreen, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15);
|
||||
spawnableActorList_add(&chBossJinjoPink, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15);
|
||||
spawnableActorList_add(&chBossJinjoYellow, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15);
|
||||
spawnableActorList_add(&chStoneJinjo, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_17);
|
||||
spawnableActorList_add(&chBossJinjoBase, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_3 | ACTOR_FLAG_UNKNOWN_12 | ACTOR_FLAG_UNKNOWN_27);
|
||||
spawnableActorList_add(&chJinjonatorBase, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_12 | ACTOR_FLAG_UNKNOWN_15 | ACTOR_FLAG_UNKNOWN_27);
|
||||
spawnableActorList_add(&chSpellGreen, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_15 | ACTOR_FLAG_UNKNOWN_20);
|
||||
spawnableActorList_add(&chSpellBarrier, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_12 | ACTOR_FLAG_UNKNOWN_20);
|
||||
spawnableActorList_add(&chFightFlightPad, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_20);
|
||||
spawnableActorList_add(&chJinjonator, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_5 | ACTOR_FLAG_UNKNOWN_6 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_12 | ACTOR_FLAG_UNKNOWN_15);
|
||||
spawnableActorList_add(&chBossShadow, actor_new, ACTOR_FLAG_UNKNOWN_2 | ACTOR_FLAG_UNKNOWN_10 | ACTOR_FLAG_UNKNOWN_20);
|
||||
}
|
||||
|
Reference in New Issue
Block a user