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

whiterandrek whiterandrek at gmail.com
Fri Jun 29 13:44:15 CEST 2018


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

Summary:
1b8928d43c PINK: remove unused code
34319e3ac6 PINK: changed unused return type of functions to void
0c1ef839b6 PINK: added more constants
36a534ec90 PINK: removed unused constants
c8990f800c PINK: removed unused LeadActor state
ab2085f0e8 PINK: fixed sending leftClickMessage under some circumstances


Commit: 1b8928d43ce2912de473f43241bd40d3ab580079
    https://github.com/scummvm/scummvm/commit/1b8928d43ce2912de473f43241bd40d3ab580079
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: remove unused code

Changed paths:
    engines/pink/objects/actors/lead_actor.cpp


diff --git a/engines/pink/objects/actors/lead_actor.cpp b/engines/pink/objects/actors/lead_actor.cpp
index d4f3f20..22396cf 100644
--- a/engines/pink/objects/actors/lead_actor.cpp
+++ b/engines/pink/objects/actors/lead_actor.cpp
@@ -478,28 +478,7 @@ void PubPink::updateCursor(const Common::Point point) {
 }
 
 bool PubPink::sendUseClickMessage(Actor *actor) {
-	if (!LeadActor::sendUseClickMessage(actor) && playingMiniGame()) {
-		_nextState = _state;
-		_state = kPlayingSequence;
-
-		const char *roundName;
-		switch (_round++ % 3) {
-		case 0:
-			roundName = kFirstRound;
-			break;
-		case 1:
-			roundName = kSecondRound;
-			break;
-		case 2:
-			roundName = kThirdRound;
-			break;
-		default:
-			roundName = nullptr;
-			assert(0);
-		}
-		_sequencer->authorSequence(_sequencer->findSequence(roundName), 0);
-	}
-
+	LeadActor::sendUseClickMessage(actor);
 	if (playingMiniGame())
 		_isHaveItem = true;
 


Commit: 34319e3ac62d7c2dab592c9b85212eb992b1233b
    https://github.com/scummvm/scummvm/commit/34319e3ac62d7c2dab592c9b85212eb992b1233b
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: changed unused return type of functions to void

Changed paths:
    engines/pink/objects/actors/actor.h
    engines/pink/objects/actors/audio_info_pda_button.cpp
    engines/pink/objects/actors/audio_info_pda_button.h
    engines/pink/objects/actors/lead_actor.cpp
    engines/pink/objects/actors/lead_actor.h
    engines/pink/objects/actors/supporting_actor.cpp
    engines/pink/objects/actors/supporting_actor.h
    engines/pink/objects/handlers/handler_mgr.cpp
    engines/pink/objects/handlers/handler_mgr.h


diff --git a/engines/pink/objects/actors/actor.h b/engines/pink/objects/actors/actor.h
index 87d12cf..af11490 100644
--- a/engines/pink/objects/actors/actor.h
+++ b/engines/pink/objects/actors/actor.h
@@ -68,8 +68,8 @@ public:
 	virtual void onClick() {}
 
 	virtual void onTimerMessage() {}
-	virtual bool onLeftClickMessage() { return false; }
-	virtual bool onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) { return false; }
+	virtual void onLeftClickMessage() {}
+	virtual void onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) {}
 
 	Action *findAction(const Common::String &name);
 
diff --git a/engines/pink/objects/actors/audio_info_pda_button.cpp b/engines/pink/objects/actors/audio_info_pda_button.cpp
index 7849b6d..af03d5a 100644
--- a/engines/pink/objects/actors/audio_info_pda_button.cpp
+++ b/engines/pink/objects/actors/audio_info_pda_button.cpp
@@ -41,10 +41,9 @@ void AudioInfoPDAButton::onMouseOverWithItem(const Common::Point point, const Co
 	onMouseOver(point, cursorMgr);
 }
 
-bool AudioInfoPDAButton::onLeftClickMessage() {
+void AudioInfoPDAButton::onLeftClickMessage() {
 	AudioInfoMgr *audioInfoMgr = _page->getLeadActor()->getAudioInfoMgr();
 	audioInfoMgr->onLeftClick();
-	return true;
 }
 
 } // End of namespace Pink
