Commit Graph

262 Commits

Author SHA1 Message Date
Nicola Mettifogo
94159481cc - slightly improved mask for amiga (not perfect yet)
- fixed loading of Talks for amiga
- fixed handling of multiple frames

svn-id: r26373
2007-04-02 20:53:25 +00:00
Nicola Mettifogo
4273a4d49b Renamed classes for consistency.
svn-id: r26362
2007-04-01 19:58:53 +00:00
Nicola Mettifogo
f5828e7fdf - Added a new class RLEDecoder to avoid code duplication in Disk routines.
- Temporarily disabled mask loading in Amiga version.

svn-id: r26361
2007-04-01 19:22:15 +00:00
Nicola Mettifogo
a97ab92dd9 Fixed loading of graphics. Now things really look what they are, except the character which still looks a bit jagged.
svn-id: r26352
2007-04-01 15:41:34 +00:00
Nicola Mettifogo
91eaea3e58 Added code for resource loading and fixed the bug having Amiga demo crashing. It is now limitedly playable, although graphics is still heavily messed up.
svn-id: r26349
2007-04-01 14:35:33 +00:00
Nicola Mettifogo
b7e499b64a Implemented Disk routines for Amiga demo. Font are simulated with boxes, and frames aren't decoded properly yet. The engine will now show the first game screen, but crash as soon as the user clicks her mouse.
svn-id: r26341
2007-04-01 12:45:42 +00:00
Nicola Mettifogo
20c2bba084 Added GF_DEMO flag and ability to load the correct location at start.
svn-id: r26340
2007-04-01 12:42:30 +00:00
Nicola Mettifogo
a6ad021b30 Function changeCharacter is now responsible for loading character specific Zones and such
svn-id: r26339
2007-04-01 12:17:38 +00:00
Nicola Mettifogo
18ef96d08b made Menu use _vm instead of _engine
svn-id: r26336
2007-04-01 11:44:58 +00:00
Nicola Mettifogo
69ede83dd3 made menu properly set language
svn-id: r26329
2007-03-30 21:48:59 +00:00
Nicola Mettifogo
d75df27964 oops
svn-id: r26319
2007-03-29 19:10:01 +00:00
Nicola Mettifogo
31eb34c98f - changed Cnv to use a single large buffer for frames instead of small chunks of memory, to simplify loading by Disk.
- added a new constructor with parameters to Cnv

svn-id: r26318
2007-03-29 19:03:51 +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
ac1e6c9b75 Fixed palette bug to allow proper display of splash screens, but dos palette is still broken in game. Palette code needs a general revision due to differences between dos and amiga.
svn-id: r26313
2007-03-27 22:04:50 +00:00
Nicola Mettifogo
303b66391b engine can now handle amiga and dos splash screens
svn-id: r26312
2007-03-27 22:03:00 +00:00
Nicola Mettifogo
77657498b2 added code to load amiga background slides
svn-id: r26311
2007-03-27 22:02:07 +00:00
Nicola Mettifogo
7708186cba Changed detection of the dreaded 'fr' archive in Nippon Safes Amiga Demo. This is not a better hack than before, except that now it works.
svn-id: r26299
2007-03-24 23:57:29 +00:00
Nicola Mettifogo
7b9c74acae Added new class Table, and updated Disk accordingly. Tables can be populated after their creation or wrapped around existing arrays. Thus, the old functions (initTable, freeTable and searchTable) have been removed.
svn-id: r26295
2007-03-24 21:18:08 +00:00
Nicola Mettifogo
3034cb1273 made more functions members of Parallaction
svn-id: r26294
2007-03-24 19:55:34 +00:00
Nicola Mettifogo
afe981d340 started infrastructure for amiga demo:
- added Disk skeleton
- adapted Archive to handle different structure for archives
- moved Disk creation from engine constructor into init() [still sub-optimal]

svn-id: r26293
2007-03-24 17:14:04 +00:00
Nicola Mettifogo
10048eaec1 - fixed regression bug: one free/delete mismatch
- added needed virtual destructors to structs

