OSDN Git Service

patch src/
[jnethack/source.git] / src / dig.c
index bbfef5d..1b7babe 100644 (file)
--- a/src/dig.c
+++ b/src/dig.c
@@ -2,6 +2,11 @@
 /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
 /* 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-2016            */
+/* JNetHack may be freely redistributed.  See license for details. */
+
 #include "hack.h"
 
 static NEARDATA boolean did_dig_msg;
@@ -95,10 +100,18 @@ register boolean rockit;
     register boolean waslit = rm_waslit();
 
     if (rockit)
+/*JP
         pline("Crash!  The ceiling collapses around you!");
+*/
+        pline("\82°\82°\82ñ\81I\82 \82È\82½\82Ì\82Ü\82í\82è\82Ì\93V\88ä\82ª\95ö\82ê\82½\81I");
     else
+#if 0 /*JP*/
         pline("A mysterious force %s cave around you!",
               (levl[u.ux][u.uy].typ == CORR) ? "creates a" : "extends the");
+#else
+        pline("\90_\94é\93I\82È\97Í\82É\82æ\82è\82 \82È\82½\82Ì\82Ü\82í\82è%s\82½\81I",
+              (levl[u.ux][u.uy].typ == CORR) ? "\82É\93´\8cA\82ª\82Å\82«" : "\82Ì\93´\8cA\82ª\8dL\82ª\82Á");
+#endif
     display_nhwindow(WIN_MESSAGE, TRUE);
 
     for (dist = 1; dist <= 2; dist++) {
@@ -184,32 +197,53 @@ int x, y;
 {
     struct trap *ttmp = t_at(x, y);
     const char *verb =
+/*JP
         (madeby == BY_YOU && uwep && is_axe(uwep)) ? "chop" : "dig in";
+*/
+        (madeby == BY_YOU && uwep && is_axe(uwep)) ? "\8dÓ\82¯\82È\82¢" : "\8c@\82ê\82È\82¢";
 
     if (On_stairs(x, y)) {
         if (x == xdnladder || x == xupladder) {
             if (verbose)
+/*JP
                 pline_The("ladder resists your effort.");
+*/
+                pline("\82Í\82µ\82²\82ª\8e×\96\82\82ð\82µ\82½\81D");
         } else if (verbose)
+/*JP
             pline_The("stairs are too hard to %s.", verb);
+*/
+            pline("\8aK\92i\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä%s\81D", verb);
         return FALSE;
     } else if (IS_THRONE(levl[x][y].typ) && madeby != BY_OBJECT) {
         if (verbose)
+/*JP
             pline_The("throne is too hard to break apart.");
+*/
+            pline("\8bÊ\8dÀ\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8dÓ\82¯\82È\82¢\81D");
         return FALSE;
     } else if (IS_ALTAR(levl[x][y].typ)
                && (madeby != BY_OBJECT || Is_astralevel(&u.uz)
                    || Is_sanctum(&u.uz))) {
         if (verbose)
+/*JP
             pline_The("altar is too hard to break apart.");
+*/
+            pline_The("\8dÕ\92d\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8dÓ\82¯\82È\82¢\81D");
         return FALSE;
     } else if (Is_airlevel(&u.uz)) {
         if (verbose)
+/*JP
             You("cannot %s thin air.", verb);
+*/
+            You("\89½\82à\82È\82¢\8bó\8aÔ\82Í%s\81D", verb);
         return FALSE;
     } else if (Is_waterlevel(&u.uz)) {
         if (verbose)
+/*JP
             pline_The("water splashes and subsides.");
+*/
+            pline("\90\85\82ª\83s\83V\83\83\83b\82Æ\92µ\82Ë\82½\81D");
         return FALSE;
     } else if ((IS_ROCK(levl[x][y].typ) && levl[x][y].typ != SDOOR
                 && (levl[x][y].wall_info & W_NONDIGGABLE) != 0)
@@ -218,11 +252,17 @@ int x, y;
                        || ttmp->ttyp == VIBRATING_SQUARE
                        || (!Can_dig_down(&u.uz) && !levl[x][y].candig)))) {
         if (verbose)
+/*JP
             pline_The("%s here is too hard to %s.", surface(x, y), verb);
+*/
+            pline_The("%s\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä%s\81D", surface(x,y), verb);
         return FALSE;
     } else if (sobj_at(BOULDER, x, y)) {
         if (verbose)
+/*JP
             There("isn't enough room to %s here.", verb);
+*/
+            pline("\8f\\95ª\82È\8fê\8f\8a\82ª\82È\82¢\82Ì\82Å%s\81D", verb);
         return FALSE;
     } else if (madeby == BY_OBJECT
                /* the block against existing traps is mainly to
@@ -240,7 +280,10 @@ dig(VOID_ARGS)
     register struct rm *lev;
     register xchar dpx = context.digging.pos.x, dpy = context.digging.pos.y;
     register boolean ispick = uwep && is_pick(uwep);
+/*JP
     const char *verb = (!uwep || is_pick(uwep)) ? "dig into" : "chop through";
+*/
+    const char *verb = (!uwep || is_pick(uwep)) ? "\8c@\82ê\82È\82¢" : "\8dÓ\82¯\82È\82¢";
 
     lev = &levl[dpx][dpy];
     /* perhaps a nymph stole your pick-axe while you were busy digging */
@@ -257,13 +300,21 @@ dig(VOID_ARGS)
     } else { /* !context.digging.down */
         if (IS_TREE(lev->typ) && !may_dig(dpx, dpy)
             && dig_typ(uwep, dpx, dpy) == DIGTYP_TREE) {
+/*JP
             pline("This tree seems to be petrified.");
+*/
+            pline("\82±\82Ì\96Ø\82Í\90Î\89»\82µ\82Ä\82¢\82é\82æ\82¤\82¾\81D");
             return 0;
         }
         if (IS_ROCK(lev->typ) && !may_dig(dpx, dpy)
             && dig_typ(uwep, dpx, dpy) == DIGTYP_ROCK) {
+#if 0 /*JP*/
             pline("This %s is too hard to %s.",
                   is_db_wall(dpx, dpy) ? "drawbridge" : "wall", verb);
+#else
+            pline("\82±\82Ì%s\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä%s\81D",
+                  is_db_wall(dpx, dpy) ? "\92µ\82Ë\8b´" : "\95Ç", verb);
+#endif
             return 0;
         }
     }