diff --git a/engines/pink/objects/actors/audio_info_pda_button.h b/engines/pink/objects/actors/audio_info_pda_button.h
index 6eee840..c2949e2 100644
--- a/engines/pink/objects/actors/audio_info_pda_button.h
+++ b/engines/pink/objects/actors/audio_info_pda_button.h
@@ -39,7 +39,7 @@ public:
 	void onMouseOver(const Common::Point point, CursorMgr *mgr);
 	void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
 
-	bool onLeftClickMessage() override;
+	void onLeftClickMessage() override;
 };
 
 } // End of namespace Pink
diff --git a/engines/pink/objects/actors/lead_actor.cpp b/engines/pink/objects/actors/lead_actor.cpp
index 22396cf..e30fcb9 100644
--- a/engines/pink/objects/actors/lead_actor.cpp
+++ b/engines/pink/objects/actors/lead_actor.cpp
@@ -366,7 +366,7 @@ void LeadActor::updateCursor(const Common::Point point) {
 	}
 }
 
-bool LeadActor::sendUseClickMessage(Actor *actor) {
+void LeadActor::sendUseClickMessage(Actor *actor) {
 	InventoryMgr *mgr = getInventoryMgr();
 	assert(_state != kPlayingExitSequence);
 	_nextState = kReady;
@@ -376,16 +376,14 @@ bool LeadActor::sendUseClickMessage(Actor *actor) {
 	if (item->getCurrentOwner() != this->_name)
 		_isHaveItem = false;
 	forceUpdateCursor();
-	return true;
 }
 
-bool LeadActor::sendLeftClickMessage(Actor *actor) {
+void LeadActor::sendLeftClickMessage(Actor *actor) {
 	assert(_state != kPlayingExitSequence);
 	_nextState = kReady;
 	_state = kPlayingSequence;
 	actor->onLeftClickMessage();
 	forceUpdateCursor();
-	return true;
 }
 
 WalkLocation *LeadActor::getWalkDestination() {
@@ -477,12 +475,10 @@ void PubPink::updateCursor(const Common::Point point) {
 	}
 }
 
-bool PubPink::sendUseClickMessage(Actor *actor) {
+void PubPink::sendUseClickMessage(Actor *actor) {
 	LeadActor::sendUseClickMessage(actor);
 	if (playingMiniGame())
 		_isHaveItem = true;
-
-	return true;
 }
 
 WalkLocation *PubPink::getWalkDestination() {
diff --git a/engines/pink/objects/actors/lead_actor.h b/engines/pink/objects/actors/lead_actor.h
index 4275578..bab8cc4 100644
--- a/engines/pink/objects/actors/lead_actor.h
+++ b/engines/pink/objects/actors/lead_actor.h
@@ -101,8 +101,8 @@ protected:
 
 	virtual void updateCursor(const Common::Point point);
 
-	virtual bool sendUseClickMessage(Actor *actor);
-	bool sendLeftClickMessage(Actor *actor);
+	virtual void sendUseClickMessage(Actor *actor);
+	void sendLeftClickMessage(Actor *actor);
 
 	virtual WalkLocation *getWalkDestination();
 
@@ -148,7 +148,7 @@ public:
 protected:
 	void updateCursor(const Common::Point point) override;
 
-	bool sendUseClickMessage(Actor *actor) override;
+	void sendUseClickMessage(Actor *actor) override;
 
 	WalkLocation *getWalkDestination() override;
 
diff --git a/engines/pink/objects/actors/supporting_actor.cpp b/engines/pink/objects/actors/supporting_actor.cpp
index 744fe60..b158650 100644
--- a/engines/pink/objects/actors/supporting_actor.cpp
+++ b/engines/pink/objects/actors/supporting_actor.cpp
@@ -75,12 +75,12 @@ void SupportingActor::onTimerMessage() {
 	_handlerMgr.onTimerMessage(this);
 }
 
-bool SupportingActor::onLeftClickMessage() {
-	return _handlerMgr.onLeftClickMessage(this);
+void SupportingActor::onLeftClickMessage() {
+	_handlerMgr.onLeftClickMessage(this);
 }
 
-bool SupportingActor::onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) {
-	return _handlerMgr.onUseClickMessage(this, item, mgr);
+void SupportingActor::onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) {
+	_handlerMgr.onUseClickMessage(this, item, mgr);
 }
 
 const Common::String &SupportingActor::getLocation() const {
diff --git a/engines/pink/objects/actors/supporting_actor.h b/engines/pink/objects/actors/supporting_actor.h
index 88c3996..69ccd03 100644
--- a/engines/pink/objects/actors/supporting_actor.h
+++ b/engines/pink/objects/actors/supporting_actor.h
@@ -44,8 +44,8 @@ public:
 	void onMouseOverWithItem(const Common::Point point, const Common::String &itemName, CursorMgr *cursorMgr) override;
 
 	void onTimerMessage() override;
-	bool onLeftClickMessage() override;
-	bool onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) override;
+	void onLeftClickMessage() override;
+	void onUseClickMessage(InventoryItem *item, InventoryMgr *mgr) override;
 
 	const Common::String &getPDALink() const override;
 	const Common::String &getLocation() const override;
diff --git a/engines/pink/objects/handlers/handler_mgr.cpp b/engines/pink/objects/handlers/handler_mgr.cpp
index e68b63e..de6809d 100644
--- a/engines/pink/objects/handlers/handler_mgr.cpp
+++ b/engines/pink/objects/handlers/handler_mgr.cpp
@@ -72,24 +72,18 @@ void HandlerMgr::onTimerMessage(Actor *actor) {
 		handler->handle(actor);
 }
 
-bool HandlerMgr::onLeftClickMessage(Actor *actor) {
+void HandlerMgr::onLeftClickMessage(Actor *actor) {
 	Handler *handler = findSuitableHandlerLeftClick(actor);
-	if (handler) {
-		handler->handle(actor);
-		return true;
-	}
-	return false;
+	assert(handler);
+	handler->handle(actor);
 }
 
-bool HandlerMgr::onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr) {
+void HandlerMgr::onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr) {
 	HandlerUseClick *handler = findSuitableHandlerUseClick(actor, item);
-	if (handler) {
-		if (!handler->getRecepient().empty())
-			mgr->setItemOwner(handler->getRecepient(), item);
-		handler->handle(actor);
-		return true;
-	}
-	return false;
+	assert(handler);
+	if (!handler->getRecepient().empty())
+		mgr->setItemOwner(handler->getRecepient(), item);
+	handler->handle(actor);
 }
 
 Handler *HandlerMgr::findSuitableHandlerTimer(Actor *actor) {
diff --git a/engines/pink/objects/handlers/handler_mgr.h b/engines/pink/objects/handlers/handler_mgr.h
index 75ba40c..e85fc09 100644
--- a/engines/pink/objects/handlers/handler_mgr.h
+++ b/engines/pink/objects/handlers/handler_mgr.h
@@ -48,8 +48,8 @@ public:
 	bool isUseClickHandler(Actor *actor, const Common::String &itemName);
 
 	void onTimerMessage(Actor *actor);
-	bool onLeftClickMessage(Actor *actor);
-	bool onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr);
+	void onLeftClickMessage(Actor *actor);
+	void onUseClickMessage(Actor *actor, InventoryItem *item, InventoryMgr *mgr);
 
 private:
 	Handler *findSuitableHandlerTimer(Actor *actor);


Commit: 0c1ef839b6505faac77cf8ebc5540cf4fccf9a87
    https://github.com/scummvm/scummvm/commit/0c1ef839b6505faac77cf8ebc5540cf4fccf9a87
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: added more constants

Changed paths:
    engines/pink/audio_info_mgr.cpp
    engines/pink/constants.h
    engines/pink/cursor_mgr.cpp
    engines/pink/objects/actors/lead_actor.cpp
    engines/pink/objects/module.cpp
    engines/pink/objects/pages/game_page.cpp
    engines/pink/pink.cpp
    engines/pink/sound.h


diff --git a/engines/pink/audio_info_mgr.cpp b/engines/pink/audio_info_mgr.cpp
index 6f559fe..06d78e5 100644
--- a/engines/pink/audio_info_mgr.cpp
+++ b/engines/pink/audio_info_mgr.cpp
@@ -22,6 +22,7 @@
 
 #include "pink/audio_info_mgr.h"
 #include "pink/archive.h"
+#include "pink/constants.h"
 #include "pink/objects/actors/lead_actor.h"
 
 namespace Pink {
@@ -62,27 +63,27 @@ void AudioInfoMgr::onLeftClick() {
 }
 
 void AudioInfoMgr::playAudio() {
-	Actor *audioInfo = _lead->findActor("AudioInfo");
+	Actor *audioInfo = _lead->findActor(kAudioInfoActor);
 	assert(audioInfo);
 	audioInfo->setAction(_aboutWhom);
 }
 
 void AudioInfoMgr::stopAudio() {
-	Actor *audioInfo = _lead->findActor("AudioInfo");
+	Actor *audioInfo = _lead->findActor(kAudioInfoActor);
 	assert(audioInfo);
-	audioInfo->setAction("Idle");
+	audioInfo->setAction(kIdleAction);
 }
 
 void AudioInfoMgr::showPDAButton() {
-	Actor *pdaButton = _lead->findActor("PDAButton");
+	Actor *pdaButton = _lead->findActor(kPdaButtonActor);
 	assert(pdaButton);
-	pdaButton->setAction("Show");
+	pdaButton->setAction(kShowAction);
 }
 
 void AudioInfoMgr::hidePDAButton() {
-	Actor *pdaButton = _lead->findActor("PDAButton");
+	Actor *pdaButton = _lead->findActor(kPdaButtonActor);
 	assert(pdaButton);
-	pdaButton->setAction("Hide");
+	pdaButton->setAction(kHideAction);
 }
 
 } // End of namespace Pink
diff --git a/engines/pink/constants.h b/engines/pink/constants.h
index a2e5bf4..d7b913a 100644
--- a/engines/pink/constants.h
+++ b/engines/pink/constants.h
@@ -170,6 +170,10 @@ static const char * const kInventoryItemActor = "InventoryItem";
 static const char * const kInventoryRightArrowActor = "InventoryRightArrow";
 static const char * const kInventoryLeftArrowActor = "InventoryLeftArrow";
 
+static const char * const kAudioInfoActor = "AudioInfo";
+static const char * const kPdaButtonActor = "PDAButton";
+
+static const char * const kCursorNameExit = "Exit";
 static const char * const kCursorNameExitUp = "ExitUp";
 static const char * const kCursorNameExitLeft = "ExitLeft";
 static const char * const kCursorNameExitRight = "ExitRight";
@@ -193,6 +197,9 @@ static const char * const kBoy = "Boy";
 static const char * const kSirBaldley = "SirBaldley";
 static const char * const kBoyBlocked = "BoyBlocked";
 
+static const char * const kUndefinedValue = "UNDEFINED";
+static const char * const kTrueValue = "TRUE";
+
 } // End of namespace Pink
 
 #endif
diff --git a/engines/pink/cursor_mgr.cpp b/engines/pink/cursor_mgr.cpp
index feb997b..d11d3ce 100644
--- a/engines/pink/cursor_mgr.cpp
+++ b/engines/pink/cursor_mgr.cpp
@@ -69,7 +69,7 @@ void CursorMgr::setCursor(const Common::String &cursorName, const Common::Point
 		index = kExitLeftCursor;
 	else if (cursorName == kCursorNameExitRight)
 		index = kExitRightCursor;
-	else if (cursorName == kCursorNameExitForward || cursorName == kCursorNameExitUp || cursorName == "Exit")
+	else if (cursorName == kCursorNameExitForward || cursorName == kCursorNameExitUp || cursorName == kCursorNameExit)
 		index = kExitForwardCursor;
 	else if (cursorName == kCursorNameExitBackWards)
 		index = kExitDownCursor;
diff --git a/engines/pink/objects/actors/lead_actor.cpp b/engines/pink/objects/actors/lead_actor.cpp
index e30fcb9..be0e91a 100644
--- a/engines/pink/objects/actors/lead_actor.cpp
+++ b/engines/pink/objects/actors/lead_actor.cpp
@@ -436,7 +436,7 @@ void ParlSqPink::toConsole() {
 }
 
 WalkLocation *ParlSqPink::getWalkDestination() {
-	if (_recipient->getName() == kBoy && _page->checkValueOfVariable(kBoyBlocked, "UNDEFINED"))
+	if (_recipient->getName() == kBoy && _page->checkValueOfVariable(kBoyBlocked, kUndefinedValue))
 		return _walkMgr->findLocation(kSirBaldley);
 
 	return LeadActor::getWalkDestination();
@@ -492,8 +492,8 @@ WalkLocation *PubPink::getWalkDestination() {
 }
 
 bool PubPink::playingMiniGame() {
-	return !(_page->checkValueOfVariable(kFoodPuzzle, "TRUE") ||
-			_page->checkValueOfVariable(kFoodPuzzle, "UNDEFINED"));
+	return !(_page->checkValueOfVariable(kFoodPuzzle, kTrueValue) ||
+			_page->checkValueOfVariable(kFoodPuzzle, kUndefinedValue));
 }
 
 } // End of namespace Pink
diff --git a/engines/pink/objects/module.cpp b/engines/pink/objects/module.cpp
index b1f1087..50a256d 100644
--- a/engines/pink/objects/module.cpp
+++ b/engines/pink/objects/module.cpp
@@ -79,7 +79,7 @@ GamePage *Module::findPage(const Common::String &pageName) const {
 
 bool Module::checkValueOfVariable(Common::String &variable, Common::String &value) {
 	if (!_variables.contains(variable))
-		return value == "UNDEFINED";
+		return value == kUndefinedValue;
 	return _variables[variable] == value;
 }
 
diff --git a/engines/pink/objects/pages/game_page.cpp b/engines/pink/objects/pages/game_page.cpp
index 5b69be1..1157d96 100644
--- a/engines/pink/objects/pages/game_page.cpp
+++ b/engines/pink/objects/pages/game_page.cpp
@@ -121,7 +121,7 @@ void GamePage::loadManagers() {
 
 bool GamePage::checkValueOfVariable(const Common::String &variable, const Common::String &value) {
 	if (!_variables.contains(variable))
-		return value == "UNDEFINED";
+		return value == kUndefinedValue;
 	return _variables[variable] == value;
 }
 
diff --git a/engines/pink/pink.cpp b/engines/pink/pink.cpp
index 6b10285..c023fe6 100644
--- a/engines/pink/pink.cpp
+++ b/engines/pink/pink.cpp
@@ -205,7 +205,7 @@ void PinkEngine::setVariable(Common::String &variable, Common::String &value) {
 
 bool PinkEngine::checkValueOfVariable(Common::String &variable, Common::String &value) {
 	if (!_variables.contains(variable))
-		return value == "UNDEFINED";
+		return value == kUndefinedValue;
 	return _variables[variable] == value;
 }
 
@@ -281,7 +281,7 @@ void PinkEngine::pauseEngineIntern(bool pause) {
 }
 
 bool PinkEngine::isPeril() {
-	return !strcmp(_desc.gameId, "peril");
+	return !strcmp(_desc.gameId, kPeril);
 }
 
 }
diff --git a/engines/pink/sound.h b/engines/pink/sound.h
index 74fa1b8..fc3deba 100644
--- a/engines/pink/sound.h
+++ b/engines/pink/sound.h
@@ -28,6 +28,8 @@
 
 #include "common/system.h"
 
+#include "pink/constants.h"
+
 namespace Common {
 	class SafeSeekableSubReadStream;
 }
@@ -46,7 +48,7 @@ public:
 
 	void pause(bool paused) { g_system->getMixer()->pauseHandle(_handle, paused); }
 
-	uint64 getCurrentSample() { return (uint64)g_system->getMixer()->getElapsedTime(_handle).msecs() * 22050 / 1000; }
+	uint64 getCurrentSample() { return (uint64)g_system->getMixer()->getElapsedTime(_handle).msecs() * kSampleRate / 1000; }
 
 private:
 	Audio::SoundHandle _handle;


Commit: 36a534ec904b3e21555bf5d2944cb7bdb41e9dd1
    https://github.com/scummvm/scummvm/commit/36a534ec904b3e21555bf5d2944cb7bdb41e9dd1
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: removed unused constants

Changed paths:
    engines/pink/constants.h


diff --git a/engines/pink/constants.h b/engines/pink/constants.h
index d7b913a..1855174 100644
--- a/engines/pink/constants.h
+++ b/engines/pink/constants.h
@@ -155,13 +155,11 @@ enum {
 
 static const char * const kPinkGame = "PinkGame";
 
-static const char * const kPokus = "pokus";
 static const char * const kPeril = "peril";
 
 static const char * const kCloseAction = "Close";
 static const char * const kIdleAction = "Idle";
 static const char * const kOpenAction = "Open";
-static const char * const kPlayAction = "Play";
 static const char * const kShowAction = "Show";
 static const char * const kHideAction = "Hide";
 
@@ -189,10 +187,6 @@ static const char * const kBolted = "Bolted";
 static const char * const kDrunkLocation = "DrunkLocation";
 static const char * const kDrunk = "Drunk";
 
-static const char * const kFirstRound = "15.1";
-static const char * const kSecondRound = "15.2";
-static const char * const kThirdRound = "15.3";
-
 static const char * const kBoy = "Boy";
 static const char * const kSirBaldley = "SirBaldley";
 static const char * const kBoyBlocked = "BoyBlocked";


Commit: c8990f800caddc77278c6421fd275ed941a7a309
    https://github.com/scummvm/scummvm/commit/c8990f800caddc77278c6421fd275ed941a7a309
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: removed unused LeadActor state

Changed paths:
    engines/pink/objects/actors/lead_actor.h


diff --git a/engines/pink/objects/actors/lead_actor.h b/engines/pink/objects/actors/lead_actor.h
index bab8cc4..2bcd8a1 100644
--- a/engines/pink/objects/actors/lead_actor.h
+++ b/engines/pink/objects/actors/lead_actor.h
@@ -49,7 +49,6 @@ public:
 		kPlayingSequence = 2,
 		kInventory = 3,
 		kPDA = 4,
-		kUnknown = 5, // never used
 		kPlayingExitSequence = 6,
 		kUndefined = 7
 	};


Commit: ab2085f0e8ffd090bc2a6a028e1b4897edf0265d
    https://github.com/scummvm/scummvm/commit/ab2085f0e8ffd090bc2a6a028e1b4897edf0265d
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2018-06-29T14:43:57+03:00

Commit Message:
PINK: fixed sending leftClickMessage under some circumstances

Changed paths:
    engines/pink/objects/actors/actor.h
    engines/pink/objects/actors/lead_actor.cpp
    engines/pink/objects/actors/supporting_actor.h


diff --git a/engines/pink/objects/actors/actor.h b/engines/pink/objects/actors/actor.h
index af11490..ab84c6d 100644
--- a/engines/pink/objects/actors/actor.h
+++ b/engines/pink/objects/actors/actor.h
@@ -57,6 +57,7 @@ public:
 
 	void endAction() { _isActionEnded = true; }
 
+	virtual bool isSupporting() { return false; }
 	virtual bool isCursor() { return false; }
 
 	virtual bool isLeftClickHandlers() { return false; }
diff --git a/engines/pink/objects/actors/lead_actor.cpp b/engines/pink/objects/actors/lead_actor.cpp
index be0e91a..b7b4222 100644
--- a/engines/pink/objects/actors/lead_actor.cpp
+++ b/engines/pink/objects/actors/lead_actor.cpp
@@ -215,14 +215,16 @@ void LeadActor::onLeftButtonClick(const Common::Point point) {
 		if (this == clickedActor) {
 			_audioInfoMgr.stop();
 			onClick();
-		} else if (isInteractingWith(clickedActor)) {
-			_recipient = clickedActor;
-			if (!startWalk()) {
-				_audioInfoMgr.stop();
-				if (_isHaveItem)
-					sendUseClickMessage(clickedActor);
-				else
-					sendLeftClickMessage(clickedActor);
+		} else if (clickedActor->isSupporting()) {
+			if (isInteractingWith(clickedActor)) {
+				_recipient = clickedActor;
+				if (!startWalk()) {
+					_audioInfoMgr.stop();
+					if (_isHaveItem)
+						sendUseClickMessage(clickedActor);
+					else
+						sendLeftClickMessage(clickedActor);
+				}
 			}
 		} else
 			clickedActor->onLeftClickMessage();
diff --git a/engines/pink/objects/actors/supporting_actor.h b/engines/pink/objects/actors/supporting_actor.h
index 69ccd03..a037787 100644
--- a/engines/pink/objects/actors/supporting_actor.h
+++ b/engines/pink/objects/actors/supporting_actor.h
@@ -37,6 +37,8 @@ public:
 
 	virtual void toConsole() override;
 
+	bool isSupporting() override { return true; }
+
 	bool isLeftClickHandlers() override;
 	bool isUseClickHandlers(InventoryItem *item) override;
 





More information about the Scummvm-git-logs mailing list