diff -urN jnethack-3.6.0-0.6[Sourse]/[[[]]].txt jnethack-3.6.0-0.6[Sourse]+/[[[]]].txt --- jnethack-3.6.0-0.6[Sourse]/[[[]]].txt Thu Jan 1 00:00:00 1970 +++ jnethack-3.6.0-0.6[Sourse]+/[[[]]].txt Wed Jun 22 21:02:47 2016 @@ -0,0 +1,15 @@ +[メモ] + 記憶場所 +JUnNetHack: nomul()内で処理 multi_txt +FHS patch: nomul_reason()内で処理 multi_txt +NetHack 3.6.0: nomul()と平行してmulti_reasonで処理 multi_reason + #multiが正の時にmulti_txt/multi_reasonの内容を出力 + # multi_txt/multi_reasonがNULLの時には"while helpness"が出力される + + +UnNetHack等では"while"も含めてmulti_txt内に記載 +NH3.6.0では"while" + multi_reason として別々に記載 + + +->当パッチでは"while"も含めてmulti_reason内に和訳している + ("while"部分の訳は「時に」「間に」「最中に」等々,一定せず) diff -urN jnethack-3.6.0-0.6[Sourse]/src/apply.c jnethack-3.6.0-0.6[Sourse]+/src/apply.c --- jnethack-3.6.0-0.6[Sourse]/src/apply.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/apply.c Wed Jun 22 04:32:06 2016 @@ -1078,7 +1078,10 @@ pline("おゎ!あなたは動けなくなった!"); if (!Hallucination || !rn2(4)) { nomul(-rnd(MAXULEV + 6 - u.ulevel)); +/*JP multi_reason = "gazing into a mirror"; +*/ + multi_reason = "鏡に反射した視線で硬直している間に"; } nomovemsg = 0; /* default, "you can move again" */ } @@ -2257,7 +2260,10 @@ teleds(cc.x, cc.y, TRUE); sokoban_guilt(); nomul(-1); +/*JP multi_reason = "jumping around"; +*/ + multi_reason = "跳ね回っている時に"; nomovemsg = ""; morehungry(rnd(25)); return 1; diff -urN jnethack-3.6.0-0.6[Sourse]/src/artifact.c jnethack-3.6.0-0.6[Sourse]+/src/artifact.c --- jnethack-3.6.0-0.6[Sourse]/src/artifact.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/artifact.c Wed Jun 22 04:32:39 2016 @@ -1092,7 +1092,10 @@ resisted = TRUE; } else { nomul(-3); +/*JP multi_reason = "being scared stiff"; +*/ + multi_reason = "恐怖で狼狽した隙に"; nomovemsg = ""; if (magr && magr == u.ustuck && sticks(youmonst.data)) { u.ustuck = (struct monst *) 0; diff -urN jnethack-3.6.0-0.6[Sourse]/src/detect.c jnethack-3.6.0-0.6[Sourse]+/src/detect.c --- jnethack-3.6.0-0.6[Sourse]/src/detect.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/detect.c Wed Jun 22 04:33:11 2016 @@ -1189,7 +1189,10 @@ */ You("%sを覗きこんだ...", the(xname(obj))); nomul(-rnd(10)); +/*JP multi_reason = "gazing into a crystal ball"; +*/ + multi_reason = "水晶球を覗き込んでいる時に"; nomovemsg = ""; if (obj->spe <= 0) /*JP diff -urN jnethack-3.6.0-0.6[Sourse]/src/dig.c jnethack-3.6.0-0.6[Sourse]+/src/dig.c --- jnethack-3.6.0-0.6[Sourse]/src/dig.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/dig.c Wed Jun 22 04:33:42 2016 @@ -1348,7 +1348,10 @@ /* you ought to be able to let go; tough luck */ /* (maybe `move_into_trap()' would be better) */ nomul(-d(2, 2)); +/*JP multi_reason = "stuck in a spider web"; +*/ + multi_reason = "くもの巣に捕まっている間に"; /*JP nomovemsg = "You pull free."; */ diff -urN jnethack-3.6.0-0.6[Sourse]/src/do_wear.c jnethack-3.6.0-0.6[Sourse]+/src/do_wear.c --- jnethack-3.6.0-0.6[Sourse]/src/do_wear.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/do_wear.c Wed Jun 22 04:30:30 2016 @@ -1701,7 +1701,10 @@ return 0; if (delay) { nomul(delay); +/*JP multi_reason = "disrobing"; +*/ + multi_reason = "脱いでいる時に"; if (is_helmet(otmp)) { /* ick... */ /*JP @@ -2261,7 +2264,10 @@ delay = -objects[obj->otyp].oc_delay; if (delay) { nomul(delay); +/*JP multi_reason = "dressing up"; +*/ + multi_reason = "装備している時に"; if (is_boots(obj)) afternmv = Boots_on; if (is_helmet(obj)) diff -urN jnethack-3.6.0-0.6[Sourse]/src/dothrow.c jnethack-3.6.0-0.6[Sourse]+/src/dothrow.c --- jnethack-3.6.0-0.6[Sourse]/src/dothrow.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/dothrow.c Wed Jun 22 04:34:13 2016 @@ -862,7 +862,10 @@ return; /* paranoia */ nomul(-range); +/*JP multi_reason = "moving through the air"; +*/ + multi_reason = "空中を移動している時に"; nomovemsg = ""; /* it just happens */ if (verbose) /*JP diff -urN jnethack-3.6.0-0.6[Sourse]/src/eat.c jnethack-3.6.0-0.6[Sourse]+/src/eat.c --- jnethack-3.6.0-0.6[Sourse]/src/eat.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/eat.c Wed Jun 22 04:42:22 2016 @@ -1175,7 +1175,10 @@ if (u.usteed) dismount_steed(DISMOUNT_FELL); nomul(-tmp); +/*JP multi_reason = "pretending to be a pile of gold"; +*/ + multi_reason = "金貨の山の真似をしている時に"; Sprintf(buf, Hallucination /*JP @@ -1873,7 +1876,10 @@ pline("世界が回転し,%s%s.", where, what); incr_itimeout(&HDeaf, duration); nomul(-duration); +/*JP multi_reason = "unconscious from rotten food"; +*/ + multi_reason = "腐った食べ物で意識を失っている間に"; /*JP nomovemsg = "You are conscious again."; */ @@ -3462,7 +3468,10 @@ selftouch("落ちながら,あなたは"); incr_itimeout(&HDeaf, duration); nomul(-duration); +/*JP multi_reason = "fainted from lack of food"; +*/ + multi_reason = "空腹で卒倒している間に"; /*JP nomovemsg = "You regain consciousness."; */ @@ -3732,7 +3741,10 @@ else make_sick(0L, (char *) 0, TRUE, SICK_VOMITABLE); nomul(-2); +/*JP multi_reason = "vomiting"; +*/ + multi_reason = "嘔吐している最中に"; nomovemsg = You_can_move_again; } diff -urN jnethack-3.6.0-0.6[Sourse]/src/end.c jnethack-3.6.0-0.6[Sourse]+/src/end.c --- jnethack-3.6.0-0.6[Sourse]/src/end.c Tue Jun 21 23:20:28 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/end.c Wed Jun 22 00:11:11 2016 @@ -567,6 +567,12 @@ STONING の場合は "石化した" が補われる。 */ Strcat(buf, "の攻撃で"); + /*JP + 日本語では "為す術も無く" は "死んだ/殺された/石化した" 等の + 寸前で補う為,if (multi)の処理をここに移動 + */ + if (multi) + Strcat(buf, (multi_reason ? multi_reason : 為す術も無く")); } if (how == DIED){ /*JP @@ -574,6 +580,12 @@ 怪物による場合は "に殺された" を補う。 */ killer.format = KILLED_SUFFIX; + /*JP + 日本語では "為す術も無く" は "死んだ/殺された/石化した" 等の + 寸前で補う為,if (multi)の処理をここに移動 + */ + if (multi) + Strcat(buf, (multi_reason ? multi_reason : 為す術も無く")); done(DIED); } #endif diff -urN jnethack-3.6.0-0.6[Sourse]/src/hack.c jnethack-3.6.0-0.6[Sourse]+/src/hack.c --- jnethack-3.6.0-0.6[Sourse]/src/hack.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/hack.c Wed Jun 22 04:44:48 2016 @@ -2063,7 +2063,10 @@ /* must come after we finished picking up, in spoteffects() */ if (cause_delay) { nomul(-2); +/*JP multi_reason = "dragging an iron ball"; +*/ + multi_reason = "鉄球に引きずられている時に"; nomovemsg = ""; } diff -urN jnethack-3.6.0-0.6[Sourse]/src/mcastu.c jnethack-3.6.0-0.6[Sourse]+/src/mcastu.c --- jnethack-3.6.0-0.6[Sourse]/src/mcastu.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/mcastu.c Wed Jun 22 04:46:23 2016 @@ -853,7 +853,10 @@ */ You("一瞬硬直した."); nomul(-1); +/*JP multi_reason = "paralyzed by a monster"; +*/ + multi_reason = "怪物に麻痺させられた隙に"; } else { if (multi >= 0) /*JP @@ -864,7 +867,10 @@ if (Half_spell_damage) dmg = (dmg + 1) / 2; nomul(-dmg); +/*JP multi_reason = "paralyzed by a monster"; +*/ + multi_reason = "怪物に麻痺させられた隙に"; } nomovemsg = 0; dmg = 0; diff -urN jnethack-3.6.0-0.6[Sourse]/src/mhitu.c jnethack-3.6.0-0.6[Sourse]+/src/mhitu.c --- jnethack-3.6.0-0.6[Sourse]/src/mhitu.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/mhitu.c Wed Jun 22 04:47:41 2016 @@ -1437,7 +1437,10 @@ pline("%sによって動けなくなった!", mon_nam(mtmp)); nomovemsg = You_can_move_again; nomul(-rnd(10)); +/*JP multi_reason = "paralyzed by a monster"; +*/ + multi_reason = "怪物に麻痺させられた隙に"; exercise(A_DEX, FALSE); } } diff -urN jnethack-3.6.0-0.6[Sourse]/src/pickup.c jnethack-3.6.0-0.6[Sourse]+/src/pickup.c --- jnethack-3.6.0-0.6[Sourse]/src/pickup.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/pickup.c Wed Jun 22 04:53:56 2016 @@ -2679,7 +2679,10 @@ /* even if the trap fails, you've used up this turn */ if (multi >= 0) { /* in case we didn't become paralyzed */ nomul(-1); +/*JP multi_reason = "opening a container"; +*/ + multi_reason = "箱を開けている時に"; nomovemsg = ""; } return 1; @@ -3360,7 +3363,10 @@ /* even if the trap fails, you've used up this turn */ if (multi >= 0) { /* in case we didn't become paralyzed */ nomul(-1); +/*JP multi_reason = "tipping a container"; +*/ + multi_reason = "箱をひっくり返している時に"; nomovemsg = ""; } } else if (box->otyp == BAG_OF_TRICKS || box->otyp == HORN_OF_PLENTY) { diff -urN jnethack-3.6.0-0.6[Sourse]/src/polyself.c jnethack-3.6.0-0.6[Sourse]+/src/polyself.c --- jnethack-3.6.0-0.6[Sourse]/src/polyself.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/polyself.c Wed Jun 22 05:18:46 2016 @@ -1720,7 +1720,10 @@ ? -d((int) mtmp->m_lev + 1, (int) mtmp->data->mattk[0].damd) : -200); +/*JP multi_reason = "frozen by a monster's gaze"; +*/ + multi_reason = "怪物のにらみで硬直している時に"; nomovemsg = 0; return 1; } else diff -urN jnethack-3.6.0-0.6[Sourse]/src/potion.c jnethack-3.6.0-0.6[Sourse]+/src/potion.c --- jnethack-3.6.0-0.6[Sourse]/src/potion.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/potion.c Wed Jun 22 05:16:26 2016 @@ -537,7 +537,10 @@ */ You("まっさおになって驚き,動けなくなった."); nomul(-3); +/*JP multi_reason = "being frightened to death"; +*/ + multi_reason = "死ぬほど驚いた隙に"; /*JP nomovemsg = "You regain your composure."; */ @@ -969,7 +972,10 @@ You("動けなくなった!"); #endif nomul(-(rn1(10, 25 - 12 * bcsign(otmp)))); +/*JP multi_reason = "frozen by a potion"; +*/ + multi_reason = "薬で硬直している時に"; nomovemsg = You_can_move_again; exercise(A_DEX, FALSE); } @@ -2054,7 +2060,10 @@ */ pline("%sがあなたをつかまえているような気がした.", Something); nomul(-rnd(5)); +/*JP multi_reason = "frozen by a potion"; +*/ + multi_reason = "薬で硬直している時に"; nomovemsg = You_can_move_again; exercise(A_DEX, FALSE); } else @@ -2071,7 +2080,10 @@ */ You("すこし疲れた."); nomul(-rnd(5)); +/*JP multi_reason = "sleeping off a magical draught"; +*/ + multi_reason = "魔法的に眠っている間に"; nomovemsg = You_can_move_again; exercise(A_DEX, FALSE); } else diff -urN jnethack-3.6.0-0.6[Sourse]/src/pray.c jnethack-3.6.0-0.6[Sourse]+/src/pray.c --- jnethack-3.6.0-0.6[Sourse]/src/pray.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/pray.c Wed Jun 22 05:01:06 2016 @@ -1737,7 +1737,10 @@ */ You("恐怖で動けなくなった."); nomul(-3); +/*JP multi_reason = "being terrified of a demon"; +*/ + multi_reason = "悪魔に恐怖している時に"; nomovemsg = 0; } else /*JP @@ -2366,7 +2369,10 @@ } } nomul(-3); +/*JP multi_reason = "praying"; +*/ + multi_reason = "祈っている時に"; /*JP nomovemsg = "You finish your prayer."; */ @@ -2573,7 +2579,10 @@ } } nomul(-5); +/*JP multi_reason = "trying to turn the monsters"; +*/ + multi_reason = "怪物を土に戻そうとしている時に"; nomovemsg = You_can_move_again; return 1; } diff -urN jnethack-3.6.0-0.6[Sourse]/src/priest.c jnethack-3.6.0-0.6[Sourse]+/src/priest.c --- jnethack-3.6.0-0.6[Sourse]/src/priest.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/priest.c Wed Jun 22 05:04:27 2016 @@ -600,7 +600,13 @@ */ You("まっさおになって驚き,動けなくなった."); nomul(-3); +/*JP multi_reason = "being terrified of a demon"; +*/ + /*JP + どうみても"demon"じゃないです [Sakusha] + */ + multi_reason = "幽霊に恐怖している時に"; /*JP nomovemsg = "You regain your composure."; */ diff -urN jnethack-3.6.0-0.6[Sourse]/src/sounds.c jnethack-3.6.0-0.6[Sourse]+/src/sounds.c --- jnethack-3.6.0-0.6[Sourse]/src/sounds.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/sounds.c Wed Jun 22 05:05:20 2016 @@ -1048,7 +1048,10 @@ */ You("一瞬凍りついた."); nomul(-2); +/*JP multi_reason = "scared by rattling"; +*/ + multi_reason = "骨のカタカタ言う音におびえた隙に"; nomovemsg = 0; break; case MS_LAUGH: { diff -urN jnethack-3.6.0-0.6[Sourse]/src/spell.c jnethack-3.6.0-0.6[Sourse]+/src/spell.c --- jnethack-3.6.0-0.6[Sourse]/src/spell.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/spell.c Wed Jun 22 05:07:52 2016 @@ -423,7 +423,10 @@ context.spbook.book = 0; /* no longer studying */ context.spbook.o_id = 0; nomul(context.spbook.delay); /* remaining delay is uninterrupted */ +/*JP multi_reason = "reading a book"; +*/ + multi_reason = "本を読んでいる時に"; nomovemsg = 0; context.spbook.delay = 0; return 0; @@ -667,7 +670,10 @@ boolean gone = cursed_book(spellbook); nomul(context.spbook.delay); /* study time */ +/*JP multi_reason = "reading a book"; +*/ + multi_reason = "本を読んでいる時に"; nomovemsg = 0; context.spbook.delay = 0; if (gone || !rn2(3)) { @@ -688,7 +694,10 @@ spellbook->in_use = FALSE; } nomul(context.spbook.delay); +/*JP multi_reason = "reading a book"; +*/ + multi_reason = "本を読んでいる時に"; nomovemsg = 0; context.spbook.delay = 0; return 1; diff -urN jnethack-3.6.0-0.6[Sourse]/src/steal.c jnethack-3.6.0-0.6[Sourse]+/src/steal.c --- jnethack-3.6.0-0.6[Sourse]/src/steal.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/steal.c Wed Jun 22 05:08:31 2016 @@ -484,7 +484,10 @@ named++; /* the following is to set multi for later on */ nomul(-armordelay); +/*JP multi_reason = "taking off clothes"; +*/ + multi_reason = "服を脱いでいる時に"; nomovemsg = 0; remove_worn_item(otmp, TRUE); otmp->cursed = curssv; diff -urN jnethack-3.6.0-0.6[Sourse]/src/timeout.c jnethack-3.6.0-0.6[Sourse]+/src/timeout.c --- jnethack-3.6.0-0.6[Sourse]/src/timeout.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/timeout.c Wed Jun 22 05:14:10 2016 @@ -71,7 +71,10 @@ case 3: /* limbs turned to stone */ stop_occupation(); nomul(-3); /* can't move anymore */ +/*JP multi_reason = "getting stoned"; +*/ + multi_reason = "石化しつつある時に"; nomovemsg = You_can_move_again; /* not unconscious */ break; default: @@ -526,7 +529,10 @@ if (u.umoved && !Levitation) { slip_or_trip(); nomul(-2); +/*JP multi_reason = "fumbling"; +*/ + multi_reason = "へまをした隙に"; nomovemsg = ""; /* The more you are carrying the more likely you * are to make noise when you fumble. Adjustments @@ -562,7 +568,10 @@ { stop_occupation(); nomul(how_long); +/*JP multi_reason = "sleeping"; +*/ + multi_reason = "眠りのさなかに"; /* generally don't notice sounds while sleeping */ if (wakeup_msg && multi == how_long) { /* caller can follow with a direct call to Hear_again() if @@ -1610,7 +1619,10 @@ if (!u.uinvulnerable) { stop_occupation(); nomul(-3); +/*JP multi_reason = "hiding from thunderstorm"; +*/ + multi_reason = "雷の嵐を避けている時に"; nomovemsg = 0; } } else diff -urN jnethack-3.6.0-0.6[Sourse]/src/topten.c jnethack-3.6.0-0.6[Sourse]+/src/topten.c --- jnethack-3.6.0-0.6[Sourse]/src/topten.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/topten.c Wed Jun 22 00:17:19 2016 @@ -317,10 +317,21 @@ else (void) fprintf(rfile, fmt33, tt->plrole, tt->plrace, tt->plgend, tt->plalign); +#if 0 /*JP*/ (void) fprintf(rfile, fmtX, onlyspace(tt->name) ? "_" : tt->name, tt->death, (multi ? ", while " : ""), (multi ? (multi_reason ? multi_reason : "helpless") : "")); +#else + /*JP + 日本語では "為す術も無く" は "死んだ/殺された/石化した" 等の + 寸前で補う為,こちらの処理は削除 + */ + (void) fprintf(rfile, fmtX, onlyspace(tt->name) ? "_" : tt->name, + tt->death, + "", + ""); +#endif #ifdef NO_SCAN_BRACK nsb_unmung_line(tt->name); @@ -354,9 +365,16 @@ Fprintf(rfile, "%s%cname=%s%cdeath=%s", buf, /* (already includes separator) */ XLOG_SEP, plname, XLOG_SEP, tt->death); +#if 0 /*JP*/ if (multi) Fprintf(rfile, "%cwhile=%s", XLOG_SEP, multi_reason ? multi_reason : "helpless"); +#else + /*JP + 日本語では "為す術も無く" は "死んだ/殺された/石化した" 等の + 寸前で補う為,こちらの処理は削除 + */ +#endif Fprintf(rfile, "%cconduct=0x%lx%cturns=%ld%cachieve=0x%lx", XLOG_SEP, encodeconduct(), XLOG_SEP, moves, XLOG_SEP, encodeachieve()); Fprintf(rfile, "%crealtime=%ld%cstarttime=%ld%cendtime=%ld", XLOG_SEP, diff -urN jnethack-3.6.0-0.6[Sourse]/src/trap.c jnethack-3.6.0-0.6[Sourse]+/src/trap.c --- jnethack-3.6.0-0.6[Sourse]/src/trap.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/trap.c Wed Jun 22 05:15:10 2016 @@ -6081,7 +6081,10 @@ */ pline("突然その場で動けなくなった!"); nomul(-d(5, 6)); +/*JP multi_reason = "frozen by a trap"; +*/ + multi_reason = "罠で硬直している時に"; exercise(A_DEX, FALSE); nomovemsg = You_can_move_again; } else diff -urN jnethack-3.6.0-0.6[Sourse]/src/uhitm.c jnethack-3.6.0-0.6[Sourse]+/src/uhitm.c --- jnethack-3.6.0-0.6[Sourse]/src/uhitm.c Tue Jun 21 23:20:29 2016 +++ jnethack-3.6.0-0.6[Sourse]+/src/uhitm.c Wed Jun 22 05:19:30 2016 @@ -2331,7 +2331,10 @@ if (Slow_digestion) tmp *= 2; nomul(-tmp); +/*JP multi_reason = "digesting something"; +*/ + multi_reason = "消化中に"; nomovemsg = msgbuf; } else pline1(msgbuf); @@ -2946,7 +2949,10 @@ */ You("%sのにらみで動けなくなった!", mon_nam(mon)); nomul((ACURR(A_WIS) > 12 || rn2(4)) ? -tmp : -127); +/*JP multi_reason = "frozen by a monster's gaze"; +*/ + multi_reason = "怪物のにらみで硬直している時に"; nomovemsg = 0; } } else { @@ -2972,7 +2978,10 @@ You("%sによって動けなくなった!", mon_nam(mon)); nomovemsg = You_can_move_again; nomul(-tmp); +/*JP multi_reason = "frozen by a monster"; +*/ + multi_reason = "怪物によって硬直している時に"; exercise(A_DEX, FALSE); } break;