MM: MM1: Fix spell result display casting wizard spells

This commit is contained in:
Paul Gilbert 2023-02-05 21:12:20 -08:00
parent 22473ec955
commit d94d6545bd
4 changed files with 6 additions and 11 deletions

View File

@ -383,6 +383,7 @@ dialogs:
hit: "hit"
misses: "misses"
for: "for"
takes: "takes"
point: "point"
points: "points"
of_damage: "of damage!"
@ -392,13 +393,6 @@ dialogs:
delay_currently: "(currently= %d)"
infiltration: "infiltrates the ranks!"
exchange_places: "exchange places with (1-%c)?"
takes: "takes "
point: "point"
points: "points"
of_damage: "of damage!"
goes_down: "goes down!!!"
and_goes_down: "and goes down!!!"
dies: "dies!"
status:
0: "(paralyze)"
1: "(webbed) "

View File

@ -1031,7 +1031,7 @@ void Combat::iterateMonsters2Inner() {
idx = 0;
static const byte FLAGS[8] = {
0x40, 0x20, 0x60, 0x10, 8, 4, 2, 1
0x40, 0x20, 0x60, 0x10, 8, 4, 2, 1
};
if ((_monsterP->_field1a & FLAGS[idx]) == FLAGS[idx])
_damage >>= 2;
@ -1083,7 +1083,7 @@ void Combat::iterateMonsters2Inner() {
g_globals->_combat->iterateMonsters2Inner();
};
} else {
msg._ynCallback = []() {
msg._timeoutCallback = []() {
g_globals->_combat->characterDone();
};
}

View File

@ -841,8 +841,7 @@ void Combat::setOption(SelectedOption option) {
}
void Combat::displaySpellResult(const InfoMessage &msg) {
assert(msg._timeoutCallback || msg._keyCallback);
assert(!msg._delaySeconds || !msg._timeoutCallback);
assert(msg._delaySeconds);
_spellResult = msg;
setMode(SPELL_RESULT);

View File

@ -215,6 +215,8 @@ void CastSpell::performSpell(Character *chr) {
default:
// Spell done, but don't display done message
if (isInCombat())
close();
break;
}
}