Implement/match PlayCamAnim and CameraTriggerFire (#935)

* Implement/match PlayCamAnim and CameraTriggerFire

* Fix type

* Name var
This commit is contained in:
Christian Semmler
2024-05-18 14:43:19 -04:00
committed by GitHub
parent 01735bdc28
commit 732de04433
14 changed files with 382 additions and 233 deletions

View File

@@ -498,10 +498,10 @@ void IslePathActor::SpawnPlayer(LegoGameState::Area p_area, MxBool p_und, MxU8 p
LegoVehicleBuildState* state = NULL;
if (p_flags & c_spawnBit1) {
MxBool und = FALSE;
MxBool camAnim = FALSE;
IsleScript::Script anim;
switch (g_spawnLocations[i].m_unk0x30) {
switch (g_spawnLocations[i].m_location) {
case 0x00:
case 0x44:
break;
@@ -522,7 +522,7 @@ void IslePathActor::SpawnPlayer(LegoGameState::Area p_area, MxBool p_und, MxU8 p
anim = IsleScript::c_irt007in_RunAnim;
break;
default:
und = TRUE;
camAnim = TRUE;
break;
}
@@ -530,12 +530,12 @@ void IslePathActor::SpawnPlayer(LegoGameState::Area p_area, MxBool p_und, MxU8 p
if (AnimationManager()->FUN_10060dc0(anim, NULL, TRUE, FALSE, NULL, FALSE, TRUE, TRUE, TRUE) ==
SUCCESS) {
state->m_unk0x4e = TRUE;
und = FALSE;
camAnim = FALSE;
}
}
if (und) {
FUN_1003ecc0(this, 0, g_spawnLocations[i].m_unk0x30, TRUE);
if (camAnim) {
PlayCamAnim(this, 0, g_spawnLocations[i].m_location, TRUE);
}
}