127 Commits

Author SHA1 Message Date
Sven Hesse
4415953393 GOB: Add constants for different surfaces/sprites
Add
static const int kFrontSurface   = 20;
static const int kBackSurface    = 21;
static const int kAnimSurface    = 22;
static const int kCursorSurface  = 23;
static const int kCaptureSurface = 30;
to class Draw and substitute the raw numbers in other files with
those aliases, for readability.

svn-id: r51852
2010-08-08 00:35:18 +00:00
David Turner
59f4c903a6 GOB : Adding workaround for Bug #3018918 UOTODDV Reload Goblin Stuck Issue.
This was present in the original interpreter.

svn-id: r50480
2010-06-29 03:53:06 +00:00
Arnaud Boutonné
9a3ef9b8e1 Initialize properly paramCount in gob1. This fixes several valgrind errors, and the unknown opcodes are now skipped as expected. (related to bug #3018918, only partially solved)
svn-id: r50209
2010-06-24 11:50:25 +00:00
Johannes Schickel
cbbb78d9f2 Enforce conversion formatting on pointer casts in the DEV code.
svn-id: r49068
2010-05-17 22:46:53 +00:00
Arnaud Boutonné
816e318134 Fascination: - Suppress the recently added oFascin_keyFunc, replace it with a check in o1_keyFunc. This fixes the animation speed regression
- Rename Amiga-specific protracker functions
- Rewrite winDecomp.

svn-id: r48011
2010-02-08 23:12:42 +00:00
Sven Hesse
d4949d03d4 Minor style-related changes
svn-id: r47839
2010-02-03 03:25:50 +00:00
Arnaud Boutonné
705910f122 - Fixed openWin, saveWin, restoreWin, closeWin, winMove and activeWin, so that windows are AT LEAST working
- Suppressed dirty traces. This has to be reviewed/rewritten. It looks better without.
- Add initialization of two variables in one exceptional case in winDraw. (Thanks Cyx)

svn-id: r47616
2010-01-27 23:39:16 +00:00
Max Horn
8ba75fc522 Fix code formatting (esp. 'if(' -> 'if (' etc., but also indention and other things)
svn-id: r44495
2009-09-30 16:16:53 +00:00
Sven Hesse
081fa85b14 Playtoons uses a variable space that exceeds 32767 bytes. Changing a few variables to unsigned makes the construction mode not crash anymore (though it now hangs in a loop)
svn-id: r43713
2009-08-24 22:37:09 +00:00
Sven Hesse
550d9cf39d More alignment-related changes
svn-id: r42858
2009-07-28 16:28:32 +00:00
Sven Hesse
edab6f2d7f Added a workaround to fix the Last Dynasty video greenness for now
svn-id: r42766
2009-07-25 16:07:29 +00:00
Sven Hesse
3823ae285f Giving Font its own real class
svn-id: r42277
2009-07-09 02:54:10 +00:00
Sven Hesse
daaba72677 Adding a workaround for an invalid expression in Gob1 EGA
svn-id: r42135
2009-07-05 12:52:14 +00:00
Sven Hesse
18550c1314 Moving the "Collision" stuff to Hotspots in hotspots.cpp/.h
svn-id: r42123
2009-07-05 11:27:54 +00:00
Sven Hesse
704895b35f Commenting prepareStr a bit and renaming it to cleanupStr
svn-id: r42120
2009-07-05 11:26:42 +00:00
Lars Persson
62acda5fdb Use MIN with correct template parameter.
svn-id: r42008
2009-07-01 20:11:44 +00:00
Sven Hesse
d03dc08b64 Wrapping resources (out of TOT, EXT, IM? and EX? files) loading into its own class
svn-id: r41839
2009-06-24 21:49:37 +00:00
Sven Hesse
c3aafec1fb Renaming parse.h and parse.cpp to expression.h and expression.cpp
svn-id: r41773
2009-06-22 16:30:35 +00:00
Sven Hesse
7d005f62c3 Putting evalBoolResult() and evalExpr() into Script
svn-id: r41760
2009-06-22 10:29:32 +00:00
Sven Hesse
7fbad08fd1 Implemented a call stack
svn-id: r41754
2009-06-22 10:14:18 +00:00
Sven Hesse
962fc19b57 Encapsulating script file access
svn-id: r41753
2009-06-22 10:13:37 +00:00
Sven Hesse
1dafcabb43 Encapsulated access to _resultStr
svn-id: r41751
2009-06-22 10:11:53 +00:00
Sven Hesse
f6717373b5 Encapsulated access to Parse::_resultInt
svn-id: r41750
2009-06-22 10:11:25 +00:00
Sven Hesse
d4855ff819 Splitting an ADLPlayer and MDYPlayer from the AdLib class
svn-id: r41633
2009-06-18 13:27:35 +00:00
Sven Hesse
6c47f9f4f8 Changed opcodeGob to be functor-based
svn-id: r41603
2009-06-17 04:16:51 +00:00
Sven Hesse
8615c57791 Changed opcodeFunc to be functor-based
svn-id: r41602
2009-06-17 04:16:21 +00:00
Sven Hesse
25c92dfdef Changed opcodeDraw to be functor-based
svn-id: r41601
2009-06-17 04:15:45 +00:00
Sven Hesse
434be5c65a Renamed _inter_resStr to _resultStr
svn-id: r41575
2009-06-15 23:11:29 +00:00
Sven Hesse
1b67620d99 Renaming _inter_resVal to _resultInt
svn-id: r41574
2009-06-15 23:11:08 +00:00
Sven Hesse
67a9ff7dd3 Moving _inter_resVal and _inter_resStr from Global to Parse
svn-id: r41573
2009-06-15 23:10:51 +00:00
Sven Hesse
f6ca65206f Renaming some variables in o1_assign() and o2_assign() to mirror the structure in o6_assign()
svn-id: r41569
2009-06-15 23:09:37 +00:00
Sven Hesse
190dd0d077 Using the TYPE_ enum where applicable
svn-id: r41568
2009-06-15 23:09:23 +00:00
Sven Hesse
42007f9d04 Propagating variable name changes
svn-id: r41565
2009-06-15 23:08:28 +00:00
Sven Hesse
64a920d52f Renamed the evaluateStore opcodes to assign, because that's what they are
svn-id: r41312
2009-06-06 23:39:58 +00:00
Max Horn
3d3da173b0 GOB: Turned _spritesArray into a Common::Array (of fixed size) to detect out-of-bounds access to it (since access is controlled by scripts, this could (and does :/) easily happen. Also removed an obsolete swap() method, and fixed one case where _spritesArray was indeed accessed out of bounds
svn-id: r41305
2009-06-06 21:37:30 +00:00
Max Horn
0989bb0b90 GOB: Got rid of class ReferenceCounter; changed SurfaceDesc::Ptr to SurfaceDescPtr (a Common::SharedPtr); and changed many SurfaceDesc pointers to references
svn-id: r41299
2009-06-06 20:03:13 +00:00
Max Horn
400d2b10af GOB: Replaced many uses of strdupcpy by Common::String
svn-id: r41077
2009-05-31 16:59:45 +00:00
Sven Hesse
1656f69183 Replacing NULL with 0, since that's normally the C++-way
svn-id: r41059
2009-05-31 03:32:16 +00:00
Sven Hesse
896df6daf3 - A new save system for the GobEngine, one that is not fundamentally broken and is versioned. Unfortunately, this invalidates most save games created on big-endian machines, since endian-issues was a main problem with the old system
- Removed the now superfluous variables sizes

svn-id: r41056
2009-05-31 02:15:43 +00:00
Max Horn
d5da63c496 atol -> atoi
svn-id: r41003
2009-05-29 14:39:10 +00:00
Sven Hesse
10b1b28610 Splitting a few helper functions out of gob.h
svn-id: r40765
2009-05-21 17:12:33 +00:00
Arnaud Boutonné
ee92913683 Patch #2725859 : Added some MD5 to the gob engine, modified the way the first STK and TOT is declared, added inter and draw skeleton for Fascination
svn-id: r40059
2009-04-21 21:44:37 +00:00
Max Horn
05b4370c21 Fix for bug #2664460: Various SeekableReadStream::seek() implementations (as well as our unit tests, ouch) handled SEEK_END incorrectly (using -offset instead of offset), contrary to what the docs said and what fseek does. Hopefully I found and fixed all affected parts, but still watch out for regressions
svn-id: r39135
2009-03-05 20:37:53 +00:00
Sven Hesse
f825ccd63f Script fix. Magnifier, Memory and Save/Load, while still not working correctly, don't crash the game anymore
svn-id: r35385
2008-12-15 16:01:39 +00:00
Sven Hesse
5f8323bd50 Plugging leaks
svn-id: r35355
2008-12-14 04:33:28 +00:00
Sven Hesse
4ec3826080 Working (minus text) menu in Urban Runner
svn-id: r35310
2008-12-12 02:44:34 +00:00
Sven Hesse
19146fe032 Working cursor in Urban Runner
svn-id: r35309
2008-12-12 00:10:39 +00:00
Sven Hesse
c65886a3ea Changing the Urban Runner sprite drawer to work more correctly. It does use YUV data, but I can use the ditherer there
svn-id: r35308
2008-12-11 21:57:47 +00:00
Sven Hesse
9a788d8bf3 Some dummy changes for Urban Runner
svn-id: r35289
2008-12-09 14:55:21 +00:00
Max Horn
9b160804ab Renamed Engine::quit to Engine::shouldQuit (previously, it was easily confused with Engine::quitGame); also cleaned up engine.h a bit
svn-id: r34700
2008-09-30 12:27:38 +00:00