aboutsummaryrefslogtreecommitdiff
path: root/sword2
AgeCommit message (Collapse)Author
2005-05-02Don't let drawSprite() modify the SpriteInfo struct.Torbjörn Andersson
svn-id: r17897
2005-05-02Cleanup. Most of is simply moves the credits code out of Logic and intoTorbjörn Andersson
Screen. I've also added an unused "splash screen" function that displays the image that used to be shown by CacheNewCluster() while copying a data file from CD to hard disk. ScummVM doesn't do that, but it's a nice image that I wish we could do something useful with, and it's easier to have the code here for reference than having to dig through old revisions of the resource manager. svn-id: r17894
2005-04-27Patch #1186744 (Common line-drawing function)Max Horn
svn-id: r17842
2005-04-25Better support for "seamless" cutscenes, i.e. ones where - in theory - youTorbjörn Andersson
shouldn't see where the cutscene begins/ends as it's the same image as is currently displayed by the game engine itself. Of course, in reality you can still see the seams easily. But at least it looks a bit beter now. I made most of this change yesterday, but it's less hard-wired now. svn-id: r17797
2005-04-24Don't wait for the lead-out sound to finish when playing the "shaman"Torbjörn Andersson
cutscene, as it's obviously meant to blend in with the rest of the game. svn-id: r17791
2005-04-24Moved conversation stuff from Logic to Mouse.Torbjörn Andersson
svn-id: r17787
2005-04-23Oops. This should have been removed long ago.Torbjörn Andersson
svn-id: r17768
2005-04-22* Added new virtual base class 'Stream', ReadStream andMax Horn
WriteStream are now subclasses of it. * Added new methods eos(), ioFailed(), clearIOFailed() to all streams. This allows better error checking. * SaveFile classes take advantage of these new standard stream APIS * Removed File::gets() * Added SeekableReadStream::readLine() (replaces File::gets) * Added WriteStream::writeString, for convenience svn-id: r17752
2005-04-20Replaced drawLine() with a shorter version described in Wikipedia. It usesTorbjörn Andersson
a callback to plot each point so that it doesn't need to worry about how the caller deals with screen dirtying, etc. My plan is to move this function into a standard class. (That's why I used the American spelling "color" instead of "colour".) I just haven't made up my mind on which is the most appropriate one yet. svn-id: r17715
2005-04-11Initialization fix.Torbjörn Andersson
svn-id: r17535
2005-04-10Initialise _currentRunList to avoid failed assertion when quitting theTorbjörn Andersson
game before it has been initialised the normal way. svn-id: r17519
2005-04-10split SaveFileManager::openSavefile and class SaveFile into two, each, one ↵Max Horn
for loading and one for saving svn-id: r17517
2005-04-09Removed unnecessary includes.Torbjörn Andersson
svn-id: r17477
2005-03-25Patch #1117443 (Experimental plugin code revision)Max Horn
svn-id: r17231
2005-03-12PlayingSoundHandle -> SoundHandle; also, turned the handle activity check ↵Max Horn
into a mixer method svn-id: r17106
2005-03-11Renamed variables in the MPEG animation classes to better conform withTorbjörn Andersson
ScummVM standard. It seems the 8-bit version of the code had decayed slightly, but I believe it's working again now. svn-id: r17081
2005-03-09changing AudioDataType -> SoundType, so now the constant names match the ↵Max Horn
name of the data type / the SoundMixer method names svn-id: r17052
2005-03-06Applied patch #1155731, reducing the memory usage of the MPEG player byTorbjörn Andersson
about 8 MB. svn-id: r17007
2005-03-03Initialise variable.Torbjörn Andersson
svn-id: r16983
2005-02-28And, finally, the change I meant to before I got side-tracked: UseTorbjörn Andersson
ScummVM's "Rect" data type in the mouse list. The benefit of this is that we can then use the contains() function in checkMouseList(), which makes the code a bit less eye-watering. svn-id: r16961
2005-02-28Index the "mouse list" from 0 instead of 1. I have no idea why it wasn'tTorbjörn Andersson
this way to begin with. svn-id: r16959
2005-02-28Changed a few more hard-coded text-ids to constants.Torbjörn Andersson
svn-id: r16957
2005-02-27Restored the original values to the return codes. Since I've been removingTorbjörn Andersson
a bunch of them, it's better that the remaining ones keep the same value between future releases. (Not that the user will ever get error messages, of course. *cough* :-) svn-id: r16953
2005-02-27Got rid of all the .h files but one in the 'driver' directory. They wereTorbjörn Andersson
either very small or, in the case of driver96.h, a disorganized jumbles. svn-id: r16952
2005-02-25Whitespace changes.Torbjörn Andersson
svn-id: r16913
2005-02-22Fix compilation on BE systemsMax Horn
svn-id: r16861
2005-02-22Moved some debugging stuff into the debugger class.Torbjörn Andersson
svn-id: r16859
2005-02-21basically the same change as for bs1; don't keep the mutex locked while ↵Robert Göffringmann
loading mp3, ogg or wave data. it blocks the playing thread for too long. Also added index caching for the speech and music clusters to reduce seeks. svn-id: r16849
2005-02-21Some cleanup and renaming. (It was confusing to see "load" sometimes andTorbjörn Andersson
"restore" other times.) The save/restore dialog now has two separate classes, though they both inherit from the old combined class of course. svn-id: r16848
2005-02-21removed lots of unnecessary seek()s and read()s by keeping the datafiles' ↵Robert Göffringmann
index tables in memory instead of accessing them over and over again, which caused major slowdowns with cd accesses. Also, the caching of datafiles depends on the memory usage now, not on the number of screens that the player entered in the meantime. The old behaviour made the engine run out of memory on the PS2. svn-id: r16843
2005-02-20More BS2 restructuring.Torbjörn Andersson
The various game settings are no longer stored in the Gui class. They are stored in the class that use them. Code that doesn't belong in the Gui class, e.g. the "restart" code, has been moved out of it. Afterwards, the Gui class had been reduced to nothing more than a handful of trivial methods for invoking the in-game dialogs. So the entire Gui class has been removed. svn-id: r16827
2005-02-19This is the second part of the BS2 restructuring. There are two newTorbjörn Andersson
classes: Screen and Mouse. Screen handles most of the drawing, except the mouse cursor and in-game menus. The old Graphics class is no more. I've also fixed some "reverse stereo" regressions from the first part of the restructuring. I'm not sure what the next step will be, but hopefully it will be smaller than this one was. svn-id: r16812
2005-02-18Forgot to check if preFetchCompSpeech() could find the speech file. Now itTorbjörn Andersson
will work even if the file is missing. (This only affects the cutscene player.) svn-id: r16806
2005-02-08Now there are two file handles for the music: one for each CD. This is notTorbjörn Andersson
the same thing as one for each music stream. If both music streams are playing music from the same CD, they will both take turns at using the same file handle. The only case where both file handles are used is when music from one CD is fading in while music from the other CD is fading out. Which of course can only happen if you play the game from hard disk. If the game has to ask for the other CD, it kills the music immediately. The reason for doing this is that there was some concern about whether having two file handles open to the same file was portable or not. I don't think that question was ever fully answered, so I avoid the situation. svn-id: r16753
2005-02-07Fixed crash that would happen if the game tried to play music from CD1 andTorbjörn Andersson
CD2 at the same time. There will eventually be a better fix for this, I hope. svn-id: r16750
2005-01-28Fix compilation with mpeg2 disabledMax Horn
svn-id: r16680
2005-01-28Use class Mutex instead of MutexRefMax Horn
svn-id: r16679
2005-01-28Began what I hope is the final major restructuring of the BS2 engine.Torbjörn Andersson
In this first step, I have moved all opcode functions into functions.cpp, instead of having them scattered all over the place. To get things to compile again, I had to rewrite the overly complicated sound effects handling. It's much simpler now. The next step will be to move any non-trivial code out of the opcode functions and into the appropriate object. This, I hope, will make it easier to create well-separated objects, instead of the current mess. I also want to tear down the artificial boundary between the main directory and the "driver" directory. We already have a cross-platform layer; there's no need to have yet another one. (Actually, the rewriting of the sound effects code took one first step in this direction.) At the final stage, I'd like to get rid of the "drivers" directory completely, but I'll probably need some help with that if I want to preserve the CVS history of the code. Things will probably be a bit bumpy along the way, but I seem to have reached a point of relative stability again, which is why I'm commiting this now. svn-id: r16668
2005-01-25Corrected the comment: the savegame filename does not include the path atTorbjörn Andersson
this stage. (So 128 characters is probably excessive, even if the SCUMM engine uses 256.) svn-id: r16634
2005-01-25Added a "value step" parameter to the Slider widget class so that clickingTorbjörn Andersson
beside the slider handle can move it more than one step. (When the volume range was 0-14 or 0-16 this wasn't needed, but now it's 0-255.) svn-id: r16633
2005-01-20Fixed bug that I must have introduced during one of my cleanups. TheTorbjörn Andersson
original code read "LLogic.Logic_up( (*params*65536)+2);". I don't know where this opcode is actually used, though. svn-id: r16600
2005-01-17Updated copyright header, as discussed on the mailing list.Torbjörn Andersson
svn-id: r16580
2005-01-11On Fingolfin's suggestion I put back the inclusion of util.h into Rect, forTorbjörn Andersson
MIN() and MAX(). I then removed util.h from a bunch of files which I don't think need it any more. (Please let me know if I got too blood-thirsty!) This reverts some of the changes I made this morning. svn-id: r16541
2005-01-11Use Fingolfin's new WAV code.Torbjörn Andersson
svn-id: r16540
2005-01-11This is probably not the optimal fix, but at least ScummVM compiles again.Torbjörn Andersson
svn-id: r16538
2005-01-10system.h was being included in tons of places, without any good reason; ↵Max Horn
reduced this (total dependencies on system.h went down from 193 to 85 files) svn-id: r16527
2005-01-09Mark some places which probably should use loadWAVFromStream(); maybe some ↵Max Horn
of the engine maintainers can look into using it svn-id: r16503
2005-01-06Fixed typo (in comment)Torbjörn Andersson
svn-id: r16441
2005-01-04Applied patch #1088948, with minor modificationsTorbjörn Andersson
svn-id: r16421
2005-01-01Updated copyright year.Torbjörn Andersson
svn-id: r16397