diff options
Diffstat (limited to 'engines/tinsel/palette.h')
-rw-r--r-- | engines/tinsel/palette.h | 40 |
1 files changed, 38 insertions, 2 deletions
diff --git a/engines/tinsel/palette.h b/engines/tinsel/palette.h index fdc4826dbd..1d43e6d31f 100644 --- a/engines/tinsel/palette.h +++ b/engines/tinsel/palette.h @@ -43,7 +43,7 @@ enum { MAX_COLOURS = 256, //!< maximum number of colours - for VGA 256 BITS_PER_PIXEL = 8, //!< number of bits per pixel for VGA 256 MAX_INTENSITY = 255, //!< the biggest value R, G or B can have - NUM_PALETTES = 3, //!< number of palettes + NUM_PALETTES = 32, //!< number of palettes // Discworld has some fixed apportioned bits in the palette. BGND_DAC_INDEX = 0, //!< index of background colour in Video DAC @@ -84,8 +84,11 @@ struct PALQ { int objCount; //!< number of objects using this palette int posInDAC; //!< palette position in the video DAC int numColours; //!< number of colours in the palette + // Discworld 2 fields + bool bFading; // Whether or not fading + COLORREF palRGB[MAX_COLOURS]; // actual palette colours }; - +typedef PALQ *PPALQ; #define PALETTE_MOVED 0x8000 // when this bit is set in the "posInDAC" // field - the palette entry has moved @@ -137,8 +140,41 @@ COLORREF GetBgndColour(void); // returns current background colour void SetBgndColour( // sets current background colour COLORREF colour); // colour to set the background to +void FadingPalette(PPALQ pPalQ, bool bFading); + void CreateTranslucentPalette(SCNHANDLE BackPal); +void CreateGhostPalette(SCNHANDLE hPalette); + +void NoFadingPalettes(void); // All fading processes have just been killed + +void DimPartPalette( + SCNHANDLE hPal, + int startColour, + int length, + int brightness); // 0 = black, 10 == 100% + + +int TranslucentColour(void); + +#define BoxColour TranslucentColour + +int HighlightColour(void); + +int TalkColour(void); + +void SetTalkColourRef(COLORREF colRef); + +COLORREF GetTalkColourRef(void); + +void SetTagColorRef(COLORREF colRef); + +COLORREF GetTagColorRef(void); + +void SetTalkTextOffset(int offset); + +void SetTranslucencyOffset(int offset); + } // end of namespace Tinsel #endif // TINSEL_PALETTE_H |