aboutsummaryrefslogtreecommitdiff
path: root/engines/pink
diff options
context:
space:
mode:
Diffstat (limited to 'engines/pink')
-rw-r--r--engines/pink/constants.h27
-rw-r--r--engines/pink/cursor_mgr.cpp8
-rw-r--r--engines/pink/pink.cpp11
3 files changed, 28 insertions, 18 deletions
diff --git a/engines/pink/constants.h b/engines/pink/constants.h
index 57336b0869..7afb166839 100644
--- a/engines/pink/constants.h
+++ b/engines/pink/constants.h
@@ -85,22 +85,23 @@ enum {
};
enum {
- kCursorsCount = 12
+ kCursorsCount = 13
};
enum {
kLoadingCursor = 0,
- kExitForwardCursor = 1,
- kExitLeftCursor = 2,
- kExitRightCursor = 3,
- kDefaultCursor = 4,
- kClickableFirstFrameCursor = 5,
- kClickableSecondFrameCursor = 6,
- kNotClickableCursor = 7,
- kHoldingItemCursor = 8,
- kPDADefaultCursor = 9,
- kPDAClickableFirstFrameCursor = 10,
- kPDAClickableSecondFrameCursor = 11
+ kDefaultCursor = 1,
+ kClickableFirstFrameCursor = 2,
+ kClickableSecondFrameCursor = 3,
+ kNotClickableCursor = 4,
+ kHoldingItemCursor = 5,
+ kPDADefaultCursor = 6,
+ kPDAClickableFirstFrameCursor = 7,
+ kPDAClickableSecondFrameCursor = 8,
+ kExitLeftCursor = 9,
+ kExitRightCursor = 10,
+ kExitForwardCursor = 11,
+ kExitDownCursor = 12 // only in Hokus Pokus
};
@@ -108,6 +109,7 @@ enum {
enum {
kPokusLoadingCursorID = 135,
kPokusExitForwardCursorID = 138,
+ kPokusExitDownCursorID = 139,
kPokusExitLeftCursorID = 133,
kPokusExitRightCursorID = 134,
kPokusClickableFirstCursorID = 137,
@@ -172,6 +174,7 @@ static const char *kCursorNameExitUp = "ExitUp";
static const char *kCursorNameExitLeft = "ExitLeft";
static const char *kCursorNameExitRight = "ExitRight";
static const char *kCursorNameExitForward = "ExitForward";
+static const char *kCursorNameExitBackWards = "ExitBackwards";
static const char *kClickable = "Clickable";
static const char *kCursor = "Cursor";
diff --git a/engines/pink/cursor_mgr.cpp b/engines/pink/cursor_mgr.cpp
index 46861696dd..084578a9c3 100644
--- a/engines/pink/cursor_mgr.cpp
+++ b/engines/pink/cursor_mgr.cpp
@@ -69,10 +69,12 @@ void CursorMgr::setCursor(const Common::String &cursorName, const Common::Point
index = kExitLeftCursor;
else if (cursorName == kCursorNameExitRight)
index = kExitRightCursor;
- else //if (cursorName == kCursorNameExitForward || cursorName == kCursorNameExitUp)
+ else if (cursorName == kCursorNameExitForward || cursorName == kCursorNameExitUp)
index = kExitForwardCursor;
- //else
- //assert(0);
+ else if (cursorName == kCursorNameExitBackWards)
+ index = kExitDownCursor;
+ else
+ error("%s UNKNOWN CURSOR", cursorName.c_str());
setCursor(index, point, "");
}
diff --git a/engines/pink/pink.cpp b/engines/pink/pink.cpp
index 397d0b93e6..1337edc4da 100644
--- a/engines/pink/pink.cpp
+++ b/engines/pink/pink.cpp
@@ -212,9 +212,6 @@ bool PinkEngine::loadCursors() {
_cursors.reserve(kCursorsCount);
_cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusLoadingCursorID));
- _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitForwardCursorID));
- _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitLeftCursorID));
- _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitRightCursorID));
_cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusClickableFirstCursorID));
_cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusClickableSecondCursorID));
@@ -237,6 +234,14 @@ bool PinkEngine::loadCursors() {
_cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPerilPDAClickableFirstFrameCursorID));
_cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPerilPDAClickableSecondFrameCursorID));
}
+
+ _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitLeftCursorID));
+ _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitRightCursorID));
+ _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitForwardCursorID));
+
+ if (isPokus)
+ _cursors.push_back(Graphics::WinCursorGroup::createCursorGroup(exeResources, kPokusExitDownCursorID));
+
return true;
}