[Scummvm-git-logs] scummvm master -> ac912a5023c83c4ac87a6e77c213f99d501cdd6b

antoniou79 antoniou at cti.gr
Thu Sep 5 12:18:40 CEST 2019


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:
ac912a5023 BLADERUNNER: Revert previous changes in clues listing


Commit: ac912a5023c83c4ac87a6e77c213f99d501cdd6b
    https://github.com/scummvm/scummvm/commit/ac912a5023c83c4ac87a6e77c213f99d501cdd6b
Author: Thanasis Antoniou (a.antoniou79 at gmail.com)
Date: 2019-09-05T13:17:53+03:00

Commit Message:
BLADERUNNER: Revert previous changes in clues listing

Keep the important bug fix which was in KIASectionSuspects::populateAcquiredClues

Some of the changes in the previous commit were due to confusing the role of the getClueIdByIndex method

Changed paths:
    engines/bladerunner/actor.cpp
    engines/bladerunner/actor_clues.cpp
    engines/bladerunner/ui/kia_section_clues.cpp
    engines/bladerunner/ui/kia_section_crimes.cpp
    engines/bladerunner/ui/kia_section_suspects.cpp


diff --git a/engines/bladerunner/actor.cpp b/engines/bladerunner/actor.cpp
index e1ecefd..7080b33 100644
--- a/engines/bladerunner/actor.cpp
+++ b/engines/bladerunner/actor.cpp
@@ -1254,7 +1254,7 @@ bool Actor::copyClues(int actorId) {
 	bool newCluesAcquired = false;
 	Actor *otherActor = _vm->_actors[actorId];
 	for (int i = 0; i < (int)_vm->_gameInfo->getClueCount(); i++) {
-		int clueId = _clues->getClueIdByIndex(i);
+		int clueId = i;
 		if (hasClue(clueId) && !_clues->isPrivate(clueId) && otherActor->canAcquireClue(clueId) && !otherActor->hasClue(clueId)) {
 			int fromActorId = _id;
 			if (_id == BladeRunnerEngine::kActorVoiceOver) {
diff --git a/engines/bladerunner/actor_clues.cpp b/engines/bladerunner/actor_clues.cpp
index 4946113..462cdc1 100644
--- a/engines/bladerunner/actor_clues.cpp
+++ b/engines/bladerunner/actor_clues.cpp
@@ -318,7 +318,9 @@ int ActorClues::getCount() const {
 }
 
 int ActorClues::getClueIdByIndex(int index) const {
-	if (index < 0) {
+	assert(index < _count);
+
+	if (index < 0 || index >= _count) {
 		return -1;
 	}
 	return _clues[index].clueId;
diff --git a/engines/bladerunner/ui/kia_section_clues.cpp b/engines/bladerunner/ui/kia_section_clues.cpp
index 9b9f6b7..ce14b94 100644
--- a/engines/bladerunner/ui/kia_section_clues.cpp
+++ b/engines/bladerunner/ui/kia_section_clues.cpp
@@ -283,7 +283,7 @@ void KIASectionClues::populateFilters() {
 	};
 
 	for (int i = 0; i < kClueCount; ++i) {
-		int clueId = _clues->getClueIdByIndex(i);
+		int clueId = i;
 		if (_clues->isAcquired(clueId)) {
 			int assetType = _vm->_crimesDatabase->getAssetType(clueId);
 			int crimeId = _vm->_crimesDatabase->getCrime(clueId);
@@ -383,7 +383,7 @@ void KIASectionClues::populateFilters() {
 void KIASectionClues::populateClues() {
 	_cluesScrollBox->clearLines();
 	for (int i = 0; i < kClueCount; ++i) {
-		int clueId = _clues->getClueIdByIndex(i);
+		int clueId = i;
 		if (_clues->isAcquired(clueId)) {
 			int assetType = _vm->_crimesDatabase->getAssetType(clueId);
 			int crimeId = _vm->_crimesDatabase->getCrime(clueId);
diff --git a/engines/bladerunner/ui/kia_section_crimes.cpp b/engines/bladerunner/ui/kia_section_crimes.cpp
index 9061fff..8729002 100644
--- a/engines/bladerunner/ui/kia_section_crimes.cpp
+++ b/engines/bladerunner/ui/kia_section_crimes.cpp
@@ -287,7 +287,7 @@ void KIASectionCrimes::onButtonPressed(int buttonId) {
 void KIASectionCrimes::populateAcquiredClues() {
 	_acquiredClueCount = 0;
 	for (int i = 0; i < kClueCount; ++i) {
-		int clueId = _clues->getClueIdByIndex(i);
+		int clueId = i;
 		if (_clues->isAcquired(clueId)) {
 			_acquiredClues[_acquiredClueCount].clueId = clueId;
 			_acquiredClues[_acquiredClueCount].actorId = _clues->getFromActorId(clueId);
@@ -377,7 +377,7 @@ void KIASectionCrimes::populateVisibleClues() {
 	_cluesScrollBox->clearLines();
 	if (_crimeSelected != -1) {
 		for (uint i = 0; i < kClueCount; ++i) {
-			int clueId = _clues->getClueIdByIndex(i);
+			int clueId = i;
 			if (_vm->_crimesDatabase->getAssetType(clueId) != -1
 			 && _vm->_crimesDatabase->getCrime(clueId) == _crimeSelected
 			 && _clues->isAcquired(clueId)
diff --git a/engines/bladerunner/ui/kia_section_suspects.cpp b/engines/bladerunner/ui/kia_section_suspects.cpp
index ba1f6a5..c98c2c7 100644
--- a/engines/bladerunner/ui/kia_section_suspects.cpp
+++ b/engines/bladerunner/ui/kia_section_suspects.cpp
@@ -380,7 +380,7 @@ void KIASectionSuspects::onButtonPressed(int buttonId) {
 void KIASectionSuspects::populateAcquiredClues() {
 	_acquiredClueCount = 0;
 	for (int i = 0; i < kClueCount; ++i) {
-		int clueId = _clues->getClueIdByIndex(i);
+		int clueId = i;
 		if (_clues->isAcquired(clueId)) {
 			_acquiredClues[_acquiredClueCount].clueId = clueId;
 			_acquiredClues[_acquiredClueCount].actorId = _clues->getFromActorId(clueId);





More information about the Scummvm-git-logs mailing list