fix up several death messages

<Someone> reported several incorrect death messages
1) "petrified by deliberately gazing at Medusa's hideous countenance" is
too long and won't fit on the tombstone.  I reworded it, which also better
reflects that Medusa's gaze is really an active attack.
2) "killed by war hammer named Mjollnir" for partly identified Mjollnir now
says "killed by a war hammer named Mjollnir".
3) "using a magical horn on himself" was missing the "killed by" prefix
4) there were supposedly cases the the a/an article was missing after being
killed by a monster.  I didn't see where this was occuring (eg AoLS resets
killer_format before it returns), but now done_in_by always resets
killer_format, which should address any such cases.
This commit is contained in:
cohrs
2002-11-28 20:44:54 +00:00
parent 2492ed0de1
commit 9b1b13ef1d
5 changed files with 6 additions and 4 deletions
+1
View File
@@ -315,6 +315,7 @@ only hard helmets protect against falling piercers
don't crash teleporting out of a monster while engulfed, punished but not don't crash teleporting out of a monster while engulfed, punished but not
carrying the ball carrying the ball
web breaking should consider steed strength and other characteristics web breaking should consider steed strength and other characteristics
various missing or inappropriate "killed by" death messages
Platform- and/or Interface-Specific Fixes Platform- and/or Interface-Specific Fixes
+2 -1
View File
@@ -1006,7 +1006,8 @@ boolean twoweap; /* used to restore twoweapon mode if wielded weapon returns */
body_part(ARM)); body_part(ARM));
(void) artifact_hit((struct monst *)0, (void) artifact_hit((struct monst *)0,
&youmonst, obj, &dmg, 0); &youmonst, obj, &dmg, 0);
losehp(dmg, xname(obj), KILLED_BY); losehp(dmg, xname(obj),
obj_is_pname(obj) ? KILLED_BY : KILLED_BY_AN);
} }
if (ship_object(obj, u.ux, u.uy, FALSE)) if (ship_object(obj, u.ux, u.uy, FALSE))
return; return;
+1
View File
@@ -190,6 +190,7 @@ register struct monst *mtmp;
You("die..."); You("die...");
mark_synch(); /* flush buffered screen output */ mark_synch(); /* flush buffered screen output */
buf[0] = '\0'; buf[0] = '\0';
killer_format = KILLED_BY_AN;
/* "killed by the high priest of Crom" is okay, "killed by the high /* "killed by the high priest of Crom" is okay, "killed by the high
priest" alone isn't */ priest" alone isn't */
if ((mtmp->data->geno & G_UNIQ) != 0 && !(mtmp->data == &mons[PM_HIGH_PRIEST] && !mtmp->ispriest)) { if ((mtmp->data->geno & G_UNIQ) != 0 && !(mtmp->data == &mons[PM_HIGH_PRIEST] && !mtmp->ispriest)) {
+1 -1
View File
@@ -409,7 +409,7 @@ struct obj *instr;
if ((damage = zapyourself(instr, TRUE)) != 0) { if ((damage = zapyourself(instr, TRUE)) != 0) {
char buf[BUFSZ]; char buf[BUFSZ];
Sprintf(buf, "using a magical horn on %sself", uhim()); Sprintf(buf, "using a magical horn on %sself", uhim());
losehp(damage, buf, NO_KILLER_PREFIX); losehp(damage, buf, KILLED_BY);
} }
} else { } else {
buzz((instr->otyp == FROST_HORN) ? AD_COLD-1 : AD_FIRE-1, buzz((instr->otyp == FROST_HORN) ? AD_COLD-1 : AD_FIRE-1,
+1 -2
View File
@@ -1020,8 +1020,7 @@ dogaze()
/* as if gazing at a sleeping anything is fruitful... */ /* as if gazing at a sleeping anything is fruitful... */
You("turn to stone..."); You("turn to stone...");
killer_format = KILLED_BY; killer_format = KILLED_BY;
killer = killer = "deliberately meeting Medusa's gaze";
"deliberately gazing at Medusa's hideous countenance";
done(STONING); done(STONING);
} }
} }