170 Commits

Author SHA1 Message Date
Nicola Mettifogo
6af9577e84 * moved label drawing into Gfx, to be drawn directly in the framebuffer
* changed low level blitting function to accept Graphics::Surface to ease development
* temporarily disabled labels/subtitles in BRA

svn-id: r29593
2007-11-21 20:04:14 +00:00
Nicola Mettifogo
6471eb84f2 Cleanup.
svn-id: r29556
2007-11-18 13:22:38 +00:00
Nicola Mettifogo
1ea0b305a5 Added color-inversion effect in character selection screen. The effect doesn't exactly work like the original yet (Amiga only).
svn-id: r29372
2007-11-01 21:56:14 +00:00
Nicola Mettifogo
21e4f4f176 Simplified global label management and added subtitles for BRA.
svn-id: r28828
2007-09-02 18:34:11 +00:00
Nicola Mettifogo
39e4a9b180 Added an abstract base class for representing multiple-frames for animations. Changed user code to rely on the new interface. Cnv has been turned into an implementation of the new interface, and it is now known as a concrete class only to Disk and Font code for Nippon Safes.
svn-id: r28734
2007-08-25 20:34:10 +00:00
Nicola Mettifogo
be994c88db Moved intro hack routines to Parallaction_ns callables, where they belonged from the beginning.
svn-id: r28541
2007-08-12 09:10:10 +00:00
Nicola Mettifogo
8444ad7f48 Even better large background support. Now internal buffers aren't reallocated if not background size stays the same across location switches.
svn-id: r28540
2007-08-12 08:47:45 +00:00
Nicola Mettifogo
fdee6a6e87 Better support for large backgrounds.
svn-id: r28539
2007-08-12 08:37:46 +00:00
Nicola Mettifogo
46c74a5bcf Added very basic support for backgrounds larger than screen:
- background surfaces are now reallocated for every location
- screen is copied according to _scrollX/Y position

svn-id: r28538
2007-08-12 08:26:20 +00:00
Nicola Mettifogo
9167422ce3 Moved cursor handling from Gfx to engine subclasses.
svn-id: r28534
2007-08-11 20:44:22 +00:00
Nicola Mettifogo
b07f787f7f Moved core font management from Gfx to engine. Gfx still retains features related to displaying text on screen.
svn-id: r28530
2007-08-11 17:25:57 +00:00
Nicola Mettifogo
2c6c654435 Added new clone method to Palette object.
svn-id: r28523
2007-08-11 12:26:17 +00:00
Nicola Mettifogo
aa1175ed13 Encapsulated palette stuff into a new Palette object and got rid of a lot of #defines. This should ease handling of palettes in different versions of the engine.
svn-id: r28509
2007-08-09 18:02:37 +00:00
Nicola Mettifogo
6160b7ec97 Removed some duplicated code.
svn-id: r28491
2007-08-08 18:33:55 +00:00
Nicola Mettifogo
d800f33ff1 Turned StaticCnv struct into stock Graphics::Surface, and changed all relevant code.
svn-id: r28484
2007-08-07 15:08:45 +00:00
Nicola Mettifogo
d30c3650a3 MaskBuffer and PathBuffer are now correctly freed before they are deallocated, and so is background Surface.
svn-id: r28483
2007-08-07 14:53:58 +00:00
Nicola Mettifogo
66c0a57248 Cleanup.
svn-id: r28482
2007-08-07 14:05:39 +00:00
Nicola Mettifogo
4d83622af7 Location comments are now displayed by a single Gfx function.
svn-id: r28481
2007-08-07 13:54:29 +00:00
Nicola Mettifogo
797f114aac - Renamed BitBuffer to MaskBuffer
- Added PathBuffer to handle 1-bit buffers for walkable areas
- Changed relevant walk code to use PathBuffer objects for querying screen dimensions.

