don't call it "your pet" until after it is tamed

Reported directly to devteam, the code was using "Your little dog
devours the tripe ration" during the taming process, prior to the
pet becoming yours.
This commit is contained in:
nhmall
2026-08-16 10:31:31 -04:00
parent 845603e2d8
commit f11b65c680
4 changed files with 25 additions and 3 deletions
+2
View File
@@ -707,9 +707,11 @@ extern char *x_monnam(struct monst *, int, const char *, int, boolean) NONNULLAR
extern char *l_monnam(struct monst *) NONNULLARG1;
extern char *mon_nam(struct monst *) NONNULLARG1;
extern char *noit_mon_nam(struct monst *) NONNULLARG1;
extern char *noit_or_your_mon_nam(struct monst *) NONNULLARG1;
extern char *some_mon_nam(struct monst *) NONNULLARG1;
extern char *Monnam(struct monst *) NONNULLARG1;
extern char *noit_Monnam(struct monst *) NONNULLARG1;
extern char *noit_or_your_Monnam(struct monst *) NONNULLARG1;
extern char *Some_Monnam(struct monst *) NONNULLARG1;
extern char *noname_monnam(struct monst *, int) NONNULLARG1;
extern char *m_monnam(struct monst *) NONNULLARG1;
+18
View File
@@ -1059,6 +1059,15 @@ noit_mon_nam(struct monst *mtmp)
FALSE);
}
char *
noit_or_your_mon_nam(struct monst *mtmp)
{
return x_monnam(mtmp, ARTICLE_THE, (char *) 0,
(has_mgivenname(mtmp) ? (SUPPRESS_SADDLE | SUPPRESS_IT)
: SUPPRESS_IT),
FALSE);
}
/* in between noit_mon_nam() and mon_nam(); if the latter would pick "it",
use "someone" (for humanoids) or "something" (for others) instead */
char *
@@ -1088,6 +1097,15 @@ noit_Monnam(struct monst *mtmp)
return bp;
}
char *
noit_or_your_Monnam(struct monst *mtmp)
{
char *bp = noit_or_your_mon_nam(mtmp);
*bp = highc(*bp);
return bp;
}
char *
Some_Monnam(struct monst *mtmp)
{
+4 -2
View File
@@ -286,8 +286,10 @@ dog_eat(struct monst *mtmp,
if (tunnels(mtmp->data))
pline_mon(mtmp, "%s digs in.", noit_Monnam(mtmp));
else
pline_mon(mtmp, "%s %s %s.", noit_Monnam(mtmp),
devour ? "devours" : "eats", obj_name);
pline_mon(mtmp, "%s %s %s.",
devour ? noit_or_your_Monnam(mtmp)
: noit_Monnam(mtmp),
devour ? "devours" : "eats", obj_name);
} else if (seeobj) {
obj_name = distant_name(obj, doname);
pline("It %s %s.", devour ? "devours" : "eats", obj_name);
+1 -1
View File
@@ -3586,7 +3586,7 @@ miss(const char *str, struct monst *mtmp)
{
pline("%s %s %s.", The(str), vtense(str, "miss"),
((cansee(gb.bhitpos.x, gb.bhitpos.y) || canspotmon(mtmp))
&& flags.verbose) ? mon_nam(mtmp) : "it");
&& flags.verbose) ? ((mtmp->mtame) ? noit_mon_nam(mtmp) : mon_nam(mtmp)) : "it");
}
staticfn void