Commit Graph

129 Commits

Author SHA1 Message Date
Le Philousophe
8373886eb9 DRASCULA: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe
b25335bd33 DRASCULA: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
8672b6281c DRASCULA: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Filippos Karapetis
2a8e624bfe DRASCULA: Clean up logic in enterRoom() 2017-11-19 20:50:13 +02:00
Filippos Karapetis
33cb29d558 DRASCULA: Document several updateVisible() calls 2017-11-19 20:50:12 +02:00
Filippos Karapetis
64b57afe2c Revert "DRASCULA: Revert range 4dbed774..1f1d8607"
This reverts commit bf69b25e33.

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.
2017-11-15 01:49:50 +02:00
Willem Jan Palenstijn
bf69b25e33 DRASCULA: Revert range 4dbed774..1f1d8607
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 2bf05c2a74 are correct.
2017-11-14 19:14:00 +01:00
Eugene Sandulenko
327dcf98ec DRASCULA: Make remaining static texts translatable
drascula.dat file version bumped
2017-11-14 04:07:11 +01:00
Filippos Karapetis
1f1d860797 DRASCULA: Merge the floor coordinates into _walkRect 2017-11-11 17:14:38 +02:00
Filippos Karapetis
1e1b6f7ca4 DRASCULA: Rename gotoObject() to walkToPoint() and simplify it 2017-11-11 17:14:38 +02:00
Filippos Karapetis
2bf05c2a74 DRASCULA: Clean up room variables, and simplify some related checks 2017-11-11 17:14:38 +02:00
Filippos Karapetis
d81869af58 DRASCULA: Simplify the drawing code in BJ's room 2017-11-11 17:14:36 +02:00
Filippos Karapetis
1c2a9d2e12 DRASCULA: characterMoved and characterVisible are boolean variables 2017-11-11 17:14:36 +02:00
Thierry Crozat
eef8371432 DRASCULA: Swap extraSurface and tableSurface use in chapter 6 for Spanish 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.
2016-04-16 18:59:27 +01:00
Thierry Crozat
e3cb949b95 DRASCULA: Fix wrong background for inventory in chapter 6
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.
2016-04-12 22:19:43 +01:00
Thierry Crozat
882299a1b4 DRASCULA: Fix typo in variable name 2016-04-11 09:13:05 +01:00
Thierry Crozat
a97f9d0ec6 DRASCULA: Rename variable to clarify its meaning 2016-04-11 01:37:08 +01:00
Johannes Schickel
cf91cebb9d DRASCULA: Make GPL headers consistent in themselves. 2014-02-18 02:39:34 +01:00
Filippos Karapetis
d531484350 DRASCULA: Some renaming. Also, get rid of some extraneous globals
This removes the superfluous talkHeight, talkWidth and timeDiff
variables. It also changes _loadedDifferentChapter to be a boolean
2013-08-19 03:08:58 +03:00
Filippos Karapetis
89bbc9c292 DRASCULA: Fix shadowing warnings (thanks LordHoto), and rename some variables 2013-01-06 21:54:40 +02:00
Filippos Karapetis
c1b0c80cce DRASCULA: Merge some animation functions and document all animations 2013-01-04 19:31:25 +02:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
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]*$//'
2011-06-20 00:59:48 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Thierry Crozat
c2eb927ab3 DRASCULA: Avoid crash in engine destructor after it failed to start.
This happens for example if the drascula.dat file is not found.
2011-04-24 14:39:50 +01:00
dhewg
d83a83ef50 JANITORIAL: Remove/comment unused vars
Found by GCC 4.6's -Wunused-but-set-variable
2011-03-29 21:57:56 +02:00
David Turner
73a440cfe2 DRASCULA: Fix Memory Leaks in Rooms Table.
Minor whitespace fixes as well.

