B08017 - piece of cheese juice

Implement <Someone>'s request that fruit name "foo of bar" yield
juice messages referring to "bar juice" instead of "foo of bar juice".
This commit is contained in:
nethack.rankin
2002-08-19 07:33:13 +00:00
parent b0632cc637
commit 9a9259cf36
4 changed files with 30 additions and 10 deletions

View File

@@ -209,6 +209,7 @@ enlightenment: don't misreport polymorphed lycanthrope as "in beast form"
remove TIMED_DELAY from the features checked for version compatibility
rolling boulder hitting monster stuck in pit should stop even when mon survives
don't see chest trap gas colors while Blind
adjust fruit name in potion juice messages if it has the form "foo of bar"
Platform- and/or Interface-Specific Fixes

View File

@@ -1320,6 +1320,7 @@ E char *FDECL(obj_typename, (int));
E char *FDECL(simple_typename, (int));
E boolean FDECL(obj_is_pname, (struct obj *));
E char *FDECL(distant_name, (struct obj *,char *(*)(OBJ_P)));
E char *NDECL(fruitjuice);
E char *FDECL(xname, (struct obj *));
E char *FDECL(mshot_xname, (struct obj *));
E boolean FDECL(the_unique_obj, (struct obj *obj));

View File

@@ -1,4 +1,4 @@
/* SCCS Id: @(#)objnam.c 3.4 2002/08/06 */
/* SCCS Id: @(#)objnam.c 3.4 2002/08/18 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
@@ -209,6 +209,23 @@ char *FDECL((*func), (OBJ_P));
return str;
}
/* convert player specified fruit name into corresponding fruit juice name
("slice of pizza" -> "pizza juice" rather than "slice of pizza juice") */
char *
fruitjuice()
{
char *buf = nextobuf();
const char *juice = strstri(pl_fruit, " of ");
if (juice)
juice += 4; /* skip past " of " */
else
juice = pl_fruit; /* use it as is */
Sprintf(buf, "%s juice", juice);
return buf;
}
#endif /* OVLB */
#ifdef OVL1

View File

@@ -1,4 +1,4 @@
/* SCCS Id: @(#)potion.c 3.4 2002/07/11 */
/* SCCS Id: @(#)potion.c 3.4 2002/08/18 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
@@ -543,10 +543,11 @@ peffects(otmp)
if (otmp->cursed)
pline("Yecch! This tastes %s.",
Hallucination ? "overripe" : "rotten");
else pline(Hallucination ?
"This tastes like 10%% real %s%s juice all-natural beverage." :
"This tastes like %s%s juice.",
otmp->odiluted ? "reconstituted " : "", pl_fruit);
else
pline(Hallucination ?
"This tastes like 10%% real %s%s all-natural beverage." :
"This tastes like %s%s.",
otmp->odiluted ? "reconstituted " : "", fruitjuice());
if (otmp->otyp == POT_FRUIT_JUICE) {
u.uhunger += (otmp->odiluted ? 5 : 10) * (2 + bcsign(otmp));
newuhs(FALSE);
@@ -636,8 +637,8 @@ peffects(otmp)
case POT_SICKNESS:
pline("Yecch! This stuff tastes like poison.");
if (otmp->blessed) {
pline("(But in fact it was mildly stale %s juice.)",
pl_fruit);
pline("(But in fact it was mildly stale %s.)",
fruitjuice());
if (!Role_if(PM_HEALER)) {
if (otmp->corpsenm)
losehp(1,
@@ -649,8 +650,8 @@ peffects(otmp)
} else {
if(Poison_resistance)
pline(
"(But in fact it was biologically contaminated %s juice.)",
pl_fruit);
"(But in fact it was biologically contaminated %s.)",
fruitjuice());
if (Role_if(PM_HEALER))
pline("Fortunately, you have been immunized.");
else {