Commit Graph

117 Commits

Author SHA1 Message Date
Eugene Sandulenko
785d86b63e Make input string truly editable
svn-id: r24732
2006-11-18 16:26:51 +00:00
Eugene Sandulenko
53c4684bbe Implement naming save games in cinE. See also FR #1579780: "FW: naming save
games"

svn-id: r24731
2006-11-18 15:16:44 +00:00
Eugene Sandulenko
53faadfdb6 Added per game target saves.
svn-id: r24718
2006-11-14 09:29:41 +00:00
Eugene Sandulenko
aba00bd320 Implement reading font data from external files for OS.
svn-id: r24714
2006-11-13 21:16:50 +00:00
Eugene Sandulenko
9f74b03182 Protection should not be bypassed for OS (and it didn't work well anyway)
svn-id: r24708
2006-11-13 16:42:34 +00:00
Max Horn
1f26cb8965 Reworked code in the advanced game detector (getting rid of much of the evil #define hell it consisted of previously)
svn-id: r24685
2006-11-12 03:23:29 +00:00
Eugene Sandulenko
84660f620b Improve international support in CINE engine.
svn-id: r24678
2006-11-11 15:37:03 +00:00
Eugene Sandulenko
a977988058 Next step in AdvancedDetector unification. Moved all common functions to
macroses. Now typical usage is just list of macros with parameters and 
array of game details.

svn-id: r24670
2006-11-10 22:43:10 +00:00
Eugene Sandulenko
8e4309b7c1 Remove slipped in debug output
svn-id: r24661
2006-11-08 21:54:03 +00:00
Eugene Sandulenko
cfabc8a203 Fix crashes with new BG incrustation code.
svn-id: r24660
2006-11-08 21:50:15 +00:00
Eugene Sandulenko
5e5bba4397 Fix bug #1579776: "FW: Save does not work properly"
svn-id: r24659
2006-11-08 21:46:57 +00:00
Gregory Montoir
f9cf368a67 got rid of two memory leaks
svn-id: r24589
2006-11-03 21:01:49 +00:00
Max Horn
7889783cac const correctness
svn-id: r24488
2006-10-24 09:44:20 +00:00
Torbjörn Andersson
b2ce8001cd Added MD5 for Future Wars included in the UK "Classic Collection".
svn-id: r24343
2006-10-15 21:50:34 +00:00
Eugene Sandulenko
ab90fd086e Reanmed CD -> "256 colors"
svn-id: r24339
2006-10-15 21:11:27 +00:00
Eugene Sandulenko
018d5e350c Since proper detection is added to CinE, build it by default and
announce as supported. Future Wars is completable.

svn-id: r24321
2006-10-15 01:13:43 +00:00
Eugene Sandulenko
95749148cf Add proper game detection to CinE engine.
svn-id: r24320
2006-10-15 01:06:44 +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
a2dc897fe5 Reduce code duplication
svn-id: r23888
2006-09-16 15:01:14 +00:00
Torbjörn Andersson
557af0cba5 Removed the copy protection bypass for Future Wars. We should only bypass the
copy protection if we know there were versions sold that either didn't have the
protection, or failed to include the information needed to get past it.

Besides, this particular bypassing doesn't work. The game appears to start
just fine, but the transporter early in the game is rendered non-functional.

svn-id: r23801
2006-08-28 19:13:54 +00:00
Torbjörn Andersson
af3241f700 Run the Cine engine's game detector before starting a game, to ensure that it
really is there. I hope this is the right way of fixing bug #1534073.

svn-id: r23660
2006-08-04 09:46:40 +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
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
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
Max Horn
31ebfdd1be Yet another const warning fixed
svn-id: r22795
2006-05-31 10:55:09 +00:00
Joost Peters
4e45be4568 Only call OSystem::updateScreen() every other frame, so no more than 50 times per second.
This doesn't appear to make a visible difference on PC, but allows the game to run on PSP and probably several other consoles/ports that wait for 50/60hz vsync.
Since I'm not familiar with this engine I've added a 'FIXME' comment, because maybe this can be fixed/improved in a different manner.

svn-id: r22758
2006-05-29 23:25:50 +00:00
Torbjörn Andersson
985215a04a As far as I can tell, there's no longer any reason for PartBuffer and AnimData
to be packed, so I've removed the packing and added the 'refresh' field to
AnimData instead of having it as a separate array.

On the other hand, animHeaderStruct and animHeader2Struct *should* have been
packed, but weren't. I've changed they way they are initialised so that the
packing should no longer matter for them either.

svn-id: r22651
2006-05-26 09:36:41 +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
Torbjörn Andersson
31f83ff233 Implemented FW inventory. This is basically a copy of makeMenuChoice(), minus
the ability to select menu items. There will be cleanups later, but for now we
try to match the original.

svn-id: r22395
2006-05-08 19:49:52 +00:00
Torbjörn Andersson
cab89a6f32 Another small update/cleanup to the French messages from Nicolas Joly.
svn-id: r22264
2006-05-01 20:10:29 +00:00
Torbjörn Andersson
72f0c9a5d7 Applied patch from Nicolas Joly to fix the French default messages in Future
Wars. (I had originally left them as question marks because I didn't know what
characters they were supposed to be.)

svn-id: r22259
2006-05-01 14:14:24 +00:00
Max Horn
27307acd7c Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
svn-id: r22231
2006-04-29 22:33:31 +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
Max Horn
68cb7f52c8 - Renamed ConfigManager::getActiveDomain to getActiveDomainName, and added a new getActiveDomain method that returns a pointer to the actual active *domain*
- Added Engine::_targetName whose value is computed from the name of the active domain
- Removed GameDetector::_targetName, instead code now uses either Engine::_targetName or the name of the active domain
- This in turn allowed for removing usage of GameDetector in many places

svn-id: r21916
2006-04-15 20:36:41 +00:00
Torbjörn Andersson
c9555a5d54 Added TODO about some extra data files that Operation Stealth has to load.
svn-id: r21844
2006-04-13 15:42:52 +00:00
Torbjörn Andersson
4ee82b0caf Work around crash in drawSpriteRaw(). In Future Wars, when going to the future,
I walked back to the room where I first arrived. At that point, maskPtr was
NULL for reasons yet unknown.

svn-id: r21839
2006-04-13 09:53:51 +00:00
Torbjörn Andersson
f5ab0e5578 Fixed potential crash in drawDialogueMessage(): The function should terminate
if, for some reason, messagePtr is NULL.

svn-id: r21833
2006-04-12 22:07:41 +00:00
Torbjörn Andersson
19a1cdfe85 Actions that do not have any custom response now print one of the default
responses. (Before, nothing would happen.)

svn-id: r21832
2006-04-12 22:06:30 +00:00
Torbjörn Andersson
cdcf44d3f3 Stubbed addPlayerCommandMessage(). I think it may have something to do with
printing default responses to commands.

svn-id: r21829
2006-04-12 16:34:23 +00:00
Torbjörn Andersson
151b38a6e5 This assertion shouldn't be needed. At least not here.
svn-id: r21826
2006-04-12 11:29:00 +00:00
Torbjörn Andersson
9dfc4b5f69 Fixed serious bug in removeOverlayElement() that would cause it to fail. This
caused getObjectUnderCursor() select the wrong object because the object list
was no longer guaranteed to be sorted on priority ("mask").

In Future Wars, this made it difficult (impossible?) to pick up the tunic,
because the game would pick the bushes instead, even though the tunic had a
higher priority.

svn-id: r21825
2006-04-12 11:27:45 +00:00
Eugene Sandulenko
7082e19ff2 Fix script dumping
svn-id: r21820
2006-04-12 03:45:54 +00:00
Eugene Sandulenko
8679083991 cleanup
svn-id: r21819
2006-04-12 03:12:56 +00:00
Eugene Sandulenko
75fec17d7e DEBUG_SCRIPT -> debugC
svn-id: r21816
2006-04-12 01:48:15 +00:00
Eugene Sandulenko
83d75e119f Add F1-F10 keymappings like in original engine.
svn-id: r21815
2006-04-11 23:31:03 +00:00
Torbjörn Andersson
a677541ac8 Added TODO comment about refreshAnimData[] and why it's not (yet) a field in
the AnimData struct.

svn-id: r21809
2006-04-11 21:39:09 +00:00
Torbjörn Andersson
62a163bc43 Might as well clear ptr1 and ptr2 in animDataTable[] when loading a savegame.
The previous commit should ensure that the elements that need to be loaded are.

svn-id: r21774
2006-04-10 23:48:22 +00:00
Torbjörn Andersson
badb5218fa If I understand things correctly, cinE used to dump the entire animDataTable
element to the savefile, including data pointers. After reading the savefile,
it would then test if ptr1 was NULL, to see if it should load the object.

I've extended the savefile format with a byte to indicate whether or not ptr1
was non-NULL. This seems to fix the problems I had with with loading savegames,
but of course any old savegame is now even more broken than before.

I still can't seem to get out of the room with the machine, though. Another
regression when migrating the code from cinE, or just my ability to get past
this annoying, timed puzzle?

svn-id: r21772
2006-04-10 23:22:26 +00:00
Torbjörn Andersson
9c15dc06eb Use our standard save file manager class to read and write the save games,
instead of putting them in the current working directory.

svn-id: r21741
2006-04-10 05:37:31 +00:00