Commit Graph

214 Commits

Author SHA1 Message Date
Paul Gilbert
e8623fa477 Added methods for push/pop cursors
svn-id: r24069
2006-10-02 12:47:29 +00:00
Max Horn
4c14cf6d1a Moved base/engine.cpp and .h to engines/ (main motivation: helps untangle the linker dependency graph). Porters will have to update project files
svn-id: r23974
2006-09-23 00:42:35 +00:00
Max Horn
919092e5fc Overhaul of the debugger code
* Moved Common::Debuggger to GUI::Debugger (mainly to satisfy linker
  restrictions)
* Change the base Debugger class to *not* be a template class anymore;
  instead, a thin (template based) wrapper class is used to hook up
  debugger commands
* Removed duplicate Cmd_Exit and Cmd_Help methods in favor of a single
  version of each in GUI::Debugger
* New Cmd_Help doesn't word wrap after 39/78 chars, but rather queries
  the console to determine when to wrap
* Debugger::preEnter and postEnter aren't pure virtual anymore

svn-id: r23890
2006-09-16 16:58:27 +00:00
Max Horn
a2dc897fe5 Reduce code duplication
svn-id: r23888
2006-09-16 15:01:14 +00:00
Chris Apers
a851fb353c Make Lure run again on PalmOS fixing unaligned read
svn-id: r23865
2006-09-10 16:29:06 +00:00
Johannes Schickel
8271f1f0dc Makes lure compile with msvc8 again.
svn-id: r23861
2006-09-10 13:09:04 +00:00
Chris Apers
8b13bce6e9 Fixed compilation
svn-id: r23836
2006-09-09 09:09:19 +00:00
Paul Gilbert
d9b5129fb8 Transferred all previously hard-coded English in-game text to a resource
svn-id: r23831
2006-09-07 11:21:20 +00:00
Paul Gilbert
7a0eddeedd Fixed error message that still referred to disk0.vga
svn-id: r23829
2006-09-05 12:17:14 +00:00
Paul Gilbert
92f2e9691e Fixed handling of player occupied areas during room changes
svn-id: r23826
2006-09-03 08:39:06 +00:00
Paul Gilbert
816cc1a62c Bugfix to only list rooms that have been found in the Tell action 'Go To' command
svn-id: r23825
2006-09-03 05:04:58 +00:00
Paul Gilbert
e5fcd5ff2d Changed name of HOTSPOTFLAG_HIGHLIGHTED to HOTSPOTFLAG_FOUND to make it's use clearer
svn-id: r23824
2006-09-03 05:03:50 +00:00
Paul Gilbert
3b994a6a78 Changed name of HOTSPOTFLAG_HIGHLIGHTED to HOTSPOTFLAG_FOUND to make it's use clearer
svn-id: r23823
2006-09-03 05:03:14 +00:00
Paul Gilbert
037f04325d Added code fragment to mark a room as found when the player enters it
svn-id: r23822
2006-09-03 05:02:25 +00:00
Paul Gilbert
3e54f04f3d Implemented the Tell action handling, and added support for current actions with dynamic support data
svn-id: r23810
2006-08-30 12:19:05 +00:00
Paul Gilbert
e0d2b0764f Added word wrapping to the status line (necessary when giving long sets of Tell instructions)
svn-id: r23809
2006-08-30 11:48:43 +00:00
Paul Gilbert
7649160dde Committed recent disassembly efforts
svn-id: r23788
2006-08-27 11:57:30 +00:00
Paul Gilbert
2b06882a68 In progress work on tell command handling
svn-id: r23787
2006-08-27 11:48:41 +00:00
Paul Gilbert
37b4f2039a Added support for selecting a sequence of commands in response to the Tell action
svn-id: r23786
2006-08-27 11:47:03 +00:00
Paul Gilbert
1b60992052 Incremented version number
svn-id: r23785
2006-08-27 11:45:52 +00:00
Paul Gilbert
73b46369c1 Made the Memory::dealloc take a void * to make it easier to free any memory block type
svn-id: r23784
2006-08-27 11:44:39 +00:00
Paul Gilbert
af297a17a3 Added support for rooms in the ShowItems method, and adding alphabetic sorting of entries in action selection
svn-id: r23783
2006-08-27 11:43:09 +00:00
Paul Gilbert
a5c7282752 Added missing initialiser for current talking character
svn-id: r23782
2006-08-27 11:40:33 +00:00
Paul Gilbert
f871f569e6 Added data for room header flags and actions
svn-id: r23781
2006-08-27 11:38:55 +00:00
Paul Gilbert
488980d1b0 Added comments
svn-id: r23780
2006-08-27 11:37:38 +00:00
Paul Gilbert
389c7a403c changed references to StringData::getString to use two parameter version rather than passing NULL values
svn-id: r23697
2006-08-07 13:28:19 +00:00
Paul Gilbert
d80d6157b6 Incremented required data file version
svn-id: r23696
2006-08-07 13:27:28 +00:00
Paul Gilbert
ea90eb0699 Renamed hotspot talking destination character field to make it's use clearer
svn-id: r23695
2006-08-07 13:26:30 +00:00
Paul Gilbert
b1dbf7328f Reworked the talk dialog system to properly handle destination character and active item Id. Also completed ASK action handler
svn-id: r23694
2006-08-07 13:24:45 +00:00
Paul Gilbert
9af1acc901 Fixed item overwriting destination character in ASK action
svn-id: r23693
2006-08-07 13:23:30 +00:00
Paul Gilbert
1a77d61ace Enhanced Room::setTalkDialog to be passed the destination character and active item hotspot Id
svn-id: r23692
2006-08-07 13:21:15 +00:00
Paul Gilbert
c0e600e0fa Fixed displayMessage script method to use the new Hotspot::showMessage
svn-id: r23691
2006-08-07 13:19:10 +00:00
Paul Gilbert
e911afb525 Dialog::showMessage transferred over to the Hotspot class. Also enhanced TalkDialog to handle being passed a destination character and active item
svn-id: r23690
2006-08-07 13:16:07 +00:00
Paul Gilbert
ba32b91688 Fixed signature of GetString method - it is a destination character passed, not the current action. Also added a new method to return a decoded string with the correct definite article prefix (a/an/the)
svn-id: r23689
2006-08-07 13:13:20 +00:00
Paul Gilbert
9f74320aef Reduced MD5 checking to 1Kb, and recalculated MD5 strings
svn-id: r23686
2006-08-06 09:18:38 +00:00
Max Horn
4a80db4c7b * Added copyright string to all engine plugins
* Modified about dialog to list all available plugins with their resp. copyright
* Modified about dialog credits to show the GPL last (like movie end credits do with their legal text, too)

