Commit Graph

330 Commits

Author SHA1 Message Date
Paul Gilbert
0ac1eb82c6 M4: Changed debug calls to debugCN since they all have newlines
svn-id: r54047
2010-11-03 09:44:03 +00:00
Max Horn
8047f79a46 M4: Convert last few printfs to debug
svn-id: r54039
2010-11-02 09:50:29 +00:00
Max Horn
7cf7b198ad M4: Remove redundant fflush calls
svn-id: r54038
2010-11-02 09:50:14 +00:00
Paul Gilbert
97a0c281eb M4: Converted all printf's to debug
svn-id: r54035
2010-11-02 00:51:12 +00:00
Paul Gilbert
274fbd028d M4: Added function pointers to the the script engine data map list
svn-id: r54034
2010-11-02 00:15:18 +00:00
Paul Gilbert
997625c3b3 M4: Reworked dumpFile to use Common::DumpFile
svn-id: r54033
2010-11-02 00:13:04 +00:00
Max Horn
a984fb17c2 GUI: Add GCC_PRINTF to GUI::Debugger::DebugPrintf & fix resulting warnings
svn-id: r54007
2010-11-01 16:03:35 +00:00
Max Horn
334173d333 M4: Remove unused getter method MadsM4Engine::system()
svn-id: r53959
2010-10-30 21:26:13 +00:00
Max Horn
c07e58ba06 M4: Disable code using FILE, fopen, etc. and add explantory FIXME
svn-id: r53958
2010-10-30 21:25:52 +00:00
Filippos Karapetis
e7ff1574ef M4: Fixed OP_NOT and OP_COMP behavior again (thanks wjp)
svn-id: r53505
2010-10-15 15:51:59 +00:00
Filippos Karapetis
c2e08538ee M4: Fixed code analysis warnings - bug #3087845
svn-id: r53500
2010-10-15 15:05:23 +00:00
Max Horn
4ccce19876 ENGINES: Enhance namespace comments a bit
svn-id: r53484
2010-10-15 12:48:19 +00:00
Paul Gilbert
53a5ba21ab M4: NULL terminate after a strncpy
svn-id: r52794
2010-09-18 12:08:59 +00:00
Paul Gilbert
9cab0a5cfe M4: Added missing breaks to switch statement
svn-id: r52793
2010-09-18 12:02:52 +00:00
Matthew Hoops
b1532eca9f M4: Silence gcc warning
Original warning: "format not a string literal and no format arguments"

svn-id: r52388
2010-08-25 13:31:14 +00:00
Paul Gilbert
4395e75aef M4: Fixes for compiler errors
svn-id: r52365
2010-08-25 06:55:11 +00:00
Paul Gilbert
212479ab79 M4: Implementation of script engine
svn-id: r52364
2010-08-25 06:42:54 +00:00
Eugene Sandulenko
ee23fe34b0 M4: fix warnings
svn-id: r52148
2010-08-17 11:01:20 +00:00
Paul Gilbert
28de229b51 M4: Added further code fragments to enable player to move again
svn-id: r51462
2010-07-29 11:41:51 +00:00
Paul Gilbert
fd804eb44b M4: Further work done on the setup and starting of actions
svn-id: r51461
2010-07-29 11:04:54 +00:00
Paul Gilbert
0191f8fd71 M4: Bugfixes for depth ordering to fix the Z order of on-screen objects
svn-id: r51239
2010-07-24 08:08:19 +00:00
Paul Gilbert
ec460ca2ca M4: Implemented lots of support code for pre-action handling
svn-id: r51235
2010-07-24 05:56:06 +00:00
Paul Gilbert
cd66b7d11b M4: Enhanced the show_codes debug command to also show a scene's walking points
svn-id: r51230
2010-07-24 01:07:04 +00:00
Paul Gilbert
b062b413aa Removed some old deprecated code that was drawing the status text a second time
svn-id: r51201
2010-07-23 10:53:21 +00:00
Paul Gilbert
42851e047f Lots of action related fields added; scroll over default action is now displayed on-screen
svn-id: r51200
2010-07-23 09:49:40 +00:00
Johannes Schickel
ddb364412e Fix use of "&&" instead of "&" for bit masking. (This looks much more sensible at least!)
svn-id: r50953
2010-07-16 23:30:50 +00:00
Paul Gilbert
379a55f089 Implemented path-finding logic for accurate player movement
svn-id: r50936
2010-07-16 13:15:18 +00:00
Paul Gilbert
3473e8c6da Clarified variable used for scene node loading, and added in extra blank nodes for player movement like the original game does
svn-id: r50932
2010-07-16 08:03:26 +00:00
Paul Gilbert
20a0ad6833 Bugfixes to walking code. Rex can now walk about on-screen
svn-id: r50914
2010-07-15 12:37:46 +00:00
Paul Gilbert
4366262511 Implemented the original game cheat key for displaying the current mouse cursor position
svn-id: r50913
2010-07-15 10:51:11 +00:00
Paul Gilbert
13eb510baf Bugfix to the SqrtF16 function to work correctly
svn-id: r50912
2010-07-15 10:00:32 +00:00
Matthew Hoops
ec65befa3c Silence gcc warning.
svn-id: r50883
2010-07-14 14:05:08 +00:00
Paul Gilbert
f796fd6cf3 Preliminary implementation of lots of code related to player movement
svn-id: r50882
2010-07-14 11:55:15 +00:00
Torbjörn Andersson
6760127300 The new buffer has to be one byte longer than the length of the 'buffer'
string. (Error spotted by cppcheck.) Also, there's no need to use sprintf()
where a strcpy() will do just as well. (It's tempting, but probably not
appropriate, to use strdup(). I'm guessing the buffer *has* to be allocated
with 'new'.)

