void ScriptMA07::PlayerWalkedIn() { if (Game_Flag_Query(673)) { Loop_Actor_Walk_To_XYZ(0, -268.0f, -162.8f, 188.0f, 0, 0, false, 0); Game_Flag_Reset(673); } if (Actor_Query_Goal_Number(57) == 300) { Actor_Set_Goal_Number(57, 305); } if (Game_Flag_Query(58)) { Game_Flag_Reset(58); } if (!Game_Flag_Query(648) && Game_Flag_Query(671) && Global_Variable_Query(1) == 4) { Scene_Exits_Disable(); Actor_Set_Goal_Number(53, 300); } if (Game_Flag_Query(666)) { Actor_Voice_Over(1360, 99); Actor_Voice_Over(1370, 99); Actor_Voice_Over(1380, 99); Actor_Voice_Over(1390, 99); Actor_Voice_Over(1400, 99); Delay(1000); Game_Flag_Reset(666); Game_Flag_Set(34); Set_Enter(10, 49); } //return false; }
void SceneScriptDR04::PlayerWalkedIn() { if (Game_Flag_Query(kFlagDR05ViewExplosion)) { Player_Loses_Control(); Delay(4000); Actor_Retired_Here(kActorMcCoy, 6, 6, 1, -1); } else { if ( Game_Flag_Query(kFlagDR05BombActivated) && !Game_Flag_Query(kFlagDR05BombExploded) ) { Scene_Exits_Disable(); } if (Game_Flag_Query(kFlagDR06toDR04)) { Footstep_Sound_Override_On(3); Actor_Set_Immunity_To_Obstacles(kActorMcCoy, true); Actor_Face_Heading(kActorMcCoy, 512, false); Loop_Actor_Travel_Stairs(kActorMcCoy, 7, false, kAnimationModeIdle); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -851.0f, 71.64f, 647.0f, 0, false, false, 0); Actor_Face_Heading(kActorMcCoy, 0, false); Loop_Actor_Travel_Stairs(kActorMcCoy, 7, false, kAnimationModeIdle); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -774.85f, 7.18f, 386.67f, 0, false, false, 0); Actor_Set_Immunity_To_Obstacles(kActorMcCoy, false); Footstep_Sound_Override_Off(); } } Game_Flag_Reset(kFlagDR01toDR04); Game_Flag_Reset(kFlagDR05toDR04); Game_Flag_Reset(kFlagDR06toDR04); }
void AIScriptSadik::ShotAtAndMissed() { if (Actor_Query_Goal_Number(kActorSadik) == 414 || Actor_Query_Goal_Number(kActorSadik) == kGoalSadikUG18NeedsReactorCoreFromMcCoy ) { Game_Flag_Set(kFlagMcCoyAttackedReplicants); if (Actor_Query_Which_Set_In(kActorSadik) != kSetKP07) { Actor_Set_Goal_Number(kActorSadik, 418); Scene_Exits_Disable(); } } }
void ScriptKP07::SceneLoaded() { if (!Game_Flag_Query(653)) { Music_Play(19, 25, 0, 0, -1, 1, 0); } Obstacle_Object("BUNK_TRAY01", true); Unobstacle_Object("BUNK_TRAY01", true); if (Game_Flag_Query(653)) { Player_Set_Combat_Mode(false); Scene_Exits_Disable(); } }
bool AIScriptSadik::ShotAtAndHit() { #if BLADERUNNER_ORIGINAL_BUGS // Sadik killed in BB09 dead end bug fix #else if (Actor_Query_Goal_Number(kActorSadik) == kGoalSadikRunFromBB09) { // Like Izo's ShotAtAndHit() and the code below for kGoalSadikUG18Move // this will keep resetting Sadik's health to avoid killing him // Still, this is lowering Sadik's health from 80 (when Replicant) and 50 (when Human) if (Game_Flag_Query(kFlagSadikIsReplicant)) { Actor_Set_Health(kActorSadik, 60, 60); } else { Actor_Set_Health(kActorSadik, 40, 40); } return true; } #endif // BLADERUNNER_ORIGINAL_BUGS if (Actor_Query_Goal_Number(kActorSadik) == kGoalSadikUG18Move) { // this lowers Sadik's original health but makes it impossible to kill him here (UG18) if (Game_Flag_Query(kFlagSadikIsReplicant)) { #if BLADERUNNER_ORIGINAL_BUGS Actor_Set_Health(kActorSadik, 60, 60); #else // Sadik killed in BB09 dead end bug fix if (Actor_Query_Current_HP(kActorSadik) == 60) { // shot also at Bradbury, so lower his health further Actor_Set_Health(kActorSadik, 50, 50); } else { Actor_Set_Health(kActorSadik, 60, 60); } #endif } else { #if BLADERUNNER_ORIGINAL_BUGS Actor_Set_Health(kActorSadik, 40, 40); #else // Sadik killed in BB09 dead end bug fix if (Actor_Query_Current_HP(kActorSadik) == 40) { // shot also at Bradbury, so lower his health further Actor_Set_Health(kActorSadik, 30, 30); } else { Actor_Set_Health(kActorSadik, 40, 40); } #endif } return true; } if (Actor_Query_Goal_Number(kActorSadik) == 414 || Actor_Query_Goal_Number(kActorSadik) == kGoalSadikUG18NeedsReactorCoreFromMcCoy ) { Game_Flag_Set(kFlagMcCoyAttackedReplicants); if (Actor_Query_Which_Set_In(kActorSadik) != kSetKP07) { Actor_Set_Goal_Number(kActorSadik, 418); Scene_Exits_Disable(); } } return false; }
void AIScriptSadik::ShotAtAndMissed() { if (Actor_Query_Goal_Number(kActorSadik) == 414 || Actor_Query_Goal_Number(kActorSadik) == 416 ) { Game_Flag_Set(714); if (Actor_Query_Which_Set_In(kActorSadik) != kSetKP07) { Actor_Set_Goal_Number(kActorSadik, 418); Scene_Exits_Disable(); } } }
void SceneScriptUG18::PlayerWalkedIn() { Loop_Actor_Walk_To_XYZ(kActorMcCoy, -488.71f, 0.0f, 123.59f, 0, false, false, 0); if ( Game_Flag_Query(kFlagCallWithGuzza) && !Game_Flag_Query(kFlagUG18GuzzaScene) && Actor_Query_Is_In_Current_Set(kActorGuzza) ) { Scene_Exits_Disable(); talkWithGuzza(); talkWithClovis(); Game_Flag_Set(kFlagUG18GuzzaScene); } }
void SceneScriptCT08::PlayerWalkedIn() { if (Game_Flag_Query(kFlagMcCoyTiedDown)) { Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeTalk); Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeIdle); Actor_Set_At_XYZ(kActorMcCoy, -148.0f, 0.0f, 4.0f, 256); Player_Set_Combat_Mode_Access(false); Scene_Exits_Disable(); Game_Flag_Reset(kFlagCT51toCT08); Game_Flag_Reset(kFlagCT06toCT08); Autosave_Game(1); } else if (Game_Flag_Query(kFlagCT51toCT08)) { Game_Flag_Reset(kFlagCT51toCT08); } else if (Game_Flag_Query(kFlagCT06toCT08)) { Game_Flag_Reset(kFlagCT06toCT08); } else { Loop_Actor_Walk_To_XYZ(kActorMcCoy, -156.0f, 0.0f, 128.0f, 0, false, false, 0); Game_Flag_Reset(kFlagCT09toCT08); } }
bool SceneScriptNR04::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("B.TV01", objectName) || Object_Query_Click("B.TV02", objectName) || Object_Query_Click("B.TV03", objectName) || Object_Query_Click("B.TV05", objectName) || Object_Query_Click("DESK", objectName)) { if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 546, 0, 1, false)) { if (!Object_Query_Click("DESK", objectName)) { Actor_Face_Object(kActorMcCoy, "B.TV01", true); Actor_Voice_Over(1530, kActorVoiceOver); Actor_Voice_Over(1540, kActorVoiceOver); Actor_Voice_Over(1550, kActorVoiceOver); } else { Actor_Face_Object(kActorMcCoy, "DESK", true); if (!Actor_Clue_Query(kActorMcCoy, kCluePeruvianLadyInterview)) { Actor_Voice_Over(1600, kActorVoiceOver); Actor_Voice_Over(1610, kActorVoiceOver); } else if (Actor_Clue_Query(kActorMcCoy, kClueCollectionReceipt)) { Actor_Says(kActorMcCoy, 8580, 3); } else { Actor_Clue_Acquire(kActorMcCoy, kClueCollectionReceipt, 0, -1); Item_Pickup_Spin_Effect(961, 247, 141); Actor_Voice_Over(1560, kActorVoiceOver); Actor_Voice_Over(1570, kActorVoiceOver); Actor_Voice_Over(1580, kActorVoiceOver); Actor_Voice_Over(1590, kActorVoiceOver); } } } } else if (Object_Query_Click("TORUS01", objectName) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 18.56f, 0.0f, 38.86f, 0, 1, false, 0) && !Game_Flag_Query(605)) { Unclickable_Object("TORUS01"); Scene_Exits_Disable(); Player_Loses_Control(); Game_Flag_Set(605); Actor_Face_Object(kActorMcCoy, "TORUS01", true); Item_Pickup_Spin_Effect(975, 358, 160); Actor_Voice_Over(1620, kActorVoiceOver); Actor_Voice_Over(1630, kActorVoiceOver); Actor_Clue_Acquire(kActorMcCoy, kClueEarlyQsClub, 0, -1); Actor_Set_Goal_Number(kActorEarlyQ, 201); } return false; }
bool ScriptNR04::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("B.TV01", objectName) || Object_Query_Click("B.TV02", objectName) || Object_Query_Click("B.TV03", objectName) || Object_Query_Click("B.TV05", objectName) || Object_Query_Click("DESK", objectName)) { if (!Loop_Actor_Walk_To_Waypoint(0, 546, 0, 1, false)) { if (!Object_Query_Click("DESK", objectName)) { Actor_Face_Object(0, "B.TV01", true); Actor_Voice_Over(1530, 99); Actor_Voice_Over(1540, 99); Actor_Voice_Over(1550, 99); } else { Actor_Face_Object(0, "DESK", true); if (!Actor_Clue_Query(0, 56)) { Actor_Voice_Over(1600, 99); Actor_Voice_Over(1610, 99); } else if (Actor_Clue_Query(0, 100)) { Actor_Says(0, 8580, 3); } else { Actor_Clue_Acquire(0, 100, 0, -1); Item_Pickup_Spin_Effect(961, 247, 141); Actor_Voice_Over(1560, 99); Actor_Voice_Over(1570, 99); Actor_Voice_Over(1580, 99); Actor_Voice_Over(1590, 99); } } } } else if (Object_Query_Click("TORUS01", objectName) && !Loop_Actor_Walk_To_XYZ(0, 18.56f, 0.0f, 38.86f, 0, 1, false, 0) && !Game_Flag_Query(605)) { Unclickable_Object("TORUS01"); Scene_Exits_Disable(); Player_Loses_Control(); Game_Flag_Set(605); Actor_Face_Object(0, "TORUS01", true); Item_Pickup_Spin_Effect(975, 358, 160); Actor_Voice_Over(1620, 99); Actor_Voice_Over(1630, 99); Actor_Clue_Acquire(0, 89, 0, -1); Actor_Set_Goal_Number(18, 201); } return false; }
bool AIScriptBulletBob::GoalChanged(int currentGoalNumber, int newGoalNumber) { if (newGoalNumber == kGoalBulletBobDefault && Game_Flag_Query(kFlagRC04McCoyWarned) && Player_Query_Current_Scene() == kSceneRC04 ) { Actor_Says(kActorBulletBob, 140, 16); return true; } if ( newGoalNumber == kGoalBulletBobWarningMcCoy && !Game_Flag_Query(kFlagRC04McCoyWarned) && Player_Query_Current_Scene() == kSceneRC04 ) { Actor_Says(kActorBulletBob, 120, 37); Actor_Says(kActorMcCoy, 4915, 13); return true; } if (newGoalNumber == kGoalBulletBobDead && !Actor_Clue_Query(kActorMcCoy, kClueVKBobGorskyReplicant) ) { Delay(2000); Actor_Voice_Over(2100, kActorVoiceOver); Actor_Voice_Over(2110, kActorVoiceOver); Actor_Voice_Over(2120, kActorVoiceOver); Actor_Voice_Over(2130, kActorVoiceOver); return true; } if (newGoalNumber == 6) { Scene_Exits_Disable(); Actor_Force_Stop_Walking(kActorMcCoy); Ambient_Sounds_Play_Speech_Sound(kActorMcCoy, 9900, 100, 0, 0, 0); Actor_Change_Animation_Mode(kActorMcCoy, 48); Actor_Retired_Here(kActorMcCoy, 6, 6, 1, -1); Scene_Exits_Enable(); return true; } return false; }
bool AIScriptSadik::ShotAtAndHit() { if (Actor_Query_Goal_Number(kActorSadik) == 301) { if (Game_Flag_Query(kFlagSadikIsReplicant)) { Actor_Set_Health(kActorSadik, 60, 60); } else { Actor_Set_Health(kActorSadik, 40, 40); } return true; } if (Actor_Query_Goal_Number(kActorSadik) == 414 || Actor_Query_Goal_Number(kActorSadik) == 416 ) { Game_Flag_Set(714); if (Actor_Query_Which_Set_In(kActorSadik) != kSetKP07) { Actor_Set_Goal_Number(kActorSadik, 418); Scene_Exits_Disable(); } } return false; }
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 SceneScriptPS02::activateElevator() { Scene_Exits_Disable(); switch (Elevator_Activate(kElevatorPS)) { case 7: Game_Flag_Set(kFlagPS02toPS09); break; case 6: Game_Flag_Set(kFlagPS02toPS03); break; case 5: Game_Flag_Set(kFlagPS02toPS05); break; case 4: Game_Flag_Set(kFlagPS02toPS01); break; case 3: Game_Flag_Set(kFlagPS02toPS07); break; default: break; } Scene_Exits_Enable(); }
void ScriptNR07::sub_401A10() { Scene_Exits_Disable(); Actor_Set_Goal_Number(25, 201); Actor_Says_With_Pause(3, 930, 1.0f, 30); Actor_Says_With_Pause(3, 910, 1.0f, 30); Actor_Face_Object(3, "VANITY", true); Actor_Says(3, 940, 31); Actor_Says(0, 3770, 19); Async_Actor_Walk_To_XYZ(0, -193.0f, -73.5f, -13.0f, 0, false); Actor_Says(3, 950, 31); Actor_Face_Actor(3, 0, true); Actor_Change_Animation_Mode(3, 4); Actor_Face_Actor(0, 3, true); Actor_Says(0, 3760, 19); Actor_Says(3, 960, 53); Actor_Says(3, 920, 53); Actor_Says(0, 3780, 0); Actor_Says(3, 970, 53); Actor_Voice_Over(1710, 99); Actor_Voice_Over(1720, 99); Actor_Voice_Over(1730, 99); Actor_Set_Goal_Number(33, 240); }
void ScriptKP05::PlayerWalkedIn() { if (Game_Flag_Query(577)) { Game_Flag_Reset(577); } else if (Game_Flag_Query(574)) { Loop_Actor_Walk_To_XYZ(0, -1110.0f, 0.0f, 932.0f, 0, 0, false, 0); Game_Flag_Reset(574); } else { Loop_Actor_Walk_To_XYZ(0, -846.0f, 0.0f, 972.0f, 0, 0, false, 0); Game_Flag_Query(419); } if (Actor_Query_Goal_Number(66) == 411) { Actor_Set_Goal_Number(66, 412); } if (Actor_Query_Goal_Number(1) == 450) { Scene_Exits_Disable(); Actor_Face_Actor(1, 0, true); Actor_Says(1, 530, 15); Actor_Says(1, 540, 16); Actor_Face_Actor(0, 1, true); Player_Set_Combat_Mode(true); Actor_Says(0, 2200, 3); Actor_Says(1, 550, 17); Actor_Says(0, 2205, 3); Actor_Says(1, 560, 15); Actor_Says(1, 570, 16); Actor_Says(1, 580, 13); Actor_Says(0, 2210, 3); Actor_Says(1, 590, 13); Actor_Says(0, 2215, 3); Actor_Says(1, 600, 16); Actor_Says(1, 610, 15); Actor_Says(0, 2220, 3); Actor_Says(1, 620, 15); Actor_Says(1, 630, 17); Non_Player_Actor_Combat_Mode_On(1, 0, 1, 0, 9, 4, 7, 8, 0, -1, -1, 20, 240, 0); } }
bool SceneScriptMA01::ClickedOnExit(int exitId) { if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenMA01AttackMcCoy) { return true; } if (exitId == kMA01ExitMA06) { if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenFled) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1446.0f, 0.0f, -725.0f, 72, true, false, false)) { Actor_Set_Goal_Number(kActorZuben, kGoalZubenMA01AttackMcCoy); Scene_Exits_Disable(); } } else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 1446.0f, 0.0f, -725.0f, 12, true, false, false)) { Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); Game_Flag_Set(kFlagMA01toMA06); Set_Enter(kSetMA06, kSceneMA06); } return true; } if (exitId == kMA01ExitSpinner) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 381.0f, 0.0f, 54.0f, 0, true, false, false)) { Player_Loses_Control(); Actor_Face_Heading(kActorMcCoy, 736, false); Game_Flag_Reset(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagMcCoyInMcCoyApartment); Game_Flag_Reset(kFlagMcCoyInAnimoidRow); Game_Flag_Reset(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagMcCoyInPoliceStation); int spinnerDest = Spinner_Interface_Choose_Dest(kMA01LoopOutDoorAnim, false); switch (spinnerDest) { case kSpinnerDestinationPoliceStation: Game_Flag_Set(kFlagMcCoyInPoliceStation); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtPS01); Set_Enter(kSetPS01, kScenePS01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationRuncitersAnimals: Game_Flag_Set(kFlagMcCoyInRunciters); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtRC01); Set_Enter(kSetRC01, kSceneRC01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationChinatown: Game_Flag_Set(kFlagMcCoyInChinaTown); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtCT01); Set_Enter(kSetCT01_CT12, kSceneCT01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationTyrellBuilding: Game_Flag_Set(kFlagMcCoyInTyrellBuilding); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtTB02); Set_Enter(kSetTB02_TB03, kSceneTB02); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationAnimoidRow: Game_Flag_Set(kFlagMcCoyInAnimoidRow); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtAR01); Set_Enter(kSetAR01_AR02, kSceneAR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationDNARow: Game_Flag_Set(kFlagMcCoyInDNARow); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtDR01); Set_Enter(kSetDR01_DR02_DR04, kSceneDR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationBradburyBuilding: Game_Flag_Set(kFlagMcCoyInBradburyBuilding); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtBB01); Set_Enter(kSetBB01, kSceneBB01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationNightclubRow: Game_Flag_Set(kFlagMcCoyInNightclubRow); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtNR01); Set_Enter(kSetNR01, kSceneNR01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; case kSpinnerDestinationHysteriaHall: Game_Flag_Set(kFlagMcCoyInHysteriaHall); Game_Flag_Reset(kFlagSpinnerAtMA01); Game_Flag_Set(kFlagSpinnerAtHF01); Set_Enter(kSetHF01, kSceneHF01); Scene_Loop_Start_Special(kSceneLoopModeChangeSet, kMA01LoopOutshotRoof, true); break; default: Actor_Set_Invisible(kActorMcCoy, false); Actor_Face_Heading(kActorMcCoy, 736, false); Game_Flag_Set(kFlagMcCoyInMcCoyApartment); break; } } return true; } return false; }
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; }