void SceneScriptCT08::InitializeScene() { if (Game_Flag_Query(kFlagChapter3Intro)) { Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); Outtake_Play(kOuttakeMovieB1, false, -1); if (Game_Flag_Query(kFlagLucyIsReplicant)) { Outtake_Play(kOuttakeMovieB2, false, -1); } else if (Game_Flag_Query(kFlagDektoraIsReplicant)) { Outtake_Play(kOuttakeMovieB3, false, -1); } else { Outtake_Play(kOuttakeMovieB4, false, -1); } Outtake_Play(kOuttakeMovieB5, false, -1); Game_Flag_Reset(kFlagChapter3Intro); } Actor_Force_Stop_Walking(kActorMcCoy); if (Game_Flag_Query(kFlagCT51toCT08)) { Setup_Scene_Information( -11.0f, 0.0f, -156.0f, 769); } else if (Game_Flag_Query(kFlagCT06toCT08)) { Setup_Scene_Information(-143.0f, 0.0f, -92.0f, 420); } else { Setup_Scene_Information(-183.0f, 0.0f, 128.0f, 205); } Scene_Exit_Add_2D_Exit(0, 0, 0, 30, 479, 3); Scene_Exit_Add_2D_Exit(1, 389, 0, 639, 303, 0); Scene_Exit_Add_2D_Exit(2, 115, 87, 137, 267, 3); if (Game_Flag_Query(kFlagMcCoyTiedDown)) { Scene_2D_Region_Add(0, 185, 185, 230, 230); } Ambient_Sounds_Add_Looping_Sound(381, 100, 1, 1); Ambient_Sounds_Add_Looping_Sound(205, 20, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Sound( 67, 80, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound( 68, 50, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(379, 5, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(380, 5, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(377, 5, 180, 50, 100, 0, 0, -101, -101, 0, 0); if (Game_Flag_Query(kFlagCT51toCT08)) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false); Scene_Loop_Set_Default(1); } else { Scene_Loop_Set_Default(1); } }
void SceneScriptHC02::InitializeScene() { Music_Play(4, 45, -60, 1, -1, 1, 3); if (Game_Flag_Query(kFlagHC04toHC02)) { Setup_Scene_Information(-88.0f, 0.14f, -463.0f, 540); } else { Setup_Scene_Information(-57.0f, 0.14f, 83.0f, 746); } Scene_Exit_Add_2D_Exit(0, 589, 255, 639, 479, 1); Scene_Exit_Add_2D_Exit(1, 505, 0, 639, 170, 0); Ambient_Sounds_Add_Looping_Sound(103, 50, 50, 0); Ambient_Sounds_Add_Looping_Sound(280, 50, 50, 0); Ambient_Sounds_Add_Sound(252, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(254, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(255, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(256, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(257, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(258, 3, 60, 33, 33, -60, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(259, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(260, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(261, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(262, 3, 60, 33, 33, -100, 20, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(242, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(243, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(244, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(245, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(246, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(247, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(248, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(249, 3, 30, 14, 14, 30, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(238, 3, 50, 20, 20, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(240, 3, 50, 25, 25, -100, 100, -101, -101, 0, 0); if (Game_Flag_Query(kFlagHC01toHC02)) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false); Scene_Loop_Set_Default(1); Game_Flag_Reset(kFlagHC01toHC02); } else { Scene_Loop_Set_Default(1); } }
void SceneScriptUG10::SceneLoaded() { Obstacle_Object("SLUICEGATE_LEVER", true); if (Global_Variable_Query(kVariableChapter) == 4 && !Game_Flag_Query(kFlagUG10GateOpen) && Game_Flag_Query(kFlagCT04HomelessBodyThrownAway) && !Game_Flag_Query(kFlagUG03DeadHomeless) ) { Scene_Loop_Set_Default(1); Scene_Loop_Start_Special(kSceneLoopModeOnce, 6, true); Game_Flag_Set(kFlagUG03DeadHomeless); //return true; } //return false; }
bool SceneScriptUG01::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("PIPES_FG_LFT", objectName)) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -9.0f, -50.13f, -148.0f, 0, 1, false, 0) && !Game_Flag_Query(kFlagUG01SteamOff) ) { Actor_Says(kActorMcCoy, 8525, 13); Scene_Loop_Set_Default(3); Scene_Loop_Start_Special(kSceneLoopModeOnce, 2, true); Game_Flag_Set(kFlagUG01SteamOff); } else { Actor_Says(kActorMcCoy, 8525, 13); } } return false; }
void SceneScriptPS02::PlayerWalkedIn() { Game_Flag_Reset(718); Actor_Face_XYZ(kActorMcCoy, 0.0f, 0.0f, 450.0f, true); Player_Gains_Control(); activateElevator(); Player_Loses_Control(); if (Game_Flag_Query(kFlagPS02toPS01) ) { Set_Enter(kSetPS01, kScenePS01); Scene_Loop_Start_Special(1, 3, true); } else if (Game_Flag_Query(kFlagPS02toPS05) ) { Set_Enter(kSetPS05, kScenePS05); Scene_Loop_Start_Special(1, 3, true); } else if (Game_Flag_Query(kFlagPS02toPS07) ) { Set_Enter(kSetPS07, kScenePS07); Scene_Loop_Start_Special(1, 3, true); } else if (Game_Flag_Query(kFlagPS02toPS03) ) { Set_Enter(kSetPS03, kScenePS03); Scene_Loop_Start_Special(1, 3, true); } else if (Game_Flag_Query(kFlagPS02toPS09) ) { Set_Enter(kSetPS09, kScenePS09); Scene_Loop_Start_Special(1, 3, true); } //return true; }
void ScriptHF01::InitializeScene() { if (Game_Flag_Query(617)) { Setup_Scene_Information(243.94f, 8.0f, -341.9f, 342); } else if (Game_Flag_Query(313)) { Setup_Scene_Information(-202.0f, 0.0f, -619.0f, 407); } else if (Game_Flag_Query(311)) { Setup_Scene_Information(124.0f, 8.0f, -880.0f, 455); } else if (Game_Flag_Query(309)) { Setup_Scene_Information(406.0f, 8.0f, -813.0f, 455); } else { Setup_Scene_Information(100.0f, 0.0f, -260.0f, 0); } Scene_Exit_Add_2D_Exit(0, 81, 226, 169, 321, 0); if (!Game_Flag_Query(663)) { Scene_Exit_Add_2D_Exit(1, 304, 239, 492, 339, 0); Scene_Exit_Add_2D_Exit(2, 560, 231, 639, 360, 0); if (Game_Flag_Query(256)) { Scene_Exit_Add_2D_Exit(3, 0, 311, 66, 417, 2); } } Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1); Ambient_Sounds_Add_Looping_Sound(340, 25, 0, 1); Ambient_Sounds_Add_Looping_Sound(81, 60, 100, 1); Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(68, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(69, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(375, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(376, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(377, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); if (Game_Flag_Query(256)) { if (!Game_Flag_Query(309) && !Game_Flag_Query(311) && !Game_Flag_Query(313)) { Scene_Loop_Start_Special(0, 0, 0); } Scene_Loop_Set_Default(1); } else if (Game_Flag_Query(663)) { Scene_Loop_Set_Default(1); } else { Scene_Loop_Set_Default(5); } }
bool SceneScriptTB05::ClickedOnExit(int exitId) { if (exitId == 0) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 151.53f, -205.0f, 12, 1, false, 0)) { Game_Flag_Set(97); Set_Enter(73, kSceneTB06); Scene_Loop_Start_Special(1, 2, 1); } return true; } if (exitId == 1) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 14.0f, 147.12f, 123.0f, 0, 1, false, 0)) { Game_Flag_Set(95); Set_Enter(17, kSceneTB02); } return true; } return false; }
void ScriptNR08::InitializeScene() { if (Actor_Query_Goal_Number(1) == 231) { Setup_Scene_Information(-1174.1f, 0.32f, 303.9f, 435); } else if (Game_Flag_Query(546)) { Scene_Loop_Start_Special(0, 0, 0); Scene_Loop_Set_Default(1); Setup_Scene_Information(-1102.88f, 0.0f, 107.43f, 0); if (Actor_Query_Goal_Number(3) == 210) { Music_Stop(1); } } else if (Game_Flag_Query(439)) { Setup_Scene_Information(-724.7f, 0.0f, 384.24f, 1000); Game_Flag_Reset(439); } else if (Game_Flag_Query(615)) { Setup_Scene_Information(-1663.33f, 0.65f, 342.84f, 330); Game_Flag_Reset(615); } Scene_Exit_Add_2D_Exit(0, 610, 0, 639, 479, 1); if (Actor_Query_Goal_Number(3) != 210) { Scene_Exit_Add_2D_Exit(1, 0, 309, 30, 398, 3); Scene_Exit_Add_2D_Exit(2, 520, 330, 556, 386, 0); } Ambient_Sounds_Add_Looping_Sound(280, 50, 38, 0); Ambient_Sounds_Add_Sound(252, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(254, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(255, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(256, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(257, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(258, 3, 60, 14, 14, 60, 90, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(259, 3, 60, 16, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(260, 3, 60, 16, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(261, 3, 60, 16, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(262, 3, 60, 16, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Scene_Loop_Set_Default(1); }
void SceneScriptMA06::activateElevator() { Game_Flag_Reset(kFlagMA06toMA01); Game_Flag_Reset(kFlagMA06ToMA02); Game_Flag_Reset(kFlagMA06toMA07); while (true) { if (Game_Flag_Query(kFlagMA06ToMA02)) { break; } if (Game_Flag_Query(kFlagMA06toMA01)) { break; } if (Game_Flag_Query(kFlagMA06toMA07)) { break; } Actor_Says(kActorAnsweringMachine, 80, 3); Player_Gains_Control(); int floor = Elevator_Activate(1); Player_Loses_Control(); Scene_Loop_Start_Special(kSceneLoopMode2, 1, true); if (floor > 1) { Game_Flag_Set(kFlagMA06toMA07); } else if (floor == 1) { if (Game_Flag_Query(kFlagMA01Locked)) { Game_Flag_Set(kFlagMA06toMA01); } else { Sound_Play(412, 100, 0, 0, 50); Delay(500); Actor_Says(kActorAnsweringMachine, 610, 3); } } else { Actor_Says(kActorMcCoy, 2940, 18); if (Global_Variable_Query(1) == 4 && Game_Flag_Query(655)) { Sound_Play(412, 100, 0, 0, 50); Delay(500); Actor_Says(kActorAnsweringMachine, 610, 3); Delay(500); Actor_Says(kActorMcCoy, 8527, 3); } else { Game_Flag_Set(kFlagMA06ToMA02); Actor_Says(kActorAnsweringMachine, 90, 3); } } } }
void SceneScriptHC04::InitializeScene() { if (Game_Flag_Query(108)) { Setup_Scene_Information(-112.0f, 0.14f, -655.0f, 460); Game_Flag_Reset(108); } else { Setup_Scene_Information(-88.0f, 0.14f, -463.0f, 1013); } Music_Play(4, 14, -90, 1, -1, 1, 2); Actor_Put_In_Set(kActorIsabella, 8); Actor_Set_At_XYZ(kActorIsabella, -210.0f, 0.0f, -445.0f, 250); Scene_Exit_Add_2D_Exit(0, 539, 51, 639, 309, 0); Scene_Exit_Add_2D_Exit(1, 0, 456, 639, 479, 2); Ambient_Sounds_Add_Looping_Sound(103, 50, 50, 0); Ambient_Sounds_Add_Looping_Sound(329, 16, 16, 0); Ambient_Sounds_Add_Looping_Sound(330, 40, 40, 0); Ambient_Sounds_Add_Sound(182, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(184, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(185, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(186, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(188, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(189, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(191, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(192, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(195, 5, 70, 14, 16, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(252, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(252, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(254, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(255, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(256, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(257, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(258, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(259, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(260, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(261, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(262, 3, 60, 16, 16, -100, -100, -101, -101, 0, 0); if (Game_Flag_Query(110)) { Scene_Loop_Start_Special(0, 0, 0); Scene_Loop_Set_Default(1); Game_Flag_Reset(110); } else { Scene_Loop_Set_Default(1); } }
void SceneScriptUG15::SceneFrameAdvanced(int frame) { if (Actor_Query_Goal_Number(kActorFreeSlotA) == kGoalFreeSlotAUG15Wait) { float x, y, z; Actor_Query_XYZ(kActorMcCoy, &x, &y, &z); if (-160.0f <= x && 220.0f > z ) { Actor_Set_Goal_Number(kActorFreeSlotA, kGoalFreeSlotAUG15WalkOut); } } if (frame == 61) { Ambient_Sounds_Play_Sound(583, 80, 0, 0, 99); } if ( Game_Flag_Query(kFlagUG15BridgeWillBreak) && !Game_Flag_Query(kFlagUG15BridgeBroken) ) { float x, y, z; Actor_Query_XYZ(kActorMcCoy, &x, &y, &z); if ( -180.0f <= x && 220.0f > z && !Game_Flag_Query(kFlagUG15BridgeBreaks) ) { Game_Flag_Set(kFlagUG15BridgeBreaks); Game_Flag_Set(kFlagUG15BridgeBroken); Scene_Loop_Set_Default(kUG15LoopMainLoopBridgeBroken); Scene_Loop_Start_Special(kSceneLoopModeOnce, kUG15LoopBridgeBreaks, true); Actor_Set_Goal_Number(kActorMcCoy, kGoalMcCoyUG15Fall); Actor_Query_XYZ(kActorFreeSlotA, &x, &y, &z); if (-200.0f < x && -62.0f > x ) { Actor_Set_Goal_Number(kActorFreeSlotA, kGoalFreeSlotAUG15Fall); } } } // return false; }
void SceneScriptBB01::InitializeScene() { if (Game_Flag_Query(265)) { Setup_Scene_Information(-253.0f, 9.0f, 715.0f, 266); } else if (Game_Flag_Query(263)) { Setup_Scene_Information(-128.0f, 9.0f, 342.0f, 266); } else { Setup_Scene_Information(43.0f, 0.0f, 1058.0f, 0); } Scene_Exit_Add_2D_Exit(0, 0, 0, 72, 299, 3); Scene_Exit_Add_2D_Exit(1, 151, 218, 322, 290, 3); if (Game_Flag_Query(kFlagSpinnerToBB01)) { Scene_Exit_Add_2D_Exit(2, 0, 311, 312, 479, 2); } Ambient_Sounds_Add_Looping_Sound(54, 50, 0, 1); Ambient_Sounds_Add_Looping_Sound(105, 25, -100, 0); Ambient_Sounds_Add_Sound(82, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(83, 5, 60, 40, 65, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(84, 5, 60, 40, 60, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(67, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(66, 5, 80, 20, 25, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(378, 5, 120, 25, 33, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(379, 5, 120, 25, 33, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(380, 5, 120, 25, 33, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); if (Game_Flag_Query(kFlagSpinnerToBB01) && !Game_Flag_Query(265) && !Game_Flag_Query(263)) { Scene_Loop_Start_Special(0, 0, 0); Scene_Loop_Set_Default(1); } else if (Game_Flag_Query(kFlagSpinnerToBB01) && Game_Flag_Query(265)) { Scene_Loop_Set_Default(1); } else if (Game_Flag_Query(kFlagSpinnerToBB01) && Game_Flag_Query(263)) { Scene_Loop_Set_Default(1); } else { Scene_Loop_Set_Default(5); } }
void SceneScriptMA01::InitializeScene() { Setup_Scene_Information(381.0f, 0.0f, 54.0f, 992); if (Game_Flag_Query(kFlagSpinnerAtMA01)) { Setup_Scene_Information( 381.0f, 0.0f, 54.0f, 992); } if (Game_Flag_Query(kFlagMA06toMA01)) { Setup_Scene_Information(1446.0f, 0.0f, -725.0f, 660); } Scene_Exit_Add_2D_Exit(kMA01ExitMA06, 328, 132, 426, 190, 0); if (Game_Flag_Query(kFlagSpinnerAtMA01)) { Scene_Exit_Add_2D_Exit(kMA01ExitSpinner, 234, 240, 398, 328, 2); } Ambient_Sounds_Add_Looping_Sound(kSfxROOFRAN1, 90, 0, 1); Ambient_Sounds_Add_Looping_Sound(kSfxROOFAIR1, 40, -100, 1); Ambient_Sounds_Add_Looping_Sound(kSfxROOFRMB1, 40, 100, 1); Ambient_Sounds_Add_Sound(kSfxSPIN2B, 10, 100, 25, 50, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxSPIN3A, 10, 100, 25, 50, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER2, 10, 70, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER3, 10, 70, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER4, 10, 70, 50, 100, 0, 0, -101, -101, 0, 0); if (Game_Flag_Query(kFlagMA06toMA01)) { Scene_Loop_Set_Default(kMA01LoopMainLoop); Game_Flag_Reset(kFlagMA06toMA01); } else { Actor_Set_Invisible(kActorMcCoy, true); Game_Flag_Set(kFlagArrivedFromSpinner2); Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kMA01LoopInshotRoof, false); Scene_Loop_Set_Default(kMA01LoopMainLoop); } if (Game_Flag_Query(kFlagMA01GaffApproachMcCoy)) { Actor_Set_Goal_Number(kActorGaff, kGoalGaffMA01ApproachMcCoy); Game_Flag_Reset(kFlagMA01GaffApproachMcCoy); } }
void SceneScriptUG04::InitializeScene() { if (Game_Flag_Query(kFlagUG05toUG04)) { Setup_Scene_Information( 0.0f, -1.74f, -2400.0f, 496); Game_Flag_Reset(kFlagUG05toUG04); } else if (Game_Flag_Query(kFlagUG06toUG04)) { Setup_Scene_Information( 164.0f, 11.87f, -1013.0f, 83); } else { Setup_Scene_Information(-172.0f, 16.29f, -735.0f, 380); Game_Flag_Reset(kFlagUG03toUG04); } Scene_Exit_Add_2D_Exit(0, 123, 308, 159, 413, 3); if (Global_Variable_Query(kVariableChapter) > 3) { Scene_Exit_Add_2D_Exit(1, 256, 333, 290, 373, 0); } Scene_Exit_Add_2D_Exit(2, 344, 298, 451, 390, 1); Ambient_Sounds_Add_Looping_Sound(331, 25, 0, 1); Ambient_Sounds_Add_Looping_Sound(332, 40, 0, 1); Ambient_Sounds_Add_Looping_Sound(333, 40, 0, 1); Ambient_Sounds_Add_Sound(234, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(224, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(225, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(227, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(229, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(368, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(369, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(370, 2, 120, 11, 12, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(235, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(392, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(394, 2, 190, 12, 16, -100, 100, -100, 100, 0, 0); Ambient_Sounds_Add_Sound(303, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(304, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(305, 5, 50, 17, 37, -100, 100, -101, -101, 0, 0); Scene_Loop_Start_Special(kSceneLoopModeLoseControl, 0, false); Scene_Loop_Set_Default(1); }
void ScriptNR08::SceneFrameAdvanced(int frame) { if (!Music_Is_Playing()) { sub_4021B4(); } Set_Fade_Color(0, 0, 0); if (frame >= 76 && frame < 91) { Set_Fade_Density((frame - 76) / 14.0f); Music_Stop(3); Ambient_Sounds_Play_Sound(566, 27, 0, 99, 0); } else if (frame >= 91 && frame < 120) { Actor_Set_Invisible(0, true); Set_Fade_Density(1.0f); } else if (frame >= 120 && frame < 135) { Set_Fade_Density((134 - frame) / 14.0f); Music_Play(7, 61, 0, 1, -1, 0, 0); } else { Actor_Set_Invisible(0, false); Set_Fade_Density(0.0f); } if (Game_Flag_Query(651) && !Game_Flag_Query(636)) { Game_Flag_Set(636); Scene_Exits_Disable(); Scene_Loop_Set_Default(1); Scene_Loop_Start_Special(2, 3, 1); } if (frame == 95) { Actor_Put_In_Set(3, 91); Actor_Set_At_Waypoint(3, 33, 0); Actor_Change_Animation_Mode(3, 0); Actor_Set_Goal_Number(3, 200); Scene_Exit_Add_2D_Exit(1, 0, 309, 30, 398, 3); Scene_Exit_Add_2D_Exit(2, 520, 330, 556, 386, 0); } if (frame == 130) { Scene_Exits_Enable(); } //return false; }
void SceneScriptCT04::InitializeScene() { if (Game_Flag_Query(72)) { Scene_Loop_Start_Special(0, 0, 0); Scene_Loop_Set_Default(1); Setup_Scene_Information(-150.0f, -621.3f, 357.0f, 533); } else { Scene_Loop_Set_Default(1); Setup_Scene_Information(-82.86f, -621.3f, 769.03f, 1020); } Scene_Exit_Add_2D_Exit(0, 590, 0, 639, 479, 1); Scene_Exit_Add_2D_Exit(1, 194, 84, 320, 274, 0); Ambient_Sounds_Add_Looping_Sound(54, 50, 1, 1); Ambient_Sounds_Add_Looping_Sound(56, 15, -100, 1); Ambient_Sounds_Add_Looping_Sound(105, 34, 100, 1); Ambient_Sounds_Add_Sound(68, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(69, 10, 40, 33, 50, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Sound(376, 10, 60, 33, 50, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(377, 10, 60, 33, 50, -100, 100, -101, -101, 0, 0); }
void SceneScriptMA06::PlayerWalkedIn() { Loop_Actor_Walk_To_XYZ(kActorMcCoy, 40.0f, 1.35f, 0.0f, 0, 0, false, 0); Actor_Face_Object(kActorMcCoy, "panel", true); Delay(500); activateElevator(); if (isElevatorOnDifferentFloor()) { Sound_Play(114, 25, 0, 0, 50); Delay(4000); } Game_Flag_Reset(kFlagMA01toMA06); Game_Flag_Reset(kFlagMA02toMA06); Game_Flag_Reset(kFlagMA07toMA06); if (Game_Flag_Query(kFlagMA06toMA01)) { Set_Enter(49, 48); } else if (Game_Flag_Query(kFlagMA06ToMA02)) { Set_Enter(10, 49); } else { // kFlagMA06ToMA07 Set_Enter(53, 53); } Scene_Loop_Start_Special(kSceneLoopModeChangeSet, 3, true); Sound_Play(208, 100, 50, 50, 50); //return true; }
bool SceneScriptAR01::ClickedOnExit(int exitId) { if (exitId == kAR01ExitHC01) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -358.0, 0.0, -149.0, 0, true, false, false)) { Loop_Actor_Walk_To_XYZ(kActorMcCoy, -477.0, 0.0, -149.0, 0, false, false, false); Game_Flag_Set(kFlagAR01toHC01); Game_Flag_Set(kFlagHC01GuzzaPrepare); Game_Flag_Reset(kFlagMcCoyInAnimoidRow); Game_Flag_Set(kFlagMcCoyInHawkersCircle); Set_Enter(kSetHC01_HC02_HC03_HC04, kSceneHC01); Actor_Set_Goal_Number(kActorFishDealer, 3); } return true; } if (exitId == kAR01ExitAR02) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -182.0, 0.0, -551.0, 0, true, false, false)) { Game_Flag_Set(kFlagAR01toAR02); Async_Actor_Walk_To_XYZ(kActorMcCoy, -222.0, 0.0, -690.0, 0, false); Set_Enter(kSetAR01_AR02, kSceneAR02); #if BLADERUNNER_ORIGINAL_BUGS // Causes the fish dealer to blink out of existence // during the transition to AR02 Actor_Set_Goal_Number(kActorFishDealer, 3); #endif // BLADERUNNER_ORIGINAL_BUGS } return true; } if (exitId == kAR01ExitSpinner) { if (Game_Flag_Query(kFlagDNARowAvailable)) { Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true); } int v1 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, -164.0f, 0.0f, 332.0f, 0, true, false, false); Actor_Face_Heading(kActorMcCoy, 545, false); if (Actor_Query_Goal_Number(kActorIzo) >= kGoalIzoTakePhoto && Actor_Query_Goal_Number(kActorIzo) <= kGoalIzoEscape ) { Player_Loses_Control(); Actor_Put_In_Set(kActorIzo, kSetAR01_AR02); Actor_Set_At_XYZ(kActorIzo, -448.0, 0.0, 130.0, 0); Loop_Actor_Walk_To_XYZ(kActorIzo, -323.0f, 0.64f, 101.74f, 48, false, true, false); Loop_Actor_Walk_To_Actor(kActorIzo, kActorMcCoy, 48, false, true); Actor_Face_Actor(kActorIzo, kActorMcCoy, true); Actor_Change_Animation_Mode(kActorIzo, kAnimationModeCombatAttack); Actor_Says(kActorMcCoy, 1800, 21); Actor_Change_Animation_Mode(kActorMcCoy, 48); Player_Gains_Control(); Actor_Retired_Here(kActorMcCoy, 12, 48, 1, kActorIzo); } else if (!v1) { if ( Game_Flag_Query(kFlagDNARowAvailable) && !Game_Flag_Query(kFlagDNARowAvailableTalk) ) { Actor_Voice_Over(4310, kActorVoiceOver); Actor_Voice_Over(4320, kActorVoiceOver); Actor_Voice_Over(4330, kActorVoiceOver); Actor_Voice_Over(4340, kActorVoiceOver); Actor_Voice_Over(4350, kActorVoiceOver); Game_Flag_Set(kFlagDNARowAvailableTalk); } Game_Flag_Reset(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagMcCoyInHysteriaHall); Game_Flag_Reset(kFlagMcCoyInAnimoidRow); int spinnerDest = Spinner_Interface_Choose_Dest(kAR01LoopDoorAnim, false); Actor_Face_Heading(kActorMcCoy, 545, false); switch (spinnerDest) { case kSpinnerDestinationPoliceStation: Game_Flag_Set(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtPS01); Set_Enter(kSetPS01, kScenePS01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationMcCoysApartment: Game_Flag_Set(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtMA01); Set_Enter(kSetMA01, kSceneMA01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationRuncitersAnimals: Game_Flag_Set(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtRC01); Set_Enter(kSetRC01, kSceneRC01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationChinatown: Game_Flag_Set(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtCT01); Set_Enter(kSetCT01_CT12, kSceneCT01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationTyrellBuilding: Game_Flag_Set(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtTB02); Set_Enter(kSetTB02_TB03, kSceneTB02); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationDNARow: Game_Flag_Set(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtDR01); Set_Enter(kSetDR01_DR02_DR04, kSceneDR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationBradburyBuilding: Game_Flag_Set(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtBB01); Set_Enter(kSetBB01, kSceneBB01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationNightclubRow: Game_Flag_Set(kFlagMcCoyInNightclubRow); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtNR01); Set_Enter(kSetNR01, kSceneNR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; case kSpinnerDestinationHysteriaHall: Game_Flag_Set(kFlagMcCoyInHysteriaHall); Game_Flag_Reset(kFlagSpinnerAtAR01); Game_Flag_Set(kFlagSpinnerAtHF01); Set_Enter(kSetHF01, kSceneHF01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kAR01LoopOutshot, true); break; default: Game_Flag_Set(kFlagMcCoyInAnimoidRow); Actor_Set_Invisible(kActorMcCoy, false); break; } } return true; } return false; }
bool ScriptHF01::ClickedOnExit(int exitId) { if (exitId == 0) { if (!Loop_Actor_Walk_To_XYZ(0, -202.0f, 8.0f, -619.0f, 0, 1, false, 0)) { Game_Flag_Set(312); Set_Enter(41, 38); } return true; } if (exitId == 1) { if (!Loop_Actor_Walk_To_XYZ(0, 124.0f, 8.0f, -724.0f, 0, 1, false, 0)) { Loop_Actor_Walk_To_XYZ(0, 124.0f, 8.0f, -880.0f, 0, 0, false, 0); Game_Flag_Set(310); Set_Enter(39, 36); } return true; } if (exitId == 2) { if (!Loop_Actor_Walk_To_XYZ(0, 406.0f, 8.0f, -717.0f, 0, 1, false, 0)) { Loop_Actor_Walk_To_XYZ(0, 406.0f, 8.0f, -813.0f, 0, 0, false, 0); Game_Flag_Set(308); Set_Enter(38, 35); } return true; } if (exitId == 3) { if (!Loop_Actor_Walk_To_XYZ(0, 100.0f, 0.0f, -260.0f, 0, 1, false, 0)) { Game_Flag_Reset(176); Game_Flag_Reset(182); Game_Flag_Reset(179); Game_Flag_Reset(178); Game_Flag_Reset(258); Game_Flag_Reset(257); int spinnerDest = Spinner_Interface_Choose_Dest(3, 0); switch (spinnerDest) { case 0: Game_Flag_Set(178); Game_Flag_Reset(256); Game_Flag_Set(251); Set_Enter(61, 65); Scene_Loop_Start_Special(1, 4, 1); break; case 1: Game_Flag_Set(179); Game_Flag_Reset(256); Game_Flag_Set(250); Set_Enter(49, 48); Scene_Loop_Start_Special(1, 4, 1); break; case 2: Game_Flag_Set(182); Game_Flag_Reset(256); Game_Flag_Set(249); Set_Enter(69, 78); Scene_Loop_Start_Special(1, 4, 1); break; case 3: Game_Flag_Set(176); Game_Flag_Reset(256); Game_Flag_Set(248); Set_Enter(4, 13); Scene_Loop_Start_Special(1, 4, 1); break; case 5: Game_Flag_Set(261); Game_Flag_Reset(256); Game_Flag_Set(307); Set_Enter(17, 82); Scene_Loop_Start_Special(1, 4, 1); break; case 4: Game_Flag_Set(180); Game_Flag_Reset(256); Game_Flag_Set(252); Set_Enter(0, 0); Scene_Loop_Start_Special(1, 4, 1); break; case 7: Game_Flag_Set(258); Game_Flag_Reset(256); Game_Flag_Set(254); Set_Enter(20, 2); Scene_Loop_Start_Special(1, 4, 1); break; case 6: Game_Flag_Set(177); Game_Flag_Reset(256); Game_Flag_Set(253); Set_Enter(7, 25); Scene_Loop_Start_Special(1, 4, 1); break; case 8: Game_Flag_Set(181); Game_Flag_Reset(256); Game_Flag_Set(255); Set_Enter(54, 54); Scene_Loop_Start_Special(1, 4, 1); break; default: Game_Flag_Set(257); Loop_Actor_Walk_To_XYZ(0, 100.0f, 0.0f, -300.0f, 0, 1, false, 0); break; } } return true; } return false; }
bool SceneScriptCT01::ClickedOnExit(int exitId) { if (exitId == kCT01ExitCT02) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -327.5f, -6.5f, 352.28f, 0, true, false, 0)) { Player_Loses_Control(); Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 106, 0, false, false); Player_Gains_Control(); Game_Flag_Reset(kFlagArrivedFromSpinner1); Set_Enter(kSetCT02, kSceneCT02); } return true; } if (exitId == kCT01ExitCT03) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -259.0f, -6.5f, 710.0f, 0, true, false, 0)) { Game_Flag_Reset(kFlagArrivedFromSpinner1); Set_Enter(kSetCT03_CT04, kSceneCT03); } return true; } if (exitId == kCT01ExitCT12) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -419.0f, -6.5f, 696.0f, 0, true, false, 0)) { Game_Flag_Set(kFlagCT01toCT12); Game_Flag_Reset(kFlagArrivedFromSpinner1); Set_Enter(kSetCT01_CT12, kSceneCT12); } return true; } if (exitId == kCT01ExitSpinner) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -314.0f, -6.5f, 326.0f, 0, true, false, 0)) { Loop_Actor_Walk_To_XYZ(kActorMcCoy, -330.0f, -6.5f, 221.0f, 0, false, true, 0); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -530.0f, -6.5f, 241.0f, 0, false, true, 0); Game_Flag_Reset(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagMcCoyInAnimoidRow); Game_Flag_Reset(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagMcCoyInBradburyBuilding); int spinnerDest = Spinner_Interface_Choose_Dest(-1, false); switch (spinnerDest) { case kSpinnerDestinationPoliceStation: Game_Flag_Set(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtPS01); Set_Enter(kSetPS01, kScenePS01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationMcCoysApartment: Game_Flag_Set(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtMA01); Set_Enter(kSetMA01, kSceneMA01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationRuncitersAnimals: Game_Flag_Set(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtRC01); Set_Enter(kSetRC01, kSceneRC01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationAnimoidRow: Game_Flag_Set(kFlagMcCoyInAnimoidRow); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtAR01); Set_Enter(kSetAR01_AR02, kSceneAR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationTyrellBuilding: Game_Flag_Set(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Set(kFlagSpinnerAtTB02); Set_Enter(kSetTB02_TB03, kSceneTB02); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationDNARow: Game_Flag_Set(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtDR01); Set_Enter(kSetDR01_DR02_DR04, kSceneDR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationBradburyBuilding: Game_Flag_Set(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtBB01); Set_Enter(kSetBB01, kSceneBB01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationNightclubRow: Game_Flag_Set(kFlagMcCoyInNightclubRow); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtNR01); Set_Enter(kSetNR01, kSceneNR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; case kSpinnerDestinationHysteriaHall: Game_Flag_Set(kFlagMcCoyInHysteriaHall); Game_Flag_Reset(kFlagArrivedFromSpinner1); Game_Flag_Reset(kFlagSpinnerAtCT01); Game_Flag_Set(kFlagSpinnerAtHF01); Set_Enter(kSetHF01, kSceneHF01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kCT01LoopOutshot, true); break; default: Game_Flag_Set(kFlagMcCoyInChinaTown); Player_Loses_Control(); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -530.0f, -6.5f, 241.0f, 0, false, true, 0); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -330.0f, -6.5f, 221.0f, 0, false, true, 0); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -314.0f, -6.5f, 326.0f, 0, false, false, 0); Player_Gains_Control(); break; } } return true; } return false; }
bool AIScriptGaff::GoalChanged(int currentGoalNumber, int newGoalNumber) { switch (newGoalNumber) { case kGoalGaffCT12WaitForMcCoy: Actor_Put_In_Set(kActorGaff, kSetCT01_CT12); Actor_Set_At_Waypoint(kActorGaff, 43, 0); return true; case kGoalGaffCT12GoToSpinner: AI_Movement_Track_Append(kActorGaff, 123, 1); AI_Movement_Track_Repeat(kActorGaff); return true; case kGoalGaffMA01ApproachMcCoy: Player_Loses_Control(); AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 124, 0); AI_Movement_Track_Append(kActorGaff, 126, 0); AI_Movement_Track_Repeat(kActorGaff); return true; case kGoalGaffMA01Leave: AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 124, 0); AI_Movement_Track_Append(kActorGaff, 35, 0); AI_Movement_Track_Repeat(kActorGaff); return true; case kGoalGaffCT12Leave: AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 35, 90); AI_Movement_Track_Repeat(kActorGaff); return true; case kGoalGaffCT12FlyAway: Game_Flag_Reset(kFlagCT12GaffSpinner); Scene_Loop_Set_Default(2); Scene_Loop_Start_Special(kSceneLoopModeOnce, 6, true); return true; case kGoalGaffStartWalkingAround: AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 35, 300); AI_Movement_Track_Repeat(kActorGaff); return true; case kGoalGaffWalkAround: { AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 82, 1); AI_Movement_Track_Append(kActorGaff, 76, 1); AI_Movement_Track_Append(kActorGaff, 78, 1); int rnd = Random_Query(1, 3); if (rnd == 1) { AI_Movement_Track_Append(kActorGaff, 271, 0); AI_Movement_Track_Append(kActorGaff, 272, 0); AI_Movement_Track_Append(kActorGaff, 273, 0); } else if (rnd == 2) { AI_Movement_Track_Append(kActorGaff, 273, 0); AI_Movement_Track_Append(kActorGaff, 272, 0); AI_Movement_Track_Append(kActorGaff, 271, 0); } else if (rnd == 3) { AI_Movement_Track_Append(kActorGaff, 272, 0); AI_Movement_Track_Append(kActorGaff, 273, 0); } AI_Movement_Track_Append(kActorGaff, 274, 0); AI_Movement_Track_Append(kActorGaff, 275, 0); AI_Movement_Track_Repeat(kActorGaff); } return true; case kGoalGaffRepeatWalkingAround: AI_Movement_Track_Flush(kActorGaff); AI_Movement_Track_Append(kActorGaff, 35, 90); AI_Movement_Track_Repeat(kActorGaff); return true; case 299: AI_Movement_Track_Flush(kActorGaff); Actor_Put_In_Set(kActorGaff, kSetFreeSlotC); Actor_Set_At_Waypoint(kActorGaff, 35, 0); return true; case kGoalGaffMA07Wait: Player_Loses_Control(); Actor_Put_In_Set(kActorGaff, kSetMA07); Actor_Set_At_XYZ(kActorGaff, -102.54f, -172.43f, 463.18f, 1015); Actor_Set_Goal_Number(kActorGaff, kGoalGaffMA07TalkToMcCoy); return true; case kGoalGaffMA07TalkToMcCoy: Game_Flag_Set(kFlagMA07GaffTalk); Actor_Face_Actor(kActorGaff, kActorMcCoy, true); Actor_Says(kActorGaff, 110, 12); Actor_Face_Actor(kActorMcCoy, kActorGaff, true); Actor_Says(kActorMcCoy, 2945, 14); Loop_Actor_Walk_To_Actor(kActorGaff, kActorMcCoy, 180, false, false); Actor_Says(kActorGaff, 120, 16); Actor_Says(kActorGaff, 130, 13); Actor_Says(kActorMcCoy, 2950, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2955, 16); Actor_Says_With_Pause(kActorGaff, 140, 1.0f, 14); Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorGaff, 36, false, false); Actor_Says(kActorGaff, 150, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2960, 12); Actor_Says_With_Pause(kActorGaff, 160, 1.0f, 16); Actor_Says(kActorMcCoy, 2965, 13); Actor_Says_With_Pause(kActorGaff, 170, 1.0f, kAnimationModeTalk); Actor_Says_With_Pause(kActorGaff, 180, 1.0f, 12); Actor_Says(kActorGaff, 190, 14); Actor_Says(kActorGaff, 200, 15); Async_Actor_Walk_To_XYZ(kActorGaff, -388.44f, -162.8f, 165.08f, false, false); Delay(4000); Player_Gains_Control(); Actor_Start_Speech_Sample(kActorGaff, 210); Actor_Set_Goal_Number(kActorGaff, kGoalGaffMA07Left); return true; case kGoalGaffMA07Left: return true; case kGoalGaffMA07ShootMcCoy: Actor_Face_Actor(kActorGaff, kActorMcCoy, true); Actor_Change_Animation_Mode(kActorGaff, kAnimationModeCombatAttack); Sound_Play(kSfxSMCAL3, 100, 0, 0, 50); Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie); Actor_Retired_Here(kActorMcCoy, 12, 12, true, -1); return true; case kGoalGaffGone: AI_Movement_Track_Flush(kActorGaff); Actor_Put_In_Set(kActorGaff, kSetKP05_KP06); Actor_Set_At_XYZ(kActorGaff, -782.15f, 8.26f, -263.64f, 52); return true; } return false; }
bool SceneScriptRC01::ClickedOnExit(int exitId) { if (exitId == kRC01ExitRC02) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -174.77f, 5.55f, 25.95f, 12, true, false, 0)) { if (Game_Flag_Query(kFlagRC02RunciterTalkWithGun)) { Actor_Says(kActorMcCoy, 8522, 14); } else { switch (Global_Variable_Query(kVariableChapter)) { case 1: case 4: Game_Flag_Set(kFlagRC01toRC02); Set_Enter(kSetRC02_RC51, kSceneRC02); break; case 2: case 3: case 5: Actor_Says(kActorMcCoy, 8522, 12); break; default: return true; } } } return true; } if (exitId == kRC01ExitSpinner) { if (Game_Flag_Query(kFlagDNARowAvailable)) { Spinner_Set_Selectable_Destination_Flag(kSpinnerDestinationDNARow, true); } I_Sez("MG: Leaving already? The fun is just beginning!"); if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -151.98f, -0.3f, 318.15f, 0, true, false, 0)) { Player_Loses_Control(); Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -10.98f, -0.3f, 318.15f, 0, 0, false, 0); if ( Game_Flag_Query(kFlagDNARowAvailable) && !Game_Flag_Query(kFlagDNARowAvailableTalk) ) { Actor_Voice_Over(4310, kActorVoiceOver); Actor_Voice_Over(4320, kActorVoiceOver); Actor_Voice_Over(4330, kActorVoiceOver); Actor_Voice_Over(4340, kActorVoiceOver); Actor_Voice_Over(4350, kActorVoiceOver); Game_Flag_Set(kFlagDNARowAvailableTalk); } Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false); Player_Gains_Control(); Game_Flag_Reset(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagMcCoyInPoliceStation); int spinnerDest; if (Game_Flag_Query(kFlagRC01PoliceDone)) { spinnerDest = Spinner_Interface_Choose_Dest(kRC01LoopDoorAnimNoCrowd, true); } else { spinnerDest = Spinner_Interface_Choose_Dest(kRC01LoopDoorAnimWithCrowd, true); } switch (spinnerDest) { case kSpinnerDestinationPoliceStation: Game_Flag_Set(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtPS01); Set_Enter(kSetPS01, kScenePS01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationMcCoysApartment: Game_Flag_Set(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtMA01); Set_Enter(kSetMA01, kSceneMA01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationChinatown: Game_Flag_Set(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtCT01); Set_Enter(kSetCT01_CT12, kSceneCT01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationTyrellBuilding: Game_Flag_Set(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtTB02); Set_Enter(kSetTB02_TB03, kSceneTB02); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationAnimoidRow: Game_Flag_Set(kFlagMcCoyInAnimoidRow); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtAR01); Set_Enter(kSetAR01_AR02, kSceneAR01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationDNARow: Game_Flag_Set(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtDR01); Set_Enter(kSetDR01_DR02_DR04, kSceneDR01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationBradburyBuilding: Game_Flag_Set(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtBB01); Set_Enter(kSetBB01, kSceneBB01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationNightclubRow: Game_Flag_Set(kFlagMcCoyInNightclubRow); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtNR01); Set_Enter(kSetNR01, kSceneNR01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; case kSpinnerDestinationHysteriaHall: Game_Flag_Set(kFlagMcCoyInHysteriaHall); Game_Flag_Reset(kFlagSpinnerAtRC01); Game_Flag_Set(kFlagSpinnerAtHF01); Set_Enter(kSetHF01, kSceneHF01); if (Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotNoCrowd, true); } else { Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kRC01LoopOutshotWithCrowd, true); } break; default: walkToCenter(); break; } } return true; } if (exitId == kRC01ExitRC03) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -471.98f, -0.3f, 258.15f, 4, true, false, 0)) { Game_Flag_Set(kFlagRC01toRC03); Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); Set_Enter(kSetRC03, kSceneRC03); } return true; } return false; }
bool SceneScriptBB01::ClickedOnExit(int exitId) { if (exitId == 0) { Loop_Actor_Walk_To_XYZ(kActorMcCoy, -140.0f, 9.0f, 818.0f, 0, 1, false, 0); if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -233.0f, 9.0f, 846.0f, 0, 1, false, 0)) { Game_Flag_Set(264); Game_Flag_Reset(258); Game_Flag_Set(177); Set_Enter(7, kSceneDR02); } return true; } if (exitId == 1) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -125.39f, 9.0f, 372.45f, 0, 1, false, 0)) { Game_Flag_Set(262); Set_Enter(1, kSceneBB02); } return true; } if (exitId == 2) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 43.0f, 0.0f, 1062.0f, 0, 1, false, 0)) { Game_Flag_Reset(176); Game_Flag_Reset(182); Game_Flag_Reset(179); Game_Flag_Reset(178); Game_Flag_Reset(258); int spinnerDest = Spinner_Interface_Choose_Dest(3, 0); switch (spinnerDest) { case 0: Game_Flag_Set(178); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToPS01); Set_Enter(61, kScenePS01); Scene_Loop_Start_Special(1, 4, 1); break; case 1: Game_Flag_Set(179); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToMA01); Set_Enter(49, kSceneMA01); Scene_Loop_Start_Special(1, 4, 1); break; case 2: Game_Flag_Set(182); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToRC01); Set_Enter(69, kSceneRC01); Scene_Loop_Start_Special(1, 4, 1); break; case 3: Game_Flag_Set(176); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToCT01); Set_Enter(4, kSceneCT01); Scene_Loop_Start_Special(1, 4, 1); break; case 5: Game_Flag_Set(261); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToTB02); Set_Enter(17, kSceneTB02); Scene_Loop_Start_Special(1, 4, 1); break; case 4: Game_Flag_Set(180); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToAR01); Set_Enter(0, kSceneAR01); Scene_Loop_Start_Special(1, 4, 1); break; case 6: Game_Flag_Set(177); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToDR01); Set_Enter(7, kSceneDR01); Scene_Loop_Start_Special(1, 4, 1); break; case 8: Game_Flag_Set(181); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToNR01); Set_Enter(54, kSceneNR01); Scene_Loop_Start_Special(1, 4, 1); break; case 9: Game_Flag_Set(257); Game_Flag_Reset(kFlagSpinnerToBB01); Game_Flag_Set(kFlagSpinnerToHF01); Set_Enter(37, kSceneHF01); Scene_Loop_Start_Special(1, 4, 1); break; default: Game_Flag_Set(258); Scene_Loop_Start_Special(2, 3, 1); break; } } return true; } return false; }
bool SceneScriptHF01::ClickedOnExit(int exitId) { if (exitId == 0) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -202.0f, 8.0f, -619.0f, 0, 1, false, 0)) { Game_Flag_Set(312); Set_Enter(41, kSceneHF05); } return true; } if (exitId == 1) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 124.0f, 8.0f, -724.0f, 0, 1, false, 0)) { Loop_Actor_Walk_To_XYZ(kActorMcCoy, 124.0f, 8.0f, -880.0f, 0, 0, false, 0); Game_Flag_Set(310); Set_Enter(39, kSceneHF03); } return true; } if (exitId == 2) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 406.0f, 8.0f, -717.0f, 0, 1, false, 0)) { Loop_Actor_Walk_To_XYZ(kActorMcCoy, 406.0f, 8.0f, -813.0f, 0, 0, false, 0); Game_Flag_Set(308); Set_Enter(38, kSceneHF02); } return true; } if (exitId == 3) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 100.0f, 0.0f, -260.0f, 0, 1, false, 0)) { Game_Flag_Reset(176); Game_Flag_Reset(182); Game_Flag_Reset(179); Game_Flag_Reset(178); Game_Flag_Reset(258); Game_Flag_Reset(257); int spinnerDest = Spinner_Interface_Choose_Dest(3, 0); switch (spinnerDest) { case 0: Game_Flag_Set(178); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToPS01); Set_Enter(61, kScenePS01); Scene_Loop_Start_Special(1, 4, 1); break; case 1: Game_Flag_Set(179); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToMA01); Set_Enter(49, kSceneMA01); Scene_Loop_Start_Special(1, 4, 1); break; case 2: Game_Flag_Set(182); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToRC01); Set_Enter(69, kSceneRC01); Scene_Loop_Start_Special(1, 4, 1); break; case 3: Game_Flag_Set(176); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToCT01); Set_Enter(4, kSceneCT01); Scene_Loop_Start_Special(1, 4, 1); break; case 5: Game_Flag_Set(261); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToTB02); Set_Enter(17, kSceneTB02); Scene_Loop_Start_Special(1, 4, 1); break; case 4: Game_Flag_Set(180); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToAR01); Set_Enter(0, kSceneAR01); Scene_Loop_Start_Special(1, 4, 1); break; case 7: Game_Flag_Set(258); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToBB01); Set_Enter(20, kSceneBB01); Scene_Loop_Start_Special(1, 4, 1); break; case 6: Game_Flag_Set(177); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToDR01); Set_Enter(7, kSceneDR01); Scene_Loop_Start_Special(1, 4, 1); break; case 8: Game_Flag_Set(181); Game_Flag_Reset(kFlagSpinnerToHF01); Game_Flag_Set(kFlagSpinnerToNR01); Set_Enter(54, kSceneNR01); Scene_Loop_Start_Special(1, 4, 1); break; default: Game_Flag_Set(257); Loop_Actor_Walk_To_XYZ(kActorMcCoy, 100.0f, 0.0f, -300.0f, 0, 1, false, 0); break; } } return true; } return false; }
void SceneScriptCT12::InitializeScene() { if (Game_Flag_Query(kFlagCT01toCT12)) { Setup_Scene_Information(-419.0f, -6.5f, 696.0f, 616); } else if (Game_Flag_Query(432)) { Setup_Scene_Information(-292.0f, -6.5f, 990.0f, 827); if (!Game_Flag_Query(150)) { Game_Flag_Set(150); } Game_Flag_Reset(432); } else if (Game_Flag_Query(86)) { Setup_Scene_Information(-493.0f, -6.5f, 1174.0f, 990); } else { Setup_Scene_Information(-386.13f, -6.5f, 1132.72f, 783); } Scene_Exit_Add_2D_Exit(0, 0, 0, 40, 479, 3); Scene_Exit_Add_2D_Exit(1, 78, 224, 162, 330, 0); Scene_Exit_Add_2D_Exit(2, 500, 180, 619, 346, 0); if (Global_Variable_Query(kVariableChapter) > 2) { Scene_Exit_Add_2D_Exit(3, 620, 0, 639, 479, 1); } if (Global_Variable_Query(kVariableChapter) > 3) { Scene_Exit_Add_2D_Exit(4, 324, 150, 435, 340, 0); } Ambient_Sounds_Add_Looping_Sound(54, 33, 1, 1); Ambient_Sounds_Add_Looping_Sound(55, 20, -100, 1); Ambient_Sounds_Add_Looping_Sound(56, 20, -100, 1); Ambient_Sounds_Add_Speech_Sound(60, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(60, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Sound(68, 60, 180, 20, 33, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(69, 60, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(375, 60, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(376, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(377, 50, 180, 50, 100, 0, 0, -101, -101, 0, 0); if (Global_Variable_Query(kVariableChapter) < 2 && Actor_Query_Goal_Number(kActorGaff) == 1) { Actor_Put_In_Set(kActorGaff, 4); Actor_Set_At_XYZ(kActorGaff, -534.0f, -6.5f, 952.0f, 367); Game_Flag_Set(kFlagGaffSpinnerCT12); } if (Game_Flag_Query(kFlagCT01toCT12) && Game_Flag_Query(kFlagSpinnerToCT01)) { if (Global_Variable_Query(kVariableChapter) != 2 && Global_Variable_Query(kVariableChapter) != 3) { Scene_Loop_Start_Special(0, 1, 0); } Scene_Loop_Set_Default(2); Game_Flag_Reset(kFlagCT01toCT12); } else if (Game_Flag_Query(kFlagCT01toCT12) && !Game_Flag_Query(kFlagSpinnerToCT01)) { if (Global_Variable_Query(kVariableChapter) != 2 && Global_Variable_Query(kVariableChapter) != 3) { Scene_Loop_Start_Special(0, 0, 0); } Scene_Loop_Set_Default(2); Game_Flag_Reset(kFlagCT01toCT12); } else if (Game_Flag_Query(kFlagCT05toCT12) && Game_Flag_Query(kFlagGaffSpinnerCT12)) { Game_Flag_Reset(kFlagCT05toCT12); Scene_Loop_Set_Default(4); } else if (Game_Flag_Query(kFlagCT05toCT12) && !Game_Flag_Query(kFlagGaffSpinnerCT12)) { Game_Flag_Reset(kFlagCT05toCT12); Scene_Loop_Set_Default(2); } else { Scene_Loop_Set_Default(2); } }
void SceneScriptRC51::InitializeScene() { Setup_Scene_Information(-8.87f, -1238.89f, 108164.27f, 66); Scene_Exit_Add_2D_Exit(kRC51ExitRC02, 0, 460, 639, 479, 2); Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kRC51LoopInshotFromRC02, false); Scene_Loop_Set_Default(kRC51LoopMainLoop); }
void SceneScriptRC01::InitializeScene() { if (!Game_Flag_Query(kFlagIntroPlayed)) { Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); Outtake_Play(kOuttakeWestwood, true, -1); Outtake_Play(kOuttakeBladeRunner, true, -1); Outtake_Play(kOuttakeIntro, false, -1); Outtake_Play(kOuttakeDescent, true, -1); } if (Game_Flag_Query(kFlagRC02toRC01)) { Setup_Scene_Information(-171.16f, 5.55f, 27.28f, 616); } else if (Game_Flag_Query(kFlagRC03toRC01)) { Setup_Scene_Information(-471.98f, -0.30f, 258.15f, 616); } else { Setup_Scene_Information(-10.98f, -0.30f, 318.15f, 616); } Scene_Exit_Add_2D_Exit(kRC01ExitRC02, 314, 145, 340, 255, 0); if (Game_Flag_Query(kFlagSpinnerAtRC01)) { Scene_Exit_Add_2D_Exit(kRC01ExitSpinner, 482, 226, 639, 280, 2); } if (Global_Variable_Query(kVariableChapter) > 1 && Game_Flag_Query(kFlagAR01Entered) ) { Scene_Exit_Add_2D_Exit(kRC01ExitRC03, 0, 0, 10, 479, 3); } if (!Game_Flag_Query(kFlagRC01PoliceDone)) { Scene_2D_Region_Add(kRC01RegionCrowd, 0, 294, 296, 479); } Ambient_Sounds_Remove_All_Non_Looping_Sounds(false); Ambient_Sounds_Add_Looping_Sound(54, 30, 0, 1); // CTRAIN1.AUD if (!Game_Flag_Query(kFlagRC01PoliceDone)) { Ambient_Sounds_Add_Sound(181, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0470R.AUD Ambient_Sounds_Add_Sound(182, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0480R.AUD Ambient_Sounds_Add_Sound(183, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0500R.AUD Ambient_Sounds_Add_Sound(184, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0540R.AUD Ambient_Sounds_Add_Sound(185, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0560R.AUD Ambient_Sounds_Add_Sound(186, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0870R.AUD Ambient_Sounds_Add_Sound(188, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0900R.AUD Ambient_Sounds_Add_Sound(189, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0940R.AUD Ambient_Sounds_Add_Sound(190, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_0960R.AUD Ambient_Sounds_Add_Sound(191, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_1070R.AUD Ambient_Sounds_Add_Sound(192, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_1080R.AUD Ambient_Sounds_Add_Sound(193, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_1100R.AUD Ambient_Sounds_Add_Sound(194, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_1140R.AUD Ambient_Sounds_Add_Sound(195, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); // 67_1160R.AUD } Ambient_Sounds_Add_Looping_Sound(81, 60, 100, 1); // RCAMBR1.AUD Ambient_Sounds_Add_Sound(82, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY1.AUD Ambient_Sounds_Add_Sound(83, 5, 30, 30, 55, -100, 100, -101, -101, 0, 0); // RCCARBY2.AUD Ambient_Sounds_Add_Sound(84, 5, 30, 30, 50, -100, 100, -101, -101, 0, 0); // RCCARBY3.AUD Ambient_Sounds_Add_Sound(67, 10, 50, 30, 50, -100, 100, -101, -101, 0, 0); // SPIN2A.AUD Ambient_Sounds_Add_Sound(87, 20, 80, 20, 40, -100, 100, -101, -101, 0, 0); // SIREN2.AUD if (Game_Flag_Query(kFlagRC01PoliceDone)) { if (!Game_Flag_Query(kFlagRC02toRC01) && !Game_Flag_Query(kFlagRC03toRC01)) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kRC01LoopInshotNoCrowd, false); } if (Game_Flag_Query(kFlagSpinnerAtRC01)) { Scene_Loop_Set_Default(kRC01LoopNoCrowd); } else { Scene_Loop_Set_Default(kRC01LoopNoCrowdNoSpinner); } } else { if (!Game_Flag_Query(kFlagRC02toRC01) && !Game_Flag_Query(kFlagRC03toRC01)) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kRC01LoopInshotWithCrowd, false); } Scene_Loop_Set_Default(kRC01LoopWithCrowd); } I_Sez("Blade Runner"); I_Sez(""); I_Sez("From the dark recesses of David Leary's imagination comes a game unlike any"); I_Sez("other. Blade Runner immerses you in the underbelly of future Los Angeles. Right"); I_Sez("from the start, the story pulls you in with graphic descriptions of a"); I_Sez("grandmother doing the shimmy in her underwear, child molestation, brutal"); I_Sez("cold-blooded slaying of innocent animals, vomiting on desks, staring at a"); I_Sez("woman's ass, the list goes on. And when the game starts, the real fun begins -"); I_Sez("shoot down-on-their-luck homeless people and toss them into a dumpster. Watch"); I_Sez("with sadistic glee as a dog gets blown into chunky, bloody, bits by an"); I_Sez("explosive, and even murder a shy little girl who loves you. If you think David"); I_Sez("Leary is sick, and you like sick, this is THE game for you."); I_Sez(""); I_Sez("JW: Don't forget the wasting of helpless mutated cripples in the underground."); I_Sez("It's such a beautiful thing!"); I_Sez(""); I_Sez("DL: Go ahead. Just keep beating that snarling pit bull...ignore the foam"); I_Sez("around his jaws. There's room on the top shelf of my fridge for at least one"); I_Sez("more head... - Psychotic Dave"); I_Sez(""); }
bool ScriptNR11::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("CLOTHING02", objectName) || Object_Query_Click("BOX27", objectName) || Object_Query_Click("BOX39", objectName) || Object_Query_Click("BOX44", objectName) || Object_Query_Click("DRESS", objectName) || Object_Query_Click("COATRACK", objectName) || Object_Query_Click("COLUMN3 DETS", objectName) || Object_Query_Click("COLUMN PIPE01", objectName) || Object_Query_Click("RECTANGLE02", objectName) || Object_Query_Click("COLUMN04", objectName) || Object_Query_Click("COATRACK01", objectName) || Object_Query_Click("SHIRT", objectName) || Object_Query_Click("SKIRT 02", objectName) || Object_Query_Click("CLOTHING B 03", objectName) || Object_Query_Click("BUST BUST", objectName)) { if (a2) { Actor_Set_Goal_Number(1, 211); Scene_Exits_Disable(); sub_4028EC(); Player_Loses_Control(); if (!Player_Query_Combat_Mode()) { Player_Set_Combat_Mode(true); } Actor_Set_Goal_Number(0, 230); Scene_Loop_Set_Default(3); Scene_Loop_Start_Special(2, 2, 1); } else if (Actor_Query_Goal_Number(3) == 250) { if (!Loop_Actor_Walk_To_XYZ(0, 24.0f, 0.33f, 0.0f, 0, 1, false, 0)) { Actor_Face_XYZ(0, -180.0f, 0.0f, -170.0f, true); sub_4028EC(); Actor_Set_Goal_Number(1, 211); if (Actor_Query_Friendliness_To_Other(3, 0) < 30) { Actor_Set_At_XYZ(3, 0.5f, 0.33f, -162.0f, 0); Loop_Actor_Walk_To_XYZ(3, -24.0f, 0.33f, -35.4f, 0, 0, true, 0); Actor_Face_Actor(0, 3, true); Actor_Change_Animation_Mode(3, 71); Delay(500); Actor_Change_Animation_Mode(0, 48); Delay(2000); Actor_Set_Goal_Number(0, 231); } else { Actor_Says(0, 3840, 18); Delay(1000); if (Actor_Query_Friendliness_To_Other(3, 0) > 59 && !Global_Variable_Query(45)) { Music_Play(21, 35, 0, 3, -1, 0, 0); } Loop_Actor_Walk_To_XYZ(3, -135.0f, 0.33000001f, -267.0f, 0, 0, false, 0); Actor_Face_Actor(3, 0, true); Actor_Face_Actor(0, 3, true); Actor_Clue_Acquire(0, 107, 1, 3); Actor_Says(3, 990, 13); Actor_Says(3, 1000, 14); Loop_Actor_Walk_To_Actor(3, 0, 108, 0, false); Actor_Says(0, 3845, 13); Actor_Says(0, 3850, 15); Actor_Says(3, 1010, 14); Actor_Says(0, 3855, 13); Actor_Says(3, 1020, 12); Actor_Says(0, 3860, 12); Actor_Says_With_Pause(3, 1030, 1.0f, 14); Actor_Says(3, 1040, 13); Actor_Says(0, 3865, 15); Actor_Says_With_Pause(3, 1050, 0.80000001f, 14); Actor_Says(3, 1060, 13); Actor_Says(0, 3870, 3); Actor_Says(3, 1070, 14); Actor_Modify_Friendliness_To_Other(3, 0, 5); if (Actor_Query_Friendliness_To_Other(3, 0) > 55 && !Global_Variable_Query(45)) { Global_Variable_Set(45, 2); Actor_Says(3, 1130, 17); Actor_Says(0, 6365, 12); Actor_Says(3, 1140, 14); Actor_Says(0, 6370, 14); Actor_Says(3, 1150, 12); Actor_Says(3, 1160, 16); } Actor_Says(3, 1080, 13); Actor_Says(0, 3875, 14); Actor_Says(3, 1090, 17); Music_Stop(4); Actor_Set_Goal_Number(3, 260); if (Global_Variable_Query(40) == 1) { Actor_Set_Goal_Number(1, 236); } Game_Flag_Set(591); } } else { if (Random_Query(1, 2) == 1) { Actor_Says(0, 8575, 14); } else { Actor_Says(0, 8580, 14); } } } return true; } return false; }
void SceneScriptAR01::InitializeScene() { Music_Play(kMusicArabLoop, 25, 0, 2, -1, 1, 2); if (Game_Flag_Query(kFlagHC01toAR01)) { Setup_Scene_Information(-477.0f, 0.0f, -149.0f, 333); } else if (Game_Flag_Query(kFlagAR02toAR01)) { Setup_Scene_Information(-182.0f, 0.0f, -551.0f, 518); } else { Setup_Scene_Information(-152.0f, 0.0f, 332.0f, 545); } Scene_Exit_Add_2D_Exit(kAR01ExitHC01, 134, 165, 177, 290, 3); Scene_Exit_Add_2D_Exit(kAR01ExitAR02, 319, 0, 639, 207, 0); if (Game_Flag_Query(kFlagSpinnerAtAR01)) { Scene_Exit_Add_2D_Exit(kAR01ExitSpinner, 0, 404, 99, 479, 2); } Ambient_Sounds_Add_Looping_Sound(kSfxCTRAIN1, 50, 1, 1); Ambient_Sounds_Add_Looping_Sound(kSfxRCAMBR1, 60, 100, 1); Ambient_Sounds_Add_Looping_Sound(kSfxHCLOOP1, 50, 1, 1); Ambient_Sounds_Add_Sound(kSfx67_0480R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_0540R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_0560R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_0870R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_0900R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_0940R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_1070R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_1080R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfx67_1160R, 5, 70, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM8, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM2, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM3, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM4, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM5, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM6, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM7, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxHCANM1, 3, 30, 11, 11, 50, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Speech_Sound(kActorBlimpGuy, 0, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(kActorBlimpGuy, 20, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(kActorBlimpGuy, 40, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Speech_Sound(kActorBlimpGuy, 50, 10, 260, 17, 24, -100, 100, -101, -101, 1, 1); Ambient_Sounds_Add_Sound(kSfxSPIN2B, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxSPIN3A, 10, 180, 16, 25, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER2, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER3, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(kSfxTHNDER4, 10, 180, 50, 100, 0, 0, -101, -101, 0, 0); if ( Game_Flag_Query(kFlagSpinnerAtAR01) && !Game_Flag_Query(kFlagAR02toAR01) && !Game_Flag_Query(kFlagHC01toAR01) ) { Actor_Set_Invisible(kActorMcCoy, true); Game_Flag_Set(kFlagArrivedFromSpinner2); Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kAR01LoopInshot, false); Scene_Loop_Set_Default(kAR01LoopMainLoop); } else if (Game_Flag_Query(kFlagSpinnerAtAR01) && Game_Flag_Query(kFlagAR02toAR01) ) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kAR01LoopFromAR02WithSpinner, false); Scene_Loop_Set_Default(kAR01LoopMainLoop); Game_Flag_Reset(kFlagAR02toAR01); } else if (!Game_Flag_Query(kFlagSpinnerAtAR01) && Game_Flag_Query(kFlagAR02toAR01) ) { Scene_Loop_Start_Special(kSceneLoopModeLoseControl, kAR01LoopFromAR02NoSpinner, false); Scene_Loop_Set_Default(kAR01LoopMainLoopNoSpinner); Game_Flag_Reset(kFlagAR02toAR01); } else if (Game_Flag_Query(kFlagSpinnerAtAR01) && Game_Flag_Query(kFlagHC01toAR01) ) { Scene_Loop_Set_Default(kAR01LoopMainLoop); } else if (!Game_Flag_Query(kFlagSpinnerAtAR01) && Game_Flag_Query(kFlagHC01toAR01) ) { Scene_Loop_Set_Default(kAR01LoopMainLoopNoSpinner); } else { // bug? branch content is equal to previous branch Scene_Loop_Set_Default(kAR01LoopMainLoopNoSpinner); } }
void ScriptNR11::SceneFrameAdvanced(int frame) { if (frame == 62) { Ambient_Sounds_Play_Sound(449, 40, 100, 100, 10); } if (frame == 67) { Ambient_Sounds_Play_Sound(449, 30, 90, 90, 10); } if (frame == 74) { Ambient_Sounds_Play_Sound(450, 50, 83, 83, 10); } if (frame == 80) { Ambient_Sounds_Play_Sound(449, 60, 65, 65, 10); } if (frame == 92) { Ambient_Sounds_Play_Sound(450, 30, 50, 50, 10); } if (frame == 97) { Ambient_Sounds_Play_Sound(449, 50, -40, -40, 10); } if (frame == 103) { Ambient_Sounds_Play_Sound(450, 40, -27, -27, 10); } if (frame == 109) { Ambient_Sounds_Play_Sound(449, 60, -20, -20, 10); } if (frame == 62) { Ambient_Sounds_Play_Sound(122, 80, 100, 100, 15); } if (Game_Flag_Query(659)) { Game_Flag_Reset(659); Overlay_Remove("NR11OVER"); Overlay_Play("NR11OVER", 1, 0, 1, 0); } if (Game_Flag_Query(635)) { sub_4028EC(); Player_Loses_Control(); if (!Player_Query_Combat_Mode()) { Player_Set_Combat_Mode(true); } Actor_Set_Goal_Number(0, 230); Scene_Loop_Set_Default(3); Scene_Loop_Start_Special(2, 2, 1); Game_Flag_Reset(635); } else { if (frame < 61 || frame > 120) { //return false; return; } sub_4027D0(0, frame); if (Actor_Query_Goal_Number(1) == 215) { sub_4027D0(1, frame); } if (frame == 120) { Actor_Set_Goal_Number(0, 0); Player_Gains_Control(); if (Actor_Query_Goal_Number(1) == 215) { Actor_Set_Goal_Number(1, 216); } Actor_Set_Goal_Number(3, 269); } } //return true; }