struct monst *mtmp;
boolean via_attack;
{
- (void) via_attack; /* AIS: not used yet */
+ if (via_attack && sengr_at("Elbereth", u.ux, u.uy, TRUE)) {
+ You_feel("like a hypocrite.");
+ /* AIS: Yes, I know alignment penalties and bonuses aren't balanced at
+ the moment. This is about correct relative to other "small"
+ penalties; it should be fairly large, as attacking while standing on
+ an Elbereth means that you're requesting peace and then violating
+ your own request. I know 5 isn't actually large, but it's
+ intentionally larger than the 1s and 2s that are normally given for
+ this sort of thing. */
+ adjalign(-5);
+ if (!Blind)
+ pline("The engraving beneath you fades.");
+ del_engr_at(u.ux, u.uy);
+ }
+
/* AIS: Should this be in both places, or just in wakeup()? */
mtmp->mstrategy &= ~STRAT_WAITMASK;
if (!mtmp->mpeaceful)
|| (!mtmp->mpeaceful && in_your_sanctuary(mtmp, 0, 0)))) {
*scared = 1;
monflee(mtmp, rnd(rn2(7) ? 10 : 100), TRUE, TRUE);
-
- /* magical protection won't last forever, so there'll be a
- * chance of the magic being used up regardless of type */
- if (sawscary) {
- wipe_engr_at(seescaryx, seescaryy, 1, TRUE);
- }
} else
*scared = 0;
}