[Scummvm-git-logs] scummvm master -> 54accdffae0e0d5e9c8ef33eed534bad1089fc42

madmoose thomas at fach-pedersen.net
Tue Aug 22 19:52:35 CEST 2017


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
54accdffae BLADERUNNER: Call AI script when clue is received


Commit: 54accdffae0e0d5e9c8ef33eed534bad1089fc42
    https://github.com/scummvm/scummvm/commit/54accdffae0e0d5e9c8ef33eed534bad1089fc42
Author: Thomas Fach-Pedersen (thomas at fach-pedersen.net)
Date: 2017-08-22T19:51:11+02:00

Commit Message:
BLADERUNNER: Call AI script when clue is received

Changed paths:
    engines/bladerunner/actor.cpp
    engines/bladerunner/script/ai.cpp
    engines/bladerunner/script/ai.h


diff --git a/engines/bladerunner/actor.cpp b/engines/bladerunner/actor.cpp
index 6265a04..85c5d89 100644
--- a/engines/bladerunner/actor.cpp
+++ b/engines/bladerunner/actor.cpp
@@ -1062,7 +1062,11 @@ void Actor::addClueToDatabase(int clueId, int weight, bool clueAcquired, bool un
 }
 
 void Actor::acquireClue(int clueId, bool unknownFlag, int fromActorId) {
+	bool hasAlready = hasClue(clueId);
 	_clues->acquire(clueId, unknownFlag, fromActorId);
+	if (!hasAlready) {
+		_vm->_aiScripts->ReceivedClue(_id, clueId, fromActorId);
+	}
 }
 
 void Actor::loseClue(int clueId) {
diff --git a/engines/bladerunner/script/ai.cpp b/engines/bladerunner/script/ai.cpp
index 492abc0..c695886 100644
--- a/engines/bladerunner/script/ai.cpp
+++ b/engines/bladerunner/script/ai.cpp
@@ -91,6 +91,15 @@ void AIScripts::CompletedMovementTrack(int actor) {
 	}
 }
 
+void AIScripts::ReceivedClue(int actor, int clueId, int fromActorId) {
+	assert(actor < _actorsCount);
+	_inScriptCounter++;
+	if (_AIScripts[actor]) {
+		_AIScripts[actor]->ReceivedClue(clueId, fromActorId);
+	}
+	_inScriptCounter--;
+}
+
 void AIScripts::EnteredScene(int actor, int setId) {
 	assert(actor < _actorsCount);
 	_inScriptCounter++;
diff --git a/engines/bladerunner/script/ai.h b/engines/bladerunner/script/ai.h
index 00a9f8e..c3fec41 100644
--- a/engines/bladerunner/script/ai.h
+++ b/engines/bladerunner/script/ai.h
@@ -104,7 +104,7 @@ DECLARE_SCRIPT(McCoy)
 	float off_45A100;
 	float flt_462710;
 	float flt_462714;
-	
+
 	void sub_4053E0();
 	void sub_4054F0();
 	void sub_405660();
@@ -170,6 +170,7 @@ public:
 	void Update(int actor);
 	void TimerExpired(int actor, int timer);
 	void CompletedMovementTrack(int actor);
+	void ReceivedClue(int actor, int clueId, int fromActorId);
 	void EnteredScene(int actor, int setId);
 	void OtherAgentEnteredThisScene(int actor, int otherActorId);
 	void OtherAgentExitedThisScene(int actor, int otherActorId);





More information about the Scummvm-git-logs mailing list