From 5d32a2c034a1e9036c9dcc721b6bfe27c46eb904 Mon Sep 17 00:00:00 2001 From: Robert Göffringmann Date: Sun, 5 Dec 2004 02:55:06 +0000 Subject: added support for an international BS1 cutscene pack (which we didn't release yet) svn-id: r15983 --- sword1/credits.h | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 sword1/credits.h (limited to 'sword1/credits.h') diff --git a/sword1/credits.h b/sword1/credits.h new file mode 100644 index 0000000000..5a4364ad3a --- /dev/null +++ b/sword1/credits.h @@ -0,0 +1,68 @@ +/* ScummVM - Scumm Interpreter + * Copyright (C) 2003-2004 The ScummVM project + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Header$ + * + */ + +#ifndef BS1CREDITS_H +#define BS1CREDITS_H + +#include "common/util.h" +class SoundMixer; +class OSystem; + +namespace Sword1 { + +class ArcFile { +public: + ArcFile(void); + ~ArcFile(void); + bool open(const char *name); + uint8 *fetchFile(uint32 fileId, uint32 *size = NULL); + uint8 *decompressFile(uint32 fileId); + void enterPath(uint32 id); + void backToRoot(void) { _bufPos = _buf; }; +private: + uint8 *_bufPos; + uint8 *_buf; +}; + +class CreditsPlayer { +public: + CreditsPlayer(OSystem *pSystem, SoundMixer *pMixer); + void play(void); +private: + void generateFonts(ArcFile *arcFile); + void renderLine(uint8 *screenBuf, uint8 *line, uint16 yBufPos, uint8 flags); + void fadePalette(uint8 *srcPal, bool fadeup, uint16 len); + void delay(int msecs); + uint16 getWidth(uint8 *font, uint8 *line); + uint8 getPalIdx(uint8 r, uint8 g, uint8 b); + uint8 _palette[256 * 4]; + uint32 _palLen; + uint8 _numChars; + + OSystem *_system; + SoundMixer *_mixer; + + uint8 *_smlFont, *_bigFont; +}; + +}; // end of namespace Sword1 + +#endif // BS1CREDITS_H -- cgit v1.2.3