Commit graph

218 commits

Author SHA1 Message Date
Nicola Mettifogo
5eec5f6b17 More merging of input code.
svn-id: r33219
2008-07-23 01:07:39 +00:00
Nicola Mettifogo
5ea9bdd99a Merged inventory input code from different files.
svn-id: r33198
2008-07-22 12:35:46 +00:00
Nicola Mettifogo
791d2b3ba2 Changed comment display code so that input polling is integrated into the main loop, instead of being performed in a blocking way from a separate routine.
svn-id: r33188
2008-07-22 09:00:39 +00:00
Nicola Mettifogo
5a71d764e7 Some refactoring for tracking of floating labels.
svn-id: r33165
2008-07-21 09:25:40 +00:00
Nicola Mettifogo
361bed0a95 Massive refactoring of dialogue code, which is now implemented as a finite state machine. Related code in other files has been updated has well.
svn-id: r33162
2008-07-21 06:08:30 +00:00
Nicola Mettifogo
ef95c6ff70 More refactoring of walk code.
svn-id: r33033
2008-07-13 13:04:36 +00:00
Nicola Mettifogo
059936854c Cleanup of walk code.
svn-id: r33023
2008-07-13 06:27:31 +00:00
Nicola Mettifogo
8ed023142a Moved program and command execution code out of the engine, into their own brand new
classes.

svn-id: r33003
2008-07-11 13:06:28 +00:00
Nicola Mettifogo
12cefc4132 Fixed leaks in NS and BRA.
svn-id: r32976
2008-07-09 13:27:09 +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
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
446f66807f Circular references between Zone/Animation and Command are now manually removed, to allow the objects - which are stored into SharedPtr's - to be deallocated.
svn-id: r32744
2008-06-22 05:42:22 +00:00
Christopher Page
fa75221e48 PARA: Fixed some memory leaks
svn-id: r32519
2008-06-03 18:24:54 +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
765f976008 * Cleanup of input code.
* Removed old timer routines.

svn-id: r32135
2008-05-15 01:18:26 +00:00
Nicola Mettifogo
40ff1537a9 - Moved input code to its own class.
- Slightly simplified inventory highlight code thanks to changes in input code.

svn-id: r32115
2008-05-14 14:34:01 +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
3d3ad58e14 Reverting commit 31920, thus changing type of flags back to unsigned. If some compiler emits a warning about 0xFFFFFFFF not being an unsigned immediate, then we need to find out how to convince it without changing types of variables in the code.
svn-id: r31924
2008-05-07 12:44:22 +00:00
Sven Hesse
6e61b02cb9 Silencing a compiler warning
svn-id: r31923
2008-05-07 12:34:40 +00:00
Filippos Karapetis
a3dbf43629 Fixed signed/unsigned issues with kFlagsAll
svn-id: r31920
2008-05-07 08:29:11 +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
6d3a7e4f6b Moved some static members into Parallaction class.
svn-id: r31755
2008-04-28 09:42:29 +00:00
Nicola Mettifogo
d4c8d4e18f Fixed usage of SharedPtr, so that reference counting is proper and there are no more objects that need constructors at global level (helps PalmOS).
svn-id: r31533
2008-04-17 09:32:57 +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
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
dabefdce05 Changed main loop to allow BRA to return to menu after intro.
svn-id: r30798
2008-02-05 10:24:22 +00:00
Nicola Mettifogo
fea63a5181 Fixed maximum token length for the parser.
svn-id: r30776
2008-02-03 17:06:45 +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
899fdcb367 Enabled rudimentary location switch in BRA.
svn-id: r30748
2008-02-02 22:45:31 +00:00
Nicola Mettifogo
015ad5e469 Some more integration of background code into BackgroundInfo.
svn-id: r30731
2008-02-02 09:48:07 +00:00
Nicola Mettifogo
1a36ba488c Cleanup (step 1).
svn-id: r30689
2008-01-28 20:40:05 +00:00
Nicola Mettifogo
68fc3f1dee Removed usage of kBitFront and kBitBack. Only the old kBit2 buffer is kept to store the background picture.
svn-id: r30687
2008-01-28 19:56:29 +00:00
Nicola Mettifogo
56eed45317 Move low level background management into Gfx.
svn-id: r30681
2008-01-28 17:28:16 +00:00
Nicola Mettifogo
3c2c16c705 Fixed animation sorting: everything should be drawn like before revision 30673 now. Character may still disappear when changing location because of wrong resource management, though.
svn-id: r30680
2008-01-28 16:52:41 +00:00
Nicola Mettifogo
cce8e25960 Removed all job routines. Stubs have been left for future reference in the code for BRA.
svn-id: r30675
2008-01-28 13:10:49 +00:00
Nicola Mettifogo
be2c5d3c87 All interactive objects are now drawn in the framebuffer instead of using the old kBitBack/kBitFront buffers. Animation are not sorted yet, so they can overlap in an inconsistent fashion for the time being.
svn-id: r30673
2008-01-28 12:20:53 +00:00
Jordi Vilalta Prat
d6c34bdc4b Fixed the spaces before tabs.
svn-id: r30667
2008-01-28 00:14:17 +00:00
Nicola Mettifogo
bdf440fdae Replaced the remaining old string code with the new label code. All the text is now drawn in the framebuffer instead of being blitted onto the internal game screen buffer.
svn-id: r30360
2008-01-09 21:46:57 +00:00
Nicola Mettifogo
e21fd496f8 Restructured label handling and moved all related code to Gfx.
svn-id: r30345
2008-01-08 20:46:58 +00:00
Nicola Mettifogo
1b80eedaa1 Added a proper _name member to Zone, instead of using the label text.
svn-id: r30343
2008-01-08 20:32:29 +00:00
Torbjörn Andersson
eeb212c7e0 Indent with tabs instead of spaces.
svn-id: r30312
2008-01-06 20:42:28 +00:00
Nicola Mettifogo
db51514dd3 Moved balloons management into Gfx, which is now responsible for positioning and drawing. All balloons are now drawn on a different layer than the game graphics, thus simplifying screen management. Dialogue code has undergone a major revision, and the superior implementation of answer selection in the Amiga version is now used in place of the poor PC one. Other bits (where some changes had already been introduced) have been updated, too.
svn-id: r30311
2008-01-06 19:29:41 +00:00
Max Horn
a556368c99 Update mouse coordinates onn *all* mouse events, i.e. also after click events
svn-id: r29657
2007-11-28 15:00:41 +00:00
Nicola Mettifogo
919c0a2833 * added adapter from Graphics::Surface to Frames
* changed all Disk routines to return Frames* instead of Graphics::Surface*
* changed displayItemComment to use new gfx routines
* merged code for Examine zones into displayComment

svn-id: r29615
2007-11-22 21:51:33 +00:00
Nicola Mettifogo
d8e8050015 * added (incomplete) explicit state machine handling in engine class (see _inputMode)
* added service routines to Gfx
* changed displayCharacterComment to work with the new state machine and gfx routines

svn-id: r29613
2007-11-22 21:19:44 +00:00
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