penta sfx fix

This commit is contained in:
Niko 2024-04-19 10:16:30 -07:00
parent a002475b90
commit e19a9ee65b
4 changed files with 7 additions and 13 deletions

View File

@ -15,10 +15,6 @@ void DECOMP_VehBirth_EngineAudio_AllPlayers(void)
int engine = data.MetaDataCharacters int engine = data.MetaDataCharacters
[data.characterIDs[driverID]].engineID; [data.characterIDs[driverID]].engineID;
// fix for PAL/JPN, use slots 0,1,2,3,
// engineID of 4 (penta) changes to 0
engine = engine&3;
#ifndef REBUILD_PS1 #ifndef REBUILD_PS1
EngineAudio_InitOnce((engine * 4) + driverID, 0x8080); EngineAudio_InitOnce((engine * 4) + driverID, 0x8080);
#endif #endif

View File

@ -26,8 +26,10 @@ void DECOMP_VehStuckProc_Warp_Init(struct Thread *th, struct Driver *d)
u_char playerID = d->driverID; u_char playerID = d->driverID;
// engineID from metadata, given characterID int engine = data.MetaDataCharacters
EngineAudio_Stop((playerID + (data.MetaDataCharacters[data.characterIDs[playerID]].engineID * 4)) & 0xffff); [data.characterIDs[playerID]].engineID;
EngineAudio_Stop((engine * 4) + playerID);
// CameraDC, freecam mode // CameraDC, freecam mode
sdata->gGT->cameraDC[playerID].cameraMode = 3; sdata->gGT->cameraDC[playerID].cameraMode = 3;

View File

@ -339,9 +339,5 @@ RECALCULATE:
int engine = data.MetaDataCharacters int engine = data.MetaDataCharacters
[data.characterIDs[id]].engineID; [data.characterIDs[id]].engineID;
// fix for PAL/JPN, use slots 0,1,2,3, EngineAudio_Recalculate((engine * 4) + id, vol | LR);
// engineID of 4 (penta) changes to 0
engine = engine&3;
EngineAudio_Recalculate((engine * 4) + (id & 0xffff), vol | LR);
} }

View File

@ -1031,7 +1031,7 @@ void FUN_80058ba4(void)
// thread -> driver -> driverID // thread -> driver -> driverID
uVar1 = (uint)*(byte *)(*(int *)(iVar2 + 0x30) + 0x4a); uVar1 = (uint)*(byte *)(*(int *)(iVar2 + 0x30) + 0x4a);
// Initialize car engine sound // EngineAudio_InitOnce
FUN_80028880( FUN_80028880(
// engineID from metadata, given characterID // engineID from metadata, given characterID
@ -16497,7 +16497,7 @@ void FUN_80068e04(undefined4 param_1,int param_2)
FUN_80028808(*(undefined4 *)(param_2 + 0x300)); FUN_80028808(*(undefined4 *)(param_2 + 0x300));
*(undefined4 *)(param_2 + 0x300) = 0; *(undefined4 *)(param_2 + 0x300) = 0;
// engineID from metadata, given characterID // EngineAudio_Stop (driverID + engineID*4)
FUN_80028b54((uint)*(byte *)(param_2 + 0x4a) + FUN_80028b54((uint)*(byte *)(param_2 + 0x4a) +
*(int *)(&DAT_80086d90 + *(int *)(&DAT_80086d90 +
(int)(short)(&DAT_80086e84)[*(byte *)(param_2 + 0x4a)] * 0x10) * 4 & 0xffff (int)(short)(&DAT_80086e84)[*(byte *)(param_2 + 0x4a)] * 0x10) * 4 & 0xffff