-/* NetHack 3.6 sounds.c $NHDT-Date: 1446713641 2015/11/05 08:54:01 $ $NHDT-Branch: master $:$NHDT-Revision: 1.74 $ */
+/* NetHack 3.6 sounds.c $NHDT-Date: 1570844005 2019/10/12 01:33:25 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.83 $ */
/* Copyright (c) 1989 Janet Walz, Mike Threepoint */
/* NetHack may be freely redistributed. See license for details. */
+/* JNetHack Copyright */
+/* (c) Issei Numata, Naoki Hamada, Shigehiro Miyashita, 1994-2000 */
+/* For 3.4-, Copyright (c) SHIRAKATA Kentaro, 2002-2022 */
+/* JNetHack may be freely redistributed. See license for details. */
+
#include "hack.h"
STATIC_DCL boolean FDECL(mon_is_gecko, (struct monst *));
hallu = Hallucination ? 1 : 0;
if (level.flags.nfountains && !rn2(400)) {
+#if 0 /*JP:T*/
static const char *const fountain_msg[4] = {
"bubbling water.", "water falling on coins.",
"the splashing of a naiad.", "a soda fountain!",
+#else
+ static const char *const fountain_msg[4] = {
+ "\83S\83{\83S\83{\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D", "\83s\83`\83\83\83s\83`\83\83\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D",
+ "\83o\83V\83\83\83o\83V\83\83\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D", "\92Y\8e_\88ù\97¿\82Ì\83V\83\85\81[\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81I",
+#endif
};
You_hear1(fountain_msg[rn2(3) + hallu]);
}
if (level.flags.nsinks && !rn2(300)) {
+#if 0 /*JP:T*/
static const char *const sink_msg[3] = {
"a slow drip.", "a gurgling noise.", "dishes being washed!",
+#else
+ static const char *const sink_msg[3] = {
+ "\90\85\82ª\82Û\82½\82Û\82½\82Æ\97\8e\82¿\82é\89¹\82ð\95·\82¢\82½\81D",
+ "\82ª\82ç\82ª\82ç\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D",
+ "\8eM\82ð\90ô\82¤\89¹\82ð\95·\82¢\82½\81I",
+#endif
};
You_hear1(sink_msg[rn2(2) + hallu]);
}
if (level.flags.has_court && !rn2(200)) {
+#if 0 /*JP:T*/
static const char *const throne_msg[4] = {
"the tones of courtly conversation.",
"a sceptre pounded in judgment.",
"Someone shouts \"Off with %s head!\"", "Queen Beruthiel's cats!",
+#else
+ static const char *const throne_msg[4] = {
+ "\8fã\95i\82È\98b\82µ\90º\82ð\95·\82¢\82½\81D",
+ "\8dÙ\94»\82Åâ\94\82ð\93Ë\82\89¹\82ð\95·\82¢\82½\81D",
+ "\82¾\82ê\82©\82ª\81u\82»\82Ì\82à\82Ì\82Ì\8eñ\82ð\82Í\82Ë\82æ\81I\81v\82Æ\8b©\82Ô\90º\82ð\95·\82¢\82½\81D",
+ "\83x\83\8b\83V\83G\83\8b\89¤\94Ü\82Ì\94L\82Ì\90º\82ð\95·\82¢\82½\81I",
+#endif
};
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
if (DEADMONSTER(mtmp))
}
}
if (level.flags.has_swamp && !rn2(200)) {
+#if 0 /*JP:T*/
static const char *const swamp_msg[3] = {
"hear mosquitoes!", "smell marsh gas!", /* so it's a smell...*/
"hear Donald Duck!",
+#else
+ static const char *const swamp_msg[3] = {
+ "\89á\82Ì\89H\89¹\82ð\95·\82¢\82½\81D",
+ "\95\85\82Á\82½\93õ\82¢\82ª\82µ\82½\81I", /* so it's a smell...*/
+ "\83h\83i\83\8b\83h\83_\83b\83N\82Ì\90º\82ð\95·\82¢\82½\81I",
+#endif
};
You1(swamp_msg[rn2(2) + hallu]);
return;
#endif /* AZTEC_C_WORKAROUND */
{
if (gold_in_vault)
+#if 0 /*JP:T*/
You_hear(!hallu
? "someone counting money."
: "the quarterback calling the play.");
+#else
+ You_hear(!hallu
+ ? "\92N\82©\82ª\82¨\8bà\82ð\90\94\82¦\82Ä\82¢\82é\89¹\82ð\95·\82¢\82½\81D"
+ : "\83N\83H\81[\83^\83o\83b\83N\82ª\8ew\8e¦\82ð\82·\82é\90º\82ð\95·\82¢\82½\81D");
+#endif
else
+/*JP
You_hear("someone searching.");
+*/
+ You_hear("\92N\82©\82ª\91{\8dõ\82µ\82Ä\82¢\82é\89¹\82ð\95·\82¢\82½\81D");
break;
}
- /* fall into... (yes, even for hallucination) */
}
+ /*FALLTHRU*/
case 0:
+/*JP
You_hear("the footsteps of a guard on patrol.");
+*/
+ You_hear("\8cx\94õ\88õ\82Ì\83p\83g\83\8d\81[\83\8b\82·\82é\89¹\82ð\95·\82¢\82½\81D");
break;
case 2:
+/*JP
You_hear("Ebenezer Scrooge!");
+*/
+ You_hear("\82±\82¿\8bT\82Ì\97¼\82³\82ñ\82Ì\90º\82ð\95·\82¢\82½\81I");
break;
}
return;
&& mon_in_room(mtmp, BEEHIVE)) {
switch (rn2(2) + hallu) {
case 0:
+/*JP
You_hear("a low buzzing.");
+*/
+ You_hear("\82Ô\81[\82ñ\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D");
break;
case 1:
+/*JP
You_hear("an angry drone.");
+*/
+ You_hear("\8b»\95±\82µ\82½\97Y\83o\83`\82Ì\89¹\82ð\95·\82¢\82½\81D");
break;
case 2:
+#if 0 /*JP:T*/
You_hear("bees in your %sbonnet!",
uarmh ? "" : "(nonexistent) ");
+#else
+ You_hear("\83n\83`\82ª\82 \82È\82½\82Ì\96X\8eq%s\82Ì\92\86\82É\82¢\82é\89¹\82ð\95·\82¢\82½\81I",
+ uarmh ? "" : "(\94í\82Á\82Ä\82È\82¢\82¯\82Ç)");
+#endif
break;
}
return;
continue;
if ((is_undead(mtmp->data) || is_vampshifter(mtmp))
&& mon_in_room(mtmp, MORGUE)) {
+#if 0 /*JP*/
const char *hair = body_part(HAIR); /* hair/fur/scales */
+#endif
switch (rn2(2) + hallu) {
case 0:
+/*JP
You("suddenly realize it is unnaturally quiet.");
+*/
+ You("\95s\8e©\91R\82È\82\82ç\82¢\90Ã\82©\82È\82Ì\82É\8bC\82Ã\82¢\82½\81D");
break;
case 1:
+#if 0 /*JP:T*/
pline_The("%s on the back of your %s %s up.", hair,
body_part(NECK), vtense(hair, "stand"));
+#else
+ pline("\82 \82È\82½\82Ì%s\82Ì\82¤\82µ\82ë\82Ì%s\82ª\8bt\97§\82Á\82½\81D",
+ body_part(NECK), body_part(HAIR));
+#endif
break;
case 2:
+#if 0 /*JP:T*/
pline_The("%s on your %s %s to stand up.", hair,
body_part(HEAD), vtense(hair, "seem"));
+#else
+ pline("\82 \82È\82½\82Ì%s\82Ì%s\82Í\8bt\97§\82Á\82½\81D",
+ body_part(HEAD), body_part(HAIR));
+#endif
break;
}
return;
}
if (level.flags.has_barracks && !rn2(200)) {
static const char *const barracks_msg[4] = {
+#if 0 /*JP:T*/
"blades being honed.", "loud snoring.", "dice being thrown.",
"General MacArthur!",
+#else
+ "\90n\95¨\82ð\8c¤\82®\89¹\82ð\95·\82¢\82½\81D",
+ "\91å\82«\82È\82¢\82Ñ\82«\82ð\95·\82¢\82½\81D",
+ "\83_\83C\83X\82ª\90U\82ç\82ê\82é\89¹\82ð\95·\82¢\82½\81D",
+ "\83}\83b\83J\81[\83T\81[\8f«\8cR\82Ì\90º\82ð\95·\82¢\82½\81I",
+#endif
};
int count = 0;
}
if (level.flags.has_zoo && !rn2(200)) {
static const char *const zoo_msg[3] = {
+#if 0 /*JP:T*/
"a sound reminiscent of an elephant stepping on a peanut.",
"a sound reminiscent of a seal barking.", "Doctor Dolittle!",
+#else
+ "\8fÛ\82ª\83s\81[\83i\83b\83c\82Ì\8fã\82Å\97x\82é\82æ\82¤\82È\89¹\82ð\95·\82¢\82½\81D",
+ "\83A\83V\83J\82ª\96i\82¦\82é\82æ\82¤\82È\89¹\82ð\95·\82¢\82½\81D",
+ "\83h\83\8a\83g\83\8b\90æ\90¶\82Ì\90º\82ð\95·\82¢\82½\81I",
+#endif
};
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
if (DEADMONSTER(mtmp))
if (tended_shop(sroom)
&& !index(u.ushops, (int) (ROOM_INDEX(sroom) + ROOMOFFSET))) {
static const char *const shop_msg[3] = {
+#if 0 /*JP:T*/
"someone cursing shoplifters.",
"the chime of a cash register.", "Neiman and Marcus arguing!",
+#else
+ "\92N\82©\82ª\93D\96_\82ð\82Ì\82Ì\82µ\82é\90º\82ð\95·\82¢\82½\81D",
+ "\83\8c\83W\82Ì\83`\81[\83\93\82Æ\82¢\82¤\89¹\82ð\95·\82¢\82½\81D",
+ "\83C\83g\81[\82Æ\83\88\81[\83J\83h\81[\82Ì\8bc\98_\82ð\95·\82¢\82½\81I",
+#endif
};
You_hear1(shop_msg[rn2(2) + hallu]);
}
care if telepathy or extended detection reveals that the
priest is not currently standing on the altar; he's mobile). */
static const char *const temple_msg[] = {
+#if 0 /*JP:T*/
"*someone praising %s.", "*someone beseeching %s.",
"#an animal carcass being offered in sacrifice.",
"*a strident plea for donations.",
+#else
+ "*\92N\82©\82ª%s\82ð\8e^\94ü\82µ\82Ä\82¢\82é\82Ì\82ð\95·\82¢\82½\81D",
+ "*\92N\82©\82ª%s\82ð\94M\96]\82µ\82Ä\82¢\82é\82Ì\82ð\95·\82¢\82½\81D",
+ "#\93®\95¨\82Ì\8e\80\91Ì\82ð\90¶\82¯æÑ\82É\95ù\82°\82é\90º\82ð\95·\82¢\82½\81D",
+ "*\8e·\9dX\82É\8añ\95t\82ð\97v\8b\81\82µ\82Ä\82¢\82é\82Ì\82ð\95·\82¢\82½\81D",
+#endif
};
const char *msg;
int trycount = 0, ax = EPRI(mtmp)->shrpos.x,
continue;
break; /* msg is acceptable */
} while (++trycount < 50);
+#if 0 /*JP*/
while (!letter(*msg))
+#else
+ while (*msg == '*' || *msg == '#')
+#endif
++msg; /* skip control flags */
if (index(msg, '%'))
You_hear(msg, halu_gname(EPRI(mtmp)->shralign));
/* and don't produce silly effects when she's clearly visible */
if (mtmp && (hallu || !canseemon(mtmp))) {
static const char *const ora_msg[5] = {
+#if 0 /*JP:T*/
"a strange wind.", /* Jupiter at Dodona */
"convulsive ravings.", /* Apollo at Delphi */
"snoring snakes.", /* AEsculapius at Epidaurus */
"someone say \"No more woodchucks!\"",
"a loud ZOT!" /* both rec.humor.oracle */
+#else
+ "\8aï\96\82È\95\97\82Ì\89¹\82ð\95·\82¢\82½\81D",
+ "\94¼\8b¶\97\90\82Ì\90º\82ð\95·\82¢\82½\81D",
+ "\8eÖ\82Ì\82¢\82Ñ\82«\82ð\95·\82¢\82½\81D",
+ "\92N\82©\82ª\81u\82à\82¤\83E\83b\83h\83`\83\83\83b\83N\82Í\82¢\82ç\82È\82¢\81I\81v\82Æ\8c¾\82Á\82Ä\82¢\82é\90º\82ð\95·\82¢\82½\81D",
+ "\91å\82«\82È\82y\82n\82s\82ð\95·\82¢\82½\81I"
+#endif
};
You_hear1(ora_msg[rn2(3) + hallu * 2]);
}
}
static const char *const h_sounds[] = {
+#if 0 /*JP:T*/
"beep", "boing", "sing", "belche", "creak", "cough",
"rattle", "ululate", "pop", "jingle", "sniffle", "tinkle",
"eep", "clatter", "hum", "sizzle", "twitter", "wheeze",
"rustle", "honk", "lisp", "yodel", "coo", "burp",
"moo", "boom", "murmur", "oink", "quack", "rumble",
"twang", "bellow", "toot", "gargle", "hoot", "warble"
+#else
+ "\83s\81[\83b\82Æ\96Â\82¢\82½",
+ "\91\9b\82¬\82½\82Ä\82½",
+ "\89Ì\82Á\82½",
+ "\82°\82Á\82Õ\82ð\82µ\82½",
+ "\83L\81[\83L\81[\82Æ\96Â\82¢\82½",
+ "\82¹\82«\8d\9e\82ñ\82¾",
+
+ "\83J\83^\83J\83^\96Â\82Á\82½",
+ "\83E\83H\83\93\83E\83H\83\93\96Â\82¢\82½",
+ "\83|\83\93\82Æ\96Â\82Á\82½",
+ "\83`\83\83\83\8a\83\93\82Æ\96Â\82Á\82½",
+ "\83N\83\93\83N\83\93\96Â\82¢\82½",
+ "\83`\83\8a\83\93\83`\83\8a\83\93\82Æ\96Â\82Á\82½",
+
+ "\83C\81[\83b\82Æ\96Â\82¢\82½",
+ "\83J\83`\83\83\83J\83`\83\83\89¹\82ð\97§\82Ä\82½",
+ "\83n\83~\83\93\83O\82µ\82½",
+ "\83W\83\85\81[\83b\82Æ\89¹\82ð\97§\82Ä\82½",
+ "\83s\83\88\83s\83\88\96Â\82¢\82½",
+ "\83[\83C\83[\83C\91§\82ð\82µ\82½",
+
+ "\83J\83T\83J\83T\89¹\82ð\97§\82Ä\82½",
+ "\8cx\93J\82ð\96Â\82ç\82µ\82½",
+ "\90ã\91«\82ç\82¸\82É\82µ\82á\82×\82Á\82½",
+ "\83\88\81[\83f\83\8b\82ð\89Ì\82Á\82½",
+ "\83N\81[\83N\81[\96Â\82¢\82½",
+ "\82°\82Á\82Õ\82ð\82µ\82½",
+
+ "\83\82\81[\82Æ\96Â\82¢\82½",
+ "\94\9a\94\89¹\82ð\8b¿\82©\82¹\82½",
+ "\83u\83c\83u\83c\82Â\82Ô\82â\82¢\82½",
+ "\83u\81[\83u\81[\96Â\82¢\82½",
+ "\83N\83\8f\83b\83N\83\8f\83b\82Æ\96Â\82¢\82½",
+ "\83S\83\8d\83S\83\8d\96Â\82Á\82½",
+
+ "\83|\83\8d\83\8d\83\93\82Æ\96Â\82Á\82½",
+ "\82Ç\82È\82Á\82½",
+ "\83\89\83b\83p\82Ì\89¹\82ð\96Â\82ç\82µ\82½",
+ "\83K\83\89\83K\83\89\90º\82ð\8fo\82µ\82½",
+ "\83z\81[\83z\81[\96Â\82¢\82½",
+ "\82³\82¦\82¸\82Á\82½"
+#endif
};
const char *
switch (mtmp->data->msound) {
case MS_MEW:
case MS_HISS:
+/*JP
ret = "hiss";
+*/
+ ret = "\83V\81[\83b\82Æ\96Â\82¢\82½";
break;
case MS_BARK:
case MS_GROWL:
+/*JP
ret = "growl";
+*/
+ ret = "\82Í\82°\82µ\82\96i\82¦\82½";
break;
case MS_ROAR:
+/*JP
ret = "roar";
+*/
+ ret = "\96i\82¦\82½";
break;
case MS_BUZZ:
+/*JP
ret = "buzz";
+*/
+ ret = "\83u\81[\83b\82Æ\96Â\82¢\82½";
break;
case MS_SQEEK:
+/*JP
ret = "squeal";
+*/
+ ret = "\83L\81[\83L\81[\96Â\82¢\82½";
break;
case MS_SQAWK:
+/*JP
ret = "screech";
+*/
+ ret = "\8bà\90Ø\82è\90º\82ð\97§\82Ä\82½";
break;
case MS_NEIGH:
+/*JP
ret = "neigh";
+*/
+ ret = "\82¢\82È\82È\82¢\82½";
break;
case MS_WAIL:
+/*JP
ret = "wail";
+*/
+ ret = "\94ß\82µ\82\96Â\82¢\82½";
break;
case MS_SILENT:
+/*JP
ret = "commotion";
+*/
+ ret = "\8b»\95±\82µ\82½";
break;
default:
+/*JP
ret = "scream";
+*/
+ ret = "\8bà\90Ø\82è\90º\82ð\82 \82°\82½";
}
return ret;
}
else
growl_verb = growl_sound(mtmp);
if (growl_verb) {
+/*JP
pline("%s %s!", Monnam(mtmp), vtense((char *) 0, growl_verb));
+*/
+ pline("%s\82Í%s\81I", Monnam(mtmp), growl_verb);
if (context.run)
nomul(0);
wake_nearto(mtmp->mx, mtmp->my, mtmp->data->mlevel * 18);
else
switch (mtmp->data->msound) {
case MS_MEW:
- yelp_verb = "yowl";
+/*JP
+ yelp_verb = (!Deaf) ? "yowl" : "arch";
+*/
+ yelp_verb = (!Deaf) ? "\94ß\82µ\82\96Â\82¢\82½" : "\8b|\82È\82è\82É\82È\82Á\82½";
break;
case MS_BARK:
case MS_GROWL:
- yelp_verb = "yelp";
+/*JP
+ yelp_verb = (!Deaf) ? "yelp" : "recoil";
+*/
+ yelp_verb = (!Deaf) ? "\83L\83\83\83\93\83L\83\83\83\93\96Â\82¢\82½" : "\90K\8d\9e\82Ý\82µ\82½";
break;
case MS_ROAR:
- yelp_verb = "snarl";
+/*JP
+ yelp_verb = (!Deaf) ? "snarl" : "bluff";
+*/
+ yelp_verb = (!Deaf) ? "\82¤\82È\82Á\82½" : "\82â\82¹\89ä\96\9d\82µ\82½";
break;
case MS_SQEEK:
- yelp_verb = "squeal";
+/*JP
+ yelp_verb = (!Deaf) ? "squeal" : "quiver";
+*/
+ yelp_verb = (!Deaf) ? "\83L\81[\83L\81[\96Â\82¢\82½" : "\90k\82¦\82½";
break;
case MS_SQAWK:
- yelp_verb = "screak";
+/*JP
+ yelp_verb = (!Deaf) ? "screak" : "thrash";
+*/
+ yelp_verb = (!Deaf) ? "\8bà\90Ø\82è\90º\82ð\97§\82Ä\82½" : "\82Ì\82½\82¤\82¿\89ñ\82Á\82½";
break;
case MS_WAIL:
- yelp_verb = "wail";
+/*JP
+ yelp_verb = (!Deaf) ? "wail" : "cringe";
+*/
+ yelp_verb = (!Deaf) ? "\94ß\82µ\82\96Â\82¢\82½" : "\90g\82ð\82·\82\82ß\82½";
break;
}
if (yelp_verb) {
+/*JP
pline("%s %s!", Monnam(mtmp), vtense((char *) 0, yelp_verb));
+*/
+ pline("%s\82Í%s\81I", Monnam(mtmp), yelp_verb);
if (context.run)
nomul(0);
wake_nearto(mtmp->mx, mtmp->my, mtmp->data->mlevel * 12);
switch (mtmp->data->msound) {
case MS_MEW:
case MS_GROWL:
+/*JP
whimper_verb = "whimper";
+*/
+ whimper_verb = "\83N\83\93\83N\83\93\96Â\82¢\82½";
break;
case MS_BARK:
+/*JP
whimper_verb = "whine";
+*/
+ whimper_verb = "\83N\81[\83\93\82Æ\96Â\82¢\82½";
break;
case MS_SQEEK:
+/*JP
whimper_verb = "squeal";
+*/
+ whimper_verb = "\83L\81[\83L\81[\96Â\82¢\82½";
break;
}
if (whimper_verb) {
+/*JP
pline("%s %s.", Monnam(mtmp), vtense((char *) 0, whimper_verb));
+*/
+ pline("%s\82Í%s\81D", Monnam(mtmp), whimper_verb);
if (context.run)
nomul(0);
wake_nearto(mtmp->mx, mtmp->my, mtmp->data->mlevel * 6);
else if (mtmp->data->msound >= MS_HUMANOID) {
if (!canspotmon(mtmp))
map_invisible(mtmp->mx, mtmp->my);
+/*JP
verbalize("I'm hungry.");
+*/
+ verbalize("\82Í\82ç\82Ø\82±\82¾\81D");
}
}
char verbuf[BUFSZ];
register const char *pline_msg = 0, /* Monnam(mtmp) will be prepended */
*verbl_msg = 0, /* verbalize() */
- *verbl_msg_mcan = 0; /* verbalize() if cancelled */
+ *verbl_msg_mcan = 0; /* verbalize() if cancelled */
struct permonst *ptr = mtmp->data;
- int msound = ptr->msound;
+ int msound = ptr->msound, gnomeplan = 0;
/* presumably nearness and sleep checks have already been made */
if (Deaf)
msound = mons[genus(monsndx(ptr), 1)].msound;
/* some normally non-speaking types can/will speak if hero is similar */
else if (msound == MS_ORC /* note: MS_ORC is same as MS_GRUNT */
- && (same_race(ptr, youmonst.data) /* current form, */
- || same_race(ptr, &mons[Race_switch]))) /* unpoly'd form */
+ && ((same_race(ptr, youmonst.data) /* current form, */
+ || same_race(ptr, &mons[Race_switch])) /* unpoly'd form */
+ || Hallucination))
msound = MS_HUMANOID;
/* silliness, with slight chance to interfere with shopping */
else if (Hallucination && mon_is_gecko(mtmp))
} else {
/* approximation of GEICO's advertising slogan (it actually
concludes with "save you 15% or more on car insurance.") */
+/*JP
Sprintf(verbuf, "15 minutes could save you 15 %s.",
+*/
+ Sprintf(verbuf, "15\95ª\92¸\82¯\82ê\82Î15%s\90ß\96ñ\82Å\82«\82Ü\82·\81D",
currency(15L)); /* "zorkmids" */
verbl_msg = verbuf;
}
boolean nightchild =
(Upolyd && (u.umonnum == PM_WOLF || u.umonnum == PM_WINTER_WOLF
|| u.umonnum == PM_WINTER_WOLF_CUB));
+#if 0 /*JP*/
const char *racenoun =
(flags.female && urace.individual.f)
? urace.individual.f
: (urace.individual.m) ? urace.individual.m : urace.noun;
+#else
+ const char *racenoun = (flags.female) ? "\82 \82È\82½" : "\82¨\82Ü\82¦" ;
+#endif
if (mtmp->mtame) {
if (kindred) {
+#if 0 /*JP:T*/
Sprintf(verbuf, "Good %s to you Master%s",
isnight ? "evening" : "day",
isnight ? "!" : ". Why do we not rest?");
+#else
+ Sprintf(verbuf, "\82²\8eå\90l\97l\81C%s%s",
+ isnight ? "\82±\82ñ\82Î\82ñ\82Í" : "\82±\82ñ\82É\82¿\82Í",
+ isnight ? "\81I" : "\81D\82¨\8bx\82Ý\82É\82È\82è\82Ü\82¹\82ñ\82©\81H");
+#endif
verbl_msg = verbuf;
} else {
+#if 0 /*JP:T*/
Sprintf(verbuf, "%s%s",
nightchild ? "Child of the night, " : "",
midnight()
: isnight
? "I beg you, help me satisfy this growing craving!"
: "I find myself growing a little weary.");
+#else
+ Sprintf(verbuf,"%s%s",
+ nightchild ? "\96é\82Ì\8ee\82æ\81C" : "",
+ midnight()
+ ? "\8e\84\82Í\82±\82ê\88È\8fã\8a\89\96]\82ð\97}\82¦\82ç\82ê\82È\82¢\81I"
+ : isnight
+ ? "\82Ó\82\82ê\82 \82ª\82é\8a\89\96]\82ð\96\9e\82½\82·\82Ì\82ð\8f\95\82¯\82Ä\82\82ê\82È\82¢\82©\81H\97\8a\82Þ\81I"
+ : "\8e\84\82Í\8f\81X\94æ\82ê\82½\82æ\82¤\82¾\81D");
+#endif
verbl_msg = verbuf;
}
} else if (mtmp->mpeaceful) {
if (kindred && isnight) {
+#if 0 /*JP:T*/
Sprintf(verbuf, "Good feeding %s!",
flags.female ? "sister" : "brother");
+#else
+ Sprintf(verbuf, "\82æ\82¤\8cZ\92í\81I");
+#endif
verbl_msg = verbuf;
} else if (nightchild && isnight) {
+/*JP
Sprintf(verbuf, "How nice to hear you, child of the night!");
+*/
+ Sprintf(verbuf, "\96é\82Ì\8ee\82æ\81C\8c³\8bC\82»\82¤\82¾\82È\81I");
verbl_msg = verbuf;
} else
+/*JP
verbl_msg = "I only drink... potions.";
+*/
+ verbl_msg = "\8e\84\82Í\96ò\81D\81D\82µ\82©\88ù\82Ü\82È\82¢\81D";
} else {
- int vampindex;
static const char *const vampmsg[] = {
/* These first two (0 and 1) are specially handled below */
+/*JP
"I vant to suck your %s!",
+*/
+ "\82¨\91O\82Ì%s\82ð\82æ\82±\82¹\81I",
+/*JP
"I vill come after %s without regret!",
+*/
+ "\91¶\95ª\82É%s\82ð\92Ç\8c\82\82³\82¹\82Ä\82à\82ç\82¨\82¤\81I",
/* other famous vampire quotes can follow here if desired */
};
+ int vampindex;
+
if (kindred)
verbl_msg =
+/*JP
"This is my hunting ground that you dare to prowl!";
+*/
+ "\82¨\82Ü\82¦\82ª\82¤\82ë\82Â\82¢\82Ä\82¢\82é\82±\82Ì\82 \82½\82è\82Í\8e\84\82Ì\8eë\8fê\82¾\81I";
else if (youmonst.data == &mons[PM_SILVER_DRAGON]
|| youmonst.data == &mons[PM_BABY_SILVER_DRAGON]) {
/* Silver dragons are silver in color, not made of silver */
- Sprintf(verbuf, "%s! Your silver sheen does not frighten me!",
+#if 0 /*JP*/
+ Sprintf(verbuf, "%s! Your silver sheen does not frighten me!",
youmonst.data == &mons[PM_SILVER_DRAGON]
? "Fool"
: "Young Fool");
verbl_msg = verbuf;
+#else
+ verbl_msg = "\82Î\82©\82ß\81I\82¨\82Ü\82¦\82Ì\8bâ\82Ì\8bP\82«\82È\82Ç\95|\82\82È\82¢\82¼\81I";
+#endif
} else {
vampindex = rn2(SIZE(vampmsg));
if (vampindex == 0) {
} break;
case MS_WERE:
if (flags.moonphase == FULL_MOON && (night() ^ !rn2(13))) {
+#if 0 /*JP:T*/
pline("%s throws back %s head and lets out a blood curdling %s!",
Monnam(mtmp), mhis(mtmp),
ptr == &mons[PM_HUMAN_WERERAT] ? "shriek" : "howl");
+#else
+ pline("%s\82Í\93ª\82ð\82Ì\82¯\82¼\82ç\82µ\94w\8bØ\82ª\93\80\82é\82æ\82¤\82È%s\82ð\82 \82°\82½\81I",
+ Monnam(mtmp),
+ ptr == &mons[PM_HUMAN_WERERAT] ? "\8bà\90Ø\82è\90º" : "\99ô\9aK");
+#endif
wake_nearto(mtmp->mx, mtmp->my, 11 * 11);
} else
pline_msg =
+/*JP
"whispers inaudibly. All you can make out is \"moon\".";
+*/
+ "\95·\82«\82Æ\82ê\82È\82¢\82æ\82¤\82È\90º\82Å\82³\82³\82â\82¢\82½\81D\82©\82ë\82¤\82¶\82Ä\81w\8c\8e\81x\82Æ\82¢\82¤\8c¾\97t\82¾\82¯\82ª\95·\82«\82Æ\82ê\82½\81D";
break;
case MS_BARK:
if (flags.moonphase == FULL_MOON && night()) {
+/*JP
pline_msg = "howls.";
+*/
+ pline_msg = "\96i\82¦\82½\81D";
} else if (mtmp->mpeaceful) {
if (mtmp->mtame
&& (mtmp->mconf || mtmp->mflee || mtmp->mtrapped
|| moves > EDOG(mtmp)->hungrytime || mtmp->mtame < 5))
+/*JP
pline_msg = "whines.";
+*/
+ pline_msg = "\83N\83\93\83N\83\93\96Â\82¢\82½\81D";
else if (mtmp->mtame && EDOG(mtmp)->hungrytime > moves + 1000)
+/*JP
pline_msg = "yips.";
+*/
+ pline_msg = "\83L\83\83\83\93\83L\83\83\83\93\96Â\82¢\82½\81D";
else {
if (mtmp->data
!= &mons[PM_DINGO]) /* dingos do not actually bark */
+/*JP
pline_msg = "barks.";
+*/
+ pline_msg = "\83\8f\83\93\83\8f\83\93\96i\82¦\82½\81D";
}
} else {
+/*JP
pline_msg = "growls.";
+*/
+ pline_msg = "\82¤\82È\82Á\82½\81D";
}
break;
case MS_MEW:
if (mtmp->mtame) {
if (mtmp->mconf || mtmp->mflee || mtmp->mtrapped
|| mtmp->mtame < 5)
+/*JP
pline_msg = "yowls.";
+*/
+ pline_msg = "\94ß\82µ\82\96Â\82¢\82½\81D";
else if (moves > EDOG(mtmp)->hungrytime)
+/*JP
pline_msg = "meows.";
+*/
+ pline_msg = "\83j\83\83\81[\83\93\82Æ\96Â\82¢\82½\81D";
else if (EDOG(mtmp)->hungrytime > moves + 1000)
+/*JP
pline_msg = "purrs.";
+*/
+ pline_msg = "\83S\83\8d\83S\83\8d\82Æ\96Â\82¢\82½\81D";
else
+/*JP
pline_msg = "mews.";
+*/
+ pline_msg = "\83j\83\83\81[\83j\83\83\81[\96Â\82¢\82½\81D";
break;
- } /* else FALLTHRU */
+ }
+ /*FALLTHRU*/
case MS_GROWL:
+/*JP
pline_msg = mtmp->mpeaceful ? "snarls." : "growls!";
+*/
+ pline_msg = mtmp->mpeaceful ? "\82¤\82È\82Á\82½\81D" : "\8c\83\82µ\82\82¤\82È\82Á\82½\81I";
break;
case MS_ROAR:
+/*JP
pline_msg = mtmp->mpeaceful ? "snarls." : "roars!";
+*/
+ pline_msg = mtmp->mpeaceful ? "\82¤\82È\82Á\82½\81D" : "\82Æ\82Ä\82à\8c\83\82µ\82\96i\82¦\82½\81I";
break;
case MS_SQEEK:
+/*JP
pline_msg = "squeaks.";
+*/
+ pline_msg = "\83L\81[\83L\81[\96Â\82¢\82½\81D";
break;
case MS_SQAWK:
if (ptr == &mons[PM_RAVEN] && !mtmp->mpeaceful)
+/*JP
verbl_msg = "Nevermore!";
+*/
+ verbl_msg = "\81u\82à\82¤\93ñ\93x\82Æ\81I\81v";
else
+/*JP
pline_msg = "squawks.";
+*/
+ pline_msg = "\83L\81[\83L\81[\96Â\82¢\82½\81D";
break;
case MS_HISS:
if (!mtmp->mpeaceful)
+/*JP
pline_msg = "hisses!";
+*/
+ pline_msg = "\83V\81[\83b\82Æ\96Â\82¢\82½\81I";
else
return 0; /* no sound */
break;
case MS_BUZZ:
+/*JP
pline_msg = mtmp->mpeaceful ? "drones." : "buzzes angrily.";
+*/
+ pline_msg = mtmp->mpeaceful ? "\82Ô\81[\82ñ\82Æ\96Â\82Á\82½\81D" : "\82Ô\82ñ\82Ô\82ñ\96Â\82Á\82½\81D";
break;
case MS_GRUNT:
+/*JP
pline_msg = "grunts.";
+*/
+ pline_msg = "\82Ô\81[\82Ô\81[\96Â\82¢\82½\81D";
break;
case MS_NEIGH:
if (mtmp->mtame < 5)
+/*JP
pline_msg = "neighs.";
+*/
+ pline_msg = "\82¢\82È\82È\82¢\82½\81D";
else if (moves > EDOG(mtmp)->hungrytime)
+/*JP
pline_msg = "whinnies.";
+*/
+ pline_msg = "\83q\83q\81[\83\93\82Æ\96Â\82¢\82½\81D";
else
+/*JP
pline_msg = "whickers.";
+*/
+ pline_msg = "\83q\83q\83q\81[\83\93\82Æ\96Â\82¢\82½\81D";
break;
case MS_WAIL:
+/*JP
pline_msg = "wails mournfully.";
+*/
+ pline_msg = "\94ß\82µ\82°\82É\96Â\82¢\82½\81D";
break;
case MS_GURGLE:
+/*JP
pline_msg = "gurgles.";
+*/
+ pline_msg = "\82²\82ë\82²\82ë\8dA\82ð\96Â\82ç\82µ\82½\81D";
break;
case MS_BURBLE:
+/*JP
pline_msg = "burbles.";
+*/
+ pline_msg = "\82Ø\82¿\82á\82\82¿\82á\82µ\82á\82×\82Á\82½\81D";
break;
case MS_SHRIEK:
+/*JP
pline_msg = "shrieks.";
+*/
+ pline_msg = "\8bà\90Ø\82è\90º\82ð\82 \82°\82½\81D";
aggravate();
break;
case MS_IMITATE:
+/*JP
pline_msg = "imitates you.";
+*/
+ pline_msg = "\82 \82È\82½\82Ì\90^\8e\97\82ð\82µ\82½\81D";
break;
case MS_BONES:
+/*JP
pline("%s rattles noisily.", Monnam(mtmp));
+*/
+ pline("%s\82Í\83P\83^\83P\83^\82Æ\8fÎ\82¢\82¾\82µ\82½\81D",Monnam(mtmp));
+/*JP
You("freeze for a moment.");
+*/
+ You("\88ê\8fu\93\80\82è\82Â\82¢\82½\81D");
nomul(-2);
+/*JP
multi_reason = "scared by rattling";
+*/
+ multi_reason = "\8d\9c\82Ì\83J\83^\83J\83^\8c¾\82¤\89¹\82É\82¨\82Ñ\82¦\82½\8c\84\82É";
nomovemsg = 0;
break;
case MS_LAUGH: {
static const char *const laugh_msg[4] = {
+/*JP
"giggles.", "chuckles.", "snickers.", "laughs.",
+*/
+ "\82\82·\82\82·\8fÎ\82Á\82½\81D", "\82\82·\82Á\82Æ\8fÎ\82Á\82½\81D", "\82Î\82©\82É\82µ\82½\82æ\82¤\82É\8fÎ\82Á\82½\81D", "\8fÎ\82Á\82½\81D",
};
pline_msg = laugh_msg[rn2(4)];
} break;
case MS_MUMBLE:
+/*JP
pline_msg = "mumbles incomprehensibly.";
+*/
+ pline_msg = "\95s\89Â\89ð\82È\8c¾\97t\82ð\82Â\82Ô\82â\82¢\82½\81D";
break;
case MS_DJINNI:
if (mtmp->mtame) {
+/*JP
verbl_msg = "Sorry, I'm all out of wishes.";
+*/
+ verbl_msg = "\8e\84\82ð\8f\95\82¯\82Ä\82\82ê\82½\82±\82Æ\82ð\8a´\8eÓ\82·\82é\81I";
} else if (mtmp->mpeaceful) {
if (ptr == &mons[PM_WATER_DEMON])
+/*JP
pline_msg = "gurgles.";
+*/
+ pline_msg = "\83S\83{\83S\83{\83S\83{\83S\83{\81D";
else
+/*JP
verbl_msg = "I'm free!";
+*/
+ verbl_msg = "\82â\82Á\82Æ\8e©\97R\82É\82È\82Á\82½\81I";
} else {
if (ptr != &mons[PM_PRISONER])
+/*JP
verbl_msg = "This will teach you not to disturb me!";
+*/
+ verbl_msg = "\82¶\82á\82Ü\82ð\82µ\82È\82¢\82Å\82\82ê\81I";
#if 0
else
verbl_msg = "??????????";
if (!mtmp->mpeaceful) {
switch (rn2(4)) {
case 0:
+#if 0 /*JP:T*/
pline("%s boasts about %s gem collection.", Monnam(mtmp),
mhis(mtmp));
+#else
+ pline("%s\82Í\8e©\95ª\82Ì\95ó\90Î\82Ì\83R\83\8c\83N\83V\83\87\83\93\82ð\8e©\96\9d\82µ\82½\81D", Monnam(mtmp));
+#endif
break;
case 1:
+/*JP
pline_msg = "complains about a diet of mutton.";
+*/
+ pline_msg = "\96\88\93ú\97r\82Î\82©\82è\90H\82×\82Ä\82¢\82é\8e\96\82ð\8bð\92s\82Á\82½\81D";
break;
default:
+/*JP
pline_msg = "shouts \"Fee Fie Foe Foo!\" and guffaws.";
+*/
+ pline_msg = "\81w\82í\82Á\82Í\82Á\82Í\82Á\82Í\81I\81x\82Æ\82Î\82©\8fÎ\82¢\82µ\82½\81D";
wake_nearto(mtmp->mx, mtmp->my, 7 * 7);
break;
}
break;
}
- /* else FALLTHRU */
+ /*FALLTHRU*/
case MS_HUMANOID:
if (!mtmp->mpeaceful) {
if (In_endgame(&u.uz) && is_mplayer(ptr))
mplayer_talk(mtmp);
else
+/*JP
pline_msg = "threatens you.";
+*/
+ pline_msg = "\82 \82È\82½\82ð\88Ð\8ad\82µ\82½\81D";
break;
}
/* Generic peaceful humanoid behaviour. */
if (mtmp->mflee)
+/*JP
pline_msg = "wants nothing to do with you.";
+*/
+ pline_msg = "\82 \82È\82½\82Æ\8aÖ\82í\82è\82½\82\82È\82¢\82æ\82¤\82¾\81D";
else if (mtmp->mhp < mtmp->mhpmax / 4)
+/*JP
pline_msg = "moans.";
+*/
+ pline_msg = "\82¤\82ß\82«\90º\82ð\82 \82°\82½\81D";
else if (mtmp->mconf || mtmp->mstun)
+/*JP
verbl_msg = !rn2(3) ? "Huh?" : rn2(2) ? "What?" : "Eh?";
+*/
+ verbl_msg = !rn2(3) ? "\82Ö\81H" : rn2(2) ? "\89½\81H" : "\82¦\81H";
else if (!mtmp->mcansee)
+/*JP
verbl_msg = "I can't see!";
+*/
+ verbl_msg = "\89½\82à\8c©\82¦\82È\82¢\81I";
else if (mtmp->mtrapped) {
struct trap *t = t_at(mtmp->mx, mtmp->my);
if (t)
t->tseen = 1;
+/*JP
verbl_msg = "I'm trapped!";
+*/
+ verbl_msg = "ã©\82É\82Í\82Ü\82Á\82Ä\82µ\82Ü\82Á\82½\81I";
} else if (mtmp->mhp < mtmp->mhpmax / 2)
+/*JP
pline_msg = "asks for a potion of healing.";
+*/
+ pline_msg = "\89ñ\95\9c\82Ì\96ò\82ð\8e\9d\82Á\82Ä\82È\82¢\82©\90q\82Ë\82½\81D";
else if (mtmp->mtame && !mtmp->isminion
&& moves > EDOG(mtmp)->hungrytime)
+/*JP
verbl_msg = "I'm hungry.";
+*/
+ verbl_msg = "\95 \82ª\8c¸\82Á\82½\82È\81D";
/* Specific monsters' interests */
else if (is_elf(ptr))
+/*JP
pline_msg = "curses orcs.";
+*/
+ pline_msg = "\83I\81[\83N\82ð\8eô\82Á\82½\81D";
else if (is_dwarf(ptr))
+/*JP
pline_msg = "talks about mining.";
+*/
+ pline_msg = "\8dÌ\8c@\82É\82Â\82¢\82Ä\98b\82µ\82½\81D";
else if (likes_magic(ptr))
+/*JP
pline_msg = "talks about spellcraft.";
+*/
+ pline_msg = "\96\82\8fp\82Ì\92b\98B\82É\82Â\82¢\82Ä\98b\82µ\82½\81D";
else if (ptr->mlet == S_CENTAUR)
+/*JP
pline_msg = "discusses hunting.";
+*/
+ pline_msg = "\97Â\82É\82Â\82¢\82Ä\8bc\98_\82µ\82½\81D";
+ else if (is_gnome(ptr) && Hallucination && (gnomeplan = rn2(4)) % 2)
+ /* skipped for rn2(4) result of 0 or 2;
+ gag from an early episode of South Park called "Gnomes";
+ initially, Tweek (introduced in that episode) is the only
+ one aware of the tiny gnomes after spotting them sneaking
+ about; they are embarked upon a three-step business plan;
+ a diagram of the plan shows:
+ Phase 1 Phase 2 Phase 3
+ Collect underpants ? Profit
+ and they never verbalize step 2 so we don't either */
+#if 0 /*JP:T*/
+ verbl_msg = (gnomeplan == 1) ? "Phase one, collect underpants."
+ : "Phase three, profit!";
+#else
+ verbl_msg = (gnomeplan == 1) ? "\82»\82Ì\82P\81C\83p\83\93\83c\82ð\8fW\82ß\82é\81D"
+ : "\82»\82Ì\82R\81C\8eû\89v\89»\81I";
+#endif
else
switch (monsndx(ptr)) {
case PM_HOBBIT:
pline_msg =
(mtmp->mhpmax - mtmp->mhp >= 10)
+/*JP
? "complains about unpleasant dungeon conditions."
+*/
+ ? "\95s\96ù\89õ\82È\96À\8b{\82Ì\8fó\91Ô\82É\82Â\82¢\82Ä\95s\96\9e\82ð\8fq\82×\82½\81D"
+/*JP
: "asks you about the One Ring.";
+*/
+ : "\81u\88ê\82Â\82Ì\8ew\97Ö\81v\82É\82Â\82¢\82Ä\90q\82Ë\82½\81D";
break;
case PM_ARCHEOLOGIST:
pline_msg =
+/*JP
"describes a recent article in \"Spelunker Today\" magazine.";
+*/
+ "\81u\93ú\8a§\93´\8cA\81v\82Ì\8dÅ\90V\82Ì\8bL\8e\96\82ð\8e·\95M\82µ\82Ä\82¢\82é\81D";
break;
case PM_TOURIST:
+/*JP
verbl_msg = "Aloha.";
+*/
+ verbl_msg = "\83A\83\8d\81[\83n\81D";
break;
default:
+/*JP
pline_msg = "discusses dungeon exploration.";
+*/
+ pline_msg = "\96À\8b{\92T\8c\9f\82É\82Â\82¢\82Ä\8bc\98_\82µ\82½\81D";
break;
}
break;
case MS_SEDUCE: {
int swval;
+
if (SYSOPT_SEDUCE) {
if (ptr->mlet != S_NYMPH
&& could_seduce(mtmp, &youmonst, (struct attack *) 0) == 1) {
swval = ((poly_gender() == 0) ? rn2(3) : 0);
switch (swval) {
case 2:
+#if 0 /*JP*/
verbl_msg = "Hello, sailor.";
+#else
+ switch (poly_gender()) {
+ case 0:
+ verbl_msg = "\82±\82ñ\82É\82¿\82Í\81D\82 \82ç\82¢\82¢\92j\82Ë\81D";
+ break;
+ case 1:
+ verbl_msg = "\82±\82ñ\82É\82¿\82Í\81C\82¨\8fì\82³\82ñ\81D";
+ break;
+ default:
+ verbl_msg = "\82±\82ñ\82É\82¿\82Í\81D";
+ break;
+ }
+#endif
break;
case 1:
+/*JP
pline_msg = "comes on to you.";
+*/
+ pline_msg = "\82 \82È\82½\82Ì\82Ù\82¤\82Ö\82â\82Á\82Ä\82«\82½\81D";
break;
default:
+/*JP
pline_msg = "cajoles you.";
+*/
+ pline_msg = "\82 \82È\82½\82ð\82¨\82¾\82Ä\82½\81D";
}
} break;
case MS_ARREST:
if (mtmp->mpeaceful)
+#if 0 /*JP:T*/
verbalize("Just the facts, %s.", flags.female ? "Ma'am" : "Sir");
+#else
+ verbalize("\8e\96\8eÀ\82¾\82¯\82ª\92m\82è\82½\82¢\82ñ\82Å\82·\82æ\81C%s\81D", flags.female ? "\89\9c\82³\82ñ" : "\92U\93ß");
+#endif
else {
static const char *const arrest_msg[3] = {
+#if 0 /*JP:T*/
"Anything you say can be used against you.",
"You're under arrest!", "Stop in the name of the Law!",
+#else
+ "\82¨\82Ü\82¦\82Ì\8c¾\82¤\82±\82Æ\82Í\82¨\82Ü\82¦\82É\82Æ\82Á\82Ä\95s\97\98\82È\8fØ\8b\92\82Æ\82È\82é\82±\82Æ\82ª\82 \82é\81I",
+ "\82¨\82Ü\82¦\82ð\91ß\95ß\82·\82é\81I",
+ "\96@\82Ì\96¼\82Ì\82à\82Æ\92¼\82¿\82É\92\86\8e~\82¹\82æ\81I",
+#endif
};
verbl_msg = arrest_msg[rn2(3)];
}
if (!mtmp->mpeaceful)
cuss(mtmp);
else if (is_lminion(mtmp))
+/*JP
verbl_msg = "It's not too late.";
+*/
+ verbl_msg = "\82Ü\82¾\92x\82\82Í\82È\82¢\81D";
else
+/*JP
verbl_msg = "We're all doomed.";
+*/
+ verbl_msg = "\82Ý\82ñ\82È\82à\82¤\82¨\82µ\82Ü\82¢\82¾\81D";
break;
case MS_SPELL:
/* deliberately vague, since it's not actually casting any spell */
+/*JP
pline_msg = "seems to mutter a cantrip.";
+*/
+ pline_msg = "\82Ô\82Â\82Ô\82Â\82Æ\82Â\82Ô\82â\82¢\82Ä\82¢\82é\81D";
break;
case MS_NURSE:
+/*JP
verbl_msg_mcan = "I hate this job!";
+*/
+ verbl_msg_mcan = "\82±\82ñ\82È\8ed\8e\96\8c\99\82¢\81I";
if (uwep && (uwep->oclass == WEAPON_CLASS || is_weptool(uwep)))
+/*JP
verbl_msg = "Put that weapon away before you hurt someone!";
+*/
+ verbl_msg = "\95\90\8aí\82ð\82¨\82³\82ß\82È\82³\82¢\81I\82»\82ê\82Í\90l\82ð\8f\9d\82Â\82¯\82é\82à\82Ì\82æ\81I";
else if (uarmc || uarm || uarmh || uarms || uarmg || uarmf)
verbl_msg = Role_if(PM_HEALER)
+/*JP
? "Doc, I can't help you unless you cooperate."
+*/
+ ? "\90æ\90¶\81C\82 \82È\82½\82Ì\8b¦\97Í\82È\82µ\82Å\82Í\82Ç\82¤\82µ\82æ\82¤\82à\82 \82è\82Ü\82¹\82ñ\82í\81D"
+/*JP
: "Please undress so I can examine you.";
+*/
+ : "\95\9e\82ð\92E\82¢\82Å\82\82¾\82³\82¢\81D\82 \82È\82½\82ð\90f\8e@\82µ\82Ü\82·\82í\81D";
else if (uarmu)
+/*JP
verbl_msg = "Take off your shirt, please.";
+*/
+ verbl_msg = "\83V\83\83\83c\82ð\92E\82¢\82Å\82\82¾\82³\82¢\81D";
else
+/*JP
verbl_msg = "Relax, this won't hurt a bit.";
+*/
+ verbl_msg = "\82¨\82¿\82Â\82¢\82Ä\81D\82¿\82Á\82Æ\82à\92É\82\82È\82¢\82í\82æ\81D";
break;
case MS_GUARD:
if (money_cnt(invent))
+/*JP
verbl_msg = "Please drop that gold and follow me.";
+*/
+ verbl_msg = "\8bà\82ð\92u\82¢\82Ä\82Â\82¢\82Ä\82«\82Ä\82\82¾\82³\82¢\81D";
else
+/*JP
verbl_msg = "Please follow me.";
+*/
+ verbl_msg = "\82Â\82¢\82Ä\82«\82Ä\82\82¾\82³\82¢\81D";
break;
case MS_SOLDIER: {
static const char
*const soldier_foe_msg[3] =
{
+#if 0 /*JP:T*/
"Resistance is useless!", "You're dog meat!", "Surrender!",
+#else
+ "\92ï\8dR\82µ\82Ä\82à\96³\91Ê\82¾\81I",
+ "\8c¢\82É\8bò\82í\82ê\82¿\82Ü\82¦\81I",
+ "\8d~\95\9a\82µ\82ë\81I",
+#endif
},
*const soldier_pax_msg[3] = {
+#if 0 /*JP:T*/
"What lousy pay we're getting here!",
"The food's not fit for Orcs!",
"My feet hurt, I've been on them all day!",
+#else
+ "\82È\82ñ\82Ä\8bà\95¥\82¢\82ª\88«\82¢\82ñ\82¾\81I",
+ "\82È\82ñ\82¾\82¢\81H\83I\81[\83N\82Å\82à\8bò\82¦\82Ë\82¥\82º\81I",
+ "\91«\82ð\89ö\89ä\82µ\82½\81C\82¸\82Á\82Æ\82±\82Ì\92²\8eq\82¾\81I",
+#endif
};
verbl_msg = mtmp->mpeaceful ? soldier_pax_msg[rn2(3)]
: soldier_foe_msg[rn2(3)];
break;
}
- case MS_RIDER:
- /* 3.6.0 tribute */
- if (ptr == &mons[PM_DEATH]
- && !context.tribute.Deathnotice && u_have_novel()) {
- struct obj *book = u_have_novel();
- const char *tribtitle = (char *)0;
-
- if (book) {
- int novelidx = book->novelidx;
-
- tribtitle = noveltitle(&novelidx);
- }
- if (tribtitle) {
+ case MS_RIDER: {
+ const char *tribtitle;
+ struct obj *book = 0;
+ boolean ms_Death = (ptr == &mons[PM_DEATH]);
+
+ /* 3.6 tribute */
+ if (ms_Death && !context.tribute.Deathnotice
+ && (book = u_have_novel()) != 0) {
+ if ((tribtitle = noveltitle(&book->novelidx)) != 0) {
+/*JP
Sprintf(verbuf, "Ah, so you have a copy of /%s/.", tribtitle);
+*/
+ Sprintf(verbuf, "\82 \82 \81A/%s/\82ð\8e\9d\82Á\82Ä\82¢\82é\82Ì\82©\81D", tribtitle);
/* no Death featured in these two, so exclude them */
- if (!(strcmpi(tribtitle, "Snuff") == 0
- || strcmpi(tribtitle, "The Wee Free Men") == 0))
- Strcat(verbuf, " I may have been misquoted there.");
+ if (strcmpi(tribtitle, "Snuff")
+ && strcmpi(tribtitle, "The Wee Free Men"))
+/*JP
+ Strcat(verbuf, " I may have been misquoted there.");
+*/
+ Strcat(verbuf, " \82±\82±\82Å\82Í\88ø\97p\82ª\8aÔ\88á\82Á\82Ä\82¢\82é\82©\82à\82µ\82ê\82È\82¢\81D");
verbl_msg = verbuf;
- context.tribute.Deathnotice = 1;
}
- } else if (ptr == &mons[PM_DEATH]
- && !rn2(2) && Death_quote(verbuf, BUFSZ)) {
- verbl_msg = verbuf;
- }
+ context.tribute.Deathnotice = 1;
+ } else if (ms_Death && rn2(3) && Death_quote(verbuf, sizeof verbuf)) {
+ verbl_msg = verbuf;
/* end of tribute addition */
- else if (ptr == &mons[PM_DEATH] && !rn2(10))
+
+ } else if (ms_Death && !rn2(10)) {
+/*JP
pline_msg = "is busy reading a copy of Sandman #8.";
- else
+*/
+ pline_msg = "\81u\83T\83\93\83h\83}\83\93\81v\82Ì8\8aª\82ð\93Ç\82Þ\82Ì\82É\96Z\82µ\82¢\81D";
+ } else
+/*JP
verbl_msg = "Who do you think you are, War?";
+*/
+ verbl_msg = "\83E\83H\81[\82æ\81C\8e©\95ª\82ª\89½\8eÒ\82©\8dl\82¦\82½\82±\82Æ\82ª\82 \82é\82©\81H";
break;
- }
+ } /* case MS_RIDER */
+ } /* switch */
- if (pline_msg)
+ if (pline_msg) {
+/*JP
pline("%s %s", Monnam(mtmp), pline_msg);
- else if (mtmp->mcan && verbl_msg_mcan)
+*/
+ pline("%s\82Í%s", Monnam(mtmp), pline_msg);
+ } else if (mtmp->mcan && verbl_msg_mcan) {
verbalize1(verbl_msg_mcan);
- else if (verbl_msg) {
+ } else if (verbl_msg) {
+#if 0 /*JP*//*\83f\83X\82ð\93Á\95Ê\88µ\82¢\82µ\82È\82¢*/
+ /* more 3.6 tribute */
if (ptr == &mons[PM_DEATH]) {
/* Death talks in CAPITAL LETTERS
and without quotation marks */
char tmpbuf[BUFSZ];
- Sprintf(tmpbuf, "%s", verbl_msg);
- pline1(ucase(tmpbuf));
+
+ pline1(ucase(strcpy(tmpbuf, verbl_msg)));
} else {
verbalize1(verbl_msg);
}
+#else
+ verbalize1(verbl_msg);
+#endif
}
return 1;
}
struct obj *otmp;
if (is_silent(youmonst.data)) {
+/*JP
pline("As %s, you cannot speak.", an(youmonst.data->mname));
+*/
+ pline("\82 \82È\82½\82Í%s\82È\82Ì\82Å\81C\98b\82·\82±\82Æ\82ª\82Å\82«\82È\82¢\81D", youmonst.data->mname);
return 0;
}
if (Strangled) {
+/*JP
You_cant("speak. You're choking!");
+*/
+ You("\98b\82¹\82È\82¢\81D\82 \82È\82½\82Í\8eñ\82ð\8di\82ß\82ç\82ê\82Ä\82¢\82é\81I");
return 0;
}
if (u.uswallow) {
+/*JP
pline("They won't hear you out there.");
+*/
+ You("\8aO\82Ö\8cü\82Á\82Ä\98b\82ð\82µ\82½\82ª\81C\92N\82à\95·\82«\82¢\82ê\82È\82©\82Á\82½\81D");
return 0;
}
if (Underwater) {
+/*JP
Your("speech is unintelligible underwater.");
+*/
+ pline("\90\85\96Ê\89º\82Å\82Í\81C\82 \82È\82½\82Ì\98b\82Í\82ë\82\82É\97\9d\89ð\82³\82ê\82È\82¢\81D");
return 0;
}
if (Deaf) {
+/*JP
pline("How can you hold a conversation when you cannot hear?");
+*/
+ pline("\95·\82\82±\82Æ\82ª\82Å\82«\82È\82¢\82Ì\82É\82Ç\82¤\82â\82Á\82Ä\89ï\98b\82·\82é\82Ì\81H");
return 0;
}
return 1;
}
+/*JP
if (!getdir("Talk to whom? (in what direction)")) {
+*/
+ if (!getdir("\92N\82Æ\98b\82µ\82Ü\82·\82©\81H[\95û\8cü\82ð\93ü\82ê\82Ä\82Ë]")) {
/* decided not to chat */
return 0;
}
if (u.usteed && u.dz > 0) {
if (!u.usteed->mcanmove || u.usteed->msleeping) {
+/*JP
pline("%s seems not to notice you.", Monnam(u.usteed));
+*/
+ pline("%s\82Í\82 \82È\82½\82É\8bC\82ª\82Â\82¢\82Ä\82¢\82È\82¢\82æ\82¤\82¾\81D", Monnam(u.usteed));
return 1;
} else
return domonnoise(u.usteed);
}
if (u.dz) {
+/*JP
pline("They won't hear you %s there.", u.dz < 0 ? "up" : "down");
+*/
+ pline("%s\8cü\82©\82Á\82Ä\98b\82ð\82µ\82Ä\82à\88Ó\96¡\82ª\82È\82¢\81D", u.dz < 0 ? "\8fã\82É" : "\89º\82É");
return 0;
}
return 1;
}
*/
+/*JP
pline("Talking to yourself is a bad habit for a dungeoneer.");
+*/
+ pline("\88ê\90l\8c¾\82Í\96À\8b{\92T\8c\9f\8eÒ\82Ì\88«\82¢\95È\82¾\81D");
return 0;
}
&& (otmp = vobj_at(tx, ty)) != 0 && otmp->otyp == STATUE) {
/* Talking to a statue */
if (!Blind) {
+#if 0 /*JP:T*/
pline_The("%s seems not to notice you.",
/* if hallucinating, you can't tell it's a statue */
Hallucination ? rndmonnam((char *) 0) : "statue");
+#else
+ pline_The("%s\82Í\82 \82È\82½\82É\8bC\82ª\82Â\82¢\82Ä\82¢\82È\82¢\82æ\82¤\82¾\81D",
+ Hallucination ? rndmonnam((char *) 0) : "\90Î\91\9c");
+#endif
}
return 0;
}
- if (!mtmp || mtmp->mundetected || mtmp->m_ap_type == M_AP_FURNITURE
- || mtmp->m_ap_type == M_AP_OBJECT)
+ if (!mtmp || mtmp->mundetected || M_AP_TYPE(mtmp) == M_AP_FURNITURE
+ || M_AP_TYPE(mtmp) == M_AP_OBJECT)
return 0;
/* sleeping monsters won't talk, except priests (who wake up) */
/* If it is unseen, the player can't tell the difference between
not noticing him and just not existing, so skip the message. */
if (canspotmon(mtmp))
+/*JP
pline("%s seems not to notice you.", Monnam(mtmp));
+*/
+ pline("%s\82Í\82 \82È\82½\82É\8bC\82ª\82Â\82¢\82Ä\82¢\82È\82¢\82æ\82¤\82¾\81D", Monnam(mtmp));
return 0;
}
if (mtmp->mtame && mtmp->meating) {
if (!canspotmon(mtmp))
map_invisible(mtmp->mx, mtmp->my);
+/*JP
pline("%s is eating noisily.", Monnam(mtmp));
+*/
+ pline("%s\82Í\83o\83\8a\83o\83\8a\82Æ\95¨\82ð\90H\82×\82Ä\82¢\82é\81D", Monnam(mtmp));
return 0;
}