aboutsummaryrefslogtreecommitdiff
path: root/engines/saga/saga.h
diff options
context:
space:
mode:
authorAndrew Kurushin2006-05-13 10:30:38 +0000
committerAndrew Kurushin2006-05-13 10:30:38 +0000
commit64c3407500ababf579503224439a3e0c615a8390 (patch)
tree8bc3275b1d1db13bb2fa6e6d3f1ae365322da964 /engines/saga/saga.h
parent45b249ee6012772179efe556f92de74163235aea (diff)
downloadscummvm-rg350-64c3407500ababf579503224439a3e0c615a8390.tar.gz
scummvm-rg350-64c3407500ababf579503224439a3e0c615a8390.tar.bz2
scummvm-rg350-64c3407500ababf579503224439a3e0c615a8390.zip
extract GameDescriptions to separate files (this will help compress_saga tool to detect sound resource)
svn-id: r22433
Diffstat (limited to 'engines/saga/saga.h')
-rw-r--r--engines/saga/saga.h320
1 files changed, 2 insertions, 318 deletions
diff --git a/engines/saga/saga.h b/engines/saga/saga.h
index f4d542ce0f..3c91f0d88d 100644
--- a/engines/saga/saga.h
+++ b/engines/saga/saga.h
@@ -83,10 +83,8 @@ enum ERRORCODE {
SUCCESS = 0
};
-enum SAGAGameType {
- GType_ITE = 0,
- GType_IHNM = 1
-};
+#include "sagagame.h"
+
enum GameObjectTypes {
kGameObjectNone = 0,
@@ -138,89 +136,6 @@ enum HitZoneFlags {
kHitZoneProject = (1 << 3)
};
-
-enum PanelButtonType {
- kPanelButtonVerb = 1 << 0,
- kPanelButtonArrow = 1 << 1,
- kPanelButtonConverseText = 1 << 2,
- kPanelButtonInventory = 1 << 3,
-
- kPanelButtonOption = 1 << 4,
- kPanelButtonOptionSlider = 1 << 5,
- kPanelButtonOptionSaveFiles = 1 << 6,
- kPanelButtonOptionText = 1 << 7,
-
- kPanelButtonQuit = 1 << 8,
- kPanelButtonQuitText = 1 << 9,
-
- kPanelButtonLoad = 1 << 10,
- kPanelButtonLoadText = 1 << 11,
-
- kPanelButtonSave = 1 << 12,
- kPanelButtonSaveText = 1 << 13,
- kPanelButtonSaveEdit = 1 << 14,
-
- kPanelButtonProtectText = 1 << 15,
- kPanelButtonProtectEdit = 1 << 16,
-
- kPanelAllButtons = 0xFFFFF
-};
-
-enum TextStringIds {
- kTextWalkTo,
- kTextLookAt,
- kTextPickUp,
- kTextTalkTo,
- kTextOpen,
- kTextClose,
- kTextUse,
- kTextGive,
- kTextOptions,
- kTextTest,
- kTextDemo,
- kTextHelp,
- kTextQuitGame,
- kTextFast,
- kTextSlow,
- kTextOn,
- kTextOff,
- kTextContinuePlaying,
- kTextLoad,
- kTextSave,
- kTextGameOptions,
- kTextReadingSpeed,
- kTextMusic,
- kTextSound,
- kTextCancel,
- kTextQuit,
- kTextOK,
- kTextMid,
- kTextClick,
- kText10Percent,
- kText20Percent,
- kText30Percent,
- kText40Percent,
- kText50Percent,
- kText60Percent,
- kText70Percent,
- kText80Percent,
- kText90Percent,
- kTextMax,
- kTextQuitTheGameQuestion,
- kTextLoadSuccessful,
- kTextEnterSaveGameName,
- kTextGiveTo,
- kTextUseWidth,
- kTextNewSave,
- kTextICantPickup,
- kTextNothingSpecial,
- kTextNoPlaceToOpen,
- kTextNoOpening,
- kTextDontKnow,
- kTextShowDialog,
- kTextEnterProtectAnswer
-};
-
struct ImageHeader {
int width;
int height;
@@ -252,74 +167,7 @@ struct StringsTable {
}
};
-enum GameIds {
- // Dreamers Guild
- GID_ITE_DEMO_G = 0,
- GID_ITE_DISK_G,
- GID_ITE_DISK_G2,
- GID_ITE_CD_G,
- GID_ITE_CD_G2,
- GID_ITE_MACCD_G,
-
- // Wyrmkeep
- GID_ITE_CD, // data for Win rerelease is same as in old DOS
- GID_ITE_WINCD, // but it has a bunch of patch files
- GID_ITE_MACCD,
- GID_ITE_LINCD,
- GID_ITE_MULTICD, // Wyrmkeep combined Windows/Mac/Linux version
- GID_ITE_WINDEMO1, // older Wyrmkeep windows demo
- GID_ITE_MACDEMO1, // older Wyrmkeep mac demo
- GID_ITE_LINDEMO,
- GID_ITE_WINDEMO2,
- GID_ITE_MACDEMO2,
-
- // German
- GID_ITE_DISK_DE,
- GID_ITE_DISK_DE2,
- GID_ITE_AMIGACD_DE, // TODO
- GID_ITE_OLDMAC_DE, // TODO
- GID_ITE_AMIGA_FL_DE,// TODO
- GID_ITE_CD_DE, // reported by mld. Bestsellergamers cover disk
- GID_ITE_CD_DE2,
- GID_ITE_AMIGA_AGA_DEMO, // TODO
- GID_ITE_AMIGA_ECS_DEMO, // TODO
-
- GID_IHNM_DEMO,
- GID_IHNM_CD,
- GID_IHNM_CD_DE, // reported by mld. German retail
- GID_IHNM_CD_ES,
- GID_IHNM_CD_RU,
- GID_IHNM_CD_FR
-};
-enum GameFileTypes {
- GAME_RESOURCEFILE = 1 << 0,
- GAME_SCRIPTFILE = 1 << 1,
- GAME_SOUNDFILE = 1 << 2,
- GAME_VOICEFILE = 1 << 3,
- GAME_DEMOFILE = 1 << 4,
- GAME_MUSICFILE = 1 << 5,
- GAME_MUSICFILE_GM = 1 << 6,
- GAME_MUSICFILE_FM = 1 << 7,
- GAME_PATCHFILE = 1 << 8,
- GAME_MACBINARY = 1 << 9,
- GAME_SWAPENDIAN = 1 << 10
-};
-
-enum GameSoundTypes {
- kSoundPCM = 0,
- kSoundVOX = 1,
- kSoundVOC = 2,
- kSoundWAV = 3,
- kSoundMacPCM = 4
-};
-
-enum GameFeatures {
- GF_BIG_ENDIAN_DATA = 1 << 0,
- GF_WYRMKEEP = 1 << 1,
- GF_CD_FX = 1 << 2,
- GF_SCENE_SUBSTITUTES = 1 << 3
-};
enum ColorId {
kITEColorTransBlack = 0x00,
@@ -354,170 +202,6 @@ enum KnownColor {
kKnownColorVerbTextActive
};
-struct GameSoundInfo {
- GameSoundTypes resourceType;
- long frequency;
- int sampleBits;
- bool stereo;
- bool isBigEndian;
- bool isSigned;
-};
-
-struct GameFontDescription {
- uint32 fontResourceId;
-};
-
-struct GameResourceDescription {
- uint32 sceneLUTResourceId;
- uint32 moduleLUTResourceId;
- uint32 mainPanelResourceId;
- uint32 conversePanelResourceId;
- uint32 optionPanelResourceId;
- uint32 mainSpritesResourceId;
- uint32 mainPanelSpritesResourceId;
- uint32 defaultPortraitsResourceId;
- uint32 mainStringsResourceId;
- uint32 actorsStringsResourceId;
-};
-
-struct GameFileDescription {
- const char *fileName;
- uint16 fileType;
- const char *md5;
-};
-
-struct GamePatchDescription {
- const char *fileName;
- uint16 fileType;
- uint32 resourceId;
- GameSoundInfo *soundInfo;
-};
-
-struct PanelButton {
- PanelButtonType type;
- int xOffset;
- int yOffset;
- int width;
- int height;
- int id;
- uint16 ascii;
- int state;
- int upSpriteNumber;
- int downSpriteNumber;
- int overSpriteNumber;
-};
-
-struct GameDisplayInfo {
- int logicalWidth;
- int logicalHeight;
-
- int pathStartY;
- int sceneHeight;
-
- int statusXOffset;
- int statusYOffset;
- int statusWidth;
- int statusHeight;
- int statusTextY;
- int statusTextColor;
- int statusBGColor;
-
- int saveReminderXOffset;
- int saveReminderYOffset;
- int saveReminderWidth;
- int saveReminderHeight;
- int saveReminderFirstSpriteNumber;
- int saveReminderSecondSpriteNumber;
-
- int leftPortraitXOffset;
- int leftPortraitYOffset;
- int rightPortraitXOffset;
- int rightPortraitYOffset;
-
- int inventoryUpButtonIndex;
- int inventoryDownButtonIndex;
- int inventoryRows;
- int inventoryColumns;
-
- int mainPanelXOffset;
- int mainPanelYOffset;
- int mainPanelButtonsCount;
- PanelButton *mainPanelButtons;
-
- int converseMaxTextWidth;
- int converseTextHeight;
- int converseTextLines;
- int converseUpButtonIndex;
- int converseDownButtonIndex;
-
- int conversePanelXOffset;
- int conversePanelYOffset;
- int conversePanelButtonsCount;
- PanelButton *conversePanelButtons;
-
- int optionSaveFilePanelIndex;
- int optionSaveFileSliderIndex;
- uint optionSaveFileVisible;
-
- int optionPanelXOffset;
- int optionPanelYOffset;
- int optionPanelButtonsCount;
- PanelButton *optionPanelButtons;
-
- int quitPanelXOffset;
- int quitPanelYOffset;
- int quitPanelWidth;
- int quitPanelHeight;
- int quitPanelButtonsCount;
- PanelButton *quitPanelButtons;
-
- int loadPanelXOffset;
- int loadPanelYOffset;
- int loadPanelWidth;
- int loadPanelHeight;
- int loadPanelButtonsCount;
- PanelButton *loadPanelButtons;
-
- int saveEditIndex;
- int savePanelXOffset;
- int savePanelYOffset;
- int savePanelWidth;
- int savePanelHeight;
- int savePanelButtonsCount;
- PanelButton *savePanelButtons;
-
- int protectEditIndex;
- int protectPanelXOffset;
- int protectPanelYOffset;
- int protectPanelWidth;
- int protectPanelHeight;
- int protectPanelButtonsCount;
- PanelButton *protectPanelButtons;
-};
-
-
-struct GameDescription {
- const char *name;
- SAGAGameType gameType;
- GameIds gameId;
- const char *extra;
- GameDisplayInfo *gameDisplayInfo;
- int startSceneNumber;
- GameResourceDescription *resourceDescription;
- int filesCount;
- GameFileDescription *filesDescriptions;
- int fontsCount;
- GameFontDescription *fontDescriptions;
- GameSoundInfo *voiceInfo;
- GameSoundInfo *sfxInfo;
- GameSoundInfo *musicInfo;
- int patchesCount;
- GamePatchDescription *patchDescriptions;
- uint32 features;
- Common::Language language;
- Common::Platform platform;
-};
-
struct SaveFileData {
char name[SAVE_TITLE_SIZE];
uint slotNumber;