Age | Commit message (Collapse) | Author |
|
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
|
|
svn-id: r42970
|
|
* Added Game::start() method which is called from DraciEngine::go()
* Made Game::loop() suitable for calling from other places (like GPL scripts) by handling events, redrawing the screen, etc from inside. This way it doesn't freeze the game if it doesn't return immediately.
* Added Game::shouldQuit() and Game::setQuit() which can be used to signal the engine to quit.
* Fixed race condition related to mouse buttons not getting released.
* Instead of deleting frames for the title animation and adding a new one, reset the text for its frame.
svn-id: r42875
|
|
destructor still needs to use the screen).
svn-id: r42837
|
|
because Game uses pointers from the init archive which should outlive it (but didn't previously).
* Added support for setting loop status to Game.
* Made some GPL commands check whether we are in the correct loop status before executing.
svn-id: r42731
|
|
don't start/stop it over and over.
svn-id: r42651
|
|
svn-id: r42628
|
|
locations allowed by the walking map)
* Enabled drawing the walking map with the 'w' hotkey for testing
svn-id: r42581
|
|
(right arrow switches to the next room, left to the previous.
svn-id: r42577
|
|
svn-id: r42547
|
|
* Added WalkingMap::isWalkable()
* Renamed remaining _priority identifiers to _z which were left by mistake in the previous commit
svn-id: r42546
|
|
* Added DraciEngine::walkingMapsArchive
* Made Game::loadRoom() read in the current walking map
svn-id: r42541
|
|
svn-id: r42535
|
|
Added a HACK note for running the gates' scripts.
svn-id: r42532
|
|
_smallFont and _bigFont so each font can be handled separately.
svn-id: r42514
|
|
and palette caches). Made the DraciEngine destructor delete the rooms, overlays and animations archives.
svn-id: r42250
|
|
the new API change.
svn-id: r42133
|
|
(loading objects, changing rooms)
* Made Game::load*(), Game::getObject() and Game::changeRoom() methods public
* Stopped specifying Z coordinate when creating some Sprites (which I forgot in my previous commit)
svn-id: r42101
|
|
svn-id: r42091
|
|
DraciEngine * member to Script, added Script::setupCommandList() which initialises the command list array, added Script::dummy() callback for the Load command for testing).
svn-id: r42090
|
|
svn-id: r42071
|
|
svn-id: r42065
|
|
svn-id: r42063
|
|
svn-id: r42035
|
|
code that used those archives to use that instead of opening them manually. Replaced BArchive::operator[] functionality with BArchive::getFile() to prevent ugliness when accessing archives via pointers.
svn-id: r42031
|
|
svn-id: r41998
|
|
Sprite and Class. Made transforming from columnwise a default (since it was done most of the time anyway). Changed coordinates to use uint instead of uint16.
svn-id: r41996
|
|
they're no longer just C-like struct containers. Implemented getters/setters accordingly and changed existing code that used those classes.
svn-id: r41995
|
|
to use them.
svn-id: r41984
|
|
svn-id: r41983
|
|
pointer and a length. Also, Script::run() now executes the GPL program until a gplend instruction rather than to the end of the whole program. Modified GameObject according to the new changes.
svn-id: r41927
|
|
Draci::init().
svn-id: r41926
|
|
script on engine startup (previously via gpldisasm(), now via _script->run()).
svn-id: r41921
|
|
svn-id: r41919
|
|
read in the list of persons from INIT.DFW. Added Game instance to DraciEngine.
svn-id: r41907
|
|
svn-id: r41872
|
|
svn-id: r41866
|
|
handled through it.
svn-id: r41861
|
|
svn-id: r41840
|
|
svn-id: r41775
|
|
dirty rects). Changed background to light grey. A transparent string is now drawn over the dragon sprite.
svn-id: r41658
|
|
because the screen size doesn't change.
svn-id: r41620
|
|
svn-id: r41617
|
|
instance. This way the default constructor is invoked in DraciEngine::init() and can properly initialize the fonts because the game data paths are set.
svn-id: r41612
|
|
svn-id: r41604
|
|
omitted by accident. Removed superfluous BArchive::closeArchive() calls.
svn-id: r41552
|
|
able to seamlessly handle both BAR and DFW archives. Modified the BAFile struct to support both types of files. Tested it by enabling the mouse in the event loop (the cursor was stored in a DFW file). Added and rewrote docs to reflect the changes.
svn-id: r41533
|
|
handling by replacing the appropriate colours before drawing. Added Font::setColour() method for changing the current font colour. Added include guards to draci/font.h. Moved kFontBig and kFontSmall constants to draci/font.cpp to prevent redefinition errors.
svn-id: r41524
|