Nicola Mettifogo
3607c63758
Refactoring.
...
svn-id: r40210
2009-04-29 16:59:10 +00:00
Johannes Schickel
a619443dbc
PARALLACTION: Commit of parentheses patch from salty-horse. (from -devel "Enabling -Wparentheses in the Makefile").
...
svn-id: r39760
2009-03-30 12:09:03 +00:00
Nicola Mettifogo
666f0720ab
(Re)link bounding animations after location has been completely parsed. This avoids problems due to forward references.
...
svn-id: r39740
2009-03-29 13:56:16 +00:00
Nicola Mettifogo
011b73a09b
Commands now evaluate their reference Zone at runtime, thus handling of forward references in the parser is no more needed.
...
svn-id: r39738
2009-03-29 12:41:00 +00:00
Nicola Mettifogo
28465d73bb
Merged CommandData into Command.
...
svn-id: r39732
2009-03-29 10:18:09 +00:00
Nicola Mettifogo
f2d7875db6
Added initialization for _index and _locationIndex in Zone objects.
...
svn-id: r39723
2009-03-28 14:17:17 +00:00
Nicola Mettifogo
76c0d08200
* Pushed evaluation of 'following question' from dialogue parsing to dialogue execution.
...
* Removed all the question forwards declaration code
svn-id: r39654
2009-03-24 08:20:08 +00:00
Nicola Mettifogo
d82aea1e54
Turned ZoneTypes into a regular numeric id (no more a bitfield).
...
svn-id: r39648
2009-03-23 22:34:46 +00:00
Nicola Mettifogo
52b1c9e32f
Oops.
...
svn-id: r39646
2009-03-23 20:42:53 +00:00
Nicola Mettifogo
2223627c75
Merged GetData, HearData, SpeakData, PathData, ExamineData, MergeData into TypeData struct. This simplifies life a bit especially in the parsers.
...
svn-id: r39645
2009-03-23 20:41:54 +00:00
Nicola Mettifogo
d18274d0ee
Implemented all variants of IF script instruction. Program class has been changed to store an Array of instruction instead of a List, so that references to instructions are integers.
...
svn-id: r39631
2009-03-23 11:38:09 +00:00
Max Horn
f9ecd95d69
Whitespace cleanup: Convert space followed by tab to just tab
...
svn-id: r39203
2009-03-07 19:24:31 +00:00
Nicola Mettifogo
33a8fe7a7e
Initialize and save zones flags and follower position when a location switch occurs.
...
svn-id: r39064
2009-03-02 08:36:42 +00:00
Nicola Mettifogo
88efc8603e
Removed null*Ptr dummy objects, using SharedPtr's reset method to null pointers instead.
...
svn-id: r38897
2009-02-26 10:44:01 +00:00
Nicola Mettifogo
6334125d1c
Implemented follower support, except that:
...
* follower is forgotten when location changes (see freeLocation)
* the final walking frame is screwed
svn-id: r38838
2009-02-24 11:20:45 +00:00
Nicola Mettifogo
659c9fb901
Changed interface to walk code, to better handle the differences between games. Moreover:
...
* merged PathBuilder_BR into PathWalker_BR
* implemented checkTrap routine for BRA
svn-id: r38836
2009-02-24 08:42:46 +00:00
Nicola Mettifogo
e3afa772e2
Cleanup.
...
svn-id: r38817
2009-02-23 12:17:25 +00:00
Nicola Mettifogo
9bef5a0cfc
Rewrote the sarcophagus puzzle in Nippon Safes, since I finally understood how it was implemented in the original!
...
svn-id: r38816
2009-02-23 11:55:25 +00:00
Nicola Mettifogo
3e611e1eb7
Adapted fixed-sized arrays to cope with the larger dialogues in BRA. Maybe they should be turned into dynamic data structures...
...
svn-id: r35944
2009-01-20 10:39:16 +00:00
Nicola Mettifogo
f2b495ba2d
Implemented counters in BRA. Only valid answer options are shown, and counter calculations in scripts are performed.
...
svn-id: r35723
2009-01-04 14:23:20 +00:00
Nicola Mettifogo
b3b23642bf
Fixed selection of invalid frame numbers. This means that most locations can be switched to and don't crash up anymore!
...
svn-id: r35550
2008-12-26 05:44:32 +00:00
Nicola Mettifogo
cae7c2346f
Questions in dialogues can have up to 10 answers in BRA.
...
svn-id: r35524
2008-12-24 10:35:34 +00:00
Nicola Mettifogo
025b2a93e9
Moved mask creation/handling to Gfx.
...
svn-id: r35447
2008-12-20 08:15:09 +00:00
Nicola Mettifogo
774773b7cd
Reduced code duplication when manipulating Animations, and cleanup.
...
svn-id: r35408
2008-12-17 11:15:47 +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
a403372ae1
Cleanup.
...
svn-id: r34185
2008-08-26 12:15:11 +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
22eaffcb34
Updated layer calculation: animations are now hidden properly by background elements (but not items yet).
...
svn-id: r33894
2008-08-15 08:44:41 +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
c70d09bc26
Made scripts access Animation fields via accessors and mutators, instead of using raw pointers.
...
svn-id: r33891
2008-08-15 03:59:45 +00:00
Nicola Mettifogo
ea2a2cbb7c
Simplified handling of script variables (especially locals).
...
svn-id: r33889
2008-08-15 02:52:42 +00:00
Nicola Mettifogo
f31cf5d94c
* Added flexible verb configuration for both NS and BRA.
...
* Objects can now be really opened and closed in BRA.
svn-id: r33405
2008-07-29 10:22:50 +00:00
Nicola Mettifogo
5d2e25ee11
Preliminary code for traps.
...
svn-id: r33364
2008-07-28 09:00:00 +00:00
Nicola Mettifogo
c6cbf1f144
Added a post processing step to runScripts, so that Animation can be validated after buggy scripts have been executed.
...
svn-id: r33363
2008-07-28 08:56:37 +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
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
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
Nicola Mettifogo
d2609258cc
Added constructor and destructor to Dialogue, thus fixing a long standing leak.
...
svn-id: r32757
2008-06-22 14:46:08 +00:00
Nicola Mettifogo
c7c8bb99ee
Tiny cleanup to ease extraction of the program parser code.
...
svn-id: r31959
2008-05-09 01:42:25 +00:00
Nicola Mettifogo
e2e2af4ff5
Reverted commit 31928 by Buddha_, and defined kFlagsAll as 0xFFFFFFFFU in the enum, as suggested by Fingolfin.
...
svn-id: r31939
2008-05-08 02:46:12 +00:00
Kari Salminen
2d707af338
A (temporary?) fix for the signed/unsigned issues with enum CommandFlags usage.
...
svn-id: r31928
2008-05-07 14:49:42 +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
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
cf724e889c
Added new debug command to dump scripts execution status.
...
svn-id: r30840
2008-02-09 22:07:51 +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
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