svn-id: r28478
2007-08-06 22:03:17 +00:00
Nicola Mettifogo
c60fc2202f Made sure mask buffer is zeroed to prevent bizarre artifacts.
svn-id: r28477
2007-08-06 21:58:25 +00:00
Nicola Mettifogo
16f161f689 Made disk code directly create background Surface from resources.
svn-id: r28475
2007-08-06 20:07:57 +00:00
Nicola Mettifogo
14448af3bb Made disk code directly create mask BitBuffer from resources.
svn-id: r28473
2007-08-06 19:39:00 +00:00
Nicola Mettifogo
6c0288044b Changed graphics mask to a more generic BitBuffer object.
svn-id: r28471
2007-08-06 19:13:51 +00:00
Nicola Mettifogo
15c3264971 Changed internal graphics buffers to use Surface instead of vanilla arrays. ScummVM's stock surfaces are used for the moment.
svn-id: r28469
2007-08-06 13:22:21 +00:00
Nicola Mettifogo
663e78b911 Added routine to restore door backgrounds: this means that backgrounds for door and get zones are now handled by two different sets of routines. This fixes bugs #1765191 and #1762643 (it was actually the same bug).
svn-id: r28449
2007-08-04 18:58:50 +00:00
Nicola Mettifogo
4b008f9724 Changed code to use the new fadePalette function, thus removing fadeInPalette and some custom fade code in _c_endComment.
svn-id: r28368
2007-07-31 19:33:36 +00:00
Nicola Mettifogo
b29935e93c Generalized fadePalette to support custom target palette.
svn-id: r28367
2007-07-31 19:25:07 +00:00
Nicola Mettifogo
bd22db4502 Renamed palette functions.
svn-id: r28365
2007-07-31 19:12:44 +00:00
Nicola Mettifogo
236634662c Made screen size parameters properties of engine instead of compile-time constants.
svn-id: r28219
2007-07-26 18:30:27 +00:00
Nicola Mettifogo
945be6e5f2 Moved mouse cursor tampering from inventory.cpp to Gfx class, and some cleanup.
svn-id: r27996
2007-07-09 19:19:56 +00:00
Nicola Mettifogo
99df4dd7e2 Removed special displayBalloonString routine.
svn-id: r27850
2007-07-02 07:32:06 +00:00
Nicola Mettifogo
675227e81f Introduced new flatBlitCnv to reduce code duplication.
svn-id: r27833
2007-07-01 19:28:32 +00:00
Max Horn
e1bcd70436 Re-added __attribute__(packed)
svn-id: r27830
2007-07-01 18:18:43 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Nicola Mettifogo
c892c768a4 Fixed sketch glitches in the introduction.
svn-id: r26765
2007-05-06 14:45:20 +00:00
Nicola Mettifogo
79229cafab Some cheap cleanup.
svn-id: r26757
2007-05-06 09:31:45 +00:00
Nicola Mettifogo
0782fc5448 Fonts have been taking care of them being proportional for some time now, so it's time to remove old flags.
svn-id: r26585
2007-04-23 21:19:09 +00:00
Nicola Mettifogo
7609a54520 Some fixes for font management:
- new Amiga topaz font
- labels can be seen on the Amiga demo
- colors are now working

svn-id: r26580
2007-04-23 17:22:47 +00:00
Nicola Mettifogo
c9970a8005 - Implemented Amiga halfbrite mode in palette code, though usage is limited to displayItemComment() for the moment.
- Some changes to palette routines to make them fit with the new scheme.

svn-id: r26553
2007-04-21 12:51:40 +00:00
Nicola Mettifogo
987638a713 Now handling fonts with brand-new Font hierarchy. Amiga font have been implemented for dialogues/descriptions, but not for labels yet.
svn-id: r26530
2007-04-16 20:16:18 +00:00
Nicola Mettifogo
c43960b958 - Fonts are now preloaded at start.
- Replaced font string names with enums.
- Some slight simplification to Disk.

svn-id: r26518
2007-04-15 20:57:56 +00:00
Nicola Mettifogo
5a8b8ca92d cleanup
svn-id: r26409
2007-04-07 16:40:27 +00:00
Nicola Mettifogo
59b1538685 Reduced dependency between project files, and prepared defs.h for deletion as soon as List<>'s usage is implemented.
svn-id: r26400
2007-04-07 10:02:59 +00:00
Nicola Mettifogo
711865ef63 - implemented destructor for Cnv, thus removing calls to Gfx::freeCnv()
- enforced use of getFramePtr instead of Cnv::_array member

svn-id: r26317
2007-03-29 18:34:31 +00:00
Nicola Mettifogo
3903309af3 Overhaul of palette management to bring it back to its original form. Gfx palette code has been updated, and _c_endComment (callable from scripts) has been implemented. As a by-product, palette cycling now finally works!
svn-id: r26314
2007-03-28 20:12:00 +00:00
Nicola Mettifogo
919985e4df converted input and labels to Common::Point
svn-id: r26214
2007-03-18 17:12:48 +00:00
Nicola Mettifogo
791ad09510 Made loadFont return a new Cnv instead of accepting a parameter.
svn-id: r26203
2007-03-18 10:38:31 +00:00
Nicola Mettifogo
8f74bc15ae - made loadPointer return a new StaticCnv instead of accepting a parameter.
- adjusted Gfx code handling mouse pointers.

svn-id: r26201
2007-03-18 10:30:51 +00:00
Nicola Mettifogo
abaef3f5af removed unused parameter from Gfx::flatBlitCnv
svn-id: r26195
2007-03-18 09:16:12 +00:00
Nicola Mettifogo
5c91a361c7 removed a leftover extern statement causing link errors on some platforms
svn-id: r26146
2007-03-16 20:45:35 +00:00