Esempio n. 1
0
bool SceneScriptBB07::ClickedOn3DObject(const char *objectName, bool a2) {
	if (Object_Query_Click("PRINTER", objectName)) {
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -472.63f, 252.59f, -1086.81f, 0, false, false, 0)) {
			Actor_Face_Object(kActorMcCoy, "PRINTER", true);
			if ( Game_Flag_Query(kFlagBB07ElectricityOn)
			 && !Game_Flag_Query(kFlagBB07PrinterChecked)
			) {
				Actor_Voice_Over(130, kActorVoiceOver);
				Item_Pickup_Spin_Effect(941, 439, 242);
				Actor_Voice_Over(140, kActorVoiceOver);
				Game_Flag_Set(kFlagBB07PrinterChecked);
				Actor_Clue_Acquire(kActorMcCoy, kClueDNASebastian, true, -1);
			} else if (Game_Flag_Query(kFlagBB07ElectricityOn)
			        && Game_Flag_Query(kFlagBB07PrinterChecked)
			) {
				Actor_Face_Object(kActorMcCoy, "PRINTER", true);
				Actor_Says(kActorMcCoy, 8570, 13);
			} else {
				Actor_Face_Object(kActorMcCoy, "PRINTER", true);
				Actor_Says(kActorMcCoy, 8575, 13);
			}
		}
	}
	return false;
}
Esempio n. 2
0
void SceneScriptUG14::PlayerWalkedIn() {
	if (Game_Flag_Query(kFlagUG19toUG14)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -250.0f, 12.97f, -152.0f, 0, false, false, false);
		Game_Flag_Reset(kFlagUG19toUG14);
	} else if (Game_Flag_Query(kFlagUG12toUG14)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -50.0f, 129.0f, -604.0f, 0, false, false, false);
		Game_Flag_Reset(kFlagUG12toUG14);
	} else {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 186.04f, -44.01f, 0, false, false, false);
		Actor_Face_Heading(kActorMcCoy, 10, false);
		Footstep_Sound_Override_On(3);
		Loop_Actor_Travel_Stairs(kActorMcCoy, 6, false, kAnimationModeIdle);
		Footstep_Sound_Override_Off();
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 157.0f, 128.92f, -148.01f, 0, false, false, false);
		Actor_Face_Heading(kActorMcCoy, 807, false);
		Game_Flag_Reset(kFlagUG10toUG14);
	}

	if ( Global_Variable_Query(kVariableChapter) == 4
	 &&  Game_Flag_Query(kFlagCT04HomelessBodyThrownAway)
	 && !Game_Flag_Query(kFlagUG14DeadHomeless)
	) {
		Overlay_Play("UG14OVER", 0, false, true, 0);
		Delay(1000);
		Actor_Face_Heading(kActorMcCoy, 609, false);
		Delay(3000);
		Actor_Voice_Over(270, kActorVoiceOver);
		Delay(2150);
		Actor_Voice_Over(300, kActorVoiceOver);
		Game_Flag_Set(kFlagUG14DeadHomeless);
	}
	//return false;
}
Esempio n. 3
0
bool ScriptTB06::ClickedOnItem(int itemId, bool a2) {
	if (itemId == 84 && !Loop_Actor_Walk_To_Item(0, 84, 12, 1, false)) {
		Actor_Face_Item(0, 84, true);
		Actor_Clue_Acquire(0, 65, 1, -1);
		Item_Pickup_Spin_Effect(942, 341, 368);
		Item_Remove_From_World(84);
		Actor_Voice_Over(4160, 99);
		Game_Flag_Set(519);
		return true;
	}
	if (itemId == 108 && !Loop_Actor_Walk_To_Item(0, 108, 12, 1, false)) {
		Actor_Face_Item(0, 108, true);
		Actor_Clue_Acquire(0, 53, 1, -1);
		Item_Remove_From_World(108);
		Item_Pickup_Spin_Effect(955, 390, 368);
		Actor_Says(0, 8775, 3);
		Game_Flag_Set(520);
		return true;
	}
	if (itemId == 82 && !Loop_Actor_Walk_To_Item(0, 82, 12, 1, false)) {
		Actor_Face_Item(0, 82, true);
		Actor_Says(0, 5285, 3);
		return true;
	}
	if ((itemId == 103 || itemId == 104 || itemId == 105) && !Loop_Actor_Walk_To_Item(0, 103, 24, 1, false)) {
		Actor_Face_Item(0, 103, true);
		Actor_Voice_Over(2380, 99);
		Actor_Voice_Over(2390, 99);
		Actor_Voice_Over(2400, 99);
		return true;
	}
	return false;
}
Esempio n. 4
0
void SceneScriptRC01::PlayerWalkedIn() {
	if (Game_Flag_Query(kFlagSpinnerAtRC01) && !Game_Flag_Query(kFlagRC02toRC01) && !Game_Flag_Query(kFlagRC03toRC01)) {
		walkToCenter();
	}

	if (Game_Flag_Query(kFlagRC03toRC01)) {
		Player_Loses_Control();
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -415.98f, -0.30f, 262.15f, 0, 0, false, 0);
		Player_Gains_Control();
		Game_Flag_Reset(kFlagRC03toRC01);
	}

	if (Game_Flag_Query(kFlagRC02toRC01)) {
		Player_Loses_Control();
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -203.45f, 5.55f, 85.05f, 0, 0, false, 0);
		Player_Gains_Control();
		Game_Flag_Reset(kFlagRC02toRC01);

		if ( Game_Flag_Query(kFlagRC02Entered)
		 && !Game_Flag_Query(kFlagRC02Left)
		) {
			Actor_Voice_Over(1910, kActorVoiceOver);
			Actor_Voice_Over(1920, kActorVoiceOver);
			Actor_Voice_Over(1930, kActorVoiceOver);
			Game_Flag_Set(kFlagRC02Left);
		}
		//return true;
	}
	//return false;
}
Esempio n. 5
0
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;

}
Esempio n. 6
0
bool SceneScriptCT04::ClickedOnActor(int actorId) {
	if (actorId == 12) {
		if (Game_Flag_Query(169)) {
			if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorTransient, 36, 1, false)) {
				Actor_Voice_Over(290, kActorVoiceOver);
				Actor_Voice_Over(300, kActorVoiceOver);
				Actor_Voice_Over(310, kActorVoiceOver);
			}
		} else {
			Actor_Set_Targetable(kActorTransient, false);
			if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorTransient, 36, 1, false)) {
				Actor_Face_Actor(kActorMcCoy, kActorTransient, true);
				if (!Game_Flag_Query(137)) {
					if (Game_Flag_Query(40)) {
						Actor_Says(kActorMcCoy, 435, 3);
						Actor_Set_Goal_Number(kActorTransient, 2);
					} else {
						Music_Stop(3);
						Actor_Says(kActorMcCoy, 425, 3);
						Actor_Says(kActorTransient, 0, 13);
						sub_401D4C();
						Actor_Set_Goal_Number(kActorTransient, 2);
					}
					Game_Flag_Set(137);
				} else {
					Actor_Face_Actor(kActorMcCoy, kActorTransient, true);
					Actor_Says(kActorMcCoy, 435, 3);
				}
			}
		}
		return true;
	}
	return false;
}
Esempio n. 7
0
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);
	}
}
Esempio n. 8
0
void ScriptHF01::PlayerWalkedIn() {
	if (Game_Flag_Query(663)) {
		ADQ_Flush();
		ADQ_Add(24, 280, 3);
		Actor_Put_In_Set(23, 37);
		Actor_Set_At_XYZ(23, 8.2f, 8.0f, -346.67f, 1021);
		Actor_Put_In_Set(24, 37);
		Actor_Set_At_XYZ(24, 51.21f, 8.0f, -540.78f, 796);
		Non_Player_Actor_Combat_Mode_On(23, 3, 1, 0, 4, 4, 7, 8, 0, 0, 0, 100, 300, 0);
		Non_Player_Actor_Combat_Mode_On(24, 3, 1, 0, 4, 4, 7, 8, 0, 0, 0, 100, 300, 0);
	}
	if (!Game_Flag_Query(165) && Actor_Query_Goal_Number(9) != 2) {
		if (Actor_Clue_Query(0, 141) && Global_Variable_Query(45) == 3 && Actor_Query_Goal_Number(6) != 599) {
			Actor_Put_In_Set(6, 37);
			Actor_Set_At_XYZ(6, -5.0f, 8.0f, -622.0f, 419);
			Actor_Set_Targetable(6, true);
		} else if (Actor_Clue_Query(0, 139) && Global_Variable_Query(45) == 2 && Actor_Query_Goal_Number(3) != 599) {
			Actor_Put_In_Set(3, 37);
			Actor_Set_At_XYZ(3, -5.0f, 8.0f, -622.0f, 419);
			Actor_Set_Targetable(3, true);
		}
	}
	if (Game_Flag_Query(617)) {
		Actor_Set_Goal_Number(1, 280);
		Game_Flag_Reset(617);
		//return true;
		return;
	}
	if (Game_Flag_Query(652)) {
		Game_Flag_Reset(652);
		Actor_Voice_Over(950, 99);
		Actor_Voice_Over(960, 99);
		Actor_Voice_Over(970, 99);
		Actor_Voice_Over(980, 99);
	} else if (!Game_Flag_Query(377) && Global_Variable_Query(1) < 4) {
		ADQ_Flush();
		ADQ_Add(31, 0, 14);
		ADQ_Add(31, 10, 3);
		ADQ_Add(22, 0, 3);
		Actor_Face_Actor(31, 22, true);
		ADQ_Add(31, 20, 13);
		ADQ_Add(22, 10, 3);
		ADQ_Add(31, 30, 3);
		ADQ_Add(22, 20, 3);
		Actor_Face_Heading(31, 271, false);
		Game_Flag_Set(377);
	}
	if (Game_Flag_Query(311)) {
		Loop_Actor_Walk_To_XYZ(0, 124.0f, 8.0f, -724.0f, 0, 1, false, 0);
	} else if (Game_Flag_Query(309)) {
		Loop_Actor_Walk_To_XYZ(0, 406.0f, 8.0f, -717.0f, 0, 1, false, 0);
	} else if (!Game_Flag_Query(313)) {
		Loop_Actor_Walk_To_XYZ(0, 100.0f, 0.0f, -300.0f, 0, 1, false, 0);
	}
	Game_Flag_Reset(311);
	Game_Flag_Reset(309);
	Game_Flag_Reset(313);
	//return false;
}
Esempio n. 9
0
void SceneScriptHF01::PlayerWalkedIn() {
	if (Game_Flag_Query(663)) {
		ADQ_Flush();
		ADQ_Add(kActorOfficerGrayford, 280, 3);
		Actor_Put_In_Set(kActorOfficerLeary, 37);
		Actor_Set_At_XYZ(kActorOfficerLeary, 8.2f, 8.0f, -346.67f, 1021);
		Actor_Put_In_Set(kActorOfficerGrayford, 37);
		Actor_Set_At_XYZ(kActorOfficerGrayford, 51.21f, 8.0f, -540.78f, 796);
		Non_Player_Actor_Combat_Mode_On(kActorOfficerLeary, kActorCombatStateUncover, true, kActorMcCoy, 4, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 0, 100, 300, false);
		Non_Player_Actor_Combat_Mode_On(kActorOfficerGrayford, kActorCombatStateUncover, true, kActorMcCoy, 4, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 0, 100, 300, false);
	}
	if (!Game_Flag_Query(165) && Actor_Query_Goal_Number(kActorCrazylegs) != 2) {
		if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallLucy1) && Global_Variable_Query(kVariableAffectionTowards) == 3 && Actor_Query_Goal_Number(kActorLucy) != 599) {
			Actor_Put_In_Set(kActorLucy, 37);
			Actor_Set_At_XYZ(kActorLucy, -5.0f, 8.0f, -622.0f, 419);
			Actor_Set_Targetable(kActorLucy, true);
		} else if (Actor_Clue_Query(kActorMcCoy, kCluePhoneCallDektora1) && Global_Variable_Query(kVariableAffectionTowards) == 2 && Actor_Query_Goal_Number(kActorDektora) != 599) {
			Actor_Put_In_Set(kActorDektora, 37);
			Actor_Set_At_XYZ(kActorDektora, -5.0f, 8.0f, -622.0f, 419);
			Actor_Set_Targetable(kActorDektora, true);
		}
	}
	if (Game_Flag_Query(617)) {
		Actor_Set_Goal_Number(kActorSteele, 280);
		Game_Flag_Reset(617);
		//return true;
		return;
	}
	if (Game_Flag_Query(652)) {
		Game_Flag_Reset(652);
		Actor_Voice_Over(950, kActorVoiceOver);
		Actor_Voice_Over(960, kActorVoiceOver);
		Actor_Voice_Over(970, kActorVoiceOver);
		Actor_Voice_Over(980, kActorVoiceOver);
	} else if (!Game_Flag_Query(377) && Global_Variable_Query(kVariableChapter) < 4) {
		ADQ_Flush();
		ADQ_Add(kActorMurray, 0, 14);
		ADQ_Add(kActorMurray, 10, 3);
		ADQ_Add(kActorMia, 0, 3);
		Actor_Face_Actor(kActorMurray, kActorMia, true);
		ADQ_Add(kActorMurray, 20, 13);
		ADQ_Add(kActorMia, 10, 3);
		ADQ_Add(kActorMurray, 30, 3);
		ADQ_Add(kActorMia, 20, 3);
		Actor_Face_Heading(kActorMurray, 271, false);
		Game_Flag_Set(377);
	}
	if (Game_Flag_Query(311)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 124.0f, 8.0f, -724.0f, 0, 1, false, 0);
	} else if (Game_Flag_Query(309)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 406.0f, 8.0f, -717.0f, 0, 1, false, 0);
	} else if (!Game_Flag_Query(313)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 100.0f, 0.0f, -300.0f, 0, 1, false, 0);
	}
	Game_Flag_Reset(311);
	Game_Flag_Reset(309);
	Game_Flag_Reset(313);
	//return false;
}
Esempio n. 10
0
bool SceneScriptRC01::ClickedOn3DObject(const char *objectName, bool a2) {
	if (Object_Query_Click("BARICADE01", objectName)
	 || Object_Query_Click("BARICADE03", objectName)
	 || Object_Query_Click("BARICADE04", objectName)
	 || Object_Query_Click("70_1", objectName)
	 || Object_Query_Click("70_2", objectName)
	 || Object_Query_Click("70_3", objectName)
	 || Object_Query_Click("70_5", objectName)
	 || Object_Query_Click("70_6", objectName)
	) {
		interrogateCrowd();
		return true;
	}

	if (Object_Query_Click("HYDRANT02", objectName)) {
		if (!Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "HYDRANT02", 60, true, false)) {
			if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer)) {
				Actor_Says(kActorMcCoy, 6975, kAnimationModeTalk);
			} else {
				Actor_Face_Object(kActorMcCoy, "HYDRANT02", true);
				Actor_Voice_Over(1880, kActorVoiceOver);
				Actor_Voice_Over(1890, kActorVoiceOver);
				I_Sez("JM: That McCoy--he's one funny guy! Jet-black fire truck, hehehehe...");
				Actor_Clue_Acquire(kActorMcCoy, kCluePaintTransfer, true, -1);
			}
		}
		return true;
	}

	if (Object_Query_Click("DOOR LEFT", objectName)) {
		if (!Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "DOOR LEFT", 48, true, false)) {
			Actor_Face_Object(kActorMcCoy, "DOOR LEFT", true);
			if (!Actor_Clue_Query(kActorMcCoy, kClueDoorForced2) && Actor_Query_In_Set(kActorOfficerLeary, kSetRC01) && Global_Variable_Query(kVariableChapter) > 0) {
				Actor_Set_Goal_Number(kActorOfficerLeary, kGoalOfficerLearyDefault);
				Actor_Face_Actor(kActorOfficerLeary, kActorMcCoy, true);
				Actor_Says(kActorOfficerLeary, 0, 12);
				Actor_Says(kActorMcCoy, 4495, 13);
				Actor_Clue_Acquire(kActorMcCoy, kClueDoorForced2, true, kActorOfficerLeary);
			} else {
				Actor_Says(kActorMcCoy, 8570, 14);
			}
			Actor_Clue_Acquire(kActorMcCoy, kClueDoorForced1, true, -1);
		}
		return true;
	}

	if (Object_Query_Click("T-CAN01", objectName)) {
		if (!Loop_Actor_Walk_To_Scene_Object(kActorMcCoy, "T-CAN01", 24, true, false)) {
			Actor_Face_Object(kActorMcCoy, "T-CAN01", true);
			Actor_Voice_Over(1810, kActorVoiceOver);
			Actor_Voice_Over(1820, kActorVoiceOver);
		}
		return true;
	}

	return false;
}
Esempio n. 11
0
void SceneScriptCT10::PlayerWalkedIn() {
	Loop_Actor_Walk_To_XYZ(kActorMcCoy, -93.0f, 0.0f, -38.0f, 0, 0, false, 0);
	Loop_Actor_Walk_To_XYZ(kActorMcCoy, -49.0f, 0.0f, -38.0f, 0, 0, false, 0);
	if (!Game_Flag_Query(525)) {
		Actor_Voice_Over(450, kActorVoiceOver);
		Actor_Voice_Over(460, kActorVoiceOver);
		Actor_Voice_Over(470, kActorVoiceOver);
		Game_Flag_Set(525);
	}
}
Esempio n. 12
0
void SceneScriptUG06::PlayerWalkedIn() {
	if (Game_Flag_Query(kFlagUG04toUG06)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.0f, 0.0f, 273.0f, 0, false, false, 0);
		Game_Flag_Reset(kFlagUG04toUG06);
	}
	if (Game_Flag_Query(kFlagNR01toUG06)) {
		Loop_Actor_Travel_Stairs(kActorMcCoy, 17, false, kAnimationModeIdle);
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 66.0f, 0.0f, -36.91f, 0, false, false, 0);
		Game_Flag_Reset(kFlagNR01toUG06);
	}
	if ( Global_Variable_Query(kVariableChapter) == 4
	 && !Game_Flag_Query(524)
	) {
		Player_Loses_Control();
		Actor_Voice_Over(2620, kActorVoiceOver);
		Actor_Voice_Over(2630, kActorVoiceOver);
		Actor_Voice_Over(2640, kActorVoiceOver);
		Actor_Voice_Over(2650, kActorVoiceOver);
		Actor_Voice_Over(2660, kActorVoiceOver);
		Actor_Voice_Over(2670, kActorVoiceOver);
		Actor_Voice_Over(2680, kActorVoiceOver);
		Actor_Voice_Over(2690, kActorVoiceOver);
		Actor_Voice_Over(2700, kActorVoiceOver);
		Player_Gains_Control();
		Game_Flag_Set(524);
		Autosave_Game(2);
	}
	//return false;
}
Esempio n. 13
0
bool SceneScriptNR04::ClickedOnActor(int actorId) {
	if (actorId == 18 && Game_Flag_Query(606)) {
		Actor_Voice_Over(1640, kActorVoiceOver);
		Actor_Voice_Over(1650, kActorVoiceOver);
		Actor_Voice_Over(1660, kActorVoiceOver);
		Actor_Voice_Over(1670, kActorVoiceOver);
		Actor_Voice_Over(1680, kActorVoiceOver);
		return true;
	}
	return false;
}
Esempio n. 14
0
bool SceneScriptBB07::ClickedOnItem(int itemId, bool a2) {
	if (itemId == 83) { // this item is never added to this set/scene
		if (!Loop_Actor_Walk_To_Item(kActorMcCoy, 83, 36, true, false)) {
			Actor_Face_Item(kActorMcCoy, 83, true);
			if (Game_Flag_Query(kFlagBB07ElectricityOn)) {
				Actor_Voice_Over(150, kActorVoiceOver);
				Actor_Voice_Over(160, kActorVoiceOver);
				Actor_Voice_Over(170, kActorVoiceOver);
			}
		}
	}
	return false;
}
Esempio n. 15
0
bool SceneScriptBB07::ClickedOnItem(int itemId, bool a2) {
	if (itemId == 83) {
		if (!Loop_Actor_Walk_To_Item(kActorMcCoy, 83, 36, 1, false)) {
			Actor_Face_Item(kActorMcCoy, 83, true);
			if (Game_Flag_Query(396) == 1) {
				Actor_Voice_Over(150, kActorVoiceOver);
				Actor_Voice_Over(160, kActorVoiceOver);
				Actor_Voice_Over(170, kActorVoiceOver);
			}
		}
	}
	return false;
}
Esempio n. 16
0
void SceneScriptMA02::PlayerWalkedIn() {
	if (Game_Flag_Query(34)) {
		sub_402044();
	}
	if (Game_Flag_Query(36)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -148.12f, -144.13f, 34.27f, 0, 1, false, 0);
	}
	if (Global_Variable_Query(1) == 4 && !Game_Flag_Query(655)) {
		Game_Flag_Set(623);
		Game_Flag_Set(655);
		sub_401E4C();
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, 23.19f, -144.12f, 378.27f, 0, 0, false, 0);
		Game_Flag_Set(33);
		Set_Enter(52, 52);
		//	return true;
		return;
	}
	if (Global_Variable_Query(1) == 5 && !Game_Flag_Query(654)) {
		if (Game_Flag_Query(653)) {
			Actor_Says(kActorMcCoy, 2390, 0);
			Music_Play(2, 25, 0, 3, -1, 0, 0);
		} else {
			Actor_Says(kActorMcCoy, 2385, 3);
		}
		Game_Flag_Set(654);
		Autosave_Game(3);
	}
	if (Global_Variable_Query(1) < 4 && !Game_Flag_Query(36) && Actor_Query_Goal_Number(kActorMaggie) != 2) {
		Actor_Set_Goal_Number(kActorMaggie, 1);
		if (!Game_Flag_Query(60)) {
			Game_Flag_Set(60);
			Actor_Face_Actor(kActorMcCoy, kActorMaggie, true);
			Actor_Voice_Over(1210, kActorVoiceOver);
			if (!Game_Flag_Query(378)) {
				Actor_Voice_Over(1220, kActorVoiceOver);
			}
			Actor_Voice_Over(1230, kActorVoiceOver);
			if (!Game_Flag_Query(378)) {
				Actor_Voice_Over(1240, kActorVoiceOver);
				Actor_Voice_Over(1250, kActorVoiceOver);
			}
		}
	}
	Game_Flag_Reset(36);
	Game_Flag_Reset(34);
	//return false;
	return;
}
Esempio n. 17
0
bool SceneScriptCT08::ClickedOnItem(int itemId, bool a2) {
	if (itemId == kItemCheese) {
		if (!Loop_Actor_Walk_To_Item(kActorMcCoy, kItemCheese, 36, true, false)) {
			if (!Game_Flag_Query(kFlagMcCoyTiedDown)) {
				Actor_Clue_Acquire(kActorMcCoy, kClueCheese, true, -1);
				Item_Pickup_Spin_Effect(936, 266, 328);
				Item_Remove_From_World(kItemCheese);
				Actor_Voice_Over(480, kActorVoiceOver);
				Actor_Voice_Over(490, kActorVoiceOver);
				Actor_Voice_Over(500, kActorVoiceOver);
			}
		}
		return true;
	}
	return false;
}
Esempio n. 18
0
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;
}
Esempio n. 19
0
bool SceneScriptUG05::ClickedOnExit(int exitId) {
	if (exitId == 0) {
		if (Game_Flag_Query(663) && !Game_Flag_Query(368)) {
			Loop_Actor_Walk_To_XYZ(kActorMcCoy, -356.35f, 132.77f, -1092.36f, 0, 0, false, 0);
			Game_Flag_Set(361);
			Set_Enter(43, 40);
		} else if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -156.72f, 3.03f, -1118.17f, 0, 1, false, 0)) {
			Actor_Face_Heading(kActorMcCoy, 760, false);
			Loop_Actor_Travel_Stairs(kActorMcCoy, 3, 1, 0);
			Game_Flag_Set(361);
			Set_Enter(43, 40);
		}
		return true;
	}
	if (exitId == 1) {
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 4.0f, -11.67f, -4.0f, 0, 1, false, 0)) {
			Game_Flag_Set(339);
			Set_Enter(77, 89);
		}
		return true;
	}
	if (exitId == 2) {
		if (!Game_Flag_Query(662)) {
			if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, -1.37f, -1500.0f, 0, 1, false, 0)) {
				if (!Game_Flag_Query(522)) {
					Actor_Voice_Over(2600, kActorVoiceOver);
					Actor_Voice_Over(2610, kActorVoiceOver);
					Game_Flag_Set(522);
				}
				return true;
			}
		} else {
			int v1 = sub_4021B0();
			bool v2;
			if (v1 == -1) {
				v2 = Loop_Actor_Walk_To_XYZ(kActorMcCoy, 0.0f, -1.37f, -1500.0f, 0, 1, false, 0) != 0;
			} else {
				v2 = Loop_Actor_Walk_To_Actor(kActorMcCoy, v1, 30, 1, false) != 0;
			}
			if (!v2) {
				sub_402218();
				return true;
			}
		}
	}
	return false;
}
Esempio n. 20
0
bool ScriptMA02::ClickedOnActor(int actorId) {
    if (actorId == 66 && Actor_Query_Goal_Number(66) == 599) {
        if (!Loop_Actor_Walk_To_Actor(0, 66, 30, 1, false)) {
            Actor_Face_Actor(0, 66, true);
            Actor_Voice_Over(1140, 99);
        }
    }
    return false;
}
Esempio n. 21
0
bool SceneScriptMA02::ClickedOnActor(int actorId) {
	if (actorId == 66 && Actor_Query_Goal_Number(kActorMaggie) == 599) {
		if (!Loop_Actor_Walk_To_Actor(kActorMcCoy, kActorMaggie, 30, 1, false)) {
			Actor_Face_Actor(kActorMcCoy, kActorMaggie, true);
			Actor_Voice_Over(1140, kActorVoiceOver);
		}
	}
	return false;
}
Esempio n. 22
0
bool SceneScriptCT11::ClickedOn2DRegion(int region) {
	if (region == 0 && Game_Flag_Query(725)) {
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, 1, false, 0)) {
			Actor_Face_Heading(kActorMcCoy, 47, false);
			Item_Remove_From_World(115);
			Actor_Clue_Acquire(kActorMcCoy, kClueLichenDogWrapper, 0, -1);
			Item_Pickup_Spin_Effect(951, 510, 319);
			Game_Flag_Reset(725);
			Game_Flag_Set(645);
			Actor_Voice_Over(550, kActorVoiceOver);
			Actor_Voice_Over(560, kActorVoiceOver);
			Actor_Voice_Over(570, kActorVoiceOver);
			Actor_Voice_Over(580, kActorVoiceOver);
		}
		return true;
	}
	if (region == 1) {
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 686.0f, 0.0f, 658.0f, 12, 1, false, 0)) {
			Actor_Face_Heading(kActorMcCoy, 47, false);
			int temp = 0;
			if (Actor_Clue_Query(kActorMcCoy, kClueCrowdInterviewB)) {
				temp = 1;
			}
			if (Actor_Clue_Query(kActorMcCoy, kCluePaintTransfer)) {
				++temp;
			}
			if (Actor_Clue_Query(kActorMcCoy, kClueLabPaintTransfer)) {
				++temp;
			}
			if (Actor_Clue_Query(kActorMcCoy, kClueLicensePlate)) {
				temp += 2;
			}
			if (Actor_Clue_Query(kActorMcCoy, kClueCarColorAndMake)) {
				temp += 2;
			}
			if (Actor_Clue_Query(kActorMcCoy, kCluePartialLicenseNumber)) {
				temp += 2;
			}
			if (temp <= 2 || Actor_Clue_Query(kActorMcCoy, kClueCar)) {
				Actor_Says(kActorMcCoy, 8525, 12);
			} else {
				Actor_Voice_Over(510, kActorVoiceOver);
				Actor_Voice_Over(520, kActorVoiceOver);
				Actor_Voice_Over(530, kActorVoiceOver);
				Actor_Voice_Over(540, kActorVoiceOver);
				Actor_Clue_Acquire(kActorMcCoy, kClueCar, 0, -1);
				Scene_2D_Region_Remove(1);
			}
		}
		return true;
	}
	return false;
}
Esempio n. 23
0
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;
}
Esempio n. 24
0
void SceneScriptCT01::PlayerWalkedIn() {
	if (Game_Flag_Query(kFlagCT02toCT01walk)) {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -327.2f, -6.5f, 352.28f, 0, false, false, 0);
		Game_Flag_Reset(kFlagCT02toCT01walk);
	} else {
		if (!Game_Flag_Query(kFlagArrivedFromSpinner1)) {
			Game_Flag_Reset(kFlagArrivedFromSpinner1);
			return;
		}
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -330.0f, -6.5f, 221.0f, 0, false, false, 0);
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -314.0f, -6.5f, 326.0f, 0, false, false, 0);
		if (!Game_Flag_Query(kFlagCT01Visited)) {
			Game_Flag_Set(kFlagCT01Visited);
			if (!Game_Flag_Query(kFlagDirectorsCut)) {
				Actor_Voice_Over(200, kActorVoiceOver);
				Actor_Voice_Over(210, kActorVoiceOver);
				Actor_Voice_Over(220, kActorVoiceOver);
			}
		}
	}
}
Esempio n. 25
0
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;
}
Esempio n. 26
0
bool SceneScriptMA02::ClickedOn3DObject(const char *objectName, bool a2) {
	if (Object_Query_Click("E-ESPER", objectName)) {
		Actor_Face_Object(kActorMcCoy, "E-ESPER", true);
		Delay(1000);
		ESPER_Flag_To_Activate();
		return true;
	}
	if (Object_Query_Click("BAR-MAIN", objectName) && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, -29.0f, -140.4f, 298.0f, 36, 1, false, 0)) {
		Actor_Face_Object(kActorMcCoy, "BAR-MAIN", true);
		if (Global_Variable_Query(1) < 4) {
			Actor_Set_Goal_Number(kActorMaggie, 3);
		} else if (Global_Variable_Query(1) == 5 && Game_Flag_Query(653) && !Actor_Clue_Query(kActorMcCoy, kClueCrystalsCigarette)) {
			Overlay_Remove("MA02OVER");
			Item_Pickup_Spin_Effect(985, 480, 240);
			Actor_Voice_Over(1150, kActorVoiceOver);
			Actor_Voice_Over(1160, kActorVoiceOver);
			Actor_Voice_Over(1170, kActorVoiceOver);
			Actor_Voice_Over(1180, kActorVoiceOver);
			Actor_Voice_Over(1190, kActorVoiceOver);
			Actor_Voice_Over(1200, kActorVoiceOver);
			Actor_Clue_Acquire(kActorMcCoy, kClueCrystalsCigarette, 1, -1);
		} else {
			Actor_Says(kActorMcCoy, 8526, 0);
		}
		return true;
	}
	return false;
}
Esempio n. 27
0
bool SceneScriptTB05::ClickedOnItem(int itemId, bool a2) {
	if (itemId == 76 && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 54.0f, 147.12f, -209.0f, 0, 1, false, 0)) {
		Actor_Face_Heading(kActorMcCoy, 126, false);
		Item_Remove_From_World(76);
		Item_Pickup_Spin_Effect(940, 295, 408);
		Actor_Voice_Over(2140, kActorVoiceOver);
		Actor_Voice_Over(2150, kActorVoiceOver);
		Actor_Voice_Over(2160, kActorVoiceOver);
		Actor_Clue_Acquire(kActorMcCoy, kClueDragonflyEarring, 1, -1);
		return true;
	}
	if (itemId == 119 && !Loop_Actor_Walk_To_XYZ(kActorMcCoy, 107.89f, 147.12f, -156.26f, 0, 1, false, 0)) {
		Actor_Face_Heading(kActorMcCoy, 126, false);
		Item_Remove_From_World(119);
		Item_Pickup_Spin_Effect(972, 449, 431);
		Actor_Voice_Over(4280, kActorVoiceOver);
		if (Game_Flag_Query(kFlagGordoIsReplicant)) {
			Actor_Voice_Over(4290, kActorVoiceOver);
			Actor_Clue_Acquire(kActorMcCoy, kClueTyrellSalesPamphlet1, 1, -1);
		} else {
			Actor_Voice_Over(4300, kActorVoiceOver);
			Actor_Clue_Acquire(kActorMcCoy, kClueTyrellSalesPamphlet2, 1, -1);
		}
	}
	return false;
}
Esempio n. 28
0
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);
}
Esempio n. 29
0
void SceneScriptCT10::sub_401844() {
	if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, 10.6f, 0.0f, -50.5f, 0, 1, false, 0)) {
		Player_Loses_Control();
		Actor_Face_Heading(kActorMcCoy, 0, false);
		Sound_Play(339, 100, 0, 0, 50);
		Delay(1000);
		if (Actor_Clue_Query(kActorMcCoy, kClueHoldensBadge)) {
			Actor_Voice_Over(3700, kActorVoiceOver);
		} else {
			Item_Pickup_Spin_Effect(931, 435, 258);
			Actor_Clue_Acquire(kActorMcCoy, kClueHoldensBadge, 1, -1);
		}
		Player_Gains_Control();
	}
}
Esempio n. 30
0
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;
}