svn-id: r55560
2011-01-27 07:58:57 +00:00
Eugene Sandulenko
9b9e8f7d8d DRASCULA: Fix some code analysis warnings (bug #3087830)
svn-id: r53473
2010-10-15 09:08:54 +00:00
Eugene Sandulenko
f992721361 Drascula: hid room updater-related debug output to deeper level
svn-id: r49702
2010-06-15 10:18:08 +00:00
Max Horn
da81c58af1 DRASCULA: Some cleanup; turn some global C++ objects into members of DrasculaEngine
svn-id: r48215
2010-03-09 23:35:30 +00:00
Nicola Mettifogo
3a1e7ccbae Moved text parsing to a new class.
svn-id: r48013
2010-02-09 01:22:24 +00:00
Nicola Mettifogo
56bf7a20d3 Renamed ArjFile to ArchiveMan, and _arj to _archives.
svn-id: r48000
2010-02-08 18:17:32 +00:00
Nicola Mettifogo
b658c61155 Let ArjFile return a SeekableReadStream instead of implementing
the same interface itself. The caller is now responsible for
deleting the returned streams.

svn-id: r47994
2010-02-08 16:14:04 +00:00
Nicola Mettifogo
1fe0facb24 Pass the input stream to text parser functions.
svn-id: r47992
2010-02-08 16:13:09 +00:00
Nicola Mettifogo
0b06fb2a88 The text parser functions can create their temporary buffers on the stack.
svn-id: r47991
2010-02-08 16:12:45 +00:00
Filippos Karapetis
4af0cfbdbd Cleanup
svn-id: r43056
2009-08-04 21:56:59 +00:00
Filippos Karapetis
d14f0ccfb5 Removed the superfluous VGA buffer, replacing it with direct writes to the video buffer
svn-id: r43048
2009-08-04 17:22:18 +00:00
Eugene Sandulenko
d116a94e2b Normalized types for several variables. Formatting
svn-id: r40521
2009-05-13 11:59:49 +00:00
Eugene Sandulenko
17a68490be Replace verb numbers with constants in selectVerb() call
svn-id: r40476
2009-05-12 10:02:18 +00:00
Johannes Schickel
5417f6bacb - Replace OSystem::clearScreen with OSystem::fillScreen as discussed on -devel.
- Update BaseBackend and DC port to properly implement OSystem::fillScreen (now only PalmOS has to be updated).
- Update all client code which relied on OSystem::clearScreen so far.

svn-id: r38304
2009-02-15 21:20:21 +00:00
Max Horn
ac59693be2 A ton of code formatting fixes; also fixed warnings about single line loops like 'while(cond);' by inserting newlines
svn-id: r36127
2009-01-29 05:26:12 +00:00
Eugene Sandulenko
696897b058 Whoa! Removing trailing spaces.
svn-id: r35648
2009-01-01 15:06:43 +00:00
Filippos Karapetis
cbf561a0a0 - Moved more animation data inside drascula.dat
- 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
2008-09-12 12:54:16 +00:00
Filippos Karapetis
6fd2cb99db Cleanup
svn-id: r34494
2008-09-11 15:35:56 +00:00
Filippos Karapetis
a12e2b8037 - Merged openDoor() and closeDoor()
- Cleaned up updateDoor()
- Bugfixes to exitRoom() and gotoObject()
- Moved cursor-related functions to interface.cpp
- alapuertakeva -> roomExits

svn-id: r34493
2008-09-11 14:49:04 +00:00
Filippos Karapetis
fa3d3e3643 - The game's cursor is now handled via ScummVM's cursor manager, instead of 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
2008-09-11 09:31:45 +00:00
Filippos Karapetis
77cd9d6230 Removed the unused variable changeColor
svn-id: r34480
2008-09-10 13:06:40 +00:00
Filippos Karapetis
f5fecc864f Merged all the methods to assign and set default palettes
svn-id: r34479
2008-09-10 12:03:42 +00:00
Filippos Karapetis
3202ef4dd1 Reduced game memory usage by about 400KB by only loading the current language strings, not all strings
svn-id: r34472
2008-09-10 08:25:12 +00:00