aboutsummaryrefslogtreecommitdiff
path: root/queen
diff options
context:
space:
mode:
authorGregory Montoir2003-10-12 17:38:01 +0000
committerGregory Montoir2003-10-12 17:38:01 +0000
commit620bf5e962a084fbedd70601352b3dc6b1c87e5e (patch)
tree77c47491e41918f58f29ff09ade0957865eea2d9 /queen
parentfafb90ddb5483a7e75fcf55ac591fe2e36ca1bb2 (diff)
downloadscummvm-rg350-620bf5e962a084fbedd70601352b3dc6b1c87e5e.tar.gz
scummvm-rg350-620bf5e962a084fbedd70601352b3dc6b1c87e5e.tar.bz2
scummvm-rg350-620bf5e962a084fbedd70601352b3dc6b1c87e5e.zip
minor initialise() tweaks, added panel zones
svn-id: r10763
Diffstat (limited to 'queen')
-rw-r--r--queen/defs.h18
-rw-r--r--queen/logic.cpp30
-rw-r--r--queen/logic.h1
3 files changed, 47 insertions, 2 deletions
diff --git a/queen/defs.h b/queen/defs.h
index e6cfb175ff..e939ae8b24 100644
--- a/queen/defs.h
+++ b/queen/defs.h
@@ -72,6 +72,24 @@ enum {
};
+enum {
+ PANEL_AREA_OPEN = 1,
+ PANEL_AREA_CLOSE = 2,
+ PANEL_AREA_MOVE = 3,
+ PANEL_AREA_GIVE = 4,
+ PANEL_AREA_LOOKAT = 5,
+ PANEL_AREA_PICKUP = 6,
+ PANEL_AREA_TALKTO = 7,
+ PANEL_AREA_USE = 8,
+ PANEL_AREA_INV_UP = 9,
+ PANEL_AREA_INV_DOWN = 10,
+ PANEL_AREA_INV_1 = 11,
+ PANEL_AREA_INV_2 = 12,
+ PANEL_AREA_INV_3 = 13,
+ PANEL_AREA_INV_4 = 14
+};
+
+
} // End of namespace Queen
#endif
diff --git a/queen/logic.cpp b/queen/logic.cpp
index 4dea6826dd..1cf71ee33a 100644
--- a/queen/logic.cpp
+++ b/queen/logic.cpp
@@ -218,6 +218,10 @@ void Logic::initialise() {
//Command List Data
+ _graphics->panelLoad();
+ _graphics->bobSetupControl();
+ _walk->joeSetup();
+
memset(_zones, 0, sizeof(_zones));
_oldRoom = 0;
_entryObj = 0;
@@ -602,6 +606,28 @@ void Logic::zoneSetup() {
}
+void Logic::zoneSetupPanel() {
+
+ int i;
+
+ // verbs
+ for (i = 0; i <= 7; ++i) {
+ int x = i * 20;
+ zoneSet(ZONE_PANEL, i + 1, x, 10, x + 19, 49);
+ }
+
+ // inventory scrolls
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_UP, 160, 10, 179, 29);
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_DOWN, 160, 30, 179, 49);
+
+ // inventory items
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_1, 180, 10, 213, 49);
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_2, 214, 10, 249, 49);
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_3, 250, 10, 284, 49);
+ zoneSet(ZONE_PANEL, PANEL_AREA_INV_4, 285, 10, 320, 49);
+}
+
+
void Logic::roomErase() {
_graphics->frameEraseAll(false);
@@ -770,7 +796,7 @@ void Logic::roomSetupObjects() {
}
else if(obj > 0 && obj < 5000) {
// FIXME: need GRAPHIC_ANIM stuff
- warning("Logic::roomSetupObjects() - Object number %d no handled", obj);
+ warning("Logic::roomSetupObjects() - Object number %d not handled", obj);
}
}
@@ -789,7 +815,7 @@ void Logic::roomSetupObjects() {
// else {
// curImage = personAllocate(noun, curImage);
// }
- warning("Logic::roomSetupObjects() - Person object number %d no handled", noun);
+ warning("Logic::roomSetupObjects() - Person object number %d not handled", noun);
}
}
diff --git a/queen/logic.h b/queen/logic.h
index b6658fa313..b9de3fedd8 100644
--- a/queen/logic.h
+++ b/queen/logic.h
@@ -103,6 +103,7 @@ public:
uint16 zoneInArea(uint16 screen, uint16 x, uint16 y);
void zoneClearAll(uint16 screen);
void zoneSetup();
+ void zoneSetupPanel();
void roomErase();
void roomSetupFurniture(); // SETUP_FURNITURE()