Commit Graph

147 Commits

Author SHA1 Message Date
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
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
Max Horn
e955e0b4c4 Fixed warnings
svn-id: r35780
2009-01-07 23:30:31 +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
2d74085545 Deleted unused declarations, sorted others, and removed some dead code.
svn-id: r35739
2009-01-05 14:07:26 +00:00
Nicola Mettifogo
6c1dc0c03b Simplified destructions of Balloon objects.
svn-id: r35521
2008-12-24 09:51:07 +00:00
Nicola Mettifogo
e11c17a005 Moved more GfxObj management to Gfx object.
svn-id: r35466
2008-12-21 15:42:47 +00:00
Nicola Mettifogo
025b2a93e9 Moved mask creation/handling to Gfx.
svn-id: r35447
2008-12-20 08:15:09 +00:00
Nicola Mettifogo
c76f0bdb10 Weeded out some more unused code, and some restructuring.
svn-id: r35377
2008-12-15 07:15:29 +00:00
Nicola Mettifogo
e98bc7e402 Removed some unused code.
svn-id: r35357
2008-12-14 10:08:31 +00:00
Nicola Mettifogo
5b39775184 Some more restructuring of rendering code.
svn-id: r35343
2008-12-13 17:52:37 +00:00
Nicola Mettifogo
800db6f142 Restructuring of rendering code.
svn-id: r35342
2008-12-13 17:31:48 +00:00
Nicola Mettifogo
b3475d8178 * Replaced char* with Common::String in the parser.
* Enforced const-correctness on related routines.

svn-id: r35326
2008-12-13 03:37:43 +00:00
Nicola Mettifogo
6ecc17010d Fixed some more leaks and mismatched allocations/deallocations.
svn-id: r35277
2008-12-07 14:33:30 +00:00
Nicola Mettifogo
4c377e0339 Fixed positioning of overlayed graphics (dialogues, inventory, labels) in all locations. These items are now all handled in screen coordinates which are translated automatically by the renderer.
svn-id: r35255
2008-12-06 06:17:10 +00:00
Nicola Mettifogo
7681461b16 Implemented horizontal scrolling for BRA, by using a back buffer. Dialogues in scrollable locations are a bit messed up for the moment.
svn-id: r35253
2008-12-06 04:51:04 +00:00
Nicola Mettifogo
767485840f Got rid of the SurfaceToMultiFrames adapter class.
svn-id: r34938
2008-11-08 02:32:40 +00:00
Nicola Mettifogo
ccf88578c8 Fixed leak with Input class, introduced in commit 34206.
svn-id: r34224
2008-08-31 10:43:32 +00:00
Nicola Mettifogo
c2089be660 * Split up blt routine (there is room for a ton of improvements)
* Added scaling as a new blt option
* Activated scaling for the main character in BRA

svn-id: r33985
2008-08-18 07:12:05 +00:00
Nicola Mettifogo
fbc9483ed2 Extended balloon manager to handle color constants and fixed color of text in balloons for BRA.
svn-id: r33940
2008-08-16 13:10:54 +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
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
8bdbbaf413 Reordered initialization lists to silence warning.
svn-id: r33432
2008-07-30 06:25:17 +00:00
Nicola Mettifogo
884b753c73 Added dialogue text rendering for BRA.
svn-id: r33402
2008-07-29 09:44:05 +00:00
Nicola Mettifogo
df50b8ee68 Inventory is now properly rendered. Item selection is not yet working.
svn-id: r33355
2008-07-28 06:06:35 +00:00
Nicola Mettifogo
aee1284678 BRA now parses path data from the scripts.
svn-id: r33295
2008-07-26 02:09:50 +00:00
Nicola Mettifogo
4936e5f7df * Moved end intro and end game sequences code to gui.
* Rewrote all gui code to be run inside the main loop
* Added code to avoid crashes when a scene with no standard background is drawn

svn-id: r33260
2008-07-24 09:24:32 +00:00
Nicola Mettifogo
551f6d71c3 Made frame unpacking buffer dynamic (this frees some BSS space).
svn-id: r33072
2008-07-15 10:59:58 +00:00
Nicola Mettifogo
18b48c74a9 Fixed regression introduced with GfxObj: the character sprite was sometimes removed from the rendering list.
svn-id: r32974
2008-07-09 10:52:46 +00:00
Nicola Mettifogo
d387d1af0e - Moved dialogue balloon management code from Gfx to its own class
- Added a class to draw balloons in BRA (still without text and with wrong placement)

svn-id: r32902
2008-07-04 00:29:21 +00:00
Nicola Mettifogo
59e672ef40 Changed balloons to use GfxObj as well. Next step is to integrate balloons for BRA.
svn-id: r32883
2008-07-03 10:31:25 +00:00
Nicola Mettifogo
77a60673ef - Changed labels to be GfxObj's, thus removing the Label object altogether.
- Changed Item's to be almost GfxObj's, since ownership and destruction of underlying resource is an issue here (got to think some more about it).

svn-id: r32873
2008-07-02 01:41:08 +00:00
Nicola Mettifogo
2779b851ab Small cleanup/shuffling of Gfx code.
svn-id: r32847
2008-06-30 01:36:50 +00:00
Nicola Mettifogo
206485ffc6 Merged the three render lists (for animations, doors and objects) into a single one.
svn-id: r32834
2008-06-29 09:56:44 +00:00
Nicola Mettifogo
d8645297cd Changed all remaining code to use the GfxObj class to keep frames data. This allows for more uniform processing during rendering, and also fixes the display of dialogue faces for BRA.
svn-id: r32833
2008-06-29 09:30:32 +00:00
Christopher Page
cae6396ce7 Merged revisions 32507-32513,32516,32518,32520-32521,32523-32524,32526-32548,32550-32562 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

svn-id: r32563
2008-06-05 21:20:35 +00:00
Nicola Mettifogo
fe6ab4227e Return to menu after introduction has played (with glitches).
svn-id: r32523
2008-06-04 01:04:26 +00:00
Christopher Page
a338d5fdb2 PARA: Got rid of calls to system->quit() so that the Parallaction engine can return to the launcher. Also fixed a couple of memory leaks.
svn-id: r32504
2008-06-02 21:08:49 +00:00
Nicola Mettifogo
3d1a2e2049 Replaced custom ManagedList with Common::SharedPtr.
svn-id: r31415
2008-04-06 05:40:02 +00:00
Nicola Mettifogo
58d58d5100 Implemented scroll command and added a couple more debug variables.
svn-id: r30814
2008-02-07 12:49:46 +00:00
Nicola Mettifogo
509f2f6659 Enabled moving projector in Nippon Safes. This should fix long standing bug #1729309.
svn-id: r30811
2008-02-06 15:38:33 +00:00
Nicola Mettifogo
014511f380 Made font handling stateless.
svn-id: r30809
2008-02-06 14:12:59 +00:00
Nicola Mettifogo
246fbfd1e4 Added experimental debug feature: variables influencing the rendering that can be set via console using the 'set' command. The implementation is still partial. Leveraging on this, the engine can now selectively display the current background mask instead of the background itself.
svn-id: r30808
2008-02-06 14:05:08 +00:00
Nicola Mettifogo
715e33d63d Correctly implemented little-endian masks in BRA.
svn-id: r30807
2008-02-06 13:57:44 +00:00
Nicola Mettifogo
748a90ca23 Added code to unpack and render animations in BRA.
svn-id: r30755
2008-02-03 10:48:07 +00:00
Nicola Mettifogo
9f3ecd6409 Cleanup of BRA menu code.
svn-id: r30739
2008-02-02 12:36:06 +00:00