@@ -271,24 +322,43 @@ dig(VOID_ARGS)
         switch (rn2(3)) {
         case 0:
             if (!welded(uwep)) {
+/*JP
                 You("fumble and drop %s.", yname(uwep));
+*/
+                You("\8eè\82ª\8a\8a\82è%s\82ð\97\8e\82µ\82½\81D", yname(uwep));
                 dropx(uwep);
             } else {
                 if (u.usteed)
+#if 0 /*JP:T*/
                     pline("%s and %s %s!", Yobjnam2(uwep, "bounce"),
                           otense(uwep, "hit"), mon_nam(u.usteed));
+#else
+                    pline("%s\82Í\92µ\82Ë\82©\82¦\82è%s\82É\96½\92\86\82µ\82½\81I",
+                          xname(uwep), mon_nam(u.usteed));
+#endif
                 else
+#if 0 /*JP:T*/
                     pline("Ouch!  %s and %s you!", Yobjnam2(uwep, "bounce"),
                           otense(uwep, "hit"));
+#else
+                    pline("\82¢\82Ä\82Á\81I%s\82Í\92µ\82Ë\82©\82¦\82è\82 \82È\82½\82É\96½\92\86\82µ\82½\81I",
+                          xname(uwep));
+#endif
                 set_wounded_legs(RIGHT_SIDE, 5 + rnd(5));
             }
             break;
         case 1:
+/*JP
             pline("Bang!  You hit with the broad side of %s!",
+*/
+            pline("\83o\83\93\81I%s\82Ì\95¿\82Å\91Å\82Á\82Ä\82µ\82Ü\82Á\82½\81I",
                   the(xname(uwep)));
             break;
         default:
+/*JP
             Your("swing misses its mark.");
+*/
+            You("\91_\82¢\82ð\92è\82ß\82Ä\90U\82è\82¨\82ë\82µ\82½\82ª\82Í\82¸\82µ\82½\81D");
             break;
         }
         return 0;
@@ -365,7 +435,10 @@ dig(VOID_ARGS)
 
         if ((obj = sobj_at(STATUE, dpx, dpy)) != 0) {
             if (break_statue(obj))
+/*JP
                 digtxt = "The statue shatters.";
+*/
+                digtxt = "\92¤\91\9c\82Í\82±\82È\82²\82È\82É\82È\82Á\82½\81D";
             else
                 /* it was a statue trap; break_statue()
                  * printed a message and updated the screen
@@ -380,7 +453,10 @@ dig(VOID_ARGS)
                 obj_extract_self(bobj);
                 place_object(bobj, dpx, dpy);
             }
+/*JP
             digtxt = "The boulder falls apart.";
+*/
+            digtxt = "\8aâ\82Í\82±\82È\82²\82È\82É\82È\82Á\82½\81D";
         } else if (lev->typ == STONE || lev->typ == SCORR
                    || IS_TREE(lev->typ)) {
             if (Is_earthlevel(&u.uz)) {
@@ -394,18 +470,27 @@ dig(VOID_ARGS)
                 }
             }
             if (IS_TREE(lev->typ)) {
+/*JP
                 digtxt = "You cut down the tree.";
+*/
+                digtxt = "\96Ø\82ð\90Ø\82è\93|\82µ\82½\81D";
                 lev->typ = ROOM;
                 if (!rn2(5))
                     (void) rnd_treefruit_at(dpx, dpy);
             } else {
+/*JP
                 digtxt = "You succeed in cutting away some rock.";
+*/
+                digtxt = "\8aâ\82ð\8f­\82µ\90Ø\82è\82Æ\82Á\82½\81D";
                 lev->typ = CORR;
             }
         } else if (IS_WALL(lev->typ)) {
             if (shopedge) {
                 add_damage(dpx, dpy, 10L * ACURRSTR);
+/*JP
                 dmgtxt = "damage";
+*/
+                dmgtxt = "\8f\9d\82Â\82¯\82é";
             }
             if (level.flags.is_maze_lev) {
                 lev->typ = ROOM;
@@ -415,17 +500,29 @@ dig(VOID_ARGS)
                 lev->typ = DOOR;
                 lev->doormask = D_NODOOR;
             }
+/*JP
             digtxt = "You make an opening in the wall.";
+*/
+            digtxt = "\95Ç\82É\8c\8a\82ð\8bó\82¯\82½\81D";
         } else if (lev->typ == SDOOR) {
             cvt_sdoor_to_door(lev); /* ->typ = DOOR */
+/*JP
             digtxt = "You break through a secret door!";
+*/
+            digtxt = "\94é\96§\82Ì\94à\82ð\92Ê\82è\94²\82¯\82½\81I";
             if (!(lev->doormask & D_TRAPPED))
                 lev->doormask = D_BROKEN;
         } else if (closed_door(dpx, dpy)) {
+/*JP
             digtxt = "You break through the door.";
+*/
+            digtxt = "\94à\82ð\92Ê\82è\94²\82¯\82½\81D";
             if (shopedge) {
                 add_damage(dpx, dpy, 400L);
+/*JP
                 dmgtxt = "break";
+*/
+                dmgtxt = "\89ó\82·";
             }
             if (!(lev->doormask & D_TRAPPED))
                 lev->doormask = D_BROKEN;
@@ -453,11 +550,17 @@ dig(VOID_ARGS)
                 break;
             }
             if (mtmp)
+/*JP
                 pline_The("debris from your digging comes to life!");
+*/
+                pline("\8aâ\82Ì\94j\95Ð\82ª\90\96½\82ð\91Ñ\82Ñ\82½\81I");
         }
         if (IS_DOOR(lev->typ) && (lev->doormask & D_TRAPPED)) {
             lev->doormask = D_NODOOR;
+/*JP
             b_trapped("door", 0);
+*/
+            b_trapped("\94à", 0);
             newsym(dpx, dpy);
         }
     cleanup:
