Commit Graph

184 Commits

Author SHA1 Message Date
Max Horn
bd296a45fa Fixed unitialized variables
svn-id: r32865
2008-07-01 10:33:25 +00:00
Benjamin Haisch
b6ad2b0035 - Fixed umlauts in printText
- Don't exit when a pmv video couldn't be found

svn-id: r32817
2008-06-27 09:57:38 +00:00
Benjamin Haisch
7bceafb3f2 - Fixed sprite drawing in Rodney's Funscreen
- Handle mouse button up events and event number fixes in MadeEngine::handleEvents()
- Use milliseconds -> game ticks calculation based on Windows version of the original engine
- "Rodney's Fun Screen" -> "Rodney's Funscreen"

svn-id: r32731
2008-06-18 11:01:51 +00:00
Sven Hesse
46681407ab Fixing compilation
svn-id: r32676
2008-06-12 18:33:34 +00:00
Benjamin Haisch
fb31c62ad8 - Added support for Rodney's Fun Screen
- Added audio cd playback (still kinda broken though)
- Renamed getObjectPropertyPtr to findObjectProperty

svn-id: r32669
2008-06-12 11:09:04 +00:00
Benjamin Haisch
555ddf9f95 Updated script dumper to show opcode offset.
svn-id: r32668
2008-06-12 11:01:08 +00:00
Benjamin Haisch
b9776d46b2 - Implemented opcodes: sfHomeText, sfDrawAnimPic
- Comments on unneeded opcodes
- Simplified getting/setting strings in Objects

svn-id: r32361
2008-05-29 12:57:11 +00:00
Filippos Karapetis
b844e4bd5a Implemented visual effects 11 and 13 (inverse of 10 and 12)
svn-id: r32356
2008-05-28 23:17:10 +00:00
Sven Hesse
ab6c82a850 Silenced a signed/unsigned comparison warning
svn-id: r32355
2008-05-28 22:42:15 +00:00
Benjamin Haisch
4afd19ad0f Fixed premature stopping of sounds/voices.
svn-id: r32354
2008-05-28 22:15:10 +00:00
Benjamin Haisch
885fa54f28 Split Object/GameDatabase into engine version specific classes
svn-id: r32349
2008-05-28 20:16:22 +00:00
Benjamin Haisch
df0e072a1b Fixed a crash in LGOP2 when attempting to get a sprite item from an empty array.
svn-id: r32348
2008-05-28 20:12:01 +00:00
Jordi Vilalta Prat
c6e29f4e4d Disable Drascula's and MADE's dummy fallbackDetect.
svn-id: r32297
2008-05-26 18:18:38 +00:00
Kari Salminen
bff1bcd329 Silence MSVC warning C4800.
svn-id: r32288
2008-05-26 12:40:42 +00:00
Benjamin Haisch
23da4c5fa2 Fixed graphics decoding bug in Manhole: N&E
svn-id: r32281
2008-05-26 11:07:18 +00:00
Benjamin Haisch
aa02a6758a - Hopefully fixed 'responsiveness' of the mouse cursor/event handling
- Disabled auto dirty rects which caused major gfx problems
- Added default mouse cursor for Manhole: N&E
- Fixed sound rate for Manhole: N&E
- Don't automatically show mouse cursor when a new cursor was loaded

svn-id: r32279
2008-05-26 07:27:46 +00:00
Benjamin Haisch
365513d9e4 Implemented visual effects 2 and 15
svn-id: r32278
2008-05-26 07:20:23 +00:00
Benjamin Haisch
4074d49844 - Moved event polling from sfPollEvent to runScript
- LGOP2: Fixed problem where Barth's gun was drawn at the wrong position

svn-id: r32205
2008-05-21 10:07:33 +00:00
Benjamin Haisch
529800e172 Removed obsolete comment and code in ScriptInterpreter::dumpScript
svn-id: r32204
2008-05-21 07:16:12 +00:00
Benjamin Haisch
828a217a03 - Implemented "stand-alone" script dumper/disassembler; it can be enabled by defining DUMP_SCRIPTS in script.h and starting with at least debug level 1.
- Commented which script opcodes and extended functions are actually used or not.

