Age | Commit message (Collapse) | Author |
|
select MDT_PREFER_MT32 or MDT_PREFER_GM
svn-id: r50288
|
|
svn-id: r50128
|
|
svn-id: r48935
|
|
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.
svn-id: r48934
|
|
This greatly reduces indirect dependencies on several header files
from common.
svn-id: r48933
|
|
svn-id: r48821
|
|
engines + GUI and proper keypad handling
svn-id: r48101
|
|
svn-id: r48027
|
|
/ company.
Check this for reference:
http://en.wikipedia.org/wiki/Ad_Lib,_Inc.
http://www.crossfire-designs.de/images/articles/soundcards/adlib.jpg (note the upper left of the card)
This commit does not touch "adlib" and "ADLIB" uses!
Also it does not update all the SCUMM detection entries, which still use "Adlib".
svn-id: r47279
|
|
svn-id: r47215
|
|
svn-id: r46320
|
|
svn-id: r46316
|
|
like megath just did in the TeenAgent engine.
svn-id: r46284
|
|
svn-id: r46059
|
|
svn-id: r45876
|
|
svn-id: r45874
|
|
Putting items back to the inventory into clipped coordinates, and exiting
running GPL2 programs when the game engine it to be interrupted.
svn-id: r45822
|
|
Replaced IDs of objects by pointers, which saves many lookups, each of which
is horribly ineffective. Moved a lot of code into methods of structs now
turned into objects.
Tested the new code a lot and seems to work as well as the old code.
svn-id: r45799
|
|
The hero does not walk yet (it still teleports to the target immediately),
but that is just because the actual walking algorithm is left trivial first.
However, the main game loop, callbacks, and waiting all already work with
the general framework.
svn-id: r45648
|
|
- shouldExitLoop() is a bool again and introduced new flag isReloaded() instead
of adding special hacky value 2
- loop() accepts 2 parameters: loop substatus and shouldExit flag, because each
caller previously had to set and restore these manually. loop() now also
tests whether the substatuses are properly nested. reordered the
loop-exitting code.
- renamed loop substatuses to logical names
- enterNewRoom() returns bool whether loop() should continue so that start()
doesn't have to test and clear shouldEndProgram(). it doesn't need
force_reload as a parameter anymore.
- dialog selections use new inner substatus instead of outer substatus, for
consistency
svn-id: r45607
|
|
svn-id: r45605
|
|
svn-id: r45597
|
|
All GPL2 callbacks are now fully implemented. It remains to implement
proper walking.
svn-id: r45501
|
|
svn-id: r45455
|
|
svn-id: r45392
|
|
svn-id: r45389
|
|
- reading the volume from the configuration
- error handling of non-existent MIDI files
- pausing/resuming music
unfortunately, sometimes music stops playing or slows down, and my log
messages have so far not helped me to identify why
svn-id: r45326
|
|
Several TODO's added.
svn-id: r45298
|
|
Made it intelligent so that when, for example, the dubbing file doesn't exist,
we don't fail, but instead always show subtitles even if the GUI settings
says dubbing only, etc.
svn-id: r45002
|
|
Dubbing is not yet played.
svn-id: r45000
|
|
The sounds are not played yet, but the infrastructure is getting ready.
svn-id: r44957
|
|
We initialize them in the DraciEngine constructor, but don't play any sounds
yet. Checked that it works for all existing sound files (required several
work-arounds against unspoken specification).
When copying the interface from barchive.h, I decided to remove some const's
from there, because getFile() wasn't really behaving like const.
Removed some static Common::String instances.
svn-id: r44953
|
|
svn-id: r44633
|
|
Fixed many bugs in the boilerplate. Saving (only) things that really need to
be saved. Loading seems to work modulo dialogs and (possibly) inventory.
svn-id: r44586
|
|
All currently defined featues will be supported. I have implemented
everything boilerplatish, except for the actual game saving/loading (which
will come in the next commit), getting volumes from the configuration
(because we don't play sounds yet), and changing subtitles.
svn-id: r44583
|
|
Also, started implementing Advanced Engine Features:
- pause support
- RTL support
svn-id: r44575
|
|
My yesterday's fix on handling 1 event per call caused the game to be
unbearably slow on Linux. The old way was much faster. I have solved too
fast a succession of mouse button down and up by not clearing the mouse flag
when the button goes up instead.
Fixed a memory leak and uninitialized variable after my refactoring of game
location changes; found by ValGrind.
svn-id: r44525
|
|
Completely changed the interface, removing unused methods and attributes,
renaming other ones to reflect what they do, and moving some methods into the
private section. Code changing the location, originally scattered over many
pieces of code, has been unified into one place. Remember the previous room
when entering the map so that one can return there.
Also, the event handler processes one event at a time, preventing lost clicks
on touchpads.
svn-id: r44508
|
|
svn-id: r44493
|
|
- Remove use of tabs for formatting, now in nearly all cases tabs are only used for indentation
- Use "uint" instead of "unsigned int" in the whole engine for consistency's sake
- Strip some trailing tabs and leading whitespaces
svn-id: r44478
|
|
svn-id: r44474
|
|
svn-id: r44433
|
|
svn-id: r44327
|
|
svn-id: r43488
|
|
svn-id: r43392
|
|
svn-id: r43253
|
|
svn-id: r43087
|
|
and uint16 -> uint)
* Added enum constant kNoEscRoom for rooms that have no escape room defined
* Fixed crash when ESC is pressed in rooms which have no escape room defined
* Renamed kNotFound (used as a return value for Game::getObjectWithAnimation) to kObjectNotFound for clarity.
svn-id: r43072
|
|
user switch to another location (or skip the intro) by pressing ESC (the escRoom for every location is stored in the data files).
* Reworked the left and right arrow key commands so they don't call changeRoom() themselves but instead schedule the room change via Game::setRoomNum(). In this way, changing rooms like that is still a hack but a bit more "natural", since the loop doesn't get skipped, the gate scripts get run, etc.
svn-id: r43065
|
|
svn-id: r42989
|