svn-id: r50872
2010-07-14 04:42:27 +00:00
Paul Gilbert
dd5f6f13e2 Bugfixes and changed field names in the player class to be more explanatory. Implemented Ctrl-T to turn the player - the original game used Ctrl-U, but this is reserved by ScummVM for toggle Mute.
svn-id: r50734
2010-07-07 11:02:11 +00:00
Paul Gilbert
c89fe5f6d5 Added support for idle character animations
svn-id: r50723
2010-07-06 11:33:09 +00:00
Paul Gilbert
3f7dc9e0e2 Added extra initialisation code for the game's global variables list
svn-id: r50722
2010-07-06 11:32:10 +00:00
Paul Gilbert
660ffc194d Bugfixes for new player code - Rex is now correctly positioned when the player manager takes over from the wakeup animation sequence
svn-id: r50669
2010-07-05 09:53:10 +00:00
Paul Gilbert
587ba8a90e Implemented more of the support methods for player display
svn-id: r50644
2010-07-04 12:45:33 +00:00
Paul Gilbert
10e7581fe1 Added support for horizontally flipped foreground sprites, which are indicated by setting the high bit of frame numbers
svn-id: r50638
2010-07-04 00:38:16 +00:00
Paul Gilbert
88d1155c5e Implemented necessary logic for the abort timer/action code, which allows the player manager to be correctly activated when the 'getting up' animation finishes
svn-id: r50622
2010-07-03 12:49:42 +00:00
Paul Gilbert
99939109d7 Adding the beginnings of a player control class, as well as various changes to the other classes to support it
svn-id: r50620
2010-07-03 11:50:42 +00:00
Filippos Karapetis
7fa2664828 Some slight fixes so that Phantom/Dragon start again
svn-id: r50598
2010-07-02 14:39:13 +00:00
Paul Gilbert
6c6d8b3fb3 Introduced a hash for storing all the miscellaneous data values, and used it to more properly implement display of all the wakeup text in the first room
svn-id: r50544
2010-07-01 12:01:17 +00:00
Paul Gilbert
dcba035912 Corrected font display to properly use both colour indexes
svn-id: r50526
2010-06-30 10:42:34 +00:00
Paul Gilbert
8de5715560 Removed deprecated destAdjust parameters from the frame drawing code
svn-id: r50524
2010-06-30 10:17:54 +00:00
Paul Gilbert
0c283ed197 Replaced Y offset from various drawing routines in favour of a viewport sub-surface - this will make it easier to clip sprites to within the drawable area
svn-id: r50523
2010-06-30 10:13:20 +00:00
Paul Gilbert
c96d44d928 Added code to properly detect when an animation sequence is complete
svn-id: r50493
2010-06-29 11:51:05 +00:00
Paul Gilbert
5f2c184e4e Changed reading of sprite frame depths to signed bytes - this fixes the problem with the Slippery Pig not showing up in the landing scene in the intro sequence
svn-id: r50492
2010-06-29 11:26:48 +00:00
Paul Gilbert
c1176498f1 Removed the old hardcoded calls to loadDSRFile
svn-id: r50491
2010-06-29 11:15:21 +00:00
Paul Gilbert
841356ac80 Added loading of the correct DSR file at the start of each animation scene
svn-id: r50490
2010-06-29 11:09:33 +00:00
Paul Gilbert
eb4a48bfd9 Reserved palette ranges used by on-screen messages
svn-id: r50489
2010-06-29 10:52:59 +00:00
Paul Gilbert
b91ba9c56e Bugfixes to reading in the animation font name correctly, as well as converted some Common::String usage to char buffers to fix incorrect String usage
svn-id: r50488
2010-06-29 10:40:24 +00:00
Paul Gilbert
6063a9cba3 Bugfix to properly erase text messages when they expire
svn-id: r50432
2010-06-28 11:40:39 +00:00
Paul Gilbert
c7682f5117 Added proper conversion of message RGB colour values
svn-id: r50371
2010-06-27 06:35:32 +00:00
Paul Gilbert
9a8683ac65 Added accidentally deleted line
svn-id: r50369
2010-06-27 05:58:11 +00:00
Paul Gilbert
965cdb6fbf Several bugfixes to the loading, display, and digital sound playing of messages during cutscenes
svn-id: r50366
2010-06-27 05:18:21 +00:00
Paul Gilbert
c922af06c2 Centralised the update logic for the various system lists into the MadsView class
svn-id: r50365
2010-06-27 05:17:40 +00:00
Filippos Karapetis
783b71d585 Load the correct speech file pack for the intro of Rex Nebular
svn-id: r50321
2010-06-26 13:28:22 +00:00
Paul Gilbert
8eb206b6b9 Bugfix to correctly handle transparency when rendering scaled sprites
svn-id: r50314
2010-06-26 11:31:04 +00:00
Paul Gilbert
d7fe988251 Bugfix to dirty area handling to prevent creation of invalid rects
svn-id: r50312
2010-06-26 11:14:38 +00:00
Paul Gilbert
70e4a8605b Minor bugfix for correctly positioning where background sprites are drawn
svn-id: r50298
2010-06-26 00:37:44 +00:00
Paul Gilbert
ab261facee Added extra validation for sprite decoding
svn-id: r50297
2010-06-26 00:36:43 +00:00
Paul Gilbert
e328bd8f7f Added support for Fab compressed sprite sets
svn-id: r50295
2010-06-25 23:43:07 +00:00
Florian Kagerer
c35e350531 AUDIO: get rid of MDT_PREFER_MIDI since it should be sufficient to either select MDT_PREFER_MT32 or MDT_PREFER_GM
svn-id: r50288
2010-06-25 20:51:57 +00:00
Paul Gilbert
aa0c86e755 Bugfix for correctly decoding 2-bit encoded depth surfaces
svn-id: r50206
2010-06-24 08:17:46 +00:00
Paul Gilbert
cd8bec1ae2 Corrected rendering of sprites into a scene background
svn-id: r50205
2010-06-24 08:16:40 +00:00
Paul Gilbert
70e9df9566 Corrected incorrect variable name change
svn-id: r50204
2010-06-24 08:15:31 +00:00
Matthew Hoops
3838197ac1 Silence gcc warnings.
svn-id: r50197
2010-06-24 01:29:46 +00:00
Filippos Karapetis
3cdd841192 Made a warning more verbose
svn-id: r50177
2010-06-23 11:32:36 +00:00
Paul Gilbert
fedc060605 Corrected newly added palette conversion warning
svn-id: r50176
2010-06-23 11:28:53 +00:00
Filippos Karapetis
3569b49662 Changed some asserts to warnings
svn-id: r50175
2010-06-23 11:22:44 +00:00
Paul Gilbert
717005bf25 Rewrote the MADS animation frame decoder to better guard against invalid data causing memory overruns
svn-id: r50174
2010-06-23 10:11:01 +00:00
Max Horn
bbad3f333a Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
2010-06-21 21:36:36 +00:00
Paul Gilbert
110e03c87b Removed unused variables
svn-id: r50071
2010-06-20 07:06:22 +00:00
Paul Gilbert
fcdb7807a4 Implemented explicit transparency index support - the previous hardcoded index of 0 wasn't correct, since some sprites need that index
svn-id: r50070
2010-06-20 07:04:58 +00:00
Paul Gilbert
d6cd656f15 Added support for the alternate encoding for depth surfaces
svn-id: r50069
2010-06-20 05:25:34 +00:00
Filippos Karapetis
cf86b44793 M4/MADS: Some slight tweaks to the animation message chunks
svn-id: r49927
2010-06-17 12:13:27 +00:00
Torbjörn Andersson
f10b1a23f8 Fixed a few cppcheck errors.
svn-id: r49919
2010-06-17 05:40:48 +00:00
Paul Gilbert
deb907de63 Bugfixes to depth processing that was causing the 'Microprose Design Group' message not to appear in the first intro scene
svn-id: r49801
2010-06-15 11:19:32 +00:00
Eugene Sandulenko
44a39ffbc6 AdvancedDetector: Add new parameter directoryGlobs.
Without this parameter mass detection gave tons of false alarms.
Use globbing for narrowing down the depth search.

