aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2003-08-19 04:15:14 +0000
committerTravis Howell2003-08-19 04:15:14 +0000
commitd6105a306495eee414de5ebf70115d9e01da432e (patch)
treee33493a2ee4159569bb90368be30e3e94eee225e /scumm
parent161ef54777385134455aa8a85ca4cc386f0a1bb6 (diff)
downloadscummvm-rg350-d6105a306495eee414de5ebf70115d9e01da432e.tar.gz
scummvm-rg350-d6105a306495eee414de5ebf70115d9e01da432e.tar.bz2
scummvm-rg350-d6105a306495eee414de5ebf70115d9e01da432e.zip
Cleanup v1/v2 color settings for sentance/inventory/verb area.
Add highlight color for v1 maniac svn-id: r9774
Diffstat (limited to 'scumm')
-rw-r--r--scumm/gfx.cpp2
-rw-r--r--scumm/script_v2.cpp20
-rw-r--r--scumm/scumm.h1
-rw-r--r--scumm/scummvm.cpp5
-rw-r--r--scumm/verbs.cpp86
5 files changed, 38 insertions, 76 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index 7f2f1fc3a1..cae41f997d 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -2581,7 +2581,7 @@ void Scumm::setupV1ManiacPalette() {
setPalColor(12, 168, 168, 168);
setPalColor(13, 84, 252, 84);
setPalColor(14, 84, 84, 252);
- setPalColor(15, 84, 84, 84);
+ setPalColor(15, 252, 84, 252);
}
void Scumm::setupV1ZakPalette() {
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 917753cca5..fd2128b3b8 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -840,10 +840,11 @@ void Scumm_v2::o2_verbOps() {
vs = &_verbs[slot];
vs->verbid = verb;
if (_version == 1) {
- if (_demo_mode)
- vs->color = 4;
- else
- vs->color = 5;
+ if (_gameId == GID_MANIAC && _demo_mode)
+ vs->color = 15;
+ else
+ vs->color = 5;
+
vs->hicolor = 7;
vs->dimcolor = 11;
} else {
@@ -1004,10 +1005,14 @@ void Scumm_v2::o2_drawSentence() {
_string[2].charset = 1;
_string[2].ypos = virtscr[2].topline;
_string[2].xpos = 0;
- if(_version == 1)
- _string[2].color = 4;
- else
+ if(_version == 1) {
+ if (_gameId == GID_MANIAC)
+ _string[2].color = 15;
+ else
+ _string[2].color = 4;
+ } else {
_string[2].color = 13;
+ }
char *ptr = sentence;
int n = 0;
@@ -1327,6 +1332,7 @@ void Scumm_v2::o2_roomOps() {
VAR(VAR_CAMERA_MAX_X) = b;
break;
case 2: /* room color */
+ warning("Remapping color %d to color %d", b, a);
_shadowPalette[b] = a;
_fullRedraw = true;
break;
diff --git a/scumm/scumm.h b/scumm/scumm.h
index 5787cc450a..4f81d779f0 100644
--- a/scumm/scumm.h
+++ b/scumm/scumm.h
@@ -764,7 +764,6 @@ protected:
V2MouseoverBox v2_mouseover_boxes[7];
int8 v2_mouseover_box;
- void initV1MouseOver();
void initV2MouseOver();
void checkV2MouseOver(ScummVM::Point pos);
void checkV2Inventory(int x, int y);
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp
index 7e432b3c97..2b43cf0ed0 100644
--- a/scumm/scummvm.cpp
+++ b/scumm/scummvm.cpp
@@ -895,10 +895,7 @@ void Scumm::scummInit() {
}
if (_version <= 2) {
- if (_version == 1)
- initV1MouseOver();
- else
- initV2MouseOver();
+ initV2MouseOver();
// Seems in V2 there was only a single room effect (iris),
// so we set that here.
diff --git a/scumm/verbs.cpp b/scumm/verbs.cpp
index 7331358b0c..92d00bf4cc 100644
--- a/scumm/verbs.cpp
+++ b/scumm/verbs.cpp
@@ -33,64 +33,24 @@ enum {
kSentenceLine = 6
};
-void Scumm::initV1MouseOver() {
+void Scumm::initV2MouseOver() {
int i;
+ int arrow_color, color, hi_color;
- v2_mouseover_box = -1;
-
- // Inventory items
-
- for (i = 0; i < 2; i++) {
- v2_mouseover_boxes[2 * i].rect.left = 0;
- v2_mouseover_boxes[2 * i].rect.right = 144;
- v2_mouseover_boxes[2 * i].rect.top = 32 + 8 * i;
- v2_mouseover_boxes[2 * i].rect.bottom = v2_mouseover_boxes[2 * i].rect.top + 8;
-
- v2_mouseover_boxes[2 * i].color = 4;
- v2_mouseover_boxes[2 * i].hicolor = 7;
-
-
- v2_mouseover_boxes[2 * i + 1].rect.left = 176;
- v2_mouseover_boxes[2 * i + 1].rect.right = 320;
- v2_mouseover_boxes[2 * i + 1].rect.top = v2_mouseover_boxes[2 * i].rect.top;
- v2_mouseover_boxes[2 * i + 1].rect.bottom = v2_mouseover_boxes[2 * i].rect.bottom;
+ if (_version == 1) {
+ if (_gameId == GID_MANIAC)
+ color = 15;
+ else
+ color = 4;
- v2_mouseover_boxes[2 * i + 1].color = 4;
- v2_mouseover_boxes[2 * i + 1].hicolor = 7;
+ hi_color = 7;
+ arrow_color = 6;
+ } else {
+ color = 13;
+ hi_color = 14;
+ arrow_color = 1;
}
- // Inventory arrows
-
- v2_mouseover_boxes[kInventoryUpArrow].rect.left = 144;
- v2_mouseover_boxes[kInventoryUpArrow].rect.right = 176;
- v2_mouseover_boxes[kInventoryUpArrow].rect.top = 32;
- v2_mouseover_boxes[kInventoryUpArrow].rect.bottom = 40;
-
- v2_mouseover_boxes[kInventoryUpArrow].color = 6;
- v2_mouseover_boxes[kInventoryUpArrow].hicolor = 7;
-
- v2_mouseover_boxes[kInventoryDownArrow].rect.left = 144;
- v2_mouseover_boxes[kInventoryDownArrow].rect.right = 176;
- v2_mouseover_boxes[kInventoryDownArrow].rect.top = 40;
- v2_mouseover_boxes[kInventoryDownArrow].rect.bottom = 48;
-
- v2_mouseover_boxes[kInventoryDownArrow].color = 6;
- v2_mouseover_boxes[kInventoryDownArrow].hicolor = 7;
-
- // Sentence line
-
- v2_mouseover_boxes[kSentenceLine].rect.left = 0;
- v2_mouseover_boxes[kSentenceLine].rect.right = 320;
- v2_mouseover_boxes[kSentenceLine].rect.top = 0;
- v2_mouseover_boxes[kSentenceLine].rect.bottom = 8;
-
- v2_mouseover_boxes[kSentenceLine].color = 4;
- v2_mouseover_boxes[kSentenceLine].hicolor = 7;
-}
-
-void Scumm::initV2MouseOver() {
- int i;
-
v2_mouseover_box = -1;
// Inventory items
@@ -101,8 +61,8 @@ void Scumm::initV2MouseOver() {
v2_mouseover_boxes[2 * i].rect.top = 32 + 8 * i;
v2_mouseover_boxes[2 * i].rect.bottom = v2_mouseover_boxes[2 * i].rect.top + 8;
- v2_mouseover_boxes[2 * i].color = 13;
- v2_mouseover_boxes[2 * i].hicolor = 14;
+ v2_mouseover_boxes[2 * i].color = color;
+ v2_mouseover_boxes[2 * i].hicolor = hi_color;
v2_mouseover_boxes[2 * i + 1].rect.left = 176;
@@ -110,8 +70,8 @@ void Scumm::initV2MouseOver() {
v2_mouseover_boxes[2 * i + 1].rect.top = v2_mouseover_boxes[2 * i].rect.top;
v2_mouseover_boxes[2 * i + 1].rect.bottom = v2_mouseover_boxes[2 * i].rect.bottom;
- v2_mouseover_boxes[2 * i + 1].color = 13;
- v2_mouseover_boxes[2 * i + 1].hicolor = 14;
+ v2_mouseover_boxes[2 * i + 1].color = color;
+ v2_mouseover_boxes[2 * i + 1].hicolor = hi_color;
}
// Inventory arrows
@@ -121,16 +81,16 @@ void Scumm::initV2MouseOver() {
v2_mouseover_boxes[kInventoryUpArrow].rect.top = 32;
v2_mouseover_boxes[kInventoryUpArrow].rect.bottom = 40;
- v2_mouseover_boxes[kInventoryUpArrow].color = 1;
- v2_mouseover_boxes[kInventoryUpArrow].hicolor = 14;
+ v2_mouseover_boxes[kInventoryUpArrow].color = arrow_color;
+ v2_mouseover_boxes[kInventoryUpArrow].hicolor = hi_color;
v2_mouseover_boxes[kInventoryDownArrow].rect.left = 144;
v2_mouseover_boxes[kInventoryDownArrow].rect.right = 176;
v2_mouseover_boxes[kInventoryDownArrow].rect.top = 40;
v2_mouseover_boxes[kInventoryDownArrow].rect.bottom = 48;
- v2_mouseover_boxes[kInventoryDownArrow].color = 1;
- v2_mouseover_boxes[kInventoryDownArrow].hicolor = 14;
+ v2_mouseover_boxes[kInventoryDownArrow].color = arrow_color;
+ v2_mouseover_boxes[kInventoryDownArrow].hicolor = hi_color;
// Sentence line
@@ -139,8 +99,8 @@ void Scumm::initV2MouseOver() {
v2_mouseover_boxes[kSentenceLine].rect.top = 0;
v2_mouseover_boxes[kSentenceLine].rect.bottom = 8;
- v2_mouseover_boxes[kSentenceLine].color = 13;
- v2_mouseover_boxes[kSentenceLine].hicolor = 14;
+ v2_mouseover_boxes[kSentenceLine].color = color;
+ v2_mouseover_boxes[kSentenceLine].hicolor = hi_color;
}
void Scumm::checkV2MouseOver(ScummVM::Point pos) {