Name locations after exiting buildings/vehicles (#1564)

* Hospital
* Infocenter
* Garage
* Police
* Jetski Build
* Racecar Build
* Any vehicle
This commit is contained in:
Fabian Neundorf
2025-06-15 19:31:19 +02:00
committed by GitHub
parent aeac9f787e
commit 16ccb0e06e
16 changed files with 53 additions and 53 deletions

View File

@@ -67,7 +67,7 @@ public:
e_isle, e_isle,
e_infomain, e_infomain,
e_infodoor, e_infodoor,
e_unk4, e_infocenterExited,
e_elevbott, e_elevbott,
e_elevride, e_elevride,
e_elevride2, e_elevride2,
@@ -80,10 +80,10 @@ public:
e_jetrace, e_jetrace,
e_jetrace2, e_jetrace2,
e_jetraceExterior, e_jetraceExterior,
e_unk17, e_jetskibuildExited,
e_carrace, e_carrace,
e_carraceExterior, e_carraceExterior,
e_unk20, e_racecarbuildExited,
e_unk21, e_unk21,
e_pizzeriaExterior, e_pizzeriaExterior,
e_unk23, e_unk23,
@@ -91,12 +91,12 @@ public:
e_garageExterior, e_garageExterior,
e_garage, e_garage,
e_garadoor, e_garadoor,
e_unk28, e_garageExited,
e_hospitalExterior, e_hospitalExterior,
e_hospital, e_hospital,
e_unk31, e_hospitalExited,
e_policeExterior, e_policeExterior,
e_unk33, e_policeExited,
e_police, e_police,
e_polidoor, e_polidoor,
e_copterbuild, e_copterbuild,
@@ -129,7 +129,7 @@ public:
e_towtrack, e_towtrack,
e_jetski, e_jetski,
e_unk66 = 66 e_vehicleExited = 66
}; };
// SIZE 0x0e // SIZE 0x0e

View File