@@ -467,14 +570,24 @@ dig(VOID_ARGS)
         context.digging.level.dlevel = -1;
         return 0;
     } else { /* not enough effort has been spent yet */
+#if 0 /*JP:T*/
         static const char *const d_target[6] = { "",        "rock", "statue",
                                                  "boulder", "door", "tree" };
+#else
+        static const char *const d_target[6] = { "",   "\90Î", "\92¤\91\9c",
+                                                 "\8aâ", "\94à", "\96Ø" };
+#endif
         int dig_target = dig_typ(uwep, dpx, dpy);
 
         if (IS_WALL(lev->typ) || dig_target == DIGTYP_DOOR) {
             if (*in_rooms(dpx, dpy, SHOPBASE)) {
+#if 0 /*JP:T*/
                 pline("This %s seems too hard to %s.",
                       IS_DOOR(lev->typ) ? "door" : "wall", verb);
+#else
+                pline("\82±\82Ì%s\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä%s\81D",
+                      IS_DOOR(lev->typ) ? "\94à" : "\95Ç", verb);
+#endif
                 return 0;
             }
         } else if (dig_target == DIGTYP_UNDIGGABLE
@@ -482,7 +595,10 @@ dig(VOID_ARGS)
             return 0; /* statue or boulder got taken */
 
         if (!did_dig_msg) {
+/*JP
             You("hit the %s with all your might.", d_target[dig_target]);
+*/
+            You("%s\82ð\97Í\88ê\94t\91Å\82¿\82Â\82¯\82½\81D", d_target[dig_target]);
             did_dig_msg = TRUE;
         }
     }
@@ -586,7 +702,10 @@ int ttyp;
     /* maketrap() might change it, also, in this situation,
        surface() returns an inappropriate string for a grave */
     if (IS_GRAVE(lev->typ))
+/*JP
         Strcpy(surface_type, "grave");
+*/
+        Strcpy(surface_type, "\95æ");
     else
         Strcpy(surface_type, surface(x, y));
     shopdoor = IS_DOOR(lev->typ) && *in_rooms(x, y, SHOPBASE);
@@ -607,13 +726,25 @@ int ttyp;
             if (x != u.ux || y != u.uy)
                 You("dig an adjacent pit.");
             else
+/*JP
                 You("dig a pit in the %s.", surface_type);
+*/
+                You("%s\82É\97\8e\82µ\8c\8a\82ð\8c@\82Á\82½\81D", surface_type);
             if (shopdoor)
+/*JP
                 pay_for_damage("ruin", FALSE);
+*/
+                pay_for_damage("\89ó\82·", FALSE);
         } else if (!madeby_obj && canseemon(madeby))
+/*JP
             pline("%s digs a pit in the %s.", Monnam(madeby), surface_type);
+*/
+            pline("%s\82Í%s\82É\97\8e\82µ\8c\8a\82ð\8c@\82Á\82½\81D", Monnam(madeby), surface_type);
         else if (cansee(x, y) && flags.verbose)
