[Scummvm-cvs-logs] CVS: scummvm/scumm/smush smush_player.cpp,1.103,1.104 smush_player.h,1.23,1.24

Eugene Sandulenko sev at users.sourceforge.net
Tue Jan 27 23:52:14 CET 2004


Update of /cvsroot/scummvm/scummvm/scumm/smush
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12292/scumm/smush

Modified Files:
	smush_player.cpp smush_player.h 
Log Message:
o Implemented TRS handling
o Now you can succesfully reach the cave so FT is completable, but it crashes
  now in some particularly situations, so you should avoid them.


Index: smush_player.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/smush_player.cpp,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -d -r1.103 -r1.104
--- smush_player.cpp	26 Jan 2004 15:41:30 -0000	1.103
+++ smush_player.cpp	26 Jan 2004 22:44:46 -0000	1.104
@@ -589,6 +589,10 @@
 	}
 }
 
+const char *SmushPlayer::getString(int id) {
+	return _strings->get(id);
+}
+
 bool SmushPlayer::readString(const char *file, const char *directory) {
 	const char *i = strrchr(file, '.');
 	if (i == NULL) {
@@ -822,9 +826,13 @@
 	if (_vm->_gameId == GID_FT) {
 		if (!(_vm->_features & GF_DEMO)) {
 			_sf[0] = new SmushFont(true, false);
+			_sf[1] = new SmushFont(true, false);
 			_sf[2] = new SmushFont(true, false);
+			_sf[3] = new SmushFont(true, false);
 			_sf[0]->loadFont("scummfnt.nut", directory);
+			_sf[1]->loadFont("techfnt.nut", directory);
 			_sf[2]->loadFont("titlfnt.nut", directory);
+			_sf[3]->loadFont("specfnt.nut", directory);
 		}
 	} else if (_vm->_gameId == GID_DIG) {
 		if (!(_vm->_features & GF_DEMO)) {
@@ -884,6 +892,14 @@
 	_vm->_system->set_palette(palette_colors, 0, 256);
 }
 
+void SmushPlayer::setPaletteValue(int n, byte r, byte g, byte b) {
+	_pal[n * 3 + 0] = r;
+	_pal[n * 3 + 1] = g;
+	_pal[n * 3 + 2] = b;
+
+	_vm->_system->set_palette(_pal, n, 1);
+}
+
 void SmushPlayer::updateScreen() {
 #ifdef DUMP_SMUSH_FRAMES
 	char fileName[100];

Index: smush_player.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/smush/smush_player.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- smush_player.h	19 Jan 2004 19:34:48 -0000	1.23
+++ smush_player.h	26 Jan 2004 22:44:47 -0000	1.24
@@ -45,7 +45,6 @@
 	int16 _deltaPal[0x300];
 	byte _pal[0x300];
 	StringResource *_strings;
-	SmushFont *_sf[5];
 	Codec37Decoder _codec37;
 	Codec47Decoder _codec47;
 	FileChunk *_base;
@@ -65,7 +64,6 @@
 	int _speed;
 	bool _outputSound;
 
-	int _width, _height;
 	byte *_dst;
 	bool _updateNeeded;
 	bool _insanity;
@@ -78,9 +76,14 @@
 	void play(const char *filename, const char *directory);
 
 protected:
+	SmushFont *_sf[5];
+	int _width, _height;
+
 	void insanity(bool);
 	void setPalette(const byte *palette);
+	void setPaletteValue(int n, byte r, byte g, byte b);
 	void seekSan(const char *file, const char *directory, int32 pos, int32 contFrame);
+	const char *getString(int id);
 
 private:
 	void updatePalette(void);





More information about the Scummvm-git-logs mailing list