@@ -221,7 +221,7 @@ MxLong Ambulance::HandleEndAction(MxEndActionNotificationParam& p_param)
else if (objectId == IsleScript::c_hps117bd_RunAnim) { else if (objectId == IsleScript::c_hps117bd_RunAnim) {
CurrentWorld()->PlaceActor(UserActor()); CurrentWorld()->PlaceActor(UserActor());
HandleClick(); HandleClick();
SpawnPlayer(LegoGameState::e_unk33, TRUE, 0); SpawnPlayer(LegoGameState::e_policeExited, TRUE, 0);
m_unk0x172 = 0; m_unk0x172 = 0;
TickleManager()->RegisterClient(this, 40000); TickleManager()->RegisterClient(this, 40000);
@@ -388,7 +388,7 @@ MxLong Ambulance::HandleClick()
ControlManager()->Register(this); ControlManager()->Register(this);
if (m_state->m_unk0x08 == 1) { if (m_state->m_unk0x08 == 1) {
SpawnPlayer(LegoGameState::e_unk31, TRUE, 0); SpawnPlayer(LegoGameState::e_hospitalExited, TRUE, 0);
m_state->m_startTime = Timer()->GetTime(); m_state->m_startTime = Timer()->GetTime();
InvokeAction(Extra::e_start, *g_isleScript, IsleScript::c_pns018rd_RunAnim, NULL); InvokeAction(Extra::e_start, *g_isleScript, IsleScript::c_pns018rd_RunAnim, NULL);
} }
@@ -441,14 +441,14 @@ MxLong Ambulance::HandleControl(LegoControlManagerNotificationParam& p_param)
switch (p_param.m_clickedObjectId) { switch (p_param.m_clickedObjectId) {
case IsleScript::c_AmbulanceArms_Ctl: case IsleScript::c_AmbulanceArms_Ctl:
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_AmbulanceInfo_Ctl: case IsleScript::c_AmbulanceInfo_Ctl:
((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain); ((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain);
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_AmbulanceHorn_Ctl: case IsleScript::c_AmbulanceHorn_Ctl:

View File

@@ -85,7 +85,7 @@ MxLong Bike::HandleControl(LegoControlManagerNotificationParam& p_param)
switch (p_param.m_clickedObjectId) { switch (p_param.m_clickedObjectId) {
case IsleScript::c_BikeArms_Ctl: case IsleScript::c_BikeArms_Ctl:
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_BikeInfo_Ctl: case IsleScript::c_BikeInfo_Ctl:

View File

@@ -125,7 +125,7 @@ MxLong DuneBuggy::HandleControl(LegoControlManagerNotificationParam& p_param)
switch (p_param.m_clickedObjectId) { switch (p_param.m_clickedObjectId) {
case IsleScript::c_DuneCarArms_Ctl: case IsleScript::c_DuneCarArms_Ctl:
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_DuneCarInfo_Ctl: case IsleScript::c_DuneCarInfo_Ctl:

View File

@@ -203,7 +203,7 @@ MxLong Helicopter::HandleControl(LegoControlManagerNotificationParam& p_param)
} }
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_Helicopter_TakeOff_Ctl: { case IsleScript::c_Helicopter_TakeOff_Ctl: {

View File

@@ -148,7 +148,7 @@ void IslePathActor::Exit()
} }
m_previousActor->SetActorState(c_initial); m_previousActor->SetActorState(c_initial);
GameState()->m_currentArea = LegoGameState::Area::e_unk66; GameState()->m_currentArea = LegoGameState::Area::e_vehicleExited;
} }
FUN_1001b660(); FUN_1001b660();
@@ -199,7 +199,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_Quiet_Audio JukeboxScript::c_Quiet_Audio
); );
g_spawnLocations[3] = SpawnLocation( g_spawnLocations[3] = SpawnLocation(
LegoGameState::e_unk4, LegoGameState::e_infocenterExited,
g_isleScript, g_isleScript,
0, 0,
"int46", "int46",
@@ -223,7 +223,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_Beach_Music JukeboxScript::c_Beach_Music
); );
g_spawnLocations[5] = SpawnLocation( g_spawnLocations[5] = SpawnLocation(
LegoGameState::e_unk17, LegoGameState::e_jetskibuildExited,
g_isleScript, g_isleScript,
0, 0,
"EDG00_46", "EDG00_46",
@@ -259,7 +259,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_CentralNorthRoad_Music JukeboxScript::c_CentralNorthRoad_Music
); );
g_spawnLocations[8] = SpawnLocation( g_spawnLocations[8] = SpawnLocation(
LegoGameState::e_unk20, LegoGameState::e_racecarbuildExited,
g_isleScript, g_isleScript,
0, 0,
"INT16", "INT16",
@@ -295,7 +295,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_GarageArea_Music JukeboxScript::c_GarageArea_Music
); );
g_spawnLocations[11] = SpawnLocation( g_spawnLocations[11] = SpawnLocation(
LegoGameState::e_unk28, LegoGameState::e_garageExited,
g_isleScript, g_isleScript,
0, 0,
"INT24", "INT24",
@@ -319,7 +319,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_Hospital_Music JukeboxScript::c_Hospital_Music
); );
g_spawnLocations[13] = SpawnLocation( g_spawnLocations[13] = SpawnLocation(
LegoGameState::e_unk31, LegoGameState::e_hospitalExited,
g_isleScript, g_isleScript,
0, 0,
"EDG02_28", "EDG02_28",
@@ -343,7 +343,7 @@ void IslePathActor::RegisterSpawnLocations()
JukeboxScript::c_PoliceStation_Music JukeboxScript::c_PoliceStation_Music
); );
g_spawnLocations[15] = SpawnLocation( g_spawnLocations[15] = SpawnLocation(
LegoGameState::e_unk33, LegoGameState::e_policeExited,
g_isleScript, g_isleScript,
0, 0,
"EDG02_64", "EDG02_64",

View File

@@ -143,7 +143,7 @@ MxLong Jetski::HandleControl(LegoControlManagerNotificationParam& p_param)
Exit(); Exit();
((IslePathActor*) UserActor()) ((IslePathActor*) UserActor())
->SpawnPlayer(LegoGameState::e_jetraceExterior, TRUE, c_spawnBit1 | c_playMusic | c_spawnBit3); ->SpawnPlayer(LegoGameState::e_jetraceExterior, TRUE, c_spawnBit1 | c_playMusic | c_spawnBit3);
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
return 1; return 1;
case IsleScript::c_JetskiInfo_Ctl: case IsleScript::c_JetskiInfo_Ctl:
((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain); ((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain);

View File

@@ -119,7 +119,7 @@ MxLong Motocycle::HandleControl(LegoControlManagerNotificationParam& p_param)
switch (p_param.m_clickedObjectId) { switch (p_param.m_clickedObjectId) {
case IsleScript::c_MotoBikeArms_Ctl: case IsleScript::c_MotoBikeArms_Ctl:
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_MotoBikeInfo_Ctl: case IsleScript::c_MotoBikeInfo_Ctl:

View File

@@ -112,7 +112,7 @@ MxLong SkateBoard::HandleControl(LegoControlManagerNotificationParam& p_param)
if (p_param.m_unk0x28 == 1 && p_param.m_clickedObjectId == IsleScript::c_SkateArms_Ctl) { if (p_param.m_unk0x28 == 1 && p_param.m_clickedObjectId == IsleScript::c_SkateArms_Ctl) {
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::Area::e_unk66; GameState()->m_currentArea = LegoGameState::Area::e_vehicleExited;
result = 1; result = 1;
} }

View File

@@ -435,7 +435,7 @@ MxLong TowTrack::HandleClick()
FindROI("rcred")->SetVisibility(FALSE); FindROI("rcred")->SetVisibility(FALSE);
} }
else { else {
SpawnPlayer(LegoGameState::e_unk28, TRUE, 0); SpawnPlayer(LegoGameState::e_garageExited, TRUE, 0);
m_lastAction = IsleScript::c_noneIsle; m_lastAction = IsleScript::c_noneIsle;
m_lastAnimation = IsleScript::c_noneIsle; m_lastAnimation = IsleScript::c_noneIsle;
m_state->m_startTime = Timer()->GetTime(); m_state->m_startTime = Timer()->GetTime();
@@ -486,14 +486,14 @@ MxLong TowTrack::HandleControl(LegoControlManagerNotificationParam& p_param)
switch (p_param.m_clickedObjectId) { switch (p_param.m_clickedObjectId) {
case IsleScript::c_TowTrackArms_Ctl: case IsleScript::c_TowTrackArms_Ctl:
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_TowInfo_Ctl: case IsleScript::c_TowInfo_Ctl:
((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain); ((Isle*) CurrentWorld())->SetDestLocation(LegoGameState::e_infomain);
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
Exit(); Exit();
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
result = 1; result = 1;
break; break;
case IsleScript::c_TowHorn_Ctl: case IsleScript::c_TowHorn_Ctl:

View File

@@ -784,11 +784,11 @@ void LegoCarBuild::FUN_100243a0()
TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE);
break; break;
case Jetski_Actor: case Jetski_Actor:
m_destLocation = LegoGameState::Area::e_unk17; m_destLocation = LegoGameState::Area::e_jetskibuildExited;
TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE);
break; break;
case RaceCar_Actor: case RaceCar_Actor:
m_destLocation = LegoGameState::Area::e_unk20; m_destLocation = LegoGameState::Area::e_racecarbuildExited;
TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::TransitionType::e_mosaic, 50, FALSE, FALSE);
} }
} }

View File

@@ -868,17 +868,17 @@ void LegoGameState::SwitchArea(Area p_area)
VideoManager()->SetUnk0x554(TRUE); VideoManager()->SetUnk0x554(TRUE);
InvokeAction(Extra::ActionType::e_opendisk, *g_infodoorScript, InfodoorScript::c__StartUp, NULL); InvokeAction(Extra::ActionType::e_opendisk, *g_infodoorScript, InfodoorScript::c__StartUp, NULL);
break; break;
case e_unk4: case e_infocenterExited:
case e_jetrace2: case e_jetrace2:
case e_jetraceExterior: case e_jetraceExterior:
case e_unk17: case e_jetskibuildExited:
case e_carraceExterior: case e_carraceExterior:
case e_unk20: case e_racecarbuildExited:
case e_unk21: case e_unk21:
case e_pizzeriaExterior: case e_pizzeriaExterior:
case e_garageExterior: case e_garageExterior:
case e_hospitalExterior: case e_hospitalExterior:
case e_unk31: case e_hospitalExited:
case e_policeExterior: case e_policeExterior:
case e_bike: case e_bike:
case e_dunecar: case e_dunecar:
@@ -886,7 +886,7 @@ void LegoGameState::SwitchArea(Area p_area)
case e_copter: case e_copter:
case e_skateboard: case e_skateboard:
case e_jetski: case e_jetski:
case e_unk66: case e_vehicleExited:
LoadIsle(); LoadIsle();
break; break;
case e_elevbott: case e_elevbott:
@@ -948,7 +948,7 @@ void LegoGameState::SwitchArea(Area p_area)
VideoManager()->Get3DManager()->SetFrustrum(90, 0.1f, 250.0f); VideoManager()->Get3DManager()->SetFrustrum(90, 0.1f, 250.0f);
InvokeAction(Extra::ActionType::e_start, *g_isleScript, IsleScript::c_GaraDoor, NULL); InvokeAction(Extra::ActionType::e_start, *g_isleScript, IsleScript::c_GaraDoor, NULL);
break; break;
case e_unk28: { case e_garageExited: {
Act1State* state = (Act1State*) GameState()->GetState("Act1State"); Act1State* state = (Act1State*) GameState()->GetState("Act1State");
LoadIsle(); LoadIsle();
@@ -973,7 +973,7 @@ void LegoGameState::SwitchArea(Area p_area)
VideoManager()->SetUnk0x554(TRUE); VideoManager()->SetUnk0x554(TRUE);
InvokeAction(Extra::ActionType::e_opendisk, *g_hospitalScript, HospitalScript::c__StartUp, NULL); InvokeAction(Extra::ActionType::e_opendisk, *g_hospitalScript, HospitalScript::c__StartUp, NULL);
break; break;
case e_unk33: case e_policeExited:
LoadIsle(); LoadIsle();
SetCameraControllerFromIsle(); SetCameraControllerFromIsle();
UserActor()->ResetWorldTransform(TRUE); UserActor()->ResetWorldTransform(TRUE);

View File

@@ -329,7 +329,7 @@ MxLong GasStation::HandleEndAction(MxEndActionNotificationParam& p_param)
case GasStationState::e_afterAcceptingQuest: case GasStationState::e_afterAcceptingQuest:
m_state->m_state = GasStationState::e_beforeExitingForQuest; m_state->m_state = GasStationState::e_beforeExitingForQuest;
((Act1State*) GameState()->GetState("Act1State"))->m_unk0x018 = 7; ((Act1State*) GameState()->GetState("Act1State"))->m_unk0x018 = 7;
m_destLocation = LegoGameState::e_unk28; m_destLocation = LegoGameState::e_garageExited;
m_radio.Stop(); m_radio.Stop();
BackgroundAudioManager()->Stop(); BackgroundAudioManager()->Stop();
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);

View File

@@ -369,7 +369,7 @@ MxLong Hospital::HandleEndAction(MxEndActionNotificationParam& p_param)
case HospitalState::e_exitToFront: case HospitalState::e_exitToFront:
if (m_unk0x128 == 0) { if (m_unk0x128 == 0) {
m_unk0x128 = 1; m_unk0x128 = 1;
m_destLocation = LegoGameState::e_unk31; m_destLocation = LegoGameState::e_hospitalExited;
DeleteObjects(&m_atomId, HospitalScript::c_hho002cl_RunAnim, HospitalScript::c_hho006cl_RunAnim); DeleteObjects(&m_atomId, HospitalScript::c_hho002cl_RunAnim, HospitalScript::c_hho006cl_RunAnim);
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
@@ -421,7 +421,7 @@ MxLong Hospital::HandleButtonDown(LegoControlManagerNotificationParam& p_param)
act1State->m_unk0x018 = 9; act1State->m_unk0x018 = 9;
m_destLocation = LegoGameState::e_unk31; m_destLocation = LegoGameState::e_hospitalExited;
DeleteObjects( DeleteObjects(
&m_atomId, &m_atomId,
HospitalScript::c_hho002cl_RunAnim, HospitalScript::c_hho002cl_RunAnim,
@@ -590,7 +590,7 @@ MxBool Hospital::HandleControl(LegoControlManagerNotificationParam& p_param)
else if (m_unk0x128 == 0) { else if (m_unk0x128 == 0) {
m_unk0x128 = 1; m_unk0x128 = 1;
m_hospitalState->m_state = HospitalState::e_exitImmediately; m_hospitalState->m_state = HospitalState::e_exitImmediately;
m_destLocation = LegoGameState::e_unk31; m_destLocation = LegoGameState::e_hospitalExited;
DeleteObjects(&m_atomId, HospitalScript::c_hho002cl_RunAnim, HospitalScript::c_hho006cl_RunAnim); DeleteObjects(&m_atomId, HospitalScript::c_hho002cl_RunAnim, HospitalScript::c_hho006cl_RunAnim);
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);

View File

@@ -119,7 +119,7 @@ MxLong InfocenterDoor::HandleControl(LegoControlManagerNotificationParam& p_para
if (GameState()->GetActorId() != LegoActor::c_none) { if (GameState()->GetActorId() != LegoActor::c_none) {
InfocenterState* state = (InfocenterState*) GameState()->GetState("InfocenterState"); InfocenterState* state = (InfocenterState*) GameState()->GetState("InfocenterState");
if (state->HasRegistered()) { if (state->HasRegistered()) {
m_destLocation = LegoGameState::e_unk4; m_destLocation = LegoGameState::e_infocenterExited;
} }
else { else {
MxDSAction action; MxDSAction action;

View File

@@ -430,7 +430,7 @@ MxLong Isle::HandleControl(LegoControlManagerNotificationParam& p_param)
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
break; break;
case IsleScript::c_PoliDoor_Door_Ctl: case IsleScript::c_PoliDoor_Door_Ctl:
m_destLocation = LegoGameState::e_unk33; m_destLocation = LegoGameState::e_policeExited;
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
break; break;
case IsleScript::c_GaraDoor_LeftArrow_Ctl: case IsleScript::c_GaraDoor_LeftArrow_Ctl:
@@ -440,7 +440,7 @@ MxLong Isle::HandleControl(LegoControlManagerNotificationParam& p_param)
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
break; break;
case IsleScript::c_GaraDoor_Door_Ctl: case IsleScript::c_GaraDoor_Door_Ctl:
m_destLocation = LegoGameState::e_unk28; m_destLocation = LegoGameState::e_garageExited;
TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE); TransitionManager()->StartTransition(MxTransitionManager::e_mosaic, 50, FALSE, FALSE);
break; break;
} }
@@ -712,7 +712,7 @@ void Isle::Enable(MxBool p_enable)
if (GameState()->m_currentArea == LegoGameState::e_pizzeriaExterior) { if (GameState()->m_currentArea == LegoGameState::e_pizzeriaExterior) {
AnimationManager()->FUN_10064740(NULL); AnimationManager()->FUN_10064740(NULL);
} }
else if (GameState()->m_currentArea == LegoGameState::e_unk66) { else if (GameState()->m_currentArea == LegoGameState::e_vehicleExited) {
Mx3DPointFloat position(UserActor()->GetROI()->GetWorldPosition()); Mx3DPointFloat position(UserActor()->GetROI()->GetWorldPosition());
Mx3DPointFloat sub(-21.375f, 0.0f, -41.75f); Mx3DPointFloat sub(-21.375f, 0.0f, -41.75f);
@@ -820,7 +820,7 @@ void Isle::Enable(MxBool p_enable)
TRUE, TRUE,
IslePathActor::c_spawnBit1 | IslePathActor::c_playMusic | IslePathActor::c_spawnBit3 IslePathActor::c_spawnBit1 | IslePathActor::c_playMusic | IslePathActor::c_spawnBit3
); );
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
EnableAnimations(TRUE); EnableAnimations(TRUE);
m_jukebox->StartAction(); m_jukebox->StartAction();
break; break;
@@ -863,21 +863,21 @@ void Isle::FUN_10032620()
VideoManager()->Get3DManager()->SetFrustrum(90.0, 0.1, 250.0); VideoManager()->Get3DManager()->SetFrustrum(90.0, 0.1, 250.0);
switch (GameState()->m_currentArea) { switch (GameState()->m_currentArea) {
case LegoGameState::e_unk66: { case LegoGameState::e_vehicleExited: {
MxMatrix mat(UserActor()->GetROI()->GetLocal2World()); MxMatrix mat(UserActor()->GetROI()->GetLocal2World());
LegoPathBoundary* boundary = UserActor()->GetBoundary(); LegoPathBoundary* boundary = UserActor()->GetBoundary();
((IslePathActor*) UserActor())->VTable0xec(mat, boundary, TRUE); ((IslePathActor*) UserActor())->VTable0xec(mat, boundary, TRUE);
break; break;
} }
case LegoGameState::e_unk4: case LegoGameState::e_infocenterExited:
case LegoGameState::e_jetraceExterior: case LegoGameState::e_jetraceExterior:
case LegoGameState::e_unk17: case LegoGameState::e_jetskibuildExited:
case LegoGameState::e_carraceExterior: case LegoGameState::e_carraceExterior:
case LegoGameState::e_unk20: case LegoGameState::e_racecarbuildExited:
case LegoGameState::e_pizzeriaExterior: case LegoGameState::e_pizzeriaExterior:
case LegoGameState::e_garageExterior: case LegoGameState::e_garageExterior:
case LegoGameState::e_hospitalExterior: case LegoGameState::e_hospitalExterior:
case LegoGameState::e_unk31: case LegoGameState::e_hospitalExited:
case LegoGameState::e_policeExterior: case LegoGameState::e_policeExterior:
((IslePathActor*) UserActor()) ((IslePathActor*) UserActor())
->SpawnPlayer( ->SpawnPlayer(
@@ -885,7 +885,7 @@ void Isle::FUN_10032620()
TRUE, TRUE,
IslePathActor::c_spawnBit1 | IslePathActor::c_playMusic | IslePathActor::c_spawnBit3 IslePathActor::c_spawnBit1 | IslePathActor::c_playMusic | IslePathActor::c_spawnBit3
); );
GameState()->m_currentArea = LegoGameState::e_unk66; GameState()->m_currentArea = LegoGameState::e_vehicleExited;
break; break;
} }
} }
@@ -955,7 +955,7 @@ MxLong Isle::HandleTransitionEnd()
VariableTable()->SetVariable("VISIBILITY", "Hide Gas"); VariableTable()->SetVariable("VISIBILITY", "Hide Gas");
FUN_10032d30(IsleScript::c_GaraDoor_Background_Bitmap, JukeboxScript::c_JBMusic2, "LCAMZG1,90", FALSE); FUN_10032d30(IsleScript::c_GaraDoor_Background_Bitmap, JukeboxScript::c_JBMusic2, "LCAMZG1,90", FALSE);
break; break;
case LegoGameState::e_unk28: case LegoGameState::e_garageExited:
GameState()->SwitchArea(m_destLocation); GameState()->SwitchArea(m_destLocation);
GameState()->StopArea(LegoGameState::e_previousArea); GameState()->StopArea(LegoGameState::e_previousArea);
m_destLocation = LegoGameState::e_undefined; m_destLocation = LegoGameState::e_undefined;
@@ -965,7 +965,7 @@ MxLong Isle::HandleTransitionEnd()
SetAppCursor(e_cursorArrow); SetAppCursor(e_cursorArrow);
SetIsWorldActive(TRUE); SetIsWorldActive(TRUE);
break; break;
case LegoGameState::e_unk33: case LegoGameState::e_policeExited:
GameState()->SwitchArea(m_destLocation); GameState()->SwitchArea(m_destLocation);
GameState()->StopArea(LegoGameState::e_previousArea); GameState()->StopArea(LegoGameState::e_previousArea);
m_destLocation = LegoGameState::e_undefined; m_destLocation = LegoGameState::e_undefined;