svn-id: r26292
2007-03-24 16:36:13 +00:00
Nicola Mettifogo
3daa442c82 unrolled loop in buildWalkPath and renamed some variables
svn-id: r26276
2007-03-22 19:49:15 +00:00
Max Horn
2964bed5d2 Fix warnings
svn-id: r26274
2007-03-22 17:33:21 +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
Nicola Mettifogo
d94979c936 final version of runDialogue
svn-id: r26251
2007-03-19 22:38:00 +00:00
Nicola Mettifogo
838ec385cf applied De Morgan's law to an expression to expose similarities
svn-id: r26250
2007-03-19 22:32:35 +00:00
Nicola Mettifogo
54b785fb3b fixed bug from first decompile
svn-id: r26249
2007-03-19 22:30:54 +00:00
Nicola Mettifogo
33f827c83e refactoring of the main loop of runDialogue, now in a decent shape
svn-id: r26247
2007-03-19 22:24:40 +00:00
Nicola Mettifogo
8f69bae8ec a bit of refactoring for dialogue code
svn-id: r26246
2007-03-19 22:21:10 +00:00
Nicola Mettifogo
d5e26cf261 removed most useless (paranoid) debugC
svn-id: r26245
2007-03-19 22:10:10 +00:00
Nicola Mettifogo
fe5660400f made Animation a subclass of Zone (finally!)
svn-id: r26244
2007-03-19 21:49:41 +00:00
Nicola Mettifogo
3dd12518cb added member initialization
svn-id: r26243
2007-03-19 21:44:23 +00:00
Nicola Mettifogo
1931461127 deleted some dead code
svn-id: r26242
2007-03-19 20:26:17 +00:00
Max Horn
8fae7d8b02 Fixed warning: warning: base class 'struct Parallaction::Node' should be explicitly initialized in the copy constructor
svn-id: r26235
2007-03-18 23:04:44 +00:00
Nicola Mettifogo
0bc056aee3 Made loadStatic return a new StaticCnv instead of accepting a parameter. All disk functions now accept only a resource name as their parameter.
svn-id: r26232
2007-03-18 21:15:39 +00:00
Nicola Mettifogo
992f535724 Made loadFrames return a new Cnv instead of accepting a parameter.
svn-id: r26231
2007-03-18 21:08:28 +00:00
Nicola Mettifogo
4966b755f0 changed DoorData::_cnv to be a pointer, in view of changes to Disk::loadFrames()
svn-id: r26230
2007-03-18 21:00:22 +00:00
Nicola Mettifogo
548a522733 changed Animation::_cnv to be a pointer, in view of changes to Disk::loadFrames()
svn-id: r26229
2007-03-18 20:35:12 +00:00
Nicola Mettifogo
7e310422c3 - added constructors for most structs
- structs are now allocated via new instead of malloc's
- respective free's have been replaced with delete

svn-id: r26228
2007-03-18 20:18:19 +00:00
Nicola Mettifogo
2ea44bf1ee changed code to use WalkNode constructors
svn-id: r26227
2007-03-18 19:59:56 +00:00
Nicola Mettifogo
f14a5c17f2 - Made global Node's (_zones, _animations, _helperNode) and the functions using them members of the engine.
- Added a constructor for Node

svn-id: r26226
2007-03-18 19:35:54 +00:00
Nicola Mettifogo
29bf77d5b1 hidden _cnv member of Animation from callers
svn-id: r26217
2007-03-18 17:33:54 +00:00
Nicola Mettifogo
c1f84742f9 changed remaining stuff to Common::Point and got rid of custom Point and Rect
svn-id: r26216
2007-03-18 17:22:07 +00:00
Nicola Mettifogo
0e370a4162 converted DoorData and Zone to Common::Point
svn-id: r26215
2007-03-18 17:17:21 +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
ff5ec6462e converted walk routines to use Common::Point
svn-id: r26213
2007-03-18 17:03:07 +00:00