mirror of
https://github.com/izzy2lost/Diddy-Kong-Racing.git
synced 2026-06-19 01:16:26 -07:00
Many new matches (#407)
* Match func_8002DE30 * func_80046524 code cleanup and score improvement. * Match func_800B45C4 * Match func_800B461C * Match func_800B4668 and func_800B46BC * Match func_800B3140 * Match strcpy and split other funcs into their own files. * unused_string.c * Match func_800B3240 * Match func_800A1C04 * Match func_800A22F4 * Better func_800A22F4 * Match all of unused_string.c now. * Split two new funcs out of func_80011264 and match them. * Do some documenting of the new funcs so they count for adventure two. * Get func_80011264 to a really close match * Workaround for the update_spatial_audio_position issue * Come up with a cleaner fix for update_spatial_audio_position * Soundmask updates * Rename SoundMask struct * Match func_800B34B0 and func_800B3358 * Apply suggestions from code review Co-authored-by: Fazana <52551480+FazanaJ@users.noreply.github.com> * Update READEME score * Fix 31 to 21 --------- Co-authored-by: Fazana <52551480+FazanaJ@users.noreply.github.com>
This commit is contained in:
+2
-1
@@ -6,6 +6,7 @@
|
||||
#define SOUND_VOICE_CHARACTER_POSITIVE SOUND_VOICE_KRUNCH_POSITIVE1
|
||||
#define SOUND_VOICE_CHARACTER_NEGATIVE SOUND_VOICE_KRUNCH_NEGATIVE1
|
||||
#define SOUND_HORN_CHARACTER SOUND_HORN_KRUNCH
|
||||
#define SOUND_NUMBER_OF_RACERS 8
|
||||
|
||||
/// Cannot stress enough that these names are very temporary, preliminary, expendable and other words that imply that they are not final.
|
||||
// Also might be worth thinking of a better way of laying this out, because scrolling through hundreds of sound ID's isn't particularly pleasant.
|
||||
@@ -652,7 +653,7 @@ enum SoundID {
|
||||
/* 0x027D */ SOUND_UNK_27D,
|
||||
/* 0x027E */ SOUND_UNK_27E,
|
||||
// Trying to play 27F onwards will incur a crash.
|
||||
/* 0x027F */ NUM_SOUND_IDS
|
||||
/* 0x027F */ NUM_SOUND_IDS
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
+29
-11
@@ -63,6 +63,23 @@ typedef struct Vec4f {
|
||||
};
|
||||
} Vec4f;
|
||||
|
||||
/* Size: 0x24 / 36 bytes */
|
||||
typedef struct SoundMask {
|
||||
/* 0x00 */ Vec3f pos;
|
||||
/* 0x0C */ u16 soundId;
|
||||
/* 0x0E */ u8 unkE;
|
||||
/* 0x0F */ u8 unkF;
|
||||
/* 0x10 */ u8 unk10;
|
||||
/* 0x11 */ u8 unk11;
|
||||
/* 0x12 */ u8 unk12;
|
||||
/* 0x14 */ s32 unk14;
|
||||
/* 0x18 */ s32 unk18;
|
||||
/* 0x1C */ struct SoundMask **soundMask;
|
||||
/* 0x20 */ u8 unk20;
|
||||
/* 0x21 */ u8 unk21;
|
||||
/* 0x22 */ u8 unk22;
|
||||
} SoundMask;
|
||||
|
||||
/* Size: 0x20 bytes */
|
||||
typedef struct TextureHeader {
|
||||
/* 0x00 */ u8 width;
|
||||
@@ -903,7 +920,7 @@ typedef struct Object_Weapon {
|
||||
/* 0x18 */ u8 weaponID;
|
||||
/* 0x19 */ s8 checkpoint;
|
||||
/* 0x19 */ s16 unk1A;
|
||||
/* 0x19 */ s32 soundMask;
|
||||
/* 0x19 */ SoundMask *soundMask;
|
||||
} Object_Weapon;
|
||||
|
||||
typedef struct Object_Butterfly {
|
||||
@@ -991,7 +1008,7 @@ typedef struct Object_InfoPoint {
|
||||
|
||||
typedef struct Object_TTDoor {
|
||||
/* 0x00 */ f32 homeY;
|
||||
/* 0x04 */ s32 *soundMask;
|
||||
/* 0x04 */ SoundMask *soundMask;
|
||||
/* 0x08 */ s32 unk8;
|
||||
/* 0x0C */ s16 unkC;
|
||||
/* 0x0C */ s8 unkE;
|
||||
@@ -1082,7 +1099,6 @@ typedef struct Object_Exit {
|
||||
/* 0x10 */ s32 radius; // Activation radius.
|
||||
/* 0x14 */ s8 bossFlag; // Dictates boss level version. 0 is first encounter, 1 is rematch. -1 means no boss.
|
||||
} Object_Exit;
|
||||
|
||||
/* Size: 0x224 - 548 bytes */
|
||||
typedef struct Object_Racer {
|
||||
/* 0x000 */ s16 playerIndex; // -1 = AI Controlled, 0 to 3 = Object controlled
|
||||
@@ -1096,7 +1112,7 @@ typedef struct Object_Racer {
|
||||
/* 0x018 */ s32 unk18;
|
||||
/* 0x01C */ s32 unk1C;
|
||||
/* 0x020 */ s32 unk20;
|
||||
/* 0x024 */ s32 soundMask;
|
||||
/* 0x024 */ SoundMask *soundMask;
|
||||
/* 0x028 */ u16 lastSoundID;
|
||||
/* 0x02A */ u16 unk2A;
|
||||
/* 0x02C */ f32 velocity;
|
||||
@@ -1181,8 +1197,8 @@ typedef struct Object_Racer {
|
||||
/* 0x175 */ s8 magnetTimer;
|
||||
/* 0x176 */ s16 unk176;
|
||||
/* 0x178 */ void *magnetSoundMask;
|
||||
/* 0x17C */ s32 shieldSoundMask;
|
||||
/* 0x180 */ s32 bananaSoundMask;
|
||||
/* 0x17C */ SoundMask *shieldSoundMask;
|
||||
/* 0x180 */ SoundMask *bananaSoundMask;
|
||||
/* 0x184 */ s8 magnetModelID;
|
||||
/* 0x185 */ s8 bananas;
|
||||
/* 0x186 */ u8 unk186;
|
||||
@@ -1333,7 +1349,7 @@ typedef struct Object_Audio {
|
||||
/* 0x05 */ u8 unk5;
|
||||
/* 0x06 */ u8 unk6;
|
||||
/* 0x07 */ u8 unk7;
|
||||
/* 0x08 */ s32 soundMask;
|
||||
/* 0x08 */ SoundMask *soundMask;
|
||||
/* 0x0C */ u8 unkC;
|
||||
/* 0x0D */ u8 unkD;
|
||||
} Object_Audio;
|
||||
@@ -1418,7 +1434,7 @@ typedef struct Object_TT {
|
||||
|
||||
typedef struct Object_Bridge_WhaleRamp {
|
||||
/* 0x0 */ f32 unk0;
|
||||
/* 0x4 */ s32 unk4;
|
||||
/* 0x4 */ SoundMask *unk4;
|
||||
} Object_Bridge_WhaleRamp;
|
||||
|
||||
typedef struct Object_8001B7A8 {
|
||||
@@ -1564,9 +1580,11 @@ typedef struct Object_68 {
|
||||
|
||||
/* Size: 0x20 bytes */
|
||||
typedef struct Object_6C {
|
||||
u8 pad0[0x4];
|
||||
s16 unk4;
|
||||
u8 pad6[0x1A];
|
||||
/* 0x00 */ u8 pad0[0x4];
|
||||
/* 0x04 */ s16 unk4;
|
||||
/* 0x05 */ u8 pad6[0x4];
|
||||
/* 0x0A */ s16 unkA;
|
||||
/* 0x0C */ u8 padC[0x14];
|
||||
} Object_6C;
|
||||
|
||||
/* Size: 0xA0 bytes */
|
||||
|
||||
Reference in New Issue
Block a user