[Scummvm-git-logs] scummvm master -> 147bb22457af2bcce39fd779406228a08dbbffe5
whiterandrek
whiterandrek at gmail.com
Thu May 21 07:00:00 UTC 2020
This automated email contains information about 8 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
d6ee4948a9 PETKA: JANITORIAL: fix comment
07b64c8797 PETKA: fix loading room from map
b8f7599d27 PETKA: QObjectCursor now inherits proper class
28612d2e82 PETKA: fix clicking on text objects
d95e395735 PETKA: fix Text constructor
4c94396a0a PETKA: fix drawing objects which have negative z index
fc9a8fc27f PETKA: fix crash when using dialog menu
147bb22457 PETKA: fix moving mouse on text choice object
Commit: d6ee4948a9dd7b29681806739efcb668142fd3ca
https://github.com/scummvm/scummvm/commit/d6ee4948a9dd7b29681806739efcb668142fd3ca
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:44:08+03:00
Commit Message:
PETKA: JANITORIAL: fix comment
Changed paths:
engines/petka/objects/object_cursor.h
diff --git a/engines/petka/objects/object_cursor.h b/engines/petka/objects/object_cursor.h
index b908d5674f..b997971418 100644
--- a/engines/petka/objects/object_cursor.h
+++ b/engines/petka/objects/object_cursor.h
@@ -53,6 +53,6 @@ public:
QMessageObject *_invObj;
};
-} // End of naespace Petka
+} // End of namespace Petka
#endif
Commit: 07b64c87979d9558da756445b7f41c67ffca6f96
https://github.com/scummvm/scummvm/commit/07b64c87979d9558da756445b7f41c67ffca6f96
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:46:05+03:00
Commit Message:
PETKA: fix loading room from map
Changed paths:
engines/petka/interfaces/main.cpp
engines/petka/q_system.cpp
diff --git a/engines/petka/interfaces/main.cpp b/engines/petka/interfaces/main.cpp
index 60721ac000..272916cafc 100644
--- a/engines/petka/interfaces/main.cpp
+++ b/engines/petka/interfaces/main.cpp
@@ -82,13 +82,13 @@ void InterfaceMain::start(int id) {
}
void InterfaceMain::loadRoom(int id, bool fromSave) {
- stop();
+ QSystem *sys = g_vm->getQSystem();
+ sys->_currInterface->stop();
if (_roomId == id)
return;
unloadRoom(fromSave);
_roomId = id;
const BGInfo *info = findBGInfo(id);
- QSystem *sys = g_vm->getQSystem();
QObjectBG *room = (QObjectBG *)sys->findObject(id);
g_vm->getQSystem()->_room = room;
g_vm->resMgr()->loadBitmap(room->_resourceId);
diff --git a/engines/petka/q_system.cpp b/engines/petka/q_system.cpp
index 724bd5fe90..a91d2e0401 100644
--- a/engines/petka/q_system.cpp
+++ b/engines/petka/q_system.cpp
@@ -172,12 +172,11 @@ bool QSystem::init() {
_panelInterface.reset(new InterfacePanel());
_mapInterface.reset(new InterfaceMap());
if (g_vm->getPart() == 0) {
- _startupInterface->start(0);
_prevInterface = _currInterface = _startupInterface.get();
} else {
- _mainInterface->start(0);
_prevInterface = _currInterface = _mainInterface.get();
}
+ _currInterface->start(0);
return true;
}
Commit: b8f7599d276e5b372a283297511c5647943360c1
https://github.com/scummvm/scummvm/commit/b8f7599d276e5b372a283297511c5647943360c1
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:47:51+03:00
Commit Message:
PETKA: QObjectCursor now inherits proper class
Changed paths:
engines/petka/objects/object_cursor.h
diff --git a/engines/petka/objects/object_cursor.h b/engines/petka/objects/object_cursor.h
index b997971418..b007564859 100644
--- a/engines/petka/objects/object_cursor.h
+++ b/engines/petka/objects/object_cursor.h
@@ -37,7 +37,7 @@ enum ActionType {
kActionObjUse
};
-class QObjectCursor : public QObject {
+class QObjectCursor : public QMessageObject {
public:
QObjectCursor();
Commit: 28612d2e824ad4748494065b02b271e0ddd5af28
https://github.com/scummvm/scummvm/commit/28612d2e824ad4748494065b02b271e0ddd5af28
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:51:29+03:00
Commit Message:
PETKA: fix clicking on text objects
Changed paths:
engines/petka/objects/text.h
diff --git a/engines/petka/objects/text.h b/engines/petka/objects/text.h
index d686c2129e..14bcfbda03 100644
--- a/engines/petka/objects/text.h
+++ b/engines/petka/objects/text.h
@@ -56,6 +56,7 @@ public:
void draw() override;
void update(int time) override;
void onClick(int x, int y) override;
+ bool isInPoint(int x, int y) override { return true; }
private:
Common::U32String _phrase;
@@ -68,6 +69,7 @@ public:
void draw() override;
void onClick(int x, int y) override;
+ bool isInPoint(int x, int y) override { return true; }
};
class QTextChoice : public QText {
@@ -76,6 +78,7 @@ public:
void onMouseMove(int x, int y) override;
void onClick(int x, int y) override;
+ bool isInPoint(int x, int y) override { return true; }
private:
Common::Array<Common::Rect> _rects;
Commit: d95e39573580a292dbb55c4420027cfc8f3356b0
https://github.com/scummvm/scummvm/commit/d95e39573580a292dbb55c4420027cfc8f3356b0
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:52:15+03:00
Commit Message:
PETKA: fix Text constructor
Changed paths:
engines/petka/objects/text.cpp
diff --git a/engines/petka/objects/text.cpp b/engines/petka/objects/text.cpp
index 5a86ffa866..0373087750 100644
--- a/engines/petka/objects/text.cpp
+++ b/engines/petka/objects/text.cpp
@@ -88,7 +88,10 @@ void QText::drawOutline(Graphics::Surface *s, uint16 color) {
}
}
-QText::QText() {}
+QText::QText() {
+ _resourceId = -2;
+ _z = 3000;
+}
QTextPhrase::QTextPhrase(const Common::U32String &text, uint16 textColor, uint16 outlineColor)
: QText(text, textColor, outlineColor), _phrase(text), _time(0) {}
Commit: 4c94396a0ae1b330d5464aa4c44fc967ef9cdd1b
https://github.com/scummvm/scummvm/commit/4c94396a0ae1b330d5464aa4c44fc967ef9cdd1b
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:54:37+03:00
Commit Message:
PETKA: fix drawing objects which have negative z index
Changed paths:
engines/petka/objects/object.h
diff --git a/engines/petka/objects/object.h b/engines/petka/objects/object.h
index 601da04179..cf80180ffe 100644
--- a/engines/petka/objects/object.h
+++ b/engines/petka/objects/object.h
@@ -45,7 +45,7 @@ public:
public:
int32 _resourceId;
- uint32 _z;
+ int32 _z;
};
class Sound;
Commit: fc9a8fc27f819c24300e132c7d63ec79b7931424
https://github.com/scummvm/scummvm/commit/fc9a8fc27f819c24300e132c7d63ec79b7931424
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:56:31+03:00
Commit Message:
PETKA: fix crash when using dialog menu
Changed paths:
engines/petka/big_dialogue.cpp
engines/petka/interfaces/dialog_interface.cpp
engines/petka/objects/text.cpp
diff --git a/engines/petka/big_dialogue.cpp b/engines/petka/big_dialogue.cpp
index 7a15678b6c..49bc87a063 100644
--- a/engines/petka/big_dialogue.cpp
+++ b/engines/petka/big_dialogue.cpp
@@ -96,17 +96,17 @@ const Common::U32String *BigDialogue::getSpeechInfo(int *talkerId, const char **
return nullptr;
switch (_currOp->type) {
case kOperationMenu: {
- Operation *oldOp = _currOp;
+ Operation *menuOp = _currOp;
uint bit = 1;
if (_currOp->menu.bits <= choice || choice < 0) {
break;
}
while (true) {
_currOp += 1;
- if (choice == 0 && (bit & _currOp->menu.bitField))
+ if (choice == 0 && (bit & menuOp->menu.bitField))
break;
if (_currOp->type == kOperationBreak) {
- if (bit & _currOp->menu.bitField)
+ if (bit & menuOp->menu.bitField)
choice--;
bit *= 2;
}
@@ -114,12 +114,12 @@ const Common::U32String *BigDialogue::getSpeechInfo(int *talkerId, const char **
if (_currOp->type != kOperationPlay)
next();
if (_currOp->type != kOperationPlay) {
- _currOp = oldOp;
+ _currOp = menuOp;
break;
}
uint index = _currOp->play.messageIndex;
- _currOp = oldOp;
+ _currOp = menuOp;
*soundName = _speeches[index].soundName;
*talkerId = _speeches[index].speakerId;
return &_speeches[index].text;
diff --git a/engines/petka/interfaces/dialog_interface.cpp b/engines/petka/interfaces/dialog_interface.cpp
index e1d8cc6031..70d7278459 100644
--- a/engines/petka/interfaces/dialog_interface.cpp
+++ b/engines/petka/interfaces/dialog_interface.cpp
@@ -142,7 +142,7 @@ void DialogInterface::next(int choice) {
Common::Array<Common::U32String> choices;
for (uint i = 0; i < count; ++i) {
int id;
- choices.push_back(*bigDialog->getSpeechInfo(&id, &soundName, -1));
+ choices.push_back(*bigDialog->getSpeechInfo(&id, &soundName, i));
}
qsys->_mainInterface->setTextChoice(choices, 0xFFFF, g_system->getScreenFormat().RGBToColor(0xFF, 0, 0));
@@ -177,6 +177,7 @@ void DialogInterface::end() {
_talker = nullptr;
_state = kIdle;
_id = -1;
+ g_vm->getQSystem()->_currInterface->removeTexts();
restoreCursorState();
if (g_dialogReaction)
processSavedReaction(&g_dialogReaction, _sender);
diff --git a/engines/petka/objects/text.cpp b/engines/petka/objects/text.cpp
index 0373087750..2b915b02de 100644
--- a/engines/petka/objects/text.cpp
+++ b/engines/petka/objects/text.cpp
@@ -167,6 +167,7 @@ QTextChoice::QTextChoice(const Common::Array<Common::U32String> &choices, uint16
int w = 0;
int h = 0;
Common::ScopedPtr<Graphics::Font> font(Graphics::loadTTFFontFromArchive("FreeSans.ttf", 18));
+ _rects.resize(choices.size());
for (uint i = 0; i < _choices.size(); ++i) {
_rects[i] = font->getBoundingBox(_choices[i]);
if (_rects[i].width() > w)
Commit: 147bb22457af2bcce39fd779406228a08dbbffe5
https://github.com/scummvm/scummvm/commit/147bb22457af2bcce39fd779406228a08dbbffe5
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T09:59:26+03:00
Commit Message:
PETKA: fix moving mouse on text choice object
Changed paths:
engines/petka/objects/text.cpp
diff --git a/engines/petka/objects/text.cpp b/engines/petka/objects/text.cpp
index 2b915b02de..00b6e09c9c 100644
--- a/engines/petka/objects/text.cpp
+++ b/engines/petka/objects/text.cpp
@@ -179,11 +179,10 @@ QTextChoice::QTextChoice(const Common::Array<Common::U32String> &choices, uint16
Graphics::Surface *s = g_vm->resMgr()->findOrCreateSurface(-2, w, h);
- int x = _rect.left;
- int y = _rect.top;
+ int y = 0;
for (uint i = 0; i < _choices.size(); ++i) {
- font->drawString(s, _choices[i], 0, y - _rect.top, s->w, color);
- _rects[i].moveTo(x, y);
+ font->drawString(s, _choices[i], 0, y, s->w, color);
+ _rects[i].moveTo(0, y);
y += _rects[i].height();
}
}
More information about the Scummvm-git-logs
mailing list