+/*JP
             pline("A pit appears in the %s.", surface_type);
+*/
+            pline("\97\8e\82µ\8c\8a\82ª%s\82É\8c»\82í\82ê\82½\81D", surface_type);
 
         if (at_u) {
             if (!wont_fall) {
@@ -627,24 +758,43 @@ int ttyp;
         } else if (mtmp) {
             if (is_flyer(mtmp->data) || is_floater(mtmp->data)) {
                 if (canseemon(mtmp))
+#if 0 /*JP*/
                     pline("%s %s over the pit.", Monnam(mtmp),
                           (is_flyer(mtmp->data)) ? "flies" : "floats");
+#else
+                    pline("%s\82Í%s\97\8e\82µ\8c\8a\82ð\89z\82¦\82½\81D", Monnam(mtmp),
+                          (is_flyer(mtmp->data)) ? "\94ò\82ñ\82Å" : "\95\82\82¢\82Ä");
+#endif
             } else if (mtmp != madeby)
                 (void) mintrap(mtmp);
         }
     } else { /* was TRAPDOOR now a HOLE*/
 
         if (madeby_u)
+/*JP
             You("dig a hole through the %s.", surface_type);
+*/
+            You("%s\82É\8c\8a\82ð\8aJ\82¯\82½\81D", surface_type);
         else if (!madeby_obj && canseemon(madeby))
+#if 0 /*JP:T*/
             pline("%s digs a hole through the %s.", Monnam(madeby),
                   surface_type);
+#else
+            pline("%s\82Í%s\82É\8c\8a\82ð\8aJ\82¯\82½\81D", Monnam(madeby),
+                  surface_type);
+#endif
         else if (cansee(x, y) && flags.verbose)
+/*JP
             pline("A hole appears in the %s.", surface_type);
+*/
+            pline("%s\82É\8c\8a\82ª\8c»\82í\82ê\82½\81D", surface_type);
 
         if (at_u) {
             if (!u.ustuck && !wont_fall && !next_to_u()) {
+/*JP
                 You("are jerked back by your pet!");
+*/
+                You("\83y\83b\83g\82É\82æ\82Á\82Ä\88ø\82«\96ß\82³\82ê\82½\81I");
                 wont_fall = TRUE;
             }
 
@@ -658,7 +808,10 @@ int ttyp;
                 if (oldobjs != newobjs)
                     (void) pickup(1);
                 if (shopdoor && madeby_u)
+/*JP
                     pay_for_damage("ruin", FALSE);
+*/
+                    pay_for_damage("\82ß\82¿\82á\82ß\82¿\82á\82É\82·\82é", FALSE);
 
             } else {
                 d_level newlevel;
@@ -667,9 +820,15 @@ int ttyp;
                     shopdig(1); /* shk might snatch pack */
                 /* handle earlier damage, eg breaking wand of digging */
                 else if (!madeby_u)
+/*JP
                     pay_for_damage("dig into", TRUE);
+*/
+                    pay_for_damage("\8c\8a\82ð\82 \82¯\82é", TRUE);
 
+/*JP
                 You("fall through...");
+*/
+                You("\97\8e\82¿\82½\81D\81D\81D");
                 /* Earlier checks must ensure that the destination
                  * level exists and is in the present dungeon.
                  */
@@ -681,7 +840,10 @@ int ttyp;
             }
         } else {
             if (shopdoor && madeby_u)
+/*JP
                 pay_for_damage("ruin", FALSE);
+*/
+                pay_for_damage("\82ß\82¿\82á\82ß\82¿\82á\82É\82·\82é", FALSE);
             if (newobjs)
                 impact_drop((struct obj *) 0, x, y, 0);
             if (mtmp) {
@@ -701,7 +863,10 @@ int ttyp;
                         assign_level(&tolevel, &valley_level);
                     } else if (Is_botlevel(&u.uz)) {
                         if (canseemon(mtmp))
+/*JP
                             pline("%s avoids the trap.", Monnam(mtmp));
+*/
+                            pline("%s\82Íã©\82ð\94ð\82¯\82½\81D", Monnam(mtmp));
                         return;
                     } else {
                         get_level(&tolevel, depth(&u.uz) + 1);
@@ -735,7 +900,10 @@ const char *fillmsg;
     unearth_objs(x, y);
 
     if (fillmsg)
+/*JP
         pline(fillmsg, typ == LAVAPOOL ? "lava" : "water");
+*/
+        pline(fillmsg, typ == LAVAPOOL ? "\97n\8aâ" : "\90\85");
     if (u_spot && !(Levitation || Flying)) {
         if (typ == LAVAPOOL)
             (void) lava_effects();
@@ -775,12 +943,21 @@ coord *cc;
                   || ttmp->ttyp == VIBRATING_SQUARE || nohole))
         || (IS_ROCK(lev->typ) && lev->typ != SDOOR
             && (lev->wall_info & W_NONDIGGABLE) != 0)) {
+#if 0 /*JP:T*/
         pline_The("%s %shere is too hard to dig in.", surface(dig_x, dig_y),
                   (dig_x != u.ux || dig_y != u.uy) ? "t" : "");
+#else
+        pline("%s\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8c@\82ê\82È\82¢\81D", surface(dig_x, dig_y));
+#endif
 
     } else if (is_pool_or_lava(dig_x, dig_y)) {
+#if 0 /*JP:T*/
         pline_The("%s sloshes furiously for a moment, then subsides.",
                   is_lava(dig_x, dig_y) ? "lava" : "water");
+#else
+        pline("%s\82Í\8c\83\82µ\82­\94g\82¤\82Á\82½\81D",
+                  is_lava(dig_x, dig_y) ? "\97n\8aâ" : "\90\85");
+#endif
         wake_nearby(); /* splashing */
 
     } else if (lev->typ == DRAWBRIDGE_DOWN
@@ -789,7 +966,10 @@ coord *cc;
            bridge is extended; drawbridge_wall is the open "doorway" or
            closed "door" where the portcullis/mechanism is located */
         if (pit_only) {
+/*JP
             pline_The("drawbridge seems too hard to dig through.");
+*/
+            pline("\92µ\82Ë\8b´\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8c@\82ê\82»\82¤\82É\82È\82¢\81D");
             return FALSE;
         } else {
             int x = dig_x, y = dig_y;
@@ -802,15 +982,23 @@ coord *cc;
     } else if ((boulder_here = sobj_at(BOULDER, dig_x, dig_y)) != 0) {
         if (ttmp && (ttmp->ttyp == PIT || ttmp->ttyp == SPIKED_PIT)
             && rn2(2)) {
+#if 0 /*JP*/
             pline_The("boulder settles into the %spit.",
                       (dig_x != u.ux || dig_y != u.uy) ? "adjacent " : "");
+#else
+            pline("\8aâ\82Í%s\97\8e\82µ\8c\8a\82ð\96\84\82ß\82½\81D",
+                      (dig_x != u.ux || dig_y != u.uy) ? "\97×\82Ì" : "");
+#endif
             ttmp->ttyp = PIT; /* crush spikes */
         } else {
             /*
              * digging makes a hole, but the boulder immediately
              * fills it.  Final outcome:  no hole, no boulder.
              */
+/*JP
             pline("KADOOM! The boulder falls in!");
+*/
+            pline("\82Ç\82Ç\81[\82ñ\81I\8aâ\82Í\97\8e\82¿\82½\81I");
             (void) delfloortrap(ttmp);
         }
         delobj(boulder_here);
@@ -830,32 +1018,52 @@ coord *cc;
              * We can't dig a hole here since that will destroy
              * the drawbridge.  The following is a cop-out. --dlc
              */
+#if 0 /*JP*/
             pline_The("%s %shere is too hard to dig in.",
                       surface(dig_x, dig_y),
                       (dig_x != u.ux || dig_y != u.uy) ? "t" : "");
+#else
+            pline("%s\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8c@\82ê\82È\82¢\81D", surface(dig_x, dig_y));
+#endif
             return FALSE;
         }
 
         lev->drawbridgemask &= ~DB_UNDER;
         lev->drawbridgemask |= (typ == LAVAPOOL) ? DB_LAVA : DB_MOAT;
+#if 0 /*JP:T*/
         liquid_flow(dig_x, dig_y, typ, ttmp,
                     "As you dig, the hole fills with %s!");
+#else
+        liquid_flow(dig_x, dig_y, typ, ttmp,
+                    "\82 \82È\82½\82ª\8c@\82é\82Æ\81C%s\82ª\97N\82¢\82Ä\82«\82½\81I");
+#endif
         return TRUE;
 
         /* the following two are here for the wand of digging */
     } else if (IS_THRONE(lev->typ)) {
+/*JP
         pline_The("throne is too hard to break apart.");
+*/
+        pline("\8bÊ\8dÀ\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8dÓ\82¯\82È\82¢\81D");
 
     } else if (IS_ALTAR(lev->typ)) {
+/*JP
         pline_The("altar is too hard to break apart.");
+*/
+        pline("\8dÕ\92d\82Í\82Æ\82Ä\82à\8cÅ\82­\82Ä\8dÓ\82¯\82È\82¢\81D");
 
     } else {
         typ = fillholetyp(dig_x, dig_y, FALSE);
 
         if (typ != ROOM) {
             lev->typ = typ;
+#if 0 /*JP*/
             liquid_flow(dig_x, dig_y, typ, ttmp,
                         "As you dig, the hole fills with %s!");
+#else
+            liquid_flow(dig_x, dig_y, typ, ttmp,
+                        "\82 \82È\82½\82ª\8c@\82é\82Æ\81C%s\82ª\97N\82¢\82Ä\82«\82½\81I");
+#endif
             return TRUE;
         }
 
@@ -901,38 +1109,65 @@ coord *cc;
     exercise(A_WIS, FALSE);
     if (Role_if(PM_ARCHEOLOGIST)) {
         adjalign(-sgn(u.ualign.type) * 3);
+/*JP
         You_feel("like a despicable grave-robber!");
+*/
+        pline("\82±\82ê\82Å\82Í\82Ü\82é\82Å\95æ\93D\96_\82¾\81I");
     } else if (Role_if(PM_SAMURAI)) {
         adjalign(-sgn(u.ualign.type));
+/*JP
         You("disturb the honorable dead!");
+*/
+        You("\96¼\97_\82 \82é\8e\80\8eÒ\82Ì\96°\82è\82ð\96W\82°\82¾\81I");
     } else if ((u.ualign.type == A_LAWFUL) && (u.ualign.record > -10)) {
         adjalign(-sgn(u.ualign.type));
+/*JP
         You("have violated the sanctity of this grave!");
+*/
+        You("\90¹\82È\82é\95æ\92n\82ð\94Æ\82µ\82½\81I");
     }
 
     switch (rn2(5)) {
     case 0:
     case 1:
+/*JP
         You("unearth a corpse.");
+*/
+        You("\8e\80\91Ì\82ð\8c@\82è\8bN\82µ\82½\81D");
         if (!!(otmp = mk_tt_object(CORPSE, dig_x, dig_y)))
             otmp->age -= 100; /* this is an *OLD* corpse */
         ;
         break;
     case 2:
         if (!Blind)
+/*JP
             pline(Hallucination ? "Dude!  The living dead!"
+*/
+            pline(Hallucination ? "\83]\83\93\83r\82ª\82­\82é\82è\82Æ\97Ö\82ð\95`\82¢\82½\81I"
+/*JP
                                 : "The grave's owner is very upset!");
+*/
+                                : "\95æ\82Ì\8f\8a\97L\8eÒ\82Í\82Æ\82Ä\82à\8bÁ\82¢\82½\81I");
         (void) makemon(mkclass(S_ZOMBIE, 0), dig_x, dig_y, NO_MM_FLAGS);
         break;
     case 3:
         if (!Blind)
+/*JP
             pline(Hallucination ? "I want my mummy!"
+*/
+            pline(Hallucination ? "\83}\83~\81[\82ª\95K\97v\82¾\81I"
+/*JP
                                 : "You've disturbed a tomb!");
+*/
+                                : "\95æ\82ð\8dr\82µ\82Ä\82µ\82Ü\82Á\82½\81I");
         (void) makemon(mkclass(S_MUMMY, 0), dig_x, dig_y, NO_MM_FLAGS);
         break;
     default:
         /* No corpse */
+/*JP
         pline_The("grave seems unused.  Strange....");
+*/
+        pline("\82±\82Ì\95æ\82Í\96¢\8eg\97p\82Ì\82æ\82¤\82¾\81D\8aï\96­\82¾\81D\81D\81D");
         break;
     }
     levl[dig_x][dig_y].typ = ROOM;
@@ -958,13 +1193,21 @@ struct obj *obj;
             res = 1;
     }
     ispick = is_pick(obj);
