[Scummvm-git-logs] scummvm master -> 47d7672d20656d1be942e04202662fc590252e30
whiterandrek
whiterandrek at gmail.com
Fri May 22 13:02:39 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
47d7672d20 PETKA: implemented holding messages
Commit: 47d7672d20656d1be942e04202662fc590252e30
https://github.com/scummvm/scummvm/commit/47d7672d20656d1be942e04202662fc590252e30
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-22T15:57:21+03:00
Commit Message:
PETKA: implemented holding messages
Changed paths:
engines/petka/objects/heroes.cpp
engines/petka/objects/object.cpp
engines/petka/objects/object.h
engines/petka/q_system.cpp
diff --git a/engines/petka/objects/heroes.cpp b/engines/petka/objects/heroes.cpp
index 5e88328c61..c74d875318 100644
--- a/engines/petka/objects/heroes.cpp
+++ b/engines/petka/objects/heroes.cpp
@@ -111,7 +111,7 @@ void QObjectPetka::walk(int x, int y) {
_field7C = 0;
_time = 0;
- _msgProcessingPaused = true;
+ _holdMessages = true;
}
} else {
setPos(x, y);
@@ -216,7 +216,7 @@ void QObjectPetka::updateWalk() {
} else {
processMessage(msg);
}
- _msgProcessingPaused = false;
+ _holdMessages = false;
g_vm->videoSystem()->makeAllDirty();
}
}
@@ -250,7 +250,7 @@ void QObjectPetka::setReactionAfterWalk(uint index, QReaction **reaction, QMessa
void QObjectPetka::stopWalk() {
_isWalking = false;
- _msgProcessingPaused = false;
+ _holdMessages = false;
Common::List<QMessage> &list = g_vm->getQSystem()->_messages;
for (Common::List<QMessage>::iterator it = list.begin(); it != list.end();) {
diff --git a/engines/petka/objects/object.cpp b/engines/petka/objects/object.cpp
index 5ed1be4743..5c83c64097 100644
--- a/engines/petka/objects/object.cpp
+++ b/engines/petka/objects/object.cpp
@@ -57,7 +57,7 @@ QMessageObject::QMessageObject() {
_isShown = true;
_isActive = true;
_updateZ = 0;
- _msgProcessingPaused = 0;
+ _holdMessages = false;
_notLoopedSound = true;
_startSound = false;
_hasSound = false;
diff --git a/engines/petka/objects/object.h b/engines/petka/objects/object.h
index cde3240871..3f70d1c622 100644
--- a/engines/petka/objects/object.h
+++ b/engines/petka/objects/object.h
@@ -67,7 +67,7 @@ public:
int32 _isShown;
int32 _animate;
int _updateZ;
- int _msgProcessingPaused;
+ bool _holdMessages;
int _isActive;
int _startSound;
int _hasSound;
diff --git a/engines/petka/q_system.cpp b/engines/petka/q_system.cpp
index 0c0c6a5ca9..89c3a30e3b 100644
--- a/engines/petka/q_system.cpp
+++ b/engines/petka/q_system.cpp
@@ -214,7 +214,7 @@ QMessageObject *QSystem::findObject(const Common::String &name) {
void QSystem::update() {
for (Common::List<QMessage>::iterator it = _messages.begin(); it != _messages.end();) {
QMessageObject *obj = findObject(it->objId);
- if (obj) {
+ if (obj && !obj->_holdMessages) {
obj->processMessage(*it);
it = _messages.erase(it);
} else {
@@ -275,7 +275,7 @@ void QSystem::load(Common::ReadStream *s) {
uint count = s->readUint32LE();
for (uint i = 0; i < count; ++i) {
QMessageObject *obj = findObject(readString(s));
- obj->_msgProcessingPaused = s->readUint32LE();
+ obj->_holdMessages = s->readUint32LE();
obj->_status = s->readUint32LE();
obj->_resourceId = s->readUint32LE();
obj->_z = s->readUint32LE();
@@ -315,7 +315,7 @@ void QSystem::save(Common::WriteStream *s) {
s->writeUint32LE(_allObjects.size());
for (uint i = 0; i < _allObjects.size(); ++i) {
writeString(s, _allObjects[i]->_name);
- s->writeUint32LE(_allObjects[i]->_msgProcessingPaused);
+ s->writeUint32LE(_allObjects[i]->_holdMessages);
s->writeUint32LE(_allObjects[i]->_status);
s->writeUint32LE(_allObjects[i]->_resourceId);
s->writeUint32LE(_allObjects[i]->_z);
More information about the Scummvm-git-logs
mailing list