aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarsh Bawari2020-01-11 21:05:55 +0530
committerFilippos Karapetis2020-01-11 17:35:55 +0200
commit6bf14cf5477f55ccee4414d8b081cd6d71afd163 (patch)
treeed7678f42d2dffd255d4032567b1c220daf7d37b
parenta692905eb273ae8c33ba1351e519b93dbf10f7fd (diff)
downloadscummvm-rg350-6bf14cf5477f55ccee4414d8b081cd6d71afd163.tar.gz
scummvm-rg350-6bf14cf5477f55ccee4414d8b081cd6d71afd163.tar.bz2
scummvm-rg350-6bf14cf5477f55ccee4414d8b081cd6d71afd163.zip
GRIFFON: Fix slugginess in final boss and a crash when loading the Griffon.s03 map
-rw-r--r--engines/griffon/dialogs.cpp1
-rw-r--r--engines/griffon/engine.cpp2
-rw-r--r--engines/griffon/input.cpp5
-rw-r--r--engines/griffon/resources.cpp6
-rw-r--r--graphics/transparent_surface.cpp13
5 files changed, 14 insertions, 13 deletions
diff --git a/engines/griffon/dialogs.cpp b/engines/griffon/dialogs.cpp
index 847377a024..be21015522 100644
--- a/engines/griffon/dialogs.cpp
+++ b/engines/griffon/dialogs.cpp
@@ -48,6 +48,7 @@ namespace Griffon {
void GriffonEngine::title(int mode) {
float xofs = 0;
+ _itemyloc = 0;
bool exitTitle = false;
rcSrc.left = 0;
diff --git a/engines/griffon/engine.cpp b/engines/griffon/engine.cpp
index a1eb5139ac..1f4b7cfe94 100644
--- a/engines/griffon/engine.cpp
+++ b/engines/griffon/engine.cpp
@@ -54,6 +54,7 @@ void Player::reset() {
hp = 0;
maxHp = 0;
hpflash = 0;
+ hpflashb = 0;
level = 0;
maxLevel = 0;
sword = 0;
@@ -65,6 +66,7 @@ void Player::reset() {
inventory[i] = 0;
}
attackStrength = 0;
+ itemselshade = 0;
spellDamage = 0;
swordDamage = 0;
exp = 0;
diff --git a/engines/griffon/input.cpp b/engines/griffon/input.cpp
index 64c260b9c4..5caa5af99b 100644
--- a/engines/griffon/input.cpp
+++ b/engines/griffon/input.cpp
@@ -618,6 +618,11 @@ void GriffonEngine::checkTrigger() {
_canUseKey = false;
+ for (int i = 0; i < kMaxFloat; i++) {
+ _floatText[i].framesLeft = 0;
+ _floatIcon[i].framesLeft = 0;
+ }
+
if (_triggerLoc[lx][ly] > -1)
processTrigger(_triggerLoc[lx][ly]);
}
diff --git a/engines/griffon/resources.cpp b/engines/griffon/resources.cpp
index 40f98223ea..4ce1c5d12d 100644
--- a/engines/griffon/resources.cpp
+++ b/engines/griffon/resources.cpp
@@ -192,6 +192,12 @@ void GriffonEngine::loadMap(int mapnum) {
_spellInfo[i].frame = 0;
_roomLock = false;
+ _saidLocked = false;
+ _saidJammed = false;
+ _itemSelOn = false;
+ _selEnemyOn = false;
+ _curItem = 0;
+ _player.itemselshade = 0;
char name[256];
// read *.map file
diff --git a/graphics/transparent_surface.cpp b/graphics/transparent_surface.cpp
index eb8d3fe5ce..1ad1ed637c 100644
--- a/graphics/transparent_surface.cpp
+++ b/graphics/transparent_surface.cpp
@@ -749,43 +749,30 @@ void TransparentSurface::setAlphaMode(AlphaType mode) {
/*
-
The below two functions are adapted from SDL_rotozoom.c,
taken from SDL_gfx-2.0.18.
-
Its copyright notice:
-
=============================================================================
SDL_rotozoom.c: rotozoomer, zoomer and shrinker for 32bit or 8bit surfaces
-
Copyright (C) 2001-2012 Andreas Schiffler
-
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
-
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
-
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
-
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
-
3. This notice may not be removed or altered from any source
distribution.
-
Andreas Schiffler -- aschiffler at ferzkopp dot net
=============================================================================
-
-
The functions have been adapted for different structures and coordinate
systems.
-
*/