mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-19 08:06:42 +00:00
KYRA: (EOB) - fix invalid string access in EOB 1
(when entering the memorize/pray menu without having a mage/cleric)
This commit is contained in:
parent
e6b6099d54
commit
a35550d200
@ -1059,6 +1059,9 @@ int EoBCoreEngine::countCharactersWithSpecificItems(int16 itemType, int16 itemVa
|
||||
}
|
||||
|
||||
int EoBCoreEngine::checkInventoryForItem(int character, int16 itemType, int16 itemValue) {
|
||||
if (character < 0 )
|
||||
return -1;
|
||||
|
||||
for (int i = 0; i < 27; i++) {
|
||||
uint16 inv = _characters[character].inventory[i];
|
||||
if (!inv)
|
||||
|
@ -3543,7 +3543,7 @@ int GUI_EoB::selectCharacterDialogue(int id) {
|
||||
_vm->removeInputTop();
|
||||
|
||||
_charSelectRedraw = false;
|
||||
bool abort = false;
|
||||
bool starvedUnconscious = false;
|
||||
int count = 0;
|
||||
int result = -1;
|
||||
int found[6];
|
||||
@ -3558,7 +3558,7 @@ int GUI_EoB::selectCharacterDialogue(int id) {
|
||||
continue;
|
||||
|
||||
if (id != 53 && (!_vm->_characters[i].food || !_vm->testCharacter(i, 4))) {
|
||||
abort = true;
|
||||
starvedUnconscious = true;
|
||||
} else {
|
||||
found[i] = 0;
|
||||
result = i;
|
||||
@ -3569,9 +3569,9 @@ int GUI_EoB::selectCharacterDialogue(int id) {
|
||||
if (!count) {
|
||||
int eid = 0;
|
||||
if (id == 23)
|
||||
eid = abort ? 28 : 72;
|
||||
eid = (starvedUnconscious || _vm->game() == GI_EOB1) ? 28 : 72;
|
||||
else if (id == 26)
|
||||
eid = abort ? 27 : 73;
|
||||
eid = (starvedUnconscious || _vm->game() == GI_EOB1) ? 27 : 73;
|
||||
else if (id == 49)
|
||||
eid = 52;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user