aboutsummaryrefslogtreecommitdiff
path: root/engines/drascula/drascula.h
diff options
context:
space:
mode:
authorFilippos Karapetis2008-12-03 17:35:37 +0000
committerFilippos Karapetis2008-12-03 17:35:37 +0000
commit157e0512807a77ea13376cedb97274ab3829a68f (patch)
tree8143539be2200ec5a02934ecbfa652c348b22126 /engines/drascula/drascula.h
parentb471aab57d6bfbed72071b6605c1c1231c7315da (diff)
downloadscummvm-rg350-157e0512807a77ea13376cedb97274ab3829a68f.tar.gz
scummvm-rg350-157e0512807a77ea13376cedb97274ab3829a68f.tar.bz2
scummvm-rg350-157e0512807a77ea13376cedb97274ab3829a68f.zip
Applied wjpalenstijn's patch to fix bug #2111826 - "DRASCULA: Inserting save game names lags"
svn-id: r35221
Diffstat (limited to 'engines/drascula/drascula.h')
-rw-r--r--engines/drascula/drascula.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h
index a03e5c16da..be9eb697fd 100644
--- a/engines/drascula/drascula.h
+++ b/engines/drascula/drascula.h
@@ -268,12 +268,12 @@ struct CharInfo {
#define COMPLETE_PAL 256
#define HALF_PAL 128
+#define KEYBUFSIZE 16
+
static const int interf_x[] ={ 1, 65, 129, 193, 1, 65, 129 };
static const int interf_y[] ={ 51, 51, 51, 51, 83, 83, 83 };
class DrasculaEngine : public ::Engine {
- Common::KeyState _keyPressed;
-
protected:
// Engine APIs
virtual Common::Error init();
@@ -426,6 +426,10 @@ public:
int leftMouseButton;
int rightMouseButton;
+ Common::KeyState _keyBuffer[KEYBUFSIZE];
+ int _keyBufferHead;
+ int _keyBufferTail;
+
bool loadDrasculaDat();
bool runCurrentChapter();
@@ -448,6 +452,8 @@ public:
bool verify1();
bool verify2();
Common::KeyCode getScan();
+ void addKeyToBuffer(Common::KeyState& key);
+ void flushKeyBuffer();
void selectVerb(int);
void updateVolume(Audio::Mixer::SoundType soundType, int prevVolume);
void volumeControls();