Age | Commit message (Collapse) | Author |
|
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.
|
|
When splitting strings into several lines to fit on the screen the
original engine could result in lines with one character beyond
the right edge of the screen, which in practice would be drawn
on the next line on its own, aligned to the left (and not centered).
This commits adds a check to avoid this situation. So although
it now behaves slightly differently than the original engine this
is for the better.
|
|
This code was committed by mistake in the previous commit.
|
|
|
|
The changes in this commit should provide an identical text
placement to the original. In addition to using the original source
code as reference I have checked that is the case by comparing
with DosBox for the intro of the Spanish and English versions as
well as for parts of the game with the English version. I added
comments for the obscure parts (such as the original adding a
space at the end of the last line of text when splitting a string
into several lines, thus impacting how that last line is aligned).
|
|
This in particular fixes bug #7111: Incorrect position in texts, not as the
original. However this codes centers the text better than what we see in
DosBox, so the result is not identical.
This change is based on the code before the commit 7cf7f4b
"Rewrote the very confusing centerText() function into something that
makes more sense". The changes in that commit do not all make
sense to me so I reverted the line spacing (to add back 2 pixels between
text lines) and part of the logic to center text. The result looks a lot
closer to the original engine in DosBox, but not identical.
|
|
|
|
|
|
|
|
This removes the superfluous talkHeight, talkWidth and timeDiff
variables. It also changes _loadedDifferentChapter to be a boolean
|
|
|
|
|
|
|
|
This bug is "DRASCULA-IT: Crash/graphic glitch at castle towers".
The crash was due to width and height values being passed to
copyBackground() being invalid due to out of bounds read from
the factor_red array. This adds debugging statements and fixes
the crash by clipping accesses to the maximum index of factor_red.
This doesn't however fix the observed GFX glitch, but stops it being
a segfault.
|
|
|
|
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
|
|
|
|
The surface returned by OSystem::lockScreen() can have a pitch which
differs from w * bytesPerPixel, so modify the code to take this into
account. Fixes FMV problems on Dreamcast.
|
|
Some backends may break as I only compiled SDL
|
|
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
|
|
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: r49709
|
|
svn-id: r49708
|
|
svn-id: r49700
|
|
playing the German translation) doesn't fit on the screen at the desired
position.
svn-id: r48850
|
|
svn-id: r48217
|
|
svn-id: r48000
|
|
the same interface itself. The caller is now responsible for
deleting the returned streams.
svn-id: r47994
|
|
SeekableReadStream everywhere.
svn-id: r47993
|
|
svn-id: r47990
|
|
svn-id: r47541
|
|
svn-id: r43056
|
|
video buffer
svn-id: r43048
|
|
svn-id: r42755
|
|
svn-id: r40521
|
|
svn-id: r35648
|
|
- Removed some duplicate code
svn-id: r34569
|
|
svn-id: r34567
|
|
better placed now
svn-id: r34560
|
|
more sense, and matches the way that the original printed text on screen (in most cases)
Fixes bugs #2102657 - "DRASCULA: Crash when talking to the piano player" and #2111820 - "DRASCULA: Dialog texts too long"
svn-id: r34558
|
|
svn-id: r34531
|
|
regression from moving mouse handling to OSystem
svn-id: r34526
|
|
svn-id: r34513
|
|
- Merged copyRect and copyRectClip
- Added enums for all the possible character directions and removed duplicate directions
- Extended the talk sequence commands a bit
- Removed unnecessary buffer faceBuffer and the unneeded casts between byte * and char * that were used
svn-id: r34503
|
|
- Cleaned up updateDoor()
- Bugfixes to exitRoom() and gotoObject()
- Moved cursor-related functions to interface.cpp
- alapuertakeva -> roomExits
svn-id: r34493
|
|
svn-id: r34491
|
|
svn-id: r34490
|
|
svn-id: r34489
|
|
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
|