+/*JP
     verb = ispick ? "dig" : "chop";
+*/
+    verb = ispick ? "\8c@\82é" : "\8dÓ\82­";
 
     if (u.utrap && u.utraptype == TT_WEB) {
+#if 0 /*JP:T*/
         pline("%s you can't %s while entangled in a web.",
               /* res==0 => no prior message;
                  res==1 => just got "You now wield a pick-axe." message */
               !res ? "Unfortunately," : "But", verb);
+#else
+        pline("%s\82­\82à\82Ì\91\83\82É\82Ð\82Á\82©\82©\82Á\82Ä\82¢\82é\8aÔ\82Í%s\81D",
+              !res ? "\8ec\94O\82È\82ª\82ç" : "\82µ\82©\82µ", jconj(verb, "\82È\82¢"));
+#endif
         return res;
     }
 
@@ -997,7 +1240,10 @@ struct obj *obj;
         *dsp++ = *sdp;
     }
     *dsp = 0;
+/*JP
     Sprintf(qbuf, "In what direction do you want to %s? [%s]", verb, dirsyms);
+*/
+    Sprintf(qbuf, "\82Ç\82Ì\95û\8cü\82ð%s\81H[%s]", verb, dirsyms);
     if (!getdir(qbuf))
         return res;
 
@@ -1016,17 +1262,29 @@ struct obj *obj;
     struct trap *trap, *trap_with_u;
     int dig_target;
     boolean ispick = is_pick(obj);
