Age | Commit message (Collapse) | Author | |
---|---|---|---|
2009-07-17 | * Made Game::changeRoom() clear some more archives | Denis Kasak | |
* Modified the engine to leverage BArchive's memory management capabilities by using its pointers to data directly instead of copying * Removed GameObject destructor (not needed because of the above change) * Changed some more data members from uint16 to uint svn-id: r42555 | |||
2009-07-17 | * Renamed BAFile::closeFile() to close() | Denis Kasak | |
* Fixed leak in BArchive::loadFileDFW() svn-id: r42554 | |||
2009-07-17 | * Renamed Room::_numMasks to _numOverlays for consistency. | Denis Kasak | |
* Fixed unsigned to signed comparison. svn-id: r42549 | |||
2009-07-17 | Added sanity checks for all archives (whether opening succeeded). | Denis Kasak | |
svn-id: r42547 | |||
2009-07-17 | * Added Game::loop() | Denis Kasak | |
* Added WalkingMap::isWalkable() * Renamed remaining _priority identifiers to _z which were left by mistake in the previous commit svn-id: r42546 | |||
2009-07-16 | Renamed GameObject::_priority to _z. | Denis Kasak | |
svn-id: r42542 | |||
2009-07-16 | * Added WalkingMaps class | Denis Kasak | |
* Added DraciEngine::walkingMapsArchive * Made Game::loadRoom() read in the current walking map svn-id: r42541 | |||
2009-07-16 | Added _iconsArchive to DraciEngine and modified the Mouse class to use it. | Denis Kasak | |
svn-id: r42535 | |||
2009-07-16 | Fixed loading the location's walking map index (needed to subtract 1). | Denis Kasak | |
svn-id: r42534 | |||
2009-07-16 | Added proper cursor state handling (when in rooms that don't use the mouse). ↵ | Denis Kasak | |
Added a HACK note for running the gates' scripts. svn-id: r42532 | |||
2009-07-15 | * Changed Game members _numMasks, _init, _look, _use and _canUse from uint16 ↵ | Denis Kasak | |
to int * Modified Game::loadRoom to load gates and execute their scripts * The first room loaded is now Game::_info._startRoom instead of 0 * Fixed reading of _pers0 and _persStep from the data files (they are 6 instead of 12 bytes) * Added more debug info to Script and Game svn-id: r42515 | |||
2009-07-15 | Renamed Font::setFont() to loadFont(). Removed DraciEngine::_font and added ↵ | Denis Kasak | |
_smallFont and _bigFont so each font can be handled separately. svn-id: r42514 | |||
2009-07-14 | Adjusted levels for some Game debug messages and added some new ones. | Denis Kasak | |
svn-id: r42489 | |||
2009-07-14 | * Fixed bug in Animation which made the first frame of an animation being ↵ | Denis Kasak | |
drawn after it's stopped * Fixed debugging info when starting and stopping animations svn-id: r42485 | |||
2009-07-14 | Renamed GameInfo::_currentRoom to _startRoom to better reflect its purpose. | Denis Kasak | |
svn-id: r42465 | |||
2009-07-14 | Made Game allocate its _info member statically instead of dinamically. | Denis Kasak | |
svn-id: r42464 | |||
2009-07-13 | * Implemented the following GPL functions: IsIcoOn, IcoStat, IsObjOn, ↵ | Denis Kasak | |
IsObjOff, IsObjAway * Changed GameObject::_location to an int since we sometimes use location -1. * Some more uint <-> int changes to prevent comparisons between signed and unsigned. svn-id: r42452 | |||
2009-07-13 | Renamed Game::_itemStatus to _iconStatus. Added an assert to check if the ↵ | Denis Kasak | |
number of icons is correct. svn-id: r42449 | |||
2009-07-13 | Fixed bug in the NoScene logo room; the screen surface is now cleared ↵ | Denis Kasak | |
between scene redraws (filled with the colour 0) to fix artifacts when animating the logo. svn-id: r42448 | |||
2009-07-13 | Added Surface::fill() method and made Screen::fillScreen() use that instead ↵ | Denis Kasak | |
of filling the surface manually. Changed Surface to use uint instead of uint8 throughout. svn-id: r42447 | |||
2009-07-12 | Moved the delay mechanism from Animation to Drawable since each frame in an ↵ | Denis Kasak | |
animation can have a different delay. svn-id: r42427 | |||
2009-07-12 | Enabled some more rooms in the demo and disabled loading the former ↵ | Denis Kasak | |
distributor logo. svn-id: r42426 | |||
2009-07-12 | Enabled clearing the screen when the room changes since some rooms do not ↵ | Denis Kasak | |
draw anything on some parts of the screen. svn-id: r42425 | |||
2009-07-12 | Fixed bug in the GPL math evaluator (GPL function results were not pushed ↵ | Denis Kasak | |
onto the evaluation stack). svn-id: r42424 | |||
2009-07-08 | Made Script::run() seek in SEEK_CUR mode when jumping instead of the default ↵ | Denis Kasak | |
SEEK_SET. It also now checks whether there is a non-zero jump value set before doing the jump. svn-id: r42254 | |||
2009-07-08 | Stopped doing a screen update immediately after changing the palette. This ↵ | Denis Kasak | |
caused a noisy effect when changing rooms because the palette was changed before the new scene was loaded. svn-id: r42251 | |||
2009-07-08 | Made the engine clear some more caches when it changes rooms (room, sprites ↵ | Denis Kasak | |
and palette caches). Made the DraciEngine destructor delete the rooms, overlays and animations archives. svn-id: r42250 | |||
2009-07-08 | * Implemented GPL jumps | Denis Kasak | |
* Implemented c_If, c_Goto and c_Let opcodes * Changed the interpreter to work with signed ints instead of uints (the interpreter uses negative values sometimes) * Fixed documentation of Script::run() which said it is a disassembler (forgot to change it earlier) svn-id: r42249 | |||
2009-07-07 | Fixed two mismatched (de)allocations in BArchive and BAFile. | Denis Kasak | |
svn-id: r42247 | |||
2009-07-07 | * Made Game::_variables private and, instead, added ↵ | Denis Kasak | |
Game::{get,set}Variable() methods. * Removed obsolete comment about the cyclic field not being used in Game::loadAnimation() svn-id: r42246 | |||
2009-07-07 | Implementend F_Not GPL function. | Denis Kasak | |
svn-id: r42245 | |||
2009-07-07 | * From Game::GameObject removed the following _idxSeq, _numSeq, _animObj, ↵ | Denis Kasak | |
_seqTab (not used anymore), added Common::Array<int> _anims. * Handled cylic animations properly * Handled the Z coordinate properly svn-id: r42244 | |||
2009-07-07 | * Added some more animation debug info | Denis Kasak | |
* Reordered Animation::nextFrame() a bit to make sure the timings are correct (particularly the last frame) * Added checks to AnimationManager::play() and AnimationManager::stop() so it doesn't dereference a null pointer. svn-id: r42243 | |||
2009-07-07 | * Changed Game::_variables to public since the GPL interpreter needs to use ↵ | Denis Kasak | |
it and made it int instead of uint16 * Implemented variable accessing by the math evaluator * Fixed bug from previous commit (should have used && when checking for ending instructions, not ||) svn-id: r42242 | |||
2009-07-07 | Made GPL interpreter exit on both gplend and exit instructions. | Denis Kasak | |
svn-id: r42241 | |||
2009-07-07 | Removed testing hack from Game::init() that displayed the dragon in the ↵ | Denis Kasak | |
upper left corner. Replaced some more instances of magic numbers with kDragonObject. Made Game::init() a bit more readable. svn-id: r42237 | |||
2009-07-07 | Added enum constant for the dragon object (kDragonObject) and made ↵ | Denis Kasak | |
Script::start() a bit more readable. svn-id: r42236 | |||
2009-07-07 | Made AnimationManager::getAnimation() return NULL when an animation is not ↵ | Denis Kasak | |
found instead of Common::List<>::end(). svn-id: r42228 | |||
2009-07-07 | Added const keyword to "transparent" local variable in Sprite::draw() and ↵ | Denis Kasak | |
removed leading underscore. svn-id: r42227 | |||
2009-07-07 | Shortened AnimationManager::{play,stop}(). Removed some excessive newlines. | Denis Kasak | |
svn-id: r42226 | |||
2009-07-07 | Stopped running the room init scripts twice. | Denis Kasak | |
svn-id: r42225 | |||
2009-07-07 | mplemented changing rooms properly (overlays and objects' animations are ↵ | Denis Kasak | |
deleted before a new room is loaded) and set up a quick demonstration (left click advances to the next room, right click goes back). svn-id: r42224 | |||
2009-07-07 | * Added AnimationManager::deleteOverlays(). | Denis Kasak | |
* Fixed bug in AnimationManager::deleteAnimation() that could result in accessing the Common::List::end() sentinel value. svn-id: r42223 | |||
2009-07-06 | * Fixed extracting visibility and location of object from its status byte | Denis Kasak | |
* Added Game::getRoomNum() which returns the current room number * Made Game::loadRoom() execute the room's startup script, load the room's objects and run their init scripts as well svn-id: r42194 | |||
2009-07-06 | Removed two variables that were committed by mistake. | Denis Kasak | |
svn-id: r42193 | |||
2009-07-06 | Cache the transparent colour instead of calling a function for every pixel. | Denis Kasak | |
svn-id: r42192 | |||
2009-07-06 | Implemented Script::funcRandom (GPL function). | Denis Kasak | |
svn-id: r42191 | |||
2009-07-06 | Made _rnd member of DraciEngine public. | Denis Kasak | |
svn-id: r42190 | |||
2009-07-06 | Set up GPL functions properly (the math evaluator now calls the handler if ↵ | Denis Kasak | |
its implemented). svn-id: r42188 | |||
2009-07-06 | Fixed bug where the GPL interpreter left parameters from previous commands ↵ | Denis Kasak | |
on the stack. svn-id: r42185 |