svn-id: r49788
2010-06-15 10:59:23 +00:00
Eugene Sandulenko
4d517ed0e9 Extended advancedDetector with depth parameter.
Now AD can search nested directories. By default it is turned off,
but there is new parameter to ADParameters struct. Usually value
of 2 is good enough for all purposes.

svn-id: r49653
2010-06-14 14:50:23 +00:00
Paul Gilbert
58487da20b Moved the actionNouns array from the scene to the globals object, since the scene will no longer be active during animation sequences
svn-id: r49646
2010-06-14 06:33:24 +00:00
Paul Gilbert
6fb462e6b0 Further memory leak fixes reported by Valgrind
svn-id: r49644
2010-06-14 05:27:54 +00:00
Paul Gilbert
466a151744 Fixes for memory leaks reported by Valgrind
svn-id: r49643
2010-06-14 04:20:57 +00:00
Paul Gilbert
ae0a7a6675 Added logic for animation sequences specifying a starting animation frame number
svn-id: r49642
2010-06-14 03:15:58 +00:00
Paul Gilbert
4c6d276ce9 Bugfixes for correct moving of the screen viewport within an animation
svn-id: r49629
2010-06-13 10:50:54 +00:00
Paul Gilbert
02ed880180 Added logic for handling the rate of animation background scrolling, and miscellaneous extra fields
svn-id: r49627
2010-06-13 08:53:06 +00:00
Paul Gilbert
2625c9b20b Applied fix for checking unallocated channels for All Notes Off MIDI command
svn-id: r49613
2010-06-12 23:53:26 +00:00
Paul Gilbert
277a700e67 Reimplemented the scaled sprite drawing logic. The first introduction sequence scene now displays correctly
svn-id: r49604
2010-06-12 11:32:28 +00:00
Paul Gilbert
e572267a05 Bugfixes to correctly scroll the background during animations
svn-id: r49596
2010-06-11 11:08:37 +00:00
Paul Gilbert
ef34896dce Clarified various incorrectly named parameters, and fixed code for loading the correct art file backgrounds when running animation sequences
svn-id: r49595
2010-06-11 11:03:51 +00:00
Paul Gilbert
4d87342847 Added extra code and support methods for properly clearing up backgrounds and used sprites when an animation sequence ends
svn-id: r49566
2010-06-10 10:20:25 +00:00
Paul Gilbert
62402e743e Added extra positioning and dummy depths surface so that the introduction cutscene now starts up
svn-id: r49480
2010-06-07 10:17:44 +00:00
Paul Gilbert
b2678ddf52 Changed a create call to setSize to fix compiler error
svn-id: r49479
2010-06-07 09:35:59 +00:00
Paul Gilbert
34f7c05e4d Initial conversion of the AnimviewView class to use the expanded MadsAnimation class, rather than the older AAFile skeleton class
svn-id: r49478
2010-06-07 09:19:42 +00:00
Paul Gilbert
1572524b64 Moved destruction of globals and resource manager to common M4 engine base class - this fixes a bug where resources were still being tossed after the resource manager was destroyed
svn-id: r49476
2010-06-07 09:06:06 +00:00
Paul Gilbert
3efec5720d Bugfixes for correct positioning of opening animation
svn-id: r49448
2010-06-06 06:46:29 +00:00
Paul Gilbert
b9065aa2d2 Various bugfixes to the animation code - first Rex animation now plays, albeit in the wrong place
svn-id: r49437
2010-06-05 04:18:23 +00:00
Paul Gilbert
5686c251f0 Added missing animation initialisation code
svn-id: r49436
2010-06-05 01:55:17 +00:00