svn-id: r32202
2008-05-20 20:00:10 +00:00
Benjamin Haisch
11697c0eb2 Delete animation frames in AnimationResource destructor.
svn-id: r32201
2008-05-20 19:56:49 +00:00
Filippos Karapetis
970f7e7c93 Some updates to the script dumper
svn-id: r32200
2008-05-20 18:56:22 +00:00
Filippos Karapetis
141215136f Documented what screen effects 10 and 12 are doing
svn-id: r32199
2008-05-20 18:30:26 +00:00
Filippos Karapetis
bf52cc2186 Clarification about the weird sound frequencies in PMV videos
svn-id: r32198
2008-05-20 18:20:17 +00:00
Filippos Karapetis
e20abe228d Silenced an MSVC warning
svn-id: r32197
2008-05-20 18:19:32 +00:00
Benjamin Haisch
eb354bbe02 Implemented visual effects 10 and 12
svn-id: r32196
2008-05-20 18:01:26 +00:00
Benjamin Haisch
520af7d4bb RtZ: Fixed a bug where sounds were cut off prematurely.
svn-id: r32188
2008-05-19 21:32:37 +00:00
Torbjörn Andersson
7d28b65172 Removed unused variable.
svn-id: r32187
2008-05-19 21:22:59 +00:00
Benjamin Haisch
cefff90ac6 RtZ: Fixed bug which caused PMV videos to look odd (noticeable in the intro movie) and optimized frame decompression code.
svn-id: r32182
2008-05-19 19:34:55 +00:00
Filippos Karapetis
0c81b70ba3 Rewrote the MADE script dumper, hopefully in a more efficient way
svn-id: r32167
2008-05-18 10:57:58 +00:00
Filippos Karapetis
84610606c1 Slight cleanup and small bugfix for dumpScript()'s cmd_call
svn-id: r32151
2008-05-17 14:47:30 +00:00
Filippos Karapetis
25e7e1999a Initial incomplete version of a MADE script dumper
svn-id: r32150
2008-05-17 13:35:57 +00:00
Filippos Karapetis
2ceb1b2577 Documented screen effects
svn-id: r32148
2008-05-17 10:17:35 +00:00
Filippos Karapetis
66ecacc7c3 Screen mask is now only used for V2 games
svn-id: r32147
2008-05-17 09:06:54 +00:00
Filippos Karapetis
f1b099cb0c Added entries for the unpacked (*.dat) English and German CD versions of RtZ 1.2
svn-id: r32126
2008-05-14 21:10:41 +00:00
Filippos Karapetis
d35600db72 Added Return to Zork German CD version 1.2
Updated comment about *.red and *.dat

svn-id: r32124
2008-05-14 20:24:22 +00:00
Filippos Karapetis
e279d9693a Some comments to opcodes sfGetMusicBeat and sfSetTextRect
svn-id: r32123
2008-05-14 20:12:58 +00:00
Benjamin Haisch
6c1cee1a1d Forgot the makefile, sorry
svn-id: r32107
2008-05-14 11:21:33 +00:00
Benjamin Haisch
a896272b1f Deleting obsolete files
svn-id: r32106
2008-05-14 11:21:09 +00:00
Benjamin Haisch
4a0b936495 Merged the three ScriptFunctionsXXX classes into ScriptFunctions
svn-id: r32105
2008-05-14 11:19:31 +00:00
Benjamin Haisch
0ec51de272 - Added some visual effects (palette fading etc.)
- Moved Screen::getAnimFrameCount directly into o1_GETFRAMECOUNT
- Renamed variables/cleanup

svn-id: r32104
2008-05-14 09:54:15 +00:00
Filippos Karapetis
c3bdf1c75f Removed obsolete file
svn-id: r32101
2008-05-14 07:17:27 +00:00
Filippos Karapetis
3c119e17cb Added a sanity check to o1_LOADCURSOR to prevent LGoP2 from crashing when the save/load menu is opened during character selection
svn-id: r32089
2008-05-13 16:12:37 +00:00
Benjamin Haisch
3db45cc0c8 Implemented savegame saving/loading for LGOP2.
svn-id: r32081
2008-05-13 08:21:28 +00:00
Benjamin Haisch
f03a27747c Hide the mouse cursor while a movie plays.
svn-id: r32080
2008-05-13 08:19:15 +00:00
Benjamin Haisch
16ac1bcebf Changed clipping rectangles to use Common::Rect (thanks to [md5]/thebluegr)
svn-id: r32077
2008-05-12 22:28:52 +00:00
Benjamin Haisch
f54036b6a4 Implemented o1_EXCLUDEAREA for RtZ
svn-id: r32074
2008-05-12 21:47:38 +00:00
Sven Hesse
f833cf4c61 Muting "comparing signed and unsigned values" compiler warning
svn-id: r32072
2008-05-12 20:17:54 +00:00
Benjamin Haisch
9b911cadcd Fixed printTextEx segment fault bug.
svn-id: r32071
2008-05-12 20:14:07 +00:00
Benjamin Haisch
3e133f3a9f Fixed o1_DRAWTEXT in LGOP2
svn-id: r32070
2008-05-12 19:29:46 +00:00
Benjamin Haisch
31a8d984a4 Sanity checks in RtZ: o1_PLAYMUS and o1_STOPMUS
svn-id: r32068
2008-05-12 17:48:56 +00:00
Benjamin Haisch
11e6527674 Implemented o1_ADDMASK and o1_SETMASK for LGOP2
svn-id: r32066
2008-05-12 17:43:33 +00:00
Benjamin Haisch
c3b1b9bf82 Fixed timer resolution/conversion; now the vulture in the first scene of RtZ lands on the sign, and the thunder sound is in sync with the flash screen effect in the Infocom logo screen.
svn-id: r32063
2008-05-12 16:10:13 +00:00
Benjamin Haisch
9e39e7d7a2 - Fixed timers, LGOP2 intro should now play correctly
- Some cleanup in LGOP2 opcodes

