Nicola Mettifogo
6398e56d09
Added midi support to BRA. So far music starts, but related script commands haven't been implemented yet.
...
svn-id: r39397
2009-03-14 17:02:28 +00:00
Nicola Mettifogo
33a8fe7a7e
Initialize and save zones flags and follower position when a location switch occurs.
...
svn-id: r39064
2009-03-02 08:36:42 +00:00
Nicola Mettifogo
44906f574f
The engine has now to build the drawing list for the graphic department, instead of setting visibility flags; the new field _prog has been added to GfxObj to help sorting the list.
...
The outcome is that cleaning up unused resources on location switches is now easier to manage, and less error prone.
svn-id: r38928
2009-02-27 08:56:19 +00:00
Nicola Mettifogo
88efc8603e
Removed null*Ptr dummy objects, using SharedPtr's reset method to null pointers instead.
...
svn-id: r38897
2009-02-26 10:44:01 +00:00
Nicola Mettifogo
93666ef53c
Updated all for(;;) loops to use prefix increment on iterators.
...
svn-id: r38876
2009-02-25 08:53:58 +00:00
Nicola Mettifogo
6334125d1c
Implemented follower support, except that:
...
* follower is forgotten when location changes (see freeLocation)
* the final walking frame is screwed
svn-id: r38838
2009-02-24 11:20:45 +00:00
Nicola Mettifogo
e3afa772e2
Cleanup.
...
svn-id: r38817
2009-02-23 12:17:25 +00:00
Nicola Mettifogo
d1b71335d6
Fixed support for walking zones in BRA:
...
* patches are not applied if the zone is not visible when loading
* when applying a patch, always overwrite the existing data instead of OR'ing
svn-id: r36209
2009-02-03 10:42:27 +00:00
Nicola Mettifogo
e5d75d1f7b
Fixed regression from revision 35765. Mask and path patches were destroyed before getting a chance to be used.
...
svn-id: r35835
2009-01-12 13:14:09 +00:00
Nicola Mettifogo
f1ad8b6934
Extended PathBuffer to support BRA.
...
svn-id: r35766
2009-01-07 08:16:18 +00:00
Nicola Mettifogo
21fae9d029
* moved more mask management to BackgroundInfo
...
* simplified mask management for client code
* reduced the clutter into graphics.h by moving the implementations of BackgroundInfo, MaskBuffer and PathBuffer to graphics.cpp
* preparation for the full implementation of BRA's PathBuffer
svn-id: r35765
2009-01-07 07:35:11 +00:00
Nicola Mettifogo
f2b495ba2d
Implemented counters in BRA. Only valid answer options are shown, and counter calculations in scripts are performed.
...
svn-id: r35723
2009-01-04 14:23:20 +00:00
Nicola Mettifogo
b2d7ae871b
Dropped the script preprocessor introduced to fix the broken scripts. The parser has evolved in the meantime and can deal with it accordingly.
...
svn-id: r35700
2009-01-03 14:03:12 +00:00
Nicola Mettifogo
025b2a93e9
Moved mask creation/handling to Gfx.
...
svn-id: r35447
2008-12-20 08:15:09 +00:00
Nicola Mettifogo
774773b7cd
Reduced code duplication when manipulating Animations, and cleanup.
...
svn-id: r35408
2008-12-17 11:15:47 +00:00
Nicola Mettifogo
e98bc7e402
Removed some unused code.
...
svn-id: r35357
2008-12-14 10:08:31 +00:00
Nicola Mettifogo
3eeece6a25
* cleanup
...
* moved find routines from Parallaction to Location
svn-id: r34940
2008-11-08 15:02:19 +00:00
Nicola Mettifogo
fc4256ca85
Fixed error in parsing.
...
svn-id: r34093
2008-08-22 06:32:12 +00:00
Nicola Mettifogo
7891e5afce
Implemented raster operation for masks and postponed blitting of zones after everything in the location has been loaded. This fixes the remaining problems with animations not being masked by items.
...
svn-id: r33903
2008-08-15 15:08:08 +00:00
Nicola Mettifogo
05a021fd95
Added routines to load and handle item masks: animation are now correctly hidden when they are behind any object. The masks of items that are not explicitly activated (even if visible) still are handled (e.g. the crown in the museum is not visible in the foreground).
...
svn-id: r33900
2008-08-15 14:25:43 +00:00
Nicola Mettifogo
22eaffcb34
Updated layer calculation: animations are now hidden properly by background elements (but not items yet).
...
svn-id: r33894
2008-08-15 08:44:41 +00:00
Nicola Mettifogo
0606fef24e
Made coordinates and frame number protected into Zone and Animation, and changed client code to use get/set. This will allow various simplifications (e.g. when calculating Z), and is a step towards correct handling of interactive zones of Zone/Animation in BRA.
...
svn-id: r33892
2008-08-15 04:30:45 +00:00
Nicola Mettifogo
c70d09bc26
Made scripts access Animation fields via accessors and mutators, instead of using raw pointers.
...
svn-id: r33891
2008-08-15 03:59:45 +00:00
Nicola Mettifogo
2679f6ce7a
Disabled lip syncing code in BRA, since I couldn't find any scripts actually using it. Some warnings have been added as a sentinel.
...
svn-id: r33890
2008-08-15 03:36:01 +00:00
Nicola Mettifogo
ea2a2cbb7c
Simplified handling of script variables (especially locals).
...
svn-id: r33889
2008-08-15 02:52:42 +00:00
Nicola Mettifogo
86079c20f5
Fixed issues detected by DrMcCoy's obnoxious compiler. ;)
...
svn-id: r33511
2008-08-02 02:43:05 +00:00
Nicola Mettifogo
15aada52c4
* Added a preprocessor to deal with the crappy location scripts in BRA.
...
* Added some comments on how the parser and related code should be changed to make things smoother.
svn-id: r33509
2008-08-02 02:24:36 +00:00
Nicola Mettifogo
f5b7004fae
* Removed references to the current _backgroundInfo from parser code.
...
* Re-enabled masks (in BRA DOS).
svn-id: r33474
2008-07-31 15:15:42 +00:00
Nicola Mettifogo
6ed4beb1bf
Made changing of background more flexible, in that the engine can now configure its BackgroundInfo before passing it to Gfx.
...
svn-id: r33469
2008-07-31 12:50:43 +00:00
Nicola Mettifogo
591973c827
Changed Gfx::_backgroundInfo to be a pointer. This temporarily kills all z-buffering.
...
svn-id: r33468
2008-07-31 12:26:12 +00:00
Nicola Mettifogo
f4ef55a2e5
Tiny readability aid for parser code.
...
svn-id: r33369
2008-07-28 11:47:03 +00:00
Travis Howell
b5a7735ffc
Correct character name set by character location parser.
...
svn-id: r33361
2008-07-28 08:44:14 +00:00
Nicola Mettifogo
aee1284678
BRA now parses path data from the scripts.
...
svn-id: r33295
2008-07-26 02:09:50 +00:00
Eugene Sandulenko
de09845319
Fix for bug #2008054 : Parallaction engine doesn't compile under MSVC9
...
svn-id: r32879
2008-07-03 08:44:29 +00:00
Nicola Mettifogo
73832f2edd
* Implemented character change opcodes in BRA
...
* Fixed loading of dialogue characters in BRA
svn-id: r32529
2008-06-04 09:07:55 +00:00
Nicola Mettifogo
22d63345e3
Got rid of the static arrays for initialization of parsers and exec opcodes, to make returning to launcher easier. The code has been borrowed by Kyra, after suggestion by LordHoto.
...
svn-id: r32465
2008-06-01 14:05:39 +00:00
Max Horn
6e3c92e239
Renamed some parallaction member vars to have a leading underscore (besides being part of our code formatting conventions, this fixes various name clash warnings)
...
svn-id: r32041
2008-05-11 22:08:32 +00:00
Nicola Mettifogo
1320ab610b
Cleanup of parsing code.
...
svn-id: r31999
2008-05-11 08:55:16 +00:00
Nicola Mettifogo
6979458e26
Extracted script parsing code to its own class.
...
svn-id: r31972
2008-05-10 11:11:03 +00:00
Nicola Mettifogo
1d025957ca
Moved location parsing out of the engines, to LocationParser_ns and LocationParser_br.
...
svn-id: r31958
2008-05-09 01:35:43 +00:00
Nicola Mettifogo
1ddd54b50d
- Moved some members from the engine class to Location, since they belong there.
...
- Cleaned up usage of location flags by using accessor functions.
svn-id: r31872
2008-05-05 11:02:40 +00:00
Nicola Mettifogo
4295392906
Added new Parser class, which will gradually grow to include all parsing code from the engine class.
...
svn-id: r31865
2008-05-04 15:09:23 +00:00
Nicola Mettifogo
3d1a2e2049
Replaced custom ManagedList with Common::SharedPtr.
...
svn-id: r31415
2008-04-06 05:40:02 +00:00
Nicola Mettifogo
435c437f6d
More refactoring for command parsing/execution.
...
svn-id: r30841
2008-02-09 23:26:45 +00:00
Nicola Mettifogo
265621de58
Fixes to make BRA introduction run:
...
- fixed location command parser
- implemented stop command
- temporary disabled speak zones (audio is not yet supported)
svn-id: r30796
2008-02-05 09:30:58 +00:00
Nicola Mettifogo
a53d87791d
- Character is now initialized when needed (for the moment only by NS)
...
- Forward lists are now bigger since BRA scripts are larger
svn-id: r30769
2008-02-03 16:02:21 +00:00
Nicola Mettifogo
85171eadaa
Programs are now handled in their own list, instead of being accessed via the referring Animation.
...
svn-id: r30768
2008-02-03 14:58:16 +00:00
Nicola Mettifogo
d8349d66ff
Subtitles are now displayed in the intro for BRA, though in wrong color (and I don't know why).
...
svn-id: r30747
2008-02-02 21:22:05 +00:00
Nicola Mettifogo
ed09766acc
BRA now loads and displays location backgrounds (at least in the intro).
...
svn-id: r30740
2008-02-02 13:57:29 +00:00
Nicola Mettifogo
015ad5e469
Some more integration of background code into BackgroundInfo.
...
svn-id: r30731
2008-02-02 09:48:07 +00:00