+/*JP
     const char *verbing = ispick ? "digging" : "chopping";
+*/
+    const char *verbing = ispick ? "\8c@\82é" : "\8dÓ\82­";
 
     if (u.uswallow && attack(u.ustuck)) {
         ; /* return 1 */
     } else if (Underwater) {
+/*JP
         pline("Turbulence torpedoes your %s attempts.", verbing);
+*/
+        pline("%s\82Æ\82·\82é\82Æ\97\90\90\85\97¬\82ª\8bN\82«\82½\81D", jconj(verbing, "\82æ\82¤"));
     } else if (u.dz < 0) {
         if (Levitation)
+/*JP
             You("don't have enough leverage.");
+*/
+            You("\95\82\82¢\82Ä\82¢\82é\82Ì\82Å\82Ó\82ñ\82Î\82è\82ª\82«\82©\82È\82¢\81D");
         else
+/*JP
             You_cant("reach the %s.", ceiling(u.ux, u.uy));
+*/
+            You("%s\82É\93Í\82©\82È\82¢\81D", ceiling(u.ux,u.uy));
     } else if (!u.dx && !u.dy && !u.dz) {
         char buf[BUFSZ];
         int dam;
@@ -1034,8 +1292,14 @@ struct obj *obj;
         dam = rnd(2) + dbon() + obj->spe;
         if (dam <= 0)
             dam = 1;
+/*JP
         You("hit yourself with %s.", yname(uwep));
+*/
+        You("\8e©\95ª\8e©\90g\82ð%s\82Å\92@\82¢\82½\81D", yname(uwep));
+/*JP
         Sprintf(buf, "%s own %s", uhis(), OBJ_NAME(objects[obj->otyp]));
+*/
+        Sprintf(buf, "\8e©\95ª\8e©\90g\82ð%s\82Å\92@\82¢\82Ä", yname(uwep));
         losehp(Maybe_Half_Phys(dam), buf, KILLED_BY);
         context.botl = 1;
         return 1;
@@ -1045,7 +1309,10 @@ struct obj *obj;
         rx = u.ux + u.dx;
         ry = u.uy + u.dy;
         if (!isok(rx, ry)) {
+/*JP
             pline("Clash!");
+*/
+            pline("\83K\83\89\83K\83\89\81I");
             return 1;
         }
         lev = &levl[rx][ry];
@@ -1058,29 +1325,56 @@ struct obj *obj;
             if (trap && trap->ttyp == WEB) {
                 if (!trap->tseen) {
                     seetrap(trap);
+/*JP
                     There("is a spider web there!");
+*/
+                    pline("\82»\82±\82É\82Í\82­\82à\82Ì\91\83\82ª\82 \82é\81I");
                 }
+/*JP
                 pline("%s entangled in the web.", Yobjnam2(obj, "become"));
+*/
+                Your("%s\82Í\82­\82à\82Ì\91\83\82É\82©\82ç\82Ü\82Á\82½\81D", xname(obj));
                 /* you ought to be able to let go; tough luck */
                 /* (maybe `move_into_trap()' would be better) */
                 nomul(-d(2, 2));
                 multi_reason = "stuck in a spider web";
+/*JP
                 nomovemsg = "You pull free.";
+*/
+                nomovemsg = "\82Ð\82«\82Í\82È\82µ\82½\81D";
             } else if (lev->typ == IRONBARS) {
+/*JP
                 pline("Clang!");
+*/
+                pline("\83K\83c\83\93\81I");
                 wake_nearby();
             } else if (IS_TREE(lev->typ))
+/*JP
                 You("need an axe to cut down a tree.");
+*/
+                You("\96Ø\82ð\90Ø\82é\82É\82Í\95\80\82ª\95K\97v\82¾\81D");
             else if (IS_ROCK(lev->typ))
+/*JP
                 You("need a pick to dig rock.");
+*/
+                You("\8c@\82é\82É\82Í\82Â\82é\82Í\82µ\82ª\95K\97v\82¾\81D");
             else if (!ispick && (sobj_at(STATUE, rx, ry)
                                  || sobj_at(BOULDER, rx, ry))) {
                 boolean vibrate = !rn2(3);
+#if 0 /*JP:T*/
                 pline("Sparks fly as you whack the %s.%s",
                       sobj_at(STATUE, rx, ry) ? "statue" : "boulder",
                       vibrate ? " The axe-handle vibrates violently!" : "");
+#else
+                pline("%s\82ð\90Ø\82ë\82¤\82Æ\82µ\82½\82ç\89Î\89Ô\82ª\8eU\82Á\82½\81I%s",
+                      sobj_at(STATUE, rx, ry) ? "\92¤\91\9c" : "\8aâ",
+                      vibrate ? "\95\80\82Í\8c\83\82µ\82­\90U\93®\82µ\82½\81I" : "");
+#endif
                 if (vibrate)
+/*JP
                     losehp(Maybe_Half_Phys(2), "axing a hard object",
+*/
+                    losehp(Maybe_Half_Phys(2), "\8cÅ\82¢\82à\82Ì\82É\95\80\82ð\8eg\82¨\82¤\82Æ\82µ\82Ä",
                            KILLED_BY);
             } else if (u.utrap && u.utraptype == TT_PIT && trap
                        && (trap_with_u = t_at(u.ux, u.uy))
@@ -1105,11 +1399,30 @@ struct obj *obj;
             } else
                 You("swing %s through thin air.", yobjnam(obj, (char *) 0));
         } else {
+#if 0 /*JP*/
             static const char *const d_action[6] = { "swinging", "digging",
                                                      "chipping the statue",
                                                      "hitting the boulder",
                                                      "chopping at the door",
                                                      "cutting the tree" };
+#else
+            static const char * const d_action1[6] = {
+                "\90U\82è",
+                "\8c@\82è",
+                "\92¤\91\9c\82ð\8dí\82è",
+                "\8aâ\82ð\91Å\82¿\82Â\82¯",
+                "\94à\82ð\8dí\82è",
+                "\96Ø\82ð\90Ø\82è"
+              };
+            static const char * const d_action2[6] = {
+                "\90U\82é",
+                "\8c@\82é",
+                "\92¤\91\9c\82ð\8dí\82é",
+                "\8aâ\82ð\91Å\82¿\82Â\82¯\82é",
+                "\94à\82ð\8dí\82é",
+                "\96Ø\82ð\90Ø\82é"
+              };
+#endif
             did_dig_msg = FALSE;
             context.digging.quiet = FALSE;
             if (context.digging.pos.x != rx || context.digging.pos.y != ry
@@ -1131,23 +1444,39 @@ struct obj *obj;
                 assign_level(&context.digging.level, &u.uz);
                 context.digging.effort = 0;
                 if (!context.digging.quiet)
+/*JP
                     You("start %s.", d_action[dig_target]);
+*/
+                    You("%s\82Í\82\82ß\82½\81D", d_action1[dig_target]);
             } else {
+#if 0 /*JP*/
                 You("%s %s.", context.digging.chew ? "begin" : "continue",
                     d_action[dig_target]);
+#else
+                You("%s\82Ì\82ð%s\82µ\82½\81D", d_action2[dig_target],
+                    context.digging.chew ? "\8aJ\8en" : "\8dÄ\8aJ");
+#endif
                 context.digging.chew = FALSE;
             }
             set_occupation(dig, verbing, 0);
         }
     } else if (Is_airlevel(&u.uz) || Is_waterlevel(&u.uz)) {
         /* it must be air -- water checked above */
+/*JP
         You("swing %s through thin air.", yobjnam(obj, (char *) 0));
+*/
+        You("\89½\82à\82È\82¢\8bó\8aÔ\82Å%s\82ð\90U\82è\82Ü\82í\82µ\82½\81D", xname(obj));
     } else if (!can_reach_floor(FALSE)) {
         cant_reach_floor(u.ux, u.uy, FALSE, FALSE);
     } else if (is_pool_or_lava(u.ux, u.uy)) {
         /* Monsters which swim also happen not to be able to dig */
+#if 0 /*JP:T*/
         You("cannot stay under%s long enough.",
             is_pool(u.ux, u.uy) ? "water" : " the lava");
+#else
+        You("%s\82É\82Í\92·\8e\9e\8aÔ\82¢\82ç\82ê\82È\82¢\81D",
+            is_pool(u.ux, u.uy) ? "\90\85\96Ê\89º" : "\97n\8aâ\82Ì\92\86");
+#endif
     } else if ((trap = t_at(u.ux, u.uy)) != 0
                && uteetering_at_seen_pit(trap)) {
         dotrap(trap, FORCEBUNGLE);
@@ -1159,8 +1488,13 @@ struct obj *obj;
                   trigger or disarm a trap here */
                && (!trap || (trap->ttyp != LANDMINE
                              && trap->ttyp != BEAR_TRAP))) {
+#if 0 /*JP:T*/
         pline("%s merely scratches the %s.", Yobjnam2(obj, (char *) 0),
               surface(u.ux, u.uy));
+#else
+        Your("%s\82Í%s\82É\82©\82·\82è\8f\9d\82ð\82Â\82¯\82½\82¾\82¯\82¾\82Á\82½\81D", aobjnam(obj, (char *)0),
+              surface(u.ux,u.uy));
+#endif
         u_wipe_engr(3);
     } else {
         if (context.digging.pos.x != u.ux || context.digging.pos.y != u.uy
@@ -1173,11 +1507,17 @@ struct obj *obj;
             context.digging.pos.y = u.uy;
             assign_level(&context.digging.level, &u.uz);
             context.digging.effort = 0;
+/*JP
             You("start %s downward.", verbing);
+*/
+            You("\89º\8cü\82«\82É\8c@\82è\82Í\82\82ß\82½\81D");
             if (*u.ushops)
                 shopdig(0);
         } else
+/*JP
             You("continue %s downward.", verbing);
+*/
+            You("\89º\8cü\82«\82É\8c@\82é\82Ì\82ð\8dÄ\8aJ\82µ\82½\81D");
         did_dig_msg = FALSE;
         set_occupation(dig, verbing, 0);
     }
@@ -1213,20 +1553,38 @@ boolean zap;
 
         if (mtmp) {
             if (zap || context.digging.warned) {
+/*JP
                 verbalize("Halt, vandal!  You're under arrest!");
+*/
+                verbalize("\8e~\82Ü\82ê\96ì\94Ø\90l\81I\82¨\82Ü\82¦\82ð\91ß\95ß\82·\82é\81I");
                 (void) angry_guards(!!Deaf);
             } else {
                 const char *str;
 
                 if (IS_DOOR(lev->typ))
+/*JP
                     str = "door";
+*/
+                    str = "\94à";
                 else if (IS_TREE(lev->typ))
+/*JP
                     str = "tree";
+*/
+                    str = "\96Ø";
                 else if (IS_ROCK(lev->typ))
+/*JP
                     str = "wall";
+*/
+                    str = "\95Ç";
                 else
+/*JP
                     str = "fountain";
+*/
+                    str = "\90ò";
+/*JP
                 verbalize("Hey, stop damaging that %s!", str);
+*/
+                verbalize("\82¨\82¢\81C%s\82ð\94j\89ó\82·\82é\82Ì\82ð\82â\82ß\82ë\81I", str);
                 context.digging.warned = TRUE;
             }
             if (is_digging())
@@ -1286,7 +1644,10 @@ register struct monst *mtmp;
     if (IS_WALL(here->typ)) {
         /* KMH -- Okay on arboreal levels (room walls are still stone) */
         if (flags.verbose && !rn2(5))
+/*JP
             You_hear("crashing rock.");
+*/
+            You_hear("\8aâ\82Ì\82­\82¾\82¯\82é\89¹\82ð\95·\82¢\82½\81D");
         if (*in_rooms(mtmp->mx, mtmp->my, SHOPBASE))
             add_damage(mtmp->mx, mtmp->my, 0L);
         if (level.flags.is_maze_lev) {
@@ -1332,7 +1693,10 @@ boolean unexpected;
 
     if (unexpected) {
         if (!Hallucination)
+/*JP
             You_feel("an unexpected draft.");
+*/
+            You("\8ev\82¢\82à\82æ\82ç\82¸\81C\82·\82«\82Ü\95\97\82ð\8a´\82\82½\81D");
         else
             /* U.S. classification system uses 1-A for eligible to serve
                and 4-F for ineligible due to physical or mental defect;
@@ -1389,8 +1753,13 @@ zap_dig()
 
         if (!is_whirly(mtmp->data)) {
             if (is_animal(mtmp->data))
+#if 0 /*JP*/
                 You("pierce %s %s wall!", s_suffix(mon_nam(mtmp)),
                     mbodypart(mtmp, STOMACH));
+#else
+                You("%s\82Ì%s\82Ì\95Ç\82É\8c\8a\82ð\8aJ\82¯\82½\81I", s_suffix(mon_nam(mtmp)),
+                    mbodypart(mtmp, STOMACH));
+#endif
             mtmp->mhp = 1; /* almost dead */
             expels(mtmp, mtmp->data, !is_animal(mtmp->data));
         }
@@ -1402,15 +1771,32 @@ zap_dig()
             if (u.dz < 0 || On_stairs(u.ux, u.uy)) {
                 int dmg;
                 if (On_stairs(u.ux, u.uy))
+#if 0 /*JP*/
                     pline_The("beam bounces off the %s and hits the %s.",
                               (u.ux == xdnladder || u.ux == xupladder)
                                   ? "ladder"
                                   : "stairs",
                               ceiling(u.ux, u.uy));
+#else
+                    pline("\8cõ\90ü\82Í%s\82Å\94½\8eË\82µ%s\82É\96½\92\86\82µ\82½\81D",
+                              (u.ux == xdnladder || u.ux == xupladder)
+                                  ? "\82Í\82µ\82²"
+                                  : "\8aK\92i",
+                              ceiling(u.ux, u.uy));
+#endif
+/*JP
                 You("loosen a rock from the %s.", ceiling(u.ux, u.uy));
+*/
+                pline("%s\82Ì\8aâ\82ª\83K\83^\83K\83^\82µ\82Í\82\82ß\82½\81D", ceiling(u.ux, u.uy));
+/*JP
                 pline("It falls on your %s!", body_part(HEAD));
+*/
+                pline("\82»\82ê\82Í\82 \82È\82½\82Ì%s\82É\97\8e\82¿\82Ä\82«\82½\81I", body_part(HEAD));
                 dmg = rnd((uarmh && is_metallic(uarmh)) ? 2 : 6);
+/*JP
                 losehp(Maybe_Half_Phys(dmg), "falling rock", KILLED_BY_AN);
+*/
+                losehp(Maybe_Half_Phys(dmg), "\97\8e\8aâ\82Å", KILLED_BY_AN);
                 otmp = mksobj_at(ROCK, u.ux, u.uy, FALSE, FALSE);
                 if (otmp) {
                     (void) xname(otmp); /* set dknown, maybe bknown */
@@ -1491,7 +1877,10 @@ zap_dig()
             if (room->typ == SDOOR)
                 room->typ = DOOR;
             else if (cansee(zx, zy))
+/*JP
                 pline_The("door is razed!");
+*/
+                pline("\94à\82Í\95ö\82ê\97\8e\82¿\82½\81I");
             watch_dig((struct monst *) 0, zx, zy, TRUE);
             room->doormask = D_NODOOR;
             unblock_point(zx, zy); /* vision */
@@ -1508,21 +1897,30 @@ zap_dig()
                     room->typ = ROOM;
                     unblock_point(zx, zy); /* vision */
                 } else if (!Blind)
+/*JP
                     pline_The("wall glows then fades.");
+*/
+                    pline("\95Ç\82Í\88ê\8fu\8bP\82¢\82½\81D");
                 break;
             } else if (IS_TREE(room->typ)) { /* check trees before stone */
                 if (!(room->wall_info & W_NONDIGGABLE)) {
                     room->typ = ROOM;
                     unblock_point(zx, zy); /* vision */
                 } else if (!Blind)
+/*JP
                     pline_The("tree shudders but is unharmed.");
+*/
+                    pline("\96Ø\82Í\82ä\82ê\82½\82ª\8f\9d\82Â\82©\82È\82©\82Á\82½\81D");
                 break;
             } else if (room->typ == STONE || room->typ == SCORR) {
                 if (!(room->wall_info & W_NONDIGGABLE)) {
                     room->typ = CORR;
                     unblock_point(zx, zy); /* vision */
                 } else if (!Blind)
+/*JP
                     pline_The("rock glows then fades.");
+*/
+                    pline("\90Î\82Í\88ê\8fu\8bP\82¢\82½\81D");
                 break;
             }
         } else if (IS_ROCK(room->typ)) {
@@ -1565,7 +1963,10 @@ zap_dig()
     }
 
     if (shopdoor || shopwall)
+/*JP
         pay_for_damage(shopdoor ? "destroy" : "dig into", FALSE);
+*/
+        pay_for_damage(shopdoor ? "\94j\89ó\82·\82é" : "\8c\8a\82ð\82 \82¯\82é", FALSE);
     return;
 }
 
@@ -1955,8 +2356,14 @@ long timeout;
         if (flags.verbose) {
             char *cname = corpse_xname(obj, (const char *) 0, CXN_NO_PFX);
 
+#if 0 /*JP:T*/
             Your("%s%s %s away%c", obj == uwep ? "wielded " : "", cname,
                  otense(obj, "rot"), obj == uwep ? '!' : '.');
+#else
+            pline("\82 \82È\82½\82Ì%s%s\82Í\95\85\82Á\82Ä\82µ\82Ü\82Á\82½%s",
+                     obj == uwep ? "\8eè\82É\82µ\82Ä\82¢\82é" : "", cname,
+                     obj == uwep ? "\81I" : "\81D");
+#endif
         }
         if (obj == uwep) {
             uwepgone(); /* now bare handed */
@@ -2018,9 +2425,15 @@ bury_you()
     debugpline0("bury_you");
     if (!Levitation && !Flying) {
         if (u.uswallow)
+/*JP
             You_feel("a sensation like falling into a trap!");
+*/
+            You("ã©\82É\97\8e\82¿\82é\82æ\82¤\82È\8a´\8ao\82É\82¨\82»\82í\82ê\82½\81I");
         else
+/*JP
             pline_The("%s opens beneath you and you fall in!",
+*/
+            pline("%s\82ª\89º\95û\82É\8aJ\82«\81C\82 \82È\82½\82Í\97\8e\82¿\82½\81I",
                       surface(u.ux, u.uy));
 
         u.uburied = TRUE;
@@ -2047,7 +2460,10 @@ escape_tomb()
     debugpline0("escape_tomb");
     if ((Teleportation || can_teleport(youmonst.data))
         && (Teleport_control || rn2(3) < Luck+2)) {
+/*JP
         You("attempt a teleport spell.");
+*/
+        You("\8fu\8aÔ\88Ú\93®\82ð\8e\8e\82Ý\82½\81D");
         (void) dotele();        /* calls unearth_you() */
     } else if (u.uburied) { /* still buried after 'port attempt */
         boolean good;
@@ -2057,6 +2473,7 @@ escape_tomb()
             || (unsolid(youmonst.data)
                 && youmonst.data != &mons[PM_WATER_ELEMENTAL])
             || (tunnels(youmonst.data) && !needspick(youmonst.data))) {
+#if 0 /*JP*/
             You("%s up through the %s.",
                 (tunnels(youmonst.data) && !needspick(youmonst.data))
                    ? "try to tunnel"
@@ -2064,6 +2481,15 @@ escape_tomb()
                       ? "ooze"
                       : "phase",
                 surface(u.ux, u.uy));
+#else
+            You("%s\82É%s\82ë\82¤\82Æ\82µ\82½\81D",
+                surface(u.ux, u.uy),
+                (tunnels(youmonst.data) && !needspick(youmonst.data))
+                ? "\83g\83\93\83l\83\8b\82ð\8c@"
+                : (amorphous(youmonst.data))
+                   ? "\82É\82\82Ý\82Ì\82Ú"
+                   : "\8f\99\81X\82É\82Í\82¢\82 \82ª");
+#endif
 
             good = (tunnels(youmonst.data) && !needspick(youmonst.data))
                       ? dighole(TRUE, FALSE, (coord *)0) : TRUE;
@@ -2079,7 +2505,10 @@ struct obj *otmp;
 {
     debugpline0("bury_obj");
     if (cansee(otmp->ox, otmp->oy))
+/*JP
         pline_The("objects on the %s tumble into a hole!",
+*/
+        pline_The("%s\82Ì\95¨\91Ì\82Í\8c\8a\82É\93]\82ª\82Á\82½\81I",
                   surface(otmp->ox, otmp->oy));
 
     bury_objs(otmp->ox, otmp->oy);