svn-id: r32051
2008-05-12 09:49:10 +00:00
Filippos Karapetis
57dfdbc6c8 Added a sanity check to getFrame()
svn-id: r32020
2008-05-11 13:11:01 +00:00
Filippos Karapetis
271ce25823 The backspace key is now working
svn-id: r31969
2008-05-09 19:29:17 +00:00
Filippos Karapetis
e0b9dec766 Implemented o1_CLIPAREA
svn-id: r31968
2008-05-09 16:11:01 +00:00
Filippos Karapetis
10826a29d2 Removed debug output
svn-id: r31967
2008-05-09 16:09:46 +00:00
Filippos Karapetis
3f3ba85bf1 Exit more gracefully when a quit event is triggered
svn-id: r31966
2008-05-09 15:49:38 +00:00
Filippos Karapetis
601f0efdd4 Removed now obsolete FIXME
svn-id: r31964
2008-05-09 12:23:19 +00:00
Benjamin Haisch
b222d0c539 Added workaround for o1_SNDENERGY
svn-id: r31962
2008-05-09 10:56:03 +00:00
Benjamin Haisch
55e4b05b18 - Fixed a bug which sometimes caused crashes when ProjectReader::purgeCache() was called
- Some cleanup

svn-id: r31961
2008-05-09 07:22:22 +00:00
Filippos Karapetis
e6d6281c89 o1_ADDSPRITE is not implemented yet, so throw a warning
svn-id: r31954
2008-05-08 20:33:28 +00:00
Filippos Karapetis
a9b4058ba9 Fixed some game crashes which occurred when ProjectReader::purgeCache() got called:
- MIDI music data is marked to be deleted in o1_STOPMUS now, instead of o1_PLAYMUS. 
- Added a FIXME to Screen::setFont() - purgeCache crashes the game if the active font is deleted

svn-id: r31948
2008-05-08 13:23:02 +00:00
Filippos Karapetis
4f108b76a3 Reverted commit #31774
svn-id: r31947
2008-05-08 13:17:18 +00:00
Filippos Karapetis
b4e9433820 Silenced MSVC warnings about uninitialized variables
svn-id: r31946
2008-05-08 12:20:08 +00:00
Benjamin Haisch
b63ae7dee4 Possibly fixed the sound stuttering in the PMV videos and added frame skipping based on the Gob engine's IMD/VMD player.
svn-id: r31944
2008-05-08 11:17:38 +00:00
Benjamin Haisch
b6d2cf3553 Implemented vertical/horizontal flipping of sprites.
svn-id: r31931
2008-05-07 17:29:46 +00:00
Benjamin Haisch
a7f5150228 - cmd_return now exits the game if it returns from the main function
- Implemented cmd_exit
- PmvPlayer now exits "more gracefully" when the application is closed while playing

svn-id: r31930
2008-05-07 17:28:38 +00:00
Benjamin Haisch
8f9cc2e164 Added patch #1956516: MADE: Fix Save File Names by clone2727 (with some modifications)
svn-id: r31919
2008-05-07 08:25:13 +00:00
Filippos Karapetis
46f1e98688 Fixed RTZ 1.0 game flags and updated copyright
svn-id: r31918
2008-05-07 08:19:36 +00:00
Benjamin Haisch
202e4eb410 Added detection for RtZ CD version 1.0 (thanks to spookypeanut)
svn-id: r31917
2008-05-07 07:15:42 +00:00
Sven Hesse
7595f20e33 Silencing two signess compiler warnings
svn-id: r31897
2008-05-06 15:08:48 +00:00
Benjamin Haisch
9df82055f0 - The Manhole: New and Enhanced is now (partially) playable
- Implemented cmd_objectp
- Changed how the script externals array is set up
- Cleanup