svn-id: r23645
2006-07-31 13:41:21 +00:00
Paul Gilbert
1f8066c333 Added proper item selection handling for the ASK action
svn-id: r23632
2006-07-30 12:15:52 +00:00
Paul Gilbert
0849e46541 Added a popup menu method for listing the items presented in response to an ASK action
svn-id: r23631
2006-07-30 12:13:26 +00:00
Paul Gilbert
6fa9819377 Added constants for known hotspot flags, and added line to flag hotspots that have been highlighted with the cursor
svn-id: r23630
2006-07-30 12:12:18 +00:00
Paul Gilbert
906f36a323 Added script method for changing the current hotspot header flags mask byte
svn-id: r23629
2006-07-30 12:10:44 +00:00
Paul Gilbert
2b4518d8a9 Added a field value for the current hotspot header flags mask byte
svn-id: r23628
2006-07-30 12:09:51 +00:00
Torbjörn Andersson
c32076e5d0 Use #include "..." instead of #include <...> for pack-start.h and pack-end.h
for consistency with other #includes.

svn-id: r23585
2006-07-23 16:13:26 +00:00
Torbjörn Andersson
eabe720a0e Changed __lure_res_h__ to LURE_RES_H etc for consistency.
svn-id: r23584
2006-07-23 15:32:14 +00:00
Torbjörn Andersson
602548cea3 Removed GCC_PACK that must have been re-added by accident.
svn-id: r23581
2006-07-23 15:01:21 +00:00
Paul Gilbert
6585033705 Added extra hotspot flags bytes needed for asking Ratpouch for an object, and changed differing word read macros to use a single standard
svn-id: r23579
2006-07-23 13:19:33 +00:00
Max Horn
2859b64702 Fix struct packing issues (macros are not resolve in #pragma params, at least for GCC)
svn-id: r23569
2006-07-22 17:28:48 +00:00
Johannes Schickel
4ae5cef491 - let md5_file accept a FilesystemNode too
- changes some engine detectors to use it

svn-id: r23559
2006-07-22 14:59:44 +00:00
Johannes Schickel
cfd9977425 Using FilesystemNode::name instead of FilesystemNode::displayName in all game detectors.
svn-id: r23558
2006-07-22 14:50:50 +00:00
Max Horn
f59cf1fcdc Removing GCC_PACK, we fully rely on START_PACK_STRUCTS / END_PACK_STRUCTS now (hiya eriktorbjorn, this one is for you *ggg*)
svn-id: r23547
2006-07-21 21:25:17 +00:00
Max Horn
f35f4a4d1c Use START_PACK_STRUCTS / END_PACK_STRUCTS when available, instead of checking for GCC / not GCC
svn-id: r23458
2006-07-09 13:01:15 +00:00
Paul Gilbert
dfbc46f877 General additions of newly understood hotspot fields, further decoded talk handling, ratpouch being freed, and several more script methods
svn-id: r23418
2006-07-08 08:44:53 +00:00
Paul Gilbert
a20214e43a Rewrote the talk handling code
Added lots of debugging information
Partial support for characters bumping into each other
Player/NPC action handling generally improved
Added hard-coding for variable width frame animation of Ratpouch being released
Basic support for Ratpouch wondering around

svn-id: r23416
2006-07-08 08:42:58 +00:00
Paul Gilbert
6b5150797a Added support for ScummVM boot parameter values as well invoking the built-in debugger
svn-id: r23413
2006-07-08 08:39:42 +00:00
Paul Gilbert
64d0e4dcd8 Incremented lure.dat version and added new constants for debugging, tick methods, and hotspots
svn-id: r23412
2006-07-08 08:38:44 +00:00
Paul Gilbert
55c80679ba Disabled waiting for mouse release when making a popup selection to match original game
svn-id: r23411
2006-07-08 08:37:47 +00:00
Paul Gilbert
c6b6a2e125 Added new hotspot runtime fields, a list for handling the details of paused characters (who have bumped into each other), and loading of newly added default character states from lure.dat
svn-id: r23410
2006-07-08 08:36:32 +00:00
Paul Gilbert
acb3a5a9ac Added ScummVM debuglevel support for dumping executed scripts
Fixed up some incorrect script methods and added several new ones

svn-id: r23409
2006-07-08 08:34:29 +00:00
Paul Gilbert
4a52b14de6 Added improved display of partially off-screen images, as well as proper handling of special talk message Ids that display a puzzled or exclamation dialog talk bubble above a character
svn-id: r23408
2006-07-08 08:32:04 +00:00
Paul Gilbert
e79b3dfd41 Added shortcut stub for decoding a string without passing the current hotspot and action name
svn-id: r23407
2006-07-08 08:30:14 +00:00
Paul Gilbert
9fe05aa007 Rewrote the status line handling code along with tweaks to the debug information display
svn-id: r23406
2006-07-08 08:29:01 +00:00
Paul Gilbert
10e450947d Added extra checking and debugging code, as well as partial rewrite/enhancement of talking and hotspot support methods
svn-id: r23405
2006-07-08 08:27:19 +00:00
Paul Gilbert
6f388eb290 Replaced old debugging files with new ScummVM based one
svn-id: r23404
2006-07-08 08:25:27 +00:00
Paul Gilbert
163a8cb72c Initial commit of ScummVM-based debugging functionality
svn-id: r23403
2006-07-08 08:23:41 +00:00
Max Horn
9a955180a4 * Renamed config.mak to config.mk
* Renamed common.rules to rules.mk
* Removed explicit declaration of MODULE_DIRS in various spots (instead we let rules.mk compute it)

svn-id: r23275
2006-06-24 08:48:11 +00:00
Max Horn
d210b19aec Move backends/fs/fs.h and .cpp to common/fs/fs.h and .cpp
Rationale: backend implementations belong to backends/, but portable APIs meant to be used by high level code is for common / sound / graphics / ... (compare also with backends/midi vs. sound/mididrv.h)

svn-id: r23274
2006-06-24 08:07:48 +00:00
Paul Gilbert
1c07797c50 Bugfix to properly detect the end of the indexed room hotspot list
svn-id: r22852
2006-06-03 03:38:24 +00:00
Lars Persson
5755b5a97e Fixed problem when building and debugging using Symbian Emulator.
svn-id: r22820
2006-06-01 22:43:19 +00:00
Lars Persson
9472476acb Symbian Emulator (VC6) compilation fixes.
svn-id: r22809
2006-05-31 20:05:31 +00:00
Torbjörn Andersson
85da5d8157 Fixed two Valgrind warnings. But there are still a couple of invalid reads
at startup.

svn-id: r22800
2006-05-31 13:36:01 +00:00
Paul Gilbert
321acd2740 Further disassembly of NPC actions as well as finally figured out the basics of NPC character modes in standard_character_tick_proc
svn-id: r22789
2006-05-31 08:32:24 +00:00
Paul Gilbert
75be177e90 Removed misspelled version of disassembly folder
svn-id: r22788
2006-05-31 08:32:05 +00:00
Paul Gilbert
5fa3985bcb Player now moves out of the way if he's blocking an entrance when an NPC enters. Also changed errors in unimplemented NPC actions to warnings
svn-id: r22731
2006-05-29 08:12:07 +00:00
Torbjörn Andersson
8062eb6ec3 Set and show/hide mouse cursors through a "cursor manager" (analogous to the
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.

If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?

svn-id: r22639
2006-05-25 22:51:42 +00:00
Paul Gilbert
622c8b57e7 Reworked the DISPATCH current action to support NPC schedules like the original game does. Additionally added basic implementation of necessary support routines
svn-id: r22582
2006-05-23 12:43:42 +00:00
Paul Gilbert
e22de3ab36 Added a new outer loop for what will later allow the restarting of the game. Also added the animation of the Skorl catching the player if the game state indicates it has happened
svn-id: r22581
2006-05-23 12:41:28 +00:00
Paul Gilbert
dddaa015df Added the loading of NPC schedules
svn-id: r22580
2006-05-23 12:39:39 +00:00
Paul Gilbert
0ebf2be4a4 Added new resource entries for NPC schedules, the Skorl catching animation, and miscellaneous
svn-id: r22579
2006-05-23 12:38:51 +00:00
Paul Gilbert
6bac5a257e Added support structures for NPC schedules
svn-id: r22578
2006-05-23 12:37:43 +00:00
Paul Gilbert
3e4566e196 Added some extra safety checks. Also contains some started work on redesigning the display of the current action
svn-id: r22577
2006-05-23 12:36:57 +00:00
Paul Gilbert
5f64d7009e Added script methods for manipulating current action support data and a stub for a script method that plays background music
svn-id: r22576
2006-05-23 12:24:50 +00:00
Paul Gilbert
fa23893974 Disassembled code responsible for making NPCs walk between rooms
svn-id: r22476
2006-05-14 22:11:14 +00:00
Torbjörn Andersson
d6af07989d This could be completely wrong, but I don't think Hotspot::stopWalking() is
supposed to call setCurrentAction() in Resources, because then ScummVM will
crash in getCurrentActionStr() whenever we try to interact with any object.

Since Hotspot::walkTo() calls setCurrentAction() in Hotspot, it seems like a
reasonable guess that this is the setCurrentAction() that stopWalking() should
call as well.

svn-id: r22409
2006-05-11 08:25:09 +00:00
Torbjörn Andersson
21b91adcdf Changed "it's" to "its" in a few comments.
svn-id: r22408
2006-05-11 08:04:41 +00:00
Torbjörn Andersson
dba0c5ca2c Whitespace changes.
svn-id: r22407
2006-05-11 07:59:50 +00:00
Paul Gilbert
30231a39c8 Added proper labels in some of the existing disassembled methods
svn-id: r22406
2006-05-11 07:25:54 +00:00
Torbjörn Andersson
e2656a276a Changed abs() to ABS()
svn-id: r22389
2006-05-08 13:34:21 +00:00
Paul Gilbert
b20966b92b Initial disassembly of NPC schedule handling methods
svn-id: r22380
2006-05-07 22:36:26 +00:00
Max Horn
84b2a4f76f It's wrong to assume a given file is located in gameDataPath, so do not use that to print out warnings that pretend otherwise
svn-id: r22272
2006-05-01 22:27:56 +00:00
Paul Gilbert
5584ea5c7e Incremented required lure.dat version
svn-id: r22236
2006-04-30 05:35:39 +00:00
Paul Gilbert
8f1604e4cf Added load of new script offset field for NPC handling of hotspots
svn-id: r22235
2006-04-30 05:34:54 +00:00
Max Horn
0aabdf821c Fix warning
svn-id: r22210
2006-04-29 11:56:59 +00:00
Paul Gilbert
1192f0dfca Enhanced hotspot action so that the player will properly walk to a hotspot before performing an action
svn-id: r22209
2006-04-29 11:22:05 +00:00
Paul Gilbert
946d0582dc Added proper action display after selection along with showing the camera cursor
svn-id: r22208
2006-04-29 11:19:55 +00:00
Paul Gilbert
8b184ad5b0 Changed resource Id constants, added a few more general constants, and slightly increased game speed
svn-id: r22207
2006-04-29 11:18:08 +00:00
Paul Gilbert
302c825a17 Reworked resource loading to no longer load hotspot proximities separately, or provide access to the list
svn-id: r22206
2006-04-29 11:17:06 +00:00
Paul Gilbert
3e8763f454 Reworked resources to handle moved hotspot proximity (walk to) co-ordinates
svn-id: r22205
2006-04-29 11:15:03 +00:00
Paul Gilbert
d88ce16b12 Tweaked dialog display code to refresh the screen and warn about message Ids needing display styles that aren't yet implement
svn-id: r22204
2006-04-29 11:13:47 +00:00
Max Horn
bf73598811 * Changed the createEngine() factory function of our plugins to return an error code (the engine is now passed indirectly via a double pointer)
* Removed Engine_Empty (obsolete now that engines can return actual error codes)

svn-id: r22199
2006-04-29 00:27:20 +00:00
Paul Gilbert
14beeb3492 Added disassembly of door close support routines and other miscellaneous action support code
svn-id: r22162
2006-04-25 22:38:00 +00:00
Torbjörn Andersson
72906f2508 Made the Lure engine call updateScreen() more often - particularly when using
the menu bar at the top of the window - for smoother mouse movement. (After a
discussion with sev.)

svn-id: r21992
2006-04-17 23:37:22 +00:00