ASYLUM: Fix two warnings and rename two flags in Encounter class
git-svn-id: http://asylumengine.googlecode.com/svn/trunk@658 0bfb4aae-4ea4-11de-8d8d-752d95cf3e3c
This commit is contained in:
parent
ac0ae2162f
commit
e5b3e4c476
6 changed files with 60 additions and 59 deletions
|
@ -518,7 +518,7 @@ void Actor::update() {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case kActorStatus8:
|
case kActorStatus8:
|
||||||
if (_vm->encounter()->getFlag6()
|
if (_vm->encounter()->isRunning()
|
||||||
|| !_soundResourceId
|
|| !_soundResourceId
|
||||||
|| getSound()->isPlaying(_soundResourceId)) {
|
|| getSound()->isPlaying(_soundResourceId)) {
|
||||||
_frameIndex = (_frameIndex + 1) % _frameCount;
|
_frameIndex = (_frameIndex + 1) % _frameCount;
|
||||||
|
@ -613,7 +613,7 @@ void Actor::updateStatus(ActorStatus actorStatus) {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case kActorStatus9:
|
case kActorStatus9:
|
||||||
if (_vm->encounter()->getFlag6())
|
if (_vm->encounter()->isRunning())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (_vm->getRandomBit() == 1 && isDefaultDirection(15))
|
if (_vm->getRandomBit() == 1 && isDefaultDirection(15))
|
||||||
|
@ -1186,7 +1186,7 @@ void Actor::updateStatusEnabled() {
|
||||||
|
|
||||||
if (_vm->isGameFlagNotSet(kGameFlagScriptProcessing)
|
if (_vm->isGameFlagNotSet(kGameFlagScriptProcessing)
|
||||||
&& isVisible()
|
&& isVisible()
|
||||||
&& !_vm->encounter()->getFlag6()
|
&& !_vm->encounter()->isRunning()
|
||||||
&& !getSpeech()->getSoundResourceId()) {
|
&& !getSpeech()->getSoundResourceId()) {
|
||||||
if (_vm->getRandom(100) < 50) {
|
if (_vm->getRandom(100) < 50) {
|
||||||
if (getWorld()->chapter == kChapter13)
|
if (getWorld()->chapter == kChapter13)
|
||||||
|
|
|
@ -50,7 +50,7 @@ namespace Asylum {
|
||||||
|
|
||||||
Encounter::Encounter(AsylumEngine *engine) : _vm(engine),
|
Encounter::Encounter(AsylumEngine *engine) : _vm(engine),
|
||||||
_index(0), _keywordIndex(0), _item(NULL), _objectId1(kObjectNone), _objectId2(kObjectNone), _actorIndex(kActorInvalid),
|
_index(0), _keywordIndex(0), _item(NULL), _objectId1(kObjectNone), _objectId2(kObjectNone), _actorIndex(kActorInvalid),
|
||||||
_flag1(false), _flag2(false), _flag3(false), _flag4(false), _flag5(false), _flag6(false) {
|
_flag1(false), _flag2(false), _flag3(false), _flag4(false), _disablePlayerOnExit(false), _isRunning(false) {
|
||||||
|
|
||||||
// TODO init rest of members
|
// TODO init rest of members
|
||||||
|
|
||||||
|
@ -241,14 +241,14 @@ void Encounter::exit() {
|
||||||
initScript(_item->scriptResourceId);
|
initScript(_item->scriptResourceId);
|
||||||
_flag3 = true;
|
_flag3 = true;
|
||||||
runScript();
|
runScript();
|
||||||
|
|
||||||
setupEntities(true);
|
setupEntities(true);
|
||||||
|
|
||||||
++_item->value;
|
++_item->value;
|
||||||
// Original saves the item back here
|
// Original saves the item back here
|
||||||
|
|
||||||
// Update flags
|
// Update flags
|
||||||
_flag6 = false;
|
_isRunning = false;
|
||||||
getSharedData()->setFlag(kFlag3, true);
|
getSharedData()->setFlag(kFlag3, true);
|
||||||
|
|
||||||
if (_flag2)
|
if (_flag2)
|
||||||
|
@ -256,10 +256,10 @@ void Encounter::exit() {
|
||||||
else
|
else
|
||||||
_flag1 = true;
|
_flag1 = true;
|
||||||
|
|
||||||
if (_flag5)
|
if (_disablePlayerOnExit)
|
||||||
getScene()->getActor()->updateStatus(kActorStatusDisabled);
|
getScene()->getActor()->updateStatus(kActorStatusDisabled);
|
||||||
|
|
||||||
_flag5 = false;
|
_disablePlayerOnExit = false;
|
||||||
|
|
||||||
if (getSound()->getMusicVolume() != Config.musicVolume)
|
if (getSound()->getMusicVolume() != Config.musicVolume)
|
||||||
getSound()->setMusicVolume(Config.musicVolume);
|
getSound()->setMusicVolume(Config.musicVolume);
|
||||||
|
@ -303,7 +303,7 @@ bool Encounter::init() {
|
||||||
getSound()->setMusicVolume(Config.musicVolume - 500);
|
getSound()->setMusicVolume(Config.musicVolume - 500);
|
||||||
|
|
||||||
if (!getSharedData()->getMatteBarHeight()) {
|
if (!getSharedData()->getMatteBarHeight()) {
|
||||||
_flag6 = true;
|
_isRunning = true;
|
||||||
_data_455BD4 = false;
|
_data_455BD4 = false;
|
||||||
_data_455BD8 = false;
|
_data_455BD8 = false;
|
||||||
_data_455BDC = false;
|
_data_455BDC = false;
|
||||||
|
@ -314,7 +314,7 @@ bool Encounter::init() {
|
||||||
_rectIndex = -1;
|
_rectIndex = -1;
|
||||||
_value1 = 0;
|
_value1 = 0;
|
||||||
_data_455BF4 = 0;
|
_data_455BF4 = 0;
|
||||||
_data_455BF8 = false;
|
_data_455BF8 = 0;
|
||||||
_data_455B14 = -1;
|
_data_455B14 = -1;
|
||||||
|
|
||||||
getSpeech()->resetTextData();
|
getSpeech()->resetTextData();
|
||||||
|
@ -346,10 +346,10 @@ bool Encounter::update() {
|
||||||
|
|
||||||
if (_objectId3) {
|
if (_objectId3) {
|
||||||
_data_455BD0 = false;
|
_data_455BD0 = false;
|
||||||
|
|
||||||
Object *object = getWorld()->getObjectById(_objectId3);
|
Object *object = getWorld()->getObjectById(_objectId3);
|
||||||
id = object->getResourceId();
|
id = object->getResourceId();
|
||||||
|
|
||||||
if (object->getFrameIndex() == object->getFrameCount() - 1) {
|
if (object->getFrameIndex() == object->getFrameCount() - 1) {
|
||||||
switch (getVariable(3)) {
|
switch (getVariable(3)) {
|
||||||
default:
|
default:
|
||||||
|
@ -398,13 +398,14 @@ bool Encounter::update() {
|
||||||
_data_455BF4 = 2;
|
_data_455BF4 = 2;
|
||||||
runScript();
|
runScript();
|
||||||
}
|
}
|
||||||
bool doScript;
|
|
||||||
if ((getSpeech()->getSoundResourceId()
|
bool doScript = false;
|
||||||
&& !getSound()->isPlaying(getSpeech()->getSoundResourceId())
|
if ((getSpeech()->getSoundResourceId()
|
||||||
|
&& !getSound()->isPlaying(getSpeech()->getSoundResourceId())
|
||||||
&& !_data_455BE0)
|
&& !_data_455BE0)
|
||||||
|| (getSpeech()->getTick() && tick >= getSpeech()->getTick()))
|
|| (getSpeech()->getTick() && tick >= getSpeech()->getTick()))
|
||||||
doScript = true;
|
doScript = true;
|
||||||
|
|
||||||
if (!getSharedData()->getMatteBarHeight() && doScript && _flag4) {
|
if (!getSharedData()->getMatteBarHeight() && doScript && _flag4) {
|
||||||
if (!setupSpeech(id))
|
if (!setupSpeech(id))
|
||||||
runScript();
|
runScript();
|
||||||
|
@ -415,8 +416,8 @@ bool Encounter::update() {
|
||||||
if (!getSharedData()->getFlag(kFlagRedraw)) {
|
if (!getSharedData()->getFlag(kFlagRedraw)) {
|
||||||
if (updateScreen())
|
if (updateScreen())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
getSharedData()->setFlag(kFlagRedraw, true);
|
getSharedData()->setFlag(kFlagRedraw, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tick >= getSharedData()->getNextScreenUpdate() && getSharedData()->getFlag(kFlagRedraw)) {
|
if (tick >= getSharedData()->getNextScreenUpdate() && getSharedData()->getFlag(kFlagRedraw)) {
|
||||||
|
@ -429,7 +430,7 @@ bool Encounter::update() {
|
||||||
getSharedData()->setFlag(kFlagRedraw, false);
|
getSharedData()->setFlag(kFlagRedraw, false);
|
||||||
getSharedData()->setNextScreenUpdate(tick + 55);
|
getSharedData()->setNextScreenUpdate(tick + 55);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -443,8 +444,8 @@ bool Encounter::key(const AsylumEvent &evt) {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Common::KEYCODE_ESCAPE:
|
case Common::KEYCODE_ESCAPE:
|
||||||
if (!isSpeaking()
|
if (!isSpeaking()
|
||||||
&& _data_455BD0
|
&& _data_455BD0
|
||||||
&& !getSpeech()->getTextData()
|
&& !getSpeech()->getTextData()
|
||||||
&& !getSpeech()->getTextDataPos())
|
&& !getSpeech()->getTextDataPos())
|
||||||
_data_455BD4 = true;
|
_data_455BD4 = true;
|
||||||
|
@ -473,19 +474,19 @@ bool Encounter::mouse(const AsylumEvent &evt) {
|
||||||
if (_rectIndex == -1) {
|
if (_rectIndex == -1) {
|
||||||
if (!isSpeaking())
|
if (!isSpeaking())
|
||||||
choose(getKeywordIndex());
|
choose(getKeywordIndex());
|
||||||
|
|
||||||
_data_455BD8 = false;
|
_data_455BD8 = false;
|
||||||
} else {
|
} else {
|
||||||
_rectIndex = -1;
|
_rectIndex = -1;
|
||||||
updateDrawingStatus1(_rectIndex);
|
updateDrawingStatus1(_rectIndex);
|
||||||
_data_455BD8 = false;
|
_data_455BD8 = false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
case Common::EVENT_RBUTTONDOWN:
|
case Common::EVENT_RBUTTONDOWN:
|
||||||
if (!isSpeaking()
|
if (!isSpeaking()
|
||||||
&& _data_455BD0
|
&& _data_455BD0
|
||||||
&& !getSpeech()->getTextData()
|
&& !getSpeech()->getTextData()
|
||||||
&& !getSpeech()->getTextDataPos())
|
&& !getSpeech()->getTextDataPos())
|
||||||
_data_455BD4 = true;
|
_data_455BD4 = true;
|
||||||
|
@ -677,7 +678,7 @@ bool Encounter::setupSpeech(ResourceId id) {
|
||||||
|
|
||||||
getSpeech()->setTextResourceId(getSpeech()->getTextResourceId() + 1);
|
getSpeech()->setTextResourceId(getSpeech()->getTextResourceId() + 1);
|
||||||
setupSpeechText();
|
setupSpeechText();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -706,7 +707,7 @@ bool Encounter::drawBackground() {
|
||||||
if (Config.performance > 1) {
|
if (Config.performance > 1) {
|
||||||
if (_vm->isGameFlagSet(kGameFlag528)) {
|
if (_vm->isGameFlagSet(kGameFlag528)) {
|
||||||
Common::Point origin;
|
Common::Point origin;
|
||||||
|
|
||||||
getScreen()->addGraphicToQueueCrossfade(_background.resourceId,
|
getScreen()->addGraphicToQueueCrossfade(_background.resourceId,
|
||||||
_background.frameIndex,
|
_background.frameIndex,
|
||||||
_point,
|
_point,
|
||||||
|
@ -715,16 +716,16 @@ bool Encounter::drawBackground() {
|
||||||
_background.transTableNum);
|
_background.transTableNum);
|
||||||
} else {
|
} else {
|
||||||
Common::Point origin(getWorld()->xLeft, getWorld()->yTop);
|
Common::Point origin(getWorld()->xLeft, getWorld()->yTop);
|
||||||
|
|
||||||
getScreen()->addGraphicToQueueCrossfade(_background.resourceId,
|
getScreen()->addGraphicToQueueCrossfade(_background.resourceId,
|
||||||
_background.frameIndex,
|
_background.frameIndex,
|
||||||
_point,
|
_point,
|
||||||
getWorld()->backgroundImage,
|
getWorld()->backgroundImage,
|
||||||
origin,
|
origin,
|
||||||
_background.transTableNum);
|
_background.transTableNum);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
getScreen()->draw(_background.resourceId, _background.frameIndex, _point.x, _point.y, 0);
|
getScreen()->draw(_background.resourceId, _background.frameIndex, _point.x, _point.y, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_data_455BE4) {
|
if (_data_455BE4) {
|
||||||
|
@ -749,7 +750,7 @@ bool Encounter::drawBackground() {
|
||||||
|
|
||||||
bool Encounter::drawPortraits() {
|
bool Encounter::drawPortraits() {
|
||||||
bool ret = true;
|
bool ret = true;
|
||||||
|
|
||||||
if (_data_455BD4) {
|
if (_data_455BD4) {
|
||||||
_portrait1.transTableMax = 0;
|
_portrait1.transTableMax = 0;
|
||||||
_portrait2.transTableMax = 0;
|
_portrait2.transTableMax = 0;
|
||||||
|
@ -822,7 +823,7 @@ bool Encounter::drawPortraits() {
|
||||||
|
|
||||||
_portrait2.frameIndex %= _portrait2.frameCount;
|
_portrait2.frameIndex %= _portrait2.frameCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_data_455BD4)
|
if (_data_455BD4)
|
||||||
if (_portrait1.transTableNum == _portrait1.transTableMax
|
if (_portrait1.transTableNum == _portrait1.transTableMax
|
||||||
&& _portrait2.transTableNum == _portrait2.transTableMax)
|
&& _portrait2.transTableNum == _portrait2.transTableMax)
|
||||||
|
@ -835,7 +836,7 @@ void Encounter::drawStructs() {
|
||||||
// Drawing structure 1
|
// Drawing structure 1
|
||||||
if (_drawingStructs[0].transTableNum < -1 || _drawingStructs[0].transTableNum > 3)
|
if (_drawingStructs[0].transTableNum < -1 || _drawingStructs[0].transTableNum > 3)
|
||||||
error("[Encounter::drawStructs] Something got <redacted> wrong!");
|
error("[Encounter::drawStructs] Something got <redacted> wrong!");
|
||||||
|
|
||||||
if (checkKeywords2() || _drawingStructs[0].transTableNum > -1) {
|
if (checkKeywords2() || _drawingStructs[0].transTableNum > -1) {
|
||||||
int32 val = _drawingStructs[0].transTableNum;
|
int32 val = _drawingStructs[0].transTableNum;
|
||||||
|
|
||||||
|
@ -858,10 +859,10 @@ void Encounter::drawStructs() {
|
||||||
_drawingStructs[0].point2.y,
|
_drawingStructs[0].point2.y,
|
||||||
0,
|
0,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
_drawingStructs[0].status = 0;
|
_drawingStructs[0].status = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0:
|
case 0:
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
|
@ -878,7 +879,7 @@ void Encounter::drawStructs() {
|
||||||
--_drawingStructs[0].transTableNum;
|
--_drawingStructs[0].transTableNum;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
getScreen()->draw(_drawingStructs[0].resourceId,
|
getScreen()->draw(_drawingStructs[0].resourceId,
|
||||||
_drawingStructs[0].frameIndex,
|
_drawingStructs[0].frameIndex,
|
||||||
|
@ -917,10 +918,10 @@ void Encounter::drawStructs() {
|
||||||
_drawingStructs[1].point2.y,
|
_drawingStructs[1].point2.y,
|
||||||
0,
|
0,
|
||||||
0);
|
0);
|
||||||
|
|
||||||
_drawingStructs[1].status = 0;
|
_drawingStructs[1].status = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0:
|
case 0:
|
||||||
case 1:
|
case 1:
|
||||||
case 2:
|
case 2:
|
||||||
|
@ -937,7 +938,7 @@ void Encounter::drawStructs() {
|
||||||
--_drawingStructs[1].transTableNum;
|
--_drawingStructs[1].transTableNum;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
getScreen()->draw(_drawingStructs[1].resourceId,
|
getScreen()->draw(_drawingStructs[1].resourceId,
|
||||||
_drawingStructs[1].frameIndex,
|
_drawingStructs[1].frameIndex,
|
||||||
|
@ -956,7 +957,7 @@ void Encounter::drawDialog() {
|
||||||
|
|
||||||
if (_data_455BF8 >= 50)
|
if (_data_455BF8 >= 50)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int32 counter = 0;
|
int32 counter = 0;
|
||||||
|
|
||||||
for (uint32 i = _data_455BF8; i < ARRAYSIZE(_keywordIndexes); i++) {
|
for (uint32 i = _data_455BF8; i < ARRAYSIZE(_keywordIndexes); i++) {
|
||||||
|
@ -964,10 +965,10 @@ void Encounter::drawDialog() {
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int32 index = _keywordIndexes[i];
|
int32 index = _keywordIndexes[i];
|
||||||
|
|
||||||
if (index < 0)
|
if (index < 0)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if ((_item->keywords[index] & KEYWORD_MASK) > 0 && (BYTE1(_keywordIndexes[i]) & 0x80)) {
|
if ((_item->keywords[index] & KEYWORD_MASK) > 0 && (BYTE1(_keywordIndexes[i]) & 0x80)) {
|
||||||
|
|
||||||
if (BYTE1(_keywordIndexes[i]) & 0x20)
|
if (BYTE1(_keywordIndexes[i]) & 0x20)
|
||||||
|
@ -980,7 +981,7 @@ void Encounter::drawDialog() {
|
||||||
|
|
||||||
if (getKeywordIndex() == index)
|
if (getKeywordIndex() == index)
|
||||||
getScreen()->fillRect(x -1, y + 5, getText()->getWidth(MAKE_RESOURCE(kResourcePackShared, 3681)), 18, 0);
|
getScreen()->fillRect(x -1, y + 5, getText()->getWidth(MAKE_RESOURCE(kResourcePackShared, 3681)), 18, 0);
|
||||||
|
|
||||||
getText()->setPosition(x, y);
|
getText()->setPosition(x, y);
|
||||||
getText()->draw(MAKE_RESOURCE(kResourcePackShared, 3681));
|
getText()->draw(MAKE_RESOURCE(kResourcePackShared, 3681));
|
||||||
|
|
||||||
|
@ -996,7 +997,7 @@ void Encounter::drawText(char *text, ResourceId font, int32 y) {
|
||||||
|
|
||||||
//int width = _background.rect.width() - _portrait1.rect.width() - _portrait2.rect.width() - 20;
|
//int width = _background.rect.width() - _portrait1.rect.width() - _portrait2.rect.width() - 20;
|
||||||
//int x = _point.x + _portrait1.rect.width() + 10;
|
//int x = _point.x + _portrait1.rect.width() + 10;
|
||||||
|
|
||||||
error("[Encounter::drawText] not implemented!");
|
error("[Encounter::drawText] not implemented!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1167,7 +1168,7 @@ bool Encounter::updateScreen() {
|
||||||
|
|
||||||
if (_data_455BD4)
|
if (_data_455BD4)
|
||||||
drawStructs();
|
drawStructs();
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1181,11 +1182,11 @@ bool Encounter::updateScreen() {
|
||||||
|
|
||||||
if (_rectIndex == -1 && findRect() == -1)
|
if (_rectIndex == -1 && findRect() == -1)
|
||||||
updateFromRect(-1);
|
updateFromRect(-1);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
drawText(getSpeech()->getTextDataPos(), getWorld()->font3, _point.y);
|
drawText(getSpeech()->getTextDataPos(), getWorld()->font3, _point.y);
|
||||||
drawText(getSpeech()->getTextData(), getWorld()->font1, _point.y);
|
drawText(getSpeech()->getTextData(), getWorld()->font1, _point.y);
|
||||||
|
|
||||||
if (_data_455BE0) {
|
if (_data_455BE0) {
|
||||||
|
|
|
@ -51,8 +51,8 @@ public:
|
||||||
bool getFlag1() { return _flag1; }
|
bool getFlag1() { return _flag1; }
|
||||||
void setFlag3(bool state) { _flag3 = state; }
|
void setFlag3(bool state) { _flag3 = state; }
|
||||||
bool getFlag3() { return _flag3; }
|
bool getFlag3() { return _flag3; }
|
||||||
void setFlag5(bool state) { _flag5 = state; }
|
void disablePlayerOnExit(bool state) { _disablePlayerOnExit = state; }
|
||||||
bool getFlag6() { return _flag6; }
|
bool isRunning() { return _isRunning; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
AsylumEngine *_vm;
|
AsylumEngine *_vm;
|
||||||
|
@ -150,15 +150,15 @@ private:
|
||||||
bool _data_455BE4;
|
bool _data_455BE4;
|
||||||
bool _data_455BE8;
|
bool _data_455BE8;
|
||||||
uint32 _data_455BF4;
|
uint32 _data_455BF4;
|
||||||
bool _data_455BF8;
|
uint32 _data_455BF8;
|
||||||
|
|
||||||
// Internal flags
|
// Internal flags
|
||||||
bool _flag1;
|
bool _flag1;
|
||||||
bool _flag2;
|
bool _flag2;
|
||||||
bool _flag3;
|
bool _flag3;
|
||||||
bool _flag4;
|
bool _flag4;
|
||||||
bool _flag5;
|
bool _disablePlayerOnExit;
|
||||||
bool _flag6;
|
bool _isRunning;
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
|
@ -189,7 +189,7 @@ private:
|
||||||
bool checkKeywords();
|
bool checkKeywords();
|
||||||
bool checkKeywords2();
|
bool checkKeywords2();
|
||||||
void updateFromRect(int32 rectIndex);
|
void updateFromRect(int32 rectIndex);
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// Speech
|
// Speech
|
||||||
void resetSpeech(uint32 a1, uint32 a2);
|
void resetSpeech(uint32 a1, uint32 a2);
|
||||||
|
@ -209,7 +209,7 @@ private:
|
||||||
void drawText(char *text, ResourceId font, int32 y);
|
void drawText(char *text, ResourceId font, int32 y);
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// Misc
|
// Misc
|
||||||
void exit();
|
void exit();
|
||||||
void setupEntities(bool type4);
|
void setupEntities(bool type4);
|
||||||
int32 findRect();
|
int32 findRect();
|
||||||
|
|
|
@ -756,10 +756,10 @@ END_OPCODE
|
||||||
IMPLEMENT_OPCODE(RunEncounter)
|
IMPLEMENT_OPCODE(RunEncounter)
|
||||||
Encounter *encounter = _vm->encounter();
|
Encounter *encounter = _vm->encounter();
|
||||||
|
|
||||||
encounter->setFlag5(cmd->param5);
|
encounter->disablePlayerOnExit(cmd->param5);
|
||||||
|
|
||||||
if (cmd->param6) {
|
if (cmd->param6) {
|
||||||
if (encounter->getFlag6())
|
if (encounter->isRunning())
|
||||||
_lineIncrement = 1;
|
_lineIncrement = 1;
|
||||||
else
|
else
|
||||||
cmd->param6 = 0;
|
cmd->param6 = 0;
|
||||||
|
|
|
@ -666,7 +666,7 @@ void Special::chapter9(Object *object, ActorIndex actorIndex) {
|
||||||
void Special::playChapterSound(Object *object, ActorIndex actorIndex) {
|
void Special::playChapterSound(Object *object, ActorIndex actorIndex) {
|
||||||
ResourceId id = getResourceId(object, actorIndex);
|
ResourceId id = getResourceId(object, actorIndex);
|
||||||
|
|
||||||
if (_vm->encounter()->getFlag6())
|
if (_vm->encounter()->isRunning())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (id != kResourceNone && getSound()->isPlaying(id))
|
if (id != kResourceNone && getSound()->isPlaying(id))
|
||||||
|
|
|
@ -1045,7 +1045,7 @@ void Scene::updateCursor(ActorDirection direction, Common::Rect rect) {
|
||||||
int16 rightLimit = rect.right - 10;
|
int16 rightLimit = rect.right - 10;
|
||||||
Common::Point mouse = getCursor()->position();
|
Common::Point mouse = getCursor()->position();
|
||||||
|
|
||||||
if (getEncounter()->getFlag6()) {
|
if (getEncounter()->isRunning()) {
|
||||||
if (getCursor()->graphicResourceId != _ws->cursorResources[kCursorResourceTalkNPC])
|
if (getCursor()->graphicResourceId != _ws->cursorResources[kCursorResourceTalkNPC])
|
||||||
getCursor()->set(_ws->cursorResources[kCursorResourceTalkNPC]);
|
getCursor()->set(_ws->cursorResources[kCursorResourceTalkNPC]);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue