* command.
*/
+/* JNetHack Copyright */
+/* (c) Issei Numata, Naoki Hamada, Shigehiro Miyashita, 1994-2000 */
+/* For 3.4-, Copyright (c) SHIRAKATA Kentaro, 2002-2016 */
+/* JNetHack may be freely redistributed. See license for details. */
+
#include "hack.h"
#include "artifact.h"
if (sobj) {
char buf[BUFSZ];
if (youmonst.data == &mons[PM_GOLD_GOLEM]) {
+/*JP
Sprintf(buf, "You feel like a million %s!", currency(2L));
+*/
+ Strcpy(buf, "\82 \82È\82½\82Í\8bà\8e\9d\82¿\82É\82È\82Á\82½\82æ\82¤\82É\8a´\82¶\82½\81I");
} else if (hidden_gold() || money_cnt(invent))
Strcpy(buf,
+/*JP
"You feel worried about your future financial situation.");
+*/
+ "\82 \82È\82½\82Í\8f«\97\88\82Ì\8co\8dÏ\8fó\8bµ\82ª\90S\94z\82É\82È\82Á\82½\81D");
else
+/*JP
Strcpy(buf, "You feel materially poor.");
+*/
+ Strcpy(buf, "\82 \82È\82½\82Í\82Ð\82à\82¶\82³\82ð\8a´\82¶\82½\81D");
strange_feeling(sobj, buf);
}
return 1;
/* only under me - no separate display required */
if (stale)
docrt();
+/*JP
You("notice some gold between your %s.", makeplural(body_part(FOOT)));
+*/
+ You("%s\82Ì\8aÔ\82É\8bà\89Ý\82ª\97\8e\82¿\82Ä\82¢\82é\82±\82Æ\82É\8bC\82ª\82Â\82¢\82½\81D", body_part(FOOT));
return 0;
outgoldmap:
}
newsym(u.ux, u.uy);
u.uinwater = iflags.save_uinwater, u.uburied = iflags.save_uburied;
+/*JP
You_feel("very greedy, and sense gold!");
+*/
+ You("\82Ç\82ñ\97~\82É\82È\82Á\82½\82æ\82¤\82È\8bC\82ª\82µ\82½\81C\82»\82µ\82Ä\8bà\89Ý\82Ì\88Ê\92u\82ð\8a´\92m\82µ\82½\81I");
exercise(A_WIS, TRUE);
display_nhwindow(WIN_MAP, TRUE);
docrt();
register int ct = 0, ctu = 0;
boolean confused = (Confusion || (sobj && sobj->cursed)), stale;
char oclass = confused ? POTION_CLASS : FOOD_CLASS;
+/*JP
const char *what = confused ? something : "food";
+*/
+ const char *what = confused ? "\83n\83\89\83w\83\8a" : "\90H\82×\95¨";
stale = clear_stale_map(oclass, 0);
known = stale && !confused;
if (stale) {
docrt();
+/*JP
You("sense a lack of %s nearby.", what);
+*/
+ You("%s\82ª\8c¸\82Á\82Ä\82¢\82é\82Ì\82É\8bC\82ª\82Â\82¢\82½\81D",what);
if (sobj && sobj->blessed) {
if (!u.uedibility)
+/*JP
Your("%s starts to tingle.", body_part(NOSE));
+*/
+ Your("%s\82ª\82Ò\82\82Á\82Æ\93®\82¢\82½\81D", body_part(NOSE));
u.uedibility = 1;
}
} else if (sobj) {
char buf[BUFSZ];
+#if 0 /*JP*/
Sprintf(buf, "Your %s twitches%s.", body_part(NOSE),
(sobj->blessed && !u.uedibility)
? " then starts to tingle"
: "");
+#else
+ Sprintf(buf, "\82 \82È\82½\82Ì%s\82ª\82Ð\82\82Ð\82\82Æ\93®\82¢%s\81D", body_part(NOSE),
+ (sobj->blessed && !u.uedibility)
+ ? "\82Ä\81C\82¤\82¸\82¤\82¸\82µ\82¾\82µ\82½"
+ : "\82½");
+#endif
if (sobj->blessed && !u.uedibility) {
boolean savebeginner = flags.beginner;
u.uinwater = iflags.save_uinwater, u.uburied = iflags.save_uburied;
if (sobj) {
if (sobj->blessed) {
+#if 0 /*JP*/
Your("%s %s to tingle and you smell %s.", body_part(NOSE),
u.uedibility ? "continues" : "starts", what);
+#else
+ Your("%s\82Í\82¤\82¸\82¤\82¸\82µ%s\81C%s\82Ì\93õ\82¢\82ð\9ak\82¬\82Æ\82Á\82½\81D", body_part(NOSE),
+ u.uedibility ? "\91±\82¯" : "\8en\82ß", what);
+#endif
u.uedibility = 1;
} else
+/*JP
Your("%s tingles and you smell %s.", body_part(NOSE), what);
+*/
+ Your("%s\82Í\82¤\82¸\82¤\82¸\82µ\81C%s\82Ì\93õ\82¢\82ð\9ak\82¬\82Æ\82Á\82½\81D", body_part(NOSE), what);
} else
+/*JP
You("sense %s.", what);
+*/
+ You("%s\82ð\8a´\92m\82µ\82½\81D", what);
display_nhwindow(WIN_MAP, TRUE);
exercise(A_WIS, TRUE);
docrt();
if (Hallucination || (Confusion && class == SCROLL_CLASS))
Strcpy(stuff, something);
else
+/*JP
Strcpy(stuff, class ? def_oc_syms[class].name : "objects");
+*/
+ Strcpy(stuff, class ? def_oc_syms[class].name : "\95¨\91Ì");
if (boulder && class != ROCK_CLASS)
+/*JP
Strcat(stuff, " and/or large stones");
+*/
+ Strcat(stuff, "\82Æ\8b\90\8aâ");
if (do_dknown)
for (obj = invent; obj; obj = obj->nobj)
if (!clear_stale_map(!class ? ALL_CLASSES : class, 0) && !ct) {
if (!ctu) {
if (detector)
+/*JP
strange_feeling(detector, "You feel a lack of something.");
+*/
+ strange_feeling(detector, "\82 \82È\82½\82Í\89½\82©\82ª\8c\87\96R\82µ\82Ä\82¢\82é\82æ\82¤\82È\8bC\82ª\82µ\82½\81D");
return 1;
}
+/*JP
You("sense %s nearby.", stuff);
+*/
+ You("\8bß\82\82Ì%s\82ð\8a´\92m\82µ\82½\81D", stuff);
return 0;
}
newsym(u.ux, u.uy);
u.uinwater = iflags.save_uinwater, u.uburied = iflags.save_uburied;
+/*JP
You("detect the %s of %s.", ct ? "presence" : "absence", stuff);
+*/
+ You("%s%s\81D", stuff, ct ? "\82ð\94\8c©\82µ\82½" : "\82Í\89½\82à\82È\82¢\82±\82Æ\82ª\82í\82©\82Á\82½" );
display_nhwindow(WIN_MAP, TRUE);
/*
* What are we going to do when the hero does an object detect while blind
if (!mcnt) {
if (otmp)
strange_feeling(otmp, Hallucination
+/*JP
? "You get the heebie jeebies."
+*/
+ ? "\82 \82È\82½\82Í\8bà\92¹\82Ì\89Ä\82Å\83L\83\93\83`\83\87\81[\82µ\82½\81D"
+/*JP
: "You feel threatened.");
+*/
+ : "\82 \82È\82½\82Í\8b°\95|\82Å\82¼\82\82¼\82\82µ\82½\81D");
return 1;
} else {
boolean woken = FALSE;
}
}
display_self();
+/*JP
You("sense the presence of monsters.");
+*/
+ You("\89ö\95¨\82Ì\91¶\8dÝ\82ð\9ak\82¬\82Â\82¯\82½\81D");
if (woken)
+/*JP
pline("Monsters sense the presence of you.");
+*/
+ pline("\89ö\95¨\82Í\82 \82È\82½\82Ì\91¶\8dÝ\82ð\9ak\82¬\82Â\82¯\82½\81D");
display_nhwindow(WIN_MAP, TRUE);
docrt();
if (Underwater)
if (!found) {
char buf[BUFSZ];
+/*JP
Sprintf(buf, "Your %s stop itching.", makeplural(body_part(TOE)));
+*/
+ Sprintf(buf, "\82 \82È\82½\82Ì%s\82Ì\82Þ\82¸\82Þ\82¸\82Í\82¨\82³\82Ü\82Á\82½\81D", makeplural(body_part(TOE)));
strange_feeling(sobj, buf);
return 1;
}
/* traps exist, but only under me - no separate display required */
+/*JP
Your("%s itch.", makeplural(body_part(TOE)));
+*/
+ Your("%s\82Í\82Þ\82¸\82Þ\82¸\82µ\82½\81D", makeplural(body_part(TOE)));
return 0;
outtrapmap:
cls();
newsym(u.ux, u.uy);
u.uinwater = iflags.save_uinwater, u.uburied = iflags.save_uburied;
+/*JP
You_feel("%s.", cursed_src ? "very greedy" : "entrapped");
+*/
+ You("%s\8bC\8e\9d\82É\82È\82Á\82½\81D", cursed_src ? "\82Æ\82Ä\82à\82Ç\82ñ\97~\82È" : "\82¾\82Ü\82³\82ê\82Ä\82¢\82é\82æ\82¤\82È");
/* wait for user to respond, then reset map display to normal */
display_nhwindow(WIN_MAP, TRUE);
docrt();
if (ll < 0) {
if (ll < (-8 - rn2(3)))
if (!indun)
+/*JP
return "far away";
+*/
+ return "\82Í\82é\82©\94Þ\95û\82É";
else
+/*JP
return "far below";
+*/
+ return "\82Í\82é\82©\89º\95û\82É";
else if (ll < -1)
if (!indun)
+/*JP
return "away below you";
+*/
+ return "\82¸\82Á\82Æ\89º\95û\82É";
else
+/*JP
return "below you";
+*/
+ return "\89º\95û\82É";
else if (!indun)
+/*JP
return "in the distance";
+*/
+ return "\89\93\82\82É";
else
+/*JP
return "just below";
+*/
+ return "\90^\89º\82É";
} else if (ll > 0) {
if (ll > (8 + rn2(3)))
if (!indun)
+/*JP
return "far away";
+*/
+ return "\82Í\82é\82©\94Þ\95û\82É";
else
+/*JP
return "far above";
+*/
+ return "\82Í\82é\82©\8fã\95û\82É";
else if (ll > 1)
if (!indun)
+/*JP
return "away above you";
+*/
+ return "\82¸\82Á\82Æ\8fã\95û\82É";
else
+/*JP
return "above you";
+*/
+ return "\8fã\95û\82É";
else if (!indun)
+/*JP
return "in the distance";
+*/
+ return "\89\93\82\82É";
else
+/*JP
return "just above";
+*/
+ return "\90^\8fã\82É";
} else if (!indun)
+/*JP
return "in the distance";
+*/
+ return "\89\93\82\82É";
else
+/*JP
return "near you";
+*/
+ return "\8bß\82\82É";
}
static const struct {
const char *what;
d_level *where;
} level_detects[] = {
+/*JP
{ "Delphi", &oracle_level },
+*/
+ { "\83f\83\8b\83t\83@\83C", &oracle_level },
+/*JP
{ "Medusa's lair", &medusa_level },
+*/
+ { "\83\81\83f\83\85\81[\83T\82Ì\8fZ\82Ý\82©", &medusa_level },
+/*JP
{ "a castle", &stronghold_level },
+*/
+ { "\8fé", &stronghold_level },
+/*JP
{ "the Wizard of Yendor's tower", &wiz1_level },
+*/
+ { "\83C\83F\83\93\83_\81[\82Ì\96\82\96@\8eg\82¢\82Ì\93\83", &wiz1_level },
};
void
struct obj *obj = *optr;
if (Blind) {
+/*JP
pline("Too bad you can't see %s.", the(xname(obj)));
+*/
+ pline("\82È\82ñ\82Ä\82±\82Æ\82¾\81D%s\82ð\8c©\82é\82±\82Æ\82ª\82Å\82«\82È\82¢\81D", the(xname(obj)));
return;
}
oops = (rnd(20) > ACURR(A_INT) || obj->cursed);
if (oops && (obj->spe > 0)) {
switch (rnd(obj->oartifact ? 4 : 5)) {
case 1:
+/*JP
pline("%s too much to comprehend!", Tobjnam(obj, "are"));
+*/
+ pline("%s\82ð\94`\82¢\82½\82ª\89½\82Ì\82±\82Æ\82¾\82©\82³\82Á\82Ï\82è\82í\82©\82ç\82È\82©\82Á\82½\81I", xname(obj));
break;
case 2:
+/*JP
pline("%s you!", Tobjnam(obj, "confuse"));
+*/
+ pline("%s\82ð\94`\82¢\82Ä\82é\82Æ\82Ó\82ç\82Â\82¢\82Ä\82«\82½\81I", xname(obj));
make_confused((HConfusion & TIMEOUT) + (long) rnd(100), FALSE);
break;
case 3:
if (!resists_blnd(&youmonst)) {
+/*JP
pline("%s your vision!", Tobjnam(obj, "damage"));
+*/
+ pline("%s\82ð\94`\82¢\82Ä\82¢\82é\82Æ\8e\8b\8ao\82ª\82¨\82©\82µ\82\82È\82Á\82Ä\82«\82½\81I", xname(obj));
make_blinded((Blinded & TIMEOUT) + (long) rnd(100), FALSE);
if (!Blind)
Your1(vision_clears);
} else {
+/*JP
pline("%s your vision.", Tobjnam(obj, "assault"));
+*/
+ pline("%s\82ª\82 \82È\82½\82Ì\8e\8b\8aE\82É\94\97\82Á\82Ä\82«\82½\81D", xname(obj));
+/*JP
You("are unaffected!");
+*/
+ pline("\82µ\82©\82µ\81C\82 \82È\82½\82Í\89e\8b¿\82ð\8eó\82¯\82È\82©\82Á\82½\81I");
}
break;
case 4:
+/*JP
pline("%s your mind!", Tobjnam(obj, "zap"));
+*/
+ pline("%s\82ð\94`\82¢\82Ä\82¢\82é\82Æ\8cÜ\8a´\82ª\82¨\82©\82µ\82\82È\82Á\82Ä\82«\82½\81I", xname(obj));
(void) make_hallucinated(
(HHallucination & TIMEOUT) + (long) rnd(100), FALSE, 0L);
break;
case 5:
+/*JP
pline("%s!", Tobjnam(obj, "explode"));
+*/
+ pline("%s\82Í\94\9a\94\82µ\82½\81I", xname(obj));
useup(obj);
*optr = obj = 0; /* it's gone */
/* physical damage cause by the shards and force */
+/*JP
losehp(Maybe_Half_Phys(rnd(30)), "exploding crystal ball",
+*/
+ losehp(Maybe_Half_Phys(rnd(30)), "\90\85\8f»\8bÊ\82Ì\94\9a\94\82Å",
KILLED_BY_AN);
break;
}
if (Hallucination) {
if (!obj->spe) {
+/*JP
pline("All you see is funky %s haze.", hcolor((char *) 0));
+*/
+ pline("\82¨\82¨\81I\83t\83@\83\93\83L\81[\83\82\83\93\83L\81[\82È%s\82à\82â\82ª\8c©\82¦\82é\81D", hcolor((char *)0));
} else {
switch (rnd(6)) {
case 1:
+/*JP
You("grok some groovy globs of incandescent lava.");
+*/
+ You("\90\85\96å\82Ì\8c®\82ð\82à\82Á\82½\90\85\8cË\89©\96å\82ª\95Ç\82Ì\89e\82É\89B\82ê\82Ä\82¢\82é\82Ì\82ª\8c©\82¦\82½\81D");
break;
case 2:
+#if 0 /*JP:T*/
pline("Whoa! Psychedelic colors, %s!",
poly_gender() == 1 ? "babe" : "dude");
+#else
+ pline("\83\8f\81[\83I\81I\83\89\83\8a\82Á\82Ä\82é\82©\82¢\81H%s\81I",
+ poly_gender() == 1 ? "\83x\83C\83r\81[" : "\83\86\81[");
+#endif
break;
case 3:
+/*JP
pline_The("crystal pulses with sinister %s light!",
+*/
+ pline("\90\85\8f»\82Í\95s\8bg\82È%s\83p\83\8b\83X\82ð\94\82µ\82½\81I",
hcolor((char *) 0));
break;
case 4:
+/*JP
You_see("goldfish swimming above fluorescent rocks.");
+*/
+ You("\8cu\8cõ\8aâ\82Ì\8fã\82ð\8bà\8b\9b\82ª\89j\82¢\82Å\82¢\82é\82Ì\82ð\8c©\82½\81D");
break;
case 5:
+#if 0 /*JP*/
You_see(
"tiny snowflakes spinning around a miniature farmhouse.");
+#else
+ You("\8f¬\82³\82¢\90á\95Ð\82ª\83~\83j\83`\83\85\83A\82Ì\94_\89Æ\82Ì\89Æ\82Ì\82Ü\82í\82è\82ð\95\91\82Á\82Ä\82é\82Ì\82ð\8c©\82½\81D");
+#endif
break;
default:
+/*JP
pline("Oh wow... like a kaleidoscope!");
- break;
+*/
+ pline("\83\8f\81[\83I\81D\96\9c\89Ø\8b¾\82Ì\82æ\82¤\82¾\81I");
+ break;
}
consume_obj_charge(obj, TRUE);
}
/* read a single character */
if (flags.verbose)
+/*JP
You("may look for an object or monster symbol.");
+*/
+ You("\95¨\91Ì\82â\89ö\95¨\82Ì\8bL\8d\86\82ð\92T\82¹\82é\81D");
+/*JP
ch = yn_function("What do you look for?", (char *) 0, '\0');
+*/
+ ch = yn_function("\89½\82ð\92T\82µ\82Ü\82·\82©\81H", (char *)0, '\0');
/* Don't filter out ' ' here; it has a use */
if ((ch != def_monsyms[S_GHOST].sym) && index(quitchars, ch)) {
if (flags.verbose)
pline1(Never_mind);
return;
}
+/*JP
You("peer into %s...", the(xname(obj)));
+*/
+ You("%s\82ð\94`\82«\82±\82ñ\82¾\81D\81D\81D", the(xname(obj)));
nomul(-rnd(10));
multi_reason = "gazing into a crystal ball";
nomovemsg = "";
if (obj->spe <= 0)
+/*JP
pline_The("vision is unclear.");
+*/
+ pline("\89f\91\9c\82Í\95s\91N\96¾\82¾\82Á\82½\81D");
else {
int class;
int ret = 0;
break;
default: {
int i = rn2(SIZE(level_detects));
+#if 0 /*JP*/
You_see("%s, %s.", level_detects[i].what,
level_distance(level_detects[i].where));
+#else
+ You_see("%s\82ð%s\8c©\82½\81D", level_detects[i].what,
+ level_distance(level_detects[i].where));
+#endif
}
ret = 0;
break;
if (ret) {
if (!rn2(100)) /* make them nervous */
+/*JP
You_see("the Wizard of Yendor gazing out at you.");
+*/
+ You("\83C\83F\83\93\83_\81[\82Ì\96\82\96@\8eg\82¢\82ª\82 \82È\82½\82ð\82É\82ç\82ñ\82Å\82¢\82é\82Ì\82ð\8c©\82½\81D");
else
+/*JP
pline_The("vision is unclear.");
+*/
+ pline("\89f\91\9c\82Í\95s\91N\96¾\82É\82È\82Á\82½\81D");
}
}
return;
cvt_sdoor_to_door(&levl[zx][zy]); /* .typ = DOOR */
if (levl[zx][zy].doormask & D_TRAPPED) {
if (distu(zx, zy) < 3)
+/*JP
b_trapped("door", 0);
+*/
+ b_trapped("\94à", 0);
else
+#if 0 /*JP*/
Norep("You %s an explosion!",
cansee(zx, zy) ? "see" : (!Deaf ? "hear"
: "feel the shock of"));
+#else
+ Norep("\82 \82È\82½\82Í\94\9a\94%s\81I",
+ cansee(zx, zy) ? "\82ð\8c©\82½" : (!Deaf ? "\89¹\82ð\95·\82¢\82½"
+ : "\82Ì\8fÕ\8c\82\82ð\8a´\82¶\82½"));
+#endif
wake_nearto(zx, zy, 11 * 11);
levl[zx][zy].doormask = D_NODOOR;
} else
if (u.uswallow) {
if (is_animal(u.ustuck->data)) {
if (Blind)
+/*JP
pline("Its mouth opens!");
+*/
+ pline("\89½\8eÒ\82©\82Ì\8cû\82ª\8aJ\82¢\82½\81I");
else
+/*JP
pline("%s opens its mouth!", Monnam(u.ustuck));
+*/
+ pline("%s\82Í\8cû\82ð\8aJ\82¢\82½\81I", Monnam(u.ustuck));
}
expels(u.ustuck, u.ustuck->data, TRUE);
return -1;
cleared = TRUE;
}
+/*JP
You("find %s.", an(defsyms[trap_to_defsym(tt)].explanation));
+*/
+ You("%s\82ð\8c©\82Â\82¯\82½\81D", defsyms[trap_to_defsym(tt)].explanation);
if (cleared) {
display_nhwindow(WIN_MAP, TRUE); /* wait */
if (u.uswallow) {
if (!aflag)
+/*JP
pline("What are you looking for? The exit?");
+*/
+ pline("\89½\82ð\92T\82·\82ñ\82¾\82¢\81H\94ñ\8fí\8cû\81H");
} else {
int fund = (uwep && uwep->oartifact
&& spec_ability(uwep, SPFX_SEARCH)) ? uwep->spe : 0;
*/
continue;
} else {
+/*JP
You_feel("an unseen monster!");
+*/
+ You("\8c©\82¦\82È\82¢\89ö\95¨\82Ì\8bC\94z\82ð\8a´\82¶\82½\81I");
map_invisible(x, y);
}
} else if (!sensemon(mtmp))
+/*JP
You("find %s.", mtmp->mtame
+*/
+ You("%s\82ð\8c©\82Â\82¯\82½\81D", mtmp->mtame
? y_monnam(mtmp)
: a_monnam(mtmp));
return 1;