Age | Commit message (Collapse) | Author |
|
This reverts commit bf69b25e33189581848412e77624865aa55ba234.
The original game had slight differences between the code for each
chapter. Part of these changes was to simplify the code and unify
some of these differences, particularly in the checks for clickable
areas, where the code is using Common::Rects with contains() now.
I have play tested the whole game with these changes, there are no
visible regressions, and the game is still completable. Thus, I'm
restoring the changes to the engine.
|
|
This reverts
1f1d8607 DRASCULA: Merge the floor coordinates into _walkRect
1e1b6f7c DRASCULA: Rename gotoObject() to walkToPoint() and simplify it
2bf05c2a DRASCULA: Clean up room variables, and simplify some related checks
Reverting due to unanswered questions about why the changes in behaviour
in 2bf05c2a746065f373ac136c994714dae376cdbc are correct.
|
|
|
|
version
This simplifies the code and bring it closer to the original source code.
This should help if we need to debug issues in the future.
|
|
This was a regression from commit fa3d3e3 and this fixes part of
bug #7113 DRASCULA: Serious sprite glitches.
The original uses extraSurface to draw text in draw_abc() in the
Spanish version while other languages use tableSurface. But in
ScummVM this was changed to use tableSurface for all languages.
However this caused an issue in chapter 6 when displaying the
inventory has it is also using tableSurface, as it was for all languages
in the original. While using the same surface works for other
languages, in the Spanish version we get the wrong background in
the inventory.
Rather than revert to using extraSurface for drawing text which is
a big change and impact all the chapters, I have opted to simply
swap the usage of the tableSurface and extraSurface in chapter 6
for the Spanish version compared to the original engine. The
changes therefore only impact chapter 6 and only the Spanish
version. I played the chapter in full to check that it indeed works
without causing adverse effects.
|
|
|
|
This removes the superfluous talkHeight, talkWidth and timeDiff
variables. It also changes _loadedDifferentChapter to be a boolean
|
|
|
|
|
|
This cleans up the save/load code and resolves multiple issues with the
original save/load screen.
Save game timestamps and thumbnails are now implemented, together with
the ability to load a game from the launcher.
F7 is now mapped to the ScummVM load dialog, and F10 to the save dialog
(if the user has selected to use the ScummVM save screen).
|
|
|
|
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
|
|
Now the confirm quit screen still updates the room and allows mouse movement.
For me that removes the feeling that ScummVM locked up when I pressed escape.
|
|
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
|
|
|
|
svn-id: r55685
|
|
A memory leakage was traced down to a failure to call the engine destructor.
This was due to the engine directly calling OSystem quit() i.e. _system->quit(), rather than
just allowing engine::run() to return.
Have removed this code and implemented the changes required to allow graceful Quit/RTL to occur.
svn-id: r55583
|
|
When clicking outside of all inventory objects, the whichObject()
function would return 43, which is an invalid inventoryObjects[]
index. I think that's what caused it to crash for me. There are a
few other inventoryObjects[]-related changes as well.
svn-id: r52843
|
|
svn-id: r49715
|
|
Bug #2826608: "DRASCULA: Cursor GFX error" fixed by introducing
separate buffer for cursors. This also fixes the root cause of
the problem.
svn-id: r49713
|
|
svn-id: r49706
|
|
This makes sense as a default for CLUT8 modes, but not really
for anything else. As part of the gsoc2009-16bit merge, the
default was changed to "all ones", with extra code in the SDL
backend to truncate this to the depth of the mode. However,
"all ones" (white) still isn't a very useful default for RGB modes.
So rather than jumping through hoops to provide a bad default,
it's better to remove the default altogether. Engines which relied
on the old default of 255 have been updated to specify it explicitly.
svn-id: r47118
|
|
svn-id: r40521
|
|
svn-id: r40476
|
|
svn-id: r35223
|
|
game names lags"
svn-id: r35221
|
|
- Moved grr() to talk.cpp
- Removed the unnecessary parameter length from isTalkFinished()
svn-id: r34577
|
|
svn-id: r34513
|
|
- Cleaned up updateDoor()
- Bugfixes to exitRoom() and gotoObject()
- Moved cursor-related functions to interface.cpp
- alapuertakeva -> roomExits
svn-id: r34493
|
|
the game itself (this means that there might be regressions where the cursor is visible when it shouldn't be)
- Removed the textSurface pointer, which was used in the Spanish version. Non-Spanish versions of the game hold the font data in the tableSurface buffer (which contains picture 96). The font data for Spanish versions is in picture 974. Now both versions load their font data from the tableSurface buffer
- hay_que_load -> loadedDifferentChapter
- Merged withoutVerb() and selectVerb()
This is a big change, it might lead to regressions!
svn-id: r34488
|
|
language strings, not all strings
svn-id: r34472
|
|
svn-id: r33574
|
|
svn-id: r33541
|
|
svn-id: r32645
|
|
svn-id: r32644
|
|
- Removed the rest of the game static data (staticdata.h)
- Some naming convention fixes (added underscore to some shared variables)
- Renamed objeto -> object
svn-id: r32628
|
|
svn-id: r32599
|