aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/script
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/script')
-rw-r--r--engines/bladerunner/script/script.cpp53
-rw-r--r--engines/bladerunner/script/script.h20
2 files changed, 31 insertions, 42 deletions
diff --git a/engines/bladerunner/script/script.cpp b/engines/bladerunner/script/script.cpp
index 180e8cb96e..8c6afc6b16 100644
--- a/engines/bladerunner/script/script.cpp
+++ b/engines/bladerunner/script/script.cpp
@@ -30,7 +30,7 @@
#include "bladerunner/ambient_sounds.h"
#include "bladerunner/audio_player.h"
#include "bladerunner/audio_speech.h"
-#include "bladerunner/clues.h"
+#include "bladerunner/crimes_database.h"
#include "bladerunner/combat.h"
#include "bladerunner/gameflags.h"
#include "bladerunner/gameinfo.h"
@@ -1122,62 +1122,51 @@ void ScriptBase::Police_Maze_Set_Pause_State(int a1) {
}
void ScriptBase::CDB_Set_Crime(int crimeId, int value) {
- //TODO
- warning("CDB_Set_Crime(%d, %d)", crimeId, value);
+ _vm->_crimesDatabase->setCrime(crimeId, value);
}
void ScriptBase::CDB_Set_Clue_Asset_Type(int assetId, int type) {
- //TODO
- warning("CDB_Set_Clue_Asset_Type(%d, %d)", assetId, type);
+ _vm->_crimesDatabase->setAssetType(assetId, type);
}
-void ScriptBase::SDB_Set_Actor(int actorId, int a2) {
- //TODO
- warning("SDB_Set_Actor(%d, %d)", actorId, a2);
+void ScriptBase::SDB_Set_Actor(int suspectId, int actorId) {
+ _vm->_suspectsDatabase->get(suspectId)->setActor(actorId);
}
-void ScriptBase::SDB_Add_Photo_Clue(int actorId, int a2, int a3) {
- //TODO
- warning("SDB_Add_Photo_Clue(%d, %d, %d)", actorId, a2, a3);
+bool ScriptBase::SDB_Add_Photo_Clue(int suspectId, int a2, int a3) {
+ return _vm->_suspectsDatabase->get(suspectId)->addPhotoClue(a2, a3);
}
void ScriptBase::SDB_Set_Name(int actorId) {
// not implemented in game
}
-void ScriptBase::SDB_Set_Sex(int actorId, int a2) {
- //TODO
- warning("SDB_Set_Sex(%d, %d)", actorId, a2);
+void ScriptBase::SDB_Set_Sex(int suspectId, int sex) {
+ _vm->_suspectsDatabase->get(suspectId)->setSex(sex);
}
-void ScriptBase::SDB_Add_Identity_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_Identity_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_Identity_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addIdentityClue(clueId);
}
-void ScriptBase::SDB_Add_MO_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_MO_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_MO_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addMOClue(clueId);
}
-void ScriptBase::SDB_Add_Whereabouts_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_Whereabouts_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_Whereabouts_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addWhereaboutsClue(clueId);
}
-void ScriptBase::SDB_Add_Replicant_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_Replicant_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_Replicant_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addReplicantClue(clueId);
}
-void ScriptBase::SDB_Add_Non_Replicant_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_Non_Replicant_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_Non_Replicant_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addNonReplicantClue(clueId);
}
-void ScriptBase::SDB_Add_Other_Clue(int actorId, int a2) {
- //TODO
- warning("SDB_Add_Other_Clue(%d, %d)", actorId, a2);
+bool ScriptBase::SDB_Add_Other_Clue(int suspectId, int clueId) {
+ return _vm->_suspectsDatabase->get(suspectId)->addOtherClue(clueId);
}
void ScriptBase::Spinner_Set_Selectable_Destination_Flag(int a1, int a2) {
diff --git a/engines/bladerunner/script/script.h b/engines/bladerunner/script/script.h
index fb38fdaf91..5966b67868 100644
--- a/engines/bladerunner/script/script.h
+++ b/engines/bladerunner/script/script.h
@@ -213,16 +213,16 @@ protected:
void Police_Maze_Set_Pause_State(int a1);
void CDB_Set_Crime(int crimeId, int value);
void CDB_Set_Clue_Asset_Type(int assetId, int type);
- void SDB_Set_Actor(int actorId, int a2);
- void SDB_Add_Photo_Clue(int actorId, int a2, int a3);
- void SDB_Set_Name(int actorId);
- void SDB_Set_Sex(int actorId, int a2);
- void SDB_Add_Identity_Clue(int actorId, int a2);
- void SDB_Add_MO_Clue(int actorId, int a2);
- void SDB_Add_Whereabouts_Clue(int actorId, int a2);
- void SDB_Add_Replicant_Clue(int actorId, int a2);
- void SDB_Add_Non_Replicant_Clue(int actorId, int a2);
- void SDB_Add_Other_Clue(int actorId, int a2);
+ void SDB_Set_Actor(int suspectId, int actorId);
+ bool SDB_Add_Photo_Clue(int suspectId, int a2, int a3);
+ void SDB_Set_Name(int suspectId);
+ void SDB_Set_Sex(int suspectId, int sex);
+ bool SDB_Add_Identity_Clue(int suspectId, int clueId);
+ bool SDB_Add_MO_Clue(int suspectId, int clueId);
+ bool SDB_Add_Whereabouts_Clue(int suspectId, int clueId);
+ bool SDB_Add_Replicant_Clue(int suspectId, int clueId);
+ bool SDB_Add_Non_Replicant_Clue(int suspectId, int clueId);
+ bool SDB_Add_Other_Clue(int suspectId, int clueId);
void Spinner_Set_Selectable_Destination_Flag(int a1, int a2);
// Spinner_Query_Selectable_Destination_Flag
int Spinner_Interface_Choose_Dest(int a1, int a2);