[Scummvm-git-logs] scummvm master -> 08af3ad0d705c909d5ce3cb2d5d6817809935350
whiterandrek
whiterandrek at gmail.com
Thu May 21 08:05:26 UTC 2020
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
c7f5aefa22 PETKA: added saving/loading of operation goto
08af3ad0d7 PETKA: fix Menu operation
Commit: c7f5aefa22b6fd3dd3e7611f851738cbe5cc3d3f
https://github.com/scummvm/scummvm/commit/c7f5aefa22b6fd3dd3e7611f851738cbe5cc3d3f
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T11:04:02+03:00
Commit Message:
PETKA: added saving/loading of operation goto
Changed paths:
engines/petka/big_dialogue.cpp
diff --git a/engines/petka/big_dialogue.cpp b/engines/petka/big_dialogue.cpp
index 49bc87a063..b5871c3463 100644
--- a/engines/petka/big_dialogue.cpp
+++ b/engines/petka/big_dialogue.cpp
@@ -229,6 +229,9 @@ void BigDialogue::load(Common::ReadStream *s) {
_ops[i].menu.bits = (byte)op;
_ops[i].menu.bitField = (uint16)(op >> 8);
break;
+ case kOperationGoTo:
+ _ops[i].goTo.opIndex = (uint16)(op);
+ break;
case kOperationDisableMenuItem:
_ops[i].disableMenuItem.opIndex = (uint16)op;
_ops[i].disableMenuItem.bit = (byte)(op >> 16);
@@ -267,6 +270,10 @@ void BigDialogue::save(Common::WriteStream *s) {
s->writeUint16LE(_ops[i].menu.bitField);
s->writeByte(kOperationMenu);
break;
+ case kOperationGoTo:
+ s->writeUint16LE(_ops[i].goTo.opIndex);
+ s->writeUint16LE(MKTAG16(0, kOperationGoTo));
+ break;
case kOperationDisableMenuItem:
s->writeUint16LE(_ops[i].disableMenuItem.opIndex);
s->writeUint16LE(MKTAG16(_ops[i].disableMenuItem.bit, kOperationDisableMenuItem));
Commit: 08af3ad0d705c909d5ce3cb2d5d6817809935350
https://github.com/scummvm/scummvm/commit/08af3ad0d705c909d5ce3cb2d5d6817809935350
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-05-21T11:05:10+03:00
Commit Message:
PETKA: fix Menu operation
Changed paths:
engines/petka/big_dialogue.cpp
diff --git a/engines/petka/big_dialogue.cpp b/engines/petka/big_dialogue.cpp
index b5871c3463..79eb655a22 100644
--- a/engines/petka/big_dialogue.cpp
+++ b/engines/petka/big_dialogue.cpp
@@ -327,13 +327,14 @@ void BigDialogue::next(int choice) {
choice = 0;
if (_currOp->menu.bits <= choice)
choice = _currOp->menu.bits - 1;
+ uint16 bitField = _currOp->menu.bitField;
uint bits = _currOp->menu.bits;
uint bit = 1;
uint i = 0;
while (bits) {
if (_currOp->type == kOperationBreak) {
bits--;
- if (!(bit & _currOp->menu.bitField) && i <= (uint)choice)
+ if (!(bit & bitField) && i <= (uint)choice)
choice++;
bit *= 2;
i++;
@@ -341,6 +342,7 @@ void BigDialogue::next(int choice) {
_currOp += 1;
}
_currOp += choice;
+ processed = false;
break;
}
case kOperationGoTo: {
More information about the Scummvm-git-logs
mailing list