Event Actor docs that kind of ballooned into a bunch of stuff (#200)

* stuff

* too much

* Torch commit

* torch again
This commit is contained in:
petrie911
2024-04-05 15:11:36 -05:00
committed by GitHub
parent ac41c180a9
commit 126a55aa0e
108 changed files with 5009 additions and 5101 deletions
+1 -1
View File
@@ -99,7 +99,7 @@ s32 gRefreshRate;
s16* gAiBuffers[3];
s16 gAiBuffLengths[3];
u32 gAudioRandom;
UNK_TYPE D_80155D88;
u32 D_80155D88;
volatile u32 gResetTimer;
u64 gAudioContextEnd[2];
+2 -2
View File
@@ -64,7 +64,7 @@ void func_800135A8(SequencePlayer* seqplayer) {
seqplayer->appliedFadeVolume = seqplayer->fadeVolume * seqplayer->fadeVolumeMod;
}
for (i = 0; i < 16; i++) {
if ((((u32) seqplayer->channels[i] != (u32) &gSeqChannelNone) == 1) && (seqplayer->channels[i]->enabled == 1)) {
if ((IS_SEQUENCE_CHANNEL_VALID(seqplayer->channels[i]) == 1) && (seqplayer->channels[i]->enabled == 1)) {
func_80013400(seqplayer->channels[i], seqplayer->recalculateVolume);
}
}
@@ -88,7 +88,7 @@ s16 func_800137DC(VibratoState* vibrato) {
s32 index;
vibrato->time += (s32) vibrato->rate;
index = (vibrato->time >> 0xA) & 0x3F;
index = (vibrato->time >> 10) & 0x3F;
return vibrato->curve[index] >> 8;
}
+955 -1057
View File
File diff suppressed because it is too large Load Diff
+3 -5
View File
@@ -11,8 +11,6 @@ void* AudioHeap_SearchRegularCaches(s32 tableType, s32 cache, s32 id);
void* AudioHeap_SearchPermanentCache(s32 tableType, s32 id);
SampleCacheEntry* AudioHeap_AllocPersistentSampleCacheEntry(u32);
s32 D_80146D80;
static char devstr00[] = "Warning:Kill Note %x \n";
static char devstr01[] = "Kill Voice %d (ID %d) %d\n";
static char devstr02[] = "Warning: Running Sequence's data disappear!\n";
@@ -555,7 +553,7 @@ void AudioHeap_ClearCurrentAiBuffer(void) {
gAiBuffLengths[index] = gAudioBufferParams.minAiBufferLength;
for (i = 0; i < 0xAA0; i++) {
for (i = 0; i < AIBUF_LEN; i++) {
gAiBuffers[index][i] = 0;
}
}
@@ -600,7 +598,7 @@ s32 AudioHeap_ResetStep(void) {
AudioHeap_UpdateReverbs();
} else {
for (i = 0; i < 3; i++) {
for (j = 0; j < 0xAA0; j++) {
for (j = 0; j < AIBUF_LEN; j++) {
gAiBuffers[i][j] = 0;
}
}
@@ -623,7 +621,7 @@ s32 AudioHeap_ResetStep(void) {
gResetStatus = 0;
for (i = 0; i < 3; i++) {
gAiBuffLengths[i] = gAudioBufferParams.maxAiBufferLength;
for (j = 0; j < 0xAA0; j++) {
for (j = 0; j < AIBUF_LEN; j++) {
gAiBuffers[i][j] = 0;
}
}
+39 -3
View File
@@ -24,8 +24,44 @@ static char devstr18[] = "Bank Offset %x %d %d\n";
static char devstr19[] = "PEP Touch %x \n";
static char D_800C50E8[] = "FastCopy";
s32 D_80146D80;
s32 PAD_80146D88[2];
AudioSlowLoadBuffer gSlowLoads;
s32 AudioLoad_DiscardFont(s32 fontId);
void AudioLoad_SyncInitSeqPlayerInternal(s32 playerIdx, s32 seqId, s32 arg2);
void* AudioLoad_SyncLoadSeq(s32 seqId);
void* AudioLoad_SyncLoadSampleBank(u32 sampleBankId, s32* outMedium);
void* AudioLoad_SyncLoadFont(s32 fontId);
void* AudioLoad_SyncLoad(u32 tableType, u32 id, s32* didAllocate);
s32 AudioLoad_GetLoadTableIndex(s32 tableType, u32 entryId);
void* AudioLoad_SearchCaches(s32 tableType, s32 id);
AudioTable* AudioLoad_GetLoadTable(s32 tableType);
void AudioLoad_SyncDma(u32 devAddr, u8* ramAddr, u32 size, s32 medium);
void AudioLoad_SyncDmaUnkMedium(u32 devAddr, u8* ramAddr, u32 size, s32 unkMediumParam);
s32 AudioLoad_Dma(OSIoMesg* mesg, u32 priority, s32 direction, u32 devAddr, void* ramAddr, u32 size,
OSMesgQueue* retQueue, s32 medium, const char* dmaType);
s32 func_8000FC7C(u32 unkMediumParam, u32* addrPtr);
void func_8000FC8C(s32 unkParam2, u32 addr, u8* ramAddr, u32 size);
void AudioLoad_SyncLoadSimple(u32 tableType, u32 id);
void* AudioLoad_AsyncLoadInner(s32 tableType, s32 id, s32 nChunks, s32 retData, OSMesgQueue* retQueue);
Sample* AudioLoad_GetFontSample(s32 fontId, s32 instId);
void AudioLoad_ProcessSlowLoads(s32 resetStatus);
void AudioLoad_DmaSlowCopy(AudioSlowLoad* slowLoad, s32 size);
void AudioLoad_DmaSlowCopyUnkMedium(u32 devAddr, u8* ramAddr, u32 size, s32 unkMediumParam);
AudioAsyncLoad* AudioLoad_StartAsyncLoad(u32 devAddr, u8* ramAddr, u32 size, s32 medium, s32 nChunks,
OSMesgQueue* retQueue, u32 retMesg);
void AudioLoad_ProcessAsyncLoads(s32 resetStatus);
void AudioLoad_ProcessAsyncLoad(AudioAsyncLoad* asyncLoad, s32 resetStatus);
void AudioLoad_AsyncDma(AudioAsyncLoad* asyncLoad, u32 size);
void AudioLoad_AsyncDmaUnkMedium(u32 devAddr, u8* ramAddr, u32 size, s32 unkMediumParam);
void AudioLoad_RelocateSample(TunedSample* tSample, u32 fontDataAddr, SampleBankRelocInfo* relocInfo);
s32 AudioLoad_RelocateFontAndPreloadSamples(s32 fontId, u32 fontDataAddr, SampleBankRelocInfo* relocData, s32 isAsync);
s32 AudioLoad_ProcessSamplePreloads(s32 resetStatus);
s32 AudioLoad_GetSamplesForFont(s32 fontId, Sample** sampleSet);
void AudioLoad_DecreaseSampleDmaTtls(void) {
SampleDma* dma;
u32 i;
@@ -840,8 +876,8 @@ void AudioLoad_Init(void) {
gSampleDmaCount = 0;
AudioHeap_InitMainPools(gInitPoolSize);
for (i = 0; i < 3; i++) {
gAiBuffers[i] = AudioHeap_Alloc(&gInitPool, 0xAA0 * sizeof(u16));
for (j = 0; j < 0xAA0; j++) {
gAiBuffers[i] = AudioHeap_Alloc(&gInitPool, AIBUF_SIZE);
for (j = 0; j < AIBUF_LEN; j++) {
gAiBuffers[i][j] = 0;
}
}
@@ -1180,7 +1216,7 @@ void AudioLoad_RelocateSample(TunedSample* tSample, u32 fontDataAddr, SampleBank
Sample* sample;
// "Error: Already wavetable is touched %x.\n";
if ((u32) tSample->sample <= 0x80000000) {
if ((u32) tSample->sample <= AUDIO_RELOCATED_ADDRESS_START) {
sample = tSample->sample = reloc = (u32) tSample->sample + fontDataAddr;
// "Touch Warning: Length zero %x\n";
if ((sample->size != 0) && (sample->isRelocated != 1)) {
+10 -4
View File
@@ -21,7 +21,7 @@ static char devstr16[] = "Error:Wait Track disappear\n";
static char devstr17[] = "NoteOff Comes during wait release %x (note %x)\n";
static char devstr18[] = "Slow Release Batting\n";
u8 gSamplesPerWavePeriod[] = { 64, 32, 16, 8 };
u8 sSamplesPerWavePeriod[] = { 64, 32, 16, 8 };
static char devstr19[] = "Audio:Wavemem: Bad voiceno (%d)\n";
static char devstr20[] = "Audio: C-Alloc : Dealloc voice is NULL\n";
@@ -33,6 +33,12 @@ static char devstr25[] = "Intterupt UseStop %d (Kill %d)\n";
static char devstr26[] = "Intterupt RelWait %d (Kill %d)\n";
static char devstr27[] = "Drop Voice (Prio %x)\n";
void func_80011C58(Note* note, f32);
void func_8001268C(SequenceLayer* layer);
void func_80012C00(AudioListItem* item1, AudioListItem* item2);
void func_80012C40(Note* note);
void func_80012CEC(Note* note, SequenceLayer* layer);
void func_80011890(Note* note, NoteAttributes* noteAttr) {
NoteSubEu* temp_v0;
f32 var_fa0;
@@ -189,7 +195,7 @@ Drum* Audio_GetDrum(s32 arg0, s32 arg1) {
D_80155D88 = (arg0 << 8) + arg1 + 0x04000000;
return NULL;
}
if ((u32) gSoundFontList[arg0].drums < 0x80000000U) {
if ((u32) gSoundFontList[arg0].drums < AUDIO_RELOCATED_ADDRESS_START) {
return NULL;
}
temp = gSoundFontList[arg0].drums[arg1];
@@ -463,8 +469,8 @@ void func_800127B0(Note* note, SequenceLayer* layer) {
}
sp1C = note->playbackState.harmonicIndex;
note->synthesisState.samplePosInt =
(note->synthesisState.samplePosInt * gSamplesPerWavePeriod[func_800126AC(note, layer, var_a2)]) /
gSamplesPerWavePeriod[sp1C];
(note->synthesisState.samplePosInt * sSamplesPerWavePeriod[func_800126AC(note, layer, var_a2)]) /
sSamplesPerWavePeriod[sp1C];
}
void func_80012854(AudioListItem* item) {
+9 -5
View File
@@ -33,6 +33,10 @@ static char devstr28[] = "Macro Level Over Error!\n";
static char devstr29[] = "Group:Undefine upper C0h command (%x)\n";
static char devstr30[] = "Group:Undefined Command\n";
void func_800145BC(AudioListItem* list, AudioListItem* item);
void* func_800145FC(AudioListItem* list);
u8 func_800152C0(SequenceChannel* channel, u8 arg1, Instrument** instrument, AdsrSettings* adsrSettings);
void func_80013EA0(SequenceChannel* channel) {
s32 i;
@@ -166,12 +170,12 @@ void func_80014244(SequencePlayer* seqPlayer, u16 arg1) {
for (i = 0; i < 16; i++) {
if (arg1 & 1) {
temp_s0 = seqPlayer->channels[i];
if ((((u32) temp_s0 != (u32) &gSeqChannelNone) == 1) && (seqPlayer == temp_s0->seqPlayer)) {
if ((IS_SEQUENCE_CHANNEL_VALID(temp_s0) == 1) && (seqPlayer == temp_s0->seqPlayer)) {
func_8001415C(temp_s0);
temp_s0->seqPlayer = NULL;
}
temp_v0 = func_800141C8();
if (((u32) temp_v0 == (u32) &gSeqChannelNone) != 0) {
if (IS_SEQUENCE_CHANNEL_VALID(temp_v0) == 0) {
D_80155D88 = i + 0x10000;
seqPlayer->channels[i] = temp_v0;
} else {
@@ -194,7 +198,7 @@ void func_80014370(SequencePlayer* seqPlayer, u16 arg1) {
if (arg1 & 1) {
SequenceChannel* temp_s0 = seqPlayer->channels[i];
if (((u32) temp_s0 != (u32) &gSeqChannelNone) == 1) {
if (IS_SEQUENCE_CHANNEL_VALID(temp_s0) == 1) {
if (seqPlayer == temp_s0->seqPlayer) {
func_8001415C(temp_s0);
if (0) {}
@@ -211,7 +215,7 @@ void func_80014440(SequencePlayer* seqPlayer, u8 arg1, u8* arg2) {
SequenceChannel* temp_s2 = seqPlayer->channels[arg1];
s32 i;
if (((u32) temp_s2 != (u32) &gSeqChannelNone) != 0) {
if (IS_SEQUENCE_CHANNEL_VALID(temp_s2) != 0) {
temp_s2->scriptState.depth = 0;
temp_s2->scriptState.pc = arg2;
temp_s2->enabled = 1;
@@ -1339,7 +1343,7 @@ void func_80015FD4(SequencePlayer* seqPlayer) {
}
}
for (i = 0; i < 0x10; i++) {
if (((u32) &gSeqChannelNone != (u32) seqPlayer->channels[i]) == 1) {
if (IS_SEQUENCE_CHANNEL_VALID(seqPlayer->channels[i]) == 1) {
func_800153E8(seqPlayer->channels[i]);
}
}
+17 -1
View File
@@ -25,6 +25,22 @@ static char devstr7[] = "S->W\n";
static char devstr8[] = "W->S\n";
static char devstr9[] = "S-Resample Pitch %x (old %d -> delay %d)\n";
void func_80009A2C(s32 updateIndex, s32 noteIndex);
void func_80009AAC(s32 updateIndex);
Acmd* func_8000A700(s32 noteIndex, NoteSubEu* noteSub, NoteSynthesisState* synthState, s16* aiBuf, s32 aiBufLen,
Acmd* aList, s32 updateIndex);
Acmd* func_8000A25C(s16* aiBuf, s32 aiBufLen, Acmd* aList, s32 updateIndex);
Acmd* func_800098DC(Acmd* aList, u16 dmem, u16 startPos, s32 size, s32 reverbIndex);
Acmd* func_80009984(Acmd* aList, u16 dmem, u16 startPos, s32 size, s32 reverbIndex);
Acmd* func_80009D78(Acmd* aList, s32 aiBufLen, s16 reverbIndex, s16 updateIndex);
Acmd* func_8000A128(Acmd* aList, s16 reverbIndex, s16 updateIndex);
Acmd* func_8000B3F0(Acmd* aList, NoteSubEu* noteSub, NoteSynthesisState* synthState, s32 numSamplesToLoad);
Acmd* func_8000B480(Acmd* aList, NoteSynthesisState* synthState, s32 size, u16 pitch, u16 inpDmem, u32 resampleFlags);
Acmd* func_8000B51C(Acmd* aList, NoteSubEu* noteSub, NoteSynthesisState* synthState, s32 aiBufLen, u16 dmemSrc,
s32 delaySide, s32 flags);
Acmd* func_8000B98C(Acmd* aList, NoteSubEu* noteSub, NoteSynthesisState* synthState, s32 size, s32 flags,
s32 delaySide);
void func_800080C0(s32 sampleCount, s32 itemIndex, s32 reverbIndex) {
ReverbRingBufferItem* ringItem;
SynthesisReverb* reverb = &gSynthReverbs[reverbIndex];
@@ -955,7 +971,7 @@ Acmd* func_8000A700(s32 noteIndex, NoteSubEu* noteSub, NoteSynthesisState* synth
case 2:
temp =
func_800097A8(bookSample, samplesLenAdjusted, flags, &synthState->synthesisBuffers->unk_40);
aLoadBuffer(aList++, temp - 0x80000000, 0x5F0, (samplesLenAdjusted + 0x10) * 2);
aLoadBuffer(aList++, OS_K0_TO_PHYSICAL(temp), 0x5F0, (samplesLenAdjusted + 0x10) * 2);
s5 = samplesLenAdjusted;
nAdpcmSamplesProcessed = samplesLenAdjusted;
skipBytes = 0;
+34 -66
View File
@@ -1,4 +1,5 @@
#include "sys.h"
#include "sf64audio_external.h"
typedef struct {
/* 0x00 */ s16 numEntries;
@@ -27,72 +28,39 @@ AudioTableEntry gSampleBankTableInitEntries[4] = {
AudioTableBase gSeqTableInit = { 66, 0, 0 };
AudioTableEntry gSeqTableInitEntries[66] = {
/* 00 */ { 0, 0x3AF0, 2, 0, 0, 0, 0 },
/* 01 */ { 0x3AF0, 0x56B0, 2, 0, 0, 0, 0 },
/* 02 */ { 0x91A0, 0x2D80, 2, 3, 0, 0, 0 },
/* 03 */ { 0xBF20, 0x1410, 2, 3, 0, 0, 0 },
/* 04 */ { 0xD330, 0x1600, 2, 3, 0, 0, 0 },
/* 05 */ { 0xE930, 0xF20, 2, 3, 0, 0, 0 },
/* 06 */ { 0xF850, 0x13A0, 2, 3, 0, 0, 0 },
/* 07 */ { 0x10BF0, 0x1100, 2, 3, 0, 0, 0 },
/* 08 */ { 0x11CF0, 0x19E0, 2, 3, 0, 0, 0 },
/* 09 */ { 0x136D0, 0x13E0, 2, 3, 0, 0, 0 },
/* 10 */ { 0x14AB0, 0x12F0, 2, 3, 0, 0, 0 },
/* 11 */ { 9, 0, 2, 3, 0, 0, 0 },
/* 12 */ { 0x15DA0, 0xB70, 2, 3, 0, 0, 0 },
/* 13 */ { 0x16910, 0x2460, 2, 3, 0, 0, 0 },
/* 14 */ { 0x18D70, 0xD40, 2, 3, 0, 0, 0 },
/* 15 */ { 10, 0, 2, 3, 0, 0, 0 },
/* 16 */ { 4, 0, 2, 3, 0, 0, 0 },
/* 17 */ { 0x19AB0, 0x7F0, 2, 3, 0, 0, 0 },
/* 18 */ { 0x1A2A0, 0x1440, 2, 3, 0, 0, 0 },
/* 19 */ { 0x1B6E0, 0x1B20, 2, 3, 0, 0, 0 },
/* 20 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 21 */ { 18, 0, 2, 3, 0, 0, 0 },
/* 22 */ { 18, 0, 2, 3, 0, 0, 0 },
/* 23 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 24 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 25 */ { 0x1D200, 0x1B30, 2, 3, 0, 0, 0 },
/* 26 */ { 18, 0, 2, 3, 0, 0, 0 },
/* 27 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 28 */ { 0x1ED30, 0x10B0, 2, 3, 0, 0, 0 },
/* 29 */ { 28, 0, 2, 3, 0, 0, 0 },
/* 30 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 31 */ { 28, 0, 2, 3, 0, 0, 0 },
/* 32 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 33 */ { 0x1FDE0, 0x1410, 2, 3, 0, 0, 0 },
/* 34 */ { 0x211F0, 0xF30, 2, 3, 0, 0, 0 },
/* 35 */ { 0x22120, 0x2B30, 2, 3, 0, 0, 0 },
/* 36 */ { 0x24C50, 0x7F0, 2, 3, 0, 0, 0 },
/* 37 */ { 0x25440, 0x13B0, 2, 3, 0, 0, 0 },
/* 38 */ { 0x267F0, 0xC70, 2, 3, 0, 0, 0 },
/* 39 */ { 0x27460, 0x180, 2, 3, 0, 0, 0 },
/* 40 */ { 0x275E0, 0x5C0, 2, 3, 0, 0, 0 },
/* 41 */ { 34, 0, 2, 3, 0, 0, 0 },
/* 42 */ { 0x27BA0, 0x4E40, 2, 3, 0, 0, 0 },
/* 43 */ { 0x2C9E0, 0x14E0, 2, 3, 0, 0, 0 },
/* 44 */ { 0x2DEC0, 0x400, 2, 3, 0, 0, 0 },
/* 45 */ { 0x2E2C0, 0x800, 2, 3, 0, 0, 0 },
/* 46 */ { 0x2EAC0, 0x1AB0, 2, 3, 0, 0, 0 },
/* 47 */ { 0x30570, 0x1AA0, 2, 3, 0, 0, 0 },
/* 48 */ { 19, 0, 2, 3, 0, 0, 0 },
/* 49 */ { 0x32010, 0x1370, 2, 3, 0, 0, 0 },
/* 50 */ { 0x33380, 0xB80, 2, 3, 0, 0, 0 },
/* 51 */ { 0x33F00, 0x5C0, 2, 3, 0, 0, 0 },
/* 52 */ { 37, 0, 2, 3, 0, 0, 0 },
/* 53 */ { 37, 0, 2, 3, 0, 0, 0 },
/* 54 */ { 0x344C0, 0x550, 2, 3, 0, 0, 0 },
/* 55 */ { 0x34A10, 0x360, 2, 3, 0, 0, 0 },
/* 56 */ { 0x34D70, 0x620, 2, 3, 0, 0, 0 },
/* 57 */ { 56, 0, 2, 3, 0, 0, 0 },
/* 58 */ { 0x35390, 0xA70, 2, 3, 0, 0, 0 },
/* 59 */ { 43, 0, 2, 3, 0, 0, 0 },
/* 60 */ { 0x35E00, 0xAB0, 2, 3, 0, 0, 0 },
/* 61 */ { 0x368B0, 0x13D0, 2, 3, 0, 0, 0 },
/* 62 */ { 0x37C80, 0x250, 2, 3, 0, 0, 0 },
/* 63 */ { 0x37ED0, 0x6F0, 2, 3, 0, 0, 0 },
/* 64 */ { 0x385C0, 0xFB0, 2, 3, 0, 0, 0 },
/* 65 */ { 0x39570, 0x1780, 2, 3, 0, 0, 0 },
{ 0x00000, 0x3AF0, 2, 0, 0, 0, 0 }, { 0x03AF0, 0x56B0, 2, 0, 0, 0, 0 },
{ 0x091A0, 0x2D80, 2, 3, 0, 0, 0 }, { 0x0BF20, 0x1410, 2, 3, 0, 0, 0 },
{ 0x0D330, 0x1600, 2, 3, 0, 0, 0 }, { 0x0E930, 0xF20, 2, 3, 0, 0, 0 },
{ 0x0F850, 0x13A0, 2, 3, 0, 0, 0 }, { 0x010BF0, 0x1100, 2, 3, 0, 0, 0 },
{ 0x011CF0, 0x19E0, 2, 3, 0, 0, 0 }, { 0x0136D0, 0x13E0, 2, 3, 0, 0, 0 },
{ 0x014AB0, 0x12F0, 2, 3, 0, 0, 0 }, { SEQ_ID_SECTOR_Y, 0, 2, 3, 0, 0, 0 },
{ 0x15DA0, 0xB70, 2, 3, 0, 0, 0 }, { 0x16910, 0x2460, 2, 3, 0, 0, 0 },
{ 0x18D70, 0xD40, 2, 3, 0, 0, 0 }, { SEQ_ID_FORTUNA, 0, 2, 3, 0, 0, 0 },
{ SEQ_ID_TITANIA, 0, 2, 3, 0, 0, 0 }, { 0x19AB0, 0x7F0, 2, 3, 0, 0, 0 },
{ 0x1A2A0, 0x1440, 2, 3, 0, 0, 0 }, { 0x1B6E0, 0x1B20, 2, 3, 0, 0, 0 },
{ SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 }, { SEQ_ID_CO_BOSS_1, 0, 2, 3, 0, 0, 0 },
{ SEQ_ID_CO_BOSS_1, 0, 2, 3, 0, 0, 0 }, { SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 },
{ SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 }, { 0x1D200, 0x1B30, 2, 3, 0, 0, 0 },
{ SEQ_ID_CO_BOSS_1, 0, 2, 3, 0, 0, 0 }, { SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 },
{ 0x1ED30, 0x10B0, 2, 3, 0, 0, 0 }, { SEQ_ID_BO_BOSS, 0, 2, 3, 0, 0, 0 },
{ SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 }, { SEQ_ID_BO_BOSS, 0, 2, 3, 0, 0, 0 },
{ SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 }, { 0x1FDE0, 0x1410, 2, 3, 0, 0, 0 },
{ 0x211F0, 0xF30, 2, 3, 0, 0, 0 }, { 0x22120, 0x2B30, 2, 3, 0, 0, 0 },
{ 0x24C50, 0x7F0, 2, 3, 0, 0, 0 }, { 0x25440, 0x13B0, 2, 3, 0, 0, 0 },
{ 0x267F0, 0xC70, 2, 3, 0, 0, 0 }, { 0x27460, 0x180, 2, 3, 0, 0, 0 },
{ 0x275E0, 0x5C0, 2, 3, 0, 0, 0 }, { SEQ_ID_TITLE, 0, 2, 3, 0, 0, 0 },
{ 0x27BA0, 0x4E40, 2, 3, 0, 0, 0 }, { 0x2C9E0, 0x14E0, 2, 3, 0, 0, 0 },
{ 0x2DEC0, 0x400, 2, 3, 0, 0, 0 }, { 0x2E2C0, 0x800, 2, 3, 0, 0, 0 },
{ 0x2EAC0, 0x1AB0, 2, 3, 0, 0, 0 }, { 0x30570, 0x1AA0, 2, 3, 0, 0, 0 },
{ SEQ_ID_ME_BOSS, 0, 2, 3, 0, 0, 0 }, { 0x32010, 0x1370, 2, 3, 0, 0, 0 },
{ 0x33380, 0xB80, 2, 3, 0, 0, 0 }, { 0x33F00, 0x5C0, 2, 3, 0, 0, 0 },
{ SEQ_ID_CO_INTRO, 0, 2, 3, 0, 0, 0 }, { SEQ_ID_CO_INTRO, 0, 2, 3, 0, 0, 0 },
{ 0x344C0, 0x550, 2, 3, 0, 0, 0 }, { 0x34A10, 0x360, 2, 3, 0, 0, 0 },
{ 0x34D70, 0x620, 2, 3, 0, 0, 0 }, { SEQ_ID_VS_MENU, 0, 2, 3, 0, 0, 0 },
{ 0x35390, 0xA70, 2, 3, 0, 0, 0 }, { SEQ_ID_STAR_WOLF, 0, 2, 3, 0, 0, 0 },
{ 0x35E00, 0xAB0, 2, 3, 0, 0, 0 }, { 0x368B0, 0x13D0, 2, 3, 0, 0, 0 },
{ 0x37C80, 0x250, 2, 3, 0, 0, 0 }, { 0x37ED0, 0x6F0, 2, 3, 0, 0, 0 },
{ 0x385C0, 0xFB0, 2, 3, 0, 0, 0 }, { 0x39570, 0x1780, 2, 3, 0, 0, 0 },
};
AudioTableBase gSoundFontTableInit = { 33, 0, 0 };
AudioTableEntry gSoundFontTableInitEntries[33] = {
+1 -1
View File
@@ -339,7 +339,7 @@ void AudioThread_ProcessCmds(u32 msg) {
}
} else if ((player->enabled) && (cmd->arg1 < 16)) {
channel = player->channels[cmd->arg1];
if (channel != &gSeqChannelNone) {
if (IS_SEQUENCE_CHANNEL_VALID(channel)) {
switch (cmd->op) {
case AUDIOCMD_OP_CHANNEL_SET_VOL_SCALE:
if (channel->volumeMod != cmd->asFloat) {
+188 -183
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -31,7 +31,7 @@ void func_800846F0(FrameBuffer* arg0) {
sp4C[0] = (sp4C[1] + sp4C[2] + sp4C[3] + sp4C[4]) / 4;
sp38[0] = (sp38[1] + sp38[2] + sp38[3] + sp38[4]) / 4;
var_v0[0] = (sp60[0] << 0xB) | (sp4C[0] << 0x6) | (sp38[0] << 0x1);
var_v0[0] = (sp60[0] << 11) | (sp4C[0] << 6) | (sp38[0] << 1);
}
}
osWritebackDCacheAll();
+25 -24
View File
@@ -57,10 +57,10 @@ void func_beam_80035E78(PlayerShot* shot) {
shot->unk_64 = 30;
shot->unk_58 = 150;
func_8001CE28(shot->playerNum, shot->sfxSource);
D_play_Timer_80161A60 = 4;
gScreenFlashTimer = 4;
if (shot->obj.pos.y < (gGroundLevel + 450.0f)) {
D_ctx_80178480 = 15;
if (D_80161A88 == 2) {
gCameraShake = 15;
if (D_ctx_80161A88 == 2) {
func_effect_8007D9DC(shot->obj.pos.x, gGroundLevel + 2.0f, shot->obj.pos.z, shot->unk_48 * 0.1f,
shot->unk_48 * 3.0f, 0);
func_effect_8007D9DC(shot->obj.pos.x, gGroundLevel + 2.0f, shot->obj.pos.z, shot->unk_48 * 0.1f,
@@ -184,7 +184,7 @@ void func_beam_800365E4(f32 xPos, f32 yPos, f32 zPos, f32 arg3, f32 arg4, f32 ar
s32 unk44, s32 time) {
s32 i;
if ((D_ctx_801784AC != 4) && (gLevelType == LEVELTYPE_PLANET) && (D_80161A88 != 2) &&
if ((D_ctx_801784AC != 4) && (gLevelType == LEVELTYPE_PLANET) && (D_ctx_80161A88 != 2) &&
(gCurrentLevel != LEVEL_SOLAR) && (gCurrentLevel != LEVEL_BOLSE) && (gCurrentLevel != LEVEL_TRAINING) &&
(gCurrentLevel != LEVEL_ZONESS)) {
for (i = 0; i < 50; i++) {
@@ -213,7 +213,7 @@ void func_beam_800366CC(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 yRot,
void func_beam_80036770(f32 xPos, f32 yPos, f32 zPos, f32 yRot, f32 scale) {
s32 i;
if ((D_ctx_801784AC != 4) && (gLevelType == LEVELTYPE_PLANET) && (D_80161A88 <= 0) &&
if ((D_ctx_801784AC != 4) && (gLevelType == LEVELTYPE_PLANET) && (D_ctx_80161A88 <= 0) &&
(gCurrentLevel != LEVEL_TRAINING) && (gCurrentLevel != LEVEL_SOLAR) && (gCurrentLevel != LEVEL_ZONESS)) {
for (i = 0; i < 50; i++) {
if (gEffects[i].obj.status == OBJ_FREE) {
@@ -485,7 +485,7 @@ bool func_beam_8003774C(PlayerShot* shot, ObjectId objId, Object* obj) {
sp7C.z = obj->pos.z - shot->obj.pos.z;
// undefined behavior: if this check fails, the function returns no value
if (((fabsf(sp7C.x) < 1100.0f) && (fabsf(sp7C.z) < 1100.0f) && (shot->obj.pos.y < 900.0f)) ||
(objId == OBJ_BOSS_313) || (objId == OBJ_UNK_1000) || (objId == OBJ_80_39)) {
(objId == OBJ_BOSS_313) || (objId == ACTOR_EVENT_ID) || (objId == OBJ_80_39)) {
Matrix_RotateY(gCalcMatrix, -obj->rot.y * M_DTOR, 0);
sp7C.x = shot->obj.pos.x - obj->pos.x;
sp7C.y = shot->obj.pos.y - obj->pos.y;
@@ -526,7 +526,7 @@ bool func_beam_8003774C(PlayerShot* shot, ObjectId objId, Object* obj) {
case OBJ_BOSS_309:
objId = COL1_7;
break;
case OBJ_UNK_1000:
case ACTOR_EVENT_ID:
objId = COL1_3;
break;
case OBJ_BOSS_313:
@@ -684,10 +684,10 @@ void func_beam_80037CF4(PlayerShot* shot, Actor* actor, s32 hitIndex) {
actor->unk_0D8.x = shot->obj.pos.x;
actor->unk_0D8.y = shot->obj.pos.y;
actor->unk_0D8.z = shot->obj.pos.z;
if (((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0D2 == 0) &&
if (((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0D2 == 0) &&
((actor->unk_0B4 == 48) || (actor->unk_0B4 == 49) || (actor->unk_0B4 == 50))) ||
((actor->obj.id == OBJ_ACTOR_197) && (actor->fwork[23] > 1.0f)) ||
((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0D2 == 0) && (actor->unk_0B4 == 67)) ||
((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->fwork[23] > 1.0f)) ||
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0D2 == 0) && (actor->unk_0B4 == 67)) ||
((actor->obj.id == OBJ_ACTOR_261) && (shot->obj.id != PLAYERSHOT_8) &&
((actor->state < 3) || (actor->state >= 5))) ||
((actor->obj.id == OBJ_ACTOR_260) && (shot->obj.id != PLAYERSHOT_8) && (actor->timer_0BC != 0))) {
@@ -763,9 +763,9 @@ void func_beam_80038140(PlayerShot* shot) {
return;
}
break;
case OBJ_ACTOR_200:
case OBJ_ACTOR_EVENT:
if (actor->unk_0B4 == 42) {
if (func_beam_8003774C(shot, OBJ_UNK_1000, &actor->obj)) {
if (func_beam_8003774C(shot, ACTOR_EVENT_ID, &actor->obj)) {
actor->unk_0D0 = 1;
actor->unk_0D2 = shot->playerNum;
return;
@@ -787,8 +787,8 @@ void func_beam_80038140(PlayerShot* shot) {
break;
default:
if (actor->info.unk_16 != 0) {
if (actor->obj.id == OBJ_ACTOR_197) {
if ((actor->aiType >= 4) && (actor->aiType < 10) &&
if (actor->obj.id == OBJ_ACTOR_ALLRANGE) {
if ((actor->aiType >= AI360_WOLF) && (actor->aiType < AI360_10) &&
(((gCurrentLevel == LEVEL_VENOM_2) && (shot->playerNum < 104)) ||
((gCurrentLevel != LEVEL_VENOM_2) && (shot->playerNum == 0))) &&
(shot->obj.id != PLAYERSHOT_8) &&
@@ -1591,7 +1591,7 @@ void func_beam_8003B55C(PlayerShot* shot, s32 index) {
Vec3f sp44;
Vec3f sp38;
if ((D_80161A88 == 2) && (shot->obj.pos.y < (gGroundLevel + 50.0f)) && (index == 0)) {
if ((D_ctx_80161A88 == 2) && (shot->obj.pos.y < (gGroundLevel + 50.0f)) && (index == 0)) {
func_effect_8007ACE0(shot->obj.pos.x, gGroundLevel, shot->obj.pos.z, 0.1f, 1.5f, shot->obj.rot.y + 20.0f);
func_effect_8007ACE0(shot->obj.pos.x, gGroundLevel, shot->obj.pos.z, 0.1f, 1.5f, shot->obj.rot.y - 20.0f);
}
@@ -1620,7 +1620,7 @@ void func_beam_8003B55C(PlayerShot* shot, s32 index) {
func_beam_80036770(shot->obj.pos.x, gGroundLevel + 2.0f, shot->obj.pos.z, shot->obj.rot.y, 2.0f);
}
}
if (D_80161A88 == 2) {
if (D_ctx_80161A88 == 2) {
Object_Kill(&shot->obj, shot->sfxSource);
return;
}
@@ -1872,7 +1872,7 @@ void func_beam_8003C4D0(PlayerShot* shot, s32 damage) {
if ((actor->obj.status == OBJ_ACTIVE) && (actor->timer_0C2 == 0) &&
!((gCurrentLevel == LEVEL_MACBETH) && (OBJ_ACTOR_205 <= actor->obj.id) &&
(actor->obj.id < OBJ_ACTOR_214)) &&
!((actor->obj.id == OBJ_ACTOR_200) && (actor->iwork[12] != 0)) &&
!((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->iwork[12] != 0)) &&
((actor->scale >= 0.0f) || (actor->obj.id == OBJ_ACTOR_271))) {
sp68 = actor->obj.pos.x - shot->obj.pos.x;
sp64 = actor->obj.pos.y - shot->obj.pos.y;
@@ -1887,8 +1887,9 @@ void func_beam_8003C4D0(PlayerShot* shot, s32 damage) {
if ((actor->obj.id == OBJ_ACTOR_193) || (actor->obj.id == OBJ_ACTOR_186) ||
(actor->obj.id == OBJ_ACTOR_190) || (actor->obj.id == OBJ_ACTOR_202) ||
(actor->obj.id == OBJ_ACTOR_201) || (actor->obj.id == OBJ_ACTOR_187) ||
((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0B4 == 78)) ||
((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0B4 == 38)) || (actor->obj.id == OBJ_ACTOR_196)) {
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 78)) ||
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 38)) ||
(actor->obj.id == OBJ_ACTOR_196)) {
actor->unk_0D0 = 2;
actor->unk_0D2 = 0;
actor->unk_0D4 = shot->playerNum + 1;
@@ -1897,7 +1898,7 @@ void func_beam_8003C4D0(PlayerShot* shot, s32 damage) {
if (actor->info.bonus != 0) {
shot->bonus++;
}
} else if ((actor->obj.id == OBJ_ACTOR_200) && (actor->scale >= 0.5f) && (damage >= 31)) {
} else if ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->scale >= 0.5f) && (damage >= 31)) {
actor->unk_0D4 = shot->playerNum + 1;
actor->vel.x = sp68 * 0.03f;
actor->vel.y = sp64 * 0.03f;
@@ -1965,13 +1966,13 @@ void func_beam_8003C4D0(PlayerShot* shot, s32 damage) {
if (sqrtf(SQ(sp68) + SQ(sp64) + SQ(sp60)) < temp_fs2) {
player->unk_288 = shot->playerNum + 1;
switch (player->form) {
case 0:
case FORM_ARWING:
Player_ApplyDamage(player, 0, 80);
break;
case 1:
case FORM_LANDMASTER:
Player_ApplyDamage(player, 0, 60);
break;
case 3:
case FORM_ON_FOOT:
Player_ApplyDamage(player, 0, 180);
break;
}
@@ -2064,7 +2065,7 @@ void func_beam_8003CF90(PlayerShot* shot) {
Player* player;
if ((shot->obj.pos.y < gGroundLevel) || (shot->unk_64 == 1)) {
if ((D_80161A88 == 2) && (shot->obj.pos.y < gGroundLevel)) {
if ((D_ctx_80161A88 == 2) && (shot->obj.pos.y < gGroundLevel)) {
shot->unk_48 = 10.0f;
func_effect_8007D9DC(shot->obj.pos.x, gGroundLevel + 2.0f, shot->obj.pos.z, shot->unk_48 * 0.1f,
shot->unk_48 * 3.0f, 0);
+43 -42
View File
@@ -754,49 +754,50 @@ void func_bg_80040954(void) {
f32 var_fs2;
f32 var_fv0;
if ((gCurrentLevel != LEVEL_VENOM_ANDROSS) && (gLevelType != LEVELTYPE_SPACE) &&
(D_ctx_80178380[gPlayerNum] != 0)) {
var_fs2 = 1.0f;
if (D_ctx_80178380[gPlayerNum] < 80) {
var_fs2 = D_ctx_80178380[gPlayerNum] / 80.0f;
}
var_fs2 *= D_bg_800C9E5C[gLevelType];
if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) || (gLevelType == LEVELTYPE_SPACE) ||
(D_ctx_80178380[gPlayerNum] == 0)) {
return;
}
var_fs2 = 1.0f;
if (D_ctx_80178380[gPlayerNum] < 80) {
var_fs2 = D_ctx_80178380[gPlayerNum] / 80.0f;
}
var_fs2 *= D_bg_800C9E5C[gLevelType];
Matrix_Push(&gGfxMatrix);
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].unk_034 * M_DTOR, 1);
Matrix_Translate(gGfxMatrix, D_ctx_801783D0, D_ctx_801783D4, -200.0f, 1);
RCP_SetupDL_62();
temp_fs0 = D_ctx_801783D0 * -0.03f;
temp_fs1 = D_ctx_801783D4 * 0.03f;
var_s1 = &D_bg_800C9D94[5];
var_s4 = &D_bg_800C9DE4[5];
var_s5 = &D_bg_800C9C5C[5];
var_s6 = &D_bg_800C9D2C[5];
var_s7 = &D_bg_800C9CC4[5];
if (gCurrentLevel == LEVEL_KATINA) {
var_s1 = &D_bg_800C9DBC[5];
var_s4 = &D_bg_800C9E18[5];
var_s5 = &D_bg_800C9C90[5];
var_s6 = &D_bg_800C9D60[5];
var_s7 = &D_bg_800C9CF8[5];
}
for (i = 5; i < 13; i++, var_s1++, var_s4++, var_s5++, var_s6++, var_s7++) {
Matrix_Push(&gGfxMatrix);
Matrix_RotateZ(gGfxMatrix, gPlayer[gPlayerNum].unk_034 * M_DTOR, 1);
Matrix_Translate(gGfxMatrix, D_ctx_801783D0, D_ctx_801783D4, -200.0f, 1);
RCP_SetupDL_62();
temp_fs0 = D_ctx_801783D0 * -0.03f;
temp_fs1 = D_ctx_801783D4 * 0.03f;
var_s1 = &D_bg_800C9D94[5];
var_s4 = &D_bg_800C9DE4[5];
var_s5 = &D_bg_800C9C5C[5];
var_s6 = &D_bg_800C9D2C[5];
var_s7 = &D_bg_800C9CC4[5];
if (gCurrentLevel == LEVEL_KATINA) {
var_s1 = &D_bg_800C9DBC[5];
var_s4 = &D_bg_800C9E18[5];
var_s5 = &D_bg_800C9C90[5];
var_s6 = &D_bg_800C9D60[5];
var_s7 = &D_bg_800C9CF8[5];
Matrix_Translate(gGfxMatrix, *var_s7 * temp_fs0, *var_s7 * -temp_fs1, 0.0f, 1);
Matrix_Scale(gGfxMatrix, *var_s6, *var_s6, *var_s6, 1);
if (((i == 5) || (i == 11)) && (gCurrentLevel != LEVEL_KATINA)) {
Matrix_RotateX(gGfxMatrix, M_PI / 2, 1);
}
for (i = 5; i < 13; i++, var_s1++, var_s4++, var_s5++, var_s6++, var_s7++) {
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, *var_s7 * temp_fs0, *var_s7 * -temp_fs1, 0.0f, 1);
Matrix_Scale(gGfxMatrix, *var_s6, *var_s6, *var_s6, 1);
if (((i == 5) || (i == 11)) && (gCurrentLevel != LEVEL_KATINA)) {
Matrix_RotateX(gGfxMatrix, M_PI / 2, 1);
}
Matrix_SetGfxMtx(&gMasterDisp);
var_fv0 = *var_s4;
if (i >= 5) {
var_fv0 *= var_fs2;
}
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, var_s1->r, var_s1->g, var_s1->b, (s32) var_fv0);
gSPDisplayList(gMasterDisp++, *var_s5);
Matrix_Pop(&gGfxMatrix);
Matrix_SetGfxMtx(&gMasterDisp);
var_fv0 = *var_s4;
if (i >= 5) {
var_fv0 *= var_fs2;
}
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, var_s1->r, var_s1->g, var_s1->b, (s32) var_fv0);
gSPDisplayList(gMasterDisp++, *var_s5);
Matrix_Pop(&gGfxMatrix);
}
Matrix_Pop(&gGfxMatrix);
}
void func_bg_80040CDC(void) {
@@ -868,7 +869,7 @@ void func_bg_80040CE4(void) {
}
}
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, gPlayer[gPlayerNum].unk_0AC, -3.0f + D_ctx_8017847C, sp1D4, 1);
Matrix_Translate(gGfxMatrix, gPlayer[gPlayerNum].unk_0AC, -3.0f + gCameraShakeY, sp1D4, 1);
if (D_ctx_80177C70 == 2) {
Matrix_Scale(gGfxMatrix, 1.2f, 1.2f, 1.0f, 1);
}
@@ -886,7 +887,7 @@ void func_bg_80040CE4(void) {
temp_fv0 = Math_ModF((10000.0f - gPlayer[gPlayerNum].unk_0AC) * 0.32f, 128.0f);
gDPSetupTile(gMasterDisp++, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, temp_fv0, temp_s0,
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, 5, 5, G_TX_NOLOD, G_TX_NOLOD);
switch (D_80161A88) {
switch (D_ctx_80161A88) {
case 0:
gDPLoadTileTexture(gMasterDisp++, D_CO_601B6C0, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32);
gBgColor = 0x845; // 8, 8, 32
@@ -913,7 +914,7 @@ void func_bg_80040CE4(void) {
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_CO_601B640);
} else {
D_80161A88 = 0;
D_ctx_80161A88 = 0;
gBgColor = 0x845; // 8, 8, 32
for (i = 0; i < 4; i++) {
Matrix_Push(&gGfxMatrix);
@@ -1131,7 +1132,7 @@ void func_bg_80042D38(void) {
xEye = gPlayer[gPlayerNum].camEye.x;
if (0) {}
zEye = gPlayer[gPlayerNum].camEye.z;
Matrix_Translate(gGfxMatrix, xEye, 2.0f + D_ctx_8017847C, zEye, 1);
Matrix_Translate(gGfxMatrix, xEye, 2.0f + gCameraShakeY, zEye, 1);
Matrix_Scale(gGfxMatrix, 1.5f, 1.0f, 1.0f, 1);
RCP_SetupDL_37(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 125);
+13 -9
View File
@@ -2,11 +2,15 @@
s32 gBossFrameCount;
s32 D_boss_800C9E90[28] = {
0x8012, 0x8013, 0x8015, 0x8017, 0x8017, 0x8019, 0x8018, 0x801B, 0x8016, 0x8018, 0x8012, 0x8020, 0x8014, 0x801E,
0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
s32 D_boss_800C9E90[] = {
SEQ_ID_CO_BOSS_1 | SEQ_FLAG, SEQ_ID_ME_BOSS | SEQ_FLAG, SEQ_ID_SX_BOSS | SEQ_FLAG, SEQ_ID_A6_BOSS | SEQ_FLAG,
SEQ_ID_A6_BOSS | SEQ_FLAG, SEQ_ID_SY_BOSS | SEQ_FLAG, SEQ_ID_VE_BOSS | SEQ_FLAG, SEQ_ID_SO_BOSS | SEQ_FLAG,
SEQ_ID_ZO_BOSS | SEQ_FLAG, SEQ_ID_VE_BOSS | SEQ_FLAG, SEQ_ID_CO_BOSS_1 | SEQ_FLAG, SEQ_ID_MA_BOSS | SEQ_FLAG,
SEQ_ID_TI_BOSS | SEQ_FLAG, SEQ_ID_AQ_BOSS | SEQ_FLAG,
};
s32 PAD_boss_C9EC4[14] = { 0 };
const f32 D_boss_800D55D0[] = { 6000.0f, 18000.0f, -6000.0f, -18000.0f };
void func_boss_80042EC0(Boss* boss) {
@@ -37,22 +41,22 @@ void func_boss_80042EC0(Boss* boss) {
D_ctx_80177850 = 15;
}
void func_boss_80042FAC(Boss* boss) {
void Boss299_Init(Boss* boss) {
}
void func_boss_80042FB8(Boss* boss) {
void Boss299_Update(Boss* boss) {
}
void func_boss_80042FC4(Boss* boss) {
void Boss299_Draw(Boss* boss) {
}
void func_boss_80042FD0(Boss* boss) {
void Boss300_Init(Boss* boss) {
}
void func_boss_80042FDC(Boss* boss) {
void Boss300_Update(Boss* boss) {
}
void func_boss_80042FE8(Boss* boss) {
void Boss300_Draw(Boss* boss) {
}
void func_boss_80042FF4(Actor* actor, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
+17 -17
View File
@@ -20,7 +20,7 @@ s32 gPlayerNum;
s32 gCamCount;
s32 gTeamShields[6];
s32 gSavedTeamShields[6];
UNK_TYPE D_ctx_801778F0[6];
s32 D_ctx_801778F0[6];
s32 gTeamDamage[6];
u8 D_ctx_80177930; // next planet path
f32 gGroundLevel;
@@ -33,8 +33,8 @@ f32 gCsCamEyeZ;
f32 gCsCamAtX;
f32 gCsCamAtY;
f32 gCsCamAtZ;
Vec3f D_ctx_801779D8;
Vec3f D_ctx_801779E8;
Vec3f gPlayerCamEye;
Vec3f gPlayerCamAt;
bool gExpertMode;
s32 D_ctx_80177A10[10];
f32 D_ctx_80177A48[10];
@@ -50,12 +50,12 @@ s32 D_ctx_80177B50[7];
s32 D_ctx_80177B70[7];
PlanetId D_ctx_80177B90[7];
s32 D_ctx_80177BB0[7];
s32 D_ctx_80177BD8[22]; // overruns D_ctx_80177C30?
s32 D_ctx_80177BD8[22]; // overruns D_ctx_80177C38?
s32 D_ctx_80177C38[6];
s32 D_ctx_80177C58[6];
u8 gSoundMode;
s32 gVolumeSettings[3];
u16 D_ctx_80177C90;
u16 gBgmSeqId;
u8 gLevelType;
s32 D_ctx_80177CA0;
UNK_TYPE F_80177CA8;
@@ -161,8 +161,8 @@ f32 D_ctx_80178448;
f32 D_ctx_80178450[3];
f32 D_ctx_80178460[3];
f32 D_ctx_80178470[3];
f32 D_ctx_8017847C;
s32 D_ctx_80178480;
f32 gCameraShakeY;
s32 gCameraShake;
s32 D_ctx_80178484;
bool D_ctx_80178488;
UNK_TYPE F_8017848C;
@@ -226,21 +226,21 @@ UNK_TYPE P_800D31A0 = 0;
s32 D_ctx_80178570; // Color32 light color 2 modifier?
s32 D_ctx_80178574;
s32 D_ctx_80178578;
s32 D_80161A70; // Color32? start of bss
s32 D_80161A74;
s32 D_80161A78;
s32 D_80161A7C;
s32 D_80161A80;
s32 D_80161A84;
s32 D_80161A88;
s32 D_80161A8C;
s32 D_ctx_80161A70; // Color32? start of bss
s32 D_ctx_80161A74;
s32 D_ctx_80161A78;
s32 D_ctx_80161A7C;
s32 D_ctx_80161A80;
s32 D_ctx_80161A84;
s32 D_ctx_80161A88;
s32 D_ctx_80161A8C;
u8 gGoldRingCount[4];
u8 D_80161A94[4];
u8 D_ctx_80161A94[4];
s32 gHitCount;
s32 gSavedHitCount;
s16 gLifeCount[4];
LaserStrength gLaserStrength[4];
s32 D_80161AB8;
s32 D_ctx_80161AB8;
UNK_TYPE F_80161AC0[4];
UNK_TYPE F_80161AD0[4];
UNK_TYPE F_80161AE0[4];
+70 -72
View File
@@ -114,7 +114,7 @@ void func_demo_80048AC0(s32 teamId) {
s32 teamShield;
if (teamId == 1) {
if (gTeamShields[1] < 0x40) {
if (gTeamShields[1] < 64) {
Radio_PlayMessage(gMsg_ID_20303, RCID_FALCO);
return;
}
@@ -242,7 +242,7 @@ void func_demo_80048E40(Player* player) {
break;
case 100:
D_ctx_80177840 = 0x64;
D_ctx_80177840 = 100;
break;
case 200:
@@ -273,7 +273,7 @@ void func_demo_80048E40(Player* player) {
default:
break;
}
if (gCsFrameCount >= 0x1C3) {
if (gCsFrameCount > 450) {
Math_SmoothStepToF(&D_ctx_80177A48[0], 1.0f, 0.1f, 0.004f, 0.0f);
player->unk_0D0 += 2.0f;
player->unk_0E4 += 0.1f;
@@ -358,7 +358,7 @@ void func_demo_80049630(Actor* actor) {
case 1:
actor->state = 2;
AUDIO_PLAY_SFX(0x09000002U, actor->sfxSource, 0);
actor->timer_0BC = 0x96;
actor->timer_0BC = 150;
actor->fwork[29] = 5.0f;
case 2:
@@ -450,7 +450,7 @@ void func_demo_80049C0C(Player* player) {
s32 pad[4];
player->pos.x += player->vel.x;
player->unk_228 = 0;
player->flags_228 = 0;
player->unk_238 = 0;
player->pos.y += player->vel.y;
player->pos.z += player->vel.z;
@@ -497,7 +497,7 @@ void func_demo_80049C0C(Player* player) {
}
func_demo_80049968(&gActors[3], 3);
player->timer_1F8 = 0x32;
player->timer_1F8 = 50;
break;
case 1:
@@ -506,7 +506,7 @@ void func_demo_80049C0C(Player* player) {
D_ctx_80178414 *= 1.05f;
if (player->timer_1F8 == 0) {
player->unk_1D0 = 2;
player->timer_1F8 = 0x96;
player->timer_1F8 = 150;
}
player->unk_190 = 2.0f;
player->unk_08C -= 2.0f;
@@ -538,12 +538,12 @@ void func_demo_80049C0C(Player* player) {
var_v0 = 1;
player->unk_190 = 2.0f;
if ((player->timer_1F8 == 0x5F) && (gTeamShields[1] > 0)) {
if ((player->timer_1F8 == 95) && (gTeamShields[1] > 0)) {
gActors[0].state = var_v0;
AUDIO_PLAY_SFX(0x0940802AU, gActors[0].sfxSource, 0);
}
if ((player->timer_1F8 == 0x5A) && (gTeamShields[3] > 0)) {
if ((player->timer_1F8 == 90) && (gTeamShields[3] > 0)) {
gActors[2].state = var_v0;
AUDIO_PLAY_SFX(0x0940802AU, gActors[2].sfxSource, 0);
}
@@ -576,7 +576,7 @@ void func_demo_80049C0C(Player* player) {
if (D_ctx_80178340 == 255) {
func_play_800A6148();
player->unk_1D0 = 5;
player->timer_1F8 = 0xA;
player->timer_1F8 = 10;
player->unk_08C = -10000.0f;
player->unk_0AC = player->unk_0B8 = player->unk_0B0 = player->unk_0BC = player->pos.x =
player->pos.y = player->pos.z = player->unk_130 = player->unk_034 = player->unk_138 =
@@ -609,7 +609,7 @@ void func_demo_80049C0C(Player* player) {
case 6:
Math_SmoothStepToF(&D_ctx_80178414, 0.0f, 0.2f, 1000.0f, 0.1f);
Math_SmoothStepToF(&player->unk_08C, 0.0f, 0.2f, 500.0f, 0.1f);
if (player->timer_1F8 < 0x1E) {
if (player->timer_1F8 < 30) {
for (var_v0 = 0; var_v0 < 3; var_v0++) {
func_demo_80049B44();
}
@@ -617,13 +617,13 @@ void func_demo_80049C0C(Player* player) {
if (player->timer_1F8 == 30) {
D_ctx_80178410 = 300;
AUDIO_PLAY_BGM(SEQ_ID_58 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_WARP_ZONE | SEQ_FLAG);
}
if (player->timer_1F8 == 0) {
D_bg_8015F960 = 0.0f;
D_ctx_80178414 = 0.0f;
player->state_1C8 = 3;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_014 = 0.0f;
player->unk_018 = 0.0f;
D_ctx_801782B8 = 0;
@@ -772,8 +772,8 @@ void func_demo_8004A888(Effect* effect) {
effect->vel.y = sp20.y;
effect->vel.z = sp20.z;
effect->obj.id = OBJ_EFFECT_352;
effect->timer_50 = 0x28;
effect->unk_46 = 0x90;
effect->timer_50 = 40;
effect->unk_46 = 144;
effect->scale2 = RAND_FLOAT(30.0f) + 10.0f;
if (Rand_ZeroOne() < 0.5f) {
@@ -813,7 +813,7 @@ void func_demo_8004AAF4(Player* player) {
D_ctx_80177E84 = 1;
if (gCurrentLevel == LEVEL_VENOM_ANDROSS) {
Radio_PlayMessage(gMsg_ID_19466, RCID_FOX);
AUDIO_PLAY_BGM(SEQ_ID_61 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_AND_BRAIN | SEQ_FLAG);
} else if (gCurrentLevel != LEVEL_TRAINING) {
Radio_PlayMessage(gMsg_ID_20180, RCID_FOX);
if (gCurrentLevel == LEVEL_SECTOR_Y) {
@@ -860,15 +860,15 @@ void func_demo_8004AAF4(Player* player) {
player->unk_204 = 2;
}
if ((gCsFrameCount >= 0x88) && (gCsFrameCount < 0xB4)) {
if ((gCsFrameCount > 135) && (gCsFrameCount < 180)) {
Math_SmoothStepToF(&D_ctx_801779A8[player->num], 30.0f, 1.0f, 10.0f, 0.0f);
}
if (gCsFrameCount == 0x8A) {
if (gCsFrameCount == 138) {
AUDIO_PLAY_SFX(0x09000007U, player->sfxSource, 0);
}
if (gCsFrameCount == 0xBE) {
if (gCsFrameCount == 190) {
AUDIO_PLAY_SFX(0x09000013U, player->sfxSource, 0);
}
@@ -888,7 +888,7 @@ void func_demo_8004AAF4(Player* player) {
for (i = 0, actor = &gActors[2]; i < 3; i++, actor++) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_198;
actor->obj.id = OBJ_ACTOR_TEAM_BOSS;
actor->obj.pos.x = D_demo_800CA080[i] + player->pos.x;
actor->obj.pos.y = D_demo_800CA08C[i] + player->pos.y;
actor->obj.pos.z = player->unk_138 - 1000.0f;
@@ -957,7 +957,7 @@ void func_demo_8004B368(Player* player) {
s32 pad2[2];
f32 var_fa1;
player->unk_228 = 0;
player->flags_228 = 0;
Math_SmoothStepToF(&player->unk_034, 0.0f, 0.1f, 5.0f, 0.01f);
@@ -986,7 +986,7 @@ void func_demo_8004B368(Player* player) {
player->camEye.y += ((player->camAt.y + 500.0f) - player->camEye.y) * 0.01f;
player->camEye.z += ((D_ctx_80178448 + (2000.0f * D_ctx_80177950)) - player->camEye.z) * 0.01f;
if (player->timer_1FC >= 0x1A) {
if (player->timer_1FC > 25) {
D_ctx_80177A48[2] += 1.5f * player->unk_004;
Math_SmoothStepToF(&player->unk_0EC, (player->unk_004 * (-450.0f)) * D_ctx_80177950, 0.2f, 20.0f, 0.1f);
} else {
@@ -1014,8 +1014,8 @@ void func_demo_8004B368(Player* player) {
if (player->timer_1F8 == 0) {
player->unk_1D0 = 0;
player->timer_1F8 = 0x78;
player->timer_1FC = 0x14;
player->timer_1F8 = 120;
player->timer_1FC = 20;
D_ctx_80177A48[0] = 0.001f;
gCsCamEyeX = player->camEye.x;
gCsCamEyeY = player->camEye.y;
@@ -1066,7 +1066,7 @@ void func_demo_8004B368(Player* player) {
}
if (player->timer_1F8 == 0) {
player->unk_1D0 = 1;
player->timer_1F8 = 0x96;
player->timer_1F8 = 150;
player->wings.unk_10 = 0.0f;
player->wings.unk_08 = 0.0f;
player->wings.unk_0C = 0.0f;
@@ -1092,19 +1092,19 @@ void func_demo_8004B368(Player* player) {
Math_SmoothStepToF(&player->unk_0E4, 20.0f, 0.1f, 0.2f, 0.01f);
Math_SmoothStepToF(&player->pos.x, player->camEye.x, 0.1f, 2.0f, 0.0f);
if (player->timer_1F8 < 0x6F) {
if (player->timer_1F8 <= 110) {
Math_SmoothStepToF(&player->unk_0EC, player->unk_004 * 360.0f, 0.1f, 2.5f, 0.0f);
} else {
Math_SmoothStepToF(&player->unk_0EC, player->unk_004 * 180.0f, 0.1f, 2.5f, 0.0f);
}
if ((180.0f - fabsf(player->unk_0EC)) <= 3.0f) {
D_80161A88 = 1;
D_ctx_80161A88 = 1;
}
if (player->timer_1F8 == 0) {
player->timer_1F8 = 0xC8;
player->timer_1FC = 0x1F4;
player->timer_1F8 = 200;
player->timer_1FC = 500;
player->unk_1D0 = 2;
player->unk_000 = (player->unk_004 = (player->unk_008 = (D_ctx_80178418 = 0.0f)));
player->unk_0D0 = 0.0f;
@@ -1169,7 +1169,7 @@ void func_demo_8004B368(Player* player) {
if (gTeamShields[3] > 0) {
func_demo_8004A840(2);
}
D_80161A88 = 0;
D_ctx_80161A88 = 0;
}
Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * M_DTOR, 0);
@@ -1235,7 +1235,7 @@ void func_demo_8004B368(Player* player) {
break;
case 816:
if ((gTeamShields[1] == (-1)) || (gTeamShields[1] == 0)) {
if ((gTeamShields[1] == -1) || (gTeamShields[1] == 0)) {
Radio_PlayMessage(gMsg_ID_20331, RCID_ROB64);
} else {
Radio_PlayMessage(gMsg_ID_2320, RCID_FALCO);
@@ -1249,7 +1249,7 @@ void func_demo_8004B368(Player* player) {
D_ctx_8017842C += 0.2f;
if (player->timer_1F8 == 0) {
player->unk_1D0 = 4;
player->timer_1F8 = 0x1E;
player->timer_1F8 = 30;
player->unk_000 = 0.0f;
player->unk_194 = 5.0f;
player->unk_190 = 5.0f;
@@ -1272,7 +1272,7 @@ void func_demo_8004B368(Player* player) {
D_ctx_80177A48[9] = player->vel.z;
player->unk_1D0 = 5;
player->unk_0D0 = 0.0f;
player->timer_1F8 = 0xA;
player->timer_1F8 = 10;
func_effect_80078E50(player->pos.x, player->pos.y, player->unk_138, 30.0f);
}
gCsCamAtX = player->pos.x;
@@ -1306,7 +1306,7 @@ void func_demo_8004B368(Player* player) {
case 1255:
player->unk_1D0 = 3;
player->timer_1F8 = 0xA;
player->timer_1F8 = 10;
func_play_800A6028(player->sfxSource, 0x09000002U);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 50);
@@ -1403,7 +1403,7 @@ void func_demo_8004C930(Player* player) {
func_play_800AA800(player);
} else {
if (gCsFrameCount == 170) {
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
}
func_demo_8004B368(player);
func_play_800AA800(player);
@@ -1464,9 +1464,9 @@ void func_demo_8004CCC0(Player* player) {
switch (player->unk_1D0) {
case 0:
if (player->unk_19C != 0) {
player->timer_1F8 = 0xA;
player->timer_1F8 = 10;
} else {
player->timer_1F8 = 0x1E;
player->timer_1F8 = 30;
}
player->unk_1D0 = 1;
if (player->unk_4D8 > 180.0f) {
@@ -1478,9 +1478,9 @@ void func_demo_8004CCC0(Player* player) {
if (player->timer_1F8 == 0) {
player->unk_1D0 = 2;
if (player->unk_19C != 0) {
player->timer_1F8 = 0x3C;
player->timer_1F8 = 60;
} else {
player->timer_1F8 = 0x50;
player->timer_1F8 = 80;
}
}
player->camEye.x += player->vel.x * 0.2f;
@@ -1614,8 +1614,8 @@ void func_demo_8004D440(Player* player) {
Audio_KillSfxBySourceAndId(player->sfxSource, 0x0900C010U);
func_play_800A5FA0(player->sfxSource, 0x0903F004U, player->num);
player->state_1C8 = PLAYERSTATE_1C8_6;
player->timer_1F8 = 0x46;
player->timer_224 = 0x14;
player->timer_1F8 = 70;
player->timer_224 = 20;
D_ctx_8017837C = 7;
if (player->unk_1D4 != 0) {
@@ -1658,17 +1658,17 @@ void func_demo_8004D440(Player* player) {
if (D_ctx_801778A4 == D_ctx_80177DB8[player->unk_288 - 1]) {
player->unk_288 = -1;
if (player->unk_284 == 0) {
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138, 3.0f, 0x3E8);
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138, 3.0f, 1000);
}
}
}
if (gBombCount[gPlayerNum] != 0) {
gBombCount[gPlayerNum] = 0;
func_demo_8004D3D4(player, 0x147, &gItems[1]);
func_demo_8004D3D4(player, OBJ_ITEM_BOMB, &gItems[1]);
}
if (gLaserStrength[gPlayerNum] != 0) {
gLaserStrength[gPlayerNum] = 0;
func_demo_8004D3D4(player, 0x142, &gItems[0]);
func_demo_8004D3D4(player, OBJ_ITEM_LASERS, &gItems[0]);
}
}
}
@@ -1677,10 +1677,10 @@ void func_demo_8004D738(Player* player) {
player->pos.y += 30.0f;
func_effect_8007D0E0(player->pos.x, player->pos.y, player->unk_138, 6.0f);
if (gCamCount == 1) {
func_effect_8007BFFC(player->pos.x, player->pos.y, player->unk_138, 0.0f, 0.0f, 0.0f, 3.0f, 0x50);
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138, 3.0f, 0x320);
func_effect_8007BFFC(player->pos.x, player->pos.y, player->unk_138, 0.0f, 0.0f, 0.0f, 3.0f, 80);
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138, 3.0f, 800);
} else {
func_effect_8007BFFC(player->pos.x, player->pos.y, player->unk_138, 0.0f, 0.0f, 0.0f, 3.0f, 0xA);
func_effect_8007BFFC(player->pos.x, player->pos.y, player->unk_138, 0.0f, 0.0f, 0.0f, 3.0f, 10);
}
func_demo_8004D440(player);
}
@@ -1750,8 +1750,7 @@ void func_demo_8004D828(Player* player) {
(player->timer_1F8 == 0)) {
if (gCamCount != 4) {
if (player->unk_284 == 0) {
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138 - (2.0f * player->vel.z), 3.0f,
0x50);
func_effect_8007C688(player->pos.x, player->pos.y, player->unk_138 - (2.0f * player->vel.z), 3.0f, 80);
}
if (player->pos.y < player->unk_0A4) {
func_enmy_80062C38(player->pos.x, player->pos.z);
@@ -1768,7 +1767,7 @@ void func_demo_8004D828(Player* player) {
}
func_effect_8007D0E0(player->pos.x, player->pos.y, player->unk_138, 5.0f);
func_effect_8007BFFC(player->pos.x, player->pos.y, player->unk_138, player->vel.x, 0.0f, player->vel.z, 5.0f,
0x14);
20);
func_demo_8004D440(player);
}
Math_SmoothStepToF(&player->unk_034, 0.0f, 0.05f, 5.0f, 0.00001f);
@@ -1858,13 +1857,13 @@ void func_demo_8004DEF8(Player* player) {
(player->timer_1F8 == 0)) {
if (player->pos.y < player->unk_0A4) {
func_effect_8007C688(player->pos.x, gGroundLevel + 20.0f, player->unk_138 - (2.0f * player->vel.z), 3.0f,
0x320);
800);
func_enmy_80062C38(player->pos.x, player->pos.z);
}
func_effect_8007D0E0(player->pos.x, player->pos.y - (2.0f * player->vel.y),
player->unk_138 - (2.0f * player->vel.z), 6.0f);
func_effect_8007BFFC(player->pos.x, player->pos.y - player->vel.y, player->unk_138 - (2.0f * player->vel.z),
0.0f, 0.0f, 0.0f, 3.0f, 0x14);
0.0f, 0.0f, 0.0f, 3.0f, 20);
if (gLevelType == LEVELTYPE_PLANET) {
for (i = 0; i < 2; i++) {
func_play_800A69F8(2, player->pos.x, player->pos.y, player->unk_138);
@@ -1883,14 +1882,14 @@ void func_demo_8004DEF8(Player* player) {
player->unk_034 += 10.0f;
}
if ((D_80161A88 == 2) && (player->pos.y <= player->unk_0A4)) {
if ((D_ctx_80161A88 == 2) && (player->pos.y <= player->unk_0A4)) {
func_effect_8007D9DC(player->pos.x, gGroundLevel + 2.0f, player->unk_138, 3.0f, 20.0f, 0);
func_effect_8007ADF4(player->pos.x, gGroundLevel, player->unk_138, 0.1f, 2.0f);
}
}
void func_demo_8004E3D8(Player* player) {
player->unk_228 = 0;
player->flags_228 = 0;
player->unk_280 = 0;
if (gGameFrameCount & 1) {
@@ -1947,7 +1946,7 @@ void func_demo_8004E4D4(Actor* actor) {
case 1:
actor->state = 2;
actor->timer_0BC = 0x32;
actor->timer_0BC = 50;
actor->fwork[9] = 2.0f;
AUDIO_PLAY_SFX(0x09000002U, actor->sfxSource, 0);
actor->fwork[29] = 5.0f;
@@ -1968,9 +1967,9 @@ void func_demo_8004E4D4(Actor* actor) {
break;
case 10:
actor->state = 0xB;
actor->timer_0BC = 0x96;
actor->timer_0BE = 0x28;
actor->state = 11;
actor->timer_0BC = 150;
actor->timer_0BE = 40;
AUDIO_PLAY_SFX(0x09000002U, actor->sfxSource, 0);
actor->fwork[29] = 5.0f;
/* fallthrough */
@@ -2103,10 +2102,10 @@ void func_demo_8004EBD0(Actor* actor) {
case 2:
if (actor->timer_0BC == 110) {
gPlayer[0].timer_1F8 = 0x2710;
gPlayer[0].timer_1F8 = 10000;
}
if (actor->timer_0BC == 260) {
gPlayer[0].timer_1FC = 0x2710;
gPlayer[0].timer_1FC = 10000;
}
if (actor->timer_0BC == 0) {
actor->state++;
@@ -2182,7 +2181,7 @@ void func_demo_8004F05C(Actor* actor) {
case 1:
actor->state = 2;
actor->timer_0BC = 0x64;
actor->timer_0BC = 100;
AUDIO_PLAY_SFX(0x09000002U, actor->sfxSource, 0U);
actor->fwork[29] = 5.0f;
@@ -2228,7 +2227,7 @@ void func_demo_8004F05C(Actor* actor) {
if (actor->timer_0BC == 0) {
if (actor->obj.pos.x >= -3500.0f) {
if (actor->obj.pos.z <= 3000.0f) {
if ((fabsf(actor->obj.pos.y) <= 400.0f) && (gCsFrameCount < 0x12D)) {
if ((fabsf(actor->obj.pos.y) <= 400.0f) && (gCsFrameCount <= 300)) {
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f);
}
}
@@ -2267,7 +2266,7 @@ void func_demo_8004F05C(Actor* actor) {
case 0:
actor->obj.rot.z = actor->unk_0F4.z;
if (actor->unk_0B6 == 0xA) {
if (actor->unk_0B6 == 10) {
actor->obj.pos.z = gPlayer[0].camEye.z + 12000.0f;
}
break;
@@ -2395,12 +2394,12 @@ void func_demo_8004F8AC(Actor* actor) {
break;
case LEVEL_FORTUNA:
if (actor->unk_0B6 == 0xB) {
if (actor->unk_0B6 == 11) {
switch (actor->state) {
case 0:
if (gCsFrameCount == 0x64) {
if (gCsFrameCount == 100) {
actor->state = 1;
actor->timer_0BC = 0x32;
actor->timer_0BC = 50;
actor->iwork[0] = 255;
AUDIO_PLAY_SFX(0x2902F026U, actor->sfxSource, 0);
}
@@ -2410,9 +2409,8 @@ void func_demo_8004F8AC(Actor* actor) {
Math_SmoothStepToF(&actor->scale, 0.5f, 0.03f, 0.01f, 0.0f);
D_ctx_80178348 = D_ctx_80178340 = D_ctx_80178350 = D_ctx_80178354 = 0;
if ((actor->timer_0BC == 0x2B) || (actor->timer_0BC == 0x2E) ||
(actor->timer_0BC == 0x31)) {
D_ctx_80178340 = 0xC0;
if ((actor->timer_0BC == 43) || (actor->timer_0BC == 46) || (actor->timer_0BC == 49)) {
D_ctx_80178340 = 192;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
}
@@ -2428,7 +2426,7 @@ void func_demo_8004F8AC(Actor* actor) {
D_ctx_80178378 = gActors[0].obj.pos.z - 70.0f;
D_ctx_80178360 = 255;
D_ctx_80178364 = 255;
D_ctx_80178368 = 0x50;
D_ctx_80178368 = 80;
break;
}
}
@@ -2543,7 +2541,7 @@ void func_demo_8004FEC0(Actor* actor) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, actor->unk_046);
gSPDisplayList(gMasterDisp++, D_ENMY_PLANET_40018A0);
if (actor->unk_046 >= 0x33) {
if (actor->unk_046 > 50) {
func_edisplay_8005ADAC(actor);
}
break;
@@ -2859,7 +2857,7 @@ void func_demo_8004FEC0(Actor* actor) {
RCP_SetupDL_49();
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, actor->iwork[0]);
gDPSetEnvColor(gMasterDisp++, 255, 0xC0, 128, 255);
gDPSetEnvColor(gMasterDisp++, 255, 192, 128, 255);
Matrix_RotateY(
gGfxMatrix,
+65 -65
View File
@@ -32,7 +32,7 @@ void func_display_80051B30(void) {
Vec3f sp68;
Vec3f sp5C;
if ((D_ctx_80177854 == 0x64) || (D_display_800CA234 == NULL)) {
if ((D_ctx_80177854 == 100) || (D_display_800CA234 == NULL)) {
return;
}
if ((D_display_800CA234->obj.status != OBJ_ACTIVE) || (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_3)) {
@@ -60,13 +60,13 @@ void func_display_80051B30(void) {
}
RCP_SetupDL(&gMasterDisp, 0xC);
switch (D_display_800CA234->aiType) {
case 3:
case AI360_PEPPY:
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 30, 0, 255);
break;
case 2:
case AI360_SLIPPY:
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 00, 179, 67, 255);
break;
case 1:
case AI360_FALCO:
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 30, 30, 255, 255);
break;
}
@@ -130,11 +130,11 @@ bool func_display_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot,
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
if (player->num == 1) {
if (limbIndex == 0x10) {
if (limbIndex == 16) {
rot->y += player->unk_154;
rot->y -= player->unk_180;
}
if (limbIndex == 0x16) {
if (limbIndex == 22) {
rot->y += -player->unk_158 * 0.8f;
rot->x -= player->unk_15C;
}
@@ -155,7 +155,7 @@ bool func_display_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot,
rot->y += player->unk_168;
}
} else {
if (limbIndex == 0xB) {
if (limbIndex == 11) {
if (player->num == 0) {
rot->y += -player->unk_154 * 0.8f;
}
@@ -167,11 +167,11 @@ bool func_display_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot,
rot->y += player->unk_154 * 0.8f;
}
}
if (limbIndex == 0x10) {
if (limbIndex == 16) {
rot->y += -player->unk_158 * 0.8f;
rot->x -= player->unk_15C;
}
if ((limbIndex == 0x11) && (player->num != 2)) {
if ((limbIndex == 17) && (player->num != 2)) {
rot->y += player->unk_180;
rot->x -= player->unk_180;
rot->y += -player->unk_158 * 0.2f;
@@ -185,7 +185,7 @@ void func_display_800523A8(s32 limbIndex, Vec3f* rot, void* data) {
Vec3f sp1C;
Player* player = (Player*) data;
if (limbIndex == 0xB) {
if (limbIndex == 11) {
sp1C.x = 3.0f;
sp1C.y = 1.0f;
sp1C.z = -28.0f;
@@ -197,7 +197,7 @@ void func_display_80052420(s32 limbIndex, Vec3f* rot, void* data) {
Vec3f sp1C;
Player* player = (Player*) data;
if (limbIndex == 0x10) {
if (limbIndex == 16) {
sp1C.x = 13.0f;
sp1C.y = 2.0f;
sp1C.z = 28.0f;
@@ -209,7 +209,7 @@ void func_display_80052498(s32 limbIndex, Vec3f* rot, void* data) {
Vec3f sp1C;
Player* player = (Player*) data;
if (limbIndex == 0xB) {
if (limbIndex == 11) {
sp1C.x = 0.0f;
sp1C.y = 2.0f;
sp1C.z = 29.0f;
@@ -221,7 +221,7 @@ void func_display_8005250C(s32 limbIndex, Vec3f* rot, void* data) {
Vec3f sp1C;
Player* player = (Player*) data;
if (limbIndex == 0xB) {
if (limbIndex == 11) {
sp1C.x = 19.0f;
sp1C.y = 1.0f;
sp1C.z = 32.0f;
@@ -711,7 +711,7 @@ void func_display_80054300(Player* player) {
if (player->unk_068 > 30.0f) {
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
}
if ((D_80161A88 == 2) && (player->unk_068 < 10.0f)) {
if ((D_ctx_80161A88 == 2) && (player->unk_068 < 10.0f)) {
player->unk_23C = 90;
} else {
player->unk_23C = 180;
@@ -853,8 +853,8 @@ void func_display_80054CA4(Player* player) {
gDPSetEnvColor(gMasterDisp++, 255, 0, 255, (s32) D_ctx_80177AB8[player->num]);
gSPDisplayList(gMasterDisp++, D_101CD70);
Matrix_Pop(&gGfxMatrix);
Texture_Scroll(D_101D070, 0x20, 0x20, 3);
Texture_Scroll(D_101D070, 0x20, 0x20, 3);
Texture_Scroll(D_101D070, 32, 32, 3);
Texture_Scroll(D_101D070, 32, 32, 3);
}
}
@@ -982,7 +982,7 @@ void func_display_80054E80(Player* player) {
void func_display_80055788(Player* player) {
f32 sp54;
if (gChargeTimers[player->num] >= 0xB) {
if (gChargeTimers[player->num] >= 11) {
RCP_SetupDL(&gMasterDisp, 0x43);
Matrix_Push(&gGfxMatrix);
sp54 = gChargeTimers[player->num] / 20.0f;
@@ -1188,7 +1188,7 @@ void func_display_800564C0(Player* player, s32 arg1) {
Matrix_Push(&gGfxMatrix);
if (player->form == FORM_LANDMASTER) {
if (player->unk_1D4 != 0) {
Matrix_Translate(gGfxMatrix, 0.0f, D_ctx_8017847C, 0.0f, 1);
Matrix_Translate(gGfxMatrix, 0.0f, gCameraShakeY, 0.0f, 1);
}
Matrix_Translate(gGfxMatrix, player->pos.x, player->pos.y + player->unk_18C + 30.0f,
player->unk_138 + player->unk_144, 1);
@@ -1228,7 +1228,7 @@ void func_display_800564C0(Player* player, s32 arg1) {
return;
}
Matrix_Pop(&gGfxMatrix);
Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y + D_ctx_8017847C,
Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y + gCameraShakeY,
player->unk_138 + player->unk_144, 0);
Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * M_DTOR, 1);
Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_134) * M_DTOR), 1);
@@ -1413,7 +1413,7 @@ void func_display_80057504(void) {
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, D_display_80161578[i].x, D_display_80161578[i].y, D_display_80161578[i].z,
1);
if ((D_ctx_80177854 != 0x64) && (i == gPlayerNum)) {
if ((D_ctx_80177854 != 100) && (i == gPlayerNum)) {
Math_SmoothStepToF(&D_display_801615A8[i], 0.0f, 0.5f, 20.0f, 0);
Math_SmoothStepToF(&D_display_801615B8[i], 1.0, 0.5f, 0.2f, 0);
}
@@ -1466,12 +1466,12 @@ void func_display_800578C4(Player* player) {
case 0:
Math_SmoothStepToAngle(&player->wings.unk_30, 0.0f, 0.2f, 3.0f, 0.0f);
Math_SmoothStepToAngle(&player->wings.unk_34, 0.0f, 0.2f, 3.0f, 0.0f);
D_ctx_801779D8.x = player->camEye.x;
D_ctx_801779D8.y = player->camEye.y;
D_ctx_801779D8.z = player->camEye.z;
D_ctx_801779E8.x = player->camAt.x;
D_ctx_801779E8.y = player->camAt.y;
D_ctx_801779E8.z = player->camAt.z;
gPlayerCamEye.x = player->camEye.x;
gPlayerCamEye.y = player->camEye.y;
gPlayerCamEye.z = player->camEye.z;
gPlayerCamAt.x = player->camAt.x;
gPlayerCamAt.y = player->camAt.y;
gPlayerCamAt.z = player->camAt.z;
break;
case 1:
case 2:
@@ -1500,12 +1500,12 @@ void func_display_800578C4(Player* player) {
Matrix_RotateX(gCalcMatrix, (player->unk_0E8 + D_display_800CA380) * M_DTOR, 0);
Matrix_RotateY(gCalcMatrix, (player->unk_0E4 + D_display_800CA384) * M_DTOR, 1);
Matrix_MultVec3f(gCalcMatrix, &sp4C, &sp40);
D_ctx_801779D8.x = player->pos.x + sp40.x;
D_ctx_801779D8.y = player->pos.y + sp40.y + 20.0f;
D_ctx_801779D8.z = player->unk_138 + sp40.z;
D_ctx_801779E8.x = (SIN_DEG(gGameFrameCount * 3.0f) * 3.0f) + player->pos.x;
D_ctx_801779E8.y = (COS_DEG(gGameFrameCount * 4.0f) * 3.0f) + player->pos.y;
D_ctx_801779E8.z = (SIN_DEG(gGameFrameCount * 3.5f) * 3.0f) + player->unk_138;
gPlayerCamEye.x = player->pos.x + sp40.x;
gPlayerCamEye.y = player->pos.y + sp40.y + 20.0f;
gPlayerCamEye.z = player->unk_138 + sp40.z;
gPlayerCamAt.x = (SIN_DEG(gGameFrameCount * 3.0f) * 3.0f) + player->pos.x;
gPlayerCamAt.y = (COS_DEG(gGameFrameCount * 4.0f) * 3.0f) + player->pos.y;
gPlayerCamAt.z = (SIN_DEG(gGameFrameCount * 3.5f) * 3.0f) + player->unk_138;
break;
}
}
@@ -1545,35 +1545,35 @@ void func_display_80057D00(void) {
sp78.x = player->camEye.x - player->pos.x;
sp78.y = player->camEye.y - player->pos.y;
sp78.z = player->camEye.z - (player->unk_138 + player->unk_144);
Matrix_MultVec3f(gCalcMatrix, &sp78, &D_ctx_801779D8);
D_ctx_801779D8.x += player->pos.x;
D_ctx_801779D8.y += player->pos.y;
D_ctx_801779D8.z += player->unk_138 + player->unk_144;
Matrix_MultVec3f(gCalcMatrix, &sp78, &gPlayerCamEye);
gPlayerCamEye.x += player->pos.x;
gPlayerCamEye.y += player->pos.y;
gPlayerCamEye.z += player->unk_138 + player->unk_144;
sp78.x = player->camAt.x - player->pos.x;
sp78.y = player->camAt.y - player->pos.y;
sp78.z = player->camAt.z - (player->unk_138 + player->unk_144);
Matrix_MultVec3f(gCalcMatrix, &sp78, &D_ctx_801779E8);
D_ctx_801779E8.x += player->pos.x;
D_ctx_801779E8.y += player->pos.y;
D_ctx_801779E8.z += player->unk_138 + player->unk_144;
Matrix_MultVec3f(gCalcMatrix, &sp78, &gPlayerCamAt);
gPlayerCamAt.x += player->pos.x;
gPlayerCamAt.y += player->pos.y;
gPlayerCamAt.z += player->unk_138 + player->unk_144;
if ((player->unk_238 != 0) && (player->unk_110 > 5.0f)) {
D_ctx_801779E8.x += SIN_DEG(gGameFrameCount * 150.0f) * player->unk_110 * 0.2f;
gPlayerCamAt.x += SIN_DEG(gGameFrameCount * 150.0f) * player->unk_110 * 0.2f;
}
} else if (player->state_1C8 == PLAYERSTATE_1C8_7) {
func_display_800578C4(player);
} else {
D_ctx_801779D8.x = player->camEye.x;
D_ctx_801779D8.y = player->camEye.y;
D_ctx_801779D8.z = player->camEye.z;
D_ctx_801779E8.x = player->camAt.x;
D_ctx_801779E8.y = player->camAt.y;
D_ctx_801779E8.z = player->camAt.z;
gPlayerCamEye.x = player->camEye.x;
gPlayerCamEye.y = player->camEye.y;
gPlayerCamEye.z = player->camEye.z;
gPlayerCamAt.x = player->camAt.x;
gPlayerCamAt.y = player->camAt.y;
gPlayerCamAt.z = player->camAt.z;
}
player->unk_058 = -Math_Atan2F(D_ctx_801779D8.x - D_ctx_801779E8.x, D_ctx_801779D8.z - D_ctx_801779E8.z);
player->unk_05C = -Math_Atan2F(D_ctx_801779D8.y - D_ctx_801779E8.y, sqrtf(SQ(D_ctx_801779D8.z - D_ctx_801779E8.z) +
SQ(D_ctx_801779D8.x - D_ctx_801779E8.x)));
player->unk_058 = -Math_Atan2F(gPlayerCamEye.x - gPlayerCamAt.x, gPlayerCamEye.z - gPlayerCamAt.z);
player->unk_05C = -Math_Atan2F(gPlayerCamEye.y - gPlayerCamAt.y,
sqrtf(SQ(gPlayerCamEye.z - gPlayerCamAt.z) + SQ(gPlayerCamEye.x - gPlayerCamAt.x)));
Matrix_RotateY(gCalcMatrix, -player->unk_058, 0);
Matrix_RotateX(gCalcMatrix, player->unk_05C, 1);
Matrix_RotateZ(gCalcMatrix, -player->unk_034 * M_DTOR, 1);
@@ -1583,25 +1583,25 @@ void func_display_80057D00(void) {
Matrix_MultVec3f(gCalcMatrix, &sp78, &sp6C);
if (D_ctx_80178410 != 0) {
D_ctx_80178428 = DEG_TO_RAD(gPlayer[0].unk_034);
func_play_800B6F50(D_ctx_801779D8.x, D_ctx_801779D8.y, D_ctx_801779D8.z, D_ctx_801779E8.x, D_ctx_801779E8.y,
D_ctx_801779E8.z);
func_play_800B6F50(gPlayerCamEye.x, gPlayerCamEye.y, gPlayerCamEye.z, gPlayerCamAt.x, gPlayerCamAt.y,
gPlayerCamAt.z);
func_bg_8003DAF0();
}
func_bg_8003E1E8();
func_bg_80040450();
Matrix_Push(&gGfxMatrix);
Matrix_LookAt(gGfxMatrix, D_ctx_801779D8.x, D_ctx_801779D8.y, D_ctx_801779D8.z, D_ctx_801779E8.x, D_ctx_801779E8.y,
D_ctx_801779E8.z, sp6C.x, sp6C.y, sp6C.z, 1);
Matrix_LookAt(gGfxMatrix, gPlayerCamEye.x, gPlayerCamEye.y, gPlayerCamEye.z, gPlayerCamAt.x, gPlayerCamAt.y,
gPlayerCamAt.z, sp6C.x, sp6C.y, sp6C.z, 1);
if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) {
if ((gCurrentLevel == LEVEL_TITANIA) &&
((gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2) || (gPlayer[0].unk_19C != 0))) {
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 0.0f, D_ctx_8017847C, 0.0f, 1);
Matrix_Translate(gGfxMatrix, 0.0f, gCameraShakeY, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
Ground_801B58AC(&gMasterDisp, D_ctx_80177CC8);
D_ctx_80177CC8 = 0.0f;
Matrix_Pop(&gGfxMatrix);
} else if (D_80161A88 != 2) {
} else if (D_ctx_80161A88 != 2) {
D_bg_8015F964 = 0;
func_bg_80040CE4();
}
@@ -1616,7 +1616,7 @@ void func_display_80057D00(void) {
func_display_800564C0(opponent, 0);
func_display_80057814(opponent);
}
if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
if ((D_ctx_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
Lights_SetOneLight(&gMasterDisp, gLight2x, -1 * gLight2y, gLight2z, gLight2R, gLight2G, gLight2B, gAmbientR,
gAmbientG, gAmbientB);
Matrix_Push(&gGfxMatrix);
@@ -1631,11 +1631,11 @@ void func_display_80057D00(void) {
}
Lights_SetOneLight(&gMasterDisp, gLight1x, gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG,
gAmbientB);
func_edisplay_80060714(1);
Object_Draw(1);
TexturedLine_Draw();
D_display_80161410 = 1;
func_beam_8003DA0C();
if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
if ((D_ctx_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
Matrix_Push(&gGfxMatrix);
Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1);
D_display_80161410 = -1;
@@ -1643,7 +1643,7 @@ void func_display_80057D00(void) {
Matrix_Pop(&gGfxMatrix);
}
D_display_80161410 = -1;
if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
if ((D_ctx_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
Matrix_Push(&gGfxMatrix);
Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1);
for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) {
@@ -1655,17 +1655,17 @@ void func_display_80057D00(void) {
}
}
if (gCurrentLevel == LEVEL_AQUAS) {
func_edisplay_8006089C(0);
Effect_Draw(0);
}
if ((D_80161A88 == 2) || (D_ctx_80177AC8 != 0)) {
if ((D_ctx_80161A88 == 2) || (D_ctx_80177AC8 != 0)) {
D_bg_8015F964 = 1;
func_edisplay_8006089C(1);
Effect_Draw(1);
func_bg_80040CE4();
}
if ((gCurrentLevel != LEVEL_AQUAS) &&
(((gCurrentLevel != LEVEL_CORNERIA) && (gCurrentLevel != LEVEL_VENOM_ANDROSS)) ||
((gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)))) {
func_edisplay_8006089C(0);
Effect_Draw(0);
}
D_display_80161410 = 1;
for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) {
@@ -1680,7 +1680,7 @@ void func_display_80057D00(void) {
}
if (((gCurrentLevel == LEVEL_CORNERIA) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) &&
((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2))) {
func_edisplay_8006089C(0);
Effect_Draw(0);
}
BonusText_DrawAll();
Matrix_Pop(&gGfxMatrix);
+29 -29
View File
@@ -131,10 +131,10 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_80_36, */ {(void*) func_edisplay_80059B20, 1, (ObjectFunc) func_enmy_800652CC, D_TI_60066E0, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_37, */ {(void*) func_edisplay_80059B20, 1, (ObjectFunc) func_enmy_800652CC, D_TI_600672C, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_38, */ {(void*) func_edisplay_80059B20, 1, (ObjectFunc) func_enmy_800652CC, D_TI_6006778, 100.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_39, */ {(void*) func_edisplay_80059AEC, 1, (ObjectFunc) func_enmy2_8006D350, D_edata_800CBF34, 6000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_39, */ {(void*) Obj39_Draw, 1, (ObjectFunc) Obj39_Update, D_edata_800CBF34, 6000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_40, */ {(void*) func_edisplay_80059F68, 1, (ObjectFunc) func_enmy_80066D5C, D_CO_603E4A4, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_41, */ {(void*) func_edisplay_80059FDC, 1, (ObjectFunc) func_enmy_80066EA8, D_CO_603E4DC, 300.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_42, */ {(void*) func_edisplay_80059BBC, 1, (ObjectFunc) func_enmy2_8006B95C, D_CO_603E514, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_42, */ {(void*) Obj42_Draw, 1, (ObjectFunc) Obj42_Update, D_CO_603E514, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_43, */ {(void*) D_ZO_6024AC0, 0, (ObjectFunc) NULL, D_ZO_602B9EC, 200.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_44, */ {(void*) D_ZO_600F560, 0, (ObjectFunc) NULL, D_ZO_602BA20, 1500.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_45, */ {(void*) D_ZO_600EC90, 0, (ObjectFunc) NULL, D_ZO_602BAE4, 1500.0f, 0, 0, 40, 0, 0.0f, 0 },
@@ -146,7 +146,7 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_80_51, */ {(void*) D_VE1_6006F50, 0, (ObjectFunc) NULL, D_VE1_601B584, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_52, */ {(void*) D_VE1_6005780, 0, (ObjectFunc) Venom1_80193540, D_VE1_601B5F4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_53, */ {(void*) D_AQ_6003610, 0, (ObjectFunc) NULL, D_VE1_601B644, 2500.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_54, */ {(void*) D_CO_6000E00, 0, (ObjectFunc) func_enmy2_8006AA98, D_CO_603E0EC, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_54, */ {(void*) D_CO_6000E00, 0, (ObjectFunc) Obj54_Update, D_CO_603E0EC, 1000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_55, */ {(void*) D_CO_6013B50, 0, (ObjectFunc) NULL, D_CO_603E88C, 1000.0f, 0, 0, 41, 0, 0.0f, 0 },
/* OBJ_80_56, */ {(void*) Corneria_8018F31C, 2, (ObjectFunc) Corneria_8018F044, D_CO_603E8A8, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_80_57, */ {(void*) Titania_8018F8B8, 1, (ObjectFunc) Titania_8018F4D8, D_TI_6006BF0, 800.0f, 0, 0, 40, 0, 0.0f, 0 },
@@ -203,7 +203,7 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_80_108 */ {(void*) D_SY_60102C0, 0, (ObjectFunc) NULL, D_SY_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
/* OBJ_80_109 */ {(void*) D_SY_60036A0, 0, (ObjectFunc) SectorY_801A4E44, D_SY_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
/* OBJ_80_110 */ {(void*) D_SY_6005360, 0, (ObjectFunc) NULL, D_SY_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
/* OBJ_80_111 */ {(void*) func_enmy2_80074F90, 1, (ObjectFunc) NULL, D_edata_800CBF34, 2000.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_80_111 */ {(void*) Obj111_Draw, 1, (ObjectFunc) NULL, D_edata_800CBF34, 2000.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_80_112 */ {(void*) D_SY_600F6C0, 0, (ObjectFunc) SectorY_801A52B8, D_SY_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 },
/* OBJ_80_113 */ {(void*) D_SY_601B610, 0, (ObjectFunc) NULL, D_edata_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_80_114 */ {(void*) D_SY_601C6A0, 0, (ObjectFunc) NULL, D_edata_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 },
@@ -281,22 +281,22 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_ACTOR_186 */ {(void*) func_edisplay_8005B7CC, 1, (ObjectFunc) Meteo_8018795C, D_ME_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_187 */ {(void*) D_ME_6018450, 0, (ObjectFunc) Meteo_801877C4, D_ME_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_188 */ {(void*) Aquas_801BEC74, 1, (ObjectFunc) Aquas_801BEC68, D_AQ_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_189 */ {(void*) func_edisplay_8005A094, 1, (ObjectFunc) func_enmy2_8006C008, D_edata_800CBF34, 0.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_189 */ {(void*) Actor189_Draw, 1, (ObjectFunc) Actor189_Update, D_edata_800CBF34, 0.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_190 */ {(void*) func_edisplay_8005B848, 1, (ObjectFunc) func_enmy_800656D4, D_edata_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
/* OBJ_ACTOR_191 */ {(void*) func_edisplay_8005B848, 1, (ObjectFunc) func_enmy_800656D4, D_edata_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 },
/* OBJ_ACTOR_192 */ {(void*) func_edisplay_8005B9A4, 1, (ObjectFunc) func_enmy_8006654C, D_CO_603E54C, 200.0f, 0, 1, 39, 0, 50.0f, 1 },
/* OBJ_ACTOR_193 */ {(void*) func_edisplay_8005BA30, 1, (ObjectFunc) func_enmy_800669A0, D_CO_603E598, 100.0f, 0, 1, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_194 */ {(void*) func_enmy2_8006B74C, 1, (ObjectFunc) func_enmy2_8006B094, D_edata_800CC000, 200.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_194 */ {(void*) Actor194_Draw, 1, (ObjectFunc) Actor194_Update, D_edata_800CC000, 200.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_195 */ {(void*) func_demo_8004FEC0, 1, (ObjectFunc) func_demo_8004F8AC, D_edata_800CBF34, 20000.0f, 0, 1, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_196 */ {(void*) func_edisplay_80059BF0, 1, (ObjectFunc) func_enmy2_8006BB78, D_CO_603E5B4, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_197 */ {(void*) func_360_80035448, 1, (ObjectFunc) func_360_800319AC, D_edata_800CC038, 20000.0f, 0, 1, 39, 1, 1.0f, 1 },
/* OBJ_ACTOR_198 */ {(void*) func_360_80035448, 1, (ObjectFunc) func_hud_80092EC0, D_edata_800CC01C, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
/* OBJ_ACTOR_196 */ {(void*) Actor196_Draw, 1, (ObjectFunc) Actor196_Update, D_CO_603E5B4, 200.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_ALLRANGE */ {(void*) ActorAllRange_Draw, 1, (ObjectFunc) ActorAllRange_Update, D_edata_800CC038, 20000.0f, 0, 1, 39, 1, 1.0f, 1 },
/* OBJ_ACTOR_TEAM_BOSS */ {(void*) ActorAllRange_Draw, 1, (ObjectFunc) ActorTeamBoss_Update, D_edata_800CC01C, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
/* OBJ_ACTOR_199 */ {(void*) Andross_80188448, 1, (ObjectFunc) Andross_801880E4, D_edata_800CBF34, 20000.0f, 0, 0, 39, 1, 0.0f, 0 },
/* OBJ_ACTOR_200 */ {(void*) func_enmy2_80074FF0, 1, (ObjectFunc) func_enmy2_80072594, D_edata_800CBF34, 2000.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_201 */ {(void*) func_edisplay_800598E8, 1, (ObjectFunc) func_enmy2_8006AC08, D_ME_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_202 */ {(void*) func_edisplay_80059A24, 1, (ObjectFunc) func_enmy2_8006AD18, D_ME_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 },
/* OBJ_ACTOR_203 */ {(void*) SectorX_8018F884, 1, (ObjectFunc) SectorX_8018F330, D_edata_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_204 */ {(void*) SectorY_801A4CB0, 1, (ObjectFunc) SectorY_801A3BD4, D_SY_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_EVENT */ {(void*) ActorEvent_Draw, 1, (ObjectFunc) ActorEvent_Update, D_edata_800CBF34, 2000.0f, 0, 1, 39, 0, 0.0f, 1 },
/* OBJ_ACTOR_201 */ {(void*) Actor201_Draw, 1, (ObjectFunc) Actor201_Update, D_ME_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_202 */ {(void*) Actor202_Draw, 1, (ObjectFunc) Actor202_Update, D_ME_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 },
/* OBJ_ACTOR_SLIPPY_SX */ {(void*) SectorX_8018F884, 1, (ObjectFunc) SectorX_8018F330, D_edata_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 0 },
/* OBJ_ACTOR_204 */ {(void*) SectorY_Actor204_Draw, 1, (ObjectFunc) SectorY_Actor204_Update, D_SY_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 },
/* OBJ_ACTOR_205 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_8019C778, D_MA_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
/* OBJ_ACTOR_206 */ {(void*) Macbeth_801A12C4, 1, (ObjectFunc) Macbeth_801AC438, D_MA_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
/* OBJ_ACTOR_207 */ {(void*) Macbeth_801AC294, 2, (ObjectFunc) Macbeth_801A7E7C, D_MA_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 },
@@ -326,10 +326,10 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_ACTOR_231 */ {(void*) Titania_8018BE84, 1, (ObjectFunc) Titania_8018B9D0, D_TI_6006858, 0.0f, 0, 0, 39, 1, 0.0f, 1 },
/* OBJ_ACTOR_232 */ {(void*) Titania_8018B6AC, 1, (ObjectFunc) Titania_8018B268, D_TI_6006890, 0.0f, 0, 0, 39, 1, 20.0f, 1 },
/* OBJ_ACTOR_233 */ {(void*) Titania_8018A1C0, 1, (ObjectFunc) Titania_80189CC8, D_TI_60068F0, 200.0f, 0, 0, 39, 1, 1.0f, 1 },
/* OBJ_ACTOR_234 */ {(void*) func_enmy2_80077218, 1, (ObjectFunc) func_enmy2_800771CC, D_edata_800CBF34, 2000.0f, 0, 0, 39, 0, 0.0f, 5 },
/* OBJ_ACTOR_234 */ {(void*) Actor234_Draw, 1, (ObjectFunc) Actor234_Update, D_edata_800CBF34, 2000.0f, 0, 0, 39, 0, 0.0f, 5 },
/* OBJ_ACTOR_235 */ {(void*) Zoness_80190430, 2, (ObjectFunc) Zoness_801904CC, D_ZO_602C294, 1000.0f, 0, 1, 40, 0, 1.0f, 1 },
/* OBJ_ACTOR_236 */ {(void*) Zoness_80190F08, 1, (ObjectFunc) Zoness_80190A00, D_ZO_602BC58, 5000.0f, 0, 0, 40, 0, 0.0f, 0 },
/* OBJ_ACTOR_237 */ {(void*) func_enmy2_8006A978, 1, (ObjectFunc) func_enmy2_8006A96C, D_edata_800CBF34, 200.0f, 0, 0, 40, 0, 0.0f, 2 },
/* OBJ_ACTOR_237 */ {(void*) Actor237_Draw, 1, (ObjectFunc) Actor237_Update, D_edata_800CBF34, 200.0f, 0, 0, 40, 0, 0.0f, 2 },
/* OBJ_ACTOR_238 */ {(void*) Zoness_801914C4, 2, (ObjectFunc) Zoness_80191010, D_edata_800CBE8C, 200.0f, 0, 1, 40, 0, 1.0f, 1 },
/* OBJ_ACTOR_239 */ {(void*) NULL, 1, (ObjectFunc) NULL, D_edata_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ACTOR_240 */ {(void*) Zoness_80191B4C, 1, (ObjectFunc) Zoness_80191680, D_edata_800CBE8C, 1500.0f, 0, 1, 40, 0, 20.0f, 0 },
@@ -383,7 +383,7 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_ACTOR_288 */ {(void*) NULL, 1, (ObjectFunc) Andross_801893B8, D_edata_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
/* OBJ_ACTOR_289 */ {(void*) func_edata_800596B0, 1, (ObjectFunc) Andross_80189470, D_edata_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 },
/* OBJ_ACTOR_290 */ {(void*) NULL, 1, (ObjectFunc) Andross_8018933C, D_edata_800CBF34, 1000.0f, 0, 0, 20, 0, 0.0f, 0 },
/* OBJ_ACTOR_291 */ {(void*) func_enmy_80067874, 1, (ObjectFunc) func_enmy_8006753C, D_edata_800CBEA8, 1000.0f, 0, 0, 0, 0, 1.0f, 0 },
/* OBJ_ACTOR_SUPPLIES */ {(void*) ActorSupplies_Draw, 1, (ObjectFunc) ActorSupplies_Update, D_edata_800CBEA8, 1000.0f, 0, 0, 0, 0, 1.0f, 0 },
/* OBJ_BOSS_292 */ {(void*) Corneria_8018AA74, 2, (ObjectFunc) Corneria_80189058, D_CO_603E620, 20000.0f, 0, 0, 40, 1, 0.0f, 10 },
/* OBJ_BOSS_293 */ {(void*) Corneria_8018ECAC, 1, (ObjectFunc) Corneria_8018C19C, D_CO_603E840, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_294 */ {(void*) Corneria_8018ED78, 1, (ObjectFunc) Corneria_8018DDAC, D_CO_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
@@ -391,8 +391,8 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_BOSS_296 */ {(void*) Corneria_8018EF90, 1, (ObjectFunc) Corneria_8018E76C, D_CO_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_297 */ {(void*) Meteo_8018BACC, 1, (ObjectFunc) Meteo_8018978C, D_ME_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_298 */ {(void*) Meteo_801887D0, 1, (ObjectFunc) Meteo_80188344, D_ME_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_299 */ {(void*) func_boss_80042FC4, 2, (ObjectFunc) func_boss_80042FB8, D_edata_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_300 */ {(void*) func_boss_80042FE8, 1, (ObjectFunc) func_boss_80042FDC, D_edata_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_299 */ {(void*) Boss299_Draw, 2, (ObjectFunc) Boss299_Update, D_edata_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_300 */ {(void*) Boss300_Draw, 1, (ObjectFunc) Boss300_Update, D_edata_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_301 */ {(void*) Aquas_801BEC5C, 1, (ObjectFunc) Aquas_801BEC50, D_AQ_6030B10, 0.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_A6 */ {(void*) Area6_8018C54C, 1, (ObjectFunc) Area6_80187944, D_A6_6028454, 2000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_303 */ {(void*) SectorX_80193434, 2, (ObjectFunc) SectorX_80190078, D_SX_6032550, 20000.0f, 0, 0, 20, 0, 0.0f, 10 },
@@ -414,12 +414,12 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_BOSS_319 */ {(void*) Venom1_801985E4, 1, (ObjectFunc) Venom1_80194398,D_VE1_8019A9B8, 3000.0f, 0, 0, 40, 1, 0.0f, 10 },
/* OBJ_BOSS_320 */ {(void*) Andross_801928C8, 2, (ObjectFunc) Andross_8018DBF0, D_ANDROSS_C038DC0, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_BOSS_321 */ {(void*) Andross_8018B8C0, 1, (ObjectFunc) Andross_80189B70, D_ANDROSS_C038F24, 10000.0f, 0, 0, 40, 0, 0.0f, 10 },
/* OBJ_ITEM_LASERS */ {(void*) func_edisplay_8005CC9C, 1, (ObjectFunc) func_enmy_80067F6C, D_edata_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_CHECKPOINT */ {(void*) func_edisplay_8005C5F0, 1, (ObjectFunc) func_enmy_80068914, D_edata_800CBF38, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_SILVER_RING */ {(void*) func_edisplay_8005C900, 1, (ObjectFunc) func_enmy_80068020, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_SILVER_STAR */ {(void*) func_edisplay_8005C9C0, 1, (ObjectFunc) func_enmy_800685D8, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_METEO_WARP */ {(void*) func_edisplay_8005CDA8, 1, (ObjectFunc) func_enmy_80068688, D_edata_800CBF70, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_BOMB */ {(void*) func_edisplay_8005CB44, 1, (ObjectFunc) func_enmy_80067BEC, D_edata_800CBFC8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_LASERS */ {(void*) ItemLasers_Draw, 1, (ObjectFunc) ItemLasers_Update, D_edata_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_CHECKPOINT */ {(void*) ItemCheckpoint_Draw, 1, (ObjectFunc) ItemCheckpoint_Update, D_edata_800CBF38, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_SILVER_RING */ {(void*) ItemSilverRing_Draw, 1, (ObjectFunc) ItemSupplyRing_Update, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_SILVER_STAR */ {(void*) ItemSilverStar_Draw, 1, (ObjectFunc) ItemSilverStar_Update, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_METEO_WARP */ {(void*) ItemMeteoWarp_Draw, 1, (ObjectFunc) ItemMeteoWarp_Update, D_edata_800CBF70, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_BOMB */ {(void*) ItemBomb_Draw, 1, (ObjectFunc) ItemPickup_Update, D_edata_800CBFC8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_328 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C88, D_edata_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_329 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C88, D_edata_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_330 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C88, D_edata_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
@@ -427,10 +427,10 @@ ObjectInfo D_edata_800CC124[0x190] = {
/* OBJ_ITEM_332 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C88, D_edata_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_333 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C88, D_edata_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_334 */ {(void*) NULL, 1, (ObjectFunc) func_enmy_80068C48, D_edata_800CBF18, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_1UP */ {(void*) D_1022120, 0, (ObjectFunc) func_enmy_80067B1C, D_edata_800CBE8C, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_GOLD_RING */ {(void*) func_edisplay_8005CA80, 1, (ObjectFunc) func_enmy_800685F8, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_WING_REPAIR */ {(void*) D_arwing_3007650, 0, (ObjectFunc) func_enmy_80068618, D_edata_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_TRAINING_RING */ {(void*) gItemTrainingRingDL, 0, (ObjectFunc) Training_80198968, D_TR_6009CFC, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_1UP */ {(void*) D_1022120, 0, (ObjectFunc) Item1up_Update, D_edata_800CBE8C, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_GOLD_RING */ {(void*) ItemGoldRing_Draw, 1, (ObjectFunc) ItemGoldRing_Update, D_edata_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_WING_REPAIR */ {(void*) D_arwing_3007650, 0, (ObjectFunc) ItemWingRepair_Update, D_edata_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_ITEM_TRAINING_RING */ {(void*) gItemTrainingRingDL, 0, (ObjectFunc) Training_ItemRing_Update, D_TR_6009CFC, 700.0f, 0, 0, 0, 0, 0.0f, 0 },
/* OBJ_EFFECT_339 */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D2F4, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
/* OBJ_EFFECT_340 */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D748, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
/* OBJ_EFFECT_341 */ {(void*) func_effect_8007D55C, 1, (ObjectFunc) func_effect_8007D8A8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 },
+78 -76
View File
@@ -59,7 +59,7 @@ void func_edisplay_80059850(Object_4C* obj4C) {
void func_edisplay_800598DC(s32 arg0) {
}
void func_edisplay_800598E8(Actor* actor) {
void Actor201_Draw(Actor* actor) {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gSPDisplayList(gMasterDisp++, D_MA_6025B50);
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
@@ -88,7 +88,7 @@ f32 D_edisplay_800CFA2C[] = {
1.0f, 1.0f, 0.95f, 0.9f, 0.85f, 0.8f, 0.75f, 0.7f, 0.65f, 0.6f,
};
void func_edisplay_80059A24(Actor* actor) {
void Actor202_Draw(Actor* actor) {
Vec3f sp30[30];
f32 temp = D_edisplay_800CF9B0[actor->unk_0B6] - 114.0f;
@@ -98,7 +98,7 @@ void func_edisplay_80059A24(Actor* actor) {
Animation_DrawSkeleton(1, D_ME_601E9D0, sp30, NULL, func_edisplay_800599A4, &actor->index, &gIdentityMatrix);
}
void func_edisplay_80059AEC(Object_80* obj80) {
void Obj39_Draw(Object_80* obj80) {
gSPDisplayList(gMasterDisp++, D_ME_601AE40);
}
@@ -114,11 +114,11 @@ void func_edisplay_80059B20(Object_80* obj80) {
void func_edisplay_80059BB0(void* arg0) {
}
void func_edisplay_80059BBC(Object_80* obj80) {
void Obj42_Draw(Object_80* obj80) {
gSPDisplayList(gMasterDisp++, D_CO_6023AC0);
}
void func_edisplay_80059BF0(Actor* actor) {
void Actor196_Draw(Actor* actor) {
if (actor->unk_0B6 != 0) {
gSPDisplayList(gMasterDisp++, D_CO_6032BC0);
}
@@ -169,13 +169,13 @@ void func_edisplay_80059C40(Object_4C* obj4C) {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
}
void func_edisplay_80059F68(Item* item) {
void func_edisplay_80059F68(Object_80* obj80) {
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -95.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_CO_602DA20);
}
void func_edisplay_80059FDC(Item* item) {
void func_edisplay_80059FDC(Object_80* obj80) {
gSPDisplayList(gMasterDisp++, D_CO_6035DA0);
}
@@ -236,7 +236,7 @@ Gfx* D_edisplay_800CFC64[] = { D_AQ_6023940, D_AQ_6023D70, D_AQ_60249C0, D_AQ_60
Gfx* D_edisplay_800CFC7C[] = { D_ZO_601B570, D_ZO_601B710, D_ZO_60209B0, D_ZO_6020B70, D_ZO_6020D50,
D_ZO_601B8F0, D_ZO_601B3B0, D_ZO_601B1C0, D_ZO_6011660 };
void func_edisplay_8005A094(Actor* actor) {
void Actor189_Draw(Actor* actor) {
switch (actor->state) {
case 0:
Matrix_Translate(gGfxMatrix, 18.0f, 15.0f, -15.0f, 1);
@@ -291,11 +291,11 @@ void func_edisplay_8005A094(Actor* actor) {
} else {
if (gBosses[0].fwork[3] < 4800.0f) {
RCP_SetupDL(&gMasterDisp, 0x1E);
gDPSetFogColor(gMasterDisp++, 0x40, 0x20, 0x20, gFogAlpha);
gDPSetFogColor(gMasterDisp++, 64, 32, 32, gFogAlpha);
gSPFogPosition(gMasterDisp++, gFogNear, gFogFar);
} else {
RCP_SetupDL(&gMasterDisp, 0x1E);
gDPSetFogColor(gMasterDisp++, 0x10, 0x10, 0x10, gFogAlpha);
gDPSetFogColor(gMasterDisp++, 16, 16, 16, gFogAlpha);
gSPFogPosition(gMasterDisp++, gFogNear, gFogFar);
}
Graphics_SetScaleMtx(actor->scale);
@@ -413,7 +413,7 @@ void func_edisplay_8005A094(Actor* actor) {
break;
default:
if (actor->state > 9) {
if (actor->state == 0x24) {
if (actor->state == 36) {
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
}
gSPDisplayList(gMasterDisp++, D_edisplay_800CFA54[actor->state - 10]);
@@ -635,8 +635,8 @@ void func_edisplay_8005BAB4(ObjectId objId, s32 index) {
RCP_SetupDL(&gMasterDisp, 0x40);
break;
case OBJ_ACTOR_195:
case OBJ_ACTOR_198:
case OBJ_ACTOR_200:
case OBJ_ACTOR_TEAM_BOSS:
case OBJ_ACTOR_EVENT:
switch (gActors[index].unk_0B4) {
case 3:
Matrix_Scale(gGfxMatrix, 2.3f, 0.0f, 2.3f, 1);
@@ -683,7 +683,7 @@ void func_edisplay_8005BAB4(ObjectId objId, s32 index) {
case OBJ_BOSS_295:
case OBJ_BOSS_296:
COS_DEG(gBosses[index].obj.rot.z);
if (D_80161A88 == 2) {
if (D_ctx_80161A88 == 2) {
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 90);
} else {
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150);
@@ -760,7 +760,7 @@ void func_edisplay_8005BAB4(ObjectId objId, s32 index) {
}
}
void func_edisplay_8005C5F0(Item* item) {
void ItemCheckpoint_Draw(Item* item) {
s32 i;
if ((gGameFrameCount & 0x18) && (item->state == 0)) {
@@ -791,7 +791,7 @@ void func_edisplay_8005C5F0(Item* item) {
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN);
}
void func_edisplay_8005C900(Item* item) {
void ItemSilverRing_Draw(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
@@ -800,7 +800,7 @@ void func_edisplay_8005C900(Item* item) {
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
}
void func_edisplay_8005C9C0(Item* item) {
void ItemSilverStar_Draw(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
@@ -809,7 +809,7 @@ void func_edisplay_8005C9C0(Item* item) {
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
}
void func_edisplay_8005CA80(Item* item) {
void ItemGoldRing_Draw(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 1900, 1700, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
@@ -818,7 +818,7 @@ void func_edisplay_8005CA80(Item* item) {
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
}
void func_edisplay_8005CB44(Item* item) {
void ItemBomb_Draw(Item* item) {
if (gCurrentLevel == LEVEL_AQUAS) {
Graphics_SetScaleMtx(item->scale);
gSPDisplayList(gMasterDisp++, D_blue_marine_3005980);
@@ -835,7 +835,7 @@ void func_edisplay_8005CB44(Item* item) {
}
}
void func_edisplay_8005CC9C(Item* item) {
void ItemLasers_Draw(Item* item) {
Graphics_SetScaleMtx(item->scale * 0.1f);
RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON);
@@ -847,7 +847,7 @@ void func_edisplay_8005CC9C(Item* item) {
gSPDisplayList(gMasterDisp++, D_101A8E0);
}
void func_edisplay_8005CDA8(Item* item) {
void ItemMeteoWarp_Draw(Item* item) {
s32 i;
item->obj.rot.y = (Math_Atan2F(gPlayer[gPlayerNum].camEye.x - item->obj.pos.x,
@@ -941,9 +941,9 @@ void func_edisplay_8005D3CC(Object* obj, f32 xRot, f32 yRot, f32 zRot, s32 drawT
}
void Object_80_Draw(Object_80* obj80, s32 arg1) {
obj80->obj.pos.y += D_ctx_8017847C;
obj80->obj.pos.y += gCameraShakeY;
func_edisplay_8005D008(&obj80->obj, obj80->info.drawType);
obj80->obj.pos.y -= D_ctx_8017847C;
obj80->obj.pos.y -= gCameraShakeY;
if (obj80->info.drawType == 0) {
if ((obj80->obj.id == OBJ_80_19) || (obj80->obj.id == OBJ_80_55) || (obj80->obj.id == OBJ_80_9) ||
(obj80->obj.id == OBJ_80_50)) {
@@ -978,9 +978,9 @@ void Object_80_Draw(Object_80* obj80, s32 arg1) {
void Object_4C_Draw(Object_4C* obj4C, s32 arg1) {
if (arg1 >= 0) {
obj4C->obj.pos.y += D_ctx_8017847C;
obj4C->obj.pos.y += gCameraShakeY;
func_edisplay_8005D008(&obj4C->obj, 0);
obj4C->obj.pos.y -= D_ctx_8017847C;
obj4C->obj.pos.y -= gCameraShakeY;
if (obj4C->info.drawType == 0) {
gSPDisplayList(gMasterDisp++, obj4C->info.dList);
} else if (obj4C->info.draw != NULL) {
@@ -989,26 +989,26 @@ void Object_4C_Draw(Object_4C* obj4C, s32 arg1) {
}
}
void Actor_Draw2(Actor* actor) {
void Actor_DrawOnRails(Actor* actor) {
Vec3f sp34 = { 0.0f, 0.0f, 0.0f };
if (actor->info.draw != NULL) {
switch (actor->obj.id) {
case OBJ_ACTOR_194:
func_enmy2_8006B74C(actor);
Actor194_Draw(actor);
return;
case OBJ_ACTOR_236:
Zoness_80190F08(actor);
return;
}
if ((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0B4 == 200)) {
func_enmy2_8006B74C(actor);
if ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == EINFO_200)) {
Actor194_Draw(actor);
} else {
if (actor->info.unk_19 != 0) {
actor->obj.pos.y += D_ctx_8017847C;
actor->obj.pos.y += gCameraShakeY;
func_edisplay_8005D008(&actor->obj, actor->info.drawType);
actor->obj.pos.y -= D_ctx_8017847C;
} else if ((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0B4 != 31)) {
actor->obj.pos.y -= gCameraShakeY;
} else if ((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 != EINFO_31)) {
func_edisplay_8005D3CC(&actor->obj, actor->vwork[29].x, actor->vwork[29].y,
actor->vwork[29].z + actor->unk_0F4.z, actor->info.drawType);
} else {
@@ -1020,7 +1020,8 @@ void Actor_Draw2(Actor* actor) {
} else {
actor->info.draw(&actor->obj);
func_edisplay_8005F1EC(actor->sfxSource);
if (((actor->obj.id == OBJ_ACTOR_198) || ((actor->obj.id == OBJ_ACTOR_203) && (actor->unk_0B6 > 0))) &&
if (((actor->obj.id == OBJ_ACTOR_TEAM_BOSS) ||
((actor->obj.id == OBJ_ACTOR_SLIPPY_SX) && (actor->unk_0B6 > 0))) &&
(D_display_80161410 > 0)) {
Matrix_MultVec3f(gGfxMatrix, &sp34, &D_ctx_80177E98[actor->aiType]);
}
@@ -1036,7 +1037,7 @@ void Actor_Draw2(Actor* actor) {
}
}
void Actor_Draw1(Actor* actor) {
void Actor_DrawAllRange(Actor* actor) {
s32 var_v1;
Vec3f sp50 = { 0.0f, 0.0f, 0.0f };
f32 var_fa1;
@@ -1054,7 +1055,7 @@ void Actor_Draw1(Actor* actor) {
Matrix_Pop(&gGfxMatrix);
var_fv0 = 0.0f;
var_fv1 = -12000.0f;
if ((actor->obj.id == OBJ_ACTOR_197) && (actor->aiType >= 100)) {
if ((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType >= AI360_GREAT_FOX)) {
var_fv0 = 1000.0f;
var_fv1 = -25000.0f;
}
@@ -1066,8 +1067,8 @@ void Actor_Draw1(Actor* actor) {
Matrix_RotateZ(gCalcMatrix, actor->obj.rot.z * M_DTOR, 1);
actor->info.draw(&actor->obj);
D_edisplay_801615EC = 1;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (actor->obj.id == OBJ_ACTOR_197) &&
(actor->aiType == 200)) {
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (actor->obj.id == OBJ_ACTOR_ALLRANGE) &&
(actor->aiType == AI360_MISSILE)) {
D_ctx_80177E98[0] = D_edisplay_801615E0;
}
}
@@ -1077,7 +1078,7 @@ void Actor_Draw1(Actor* actor) {
Matrix_Translate(gGfxMatrix, actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 1);
Matrix_MultVec3f(gGfxMatrix, &sp50, &D_edisplay_801615E0);
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0) ||
((actor->obj.id == OBJ_ACTOR_197) && (actor->aiType >= 100)) ||
((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType >= AI360_GREAT_FOX)) ||
((actor->obj.id == OBJ_ACTOR_195) && (actor->info.bonus != 0))) {
var_ft5 = var_fv0 = 3000.0f;
var_fv1 = -29000.0f;
@@ -1099,9 +1100,10 @@ void Actor_Draw1(Actor* actor) {
actor->info.draw(&actor->obj);
D_edisplay_801615EC = 1;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) &&
(((actor->obj.id == OBJ_ACTOR_197) &&
((actor->aiType < 4) || (actor->aiType == 8) || (actor->aiType == 9))) ||
(actor->obj.id == OBJ_ACTOR_198))) {
(((actor->obj.id == OBJ_ACTOR_ALLRANGE) &&
((actor->aiType <= AI360_PEPPY) || (actor->aiType == AI360_KATT) ||
(actor->aiType == AI360_BILL))) ||
(actor->obj.id == OBJ_ACTOR_TEAM_BOSS))) {
D_ctx_80177E98[actor->aiType] = D_edisplay_801615E0;
}
}
@@ -1137,9 +1139,9 @@ void Boss_Draw(Boss* boss, s32 arg1) {
Vec3f sp30 = { 0.0f, 0.0f, 0.0f };
if (boss->info.unk_19 != 0) {
boss->obj.pos.y += boss->unk_068 + D_ctx_8017847C;
boss->obj.pos.y += boss->unk_068 + gCameraShakeY;
func_edisplay_8005D1F0(&boss->obj, boss->info.drawType);
boss->obj.pos.y -= boss->unk_068 + D_ctx_8017847C;
boss->obj.pos.y -= boss->unk_068 + gCameraShakeY;
} else {
func_edisplay_8005D1F0(&boss->obj, boss->info.drawType);
}
@@ -1190,16 +1192,16 @@ void Boss_Draw(Boss* boss, s32 arg1) {
}
}
void Effect_Draw1(Effect* effect, s32 arg1) {
void Effect_DrawOnRails(Effect* effect, s32 arg1) {
if ((arg1 < 0) && (effect->obj.pos.y < 7.0f)) {
return;
}
if ((effect->obj.id == OBJ_EFFECT_353) || (effect->obj.id == OBJ_EFFECT_369)) {
func_edisplay_8005D3CC(&effect->obj, effect->unk_60.x, effect->unk_60.y, effect->unk_60.z, 0);
} else if (effect->info.unk_14 == -1) {
effect->obj.pos.y += D_ctx_8017847C;
effect->obj.pos.y += gCameraShakeY;
func_edisplay_8005D008(&effect->obj, 0);
effect->obj.pos.y -= D_ctx_8017847C;
effect->obj.pos.y -= gCameraShakeY;
} else {
func_edisplay_8005D008(&effect->obj, 0);
}
@@ -1208,14 +1210,14 @@ void Effect_Draw1(Effect* effect, s32 arg1) {
}
}
void Effect_Draw2(Effect* effect) {
void Effect_DrawAllRange(Effect* effect) {
Vec3f sp4C = { 0.0f, 0.0f, 0.0f };
Vec3f sp40;
f32 var_fv0;
u8 sp3B = 0;
if (effect->info.unk_14 == -1) {
Matrix_Translate(gGfxMatrix, effect->obj.pos.x, effect->obj.pos.y + D_ctx_8017847C,
Matrix_Translate(gGfxMatrix, effect->obj.pos.x, effect->obj.pos.y + gCameraShakeY,
effect->obj.pos.z + D_ctx_80177D20, 1);
} else {
Matrix_Translate(gGfxMatrix, effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z + D_ctx_80177D20, 1);
@@ -1291,7 +1293,7 @@ void func_edisplay_8005EA24(Actor* actor) {
Matrix_RotateY(gGfxMatrix, (actor->obj.rot.y + 180.0f) * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, actor->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
if (actor->aiType < 4) {
if (actor->aiType <= AI360_PEPPY) {
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 30.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_1032780);
@@ -1301,7 +1303,7 @@ void func_edisplay_8005EA24(Actor* actor) {
} else {
gSPDisplayList(gMasterDisp++, D_KA_600DBC0);
}
} else if ((actor->aiType < 8) || (gCurrentLevel != LEVEL_FORTUNA)) {
} else if ((actor->aiType < AI360_KATT) || (gCurrentLevel != LEVEL_FORTUNA)) {
gSPDisplayList(gMasterDisp++, D_STAR_WOLF_F014310);
} else if (gCurrentLevel == LEVEL_FORTUNA) {
gSPDisplayList(gMasterDisp++, D_FO_6009F90);
@@ -1313,7 +1315,7 @@ void func_edisplay_8005EA24(Actor* actor) {
void func_edisplay_8005ECD8(s32 index, Object* obj) {
RCP_SetupDL(&gMasterDisp, 0x42);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 180);
if (obj->id == OBJ_ACTOR_197) {
if (obj->id == OBJ_ACTOR_ALLRANGE) {
func_edisplay_8005EA24(&gActors[index]);
} else {
switch (obj->id) {
@@ -1327,14 +1329,14 @@ void func_edisplay_8005ECD8(s32 index, Object* obj) {
obj->pos.z + D_ctx_80177D20, 1);
break;
case OBJ_BOSS_316:
Matrix_Translate(gGfxMatrix, obj->pos.x, gGroundLevel + 2.0f + D_ctx_8017847C, obj->pos.z, 1);
Matrix_Translate(gGfxMatrix, obj->pos.x, gGroundLevel + 2.0f + gCameraShakeY, obj->pos.z, 1);
break;
default:
Matrix_Translate(gGfxMatrix, obj->pos.x, gGroundLevel + 2.0f, obj->pos.z + D_ctx_80177D20, 1);
break;
}
if ((D_ctx_801784AC != 4) || (obj->id == OBJ_ACTOR_200) || (obj->id == OBJ_ACTOR_195) ||
(obj->id == OBJ_ACTOR_198)) {
if ((D_ctx_801784AC != 4) || (obj->id == OBJ_ACTOR_EVENT) || (obj->id == OBJ_ACTOR_195) ||
(obj->id == OBJ_ACTOR_TEAM_BOSS)) {
Matrix_Scale(gGfxMatrix, 1.0f, 0.0f, 1.0f, 1);
Matrix_RotateY(gGfxMatrix, obj->rot.y * M_DTOR, 1);
}
@@ -1348,7 +1350,7 @@ void func_edisplay_8005ECD8(s32 index, Object* obj) {
}
}
void func_edisplay_8005F030(f32* sfxSrc) {
void Object_ClampSfxSource(f32* sfxSrc) {
if (sfxSrc[0] > 5000.0f) {
sfxSrc[0] = 5000.0f;
}
@@ -1378,15 +1380,15 @@ void func_edisplay_8005F0E8(f32* sfxSrc, Vec3f* pos) {
} else {
Matrix_RotateY(gCalcMatrix, gPlayer[0].unk_058, 0);
Matrix_RotateX(gCalcMatrix, gPlayer[0].unk_05C, 1);
sp2C.x = pos->x - D_ctx_801779D8.x;
sp2C.y = pos->y - D_ctx_801779D8.y;
sp2C.z = pos->z + D_ctx_80177D20 - D_ctx_801779D8.z;
sp2C.x = pos->x - gPlayerCamEye.x;
sp2C.y = pos->y - gPlayerCamEye.y;
sp2C.z = pos->z + D_ctx_80177D20 - gPlayerCamEye.z;
Matrix_MultVec3f(gCalcMatrix, &sp2C, &sp20);
sfxSrc[0] = sp20.x;
sfxSrc[1] = sp20.y;
sfxSrc[2] = sp20.z;
}
func_edisplay_8005F030(sfxSrc);
Object_ClampSfxSource(sfxSrc);
}
void func_edisplay_8005F1EC(f32* sfxSrc) {
@@ -1402,7 +1404,7 @@ void func_edisplay_8005F1EC(f32* sfxSrc) {
sfxSrc[1] = sp20.y;
sfxSrc[2] = sp20.z;
}
func_edisplay_8005F030(sfxSrc);
Object_ClampSfxSource(sfxSrc);
}
void func_edisplay_8005F290(f32* sfxSrc, Vec3f* pos) {
@@ -1413,7 +1415,7 @@ void func_edisplay_8005F290(f32* sfxSrc, Vec3f* pos) {
sfxSrc[1] = pos->y;
sfxSrc[2] = pos->z;
}
func_edisplay_8005F030(sfxSrc);
Object_ClampSfxSource(sfxSrc);
}
void Object_58_Draw(Object_58* obj58) {
@@ -1438,7 +1440,7 @@ void Object_58_Draw(Object_58* obj58) {
sp38 = 0.9f;
}
if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) {
Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y + D_ctx_8017847C, obj58->obj.pos.z, 1);
Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y + gCameraShakeY, obj58->obj.pos.z, 1);
} else {
Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y, obj58->obj.pos.z, 1);
}
@@ -1636,7 +1638,7 @@ void Object_DrawAll(s32 arg0) {
func_edisplay_8005F670(&actor->obj.pos);
}
func_edisplay_800597C0(arg0);
Actor_Draw2(actor);
Actor_DrawOnRails(actor);
Matrix_Pop(&gGfxMatrix);
if (actor->unk_0C9 != 0) {
Matrix_Push(&gGfxMatrix);
@@ -1646,7 +1648,7 @@ void Object_DrawAll(s32 arg0) {
break;
case LEVELMODE_ALL_RANGE:
Matrix_Push(&gGfxMatrix);
Actor_Draw1(actor);
Actor_DrawAllRange(actor);
Matrix_Pop(&gGfxMatrix);
if ((actor->unk_0C9 != 0) && (D_edisplay_801615EC != 0) &&
((D_edisplay_801615E0.z > -4000.0f) || (gCurrentLevel != LEVEL_KATINA))) {
@@ -1674,7 +1676,7 @@ void Object_DrawAll(s32 arg0) {
gAmbientB);
}
void func_edisplay_8006046C(s32 arg0) {
void Effect_DrawAll(s32 arg0) {
s32 i;
Boss* boss;
Effect* effect;
@@ -1688,11 +1690,11 @@ void func_edisplay_8006046C(s32 arg0) {
}
if (gLevelMode == LEVELMODE_ALL_RANGE) {
Matrix_Push(&gGfxMatrix);
Effect_Draw2(effect);
Effect_DrawAllRange(effect);
Matrix_Pop(&gGfxMatrix);
} else {
Matrix_Push(&gGfxMatrix);
Effect_Draw1(effect, arg0);
Effect_DrawOnRails(effect, arg0);
Matrix_Pop(&gGfxMatrix);
func_edisplay_8005F1EC(effect->sfxSource);
if (effect->obj.id == OBJ_EFFECT_374) {
@@ -1718,10 +1720,10 @@ void func_edisplay_8006046C(s32 arg0) {
}
}
void func_edisplay_80060714(s32 arg0) {
void Object_Draw(s32 arg0) {
D_display_80161410 = 1;
Object_DrawAll(1);
if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
if ((D_ctx_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
D_display_80161410 = -1;
Lights_SetOneLight(&gMasterDisp, gLight1x, -1 * gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR,
gAmbientG, gAmbientB);
@@ -1734,15 +1736,15 @@ void func_edisplay_80060714(s32 arg0) {
}
}
void func_edisplay_8006089C(u8 arg0) {
void Effect_Draw(u8 arg0) {
if (arg0 == 0) {
D_display_80161410 = 1;
func_edisplay_8006046C(1);
} else if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
Effect_DrawAll(1);
} else if ((D_ctx_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
D_display_80161410 = -1;
Matrix_Push(&gGfxMatrix);
Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1);
func_edisplay_8006046C(-1);
Effect_DrawAll(-1);
Matrix_Pop(&gGfxMatrix);
}
D_display_80161410 = 1;
@@ -1814,10 +1816,10 @@ void TexturedLine_Draw(void) {
}
}
void func_edisplay_80060D94(s32 arg0) {
TexturedLine* texLine = &gTexturedLines[arg0];
void TexturedLine_DrawPath(s32 index) {
TexturedLine* texLine = &gTexturedLines[index];
if (texLine->unk_2F == 0xFF) {
if (texLine->unk_2F == 255) {
RCP_SetupDL(&gMasterDisp, 5);
} else {
RCP_SetupDL(&gMasterDisp, 0xE);
+37 -37
View File
@@ -332,7 +332,7 @@ static f32 D_800D1534[][10] = {
void func_effect_800780F8(Effect* effect) {
s32 i;
if (effect->unk_4A >= 0xB) {
if (effect->unk_4A >= 11) {
if (!((effect->index + gGameFrameCount) & 1)) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 128, 128, 32);
} else {
@@ -512,7 +512,7 @@ void func_effect_80078D60(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
effect->state = 2;
}
effect->timer_50 = 0xE;
effect->timer_50 = 14;
Object_SetInfo(&effect->info, effect->obj.id);
}
@@ -875,7 +875,7 @@ void func_effect_8007A28C(Effect* effect) {
effect->obj.rot.y += 1.0f;
Math_SmoothStepToF(&effect->scale2, effect->scale1, 0.05f, 1.5f, 0.001f);
if (effect->timer_50 >= 0xB) {
if (effect->timer_50 >= 11) {
D_ctx_801779A8[0] = 60.0f;
}
if (effect->timer_50 == 48) {
@@ -1034,7 +1034,7 @@ void func_effect_8007A994(Effect* effect) {
}
effect->unk_44 -= effect->unk_46;
if (effect->unk_44 < 0x15) {
if (effect->unk_44 <= 20) {
Object_Kill(&effect->obj, effect->sfxSource);
}
effect->unk_4A++;
@@ -1078,7 +1078,7 @@ void func_effect_8007AC0C(Effect* effect, f32 xPos, f32 unused_posY, f32 zPos, f
effect->obj.pos.y = gGroundLevel;
effect->obj.pos.z = zPos;
effect->unk_44 = 0xB4;
effect->unk_44 = 180;
effect->scale2 = scale2;
effect->scale1 = scale1;
effect->obj.rot.y = yRot;
@@ -1108,7 +1108,7 @@ void func_effect_8007AD58(Effect* effect, f32 xPos, f32 unused_posY, f32 zPos, f
effect->obj.pos.y = gGroundLevel;
effect->obj.pos.z = zPos;
effect->unk_44 = 0xB4;
effect->unk_44 = 180;
effect->scale2 = scale2;
effect->scale1 = scale1;
effect->obj.rot.y = yRot;
@@ -1193,7 +1193,7 @@ void func_effect_8007B180(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
effect->obj.pos.y = yPos;
effect->obj.pos.z = zPos;
effect->unk_44 = 0xFF;
effect->unk_44 = 255;
effect->scale1 = scale1;
Object_SetInfo(&effect->info, effect->obj.id);
AUDIO_PLAY_SFX(0x1100000C, effect->sfxSource, 0);
@@ -1438,12 +1438,12 @@ void func_effect_8007BB14(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
effect->unk_48 = -effect->unk_48;
}
effect->unk_4A = 0xB4;
effect->unk_4A = 180;
effect->unk_46 = 8;
if (scale2 > 15.0f) {
effect->unk_46 = 5;
effect->unk_4A = 0x50;
effect->unk_4A = 80;
}
effect->scale2 = scale2 * 0.25f;
@@ -1629,7 +1629,7 @@ void func_effect_8007C3B4(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 xVel
effect->unk_4C = RAND_INT(12.0f);
effect->obj.rot.z = RAND_FLOAT(360.0f);
Object_SetInfo(&effect->info, effect->obj.id);
effect->unk_44 = 0xFF;
effect->unk_44 = 255;
}
void func_effect_8007C484(f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel, f32 zVel, f32 scale2, s32 arg7) {
@@ -1841,7 +1841,7 @@ void func_effect_8007CD7C(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
if (Rand_ZeroOne() < 0.5f) {
effect->unk_48 = -effect->unk_48;
}
effect->unk_4A = 0xFF;
effect->unk_4A = 255;
effect->scale2 = scale2;
effect->obj.rot.z = RAND_FLOAT(360.0f);
@@ -2009,7 +2009,7 @@ void func_effect_8007D2F4(Effect* effect) {
D_ctx_80178370 = effect->obj.pos.x;
D_ctx_80178374 = effect->obj.pos.y;
D_ctx_80178378 = effect->obj.pos.z;
D_ctx_80178360 = 0xFF;
D_ctx_80178360 = 255;
D_ctx_80178364 = 50;
D_ctx_80178368 = 0;
}
@@ -2097,7 +2097,7 @@ void func_effect_8007D748(Effect* effect) {
D_ctx_80178370 = effect->obj.pos.x;
D_ctx_80178374 = effect->obj.pos.y;
D_ctx_80178378 = effect->obj.pos.z;
D_ctx_80178360 = 0xFF;
D_ctx_80178360 = 255;
D_ctx_80178364 = 50;
D_ctx_80178368 = 0;
}
@@ -2188,7 +2188,7 @@ void func_effect_8007DB70(Effect* effect) {
func_effect_8007D0E0(effect->obj.pos.x, effect->obj.pos.y + 30.0f, effect->obj.pos.z, 7.0f);
func_effect_8007BFFC(effect->obj.pos.x, effect->obj.pos.y + 30.0f, effect->obj.pos.z, 0.0f, 0.0f, 0.0f,
4.0f, 5);
if ((effect->obj.pos.y < (gGroundLevel + 10.0f)) || (D_80161A88 != 2)) {
if ((effect->obj.pos.y < (gGroundLevel + 10.0f)) || (D_ctx_80161A88 != 2)) {
func_beam_800365E4(effect->obj.pos.x, 3.0f, effect->obj.pos.z, effect->obj.pos.x, effect->obj.pos.z,
0.0f, 0.0f, 90.0f, 5.0f, 0, 0);
break;
@@ -2374,7 +2374,7 @@ void func_effect_8007E6B8(Effect* effect, u32 objId, f32 xPos, f32 yPos, f32 zPo
effect->obj.pos.y = yPos;
effect->obj.pos.z = zPos;
Object_SetInfo(&effect->info, objId & 0xFFFF);
Object_SetInfo(&effect->info, effect->obj.id);
sp50 = Math_Atan2F(gPlayer[0].pos.x - xPos, gPlayer[0].unk_138 - zPos);
temp_ft4 = sqrtf(SQ(gPlayer[0].pos.x - xPos) + SQ(gPlayer[0].unk_138 - zPos));
sp54 = -Math_Atan2F(gPlayer[0].pos.y - yPos, temp_ft4);
@@ -2644,7 +2644,7 @@ void func_effect_8007F438(Effect* effect) {
}
if (effect->unk_46 == 0) {
effect->unk_46 = 0x1E;
effect->unk_46 = 30;
effect->unk_44 += 1;
effect->unk_44 &= 1;
} else {
@@ -2730,7 +2730,7 @@ void func_effect_8007F6B0(Effect* effect) {
} else if (gCurrentLevel == LEVEL_FORTUNA) {
func_effect_8007BC7C(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 20.0f);
} else if (gCurrentLevel == LEVEL_TITANIA) {
func_effect_8007A900(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 10.0f, 0xFF, 0xF, 0);
func_effect_8007A900(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 10.0f, 255, 15, 0);
}
}
}
@@ -2775,7 +2775,7 @@ void func_effect_8007F958(Effect* effect) {
if (gCurrentLevel == LEVEL_FORTUNA) {
func_effect_8007BC7C(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 8.0f);
} else if (gCurrentLevel == LEVEL_TITANIA) {
func_effect_8007A900(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 8.0f, 0xFF, 0xF, 0);
func_effect_8007A900(effect->obj.pos.x + sin, yPos, effect->obj.pos.z + cos, 8.0f, 255, 15, 0);
}
}
}
@@ -2899,7 +2899,7 @@ void func_effect_8007FE88(Effect* effect) {
}
} else if (effect->obj.pos.y < gGroundLevel) {
Object_Kill(&effect->obj, effect->sfxSource);
if (D_80161A88 != 2) {
if (D_ctx_80161A88 != 2) {
effect->obj.pos.y = gGroundLevel;
func_effect_8007D074(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 2.0f);
}
@@ -3030,7 +3030,7 @@ void func_effect_8008040C(Effect* effect) {
}
} else if (effect->obj.pos.y < gGroundLevel) {
Object_Kill(&effect->obj, effect->sfxSource);
if (D_80161A88 != 2) {
if (D_ctx_80161A88 != 2) {
effect->obj.pos.y = gGroundLevel;
func_effect_8007D074(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 2.0f);
}
@@ -3093,9 +3093,9 @@ void func_effect_80080ACC(Effect* effect) {
temp_ft2 = (((f32) effect->unk_44 / (f32) effect->unk_46) * 255.0f);
effect->unk_48 = temp_ft2;
if (temp_ft2 >= 256) {
effect->unk_48 = 0xFF;
effect->unk_48 = 255;
}
if (effect->unk_48 < 0x20) {
if (effect->unk_48 < 32) {
Object_Kill(&effect->obj, effect->sfxSource);
}
break;
@@ -3147,11 +3147,11 @@ void func_effect_80080D04(Effect* effect) {
switch (effect->unk_7A) {
case 0:
if (effect->unk_44 != 0x40) {
if (effect->unk_44 != 64) {
RCP_SetupDL(&gMasterDisp, effect->unk_44);
}
gSPDisplayList(gMasterDisp++, effect->unk_74);
if (effect->unk_44 != 0x40) {
if (effect->unk_44 != 64) {
RCP_SetupDL(&gMasterDisp, 0x40);
}
break;
@@ -3161,7 +3161,7 @@ void func_effect_80080D04(Effect* effect) {
effect->unk_48 = effect->unk_46;
}
if (effect->unk_44 != 0x40) {
if (effect->unk_44 != 64) {
RCP_SetupDL(&gMasterDisp, effect->unk_44);
}
@@ -3177,7 +3177,7 @@ void func_effect_80080D04(Effect* effect) {
gSPDisplayList(gMasterDisp++, effect->unk_74);
}
if (effect->unk_44 != 0x40) {
if (effect->unk_44 != 64) {
RCP_SetupDL(&gMasterDisp, 0x40);
}
break;
@@ -3325,7 +3325,7 @@ void func_effect_8008165C(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
switch (effect->state) {
case 4:
effect->unk_4A = 0xFF;
effect->unk_4A = 255;
effect->unk_46 = 1;
break;
@@ -3337,12 +3337,12 @@ void func_effect_8008165C(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 scal
effect->unk_46 = 5;
effect->unk_44 = RAND_FLOAT_CENTERED(20.0f) * 1.5f;
effect->info.unk_14 = 0;
effect->unk_4A = 0xFF;
effect->unk_4A = 255;
break;
case 6:
effect->unk_4A = 0xFF;
effect->unk_46 = 0xA;
effect->unk_4A = 255;
effect->unk_46 = 10;
break;
case 7:
@@ -3575,7 +3575,7 @@ void func_effect_80081C5C(Effect* effect) {
Object_Kill(&effect->obj, effect->sfxSource);
func_effect_8007D0E0(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 5.0f);
} else if (fabsf(gPlayer[0].unk_138 - effect->obj.pos.z) < 1000.0f) {
func_enmy2_8006F0D8(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 15.0f);
ActorEvent_8006F0D8(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 15.0f);
Object_Kill(&effect->obj, effect->sfxSource);
}
sp84 = 50.0f;
@@ -3677,8 +3677,8 @@ void func_effect_80081C5C(Effect* effect) {
gEffects[ARRAY_COUNT(gEffects) - 1].obj.status =
gEffects[ARRAY_COUNT(gEffects) - 2].obj.status = OBJ_FREE;
func_effect_80081BEC(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 1.0f, 10);
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0xFF;
D_ctx_80178340 = D_ctx_80178358 = 0xFF;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 25;
effect->timer_50 = 10;
@@ -3748,11 +3748,11 @@ void func_effect_80081C5C(Effect* effect) {
case 0:
D_ctx_801779A8[0] = 50.0f;
if (effect->unk_46 == 10) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0xFF;
D_ctx_80178340 = D_ctx_80178358 = 0xFF;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 25;
D_ctx_80178480 = 50;
gCameraShake = 50;
}
if (effect->unk_46 == 0) {
D_ctx_80178348 = (D_ctx_80178350 = (D_ctx_80178354 = (D_ctx_80178340 = 0)));
@@ -4067,7 +4067,7 @@ void func_effect_80083C70(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 xVel
s32 arg8) {
Effect_Initialize(effect);
effect->obj.status = OBJ_INIT;
effect->obj.id = 0x18F;
effect->obj.id = OBJ_EFFECT_399;
effect->obj.pos.x = xPos;
effect->unk_60.x = xPos;
effect->unk_60.y = yPos;
+119 -118
View File
@@ -29,32 +29,32 @@ ObjectInit* D_enmy_800CFDA0[] = {
D_FO_600EAD4, NULL, D_KA_6011044, D_BO_600FF74, D_SZ_6006EB4, D_VE2_6014D94, D_versus_302DE3C,
};
static s32 D_enmy_800CFDF4[] = {
OBJ_80_0,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_BOMB,
OBJ_ITEM_BOMB,
OBJ_ITEM_BOMB,
OBJ_ITEM_BOMB,
OBJ_ITEM_LASERS,
OBJ_ITEM_LASERS,
OBJ_ITEM_LASERS,
OBJ_ITEM_LASERS,
OBJ_ITEM_1UP,
OBJ_ITEM_GOLD_RING,
OBJ_ITEM_GOLD_RING,
OBJ_ITEM_GOLD_RING,
OBJ_ITEM_GOLD_RING,
OBJ_ITEM_GOLD_RING,
OBJ_ITEM_LASERS,
OBJ_ITEM_BOMB,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_SILVER_RING,
OBJ_ITEM_WING_REPAIR,
OBJ_80_0,
OBJ_ITEM_SILVER_STAR,
/* 0 */ OBJ_80_0,
/* 1 */ OBJ_ITEM_SILVER_RING,
/* 2 */ OBJ_ITEM_SILVER_RING,
/* 3 */ OBJ_ITEM_SILVER_RING,
/* 4 */ OBJ_ITEM_SILVER_RING,
/* 5 */ OBJ_ITEM_BOMB,
/* 6 */ OBJ_ITEM_BOMB,
/* 7 */ OBJ_ITEM_BOMB,
/* 8 */ OBJ_ITEM_BOMB,
/* 9 */ OBJ_ITEM_LASERS,
/* 10 */ OBJ_ITEM_LASERS,
/* 11 */ OBJ_ITEM_LASERS,
/* 12 */ OBJ_ITEM_LASERS,
/* 13 */ OBJ_ITEM_1UP,
/* 14 */ OBJ_ITEM_GOLD_RING,
/* 15 */ OBJ_ITEM_GOLD_RING,
/* 16 */ OBJ_ITEM_GOLD_RING,
/* 17 */ OBJ_ITEM_GOLD_RING,
/* 18 */ OBJ_ITEM_GOLD_RING,
/* 19 */ OBJ_ITEM_LASERS,
/* 20 */ OBJ_ITEM_BOMB,
/* 21 */ OBJ_ITEM_SILVER_RING,
/* 22 */ OBJ_ITEM_SILVER_RING,
/* 23 */ OBJ_ITEM_WING_REPAIR,
/* 24 */ OBJ_80_0,
/* 25 */ OBJ_ITEM_SILVER_STAR,
};
static f32 D_enmy_800CFE5C[] = {
0.0f, 1.0f, 0.5f, 0.33f, 0.25f, 1.0f, 0.5f, 0.33f, 0.25f, 1.0f, 0.5f, 0.33f, 0.25f,
@@ -382,10 +382,10 @@ void func_enmy_80061F0C(Actor* actor, ObjectInit* objInit, s32 arg2) {
actor->obj.rot.y = actor->unk_0F4.y = objInit->rot.y;
actor->obj.rot.x = actor->unk_0F4.x = objInit->rot.x;
actor->unk_0F4.z = objInit->rot.z;
actor->obj.id = OBJ_ACTOR_200;
actor->obj.id = OBJ_ACTOR_EVENT;
actor->timer_0C2 = 10;
actor->unk_0B4 = 4095;
actor->aiType = objInit->id - OBJ_UNK_1000;
actor->aiType = objInit->id - ACTOR_EVENT_ID;
Object_SetInfo(&actor->info, actor->obj.id);
actor->info.unk_10 = 3000.0f;
@@ -434,7 +434,7 @@ void Object_Load(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) {
break;
}
}
} else if (objInit->id == OBJ_ACTOR_198) {
} else if (objInit->id == OBJ_ACTOR_TEAM_BOSS) {
for (i = 0; i < 3; i++) {
if (gActors[i].obj.status == OBJ_FREE) {
Actor_Load(&gActors[i], objInit);
@@ -571,7 +571,7 @@ void func_enmy_80062664(void) {
for (i = 0, objInit = &D_ctx_80178310[D_ctx_80177DC8]; i < 10000; i++, D_ctx_80177DC8++, objInit++) {
if ((objInit->id > OBJ_INVALID) && D_ctx_80177D20 <= objInit->zPos1 &&
objInit->zPos1 <= D_ctx_80177D20 + 200.0f) {
if ((gCurrentLevel == LEVEL_VENOM_1) && (objInit->id >= OBJ_UNK_1000)) {
if ((gCurrentLevel == LEVEL_VENOM_1) && (objInit->id >= ACTOR_EVENT_ID)) {
if (((objInit->rot.y < 180.0f) && (objInit->xPos < gPlayer[0].unk_0AC)) ||
((objInit->rot.y > 180.0f) && (gPlayer[0].unk_0AC < objInit->xPos))) {
Object_Load(objInit, var_fs1, var_fs2, var_fs3, var_fs4);
@@ -889,7 +889,7 @@ s32 func_enmy_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) {
for (i = 0; i < ARRAY_COUNT(gActors); i++, actor++) {
if ((actor->obj.status >= OBJ_ACTIVE) && (fabsf(pos->x - actor->obj.pos.x) < 1000.0f) &&
(fabsf(pos->z - actor->obj.pos.z) < 1500.0f) && (index != i) && (actor->info.unk_16 != 2) &&
((actor->obj.id != OBJ_ACTOR_197) || (actor->aiType >= 4)) && (actor->timer_0C2 == 0)) {
!((actor->obj.id == OBJ_ACTOR_ALLRANGE) && (actor->aiType <= AI360_PEPPY)) && (actor->timer_0C2 == 0)) {
if (actor->obj.id == OBJ_ACTOR_180) {
if (func_enmy_8006326C(pos, arg2, actor->obj.id, &actor->obj)) {
return 2;
@@ -910,8 +910,9 @@ s32 func_enmy_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) {
actor->unk_0D0 = 1;
actor->damage = 10;
actor->unk_0D2 = -1;
if (!(((actor->obj.id == OBJ_ACTOR_200) && (actor->iwork[12] != 0)) ||
((actor->obj.id == OBJ_ACTOR_197) && ((actor->aiType < 10) || (actor->aiType >= 100))))) {
if (!(((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->iwork[12] != 0)) ||
((actor->obj.id == OBJ_ACTOR_ALLRANGE) &&
((actor->aiType < AI360_10) || (actor->aiType >= AI360_GREAT_FOX))))) {
actor->health = 0;
}
actor->unk_0D8.x = pos->x;
@@ -1019,14 +1020,14 @@ void Object_Init(s32 index, ObjectId objId) {
case OBJ_80_54:
AUDIO_PLAY_SFX(0x11000000, gObjects80[index].sfxSource, 0);
break;
case OBJ_ACTOR_198:
func_hud_80092D48(&gActors[index]);
case OBJ_ACTOR_TEAM_BOSS:
ActorTeamBoss_Init(&gActors[index]);
break;
case OBJ_ACTOR_235:
gActors[index].fwork[10] = fabsf(Math_ModF(gActors[index].obj.pos.x, 100.0f));
break;
case OBJ_ACTOR_247:
Zoness_8019D060(&gActors[index]);
Zoness_Actor247_Init(&gActors[index]);
break;
case OBJ_EFFECT_368:
if (gCurrentLevel == LEVEL_TITANIA) {
@@ -1178,13 +1179,13 @@ void Object_Init(s32 index, ObjectId objId) {
gActors[index].unk_0C9 = 1;
break;
case OBJ_BOSS_320:
Andross_8018D16C(&gBosses[index]);
Andross_Boss320_Init(&gBosses[index]);
break;
case OBJ_BOSS_316:
Katina_80193CA4(&gBosses[index]);
Katina_Boss316_Init(&gBosses[index]);
break;
case OBJ_BOSS_314:
SectorY_80197CC4(&gBosses[index]);
SectorY_Boss314_Init(&gBosses[index]);
break;
case OBJ_ACTOR_205:
case OBJ_ACTOR_206:
@@ -1227,25 +1228,25 @@ void Object_Init(s32 index, ObjectId objId) {
AUDIO_PLAY_SFX(0x31000016, gActors[index].sfxSource, 4);
break;
case OBJ_BOSS_297:
Meteo_80188A40(&gBosses[index]);
Meteo_Boss297_Init(&gBosses[index]);
break;
case OBJ_BOSS_299:
func_boss_80042FAC(&gBosses[index]);
Boss299_Init(&gBosses[index]);
break;
case OBJ_BOSS_300:
func_boss_80042FD0(&gBosses[index]);
Boss300_Init(&gBosses[index]);
break;
case OBJ_BOSS_292:
Corneria_801878D8(&gBosses[index]);
Corneria_Boss292_Init(&gBosses[index]);
break;
case OBJ_BOSS_293:
Corneria_8018BE7C(&gBosses[index]);
Corneria_Boss293_Init(&gBosses[index]);
break;
case OBJ_BOSS_A6:
Area6_80187754(&gBosses[index]);
Area6_BossA6_Init(&gBosses[index]);
break;
case OBJ_ACTOR_231:
Titania_8018B96C(&gActors[index]);
Titania_Actor231_Init(&gActors[index]);
break;
case OBJ_ACTOR_232:
Titania_8018ADC4(&gActors[index]);
@@ -1266,7 +1267,7 @@ void Object_Init(s32 index, ObjectId objId) {
Titania_8018EFF0(&gObjects4C[index]);
break;
case OBJ_BOSS_306:
Titania_8018FA48(&gBosses[index]);
Titania_Boss306_Init(&gBosses[index]);
break;
case OBJ_ACTOR_240:
Zoness_801915A4(&gActors[index]);
@@ -1275,7 +1276,7 @@ void Object_Init(s32 index, ObjectId objId) {
Zoness_80191BB8(&gActors[index]);
break;
case OBJ_BOSS_ZO:
Zoness_801932AC(&gBosses[index]);
Zoness_BossZo_Init(&gBosses[index]);
break;
case OBJ_ACTOR_250:
Zoness_8019B1F0(&gActors[index]);
@@ -1296,7 +1297,7 @@ void Object_Init(s32 index, ObjectId objId) {
Aquas_801AF9FC(&gActors[index]);
break;
case OBJ_BOSS_AQ:
Aquas_801B10F8(&gBosses[index]);
Aquas_BossAq_Init(&gBosses[index]);
break;
case OBJ_ACTOR_259:
Aquas_801B6344(&gActors[index]);
@@ -1311,7 +1312,7 @@ void Object_Init(s32 index, ObjectId objId) {
Titania_8018F0D8(&gObjects80[index]);
break;
case OBJ_BOSS_319:
Venom1_801935CC(&gBosses[index]);
Venom1_Boss319_Init(&gBosses[index]);
break;
case OBJ_ACTOR_280:
Venom1_8019250C(&gActors[index]);
@@ -1361,7 +1362,7 @@ void func_enmy_80065380(Actor* actor, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f3
actor->obj.pos.x = xPos;
actor->obj.pos.y = yPos;
actor->obj.pos.z = zPos;
actor->unk_046 = 0xFF;
actor->unk_046 = 255;
actor->unk_048 = 900;
actor->obj.rot.z = RAND_FLOAT(360.0f);
actor->obj.rot.y = RAND_FLOAT(360.0f);
@@ -1582,16 +1583,16 @@ void func_enmy_800656D4(Actor* actor) {
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 3.0f);
Object_Kill(&actor->obj, actor->sfxSource);
if (actor->unk_0D0 != 0) {
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
if ((gCurrentLevel == LEVEL_CORNERIA)) {
if (gLevelMode == LEVELMODE_ALL_RANGE) {
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
} else {
actor->unk_044 = 4;
actor->itemDrop = DROP_SILVER_RING_25p;
}
}
if (gCurrentLevel == LEVEL_AREA_6) {
actor->unk_044 = 22;
actor->itemDrop = DROP_SILVER_RING_10p;
}
func_enmy_80066254(actor);
}
@@ -1615,7 +1616,7 @@ void func_enmy_800660F0(Actor* actor) {
if (item->obj.status == OBJ_FREE) {
Item_Initialize(item);
item->obj.status = OBJ_INIT;
item->obj.id = D_enmy_800CFDF4[actor->unk_044];
item->obj.id = D_enmy_800CFDF4[actor->itemDrop];
item->obj.pos.x = actor->obj.pos.x;
item->obj.pos.y = actor->obj.pos.y;
item->obj.pos.z = actor->obj.pos.z;
@@ -1647,12 +1648,12 @@ void func_enmy_80066254(Actor* actor) {
!((D_versus_80178768[0] == 0) && (D_versus_80178768[1] == 0) && (D_versus_80178768[2] == 0))) {
D_ctx_80177C30[actor->unk_0D4 - 1] += actor->info.bonus;
}
} else if ((actor->obj.id != OBJ_ACTOR_197) || (actor->unk_0B6 != 1)) {
} else if ((actor->obj.id != OBJ_ACTOR_ALLRANGE) || (actor->unk_0B6 != 1)) {
if ((actor->unk_0D4 == 1) && (actor->info.bonus != 0)) {
gHitCount += actor->info.bonus;
D_ctx_80177850 = 15;
if ((gLevelMode == LEVELMODE_ALL_RANGE) && (D_play_80161A62 != 0)) {
switch (D_play_80161A62) {
if ((gLevelMode == LEVELMODE_ALL_RANGE) && (gDropHitCountItem != 0)) {
switch (gDropHitCountItem) {
case 9:
if (gCurrentLevel == LEVEL_KATINA) {
Radio_PlayMessage(gMsg_ID_18031, RCID_BILL);
@@ -1661,22 +1662,22 @@ void func_enmy_80066254(Actor* actor) {
case 4:
case 19:
case 29:
actor->unk_044 = 14;
actor->itemDrop = DROP_GOLD_RING_1;
break;
case 14:
actor->unk_044 = 9;
actor->itemDrop = DROP_LASERS;
break;
}
D_play_80161A62 = 0;
gDropHitCountItem = 0;
}
if (actor->obj.id == OBJ_ACTOR_197) {
if ((actor->aiType >= 4) && (actor->aiType < 8)) {
if (actor->obj.id == OBJ_ACTOR_ALLRANGE) {
if ((actor->aiType >= AI360_WOLF) && (actor->aiType < AI360_KATT)) {
func_360_8002E3E0(actor);
}
}
}
if (actor->unk_044) {
if (D_enmy_800CFE5C[actor->unk_044] < 0.0f) {
if (actor->itemDrop) {
if (D_enmy_800CFE5C[actor->itemDrop] < 0.0f) {
otherActor = gActors;
for (i = 0, otherActor = gActors; i < ARRAY_COUNT(gActors); i++, otherActor++) {
if ((otherActor->obj.status != OBJ_FREE) && (otherActor->index != actor->index) &&
@@ -1686,7 +1687,7 @@ void func_enmy_80066254(Actor* actor) {
}
func_enmy_800660F0(actor);
AUDIO_PLAY_SFX(0x4900000C, gDefaultSfxSource, 4);
} else if (actor->unk_044 == 24) {
} else if (actor->itemDrop == DROP_TEAM_MESG) {
if (gTeamShields[3] > 0) {
Radio_PlayMessage(gMsg_ID_20261, RCID_PEPPY);
} else if (gTeamShields[2] > 0) {
@@ -1694,7 +1695,7 @@ void func_enmy_80066254(Actor* actor) {
} else if (gTeamShields[1] > 0) {
Radio_PlayMessage(gMsg_ID_20262, RCID_FALCO);
}
} else if (Rand_ZeroOne() <= D_enmy_800CFE5C[actor->unk_044]) {
} else if (Rand_ZeroOne() <= D_enmy_800CFE5C[actor->itemDrop]) {
func_enmy_800660F0(actor);
}
}
@@ -1718,15 +1719,15 @@ void func_enmy_8006654C(Actor* actor) {
if (Animation_GetFrameCount(&D_CO_6029528) < actor->unk_0B6) {
actor->unk_0B6 = 0;
}
if ((actor->obj.rot.z < 15.0f) && (actor->unk_0B6 < 0x14)) {
if ((actor->obj.rot.z < 15.0f) && (actor->unk_0B6 < 20)) {
actor->obj.rot.z += 1.0f;
}
if ((actor->obj.rot.z > -15.0f) && (actor->unk_0B6 >= 0x15)) {
if ((actor->obj.rot.z > -15.0f) && (actor->unk_0B6 > 20)) {
actor->obj.rot.z -= 1.0f;
}
if ((actor->unk_0B6 == 0x14) || (actor->unk_0B6 == 0x28)) {
if ((actor->unk_0B6 == 20) || (actor->unk_0B6 == 40)) {
actor->state++;
actor->timer_0BC = 0x14;
actor->timer_0BC = 20;
}
break;
case 1:
@@ -1767,7 +1768,7 @@ void func_enmy_8006684C(Actor* actor) {
actor->vel.y = 0.0f;
if (actor->timer_0BE == 1) {
Object_Kill(&actor->obj, actor->sfxSource);
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
func_enmy_80066254(actor);
AUDIO_PLAY_SFX(0x2903B009, actor->sfxSource, 4);
BonusText_Display(actor->obj.pos.x, actor->obj.pos.y + 250.0f, actor->obj.pos.z, 3);
@@ -1859,7 +1860,7 @@ void func_enmy_80066D5C(Object_80* obj80) {
obj80->unk_44 = 40;
func_enmy_80066A8C(obj80);
obj80->state = 0;
D_ctx_80178480 = 25;
gCameraShake = 25;
AUDIO_PLAY_SFX(0x19130003, obj80->sfxSource, 4);
}
break;
@@ -1982,7 +1983,7 @@ void func_enmy_800674B4(f32 xPos, f32 yPos, f32 zPos, f32 xRot, f32 yRot, f32 ar
}
}
void func_enmy_8006753C(Actor* actor) {
void ActorSupplies_Update(Actor* actor) {
Player* player = &gPlayer[0];
s32 i;
@@ -2004,13 +2005,13 @@ void func_enmy_8006753C(Actor* actor) {
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 5.0f);
if (((player[0].wings.rightState <= WINGSTATE_BROKEN) || (player[0].wings.leftState <= WINGSTATE_BROKEN)) &&
(player[0].form != FORM_LANDMASTER)) {
actor->unk_044 = 23;
actor->itemDrop = DROP_WING_REPAIR;
} else if (gPlayer[0].shields < 128) {
actor->unk_044 = 25;
actor->itemDrop = DROP_SILVER_STAR;
} else if ((gLaserStrength[0] == LASERS_SINGLE) && (player[0].form != FORM_LANDMASTER)) {
actor->unk_044 = 9;
actor->itemDrop = DROP_LASERS;
} else {
actor->unk_044 = 5;
actor->itemDrop = DROP_BOMB;
}
func_enmy_80066254(actor);
for (i = 0; i < 6; i++) {
@@ -2031,7 +2032,7 @@ void func_enmy_8006753C(Actor* actor) {
gRadarMarks[63].unk_10 = 0.0f;
}
void func_enmy_80067874(Actor* actor) {
void ActorSupplies_Draw(Actor* actor) {
s32 i;
Lights_SetOneLight(&gMasterDisp, -60, -60, 60, 150, 150, 150, 20, 20, 20);
@@ -2065,7 +2066,7 @@ void func_enmy_80067A40(void) {
}
}
void func_enmy_80067B1C(Item* item) {
void Item1up_Update(Item* item) {
func_enmy_80066EF0(item);
func_enmy_800671D0(item);
if (item->collected) {
@@ -2080,7 +2081,7 @@ void func_enmy_80067B1C(Item* item) {
}
}
void func_enmy_80067BEC(Item* item) {
void ItemPickup_Update(Item* item) {
func_enmy_80066EF0(item);
func_enmy_800671D0(item);
if (item->state == 0) {
@@ -2134,7 +2135,7 @@ void func_enmy_80067BEC(Item* item) {
}
}
void func_enmy_80067F6C(Item* item) {
void ItemLasers_Update(Item* item) {
if (!gVersusMode &&
((gPlayer[0].wings.leftState <= WINGSTATE_BROKEN) || (gPlayer[0].wings.rightState <= WINGSTATE_BROKEN))) {
item->obj.id = OBJ_ITEM_WING_REPAIR;
@@ -2142,11 +2143,11 @@ void func_enmy_80067F6C(Item* item) {
item->timer_48 = 2000;
AUDIO_PLAY_SFX(0x1900302B, item->sfxSource, 0);
} else {
func_enmy_80067BEC(item);
ItemPickup_Update(item);
}
}
void func_enmy_80068020(Item* item) {
void ItemSupplyRing_Update(Item* item) {
Vec3f sp4C;
Vec3f sp40;
@@ -2159,7 +2160,7 @@ void func_enmy_80068020(Item* item) {
item->state = 1;
item->timer_48 = 50;
if (item->obj.id == OBJ_ITEM_SILVER_RING) {
gPlayer[item->playerNum].heal += 0x20;
gPlayer[item->playerNum].heal += 32;
func_enmy_80060F30(gPlayer[item->playerNum].sfxSource, 0x4900200E, item->playerNum);
} else if (item->obj.id == OBJ_ITEM_GOLD_RING) {
gGoldRingCount[0]++;
@@ -2170,15 +2171,15 @@ void func_enmy_80068020(Item* item) {
if (gCurrentLevel != LEVEL_TRAINING) {
gLifeCount[item->playerNum]++;
}
gPlayer[item->playerNum].heal += 0x20;
gPlayer[item->playerNum].heal += 32;
BonusText_Display(gPlayer[item->playerNum].pos.x, gPlayer[item->playerNum].pos.y,
gPlayer[item->playerNum].unk_138, BONUS_TEXT_1UP);
} else {
gPlayer[item->playerNum].heal += 0x20;
gPlayer[item->playerNum].heal += 32;
func_enmy_80060F30(gPlayer[item->playerNum].sfxSource, 0x49003013, item->playerNum);
}
} else {
gPlayer[item->playerNum].heal += 0x80;
gPlayer[item->playerNum].heal += 128;
func_enmy_80060F30(gPlayer[item->playerNum].sfxSource, 0x4900200D, item->playerNum);
}
}
@@ -2223,15 +2224,15 @@ void func_enmy_80068020(Item* item) {
}
}
void func_enmy_800685D8(Item* item) {
func_enmy_80068020(item);
void ItemSilverStar_Update(Item* item) {
ItemSupplyRing_Update(item);
}
void func_enmy_800685F8(Item* item) {
func_enmy_80068020(item);
void ItemGoldRing_Update(Item* item) {
ItemSupplyRing_Update(item);
}
void func_enmy_80068618(Item* item) {
void ItemWingRepair_Update(Item* item) {
func_enmy_80066EF0(item);
func_enmy_800671D0(item);
if (item->collected) {
@@ -2243,7 +2244,7 @@ void func_enmy_80068618(Item* item) {
}
}
void func_enmy_80068688(Item* item) {
void ItemMeteoWarp_Update(Item* item) {
func_enmy_80066EF0(item);
if (item->state > 0) {
if (item->state == 1) {
@@ -2285,7 +2286,7 @@ void func_enmy_80068688(Item* item) {
}
}
void func_enmy_80068914(Item* item) {
void ItemCheckpoint_Update(Item* item) {
s32 i;
func_enmy_80066EF0(item);
@@ -2320,7 +2321,7 @@ void func_enmy_80068914(Item* item) {
gPlayer[item->playerNum].heal = 128;
item->state++;
item->timer_48 = 15;
D_80161A8C = D_80161A88;
D_ctx_80161A8C = D_ctx_80161A88;
D_ctx_80177CB0 = -item->obj.pos.z;
D_ctx_80177CB0 -= 250.0f;
D_ctx_80177CA0 = D_ctx_80177DC8;
@@ -2361,13 +2362,13 @@ void func_enmy_80068C88(Item* item) {
case OBJ_ITEM_333:
break;
case OBJ_ITEM_328:
gPlayer[0].unk_228 = 0x30;
gPlayer[0].flags_228 = 0x30;
break;
case OBJ_ITEM_329:
gPlayer[0].unk_228 = 0x20;
gPlayer[0].flags_228 = 0x20;
break;
case OBJ_ITEM_330:
gPlayer[0].unk_228 = 0x10;
gPlayer[0].flags_228 = 0x10;
break;
}
}
@@ -2435,12 +2436,12 @@ void func_enmy_80068FE0(Object_4C* obj4C) {
}
}
void func_enmy_800690D0(s32 index, ObjectId objId) {
void Object_Dying(s32 index, ObjectId objId) {
switch (objId) {
case OBJ_ACTOR_200:
func_enmy2_8007717C(&gActors[index]);
case OBJ_ACTOR_EVENT:
ActorEvent_Dying(&gActors[index]);
break;
case OBJ_ACTOR_197:
case OBJ_ACTOR_ALLRANGE:
if (gCurrentLevel == LEVEL_VENOM_ANDROSS) {
Andross_801888F4(&gActors[index]);
} else {
@@ -2451,7 +2452,7 @@ void func_enmy_800690D0(s32 index, ObjectId objId) {
func_enmy2_800763A4(&gActors[index]);
break;
case OBJ_ACTOR_194:
func_enmy2_8006B0A0(&gActors[index]);
Actor194_Init(&gActors[index]);
break;
case OBJ_ACTOR_186:
Meteo_80187B08(&gActors[index]);
@@ -2486,12 +2487,12 @@ void func_enmy_800693E8(Actor* actor) {
actor->obj.pos.y += actor->vel.y;
actor->vel.y -= actor->gravity;
if ((D_80161AB8 != 0) && (actor->obj.id != OBJ_ACTOR_198) &&
((gCurrentLevel != LEVEL_MACBETH) || (actor->obj.id == OBJ_ACTOR_200))) {
if ((D_ctx_80161AB8 != 0) && (actor->obj.id != OBJ_ACTOR_TEAM_BOSS) &&
((gCurrentLevel != LEVEL_MACBETH) || (actor->obj.id == OBJ_ACTOR_EVENT))) {
f32 var_fv0 = 4000.0f;
if ((actor->obj.id == OBJ_ACTOR_236) || (gCurrentLevel == LEVEL_MACBETH) ||
((actor->obj.id == OBJ_ACTOR_200) && (actor->unk_0B4 == 56))) {
((actor->obj.id == OBJ_ACTOR_EVENT) && (actor->unk_0B4 == 56))) {
var_fv0 = 8000.0f;
} else if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_8) {
var_fv0 = 100000.0f;
@@ -2512,7 +2513,7 @@ void func_enmy_800693E8(Actor* actor) {
case OBJ_ACTOR_194:
D_ctx_80176550[actor->unk_046] = 0;
break;
case OBJ_ACTOR_200:
case OBJ_ACTOR_EVENT:
if ((actor->unk_0B4 >= 200) && (actor->unk_0B4 < 300)) {
D_ctx_80176550[actor->unk_046] = 0;
} else if ((actor->unk_0B4 == 38) && (actor->unk_046 != 2)) {
@@ -2532,7 +2533,7 @@ void func_enmy_80069658(Boss* boss) {
boss->obj.pos.y += boss->vel.y;
boss->obj.pos.z += boss->vel.z;
boss->vel.y -= boss->gravity;
if ((D_80161AB8 != 0) && ((boss->obj.pos.z + D_ctx_80177D20) > (boss->info.unk_10 - gPlayer[0].camEye.z))) {
if ((D_ctx_80161AB8 != 0) && ((boss->obj.pos.z + D_ctx_80177D20) > (boss->info.unk_10 - gPlayer[0].camEye.z))) {
if (gPlayer[0].camEye.z) {} // fake
Object_Kill(&boss->obj, boss->sfxSource);
}
@@ -2563,7 +2564,7 @@ void func_enmy_800696F8(Object_80* obj80) {
}
void func_enmy_80069858(Object_4C* obj4C) {
if (D_80161AB8 != 0) {
if (D_ctx_80161AB8 != 0) {
f32 temp_fv0 = fabsf(obj4C->obj.pos.x - gPlayer[0].camEye.x);
f32 var_fa0 = 500.0f;
@@ -2583,7 +2584,7 @@ void func_enmy_80069924(Effect* effect) {
effect->obj.pos.x += effect->vel.x;
effect->obj.pos.y += effect->vel.y;
effect->obj.pos.z += effect->vel.z;
if (D_80161AB8 != 0) {
if (D_ctx_80161AB8 != 0) {
if ((gPlayer[0].camEye.z + effect->info.unk_10) < (effect->obj.pos.z + D_ctx_80177D20)) {
Object_Kill(&effect->obj, effect->sfxSource);
} else if ((fabsf(effect->obj.pos.y - gPlayer[0].camEye.y) > 25000.0f) ||
@@ -2594,7 +2595,7 @@ void func_enmy_80069924(Effect* effect) {
}
void func_enmy_80069A10(Item* item) {
if (D_80161AB8 != 0) {
if (D_ctx_80161AB8 != 0) {
f32 temp = (0.0f - gPlayer[0].camEye.z);
if ((item->info.unk_10 - temp) < (item->obj.pos.z + D_ctx_80177D20)) {
@@ -2659,7 +2660,7 @@ void Actor_Update(Actor* actor) {
case OBJ_DYING:
func_enmy_800693E8(actor);
if (actor->obj.status != OBJ_FREE) {
func_enmy_800690D0(actor->index, actor->obj.id);
Object_Dying(actor->index, actor->obj.id);
}
break;
}
@@ -2702,7 +2703,7 @@ void Boss_Update(Boss* boss) {
case OBJ_DYING:
func_enmy_80069658(boss);
if (boss->obj.status != OBJ_FREE) {
func_enmy_800690D0(boss->index, boss->obj.id);
Object_Dying(boss->index, boss->obj.id);
}
break;
}
@@ -2742,7 +2743,7 @@ void Object_4C_Update(Object_4C* obj4C) {
break;
case OBJ_DYING:
func_enmy_80069858(obj4C);
func_enmy_800690D0(obj4C->index, obj4C->obj.id);
Object_Dying(obj4C->index, obj4C->obj.id);
break;
}
}
@@ -2860,12 +2861,12 @@ void Object_UpdateAll(void) {
Item* item;
Effect* effect;
D_80161AB8 = 0;
D_ctx_80161AB8 = 0;
if ((gLevelMode == LEVELMODE_ON_RAILS) &&
((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_1) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) ||
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_4) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_8) ||
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_9) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_6))) {
D_80161AB8 = 1;
D_ctx_80161AB8 = 1;
}
if (gLevelMode != LEVELMODE_ALL_RANGE) {
if ((D_ctx_80178488 != 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) {
+1731 -1742
View File
File diff suppressed because it is too large Load Diff
+10 -10
View File
@@ -21,10 +21,10 @@ f32 D_game_80161A44;
s32 D_game_800D2860[4] = { true, true, true, true };
s32 D_game_800D2870 = 0;
static s32 D_game_800D2874[] = { 0, 160, 0, 160 };
static s32 D_game_800D2884[] = { 159, 319, 159, 319 };
static s32 D_game_800D2894[] = { 0, 0, 120, 120 };
static s32 D_game_800D28A4[] = { 119, 119, 239, 239 };
static s32 sVsCameraULx[] = { 0, SCREEN_WIDTH / 2, 0, SCREEN_WIDTH / 2 };
static s32 sVsCameraLRx[] = { SCREEN_WIDTH / 2 - 1, SCREEN_WIDTH - 1, SCREEN_WIDTH / 2 - 1, SCREEN_WIDTH - 1 };
static s32 sVsCameraULy[] = { 0, 0, SCREEN_HEIGHT / 2, SCREEN_HEIGHT / 2 };
static s32 sVsCameraLRy[] = { SCREEN_HEIGHT / 2 - 1, SCREEN_HEIGHT / 2 - 1, SCREEN_HEIGHT - 1, SCREEN_HEIGHT - 1 };
static s32 sOverlaySetups[] = {
/* LEVEL_CORNERIA */ OVL_SETUP_CORNERIA,
/* LEVEL_METEO */ OVL_SETUP_METEO,
@@ -56,7 +56,7 @@ void Game_Initialize(void) {
gGameState = GSTATE_BOOT;
D_Timer_8017783C = 0;
gBgColor = 0;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
D_game_80161A3C = 45.0f;
D_game_80161A40 = 10.0f;
D_game_80161A44 = 12800.0f;
@@ -150,7 +150,7 @@ void func_game_800A1C14(Gfx** arg0) {
gDPFillRectangle((*arg0)++, 8, 8, SCREEN_WIDTH - 8 - 1, SCREEN_HEIGHT - 8 - 1);
gDPSetColorImage((*arg0)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, gFrameBuffer);
if (gBlurAlpha < 0xFF) {
if (gBlurAlpha < 255) {
gDPPipeSync((*arg0)++);
gDPSetCycleType((*arg0)++, G_CYC_1CYCLE);
gDPSetCombineMode((*arg0)++, G_CC_PRIMITIVE, G_CC_PRIMITIVE);
@@ -518,13 +518,13 @@ void Game_Update(void) {
for (i = 0; i < gCamCount; i++) {
if (gPlayer[i].timer_224 != 0) {
Graphics_FillRectangle(&gMasterDisp, D_game_800D2874[i], D_game_800D2894[i], D_game_800D2884[i],
D_game_800D28A4[i], D_ctx_80178348, D_ctx_80178350, D_ctx_80178354,
Graphics_FillRectangle(&gMasterDisp, sVsCameraULx[i], sVsCameraULy[i], sVsCameraLRx[i],
sVsCameraLRy[i], D_ctx_80178348, D_ctx_80178350, D_ctx_80178354,
D_ctx_80178340);
spBB = 1;
} else {
Graphics_FillRectangle(&gMasterDisp, D_game_800D2874[i], D_game_800D2894[i], D_game_800D2884[i],
D_game_800D28A4[i], D_ctx_80178390[i], D_ctx_801783A0[i], D_ctx_801783B0[i],
Graphics_FillRectangle(&gMasterDisp, sVsCameraULx[i], sVsCameraULy[i], sVsCameraLRx[i],
sVsCameraLRy[i], D_ctx_80178390[i], D_ctx_801783A0[i], D_ctx_801783B0[i],
D_ctx_80178380[i]);
}
}
+49 -48
View File
@@ -24,7 +24,7 @@ s32 gTotalHits;
s32 D_80161718;
s32 D_8016171C;
f32 D_hud_80161720[3];
s32 D_hud_8016172C;
s32 gDisplayedHitCount;
s32 D_hud_80161730;
s32 gShowBossHealth;
s32 D_80161738[4];
@@ -229,12 +229,12 @@ void func_hud_80084B94(s32 arg0) {
void func_hud_80084E78(Gfx** gfxP, void* arg1, void* arg2, u32 arg3, u32 arg4, f32 arg5, f32 arg6, f32 arg7, f32 arg8,
f32 arg9, f32 argA) {
gDPPipeSync((*gfxP)++);
gDPLoadTLUT((*gfxP)++, 0x100, 0x100, arg2);
gDPLoadTLUT((*gfxP)++, 256, 256, arg2);
gDPLoadTextureBlock((*gfxP)++, arg1, G_IM_FMT_CI, G_IM_SIZ_8b, arg3, arg4, 0, G_TX_NOMIRROR, G_TX_NOMIRROR,
G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD, G_TX_NOLOD);
gSPTextureRectangle((*gfxP)++, (arg5 * 4.0f), (arg6 * 4.0f), ((arg5 + (arg9 * arg7)) * 4.0f),
((arg6 + (argA * arg8)) * 4.0f), G_TX_RENDERTILE, 0 * 0x20, 0 * 0x20, (s32) (1 / arg7 * 0x400),
(s32) (1 / arg8 * 0x400));
((arg6 + (argA * arg8)) * 4.0f), G_TX_RENDERTILE, 0 * 32, 0 * 32, (s32) (1 / arg7 * (32 * 32)),
(s32) (1 / arg8 * (32 * 32)));
}
void func_hud_800853A4(f32 xPos, f32 yPos, f32 xScale, f32 yScale) {
@@ -723,7 +723,7 @@ void func_hud_80086CC8(void) {
f32 sp18;
f32 temp;
if ((D_ctx_80177854 != 0x64) && (D_ctx_80177838 != 0)) {
if ((D_ctx_80177854 != 100) && (D_ctx_80177838 != 0)) {
D_ctx_80177838 -= 1;
}
@@ -1564,7 +1564,7 @@ void func_hud_80088970(void) {
func_8001CA24(0);
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_6;
D_play_Timer_80161A60 = 0;
gScreenFlashTimer = 0;
gPlayer[0].timer_1F8 = 0;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_8017837C = 7;
@@ -1962,7 +1962,7 @@ void func_hud_8008A240(void) {
continue;
}
if (gPlayer[i].state_1C8 != 3) {
if (gPlayer[i].state_1C8 != PLAYERSTATE_1C8_3) {
continue;
}
@@ -2378,7 +2378,7 @@ void func_hud_8008B5B0(f32 x, f32 y) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
func_hud_800856C0(x + 8.0f, y + 2.0f, D_801617A8, 1.0f, D_801617AC);
RCP_SetupDL(&gMasterDisp, 0x4C);
gDPSetPrimColor(gMasterDisp++, 0, 0, D_800D1EB4, D_800D1EB8, D_800D1EBC, 0xFF);
gDPSetPrimColor(gMasterDisp++, 0, 0, D_800D1EB4, D_800D1EB8, D_800D1EBC, 255);
func_hud_80085618(x, y, 1.0f, 1.0f);
func_hud_800855C4(x + 7.0f + (D_801617A8 * 6.0f * 8.0f), y, 1.0f, 1.0f);
func_hud_8008566C(x + 7.0f, y, D_801617A8 * 6.0f, 1.0f);
@@ -2458,8 +2458,9 @@ s32 func_hud_8008B774(void) {
for (i = 0; i < 60; i++) {
if ((gActors[i].obj.status == OBJ_ACTIVE) && (gActors[i].iwork[12] == temp)) {
if ((gActors[i].unk_0B4 == 2) || (gActors[i].unk_0B4 == 43) ||
((gActors[i].obj.id == 198) &&
((gActors[i].aiType == 1) || (gActors[i].aiType == 2) || (gActors[i].aiType == 3)))) {
((gActors[i].obj.id == OBJ_ACTOR_TEAM_BOSS) &&
((gActors[i].aiType == AI360_FALCO) || (gActors[i].aiType == AI360_SLIPPY) ||
(gActors[i].aiType == AI360_PEPPY)))) {
if (gActors[i].timer_0C6) {
ret = 1;
} else {
@@ -2770,8 +2771,8 @@ void func_hud_8008CA44(void) {
s32 i;
s32 j;
if ((gPlayer[gPlayerNum].unk_228 != 0) && (gPlayer[gPlayerNum].timer_210 == 0) && (D_ctx_80177854 != 100)) {
j = gPlayer[gPlayerNum].unk_228;
if ((gPlayer[gPlayerNum].flags_228 != 0) && (gPlayer[gPlayerNum].timer_210 == 0) && (D_ctx_80177854 != 100)) {
j = gPlayer[gPlayerNum].flags_228;
for (i = 0; i < 12; i++) {
if ((j & D_800D2048[i]) != D_800D2048[i]) {
@@ -3148,7 +3149,7 @@ void func_hud_8008E2C8(f32 arg0, f32 arg1, s32* arg2, f32 arg3) {
if (i & 1) {
RCP_SetupDL_78();
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
TextureRect_4bCI(&gMasterDisp, D_1011E80, D_1011EC0, 0x10, 8, (var_fs0 * arg3) + arg0, arg1, arg3, arg3);
TextureRect_4bCI(&gMasterDisp, D_1011E80, D_1011EC0, 16, 8, (var_fs0 * arg3) + arg0, arg1, arg3, arg3);
} else {
RCP_SetupDL_76();
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255);
@@ -3998,7 +3999,7 @@ s32 func_hud_80090E8C(Actor* actor) {
}
}
if (actor->aiType == 1) {
if (actor->aiType == AI360_FALCO) {
var_fv1_2 = 3000.0f;
} else {
var_fv1_2 = 5000.0f;
@@ -4030,7 +4031,7 @@ bool func_hud_800910C0(Actor* actor) {
actor->fwork[5] = actor->vwork[28].y;
actor->fwork[6] = gBosses[0].obj.pos.z + actor->vwork[28].z;
if (actor->aiType == 1) {
if (actor->aiType == AI360_FALCO) {
var_fv1 = 1500.0f;
} else {
var_fv1 = 3000.0f;
@@ -4079,15 +4080,15 @@ bool func_hud_80091368(Actor* actor) {
gTeamShields[actor->aiType] = 1;
switch (actor->aiType) {
case 1:
case AI360_FALCO:
Radio_PlayMessage(gMsg_ID_20220, RCID_FALCO);
break;
case 3:
case AI360_PEPPY:
Radio_PlayMessage(gMsg_ID_20221, RCID_PEPPY);
break;
case 2:
case AI360_SLIPPY:
Radio_PlayMessage(gMsg_ID_20222, RCID_SLIPPY);
break;
}
@@ -4178,7 +4179,7 @@ bool func_hud_800915FC(Actor* actor) {
}
if (actor->obj.pos.y + vec.y < 650.0f) {
ret = 1;
ret = true;
}
}
break;
@@ -4191,11 +4192,11 @@ bool func_hud_800915FC(Actor* actor) {
boss = &gBosses[0];
y = 650.0f;
if (actor->aiType < 8) {
if (actor->aiType < AI360_KATT) {
y = 720.0f;
}
if (boss->obj.id == 293) {
if (boss->obj.id == OBJ_BOSS_293) {
y = 280.0f;
}
@@ -4382,13 +4383,13 @@ bool func_hud_80091F00(Actor* actor) {
if ((actor->unk_0D0 == 3) && (actor->unk_0D4 == 1)) {
switch (actor->aiType) {
case 1:
case AI360_FALCO:
Radio_PlayMessage(gMsg_ID_20210, RCID_FALCO);
break;
case 3:
case AI360_PEPPY:
Radio_PlayMessage(gMsg_ID_20200, RCID_PEPPY);
break;
case 2:
case AI360_SLIPPY:
Radio_PlayMessage(gMsg_ID_20190, RCID_SLIPPY);
break;
}
@@ -4396,13 +4397,13 @@ bool func_hud_80091F00(Actor* actor) {
if ((actor->unk_0D0 != 3) && (actor->unk_0D4 == 1)) {
switch (actor->aiType) {
case 1:
case AI360_FALCO:
Radio_PlayMessage(gMsg_ID_20060, RCID_FALCO);
break;
case 3:
case AI360_PEPPY:
Radio_PlayMessage(gMsg_ID_20070, RCID_PEPPY);
break;
case 2:
case AI360_SLIPPY:
Radio_PlayMessage(gMsg_ID_20080, RCID_SLIPPY);
break;
}
@@ -4410,13 +4411,13 @@ bool func_hud_80091F00(Actor* actor) {
if ((actor->unk_0D4 == 2) || (actor->unk_0D4 == 100)) {
switch (actor->aiType) {
case 1:
case AI360_FALCO:
Radio_PlayMessage(gMsg_ID_20030, RCID_FALCO);
break;
case 3:
case AI360_PEPPY:
Radio_PlayMessage(gMsg_ID_20040, RCID_PEPPY);
break;
case 2:
case AI360_SLIPPY:
Radio_PlayMessage(gMsg_ID_20050, RCID_SLIPPY);
break;
}
@@ -4663,7 +4664,7 @@ bool func_hud_800927A0(Actor* actor) {
return ret;
}
void func_hud_80092D48(Actor* actor) {
void ActorTeamBoss_Init(Actor* actor) {
s32 D_800D22A8[] = { 1, 2, 3 };
if (gCurrentLevel != LEVEL_TITANIA) {
@@ -4673,7 +4674,7 @@ void func_hud_80092D48(Actor* actor) {
D_hud_800D1970++;
} else {
actor->state = 7;
actor->aiType = 2;
actor->aiType = AI360_SLIPPY;
actor->iwork[5] = 0;
gTeamShields[2] = 255;
}
@@ -4687,7 +4688,7 @@ void func_hud_80092D48(Actor* actor) {
AUDIO_PLAY_SFX(0x3100000CU, actor->sfxSource, 4U);
if (((D_hud_800D1970 & 3) == 2) && (gCurrentLevel == LEVEL_SECTOR_X)) {
if (((D_hud_800D1970 & 3) == AI360_SLIPPY) && (gCurrentLevel == LEVEL_SECTOR_X)) {
Object_Kill(&actor->obj, actor->sfxSource);
}
@@ -4696,7 +4697,7 @@ void func_hud_80092D48(Actor* actor) {
}
}
void func_hud_80092EC0(Actor* actor) {
void ActorTeamBoss_Update(Actor* actor) {
f32 var_fv1;
actor->health = gTeamShields[actor->aiType];
@@ -4866,10 +4867,10 @@ void func_hud_800933D8(f32 x, f32 y, f32 z, f32 arg3) {
}
if (player->unk_1D0 >= 5) {
effect->unk_4A = 0x60;
effect->unk_4A = 96;
effect->unk_46 = 4;
} else {
effect->unk_4A = 0x80;
effect->unk_4A = 128;
effect->unk_46 = 2;
}
}
@@ -5101,7 +5102,7 @@ void func_hud_800935E8(Player* player) {
Aquas_801BDF14();
AUDIO_PLAY_BGM(SEQ_ID_45);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_45);
case 3:
D_ctx_8017835C = 16;
@@ -5274,7 +5275,7 @@ void func_hud_800935E8(Player* player) {
D_ctx_80178488 = 1;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 50);
AUDIO_PLAY_BGM(SEQ_ID_14);
AUDIO_PLAY_BGM(SEQ_ID_AQUAS);
}
Aquas_801AC8A8(player->pos.x + RAND_FLOAT_CENTERED(10.0f), player->pos.y + RAND_FLOAT_CENTERED(10.0f),
@@ -5410,12 +5411,12 @@ void func_hud_80094D20(f32 x, f32 y) {
f32 y1;
f32 xScale;
if (gHitCount > D_hud_8016172C) {
temp3 = D_hud_8016172C + 1;
temp4 = D_hud_8016172C;
if (gHitCount > gDisplayedHitCount) {
temp3 = gDisplayedHitCount + 1;
temp4 = gDisplayedHitCount;
} else {
temp3 = gHitCount;
temp4 = D_hud_8016172C;
temp4 = gDisplayedHitCount;
}
boolTemp = 0;
@@ -5519,13 +5520,13 @@ void func_hud_80094D20(f32 x, f32 y) {
TextureRect_8bIA(&gMasterDisp, D_800D24DC[temp3], 16, 15, x1, y1, xScale, 1.0f);
}
if ((gHitCount != D_hud_8016172C) && (D_hud_80161720[0] == 0.0f) && (D_hud_80161720[1] == 0.0f) &&
if ((gHitCount != gDisplayedHitCount) && (D_hud_80161720[0] == 0.0f) && (D_hud_80161720[1] == 0.0f) &&
(D_hud_80161720[2] == 0.0f)) {
D_hud_8016172C++;
gDisplayedHitCount++;
if ((D_hud_8016172C == 4) || (D_hud_8016172C == 9) || (D_hud_8016172C == 14) || (D_hud_8016172C == 19) ||
(D_hud_8016172C == 24) || (D_hud_8016172C == 29)) {
D_play_80161A62 = D_hud_8016172C;
if ((gDisplayedHitCount == 4) || (gDisplayedHitCount == 9) || (gDisplayedHitCount == 14) ||
(gDisplayedHitCount == 19) || (gDisplayedHitCount == 24) || (gDisplayedHitCount == 29)) {
gDropHitCountItem = gDisplayedHitCount;
}
}
}
@@ -5889,7 +5890,7 @@ void func_hud_80095604(Player* player) {
break;
case 400:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 440:
+4 -4
View File
@@ -54,8 +54,8 @@ void Message_DisplayChar(Gfx** gfxPtr, u16 msgChar, s32 xpos, s32 ypos) {
gDPLoadTextureBlock_4b((*gfxPtr)++, gTextCharTextures[msgChar >> 2], G_IM_FMT_CI, 16, 13, msgChar & 3,
G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMIRROR | G_TX_WRAP, G_TX_NOMASK, G_TX_NOMASK, G_TX_NOLOD,
G_TX_NOLOD);
gSPTextureRectangle((*gfxPtr)++, xpos << 2, ypos << 2, (xpos + 13) << 2, (ypos + 13) << 2, G_TX_RENDERTILE, 0x40, 0,
0x400, 0x400);
gSPTextureRectangle((*gfxPtr)++, xpos << 2, ypos << 2, (xpos + 13) << 2, (ypos + 13) << 2, G_TX_RENDERTILE, 64, 0,
1024, 1024);
}
bool Message_DisplayText(Gfx** gfxPtr, u16* msgPtr, s32 xPos, s32 yPos, s32 len) {
@@ -66,7 +66,7 @@ bool Message_DisplayText(Gfx** gfxPtr, u16* msgPtr, s32 xPos, s32 yPos, s32 len)
gDPSetPrimColor((*gfxPtr)++, 0x00, 0x00, 255, 255, 255, 255);
gDPSetTextureLUT((*gfxPtr)++, G_TT_RGBA16);
gDPLoadTLUT((*gfxPtr)++, 64, 0x100, gTextCharPalettes);
gDPLoadTLUT((*gfxPtr)++, 64, 256, gTextCharPalettes);
// bug: if the for loop is skipped, print is never initialized
for (i = 0; msgPtr[i] != MSGCHAR_END && i < len; i++) {
@@ -117,7 +117,7 @@ void Message_DisplayScrollingText(Gfx** gfxPtr, u16* msgPtr, s32 xPos, s32 yPos,
s32 i;
gDPSetTextureLUT((*gfxPtr)++, G_TT_RGBA16);
gDPLoadTLUT((*gfxPtr)++, 64, 0x100, gTextCharPalettes);
gDPLoadTLUT((*gfxPtr)++, 64, 256, gTextCharPalettes);
for (i = 0; msgPtr[i] != 0 && i < len; i++) {
switch (msgPtr[i]) {
+70 -71
View File
@@ -39,8 +39,8 @@ u8 D_play_80161A50;
f32 D_play_80161A54;
s32 D_play_80161A58;
s32 D_play_80161A5C;
u16 D_play_Timer_80161A60;
u16 D_play_80161A62;
u16 gScreenFlashTimer;
u16 gDropHitCountItem;
s32 D_play_80161A64;
EnvSettings* sEnvSettings;
@@ -191,14 +191,14 @@ void func_play_800A46A0(Player* player) {
}
}
var_v1 = 7;
if (player->shields < 0x40) {
if (player->shields > 0x10) {
if (player->shields < 64) {
if (player->shields > 16) {
var_v1 = 0xF;
}
if (player->shields > 0x20) {
if (player->shields > 32) {
var_v1 = 0x1F;
}
if (player->shields > 0x30) {
if (player->shields > 48) {
var_v1 = 0x3F;
}
if ((player->unk_238 == 0) || (gLevelMode == LEVELMODE_ALL_RANGE)) {
@@ -232,7 +232,7 @@ void func_play_800A4C40(Player* player) {
Vec3f sp3C;
Vec3f sp30;
if (D_80161A88 == 2) {
if (D_ctx_80161A88 == 2) {
Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y, player->unk_138, 0);
Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1);
Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_4D8) * M_DTOR), 1);
@@ -502,7 +502,7 @@ void func_play_800A594C(void) {
} else if (gCurrentLevel == LEVEL_AQUAS) {
sEnvSettings = SEGMENTED_TO_VIRTUAL(&D_AQ_602E584);
}
D_ctx_80177C90 = sEnvSettings->seqId;
gBgmSeqId = sEnvSettings->seqId;
gLevelType = sEnvSettings->type;
D_ctx_801784AC = sEnvSettings->unk_04;
gBgColor = sEnvSettings->bgColor;
@@ -511,9 +511,9 @@ void func_play_800A594C(void) {
gFogBlue = sEnvSettings->fogB;
gFogNear = sEnvSettings->fogN;
gFogFar = sEnvSettings->fogF;
gLight1R = gLight2R = D_80161A70 = sEnvSettings->lightR;
gLight1G = gLight2G = D_80161A74 = sEnvSettings->lightG;
gLight1B = gLight2B = D_80161A78 = sEnvSettings->lightB;
gLight1R = gLight2R = D_ctx_80161A70 = sEnvSettings->lightR;
gLight1G = gLight2G = D_ctx_80161A74 = sEnvSettings->lightG;
gLight1B = gLight2B = D_ctx_80161A78 = sEnvSettings->lightB;
gAmbientR = sEnvSettings->ambR;
gAmbientG = sEnvSettings->ambG;
gAmbientB = sEnvSettings->ambB;
@@ -683,9 +683,9 @@ void func_play_800A6590(void) {
}
D_ctx_8017835C = 16;
Math_SmoothStepToF(&D_ctx_8017836C, 0.0f, 1.0f, 0.04f, 0.001f);
if (D_play_Timer_80161A60 != 0) {
D_play_Timer_80161A60--;
if (D_play_Timer_80161A60 & 2) {
if (gScreenFlashTimer != 0) {
gScreenFlashTimer--;
if (gScreenFlashTimer & 2) {
D_ctx_80178348 = 255;
D_ctx_80178350 = 255;
D_ctx_80178354 = 255;
@@ -770,7 +770,7 @@ void func_play_800A69F8(s32 state, f32 xPos, f32 yPos, f32 zPos) {
}
// has to be int. s32 and u32 don't match
int func_play_800A6A74(void) {
bool func_play_800A6A74(void) {
return gGoldRingCount[0] && gGoldRingCount[1] && gGoldRingCount[2] && gGoldRingCount[3];
}
@@ -1228,7 +1228,7 @@ bool func_play_800A8054(ObjectId objId, f32 arg1, f32 arg2, f32 arg3, f32 arg4,
case OBJ_BOSS_309:
colId = COL1_7;
break;
case OBJ_UNK_1000:
case ACTOR_EVENT_ID:
colId = COL1_3;
break;
case OBJ_BOSS_313:
@@ -1595,7 +1595,7 @@ void func_play_800A8BA4(Player* player) {
}
} else if (player->form == FORM_ARWING) {
if ((player->hit1.y < (gGroundLevel + 13.0f)) && (player->state_1C8 != PLAYERSTATE_1C8_4)) {
if (D_80161A88 == 2) {
if (D_ctx_80161A88 == 2) {
player->unk_1F4 = 7;
player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f;
} else {
@@ -1608,7 +1608,7 @@ void func_play_800A8BA4(Player* player) {
}
}
if ((player->hit2.y < (gGroundLevel + 13.0f)) && (player->state_1C8 != PLAYERSTATE_1C8_4)) {
if (D_80161A88 == 2) {
if (D_ctx_80161A88 == 2) {
player->unk_1F4 = 7;
player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f;
} else {
@@ -1903,15 +1903,15 @@ void func_play_800A8BA4(Player* player) {
if (temp_v0 != 0) {
Player_ApplyDamage(player, temp_v0, actor->info.damage);
}
} else if (actor->obj.id == OBJ_ACTOR_200) {
} else if (actor->obj.id == OBJ_ACTOR_EVENT) {
if (actor->unk_0B4 == 42) {
temp_v0 =
func_play_800A8304(player, OBJ_UNK_1000, actor->obj.pos.x, actor->obj.pos.y,
func_play_800A8304(player, ACTOR_EVENT_ID, actor->obj.pos.x, actor->obj.pos.y,
actor->obj.pos.z, actor->obj.rot.x, actor->obj.rot.y, actor->obj.rot.z);
if (temp_v0 != 0) {
Player_ApplyDamage(player, temp_v0, actor->info.damage);
}
} else if (actor->unk_0B4 == 63) {
} else if (actor->unk_0B4 == EINFO_63) {
spfD4.x = fabsf(actor->obj.pos.x - player->pos.x);
spfD4.y = fabsf(actor->obj.pos.y - player->pos.y);
spfD4.z = fabsf(actor->obj.pos.z - player->unk_138);
@@ -2573,8 +2573,8 @@ void func_play_800ABAB4(void) {
}
D_ctx_80177E7C = 0;
func_play_800A594C();
D_play_80161A62 = D_ctx_8017796C = D_Timer_80177B44 = D_ctx_80177B4C = D_360_8015F928 = D_360_8015F940 =
gBossActive = gGameFrameCount = D_ctx_80178480 = D_ctx_801782FC = gBossFrameCount = D_enmy2_80161690 =
gDropHitCountItem = D_ctx_8017796C = D_Timer_80177B44 = D_ctx_80177B4C = D_360_8015F928 = D_360_8015F940 =
gBossActive = gGameFrameCount = gCameraShake = D_ctx_801782FC = gBossFrameCount = D_enmy2_80161690 =
D_360_8015F900 = D_ctx_80177930 = 0;
if (gCurrentLevel == LEVEL_SECTOR_X) {
@@ -2587,7 +2587,7 @@ void func_play_800ABAB4(void) {
} else {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
}
D_play_Timer_80161A60 = D_ctx_80178360 = D_ctx_80178364 = D_ctx_80178368 = D_hud_80161704 = D_hud_80161708 =
gScreenFlashTimer = D_ctx_80178360 = D_ctx_80178364 = D_ctx_80178368 = D_hud_80161704 = D_hud_80161708 =
D_ctx_80178340 = D_ctx_80177C50 = D_360_8015F93C = D_ctx_80177B6C = 0;
gCsFrameCount = 0;
@@ -3434,10 +3434,10 @@ void func_play_800AE4A4(Player* player) {
}
player->pos.z += player->vel.z;
if (player->unk_0A0 - 100.0f < player->pos.y) {
player->unk_228 = 8;
player->flags_228 = 8;
}
if (player->pos.y < -(player->unk_0A0 - 100.0f)) {
player->unk_228 = 4;
player->flags_228 = 4;
}
func_play_800AE278(player);
player->unk_138 = player->pos.z;
@@ -3669,16 +3669,16 @@ void func_play_800AF07C(Player* player) {
}
if (player->pos.x > (player->unk_0AC + (player->unk_09C - 100.0f))) {
player->unk_228 = 1;
player->flags_228 = 1;
}
if (player->pos.x < (player->unk_0AC - (player->unk_09C - 100.0f))) {
player->unk_228 = 2;
player->flags_228 = 2;
}
if (player->pos.y > (player->unk_0B0 + (player->unk_0A0 - 100.0f))) {
player->unk_228 = 8;
player->flags_228 = 8;
}
if (player->pos.y < (player->unk_0B0 - (player->unk_0A0 - 100.0f))) {
player->unk_228 = 4;
player->flags_228 = 4;
}
player->pos.x += player->vel.x;
@@ -3996,7 +3996,7 @@ void func_play_800B0194(Player* player) {
sp48 = SEGMENTED_TO_VIRTUAL(D_versus_302E65C);
break;
}
Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 0x18, 0.2f, 10.0f, 0.01f);
Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 24, 0.2f, 10.0f, 0.01f);
Math_SmoothStepToF(&player->unk_080, -3.0f, 0.1f, 2.0f, 0.1f);
Math_SmoothStepToF(&player->unk_164, 0.0f, 0.03f, 1.0f, 0.0001f);
Math_SmoothStepToF(&player->unk_168, 0.0f, 0.03f, 1.0f, 0.0001f);
@@ -4019,7 +4019,7 @@ void func_play_800B0194(Player* player) {
sp48 = SEGMENTED_TO_VIRTUAL(D_versus_302EA4C);
break;
}
Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 0x18, 0.2f, 10.0f, 0.01f);
Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 24, 0.2f, 10.0f, 0.01f);
}
player->unk_0D4 = 2.0f;
if ((gInputPress->button & Z_TRIG) && (player->unk_1D4 != 0)) {
@@ -4065,14 +4065,14 @@ void func_play_800B0F50(Player* playerx) {
Player* player = playerx; // fake?
D_ctx_80177BAC = 0;
player->shields = 0xFF;
player->shields = 255;
if (gVersusMode) {
switch (gHandicap[gPlayerNum]) {
case 1:
player->shields = 0xBF;
player->shields = 191;
break;
case 2:
player->shields = 0x7F;
player->shields = 127;
break;
}
}
@@ -4153,9 +4153,9 @@ void func_play_800B0F50(Player* playerx) {
break;
}
if (gCurrentLevel != LEVEL_CORNERIA) {
D_80161A8C = 0;
D_ctx_80161A8C = 0;
}
gGoldRingCount[0] = D_80161A94[0];
gGoldRingCount[0] = D_ctx_80161A94[0];
do {
if (gGoldRingCount[0] > 3) {
gGoldRingCount[0] -= 3;
@@ -4183,11 +4183,11 @@ void func_play_800B0F50(Player* playerx) {
D_hud_80161720[0] = 0.0f;
D_hud_80161720[1] = 0.0f;
D_hud_80161720[2] = 0.0f;
D_hud_8016172C = gHitCount;
gDisplayedHitCount = gHitCount;
D_hud_80161730 = 0;
D_enmy_80161684 = D_play_80161A50;
D_ctx_80177DC8 = D_ctx_80177CA0;
D_80161A88 = D_80161A8C;
D_ctx_80161A88 = D_ctx_80161A8C;
D_ctx_80177D20 = player->unk_144 = D_ctx_80177CB0;
player->pos.z = player->unk_138 = -player->unk_144;
if ((D_ctx_80177CA0 > 0) && (gLevelMode == LEVELMODE_ON_RAILS)) {
@@ -4205,8 +4205,7 @@ void func_play_800B0F50(Player* playerx) {
player->camEye.y = (player->pos.y * player->unk_148) + 10.0f;
player->camEye.x = player->pos.x * player->unk_148;
D_ctx_801779E8.x = D_ctx_801779E8.y = D_ctx_801779E8.z = D_ctx_801779D8.x = D_ctx_801779D8.y = D_ctx_801779D8.z =
0.0f;
gPlayerCamAt.x = gPlayerCamAt.y = gPlayerCamAt.z = gPlayerCamEye.x = gPlayerCamEye.y = gPlayerCamEye.z = 0.0f;
if (gVersusMode) {
gLaserStrength[gPlayerNum] = LASERS_SINGLE;
@@ -4280,7 +4279,7 @@ void func_play_800B0F50(Player* playerx) {
case LEVEL_CORNERIA:
player->state_1C8 = PLAYERSTATE_1C8_2;
player->unk_204 = 1;
D_80161A88 = D_80161A8C = 2;
D_ctx_80161A88 = D_ctx_80161A8C = 2;
func_play_800A3FB0();
break;
case LEVEL_BOLSE:
@@ -4331,24 +4330,24 @@ void func_play_800B0F50(Player* playerx) {
player->unk_234 = 1;
switch (gCurrentLevel) {
case LEVEL_CORNERIA:
AUDIO_PLAY_BGM(SEQ_ID_37);
AUDIO_PLAY_BGM(SEQ_ID_CO_INTRO);
break;
case LEVEL_METEO:
AUDIO_PLAY_BGM(SEQ_ID_50);
AUDIO_PLAY_BGM(SEQ_ID_ME_INTRO);
break;
case LEVEL_FORTUNA:
case LEVEL_BOLSE:
case LEVEL_VENOM_2:
AUDIO_PLAY_BGM(SEQ_ID_51);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_51);
break;
case LEVEL_VENOM_1:
AUDIO_PLAY_BGM(SEQ_ID_8 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_VENOM_1 | SEQ_FLAG);
break;
case LEVEL_KATINA:
AUDIO_PLAY_BGM(SEQ_ID_51);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_51);
break;
case LEVEL_TITANIA:
AUDIO_PLAY_BGM(SEQ_ID_45);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_45);
break;
case LEVEL_ZONESS:
case LEVEL_SECTOR_X:
@@ -4356,7 +4355,7 @@ void func_play_800B0F50(Player* playerx) {
case LEVEL_TRAINING:
case LEVEL_MACBETH:
default:
AUDIO_PLAY_BGM(SEQ_ID_44);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_44);
break;
case LEVEL_AREA_6:
case LEVEL_SECTOR_Y:
@@ -4365,9 +4364,9 @@ void func_play_800B0F50(Player* playerx) {
case LEVEL_SOLAR:
break;
}
} else if (!gVersusMode && (D_ctx_80177C90 != 0xFFFF) &&
} else if (!gVersusMode && (gBgmSeqId != SEQ_ID_NONE) &&
((gLevelMode != LEVELMODE_ALL_RANGE) || (D_360_8015F924 == 0))) {
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
}
D_ctx_80177840 = gBossHealthBar = D_ctx_80177850 = 0;
@@ -4376,13 +4375,13 @@ void func_play_800B0F50(Player* playerx) {
}
if (D_ctx_80177824 && !gVersusMode) {
for (j = 1; j < 6; j++) {
gTeamShields[j] = gSavedTeamShields[j] = D_ctx_80177C38[j] = D_ctx_801778F0[j] = 0xFF;
gTeamShields[j] = gSavedTeamShields[j] = D_ctx_80177C38[j] = D_ctx_801778F0[j] = 255;
}
for (j = 0; j < 6; j++) {
D_ctx_80177CD0[j] = D_ctx_80177CF0[j] = 1;
}
gLaserStrength[gPlayerNum] = LASERS_SINGLE;
gGoldRingCount[0] = D_80161A94[0] = gTotalHits = 0;
gGoldRingCount[0] = D_ctx_80161A94[0] = gTotalHits = 0;
gLifeCount[gPlayerNum] = 2;
gBombCount[gPlayerNum] = 3;
gGreatFoxIntact = true;
@@ -4390,7 +4389,7 @@ void func_play_800B0F50(Player* playerx) {
D_hud_80161720[0] = 0.0f;
D_hud_80161720[1] = 0.0f;
D_hud_80161720[2] = 0.0f;
D_hud_8016172C = 0;
gDisplayedHitCount = 0;
gHitCount = 0;
D_ctx_80177824 = 0;
}
@@ -5066,10 +5065,10 @@ void func_play_800B415C(Player* player) {
func_play_800B40AC(player);
if (player->shields < 0x80) {
if (player->shields > 0x50) {
if (player->shields < 128) {
if (player->shields > 80) {
var_v0 = 0x3F;
} else if (player->shields > 0x28) {
} else if (player->shields > 40) {
var_v0 = 0x1F;
} else {
var_v0 = 0xF;
@@ -5088,7 +5087,7 @@ void func_play_800B41EC(Player* player) {
if (!gVersusMode) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 1);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 1);
AUDIO_PLAY_BGM(SEQ_ID_39);
AUDIO_PLAY_BGM(SEQ_ID_DEATH);
}
if (gCurrentLevel == LEVEL_SOLAR) {
Audio_KillSfxById(0x4100C023);
@@ -5238,7 +5237,7 @@ void func_play_800B46F8(Player* player) {
if (D_ctx_8017796C > 960) {
D_ctx_8017796C = 0;
if (1) {}
if ((player->shields < 0x40) && ((gTeamShields[1] > 0) || (gTeamShields[3] > 0) || (gTeamShields[2] > 0))) {
if ((player->shields < 64) && ((gTeamShields[1] > 0) || (gTeamShields[3] > 0) || (gTeamShields[2] > 0))) {
do {
do {
teamId = RAND_INT(2.9f) + 1;
@@ -5306,7 +5305,7 @@ void func_play_800B48BC(Player* player) {
if (player->state_1C8 >= PLAYERSTATE_1C8_2) {
func_play_800B39E0(player);
}
player->unk_228 = 0;
player->flags_228 = 0;
if ((player->state_1C8 >= PLAYERSTATE_1C8_2) && (player->form == FORM_ARWING) && !gVersusMode) {
switch (player->unk_204) {
case 0:
@@ -5347,7 +5346,7 @@ void func_play_800B48BC(Player* player) {
D_game_80161A2C = 1;
func_play_800B46F8(player);
player->wings.unk_2C = 0;
D_hud_80161704 = 0xFF;
D_hud_80161704 = 255;
if ((!gVersusMode || (D_ctx_80177E7C != 0)) && (player->unk_4DC == 0) &&
(gInputPress->button & U_CBUTTONS) &&
((player->form == FORM_ARWING) || (gVersusMode && (player->form == FORM_LANDMASTER)))) {
@@ -5499,16 +5498,16 @@ void func_play_800B48BC(Player* player) {
player->timer_1F8 = 200;
} else {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
D_ctx_80178358 = 0xFF;
D_ctx_80178358 = 255;
}
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
func_play_800A6148();
D_ctx_80177D20 = gPlayer[0].unk_144 = 0.0f;
D_ctx_80178380[0] = 0;
D_360_8015F93C = gRadioState = 0;
Audio_ClearVoice();
Audio_SetBaseSfxReverb(0);
D_80161A94[0] = gGoldRingCount[0];
D_ctx_80161A94[0] = gGoldRingCount[0];
if (gCurrentLevel == LEVEL_VENOM_ANDROSS) {
if (1) {}
if (1) {}
@@ -5533,7 +5532,7 @@ void func_play_800B48BC(Player* player) {
}
if (gLifeCount[gPlayerNum] < 0) {
gNextGameState = GSTATE_GAME_OVER;
D_80161A94[0] = 0;
D_ctx_80161A94[0] = 0;
} else {
D_ctx_80177854 = 1;
}
@@ -6250,7 +6249,7 @@ void func_play_800B79B0(void) {
}
}
}
var_a0 = MIN(gPlayer[0].shields, 0xFF);
var_a0 = MIN(gPlayer[0].shields, 255);
func_8001D1C8(var_a0, sp3A);
if (!(gGameFrameCount & 7) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7)) {
Solar_8019E8B8(RAND_FLOAT_CENTERED(6000.0f), -80.0f,
@@ -6319,16 +6318,16 @@ void func_play_800B832C(void) {
gPlayer[i].num = gPlayerNum = i;
func_play_800B71E4(&gPlayer[i]);
}
D_ctx_8017847C = 0.0f;
if (D_ctx_80178480 != 0) {
gCameraShakeY = 0.0f;
if (gCameraShake != 0) {
f32 var_fv1;
D_ctx_80178480--;
var_fv1 = D_ctx_80178480;
gCameraShake--;
var_fv1 = gCameraShake;
if (var_fv1 > 20.0f) {
var_fv1 = 20.0f;
}
D_ctx_8017847C = var_fv1 * SIN_DEG(gGameFrameCount * 70.0f);
gCameraShakeY = var_fv1 * SIN_DEG(gGameFrameCount * 70.0f);
}
func_play_800B79B0();
}
+1 -1
View File
@@ -120,7 +120,7 @@ Vtx D_Vtx_800D9950[] = {
Gfx D_Gfx_800D9990[] = {
// unused
gsDPSetPrimColor(0, 0, 0xFF, 0xFF, 0xFF, 0xFF),
gsDPSetPrimColor(0, 0, 255, 255, 255, 255),
gsDPSetupTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8, 0, 0, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, 3, 3,
G_TX_NOLOD, G_TX_NOLOD),
gsDPLoadTileTexture(D_Tex_800D99F8, G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 8),
+2 -2
View File
@@ -85,7 +85,7 @@ void Texture_Mottle(u16* dst, u16* src, u8 mode) {
for (var_s3 = 0; var_s3 < 32 * 32; var_s3 += 32) {
temp_ft3 = 3.0f * __sinf((s32) (((var_s3 / 32) + (gGameFrameCount / 4)) % 32U) * (2 * M_PI / 32));
for (var_v1 = 0; var_v1 < 32; var_v1++) {
dst[var_s3 + (temp_ft3 + var_v1) % 0x20U] = src[var_s3 + var_v1];
dst[var_s3 + (temp_ft3 + var_v1) % 32U] = src[var_s3 + var_v1];
}
}
break;
@@ -376,7 +376,7 @@ void Animation_GetSkeletonBoundingBox(Limb** skeletonSegment, Animation* animati
Matrix_RotateX(gGfxMatrix, (((s32) var_t6 * 360.0f) / 65536.0f) * M_DTOR, 1);
vtxFound = false;
if (limb->dList != NULL) {
Animation_FindBoundingBox(limb->dList, 0x2000, min, max, &vtxFound, &vtxCount, &vtxList);
Animation_FindBoundingBox(limb->dList, 8192, min, max, &vtxFound, &vtxCount, &vtxList);
if (vtxFound) {
boundBox[0].x = boundBox[3].x = boundBox[4].x = boundBox[7].x = min->x;
boundBox[0].y = boundBox[1].y = boundBox[4].y = boundBox[5].y = max->y;
+13 -13
View File
@@ -97,7 +97,7 @@ void func_tank_80043468(Player* player) {
if (0 || (gCurrentLevel == LEVEL_MACBETH) && (D_MA_801BA1E8 == 102)) {
sp4C = player->pos.y + 150.0f;
}
if (D_MA_801BA1E8 == 0x63) {
if (D_MA_801BA1E8 == 99) {
sp4C = player->pos.y + 150.0f;
}
}
@@ -184,7 +184,7 @@ void func_tank_80043B18(Player* player) {
}
if (!(gGameFrameCount & 3)) {
func_effect_8007A900(player->pos.x + sp3C.x, player->pos.y + sp3C.y + 20.0f, player->unk_138 + sp3C.z,
2.0f, 0xFF, 0xF, 0);
2.0f, 255, 15, 0);
}
}
} else {
@@ -203,7 +203,7 @@ void func_tank_80043B18(Player* player) {
}
if (!(gGameFrameCount & 3) && (player->unk_0D0 >= 5.0f)) {
func_effect_8007A900(player->pos.x + sp3C.x, player->pos.y + sp3C.y + 20.0f,
player->unk_138 + sp3C.z, 2.0f, 0xFF, 0xF, 0);
player->unk_138 + sp3C.z, 2.0f, 255, 15, 0);
}
}
}
@@ -221,7 +221,7 @@ void func_tank_80043B18(Player* player) {
}
if (!(gGameFrameCount & 3) && (player->unk_0D0 >= 5.0f)) {
func_effect_8007A900(player->pos.x + sp3C.x, player->pos.y + sp3C.y + 20.0f,
player->unk_138 + sp3C.z, 2.0f, 0xFF, 0xF, 0);
player->unk_138 + sp3C.z, 2.0f, 255, 15, 0);
}
}
}
@@ -330,7 +330,7 @@ void func_tank_800444BC(Player* player) {
}
if (D_ctx_80177BAC != 0) {
D_ctx_80177BAC = 0;
AUDIO_PLAY_BGM(SEQ_ID_4 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_TITANIA | SEQ_FLAG);
func_8001C8B8(0);
}
@@ -449,10 +449,10 @@ void func_tank_80044868(Player* player) {
}
player->pos.x += player->vel.x;
if ((player->unk_0AC + (player->unk_09C - 100.0f)) < player->pos.x) {
player->unk_228 = 1;
player->flags_228 = 1;
}
if (player->pos.x < (player->unk_0AC - (player->unk_09C - 100.0f))) {
player->unk_228 = 2;
player->flags_228 = 2;
}
if (player->unk_09C + player->unk_0AC < player->pos.x) {
player->pos.x = player->unk_09C + player->unk_0AC;
@@ -486,7 +486,7 @@ void func_tank_80044868(Player* player) {
}
}
if (player->unk_0D0 > 0.0f) {
Texture_Scroll(D_landmaster_3002E80, 0x20, 0x20, 0);
Texture_Scroll(D_landmaster_3002E80, 32, 32, 0);
if ((gCurrentLevel == LEVEL_TITANIA) && (gBossActive == 0)) {
func_tank_80043280(D_landmaster_3005EA8, D_TI_6009BB8, gGameFrameCount * -55.0f);
}
@@ -495,7 +495,7 @@ void func_tank_80044868(Player* player) {
}
}
if (player->unk_0D0 > 10.0f) {
Texture_Scroll(D_landmaster_3002E80, 0x20, 0x20, 0);
Texture_Scroll(D_landmaster_3002E80, 32, 32, 0);
if ((gCurrentLevel == LEVEL_TITANIA) && (gBossActive == 0)) {
func_tank_80043280(D_landmaster_3005EA8, D_TI_6009BB8, gGameFrameCount * -55.0f);
}
@@ -674,18 +674,18 @@ void func_tank_80045678(Player* player) {
}
if ((gCamCount == 1) && !(gGameFrameCount & 1)) {
func_effect_8007A900(RAND_FLOAT_CENTERED(20.0f) + player->pos.x, player->unk_068 + 10.0f,
player->unk_138 - 10.0f, RAND_FLOAT(2.0f) + 3.5f, 0xFF, 0x10, 1);
player->unk_138 - 10.0f, RAND_FLOAT(2.0f) + 3.5f, 255, 16, 1);
}
} else {
D_800C9F3C = 0;
if ((gCamCount == 1) && !(gGameFrameCount & 3) && (player->unk_1DC == 0)) {
if ((player->unk_16C > 0.2f) && (player->timer_220 == 0)) {
func_effect_8007A900(RAND_FLOAT_CENTERED(10.0f) + (player->pos.x - 57.0f), player->unk_068 + 10.0f,
player->unk_138 - 10.0f, RAND_FLOAT(1.0f) + 1.5f, 0xFF, 0xF, 0);
player->unk_138 - 10.0f, RAND_FLOAT(1.0f) + 1.5f, 255, 15, 0);
}
if ((player->unk_170 > 0.2f) && (player->timer_220 == 0)) {
func_effect_8007A900(RAND_FLOAT_CENTERED(10.0f) + (player->pos.x + 57.0f), player->unk_068 + 10.0f,
player->unk_138 - 10.0f, RAND_FLOAT(1.0f) + 1.5f, 0xFF, 0xF, 0);
player->unk_138 - 10.0f, RAND_FLOAT(1.0f) + 1.5f, 255, 15, 0);
}
}
}
@@ -1389,7 +1389,7 @@ void func_tank_800481F4(Player* player) {
for (i = 0, actor = gActors; i < ARRAY_COUNT(gActors); i++, actor++) {
if ((actor->obj.status == OBJ_ACTIVE) && (actor->timer_0C2 == 0)) {
if (actor->obj.id == OBJ_ACTOR_200) {
if (actor->obj.id == OBJ_ACTOR_EVENT) {
temp_v0 = func_play_800A7974(player, actor->info.hitbox, &sp98, actor->obj.pos.x, actor->obj.pos.y,
actor->obj.pos.z, actor->obj.rot.x, actor->obj.rot.y, actor->obj.rot.z,
actor->vwork[29].x, actor->vwork[29].y,
+11 -11
View File
@@ -75,7 +75,7 @@ void func_versus_800BC760(void) {
gRadioState = 0;
gVersusMode = 0;
D_ctx_80178358 = 0;
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
D_ctx_80177824 = GSTATE_INIT;
}
@@ -320,7 +320,7 @@ void func_versus_800BDE44(void) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255);
for (i = 0; i < 4; i++) {
if ((gPlayer[i].state_1C8 == 3) || (gPlayer[i].state_1C8 == 5)) {
if ((gPlayer[i].state_1C8 == PLAYERSTATE_1C8_3) || (gPlayer[i].state_1C8 == PLAYERSTATE_1C8_5)) {
if ((D_ctx_80177C30[i] != D_80178808[i]) || (D_80178810[i])) {
D_80178810[i] += 4;
if (D_80178810[i] > 15) {
@@ -642,7 +642,7 @@ s32 func_versus_800BF17C(void) {
for (i = 0, ret = 0; i < 4; i++) {
D_80178850[i] = 1;
if (gPlayer[i].state_1C8 != 13) {
if (gPlayer[i].state_1C8 != PLAYERSTATE_1C8_13) {
D_80178850[i] = 0;
D_801787F8[i] = 150;
continue;
@@ -766,7 +766,7 @@ void func_versus_800BF750(void) {
RCP_SetupDL(&gMasterDisp, 0x4C);
for (i = 0; i < 4; i++) {
if (gPlayer[i].state_1C8 != 3) {
if (gPlayer[i].state_1C8 != PLAYERSTATE_1C8_3) {
continue;
}
for (j = 0, temp = 0; j < 4; j++) {
@@ -993,7 +993,7 @@ s32 func_versus_800BF9AC(void) {
gPlayer[j].unk_288 = i + 1;
}
gPlayer[j].state_1C8 = 13;
gPlayer[j].state_1C8 = PLAYERSTATE_1C8_13;
}
D_ctx_80177E74 = 1;
break;
@@ -1372,7 +1372,7 @@ void func_versus_800C1368(void) {
D_800D4A90 = 0;
D_800D4A98 = 0;
D_800D4A9C = D_800D4AA0 = 0;
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
D_ctx_8017835C = 0;
D_ctx_80178358 = 0;
@@ -1495,7 +1495,7 @@ bool func_versus_800C176C(void) {
break;
}
if (func_versus_800C16A0(30)) {
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_versus_80178754 = 2;
func_versus_800C1690();
}
@@ -1530,7 +1530,7 @@ bool func_versus_800C176C(void) {
case 4:
if ((D_800D4A9C == 1) && (D_800D4AA0 == 0)) {
AUDIO_PLAY_BGM(SEQ_ID_47 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_VS_HURRY | SEQ_FLAG);
D_800D4AA0 = 1;
}
@@ -1567,11 +1567,11 @@ bool func_versus_800C176C(void) {
case 2:
case 3:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 99:
AUDIO_PLAY_BGM(SEQ_ID_49);
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
break;
default:
@@ -1996,7 +1996,7 @@ void func_versus_800C26C8(void) {
actor->obj.pos.x = dest.x;
actor->obj.pos.y = dest.y;
actor->obj.pos.z = dest.z;
actor->aiType = i + 10;
actor->aiType = i + AI360_10;
actor->health = 24;
actor->timer_0C2 = 30;
+1 -1
View File
@@ -94,7 +94,7 @@ void Option_ExpertSoundUpdate(void) {
if (gControllerPress[gMainController].button & B_BUTTON) {
if (!D_menu_801B9320) {
AUDIO_PLAY_BGM(SEQ_ID_36);
AUDIO_PLAY_BGM(SEQ_ID_MENU);
gDrawMode = DRAWMODE_0;
D_menu_801B9124 = 1000;
D_menu_801B912C = 0;
+1 -1
View File
@@ -742,7 +742,7 @@ void Ending_80189108(void) {
}
}
s32 Ending_80189C64(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Ending_80189C64(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
s32 temp_v0 = *(s32*) data;
if (temp_v0 == 3) {
+1 -1
View File
@@ -1041,7 +1041,7 @@ void Ending_801926D4(void) {
} else {
D_ending_80198590.rightState = D_ending_80198590.leftState = 2;
}
AUDIO_PLAY_BGM(SEQ_ID_42);
AUDIO_PLAY_BGM(SEQ_ID_ENDING);
}
if ((2790 <= D_ending_80192E70) && (D_ending_80192E70 < 3000)) {
+50 -49
View File
@@ -95,13 +95,13 @@ void Corneria_80187838(s32 arg0, f32 arg1, f32 arg2, f32 arg3, s32 arg4) {
}
}
void Corneria_801878D8(Boss* boss) {
void Corneria_Boss292_Init(Boss* boss) {
s32 i;
gBossFrameCount = 0;
if (gLevelMode == LEVELMODE_ON_RAILS) {
if (gPlayer[0].state_1C8 == 3) {
gPlayer[0].state_1C8 = 9;
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_9;
gPlayer[0].unk_1D0 = 0;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 50);
@@ -161,7 +161,7 @@ void Corneria_80187AC8(Boss* boss) {
boss->info.hitbox[1 + 0] = 100000.0f;
Corneria_8018798C(boss, D_i1_8019B6D8[62], D_i1_8019B6D8[63], D_i1_8019B6D8[64], 10.0f);
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
if (fabsf(boss->obj.rot.x) < 20.0f) {
boss->swork[32] = 1;
}
@@ -171,8 +171,8 @@ void Corneria_80187AC8(Boss* boss) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 80);
gCsFrameCount = 0;
if ((gPlayer[0].state_1C8 == 3) || (gPlayer[0].state_1C8 == 5)) {
gPlayer[0].state_1C8 = 7;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_5)) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_7;
gPlayer[0].unk_1D0 = gPlayer[0].timer_1F8 = 0;
gPlayer[0].unk_0E8 += gPlayer[0].unk_114;
if (gPlayer[0].unk_0E8 > 360.0f) {
@@ -241,7 +241,7 @@ void Corneria_80187AC8(Boss* boss) {
func_boss_800430DC(D_i1_8019B6D8[18 + var_s1 + 2], D_i1_8019B6D8[24 + var_s1 + 2],
D_i1_8019B6D8[30 + var_s1 + 2], D_i1_8019B6D8[36 + var_s1 + 2],
D_i1_8019B6D8[42 + var_s1 + 2], D_i1_8019B6D8[48 + var_s1 + 2], 0.0f,
RAND_FLOAT(20.0f), 0.0f, 5.5f, var_s1 + 0x1C, RAND_INT(30.0f) + 60.0f);
RAND_FLOAT(20.0f), 0.0f, 5.5f, var_s1 + 28, RAND_INT(30.0f) + 60.0f);
}
if (boss->state < 5) {
boss->state = 5;
@@ -260,7 +260,7 @@ void Corneria_80187AC8(Boss* boss) {
func_boss_800430DC(D_i1_8019B6D8[18 + var_s1 + 2], D_i1_8019B6D8[24 + var_s1 + 2],
D_i1_8019B6D8[30 + var_s1 + 2], D_i1_8019B6D8[36 + var_s1 + 2],
D_i1_8019B6D8[42 + var_s1 + 2], D_i1_8019B6D8[48 + var_s1 + 2], 0.0f,
RAND_FLOAT(20.0f), 0.0f, 5.5f, var_s1 + 0x1C, RAND_INT(30.0f) + 60.0f);
RAND_FLOAT(20.0f), 0.0f, 5.5f, var_s1 + 28, RAND_INT(30.0f) + 60.0f);
}
if (boss->state < 5) {
boss->state = 6;
@@ -276,9 +276,9 @@ void Corneria_80187AC8(Boss* boss) {
if ((boss->state != 0) && (boss->state < 5)) {
boss->fwork[14] = 0.0f;
if (Rand_ZeroOne() < 0.5f) {
var_v0 = 0x144;
var_v0 = OBJ_ITEM_SILVER_RING;
} else {
var_v0 = 0x147;
var_v0 = OBJ_ITEM_BOMB;
}
Corneria_80187838(boss, boss->obj.pos.x, boss->obj.pos.y + 100.0f, boss->obj.pos.z, var_v0);
}
@@ -462,7 +462,7 @@ void Corneria_80188C7C(Boss* boss) {
boss->swork[21] = 10;
boss->swork[22] = 12;
boss->swork[20] = 17;
D_ctx_80178480 = 20;
gCameraShake = 20;
} else {
boss->fwork[12] = 0.0f;
}
@@ -547,7 +547,7 @@ void Corneria_80189058(Boss* boss) {
Vec3f sp6C = { 0.0f, 0.0f, -30.0f };
f32 sp5C;
if (gPlayer[0].state_1C8 != 9) {
if (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_9) {
if (boss->swork[33] == 0) {
boss->swork[33]++;
gBossActive = 2;
@@ -576,7 +576,7 @@ void Corneria_80189058(Boss* boss) {
}
gBossFrameCount++;
gRadarMarks[59].unk_00 = 1;
gRadarMarks[59].unk_02 = 0x66;
gRadarMarks[59].unk_02 = 102;
gRadarMarks[59].pos.x = boss->obj.pos.x;
gRadarMarks[59].pos.y = boss->obj.pos.y;
gRadarMarks[59].pos.z = boss->obj.pos.z;
@@ -585,9 +585,9 @@ void Corneria_80189058(Boss* boss) {
Corneria_80188D50(boss);
if (D_edisplay_801615D0.z > 0.0f) {
if (D_edisplay_801615D0.x > 0.0f) {
gPlayer[0].unk_228 = 0x10;
gPlayer[0].flags_228 = 0x10;
} else {
gPlayer[0].unk_228 = 0x20;
gPlayer[0].flags_228 = 0x20;
}
}
@@ -875,7 +875,7 @@ void Corneria_80189058(Boss* boss) {
func_effect_8007A568(D_i1_8019B6D8[62], D_i1_8019B6D8[63] - 100.0f, D_i1_8019B6D8[64], 40.0f);
func_effect_8007D0E0(D_i1_8019B6D8[62], D_i1_8019B6D8[63] - 100.0f, D_i1_8019B6D8[64], 30.0f);
func_enmy_80062B60(D_i1_8019B6D8[62], D_i1_8019B6D8[64], 0, 120.0f);
D_ctx_80178480 = 25;
gCameraShake = 25;
gShowBossHealth = 0;
for (sp218 = 0; sp218 < 100; sp218++) {
@@ -949,7 +949,7 @@ void Corneria_80189058(Boss* boss) {
}
}
s32 Corneria_8018A434(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018A434(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
if (boss->swork[limbIndex] == 1000) {
@@ -1089,7 +1089,7 @@ void Corneria_8018AA74(Boss* boss) {
Matrix_Push(&gGfxMatrix);
}
s32 Corneria_8018AB08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018AB08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Actor* actor = (Actor*) data;
if (limbIndex == 1) {
@@ -1418,7 +1418,7 @@ void Corneria_8018BBF8(Actor* actor) {
Animation_DrawSkeleton(3, D_CO_6029A48, actor->vwork, Corneria_8018AB08, Corneria_8018BAFC, actor, gCalcMatrix);
}
s32 Corneria_8018BC50(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018BC50(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Actor* actor = (Actor*) data;
if ((actor->state == 101) && (limbIndex != 8)) {
@@ -1472,7 +1472,7 @@ void Corneria_8018BDD4(Boss* boss, f32 arg1, f32 arg2, f32 arg3, f32 arg4, s32 a
boss->obj.rot.y, arg5, arg6, objId);
}
void Corneria_8018BE7C(Boss* boss) {
void Corneria_Boss293_Init(Boss* boss) {
s32 i;
s16 temp_s1;
@@ -1729,7 +1729,7 @@ void Corneria_8018C19C(Boss* boss) {
boss->fwork[6] = 800.0f;
boss->fwork[3] = gPlayer[0].camEye.z - D_ctx_80177D20 - 2500.0f;
boss->fwork[18] = -D_play_80161A54;
AUDIO_PLAY_BGM(SEQ_ID_48 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_CO_BOSS_2 | SEQ_FLAG);
boss->timer_050 = 40;
}
break;
@@ -1898,7 +1898,7 @@ void Corneria_8018C19C(Boss* boss) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 40);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 40);
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
gShowBossHealth = false;
Radio_PlayMessage(gMsg_ID_2294, RCID_BOSS_CORNERIA2);
boss->health = 1;
@@ -1951,7 +1951,8 @@ void Corneria_8018C19C(Boss* boss) {
boss->fwork[17] = 10.0f;
boss->vel.y *= 1.5f;
D_ctx_80177930 = 1;
if ((gPlayer[0].state_1C8 == 3) || (gPlayer[0].state_1C8 == 5)) {
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) ||
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_5)) {
func_boss_8004319C(gPlayer, boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z);
}
boss->health--;
@@ -1987,7 +1988,7 @@ void Corneria_8018C19C(Boss* boss) {
boss->obj.rot.z -= 2.0f;
boss->gravity = 1.0f;
if (boss->obj.pos.y < (gGroundLevel + 150.0f)) {
D_ctx_80178480 = 100;
gCameraShake = 100;
func_effect_80081A8C(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 40.0f, 12);
boss->timer_050 = 20;
boss->vel.y = -10.0f;
@@ -2325,7 +2326,7 @@ void Corneria_8018E76C(Boss* boss) {
}
}
s32 Corneria_8018EC54(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018EC54(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if ((limbIndex == 10) && (gBosses[2].state != 0) && (gBosses[3].state != 0)) {
*dList = NULL;
}
@@ -2341,7 +2342,7 @@ void Corneria_8018ECAC(Boss* boss) {
Animation_DrawSkeleton(1, D_CO_602D5AC, boss->vwork, Corneria_8018EC54, NULL, &boss->index, &gIdentityMatrix);
}
s32 Corneria_8018ED1C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018ED1C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex == 5) {
rot->y -= gBosses[*(s32*) data].fwork[2];
}
@@ -2359,7 +2360,7 @@ void Corneria_8018ED78(Boss* boss) {
Animation_DrawSkeleton(1, D_CO_602D5AC, boss->vwork, Corneria_8018ED1C, NULL, &boss->index, &gIdentityMatrix);
}
s32 Corneria_8018EE2C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018EE2C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex == 1) {
rot->z -= gBosses[*(s32*) data].fwork[0];
}
@@ -2377,7 +2378,7 @@ void Corneria_8018EE84(Boss* boss) {
Animation_DrawSkeleton(1, D_CO_602D5AC, boss->vwork, Corneria_8018EE2C, NULL, &boss->index, &gIdentityMatrix);
}
s32 Corneria_8018EF38(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018EF38(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex == 3) {
rot->z -= gBosses[*(s32*) data].fwork[1];
}
@@ -2423,7 +2424,7 @@ void Corneria_8018F044(Object_80* obj80) {
}
}
s32 Corneria_8018F1C8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Corneria_8018F1C8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Object_80* obj80 = (Object_80*) data;
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
@@ -2496,7 +2497,7 @@ void Corneria_8018F55C(Effect* effect) {
effect->obj.pos.y = gPlayer[0].camEye.y + RAND_RANGE(-280.0f, 70.0f);
effect->obj.id = OBJ_EFFECT_352;
effect->timer_50 = 80;
effect->unk_46 = 0x90;
effect->unk_46 = 144;
effect->obj.pos.z = -4000.0f;
effect->vel.z = 60.0f;
effect->scale2 = 10.0f + RAND_FLOAT(15.0f);
@@ -2562,16 +2563,16 @@ void Corneria_8018F880(Player* player) {
f32 sp30;
f32 sp2C;
if (gCsFrameCount < 0x32F) {
if (gCsFrameCount < 815) {
sp3C = player->pos.x;
sp38 = player->pos.y + 15.0f;
sp34 = player->unk_138 - 20.0f;
} else {
if (gCsFrameCount < 0x3F1) {
if (gCsFrameCount < 1009) {
sp3C = actor0->obj.pos.x;
sp38 = actor0->obj.pos.y + 15.0f;
sp34 = actor0->obj.pos.z - 20.0f;
} else if (gCsFrameCount < 0x4AE) {
} else if (gCsFrameCount < 1198) {
sp3C = actor2->obj.pos.x;
sp38 = actor2->obj.pos.y + 15.0f;
sp34 = actor2->obj.pos.z - 20.0f;
@@ -2628,7 +2629,7 @@ void Corneria_8018F880(Player* player) {
D_ctx_80177A48[4] = Math_RadToDeg(sp2C);
D_ctx_80177A48[5] = Math_RadToDeg(sp30);
player->unk_228 = 0;
player->flags_228 = 0;
D_ctx_80177950 = -1.0f;
if ((Math_RadToDeg(gPlayer[0].unk_058) < 90.0f) || (Math_RadToDeg(gPlayer[0].unk_058) > 270.0f)) {
D_ctx_80177950 = 1.0f;
@@ -2664,12 +2665,12 @@ void Corneria_8018F880(Player* player) {
player->camAt.z = gCsCamAtZ = player->unk_138 + 300.0f;
D_ctx_80177A48[0] = 0;
D_ctx_80177A48[1] = D_ctx_80177A48[2] = 0;
D_ctx_80178358 = 0xFF;
D_ctx_80178340 = 0xFF;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0xFF;
D_ctx_80178358 = 255;
D_ctx_80178340 = 255;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
break;
case 1:
if (player->timer_1F8 < 0x226) {
if (player->timer_1F8 < 550) {
D_ctx_80178358 = 0;
D_ctx_8017835C = 3;
Math_SmoothStepToF(&D_ctx_80177A48[0], 0.01f, 1.0f, 0.0005f, 0.0f);
@@ -2913,12 +2914,12 @@ void Corneria_8018F880(Player* player) {
D_ctx_80177A48[0] = 0.03f;
player->unk_190 = 2.0f;
if (player->timer_1F8 == 0) {
D_ctx_80178358 = 0xFF;
D_ctx_8017835C = 0x30;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0xFF;
D_ctx_80178358 = 255;
D_ctx_8017835C = 48;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
}
if (D_ctx_80178340 == 0xFF) {
AUDIO_PLAY_BGM(D_ctx_80177C90);
if (D_ctx_80178340 == 255) {
AUDIO_PLAY_BGM(gBgmSeqId);
Object_Kill(&actor0->obj, actor0->sfxSource);
Object_Kill(&actor1->obj, actor1->sfxSource);
Object_Kill(&actor2->obj, actor2->sfxSource);
@@ -2928,7 +2929,7 @@ void Corneria_8018F880(Player* player) {
player->camEye.x = player->pos.x;
player->camEye.y = (player->pos.y * player->unk_148) + 50.0f;
player->camEye.z = 30.0f;
player->state_1C8 = 3;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = 0;
player->camAt.x = player->pos.x;
player->camAt.y = (player->pos.y * player->unk_148) + 20.0f;
@@ -3158,12 +3159,12 @@ void Corneria_80191160(Player* player) {
if (gCsFrameCount == 1290) {
Audio_FadeOutAll(50);
}
if (gCsFrameCount >= 1301) {
D_ctx_80178358 = 0xFF;
if (gCsFrameCount > 1300) {
D_ctx_80178358 = 255;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
D_ctx_8017835C = 8;
if (D_ctx_80178340 == 0xFF) {
player->state_1C8 = 6;
if (D_ctx_80178340 == 255) {
player->state_1C8 = PLAYERSTATE_1C8_6;
player->timer_1F8 = 0;
D_ctx_8017837C = 4;
D_play_800D3180[gCurrentLevel] = Play_CheckMedalStatus(150) + 1;
@@ -3180,7 +3181,7 @@ void Corneria_80191160(Player* player) {
D_ctx_80177830 = 0;
break;
case 240:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 330:
D_ctx_80177840 = 100;
+1 -1
View File
@@ -15,7 +15,7 @@ void Training_801988E0(void) {
}
}
void Training_80198968(Item* item) {
void Training_ItemRing_Update(Item* item) {
f32 var_fv0;
switch (item->state) {
+28 -30
View File
@@ -184,37 +184,35 @@ void Training_8019949C(void) {
var_v1 = 0;
}
if (!(gGameFrameCount & 3)) {
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) {
sp44.x = 0.0f;
sp44.y = 0.0f;
sp44.z = -15000.0f;
for (i = var_v1, actor = &gActors[i + 10]; i < 16; i++, actor++) {
if (actor->obj.status == OBJ_FREE) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = OBJ_ACTOR_197;
Matrix_RotateY(gCalcMatrix, gGameFrameCount * 6.0f * M_DTOR, 0);
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38);
actor->obj.pos.x = sp38.x;
actor->obj.pos.y = 2000.0f;
actor->obj.pos.z = sp38.z;
actor->unk_0F4.y = gGameFrameCount * 6.0f;
actor->aiType = i + 10;
actor->health = 24;
actor->unk_0C9 = actor->iwork[11] = 1;
actor->timer_0C2 = 30;
Object_SetInfo(&actor->info, actor->obj.id);
AUDIO_PLAY_SFX(0x3100000C, actor->sfxSource, 4);
if ((i + 10) == 10) {
actor->aiIndex = 0;
actor->health = 50;
} else {
actor->aiIndex = -1;
actor->info.action = (ObjectFunc) Training_80199024;
}
break;
if (!(gGameFrameCount & 3) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3)) {
sp44.x = 0.0f;
sp44.y = 0.0f;
sp44.z = -15000.0f;
for (i = var_v1, actor = &gActors[i + 10]; i < 16; i++, actor++) {
if (actor->obj.status == OBJ_FREE) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
Matrix_RotateY(gCalcMatrix, gGameFrameCount * 6.0f * M_DTOR, 0);
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38);
actor->obj.pos.x = sp38.x;
actor->obj.pos.y = 2000.0f;
actor->obj.pos.z = sp38.z;
actor->unk_0F4.y = gGameFrameCount * 6.0f;
actor->aiType = i + AI360_10;
actor->health = 24;
actor->unk_0C9 = actor->iwork[11] = 1;
actor->timer_0C2 = 30;
Object_SetInfo(&actor->info, actor->obj.id);
AUDIO_PLAY_SFX(0x3100000C, actor->sfxSource, 4);
if ((i + 10) == 10) {
actor->aiIndex = AI360_FOX;
actor->health = 50;
} else {
actor->aiIndex = -1;
actor->info.action = (ObjectFunc) Training_80199024;
}
break;
}
}
}
+13 -13
View File
@@ -646,7 +646,7 @@ void Venom1_80192CD4(Actor* actor) {
actor->obj.rot.x += actor->fwork[0];
if (actor->obj.rot.x >= 90.0f) {
D_ctx_80178480 = 12;
gCameraShake = 12;
Venom1_80192AA4(actor);
actor->iwork[1] = 5;
actor->obj.rot.x = 90.0f;
@@ -807,7 +807,7 @@ void Venom1_80193540(Object_80* obj80) {
}
}
void Venom1_801935CC(Boss* boss) {
void Venom1_Boss319_Init(Boss* boss) {
s32 i;
s32 var_v0;
s32 j;
@@ -855,7 +855,7 @@ void Venom1_801935CC(Boss* boss) {
}
boss->swork[29] = boss->swork[30] = var_v0 + 100;
Animation_GetFrameData(D_i1_8019ACD4[boss->swork[5]], 0, boss->vwork);
AUDIO_PLAY_BGM(SEQ_ID_24 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_VE_BOSS | SEQ_FLAG);
}
bool Venom1_801937F4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
@@ -1577,7 +1577,7 @@ void Venom1_80194398(Boss* boss) {
boss->timer_05A = 18;
if (boss->health <= 0) {
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
D_ctx_8017796C = -1;
D_ctx_8017828C = 1;
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
@@ -1625,7 +1625,7 @@ void Venom1_80194398(Boss* boss) {
boss->health -= 10;
boss->timer_05A = 35;
if (boss->health <= 0) {
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
D_ctx_8017796C = -1;
D_ctx_8017828C = 1;
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
@@ -1717,7 +1717,7 @@ void Venom1_80194398(Boss* boss) {
boss->gravity = 0.f;
boss->swork[6] = 2;
boss->swork[10] = 16;
D_ctx_80178480 = 40;
gCameraShake = 40;
boss->swork[23] = RAND_FLOAT(5.0f);
AUDIO_PLAY_SFX(0x29034082, boss->sfxSource, 4);
spB8 = 3;
@@ -1828,7 +1828,7 @@ void Venom1_80194398(Boss* boss) {
D_i1_8019B838[6].unk_7C |= 0x20;
break;
case 122:
D_ctx_80178480 = 20;
gCameraShake = 20;
boss->swork[28] = 7;
AUDIO_PLAY_SFX(0x29405084, boss->sfxSource, 4);
D_i1_8019B838[2].unk_60 = 5.0f;
@@ -1844,7 +1844,7 @@ void Venom1_80194398(Boss* boss) {
D_i1_8019B838[8].unk_7C |= 0x20;
break;
case 118:
D_ctx_80178480 = 30;
gCameraShake = 30;
boss->swork[28] = 7;
AUDIO_PLAY_SFX(0x29405084, boss->sfxSource, 4);
D_i1_8019B838[8].unk_7C |= 0x800;
@@ -1860,7 +1860,7 @@ void Venom1_80194398(Boss* boss) {
case 78:
boss->swork[28] = 7;
AUDIO_PLAY_SFX(0x29405084, boss->sfxSource, 4);
D_ctx_80178480 = 20;
gCameraShake = 20;
D_i1_8019B838[10].unk_7C |= 0x800;
D_i1_8019B838[10].unk_60 = 10.0f;
break;
@@ -1916,7 +1916,7 @@ void Venom1_80194398(Boss* boss) {
boss->info.hitbox = D_edata_800CBF34;
boss->unk_05E = 0;
func_effect_8007A568(boss->obj.pos.x, boss->obj.pos.y + 10.0f, boss->obj.pos.z, 40.0f);
D_ctx_80178480 = 40;
gCameraShake = 40;
break;
case 12:
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
@@ -1937,7 +1937,7 @@ void Venom1_80194398(Boss* boss) {
break;
case 1:
AUDIO_PLAY_SFX(0x31030083, boss->sfxSource, 4);
D_ctx_80178480 = 40;
gCameraShake = 40;
boss->swork[28] = 5;
spB8 = spB4 = 1;
boss->swork[18]++;
@@ -1955,7 +1955,7 @@ void Venom1_80194398(Boss* boss) {
case 1:
spB4 = 1;
AUDIO_PLAY_SFX(0x31030083, boss->sfxSource, 4);
D_ctx_80178480 = 40;
gCameraShake = 40;
boss->swork[28] = 5;
spB8 = 2;
boss->swork[19]++;
@@ -2322,7 +2322,7 @@ void Venom1_80198310(Boss* boss) {
RCP_SetupDL(&gMasterDisp, 0x41);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255);
gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 0);
Matrix_Translate(gGfxMatrix, 0.0f, -5.0f + D_ctx_8017847C, 0.0f, 1);
Matrix_Translate(gGfxMatrix, 0.0f, -5.0f + gCameraShakeY, 0.0f, 1);
Matrix_Scale(gGfxMatrix, 10.0f, 0.0f, 8.0f, 1);
Matrix_RotateX(gGfxMatrix, -90.0f * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp);
+19 -19
View File
@@ -402,7 +402,7 @@ void Meteo_80188344(Boss* boss) {
boss->unk_04A = 7;
}
if (boss->swork[0] >= 0xFF) {
if (boss->swork[0] >= 255) {
boss->unk_04A = 0;
Audio_KillSfxBySource(boss->sfxSource);
if (boss->swork[1] == 0) {
@@ -501,7 +501,7 @@ void Meteo_801887D0(Boss* boss) {
}
}
void Meteo_80188A40(Boss* boss) {
void Meteo_Boss297_Init(Boss* boss) {
s32 i;
AUDIO_PLAY_BGM(D_boss_800C9E90[gCurrentLevel]);
@@ -524,7 +524,7 @@ void Meteo_80188A40(Boss* boss) {
Boss_Initialize(&gBosses[i]);
gBosses[i].obj.status = OBJ_INIT;
gBosses[i].obj.id = 0x12A;
gBosses[i].obj.id = OBJ_BOSS_298;
gBosses[i].obj.pos.x = boss->obj.pos.x;
gBosses[i].obj.pos.y = boss->obj.pos.y;
gBosses[i].obj.pos.z = boss->obj.pos.z;
@@ -738,7 +738,7 @@ void Meteo_801892F0(Boss* boss, s32 arg1) {
if (arg1 == 4) {
func_effect_8007D2C8(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z + 300.0f, 20.0f);
func_effect_8007BFFC(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z + 300.0f, 0.0f, 0.0f, 0.0f, 10.0f, 0x19);
func_effect_8007BFFC(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z + 300.0f, 0.0f, 0.0f, 0.0f, 10.0f, 25);
}
if (arg1 < 4) {
@@ -940,7 +940,7 @@ void Meteo_8018978C(Boss* boss) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 50);
AUDIO_PLAY_SFX(0x2940D09AU, boss->sfxSource, 4U);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
}
}
}
@@ -1053,7 +1053,7 @@ void Meteo_8018978C(Boss* boss) {
if (boss->swork[18] == 1) {
Meteo_80187D08(boss->obj.pos.x + dest.x, boss->obj.pos.y + dest.y, boss->obj.pos.z + dest.z, 50.0f, 270.0f,
0.0f, 0x1E, 0, id);
0.0f, 30, 0, id);
} else {
Meteo_80187D08(boss->obj.pos.x + dest.x, boss->obj.pos.y + dest.y, boss->obj.pos.z + dest.z, 50.0f, 0.0f,
0.0f, 0, 0, id);
@@ -1065,7 +1065,7 @@ void Meteo_8018978C(Boss* boss) {
if (boss->swork[18] == 1) {
Meteo_80187D08(boss->obj.pos.x + dest.x, boss->obj.pos.y + dest.y, boss->obj.pos.z + dest.z, 50.0f, 90.0f,
0.0f, 0x1E, 0, id);
0.0f, 30, 0, id);
} else {
Meteo_80187D08(boss->obj.pos.x + dest.x, boss->obj.pos.y + dest.y, boss->obj.pos.z + dest.z, 50.0f, 0.0f,
0.0f, 0, 0, id);
@@ -1266,7 +1266,7 @@ void Meteo_8018978C(Boss* boss) {
if ((boss->timer_050 == 10) || (boss->timer_050 == 30) || (boss->timer_050 == 50) ||
(boss->timer_050 == 70)) {
D_ctx_80178340 = 150;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0xFF;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
Meteo_80187E38(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z + 1300.0f,
boss->fwork[12] + boss->obj.rot.z);
boss->fwork[12] = RAND_FLOAT(360.0f);
@@ -1326,7 +1326,7 @@ void Meteo_8018978C(Boss* boss) {
}
if (gCsFrameCount == 400) {
AUDIO_PLAY_BGM(SEQ_ID_65 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_BOSS_RESUME | SEQ_FLAG);
if (gTeamShields[1] > 0) {
Radio_PlayMessage(gMsg_ID_3345, RCID_BOSS_METEO);
} else {
@@ -1446,7 +1446,7 @@ void Meteo_8018978C(Boss* boss) {
AUDIO_PLAY_SFX(0x2940F026U, boss->sfxSource, 4U);
D_Timer_80177BD0[0] = 60;
for (i = 0; i < ARRAY_COUNT(gActors); i++) {
if (gActors[i].obj.id == 0xC6) {
if (gActors[i].obj.id == OBJ_ACTOR_TEAM_BOSS) {
Object_Kill(&gActors[i].obj, gActors[i].sfxSource);
}
}
@@ -1463,7 +1463,7 @@ void Meteo_8018978C(Boss* boss) {
func_effect_8007B344(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 71.0f, 5);
case 0:
for (i = 0; i < 0x64; i++) {
for (i = 0; i < ARRAY_COUNT(gEffects); i++) {
func_effect_80079618(RAND_FLOAT_CENTERED(1000.0f) + boss->obj.pos.x,
RAND_FLOAT_CENTERED(1000.0f) + boss->obj.pos.y,
RAND_FLOAT_CENTERED(1000.0f) + boss->obj.pos.z, 3.0f);
@@ -1604,7 +1604,7 @@ void Meteo_8018BACC(Boss* boss) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, boss->swork[19], 255);
if (boss->swork[9 + i] & 1) {
gDPSetPrimColor(gMasterDisp++, 0, 0, 0x50, 0, 0, 255);
gDPSetPrimColor(gMasterDisp++, 0, 0, 80, 0, 0, 255);
}
Matrix_Push(&gGfxMatrix);
@@ -1642,7 +1642,7 @@ void Meteo_8018BACC(Boss* boss) {
}
}
gDPSetPrimColor(gMasterDisp++, 0, 0, 0xA0, 0xFF, 0xA0, 0x80);
gDPSetPrimColor(gMasterDisp++, 0, 0, 160, 255, 160, 128);
for (i = 0; i < 4; i++) {
if (boss->fwork[11] != 0) {
var_fs1 = boss->fwork[11];
@@ -1700,7 +1700,7 @@ void Meteo_8018BACC(Boss* boss) {
if (boss->fwork[11] > 15.0f) {
var_fs1 = boss->fwork[11] - 15.0f;
gDPSetPrimColor(gMasterDisp++, 0, 0, 0xA0, 0xFF, 0xA0, 0xFF);
gDPSetPrimColor(gMasterDisp++, 0, 0, 160, 255, 160, 255);
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 1300.0f, 1);
if (gGameFrameCount & 1) {
@@ -1713,7 +1713,7 @@ void Meteo_8018BACC(Boss* boss) {
Matrix_Pop(&gGfxMatrix);
}
if ((boss->state == 9) || (boss->state == 0xA)) {
if ((boss->state == 9) || (boss->state == 10)) {
var_fs1 = boss->fwork[15];
for (i = 0; i < 10; i++) {
var_fs1 += 0.3f;
@@ -1825,7 +1825,7 @@ void Meteo_8018CA10(Actor* actor1, Actor* actor2, f32 x, f32 y, f32 z) {
actor1->obj.rot.y = RAND_FLOAT_SEEDED(360.0f);
actor1->obj.rot.x = RAND_FLOAT_SEEDED(360.0f);
actor1->timer_0C2 = 0x2710;
actor1->timer_0C2 = 10000;
actor1->vel.z = 30.0f;
Object_SetInfo(&actor1->info, actor1->obj.id);
}
@@ -2064,7 +2064,7 @@ void Meteo_8018CD8C(Player* player) {
Math_SmoothStepToF(D_ctx_80177A48, 1.0f, 1.0f, 0.01f, 0.0f);
if (player->timer_1F8 == 0) {
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 80;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = 0;
@@ -2273,7 +2273,7 @@ void Meteo_8018E084(Player* player) {
Math_SmoothStepToF(&D_ctx_80177A48[3], 1.0f, 1.0f, 0.01f, 0.0f);
}
if (player->timer_1F8 == 50) {
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
}
Math_SmoothStepToF(&D_ctx_80177A48[1], 1080.0f, 0.01f, D_ctx_80177A48[3], 0.0f);
@@ -2494,7 +2494,7 @@ void Meteo_8018ED9C(Actor* actor) {
case 1:
actor->state = 2;
AUDIO_PLAY_SFX(0x09000002U, actor->sfxSource, 0U);
actor->timer_0BC = 0x96;
actor->timer_0BC = 150;
actor->fwork[29] = 5.0f;
case 2:
+9 -9
View File
@@ -23,14 +23,14 @@ void SectorX_8018F030(void) {
if (actor->obj.status == OBJ_FREE) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_203;
actor->obj.id = OBJ_ACTOR_SLIPPY_SX;
actor->unk_0B6 = 1;
actor->obj.rot.y = 180.0f;
actor->obj.pos.x = gPlayer[0].camEye.x - 300.0f;
actor->obj.pos.y = gPlayer[0].camEye.y + 200.0f;
actor->obj.pos.z = gPlayer[0].camEye.z - D_ctx_80177D20 + 300.0f;
actor->iwork[11] = 1;
actor->aiType = 2;
actor->aiType = AI360_SLIPPY;
Object_SetInfo(&actor->info, actor->obj.id);
Radio_PlayMessage(gMsg_ID_5475, RCID_SLIPPY);
break;
@@ -43,7 +43,7 @@ void SectorX_8018F124(void) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_203;
actor->obj.id = OBJ_ACTOR_SLIPPY_SX;
actor->unk_0B6 = -1;
actor->obj.pos.x = gPlayer[0].camEye.x + 3000.0f;
actor->obj.pos.y = gPlayer[0].camEye.y - 3000.0f;
@@ -191,7 +191,7 @@ void SectorX_8018FA04(f32 x, f32 y, f32 z) {
if (actor->obj.status == OBJ_FREE) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_203;
actor->obj.id = OBJ_ACTOR_SLIPPY_SX;
actor->obj.pos.x = x;
actor->obj.pos.y = y;
actor->obj.pos.z = z;
@@ -430,7 +430,7 @@ void SectorX_80190078(Boss* boss) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 1);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 1);
boss->timer_052 = 40;
D_play_Timer_80161A60 = 5;
gScreenFlashTimer = 5;
}
} else {
func_effect_8007A6F0(&boss->obj.pos, 0x29121007);
@@ -469,7 +469,7 @@ void SectorX_80190078(Boss* boss) {
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 1);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 1);
func_boss_80042EC0(boss);
@@ -838,7 +838,7 @@ void SectorX_80190078(Boss* boss) {
boss->fwork[0] = 0.0f;
boss->unk_04C = 0;
boss->health = 300;
Audio_PlaySequenceDistorted(0, D_boss_800C9E90[gCurrentLevel], 1121, 25, 255);
Audio_PlaySequenceDistorted(0, D_boss_800C9E90[gCurrentLevel], 1121, 25, -1);
Radio_PlayMessage(gMsg_ID_19205, RCID_FOX);
boss->timer_052 = 100;
}
@@ -1590,7 +1590,7 @@ void SectorX_80193A30(Player* player) {
if (player->timer_1F8 == 0) {
player->unk_0D0 = D_play_80161A54;
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 80;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = player->timer_1F8 = player->timer_1FC = 0;
@@ -1786,7 +1786,7 @@ void SectorX_80194728(Player* player) {
break;
case 30:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 60:
+12 -12
View File
@@ -496,7 +496,7 @@ void Area6_80187704(void) {
}
}
void Area6_80187754(Boss* bossA6) {
void Area6_BossA6_Init(Boss* bossA6) {
Hitbox* hitbox;
s32 i;
@@ -604,7 +604,7 @@ void Area6_80187944(Boss* bossA6) {
D_i3_801C2250[A6_BSS_2_0] = D_i3_801C2250[A6_BSS_2_1] = D_i3_801C2250[A6_BSS_2_2] =
bossA6->swork[A6_SWK_33 + 0] = bossA6->swork[A6_SWK_33 + 1] = bossA6->swork[A6_SWK_33 + 2] = 0;
D_play_Timer_80161A60 = 4;
gScreenFlashTimer = 4;
bossA6->state = 11;
AUDIO_PLAY_SFX(0x2940C00A, bossA6->sfxSource, 4);
AUDIO_PLAY_SFX(0x3143402E, bossA6->sfxSource, 4);
@@ -847,7 +847,7 @@ void Area6_80187944(Boss* bossA6) {
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 25;
D_ctx_80178480 = 50;
gCameraShake = 50;
}
if (bossA6->timer_050 == 0) {
if (D_i3_801C2250[A6_BSS_8] == 0) {
@@ -986,7 +986,7 @@ void Area6_80187944(Boss* bossA6) {
D_i3_801C2250[A6_BSS_7] = bossA6->swork[A6_SWK_37] = 0;
bossA6->state = 3;
if (D_i3_801C2250[A6_BSS_6] == 0) {
AUDIO_PLAY_BGM(SEQ_ID_23 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_A6_BOSS | SEQ_FLAG);
}
}
} else if (bossA6->swork[A6_SWK_38] != 0) {
@@ -1836,7 +1836,7 @@ void Area6_8018C54C(Boss* bossA6) {
for (i = 0; i < 3; i++) {
if ((bossA6->swork[A6_SWK_33 + i] == 0) && (bossA6->state != 3) &&
(D_i3_801C2250[A6_BSS_2_0 + i] == 0) && !(gGameFrameCount & 3) &&
(bossA6->swork[A6_SWK_27 + i] != 0) && (D_ctx_80177854 != 0x64)) {
(bossA6->swork[A6_SWK_27 + i] != 0) && (D_ctx_80177854 != 100)) {
Matrix_RotateY(gCalcMatrix, bossA6->obj.rot.y * M_DTOR, 0);
Matrix_RotateX(gCalcMatrix, bossA6->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gCalcMatrix, bossA6->obj.rot.z * M_DTOR, 1);
@@ -1940,7 +1940,7 @@ void Area6_8018C54C(Boss* bossA6) {
} else {
Math_SmoothStepToF(&bossA6->fwork[A6_FWK_29], 0.0f, 1.0f, 10.0f, 0.0001f);
if ((bossA6->timer_054 == 0) && (bossA6->swork[A6_SWK_36] == 4) && (D_i3_801C2250[A6_BSS_31] == 0)) {
Radio_PlayMessage(gMsg_ID_7087, 0x1E);
Radio_PlayMessage(gMsg_ID_7087, RCID_PEPPY);
bossA6->swork[A6_SWK_36] = 5;
D_i3_801C2250[A6_BSS_31]++;
D_i3_801C2250[A6_BSS_31] &= 1;
@@ -2010,7 +2010,7 @@ void Area6_8018D3CC(s32 arg0, f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel,
void Area6_8018D4E0(Actor* actor) {
s32 i;
func_effect_8007BFFC(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 0.0f, 0.0f, 0.0f, 4.0f, 0x14);
func_effect_8007BFFC(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 0.0f, 0.0f, 0.0f, 4.0f, 20);
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 7.0f);
func_effect_8007B344(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 6.0f, 5);
Object_Kill(&actor->obj, actor->sfxSource);
@@ -2297,14 +2297,14 @@ void Area6_8018DF74(Player* player) {
player->unk_1D0 = 0;
player->timer_1F8 = 0;
AUDIO_PLAY_BGM(SEQ_ID_7 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_AREA_6 | SEQ_FLAG);
player->state_1C8 = PLAYERSTATE_1C8_3;
}
break;
}
switch (gCsFrameCount) {
case 280:
AUDIO_PLAY_BGM(SEQ_ID_51);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_51);
break;
case 40:
Radio_PlayMessage(gMsg_ID_7005, RCID_CAIMAN_AREA6);
@@ -2442,7 +2442,7 @@ void Area6_8018EC38(Actor* actor, s32 arg1) {
actor->obj.pos.x = sp2C[arg1].x + player->pos.x;
actor->obj.pos.y = sp2C[arg1].y + player->pos.y;
actor->obj.pos.z = sp2C[arg1].z + player->pos.z;
actor->state = 0x64;
actor->state = 100;
actor->iwork[11] = 1;
actor->fwork[0] = 0.0f;
if (arg1 + 1 != 3) {
@@ -2656,7 +2656,7 @@ void Area6_8018ED78(Player* player) {
D_ctx_80177C38[i] = 255;
}
}
D_80161A94[0] = gGoldRingCount[0];
D_ctx_80161A94[0] = gGoldRingCount[0];
func_8001CA24(0);
Audio_KillSfxBySource(player->sfxSource);
func_play_800A6148();
@@ -2673,7 +2673,7 @@ void Area6_8018ED78(Player* player) {
}
switch (gCsFrameCount) {
case 380:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 550:
D_ctx_80177840 = 100;
+29 -28
View File
@@ -933,16 +933,16 @@ void Aquas_801AACF8(Player* player) {
player->vel.y = 0.0f;
}
if (player->pos.x > (player->unk_0AC + (player->unk_09C - 100.0f))) {
player->unk_228 = 1;
player->flags_228 = 1;
}
if (player->pos.x < (player->unk_0AC - (player->unk_09C - 100.0f))) {
player->unk_228 = 2;
player->flags_228 = 2;
}
if (player->pos.y > (player->unk_0B0 + (player->unk_0A0 - 100.0f))) {
player->unk_228 = 8;
player->flags_228 = 8;
}
if (player->pos.y <= (gGroundLevel + 100)) {
player->unk_228 = 4;
player->flags_228 = 4;
}
if (D_i3_801C4190[6] != 0) {
player->unk_0D0 = 20.0f;
@@ -1602,7 +1602,7 @@ void Aquas_801AD6C0(Actor* actor) {
func_effect_800815DC();
actor->iwork[1]--;
if (actor->iwork[1] <= 0) {
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
actor->unk_0D4 = 2;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
@@ -2253,7 +2253,7 @@ void Aquas_801B0B60(Actor* actor) {
break;
case 3:
if (Rand_ZeroOne() < 0.1) {
actor->unk_044 = 22;
actor->itemDrop = DROP_SILVER_RING_10p;
actor->unk_0D4 = 2;
func_enmy_80066254(actor);
}
@@ -2313,7 +2313,7 @@ void Aquas_801B1008(Boss* bossAQ, s32 timer) {
}
// OBJ_BOSS_AQ init
void Aquas_801B10F8(Boss* bossAQ) {
void Aquas_BossAq_Init(Boss* bossAQ) {
s32 i;
Actor* actor;
@@ -2411,7 +2411,7 @@ void Aquas_801B134C(Boss* bossAQ) {
if (fabsf(bossAQ->obj.pos.z - gPlayer[0].unk_138) <= 3000.0f) {
D_i3_801C4190[6] = 1;
bossAQ->timer_056 = 20;
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_30 | 0x8000, 0, 1);
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_AQ_BOSS | SEQ_FLAG, 0, 1);
bossAQ->state = 1;
}
break;
@@ -2531,15 +2531,15 @@ void Aquas_801B134C(Boss* bossAQ) {
break;
case 16:
D_ctx_801779A8[0] = 20.0f;
if (D_ctx_80178480 == 0) {
if (gCameraShake == 0) {
D_ctx_80178340 = D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 25;
D_ctx_80178480 = 20 + RAND_FLOAT(20);
gCameraShake = 20 + RAND_FLOAT(20);
}
if (D_ctx_80178480 == 29) {
if (gCameraShake == 29) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = D_ctx_80178340 = 0;
}
Math_SmoothStepToF(&D_i3_801C41B8[25], D_bg_8015F970, 1.0f, 100, 0.f);
@@ -2659,7 +2659,7 @@ void Aquas_801B134C(Boss* bossAQ) {
}
bossAQ->timer_058 = 30;
bossAQ->swork[AQ_SWK_0] = 4;
D_ctx_80178480 = 50;
gCameraShake = 50;
AUDIO_PLAY_SFX(0x1900002D, bossAQ->sfxSource, 0);
func_enmy_80062B60(bossAQ->obj.pos.x, bossAQ->obj.pos.z + 800.0f, 0, 100.0f);
var_fs3 = 80.0f;
@@ -3416,7 +3416,7 @@ f32 D_i3_801C0224[11] = {
};
Vec3f D_i3_801C0250 = { 0.0f, 0.0f, 0.0f };
s32 Aquas_801B4DDC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801B4DDC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Actor* this = thisx;
if (!(this->timer_0C6 & 1)) {
@@ -3593,7 +3593,7 @@ void Aquas_801B50E8(Actor* actor) {
RAND_FLOAT_CENTERED(10.0f), 49, actor->scale, 200, i);
func_effect_8007BC7C(actor->vwork[i].x, actor->vwork[i].y, actor->vwork[i].z + 100.0f, 6.0f);
}
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
func_effect_800815DC();
Object_Kill(&actor->obj, actor->sfxSource);
@@ -3640,7 +3640,7 @@ void Aquas_801B50E8(Actor* actor) {
}
}
s32 Aquas_801B5C18(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801B5C18(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
f32 sp6C = 1.0f;
f32 sp68 = 1.0f;
f32 sp64 = 1.0f;
@@ -3810,9 +3810,9 @@ void Aquas_801B638C(Actor* actor) {
func_effect_80081A8C(actor->obj.pos.x + RAND_FLOAT(i * 15.0f), actor->obj.pos.y + RAND_FLOAT(i * 3.0f),
actor->obj.pos.z + RAND_FLOAT(i * 5.0f), 1.0f + RAND_FLOAT(1.0f), 7);
}
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
if (actor->iwork[16] != 0) {
actor->unk_044 = 14;
actor->itemDrop = DROP_GOLD_RING_1;
}
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
@@ -3977,7 +3977,7 @@ void Aquas_801B6FF8(Actor* actor) {
f32 var_fs0;
if (actor->health == -100) {
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
func_enmy_80066254(actor);
for (i = 0; i < 15; i++) {
Aquas_801A9448(&actor->vwork[i], &actor->vwork[15 + i], RAND_FLOAT_CENTERED(20.0f), RAND_FLOAT(5.0f),
@@ -4079,7 +4079,7 @@ void Aquas_801B6FF8(Actor* actor) {
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_i3/fox_aq/Aquas_801B6FF8.s")
#endif
s32 Aquas_801B76EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801B76EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
if ((limbIndex >= 4) && (limbIndex < 14)) {
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
@@ -4226,7 +4226,7 @@ void Aquas_801B7C78(Actor* actor) {
}
func_effect_800815DC();
func_effect_8007D0E0(actor->vwork[7].x, actor->vwork[7].y, actor->vwork[7].z, 5.0f);
actor->unk_044 = 4;
actor->itemDrop = DROP_SILVER_RING_25p;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007A6F0(&actor->obj.pos, 0x29038090);
@@ -4452,7 +4452,7 @@ void Aquas_801B7C78(Actor* actor) {
}
}
s32 Aquas_801B8C50(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801B8C50(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Actor* this = thisx;
RCP_SetupDL(&gMasterDisp, 0x3A);
@@ -4578,7 +4578,7 @@ void Aquas_801B91A4(Actor* actor) {
Matrix_RotateY(gCalcMatrix, actor->obj.rot.y * M_DTOR, 0);
Matrix_RotateX(gCalcMatrix, actor->obj.rot.x * M_DTOR, 1);
if ((actor->health == 0) && (actor->state > 0)) {
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
for (i = 0; i < 5; i++) {
func_effect_80081A8C(actor->obj.pos.x + RAND_FLOAT(i * 15.0f), actor->obj.pos.y + RAND_FLOAT(i * 3.0f),
@@ -4943,7 +4943,7 @@ void Aquas_801BA6A4(Actor* actor) {
actor->unk_0D0 = 0;
actor->health -= actor->damage;
if (actor->health <= 0) {
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
if (actor->state == 0) {
for (i = 0, var_s2 = 0, var_s0 = gActors; i < 60 && var_s2 < 4; i++, var_s0++) {
@@ -5449,7 +5449,7 @@ void Aquas_801BB79C(Actor* actor) {
Aquas_801A96DC(actor);
}
s32 Aquas_801BC530(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801BC530(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Vec3f sp64 = { 0.0f, 0.0f, 0.0f };
Vec3f sp58;
f32 sp54 = 0.0f;
@@ -5523,7 +5523,8 @@ void Aquas_801BC930(Actor* actor) {
}
s32 D_i3_801C04C4[9] = {
1, 5, 9, 14, 15, 16, 17, 0, 13,
DROP_SILVER_RING, DROP_BOMB, DROP_LASERS, DROP_GOLD_RING_1, DROP_GOLD_RING_2,
DROP_GOLD_RING_3, DROP_GOLD_RING_4, DROP_NONE, DROP_1UP,
};
// OBJ_ACTOR_269 action
@@ -5635,7 +5636,7 @@ void Aquas_801BC9A0(Actor* actor) {
actor->obj.pos.x = actor->vwork[4].x;
actor->obj.pos.y = actor->vwork[4].y;
actor->obj.pos.z = actor->vwork[4].z;
actor->unk_044 = D_i3_801C04C4[actor->iwork[1]];
actor->itemDrop = D_i3_801C04C4[actor->iwork[1]];
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007A6F0(&actor->obj.pos, 0x19021078);
@@ -5890,7 +5891,7 @@ void Aquas_801BD54C(Actor* actor) {
}
}
s32 Aquas_801BDDFC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Aquas_801BDDFC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
if ((limbIndex == 1) || (limbIndex == 2) || (limbIndex == 5)) {
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
@@ -6081,7 +6082,7 @@ void Aquas_801BE3F8(Actor* actor) {
if (actor->state == 2) {
actor->health -= actor->damage;
if (actor->health <= 0) {
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
for (i = 0; i < 10; i++) {
Aquas_801AC8A8(actor->obj.pos.x + RAND_FLOAT_CENTERED(200.0f),
+11 -11
View File
@@ -446,12 +446,12 @@ void Solar_8019F20C(Actor* actor) {
D_i3_801BF8F0[i].y + RAND_FLOAT_CENTERED(3.0f), RAND_FLOAT(-10.0f) - 10.0f);
}
} else if (actor->obj.id == OBJ_ACTOR_275) {
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
} else if (actor->obj.id == OBJ_ACTOR_276) {
if (gGoldRingCount[0] != 4) {
actor->unk_044 = 14;
actor->itemDrop = DROP_GOLD_RING_1;
} else {
actor->unk_044 = 25;
actor->itemDrop = DROP_SILVER_STAR;
}
}
func_enmy_80066254(actor);
@@ -1049,7 +1049,7 @@ void Solar_801A10F4(Player* player) {
gCsCamAtZ = -3000.0f;
gCsCamEyeZ = -3400.0f;
Audio_KillSfxBySourceAndId(player->sfxSource, 0x3140807E);
AUDIO_PLAY_BGM(SEQ_ID_51);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_51);
func_display_80057814(player);
func_8001C8B8(gPlayerNum);
D_ctx_80177A48[0] = 0.01f;
@@ -1110,7 +1110,7 @@ void Solar_801A10F4(Player* player) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
}
if (D_ctx_80178340 == 255) {
AUDIO_PLAY_BGM(SEQ_ID_11 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_SOLAR | SEQ_FLAG);
player->pos.z = 0.0f;
player->unk_0D0 = D_play_80161A54;
func_play_800A6148();
@@ -1225,7 +1225,7 @@ void Solar_801A1F80(Boss* bossSO) {
Solar_801A0CEC(&gActors[10], bossSO->obj.pos.x, bossSO->obj.pos.z + 2000.0f, 20.0f, 1);
D_ctx_801779A8[gMainController] = 10.0f;
D_ctx_80178480 = 120;
gCameraShake = 120;
bossSO->fwork[SO_FWK_3] = 2400.0f;
bossSO->info.hitbox = SEGMENTED_TO_VIRTUAL(D_SO_60231A4);
bossSO->unk_04C = 0;
@@ -1256,7 +1256,7 @@ void Solar_801A1F80(Boss* bossSO) {
gFogBlue--;
}
if (gBossFrameCount == 30) {
AUDIO_PLAY_BGM(SEQ_ID_27 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_SO_BOSS | SEQ_FLAG);
}
if (gBossFrameCount <= 60) {
Math_SmoothStepToF(&D_ctx_801779A8[gMainController], 120.0f, 1.0f, 3.5f, 0.0f);
@@ -2118,7 +2118,7 @@ void Solar_801A4EF8(Boss* bossSO) {
if (bossSO->swork[SO_SWK_11] == 300) {
D_80137E84[gMainController] = 1;
D_Timer_80177BD0[gMainController] = 170;
D_ctx_80178480 = 130;
gCameraShake = 130;
}
if (bossSO->swork[SO_SWK_11] == 200) {
Solar_801A0CEC(&gActors[9], bossSO->obj.pos.x, bossSO->obj.pos.z + 1000.0f, 20.0f, 1);
@@ -2142,7 +2142,7 @@ void Solar_801A4EF8(Boss* bossSO) {
Solar_801A0CEC(&gActors[10], bossSO->obj.pos.x, bossSO->obj.pos.z + 1000.0f, 80.0f, 2);
D_80137E84[gMainController] = 1;
D_Timer_80177BD0[gMainController] = 100;
D_ctx_80178480 = 10;
gCameraShake = 10;
}
if (bossSO->obj.pos.y < -1500.0f) {
bossSO->state++;
@@ -2490,7 +2490,7 @@ void Solar_801A5B3C(Boss* bossSO) {
}
}
s32 Solar_801A68A8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Solar_801A68A8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Boss* this = thisx;
Vec3f sp58 = { 0.0f, 0.0f, 0.0f };
Vec3f sp4C = { 10.0f, 0.0f, 0.0f };
@@ -2895,7 +2895,7 @@ void Solar_801A7930(Player* player) {
player->unk_1D0++;
player->wings.unk_2C = 1;
func_8001C8B8(0);
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
D_ctx_80177A98 = 1;
func_play_800A6148();
D_ctx_80177A48[1] = 0.0f;
+27 -26
View File
@@ -575,7 +575,7 @@ void Zoness_801900FC(Vec3f* pos, Vec3f* rot, f32 xVel, f32 yVel, f32 zVel, s32 a
}
}
s32 Zoness_8019019C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Zoness_8019019C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
if ((limbIndex >= 4) && (limbIndex < 10)) {
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
@@ -669,7 +669,7 @@ void Zoness_801904CC(Actor* actor) {
Zoness_801900FC(&actor->vwork[i], &actor->vwork[i + 11], RAND_FLOAT_CENTERED(20.0f), RAND_FLOAT(-10.0f),
RAND_FLOAT(10.0f), 41, actor->scale, 200, i);
}
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 4.0f);
@@ -910,7 +910,7 @@ void Zoness_80191010(Actor* actor) {
Zoness_801900FC(&actor->vwork[i], &actor->vwork[3 + i], RAND_FLOAT_CENTERED(20.0f), RAND_FLOAT(-10.0f),
RAND_FLOAT(10.0f), 42, actor->scale, 200, i);
}
actor->unk_044 = 4;
actor->itemDrop = DROP_SILVER_RING_25p;
func_enmy_80066254(actor);
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 3.0f);
AUDIO_PLAY_SFX(0x2903A008, actor->sfxSource, 4);
@@ -983,7 +983,7 @@ void Zoness_80191680(Actor* actor) {
actor->health -= actor->damage;
AUDIO_PLAY_SFX(0x29033037, actor->sfxSource, 4);
if (actor->health <= 0) {
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
actor->state = 1;
AUDIO_PLAY_SFX(0x29018036, actor->sfxSource, 4);
@@ -1238,7 +1238,7 @@ void Zoness_80192094(Actor* actor) {
Zoness_801900FC(&actor->vwork[i], &actor->vwork[i + 6], RAND_FLOAT_CENTERED(40.0f), RAND_FLOAT(-10.0f),
RAND_FLOAT(20.0f), 44, actor->scale, 200, i);
}
actor->unk_044 = 5;
actor->itemDrop = DROP_BOMB;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 10.0f);
@@ -1339,7 +1339,7 @@ void Zoness_80192834(Actor* actor) {
Zoness_801900FC(&actor->vwork[i], &actor->vwork[5 + i], RAND_FLOAT_CENTERED(20.0f), RAND_FLOAT(-10.0f),
RAND_FLOAT(10.0f), 43, actor->scale, 200, i);
}
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 3.0f);
@@ -1456,7 +1456,7 @@ void Zoness_80192E64(Actor* actor) {
Zoness_801900FC(&actor->vwork[i], &actor->vwork[9 + i], RAND_FLOAT_CENTERED(40.0f), RAND_FLOAT(-10.0f),
RAND_FLOAT(20.0f), 59, actor->scale, 200, i);
}
actor->unk_044 = 7;
actor->itemDrop = DROP_BOMB_33p;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 10.0f);
@@ -1494,7 +1494,7 @@ f32 D_i3_801BF608[6] = {
-45.0f, 0.0f, -45.0f, 0.0f, -45.0f, 0.0f,
};
void Zoness_801932AC(Boss* bossZO) {
void Zoness_BossZo_Init(Boss* bossZO) {
s32 i;
gBossActive = 1;
@@ -1707,7 +1707,7 @@ f32 Zoness_80193CC8(s32 arg0) {
return var_fv1;
}
s32 Zoness_80193D08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Zoness_80193D08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Boss* this = thisx;
f32 temp;
@@ -2121,7 +2121,7 @@ void Zoness_80194A84(Boss* bossZO) {
sp100 = 5.0f;
spFC = 3.0f;
if (sZoSwork[ZO_BSS_55] == 0) {
AUDIO_PLAY_BGM(SEQ_ID_22 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_ZO_BOSS | SEQ_FLAG);
sZoSwork[ZO_BSS_55] = 1;
}
func_effect_8008377C(sZoFwork[ZO_BSF_43_X], sp134, sZoFwork[ZO_BSF_43_Z] + 100.0f, 5.0f, 3.0f);
@@ -2451,14 +2451,14 @@ void Zoness_80194A84(Boss* bossZO) {
break;
case 6:
D_ctx_801779A8[0] = 20.0f;
if (D_ctx_80178480 == 0) {
if (gCameraShake == 0) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 25;
D_ctx_80178480 = (s32) (RAND_FLOAT(20.0f) + 20.0f);
gCameraShake = (s32) (RAND_FLOAT(20.0f) + 20.0f);
}
if (D_ctx_80178480 == 29) {
if (gCameraShake == 29) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = D_ctx_80178340 = 0;
}
if (!(gGameFrameCount & 3)) {
@@ -2874,7 +2874,7 @@ void Zoness_80194A84(Boss* bossZO) {
sZoSwork[ZO_BSS_11] -= bossZO->damage;
if (sZoSwork[ZO_BSS_11] <= 0) {
sZoSwork[ZO_BSS_11] = 0;
D_ctx_80178480 = 30;
gCameraShake = 30;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
@@ -2900,7 +2900,7 @@ void Zoness_80194A84(Boss* bossZO) {
sZoSwork[ZO_BSS_12] -= bossZO->damage;
if (sZoSwork[ZO_BSS_12] <= 0) {
sZoSwork[ZO_BSS_12] = 0;
D_ctx_80178480 = 30;
gCameraShake = 30;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 255;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178358 = 0;
@@ -3357,7 +3357,7 @@ void Zoness_8019969C(Actor* actor) {
RAND_FLOAT_CENTERED(50.0f) + actor->obj.pos.z, 1.0f);
}
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z + 200.0f, 5.0f);
actor->unk_044 = 5;
actor->itemDrop = DROP_BOMB;
actor->unk_0D4 = 2;
actor->obj.pos.z -= 100.0f;
func_enmy_80066254(actor);
@@ -3457,7 +3457,7 @@ void Zoness_80199A28(Actor* actor) {
}
if ((actor->unk_0D0 != 0) && (actor->health != 0)) {
actor->unk_0D0 = 0;
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y + 100.0f, actor->obj.pos.z, 7.0f);
actor->unk_0D4 = 2;
actor->obj.pos.y += 200.0f;
@@ -3475,7 +3475,7 @@ void Zoness_80199A28(Actor* actor) {
}
if ((actor->timer_0BC == 0) && (actor->iwork[0] == 0)) {
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y + 100.0f, actor->obj.pos.z, 7.0f);
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
actor->unk_0D4 = 2;
actor->obj.pos.y += 200.0f;
func_enmy_80066254(actor);
@@ -3941,7 +3941,8 @@ void Zoness_8019B810(Actor* actor) {
actor->health = 30;
}
s32 D_i3_801BF824[10] = { 1, 5, 9, 14, 15, 16, 17, 0, 13, 1000 };
s32 D_i3_801BF824[10] = { DROP_SILVER_RING, DROP_BOMB, DROP_LASERS, DROP_GOLD_RING_1, DROP_GOLD_RING_2,
DROP_GOLD_RING_3, DROP_GOLD_RING_4, DROP_NONE, DROP_1UP, 1000 };
Vec3f D_i3_801BF84C[6] = {
{ 5.0f, -10.0f, 0.0f }, { 10.0f, 0.0f, 0.0f }, { 5.0f, 10.0f, 0.0f },
{ -5.0f, -10.0f, 0.0f }, { -10.0f, 0.0f, 0.0f }, { -5.0f, 10.0f, 0.0f },
@@ -3985,7 +3986,7 @@ void Zoness_8019B854(Actor* actor) {
}
actor->obj.pos.y += 100.0f;
if (D_i3_801BF824[actor->iwork[0]] < 1000) {
actor->unk_044 = D_i3_801BF824[actor->iwork[0]];
actor->itemDrop = D_i3_801BF824[actor->iwork[0]];
func_enmy_80066254(actor);
} else {
if (D_i3_801BF824[actor->iwork[0]] == 1000) {
@@ -4002,7 +4003,7 @@ void Zoness_8019B854(Actor* actor) {
func_effect_8007EE68(353, &spB4, &spA8, &spA8, &sp9C, 1.0f);
}
}
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
}
Object_Kill(&actor->obj, actor->sfxSource);
@@ -4096,7 +4097,7 @@ void Zoness_8019BE48(Actor* actor) {
BonusText_Display(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z + 200.0f, 2);
gHitCount += 2;
}
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
actor->state++;
}
@@ -4390,7 +4391,7 @@ void Zoness_8019CE58(Actor* actor) {
gSPDisplayList(gMasterDisp++, D_ZO_60181E0);
}
void Zoness_8019D060(Actor* actor) {
void Zoness_Actor247_Init(Actor* actor) {
s32 i;
for (i = 0; i < 60; i++) {
@@ -4446,7 +4447,7 @@ void Zoness_8019D15C(Actor* actor) {
}
}
s32 Zoness_8019D340(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
bool Zoness_8019D340(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* thisx) {
Actor* this = thisx;
switch (this->state) {
@@ -4512,7 +4513,7 @@ void Zoness_8019D428(Player* player) {
}
gControllerHold[gMainController].button = sp2C;
if (gCsFrameCount >= 270) {
AUDIO_PLAY_BGM(SEQ_ID_6 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_ZONESS | SEQ_FLAG);
D_ctx_80177838 = 80;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = 0;
@@ -4610,7 +4611,7 @@ void Zoness_8019D76C(Player* player) {
player->pos.z = -(D_ctx_80177D20 + 1500.0f);
player->unk_1D0++;
func_8001C8B8(0);
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
D_ctx_80177A98 = 1;
func_play_800A6148();
Solar_801A7750();
+36 -35
View File
@@ -103,7 +103,7 @@ void Bolse_8018BD60(Actor* actor) {
if (actorPtr->obj.status == OBJ_FREE) {
Actor_Initialize(actorPtr);
actorPtr->obj.status = OBJ_ACTIVE;
actorPtr->obj.id = OBJ_ACTOR_197;
actorPtr->obj.id = OBJ_ACTOR_ALLRANGE;
actorPtr->obj.pos.x = D_i4_8019EEC4[actor->unk_04E];
actorPtr->obj.pos.y = 1000.0f;
actorPtr->obj.pos.z = D_i4_8019EED4[actor->unk_04E];
@@ -111,7 +111,7 @@ void Bolse_8018BD60(Actor* actor) {
actorPtr->aiIndex = -1;
actorPtr->health = 24;
actorPtr->iwork[11] = 1;
actorPtr->unk_044 = 2;
actorPtr->itemDrop = DROP_SILVER_RING_50p;
actorPtr->aiType = i;
Object_SetInfo(&actorPtr->info, actorPtr->obj.id);
AUDIO_PLAY_SFX(0x3100000CU, actorPtr->sfxSource, 4U);
@@ -133,7 +133,7 @@ void Bolse_8018BEF8(Actor* actor, s32 arg1) {
if (actorPtr->obj.status == OBJ_FREE) {
Actor_Initialize(actorPtr);
actorPtr->obj.status = OBJ_ACTIVE;
actorPtr->obj.id = OBJ_ACTOR_197;
actorPtr->obj.id = OBJ_ACTOR_ALLRANGE;
actorPtr->obj.pos.z = 0.0f;
if (D_i4_801A0530 > 1000) {
@@ -154,33 +154,33 @@ void Bolse_8018BEF8(Actor* actor, s32 arg1) {
actorPtr->aiIndex = -1;
if (i < 13) {
actorPtr->aiIndex = 2;
gActors[2].aiIndex = -1;
actorPtr->aiIndex = AI360_SLIPPY;
gActors[AI360_SLIPPY].aiIndex = -1;
}
if ((i == 17) || (i == 18)) {
actorPtr->aiIndex = 0;
actorPtr->aiIndex = AI360_FOX;
}
if ((i == 20) || (i == 21)) {
actorPtr->aiIndex = 3;
gActors[3].aiIndex = -1;
actorPtr->aiIndex = AI360_PEPPY;
gActors[AI360_PEPPY].aiIndex = -1;
}
if (i == 22) {
actorPtr->aiIndex = 1;
gActors[1].aiIndex = -1;
actorPtr->aiIndex = AI360_FALCO;
gActors[AI360_FALCO].aiIndex = -1;
}
if ((D_i4_801A0530 > 16000) && ((i == 23) || (i == 24))) {
actorPtr->aiIndex = 0;
actorPtr->aiIndex = AI360_FOX;
}
actorPtr->health = 24;
actorPtr->iwork[11] = 1;
if (D_i4_801A0530 < 16000) {
actorPtr->unk_044 = 2;
actorPtr->itemDrop = DROP_SILVER_RING_50p;
}
Object_SetInfo(&actorPtr->info, actorPtr->obj.id);
@@ -270,7 +270,7 @@ void Bolse_8018C158(Actor* actor) {
actor->state = 6;
AUDIO_PLAY_SFX(0x31009063U, actor->sfxSource, 0U);
AUDIO_PLAY_SFX(0x2940D09AU, actor->sfxSource, 4U);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
for (actorPtr = &gActors[10], i = 0; i < 20; i++, actorPtr++) {
if (actorPtr->obj.status == OBJ_ACTIVE) {
@@ -285,7 +285,7 @@ void Bolse_8018C158(Actor* actor) {
actor->state = 10;
actor->timer_0BC = 150;
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_0;
AUDIO_PLAY_BGM(SEQ_ID_28 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_BO_BOSS | SEQ_FLAG);
func_360_8002EE34();
gPlayer[0].camEye.x = 400.0f;
gPlayer[0].camEye.y = 50.0f;
@@ -296,7 +296,7 @@ void Bolse_8018C158(Actor* actor) {
for (i = 10; i < 30; i++) {
Object_Kill(&gActors[i].obj, gActors[i].sfxSource);
}
} else if ((D_360_8015F924 == 1) && (((gHitCount - actor->iwork[1]) >= 5) || (D_i4_801A0530 == 0xFA0))) {
} else if ((D_360_8015F924 == 1) && (((gHitCount - actor->iwork[1]) >= 5) || (D_i4_801A0530 == 4000))) {
D_360_8015F924 = 2;
actor->iwork[1] = gHitCount;
if ((D_ctx_80177CD0[0] != 0) || (D_ctx_80177CD0[1] != 0) || (D_ctx_80177CD0[2] != 0) ||
@@ -391,13 +391,14 @@ void Bolse_8018C158(Actor* actor) {
break;
case 6:
gActors[1].aiIndex = 0;
gActors[1].state = 2;
gActors[2].aiIndex = 0;
gActors[2].state = 2;
gActors[3].aiIndex = 0;
gActors[3].state = 2;
gActors[4].aiIndex = gActors[5].aiIndex = gActors[6].aiIndex = gActors[7].aiIndex = -1;
gActors[AI360_FALCO].aiIndex = 0;
gActors[AI360_FALCO].state = 2;
gActors[AI360_SLIPPY].aiIndex = 0;
gActors[AI360_SLIPPY].state = 2;
gActors[AI360_PEPPY].aiIndex = 0;
gActors[AI360_PEPPY].state = 2;
gActors[AI360_WOLF].aiIndex = gActors[AI360_LEON].aiIndex = gActors[AI360_PIGMA].aiIndex =
gActors[AI360_ANDREW].aiIndex = -1;
break;
}
@@ -623,7 +624,7 @@ bool Bolse_8018D278(Actor* actor) {
func_effect_8007A6F0(&actor->obj.pos, 0x2903A008);
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
func_enmy_80066254(actor);
Object_Kill(&actor->obj, actor->sfxSource);
@@ -648,7 +649,7 @@ void Bolse_8018D394(Actor* actor) {
actor->iwork[0] = 0;
}
s32 Bolse_8018D414(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
bool Bolse_8018D414(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
Actor* actor = (Actor*) this;
if (limbIndex == 2) {
@@ -751,7 +752,7 @@ void Bolse_8018D7F0(Actor* actor) {
actor->scale = -1.0f;
}
s32 Bolse_8018D874(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
bool Bolse_8018D874(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
Actor* actor = (Actor*) this;
RCP_SetupDL(&gMasterDisp, 0x1D);
@@ -1307,7 +1308,7 @@ void Bolse_8018EF6C(Player* player) {
actor->state = 3;
actor->timer_0BC = 80;
}
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 80;
}
break;
@@ -1492,11 +1493,11 @@ void Bolse_8018F94C(Player* player) {
switch (gCsFrameCount) {
case 160:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 92:
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
break;
case 95:
@@ -1602,7 +1603,7 @@ void Bolse_8018F94C(Player* player) {
case 800:
player->unk_1D0 += 1;
player->timer_1F8 = 0x32;
player->timer_1F8 = 50;
player->unk_194 = 5.0f;
player->unk_190 = 5.0f;
AUDIO_PLAY_SFX(0x09000002U, player->sfxSource, 0U);
@@ -1626,7 +1627,7 @@ void Bolse_8018F94C(Player* player) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
D_ctx_80178358 = 255;
if (D_ctx_80178340 == 255) {
D_80161A94[0] = gGoldRingCount[0];
D_ctx_80161A94[0] = gGoldRingCount[0];
gNextGameState = GSTATE_PLAY;
gNextLevel = LEVEL_VENOM_1;
func_8001CA24(0);
@@ -1731,9 +1732,9 @@ void Bolse_8018F94C(Player* player) {
Math_SmoothStepToF(&player->camAt.z, gCsCamAtZ, D_ctx_80177A48[0], 50000, 0);
}
player->unk_088 += 10.0f;
player->unk_080 = -__sinf(player->unk_088 * M_DTOR) * 0.3f;
player->unk_080 = -SIN_DEG(player->unk_088) * 0.3f;
player->unk_0F4 += 8.0f;
player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR);
player->unk_0F0 = SIN_DEG(player->unk_0F4);
}
void Bolse_80190D98(Effect* effect, f32 xPos, f32 yPos, f32 zPos, f32 xRot, f32 yRot) {
@@ -1966,7 +1967,7 @@ void Bolse_801912FC(Boss* boss) {
}
}
s32 Bolse_801918E4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
bool Bolse_801918E4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* this) {
Boss* boss = (Boss*) this;
RCP_SetupDL(&gMasterDisp, 0x1D);
@@ -2130,7 +2131,7 @@ void Bolse_80191ED8(void) {
if (D_ctx_80178310[i].id < 0) {
break;
}
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_291)) {
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_SUPPLIES)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = D_ctx_80178310[i].id;
@@ -2197,7 +2198,7 @@ void Bolse_80192264(void) {
Matrix_Push(&gGfxMatrix);
Rand_SetSeed(1, 29100, 9786);
Matrix_Translate(gGfxMatrix, 0.0f, D_ctx_8017847C, 0.0f, 1);
Matrix_Translate(gGfxMatrix, 0.0f, gCameraShakeY, 0.0f, 1);
Matrix_RotateY(gGfxMatrix, gBosses[0].obj.rot.y * M_DTOR, 1);
Matrix_Scale(gGfxMatrix, 5.0f, 1.0f, 5.0f, 1);
+28 -28
View File
@@ -14,7 +14,7 @@ void Fortuna_801875F0(Actor* actor) {
f32 D_i4_8019EDE0[] = { 180.0f, 60.0f, 300.0f };
for (counter = 0, i = 0; i < 10; i++, actorPtr++) {
if (actorPtr->obj.status != 0) {
if (actorPtr->obj.status != OBJ_FREE) {
counter++;
}
}
@@ -32,30 +32,30 @@ void Fortuna_801875F0(Actor* actor) {
if (actorPtr->obj.status == OBJ_FREE) {
Actor_Initialize(actorPtr);
actorPtr->obj.status = OBJ_ACTIVE;
actorPtr->obj.id = 197;
actorPtr->obj.id = OBJ_ACTOR_ALLRANGE;
actorPtr->obj.pos.x = gBosses[0].obj.pos.x;
actorPtr->obj.pos.y = gBosses[0].obj.pos.y + 20.0f;
actorPtr->obj.pos.z = gBosses[0].obj.pos.z;
actorPtr->state = 1;
actorPtr->timer_0BC = 100;
actorPtr->aiType = i + 10;
actorPtr->aiType = i + AI360_10;
actorPtr->aiIndex = -1;
if ((i == 3) && (Rand_ZeroOne() < 0.3f)) {
actorPtr->aiIndex = 2;
actorPtr->aiIndex = AI360_SLIPPY;
}
if ((i == 4) && (Rand_ZeroOne() < 0.3f)) {
actorPtr->aiIndex = 3;
actorPtr->aiIndex = AI360_PEPPY;
}
if ((i == 5) && (Rand_ZeroOne() < 0.3f)) {
actorPtr->aiIndex = 1;
actorPtr->aiIndex = AI360_FALCO;
}
actorPtr->unk_0F4.x = 3.0f;
actorPtr->unk_0F4.y = D_i4_8019EDE0[actor->unk_04E];
actorPtr->health = 24;
actorPtr->unk_0C9 = actorPtr->iwork[11] = 1;
actorPtr->unk_044 = 2;
actorPtr->itemDrop = DROP_SILVER_RING_50p;
Object_SetInfo(&actorPtr->info, actorPtr->obj.id);
AUDIO_PLAY_SFX(0x31000011U, actorPtr->sfxSource, 4);
break;
@@ -79,8 +79,8 @@ void Fortuna_80187884(Actor* actor, f32 xPos, f32 yPos, f32 zPos, f32 arg4) {
actor->obj.pos.x = xPos;
actor->obj.pos.y = yPos;
actor->obj.pos.z = zPos;
actor->obj.id = OBJ_ACTOR_197;
actor->aiType = 4;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->aiType = AI360_WOLF;
actor->unk_0C9 = 1;
actor->state = 0;
actor->timer_0BC = 10000;
@@ -150,7 +150,7 @@ void Fortuna_80187960(Actor* actor) {
if (D_360_8015F928 == 8540) {
Radio_PlayMessage(gMsg_ID_9400, RCID_ROB64);
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_10 | 0x8000, 0, 0);
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_FORTUNA | SEQ_FLAG, 0, 0);
gActors[1].aiIndex = gActors[2].aiIndex = gActors[3].aiIndex = gActors[4].aiIndex = gActors[5].aiIndex =
gActors[6].aiIndex = gActors[7].aiIndex = -1;
}
@@ -261,9 +261,9 @@ void Fortuna_80187960(Actor* actor) {
if (gCsFrameCount == 264) {
actorPtr->state = 2;
actor->state = 2;
player->state_1C8 = 3;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_014 = 0.0001f;
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 80;
}
};
@@ -292,7 +292,7 @@ void Fortuna_80187960(Actor* actor) {
};
}
if ((gControllerPress->button & 0x1000) || (D_360_8015F928 == (D_360_800C9B4C + 0x1B8))) {
if ((gControllerPress->button & START_BUTTON) || (D_360_8015F928 == (D_360_800C9B4C + 440))) {
actor->state = 2;
player->state_1C8 = PLAYERSTATE_1C8_3;
func_play_800B7184(player, 1);
@@ -364,11 +364,11 @@ void Fortuna_80187960(Actor* actor) {
case 6:
actor->iwork[0] += 1;
if (D_ctx_80177930 == 0) {
actor1->aiIndex = 0;
actor1->aiIndex = AI360_FOX;
actor1->state = 2;
actor2->aiIndex = 0;
actor2->aiIndex = AI360_FOX;
actor2->state = 2;
actor3->aiIndex = 0;
actor3->aiIndex = AI360_FOX;
actor3->state = 2;
if (actor->iwork[0] == 130) {
Vec3f sp50 = { 0.0f, 0.0f, -10000 };
@@ -380,11 +380,11 @@ void Fortuna_80187960(Actor* actor) {
Matrix_MultVec3f(gCalcMatrix, &sp50, &actor19->obj.pos);
actor19->obj.status = OBJ_ACTIVE;
actor19->obj.id = OBJ_ACTOR_197;
actor19->obj.id = OBJ_ACTOR_ALLRANGE;
actor19->state = 4;
actor19->unk_0F4.y = player->unk_0E8 + player->unk_114 + 180.0f;
actor19->unk_0F4.x = 15.0f;
actor19->aiType = 100;
actor19->aiType = AI360_GREAT_FOX;
actor19->fwork[1] = 90.0f;
actor19->fwork[0] = 90.0f;
Object_SetInfo(&actor19->info, actor19->obj.id);
@@ -483,7 +483,7 @@ void Fortuna_80188AD0(Actor* actor) {
Fortuna_80188A48(&actor->vwork[3], &actor->vwork[9], RAND_FLOAT_CENTERED(50.0f), RAND_FLOAT(10.0f) + 10.0f,
RAND_FLOAT_CENTERED(50.0f), 35);
func_effect_8007BFFC(actor->obj.pos.x, actor->obj.pos.y + 180.0f, actor->obj.pos.z, 0.0f, 0.0f, 0.0f, 5.0f, 10);
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
actor->obj.pos.y += 230.0f;
func_enmy_80066254(actor);
actor->obj.pos.y -= 230.0f;
@@ -539,7 +539,7 @@ void Fortuna_80188DA0(s32 limbIndex, Vec3f* rot, void* ptr) {
}
}
s32 Fortuna_80188F08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* ptr) {
bool Fortuna_80188F08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* ptr) {
Actor* actor = (Actor*) ptr;
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
@@ -793,9 +793,9 @@ void Fortuna_8018927C(Player* player) {
func_play_800A5EBC();
gLevelType = 1;
D_ctx_801784AC = gBgColor = gFogRed = gFogGreen = gFogBlue = 0;
gLight1R = gLight2R = D_80161A70 = 86;
gLight1G = gLight2G = D_80161A74 = 58;
gLight1B = gLight2B = D_80161A78 = 25;
gLight1R = gLight2R = D_ctx_80161A70 = 86;
gLight1G = gLight2G = D_ctx_80161A74 = 58;
gLight1B = gLight2B = D_ctx_80161A78 = 25;
gAmbientR = 11;
gAmbientG = 8;
gAmbientB = 24;
@@ -872,14 +872,14 @@ void Fortuna_8018927C(Player* player) {
if (gCsFrameCount == 200) {
if (D_ctx_80177930 == 0) {
AUDIO_PLAY_BGM(SEQ_ID_49);
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
} else {
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
}
}
if (gCsFrameCount == 420) {
D_ctx_80177840 = 0x64;
D_ctx_80177840 = 100;
}
break;
@@ -1015,7 +1015,7 @@ void Fortuna_8018927C(Player* player) {
D_ctx_80178430 += 0.3f;
D_ctx_8017842C += 0.3f;
Math_SmoothStepToF(&D_ctx_80177A48[3], 0.0f, 1.0f, 0.02f, 0);
if (gCsFrameCount == 0x4C0) {
if (gCsFrameCount == 1216) {
player->unk_1D0 = 12;
player->timer_1F8 = 1000;
D_ctx_80177A48[4] = 1.0f;
@@ -1192,7 +1192,7 @@ void Fortuna_8018927C(Player* player) {
switch (gCsFrameCount) {
case 140:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 450:
D_ctx_80177840 = 100;
+9 -9
View File
@@ -15,31 +15,31 @@ s32 D_i4_8019EDD0 = 0;
void OvlI4_CallFunction(u32 arg0, void* arg1) {
switch (arg0) {
case 0x5A:
case 90:
Fortuna_8018927C(arg1);
break;
case 0x5B:
case 91:
Bolse_8018E710(arg1);
break;
case 0x5C:
case 92:
Bolse_8018E870(arg1);
break;
case 0x5D:
case 93:
Bolse_80191BAC(arg1);
break;
case 0x5E:
case 94:
Bolse_80191DB0(arg1);
break;
case 0x5F:
case 95:
Bolse_8018D7F0(arg1);
break;
case 0x60:
case 96:
Bolse_8018D960(arg1);
break;
case 0x61:
case 97:
Bolse_8018D394(arg1);
break;
case 0x62:
case 98:
Bolse_8018D454(arg1);
default:
PRINTF("i4 指定外!\n"); // Not specified!
+40 -40
View File
@@ -273,7 +273,7 @@ void Katina_80192E20(Player* player) {
Object_Kill(&gActors[6].obj, gActors[6].sfxSource);
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_014 = 0.0001f;
AUDIO_PLAY_BGM(D_ctx_80177C90);
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 80;
for (actor = &gActors[1], i = 1; i < 4; i += 1, actor++) {
actor->timer_0BC = 0;
@@ -365,7 +365,7 @@ void Katina_80193718(Boss* boss) {
boss->timer_050 = 4;
boss->state++;
func_effect_8007B344(boss->obj.pos.x, boss->obj.pos.y + 250.0f, boss->obj.pos.z + 600.0f, 71.0f, 5);
D_ctx_80178480 = 25;
gCameraShake = 25;
gLight1R = 255;
gLight1G = 0;
gLight1B = 0;
@@ -419,7 +419,7 @@ void Katina_80193B1C(Boss* boss) {
}
}
void Katina_80193CA4(Boss* boss) {
void Katina_Boss316_Init(Boss* boss) {
boss->swork[10] = 100;
boss->swork[11] = 100;
boss->swork[12] = 100;
@@ -518,7 +518,7 @@ void Katina_80193EF0(Boss* boss) {
boss->obj.pos.z + dest.z, 1.6f);
}
AUDIO_PLAY_SFX(0x2940D09AU, boss->sfxSource, 4U);
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
boss->state = 20;
boss->timer_050 = 50;
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 50);
@@ -569,7 +569,7 @@ void Katina_80194458(Boss* boss, Vec3f* pos, f32 arg2) {
if (actor->obj.status == OBJ_FREE) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = OBJ_ACTOR_197;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->obj.pos.x = boss->obj.pos.x + pos->x;
actor->obj.pos.y = boss->obj.pos.y + pos->y;
actor->obj.pos.z = boss->obj.pos.z + pos->z;
@@ -577,7 +577,7 @@ void Katina_80194458(Boss* boss, Vec3f* pos, f32 arg2) {
actor->timer_0BC = 20;
actor->unk_0F4.y = arg2;
actor->unk_0F4.x = -30.0f;
actor->aiType = i + 10;
actor->aiType = i + AI360_10;
actor->unk_0B6 = D_i4_8019F198[i - 10];
actor->aiIndex = D_i4_8019F1C0[i - 10];
actor->health = 24;
@@ -586,7 +586,7 @@ void Katina_80194458(Boss* boss, Vec3f* pos, f32 arg2) {
}
actor->unk_0C9 = 1;
if (D_i4_801A0540 < 9600) {
actor->unk_044 = 22;
actor->itemDrop = DROP_SILVER_RING_10p;
}
actor->timer_0C2 = 30;
actor->timer_0C4 = 400;
@@ -765,7 +765,7 @@ void Katina_801946C4(Boss* boss) {
case 5:
if (boss->timer_050 == 1) {
AUDIO_PLAY_BGM(SEQ_ID_29 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_KA_BOSS | SEQ_FLAG);
}
if ((boss->timer_050 == 0) && !(boss->timer_052 & 15)) {
@@ -1157,8 +1157,8 @@ void Katina_801946C4(Boss* boss) {
&boss->unk_078.y,
Math_RadToDeg(Math_Atan2F(boss->vwork[0].x - boss->obj.pos.x, boss->vwork[0].z - boss->obj.pos.z)),
0.5f, 1.5f, 0.0001f);
boss->vel.x = __sinf(boss->unk_078.y * M_DTOR) * boss->fwork[10];
boss->vel.z = __cosf(boss->unk_078.y * M_DTOR) * boss->fwork[10];
boss->vel.x = SIN_DEG(boss->unk_078.y) * boss->fwork[10];
boss->vel.z = COS_DEG(boss->unk_078.y) * boss->fwork[10];
}
for (i = 0; i < 10; i++) {
if (boss->swork[i] != 0) {
@@ -1192,7 +1192,7 @@ void Katina_801946C4(Boss* boss) {
}
}
s32 Katina_801965A8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Katina_801965A8(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
RCP_SetupDL(&gMasterDisp, 29);
@@ -1499,9 +1499,9 @@ void Katina_80197290(Player* player) {
player->unk_1D0 = 3;
func_8001C8B8(0);
if (D_ctx_80177930 != 0) {
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
} else {
AUDIO_PLAY_BGM(SEQ_ID_49);
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
}
D_ctx_80177A98 = 0;
D_ctx_80177A48[1] = 0.0f;
@@ -1661,9 +1661,9 @@ void Katina_80197290(Player* player) {
Math_SmoothStepToF(&player->camAt.z, gCsCamAtZ, D_ctx_80177A48[0], 50000.0f, 0);
}
player->unk_088 += 10.0f;
player->unk_080 = -__sinf(player->unk_088 * M_DTOR) * 0.3f;
player->unk_080 = -SIN_DEG(player->unk_088) * 0.3f;
player->unk_0F4 += 8.0f;
player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR);
player->unk_0F0 = SIN_DEG(player->unk_0F4);
}
void Katina_80197F10(Actor* actor) {
@@ -1740,7 +1740,7 @@ void Katina_801981F8(Actor* actor) {
actor_it->unk_0B6 = D_i4_8019F430[i];
if ((actor_it->unk_0B6 != 0) || (gBosses[1].state == 0)) {
actor_it->obj.status = OBJ_ACTIVE;
actor_it->obj.id = OBJ_ACTOR_197;
actor_it->obj.id = OBJ_ACTOR_ALLRANGE;
Matrix_RotateY(gCalcMatrix, actor->unk_04E * 18.0f * M_DTOR, 0);
Matrix_MultVec3fNoTranslate(gCalcMatrix, &src, &dest);
actor_it->obj.pos.x = dest.x;
@@ -1748,7 +1748,7 @@ void Katina_801981F8(Actor* actor) {
actor_it->obj.pos.z = dest.z;
actor_it->unk_0F4.y = actor->unk_04E * 18.0f;
actor_it->state = 1;
actor_it->aiType = i + 10;
actor_it->aiType = i + AI360_10;
actor_it->aiIndex = D_i4_8019F444[i];
actor_it->unk_0F4.x = 3.0f;
actor_it->health = 24;
@@ -1758,7 +1758,7 @@ void Katina_801981F8(Actor* actor) {
actor_it->iwork[11] = 1;
actor_it->unk_0C9 = 1;
if (D_i4_801A0540 < 9600) {
actor_it->unk_044 = 22;
actor_it->itemDrop = DROP_SILVER_RING_10p;
}
actor_it->timer_0C2 = 30;
Object_SetInfo(&actor_it->info, actor_it->obj.id);
@@ -1785,14 +1785,14 @@ void Katina_8019848C(void) {
actor->obj.pos.x = 0;
actor->obj.pos.y = 1000.0f;
actor->state = 1;
actor->aiType = 9;
actor->aiIndex = 27;
actor->aiType = AI360_BILL;
actor->aiIndex = AI360_10 + 17;
actor->unk_0B6 = 2;
actor->health = 1000;
actor->iwork[11] = 1;
actor->unk_0C9 = 1;
actor->timer_0C2 = 30;
actor->obj.id = OBJ_ACTOR_197;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
Object_SetInfo(&actor->info, actor->obj.id);
actor->info.unk_1C = 0.0f;
actor->info.bonus = 0;
@@ -1819,7 +1819,7 @@ void Katina_80198594(Actor* actor) {
D_360_8015F928 = 20000;
gBosses[1].swork[16] = 5760;
D_360_8015F920 = 1;
AUDIO_PLAY_BGM(SEQ_ID_29 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_KA_BOSS | SEQ_FLAG);
}
Katina_8019848C();
@@ -1831,11 +1831,11 @@ void Katina_80198594(Actor* actor) {
break;
case 6:
gActors[1].aiIndex = 0;
gActors[1].aiIndex = AI360_FOX;
gActors[1].state = 2;
gActors[2].aiIndex = 0;
gActors[2].aiIndex = AI360_FOX;
gActors[2].state = 2;
gActors[3].aiIndex = 0;
gActors[3].aiIndex = AI360_FOX;
gActors[3].state = 2;
break;
}
@@ -1961,13 +1961,13 @@ void Katina_80198AA0(Actor* actor) {
state = 1;
xDist = fabsf(actor->fwork[4] - actor->obj.pos.x);
yDist = fabsf(actor->fwork[6] - actor->obj.pos.z);
if (actor->aiIndex < 0) {
if (actor->aiIndex <= -1) {
actor->state = 3;
} else {
if (actor->aiType >= 10) {
xPos = __sinf(((actor->index * 45) + gGameFrameCount) * M_DTOR) * 200.0f;
yPos = __cosf(((actor->index * 45) + (gGameFrameCount * 2)) * M_DTOR) * 200.0f;
zPos = __sinf(((actor->index * 45) + gGameFrameCount) * M_DTOR) * 200.0f;
if (actor->aiType >= AI360_10) {
xPos = SIN_DEG((actor->index * 45) + gGameFrameCount) * 200.0f;
yPos = COS_DEG((actor->index * 45) + (gGameFrameCount * 2)) * 200.0f;
zPos = SIN_DEG((actor->index * 45) + gGameFrameCount) * 200.0f;
}
actor->fwork[4] = gActors[actor->aiIndex].obj.pos.x + xPos;
actor->fwork[5] = gActors[actor->aiIndex].obj.pos.y + yPos;
@@ -1977,7 +1977,7 @@ void Katina_80198AA0(Actor* actor) {
actor->fwork[1] = 30.0f;
}
actor->fwork[3] = 1.4f;
if (actor->aiIndex >= 0) {
if (actor->aiIndex > -1) {
if (yDist < 800.0f) {
if (xDist < 800.0f) {
actor->fwork[1] = gActors[actor->aiIndex].fwork[0] - 5.0f;
@@ -1998,7 +1998,7 @@ void Katina_80198AA0(Actor* actor) {
actor->iwork[4] = 0;
}
if ((actor->aiIndex > 0) &&
if ((actor->aiIndex >= AI360_FALCO) &&
((gActors[actor->aiIndex].obj.status == 3) || (gActors[actor->aiIndex].state == 6) ||
gActors[actor->aiIndex].obj.status == OBJ_FREE)) {
actor->state = 3;
@@ -2031,17 +2031,17 @@ void Katina_80198AA0(Actor* actor) {
actor->fwork[10] = 30.0f;
}
if ((actor->aiIndex > 0) && (gActors[actor->aiIndex].obj.status == OBJ_ACTIVE)) {
if ((actor->aiIndex >= AI360_FALCO) && (gActors[actor->aiIndex].obj.status == OBJ_ACTIVE)) {
actor->state = 2;
actor->iwork[2] = 0;
actor->iwork[2] = AI360_FOX;
}
break;
}
xSin = __sinf(actor->obj.rot.x * M_DTOR);
xCos = __cosf(actor->obj.rot.x * M_DTOR);
ySin = __sinf(actor->obj.rot.y * M_DTOR);
yCos = __cosf(actor->obj.rot.y * M_DTOR);
xSin = SIN_DEG(actor->obj.rot.x);
xCos = COS_DEG(actor->obj.rot.x);
ySin = SIN_DEG(actor->obj.rot.y);
yCos = COS_DEG(actor->obj.rot.y);
if (state != 0) {
xRand = actor->fwork[4] - actor->obj.pos.x;
@@ -2136,8 +2136,8 @@ void Katina_801995B4(Actor* actor) {
}
}
if ((actor->iwork[8] != 0) && (actor->aiType < 100)) {
angle = __sinf(actor->iwork[8] * 400.0f * M_DTOR) * actor->iwork[8];
if ((actor->iwork[8] != 0) && (actor->aiType < AI360_GREAT_FOX)) {
angle = SIN_DEG(actor->iwork[8] * 400.0f) * actor->iwork[8];
Matrix_RotateY(gGfxMatrix, M_DTOR * angle, 1);
Matrix_RotateX(gGfxMatrix, M_DTOR * angle, 1);
Matrix_RotateZ(gGfxMatrix, M_DTOR * angle, 1);
+56 -56
View File
@@ -30,7 +30,7 @@ void SectorZ_80199900(Actor* actor, s32 arg1) {
PRINTF("time0 %d\n");
PRINTF("Demo_Time=%d\n");
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
Object_Kill(&actor->obj, actor->sfxSource);
func_effect_8007A6F0(&actor->obj.pos, 0x2903A060);
@@ -138,7 +138,7 @@ void SectorZ_80199C60(Actor* missile) {
if (xDist) {}
if (zDist) {}
if (missile->aiType < 100) {
if (missile->aiType < AI360_GREAT_FOX) {
xDist = SIN_DEG((missile->index * 45) + gGameFrameCount) * 5000.0f;
zDist = COS_DEG((missile->index * 45) + (gGameFrameCount * 2)) * 5000.0f;
} else {
@@ -155,7 +155,7 @@ void SectorZ_80199C60(Actor* missile) {
(fabsf(missile->fwork[MISSILE_TARGET_Y] - missile->obj.pos.y) < 800.0f)) &&
(fabsf(missile->fwork[MISSILE_TARGET_Z] - missile->obj.pos.z) < 800.0f)) {
SectorZ_80199900(missile, 0);
D_ctx_80178480 = 25;
gCameraShake = 25;
gBosses[0].dmgType = DMG_UNK_100;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_5)) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_7;
@@ -181,8 +181,8 @@ void SectorZ_80199C60(Actor* missile) {
void SectorZ_80199FCC(Actor* actor, s32 arg1) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_197;
actor->aiType = 200;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->aiType = AI360_MISSILE;
actor->obj.pos.x = D_i4_8019F4C0[arg1].x;
actor->obj.pos.y = D_i4_8019F4C0[arg1].y;
@@ -205,8 +205,8 @@ void SectorZ_80199FCC(Actor* actor, s32 arg1) {
void SectorZ_8019A0F8(Actor* actor, s32 arg1) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_197;
actor->aiType = arg1 + 13;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->aiType = arg1 + AI360_10 + 3;
actor->obj.pos.x = gActors[10].obj.pos.x + D_i4_8019F4E4[arg1].x;
actor->obj.pos.y = gActors[10].obj.pos.y + D_i4_8019F4E4[arg1].y;
@@ -226,14 +226,14 @@ void SectorZ_8019A1D0(void) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = OBJ_ACTOR_197;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->obj.pos.x = 0.0f;
actor->obj.pos.y = 4500.0f;
actor->obj.pos.z = 30000.0f;
actor->aiType = 8;
actor->aiIndex = 12;
actor->aiType = AI360_KATT;
actor->aiIndex = AI360_10 + 2;
actor->health = 10000;
actor->unk_0F4.y = 180.0f;
actor->state = 0;
@@ -257,7 +257,7 @@ void SectorZ_8019A2F4(Actor* actor) {
actor->state = 3;
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_0;
Audio_PlayFanfare(SEQ_ID_54, 20, 10, 10);
Audio_PlayFanfare(SEQ_ID_KATT, 20, 10, 10);
func_360_8002EE34();
gPlayer[0].camEye.x = 250.0f;
@@ -278,57 +278,57 @@ void SectorZ_8019A3E8(Actor* actor) {
Actor* actorPtr;
if (D_360_8015F928 >= 0) {
if (gTeamShields[1] > 0) {
if (gActors[1].iwork[2] == 0) {
if (gActors[10].obj.status == 2) {
if (gActors[1].aiIndex != 10) {
if (gTeamShields[AI360_FALCO] > 0) {
if (gActors[AI360_FALCO].iwork[2] == AI360_FOX) {
if (gActors[AI360_10].obj.status == 2) {
if (gActors[1].aiIndex != AI360_10) {
Radio_PlayMessage(gMsg_ID_16040, RCID_FALCO);
}
gActors[1].aiIndex = 10;
gActors[AI360_FALCO].aiIndex = AI360_10;
} else {
gActors[1].aiIndex = 13;
gActors[AI360_FALCO].aiIndex = AI360_10 + 3;
}
} else {
gActors[1].aiIndex = -1;
gActors[AI360_FALCO].aiIndex = -1;
}
}
if (gTeamShields[3] > 0) {
if (gActors[3].iwork[2] == 0) {
if (gActors[12].obj.status == 2) {
if (gActors[3].aiIndex != 12) {
if (gTeamShields[AI360_PEPPY] > 0) {
if (gActors[AI360_PEPPY].iwork[2] == AI360_FOX) {
if (gActors[AI360_10 + 2].obj.status == 2) {
if (gActors[AI360_PEPPY].aiIndex != AI360_10 + 2) {
Radio_PlayMessage(gMsg_ID_16046, RCID_PEPPY);
}
gActors[3].aiIndex = 12;
gActors[AI360_PEPPY].aiIndex = AI360_10 + 2;
} else {
gActors[3].aiIndex = 15;
gActors[AI360_PEPPY].aiIndex = AI360_10 + 5;
}
} else {
gActors[3].aiIndex = -1;
gActors[AI360_PEPPY].aiIndex = -1;
}
}
if (D_i4_801A0564 != 0) {
if (gActors[11].obj.status == 2) {
if (gActors[8].aiIndex != 11) {
if (gActors[8].aiIndex != AI360_10 + 1) {
Radio_PlayMessage(gMsg_ID_16135, RCID_KATT);
}
gActors[8].aiIndex = 11;
gActors[AI360_KATT].aiIndex = AI360_10 + 1;
} else {
gActors[8].aiIndex = -1;
gActors[AI360_KATT].aiIndex = -1;
}
} else if (gTeamShields[2] > 0) {
if (gActors[2].iwork[2] == 0) {
} else if (gTeamShields[AI360_SLIPPY] > 0) {
if (gActors[AI360_SLIPPY].iwork[2] == AI360_FOX) {
if (gActors[11].obj.status == 2) {
if (gActors[2].aiIndex != 11) {
if (gActors[AI360_SLIPPY].aiIndex != AI360_10 + 1) {
Radio_PlayMessage(gMsg_ID_16047, RCID_SLIPPY);
}
gActors[2].aiIndex = 11;
gActors[AI360_SLIPPY].aiIndex = AI360_10 + 1;
} else {
gActors[2].aiIndex = 14;
gActors[AI360_SLIPPY].aiIndex = AI360_10 + 4;
}
} else {
gActors[2].aiIndex = -1;
gActors[AI360_SLIPPY].aiIndex = -1;
}
}
}
@@ -349,7 +349,7 @@ void SectorZ_8019A3E8(Actor* actor) {
if (actorPtr->obj.status == 0) {
Actor_Initialize(actorPtr);
actorPtr->obj.status = OBJ_ACTIVE;
actorPtr->obj.id = OBJ_ACTOR_197;
actorPtr->obj.id = OBJ_ACTOR_ALLRANGE;
Matrix_RotateY(gCalcMatrix, (actor->unk_04E * 18.0f) * M_DTOR, 0);
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp40, &sp34);
@@ -359,30 +359,30 @@ void SectorZ_8019A3E8(Actor* actor) {
actorPtr->unk_0F4.y = actor->unk_04E * 18.0f;
actorPtr->state = 3;
actorPtr->aiType = i + 13;
actorPtr->aiType = i + AI360_10 + 3;
actorPtr->aiIndex = -1;
if (D_360_8015F928 >= 0) {
if (((i + 13) == 23) || ((i + 13) == 24)) {
actorPtr->aiIndex = 2;
actorPtr->aiIndex = AI360_SLIPPY;
actorPtr->state = 2;
}
if ((i + 13) == 25) {
actorPtr->aiIndex = 0;
actorPtr->aiIndex = AI360_FOX;
actorPtr->state = 2;
}
if (((i + 13) == 26) || ((i + 13) == 27)) {
actorPtr->aiIndex = 3;
actorPtr->aiIndex = AI360_PEPPY;
actorPtr->state = 2;
}
if ((i + 13) == 28) {
actorPtr->aiIndex = 1;
actorPtr->aiIndex = AI360_FALCO;
actorPtr->state = 2;
}
}
actorPtr->health = 24;
actorPtr->iwork[11] = 1;
actorPtr->unk_044 = 2;
actorPtr->itemDrop = DROP_SILVER_RING_50p;
actorPtr->timer_0C2 = 30;
Object_SetInfo(&actorPtr->info, actorPtr->obj.id);
AUDIO_PLAY_SFX(0x31000011U, actorPtr->sfxSource, 4U);
@@ -442,7 +442,7 @@ void SectorZ_8019A3E8(Actor* actor) {
actor->timer_0BC = 10000;
D_ctx_80178340 = D_ctx_80178358 = 255;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
AUDIO_PLAY_BGM(SEQ_ID_31 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_SZ_BOSS | SEQ_FLAG);
break;
}
@@ -562,11 +562,11 @@ void SectorZ_8019AB8C(Actor* actor) {
break;
case 6:
gActors[1].aiIndex = 0;
gActors[1].aiIndex = AI360_FOX;
gActors[1].state = 2;
gActors[2].aiIndex = 0;
gActors[2].aiIndex = AI360_FOX;
gActors[2].state = 2;
gActors[3].aiIndex = 0;
gActors[3].aiIndex = AI360_FOX;
gActors[3].state = 2;
for (i = 10; i < ARRAY_COUNT(gActors); i++) {
@@ -754,10 +754,10 @@ void SectorZ_8019B888(void) {
if ((i <= 0) || (gTeamShields[i] > 0)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = OBJ_ACTOR_197;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
Object_SetInfo(&actor->info, actor->obj.id);
if (i == 0) {
actor->aiType = 1000;
actor->aiType = AI360_EVENT_HANDLER;
} else {
actor->obj.pos.x = gPlayer[0].pos.x + D_i4_8019F5EC[i].x;
actor->obj.pos.y = gPlayer[0].pos.y + D_i4_8019F5EC[i].y;
@@ -874,7 +874,7 @@ void SectorZ_8019BA64(Player* player) {
player->pos.y = actor->obj.pos.y - 480.0f;
player->pos.z = actor->obj.pos.z;
AUDIO_PLAY_BGM(SEQ_ID_51);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_51);
}
break;
@@ -927,12 +927,12 @@ void SectorZ_8019BA64(Player* player) {
SectorZ_8019B888();
}
if (gCsFrameCount == 0x334) {
if (gCsFrameCount == 820) {
Audio_KillSfxById(0x49000014U);
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_01C = player->unk_018 = player->unk_014 = 0.f;
AUDIO_PLAY_BGM(D_ctx_80177C90);
D_ctx_80177838 = 0x32;
AUDIO_PLAY_BGM(gBgmSeqId);
D_ctx_80177838 = 50;
}
break;
}
@@ -1203,7 +1203,7 @@ void SectorZ_8019C85C(Player* player) {
Math_SmoothStepToF(&boss0->fwork[3], 0.7f, 1.0f, 0.7f, 0.0f);
if ((gCsFrameCount == 100) && gGreatFoxIntact) {
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
}
if ((gCsFrameCount == 210) && gGreatFoxIntact) {
@@ -1216,7 +1216,7 @@ void SectorZ_8019C85C(Player* player) {
}
gCsCamAtX = boss0->obj.pos.x;
gCsCamAtY = boss0->obj.pos.y + (2.0f * D_ctx_8017847C);
gCsCamAtY = boss0->obj.pos.y + (2.0f * gCameraShakeY);
gCsCamAtZ = boss0->obj.pos.z;
if (player->timer_1F8 == 0) {
@@ -1486,7 +1486,7 @@ void SectorZ_8019C85C(Player* player) {
if (gGreatFoxIntact) {
D_ctx_80177930 = 1;
} else {
AUDIO_PLAY_BGM(SEQ_ID_49);
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
D_ctx_80177930 = 0;
}
break;
@@ -1796,7 +1796,7 @@ void SectorZ_8019EA68(void) {
D_ctx_80178310 = SEGMENTED_TO_VIRTUAL(D_enmy_800CFDA0[gCurrentLevel]);
Rand_SetSeed(1, 0x7148, 0x2694);
Rand_SetSeed(1, 29000, 9876);
for (obj58 = gObjects58, i = 0; i < 1000; i++) {
if (D_ctx_80178310[i].id < 0) {
@@ -1832,7 +1832,7 @@ void SectorZ_8019EA68(void) {
actor->unk_0F4.x = RAND_FLOAT_CENTERED(4.0f);
actor->unk_0F4.y = RAND_FLOAT_CENTERED(4.0f);
Object_SetInfo(&actor->info, actor->obj.id);
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
if (j++ >= 60) {
break;
+1
View File
@@ -1,5 +1,6 @@
#include "global.h"
#include "assets/ast_titania.h"
#include "prevent_bss_reordering.h"
void Ground_801B5244(s32 arg0, s32 arg1);
void Ground_801B5FE0(s32 arg0, s32 arg1, s32 arg2);
+23 -23
View File
@@ -500,10 +500,10 @@ void Macbeth_8019A2F4(Actor* actor) {
}
}
if (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7) {
if (var_fa1 < (gPlayer[0].unk_138 - actor->obj.pos.z - (D_i5_801BA1E4 * 0x588 - 0x588))) {
if (var_fa1 < (gPlayer[0].unk_138 - actor->obj.pos.z - (D_i5_801BA1E4 * 1416 - 1416))) {
Math_SmoothStepToF(&D_i5_801BA1DC, -6.0f, 0.1f, 0.2f, 0.01f);
}
if ((gPlayer[0].unk_138 - actor->obj.pos.z - (D_i5_801BA1E4 * 0x588 - 0x588)) < var_ft4) {
if ((gPlayer[0].unk_138 - actor->obj.pos.z - (D_i5_801BA1E4 * 1416 - 1416)) < var_ft4) {
Math_SmoothStepToF(&D_i5_801BA1DC, -30.0f, 0.1f, 0.2f, 0.01f);
}
if ((D_i5_801BA1E4 < 5) && (gPlayer[0].unk_138 - actor->obj.pos.z > 4000.0f)) {
@@ -849,7 +849,7 @@ void Macbeth_8019C778(Actor* actor) {
Macbeth_8019AF34(actor);
actor->health = 0;
actor->timer_0BC = 200;
D_ctx_80178480 = 30;
gCameraShake = 30;
actor->state++;
break;
case 5:
@@ -867,7 +867,7 @@ void Macbeth_8019C778(Actor* actor) {
func_effect_8007A568(actor->obj.pos.x + actor->fwork[25], actor->obj.pos.y, actor->obj.pos.z, 40.0f);
Macbeth_8019C6C4(actor);
actor->vel.z = 0.0f;
D_ctx_80178480 = 25;
gCameraShake = 25;
}
if (actor->timer_0BC == 100) {
Object_Kill(&actor->obj, actor->sfxSource);
@@ -1149,7 +1149,7 @@ void Macbeth_8019D910(Actor* actor, s32* arg1, s32* arg2, s32 arg3, f32 arg4, f3
AUDIO_PLAY_SFX(0x29034003, actor->sfxSource, 4);
actor->unk_0D0 = 0;
func_effect_8007C120(actor->obj.pos.x + arg4, actor->obj.pos.y + 200.0f, actor->obj.pos.z + arg5,
actor->vel.x, actor->vel.y, actor->vel.z, 0.15f, 0x14);
actor->vel.x, actor->vel.y, actor->vel.z, 0.15f, 20);
actor->iwork[arg3 + 6] = 20;
*arg2 -= actor->damage;
if ((*arg2 <= 0) ||
@@ -1423,7 +1423,7 @@ void Macbeth_8019EE68(Actor* actor) {
D_MA_801BE2F0[3] = actor->iwork[5];
}
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = D_ctx_80178340 = 255;
D_ctx_80178480 = 35;
gCameraShake = 35;
if ((gPlayer[0].unk_138 - actor->obj.pos.z > -200.0f) && (gPlayer[0].unk_138 - actor->obj.pos.z < 200.0f) &&
(gPlayer[0].pos.y - actor->obj.pos.y > -300.0f) && (gPlayer[0].pos.y - actor->obj.pos.y < 300.0f) &&
(gPlayer[0].pos.x - actor->obj.pos.x > -800.0f) && (gPlayer[0].pos.x - actor->obj.pos.x < 800.0f)) {
@@ -1437,7 +1437,7 @@ void Macbeth_8019EE68(Actor* actor) {
actor->state = 2;
break;
case 2:
if (D_ctx_80178480 == 20) {
if (gCameraShake == 20) {
D_MA_801BE2F0[1] = actor->iwork[5];
}
Macbeth_8019BBEC(actor);
@@ -1447,7 +1447,7 @@ void Macbeth_8019EE68(Actor* actor) {
Math_SmoothStepToF(&actor->vel.z, 0.0f, 0.02f, 10.0f, 0.01f);
Macbeth_801A015C(actor);
Macbeth_8019A87C(actor);
if (D_ctx_80178480 == 20) {
if (gCameraShake == 20) {
actor->unk_0D0 = 0;
actor->timer_0BC = 20;
Macbeth_8019BE50(actor);
@@ -3118,7 +3118,7 @@ s32 Macbeth_801A55D4(s32 arg0, Vec3f* arg1, Vec3f* arg2, s32 arg3) {
s32 i;
obj80 = &gObjects80[0];
for (i = 0; i < 50; i++, obj80++) {
for (i = 0; i < ARRAY_COUNT(gObjects80); i++, obj80++) {
if ((obj80->obj.status == OBJ_ACTIVE) && (obj80->obj.id != OBJ_80_68) &&
(fabsf(arg1->x - obj80->obj.pos.x) < 2000.0f) && (fabsf(arg1->z - obj80->obj.pos.z) < 2000.0f) &&
(func_enmy_80062DBC(arg1, obj80->info.hitbox, &obj80->obj, 0.0f, 0.0f, 0.0f) != 0)) {
@@ -3127,7 +3127,7 @@ s32 Macbeth_801A55D4(s32 arg0, Vec3f* arg1, Vec3f* arg2, s32 arg3) {
}
actor = &gActors[0];
for (i = 0; i < 60; i++, actor++) {
for (i = 0; i < ARRAY_COUNT(gActors); i++, actor++) {
if ((actor->obj.status >= OBJ_ACTIVE) && (fabsf(arg1->x - actor->obj.pos.x) < 1000.0f) &&
(fabsf(arg1->z - actor->obj.pos.z) < 1500.0f) && (arg0 != i) && (actor->info.unk_16 != 2) &&
(actor->timer_0C2 == 0) && (func_enmy_800631A8(arg1, actor->info.hitbox, &actor->obj.pos) != 0)) {
@@ -3185,7 +3185,7 @@ void Macbeth_801A57D0(Effect* effect) {
if (effect->obj.pos.y < gGroundLevel) {
Macbeth_801ADCEC(effect->obj.pos.x, effect->obj.pos.y, effect->obj.pos.z, 999.9f, -10.0f, 5.0f);
Object_Kill(&effect->obj, effect->sfxSource);
if (D_80161A88 != 2) {
if (D_ctx_80161A88 != 2) {
effect->obj.pos.y = gGroundLevel;
}
}
@@ -3791,7 +3791,7 @@ void Macbeth_801A7E7C(Actor* actor) {
Macbeth_8019A830(actor);
Macbeth_8019A728(actor);
if (actor->iwork[1] != 0) {
AUDIO_PLAY_BGM(SEQ_ID_32 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_MA_BOSS | SEQ_FLAG);
actor->state = 1;
}
Macbeth_801A6984(actor);
@@ -4988,7 +4988,7 @@ void Macbeth_801AC754(Player* player) {
}
break;
case 3:
AUDIO_PLAY_BGM(SEQ_ID_16 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_MACBETH | SEQ_FLAG);
D_ctx_80177838 = 50;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = player->timer_1F8 = player->timer_1FC = player->unk_240 = 0;
@@ -5416,7 +5416,7 @@ void Macbeth_801AE4CC(Actor* actor, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32
actor->obj.pos.y = yPos;
actor->obj.pos.z = zPos;
actor->vel.y = yVel;
actor->iwork[0] = 0xFF;
actor->iwork[0] = 255;
actor->fwork[1] = arg6;
actor->fwork[2] = 0.2f;
actor->timer_0BC = 0;
@@ -5732,7 +5732,7 @@ void Macbeth_801AF628(Actor* actor, s32 arg1) {
actor->unk_0B6 = 37;
actor->obj.rot.y = D_i5_801BA84C[arg1];
actor->iwork[4] = actor->iwork[5] = 192;
actor->iwork[0] = actor->iwork[1] = actor->iwork[2] = actor->iwork[7] = actor->iwork[3] = 0xFF;
actor->iwork[0] = actor->iwork[1] = actor->iwork[2] = actor->iwork[7] = actor->iwork[3] = 255;
actor->iwork[6] = 128;
Object_SetInfo(&actor->info, actor->obj.id);
}
@@ -5806,7 +5806,7 @@ void Macbeth_801AF8F4(Player* player) {
D_ctx_80177A48[4] = -60.0f;
D_ctx_80177A48[5] = 240.0f;
player->unk_0D4 = 3.0f;
D_ctx_8017847C = player->vel.x = player->vel.y = player->vel.z = player->unk_0D0 = 0.0f;
gCameraShakeY = player->vel.x = player->vel.y = player->vel.z = player->unk_0D0 = 0.0f;
if (player->shields <= 0) {
player->shields = 1;
}
@@ -5860,7 +5860,7 @@ void Macbeth_801AF8F4(Player* player) {
player->pos.y = -3.0f;
player->pos.z = player->unk_138 = -111130.0f;
player->unk_144 = D_ctx_80177D20 = 115930.0f;
player->unk_228 = 16;
player->flags_228 = 0x10;
D_enmy_80161680 = 330;
D_i5_801BA1DC = 0.0f;
gActors[D_i5_801BE314].obj.pos.x = -431.0f;
@@ -6042,7 +6042,7 @@ void Macbeth_801AF8F4(Player* player) {
D_i5_801BA1DC = 0.0f;
D_80137E84[0] = 1;
D_Timer_80177BD0[0] = 10;
D_ctx_80178480 = 10;
gCameraShake = 10;
D_ctx_80177A48[4] = -70.0f;
D_ctx_80177A48[5] = 280.0f;
}
@@ -6158,7 +6158,7 @@ void Macbeth_801AF8F4(Player* player) {
Macbeth_801AF70C(RAND_FLOAT_CENTERED(650.0f) + 11250.0f, 300.0f, RAND_FLOAT(650.0f) + -139000.0f,
0.7f);
}
D_ctx_80178480 = 30;
gCameraShake = 30;
}
if (gCsFrameCount == 860) {
func_effect_8007D9DC(gActors[D_i5_801BE314].obj.pos.x + 1000.0f,
@@ -6292,12 +6292,12 @@ void Macbeth_801AF8F4(Player* player) {
case 835:
case 845:
case 860:
D_ctx_80178480 = 20;
gCameraShake = 20;
D_ctx_80177A48[4] = -90.0f;
D_ctx_80177A48[5] = 360.0f;
break;
case 910:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 1040:
Radio_PlayMessage(gMsg_ID_20010, RCID_FOX);
@@ -6430,7 +6430,7 @@ void Macbeth_801AF8F4(Player* player) {
Math_SmoothStepToF(&player->camAt.z, gCsCamAtZ, D_ctx_80177A48[0], 20000.0f, 0);
player->camAt.y += zeroVar;
if (player->unk_1D0 >= 6) {
player->camEye.y += D_ctx_8017847C * 10.0f;
player->camEye.y += gCameraShakeY * 10.0f;
}
if (gCsFrameCount > 2500) {
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
@@ -6887,7 +6887,7 @@ void Macbeth_801B3D04(Player* player) {
D_ctx_80177830 = 0;
break;
case 50:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 100:
D_ctx_80177840 = 100;
+88 -88
View File
@@ -310,9 +310,9 @@ void Titania_801895B8(Actor* actor) {
if (actor->unk_0D0 > 0) {
if (Rand_ZeroOne() <= 0.25f) {
actor->unk_044 = 2;
actor->itemDrop = DROP_SILVER_RING_50p;
} else {
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
}
func_enmy_80066254(actor);
actor->info.bonus = 0;
@@ -364,7 +364,7 @@ void Titania_80189CC8(Actor* actor) {
if (actor->health <= 0) {
actor->health = 0;
AUDIO_PLAY_SFX(0x2903A008, actor->sfxSource, 4);
actor->timer_0CA[0] = actor->unk_044 = 0;
actor->timer_0CA[0] = actor->itemDrop = 0;
actor->info.unk_1C = 0.0f;
func_enmy_80066254(actor);
actor->info.bonus = 0;
@@ -510,19 +510,19 @@ void Titania_8018A544(Actor* actor) {
if ((Actor*) actor->iwork[0] != NULL) {
((Actor*) actor->iwork[0])->iwork[actor->iwork[1]] = 0;
}
func_effect_8007A900(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f, 0xFF, 8, 1);
func_effect_8007A900(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f, 255, 8, 1);
if (Rand_ZeroOne() < 0.3f) {
actor->unk_044 = 1;
actor->itemDrop = DROP_SILVER_RING;
} else {
Titania_8018A474(actor);
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
}
func_enmy_80066254(actor);
actor->info.bonus = 0;
}
Object_Kill(&actor->obj, actor->sfxSource);
} else {
func_effect_8007A900(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f, 0xFF, 8, 1);
func_effect_8007A900(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f, 255, 8, 1);
Object_Kill(&actor->obj, actor->sfxSource);
if ((Actor*) actor->iwork[0] != NULL) {
@@ -633,7 +633,7 @@ void Titania_8018AB44(Actor* actor) {
break;
case 2:
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
actor->info.bonus = 0;
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y + 10.0f, actor->obj.pos.z, 6.0f);
@@ -782,7 +782,7 @@ void Titania_8018B268(Actor* actor) {
if (actor->health > 0) {
actor->health -= actor->damage;
if (actor->health <= 0) {
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
actor->info.bonus = 0;
}
@@ -928,7 +928,7 @@ void Titania_8018B720(Actor* actor) {
Object_Kill(&actor->obj, actor->sfxSource);
}
void Titania_8018B96C(Actor* actor) {
void Titania_Actor231_Init(Actor* actor) {
f32 sp24;
Ground_801B6E20(actor->obj.pos.x, actor->obj.pos.z + D_ctx_80177D20, &sp24, &actor->obj.pos.y, &sp24);
@@ -996,7 +996,7 @@ void Titania_8018B9D0(Actor* actor) {
actor->fwork[1] = sp4C;
actor->fwork[2] = sp48;
if (actor->vel.y <= 0.0f) {
actor->unk_044 = 0;
actor->itemDrop = DROP_NONE;
func_enmy_80066254(actor);
func_effect_8007A6F0(&actor->obj.pos, 0x2903B009);
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 10.0f);
@@ -1315,7 +1315,7 @@ void Titania_8018C8A8(Actor* actor) {
if (actor->health <= 0) {
BonusText_Display(actor->obj.pos.x, actor->obj.pos.y, actor->fwork[27] + actor->obj.pos.z, 3);
gHitCount += 3;
actor->health = actor->unk_044 = 0;
actor->health = actor->itemDrop = 0;
func_enmy_80066254(actor);
actor->info.bonus = 0;
actor->timer_0BC = 20;
@@ -1369,11 +1369,11 @@ void Titania_8018C8A8(Actor* actor) {
x = actor->obj.pos.x + actor->fwork[6];
y = actor->obj.pos.y + actor->fwork[7] + actor->fwork[26];
z = actor->obj.pos.z + actor->fwork[8];
func_effect_8007A900(x, y, z, 20.0f, 0xFF, 8, 0);
func_effect_8007A900(x, y, z, 20.0f, 255, 8, 0);
x = actor->obj.pos.x + actor->fwork[3];
y = actor->obj.pos.y + actor->fwork[4] + actor->fwork[26];
z = actor->obj.pos.z + actor->fwork[5];
func_effect_8007A900(x, y, z, 20.0f, 0xFF, 8, 0);
func_effect_8007A900(x, y, z, 20.0f, 255, 8, 0);
sp88 = fabsf(sp88);
if (sp88 < 5000.0f) {
actor->iwork[4] = (s32) (sp88 / 200.0f);
@@ -1457,7 +1457,7 @@ void Titania_8018C8A8(Actor* actor) {
Math_SmoothStepToAngle(&actor->obj.rot.z, sp98 * M_RTOD, 0.1f, 1.0f, 0.01f);
if (actor->timer_0BC == 0) {
if (((actor->unk_0B6 == 0x28) || (actor->unk_0B6 == 0x50)) && (actor->timer_0BC == 0)) {
if (((actor->unk_0B6 == 40) || (actor->unk_0B6 == 80)) && (actor->timer_0BC == 0)) {
AUDIO_PLAY_SFX(0x2902201F, actor->sfxSource, 4);
}
Math_SmoothStepToF(&actor->fwork[15], 1.0f, 0.7f, 0.1f, 0.01f);
@@ -1537,23 +1537,23 @@ void Titania_8018C8A8(Actor* actor) {
Animation_DrawSkeleton(0, D_TI1_7006990, actor->vwork, Titania_8018C118, Titania_8018C3D8, actor,
&gIdentityMatrix);
actor->vwork[0].y = temp_fs0;
if (actor->unk_0B6 == 0x15) {
if (actor->unk_0B6 == 21) {
Matrix_RotateY(gCalcMatrix, actor->obj.rot.y * M_DTOR, 0);
Matrix_RotateX(gCalcMatrix, actor->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gCalcMatrix, actor->obj.rot.z * M_DTOR, 1);
Matrix_MultVec3f(gCalcMatrix, (Vec3f*) &actor->fwork[12], &sp158);
func_effect_8007A900(actor->obj.pos.x + sp158.x, actor->obj.pos.y + sp158.y, actor->obj.pos.z + sp158.z,
20.0f, 0xFF, 8, 0);
20.0f, 255, 8, 0);
Matrix_MultVec3f(gCalcMatrix, (Vec3f*) &actor->fwork[9], &sp158);
func_effect_8007A900(actor->obj.pos.x + sp158.x, actor->obj.pos.y + sp158.y, actor->obj.pos.z + sp158.z,
20.0f, 0xFF, 8, 0);
20.0f, 255, 8, 0);
Matrix_MultVec3f(gCalcMatrix, (Vec3f*) &actor->fwork[3], &sp158);
func_effect_8007A900(actor->obj.pos.x + sp158.x, actor->obj.pos.y + sp158.y, actor->obj.pos.z + sp158.z,
20.0f, 0xFF, 8, 0);
20.0f, 255, 8, 0);
Matrix_MultVec3f(gCalcMatrix, (Vec3f*) &actor->fwork[6], &sp158);
func_effect_8007A900(actor->obj.pos.x + sp158.x, actor->obj.pos.y + sp158.y, actor->obj.pos.z + sp158.z,
20.0f, 0xFF, 8, 0);
20.0f, 255, 8, 0);
AUDIO_PLAY_SFX(0x19030003, actor->sfxSource, 4);
}
@@ -1594,7 +1594,7 @@ void Titania_8018C8A8(Actor* actor) {
D_i5_801BD738[actor->iwork[0]][i].unk_18 |= 1;
}
AUDIO_PLAY_SFX(0x2940C00A, actor->sfxSource, 4);
D_ctx_80178480 = 20;
gCameraShake = 20;
D_Timer_80177BD0[0] = 16;
Matrix_RotateY(gCalcMatrix, actor->obj.rot.y * M_DTOR, 0);
Matrix_RotateX(gCalcMatrix, actor->obj.rot.x * M_DTOR, 1);
@@ -1603,9 +1603,9 @@ void Titania_8018C8A8(Actor* actor) {
15.0f);
var_s1 = D_i5_801BD738[actor->iwork[0]];
for (i = 0; i < 9U; i++, var_s1++) {
actorPtr = func_game_800A3608(0xBD);
actorPtr = func_game_800A3608(OBJ_ACTOR_189);
if ((actorPtr != NULL) && ((s16(*)[2]) D_i5_801B7630)[i][1] == 1) {
actorPtr->state = 0x2F;
actorPtr->state = 47;
actorPtr->unk_048 = i;
Matrix_MultVec3f(gCalcMatrix, &var_s1->unk_00.pos, &sp158);
actorPtr->obj.pos.x = actor->obj.pos.x + sp158.x;
@@ -1639,9 +1639,9 @@ void Titania_8018C8A8(Actor* actor) {
}
if (i == 8) {
actorPtr = func_game_800A3608(0xBD);
actorPtr = func_game_800A3608(OBJ_ACTOR_189);
if (actorPtr != NULL) {
actorPtr->state = 0x2F;
actorPtr->state = 47;
actorPtr->unk_048 = 9;
Matrix_MultVec3f(gCalcMatrix, &var_s1->unk_00.pos, &sp158);
actorPtr->obj.pos.x = actor->obj.pos.x + sp158.x;
@@ -1668,7 +1668,7 @@ void Titania_8018C8A8(Actor* actor) {
case 4:
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = D_ctx_80178340 = 255;
D_ctx_80178358 = 0;
D_ctx_8017835C = 0x40;
D_ctx_8017835C = 64;
break;
case 5:
@@ -1835,7 +1835,7 @@ void Titania_8018E5F8(Actor* actor) {
}
if (actor->timer_0BE == 0) {
func_effect_8007D0E0(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 10.0f);
actor->timer_0BE = 0xA;
actor->timer_0BE = 10;
}
Ground_801B6E20(actor->obj.pos.x, actor->obj.pos.z + D_ctx_80177D20, &sp80, &sp7C, &sp80);
if (actor->obj.pos.y < (94.0f + sp7C)) {
@@ -1879,13 +1879,13 @@ void Titania_8018E5F8(Actor* actor) {
actor->fwork[5] = sp84.z;
if (actor->unk_0D0 > 0) {
actor->unk_0D0 = 0;
actor->timer_0C6 = 0xA;
actor->timer_0C6 = 10;
if (actor->health > 0) {
actor->health -= actor->damage;
if (actor->health <= 0) {
BonusText_Display(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z + actor->fwork[27], 2);
gHitCount += 2;
actor->timer_0CA[0] = actor->health = actor->unk_044 = 0;
actor->timer_0CA[0] = actor->health = actor->itemDrop = 0;
actor->info.unk_1C = 0.0f;
func_enmy_80066254(actor);
actor->info.bonus = 0;
@@ -1924,28 +1924,28 @@ void Titania_8018E5F8(Actor* actor) {
if (actor->iwork[2] == 0) {
index = actor->iwork[3] - 1;
gTexturedLines[index].mode = 0x65;
gTexturedLines[index].mode = 101;
gTexturedLines[index].unk_04.x = actor->obj.pos.x + actor->fwork[0];
gTexturedLines[index].unk_04.y = actor->obj.pos.y + actor->fwork[1];
gTexturedLines[index].unk_04.z = actor->obj.pos.z + actor->fwork[2];
gTexturedLines[index].unk_2C = 0xFF;
gTexturedLines[index].unk_2D = 0xFF;
gTexturedLines[index].unk_2C = 255;
gTexturedLines[index].unk_2D = 255;
gTexturedLines[index].unk_2E = 0;
gTexturedLines[index].unk_2F = 0xFF;
gTexturedLines[index].unk_2F = 255;
gTexturedLines[index].unk_10.x = sp5C;
gTexturedLines[index].unk_10.y = sp70;
gTexturedLines[index].unk_10.z = sp54;
gTexturedLines[index].unk_28 = 3.0f;
if (actor->timer_0C0 == 0) {
gTexturedLines[index].unk_2C = 0xFF;
gTexturedLines[index].unk_2D = 0xFF;
gTexturedLines[index].unk_2E = 0x40;
gTexturedLines[index].unk_2C = 255;
gTexturedLines[index].unk_2D = 255;
gTexturedLines[index].unk_2E = 64;
} else {
gTexturedLines[index].unk_2C = 0xFF;
gTexturedLines[index].unk_2D = 0x64;
gTexturedLines[index].unk_2C = 255;
gTexturedLines[index].unk_2D = 100;
gTexturedLines[index].unk_2E = 0;
}
if (i < 0xBB9) {
if (i <= 3000) {
if (actor->timer_0C0 == 0) {
func_effect_8007D1E0(sp5C, sp70 + 5.0f, sp54, 2.0f);
}
@@ -2045,7 +2045,7 @@ void Titania_8018F134(Object_80* obj80) {
for (*j = -80.0f; *j <= 80.0f; *j += 40.0f) {
Matrix_MultVec3fNoTranslate(gCalcMatrix, &D_i5_801B7690, &sp70);
func_effect_8007A900(obj80->obj.pos.x + sp70.x, obj80->obj.pos.y + sp70.y,
obj80->obj.pos.z + sp70.z, 10.0f, 0xFF, 15, 0);
obj80->obj.pos.z + sp70.z, 10.0f, 255, 15, 0);
}
} else {
sp7C.z = 0.0f;
@@ -2060,7 +2060,7 @@ void Titania_8018F134(Object_80* obj80) {
sp7C.y = i;
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp7C, &sp70);
func_effect_8007A900(obj80->obj.pos.x + sp70.x, obj80->obj.pos.y + sp70.y,
obj80->obj.pos.z + sp70.z, 10.0f, 0xFF, 15, 0);
obj80->obj.pos.z + sp70.z, 10.0f, 255, 15, 0);
}
}
break;
@@ -2072,7 +2072,7 @@ void Titania_8018F134(Object_80* obj80) {
sp7C.y = i;
Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp7C, &sp70);
func_effect_8007A900(obj80->obj.pos.x + sp70.x, obj80->obj.pos.y + sp70.y, obj80->obj.pos.z + sp70.z,
10.0f, 0xFF, 15, 0);
10.0f, 255, 15, 0);
}
break;
}
@@ -2103,7 +2103,7 @@ void Titania_8018F4D8(Object_80* obj80) {
obj80->obj.rot.x = 90.0f;
obj80->state++;
D_Timer_80177BD0[0] = 7;
D_ctx_80178480 = 12;
gCameraShake = 12;
Titania_8018F134(obj80);
AUDIO_PLAY_SFX(0x19130003, obj80->sfxSource, 4);
}
@@ -2113,7 +2113,7 @@ void Titania_8018F4D8(Object_80* obj80) {
if (obj80->obj.rot.z >= 90.0f) {
obj80->obj.rot.z = 90.0f;
D_Timer_80177BD0[0] = 7;
D_ctx_80178480 = 12;
gCameraShake = 12;
Titania_8018F134(obj80);
AUDIO_PLAY_SFX(0x19130003, obj80->sfxSource, 4);
obj80->state++;
@@ -2124,7 +2124,7 @@ void Titania_8018F4D8(Object_80* obj80) {
if (obj80->obj.rot.z <= -90.0f) {
obj80->obj.rot.z = -90.0f;
D_Timer_80177BD0[0] = 7;
D_ctx_80178480 = 12;
gCameraShake = 12;
Titania_8018F134(obj80);
AUDIO_PLAY_SFX(0x19130003, obj80->sfxSource, 4);
obj80->state++;
@@ -2179,7 +2179,7 @@ void Titania_8018F8B8(Object_80* obj80) {
}
}
void Titania_8018FA48(Boss* boss) {
void Titania_Boss306_Init(Boss* boss) {
s32 pad[2];
f32* sp1C;
s32 i;
@@ -2663,24 +2663,24 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
rot->y += boss->fwork[0x31];
}
for (i = 0; i < 0x43; i++) {
for (i = 0; i < ARRAY_COUNT(D_i5_801B7770); i++) {
if (limbIndex == D_i5_801B7770[i][0]) {
if (D_i5_801BBF00[i].unk_26 & 4) {
*dList = NULL;
} else {
switch (limbIndex) {
case 0x7:
case 0x8:
case 0x9:
case 7:
case 8:
case 9:
rot->z += D_i5_801BBEF4[8];
break;
case 0x16:
case 0x17:
case 0x18:
case 22:
case 23:
case 24:
rot->z += D_i5_801BBEF4[6];
break;
case 0x19:
case 0x1A:
case 25:
case 26:
if (D_i5_801BBEF4[2] != 0.0f) {
rot->z += D_i5_801BBEF4[2];
if (D_i5_801BBEF4[3] != 0.0f) {
@@ -2689,23 +2689,23 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
}
}
break;
case 0x59:
case 89:
rot->x += D_i5_801BBEF4[13];
break;
}
sp88 = 0;
switch (limbIndex) {
case 0x37:
case 55:
if (boss->fwork[0x28] != 0.0f) {
sp88 = 1;
}
break;
case 0x3D:
case 61:
if (boss->fwork[39] != 0.0f) {
sp88 = 2;
}
break;
case 0x47:
case 71:
if (boss->fwork[38] != 0.0f) {
sp88 = 3;
}
@@ -2762,7 +2762,7 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
Matrix_GetYRPAngles(gCalcMatrix, &sp8C);
Matrix_MultVec3f(gCalcMatrix, &D_tank_800C9F2C, &sp7C);
if ((limbIndex == 0x47) && (boss->fwork[0x2E] != 0.0f)) {
if ((limbIndex == 71) && (boss->fwork[0x2E] != 0.0f)) {
sp70.x = (gPlayer[0].pos.x - (boss->obj.pos.x + sp7C.x)) * boss->fwork[0x2E];
sp70.y = (gPlayer[0].pos.y + 50.0f) - (boss->obj.pos.y + sp7C.y);
sp70.z = (gPlayer[0].unk_138 - (boss->obj.pos.z + sp7C.z)) * boss->fwork[0x2E];
@@ -2784,7 +2784,7 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
Matrix_RotateX(gCalcMatrix, -(spCC.x * M_DTOR), 1);
Matrix_RotateY(gCalcMatrix, -(spCC.y * M_DTOR), 1);
switch (limbIndex) {
case 0x37:
case 55:
if (D_i5_801BBEF0[15] == 1) {
D_i5_801BBEF4[20] = 0.0f;
D_i5_801BBEF4[21] = sp5C.y - 90.0f;
@@ -2800,7 +2800,7 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
Math_SmoothStepToAngle(&sp8C.y, D_i5_801BBEF4[21], boss->fwork[0x28], 360.0f, 0.01f);
Math_SmoothStepToAngle(&sp8C.z, D_i5_801BBEF4[22], boss->fwork[0x28], 360.0f, 0.01f);
break;
case 0x3D:
case 61:
if (D_i5_801BBEF0[14] == 1) {
D_i5_801BBEF4[17] = 0.0f;
D_i5_801BBEF4[18] = sp5C.y - 90.0f;
@@ -2814,7 +2814,7 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
Math_SmoothStepToAngle(&sp8C.y, D_i5_801BBEF4[18], boss->fwork[39], 360.0f, 0.01f);
Math_SmoothStepToAngle(&sp8C.z, D_i5_801BBEF4[19], boss->fwork[39], 360.0f, 0.01f);
break;
case 0x47:
case 71:
if (D_i5_801BBEF0[13] == 1) {
D_i5_801BBEF4[14] = 0.0f;
D_i5_801BBEF4[15] = sp5C.y + 90.0f;
@@ -2851,7 +2851,7 @@ bool Titania_80190A08(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void*
Matrix_RotateX(gCalcMatrix, rot->x * M_DTOR, 1);
}
sp6C = 0;
if ((limbIndex == 0x33) || (limbIndex == 0x42)) {
if ((limbIndex == 51) || (limbIndex == 66)) {
if (D_i5_801BBEF0[1] != 0) {
sp68 = 1.1f - (fabsf(__sinf(((f32) D_i5_801BBEF0[0] / D_i5_801BBEF0[1]) * 360.0f * M_DTOR))) *
D_i5_801BBEF4[0];
@@ -2965,7 +2965,7 @@ void Titania_80191AE8(s32 limbIndex, Vec3f* rot, void* data) {
cond = !(cond || (i >= 20 && i < 23 && boss->state == 10));
for (j = 0; j < temp_s4; j++) {
if (cond && (D_i5_801BBEF0[8] == 0 || i != 0x17 || j != 2)) {
if (cond && (D_i5_801BBEF0[8] == 0 || i != 23 || j != 2)) {
var_s1 = D_i5_801B7A70[temp_s6 + j];
spB4.x = var_s1[0];
spB4.y = var_s1[1];
@@ -2995,23 +2995,23 @@ void Titania_80191AE8(s32 limbIndex, Vec3f* rot, void* data) {
var_s0_2 += temp_s4 * 6;
}
switch (limbIndex) {
case 0x3:
case 3:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D30, (Vec3f*) &boss->fwork[17]);
break;
case 0xA:
case 10:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D00, (Vec3f*) &D_i5_801BBEF4[68]);
break;
case 0x10:
case 16:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D00, (Vec3f*) &D_i5_801BBEF4[71]);
break;
case 0x47:
case 71:
Matrix_GetYRPAngles(gCalcMatrix, (Vec3f*) &boss->fwork[20]);
break;
case 0x3D:
case 61:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D3C, (Vec3f*) &boss->fwork[0x17]);
Matrix_GetYRPAngles(gCalcMatrix, (Vec3f*) &boss->fwork[0x1A]);
break;
case 0x37:
case 55:
if (D_i5_801BBEF0[8] == 0) {
Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 180.0f, 36.0f, 0.0f, 1);
@@ -3038,10 +3038,10 @@ void Titania_80191AE8(s32 limbIndex, Vec3f* rot, void* data) {
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D3C, (Vec3f*) &boss->fwork[29]);
Matrix_GetYRPAngles(gCalcMatrix, (Vec3f*) &boss->fwork[32]);
break;
case 0x22:
case 34:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D24, (Vec3f*) &boss->fwork[5]);
break;
case 0x25:
case 37:
Matrix_MultVec3f(gCalcMatrix, &D_i5_801B8D24, (Vec3f*) &boss->fwork[8]);
break;
default:
@@ -3189,7 +3189,7 @@ void Titania_80192118(Boss* boss) {
D_i5_801BBEF0[38] = 2;
gPlayer[0].unk_19C = 0;
boss->swork[1] = 3;
AUDIO_PLAY_BGM(SEQ_ID_20 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_TI_BOSS | SEQ_FLAG);
}
break;
case 3:
@@ -3200,7 +3200,7 @@ void Titania_80192118(Boss* boss) {
sp54.z = (boss->obj.pos.z + D_i5_801BBEF4[41]) + D_i5_801BBEF4[70];
func_effect_8007A6F0(&sp54, 0x29403031);
boss->swork[39] = 5;
D_ctx_80178480 = 5;
gCameraShake = 5;
}
if (D_i5_801BBEF0[23] == 37) {
sp54.x = (boss->obj.pos.x + D_i5_801BBEF4[42]) + D_i5_801BBEF4[71];
@@ -3208,7 +3208,7 @@ void Titania_80192118(Boss* boss) {
sp54.z = (boss->obj.pos.z + D_i5_801BBEF4[44]) + D_i5_801BBEF4[73];
func_effect_8007A6F0(&sp54, 0x29403031);
boss->swork[39] = 5;
D_ctx_80178480 = 5;
gCameraShake = 5;
}
if (boss->dmgType == DMG_BEAM) {
switch (D_i5_801B8C0C[boss->dmgPart]) {
@@ -3443,7 +3443,7 @@ void Titania_80192118(Boss* boss) {
D_i5_801BBEF4[58] = temp_ft4;
}
if (!(boss->swork[38] & 3)) {
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 0xC0, 0x10, 0);
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 192, 16, 0);
}
}
if ((boss->state != 4) || (boss->swork[31] < 90)) {
@@ -3474,7 +3474,7 @@ void Titania_80192118(Boss* boss) {
D_i5_801BBEF4[60] = temp_ft4;
}
if (!(boss->swork[38] & 3)) {
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 0xC0, 0x10, 0);
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 192, 16, 0);
}
}
if ((boss->state != 4) || (boss->swork[31] < 102)) {
@@ -3505,7 +3505,7 @@ void Titania_80192118(Boss* boss) {
D_i5_801BBEF4[62] = temp_ft4;
}
if (!(boss->swork[38] & 3)) {
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 0xC0, 0x10, 0);
func_effect_8007A900(temp_ft2, boss->obj.pos.y, temp_ft4, 10.0f, 192, 16, 0);
}
}
}
@@ -3669,7 +3669,7 @@ void Titania_80193DF0(Boss* boss) {
D_i5_801BBEF0[44] = 0;
D_i5_801BBEF0[8] = -1;
D_i5_801BBEF0[41] = 1;
actor = func_game_800A3608(OBJ_ACTOR_198);
actor = func_game_800A3608(OBJ_ACTOR_TEAM_BOSS);
if (actor != NULL) {
Matrix_MultVec3f(gCalcMatrix, &D_i5_801BBF00[i].unk_00.pos, &spC8);
actor->obj.pos.x = boss->obj.pos.x + spC8.x;
@@ -3869,7 +3869,7 @@ void Titania_80193DF0(Boss* boss) {
if (boss->swork[21] <= 0) {
D_ctx_8017796C = -1;
boss->swork[21] = 0;
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
} else {
AUDIO_PLAY_SFX(0x2940802C, boss->sfxSource, 4);
@@ -3936,7 +3936,7 @@ void Titania_80193DF0(Boss* boss) {
boss->swork[21] -= boss->damage;
if (boss->swork[21] <= 0) {
boss->swork[21] = 0;
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
D_ctx_8017796C = -1;
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
} else {
@@ -4319,7 +4319,7 @@ void Titania_80193DF0(Boss* boss) {
if (boss->unk_04C == 38) {
func_effect_8007A6F0(&spD4, 0x29403031);
boss->swork[39] = 5;
D_ctx_80178480 = 20;
gCameraShake = 20;
}
}
if ((boss->unk_04C >= 97) && (boss->unk_04C < 101) && (boss->swork[12] > 0)) {
@@ -4332,7 +4332,7 @@ void Titania_80193DF0(Boss* boss) {
if (boss->unk_04C == 98) {
func_effect_8007A6F0(&spD4, 0x29403031);
boss->swork[39] = 5;
D_ctx_80178480 = 20;
gCameraShake = 20;
}
}
Math_SmoothStepToF(&boss->fwork[0], 0.5f, 1.0f, 0.02f, 0.0f);
@@ -4696,7 +4696,7 @@ void Titania_80193DF0(Boss* boss) {
if ((boss->state == 6) && ((boss->unk_04C == 134) || (boss->unk_04C == 188))) {
AUDIO_PLAY_SFX(0x29406029, boss->sfxSource, 4);
boss->swork[39] = 4;
D_ctx_80178480 = 7;
gCameraShake = 7;
}
if (boss->state >= 7) {
if (((boss->fwork[15] > 0.0f) && (boss->fwork[9] <= 0.0f)) ||
@@ -4704,10 +4704,10 @@ void Titania_80193DF0(Boss* boss) {
AUDIO_PLAY_SFX(0x29406029, boss->sfxSource, 4);
if (boss->state == 12) {
boss->swork[39] = 4;
D_ctx_80178480 = 20;
gCameraShake = 20;
} else {
boss->swork[39] = 2;
D_ctx_80178480 = 5;
gCameraShake = 5;
}
}
boss->fwork[12] = boss->fwork[6];
@@ -5039,7 +5039,7 @@ void Titania_801982A8(Boss* boss) {
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, (s32) (temp_fv0 * 255.0f),
(s32) ((temp_fv0 * 128.0f) + 127.0f), (s32) ((temp_fv0 * 60.0f) + 195.0f),
(s32) ((temp_fv0 * 155.0f) + 100.0f));
for (j = 0; j < 0x168; j += 0x2D) {
for (j = 0; j < 360; j += 45) {
Matrix_Push(&gGfxMatrix);
Matrix_RotateZ(gGfxMatrix, (j + boss->fwork[43] * 360.0f) * M_DTOR, 1);
Matrix_Translate(gGfxMatrix, temp_fs2, 0.0f, 0.0f, 1);
+4 -4
View File
@@ -218,8 +218,8 @@ void Titania_8018769C(Player* player) {
Math_SmoothStepToF(&player->unk_0F0, SIN_DEG(gGameFrameCount * 5.0f) * 10.0f, 0.1f, 100.0f, 0.0f);
if (gCsFrameCount == 0x244) {
D_ctx_80177838 = 0x32;
if (gCsFrameCount == 580) {
D_ctx_80177838 = 50;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = player->timer_1F8 = player->timer_1FC = player->unk_240 = 0;
player->unk_0D4 = 3.0f;
@@ -320,7 +320,7 @@ void Titania_801882CC(Player* player) {
Math_SmoothStepToF(&player->unk_0D0, 4.9f, 0.1f, 1.0f, 0.0f);
Math_SmoothStepToF(&player->unk_08C, 0.0f, 0.1f, 1.0f, 0.0f);
if (gCsFrameCount < 0x460) {
if (gCsFrameCount < 1120) {
Math_SmoothStepToF(&D_ctx_80177A48[1], 0.65f, 0.1f, 0.01f, 0.0f);
} else {
Math_SmoothStepToF(&D_ctx_80177A48[1], 0.0f, 0.1f, 0.02f, 0.0f);
@@ -422,7 +422,7 @@ void Titania_801882CC(Player* player) {
break;
case 50:
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
break;
case 80:
+35 -35
View File
@@ -55,7 +55,7 @@ void Andross_80187530(Actor* actor) {
actor->obj.rot.z = D_Andross_801A7F68;
}
s32 Andross_8018767C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Andross_8018767C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex == 13) {
*dList = NULL;
}
@@ -123,7 +123,7 @@ void Andross_801878A8() {
break;
}
if ((D_ctx_80178310[i].id <= OBJ_ACTOR_291) && (D_ctx_80178310[i].id >= OBJ_ACTOR_176)) {
if ((D_ctx_80178310[i].id <= OBJ_ACTOR_SUPPLIES) && (D_ctx_80178310[i].id >= OBJ_ACTOR_176)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = D_ctx_80178310[i].id;
@@ -189,7 +189,7 @@ void Andross_80187C5C(void) {
obj58->obj.pos.y = D_ctx_80178310[i].yPos;
obj58->obj.rot.y = D_ctx_80178310[i].rot.y;
if (obj58->obj.id == OBJ_80_147) {
obj58->unk40[0] = D_ctx_80178310[i].rot.z;
obj58->unk_40 = D_ctx_80178310[i].rot.z;
}
Object_SetInfo(&obj58->info, obj58->obj.id);
if (obj58->obj.id == OBJ_80_131) {
@@ -204,7 +204,7 @@ void Andross_80187C5C(void) {
break;
}
if ((D_ctx_80178310[i].id <= OBJ_ACTOR_291) && (D_ctx_80178310[i].id >= OBJ_ACTOR_176)) {
if ((D_ctx_80178310[i].id <= OBJ_ACTOR_SUPPLIES) && (D_ctx_80178310[i].id >= OBJ_ACTOR_176)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_ACTIVE;
actor->obj.id = D_ctx_80178310[i].id;
@@ -249,7 +249,7 @@ void Andross_801880E4(Actor* actor) {
f32 temp_fv1;
for (obj58 = gObjects58, i = 0; i < 200; i++, obj58++) {
if ((obj58->obj.id == OBJ_80_147) && ((u8) actor->unk_04E == (u8) obj58->unk40[0])) {
if ((obj58->obj.id == OBJ_80_147) && (obj58->unk_40 == (u8) actor->unk_04E)) {
actor->fwork[3] = obj58->obj.pos.x;
actor->fwork[4] = obj58->obj.pos.y;
actor->fwork[5] = obj58->obj.pos.z;
@@ -422,7 +422,7 @@ void Andross_80188A4C(Boss* boss) {
AUDIO_PLAY_SFX(0x2943500FU, boss->sfxSource, 4);
boss->health -= boss->damage;
if ((boss->health != 0) && (boss->health <= 0)) {
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
AUDIO_PLAY_SFX(0x2940D09AU, boss->sfxSource, 4);
func_boss_80042EC0(boss);
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_0;
@@ -514,7 +514,7 @@ void Andross_80188CB8(Boss* boss) {
boss->fwork[19] = -26.0f;
for (i = 10; i < 12; i++) {
if ((gActors[i].obj.status == OBJ_ACTIVE) && (gActors[i].obj.id == OBJ_ACTOR_197)) {
if ((gActors[i].obj.status == OBJ_ACTIVE) && (gActors[i].obj.id == OBJ_ACTOR_ALLRANGE)) {
gTexturedLines[i].mode = 50;
gTexturedLines[i].unk_28 = 1.0f;
gTexturedLines[i].unk_04.x = boss->obj.pos.x;
@@ -534,9 +534,9 @@ void Andross_80189098(Boss* boss) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_197;
actor->aiType = 10;
actor->aiIndex = 0;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->aiType = AI360_10;
actor->aiIndex = AI360_FOX;
actor->health = 200;
actor->obj.pos.x = 200.0f;
actor->obj.pos.y = 0.0f;
@@ -548,9 +548,9 @@ void Andross_80189098(Boss* boss) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = OBJ_ACTOR_197;
actor->aiType = 10;
actor->aiIndex = 0;
actor->obj.id = OBJ_ACTOR_ALLRANGE;
actor->aiType = AI360_10;
actor->aiIndex = AI360_FOX;
actor->health = 200;
actor->obj.pos.x = -200.0f;
actor->obj.pos.y = 0.0f;
@@ -966,13 +966,13 @@ void Andross_80189B70(Boss* boss) {
case 21:
Andross_801876FC();
gCsFrameCount++;
D_ctx_80178480 = 10;
gCameraShake = 10;
if (gCsFrameCount < 200) {
D_ctx_80178380[0] += 4;
if (D_ctx_80178380[0] >= 0xFF) {
D_ctx_80178380[0] = 0xFF;
if (D_ctx_80178380[0] >= 255) {
D_ctx_80178380[0] = 255;
}
D_ctx_80178390[0] = D_ctx_801783A0[0] = D_ctx_801783B0[0] = 0xFF;
D_ctx_80178390[0] = D_ctx_801783A0[0] = D_ctx_801783B0[0] = 255;
Math_SmoothStepToF(&D_display_800CA230, 0.15f, 0.2f, 0.004f, 0.0f);
Math_SmoothStepToF(&D_ctx_801779A8[gMainController], 70.0f, 1.0f, 4.0f, 0.0f);
}
@@ -1106,7 +1106,7 @@ void Andross_80189B70(Boss* boss) {
boss->vel.z = sp64.z - D_ctx_80177D08;
if (boss->state < 20) {
gRadarMarks[59].unk_00 = 1;
gRadarMarks[59].unk_02 = 0x66;
gRadarMarks[59].unk_02 = 102;
gRadarMarks[59].pos.x = boss->obj.pos.x;
gRadarMarks[59].pos.y = boss->obj.pos.y;
gRadarMarks[59].pos.z = boss->obj.pos.z;
@@ -1139,7 +1139,7 @@ void Andross_80189B70(Boss* boss) {
Math_SmoothStepToF(&boss->fwork[23], boss->fwork[24], 0.3f, 0.01f, 0);
}
s32 Andross_8018B47C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Andross_8018B47C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
if (boss->fwork[21] >= 254.0f) {
@@ -1555,14 +1555,14 @@ void Andross_8018D0D8(Boss* boss) {
}
}
void Andross_8018D16C(Boss* boss) {
void Andross_Boss320_Init(Boss* boss) {
Audio_SetBaseSfxReverb(0x18);
D_i6_801A7F5C = D_i6_801A7F64 = D_i6_801A7F6C = D_i6_801A7F74 = D_i6_801A7F7C = D_i6_801A8430 = 0.0f;
D_bg_800C9C30 = 0.0f;
boss->health = 100;
boss->fwork[18] = 1.0f;
boss->fwork[17] = 1.0f;
gLight1R = 0xFF;
gLight1R = 255;
gLight1G = 80;
gLight1B = 20;
gAmbientR = 1;
@@ -1575,7 +1575,7 @@ void Andross_8018D16C(Boss* boss) {
D_ctx_80177AB0 = 1;
boss->info.hitbox[16] = 200.0f;
boss->info.hitbox[22] = 200.0f;
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_33 | 0x8000, 0, 0);
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_AND_BOSS | SEQ_FLAG, 0, 0);
}
void Andross_8018D2B0(Boss* boss) {
@@ -1590,7 +1590,7 @@ void Andross_8018D2B0(Boss* boss) {
boss->timer_05C = 20;
if ((boss->state == 9) || (boss->state == 10)) {
if (boss->health <= 0) {
D_play_Timer_80161A60 = 8;
gScreenFlashTimer = 8;
AUDIO_PLAY_SFX(0x2940D09A, boss->sfxSource, 4);
AUDIO_PLAY_SFX(0x31009063, boss->sfxSource, 4);
AUDIO_PLAY_SFX(0x19403070, boss->sfxSource, 4);
@@ -2538,7 +2538,7 @@ void Andross_8018DBF0(Boss* boss) {
boss->obj.pos.y + RAND_FLOAT_CENTERED(1000.0f), boss->obj.pos.z, 0.0f, 0.0f,
boss->vel.z, RAND_FLOAT(0.2f) + 0.2f, 0);
}
if (gCsFrameCount >= 0x33) {
if (gCsFrameCount > 50) {
func_effect_8007D0E0(boss->obj.pos.x + RAND_FLOAT_CENTERED(1000.0f),
boss->obj.pos.y + RAND_FLOAT_CENTERED(1000.0f), boss->obj.pos.z,
RAND_FLOAT(3.0f) + 3.0f);
@@ -2579,7 +2579,7 @@ void Andross_8018DBF0(Boss* boss) {
boss->timer_050 = 50;
boss->fwork[9] = 0.0f;
AUDIO_PLAY_SFX(0x11030073, boss->sfxSource, 4);
AUDIO_PLAY_BGM(SEQ_ID_33 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_AND_BOSS | SEQ_FLAG);
break;
}
break;
@@ -2807,7 +2807,7 @@ static f32 D_i6_801A67EC = 0.0f;
static f32 D_i6_801A67F0 = 0.0f;
static Vec3f D_i6_801A67F4 = { 0.0f, 0.0f, 0.0f };
s32 Andross_801917F0(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Andross_801917F0(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Vec3f sp94;
Vec3f sp88;
f32 scale;
@@ -3297,7 +3297,7 @@ void Andross_80193380(Object_80* obj80) {
obj80->obj.rot.z = D_Andross_801A7F68;
}
s32 Andross_801934EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Andross_801934EC(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex == 13) {
*dList = NULL;
}
@@ -3319,7 +3319,7 @@ void Andross_8019356C(Object_80* obj80) {
}
}
s32 Andross_801935B4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Andross_801935B4(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
if (limbIndex != 13) {
*dList = NULL;
}
@@ -3380,7 +3380,7 @@ void Andross_80193710(void) {
break;
}
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_291)) {
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_SUPPLIES)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = D_ctx_80178310[i].id;
@@ -3418,7 +3418,7 @@ void Andross_801939A0(s32 actorIndex) {
}
if (actorIndex == 1) {
actor->state = 1;
actor->unk_046 = 0xFF;
actor->unk_046 = 255;
actor->unk_0B6 = 1000;
}
Object_SetInfo(&actor->info, actor->obj.id);
@@ -3629,7 +3629,7 @@ void Andross_80193C4C(Player* player) {
Audio_KillSfxBySourceAndId(player->sfxSource, 0x11403071);
Audio_SetBaseSfxReverb(0);
D_play_800D2F68 = 0;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
gCurrentLevel = LEVEL_VENOM_2;
D_ctx_8017827C = 1;
gLevelMode = LEVELMODE_ALL_RANGE;
@@ -3676,7 +3676,7 @@ void Andross_80193C4C(Player* player) {
if (gCsFrameCount == 40) {
Andross_801939A0(10);
AUDIO_PLAY_SFX(0x2940F026, boss->sfxSource, 4);
D_ctx_80178480 = 30;
gCameraShake = 30;
gOverlayStage = 1;
D_Timer_80177BD0[0] = 30;
}
@@ -3696,7 +3696,7 @@ void Andross_80193C4C(Player* player) {
}
if (gCsFrameCount == 70) {
AUDIO_PLAY_BGM(SEQ_ID_64 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_VE_CLEAR | SEQ_FLAG);
}
if (gCsFrameCount == 150) {
player->unk_1D0++;
@@ -3938,7 +3938,7 @@ void Andross_80193C4C(Player* player) {
D_ctx_8017835C = 4;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
D_ctx_80178358 = 255;
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
gNextGameState = GSTATE_CREDITS;
D_ending_80196D00 = 0;
D_play_800D3180[LEVEL_VENOM_ANDROSS] = Play_CheckMedalStatus(200) + 1;
@@ -3948,7 +3948,7 @@ void Andross_80193C4C(Player* player) {
break;
case 100:
D_ctx_80178380[0] -= 4;
if (D_ctx_80178380[0] >= 0x100) {
if (D_ctx_80178380[0] > 255) {
D_ctx_80178380[0] = 0;
}
Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 0);
+19 -19
View File
@@ -51,7 +51,7 @@ void SectorY_80197C64(Effect* effect) {
void SectorY_80197CB8(Object_80* obj80) {
}
void SectorY_80197CC4(Boss* boss) {
void SectorY_Boss314_Init(Boss* boss) {
boss->fwork[9] = 0.0f;
boss->swork[33] = 5500;
boss->timer_050 = 10;
@@ -578,7 +578,7 @@ void SectorY_80199438(Boss* boss) {
func_effect_8007A568(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 40.0f);
func_effect_8007D0E0(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 30.0f);
func_enmy_80062B60(boss->obj.pos.x, boss->obj.pos.z, 0, 120.0f);
D_ctx_80178480 = 25;
gCameraShake = 25;
boss->swork[36]++;
for (i = 10; i < 24; i++) {
@@ -964,7 +964,7 @@ void SectorY_8019AEEC(Boss* boss) {
if ((boss->obj.pos.y != 365.0f) && (boss->swork[21] != 1)) {
if (boss->unk_04A != 0) {
if (boss->unk_04A == 1) {
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_65 | 0x8000, 0, 0);
Audio_PlaySequence(SEQ_PLAYER_BGM, SEQ_ID_BOSS_RESUME | SEQ_FLAG, 0, 0);
boss->unk_04A++;
gPlayer[0].camEye.x = 0.0f;
gPlayer[0].camEye.y = 200.0f;
@@ -1620,9 +1620,9 @@ void SectorY_8019C888(Boss* boss) {
}
}
if (D_edisplay_801615D0.x > 0.0f) {
gPlayer[0].unk_228 = 0x10;
gPlayer[0].flags_228 = 0x10;
} else {
gPlayer[0].unk_228 = 0x20;
gPlayer[0].flags_228 = 0x20;
}
} else {
@@ -1631,7 +1631,7 @@ void SectorY_8019C888(Boss* boss) {
}
}
s32 SectorY_8019DC4C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool SectorY_8019DC4C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
Vec3f sp10 = { 0.0f, 0.0f, 0.0f };
@@ -1671,7 +1671,7 @@ s32 SectorY_8019DC4C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* d
return false;
}
s32 SectorY_8019DE10(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool SectorY_8019DE10(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
Vec3f sp38 = { 0.0f, 0.0f, 0.0f };
@@ -1909,7 +1909,7 @@ void SectorY_8019EB80(void) {
} else {
var_s1 = 2;
}
Rand_SetSeed(1, 0x71AC, 0x263A);
Rand_SetSeed(1, 29100, 9786);
for (i = 0; i <= (var_s1); i++, actor++) {
if (((i == 0) && (gTeamShields[3] <= 0.0f)) || ((i == 1) && (gTeamShields[2] <= 0.0f)) ||
@@ -2043,7 +2043,7 @@ void SectorY_8019EE60(Player* player) {
player->pos.z = 0.0f;
player->unk_1D0++;
func_8001C8B8(0);
AUDIO_PLAY_BGM(SEQ_ID_38);
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
D_ctx_80177A98 = 0;
for (i = 0; i < 200; i++) {
@@ -2117,7 +2117,7 @@ void SectorY_8019EE60(Player* player) {
D_ctx_80178358 = 255;
D_ctx_80178348 = D_ctx_80178350 = D_ctx_80178354 = 0;
D_ctx_8017835C = 8;
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
Audio_FadeOutAll(10);
player->state_1C8 = PLAYERSTATE_1C8_6;
player->timer_1F8 = 0;
@@ -2514,7 +2514,7 @@ void SectorY_801A0AC0(Player* player) {
/* fallthrough */
case 1:
if (gCsFrameCount < 3) {
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
}
if ((gGameFrameCount & 0xC) && !(gGameFrameCount & 3)) {
@@ -2668,7 +2668,7 @@ void SectorY_801A0AC0(Player* player) {
func_enmy2_8006ECBC(PLAYERSHOT_1, &gPlayerShots[i], 100, gActors[8].obj.pos.x,
gActors[8].obj.pos.y, gActors[8].obj.pos.z, sp98.x, sp98.y, sp98.z,
sp88, sp84, 0.0f);
gPlayerShots[i].unk_64 = 0xAE;
gPlayerShots[i].unk_64 = 174;
break;
}
}
@@ -2897,7 +2897,7 @@ void SectorY_801A0AC0(Player* player) {
gActors[7].fwork[5] = 0.0f;
break;
case 360:
AUDIO_PLAY_BGM(SEQ_ID_44);
AUDIO_PLAY_BGM(SEQ_ID_INTRO_44);
break;
case 389:
gActors[5].iwork[4] = 1;
@@ -3175,7 +3175,7 @@ void SectorY_801A0AC0(Player* player) {
D_ctx_80177A48[0] = 1.0f;
player->pos.z = player->unk_138 = 0.0f;
player->unk_0D0 = D_play_80161A54;
AUDIO_PLAY_BGM(SEQ_ID_9 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_SECTOR_Y | SEQ_FLAG);
D_ctx_80177838 = 100;
player->state_1C8 = PLAYERSTATE_1C8_3;
player->unk_1D0 = 0;
@@ -3249,7 +3249,7 @@ void SectorY_801A3B50(f32 xPos, f32 yPos, f32 zPos, f32 xVel, f32 yVel, f32 zVel
}
}
void SectorY_801A3BD4(Actor* actor) {
void SectorY_Actor204_Update(Actor* actor) {
f32 sp1E4;
f32 sp1E0;
s32 i;
@@ -3360,7 +3360,7 @@ void SectorY_801A3BD4(Actor* actor) {
actor->timer_0C4 = 4;
actor->fwork[19] = 30.0f;
if (actor->iwork[19] < 0) {
func_enmy2_8006F254(actor);
ActorEvent_8006F254(actor);
} else {
sp1E4 = gPlayer[0].pos.x;
sp1E0 = gPlayer[0].pos.y;
@@ -3422,7 +3422,7 @@ void SectorY_801A3BD4(Actor* actor) {
}
if (actor->timer_0BE == 5U) {
func_effect_8007BFFC(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, actor->vel.x, actor->vel.y,
actor->vel.z, 8.0f, 0xA);
actor->vel.z, 8.0f, 10);
func_effect_8007B344(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 8.0f, 5);
AUDIO_PLAY_SFX(0x2903A060, actor->sfxSource, 4);
}
@@ -3544,7 +3544,7 @@ static s32 D_i6_801A6B28[3] = { 255, 150, 150 };
static s32 D_i6_801A6B34[3] = { 150, 255, 150 };
static s32 D_i6_801A6B40[6] = { 150, 150, 255 };
s32 SectorY_801A4A18(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool SectorY_801A4A18(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Actor* actor = (Actor*) data;
if (limbIndex == 4) {
@@ -3598,7 +3598,7 @@ static f32 D_i6_801A6B64[5] = {
0.3f, 0.7f, 1.3f, 0.7f, 0.3f,
};
void SectorY_801A4CB0(Actor* actor) {
void SectorY_Actor204_Draw(Actor* actor) {
f32 scale;
RCP_SetupDL_30(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
+8 -8
View File
@@ -95,7 +95,7 @@ void Turret_801A58A8(Player* player) {
}
for (i = 0; i < player->unk_1C0; i++) {
if ((gActors[i].obj.status == OBJ_ACTIVE) && (gActors[i].obj.id == OBJ_ACTOR_200)) {
if ((gActors[i].obj.status == OBJ_ACTIVE) && (gActors[i].obj.id == OBJ_ACTOR_EVENT)) {
gTexturedLines[i].mode = 3;
gTexturedLines[i].unk_24 = 1.0f;
@@ -115,7 +115,7 @@ void Turret_801A58A8(Player* player) {
gTexturedLines[i].unk_10.z = gActors[i].obj.pos.z;
}
}
if (gControllerHold[player->num].button & 0x10) {
if (gControllerHold[player->num].button & R_TRIG) {
player->unk_1C0++;
if (player->unk_1C0 > 60) {
player->unk_1C0 = 60;
@@ -186,21 +186,21 @@ void Turret_801A5AD4(Player* player) {
if (player->unk_00C < -30.0f) {
player->unk_00C = -30.0f;
}
player->unk_228 = 0;
player->flags_228 = 0;
if (player->unk_008 > 20.0f) {
player->unk_228 |= 1;
player->flags_228 |= 1;
}
if (player->unk_008 < -20.0f) {
player->unk_228 |= 2;
player->flags_228 |= 2;
}
if (player->unk_00C > 20.0f) {
player->unk_228 |= 8;
player->flags_228 |= 8;
}
if (player->unk_00C < -20.0f) {
player->unk_228 |= 4;
player->flags_228 |= 4;
}
if (gControllerPress[player->num].button & 0x4000) {
if (gControllerPress[player->num].button & B_BUTTON) {
player->unk_008 = player->unk_00C = 0.0f;
}
Math_SmoothStepToF(&player->unk_180, -player->unk_008, 0.5f, 3.0f, 0.00001f);
+17 -13
View File
@@ -5,7 +5,7 @@ void Venom2_80196210(Boss* boss) {
Math_SmoothStepToF(&boss->fwork[0], boss->fwork[1], 0.5f, 5.0f, 0.0f);
}
s32 Venom2_8019624C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
bool Venom2_8019624C(s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3f* rot, void* data) {
Boss* boss = (Boss*) data;
if ((limbIndex == 1) || (limbIndex == 2)) {
@@ -199,7 +199,7 @@ void Venom2_80196968(void) {
break;
}
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_291)) {
if ((D_ctx_80178310[i].id >= OBJ_ACTOR_176) && (D_ctx_80178310[i].id <= OBJ_ACTOR_SUPPLIES)) {
Actor_Initialize(actor);
actor->obj.status = OBJ_INIT;
actor->obj.id = D_ctx_80178310[i].id;
@@ -252,13 +252,15 @@ void Venom2_80196BF8(Player* player) {
void Venom2_80196D88(Player* player) {
s32 i;
f32 var_fa0;
s32 pad;
f32 sp94;
f32 sp90;
f32 sp8C;
f32 temp_fv1;
f32 pad88;
f32 sp84;
s32 pad[3];
f32 pad80;
f32 var_fa0;
f32 temp_fv1;
f32 sp74;
f32 sp70;
Vec3f sp64;
@@ -268,17 +270,20 @@ void Venom2_80196D88(Player* player) {
Math_SmoothStepToF(&player->unk_110, 0.0f, 0.1f, 1.5f, 0.0f);
Math_SmoothStepToF(&player->unk_0E8, 0.0f, 0.1f, 1.5f, 0.0f);
Math_SmoothStepToF(&player->unk_0E4, 0.0f, 0.1f, 1.5f, 0.0f);
var_fa0 = -player->unk_120;
temp_fv1 = player->unk_0EC;
if (var_fa0 < -90.0f) {
var_fa0 = 0.0f;
}
sp70 = 0.0f;
sp74 = 0.0f;
sp74 = sp70 = 0.0f;
if (temp_fv1 < -5.0f) {
sp74 = -temp_fv1;
}
if (temp_fv1 > 5.0f) {
sp70 = temp_fv1;
}
@@ -337,11 +342,10 @@ void Venom2_80196D88(Player* player) {
}
sp84 = Math_RadToDeg(Math_Atan2F(sp94, sp8C));
sp8C = sqrtf(SQ(sp94) + SQ(sp8C));
Math_SmoothStepToAngle(&player->unk_120, Math_RadToDeg(-Math_Atan2F(sp90, sp8C)), 0.1f, D_ctx_80177A48[4],
0.0f);
Math_SmoothStepToF(&player->unk_0EC,
Math_SmoothStepToAngle(&player->unk_114, sp84, 0.1f, D_ctx_80177A48[4], 0.0f) * 20.0f,
0.1f, 3.0f, 0.0f);
pad88 = Math_RadToDeg(-Math_Atan2F(sp90, sp8C));
Math_SmoothStepToAngle(&player->unk_120, pad88, 0.1f, D_ctx_80177A48[4], 0.0f);
pad80 = Math_SmoothStepToAngle(&player->unk_114, sp84, 0.1f, D_ctx_80177A48[4], 0.0f) * 20.0f;
Math_SmoothStepToF(&player->unk_0EC, pad80, 0.1f, 3.0f, 0.0f);
Math_SmoothStepToF(&D_ctx_80177A48[4], 3.0f, 1.0f, 0.1f, 0.0f);
Matrix_RotateX(gCalcMatrix, -(D_PI / 9), 0);
Matrix_RotateY(gCalcMatrix, (D_ctx_80177A48[3] + player->unk_114) * M_DTOR, 1);
@@ -429,7 +433,7 @@ void Venom2_80196D88(Player* player) {
}
if (player->timer_1FC == 150) {
Radio_PlayMessage(gMsg_ID_8215, RCID_FOX);
AUDIO_PLAY_BGM(SEQ_ID_62 | 0x8000);
AUDIO_PLAY_BGM(SEQ_ID_TO_ANDROSS | SEQ_FLAG);
}
if (player->timer_1FC == 1) {
if ((gTeamShields[2] > 0) || (gTeamShields[1] > 0) || (gTeamShields[3] > 0)) {
+27 -27
View File
@@ -1117,7 +1117,7 @@ void Map_8019F97C(void);
void Map_8019F83C(void);
void Map_8019FA1C(void);
void Map_8019FC04(void);
s32 Map_8019FD1C(LevelId levelId, s32 arg1);
bool Map_8019FD1C(LevelId levelId, s32 arg1);
void Map_8019FF48(void);
s32 Map_801A05B4(void);
void Map_801A0788(void);
@@ -1149,7 +1149,7 @@ void Map_801A4FC4(void);
void Map_801A53C8(void);
void Map_801A5834(void);
void Map_801A5C90(void);
s32 Map_801A5770(void);
bool Map_801A5770(void);
void Map_801A5E80(void);
void Map_801A6368(void);
void Map_801A61B4(LevelId level);
@@ -1289,8 +1289,8 @@ void Map_8019E99C(void) {
for (i = 0; i < 10; i++) {
D_menu_801CEB58[1][i] = 0;
D_menu_801CEB58[2][i] = 0;
D_menu_801CEBD0[1][i] = 0xFF;
D_menu_801CEBD0[2][i] = 0xFF;
D_menu_801CEBD0[1][i] = 255;
D_menu_801CEBD0[2][i] = 255;
D_menu_801CEC48[1][i] = 0.0f;
D_menu_801CEC48[2][i] = 0.0f;
D_menu_801CECC0[1][i] = 0.5f + RAND_FLOAT(0.3f);
@@ -1336,7 +1336,7 @@ void Map_8019E99C(void) {
D_menu_801CD960 = 0;
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
D_ctx_80178348 = 0;
D_ctx_80178350 = 0;
D_ctx_80178354 = 0;
@@ -1363,7 +1363,7 @@ void Map_8019E99C(void) {
D_menu_801CEA6C = 0.0f;
D_menu_801CEA70 = 0.002f;
AUDIO_PLAY_BGM(SEQ_ID_60);
AUDIO_PLAY_BGM(SEQ_ID_WORLD_MAP);
D_menu_801CEFC4 = 0;
D_menu_801CEFC8 = 0;
@@ -1424,8 +1424,8 @@ void Map_8019E99C(void) {
D_menu_801CEEC0 = 0.0f;
D_menu_801CEEA0 = 0;
D_menu_801CEEA4 = 0;
D_menu_801CEEA8 = 0xFF;
D_menu_801CEEAC = 0xFF;
D_menu_801CEEA8 = 255;
D_menu_801CEEAC = 255;
D_menu_801CEB34 = -1;
}
@@ -1902,7 +1902,7 @@ void Map_801A01A8(void) {
Map_801AC200(i);
}
func_edisplay_80060D94(i);
TexturedLine_DrawPath(i);
}
}
@@ -2132,7 +2132,7 @@ void Map_801A0954(void) {
}
if (gControllerPress[gMainController].button & START_BUTTON) {
AUDIO_PLAY_BGM(SEQ_ID_60);
AUDIO_PLAY_BGM(SEQ_ID_WORLD_MAP);
AUDIO_PLAY_SFX(0x4900001FU, gDefaultSfxSource, 4U);
@@ -2180,8 +2180,8 @@ void Map_801A0D14(void) {
TextureRect_8bIA(&gMasterDisp, D_MAP_6019030, 8, 16, 0.0f, D_menu_801B694C, 40.0f, 1.66f);
TextureRect_8bIA_MirY(&gMasterDisp, D_MAP_6019030, 8, 16, 0.0f, D_menu_801B6950, 40.0f, 1.68f);
func_bg_8003DE68(0x47, 0x76);
func_bg_8003DE68(0xCD, 0xEF);
func_bg_8003DE68(71, 118);
func_bg_8003DE68(205, 239);
RCP_SetupDL(&gMasterDisp, 0x4C);
@@ -2573,13 +2573,13 @@ bool Map_801A2304(void) {
D_menu_801CEA78 = 5.5f;
D_menu_801CEA80 = 4.6f;
D_menu_801CD94C += 1;
D_menu_801CD9B8 = 0xD;
D_menu_801CD9B8 = 13;
}
break;
case 1:
D_menu_801CEA78 -= 2.5f;
D_menu_801CEA98 += 0xA;
D_menu_801CEA98 += 10;
D_menu_801CEA80 -= 2.5f;
if (D_menu_801CEA78 < 5.0f) {
@@ -2602,8 +2602,8 @@ bool Map_801A2304(void) {
}
if (D_menu_801CD9B8 == 0) {
D_menu_801CEA98 = 0xFF;
D_menu_801CD94C = 0x64;
D_menu_801CEA98 = 255;
D_menu_801CD94C = 100;
}
break;
@@ -3064,7 +3064,7 @@ void Map_801A36A8(void) {
D_ctx_80178348 = 0;
D_ctx_80178350 = 0;
D_ctx_80178354 = 0;
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
for (i = 0; i < 8; i++) {
D_menu_801CF020[i] = D_menu_801B69D4[i];
@@ -3081,7 +3081,7 @@ void Map_801A36A8(void) {
D_menu_801CF080 = 1.0f;
D_menu_801CD948 = 10;
AUDIO_PLAY_BGM(SEQ_ID_40);
AUDIO_PLAY_BGM(SEQ_ID_GAME_OVER);
break;
case 10:
@@ -4623,7 +4623,7 @@ void Map_801A74F4(PlanetId planetId) {
RCP_SetupDL(&gMasterDisp, 0x43);
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, alpha);
gDPSetEnvColor(gMasterDisp++, 0x1f, 0, 0, 0);
gDPSetEnvColor(gMasterDisp++, 31, 0, 0, 0);
Matrix_Push(&gGfxMatrix);
@@ -5138,31 +5138,31 @@ void Map_801A8F40(void) {
void Map_801A914C(void) {
D_menu_801CEAA8 = 140.0f;
if (sCurrentPlanetId == 9) {
if (sCurrentPlanetId == PLANET_CORNERIA) {
D_menu_801CEAA8 = 230.0f;
}
if (sCurrentPlanetId == 1) {
if (sCurrentPlanetId == PLANET_AREA_6) {
D_menu_801CEAA8 = 210.0f;
}
if (sCurrentPlanetId == 0xE) {
if (sCurrentPlanetId == PLANET_SOLAR) {
D_menu_801CEAA8 = 250.0f;
}
if (sCurrentPlanetId == 4) {
if (sCurrentPlanetId == PLANET_SECTOR_X) {
D_menu_801CEAA8 = 150.0f;
}
if (sCurrentPlanetId == 5) {
if (sCurrentPlanetId == PLANET_SECTOR_Y) {
D_menu_801CEAA8 = 150.0f;
}
if (sCurrentPlanetId == 3) {
if (sCurrentPlanetId == PLANET_SECTOR_Z) {
D_menu_801CEAA8 = 150.0f;
}
if (sCurrentPlanetId == 0xD) {
if (sCurrentPlanetId == PLANET_VENOM) {
D_menu_801CEAA8 = 300.0f;
}
@@ -5978,7 +5978,7 @@ void Map_801AB978(s32 arg0) {
switch (gSavedTeamShields[3 - i]) {
case -1:
case -2:
if (D_menu_801CEA74 > 0x20) {
if (D_menu_801CEA74 > 32) {
sp90[i] = 32;
} else {
sp90[i] = D_menu_801CEA74;
+30 -27
View File
@@ -401,7 +401,7 @@ void Option_Setup(void) {
D_ctx_80178354 = 0;
D_ctx_80178340 = 0;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
gBgColor = 0;
@@ -534,7 +534,7 @@ void Option_Setup(void) {
D_menu_801B91EC = 0;
D_menu_801B9244 = 0;
D_menu_801B9248 = 0;
AUDIO_PLAY_BGM(SEQ_ID_36);
AUDIO_PLAY_BGM(SEQ_ID_MENU);
}
void Option_Init(void) {
@@ -686,7 +686,7 @@ void Option_DrawEntry(void) {
}
void Option_InitEntry(void) {
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
D_menu_801B912C = 0;
switch (D_menu_801B9124) {
@@ -769,7 +769,7 @@ void Option_80192738(void) {
}
void Option_MapUpdate(void) {
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
D_ctx_80178410 = 0;
D_menu_801B9124 = 100;
gGameState = GSTATE_MAP;
@@ -778,15 +778,15 @@ void Option_MapUpdate(void) {
gDrawMode = DRAWMODE_0;
gControllerLock = 3;
} else {
D_ctx_80178340 += 0x20;
if (D_ctx_80178340 > 0xFF) {
D_ctx_80178340 = 0xFF;
D_ctx_80178340 += 32;
if (D_ctx_80178340 > 255) {
D_ctx_80178340 = 255;
}
}
}
void Option_TrainingUpdate(void) {
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
gCurrentLevel = LEVEL_TRAINING;
gGameState = GSTATE_PLAY;
D_Timer_8017783C = 2;
@@ -799,9 +799,9 @@ void Option_TrainingUpdate(void) {
gControllerLock = 3;
Audio_SetAudioSpec(0, 28);
} else {
D_ctx_80178340 += 0x20;
if (D_ctx_80178340 > 0xFF) {
D_ctx_80178340 = 0xFF;
D_ctx_80178340 += 32;
if (D_ctx_80178340 > 255) {
D_ctx_80178340 = 255;
}
}
}
@@ -810,7 +810,7 @@ void Option_801929F0(void) {
s32 i;
D_game_800D2870 = 0;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
gControllerLock = 0;
D_ctx_80178410 = 800;
D_menu_801B9248 = 0;
@@ -903,7 +903,7 @@ void Option_MainMenuUpdate(void) {
sOptionCardList[i].unk_00.unk_1C = sOptionCardCurTextPosY[i];
}
D_menu_801B91BC = 1;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
D_menu_801B912C = 1;
}
break;
@@ -970,7 +970,7 @@ void Option_MainMenuUpdate(void) {
break;
case 11:
gBlurAlpha = 0x10;
gBlurAlpha = 16;
D_menu_801B9178 = 3;
sOptionCardList[D_menu_801B91A4].unk_38.unk_0C -= 0.01f;
sOptionCardList[D_menu_801B91A4].unk_38.unk_10 -= 0.01f;
@@ -1087,7 +1087,7 @@ void Option_MainMenuDraw(void) {
void Option_80193B04(void) {
s32 i;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
gControllerLock = 0;
D_ctx_80178410 = 800;
@@ -1174,7 +1174,7 @@ void Option_VersusUpdate(void) {
sOptionCardList[D_menu_801B91A4].unk_00.unk_1C = 25.0f;
sOptionCardList[D_menu_801B91A4].unk_38.unk_04 = 90.0f;
D_menu_801B91BC = 1;
gBlurAlpha = 0xFF;
gBlurAlpha = 255;
D_menu_801B912C = 1;
}
break;
@@ -1201,7 +1201,7 @@ void Option_VersusUpdate(void) {
break;
case 11:
gBlurAlpha = 0x10;
gBlurAlpha = 16;
D_menu_801B9178 = 5;
sOptionVSCardList[D_menu_801B91A8].unk_38.unk_0C -= 0.01f;
sOptionVSCardList[D_menu_801B91A8].unk_38.unk_10 -= 0.01f;
@@ -1253,7 +1253,7 @@ void Option_VersusUpdate(void) {
if ((var_fs0 == sOptionVSCardList[D_menu_801B91A8].unk_00.unk_1C) &&
(sOptionVSCardList[D_menu_801B91A8].unk_38.unk_04 == -15.5f)) {
gBlurAlpha += 0xFF;
gBlurAlpha += 255;
D_menu_801B9124 = (D_menu_801B91A8 + 1) * 10;
D_ctx_801778AC = D_menu_801B91A8;
D_menu_801B91C4 = 1;
@@ -1664,7 +1664,7 @@ void Option_ExpertSoundUpdate(void) {
if (gControllerPress[gMainController].button & B_BUTTON) {
if (!D_menu_801B9320) {
AUDIO_PLAY_SFX(0x49000021, gDefaultSfxSource, 4);
AUDIO_PLAY_BGM(SEQ_ID_36);
AUDIO_PLAY_BGM(SEQ_ID_MENU);
gDrawMode = DRAWMODE_0;
D_menu_801B9124 = 1000;
D_menu_801B912C = 0;
@@ -2613,7 +2613,7 @@ void Option_VersusMenuInit(void) {
s32 i;
if (D_menu_801B91C4) {
AUDIO_PLAY_BGM(SEQ_ID_56);
AUDIO_PLAY_BGM(SEQ_ID_VS_MENU);
}
D_menu_801B93D0 = D_menu_801B9124;
@@ -2694,7 +2694,7 @@ void Option_8019949C(void) {
AUDIO_PLAY_SFX(0x4900101D, gDefaultSfxSource, 4);
D_menu_801B93C4 &= (1 << i) ^ 15;
} else {
AUDIO_PLAY_BGM(SEQ_ID_36);
AUDIO_PLAY_BGM(SEQ_ID_MENU);
AUDIO_PLAY_SFX(0x49000021, gDefaultSfxSource, 4);
Option_8019B8A0(2);
D_menu_801B9248 = 1;
@@ -3355,7 +3355,7 @@ void Option_8019B1F8(void) {
width = 56;
}
RCP_SetupDL(&gMasterDisp, 0x53);
gDPSetPrimColor(gMasterDisp++, 0, 0, 0xff, 0xff, 0xff, sp8C[i]);
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, sp8C[i]);
TextureRect_8bIA(&gMasterDisp, D_menu_801AF2BC[i], width, 10, D_menu_801AF2B4[i], D_menu_801AF2AC + 40.0f, 1.0f,
1.0f);
}
@@ -3911,9 +3911,9 @@ void Option_8019CBC0(void) {
s32 temp;
s32 i;
AUDIO_PLAY_BGM(SEQ_ID_36);
AUDIO_PLAY_BGM(SEQ_ID_MENU);
gBlurAlpha = 0xD0;
gBlurAlpha = 208;
D_ctx_80178410 = 800;
D_menu_801B9130 = 1;
@@ -3943,7 +3943,7 @@ void Option_8019CBC0(void) {
for (i = 0; i < 3; i++) {
D_menu_801B90B0[i] = 0;
D_menu_801B90A0[i] = 0;
D_menu_801B9150[i][0] = 0x41;
D_menu_801B9150[i][0] = 65;
D_menu_801B9150[i][1] = 0;
}
}
@@ -4326,7 +4326,8 @@ void Option_8019DD44(void) {
void Option_8019DE74(void) {
Option_8019715C();
if (gControllerPress[gMainController].button & 0xD00E) { // START, A, B, C-UP, C-LEFT, C-DOWN
if (gControllerPress[gMainController].button & (START_BUTTON | A_BUTTON | B_BUTTON | D_CBUTTONS | L_CBUTTONS |
U_CBUTTONS)) { // START, A, B, C-UP, C-LEFT, C-DOWN
AUDIO_PLAY_SFX(0x49000003, gDefaultSfxSource, 4);
gDrawMode = DRAWMODE_0;
@@ -4381,7 +4382,9 @@ void Option_InvoiceUpdate(void) {
break;
case 2:
if ((D_menu_801B9178 == 0) && (gControllerPress[gMainController].button & 0xD00E)) {
if ((D_menu_801B9178 == 0) &&
(gControllerPress[gMainController].button &
(START_BUTTON | A_BUTTON | B_BUTTON | D_CBUTTONS | L_CBUTTONS | U_CBUTTONS))) {
AUDIO_PLAY_SFX(0x19031083, gDefaultSfxSource, 4);
D_menu_801B9090 = 1;
D_menu_801B9178 = 60;
+16 -14
View File
@@ -212,7 +212,7 @@ void Title_801875E0(void) {
Audio_SetAudioSpec(0, 0x16);
D_menu_801B82C4 = 1;
}
gControllerLock = 0x1E;
gControllerLock = 30;
}
void Title_80187754(void) {
@@ -708,7 +708,7 @@ void Title_801881FC(void) {
D_menu_801B86A4 = 0;
D_menu_801B82B0 = 100;
AUDIO_PLAY_BGM(SEQ_ID_34);
AUDIO_PLAY_BGM(SEQ_ID_TITLE);
}
void Title_801888E8(void) {
@@ -989,7 +989,7 @@ void Title_801894E8(void) {
D_menu_801B7BF0 = 0;
AUDIO_PLAY_BGM(SEQ_ID_35);
AUDIO_PLAY_BGM(SEQ_ID_OPENING);
}
void Title_8018994C(void) {
@@ -1568,12 +1568,12 @@ void Title_8018B058(void) {
D_menu_801B8108[i] = 0;
}
D_menu_801B869C = 0xFF;
D_menu_801B869C = 255;
D_ctx_80178340 = 0;
D_ctx_80178348 = 0xFF;
D_ctx_80178350 = 0xFF;
D_ctx_80178354 = 0xFF;
D_ctx_80178348 = 255;
D_ctx_80178350 = 255;
D_ctx_80178354 = 255;
D_ctx_80178410 = 0;
D_menu_801B8334 = 0;
@@ -1799,11 +1799,11 @@ void Title_8018B5C4(void) {
D_ctx_80178340++;
}
if (D_ctx_80178340 == 0x80) {
if (D_ctx_80178340 == 128) {
D_menu_801B82A8 = 7;
D_menu_801B84E8[3].unk_3C = 0;
D_menu_801B84E8[3].unk_40 = 0;
D_ctx_80178340 = 0xFF;
D_ctx_80178340 = 255;
D_menu_801B82C0++;
}
@@ -2078,7 +2078,7 @@ void Title_8018C644(void) {
D_menu_801B869C = 1;
}
if (D_ctx_80178340 == 0xFF) {
if (D_ctx_80178340 == 255) {
Audio_KillSfxBySourceAndId(D_menu_801B8658.unk_24, 0x11030010);
Audio_KillSfxBySourceAndId(D_menu_801B8658.unk_24, 0x31024059);
D_menu_801B82C0++;
@@ -2495,11 +2495,11 @@ void Title_8018E200(void) {
break;
case 1:
D_menu_801B7CC8[i] -= 0x10;
D_menu_801B7CC8[i] -= 16;
if (D_menu_801B7CC8[i] < 0) {
D_menu_801B7CC8[i] = 0;
}
D_menu_801B7CF0[i] -= 0x10;
D_menu_801B7CF0[i] -= 16;
if (D_menu_801B7CF0[i] < 0) {
D_menu_801B7CF0[i] = 0;
}
@@ -3200,11 +3200,13 @@ void Title_80190E64(void) {
void Title_80190EA4(void) {
switch (D_menu_801B8280) {
case 0:
if (gControllerPress[gMainController].button & 0xD00F) { // START, A, B, C-left, C-Down, C-Up, C-Right
if (gControllerPress[gMainController].button &
(START_BUTTON | A_BUTTON | B_BUTTON | D_CBUTTONS | L_CBUTTONS | U_CBUTTONS |
R_CBUTTONS)) { // START, A, B, C-left, C-Down, C-Up, C-Right
AUDIO_PLAY_SFX(0x49000003, gDefaultSfxSource, 4);
D_menu_801B8284 = 0;
D_menu_801B8280 = 1;
gControllerLock = 0x1E;
gControllerLock = 30;
}
break;
+1 -1
View File
@@ -218,7 +218,7 @@ void Title_8018DDB8(s32);
void Title_8018DF0C(f32 arg0);
void Title_8018E058(void);
void Title_8018E200(void);
s32 Title_8018EDC8(s32, Gfx **, Vec3f *, Vec3f *, void *);
bool Title_8018EDC8(s32, Gfx **, Vec3f *, Vec3f *, void *);
void Title_8018E67C(s32);
void Title_8018F438(void);
void Title_80190144(void);
+1 -5
View File
@@ -1,9 +1,5 @@
#include "sys.h"
void AudioLoad_Init(void);
SPTask* AudioThread_CreateTask(void);
void Audio_InitSounds(void);
void Audio_Update(void);
#include "sf64audio_external.h"
s32 sGammaMode = 1;
+2 -2
View File
@@ -1,11 +1,11 @@
#include "sys.h"
TimerTask sTimerTasks[0x10];
TimerTask sTimerTasks[16];
TimerTask* Timer_AllocateTask(void) {
s32 i;
for (i = 0; i < 0x10; i++) {
for (i = 0; i < ARRAY_COUNT(sTimerTasks); i++) {
if (!sTimerTasks[i].active) {
return &sTimerTasks[i];
}