svn-id: r31895
2008-05-06 11:45:23 +00:00
Jordi Vilalta Prat
38a8aa516e Allow static and dynamic plugins to be used at the same time
svn-id: r31888
2008-05-06 03:00:26 +00:00
Kari Salminen
4eb9abe99f Fixed unsigned/signed mismatch warning.
svn-id: r31875
2008-05-05 13:11:34 +00:00
Benjamin Haisch
7191b2c515 Added MIDI playback (which doesn't work yet) and fixed compilation (sorry all)
svn-id: r31873
2008-05-05 12:51:50 +00:00
Benjamin Haisch
b6c7385eb4 - Renamed XmidiResource to GenericResource
- Added MIDI resource type
- Added ScriptFunctionsLgop2 and ScriptFunctionsMhne (for Leather Goddesses of Phobos 2 and The Manhole: New and Enhanced, resp.)
- Many changes for LGOP2 and The Manhole: N&E

Note about the new ScriptFunctions classes:
I copied the ScriptFunctionsRtz class and so duplicated a lot of code. Most of the opcode functions are the same in all games but there might be differences. Once all common opcode functions have been figured out, they'll be moved to a common place (like the ScriptFunctions class).

svn-id: r31871
2008-05-05 10:45:11 +00:00
Sven Hesse
c84b371957 Fixing Fingolfin's commit :P
svn-id: r31830
2008-05-02 16:46:06 +00:00
Max Horn
8da048a468 Fix warnings
svn-id: r31829
2008-05-02 16:41:54 +00:00
Benjamin Haisch
d1ef9aa213 - Added patch #1955698: MADE: Add "The Manhole" Detection
- Added detection for Leather Goddesses of Phobos 2
Note that these two games will definitely not work as expected and will probably crash!

svn-id: r31810
2008-05-02 12:08:06 +00:00
Benjamin Haisch
7509d66caf Implemented savegame loading/saving and sprite clipping
Fixed bug in Screen::printTextEx
Implemented opcodes:
- o1_DRAWTEXT
- o1_DRAWMENU
- o1_MENUCOUNT
- o1_SAVEGAME
- o1_LOADGAME
- o1_GAMENAME

svn-id: r31794
2008-04-30 20:36:19 +00:00
Benjamin Haisch
9605e28f7b Fixed bug in o1_READMENU where an incorrect string length was returned.
Also fixed o1_EVENT to return the correct event number when a key was pressed and removed the debug code there.

svn-id: r31781
2008-04-29 21:56:13 +00:00
Benjamin Haisch
e0b964b527 Turned printf into warning.
svn-id: r31780
2008-04-29 21:52:26 +00:00
Benjamin Haisch
5975956f2c Fixed possible endian problems in getObjectPropertyPtr.
svn-id: r31779
2008-04-29 21:51:55 +00:00
Max Horn
01dcd766af Fix warning
svn-id: r31778
2008-04-29 21:27:16 +00:00
Filippos Karapetis
14523bd3bb Fixed crash that occurred when skipping a video while MIDI music was active
svn-id: r31775
2008-04-29 15:51:22 +00:00
Filippos Karapetis
42412ad2c6 Fixed crash that occurred when Ms Peeper's test started
svn-id: r31774
2008-04-29 15:41:12 +00:00
Benjamin Haisch
fc6fe46951 Implemented text drawing and cleanup.
svn-id: r31756
2008-04-28 10:56:21 +00:00
Benjamin Haisch
3dc6263b17 Started work on text drawing code.
svn-id: r31719
2008-04-25 11:20:43 +00:00
Benjamin Haisch
134762be38 Fixed cmd_rand and cmd_randomize and some cleanup.
svn-id: r31718
2008-04-25 11:07:56 +00:00
Benjamin Haisch
5540ef2d67 Added FontResource type
svn-id: r31717
2008-04-25 11:05:56 +00:00
Benjamin Haisch
4bcf3ab823 (Poissbly) fixed sound glitches due to a non-implemented decoding variant.
svn-id: r31716
2008-04-25 11:02:37 +00:00
Filippos Karapetis
2172eee072 Center videos to screen
svn-id: r31715
2008-04-25 10:43:47 +00:00
Filippos Karapetis
9e0cd64629 Implemented cmd_rand() and cmd_randomize()
svn-id: r31714
2008-04-25 07:36:38 +00:00
Joost Peters
c622414022 add detection entry for 1.2 CD version.
the md5 of rtzcd.dat is identical to the existing entry, so no additional "unpacked" entry was added.

svn-id: r31713
2008-04-24 23:11:34 +00:00
Filippos Karapetis
673784e6ef Typo
svn-id: r31712
2008-04-24 23:07:22 +00:00
Filippos Karapetis
8b7486b5ca Implemented opcodes o1_DROPSHADOW, o1_TEXTCOLOR, o1_OUTLINE. Added some initial code for opcode o1_TEXTRECT
svn-id: r31711
2008-04-24 23:06:21 +00:00
Filippos Karapetis
b861f38d10 Some initial code for font loading
Implemented opcode o1_LOADANIM

svn-id: r31698
2008-04-24 18:45:11 +00:00
Torbjörn Andersson
dd1ae2dd4f Fixed warning.
svn-id: r31697
2008-04-24 17:50:15 +00:00