Commit Graph

73 Commits

Author SHA1 Message Date
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
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
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
7baf727790 Enforcing use of nullZonePtr only for nulling out pointers, as it is useless for comparisons.
svn-id: r33384
2008-07-28 23:21:03 +00:00
Nicola Mettifogo
6e4d26fb70 Added rudimental support for location changes when walking through doors. The best part of this commit is that Doug now stops in a normal position.
svn-id: r33328
2008-07-27 10:37:54 +00:00
Nicola Mettifogo
b9d0e4dafb Doug from BRA can now walk in his hotel room. He still stops in bizarre poses, though.
svn-id: r33325
2008-07-27 08:35:00 +00:00
Nicola Mettifogo
8245aa42b5 More cleanup.
svn-id: r33298
2008-07-26 05:56:39 +00:00
Nicola Mettifogo
34ff51d1c6 Cleanup.
svn-id: r33297
2008-07-26 05:37:52 +00:00
Nicola Mettifogo
7950a9183b * Added walk calculations to BRA (doesn't walk yet, though).
* Adapted Character and Animation to handle both versions of the engine.

svn-id: r33296
2008-07-26 04:01:11 +00:00
Nicola Mettifogo
1174296a66 Changed the remaining references to Nodes into Points.
svn-id: r33290
2008-07-25 16:08:10 +00:00
Nicola Mettifogo
3e08d36363 * Changed walk code to use Common::Point instead of the clumsy WalkNode.
* Changed walk code to use object copy instead of managing pointers.

svn-id: r33289
2008-07-25 16:01:25 +00:00
Nicola Mettifogo
d0ae6885ac Fixed regression in walk code. Now standing frames are correctly selected when the character encounters an unexpected blocking object in his/her path.
svn-id: r33053
2008-07-14 00:21:05 +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
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
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
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
Jordi Vilalta Prat
d6c34bdc4b Fixed the spaces before tabs.
svn-id: r30667
2008-01-28 00:14:17 +00:00
Nicola Mettifogo
d86246308d Walk and script handling are now directly handled by the main loop, instead of relying on the job list.
svn-id: r29568
2007-11-19 20:23:01 +00:00
Nicola Mettifogo
10caba3562 * centralized kEngineChangeLocation flag handling
* simplified runGame, moving flags testing into called routines

svn-id: r29504
2007-11-14 22:24:26 +00:00
Nicola Mettifogo
258901bab9 Merged common/stdafx.h into common/scummsys.h. All referencing files have been updated.
svn-id: r28966
2007-09-19 08:40:12 +00:00
Nicola Mettifogo
af72280fb9 Cleanup: removed unneeded references to engine (_vm).
svn-id: r28826
2007-09-02 15:27:25 +00:00
Nicola Mettifogo
60a6d5aa53 Jobs are now members of the engine and are handled with a table, instead of being external functions.
svn-id: r28824
2007-09-02 15:17:41 +00:00
Nicola Mettifogo
771f3e5306 Enforced use of character's feet coordinates throughout the walk code.
svn-id: r28760
2007-08-28 14:30:17 +00:00
Nicola Mettifogo
4c89de8fc0 Cleanup.
svn-id: r28525
2007-08-11 13:13:56 +00:00
Nicola Mettifogo
8c2ae45ab4 Overhaul of background/mask/path handling:
- added new BackgroundInfo structure
- added helper functions to aid management of BackgroundInfo. Engine is now responsible for allocation/deallocation.
- simplified loading and handling of background resources.

svn-id: r28524
2007-08-11 13:07:21 +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
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
283b89daf8 Cleanup.
svn-id: r28315
2007-07-29 19:17:53 +00:00
Nicola Mettifogo
67869d2c10 - Moved disk code for Nippon Safes in new file disk_ns.cpp, adding _ns suffix to classes and member functions.
- Added function stubs into new file disk_br.cpp for Big Red Adventure [IT STILL CRASHES!].
- Modified engine to create the proper Disk manager object.

svn-id: r28246
2007-07-27 19:02:19 +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
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
ae63466446 cleanup
svn-id: r26834
2007-05-13 14:38:05 +00:00
Nicola Mettifogo
c1d8a1a01c Fixed paths. (Short comment for big achievement).
svn-id: r26586
2007-04-23 21:31:03 +00:00
Nicola Mettifogo
77afb85fcd Fixed walking bug: random nodes aren't inserted in the walk path anymore.
svn-id: r26577
2007-04-23 17:07:09 +00:00
Nicola Mettifogo
7e0c88592f Fixed some memory leaks.
svn-id: r26483
2007-04-15 08:32:28 +00:00
Nicola Mettifogo
ab85ecdcb7 - Moved Zone and Animation to List<>.
- Removed any reference to Node from codebase.

svn-id: r26452
2007-04-11 20:01:06 +00:00
Nicola Mettifogo
a0dbf44ee1 - moved walk code to List<>
- some adjustments to #include statements

svn-id: r26424
2007-04-09 10:03:15 +00:00
Nicola Mettifogo
caf2b4d270 Explicit constructor invoked when instancing WalkNode.
svn-id: r26406
2007-04-07 14:01:37 +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
9367371107 Turned free___() routines into proper destructors for Zone, Animation and Program, and added memo comments for porting the engine to Common::List<>.
svn-id: r26399
2007-04-07 09:31:24 +00:00
Nicola Mettifogo
3034cb1273 made more functions members of Parallaction
svn-id: r26294
2007-03-24 19:55:34 +00:00
Nicola Mettifogo
3daa442c82 unrolled loop in buildWalkPath and renamed some variables
svn-id: r26276
2007-03-22 19:49:15 +00:00
Nicola Mettifogo
a37870c125 - moved buildWalkPath inner loop into a new function
- renamed some variables in buildWalkPath
- deleted an old extern for buildWalkPath

svn-id: r26272
2007-03-21 21:49:11 +00:00
Nicola Mettifogo
89ea1f3abf got rid of cryptic pseudo-boolean variable in buildWalkPath
svn-id: r26269
2007-03-21 19:42:09 +00:00
Nicola Mettifogo
d881196681 replaced some x,y/left,top pairs with Common::Point
svn-id: r26262
2007-03-20 20:46:09 +00:00
Nicola Mettifogo
9494a9f025 some refactoring for walking code
svn-id: r26260
2007-03-20 19:45:17 +00:00