void SceneScriptAR01::SceneFrameAdvanced(int frame) { if (frame == 16) { Ambient_Sounds_Play_Sound(kSfxCARDOWN3, 40, 0, 0, 99); } if (frame == 78 || frame == 199) { Ambient_Sounds_Play_Sound(kSfxSPINOPN4, 100, -50, -50, 99); } if (frame == 122 || frame == 242) { Ambient_Sounds_Play_Sound(kSfxSPINCLS1, 100, -50, -50, 99); } if (frame == 256) { Ambient_Sounds_Play_Sound(kSfxCARUP3, 40, -50, 80, 99); } if ((frame == 75 || frame == 196 ) && Game_Flag_Query(kFlagArrivedFromSpinner2) ) { Actor_Face_Heading(kActorMcCoy, 545, false); Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetOut); Game_Flag_Reset(kFlagArrivedFromSpinner2); } else if ( frame == 196 && !Game_Flag_Query(kFlagArrivedFromSpinner2 )) { Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetIn); } }
void SceneScriptNR04::sub_401DB0() { Dialogue_Menu_Clear_List(); DM_Add_To_List(1530, 10, 5, 3); DM_Add_To_List(1540, 3, 5, 10); Dialogue_Menu_Appear(320, 240); int answer = Dialogue_Menu_Query_Input(); Dialogue_Menu_Disappear(); if (answer == 1530) { Loop_Actor_Walk_To_Actor(kActorEarlyQ, kActorMcCoy, 36, 0, false); Actor_Change_Animation_Mode(kActorMcCoy, 23); Actor_Change_Animation_Mode(kActorEarlyQ, 23); Delay(1500); Actor_Says(kActorEarlyQ, 300, 3); Actor_Change_Animation_Mode(kActorMcCoy, 0); Actor_Change_Animation_Mode(kActorEarlyQ, 0); Actor_Says(kActorEarlyQ, 310, 3); ADQ_Add(kActorMcCoy, 3450, 3); Actor_Set_Targetable(kActorEarlyQ, false); Actor_Set_Goal_Number(kActorEarlyQ, 217); Actor_Clue_Lose(kActorMcCoy, kClueEarlyQsClub); Scene_Exits_Enable(); } else if (answer == 1540) { Actor_Says(kActorMcCoy, 8512, 15); Actor_Says(kActorEarlyQ, 320, 12); Actor_Says(kActorMcCoy, 3455, 13); Actor_Says(kActorEarlyQ, 330, 15); Actor_Says(kActorMcCoy, 3460, 12); Actor_Says(kActorEarlyQ, 340, 12); Actor_Says(kActorMcCoy, 3465, 12); Actor_Says(kActorEarlyQ, 350, 16); Actor_Set_Targetable(kActorEarlyQ, false); Actor_Set_Goal_Number(kActorEarlyQ, 217); Scene_Exits_Enable(); } }
bool SceneScriptCT04::ClickedOn3DObject(const char *objectName, bool a2) { if (objectName) { if (!Game_Flag_Query(137) && !Game_Flag_Query(169) && !Actor_Query_Goal_Number(kActorTransient)) { Game_Flag_Set(137); Actor_Set_Goal_Number(kActorTransient, 2); } if (Game_Flag_Query(169) && !Game_Flag_Query(170) && !Game_Flag_Query(171) && !Game_Flag_Query(172) && Global_Variable_Query(1) == 1) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -147.41f, -621.3f, 724.57f, 0, 1, false, 0)) { Player_Loses_Control(); Actor_Face_Heading(kActorMcCoy, 792, false); Actor_Put_In_Set(kActorTransient, 99); Actor_Set_At_XYZ(kActorTransient, 0, 0, 0, 0); Actor_Change_Animation_Mode(kActorMcCoy, 40); Actor_Voice_Over(320, kActorVoiceOver); Actor_Voice_Over(330, kActorVoiceOver); Actor_Voice_Over(340, kActorVoiceOver); Game_Flag_Set(170); Game_Flag_Set(173); } return false; } if (Game_Flag_Query(170)) { if (Game_Flag_Query(172)) { Actor_Voice_Over(270, kActorVoiceOver); Actor_Voice_Over(280, kActorVoiceOver); } else if (Game_Flag_Query(171)) { Actor_Voice_Over(250, kActorVoiceOver); Actor_Voice_Over(260, kActorVoiceOver); } else { Actor_Voice_Over(230, kActorVoiceOver); Actor_Voice_Over(240, kActorVoiceOver); Game_Flag_Reset(173); } return true; } if (Game_Flag_Query(174)) { if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 75, 0, 1, false)) { Actor_Face_Heading(kActorMcCoy, 707, false); Actor_Change_Animation_Mode(kActorMcCoy, 38); Ambient_Sounds_Play_Sound(553, 45, 30, 30, 0); Actor_Voice_Over(1810, kActorVoiceOver); Actor_Voice_Over(1820, kActorVoiceOver); return true; } return false; } if (!Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 75, 0, 1, false)) { Actor_Face_Heading(kActorMcCoy, 707, false); Actor_Change_Animation_Mode(kActorMcCoy, 38); Actor_Clue_Acquire(kActorMcCoy, kClueLicensePlate, 1, -1); Item_Pickup_Spin_Effect(952, 392, 225); Game_Flag_Set(174); return true; } } return false; }
void SceneScriptDR04::SceneFrameAdvanced(int frame) { if (Game_Flag_Query(kFlagDR05ViewExplosion)) { Game_Flag_Reset(kFlagDR05ViewExplosion); Game_Flag_Reset(kFlagDR05BombWillExplode); Scene_Loop_Set_Default(kDR04LoopMainPostExplosion); Scene_Loop_Start_Special(kSceneLoopModeOnce, kDR04LoopDR04Explosion, true); Music_Stop(4); Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiPerished); } else { if (Game_Flag_Query(kFlagDR05BombWillExplode)) { Game_Flag_Reset(kFlagDR05BombWillExplode); Game_Flag_Set(kFlagDR05BombExploded); Scene_Loop_Set_Default(kDR04LoopMainPostExplosion); Scene_Loop_Start_Special(kSceneLoopModeOnce, kDR04LoopDR04Explosion, true); Item_Remove_From_World(kItemBomb); } switch (frame) { case 193: Sound_Play(301, 100, 0, 100, 50); Actor_Set_Goal_Number(kActorMoraji, kGoalMorajiChooseFate); Player_Loses_Control(); Actor_Force_Stop_Walking(kActorMcCoy); if (farEnoughFromExplosion()) { if (Player_Query_Combat_Mode()) { Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeCombatHit); } else { Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeHit); } } else { Sound_Play_Speech_Line(kActorMcCoy, 9905, 100, 0, 99); Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie); Actor_Retired_Here(kActorMcCoy, 6, 6, true, -1); } Player_Gains_Control(); break; case 235: if (Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiJump && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiLayDown && Actor_Query_Goal_Number(kActorMoraji) != kGoalMorajiPerished ) { Actor_Set_Goal_Number(kActorOfficerGrayford, 101); } Scene_Exits_Enable(); break; case 237: Overlay_Play("DR04OVER", 0, true, true, 0); break; } } }
void SceneScriptMA01::SceneFrameAdvanced(int frame) { if (frame == 15) { Ambient_Sounds_Play_Sound(kSfxROOFLIT1, 70, -100, 100, 0); } if (frame == 61 || frame == 183 ) { Ambient_Sounds_Play_Sound(kSfxSPINOPN4, 100, 40, 0, 99); } if (frame == 107 || frame == 227 ) { Ambient_Sounds_Play_Sound(kSfxSPINCLS1, 100, 40, 0, 99); } if (frame == 1) { Ambient_Sounds_Play_Sound(kSfxCARDOWN3, 40, -60, 20, 99); } if (frame == 241) { Ambient_Sounds_Play_Sound(kSfxCARUP3, 40, 0, 0, 99); } if (frame == 58) { Sound_Play(kSfxMTLHIT1, 17, 20, 20, 50); } if ((frame == 75 || frame == 196 ) && Game_Flag_Query(kFlagArrivedFromSpinner2) ) { Actor_Face_Heading(kActorMcCoy, 736, false); Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetOut); Game_Flag_Reset(kFlagArrivedFromSpinner2); } else { if ( frame == 196 && !Game_Flag_Query(kFlagArrivedFromSpinner2) ) { Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeSpinnerGetIn); //return true; return; } if (frame == 240) { Player_Gains_Control(); } } //return true; }
void SceneScriptUG16::PlayerWalkedIn() { Game_Flag_Set(715); if (!Game_Flag_Query(595)) { Actor_Set_Goal_Number(kActorLuther, 403); } if (!Game_Flag_Query(556) && Actor_Query_Is_In_Current_Set(kActorLuther)) { Player_Loses_Control(); Loop_Actor_Walk_To_XYZ(kActorMcCoy, 120.29f, -35.67f, 214.8f, 310, 0, false, 0); Actor_Face_Actor(kActorMcCoy, kActorLuther, true); Actor_Says(kActorLuther, 0, 6); Actor_Says(kActorLuther, 30, 13); Actor_Change_Animation_Mode(kActorLuther, 17); Actor_Says(kActorLance, 0, 17); Actor_Says(kActorMcCoy, 5710, 14); Actor_Says(kActorLuther, 40, 13); Actor_Says(kActorLuther, 50, 15); Actor_Says(kActorLance, 20, 12); Actor_Says(kActorLuther, 60, 23); Actor_Says(kActorMcCoy, 5715, 14); Actor_Says(kActorLance, 30, 16); Actor_Says(kActorLuther, 70, 6); Player_Gains_Control(); Game_Flag_Set(556); } }
void SceneScriptCT12::SceneFrameAdvanced(int frame) { if (!((frame - 1) % 10)) { /*int v2 = Random_Query(0, 1); if (v2 <= 1) { if (v2) { v1 = 60; } else { v1 = 59; } }*/ Sound_Play(/*v1*/Random_Query(59, 60), 10, -80, -80, 50); } if (frame == 160) { Actor_Change_Animation_Mode(kActorGaff, 41); } if (frame == 152) { Sound_Play(116, 100, 40, 0, 50); } if (frame == 203) { Sound_Play(119, 100, 40, 0, 50); } if (frame == 212) { Sound_Play(117, 40, 0, 0, 50); } if (frame == 269) { Player_Gains_Control(); Player_Set_Combat_Mode(false); Actor_Set_Invisible(kActorGaff, false); } }
void ScriptNR08::SceneLoaded() { Obstacle_Object("BOX283", true); Unobstacle_Object("BOX283", true); if (Actor_Query_Goal_Number(3) == 210) { Actor_Change_Animation_Mode(3, 79); } }
bool SceneScriptCT10::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("TUB", objectName)) { if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -41.0f, 0.0f, -106.0f, 0, 1, false, 0)) { Player_Loses_Control(); Actor_Face_Heading(kActorMcCoy, 850, false); Actor_Change_Animation_Mode(kActorMcCoy, 38); Delay(1000); Sound_Play(338, 33, 0, 0, 50); Delay(3000); if (Actor_Clue_Query(kActorMcCoy, kClueStrangeScale1)) { Actor_Voice_Over(3700, kActorVoiceOver); } else { Actor_Clue_Acquire(kActorMcCoy, kClueStrangeScale1, 1, -1); Item_Pickup_Spin_Effect(969, 364, 214); } Delay(1000); Loop_Actor_Walk_To_XYZ(kActorMcCoy, -41.0f, 0.0f, -82.0f, 0, 0, false, 1); Player_Gains_Control(); } return true; } if (Object_Query_Click("CABINETTOP", objectName) || Object_Query_Click("CABINETFRONT", objectName)) { sub_401844(); return true; } return false; }
void ScriptNR07::sub_401C60() { Loop_Actor_Walk_To_XYZ(0, -109.0f, -73.0f, -89.0f, 0, 0, false, 0); Actor_Face_Object(0, "VASE", true); if (Actor_Query_Is_In_Current_Set(3)) { if (!Actor_Clue_Query(0, 97)) { Actor_Clue_Acquire(0, 97, 1, -1); int v0 = Actor_Query_Friendliness_To_Other(3, 0); if (v0 > 50) { Actor_Modify_Friendliness_To_Other(3, 0, 2); } else if (v0 <= 50) { Actor_Modify_Friendliness_To_Other(3, 0, -2); } Actor_Says(0, 3600, 19); Actor_Says(3, 550, 30); Actor_Says(0, 3605, 19); Actor_Says(3, 560, 31); Actor_Says(0, 3610, 19); } } else if (Actor_Clue_Query(0, 98)) { Actor_Says(0, 8585, 14); } else { Actor_Clue_Acquire(0, 98, 1, -1); Loop_Actor_Walk_To_Scene_Object(0, "VASE", 100, 1, false); Actor_Change_Animation_Mode(0, 23); Item_Pickup_Spin_Effect(935, 526, 268); Actor_Voice_Over(1690, 99); Actor_Voice_Over(1700, 99); } }
void ScriptNR07::sub_4018D4() { Actor_Set_Goal_Number(25, 201); Player_Loses_Control(); Actor_Set_At_XYZ(3, -136.0f, -73.0f, -18.0f, 300); Actor_Change_Animation_Mode(3, 71); Actor_Change_Animation_Mode(0, 21); Loop_Actor_Walk_To_XYZ(3, -102.0f, -73.5f, -233.0f, 0, 0, true, 0); if (Game_Flag_Query(47)) { Actor_Set_Goal_Number(3, 245); } else { Actor_Set_Goal_Number(3, 295); Game_Flag_Set(591); Actor_Put_In_Set(3, 91); Actor_Set_At_Waypoint(3, 33, 0); } Player_Gains_Control(); }
void ScriptKP07::DialogueQueueFlushed(int a1) { if (Actor_Query_Goal_Number(5) == 515) { Actor_Set_Targetable(5, false); Actor_Change_Animation_Mode(5, 21); Actor_Retired_Here(5, 12, 48, 1, -1); Actor_Set_Goal_Number(5, 599); } }
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::MouseClick(int x, int y) { if (Actor_Query_Animation_Mode(kActorMcCoy) == 85 || Actor_Query_Animation_Mode(kActorMcCoy) == 29) { return true; } if (Actor_Query_Animation_Mode(kActorMcCoy) == 53) { Actor_Change_Animation_Mode(kActorMcCoy, 29); return true; } return false; }
bool SceneScriptNR04::ClickedOn2DRegion(int region) { if ((region == 0 || region == 1 || region == 2) && Actor_Query_Which_Set_In(kActorEarlyQ) != 12 && Actor_Query_Animation_Mode(kActorMcCoy) != 53 && !Loop_Actor_Walk_To_Waypoint(kActorMcCoy, 445, 0, 1, false)) { Actor_Face_Heading(kActorMcCoy, 49, false); Actor_Change_Animation_Mode(kActorMcCoy, 85); Delay(2500); if (Game_Flag_Query(606) == 1) { return true; } if (Game_Flag_Query(374)) { Player_Loses_Control(); Actor_Voice_Over(4180, kActorVoiceOver); Actor_Change_Animation_Mode(kActorMcCoy, 48); Ambient_Sounds_Play_Sound(555, 90, 99, 0, 0); Delay(350); Actor_Set_At_XYZ(kActorMcCoy, 109.0f, 0.0f, 374.0f, 0); Actor_Retired_Here(kActorMcCoy, 12, 12, 1, -1); } return true; } return false; }
void SceneScriptCT04::SceneLoaded() { Obstacle_Object("DUMPSTER", true); Obstacle_Object("RIGHTWALL01", true); Obstacle_Object("BACK-BLDNG", true); Clickable_Object("DUMPSTER"); Footstep_Sounds_Set(0, 1); if (Game_Flag_Query(72)) { Game_Flag_Reset(72); } if (!Actor_Query_Goal_Number(kActorTransient)) { Actor_Change_Animation_Mode(kActorTransient, 38); } }
bool AIScriptTyrellGuard::GoalChanged(int currentGoalNumber, int newGoalNumber) { switch (newGoalNumber) { case 300: if (currentGoalNumber != newGoalNumber) { Actor_Change_Animation_Mode(kActorTyrellGuard, 55); AI_Countdown_Timer_Start(kActorTyrellGuard, 0, 30); } return true; case 301: Actor_Change_Animation_Mode(kActorTyrellGuard, kAnimationModeIdle); Delay(1000); Actor_Says(kActorTyrellGuard, 320, 14); Actor_Change_Animation_Mode(kActorTyrellGuard, 50); Ambient_Sounds_Play_Sound(590, 100, 0, 0, 0); Delay(1000); Actor_Force_Stop_Walking(kActorMcCoy); Actor_Set_Goal_Number(kActorMcCoy, 500); return true; case 302: AI_Countdown_Timer_Reset(kActorTyrellGuard, 0); Actor_Says(kActorTyrellGuard, 310, 14); AI_Countdown_Timer_Start(kActorTyrellGuard, 1, 20); return true; case 303: Actor_Change_Animation_Mode(kActorTyrellGuard, 50); Ambient_Sounds_Play_Sound(590, 100, 0, 0, 0); Delay(1000); Actor_Force_Stop_Walking(kActorMcCoy); Actor_Set_Goal_Number(kActorMcCoy, 500); return true; case 304: AI_Countdown_Timer_Reset(kActorTyrellGuard, 1); return true; } return false; }
bool AIScriptRajif::GoalChanged(int currentGoalNumber, int newGoalNumber) { if (newGoalNumber == 300) { Actor_Put_In_Set(kActorRajif, kSetMA02_MA04); Actor_Set_At_XYZ(kActorRajif, -73.34f, -140.40f, 342.0f, 300); Actor_Change_Animation_Mode(kActorRajif, 0); return true; } if (newGoalNumber == 599) { Actor_Put_In_Set(kActorRajif, kSetFreeSlotI); Actor_Set_At_Waypoint(kActorRajif, 41, 0); return true; } return false; }
bool AIScriptGenericWalkerA::GoalChanged(int currentGoalNumber, int newGoalNumber) { if (newGoalNumber == 0) { AI_Movement_Track_Flush(kActorGenwalkerA); Actor_Put_In_Set(kActorGenwalkerA, kSetFreeSlotH); Global_Variable_Set(kVariableGenericWalkerAModel, -1); return false; } else if (newGoalNumber == 1) { return true; } else if (newGoalNumber == 200) { Actor_Put_In_Set(kActorGenwalkerA, kSetRC04); Actor_Set_At_XYZ(kActorGenwalkerA, 0.0, 36.0, -172.0, 491); Actor_Change_Animation_Mode(kActorGenwalkerA, kAnimationModeCombatIdle); return true; } 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 SceneScriptUG16::ClickedOn3DObject(const char *objectName, bool a2) { if (Object_Query_Click("QUADPATCH05", objectName) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 194.0f, -35.0f, 160.8f, 0, 1, false, 0)) { Actor_Face_Heading(kActorMcCoy, 870, false); if (!Game_Flag_Query(597) && Game_Flag_Query(595)) { Game_Flag_Set(597); Delay(1000); Actor_Voice_Over(3480, kActorVoiceOver); Actor_Change_Animation_Mode(kActorMcCoy, 38); Sound_Play(339, 100, 0, 0, 50); Delay(1000); Item_Pickup_Spin_Effect(948, 460, 287); Actor_Voice_Over(2740, kActorVoiceOver); Actor_Voice_Over(2750, kActorVoiceOver); Actor_Voice_Over(2760, kActorVoiceOver); Actor_Voice_Over(2770, kActorVoiceOver); Actor_Clue_Acquire(kActorMcCoy, kClueFolder, 1, -1); } else { Actor_Says(kActorMcCoy, 8523, 12); Actor_Says(kActorMcCoy, 8635, 12); } return true; } if (Object_Query_Click("SCREEN 01", objectName) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 194.0f, -35.0f, 160.8f, 0, 1, false, 0)) { Actor_Face_Heading(kActorMcCoy, 870, false); if ((!Game_Flag_Query(595) && Actor_Query_Is_In_Current_Set(kActorLuther)) || Actor_Clue_Query(kActorMcCoy, kClueDNALutherLance) || Game_Flag_Query(568)) { Actor_Says(kActorMcCoy, 8525, 12); Actor_Says(kActorMcCoy, 8526, 12); return false; } Delay(2000); Actor_Face_Heading(kActorMcCoy, 1016, false); Delay(2000); Actor_Says(kActorMcCoy, 5725, 14); Delay(1000); Item_Pickup_Spin_Effect(941, 418, 305); Actor_Clue_Acquire(kActorMcCoy, kClueDNALutherLance, 1, -1); return true; } return false; }
void ScriptDR05::PlayerWalkedIn() { if (!Game_Flag_Query(511) && !Game_Flag_Query(270) && Game_Flag_Query(272)) { Item_Remove_From_World(122); } if (Game_Flag_Query(272)) { Loop_Actor_Walk_To_XYZ(0, -10.0f, 0.3f, 133.0f, 0, 0, false, 0); if (!Game_Flag_Query(511)) { Game_Flag_Set(511); if (Game_Flag_Query(48)) { Actor_Voice_Over(730, 99); Actor_Voice_Over(740, 99); Actor_Voice_Over(750, 99); Actor_Voice_Over(760, 99); Actor_Clue_Acquire(0, 269, 1, -1); } else { Actor_Voice_Over(670, 99); Actor_Voice_Over(680, 99); Actor_Voice_Over(700, 99); Actor_Voice_Over(710, 99); Actor_Voice_Over(720, 99); Actor_Clue_Acquire(0, 270, 1, -1); } } } else { Loop_Actor_Walk_To_XYZ(0, -10.0f, 0.3f, 133.0f, 0, 0, true, 0); } if (!Game_Flag_Query(274) && !Actor_Query_Goal_Number(35)) { Actor_Face_Actor(0, 35, true); Actor_Says(0, 1010, 13); Actor_Face_Item(0, 78, true); Player_Set_Combat_Mode(true); Actor_Says(35, 60, 12); Actor_Change_Animation_Mode(0, 0); Game_Flag_Set(274); //return true; } //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 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 AIScriptClovis::someAnim() { if (Game_Flag_Query(685)) { _animationState = 32; _animationFrame = 0; return; } switch (_animationState) { case 2: Actor_Change_Animation_Mode(kActorClovis, kAnimationModeSit); break; case 4: break; case 5: case 6: case 7: case 8: case 9: case 10: case 11: _flag = 1; break; case 12: _flag = 1; break; case 13: _animationState = 15; _animationFrame = 0; break; default: _animationState = 0; _animationFrame = 0; _var1 = 0; break; } }
void SceneScriptMA02::InitializeScene() { if (Game_Flag_Query(36)) { Setup_Scene_Information(-172.0f, -144.13f, 6.27f, 500); } else { Setup_Scene_Information(23.19f, -144.12f, 378.27f, 750); if (Global_Variable_Query(1) == 4) { Actor_Set_Goal_Number(kActorRajif, 300); } Game_Flag_Reset(711); } Scene_Exit_Add_2D_Exit(0, 538, 84, 639, 327, 1); Scene_Exit_Add_2D_Exit(1, 56, 98, 150, 260, 0); if (Global_Variable_Query(1) >= 4 && Global_Variable_Query(1) == 5 && Game_Flag_Query(653)) { Actor_Set_Goal_Number(kActorMaggie, 599); Actor_Change_Animation_Mode(kActorMaggie, 88); Actor_Put_In_Set(kActorMaggie, 10); Actor_Set_At_XYZ(kActorMaggie, -35.51f, -144.12f, 428.0f, 0); Actor_Retired_Here(kActorMaggie, 24, 24, 1, -1); } Ambient_Sounds_Add_Looping_Sound(104, 12, 0, 1); Ambient_Sounds_Add_Looping_Sound(71, 25, 0, 1); Ambient_Sounds_Add_Sound(72, 5, 30, 5, 5, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(73, 5, 30, 5, 5, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(74, 5, 30, 5, 5, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(375, 10, 60, 20, 20, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(376, 10, 60, 20, 20, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(87, 10, 60, 12, 12, -100, 100, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(68, 60, 180, 14, 14, 0, 0, -101, -101, 0, 0); Ambient_Sounds_Add_Sound(69, 60, 180, 14, 14, 0, 0, -101, -101, 0, 0); if (sub_401F7C()) { Ambient_Sounds_Add_Sound(403, 3, 3, 27, 27, -100, -100, -100, -100, 99, 0); } if (Global_Variable_Query(1) == 5 && Game_Flag_Query(653) && !Actor_Clue_Query(kActorMcCoy, kClueCrystalsCigarette)) { Overlay_Play("MA02OVER", 0, 1, 0, 0); } }
bool AIScriptClovis::UpdateAnimation(int *animation, int *frame) { bool flag; switch (_animationState) { case 0: if (_var1 == 1) { *animation = 227; if (_var2) { _var2--; } else if (++_animationFrame == 7) { _var2 = Random_Query(5, 15); } else { if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(227)) { _animationFrame = 0; _var1 = 0; } } } else if (_var1 == 0) { *animation = 228; if (_var2) { _animationFrame += _var3; if (_animationFrame > _var5) { _animationFrame = _var5; _var3 = -1; } else { if (_animationFrame < _var4) { _animationFrame = _var4; _var3 = 1; } } _var2--; } else { _animationFrame += _var3; if (_animationFrame == 13 && Random_Query(0, 1)) { _var3 = -1; _var4 = 9; _var5 = 13; _var2 = Random_Query(4, 15); } else { if (_animationFrame == 6) { if (Random_Query(0, 1)) { _var3 = -1; _var4 = 3; _var5 = 6; _var2 = Random_Query(4, 15); } } } if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(228)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(228) - 1; } } if (!_animationFrame) { if (Random_Query(0, 1) > 0) { _var1 = 1; } else { if (Random_Query(0, 2) > 0) { _var3 = 1; _var4 = 0; _var5 = 0; _var2 = Random_Query(5, 15); } } } } } break; case 1: if (_var1 == 0) { *animation = 228; } if (_var1 == 1) { *animation = 227; } if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) { _animationFrame += 3; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) { _animationFrame = 0; *animation = _animationNext; _animationState = _animationStateNext; } } else { _animationFrame -= 3; if (_animationFrame <= 0) { _animationFrame = 0; *animation = _animationNext; _animationState = _animationStateNext; } } break; case 2: *animation = 238; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(238)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(238) - 1; } } break; case 3: *animation = 239; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(239)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(239) - 1; flag = true; } else { flag = false; } } if (flag) { _animationState = 2; _animationFrame = 0; *animation = 238; if (Actor_Query_Goal_Number(kActorClovis) == kGoalClovisBB11TalkWithSadik) { Actor_Set_Goal_Number(kActorClovis, kGoalClovisBB11PrepareToTalkToMcCoy); } } break; case 4: *animation = 240; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(240)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(240) - 1; flag = true; } else { flag = false; } } if (flag) { *animation = 227; _animationState = 0; Actor_Change_Animation_Mode(kActorClovis, 0); } break; case 5: *animation = 230; if (!_animationFrame && _flag) { _animationState = 0; } else { _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(230)) { _animationFrame = 0; } } break; case 6: *animation = 231; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(231)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 7: *animation = 232; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(232)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 8: *animation = 233; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(233)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 9: *animation = 234; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(234)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 10: *animation = 235; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(235)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 11: *animation = 236; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(236)) { _animationFrame = 0; _animationState = 5; *animation = 230; } break; case 12: *animation = 241; if (!_animationFrame && _flag) { _animationState = 2; _animationFrame = 0; Actor_Change_Animation_Mode(kActorClovis, kAnimationModeSit); } else { _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(241)) { _animationFrame = 0; } } break; case 13: *animation = 208; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(208)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(208) - 1; } } break; case 14: *animation = 217; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(217)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(217) - 1; flag = true; } else { flag = false; } } if (flag) { *animation = 208; _animationState = 13; } break; case 15: *animation = 218; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(218)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(218) - 1; flag = true; } else { flag = false; } } if (flag) { *animation = 227; _animationState = 0; } break; case 16: *animation = 219; _animationFrame++; if (_animationFrame == 2) { int snd; if (Random_Query(1, 2) == 1) { snd = 9010; } else { snd = 9015; } Sound_Play_Speech_Line(5, snd, 75, 0, 99); } if (_animationFrame == 4) { Actor_Combat_AI_Hit_Attempt(5); } if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(*animation)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(*animation) - 1; flag = true; } else { flag = false; } } if (flag) { _animationState = 13; *animation = 208; Actor_Change_Animation_Mode(kActorClovis, 4); } break; case 17: *animation = 211; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(211)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(211) - 1; flag = true; } else { flag = false; } } if (flag) { _animationState = 13; *animation = 208; Actor_Change_Animation_Mode(kActorClovis, 4); } break; case 18: *animation = 212; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(212)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(212) - 1; flag = true; } else { flag = false; } } if (flag) { _animationState = 13; *animation = 208; Actor_Change_Animation_Mode(kActorClovis, 4); } break; case 19: *animation = 224; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(224)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(224) - 1; flag = true; } else { flag = false; } } if (flag) { *animation = 227; _animationState = 0; Actor_Change_Animation_Mode(kActorClovis, 0); } break; case 20: *animation = 225; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(225)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(225) - 1; flag = true; } else { flag = false; } } if (flag) { *animation = 227; _animationState = 0; Actor_Change_Animation_Mode(kActorClovis, 0); } break; case 21: *animation = 220; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(220)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(220) - 1; } } break; case 22: *animation = 221; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(221)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(221) - 1; } } break; case 23: *animation = 213; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(213)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(213) - 1; } } break; case 24: *animation = 217; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(217)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(217) - 1; } } break; case 25: *animation = 222; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(222)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(222) - 1; } } break; case 26: *animation = 223; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(223)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(223) - 1; } } break; case 27: *animation = 215; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(215)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(215) - 1; } } break; case 28: *animation = 216; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(216)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(216) - 1; } } break; case 29: *animation = 209; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(209)) { flag = true; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(209) - 1; flag = true; } else { flag = false; } } if (flag) { _animationState = 13; *animation = 208; Actor_Change_Animation_Mode(kActorClovis, 4); } break; case 30: *animation = 210; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(210)) { flag = 1; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(210) - 1; flag = 1; } else { flag = 0; } } if (flag) { _animationState = 13; *animation = 208; Actor_Change_Animation_Mode(kActorClovis, 4); } break; case 31: *animation = 242; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(242)) { flag = 1; _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(242) - 1; flag = 1; } else { flag = 0; } } if (flag) { *animation = 227; _animationState = 0; Actor_Change_Animation_Mode(kActorClovis, 0); } break; case 32: *animation = 243; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(243)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(243) - 1; } } break; case 33: *animation = 244; if (!_animationFrame && _flag) { _animationState = 32; _animationFrame = 0; Actor_Change_Animation_Mode(kActorClovis, 54); } else { _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(244)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(244) - 1; } } } break; case 34: *animation = 245; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(245)) { _animationState = 33; _animationFrame = 0; *animation = 244; Actor_Change_Animation_Mode(kActorClovis, 54); } break; case 35: _animationFrame++; *animation = 247; Actor_Change_Animation_Mode(kActorClovis, 54); if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(247)) { _animationFrame = 0; _animationState = 33; *animation = 244; } break; case 36: *animation = 248; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(248)) { _animationFrame = 0; _animationState = 37; *animation = 249; } break; case 37: *animation = 249; if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(249) - 1) { _animationFrame++; } break; case 38: *animation = 250; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(250)) { _animationFrame = 0; _animationState = 39; *animation = 251; } break; case 39: *animation = 251; _animationFrame++; if (_animationFrame >= Slice_Animation_Query_Number_Of_Frames(251)) { _animationFrame = 0; } else { if (_animationFrame < 0) { _animationFrame = Slice_Animation_Query_Number_Of_Frames(251) - 1; } } break; case 40: *animation = 252; if (_animationFrame < Slice_Animation_Query_Number_Of_Frames(252) - 1) { _animationFrame++; } break; case 41: *animation = 226; _animationFrame++; if (_animationFrame == Slice_Animation_Query_Number_Of_Frames(226) - 1) { Actor_Change_Animation_Mode(kActorClovis, 88); _animationState = 42; _animationFrame = Slice_Animation_Query_Number_Of_Frames(226) - 1; } break; case 42: *animation = 226; _animationFrame = Slice_Animation_Query_Number_Of_Frames(226) - 1; break; default: break; } *frame = _animationFrame; return true; }
bool AIScriptClovis::GoalChanged(int currentGoalNumber, int newGoalNumber) { switch (newGoalNumber) { case kGoalClovisDefault: AI_Movement_Track_Flush(kActorClovis); AI_Movement_Track_Append(kActorClovis, 33, 0); AI_Movement_Track_Repeat(kActorClovis); return true; case kGoalClovisBB11WalkToMcCoy: AI_Movement_Track_Flush(kActorClovis); AI_Movement_Track_Append(kActorClovis, 319, 0); AI_Movement_Track_Append(kActorClovis, 320, 0); AI_Movement_Track_Repeat(kActorClovis); return true; case kGoalClovisBB11StopSadik: Actor_Start_Speech_Sample(kActorClovis, 0); AI_Movement_Track_Flush(kActorClovis); AI_Movement_Track_Append(kActorClovis, 321, 0); AI_Movement_Track_Repeat(kActorClovis); return true; case kGoalClovisBB11TalkWithSadik: Actor_Set_Goal_Number(kActorSadik, kGoalSadikBB11TalkWithClovis); Actor_Says(kActorClovis, 10, 15); Actor_Says(kActorSadik, 0, kAnimationModeTalk); Actor_Face_Actor(kActorClovis, kActorSadik, true); Actor_Says(kActorClovis, 20, 13); Actor_Says(kActorClovis, 30, 12); Actor_Face_Actor(kActorSadik, kActorClovis, true); Actor_Says(kActorSadik, 10, kAnimationModeTalk); Actor_Says(kActorClovis, 40, 17); Actor_Says(kActorSadik, 20, kAnimationModeTalk); Actor_Face_Actor(kActorClovis, kActorMcCoy, true); Actor_Face_Actor(kActorSadik, kActorMcCoy, true); Actor_Says(kActorClovis, 50, 14); Actor_Change_Animation_Mode(kActorClovis, kAnimationModeSit); return true; case kGoalClovisBB11TalkToMcCoy: Actor_Says(kActorClovis, 60, 30); Actor_Says(kActorSadik, 30, kAnimationModeTalk); Actor_Says(kActorClovis, 70, 30); Actor_Says(kActorClovis, 80, 30); Actor_Change_Animation_Mode(kActorClovis, 29); Actor_Says(kActorSadik, 40, kAnimationModeTalk); Actor_Says(kActorSadik, 50, kAnimationModeTalk); Actor_Says(kActorClovis, 90, 13); Actor_Face_Current_Camera(5, true); Actor_Says(kActorClovis, 100, 17); Delay(1000); if (!Game_Flag_Query(kFlagSadikIsReplicant)) { Actor_Clue_Acquire(kActorMcCoy, kClueStaggeredbyPunches, true, kActorSadik); } Game_Flag_Set(kFlagNotUsed383); Game_Flag_Reset(kFlagBB11SadikFight); Global_Variable_Set(kVariableChapter, 3); Actor_Set_Goal_Number(kActorClovis, 200); Actor_Set_Goal_Number(kActorSadik, 200); Actor_Clue_Acquire(kActorMcCoy, kClueAct2Ended, true, -1); Player_Gains_Control(); Chapter_Enter(3, kSetCT08_CT51_UG12, kSceneCT08); Game_Flag_Set(kFlagMcCoyTiedDown); Game_Flag_Set(kFlagChapter3Intro); return true; case 300: Actor_Put_In_Set(kActorClovis, kSetUG18); Actor_Set_At_XYZ(kActorClovis, -52.26f, 0.0f, 611.02f, 900); Actor_Change_Animation_Mode(kActorClovis, kAnimationModeIdle); return true; case 301: case 302: case 303: case 310: return true; case 350: Actor_Put_In_Set(kActorClovis, kSetFreeSlotA); Actor_Set_At_Waypoint(kActorClovis, 33, 0); return true; case 400: AI_Movement_Track_Flush(kActorClovis); Actor_Put_In_Set(kActorClovis, kSetFreeSlotA); Actor_Set_At_Waypoint(kActorClovis, 33, 0); return true; case 401: AI_Movement_Track_Flush(kActorClovis); AI_Movement_Track_Append(kActorClovis, 341, 0); AI_Movement_Track_Append(kActorClovis, 342, 0); AI_Movement_Track_Repeat(kActorClovis); return true; case 402: Player_Loses_Control(); Actor_Force_Stop_Walking(kActorMcCoy); Actor_Face_Actor(kActorMcCoy, kActorClovis, 1); Loop_Actor_Walk_To_Actor(kActorClovis, kActorMcCoy, 48, 0, 1); Actor_Face_Actor(kActorClovis, kActorMcCoy, 1); Actor_Change_Animation_Mode(kActorClovis, 6); if (Player_Query_Combat_Mode()) { Actor_Change_Animation_Mode(kActorMcCoy, 49); } else { Actor_Change_Animation_Mode(kActorMcCoy, 48); } Delay(3000); Actor_Retired_Here(kActorMcCoy, 12, 48, 1, kActorClovis); return true; case 500: Actor_Set_Goal_Number(kActorClovis, 510); return true; case 510: if (Game_Flag_Query(653)) { Actor_Set_Goal_Number(kActorClovis, 513); } else { Actor_Set_Goal_Number(kActorClovis, 511); Game_Flag_Set(685); } return true; case 511: Actor_Put_In_Set(kActorClovis, kSetKP05_KP06); Actor_Set_At_XYZ(kActorClovis, -1072.0f, 8.26f, -708.0f, 530); return true; case 512: Actor_Says(kActorClovis, 110, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2255, kAnimationModeTalk); Actor_Says(kActorClovis, 120, kAnimationModeTalk); Actor_Says(kActorClovis, 130, kAnimationModeTalk); Actor_Says(kActorClovis, 140, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2260, kAnimationModeTalk); Actor_Says(kActorClovis, 150, kAnimationModeTalk); Actor_Set_Goal_Number(kActorClovis, 513); return true; case 513: Actor_Put_In_Set(kActorClovis, kSetKP07); Actor_Set_Targetable(kActorClovis, true); if (Game_Flag_Query(653)) { Global_Variable_Set(kVariableReplicants, 0); Global_Variable_Increment(kVariableReplicants, 1); Actor_Set_At_XYZ(kActorClovis, 45.0f, -41.52f, -85.0f, 750); } else { Actor_Set_At_XYZ(kActorClovis, 84.85f, -50.56f, -68.87f, 800); Actor_Face_Heading(kActorClovis, 1022, false); } someAnim(); return true; case 514: Actor_Says(kActorMcCoy, 2345, 16); Actor_Says(kActorClovis, 170, -1); Actor_Says(kActorClovis, 180, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2350, 17); if (!Game_Flag_Query(714)) { Actor_Says(kActorMcCoy, 2355, 11); } Actor_Says(kActorClovis, 190, -1); Actor_Says(kActorClovis, 200, kAnimationModeTalk); Actor_Says(kActorMcCoy, 2360, 18); Actor_Says(kActorClovis, 210, kAnimationModeTalk); Actor_Says(kActorClovis, 220, -1); Actor_Set_Goal_Number(kActorClovis, 515); return true; case 515: ADQ_Add(kActorClovis, 240, -1); ADQ_Add(kActorClovis, 250, -1); ADQ_Add(kActorClovis, 260, -1); ADQ_Add(kActorClovis, 270, -1); ADQ_Add_Pause(1000); ADQ_Add(kActorClovis, 280, -1); ADQ_Add(kActorClovis, 290, -1); ADQ_Add(kActorClovis, 300, -1); return true; case 516: Actor_Says(kActorMcCoy, 8501, kAnimationModeTalk); Actor_Says(kActorClovis, 1260, kAnimationModeTalk); Actor_Says(kActorMcCoy, 8502, kAnimationModeTalk); Actor_Says(kActorClovis, 1270, kAnimationModeTalk); Actor_Says(kActorMcCoy, 8504, kAnimationModeTalk); Actor_Says(kActorClovis, 1290, kAnimationModeTalk); Actor_Says(kActorMcCoy, 8505, kAnimationModeTalk); Actor_Says(kActorClovis, 1300, kAnimationModeTalk); Actor_Says(kActorClovis, 1310, kAnimationModeTalk); Ambient_Sounds_Remove_All_Non_Looping_Sounds(true); Ambient_Sounds_Remove_All_Looping_Sounds(1); Outtake_Play(kOuttakeEnd4A, 0, -1); if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsLucy && Game_Flag_Query(kFlagLucyIsReplicant) ) { Outtake_Play(kOuttakeEnd4B, 0, -1); } else if (Global_Variable_Query(kVariableAffectionTowards) == kAffectionTowardsDektora && Game_Flag_Query(kFlagDektoraIsReplicant) ) { Outtake_Play(kOuttakeEnd4C, 0, -1); } Outtake_Play(kOuttakeEnd4D, 0, -1); Game_Over(); return true; case 517: if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorLucy, kSetKP07)) { Actor_Set_Goal_Number(kActorLucy, 599); Global_Variable_Decrement(kVariableReplicants, 1); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorLuther, kSetKP07)) { Actor_Set_Goal_Number(kActorLuther, 599); Global_Variable_Decrement(kVariableReplicants, 1); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorDektora, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorDektora, kActorCombatStateIdle, false, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorZuben, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorZuben, kActorCombatStateIdle, false, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorSadik, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorSadik, kActorCombatStateIdle, true, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorIzo, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorIzo, kActorCombatStateIdle, false, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorGordo, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorGordo, kActorCombatStateIdle, true, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } if (Global_Variable_Query(kVariableChapter) == 5 && Actor_Query_In_Set(kActorClovis, kSetKP07)) { Non_Player_Actor_Combat_Mode_On(kActorClovis, kActorCombatStateIdle, false, kActorMcCoy, 19, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 10, 300, false); } return true; case 518: Actor_Set_At_XYZ(kActorClovis, 84.85f, -50.56f, -68.87f, 800); Actor_Face_Heading(kActorClovis, 1022, false); Actor_Set_Targetable(kActorClovis, true); Game_Flag_Set(685); someAnim(); return true; default: break; } return false; }
bool AIScriptClovis::ChangeAnimationMode(int mode) { switch (mode) { case kAnimationModeIdle: if (!Game_Flag_Query(685)) { switch (_animationState) { case 2: Actor_Change_Animation_Mode(kActorClovis, kAnimationModeSit); break; case 4: break; case 5: case 6: case 7: case 8: case 9: case 10: case 11: _flag = 1; break; case 12: _flag = 1; break; case 13: _animationState = 15; _animationFrame = 0; break; default: _animationState = 0; _animationFrame = 0; _var1 = 0; break; } break; } _animationState = 32; _animationFrame = 0; break; case kAnimationModeWalk: _animationState = 21; _animationFrame = 0; break; case kAnimationModeRun: _animationState = 22; _animationFrame = 0; break; case kAnimationModeTalk: case 9: if (Game_Flag_Query(685)) { _animationFrame = 0; _animationState = 34; } else { if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 5; _animationNext = 230; _flag = 0; } } break; case kAnimationModeCombatIdle: switch (_animationState) { case 13: case 14: break; case 23: case 24: case 27: case 28: _animationState = 13; _animationFrame = 0; break; default: _animationState = 1; _animationStateNext = 14; _animationNext = 217; break; } break; case kAnimationModeCombatAttack: _animationState = 16; _animationFrame = 0; break; case kAnimationModeCombatWalk: _animationState = 21; _animationFrame = 0; break; case kAnimationModeCombatRun: _animationState = 22; _animationFrame = 0; break; case 10: case 12: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 6; _animationNext = 231; _flag = 0; } break; case 11: case 14: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 8; _animationNext = 233; _flag = 0; } break; case 13: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 7; _animationNext = 232; _flag = 0; } break; case 15: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 9; _animationNext = 234; _flag = 0; } break; case 16: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 10; _animationNext = 235; _flag = 0; } break; case 17: if (_animationState < 5 || _animationState > 11) { _animationState = 1; _animationStateNext = 11; _animationNext = 236; _flag = 0; } break; case 20: _animationState = 31; _animationFrame = 0; break; case kAnimationModeHit: if ((unsigned int)(_animationState - 13) > 3) { if ((unsigned int)(_animationState - 32) > 8) { if (Random_Query(0, 1)) { _animationState = 20; } else { _animationState = 19; } _animationFrame = 0; } else { _animationState = 40; _animationFrame = 0; } } else { if (Random_Query(0, 1)) { _animationState = 18; } else { _animationState = 17; } _animationFrame = 0; } break; case kAnimationModeCombatHit: if (Random_Query(0, 1)) { _animationState = 17; } else { _animationState = 18; } _animationFrame = 0; break; case 29: _animationState = 4; _animationFrame = 0; break; case 30: _animationState = 12; _animationFrame = 0; _flag = 0; break; case 88: _animationState = 42; _animationFrame = Slice_Animation_Query_Number_Of_Frames(226) - 1; break; case kAnimationModeDie: _animationState = 41; _animationFrame = 0; break; case kAnimationModeSit: switch (_animationState) { case 4: case 5: case 6: case 7: case 8: case 9: case 10: case 11: _animationState = 3; _animationFrame = 0; break; default: break; } break; case 54: _animationFrame = 0; _animationState = 32; break; } return true; }
void SceneScriptNR04::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) { if (actorId == 18) { switch (newGoal) { case 214: Actor_Change_Animation_Mode(kActorEarlyQ, 29); Delay(2500); Actor_Says(kActorEarlyQ, 290, 3); sub_401DB0(); //return true; break; case 213: Actor_Clue_Acquire(kActorMcCoy, kClueDektorasDressingRoom, 0, kActorEarlyQ); Item_Pickup_Spin_Effect(984, 200, 160); Actor_Says(kActorEarlyQ, 200, 30); Actor_Says(kActorEarlyQ, 210, 30); Actor_Says(kActorEarlyQ, 220, 30); Actor_Says_With_Pause(kActorMcCoy, 3425, 1.5f, 23); Actor_Says(kActorMcCoy, 3430, 3); Actor_Says(kActorEarlyQ, 240, 30); Actor_Says(kActorMcCoy, 3435, 3); Actor_Says(kActorEarlyQ, 250, 30); Actor_Says(kActorMcCoy, 3440, 3); Actor_Says(kActorEarlyQ, 280, 30); Actor_Says(kActorMcCoy, 3445, 3); Actor_Set_Goal_Number(kActorEarlyQ, 214); //return true; break; case 209: Actor_Face_Actor(kActorMcCoy, kActorEarlyQ, true); Delay(3000); Actor_Says(kActorEarlyQ, 170, 30); Actor_Says(kActorMcCoy, 3415, 3); Actor_Says(kActorEarlyQ, 180, 30); Actor_Says_With_Pause(kActorMcCoy, 3420, 1.5f, 3); Actor_Says(kActorEarlyQ, 190, 30); Actor_Set_Goal_Number(kActorEarlyQ, 211); //return true; break; case 207: Loop_Actor_Walk_To_Waypoint(kActorEarlyQ, 445, 0, 1, false); Actor_Face_Heading(kActorEarlyQ, 49, false); Actor_Change_Animation_Mode(kActorEarlyQ, 85); Actor_Face_Actor(kActorMcCoy, kActorEarlyQ, true); Actor_Set_Goal_Number(kActorEarlyQ, 208); Actor_Clue_Acquire(kActorMcCoy, kClueEarlyQInterview, 0, kActorEarlyQ); //return true; break; case 204: Actor_Face_Actor(kActorMcCoy, kActorEarlyQ, true); Actor_Says(kActorEarlyQ, 90, 73); Actor_Says(kActorMcCoy, 3390, 3); Actor_Face_Actor(kActorEarlyQ, kActorMcCoy, true); Actor_Says(kActorEarlyQ, 110, 74); Actor_Says(kActorMcCoy, 3385, 3); Actor_Says(kActorEarlyQ, 120, 74); Actor_Face_Actor(kActorEarlyQ, kActorMcCoy, true); Actor_Set_Goal_Number(kActorEarlyQ, 205); //return true; break; case 202: Actor_Face_Actor(kActorEarlyQ, kActorMcCoy, true); Actor_Face_Actor(kActorMcCoy, kActorEarlyQ, true); Actor_Says(kActorEarlyQ, 30, 3); Actor_Says(kActorMcCoy, 3375, 3); Actor_Says_With_Pause(kActorEarlyQ, 50, 1.5f, 3); Actor_Says(kActorEarlyQ, 60, 3); Actor_Says_With_Pause(kActorMcCoy, 3380, 1.0f, 3); Actor_Says(kActorEarlyQ, 70, 3); Actor_Says(kActorMcCoy, 3415, 3); Actor_Says(kActorEarlyQ, 80, 3); Player_Gains_Control(); Actor_Set_Goal_Number(kActorEarlyQ, 203); //return true; break; } } //return false; }