Bugfix Schiffsresistenz: Wenn ein Schiff resistent war, wurde der ganze Zauber nicht gesprochen

This commit is contained in:
Enno Rehling 2004-02-20 21:44:05 +00:00
parent 5276354493
commit c9a8fad508

View file

@ -3083,7 +3083,7 @@ magic(void)
{ /* einige oder alle Ziele waren magieresistent */ { /* einige oder alle Ziele waren magieresistent */
spellparameter *pa = co->par; spellparameter *pa = co->par;
int n; int n;
for (n = 0; n < pa->length; n++) { for (n=0; n!=pa->length;++n) {
if(pa->param[n]->flag != TARGET_RESISTS if(pa->param[n]->flag != TARGET_RESISTS
&& pa->param[n]->flag != TARGET_NOTFOUND) && pa->param[n]->flag != TARGET_NOTFOUND)
{ /* mindestens ein erfolgreicher Zauberversuch, wir machen { /* mindestens ein erfolgreicher Zauberversuch, wir machen
@ -3091,6 +3091,7 @@ magic(void)
break; break;
} }
} }
if (n==pa->length) {
/* zwar wurde mindestens ein Ziel gefunden, das widerstand /* zwar wurde mindestens ein Ziel gefunden, das widerstand
* jedoch dem Zauber. Kosten abziehen und abbrechen. */ * jedoch dem Zauber. Kosten abziehen und abbrechen. */
pay_spell(u, sp, level, co->distance); pay_spell(u, sp, level, co->distance);
@ -3101,6 +3102,8 @@ magic(void)
addmessage(0, u->faction, buf, MSG_MAGIC, ML_MISTAKE); addmessage(0, u->faction, buf, MSG_MAGIC, ML_MISTAKE);
continue; /* äußere Schleife, nächster Zauberer */ continue; /* äußere Schleife, nächster Zauberer */
} }
break;
}
case 2: case 2:
default: default:
/* Zauber war erfolgreich */ /* Zauber war erfolgreich */