allow vengeance against nymphs except for specific case
From: "Ken Arromdee" : > My point is that you should be allowed to take vengeance on thieving > nymphs too. The reasoning "a real knight wouldn't kill a nymph for stealing" > doesn't make sense because the things a real knight would do instead (like > arresting) aren't part of the game. This is a compromise. This doesn't allow vengeance when you were told "you gladly hand over ...", but does for most other cases, and for leprechauns.
This commit is contained in:
@@ -62,6 +62,7 @@ assorted monsters can pass through iron bars; ditto for polymorphed character
|
||||
attempting to dig iron bars will wake nearby monsters instead of yielding
|
||||
"you swing your pick-axe through thin air"
|
||||
autodig won't accept iron bars as candidate location
|
||||
allow knight to retaliate for all thefts except those "you gladly hand over..."
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
@@ -1236,11 +1236,6 @@ do_stone:
|
||||
if (!is_animal(mtmp->data) && !tele_restrict(mtmp))
|
||||
rloc(mtmp);
|
||||
if (is_animal(mtmp->data) && *buf) {
|
||||
/* set mavenge bit for animals so knights won't
|
||||
suffer an alignment penalty during retaliation;
|
||||
note that only happens when the thief succeeds
|
||||
in getting something (*buf != 0) */
|
||||
mtmp->mavenge = 1;
|
||||
if (canseemon(mtmp))
|
||||
pline("%s tries to %s away with %s.",
|
||||
Monnam(mtmp),
|
||||
|
||||
@@ -51,6 +51,7 @@ register struct monst *mtmp;
|
||||
Monnam(mtmp), makeplural(body_part(FOOT)));
|
||||
if(!u.ugold || !rn2(5)) {
|
||||
if (!tele_restrict(mtmp)) rloc(mtmp);
|
||||
/* do not set mtmp->mavenge here; gold on the floor is fair game */
|
||||
monflee(mtmp, 0, FALSE, FALSE);
|
||||
}
|
||||
} else if(u.ugold) {
|
||||
@@ -58,6 +59,7 @@ register struct monst *mtmp;
|
||||
Your("purse feels lighter.");
|
||||
mtmp->mgold += tmp;
|
||||
if (!tele_restrict(mtmp)) rloc(mtmp);
|
||||
mtmp->mavenge = 1;
|
||||
monflee(mtmp, 0, FALSE, FALSE);
|
||||
flags.botl = 1;
|
||||
}
|
||||
@@ -157,6 +159,8 @@ stealarm()
|
||||
freeinv(otmp);
|
||||
pline("%s steals %s!", Monnam(mtmp), doname(otmp));
|
||||
(void) mpickobj(mtmp,otmp); /* may free otmp */
|
||||
/* Implies seduction, "you gladly hand over ..."
|
||||
so we don't set mavenge bit here. */
|
||||
monflee(mtmp, 0, FALSE, FALSE);
|
||||
if (!tele_restrict(mtmp)) rloc(mtmp);
|
||||
break;
|
||||
@@ -398,6 +402,10 @@ gotobj:
|
||||
|
||||
/* do this before removing it from inventory */
|
||||
if (objnambuf) Strcpy(objnambuf, yname(otmp));
|
||||
/* set mavenge bit so knights won't suffer an
|
||||
* alignment penalty during retaliation;
|
||||
*/
|
||||
mtmp->mavenge = 1;
|
||||
|
||||
freeinv(otmp);
|
||||
pline("%s stole %s.", named ? "She" : Monnam(mtmp), doname(otmp));
|
||||
|
||||
Reference in New Issue
Block a user