aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/preagi_winnie.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agi/preagi_winnie.h')
-rw-r--r--engines/agi/preagi_winnie.h332
1 files changed, 166 insertions, 166 deletions
diff --git a/engines/agi/preagi_winnie.h b/engines/agi/preagi_winnie.h
index f05cabaf2d..7175c282e8 100644
--- a/engines/agi/preagi_winnie.h
+++ b/engines/agi/preagi_winnie.h
@@ -25,123 +25,123 @@
namespace Agi {
-#define WTP_SAVEGAME_VERSION 1
-#define IDI_XOR_KEY 0x80
+#define WTP_SAVEGAME_VERSION 1
+#define IDI_XOR_KEY 0x80
// strings
-#define IDS_WTP_ROOM_DOS "rooms/rm.%02d"
-#define IDS_WTP_ROOM_AMIGA "room.%d"
-#define IDS_WTP_ROOM_C64 "room%02d"
-#define IDS_WTP_ROOM_APPLE "room%d.obj"
-#define IDS_WTP_OBJ_DOS "obj.%02d"
-#define IDS_WTP_OBJ_AMIGA "object.%d"
-#define IDS_WTP_OBJ_C64 "object%02d"
-#define IDS_WTP_OBJ_APPLE "object%d.obj"
-#define IDS_WTP_SND_DOS "snd.%02d"
-#define IDS_WTP_SND_AMIGA "Sounds"
-#define IDS_WTP_SND_C64 "sound.obj"
-#define IDS_WTP_SND_APPLE "sound.obj"
-
-#define IDS_WTP_FILE_LOGO "logo"
-#define IDS_WTP_FILE_TITLE "title"
-#define IDS_WTP_FILE_SAVEGAME "savegame"
-#define IDS_WTP_FILE_RND "rnd"
-
-#define IDS_WTP_DISK_ERROR "There is a problem with your disk drive.Please make sure your Winnie-the-Pooh disk is in the drive correctly."
-
-#define IDS_WTP_INTRO_0 " PRESENT"
-#define IDS_WTP_INTRO_1 " TM designates trademark of\n Sierra On-Line, Inc.\n (c) 1985 Walt Disney Productions"
-
-#define IDS_WTP_HELP_0 "The <SPACE BAR> moves the pointer. Press <RETURN> when it is by the choice you want. Press the <Backspace> key to see what you just finished reading."
-#define IDS_WTP_HELP_1 "Press <C> to see what you are carrying. <Ctrl-S> turns the sound off and on. <ESC> takes you to the playroom (in caseyou get lost or want to save the game)."
-
-#define IDS_WTP_GAME_OVER_0 "Congratulations!! You did it! You returned everything that was lost. Now,Christopher Robin invites you to a Hero party."
-#define IDS_WTP_GAME_OVER_1 "The good news is: YOU are the Hero!! The bad news is: you have to find the party by yourself. Good luck!"
-
-#define IDS_WTP_OWL_0 "\"For example, that object you are carrying now is interesting. I know I've seen it before. Hmmm. Let me think about this . . .\""
-#define IDS_WTP_OWL_1 "\"You know, this object here beside me isfamiliar. I'm sure I could give you some sort of clue about it. Let me see. . .\""
-
-#define IDS_WTP_WIND_0 "Oh, no! The Blustery Wind begins to howl. It has returned, and mixed up all the objects in the Wood."
-#define IDS_WTP_WIND_1 "But don't worry. Everyone still has theobjects you returned to them.\n\n (Today must be Winds-day!)"
-#define IDS_WTP_TIGGER "\"Hallooooo, there!!!! It's ME, Tigger! Let's BOUNCE!\""
-#define IDS_WTP_MIST "Oh, look out! The mysterious mist is coming in. It gets so thick that you can't see through it. Just keep walkingand it will soon clear up."
-
-#define IDS_WTP_SONG_0 "Winnie-the-Pooh, Winnie-the-Pooh, Tubby little cubby all stuffed with fluff, He's Winnie-the-Pooh, Winnie-the-Pooh, Willy, nilly, silly, old bear."
-#define IDS_WTP_SONG_1 "Deep in the Hundred Acre Wood, Where Christopher Robin plays, You will find the enchanted neighborhoodof Christopher's childhood days."
-#define IDS_WTP_SONG_2 "A donkey named Eeyore is his friend, and Kanga and little Roo. There's Rabbit and Piglet and there's Owl But most of all Winnie-the-Pooh!"
-
-#define IDS_WTP_NSEW "North South East West"
-#define IDS_WTP_TAKE "Take"
-#define IDS_WTP_DROP "Drop"
-#define IDS_WTP_CANT_GO "\nSorry, but you can't go that way."
-#define IDS_WTP_CANT_TAKE "You can't take it. You can only carry one object at a time."
-#define IDS_WTP_CANT_DROP "You can't drop it. Another object is already here."
-#define IDS_WTP_WRONG_PLACE "\nOk, but it doesn't belong here."
-#define IDS_WTP_OK "\nOk."
-
-#define IDS_WTP_INVENTORY_0 "You are carrying nothing."
-#define IDS_WTP_INVENTORY_1 "Number of objects still missing: %d"
+#define IDS_WTP_ROOM_DOS "rooms/rm.%02d"
+#define IDS_WTP_ROOM_AMIGA "room.%d"
+#define IDS_WTP_ROOM_C64 "room%02d"
+#define IDS_WTP_ROOM_APPLE "room%d.obj"
+#define IDS_WTP_OBJ_DOS "obj.%02d"
+#define IDS_WTP_OBJ_AMIGA "object.%d"
+#define IDS_WTP_OBJ_C64 "object%02d"
+#define IDS_WTP_OBJ_APPLE "object%d.obj"
+#define IDS_WTP_SND_DOS "snd.%02d"
+#define IDS_WTP_SND_AMIGA "Sounds"
+#define IDS_WTP_SND_C64 "sound.obj"
+#define IDS_WTP_SND_APPLE "sound.obj"
+
+#define IDS_WTP_FILE_LOGO "logo"
+#define IDS_WTP_FILE_TITLE "title"
+#define IDS_WTP_FILE_SAVEGAME "savegame"
+#define IDS_WTP_FILE_RND "rnd"
+
+#define IDS_WTP_DISK_ERROR "There is a problem with your disk drive.Please make sure your Winnie-the-Pooh disk is in the drive correctly."
+
+#define IDS_WTP_INTRO_0 " PRESENT"
+#define IDS_WTP_INTRO_1 " TM designates trademark of\n Sierra On-Line, Inc.\n (c) 1985 Walt Disney Productions"
+
+#define IDS_WTP_HELP_0 "The <SPACE BAR> moves the pointer. Press <RETURN> when it is by the choice you want. Press the <Backspace> key to see what you just finished reading."
+#define IDS_WTP_HELP_1 "Press <C> to see what you are carrying. <Ctrl-S> turns the sound off and on. <ESC> takes you to the playroom (in caseyou get lost or want to save the game)."
+
+#define IDS_WTP_GAME_OVER_0 "Congratulations!! You did it! You returned everything that was lost. Now,Christopher Robin invites you to a Hero party."
+#define IDS_WTP_GAME_OVER_1 "The good news is: YOU are the Hero!! The bad news is: you have to find the party by yourself. Good luck!"
+
+#define IDS_WTP_OWL_0 "\"For example, that object you are carrying now is interesting. I know I've seen it before. Hmmm. Let me think about this . . .\""
+#define IDS_WTP_OWL_1 "\"You know, this object here beside me isfamiliar. I'm sure I could give you some sort of clue about it. Let me see. . .\""
+
+#define IDS_WTP_WIND_0 "Oh, no! The Blustery Wind begins to howl. It has returned, and mixed up all the objects in the Wood."
+#define IDS_WTP_WIND_1 "But don't worry. Everyone still has theobjects you returned to them.\n\n (Today must be Winds-day!)"
+#define IDS_WTP_TIGGER "\"Hallooooo, there!!!! It's ME, Tigger! Let's BOUNCE!\""
+#define IDS_WTP_MIST "Oh, look out! The mysterious mist is coming in. It gets so thick that you can't see through it. Just keep walkingand it will soon clear up."
+
+#define IDS_WTP_SONG_0 "Winnie-the-Pooh, Winnie-the-Pooh, Tubby little cubby all stuffed with fluff, He's Winnie-the-Pooh, Winnie-the-Pooh, Willy, nilly, silly, old bear."
+#define IDS_WTP_SONG_1 "Deep in the Hundred Acre Wood, Where Christopher Robin plays, You will find the enchanted neighborhoodof Christopher's childhood days."
+#define IDS_WTP_SONG_2 "A donkey named Eeyore is his friend, and Kanga and little Roo. There's Rabbit and Piglet and there's Owl But most of all Winnie-the-Pooh!"
+
+#define IDS_WTP_NSEW "North South East West"
+#define IDS_WTP_TAKE "Take"
+#define IDS_WTP_DROP "Drop"
+#define IDS_WTP_CANT_GO "\nSorry, but you can't go that way."
+#define IDS_WTP_CANT_TAKE "You can't take it. You can only carry one object at a time."
+#define IDS_WTP_CANT_DROP "You can't drop it. Another object is already here."
+#define IDS_WTP_WRONG_PLACE "\nOk, but it doesn't belong here."
+#define IDS_WTP_OK "\nOk."
+
+#define IDS_WTP_INVENTORY_0 "You are carrying nothing."
+#define IDS_WTP_INVENTORY_1 "Number of objects still missing: %d"
// COMMODORE 64 version strings
-#define IDS_WTP_FILE_SAVEGAME_C64 "saved game"
-#define IDS_WTP_DISK_ERROR_C64 "There is a problem with your disk drive.Please make sure your disk is in the drive correctly."
-#define IDS_WTP_HELP_0_C64 "The <SPACE BAR> moves the pointer. Press <RETURN> when it is by the choice you want. <F1> brings back what you have already read."
-#define IDS_WTP_HELP_1_C64 "<F3> takes you back to the playroom (if you get lost, or want to save the game).<F5> turns the sound off and on. <F7> shows what you're carrying."
-#define IDS_WTP_WRONG_PLACE_C64 "\nOk, but this is not the right place."
+#define IDS_WTP_FILE_SAVEGAME_C64 "saved game"
+#define IDS_WTP_DISK_ERROR_C64 "There is a problem with your disk drive.Please make sure your disk is in the drive correctly."
+#define IDS_WTP_HELP_0_C64 "The <SPACE BAR> moves the pointer. Press <RETURN> when it is by the choice you want. <F1> brings back what you have already read."
+#define IDS_WTP_HELP_1_C64 "<F3> takes you back to the playroom (if you get lost, or want to save the game).<F5> turns the sound off and on. <F7> shows what you're carrying."
+#define IDS_WTP_WRONG_PLACE_C64 "\nOk, but this is not the right place."
// maximum values
-#define IDI_WTP_MAX_OBJ_MISSING 10
-
-#define IDI_WTP_MAX_ROOM 62
-#define IDI_WTP_MAX_OBJ 40
-#define IDI_WTP_MAX_SND 14
-#define IDI_WTP_MAX_PIC 2
-
-#define IDI_WTP_MAX_ROOM_NORMAL 57
-#define IDI_WTP_MAX_ROOM_TELEPORT 30
-#define IDI_WTP_MAX_ROOM_OBJ 42
-#define IDI_WTP_MAX_BLOCK 4
-#define IDI_WTP_MAX_STR 6
-#define IDI_WTP_MAX_OBJ_STR 4
-#define IDI_WTP_MAX_OBJ_STR_END 2
-#define IDI_WTP_MAX_FLAG 40
-#define IDI_WTP_MAX_OPTION 3
-#define IDI_WTP_MAX_DIR 4
-#define IDI_WTP_MAX_MOVES_UNTIL_WIND 150
+#define IDI_WTP_MAX_OBJ_MISSING 10
+
+#define IDI_WTP_MAX_ROOM 62
+#define IDI_WTP_MAX_OBJ 40
+#define IDI_WTP_MAX_SND 14
+#define IDI_WTP_MAX_PIC 2
+
+#define IDI_WTP_MAX_ROOM_NORMAL 57
+#define IDI_WTP_MAX_ROOM_TELEPORT 30
+#define IDI_WTP_MAX_ROOM_OBJ 42
+#define IDI_WTP_MAX_BLOCK 4
+#define IDI_WTP_MAX_STR 6
+#define IDI_WTP_MAX_OBJ_STR 4
+#define IDI_WTP_MAX_OBJ_STR_END 2
+#define IDI_WTP_MAX_FLAG 40
+#define IDI_WTP_MAX_OPTION 3
+#define IDI_WTP_MAX_DIR 4
+#define IDI_WTP_MAX_MOVES_UNTIL_WIND 150
// positions
-#define IDI_WTP_ROW_MENU 21
-#define IDI_WTP_ROW_OPTION_1 21
-#define IDI_WTP_ROW_OPTION_2 22
-#define IDI_WTP_ROW_OPTION_3 23
-#define IDI_WTP_ROW_OPTION_4 24
-
-#define IDI_WTP_COL_MENU 0
-#define IDI_WTP_COL_OPTION 1
-#define IDI_WTP_COL_NSEW 1
-#define IDI_WTP_COL_NORTH 1
-#define IDI_WTP_COL_SOUTH 8
-#define IDI_WTP_COL_EAST 15
-#define IDI_WTP_COL_WEST 21
-#define IDI_WTP_COL_TAKE 29
-#define IDI_WTP_COL_DROP 35
-#define IDI_WTP_COL_PRESENT 17
+#define IDI_WTP_ROW_MENU 21
+#define IDI_WTP_ROW_OPTION_1 21
+#define IDI_WTP_ROW_OPTION_2 22
+#define IDI_WTP_ROW_OPTION_3 23
+#define IDI_WTP_ROW_OPTION_4 24
+
+#define IDI_WTP_COL_MENU 0
+#define IDI_WTP_COL_OPTION 1
+#define IDI_WTP_COL_NSEW 1
+#define IDI_WTP_COL_NORTH 1
+#define IDI_WTP_COL_SOUTH 8
+#define IDI_WTP_COL_EAST 15
+#define IDI_WTP_COL_WEST 21
+#define IDI_WTP_COL_TAKE 29
+#define IDI_WTP_COL_DROP 35
+#define IDI_WTP_COL_PRESENT 17
// data file offset modifiers
-#define IDI_WTP_OFS_ROOM 0x5400
-#define IDI_WTP_OFS_OBJ 0x0800
+#define IDI_WTP_OFS_ROOM 0x5400
+#define IDI_WTP_OFS_OBJ 0x0800
// picture
-#define IDI_WTP_PIC_WIDTH 140
-#define IDI_WTP_PIC_HEIGHT 159
-#define IDI_WTP_PIC_X0 10
-#define IDI_WTP_PIC_Y0 0
-#define IDI_WTP_PIC_FLAGS IDF_AGI_PIC_V2
+#define IDI_WTP_PIC_WIDTH 140
+#define IDI_WTP_PIC_HEIGHT 159
+#define IDI_WTP_PIC_X0 10
+#define IDI_WTP_PIC_Y0 0
+#define IDI_WTP_PIC_FLAGS IDF_AGI_PIC_V2
// selections
@@ -162,7 +162,7 @@ enum {
IDI_WTP_SEL_REAL_OPT_3
};
-#define IDI_WTP_SEL_LAST IDI_WTP_SEL_REAL_OPT_3
+#define IDI_WTP_SEL_LAST IDI_WTP_SEL_REAL_OPT_3
// rooms
@@ -174,13 +174,13 @@ enum {
IDI_WTP_ROOM_WEST
};
-#define IDI_WTP_ROOM_HIDE 0
+#define IDI_WTP_ROOM_HIDE 0
-#define IDI_WTP_ROOM_PICNIC 2
-#define IDI_WTP_ROOM_HOME 28
-#define IDI_WTP_ROOM_PARTY 58
-#define IDI_WTP_ROOM_MIST 59
-#define IDI_WTP_ROOM_TIGGER 61
+#define IDI_WTP_ROOM_PICNIC 2
+#define IDI_WTP_ROOM_HOME 28
+#define IDI_WTP_ROOM_PARTY 58
+#define IDI_WTP_ROOM_MIST 59
+#define IDI_WTP_ROOM_TIGGER 61
// sound
@@ -200,23 +200,23 @@ enum ENUM_WTP_SOUND {
// script opcodes
-#define IDO_WTP_GOTO_ROOM 0x06
-#define IDO_WTP_PRINT_MSG 0x08
-#define IDO_WTP_PRINT_STR 0x0A
-#define IDO_WTP_DROP_OBJ 0x0C
-#define IDO_WTP_FLAG_CLEAR 0x0E
-#define IDO_WTP_FLAG_SET 0x10
-#define IDO_WTP_GAME_OVER 0x12
-#define IDO_WTP_WALK_MIST 0x14
-#define IDO_WTP_PLAY_SOUND 0x16
-#define IDO_WTP_SAVE_GAME 0x18
-#define IDO_WTP_LOAD_GAME 0x1A
-#define IDO_WTP_OWL_HELP 0x1C
-#define IDO_WTP_GOTO_RND 0x1E
-
-#define IDO_WTP_OPTION_0 0x15
-#define IDO_WTP_OPTION_1 0x16
-#define IDO_WTP_OPTION_2 0x17
+#define IDO_WTP_GOTO_ROOM 0x06
+#define IDO_WTP_PRINT_MSG 0x08
+#define IDO_WTP_PRINT_STR 0x0A
+#define IDO_WTP_DROP_OBJ 0x0C
+#define IDO_WTP_FLAG_CLEAR 0x0E
+#define IDO_WTP_FLAG_SET 0x10
+#define IDO_WTP_GAME_OVER 0x12
+#define IDO_WTP_WALK_MIST 0x14
+#define IDO_WTP_PLAY_SOUND 0x16
+#define IDO_WTP_SAVE_GAME 0x18
+#define IDO_WTP_LOAD_GAME 0x1A
+#define IDO_WTP_OWL_HELP 0x1C
+#define IDO_WTP_GOTO_RND 0x1E
+
+#define IDO_WTP_OPTION_0 0x15
+#define IDO_WTP_OPTION_1 0x16
+#define IDO_WTP_OPTION_2 0x17
enum {
IDI_WTP_OBJ_DESC = 0,
@@ -234,49 +234,49 @@ enum {
// room file option block
struct WTP_ROOM_BLOCK {
- uint16 ofsOpt[IDI_WTP_MAX_BLOCK];
+ uint16 ofsOpt[IDI_WTP_MAX_BLOCK];
};
// room file header
struct WTP_ROOM_HDR {
- uint8 roomNumber;
- uint8 objId;
- uint16 ofsPic;
- uint16 fileLen;
- uint16 reserved0;
- int8 roomNew[IDI_WTP_MAX_DIR];
- uint8 objX;
- uint8 objY;
- uint16 reserved1;
- uint16 ofsDesc[IDI_WTP_MAX_BLOCK];
- uint16 ofsBlock[IDI_WTP_MAX_BLOCK];
- uint16 ofsStr[IDI_WTP_MAX_STR];
- uint32 reserved2;
- WTP_ROOM_BLOCK opt[IDI_WTP_MAX_BLOCK];
+ uint8 roomNumber;
+ uint8 objId;
+ uint16 ofsPic;
+ uint16 fileLen;
+ uint16 reserved0;
+ int8 roomNew[IDI_WTP_MAX_DIR];
+ uint8 objX;
+ uint8 objY;
+ uint16 reserved1;
+ uint16 ofsDesc[IDI_WTP_MAX_BLOCK];
+ uint16 ofsBlock[IDI_WTP_MAX_BLOCK];
+ uint16 ofsStr[IDI_WTP_MAX_STR];
+ uint32 reserved2;
+ WTP_ROOM_BLOCK opt[IDI_WTP_MAX_BLOCK];
};
// object file header
struct WTP_OBJ_HDR {
- uint16 fileLen;
- uint16 objId;
- uint16 ofsEndStr[IDI_WTP_MAX_OBJ_STR_END];
- uint16 ofsStr[IDI_WTP_MAX_OBJ_STR];
- uint16 ofsPic;
+ uint16 fileLen;
+ uint16 objId;
+ uint16 ofsEndStr[IDI_WTP_MAX_OBJ_STR_END];
+ uint16 ofsStr[IDI_WTP_MAX_OBJ_STR];
+ uint16 ofsPic;
};
// savegame
struct WTP_SAVE_GAME {
- uint8 fSound;
- uint8 nMoves;
- uint8 nObjMiss;
- uint8 nObjRet;
- uint8 iObjHave;
- uint8 fGame[IDI_WTP_MAX_FLAG];
- uint8 iUsedObj[IDI_WTP_MAX_OBJ_MISSING];
- uint8 iObjRoom[IDI_WTP_MAX_ROOM_OBJ];
+ uint8 fSound;
+ uint8 nMoves;
+ uint8 nObjMiss;
+ uint8 nObjRet;
+ uint8 iObjHave;
+ uint8 fGame[IDI_WTP_MAX_FLAG];
+ uint8 iUsedObj[IDI_WTP_MAX_OBJ_MISSING];
+ uint8 iObjRoom[IDI_WTP_MAX_ROOM_OBJ];
};
class PreAgiEngine;
@@ -298,10 +298,10 @@ private:
WTP_SAVE_GAME _gameStateWinnie;
int _room;
- int _mist;
+ int _mist;
bool _doWind;
bool _winnieEvent;
- int _tiggerMist;
+ int _tiggerMist;
int _roomOffset;
int _objOffset;
@@ -310,32 +310,32 @@ private:
void randomize();
void intro();
- void drawPic(const char*);
+ void drawPic(const char *);
void gameLoop();
void parseRoomHeader(WTP_ROOM_HDR *roomHdr, byte *buffer, int len);
void parseObjHeader(WTP_OBJ_HDR *objHdr, byte *buffer, int len);
- uint32 readRoom(int, uint8*, WTP_ROOM_HDR&);
+ uint32 readRoom(int, uint8 *, WTP_ROOM_HDR &);
void drawRoomPic();
- int parser(int, int, uint8*);
+ int parser(int, int, uint8 *);
int getObjInRoom(int);
bool getSelOkBack();
- void getMenuSel(char*, int*, int[]);
+ void getMenuSel(char *, int *, int[]);
void keyHelp();
- void clrMenuSel(int*, int[]);
- void incMenuSel(int*, int[]);
- void decMenuSel(int*, int[]);
- void drawMenu(char*, int, int[]);
+ void clrMenuSel(int *, int[]);
+ void incMenuSel(int *, int[]);
+ void decMenuSel(int *, int[]);
+ void drawMenu(char *, int, int[]);
void printRoomStr(int, int);
void inventory();
void printObjStr(int, int);
- uint32 readObj(int, uint8*);
+ uint32 readObj(int, uint8 *);
void takeObj(int);
void dropObj(int);
- bool isRightObj(int, int, int*);
+ bool isRightObj(int, int, int *);
void drawObjPic(int, int, int);
- void getMenuMouseSel(int*, int[], int, int);
+ void getMenuMouseSel(int *, int[], int, int);
void setWinnieFlag(int);
void clearWinnieFlag(int);
void gameOver();
@@ -343,7 +343,7 @@ private:
void loadGame();
void dropObjRnd();
void setTakeDrop(int[]);
- void makeSel(int*, int[]);
+ void makeSel(int *, int[]);
void wind();
void mist();