Exemple #1
0
void ScriptAR02::sub_402AE0() {
	Dialogue_Menu_Clear_List();
	if (Global_Variable_Query(2) >= 15 || Query_Difficulty_Level() == 0) {
		DM_Add_To_List_Never_Repeat_Once_Selected(530, 7, 5, 3);
	}
	DM_Add_To_List_Never_Repeat_Once_Selected(540, 3, 5, 7);
	Dialogue_Menu_Appear(320, 240);
	int answerValue = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	if (answerValue == 530) {
		Actor_Says(0, 120, 12);
		if (Query_Difficulty_Level() != 0) {
			Global_Variable_Decrement(2, 15);
		}
		Actor_Clue_Acquire(0, 75, 1, 16);
		Actor_Modify_Friendliness_To_Other(16, 0, 5);
	} else if (answerValue == 540) {
		Actor_Says(0, 125, 13);
		Actor_Says(16, 260, 3);
		Actor_Says(0, 130, 15);
		Actor_Says(16, 270, 3);
		Actor_Says(16, 280, 3);
		Actor_Says(0, 135, 11);
		Actor_Modify_Friendliness_To_Other(16, 0, -5);
	}
}
Exemple #2
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);
	}
}
Exemple #3
0
void ScriptNR07::sub_402614() {
	Actor_Says(0, 3705, 19);
	Actor_Says(3, 760, 53);
	if (Game_Flag_Query(47)) {
		Actor_Modify_Friendliness_To_Other(3, 0, -5);
		Actor_Says(0, 3710, 18);
		sub_401A10();
	} else {
		Actor_Modify_Friendliness_To_Other(3, 0, -3);
		Actor_Start_Speech_Sample(0, 3710);
		Loop_Actor_Walk_To_XYZ(0, -109.0f, -73.0f, -89.0f, 0, 0, false, 0);
		Actor_Face_Actor(0, 3, true);
		sub_4018D4();
	}
}
Exemple #4
0
bool AIScriptMutant3::ShotAtAndHit() {
	if (Actor_Query_Goal_Number(kActorMutant3) != 410) {
		Actor_Modify_Combat_Aggressiveness(kActorMutant3, 20);
		Actor_Modify_Friendliness_To_Other(kActorMutant3, 0, -20);
	}
	return false;
}
Exemple #5
0
void ScriptAR02::sub_402CE4() {
	Dialogue_Menu_Clear_List();
	if (Actor_Clue_Query(0, 93)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(550, 8, 5, 2);
	}
	if (Actor_Clue_Query(0, 44)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(560, 6, 5, 7);
	}
	Dialogue_Menu_Add_DONE_To_List(570);
	Dialogue_Menu_Appear(320, 240);
	int answerValue = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	switch (answerValue) {
	case 550:
		Actor_Says(0, 145, 11);
		Actor_Says(20, 30, 11);
		Actor_Says(0, 160, 11);
		Actor_Says(20, 40, 11);
		Actor_Says(0, 165, 11);
		Actor_Says(20, 50, 11);
		Actor_Says(0, 170, 11);
		Actor_Says(20, 60, 11);
		Actor_Says(0, 175, 11);
		Game_Flag_Set(370);
		break;
	case 560:
		Actor_Says(0, 150, 11);
		Actor_Says(20, 140, 11);
		Actor_Says(0, 185, 11);
		Actor_Says(20, 150, 11);
		Actor_Says(20, 160, 11);
		Actor_Says(0, 190, 11);
		Actor_Says(20, 170, 11);
		Actor_Says(0, 195, 11);
		Actor_Says(20, 180, 11);
		Actor_Says(20, 190, 11);
		Actor_Says(20, 200, 11);
		Actor_Says(0, 200, 11);
		Actor_Says(20, 210, 11);
		Actor_Says(20, 220, 11);
		Actor_Says(20, 230, 11);
		Game_Flag_Set(370);
		break;
	case 570:
		if (Actor_Clue_Query(0, 57)) {
			Actor_Says(0, 1315, 11);
		} else {
			Actor_Says(0, 940, 13);
			Actor_Says(20, 70, 12);
			Actor_Says(20, 90, 12);
			Actor_Says(0, 180, 15);
			Actor_Says(20, 100, 14);
			Actor_Says(20, 110, 12);
			Actor_Says(20, 120, 13);
			Actor_Modify_Friendliness_To_Other(20, 0, -1);
			Actor_Clue_Acquire(0, 57, 0, 20);
		}
		break;
	}
}
Exemple #6
0
bool AIScriptMutant1::ShotAtAndHit() {
	if (Actor_Query_Goal_Number(kActorMutant1) != 410) {
		Actor_Modify_Combat_Aggressiveness(70, 15);
		Actor_Modify_Friendliness_To_Other(kActorMutant1, kActorMcCoy, -15);
	}

	return false;
}
Exemple #7
0
void SceneScriptCT04::sub_401D4C() {
	Dialogue_Menu_Clear_List();
	if (Global_Variable_Query(2) > 10 || Query_Difficulty_Level() == 0) {
		DM_Add_To_List_Never_Repeat_Once_Selected(410, 8, 4, -1);
	}
	DM_Add_To_List_Never_Repeat_Once_Selected(420, 2, 6, 8);
	Dialogue_Menu_Appear(320, 240);
	int answer = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	if (answer == 410) {
		Actor_Says(kActorTransient, 10, 14);
		Actor_Says(kActorTransient, 20, 14);
		Actor_Modify_Friendliness_To_Other(kActorTransient, kActorMcCoy, 5);
		if (Query_Difficulty_Level() != 0) {
			Global_Variable_Decrement(2, 10);
		}
	} else if (answer == 420) {
		Actor_Says(kActorMcCoy, 430, 3);
		Actor_Says(kActorTransient, 30, 14);
		Actor_Modify_Friendliness_To_Other(kActorTransient, kActorMcCoy, -5);
	}
}
Exemple #8
0
void ScriptNR07::sub_402510() {
	Actor_Says(0, 3690, 14);
	Actor_Start_Speech_Sample(3, 750);
	Loop_Actor_Walk_To_XYZ(0, -109.0f, -73.0f, -89.0f, 0, 0, false, 0);
	Actor_Face_Actor(0, 3, true);
	Actor_Face_Actor(3, 0, true);
	Actor_Says(0, 3695, 15);
	Actor_Modify_Friendliness_To_Other(3, 0, 5);
	if (Game_Flag_Query(47)) {
		sub_401A10();
	} else {
		sub_4018D4();
	}
}
Exemple #9
0
void AIScriptLucy::Retired(int byActorId) {
	if (byActorId == kActorMcCoy) {
		Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, -6);
	}
	if ((byActorId == kActorSteele || byActorId == kActorMcCoy)
			&& Actor_Query_In_Set(kActorSteele, kSetHF06)
			&& Actor_Query_In_Set(kActorMcCoy, kSetHF06)) {
		Non_Player_Actor_Combat_Mode_On(kActorSteele, kActorCombatStateUncover, true, kActorMcCoy, 15, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, 0, 0, 100, 25, 300, false);
	}
	if (Query_Difficulty_Level() && byActorId == kActorMcCoy && Game_Flag_Query(46)) {
		Global_Variable_Increment(2, 200);
	}
	Actor_Set_Goal_Number(kActorLucy, 599);
}
Exemple #10
0
void ScriptNR07::PlayerWalkedIn() {
	Loop_Actor_Walk_To_XYZ(0, -110.0f, -73.5f, -169.0f, 0, 0, false, 0);
	if (Actor_Query_In_Set(3, 57)) {
		if (Game_Flag_Query(508)) {
			Actor_Modify_Friendliness_To_Other(3, 0, -2);
			Actor_Says(3, 530, 31);
		} else {
			Game_Flag_Set(508);
			if (!Actor_Clue_Query(3, 214)) {
				Actor_Modify_Friendliness_To_Other(3, 0, 5);
			} else if (Actor_Clue_Query(0, 216) || Actor_Clue_Query(0, 217)) {
				Actor_Modify_Friendliness_To_Other(3, 0, 10);
			}
			Actor_Says(3, 500, 30);
			Actor_Says(0, 3585, 14);
			Actor_Says(3, 510, 30);
			Actor_Start_Speech_Sample(0, 3590);
			Loop_Actor_Walk_To_XYZ(0, -112.0f, -73.0f, -89.0f, 525, 0, false, 0);
			Actor_Says(3, 520, 53);
		}
		Actor_Set_Goal_Number(25, 200);
	}
	//return false;
}
Exemple #11
0
bool AIScriptBulletBob::Update() {
	if (Game_Flag_Query(kFlagRC04McCoyShotBob)
	 && Actor_Query_Goal_Number(kActorBulletBob) != kGoalBulletBobDead
	) {
		Actor_Set_Goal_Number(kActorBulletBob, kGoalBulletBobDead);
	}

	if ( Player_Query_Combat_Mode()
	 &&  Player_Query_Current_Scene() == kSceneRC04
	 && !Game_Flag_Query(kFlagRC04McCoyCombatMode)
	 &&  Global_Variable_Query(kVariableChapter) < 4
	) {
		AI_Countdown_Timer_Reset(kActorBulletBob, 2);
		AI_Countdown_Timer_Start(kActorBulletBob, 2, 10);
		Actor_Set_Goal_Number(kActorBulletBob, kGoalBulletBobWarningMcCoy);
		Actor_Modify_Friendliness_To_Other(kActorBulletBob, kActorMcCoy, -15);
		Game_Flag_Set(kFlagRC04McCoyCombatMode);
	} else if ( Actor_Query_Goal_Number(kActorBulletBob) == kGoalBulletBobWarningMcCoy
	        && !Player_Query_Combat_Mode()
	) {
		AI_Countdown_Timer_Reset(kActorBulletBob, 2);
		Game_Flag_Reset(kFlagRC04McCoyCombatMode);
		Game_Flag_Set(kFlagRC04McCoyWarned);
		Actor_Set_Goal_Number(kActorBulletBob, kGoalBulletBobDefault);
	}

	if ( Actor_Query_Goal_Number(kActorBulletBob) == kGoalBulletBobShootMcCoy
	 && !Game_Flag_Query(kFlagRC04BobShootMcCoy)
	 &&  _animationState == 0
	) {
		Actor_Face_Heading(kActorBulletBob, 208, false);
		_animationFrame = 0;
		_animationState = 2;
		Actor_Set_Goal_Number(kActorBulletBob, kGoalBulletBobShotMcCoy);
		Game_Flag_Set(kFlagRC04BobShootMcCoy);
		return true;
	}

	if (Game_Flag_Query(kFlagRC04McCoyWarned)
	 && Player_Query_Combat_Mode()
	 && Actor_Query_Goal_Number(kActorBulletBob) != kGoalBulletBobDead
	) {
		Actor_Set_Goal_Number(kActorBulletBob, kGoalBulletBobShootMcCoy);
		return true;
	}

	return false;
}
Exemple #12
0
void ScriptNR07::sub_402738() {
	Actor_Modify_Friendliness_To_Other(3, 0, -3);
	Actor_Says(0, 3615, 16);
	Actor_Says(3, 770, 30);
	Actor_Says(0, 3720, 15);
	Actor_Says_With_Pause(3, 780, 2.0f, 30);
	Actor_Says(3, 790, 31);
	Actor_Says(0, 3725, 18);
	Actor_Says(3, 800, 30);
	Actor_Says_With_Pause(0, 3730, 2.0f, 13);
	Actor_Says_With_Pause(3, 810, 1.0f, 53);
	Actor_Says(3, 820, 30);
	Actor_Says(0, 3735, 14);
	Actor_Says(3, 830, 31);
	Actor_Says(0, 3740, 19);
}
Exemple #13
0
void ScriptNR11::PlayerWalkedIn() {
	if (Actor_Query_Goal_Number(3) == 250) {
		Player_Set_Combat_Mode(true);
		if (Game_Flag_Query(47)) {
			Actor_Set_Goal_Number(1, 210);
		}
	}
	if (Game_Flag_Query(632)) {
		Game_Flag_Reset(632);
		Game_Flag_Set(634);
		Actor_Put_In_Set(3, 99);
		Actor_Set_At_Waypoint(3, 41, 0);
		Actor_Set_Invisible(0, false);
		Player_Set_Combat_Mode(false);
		Player_Gains_Control();
		if (Game_Flag_Query(47)) {
			if (Actor_Query_Goal_Number(1) == 211) {
				Actor_Set_At_XYZ(0, -37.41f, 0.33f, -86.0f, 26);
				Delay(500);
				Actor_Face_Current_Camera(0, true);
				Delay(750);
				Actor_Says(0, 5290, 12);
				Delay(1000);
				Actor_Set_Goal_Number(1, 212);
				Actor_Face_Actor(0, 1, true);
			} else {
				Actor_Set_At_XYZ(0, -15.53f, 0.33f, 73.49f, 954);
				Actor_Modify_Friendliness_To_Other(1, 0, 3);
				Delay(1500);
				Actor_Says(0, 3805, 12);
				Actor_Face_Actor(0, 1, true);
				Actor_Face_Actor(1, 0, true);
				Actor_Says_With_Pause(1, 1720, 0.3f, 16);
				Actor_Says(0, 3810, 16);
				Actor_Says_With_Pause(1, 1730, 0.2f, 14);
				Actor_Says(1, 1740, 15);
				Actor_Set_Goal_Number(3, 599);
				Actor_Put_In_Set(3, 99);
				Actor_Set_At_Waypoint(3, 41, 0);
				Actor_Set_Goal_Number(1, 275);
			}
		} else {
			Actor_Set_Goal_Number(0, 500);
		}
	}
	// return true;
}
Exemple #14
0
void ScriptNR07::sub_4020F0() {
	if (Actor_Clue_Query(3, 213) && Actor_Clue_Query(3, 214)) {
		Actor_Modify_Friendliness_To_Other(3, 0, -1);
	}
	Actor_Says(3, 610, 31);
	Actor_Says(0, 3645, 12);
	Actor_Says(3, 620, 30);
	int v0 = Actor_Query_Friendliness_To_Other(3, 0);
	if (!Game_Flag_Query(47) && v0 < 40) {
		sub_4018D4();
		return;
	}
	if (v0 < 36) {
		sub_401A10();
		return;
	}
	Actor_Face_Object(3, "VANITY", true);
}
Exemple #15
0
void SceneScriptHF03::sub_401C80() {
	Dialogue_Menu_Clear_List();
	DM_Add_To_List_Never_Repeat_Once_Selected(840, -1, 3, 8);
	DM_Add_To_List_Never_Repeat_Once_Selected(850, 6, 5, 2);
	DM_Add_To_List_Never_Repeat_Once_Selected(860, 8, -1, -1);
	DM_Add_To_List_Never_Repeat_Once_Selected(870, 2, 8, 6);
	Dialogue_Menu_Add_DONE_To_List(880);
	Dialogue_Menu_Appear(320, 240);
	int answer = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	switch (answer) {
	case 840:
		Actor_Says(kActorMcCoy, 1630, 15);
		if (Global_Variable_Query(40) == 3) {
			Actor_Set_Goal_Number(kActorLucy, 214);
		} else if (Game_Flag_Query(46)) {
			Actor_Set_Goal_Number(kActorLucy, 212);
		} else {
			Actor_Set_Goal_Number(kActorLucy, 210);
			Game_Flag_Set(593);
		}
		break;
	case 850:
		Actor_Says(kActorMcCoy, 1635, 15);
		Actor_Says(kActorLucy, 200, 13);
		Actor_Modify_Friendliness_To_Other(kActorLucy, kActorMcCoy, 3);
		break;
	case 860:
		Actor_Says(kActorMcCoy, 1640, 12);
		if (Global_Variable_Query(40) == 3) {
			Actor_Set_Goal_Number(kActorLucy, 214);
		} else {
			Actor_Says(kActorLucy, 210, 13);
			Actor_Says(kActorMcCoy, 1655, 15);
			Actor_Modify_Friendliness_To_Other(kActorLucy, kActorMcCoy, Random_Query(9, 10));
			if (Actor_Query_Friendliness_To_Other(kActorLucy, kActorMcCoy) > 59 && !Global_Variable_Query(45)) {
				Global_Variable_Set(45, 3);
				Actor_Says(kActorLucy, 940, 14);
				Actor_Says(kActorMcCoy, 6780, 11);
				Actor_Says(kActorLucy, 950, 12);
				Actor_Says(kActorLucy, 960, 13);
				Actor_Says(kActorMcCoy, 6785, 15);
				Actor_Says(kActorLucy, 970, 16);
				Actor_Says(kActorLucy, 980, 17);
				if (Game_Flag_Query(47)) {
					Actor_Says(kActorLucy, 990, 17);
				}
				Actor_Says(kActorMcCoy, 6790, 15);
				Actor_Says(kActorLucy, 1000, 13);
				Actor_Says(kActorLucy, 1010, 17);
				Actor_Says(kActorLucy, 1020, 18);
				Actor_Says(kActorMcCoy, 6795, 14);
				Actor_Says(kActorLucy, 1030, 17);
				Actor_Says(kActorMcCoy, 6800, 14);
			}
			Actor_Says(kActorLucy, 220, 13);
			Actor_Says(kActorMcCoy, 1660, 15);
			Actor_Says(kActorLucy, 230, 14);
			Actor_Clue_Acquire(kActorLucy, kClueMcCoyHelpedLucy, 1, kActorMcCoy);
			if (Game_Flag_Query(46)) {
				Actor_Set_Goal_Number(kActorLucy, 212);
			} else {
				Actor_Set_Goal_Number(kActorLucy, 210);
			}
		}
		break;
	case 870:
		Actor_Says(kActorMcCoy, 1645, 18);
		Actor_Says(kActorLucy, 240, 14);
		Actor_Says(kActorLucy, 250, 12);
		Actor_Says(kActorLucy, 260, 13);
		Actor_Says(kActorLucy, 270, 19);
		Actor_Says(kActorMcCoy, 1665, 18);
		Actor_Says(kActorLucy, 280, 13);
		Actor_Says(kActorMcCoy, 1670, 12);
		Actor_Says(kActorLucy, 290, 14);
		Actor_Says(kActorLucy, 300, 16);
		Actor_Says(kActorMcCoy, 1675, 12);
		Actor_Says(kActorLucy, 310, 13);
		Actor_Clue_Acquire(kActorMcCoy, kClueLucyInterview, 0, kActorLucy);
		break;
	case 880:
		Actor_Says(kActorMcCoy, 1650, 14);
		break;
	}
}
Exemple #16
0
bool AIScriptMutant1::GoalChanged(int currentGoalNumber, int newGoalNumber) {
	switch (newGoalNumber) {
	case 400:
		AI_Movement_Track_Flush(kActorMutant1);
		AI_Movement_Track_Append(kActorMutant1, 39, 0);
		AI_Movement_Track_Repeat(kActorMutant1);

		if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
			Actor_Set_Combat_Aggressiveness(kActorMutant1, 70);
			Actor_Set_Friendliness_To_Other(kActorMutant1, kActorMcCoy, 20);
		}
		return true;

	case 401:
		Actor_Set_Targetable(kActorMutant1, 1);
		AI_Movement_Track_Flush(kActorMutant1);
		AI_Movement_Track_Append(kActorMutant1, 39, 0);

		switch (Random_Query(1, 8)) {
		case 1:
			AI_Movement_Track_Append(kActorMutant1, 182, 0);
			AI_Movement_Track_Append(kActorMutant1, 183, 2);
			AI_Movement_Track_Append(kActorMutant1, 184, 0);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 2:
			AI_Movement_Track_Append(kActorMutant1, 296, 0);
			AI_Movement_Track_Append(kActorMutant1, 297, 0);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 3:
			AI_Movement_Track_Append(kActorMutant1, 176, 0);
			AI_Movement_Track_Append(kActorMutant1, 177, 0);
			AI_Movement_Track_Append(kActorMutant1, 178, 2);
			AI_Movement_Track_Append(kActorMutant1, 177, 0);
			AI_Movement_Track_Append(kActorMutant1, 176, 1);
			AI_Movement_Track_Append(kActorMutant1, 39, 45);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 4:
			AI_Movement_Track_Append(kActorMutant1, 298, 0);
			AI_Movement_Track_Append(kActorMutant1, 300, 0);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 5:
			AI_Movement_Track_Append(kActorMutant1, 301, 0);
			AI_Movement_Track_Append(kActorMutant1, 302, 2);
			AI_Movement_Track_Append(kActorMutant1, 303, 0);
			AI_Movement_Track_Append(kActorMutant1, 304, 0);
			AI_Movement_Track_Append(kActorMutant1, 305, 0);
			AI_Movement_Track_Append(kActorMutant1, 304, 0);
			AI_Movement_Track_Append(kActorMutant1, 306, 0);
			AI_Movement_Track_Append(kActorMutant1, 39, 60);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 6:
			AI_Movement_Track_Append(kActorMutant1, 307, 0);
			AI_Movement_Track_Append(kActorMutant1, 308, 0);
			AI_Movement_Track_Append(kActorMutant1, 309, 1);
			AI_Movement_Track_Append(kActorMutant1, 310, 3);
			AI_Movement_Track_Append(kActorMutant1, 311, 0);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;

		case 7:
			switch (Random_Query(1, 5)) {
			case 1:
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 534, 2);
				AI_Movement_Track_Append(kActorMutant1, 535, 3);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
				break;

			case 2:
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 535, 2);
				AI_Movement_Track_Append(kActorMutant1, 534, 3);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
				break;

			case 3:
				AI_Movement_Track_Append(kActorMutant1, 536, 0);
				AI_Movement_Track_Append(kActorMutant1, 537, 0);
				AI_Movement_Track_Append(kActorMutant1, 538, 2);
				AI_Movement_Track_Append(kActorMutant1, 537, 0);
				AI_Movement_Track_Append(kActorMutant1, 536, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
				break;

			case 4:
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 534, 3);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
				break;

			case 5:
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 535, 1);
				AI_Movement_Track_Append(kActorMutant1, 533, 0);
				AI_Movement_Track_Append(kActorMutant1, 532, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
				break;

			default:
				return true;
			}
			break;

		case 8:
			if (Game_Flag_Query(623) == 1) {
				AI_Movement_Track_Append(kActorMutant1, 418, 0);
				AI_Movement_Track_Append(kActorMutant1, 417, 0);
				AI_Movement_Track_Append(kActorMutant1, 539, 0);
				AI_Movement_Track_Repeat(kActorMutant1);
			} else {
				Actor_Set_Goal_Number(kActorMutant1, 403);
			}
			break;

		default:
			AI_Movement_Track_Append(kActorMutant1, 39, 60);
			AI_Movement_Track_Repeat(kActorMutant1);
			break;
		}
		return true;

	case 403:
		Actor_Set_Targetable(kActorMutant1, 0);
		Actor_Set_Goal_Number(kActorMutant1, 401);
		return true;

	case 404:
		AI_Movement_Track_Flush(kActorMutant1);
		AI_Movement_Track_Append(kActorMutant1, 39, 0);
		AI_Movement_Track_Repeat(kActorMutant1);
		return true;

	case 410:
		switch (Actor_Query_Which_Set_In(kActorMutant1)) {
		case kSetUG01:
			Non_Player_Actor_Combat_Mode_On(kActorMutant1, kActorCombatStateIdle, false, kActorMcCoy, 11, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, -1, -1, -1, 10, 300, false);
			break;

		case kSetUG04:
		case kSetUG05:
		case kSetUG06:
			Non_Player_Actor_Combat_Mode_On(kActorMutant1, kActorCombatStateIdle, false, kActorMcCoy, 10, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, -1, -1, -1, 10, 300, false);
			break;

		case kSetUG07:
			Non_Player_Actor_Combat_Mode_On(kActorMutant1, kActorCombatStateIdle, false, kActorMcCoy, 12, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, -1, -1, -1, 10, 300, false);
			break;

		case kSetUG10:
		case kSetUG12:
		case kSetUG14:
			Non_Player_Actor_Combat_Mode_On(kActorMutant1, kActorCombatStateIdle, false, kActorMcCoy, 14, kAnimationModeCombatIdle, kAnimationModeCombatWalk, kAnimationModeCombatRun, -1, -1, -1, 10, 300, false);
			break;
		}
		return true;

	case 411:
		AI_Movement_Track_Flush(kActorMutant1);
		Actor_Set_Intelligence(kActorMutant1, 40);
		Actor_Set_Health(kActorMutant1, 10 * Query_Difficulty_Level() + 30, 10 * Query_Difficulty_Level() + 30);

		if (Game_Flag_Query(kFlagCT04HomelessKilledByMcCoy)) {
			Actor_Set_Combat_Aggressiveness(kActorMutant1, 70);
			Actor_Set_Friendliness_To_Other(kActorMutant1, kActorMcCoy, 20);
		} else {
			Actor_Set_Combat_Aggressiveness(kActorMutant1, 40);
			Actor_Set_Friendliness_To_Other(kActorMutant1, kActorMcCoy, 45);
		}

		Actor_Modify_Friendliness_To_Other(kActorMutant2, kActorMcCoy, -10);
		Actor_Modify_Friendliness_To_Other(kActorMutant3, kActorMcCoy, -20);
		Actor_Modify_Combat_Aggressiveness(kActorMutant2, 10);
		Actor_Modify_Combat_Aggressiveness(kActorMutant3, 15);
		Actor_Set_Goal_Number(kActorMutant1, 403);
		return true;

	case 590:
		AI_Movement_Track_Flush(kActorMutant1);
		AI_Movement_Track_Append(kActorMutant1, 39, 100);
		AI_Movement_Track_Repeat(kActorMutant1);
		return true;

	case 599:
		AI_Movement_Track_Flush(kActorMutant1);
		Actor_Change_Animation_Mode(kActorMutant1, 48);
		Actor_Modify_Friendliness_To_Other(kActorMutant2, kActorMcCoy, -10);
		Actor_Modify_Friendliness_To_Other(kActorMutant3, kActorMcCoy, -20);
		Actor_Modify_Combat_Aggressiveness(kActorMutant2, 10);
		Actor_Modify_Combat_Aggressiveness(kActorMutant3, 15);
		return true;

	default:
		break;
	}

	return false;
}
Exemple #17
0
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;
}
Exemple #18
0
void AIScriptMutant1::ShotAtAndMissed() {
	if (Actor_Query_Goal_Number(kActorMutant1) != 410) {
		Actor_Modify_Combat_Aggressiveness(70, 10);
		Actor_Modify_Friendliness_To_Other(kActorMutant1, kActorMcCoy, -10);
	}
}
Exemple #19
0
void AIScriptMutant3::ShotAtAndMissed() {
	if (Actor_Query_Goal_Number(kActorMutant3) != 410) {
		Actor_Modify_Combat_Aggressiveness(kActorMutant3, 15);
		Actor_Modify_Friendliness_To_Other(kActorMutant3, 0, -15);
	}
}
Exemple #20
0
void SceneScriptUG16::sub_401D78() {
	Dialogue_Menu_Clear_List();
	DM_Add_To_List_Never_Repeat_Once_Selected(1400, 5, 6, 2);
	DM_Add_To_List_Never_Repeat_Once_Selected(1410, 5, 4, 8);
	if (Game_Flag_Query(600) || Game_Flag_Query(601)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(1420, 6, 4, 5);
		DM_Add_To_List_Never_Repeat_Once_Selected(1430, 6, 4, 5);
		DM_Add_To_List_Never_Repeat_Once_Selected(1440, 6, 4, 5);
	}
	if (Global_Variable_Query(49) > 1 && !Actor_Clue_Query(kActorMcCoy, kClueFolder)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(1450, 6, 4, 5);
	}
	if (Actor_Clue_Query(kActorMcCoy, kClueEnvelope)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(1460, 6, 4, 5);
	}
	if (Actor_Clue_Query(kActorMcCoy, kClueDNATyrell) && !Actor_Clue_Query(kActorMcCoy, kClueFolder) && Game_Flag_Query(698)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(1470, 6, 4, 5);
	}
	Dialogue_Menu_Add_DONE_To_List(1480);
	Dialogue_Menu_Appear(320, 240);
	int answer = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	switch (answer) {
	case 1400:
		Actor_Says(kActorMcCoy, 5730, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLuther, 100, 18);
		Actor_Says(kActorMcCoy, 5775, 13);
		Actor_Says(kActorLance, 70, 17);
		Actor_Says(kActorLuther, 110, 16);
		Actor_Says(kActorLance, 80, 6);
		Actor_Says(kActorMcCoy, 5780, 13);
		Actor_Says(kActorLuther, 120, 16);
		Actor_Says(kActorLance, 120, 13);
		Actor_Says(kActorMcCoy, 5785, 13);
		Actor_Says(kActorLuther, 130, 6);
		Actor_Says(kActorMcCoy, 5825, 13);
		Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -5);
		if (Game_Flag_Query(560)) {
			Actor_Says(kActorLuther, 140, 13);
			Actor_Says(kActorLuther, 150, 14);
			Actor_Says(kActorLuther, 160, 13);
			Actor_Says(kActorLance, 140, 16);
			Actor_Says(kActorMcCoy, 5790, 13);
			Actor_Says(kActorLuther, 170, 14);
			Game_Flag_Set(600);
			Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, 5);
		} else {
			Actor_Says(kActorLuther, 180, 14);
			Actor_Says(kActorMcCoy, 5795, 13);
			Actor_Says(kActorLance, 150, 17);
			Actor_Says(kActorMcCoy, 5800, 13);
			Actor_Says(kActorLuther, 190, 15);
			Game_Flag_Set(601);
			Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -10);
		}
		break;
	case 1410:
		Actor_Says(kActorMcCoy, 5735, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 160, 17);
		Actor_Says(kActorLuther, 200, 14);
		break;
	case 1420:
		Actor_Says(kActorMcCoy, 5740, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 180, 15);
		Actor_Says(kActorLuther, 220, 13);
		Actor_Says(kActorLance, 190, 17);
		Actor_Says(kActorMcCoy, 5805, 13);
		Actor_Says(kActorLuther, 230, 14);
		Actor_Says(kActorLuther, 240, 13);
		Actor_Says(kActorLance, 200, 17);
		Actor_Says(kActorLuther, 260, 13);
		Actor_Says(kActorLuther, 270, 15);
		Actor_Says(kActorLance, 210, 14);
		Actor_Says(kActorMcCoy, 5810, 13);
		Actor_Says(kActorLance, 220, 14);
		Actor_Says(kActorLance, 230, 17);
		Actor_Clue_Acquire(kActorMcCoy, kClueLutherLanceInterview, 1, kActorLuther);
		break;
	case 1430:
		Actor_Says(kActorMcCoy, 5745, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 240, 15);
		Actor_Says(kActorMcCoy, 5815, 13);
		Actor_Says(kActorLance, 250, 16);
		Actor_Says(kActorLuther, 290, 15);
		Actor_Says(kActorLance, 260, 15);
		break;
	case 1440:
		Actor_Says(kActorMcCoy, 5750, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 280, 6);
		Actor_Says(kActorLuther, 300, 14);
		Actor_Says(kActorLuther, 310, 15);
		Actor_Modify_Friendliness_To_Other(kActorLuther, kActorMcCoy, -5);
		break;
	case 1450:
		Actor_Says(kActorMcCoy, 5755, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 290, 17);
		Actor_Says(kActorLuther, 320, 16);
		Actor_Says(kActorMcCoy, 5820, 13);
		Actor_Says(kActorLance, 300, 17);
		Actor_Says(kActorLuther, 330, 14);
		Actor_Says(kActorMcCoy, 5825, 13);
		Actor_Says(kActorLuther, 340, 13);
		Actor_Says(kActorLance, 310, 13);
		Actor_Says(kActorLuther, 350, 13);
		Actor_Says(kActorLuther, 360, 15);
		Actor_Says(kActorMcCoy, 5830, 13);
		Actor_Says(kActorLance, 320, 16);
		Actor_Says(kActorLance, 330, 15);
		Game_Flag_Set(698);
		break;
	case 1460:
		Actor_Says(kActorMcCoy, 5760, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLuther, 370, 15);
		Actor_Says(kActorLance, 340, 14);
		Actor_Says(kActorMcCoy, 5835, 13);
		Actor_Says(kActorLuther, 380, 15);
		Actor_Says(kActorLance, 370, 6);
		Actor_Says(kActorMcCoy, 5840, 13);
		Actor_Says(kActorLance, 380, 13);
		break;
	case 1470:
		Actor_Says(kActorMcCoy, 5765, 13);
		Actor_Face_Actor(kActorMcCoy, kActorLuther, true);
		Actor_Says(kActorLance, 400, 15);
		Actor_Says(kActorMcCoy, 5845, 13);
		Actor_Says(kActorLuther, 390, 23);
		Actor_Says(kActorLance, 410, 14);
		Actor_Says(kActorLance, 420, 17);
		Actor_Says(kActorMcCoy, 5835, 13);
		Delay(1000);
		Item_Pickup_Spin_Effect(948, 239, 454);
		Actor_Voice_Over(2740, kActorVoiceOver);
		Actor_Voice_Over(2750, kActorVoiceOver);
		Actor_Voice_Over(2760, kActorVoiceOver);
		Actor_Voice_Over(2770, kActorVoiceOver);
		Actor_Says(kActorMcCoy, 5850, 13);
		Actor_Says(kActorLuther, 400, 15);
		Actor_Says(kActorLance, 430, 6);
		Actor_Says(kActorMcCoy, 5855, 13);
		Actor_Says(kActorLuther, 410, 14);
		Game_Flag_Set(597);
		Actor_Clue_Acquire(kActorMcCoy, kClueFolder, 1, kActorLuther);
		break;
	case 1480:
		Actor_Says(kActorMcCoy, 4595, 14);
		break;
	}
}
Exemple #21
0
void SceneScriptHC04::sub_401B90() {
	Dialogue_Menu_Clear_List();
	if (Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox2) || Actor_Clue_Query(kActorMcCoy, kClueKingstonKitchenBox1)) {
		if (Actor_Clue_Query(kActorMcCoy, kClueBombingSuspect)) {
			DM_Add_To_List_Never_Repeat_Once_Selected(340, 5, 6, 5);
		} else if (Actor_Clue_Query(kActorMcCoy, kClueTyrellSecurityPhoto)) {
			DM_Add_To_List_Never_Repeat_Once_Selected(350, 5, 6, 5);
		}
		DM_Add_To_List_Never_Repeat_Once_Selected(360, 6, 4, 3);
	}
	if (Actor_Clue_Query(kActorMcCoy, kClueCheese) && !Actor_Clue_Query(kActorMcCoy, kClueSpecialIngredient)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(370, 3, 4, 7);
	}
	if (Actor_Clue_Query(kActorMcCoy, kClueSpecialIngredient)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(380, -1, 5, 8);
	}
	DM_Add_To_List_Never_Repeat_Once_Selected(390, 7, 5, -1);
	Dialogue_Menu_Add_DONE_To_List(400);
	Dialogue_Menu_Appear(320, 240);
	int answer = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();
	switch (answer) {
	case 340:
		Actor_Says(kActorMcCoy, 1285, 3);
		Actor_Says(kActorIsabella, 50, 3);
		Actor_Says(kActorMcCoy, 1330, 3);
		Actor_Says(kActorIsabella, 60, 3);
		break;
	case 350:
		Actor_Says(kActorMcCoy, 1290, 3);
		Actor_Says(kActorIsabella, 70, 3);
		Actor_Says(kActorMcCoy, 1335, 3);
		Actor_Says(kActorIsabella, 80, 3);
		Actor_Says(kActorMcCoy, 1340, 3);
		Actor_Says(kActorIsabella, 90, 3);
		Actor_Says(kActorMcCoy, 1345, 3);
		break;
	case 360:
		Actor_Says(kActorMcCoy, 1295, 3);
		Actor_Says(kActorIsabella, 100, 3);
		Actor_Says(kActorMcCoy, 1350, 3);
		Actor_Says(kActorIsabella, 110, 3);
		Actor_Says(kActorMcCoy, 1355, 3);
		Actor_Says(kActorIsabella, 130, 3);
		Actor_Says(kActorMcCoy, 1360, 3);
		break;
	case 370:
		Actor_Says(kActorMcCoy, 1300, 3);
		Actor_Says(kActorIsabella, 140, 3);
		Actor_Says(kActorMcCoy, 1365, 3);
		Actor_Says(kActorIsabella, 150, 3);
		break;
	case 380:
		Actor_Says(kActorMcCoy, 1305, 3);
		Actor_Modify_Friendliness_To_Other(kActorIsabella, kActorMcCoy, -2);
		Actor_Says(kActorIsabella, 160, 3);
		Actor_Says(kActorMcCoy, 1370, 3);
		Actor_Says(kActorIsabella, 170, 3);
		Actor_Says(kActorMcCoy, 1375, 3);
		Actor_Says(kActorIsabella, 180, 3);
		Actor_Says(kActorMcCoy, 1380, 3);
		Actor_Says(kActorIsabella, 190, 3);
		Actor_Says(kActorIsabella, 210, 3);
		Actor_Says(kActorIsabella, 240, 3);
		Actor_Says(kActorMcCoy, 1385, 3);
		Actor_Says(kActorIsabella, 260, 3);
		Actor_Says(kActorMcCoy, 1390, 3);
		Actor_Says(kActorIsabella, 300, 3);
		Actor_Says(kActorIsabella, 310, 3);
		Actor_Says(kActorIsabella, 320, 3);
		Actor_Says(kActorMcCoy, 1395, 3);
		Actor_Says(kActorIsabella, 330, 3);
		Actor_Clue_Acquire(kActorMcCoy, kClueStolenCheese, 0, kActorIsabella);
		break;
	case 390:
		Actor_Says(kActorMcCoy, 1310, 3);
		Actor_Modify_Friendliness_To_Other(kActorIsabella, kActorMcCoy, 2);
		Actor_Says(kActorIsabella, 340, 3);
		break;
	case 400:
		Actor_Says(kActorMcCoy, 1315, 3);
		break;
	default:
		Actor_Says(kActorMcCoy, 1320, 3);
		Actor_Says(kActorIsabella, 30, 3);
		Actor_Says(kActorMcCoy, 1325, 3);
		Actor_Says(kActorMcCoy, 1345, 3);
		break;
	}
}
Exemple #22
0
void SceneScriptUG18::talkWithGuzza() {
	Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
	Actor_Says(kActorMcCoy, 5860, 9);
	Delay(500);
	Actor_Face_Actor(kActorGuzza, kActorMcCoy, true);
	Delay(500);
	Actor_Says(kActorGuzza, 790, 3);
	Actor_Says(kActorMcCoy, 5865, 12);
	Actor_Says(kActorGuzza, 800, 3);
	Loop_Actor_Walk_To_XYZ(kActorMcCoy, -357.13f, 0.0f, -44.47f, 0, false, false, 0);
	Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
	Actor_Says(kActorMcCoy, 5870, 14);
	Actor_Face_Actor(kActorGuzza, kActorMcCoy, true);
	Actor_Start_Speech_Sample(kActorGuzza, 810);
	Loop_Actor_Walk_To_XYZ(kActorGuzza, -57.21f, 0.0f, -334.17f, 0, false, false, 0);
	Actor_Says(kActorMcCoy, 5875, 13);
	Actor_Says(kActorGuzza, 830, 3);
	Actor_Says(kActorGuzza, 840, 12);
	Actor_Says(kActorGuzza, 850, 14);
	Actor_Says(kActorGuzza, 860, 13);
	Actor_Says(kActorMcCoy, 5880, 15);
	Actor_Says(kActorMcCoy, 5885, 9);
	Actor_Says(kActorMcCoy, 5890, 13);
	Actor_Says(kActorGuzza, 870, 15);
	Loop_Actor_Walk_To_XYZ(kActorMcCoy, -205.13f, 0.0f, -184.47f, 0, false, false, 0);
	Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
	Actor_Says(kActorMcCoy, 5900, 15);
	Actor_Says(kActorGuzza, 880, 13);
	Actor_Says(kActorMcCoy, 5905, 9);
	Actor_Says(kActorMcCoy, 5910, 12);
	Actor_Says(kActorMcCoy, 5915, 13);
	Actor_Says(kActorGuzza, 890, 16);
	Actor_Says(kActorMcCoy, 5920, 14);
	Loop_Actor_Walk_To_XYZ(kActorGuzza, -57.21f, 0.0f, -334.17f, 0, false, false, 0);
	Actor_Face_Actor(kActorGuzza, kActorMcCoy, true);
	Actor_Says(kActorGuzza, 900, 15);
	Actor_Says(kActorGuzza, 910, 12);
	Actor_Says(kActorGuzza, 920, 16);
	Actor_Says(kActorMcCoy, 5925, 14);
	Actor_Says(kActorGuzza, 940, 14);
	Actor_Says(kActorMcCoy, 5930, 18);
	Actor_Says(kActorGuzza, 950, 14);
	Actor_Says(kActorGuzza, 960, 13);
	Actor_Says(kActorGuzza, 970, 3);
	if (Game_Flag_Query(kFlagMcCoyRetiredHuman)) {
		Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 3);
		Actor_Modify_Friendliness_To_Other(kActorSadik, kActorMcCoy, 5);
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -117.13f, 0.0f, -284.47f, 0, false, false, 0);
		Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
		Actor_Says(kActorMcCoy, 5960, 9);
		Actor_Says(kActorMcCoy, 5965, 14);
		Actor_Says(kActorGuzza, 980, 15);
		Actor_Says(kActorGuzza, 990, 13);
		Actor_Says(kActorMcCoy, 5970, 14);
		Actor_Says(kActorGuzza, 1000, 3);
		Actor_Says(kActorMcCoy, 5975, 15);
	} else if (Player_Query_Agenda() == kPlayerAgendaPolite) {
		Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, -1);
		Actor_Modify_Friendliness_To_Other(kActorSadik, kActorMcCoy, -1);
		Actor_Says(kActorMcCoy, 5935, 14);
		Actor_Says(kActorMcCoy, 5940, 18);
		Actor_Says(kActorGuzza, 1020, 13);
		Actor_Says(kActorGuzza, 1030, 14);
	} else if (Global_Variable_Query(kVariableAffectionTowards) > 1
			|| Player_Query_Agenda() == kPlayerAgendaSurly
	) {
		Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 20);
		Actor_Modify_Friendliness_To_Other(kActorSadik, kActorMcCoy, 10);
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -117.13f, 0.0f, -284.47f, 0, false, false, 0);
		Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
		Actor_Says(kActorMcCoy, 5950, 16);
		Actor_Says(kActorMcCoy, 5955, 14);
		Actor_Says(kActorGuzza, 1110, 13);
		Actor_Says(kActorGuzza, 1120, 15);
		Actor_Says(kActorMcCoy, 5990, 3);
		Actor_Says(kActorGuzza, 1130, 15);
		Actor_Says(kActorGuzza, 1140, 16);
	} else {
		Loop_Actor_Walk_To_XYZ(kActorMcCoy, -117.13f, 0.0f, -284.47f, 0, false, false, 0);
		Actor_Face_Actor(kActorMcCoy, kActorGuzza, true);
		Actor_Says(kActorMcCoy, 5945, 12);
		Actor_Says(kActorGuzza, 1040, 15);
		Actor_Says(kActorMcCoy, 5980, 15);
		Actor_Says(kActorGuzza, 1050, 12);
		Actor_Says(kActorGuzza, 1060, 13);
		Actor_Says(kActorGuzza, 1070, 14);
		Actor_Says(kActorMcCoy, 5985, 18);
		Actor_Says(kActorGuzza, 1080, 3);
		Actor_Says(kActorGuzza, 1090, 14);
		Actor_Says(kActorGuzza, 1100, 13);
	}
}
Exemple #23
0
bool SceneScriptCT01::ClickedOnActor(int actorId) {
	if (actorId == kActorHowieLee) {
		Actor_Set_Goal_Number(kActorHowieLee, 50);
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -335.23f, -6.5f, 578.97f, 12, true, false, 0)) {
			Actor_Face_Actor(kActorMcCoy, kActorHowieLee, true);
			Actor_Face_Actor(kActorHowieLee, kActorMcCoy, true);
			if (!Game_Flag_Query(kFlagCT01McCoyTalkedToHowieLee)) {
				Actor_Says(kActorMcCoy, 260, 18);
				Actor_Says(kActorHowieLee, 0, 14);
				Game_Flag_Set(kFlagCT01McCoyTalkedToHowieLee);
				Actor_Set_Goal_Number(kActorHowieLee, 0);
				return true;
			}

			if (!Game_Flag_Query(kFlagNotUsed30)
			 && Actor_Query_Friendliness_To_Other(kActorHowieLee, kActorMcCoy) >= 40
			) {
				dialogueWithHowieLee();
				Actor_Set_Goal_Number(kActorHowieLee, 0);
				return true;
			}

			if (Game_Flag_Query(kFlagCT01ZubenGone)) {
				Actor_Says(kActorMcCoy, 330, 17);
				Actor_Says(kActorHowieLee, 130, 13);
				Actor_Says(kActorHowieLee, 140, 14);
			} else if (Actor_Query_Friendliness_To_Other(kActorHowieLee, kActorMcCoy) < 50) {
				Actor_Says(kActorMcCoy, 330, 13);
				Actor_Says(kActorHowieLee, 160, 15);
			} else {
				Actor_Says(kActorMcCoy, 310, 11);
				Actor_Says(kActorHowieLee, 10, 16);
			}
			Actor_Set_Goal_Number(kActorHowieLee, 0);
			return true;
		}
	}

	if (actorId == kActorZuben) {
		if (!Loop_Actor_Walk_To_XYZ(kActorMcCoy, -335.23f, -6.5f, 578.97f, 12, true, false, 0)) {
			Actor_Face_Actor(kActorMcCoy, kActorZuben, true);
			Actor_Says(kActorMcCoy, 355, 18);
			if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenDefault) {
				Actor_Says(kActorZuben, 10, 16);
				Actor_Face_Actor(kActorHowieLee, kActorMcCoy, true);
				Actor_Says(kActorHowieLee, 150, kAnimationModeTalk);
				Actor_Face_Actor(kActorMcCoy, kActorHowieLee, true);
				Actor_Says(kActorMcCoy, 360, 13);
				Actor_Modify_Friendliness_To_Other(kActorHowieLee, kActorMcCoy, -5);
				Actor_Modify_Friendliness_To_Other(kActorZuben, kActorMcCoy, -4);
			}
			return true;
		}
	}

	if (actorId == kActorGordo) {
		if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault) {
			if (Loop_Actor_Walk_To_XYZ(kActorMcCoy, -338.1f, -6.5f, 419.65f, 6, true, false, 0)) {
				return false;
			}
		}
		Actor_Face_Actor(kActorMcCoy, kActorGordo, true);
		if (!Game_Flag_Query(kFlagCT01GordoTalk)) {
			Actor_Says(kActorMcCoy, 335, 18);
			Actor_Says(kActorGordo, 20, 30);
			Game_Flag_Set(kFlagCT01GordoTalk);
			Actor_Clue_Acquire(kActorGordo, kClueMcCoysDescription, true, kActorMcCoy);
#if BLADERUNNER_ORIGINAL_BUGS
			Actor_Clue_Acquire(kActorMcCoy, kClueMcCoyIsABladeRunner, true, kActorMcCoy);
#else
			Actor_Clue_Acquire(kActorGordo, kClueMcCoyIsABladeRunner, true, kActorMcCoy);
#endif // BLADERUNNER_ORIGINAL_BUGS
			Actor_Modify_Friendliness_To_Other(kActorGordo, kActorMcCoy, -1);
		} else {
			if (Actor_Query_Goal_Number(kActorGordo) == kGoalGordoDefault) {
				Actor_Says(kActorMcCoy, 340, 13);
				Actor_Says(kActorMcCoy, 345, 11);
				Actor_Says(kActorGordo, 30, 30);
				Actor_Says(kActorMcCoy, 350, 13);
				Actor_Says(kActorGordo, 40, 30);
				Actor_Modify_Friendliness_To_Other(kActorGordo, kActorMcCoy, -5);
				Player_Loses_Control();
			} else {
				Actor_Says(kActorMcCoy, 365, 14);
			}
		}
		if (Actor_Query_Is_In_Current_Set(kActorZuben)) {
			Actor_Modify_Friendliness_To_Other(kActorZuben, kActorMcCoy, -2);
		}
		return true;
	}

	return false;
}
Exemple #24
0
void SceneScriptCT01::dialogueWithHowieLee() {
	Dialogue_Menu_Clear_List();
	if (Actor_Clue_Query(kActorMcCoy, kClueLucy)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(40, 4, 5, 6); // LUCY PHOTO
	}

	if (
	 (   Actor_Clue_Query(kActorMcCoy, kClueChopstickWrapper)
	  || Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)
	 )
	 && !Game_Flag_Query(kFlagCT01Evidence1Linked)
	) {
		DM_Add_To_List_Never_Repeat_Once_Selected(50, 5, 5, 4); // RUNCITER CLUES
	}

	if ( Actor_Clue_Query(kActorMcCoy, kClueChopstickWrapper)
	 &&  Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)
	 &&  Game_Flag_Query(kFlagCT01Evidence1Linked)
	 && !Game_Flag_Query(kFlagCT01Evidence2Linked)
	) {
		DM_Add_To_List_Never_Repeat_Once_Selected(60, 3, 5, 5); // MORE RUNCITER CLUES
	}

	if (Game_Flag_Query(kFlagCT02PotTipped)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(80, 9, 9, 9); // EMPLOYEE
	} else if (Game_Flag_Query(kFlagCT01ZubenLeft)) {
		DM_Add_To_List_Never_Repeat_Once_Selected(80, 3, 4, 8); // EMPLOYEE
	}

	if (Actor_Clue_Query(kActorMcCoy, kClueCarColorAndMake)
	 && Actor_Clue_Query(kActorMcCoy, kClueDispatchHitAndRun) // this clue is never obtained
	) {
		DM_Add_To_List_Never_Repeat_Once_Selected(90, 5, 4, 5); // HIT AND RUN
	}

	DM_Add_To_List_Never_Repeat_Once_Selected(70, 7, 3, -1); // SMALL TALK
	Dialogue_Menu_Add_DONE_To_List(100); // DONE

	Dialogue_Menu_Appear(320, 240);
	int answer = Dialogue_Menu_Query_Input();
	Dialogue_Menu_Disappear();

	switch (answer) {
	case 40: // LUCY PHOTO
		Actor_Says(kActorMcCoy, 265, 11);
		Actor_Says(kActorHowieLee, 20, 14);
		if (Actor_Query_Is_In_Current_Set(kActorZuben)) {
			if (Actor_Query_Goal_Number(kActorZuben) == kGoalZubenDefault) {
				Actor_Face_Actor(kActorHowieLee, kActorZuben, true);
				Actor_Says(kActorHowieLee, 120, 14);
				Actor_Face_Actor(kActorZuben, kActorHowieLee, true);
				Actor_Says(kActorZuben, 40, 18);
				Actor_Face_Heading(kActorZuben, 103, false);
				Actor_Face_Actor(kActorHowieLee, kActorMcCoy, true);
				Actor_Modify_Friendliness_To_Other(kActorZuben, kActorMcCoy, -2);
				if (Actor_Query_Is_In_Current_Set(kActorGordo)) {
					Actor_Modify_Friendliness_To_Other(kActorGordo, kActorMcCoy, -3);
					Actor_Clue_Acquire(kActorGordo, kClueMcCoysDescription, true, kActorMcCoy);
				}
			}
		}
		break;

	case 50: // RUNCITER CLUES
		if (Actor_Clue_Query(kActorMcCoy, kClueChopstickWrapper)) {
			Actor_Says(kActorMcCoy, 270, 11);
			Actor_Says(kActorHowieLee, 30, 16);
		} else {
			Actor_Says(kActorMcCoy, 280, 11);
			Actor_Says(kActorHowieLee, 40, 14);
		}
		Game_Flag_Set(kFlagCT01Evidence1Linked);
		break;

	case 60: // MORE RUNCITER CLUES
		if (Actor_Clue_Query(kActorMcCoy, kClueSushiMenu)) {
			Actor_Says(kActorMcCoy, 270, 11);
			Actor_Says(kActorHowieLee, 40, 15);
		} else {
			Actor_Says(kActorMcCoy, 270, 11);
			Actor_Says(kActorHowieLee, 30, 14);
		}
		Actor_Modify_Friendliness_To_Other(kActorHowieLee, kActorMcCoy, 5);
		Game_Flag_Set(kFlagCT01Evidence2Linked);
		break;

	case 70: // SMALL TALK
		Actor_Says(kActorMcCoy, 290, 13);
		if (Actor_Query_Friendliness_To_Other(kActorHowieLee, kActorMcCoy) > 49
		 && (Global_Variable_Query(kVariableChinyen) > 10
		  || Query_Difficulty_Level() == 0
		 )
		) {
			Actor_Says(kActorHowieLee, 50, kAnimationModeTalk);
			Actor_Says(kActorHowieLee, 60, kAnimationModeTalk);
			Actor_Face_Actor(kActorHowieLee, kActorMcCoy, true);
			Actor_Says(kActorHowieLee, 70, 16);
			Actor_Says(kActorMcCoy, 325, 13);
			if (Query_Difficulty_Level() != 0) {
				Global_Variable_Decrement(kVariableChinyen, 10);
			}
			Game_Flag_Set(kFlagCT01BoughtHowieLeeFood);
		} else {
			Actor_Says(kActorHowieLee, 130, 15);
		}
		break;

	case 80: // EMPLOYEE
		Actor_Says(kActorMcCoy, 295, 11);
		Actor_Says(kActorHowieLee, 90, 14);
		Actor_Says(kActorHowieLee, 100, 13);
		Actor_Clue_Acquire(kActorMcCoy, kClueHowieLeeInterview, true, kActorHowieLee);
		Actor_Modify_Friendliness_To_Other(kActorHowieLee, kActorMcCoy, -3);
		break;

	case 90: // HIT AND RUN
		Actor_Says(kActorMcCoy, 300, 13);
		Actor_Says(kActorHowieLee, 110, 16);
		break;

	case 100: // DONE
		Actor_Says(kActorMcCoy, 305, 18);
		break;
	}
}
Exemple #25
0
void SceneScriptUG18::ActorChangedGoal(int actorId, int newGoal, int oldGoal, bool currentSet) {
	if (actorId == kActorGuzza) {
		switch (newGoal) {
		case kGoalGuzzaUG18HitByMcCoy:
			Game_Flag_Set(kFlagMcCoyRetiredHuman);
			ADQ_Flush();
			Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 7);
			Actor_Modify_Friendliness_To_Other(kActorSadik, kActorMcCoy, 10);
			Player_Loses_Control();
			Actor_Face_Actor(kActorGuzza, kActorMcCoy, true);
			ADQ_Add(kActorGuzza, 1220, 58);
			Scene_Exits_Enable();
			Actor_Set_Goal_Number(kActorGuzza, kGoalGuzzaUG18ShotByMcCoy);
			break;

		case kGoalGuzzaUG18MissedByMcCoy:
			ADQ_Flush();
			Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, 7);
			Actor_Modify_Friendliness_To_Other(kActorSadik, kActorMcCoy, 10);
			Player_Loses_Control();
			Actor_Face_Actor(kActorGuzza, kActorMcCoy, true);
			ADQ_Add(kActorGuzza, 1220, 58);
			Scene_Exits_Enable();
			Actor_Set_Goal_Number(kActorGuzza, kGoalGuzzaUG18ShootMcCoy);
			break;
		}
		return;
	}

	if (actorId == kActorSadik) {
		switch (newGoal) {
		case kGoalSadikUG18Decide:
			if (Actor_Query_Friendliness_To_Other(kActorClovis, kActorMcCoy) > 55
			 && Game_Flag_Query(kFlagMcCoyRetiredHuman)
			) {
				Actor_Says(kActorClovis, 660, 13);
				Actor_Says(kActorMcCoy, 5995, 13);
				Actor_Says(kActorClovis, 670, 13);
				Actor_Says(kActorMcCoy, 6000, 13);
				Actor_Says_With_Pause(kActorClovis, 680, 2.0f, 13);
				Actor_Says(kActorClovis, 690, 13);
				Actor_Says(kActorClovis, 700, 13);
				Actor_Set_Goal_Number(kActorSadik, kGoalSadikUG18Leave);
				Actor_Set_Goal_Number(kActorClovis, kGoalClovisUG18Leave);
			} else {
				Actor_Set_Goal_Number(kActorSadik, kGoalSadikUG18PrepareShootMcCoy);
				Actor_Set_Goal_Number(kActorClovis, kGoalClovisUG18Leave);
			}
			break;

		// goals 303, 304 and 305 are never set, cut out part of game?
		case 304:
			Actor_Modify_Friendliness_To_Other(kActorClovis, kActorMcCoy, -3);
			ADQ_Add(kActorSadik, 380, -1);
			Actor_Set_Goal_Number(kActorSadik, kGoalSadikUG18WillShootMcCoy);
			break;

		case 305:
			Actor_Change_Animation_Mode(kActorSadik, kAnimationModeCombatAttack);
			Sound_Play(12, 100, 0, 0, 50);
			Actor_Force_Stop_Walking(kActorMcCoy);
			Actor_Change_Animation_Mode(kActorMcCoy, kAnimationModeDie);
			Player_Loses_Control();
			Actor_Retired_Here(kActorMcCoy, 6, 6, true, kActorSadik);
			break;
		}
	}
}