OSDN Git Service

This commit was manufactured by cvs2svn to create tag hengband-1-6-2
author(no author) <(no author)@0568b783-4c39-0410-ac80-bf13821ea2a2>
Mon, 12 Jul 2004 06:42:14 +0000 (06:42 +0000)
committer(no author) <(no author)@0568b783-4c39-0410-ac80-bf13821ea2a2>
Mon, 12 Jul 2004 06:42:14 +0000 (06:42 +0000)
'hengband-1-6-2'.

125 files changed:
Changelogs [deleted file]
autopick.txt
autopick_eng.txt
configure.in
lib/edit/a_info.txt
lib/edit/f_info.txt
lib/edit/k_info.txt
lib/edit/m_info.txt
lib/edit/q000chao.txt
lib/edit/q000natu.txt
lib/edit/q000sorc.txt
lib/edit/r_info.txt
lib/edit/t0000002.txt
lib/edit/t0000003.txt
lib/edit/t0000004.txt
lib/edit/t_lite.txt
lib/file/a_low.txt
lib/file/a_low_j.txt
lib/file/mondeath_j.txt
lib/file/monspeak_j.txt
lib/file/news.txt
lib/file/news_j.txt
lib/file/rumors_j.txt
lib/file/timefun.txt
lib/file/timefun_j.txt
lib/file/w_med_j.txt
lib/help/attack.txt
lib/help/birth.txt
lib/help/commdesc.txt
lib/help/defend.txt
lib/help/dungeon.txt
lib/help/faq.txt
lib/help/general.txt
lib/help/jcommdesc.txt
lib/help/jdungeon.txt
lib/help/jgeneral.txt
lib/help/jlicense.txt
lib/help/jmonster.txt
lib/help/jobjects.txt
lib/help/joption.txt
lib/help/jpref.txt
lib/help/jversion.txt
lib/help/magic.txt
lib/help/monster.txt
lib/help/objects.txt
lib/help/option.txt
lib/help/pref.txt
lib/help/raceclas.txt
lib/help/tang.txt
lib/help/town.txt
lib/help/version.txt
lib/pref/graf-new.prf
lib/pref/graf-xxx.prf
lib/pref/pref-opt.prf
lib/xtra/graf/8x8.bmp [new file with mode: 0644]
readme.txt
src/Makefile.am
src/artifact.c
src/autopick.c
src/birth.c
src/bldg.c
src/cave.c
src/chuukei.c
src/cmd1.c
src/cmd2.c
src/cmd3.c
src/cmd4.c
src/cmd5.c
src/cmd6.c
src/defines.h
src/dungeon.c
src/effects.c
src/externs.h
src/files.c
src/flavor.c
src/floors.c
src/generate.c
src/grid.c
src/grid.h
src/hissatsu.c
src/inet.c
src/init1.c
src/init2.c
src/japanese.c
src/kajitips.h
src/load.c
src/main-mac-carbon.c [deleted file]
src/main-mac.c
src/main-win.c
src/main-x11.c
src/mane.c
src/melee2.c
src/mind.c
src/mindtips.h
src/monster1.c
src/monster2.c
src/mspells1.c
src/mspells2.c
src/mspells3.c
src/obj_kind.c
src/object1.c
src/object2.c
src/racial.c
src/report.c
src/rooms.c
src/save.c
src/scores.c
src/spells1.c
src/spells2.c
src/spells3.c
src/spellstips.h
src/store.c
src/tables.c
src/types.h
src/util.c
src/variable.c
src/wild.c
src/wizard1.c
src/wizard2.c
src/xtra1.c
src/xtra2.c
src/z-config.h
src/z-rand.c
src/z-rand.h
src/z-term.c

diff --git a/Changelogs b/Changelogs
deleted file mode 100644 (file)
index 1b3ba2d..0000000
+++ /dev/null
@@ -1,8168 +0,0 @@
-2003-08-12  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/version.txt 1.14.2.4, lib/help/jversion.txt 1.14.2.5:
-       ¥Ð¡¼¥¸¥ç¥ó1.4.4ÍÑ¡£
-
-       * lib/help/jversion.txt 1.20, lib/help/version.txt 1.20:
-       ¥Ð¡¼¥¸¥ç¥ó1.5.4ÍѤ˹¹¿·¡£
-
-2003-08-12  nothere  <nothere@cvs>
-
-       * src/spells1.c 1.79:
-       ¥È¥é¥Ã¥×²ò½üËâË¡¤Îµ°Æ»¤¬"¸«¤¨¤ë"¾ì¹ç¤Ïɬ¤ºobvious¤òΩ¤Æ¤ë¤è¤¦¤ËÊѹ¹.
-
-2003-08-12  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/news.txt 1.16.2.6, lib/file/news_j.txt 1.15.2.6, lib/help/faq.txt 1.1.2.1, lib/help/general.txt 1.9.2.1, lib/help/jgeneral.txt 1.6.6.2, lib/help/jlicense.txt 1.3.2.1, readme.txt 1.8.6.3, readme_eng.txt 1.8.6.2:
-       ¥Û¡¼¥à¥Ú¡¼¥¸¥¢¥É¥ì¥¹/¥á¡¼¥ë¥¢¥É¥ì¥¹Êѹ¹¡£
-
-       * lib/help/general.txt 1.10, lib/help/jgeneral.txt 1.8, lib/help/jlicense.txt 1.4, lib/file/news.txt 1.23, lib/file/news_j.txt 1.21, lib/help/faq.txt 1.4, readme.txt 1.13, readme_eng.txt 1.11:
-       ¥Û¡¼¥à¥Ú¡¼¥¸¤Î¥¢¥É¥ì¥¹Êѹ¹¡£
-       hoge¤µ¤ó¤Î¥¢¥É¥ì¥¹Êѹ¹Ëº¤ì¤Æ¤¤¤¿½ê¤âsourceforge¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹¤ËÊѹ¹¡£
-
-2003-08-12  nothere  <nothere@cvs>
-
-       * src/spells1.c 1.78:
-       ¥È¥é¥Ã¥×²ò½üËâË¡¤ò»È¤Ã¤Æ'x'¤¬¾Ã¤¨¤¿¾ì¹ç¤Î¤ß¤Ëobvious¤òΩ¤Æ¤Æ, ¸µ¡¹'x'
-       ¤¬¤Ê¤«¤Ã¤¿¥°¥ê¥Ã¥É¤Ç¤Ïobvious¤¬Î©¤¿¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/spells1.c 1.77:
-       ¥È¥é¥Ã¥×²ò½üËâË¡¤ò»È¤Ã¤ÆËâË¡¤Îµ°Æ»¤¬¸«¤¨¤¿¾ì¹ç¤Ï'x'¤ò¾Ã¤¹¤è¤¦¤ËÊѹ¹.
-       ÌÕÌܾõÂ֤Ǥϵ°Æ»¤¬¸«¤¨¤Ê¤¤¤Î¤Ç'x'¤Ï¾Ã¤¨¤Ê¤¤.
-
-       * lib/edit/r_info.txt 1.25: Ïµ¤Î²Ĺ¤ËANIMALÄɲÃ.
-
-2003-08-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.81.2.7, configure.in 1.22.2.5, lib/file/news.txt 1.16.2.5, lib/file/news_j.txt 1.15.2.5:
-       ¥Ð¡¼¥¸¥ç¥ó¤ò1.4.4¤Ø¡£
-
-       * lib/file/news.txt 1.22, lib/file/news_j.txt 1.20, src/defines.h 1.131, configure.in 1.27:
-       ¥Ð¡¼¥¸¥ç¥ó¤ò1.5.4¤Ø¡£
-
-2003-08-09  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/a_info.txt 1.9:
-       À»µ³»Î¤Î¼ó¾þ¤ê¤ËBLESSED¤òÉÕ¤±¤Æ¼ö¤ï¤ì¤Ë¤¯¤¯¤·¤¿¡£
-
-2003-08-06  Takeshi Mogami  <mogami@cvs>
-
-       * readme.txt 1.12: ¥á¡¼¥ë¥¢¥É¥ì¥¹¹¹¿·¡£
-
-2003-08-05  nothere  <nothere@cvs>
-
-       * src/object1.c 1.67: ¤È¹ï¤ó¤À¾ì¹ç¤ËÁªÂò»è¤¬ "(¿ô»ú))" ¤ËÊѤï¤ë¤Î¤¬ÉÔɾ
-       ¤À¤Ã¤¿¤¿¤á, ¿ô»ú¤Ç¤ÏÁªÂò»è¤Îʸ»ú¤¬ÊѤï¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿.
-
-2003-08-03  henkma  <henkma@cvs>
-
-       * lib/edit/a_info.txt 1.8: ¡úÀ»µ³»Î¶¯²½, ¤½¤Î¾¿·¡ú¤Î¥ì¥¢¥ê¥Æ¥£Ä´À°.
-
-2003-08-02  henkma  <henkma@cvs>
-
-       * lib/edit/k_info.txt 1.10: ¼ó¾þ¢ª¼ó¾þ¤ê
-
-2003-08-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/wild.c 1.31, src/xtra2.c 1.93, src/cmd2.c 1.58, src/dungeon.c 1.129, src/generate.c 1.68, src/grid.c 1.18, src/rooms.c 1.46, src/cave.c 1.120, src/cmd1.c 1.91:
-       Èù¾¯¤Ê®ÅÙ¤è¤ê¤âº®Í𤷤ʤ¤¥³¡¼¥É¤ÎÊý¤¬Îɤ¤¤È¤¤¤¦»ö¤Ç¡¢
-       _nothere¤µ¤ó¤Î°ìÈֺǽé(¸·Ì©¤Ë¤Ï¡ÖºÙ¤«¤¤½¤Àµ¡×¤¬Æþ¤Ã¤¿2ÈÖÌÜ)¤Î¥³¡¼¥É
-       ¤ËÌᤷ¤¿¡£¤Ä¤Þ¤ê¡¢c_ptr->mimic¤ò»²¾È¤¹¤ë¤È¤­¤Ë
-       byte feat = f_info[c_ptr->mimic ? c_ptr->mimic : c_ptr->feat].mimic;
-       ¤ò»È¤¦¥³¡¼¥É¡£
-
-2003-08-01  nothere  <nothere@cvs>
-
-       * src/wild.c 1.30, src/rooms.c 1.45, src/spells1.c 1.76, src/spells3.c 1.91, src/load.c 1.69, src/object2.c 1.97, src/init1.c 1.63:
-       ºÇ½é¤«¤éf_info[].mimic¤ò¸«¤ÆÂåÆþ¤¹¤ëÊѹ¹¤òÇË´þ.
-
-2003-08-01  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info.txt 1.24: ¥¬¥Á¥ã¥Ô¥ó¤Ïpurple¤Ç¤Ê¤¯green.
-
-2003-07-31  nothere  <nothere@cvs>
-
-       * src/generate.c 1.67:
-       bound_walls_perm̵¸ú»þ¤Ë, ±£¤·¤Ç¤Ï¤Ê¤¤ºâÊõ¤Î¹ÛÌ®¤¬¥À¥ó¥¸¥ç¥ó¤Î³°ÊɤË
-       ½Ð¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/spells1.c 1.75, src/spells3.c 1.90, src/wild.c 1.29, src/load.c 1.68, src/object2.c 1.96, src/rooms.c 1.44, src/init1.c 1.62:
-       Ä̾ï¤Î¥»¡¼¥Ö/¥í¡¼¥É»þ°Ê³°¤Çc_ptr->mimic¤Ë0°Ê³°¤ÎÃͤòÂåÆþ¤¹¤ëºÝ¤Ë, ºÇ
-       ½é¤«¤éf_info[].mimic¤ò¸«¤ÆÂåÆþ¤·¤Æ¤ª¤¯¤è¤¦¤ËÊѹ¹. ¤³¤ì¤Ë¤è¤ê, ¼ÂºÝ¤Ë
-       c_ptr->mimic¤ò¸«¤ë¾ì¹ç¤Ë¤½¤ì°Ê¾åf_info[].mimic¤ò¸«¤ëɬÍפ¬¤Ê¤¯¤Ê¤ë.
-
-2003-07-29  nothere  <nothere@cvs>
-
-       * src/rooms.c 1.43:
-       grid.c 1.17¤Ë¤Ê¤é¤¤, ±£¤·¥É¥¢¤òc_ptr->mimic¤Ç±£¤¹»þ¤Ëf_info[].mimic¤ò
-       Àè¤ËÈ¿±Ç¤µ¤»¤ë¤è¤¦¤Ë¤·¤¿.
-
-2003-07-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.92, src/cmd1.c 1.90, src/cmd2.c 1.57, src/dungeon.c 1.128, src/wild.c 1.28, src/cave.c 1.119:
-       grid.c 1.17 ¤ÎÊѹ¹¤Ë½¾¤¤¡¢±£¤·¥É¥¢Åù¤òɽ¼¨¤¹¤ë¤È¤­¡¢
-       f_info[c_ptr->mimic].mimic¤Ç¤Ï¤Ê¤¯c_ptr->mimic¤ò¸«¤ì¤Ð½½Ê¬¤Ç¤¢¤ë¤Î¤Ç¡¢
-       °ÊÁ°¤ÎÊѹ¹¤òÌᤷ¤¿¡£(¤¿¤À¤·¡¢º£¸å¤âc_ptr->mimic¤Ë²¿¤«ÂåÆþ¤¹¤ë¤È¤­¤Ë
-       f_info[].mimic¤ò»²¾È¤·¤¿¸å¤ÎÃͤòÂåÆþ¤¹¤ë¤è¤¦¤ËÃí°Õ¤¹¤ëɬÍפ¬¤¢¤ë¡£)
-
-       * src/grid.c 1.17:
-       ±£¤·¥É¥¢¤òc_ptr->mimic¤Ç±£¤¹»þ¤Ë¡¢f_info[].mimic¤òÀè¤ËÈ¿±Ç¤µ¤»¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¤·¤¿¤¬¤Ã¤ÆÃÏ·Á¤òɽ¼¨¤¹¤ë»þ¤Ë¤Ïf_info[c_ptr->mimic].mimic¤Ç¤Ï¤Ê¤¯¡¢
-       c_ptr->mimic¤ò¸«¤ì¤Ð½½Ê¬¡£
-
-2003-07-29  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.1.2.3:
-       "¥¢¥ë¥Ù¥ê¥Ò¤Î©»Ò¡Ø¥Ï¡¼¥²¥ó¡Ù" ¤ÎÀâÌÀ¥Æ¥­¥¹¥È¤Î½¤Àµ. ³«È¯ÈǤè¤ê.
-
-       * lib/edit/r_info.txt 1.23:
-       "¥¢¥ë¥Ù¥ê¥Ò¤Î©»Ò¡Ø¥Ï¡¼¥²¥ó¡Ù" ¤ÎÀâÌÀ¥Æ¥­¥¹¥È¤Î½¤Àµ.
-
-       * src/xtra2.c 1.54.2.4, src/cmd2.c 1.36.2.2, src/cmd1.c 1.60.2.4, src/cave.c 1.66.2.4:
-       mimic¤Î¤¢¤ë¥°¥ê¥Ã¥É¤Îmimic¤ÎÃÏ·Á¤Ë¤µ¤é¤Ë¥Ç¥Õ¥©¥ë¥È¤Îmimic¤¬¤¢¤ë¾ì¹ç
-       ¤Ë, ¤½¤ÎÃÏ·Á¤ËÂбþ¤¹¤ë¥¿¥¤¥ë¤¬»È¤ï¤ì¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ. ¤Þ¤¿,
-       mimic¤Ê¤·¤Î¾ì¹ç¤Ëf_info[c_ptr->feat].mimic¤ò»È¤¦¤è¤¦¤Ê¾ì¹ç¤Ï,
-       c_ptr->mimic¤¬¤¢¤ë¾ì¹ç¤ËÂФ·¤Æ¤â¥Ç¥Õ¥©¥ë¥È¤Îmimic¤ò»È¤¦¤è¤¦¤Ë¤·¤¿.
-       ³«È¯ÈǤè¤ê.
-
-       * src/dungeon.c 1.127, src/wild.c 1.27, src/xtra2.c 1.91, src/cmd1.c 1.89, src/cmd2.c 1.56, src/cave.c 1.118:
-       mimic¤òÍѤ¤¤ëfeat¤ÎÂåÆþÉôʬ¤ÎºÙ¤«¤¤½¤Àµ.
-
-       * src/wild.c 1.26, src/xtra2.c 1.90, src/cmd1.c 1.88, src/cmd2.c 1.55, src/dungeon.c 1.126, src/cave.c 1.117:
-       mimic¤Î¤¢¤ë¥°¥ê¥Ã¥É¤Îmimic¤ÎÃÏ·Á¤Ë¤µ¤é¤Ë¥Ç¥Õ¥©¥ë¥È¤Îmimic¤¬¤¢¤ë¾ì¹ç
-       ¤Ë, ¤½¤ÎÃÏ·Á¤ËÂбþ¤¹¤ë¥¿¥¤¥ë¤¬»È¤ï¤ì¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ. Éô²°
-       ³°¼þ¤Î±£¤·¥É¥¢¤¬¥¿¥¤¥ë¥â¡¼¥É¤ÇÇí¤­½Ð¤·¤Ë¤Ê¤ë¥Ð¥°¤â½¤Àµ. ¤Þ¤¿, mimic¤Ê
-       ¤·¤Î¾ì¹ç¤Ëf_info[c_ptr->feat].mimic¤ò»È¤¦¾ì¹ç¤Ïc_ptr->mimic¤ËÂФ·¤Æ¤â
-       f_info[c_ptr->mimic].mimic¤ò»È¤¦¤è¤¦¤Ë¤·¤¿.
-
-2003-07-25  henkma  <henkma@cvs>
-
-       * lib/edit/a_info.txt 1.7: ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ÎÀâÌÀ¤òÄɲÃ.
-
-2003-07-25  nothere  <nothere@cvs>
-
-       * src/cmd2.c 1.54:
-       ¼Í·âÉð´ï¤Î½ÏÎýÅ٤ε­¹æÄê¿ô²½¤ò´Ö°ã¤¨¤Æ¤ª¤ê, ½ÏÎýÅÙ¤¬[½é¿´¼Ô]¤«¤é¾å¤¬
-       ¤é¤Ê¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-07-24  nothere  <nothere@cvs>
-
-       * src/dungeon.c 1.125, src/melee2.c 1.74:
-       ¥×¥ì¥¤¥ä¡¼¤ËÁõÈ÷Ūȿ´¶¤¬¤¢¤ë¾ì¹ç¤Ë, Í§¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤¬Ìܤò³Ð¤Þ¤·¤Æ
-       ¤¹¤°¤Ë¤ÏŨ¤Ë²ó¤é¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿¤Î¤Ç, È¿´¶¤Ë¤è¤Ã¤Æµ¯¤­¤ë½èÍý¤À¤±¤Ï
-       process_monster()¤ËÌᤷ, Å¨¤Ë²ó¤ë½èÍý¤È¤Î¥¿¥¤¥ß¥ó¥°¤ò¹ç¤ï¤»¤¿.
-
-2003-07-23  nothere  <nothere@cvs>
-
-       * src/racial.c 1.26.2.6: ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë´Ø¤¹¤ë½¤Àµ. ³«È¯ÈǤè¤ê.
-       * ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë¼ºÇÔ¤·¤¿ºÝ¤Îflush_failure¤¬Â¾¤Î¾ì½ê¤È°ã¤Ã¤Æ¥á¥Ã
-         ¥»¡¼¥¸¤Î¸å¤Ë¤¢¤Ã¤¿¤Î¤Ç½¤Àµ.
-       * ¶ãÍ·»í¿Í¤Ç²Î¤ò»ß¤á¤ëºÝ¤Ëenergy_use = 10¤¬¤¢¤ë¤¬¼ÂºÝ¤Ïreturn FALSE¤Ç
-         Ìµ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤¿¤á, ²Î¤ä°ì»þÄä»ßÃæ¤Î²Î¤ò»ß¤á¤¿¾ì¹ç¤ÏËÜÅö¤Ë10¤À¤±
-         ¥¨¥Ê¥¸¡¼¤ò»È¤¦¤è¤¦¤Ë½¤Àµ.
-
-       * src/racial.c 1.41: ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë´Ø¤¹¤ë½¤Àµ.
-       * ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë¼ºÇÔ¤·¤¿ºÝ¤Îflush_failure¤¬Â¾¤Î¾ì½ê¤È°ã¤Ã¤Æ¥á¥Ã
-         ¥»¡¼¥¸¤Î¸å¤Ë¤¢¤Ã¤¿¤Î¤Ç½¤Àµ.
-       * ¶ãÍ·»í¿Í¤Ç²Î¤ò»ß¤á¤ëºÝ¤Ëenergy_use = 10¤¬¤¢¤ë¤¬¼ÂºÝ¤Ïreturn FALSE¤Ç
-         Ìµ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤¿¤á, ²Î¤ä°ì»þÄä»ßÃæ¤Î²Î¤ò»ß¤á¤¿¾ì¹ç¤ÏËÜÅö¤Ë10¤À¤±
-         ¥¨¥Ê¥¸¡¼¤ò»È¤¦¤è¤¦¤Ë½¤Àµ.
-
-2003-07-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/wizard2.c 1.44:
-       ¥Ç¥Ð¥Ã¥°¥â¡¼¥É¤Î^A o ¤Ç¥¢¥¤¥Æ¥à¤ò¤¤¤¸¤Ã¤Æ¤¤¤ë»þ¡¢cost¤Îɽ¼¨¤¬ËÜʪ¤ÎÃÍÃÊ
-       ¤Ç¤Ï¤Ê¤¯Å¹¼ç¤¬Ç§¼±¤¹¤ëÃÍÃÊ(̵²ÁÃͤǤâ̤´ÕÄê¤Ê¤éÇä¤ì¤ë)¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤¬¡¢
-       ¾ï¤ËËÜʪ¤ÎÃÍÃʤòɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/object2.c 1.95:
-       revision 1.89 ¤Ç¡¢pval¤ÎÃÍÃÊɾ²Á¤¬2¸Ä½ê¤¢¤Ã¤¿¤â¤Î¤ò1¸Ä½ê¤Ë¤Þ¤È¤á¤¿¤¬¡¢
-       2¸Ä½ê¤Ë¤¢¤Ã¤¿¤Î¤Ï¥Ù¡¼¥¹¥¢¥¤¥Æ¥à¤Îpval¤È¡¢¡ù¤ËÉÕ¤¯pval¤È¤Ç²ÁÃͤ¬°ã¤¦°Ù¤À¤Ã¤¿
-       (¤µ¤é¤Ë¸À¤¨¤Ð¥Ù¡¼¥¹¥¢¥¤¥Æ¥à¤Îpval¤Î²ÁÃͤϤ¢¤ëÄøÅ٥١¼¥¹¥³¥¹¥È¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë)
-       ¤Î¤Ç¡¢¸µ¤ËÌᤷ¤¿¡£
-       ¤Þ¤¿1.89¤Ç¥¨¥´¤Ç¤Ê¤¤»ØÎؤÇpval¤¬ÃÍÃʤ˱ƶÁ¤·¤Ê¤¤¥Ð¥°¤òºî¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç
-       ¤½¤ì¤âľ¤Ã¤¿¡£
-
-2003-07-22  henkma  <henkma@cvs>
-
-       * src/cmd4.c 1.96:
-       C-q»þ¤Î¥¯¥¨¥¹¥ÈãÀ®¥ê¥¹¥È¡¢±Ñ¸ì¤ÎÊý¤Î¥ì¥¤¥¢¥¦¥È½¤Àµ¡£
-
-2003-07-21  henkma  <henkma@cvs>
-
-       * src/cmd6.c 1.57, src/defines.h 1.130, src/flavor.c 1.37, src/object1.c 1.66, lib/edit/a_info.txt 1.6, lib/edit/k_info.txt 1.9, lib/edit/misc.txt 1.2, lib/edit/t0000001.txt 1.3:
-       4¤Ä¤Î¿·¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈƳÆþ. ¸Å¤¤¾ë¤ÎÊó½·¤Ë.
-
-2003-07-21  nothere  <nothere@cvs>
-
-       * src/mind.c 1.17.2.3:
-       Îýµ¤½Ñ¤ò»ÈÍѤ·¤¿Ä¾¸å¤ËÌÕÌܤˤʤ俾õ¶·¤Ç, ¤½¤ÎÎýµ¤½Ñ¤ò'n'¤ä'['¤Ç·«¤ê
-       ÊÖ¤·¤Æ»ÈÍѤ·¤è¤¦¤È¤¹¤ë¤Èrepeat_pull()¤Ç¤Î¥¹¥¿¥Ã¥¯¤ÎÆɤ߽Ф·½ç½ø¤¬¶¸
-       ¤¤, get_mind_power()¤¬¼öʸÈÖ¹æINVEN_FORCE¤òÊÖ¤·, ¤½¤Î·ë²ÌÇÛÎó³°¥¢¥¯¥»
-       ¥¹¤òµ¯¤³¤·¤¿¤êMP¤¬°Û¾ï¤ÊÃͤˤʤ俤ꤷ¤Æ¤¤¤¿¤Î¤Ç, get_mind_power()¤Ç
-       repeat_pull()¤µ¤ì¤¿¼öʸÈֹ椬INVEN_FORCE¤À¤Ã¤¿¾ì¹ç¤Ï¤â¤¦1ÅÙ¤À¤±
-       repeat_pull()¤·¤ÆÀµ¤·¤¤¼öʸÈÖ¹æ¤ò¼èÆÀ¤¹¤ë¤è¤¦¤Ë²¾½¤Àµ. ¤½¤Î¾ì¤·¤Î¤®¤Ë
-       ²á¤®¤Ê¤¤¤Î¤Ç, ¸å¤ÇÊ̤ÎÊýË¡¤ò¹Í¤¨¤ëɬÍפϤ¢¤ë. ³«È¯ÈǤè¤ê.
-
-2003-07-20  nothere  <nothere@cvs>
-
-       * src/object1.c 1.65: ¥¿¥°Ìõ¡Ç½¤Ë´Ø¤¹¤ëÊѹ¹.
-       * ÁõÈ÷Éʤˤâ{@(¥³¥Þ¥ó¥É)(¥¿¥°)}¤ä{@(¿ô»ú)}¤Ë¤è¤ë¥¢¥¤¥Æ¥àÁªÂò¤ò»È¤¨¤ë
-         ¤è¤¦¤Ë¤·¤¿. ÀèƬ¤Î¥é¥Ù¥ë¤ÎÊѹ¹¤âÄɽ¾¤¹¤ë.
-       * ÀèƬ¤Î¥é¥Ù¥ë¤ÎÊѹ¹¤¬¿ô»ú¤Î¥¿¥°¤Î¾ì¹ç¤Ç¤âÈ¿±Ç¤µ¤ì¤ë¤è¤¦¤Ë¤·¤¿.
-       * {@(¥³¥Þ¥ó¥É)(¥¿¥°)}¤ä{@(¿ô»ú)}¤Ë¤è¤ë¥¢¥¤¥Æ¥àÁªÂò¤òeasy_floor»ÈÍÑ»þ
-         ¤Î¾²¾å¤ÎÀѤ߽Ťʤä¿¥¢¥¤¥Æ¥à¤Ë¤â»ÈÍѤǤ­¤ë¤è¤¦¤Ë¤·¤¿.
-
-2003-07-19  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.71: ¹¹¿·¡£
-
-       * configure.in 1.22.2.4, lib/file/news.txt 1.16.2.4, lib/file/news_j.txt 1.15.2.4, src/defines.h 1.81.2.6:
-       version¤ò1.4.3¤Ø¡£
-
-       * lib/help/version.txt 1.14.2.3, lib/help/jversion.txt 1.14.2.4:
-       1.4.3¤È1.5.3¤ÎÊѹ¹ÅÀ¡£
-
-       * src/defines.h 1.129:
-       ¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¥Ð¡¼¥¸¥ç¥ó H_VER_* ¤ÎÉÕ¤±Êý¤¬°ã¤Ã¤¿¤Î¤ÇÉÕ¤±Ä¾¤·¡£
-       ºÇ½é¤Î3·å¤Ï¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¥Ð¡¼¥¸¥ç¥ó¤òÊѹ¹¤·¤¿»þÅÀ¤Ç¤Î
-       ¥×¥í¥°¥é¥à¥Ð¡¼¥¸¥ç¥ó(º£²ó¤Ï1.5.3)¤ÈƱ¤¸¤Ë¤¹¤ë¤È¤¤¤¦
-       ¥ë¡¼¥ë¤Ë½¾¤Ã¤Æ¡¢1.5.3.0 ¤Ë¤·¤¿¡£
-
-       4·åÌܤοô»ú¤ÏCVS¤Ç³«È¯Ãæ¤Ë²¿Å٤⥻¡¼¥Ö¥Õ¥¡¥¤¥ë¥Ð¡¼¥¸¥ç¥ó¤ò
-       ÊѤ¨¤ëɬÍפ¬À¸¤¸¤¿»þ¤Ë¤Î¤ß»È¤¦¡£
-
-       * src/birth.c 1.75: Andy Choco»á¤ÎËâË¡ÎΰèÀâÌÀʸ¤Î½¤Àµ¡£
-
-2003-07-19  nothere  <nothere@cvs>
-
-       * src/mind.c 1.27:
-       Îýµ¤½Ñ¤ò»ÈÍѤ·¤¿Ä¾¸å¤ËÌÕÌܤˤʤ俾õ¶·¤Ç, ¤½¤ÎÎýµ¤½Ñ¤ò'n'¤ä'['¤Ç·«¤ê
-       ÊÖ¤·¤Æ»ÈÍѤ·¤è¤¦¤È¤¹¤ë¤Èrepeat_pull()¤Ç¤Î¥¹¥¿¥Ã¥¯¤ÎÆɤ߽Ф·½ç½ø¤¬¶¸
-       ¤¤, get_mind_power()¤¬¼öʸÈÖ¹æINVEN_FORCE¤òÊÖ¤·, ¤½¤Î·ë²ÌÇÛÎó³°¥¢¥¯¥»
-       ¥¹¤òµ¯¤³¤·¤¿¤êMP¤¬°Û¾ï¤ÊÃͤˤʤ俤ꤷ¤Æ¤¤¤¿¤Î¤Ç, get_mind_power()¤Ç
-       repeat_pull()¤µ¤ì¤¿¼öʸÈֹ椬INVEN_FORCE¤À¤Ã¤¿¾ì¹ç¤Ï¤â¤¦1ÅÙ¤À¤±
-       repeat_pull()¤·¤ÆÀµ¤·¤¤¼öʸÈÖ¹æ¤ò¼èÆÀ¤¹¤ë¤è¤¦¤Ë²¾½¤Àµ. ¤½¤Î¾ì¤·¤Î¤®¤Ë
-       ²á¤®¤Ê¤¤¤Î¤Ç, ¸å¤ÇÊ̤ÎÊýË¡¤ò¹Í¤¨¤ëɬÍפϤ¢¤ë.
-
-2003-07-18  nothere  <nothere@cvs>
-
-       * src/xtra2.c 1.54.2.3:
-       ¥â¥ó¥¹¥¿¡¼¤Ë»ß¤á¤ò»É¤·¤¿ºÝ¤Ë·Ð¸³Ãͤ¬Á´¤¯Æþ¤é¤Ê¤¯¤Ê¤ë¤È¤¤¤¦¥Ð¥°¤ò½¤Àµ.
-       ¥¯¥¨¥¹¥ÈȽÄê¤Î¥Ð¥°½¤Àµ¤Ë¤è¤ë¥¨¥ó¥Ð¥°¤À¤Ã¤¿. ³«È¯ÈǤè¤ê.
-
-       * src/xtra2.c 1.89:
-       ¥â¥ó¥¹¥¿¡¼¤Ë»ß¤á¤ò»É¤·¤¿ºÝ¤Ë·Ð¸³Ãͤ¬Á´¤¯Æþ¤é¤Ê¤¯¤Ê¤ë¤È¤¤¤¦¥Ð¥°¤ò½¤Àµ.
-       ¥¯¥¨¥¹¥ÈȽÄê¤Î¥Ð¥°½¤Àµ¤Ë¤è¤ë¥¨¥ó¥Ð¥°¤À¤Ã¤¿.
-
-       * src/store.c 1.20.2.6:
-       ¼«Âð/Çîʪ´ÛÆâ¤ÇprefÆɤ߹þ¤ß¤¬¹Ô¤ï¤ì¤¿ºÝ¤Ë, $TOWN¤ò»È¤¦½èÍý¤Ç¸í¤Ã¤¿³¹
-       ID¤¬ÊÖ¤µ¤ì¤ë²ÄǽÀ­¤¬¹Í¤¨¤é¤ì¤ë¤Î¤Ç, ¤½¤ì¤ËÂн褷¤¿. ³«È¯ÈǤè¤ê.
-
-       * src/store.c 1.33:
-       ¼«Âð/Çîʪ´ÛÆâ¤ÇprefÆɤ߹þ¤ß¤¬¹Ô¤ï¤ì¤¿ºÝ¤Ë, $TOWN¤ò»È¤¦½èÍý¤Ç¸í¤Ã¤¿³¹
-       ID¤¬ÊÖ¤µ¤ì¤ë²ÄǽÀ­¤¬¹Í¤¨¤é¤ì¤ë¤Î¤Ç, ¤½¤ì¤ËÂн褷¤¿.
-
-2003-07-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.64:
-       ÁõÈ÷ÉʤÎÃæ¤Ç{@wf}Åù¤ÎÌ䬤¢¤ë¤È¡¢get_tag()¤¬È¿±þ¤·¤Æ¤·¤Þ¤¤¡¢»ý¤Á¤â¤Î¥ê¥¹¥È
-       ¤ÎÃæ¤Ç ¡Öf)¡×¤Î¥¿¥°¤¬¾Ã¤¨¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-       * lib/edit/t0000001.txt 1.2: ¡Ö´¹¶â¤¹¤ë¡×¢ª¡ÖÊó½·¤ò¼õ¤±¼è¤ë¡×
-
-2003-07-15  nothere  <nothere@cvs>
-
-       * src/object2.c 1.94:
-       ÊÑ¿ôcheck_wraith_form¤ÏÉÔÍפʤΤÇ, ignore_wraith_form¤ÇÅý°ì. ¤Þ¤¿,
-       Í©Âβ½»þ¤ÎÁ®¸÷°À­¤ËÂФ·¤Æ¤Ï¥À¥á¡¼¥¸0¤Î»þ¤Î¥é¥ó¥À¥à¤Ê1¥À¥á¡¼¥¸¤¬¤¢¤ë
-       ¤¿¤á, ignore_wraith_form¤ò»È¤ï¤º "¸·Ì©¤Ê" ·×»»¤ò»È¤¦¤³¤È¤Ë¤·¤¿.
-
-       * src/object2.c 1.93:
-       1.91¤Ç²¥¤ê¤ËÂФ·¤ÆÍ©Â⽤¬¹Í褵¤ì¤Ê¤¤¥Ð¥°¤Ø¤Î½¤Àµ¤ò¹Ô¤Ã¤¿¤¬, ¤³¤Î»þ
-       ¤ËACID, ELEC, FIRE, COLD¤Î²¥¤ê¤ËÂФ·¤Æ¤Ï2½Å¤ËÍ©Â⽤ÎȽÄê¤ò¹Ô¤Ã¤Æ¤·
-       ¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/object2.c 1.92: ÊÑ¿ô̾¤Î¥ß¥¹¤Î½¤Àµ.
-
-       * src/monster2.c 1.77, src/object2.c 1.91: ·Ù¹ðµ¡Ç½¤ËÂФ¹¤ë½¤Àµ¤ÈÊѹ¹.
-       * Í©Âβ½»þ¤Ë¥À¥á¡¼¥¸0¤Î¾ì¹ç¤ï¤º¤«1¥Ý¥¤¥ó¥È¤Î¥À¥á¡¼¥¸¤ò¼õ¤±¤ë¾ì¹ç¤È¼õ
-         ¤±¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤¬, ¤½¤ì¤¬Ã×̿Ū¤Ë¤Ê¤ë¤È¤¤¤¦¶Ë¤á¤Æµ©¤Ê¾ì¹ç¤Ë¤âÂбþ
-         ¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-       * ¥æ¥Ë¡¼¥¯¡¦¥â¥ó¥¹¥¿¡¼¤¬¸½¤ì¤ëºÝ¤Ë·Ù¹ð¥¢¥¤¥Æ¥à¤¬¸÷¤ë¥³¡¼¥É¤¬¤¢¤ë¤¬,
-         choose_warning_item()¤ÇNULL¤¬ÊÖ¤µ¤ì¤Æ¤âÉáÄ̤ËÆ°ºî¤¹¤ë¤è¤¦¤Ë¤·¤¿.
-       * ¾¯¡¹¤Î¥³¡¼¥ÉÀ°Íý.
-       * ·Ù¹ðÂоݤ˽ã¥í¥°¥ë¥¹¤òÄɲÃ.
-
-       * src/cmd4.c 1.95:
-       Ã£À®¥¯¥¨¥¹¥Èɽ¼¨¤Ç¥µ¡¼¥Ú¥ó¥È¤Î¥¯¥¨¥¹¥È¤Î¹Ô¤À¤±¤º¤ì¤Æ¤¤¤¿¤Î¤Ç, ³¬¤Îɽ
-       ¼¨¤Ë¤Ï%2d¤Ç¤Ï¤Ê¤¯%3d¤ò»È¤Ã¤Æ·å¤ò¹ç¤ï¤»¤¿.
-
-       * src/store.c 1.20.2.5:
-       ²Á³Ê¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥Ð¥°¤Î½¤Àµ¤Ç¥¨¥ó¥Ð¥°¤·¤Æ¤ª¤ê, ¼êÆ°¸ò¾Ä¤ÇÌ¥ÎϤ¬¶Ëü
-       ¤ËÄ㤤¾ì¹ç¤Ê¤É¤ËÄ󼨲Á³Ê¤¬¤ª¤«¤·¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ. ÇäµÑ»þ¤Ïadjust¤ÏÉé
-       ¤Ë¤Ê¤êÆÀ¤ë¤Î¤Ëu32b¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤³¤È¤¬¸¶°ø. ³«È¯ÈǤè¤ê.
-
-       * src/store.c 1.32:
-       ²Á³Ê¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¥Ð¥°¤Î½¤Àµ¤Ç¥¨¥ó¥Ð¥°¤·¤Æ¤ª¤ê, ¼êÆ°¸ò¾Ä¤ÇÌ¥ÎϤ¬¶Ëü
-       ¤ËÄ㤤¾ì¹ç¤Ê¤É¤ËÄ󼨲Á³Ê¤¬¤ª¤«¤·¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ. ÇäµÑ»þ¤Ïadjust¤ÏÉé
-       ¤Ë¤Ê¤êÆÀ¤ë¤Î¤Ëu32b¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤³¤È¤¬¸¶°ø.
-
-       * src/cave.c 1.116:
-       wiz_dark()¤Ç´Ö°ã¤¨¤Æ³°¼þÉô¤ËCAVE_UNSAFE¤òΩ¤Æ¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-       * src/cave.c 1.115:
-       FORGET¥À¥ó¥¸¥ç¥ó¤Ç¤Î¹ÔÆ°¸å¤äµ­²±ÁÓ¼º¤Ê¤É¤Çwiz_dark()¤¬¸Æ¤Ð¤ì¤¿¾ì¹ç¤Ï,
-       CAVE_IN_DETECT¤òÇË´þ¤·CAVE_UNSAFE¤òΩ¤Æľ¤¹¤è¤¦¤Ë¤·¤¿. ¤³¤ì¤Ë¤è¤ê,
-       FORGET¥À¥ó¥¸¥ç¥ó¤Ç'x'¤À¤±¤ÇÊ⤤¤¿Æ»¶Ú¤¬¤ï¤«¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-07-13  henkma  <henkma@cvs>
-
-       * src/files.c 1.88.2.5, src/birth.c 1.57.2.5:
-       Andy¤µ¤ó»ØŦ¤Îtypo¤ò½¤Àµ¡£
-
-2003-07-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.128, lib/file/news.txt 1.21, lib/file/news_j.txt 1.19, configure.in 1.26:
-       ¥Ð¡¼¥¸¥ç¥ó¤ò1.5.3¤Ø¡£
-
-       * lib/help/jversion.txt 1.18, lib/help/version.txt 1.18:
-       Êѹ¹ÍúÎò¤Ë½ñ¤­Ëº¤ì¡§X11 port¤Îcopy&pasteµ¡Ç½¡£
-
-2003-07-11  nothere  <nothere@cvs>
-
-       * src/files.c 1.122:
-       ¥»¡¼¥Ö¤·¤¿¸å¤ËºÆ¥í¡¼¥É¤µ¤ì¤ë²áÄø¤Ç¥â¥ó¥¹¥¿¡¼¤Îµ÷Î¥¾ðÊó¤¬0¤Ë¤Ê¤Ã¤Æ¤ª
-       ¤ê, ¿ç̲¤Î·×»»¤ÎºÝ¤Ë0½ü»»¤ÇÊѶòÈÚÅܤ¬Íî¤Á¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/spells3.c 1.56.2.6, src/melee1.c 1.22.2.2, src/racial.c 1.26.2.5, src/dungeon.c 1.78.2.7:
-       MPÁàºî¤¬¹Ô¤ï¤ì¤¿¸å¤ËºÆÉÁ²è¤¬É¬ÍפÊÉôʬ¤Î½¤Àµ. ³«È¯ÈǤè¤ê.
-
-       * src/melee1.c 1.38, src/racial.c 1.40, src/spells3.c 1.89, src/dungeon.c 1.124:
-       MPÁàºî¤¬¹Ô¤ï¤ì¤¿¸å¤ËºÆÉÁ²è¤¬É¬ÍפÊÉôʬ¤Î½¤Àµ.
-
-2003-07-10  nothere  <nothere@cvs>
-
-       * src/dungeon.c 1.123:
-       ¼«Ê¬¼«¿È¤¬¸÷¸»¤Ç¤Ï¤Ê¤¤¸÷¸»»ý¤Á¤Î¥â¥ó¥¹¥¿¡¼¤¬Ìܤò³Ð¤Þ¤·¤¿ºÝ¤Ë, ¤½¤Î
-       ¥â¥ó¥¹¥¿¡¼¤¬¸«¤¨¤º¤Ëʪ±¢¤Ë¤¤¤ë¾ì¹ç¤Ë¸÷¸»¤¬update¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-2003-07-10  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.70: ¹¹¿·¡£
-
-       * lib/help/attack.txt 1.11, lib/help/jattack.txt 1.9, lib/help/joption.txt 1.23, lib/help/option.txt 1.23, configure.in 1.25, lib/file/news.txt 1.20, lib/file/news_j.txt 1.18:
-       ¥Ð¡¼¥¸¥ç¥óɽµ­¤ò1.5.2¤Ø¡£
-
-       * lib/help/jversion.txt 1.14.2.3, lib/help/version.txt 1.14.2.2:
-       1.4.2ÍѤ˥¢¥Ã¥×¥Ç¡¼¥È
-
-       * lib/help/version.txt 1.17, lib/help/jversion.txt 1.17:
-       1.5.2ÍѤ˥¢¥Ã¥×¥Ç¡¼¥È¡£
-
-2003-07-10  nothere  <nothere@cvs>
-
-       * src/xtra2.c 1.88, src/spells2.c 1.80, src/spells3.c 1.88, src/melee2.c 1.73, src/mspells2.c 1.58, src/spells1.c 1.74, src/dungeon.c 1.122:
-       ¥â¥ó¥¹¥¿¡¼¤¬µ¯¤­¤ëºÝ¤Ë¥â¥ó¥¹¥¿¡¼¸÷¸»¤Îupdate¤Î­¤ê¤Ê¤«¤Ã¤¿Éôʬ¤ÎÄɲÃ.
-
-       * src/cave.c 1.114: ÌµÂ̤Ë¿¤¤Èæ³Ó¤¬¤¢¤Ã¤¿Éôʬ¤Î½¤Àµ.
-
-       * src/files.c 1.88.2.4:
-       known_obj_immunity()Æâ¤ÇÊÑ¿ôo_flgs¤¬Æɤޤì¤Æ¤ª¤é¤º, ¼åÅÀ¤ËÂбþ¤¹¤ëÌÈ
-       ±Ö¤¬¤¢¤Ã¤Æ¤â¼åÅÀɽ¼¨¤¬¤½¤Î¤Þ¤Þ»Ä¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ. ³«È¯ÈǤè¤ê.
-
-       * src/files.c 1.121:
-       known_obj_immunity()Æâ¤ÇÊÑ¿ôo_flgs¤¬Æɤޤì¤Æ¤ª¤é¤º, ¼åÅÀ¤ËÂбþ¤¹¤ëÌÈ
-       ±Ö¤¬¤¢¤Ã¤Æ¤â¼åÅÀɽ¼¨¤¬¤½¤Î¤Þ¤Þ»Ä¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-2003-07-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/effects.c 1.43, src/object2.c 1.90:
-       ¥¢¥ó¥É¥í¥¤¥É¤Î¶¯²½ÅÙ¤ËÂФ¹¤ë¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Îɾ²Á¤¬Ä㤹¤®¤¿¤Î¤ÇÄ´À°¡£
-
-       * src/artifact.c 1.31:
-       flag_cost()¤ÏÃÍÃʤò·è¤á¤ë°Ê³°¤Ëlow,med,high¤ÎʬÎà¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢
-       object_value_real()Æâ¤ÎpvalÃÍÃÊ·×»»¤ò¤Þ¤È¤á¤¿Ê¬É¾²Á¤¬¹â¤¯¤Ê¤ë¤Î¤òÁ껦
-       ¤¹¤ë°Ù¡¢med¤Èhigh¤È¤Î¶­³¦Ãͤò°ú¤­¾å¤²¤¿¡£low¤Èmed¤Ï¿ø¤¨ÃÖ¤­¡£
-
-       * src/object2.c 1.89:
-       pvalÉÕ¤­ÁõÈ÷¤ÎÃÍÃÊ·×»»¤¬¤Ê¤¼¤«¡¢flag_cost()Æâ¤Èobject_value_real()Æâ¤Î
-       2¸Ä½ê¤¢¤ê¡¢¤½¤Î¹ç·×¤òÃÍÃʤȤ·¤Æ¤¢¤Ã¤¿¤Î¤Ç¡¢object_value_real()¤ÎÊý¤òºï½ü
-       ¤·¤Æflag_cost()¤Ë¤Þ¤È¤Þ¤¿¡£
-
-2003-07-09  nothere  <nothere@cvs>
-
-       * src/mspells2.c 1.57: ÊÑ¿ôdist¤Î¾ì½ê¤ÎÊѹ¹.
-
-       * src/object2.c 1.88: Typo fix: "Realy" -> "Really".
-
-       * src/xtra1.c 1.55.2.2, src/spells3.c 1.56.2.5, src/spells1.c 1.44.2.4, src/mspells2.c 1.28.2.3, src/object2.c 1.62.2.4, src/files.c 1.88.2.3, src/dungeon.c 1.78.2.6, src/externs.h 1.87.2.7, src/cmd5.c 1.49.2.6, src/artifact.c 1.29.2.1, src/birth.c 1.57.2.4, lib/edit/r_info.txt 1.1.2.2, lib/edit/a_info.txt 1.1.2.1:
-       1.5.x¤Ç¹Ô¤ï¤ì¤¿Typo fix¤Î¥Þ¡¼¥¸.
-
-       * lib/edit/r_info.txt 1.22:
-       ²«¶â²¦¡Ø¥¢¥ë=¥Õ¥¡¥é¥¾¥ó¡Ù¤ÎDROP_CORPSE¤¬2½Å¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Çºï½ü¤·,
-       MALE¤òÄɲÃ. ¤Þ¤¿, ¼Ùε¡Ø¥Ê¡¼¥¹¡Ù¤ËSELF_DARK_2¤òÄɲÃ.
-
-       * src/defines.h 1.81.2.5, src/externs.h 1.87.2.6, src/variable.c 1.34.2.2:
-       Êɤ¬Á´¤¯¤Ê¤¯¿¿¤ÎºÇÂç»ë³¦ÈÏ°Ï(Ⱦ·Â20, Áí¥°¥ê¥Ã¥É¿ô1149)¤ò¼è¤ë¾ì¹ç¤Ë,
-       ¥â¥ó¥¹¥¿¡¼¸÷¸»ÈϰϤκƷ׻»¤Çtemp_*[]¤ämon_lite_*[]¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·
-       ¤ÆÊѶòÈÚÅܤ¬Íî¤Á¤Æ¤¤¤¿¤Î¤Ç, ´ØÏ¢ÇÛÎó¤ò¤µ¤é¤Ë³ÈÄ¥. ³«È¯ÈǤè¤ê.
-
-2003-07-09  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/Makefile.am 1.3: crime.txt¤Ïºï½ü¤µ¤ì¤¿¤Î¤Ç¡¢¼è¤ê½ü¤¯¡£
-
-2003-07-09  nothere  <nothere@cvs>
-
-       * src/wild.c 1.18.2.1, src/xtra2.c 1.54.2.2, src/store.c 1.20.2.4, src/util.c 1.35.2.2, src/spells1.c 1.44.2.3, src/spells2.c 1.60.2.1, src/object1.c 1.55.2.3, src/object2.c 1.62.2.3, src/mspells1.c 1.34.2.2, src/mspells2.c 1.28.2.2, src/mind.c 1.17.2.2, src/monster1.c 1.27.2.2, src/monster2.c 1.45.2.2, src/hissatsu.c 1.19.2.2, src/init2.c 1.19.2.4, src/melee2.c 1.37.2.3, src/dungeon.c 1.78.2.5, src/externs.h 1.87.2.5, src/cmd2.c 1.36.2.1, src/cmd5.c 1.49.2.5, src/cmd1.c 1.60.2.3, src/bldg.c 1.26.2.2, src/cave.c 1.66.2.3, lib/help/attack.txt 1.9.2.1, lib/help/jattack.txt 1.7.2.1, lib/edit/e_info.txt 1.1.2.1:
-       1.5.x·Ï¤Î½¤Àµ¤ò¥Þ¡¼¥¸.
-       * ÂÔµ¡¸å¤Î¥¹¥³¥¢Á÷¿®¤Çv_info¤Î¥Á¥§¥Ã¥¯¥µ¥à¤¬¤ª¤«¤·¤¤¥Ð¥°½¤Àµ.
-       * ¾èÇϤνÏÎýÅÙ¤¬ºÇÂçÃͤòĶ¤¨¤ë¾ì¹ç¤¬¤¢¤ë¥Ð¥°½¤Àµ.
-       * ¶Ëü¤Ë¹â²Á¤Ê¥¢¥¤¥Æ¥à¤Î²Á³Ê¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Æ$1¤ÇÇ㤨¤ë¥Ð¥°½¤Àµ.
-       * ²Î "¥Õ¥£¥ó¥´¥ë¥Õ¥£¥ó¤ÎÄ©Àï" ºÆ³«»þ¤ÎÉÁ²èÉÔÈ÷¤Î½¤Àµ.
-       * ¹­°è¥Þ¥Ã¥×¤Ë½Ð¤Æ¤â¼ÂºÝ¤Ë¤Ï²Î¤¬»ß¤Þ¤é¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-       * ¥Þ¥¯¥íÆþÎÏ»þ¤Ëʸ»úÎó¤ÎºÇ¸å¤Ë'\'¤¬¤¢¤ë¤È¥á¥â¥êÆâ¤Î¥´¥ß¤¬Ê¸»úÎó¤ÎºÇ¸å
-         ¤Ë¤¯¤Ã¤Ä¤¯¥Ð¥°¤Î½¤Àµ.
-       * 18¥Þ¥¹°Ê¾åÎ¥¤ì¤¿¥â¥ó¥¹¥¿¡¼¤Ë¼Í·â¤¬Èô¤Ð¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-       * ÂÑ»þ´ÖµÕž¤Î¥¨¥´²Á³Ê¤ò$7500¤ËÀßÄê.
-       * Á´ÌÇ·¿¤Î¥¯¥¨¥¹¥ÈÆâ¤Ç¥â¥ó¥¹¥¿¡¼¤òÅݤ·¤Æ¥ì¥Ù¥ë¥¢¥Ã¥×¤·¤¿ºÝ¤Ë¥«¥ª¥¹¥Ñ
-         ¥È¥í¥ó¤ÎÊ󽷤ǹ¶·â·Ï¸ú²Ì¤¬È¯Æ°¤¹¤ë¤È¥æ¥Ë¡¼¥¯1ÂΤÀ¤±¤¬»Ä¤ë¾õ¶·¤Ç¥¯¥¨
-         ¥¹¥ÈãÀ®¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°¤ò½¤Àµ.
-       * Í§¹¥Åª, ¤â¤·¤¯¤Ï¥Ú¥Ã¥È¤Î¥æ¥Ë¡¼¥¯¤¬¥Ô¥ó¥Á¤Ë¤Ê¤Ã¤Æ¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Î
-         ´¬Êª¤òÆɤó¤Çƨ¤²¤¿¾ì¹ç¤Ë¥¯¥¨¥¹¥È¤¬½ª¤ï¤é¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-       * ¥Ú¥Ã¥È¤Î¥í¥±¥Ã¥È´¬¤­¹þ¤ßȽÄê¤Î¥Ð¥°¤ò½¤Àµ.
-       * Éð´ï¾¢¤ÎÉð´ïÈæ³Ó»þ¤Ë "¤Õ¤µ¤ï¤·¤¯¤Ê¤¤" ¥á¥Ã¥»¡¼¥¸¤¬½Ð¤ë¥Ð¥°¤ò½¤Àµ.
-       * ¥¯¥í¡¼¥ó¥â¥ó¥¹¥¿¡¼¤¬ËÜʪ¤Î¥â¥ó¥¹¥¿¡¼¤ËÊѲ½¤¹¤ë¥Ð¥°¤ò½¤Àµ.
-       * ¥â¥ó¥¹¥¿¡¼¤Î»×¤¤½Ðɽ¼¨»þ¤ÎÇÛÎó³°¥¢¥¯¥»¥¹¤Î½¤Àµ.
-       * ÃÃÌê»Õ¤ÎpvalǽÎϤΥ¨¥Ã¥»¥ó¥¹¤ÎÉղäÏÉé¤Îpval¤Î¥¢¥¤¥Æ¥à¤Ë¤Ï»È¤¨¤Ê¤¤
-         ¤è¤¦¤ËÊѹ¹.
-       * ·õ½Ñ / Ç¦½Ñ "Æþ¿È" ¤ÎµóÆ°¤Î½¤Àµ.
-       * ¥Ø¥ë¥×¤Ç¤ÎÍýÎϤΥÀ¥á¡¼¥¸ÇÜΨ¤ÎÀâÌÀ¤Î½¤Àµ.
-       * Ìäò´Þ¤ó¤À¥¢¥¤¥Æ¥à¤Îʸ»úÎó¤¬Ä¹¤¹¤®¤ë¤È, ½ÅÎÌɽ¼¨¤Î±¦¤Ë¥´¥ß¤¬½Ð¤Æ¤¤
-         ¤¿¥Ð¥°½¤Àµ. ¤Þ¤¿, ¥¢¥¤¥Æ¥à°ìÍ÷¤äÁõÈ÷ÉÊ°ìÍ÷¤Î¥¦¥£¥ó¥É¥¦Éý¤òÊѹ¹¤·¤Æ
-         ¤âɽ¼¨¤ËÈ¿±Ç¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-       * ¥¢¥ê¡¼¥Ê¤ÇÅݤ·¤¿¥â¥ó¥¹¥¿¡¼¤Î̾Á°¤¬¸¸³Ð¾õÂÖ¤ÇÊѤï¤ë¥Ð¥°½¤Àµ.
-       * ¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤Î¹¹¿·¤Î¥Ð¥°½¤Àµ.
-       * ¾èÇÏÃæ¤Î¥×¥ì¥¤¥ä¡¼¤È¥â¥ó¥¹¥¿¡¼¤Ø¤ÎËâË¡¥À¥á¡¼¥¸¤Î¥³¡¼¥É¤Î¥Ð¥°½¤Àµ.
-
-2003-07-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/bldg.c 1.42, src/cmd4.c 1.94, src/dungeon.c 1.121:
-       ¾Þ¶â¼ó¤Ë¹ü¤âµö¤¹¤è¤¦¤Ë½¤Àµ¡£
-       '~'+'6'¤Î¾Þ¶â¼ó¥ê¥¹¥È¤¬¶â³Ûɽ¼¨¤Î¤Þ¤Þ¤À¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/edit/r_info.txt 1.21:
-       Â¿¿ô¤Î¥æ¥Ë¡¼¥¯¤ËDROP_CORPSE¤äDROP_SKELETON¤òÄɲá£
-
-       * src/bldg.c 1.41:
-       ¾Þ¶â¼ó¤Î¥Ý¥¤¥ó¥ÈÀ©¼ÂÁõ¡£³Æ¥Ý¥¤¥ó¥ÈËè¤ËÌô¤«´¬Êª¤òÌ㤨¤ë¡£
-       ¥¢¥¤¥Æ¥à¤Î¥ê¥¹¥È¤Ï²¾ÀßÄê¡£
-
-       * src/spells3.c 1.87: gcc¤Î¥ï¡¼¥Ë¥ó¥°Âкö¤Ç½ñ¤­´¹¤¨¡£
-       ¥ë¡¼¥×Ãæ¤Ç½é¤á¤ÆÂåÆþ¤µ¤ì¤ëÊÑ¿ô¤ò¡¢³°¤Ç»È¤¦¤È̤ÄêµÁ¤È¶èÊ̤¬ÉÕ¤«¤º¡¢
-       ¥ï¡¼¥Ë¥ó¥°¤¬½Ð¤ë¤Î¤ÇÈò¤±¤ë¡£
-
-       * Changelogs 1.69: ¹¹¿·¡£
-
-2003-07-06  nothere  <nothere@cvs>
-
-       * src/cave.c 1.113:
-       update_mon_lite()Æâ¤Ç¥â¥ó¥¹¥¿¡¼¸÷¸»¥Õ¥é¥°¤òΩ¤Æ¤ëºÝ¤Ë, ³°Êɤαʵ״ä¤ò
-       Ä¶¤¨¤½¤¦¤Ê¾ì¹ç¤Ïcave_floor_bold()¤Çµ¶¤Ë¤Ê¤ê¤½¤ì¤«¤éÀè¤Ï½èÍý¤µ¤ì¤Ê¤¤.
-       ¤Þ¤¿, ¥â¥ó¥¹¥¿¡¼¤Ï¾ï¤Ë(1, 1)¤«¤é(cur_hgt - 2, cur_wid - 2)¤ÎÈÏ°ÏÆâ¤Ë
-       ¤¤¤ë. ¤³¤Î¤³¤È¤«¤é, cave[][]¤ÎÇÛÎó³°¥¢¥¯¥»¥¹¤Ïµ¯¤­¤Ê¤¤¤Î¤Ç,
-       mon_*_hack()Æâ¤Îin_bounds2()¤Ï¾ï¤Ë¿¿¤Ë¤Ê¤ë. ¤³¤Î¥Ñ¥é¥Î¥¤¥¢¥³¡¼¥É¤ò°ì
-       Ã¶¥³¥á¥ó¥È¥¢¥¦¥È¤¹¤ë¤³¤È¤ÇÈæ³Ó²ó¿ô¤òºï¤ê, ¤ï¤º¤«¤Ë¹â®²½¤ò¿Þ¤Ã¤¿.
-
-       * src/spells1.c 1.73: Typo fix.
-
-       * src/melee2.c 1.72:
-       ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Î²¥¤ê¹ç¤¤¤Ç, °ìÉô¤Î¹¶·â¤òAC¤Ç²óÈò¤·¤¿ºÝ¤Ë¥á¥Ã¥»¡¼¥¸¤Ê
-       ¤·¤Çµ¯¤­¤Æ¤¤¤¿¸½¾Ý¤¬¤¢¤Ã¤¿¤Î¤Ç, "¤«¤ï¤·¤¿" ¥á¥Ã¥»¡¼¥¸¤ò½Ð¤µ¤Ê¤¤¹¶·âÊý
-       Ë¡ (âˤߤʤÉ) ¤ò¿ç̲Ãæ¤ËAC¤Ç²óÈò¤·¤Æ¤â¿ç̲¤ò˸¤²¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/mspells1.c 1.62, src/mspells2.c 1.56:
-       ¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤ÎËâË¡»ÈÍÑ»þ¤Ë, ¼ÂÁõ¤µ¤ì¤Æ¤¤¤Ê¤¤ËâË¡¤¬ÁªÂò¤µ¤ì
-       ¤¿¤³¤È¤ÇËâË¡»ÈÍѤ˼ºÇÔ¤·¤Ê¤¤¤è¤¦¤Ë, Ì¤¼ÂÁõËâË¡ (ËâÎϾõî, »þ´ÖÄä»ß,
-       µ­²±¾Ãµî, ¥·¥ó¥Ü¥ë'B'°Ê³°¤ÎÆÃÊ̤ʹÔÆ°) ¤Î¥Õ¥é¥°¤òºÇ½é¤«¤éÍî¤È¤¹¤è¤¦¤Ë
-       ½¤Àµ. ¤Þ¤¿, ¥³¥á¥ó¥È¤Î½¤Àµ¤ò´Þ¤à.
-
-       * src/spells2.c 1.79: Ä´ºº¤Ë¤è¤ë°À­É½¼¨»þ¤ÎÏÀÍý±é»»¤Î»È¤¤Êý¤Î½¤Àµ.
-
-       * src/cmd5.c 1.74:
-       ¥Ú¥Ã¥È¤Î¹ç·×°À­ÃÍ·×»»¤Ç, Á±Îɤ«¤Ä¼Ù°­¤Î¥â¥ó¥¹¥¿¡¼¤Ï¹ç·×¤Ë±Æ¶Á¤òµÚ¤Ü
-       ¤µ¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/monster2.c 1.76, src/mspells1.c 1.61, src/mspells2.c 1.55, src/rooms.c 1.42, src/externs.h 1.131, src/melee2.c 1.71, src/monster1.c 1.41:
-       ¥â¥ó¥¹¥¿¡¼¤Î°ì»þ°À­¤ò´Þ¤á¤¿Å¨ÂаÀ­¤Î½èÍý¤ò´Ø¿ô¤Ë¤Þ¤È¤á¤ÆÀ°Íý¤·¤¿.
-       ¤³¤Î²áÄø¤Ç, °Ê²¼¤Î½¤Àµ¤äÊѹ¹¤ò´Þ¤à.
-       * ¥â¥ó¥¹¥¿¡¼ËâË¡ "»à¼ÔÉü³è" ¤Î»ÈÍÑȽÄê¤Ç, Å¨ÂаÀ­¤Î»àÂΤ·¤«¼þ°Ï¤Ë¤Ê
-         ¤¤¾ì¹ç¤Ï»à¼ÔÉü³è¤ò»ÈÍѤ·¤Ê¤¤¤è¤¦¤Ë¤·¤¿. ¤Þ¤¿, ¤³¤ÎȽÄê¤Ï¥â¥ó¥¹¥¿¡¼
-         ÂÐ¥â¥ó¥¹¥¿¡¼¤Ë¤âŬÍѤµ¤ì¤ë.
-       * Á±Îɤ«¤Ä¼Ù°­¤Î¥â¥ó¥¹¥¿¡¼¤¬Ê̤ÎÁ±Îɤ«¤Ä¼Ù°­¤Î¥â¥ó¥¹¥¿¡¼¤ò¾¤´­¤Ç¤­¤Ê
-         ¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-2003-07-05  nothere  <nothere@cvs>
-
-       * lib/edit/a_info.txt 1.5:
-       ¡ú¸­¼Ô¥¬¥ó¥À¥ë¥Õ¤ÎËâ½Ñ»Õ¤Î¾ó¤Ë´Ø¤¹¤ëÏ䷹礤¤Î·ë²Ì¤Ë¤è¤ê, ÌÕÌÜÂÑÀ­,
-       º®ÍðÂÑÀ­, µÞ®²óÉü, Ãپò½¤òÄɲÃ.
-
-2003-07-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.87:
-       ¥¢¥ê¡¼¥Ê¤ÇÅݤ·¤¿¥â¥ó¥¹¥¿¡¼¤Î̾Á°¤¬Æüµ­¤Ë½ñ¤­¹þ¤Þ¤ì¤ë¤È¤­¡¢¸¸³Ð¾õÂÖ¤À¤È̾Á°¤¬ÊѤï¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-2003-07-05  nothere  <nothere@cvs>
-
-       * src/object1.c 1.63:
-       Ìäò´Þ¤ó¤À¥¢¥¤¥Æ¥à¤Îʸ»úÎó¤¬Ä¹¤¹¤®¤ë¤È, ½ÅÎÌɽ¼¨¤Î±¦¤Ë¥´¥ß¤¬½Ð¤Æ¤¤¤¿
-       ¥Ð¥°¤ò½¤Àµ. ¤Þ¤¿, ¥¢¥¤¥Æ¥à°ìÍ÷¤äÁõÈ÷ÉÊ°ìÍ÷¤Î¥¦¥£¥ó¥É¥¦Éý¤òÊѹ¹¤·¤Æ¤â
-       É½¼¨¤ËÈ¿±Ç¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-2003-07-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/mspells1.c 1.60: ¥¨¥ó¥Ð¥°¤·¤Æ¤ë¤Î¤Ç¤È¤ê¤¢¤¨¤ºÌ᤹¡£
-
-2003-07-04  nothere  <nothere@cvs>
-
-       * src/cmd2.c 1.53, src/externs.h 1.130, src/mspells1.c 1.59, src/mspells2.c 1.54, src/spells1.c 1.72, src/xtra2.c 1.86:
-       ¥â¥ó¥¹¥¿¡¼¤Î»àË´¥á¥Ã¥»¡¼¥¸¤Î¥³¡¼¥É¤Î°ìÉô¤ò´Ø¿ô¤Ë¤Þ¤È¤á¤¿.
-
-       * src/mspells1.c 1.58:
-       ¥â¥ó¥¹¥¿¡¼¤ÎËâË¡¹¶·â¤ÇÊɸþ¤³¤¦¤«¤é¤Îʬ²ò¥Ö¥ì¥¹¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¤Ë, ¾õ
-       ¶·È½ÃǤˤè¤ë¥Õ¥é¥°¥Þ¥¹¥¯Áàºî¤ÇRF4_BR_DISI¤¬¹ß¤í¤µ¤ì¤¿¾ì¹ç¤Ç¤â¶¯°ú¤Ëʬ
-       ²ò¥Ö¥ì¥¹¤òÅǤ¯»ÅÍͤˤʤäƤ¤¤¿¤Î¤Ç, »ÈÍѲÄǽ¤Ê¥Õ¥é¥°¤ËRF4_BR_DISI¤¬»Ä
-       ¤é¤Ê¤«¤Ã¤¿¾ì¹ç¤Ïʬ²ò¥Ö¥ì¥¹¤òÅǤ«¤Ê¤¤¤è¤¦¤Ë½¤Àµ.
-
-       * src/rooms.c 1.41:
-       KILL_BODY¤«¤ÄNEVER_BLOW¤Î¥â¥ó¥¹¥¿¡¼¤Ç¤¢¤ì¤ÐKILL_BODYǽÎϤϻȤï¤ì¤Ê¤¤
-       ¤È¤¤¤¦Î©¾ì¤ËΩ¤Á, pit¤änest¤Ê¤É¤ÇKILL_BODY¤ò¶Ø»ß¤·¤Æ¤¤¤¿Éôʬ¤ËÂФ·,
-       ¶Ø»ß¾ò·ï¤òKILL_BODY¤¬¤¢¤ê¤«¤ÄNEVER_BLOW¤Ç¤Ï¤Ê¤¤¤³¤È¤È¤¹¤ë¤è¤¦¤Ë·Á¼°Åª
-       ¤ËÊѹ¹.
-
-       * src/melee2.c 1.70:
-       È¿¹¶·â¥À¥ó¥¸¥ç¥ó¤Ç¤Ï, º®Í𤷤¿¾õÂÖ¤äSTUPID¤Î¥â¥ó¥¹¥¿¡¼¤ÏÂǷ⹶·â¤ò»î
-       ¤ß¤Æ¼ºÇÔ¤·¤Æ¹ÔÆ°¤¬½ªÎ»¤¹¤ë¤è¤¦¤ËÊѹ¹. ¤Þ¤¿, KILL_BODY¤ÏNEVER_BLOW¤¬¤¢
-       ¤ë¾ì¹ç¤Ï̵¸ú¤È¤·¤¿.
-
-       * src/mspells2.c 1.53:
-       ¥Ú¥Ã¥È¤Î'B'¤¬ÅꤲÍî¤È¤·¤ò»È¤¦¾ò·ï¤ò, ¹¶·âËâË¡µö²Ä¤«¤Ä¥Æ¥ì¥Ý¡¼¥È·Ïµö²Ä
-       ¤Î¾ì¹ç¤Î¤ß¤Ë¸ÂÄê.
-
-       * src/mspells1.c 1.57, src/mspells2.c 1.52:
-       ¾èÇÏÃæ¤Î¥×¥ì¥¤¥ä¡¼¤¬'B'·Ï¤ÎÅꤲÍî¤È¤·¤ò¼õ¤±¤¿¾ì¹ç¤ÏξÊý¤Ë¥À¥á¡¼¥¸¤¬¹Ô
-       ¤¯¤è¤¦¤ËÊѹ¹.
-
-       * lib/edit/r_info.txt 1.20:
-       ¥¯¥ê¥¹¥¿¥ë¡¦¥É¥ì¥¤¥¯, ¥°¥ì¡¼¥È¡¦¥¯¥ê¥¹¥¿¥ë¡¦¥É¥ì¥¤¥¯¤ËATTR_CLEARÄɲÃ.
-
-       * src/cave.c 1.112:
-       midpoint¤Î¼è¤êÊý¤¬(¥â¥ó¥¹¥¿¡¼¤Î°ÌÃÖ + ¥×¥ì¥¤¥ä¡¼¤Î°ÌÃÖ)/2¤Ë¸ÂÄꤵ¤ì¤Æ
-       ¤¤¤¿¤Î¤Ç, ¤·¤Ã¤«¤êÈæ¤ò¼è¤ë¤è¤¦¤ËÊѹ¹. ¤³¤ì¤Ë¤è¤ê, ¤Þ¤À¥â¥ó¥¹¥¿¡¼¸÷¸»
-       ¤¬¤ª¤«¤·¤«¤Ã¤¿¾ì¹ç¤Ë¤Ä¤¤¤Æ½¤Àµ¤·¤¿.
-
-       * src/defines.h 1.127, src/mspells1.c 1.56, src/mspells2.c 1.51, src/spells3.c 1.86:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Ë´Ø¤¹¤ëÊѹ¹.
-       * ¥¢¥ê¡¼¥ÊµÚ¤Ó¥â¥ó¥¹¥¿¡¼³ÊÆ®¾ì¤Î¥â¥ó¥¹¥¿¡¼¤Ï»ÈÍѤ·¤Ê¤¤¤è¤¦¤Ë¤·¤¿.
-       * ¥¯¥¨¥¹¥ÈÆâ, Å´¿Í¥â¡¼¥É¤Î¥×¥ì¥¤¥ä¡¼ÂоݤȤ¤¤Ã¤¿¾õ¶·¤Ç¤ÏÈ¿¥Æ¥ì¥Ý¡¼¥È
-         ¤¬¤Ê¤¯¤È¤â¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Ï̵¸ú¤Ç¤¢¤ë¤Î¤Ç, SMART¤Ê¥â¥ó¥¹¥¿¡¼¤Ï¤½¤Î
-         ¾ò·ï¤òÆɤ߼è¤ê¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤ò»È¤ï¤Ê¤¤¤â¤Î¤È¤·¤¿.
-
-       * src/cmd6.c 1.56, src/externs.h 1.129, src/mane.c 1.22, src/mspells2.c 1.50, src/mspells3.c 1.29, src/spells3.c 1.85:
-       ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Ç¤Î¥Æ¥ì¥Ý¡¼¥È¥Ð¥Ã¥¯¤ÈÅꤲÍî¤È¤·¤ò¼ÂÁõ. ¤³¤Î²áÄø¤Ç,
-       ¥â¥ó¥¹¥¿¡¼¤Î¥Æ¥ì¥Ý¡¼¥È¥Ð¥Ã¥¯¤Ë»È¤¦´Ø¿ô̾¤òteleport_to_player()¤«¤é
-       teleport_monster_to()¤ËÊѹ¹¤·, ¥×¥ì¥¤¥ä¡¼¤Î¾ì½ê¤Ë¸ÂÄꤻ¤º¤Ë»È¤¨¤ë¤è¤¦
-       ¤Ë¤Ê¤Ã¤¿.
-
-2003-07-03  nothere  <nothere@cvs>
-
-       * src/cave.c 1.111: ifʸ¤Î¥ß¥¹½¤Àµ. ¥³¥á¥ó¥ÈÄɲÃ.
-
-       * src/cave.c 1.110:
-       1.109¤Î½¤Àµ¤Ç, ÊÑ¿ô̾¤Î¥ß¥¹¤Ç¸÷¸»¥Õ¥é¥°Î©¤Æ¤Ë¥¨¥ó¥Ð¥°¤·¤¿¤Î¤Ç½¤Àµ.
-
-       * src/cave.c 1.109:
-       ÊɤÎü¤Ç¤Ï¤Ê¤¤°ÌÃÖ¤¬¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤ä°Å¹õ¸÷¸»¤Ç΢¤«¤é¾È¤é¤µ¤ì, ¸÷¸»
-       ¤¬ÊѤʰÌÃÖ¤«¤éϳ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤¨¤ë¾ì¹ç¤¬¤¢¤ë¸½¾Ý¤ò½¤Àµ. ¤Þ¤¿,
-       update_mon_lite()Ãæ¤Çmon_lite_hack()¤«mon_dark_hack()¤ò¸Æ¤ÖÉôʬ¤ò´Ø¿ô
-       ¥Ý¥¤¥ó¥¿¤Ç¤Þ¤È¤á¤¿.
-
-2003-07-02  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/attack.txt 1.10, lib/help/jattack.txt 1.8:
-       ÍýÎϤΥÀ¥á¡¼¥¸ÇÜΨ¤¬°ã¤Ã¤¿¡£x6 ¢ª x3.5
-
-2003-07-02  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.73, src/cmd6.c 1.55, src/externs.h 1.128, src/mane.c 1.21, src/mspells1.c 1.55, src/mspells2.c 1.49, src/mspells3.c 1.28, src/spells3.c 1.84:
-       ¥×¥ì¥¤¥ä¡¼¤È¥â¥ó¥¹¥¿¡¼¤Î¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤ò´Ø¿ôteleport_level()¤È¤·¤Æ
-       Åý¹ç. Åý¹ç¤ËÅö¤¿¤ê, ¹Í¤¨Êý¤Î°ìÉô¤ËTOband¤ò»²¹Í¤Ë¤·¤Æ¤¤¤ë. ¥â¥ó¥¹¥¿¡¼
-       ¤Î¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤È¤·¤Æ¤Î»ÅÍͤϼ¡¤ÎÄ̤ê.
-       * ¸ÇÄꥯ¥¨¥¹¥È¤Ê¤É¤È¤¤¤Ã¤¿¥×¥ì¥¤¥ä¡¼¤¬¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Ç¤­¤Ê¤¤¾õ¶·¤È
-         Æ±¤¸¾ò·ï¤Ç¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤¬Ìµ¸ú¤Ë¤Ê¤ë¤¬, ironman_downward ¤À¤±¤Ï
-         ¥â¥ó¥¹¥¿¡¼¤Ë¤Ï±Æ¶Á¤·¤Ê¤¤.
-       * ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Ç¤Î¥Æ¥ì¥Ý¡¼¥È¡¦¥ì¥Ù¥ë¤ò¼ÂÁõ. Èó¥æ¥Ë¡¼¥¯¤Î¥Æ¥ì¥Ý¡¼¥È
-         ÂÑÀ­¤Ç¤Ï¥»¡¼¥Ó¥ó¥°¥¹¥í¡¼¤»¤º¤Ë̵¸ú¤È¤·¤¿. ¤³¤ì¤ÏÀÄËâÆ»»Õ / ¤â¤Î¤Þ¤Í
-         »Õ¤Î¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤ËÂФ¹¤ëÈó¥æ¥Ë¡¼¥¯¤Î¥Æ¥ì¥Ý¡¼¥ÈÂÑÀ­¤Î°·¤¤¤ÈƱ¤¸
-         ¤Ç¤¢¤ë. ¤Þ¤¿, ¥×¥ì¥¤¥ä¡¼¤¬¾èÇϤ·¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤¬¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë
-         ¤ÎÂоݤǤ¢¤ë¾ì¹ç¤Ï¥×¥ì¥¤¥ä¡¼¤Î¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤È¤·¤Æ°·¤¦.
-       * ¥â¥ó¥¹¥¿¡¼³ÊÆ®¾ì¤Ç¤Ï¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Ï̵¸ú.
-
-2003-06-30  nothere  <nothere@cvs>
-
-       * src/mane.c 1.20:
-       ¤â¤Î¤Þ¤Í»Õ¤Î¥Æ¥ì¥Ý¡¼¥È¥Ð¥Ã¥¯¤Ë¤Ï¥Æ¥ì¥Ý¡¼¥ÈÂÑÀ­¤¬Ìµ»ë¤µ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò
-       ½¤Àµ.
-
-2003-06-29  nothere  <nothere@cvs>
-
-       * src/spells3.c 1.83:
-       ¥«¥ª¥¹ËâË¡ "µõ̵¾¤Íè" ¤Î*Ç˲õ*¥â¡¼¥É»þ¤Ë, 1/666¤Ç¥Õ¥í¥¢Á´¤Æ¤Î±Êµ×´ä°Ê
-       ³°¤ÎÊɤ¬¾²¤ËÊѤï¤Ã¤ÆµðÂç¤Ê¥¢¥ê¡¼¥Ê¤Ë¤Ê¤ê, ¥Õ¥í¥¢Ãæ¤Î¥â¥ó¥¹¥¿¡¼¤¬µ¯¤­
-       ¤ë¸ú²Ì¤¬È¯Æ°¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/cave.c 1.108, src/defines.h 1.126, src/externs.h 1.127, src/variable.c 1.42:
-       Êɤ¬Á´¤¯¤Ê¤¯¿¿¤ÎºÇÂç»ë³¦ÈÏ°Ï(Ⱦ·Â20, Áí¥°¥ê¥Ã¥É¿ô1149)¤ò¼è¤ë¾ì¹ç¤Ë,
-       »ë³¦ÈϰϤä¥â¥ó¥¹¥¿¡¼¸÷¸»ÈϰϤκƷ׻»¤Çtemp_*[]¤äredraw_*[]¤¬¥ª¡¼¥Ð¡¼
-       ¥Õ¥í¡¼¤·¤ÆÊѶòÈÚÅܤ¬Íî¤Á¤Æ¤¤¤¿¤Î¤Ç, ´ØÏ¢¤¹¤ë¥Ð¥Ã¥Õ¥¡¤ò¤µ¤é¤Ë³ÈÄ¥. ¤Þ
-       ¤¿, mon_lite_hack()¤ämon_dark_hack()¤Ç¤Ï¥Ð¥Ã¥Õ¥¡¤¬¤¢¤Õ¤ì¤Ê¤¤¤È²¾Äꤹ
-       ¤ë¤³¤È¤Ç, Èæ³Ó¤ò¸º¤é¤·¤¿.
-
-2003-06-28  nothere  <nothere@cvs>
-
-       * src/cave.c 1.107:
-       map_info()Ãæ¤Ç¤Î°Å¹õ¸÷¸»½èÍýÉôʬ¤ò¥Þ¥¯¥í¤Ë¤·¤ÆÀÚ¤êÎ¥¤·¤¿. ¤³¤Î¥Þ¥¯¥í
-       ¤Ï¤«¤Ê¤ê¶¯°ú¤ÊÀÚ¤êÎ¥¤·Êý¤Ë¤Ê¤Ã¤Æ¤ª¤ê, ²þÁ±¤Î;ÃϤ¢¤ê. ¤Þ¤¿, ÊɤäÌÚ¤Ï
-       ¿¿¤Ã°Å¤Ç¤Ï¤Ê¤¯°Å¤¤ÃÏ·Á¤Ë¤Ê¤ë¤è¤¦¤ËÊѹ¹. new_ascii_graphics¤¬Í­¸ú¤Î¾ì
-       ¹ç¤Ï¤½¤ÎÃÏ·Á°Í¸¤Î°Å¤¤ÃÏ·Á¤Ë, Ìµ¸ú¤Î¾ì¹ç¤ÏÃÏ·Á¤Ë´Ø¤ï¤é¤ºTERM_L_DARK¤Ë
-       ¤Ê¤ë.
-
-       * src/cmd1.c 1.87, src/defines.h 1.125, src/grid.c 1.16, src/rooms.c 1.40:
-       feat¤¬¾²¤Ç¤¢¤ë¤«¤É¤¦¤«¤ÎȽÄê(!(feat & 0x20))¤òÇí¤­½Ð¤·¤Î±é»»¤Ç¤Ï¤Ê¤¯
-       ¥Þ¥¯¥ífeat_floor()¤È¤·¤Æ¤Þ¤È¤á¤¿.
-
-       * lib/edit/r_info.txt 1.19:
-       ¥É¥é¥´¥ó²¤ÎÁÄ¡Ø¥°¥é¥¦¥ë¥ó¥°¡Ù¤Ï¸¶Åµ¾åÈô¤Ù¤Ê¤¤¥É¥é¥´¥ó¤Ç¤¢¤ë¤Î¤Ç,
-       CAN_FLY -> CAN_SWIM¤ÈÊѹ¹.
-
-       * src/cmd1.c 1.86:
-       ·õ½Ñ "ʧ¤¤È´¤±" ¤ä¶¸Àï»Îµ» "ÆÍ·â" ¤Ç, ¥â¥ó¥¹¥¿¡¼¤ÎÎ٤ˤ¢¤ëÊĤ¸¤¿¥É¥¢
-       ¤ËÊÉÈ´¤±¤¬¤Ê¤¤¾õÂÖ¤ÇËä¤Þ¤ë¤³¤È¤¬¤Ç¤­¤ë¥Ð¥°¤ò½¤Àµ. ¤³¤Î²áÄø¤Ç,
-       player_can_enter()¤ò¾¯¤·À°Íý.
-
-       * src/xtra1.c 1.76:
-       health_redraw()¤Èriding_health_redraw()¤òÅý¹ç¤·, Åý¹ç¤µ¤ì¤¿´Ø¿ô¤ËÂФ·
-       ¥³¡¼¥ÉÀ°Íý.
-
-       * src/mane.c 1.19, src/mind.c 1.26:
-       ËâÎϾõî¤ò¤Þ¤Í¤¿¾ì¹ç¤äÎýµ¤½Ñ "¤¤¤Æ¤Ä¤¯ÇÈÆ°" ¤ò»È¤Ã¤Æ¥â¥ó¥¹¥¿¡¼¤Î̵Ũ
-       ²½¤ò¾Ãµî¤·¤¿¾ì¹ç¤Ë, ¥â¥ó¥¹¥¿¡¼¤¬¥¿¡¼¥ó¤ò¾ÃÈñ¤·¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/hissatsu.c 1.26:
-       ·õ½Ñ "ÃÏÁö¤ê", "¸×ÉúÀäÅáÀª" ¤Ç´üÂÔÃͤò·×»»¤¹¤ëºÝ¤Ë, ÀÚ¤ìÌ£¥Õ¥é¥°¤Ë¤è
-       ¤ëÉôʬ¤À¤±¤Ï´ÕÄêÁ°¤È´ÕÄê¸å¤Ç·×»»¤¬°ã¤¦¤È¤¤¤¦¥Ð¥°¤ò½¤Àµ.
-
-       * src/externs.h 1.126, src/hissatsu.c 1.25, src/mind.c 1.25, src/spells1.c 1.71, src/spells2.c 1.78:
-       ·õ½Ñ / Ç¦½Ñ "Æþ¿È" ¤Ç¥×¥ì¥¤¥ä¡¼¤¬Ä¶¤¨¤é¤ì¤Ê¤¤ÃÏ·Á¤òĶ¤¨¤é¤ì¤Æ¤·¤Þ¤¦¤Î
-       ¤ò½¤Àµ. Æþ¿È¤Î¤¿¤á¤Ëproject()¤Ë¤³¤ì°Ê¾å¤Îhack¤ò²Ã¤¨¤ë¤Î¤ÏÆÀºö¤Ç¤Ï¤Ê¤¤
-       ¤ÈȽÃǤ·, Æþ¿È¤òÊÌ´Ø¿ô¤È¤·¤ÆºÆ¹½À®¤·¤¿. ¤³¤Î²áÄø¤Ç°Ê²¼¤ÎÊѹ¹¤ä½¤Àµ¤ò
-       ´Þ¤à.
-       * Æþ¿È¤Î°ÜÆ°ÃÏÅÀ¤Ë¥×¥ì¥¤¥ä¡¼¤«¤é5¥Þ¥¹Ì¤Ëþ¤Î°ÌÃÖ¤ò»ØÄꤷ¤Æ¤âɬ¤º5¥Þ¥¹
-         Áö¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ. »ØÄꤷ¤¿°ÌÃ֤˻ߤޤì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿.
-       * »ØÄêÄ̤ê¤Î¥¿¡¼¥²¥Ã¥È¤ò¹¶·â¤Ç¤­¤¿»þ¤Ï±Ñ¸ìÈǤ˹ç¤ï¤»¤ÆÆüËܸìÈǤǤâ
-         ¥¿¡¼¥²¥Ã¥È¤Î¥â¥ó¥¹¥¿¡¼Ì¾¤ò½ñ¤¯¤è¤¦¤ËÊѹ¹.
-       * project()¤«¤é¤ÏÆþ¿È¤Îhack¤òºï½ü.
-
-2003-06-26  nothere  <nothere@cvs>
-
-       * src/melee2.c 1.69:
-       ¥â¥ó¥¹¥¿¡¼¤¬¿Ê²½¤·¤¿ºÝ¤Ëcur_num¤¬Àµ¤·¤¯Áý¸º¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ.
-
-       * src/cmd1.c 1.85, src/cmd2.c 1.52, src/defines.h 1.124, src/melee1.c 1.37, src/melee2.c 1.68, src/monster2.c 1.75, src/mspells1.c 1.54, src/mspells2.c 1.48, src/mspells3.c 1.27, src/spells1.c 1.70, src/spells2.c 1.77:
-       ¤¢¤ä¤·¤¤±ÆÅù¤Ç¥â¥ó¥¹¥¿¡¼¤Î³°¸«¤¬°ã¤Ã¤Æ¤¤¤ë¾õÂ֤ǥâ¥ó¥¹¥¿¡¼¤¬ÂÑÀ­¤Ê¤É
-       ¤ò¼¨¤·¤¿¾ì¹ç¤Ë, ¤½¤Î¥Õ¥é¥°¤¬¥×¥ì¥¤¥ä¡¼¤¬Ä¾ÀܤÏÃΤé¤Ê¤¤¤Ï¤º¤Î¥â¥ó¥¹
-       ¥¿¡¼¤ÎÀµÂΤÎr_info¤Ëµ­Ï¿¤µ¤ì¤ë¥Ð¥°¤ò½¤Àµ. ¤Ê¤ª, ¤³¤Î²áÄø¤Ç°Ê²¼¤ÎÊѹ¹
-       ¤ò´Þ¤à.
-       * Áý¿£¥â¥ó¥¹¥¿¡¼¤¬¤¢¤ä¤·¤¤±Æ¤Ë±£¤ì¤Æ¤¤¤ë¾ì¹ç¤ÏÁý¿£¤·¤¿¥â¥ó¥¹¥¿¡¼¤â¤¢
-         ¤ä¤·¤¤±Æ¤È¤Ê¤ë¤è¤¦¤ËÊѹ¹. Æ±ÍͤË, ap_r_idx¤Ç³°¸«¤òÊѤ¨¤¿¥â¥ó¥¹¥¿¡¼
-         ¤ò¥¯¥í¡¼¥ó¤·¤¿¾ì¹ç¤Ï³°¸«¤ò°ú¤­·Ñ¤°¤è¤¦¤ËÊѹ¹.
-       * ¶¸µ¤¤ÎȽÄê¤Ï³°¸«¤ò»È¤¦¤³¤È¤È¤·¤¿. ¤¢¤ä¤·¤¤±Æ¤Ê¤É¤Ë±£¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï
-         ¶¸µ¤¤¬È¯´ø¤µ¤ì¤Ê¤¤¤È¤¤¤¦»ëÅÀ¤«¤é. ¤¿¤Ì¤­¤¬Â¿¾¯¶¯¤¯¤Ê¤ë.
-
-       * lib/edit/r_info.txt 1.18:
-       HURT_LITE¥â¥ó¥¹¥¿¡¼¤Î°Å¹õÂÑÀ­Ä´À°¤Î³¤­. ¥ê¥Ã¥Á·Ï¤Î²¼µé¼ï¤ä, ¹õ¤ä°Ç¤Ë
-       ´Ø¤ï¤é¤Ê¤¤¥â¥ó¥¹¥¿¡¼¤«¤é¤ÏRES_DARK¤òºï½ü. ¤Þ¤¿, ±ê¤ÎÀº¤ÎÀâÌÀ¤Î½¤Àµ:
-       "¥¯¥È¥¥¥°¥¢" -> "¥¯¥È¥¥¥°¥¡".
-
-       * lib/edit/r_info.txt 1.17:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÂÑÀ­¤Ë´Ø¤¹¤ëÏ䷹礤¤Î·ë²Ì¤«¤é¤ÎÊѹ¹.
-       * ¥¹¥Ú¡¼¥¹¡¦¥â¥ó¥¹¥¿¡¼, ³¥¿§¤ÎΫå¼Ô, ¹õ¤­Î«Ã¥¼Ô, À¸¤±¤ëµõ̵¡Ø¥Ì¥ë¡Ù
-         ¤ËRES_DARKÄɲÃ.
-       * Åà¤Ã¤¿µåÂÎ, ¥³¡¼¥ë¥É¡¦¥Ü¥ë¥Æ¥Ã¥¯¥¹, É¹¤Î¥¨¥ì¥á¥ó¥¿¥ë¤ËHURT_FIRE
-         ÄɲÃ.
-       * Ä·¤Í¤ë²Ð¤Î¶Ì, ²Ð¤Î¥¹¥Ô¥ê¥Ã¥È, ¥Õ¥¡¥¤¥¢¡¦¥Ü¥ë¥Æ¥Ã¥¯¥¹, ²Ð¤Î¥¨¥ì¥á¥ó
-         ¥¿¥ë¤ËHURT_COLDÄɲÃ.
-       * ¥¢¡¼¥¹¡¦¥Ï¥¦¥ó¥É¤ËHURT_ROCKÄɲÃ.
-       * »þ¸ÂÇúÃƤËRES_TIMEÄɲÃ.
-       * ¥×¥é¥º¥Þ¡¦¥Ü¥ë¥Æ¥Ã¥¯¥¹, ¥×¥é¥º¥Þ¡¦¥Ï¥¦¥ó¥É¤ËIM_ELECÄɲÃ.
-       * ±ê¤ÎÀº¤ËAURA_ELECÄɲÃ.
-       * ¥½¡¼¥µ¥é¡¼, Ï·¥½¡¼¥µ¥é¡¼¤ËSMARTÄɲÃ.
-       * ¥¼¥Õ¥¡¡¼¥í¡¼¥É¤«¤éDROP_SKELETON, DROP_CORPSEºï½ü.
-       * Ì½³¦¥Ï¥¦¥ó¥É¤ËSELF_DARK_1ÄɲÃ.
-       * ÊѸ¸¤ÎËâ¸ø, ¶ØÃǤθî¤ê¼ê, ¡Ø¥·¥å¥Þ=¥´¥é¥¹¡Ù, Ç礤¤¦¤Í¤ëº®Æ١إʥ¤¥¢
-         ¥ë¥é¥È¥Û¥Æ¥Ã¥×¡Ù¤ËRES_CHAOÄɲÃ.
-       * »àÅ·»È¡Ø¥¢¥º¥ê¥¨¥ë¡Ù¤Ç, RES_LITE -> RES_DARK.
-       * À¸¤±¤ë±ê¡Ø¥¯¥È¥¥¥°¥¡¡Ù¤ËAURA_ELEC, IM_ELECÄɲÃ.
-       * Çò±ê¤Î¥Ð¥ë¥í¥°¡Ø¥ë¥ó¥´¥ë¥·¥ó¡Ù¤ËAURA_FIREÄɲÃ.
-       * µðÂ祵¥¤¥Ð¡¼¥ï¥¤¥¢¡¼¥àÅ·»È°­Ëâ¥ê¥Ã¥Á¤ËELDRITCH_HORROR, RIDINGÄɲÃ,
-         HURT_LITEºï½ü.
-       * Ê¬²ò¥Ü¥ë¥Æ¥Ã¥¯¥¹¤ËKILL_ITEMÄɲÃ.
-
-       * src/files.c 1.120:
-       get_rnd_line()¤ÎÂоݤˤʤë¥Õ¥¡¥¤¥ë¤òÆɤó¤ÀºÝ¤Ë, ÆâÍƤ¬¤Ê¤¤¥¨¥ó¥È¥ê¤ò
-       Æɤó¤À¾ì¹ç¤Ï¥¨¥é¡¼¤È¤·¤Æ-1¤òÊÖ¤¹¤è¤¦¤Ë¤·¤¿. ¤³¤ì¤Ë¤è¤ê, ¤½¤Î¤è¤¦¤Ê¥¨
-       ¥ó¥È¥ê¤òÆɤó¤ÀºÝ¤Ë¥Ð¥Ã¥Õ¥¡¤¬²õ¤ì¤¿¤è¤¦¤Ë¸«¤¨¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-06-25  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.16:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÂÑÀ­¤Ë´Ø¤¹¤ëÏ䷹礤¤Ç·è¤Þ¤Ã¤¿¤è¤¦¤ËÂÑÀ­¤òÄ´À°¤·¤¿.
-       * ¡Ø¥°¥ì¡¼¥¿¡¼ÃϹöËâË¡¤ª¤Ð¤±¥­¥Î¥³=¥¯¥¤¥ë¥¹¥ë¥°¿Í´Ö¡Ù, ¶â̵¹¤¤Î»ØÎØ,
-         ¥«¥¡¥¦, ¤»¤Ã¤«¤¯¤À¤«¤é¡Ø¥³¥ó¥Ð¥Ã¥È±ÛÁ°¡Ù¤ËÁ´¾å°ÌÂÑÀ­¤òÄɲÃ.
-       * ¡ØÃá½ø¤Î¥æ¥Ë¥³¡¼¥ó¡Ù¤Ë°Å¹õ¤ÈÇËÊҤȥ«¥ª¥¹°Ê³°¤Î¾å°ÌÂÑÀ­¤òÄɲÃ.
-       * º®ÆÙ¤ËÃϹö°Ê³°¤ÎÁ´¾å°ÌÂÑÀ­¤òÄɲÃ.
-       * ¡ØÇ˲õ¥¹¥ë¼Ô¡Ù¤ËÎô²½, ¥Õ¥©¡¼¥¹, ÃÙÆß, ½ÅÎÏÂÑÀ­¤òÄɲÃ.
-       * ¥¤¥ó¥¿¡¼¥Í¥Ã¥È¡¦¥¨¥¯¥¹¥×¥í¡¼¥À¡¼¤Ë°ø²Ìº®Íð°Ê³°¤ÎÁ´¾å°ÌÂÑÀ­¤òÄɲÃ.
-       * ¶â¿§¤Î²ø¿Í¡Ø¥ï¥Ã¥Ï¥Þ¥ó¡Ù¤ËÎô²½, ¥Õ¥©¡¼¥¹, ÃÙÆß, »þ´ÖµÕž, ½ÅÎÏÂÑÀ­
-         ¤òÄɲÃ.
-       * Ä¶¥¨¥ê¡¼¥È¡¦¥Ñ¥é¥Ç¥£¥ó¤ËÁ®¸÷, °Å¹õ, ÇËÊÒ, ¹ì²», ¥«¥ª¥¹, »þ´ÖµÕžÂÑ
-         À­¤òÄɲÃ.
-       * Ë±Ñà¤Ë¥×¥é¥º¥ÞÂÑÀ­¤òÄɲÃ.
-       * Ä¶¿Í¡Ø¥í¥Ã¥¯¡Ù, ¹ÄÄë¡Ø¥ì¥¤¥¶¡¼¥¯¡Ù, ¶ä²Ï¹ÄÄë¡Ø¥«¥ë¡¦¥À¡¼¥àIIIÀ¤¡Ù¤Ë
-         »þ´ÖµÕžÂÑÀ­¤òÄɲÃ.
-       * º®Æ٤Υµ¥Þ»Õ¡Ø¥Ç¥£¥ª¥Ë¥½¥¹¡Ù¤ËÁ®¸÷, ÇËÊÒ, ¹ì²», ¥«¥ª¥¹ÂÑÀ­¤òÄɲÃ.
-       * º®Æ٤β¦Â², Àþ¤Îµð¾¢¡Ø¥É¥ï¡¼¥­¥ó¡Ù, ¥¢¥ó¥Ð¡¼¤Î¶¸µ¤¤ÎÌ´Á۲ȡإ֥é¥ó
-         ¥É¡Ù, ½÷Ëâ½Ñ»Õ¡Ø¥Õ¥£¥ª¥Ê¡Ù, ¥¢¥ó¥Ð¡¼¤Î²¦¡Ø¥ª¥Ù¥í¥ó¡Ù¤Ë¥«¥ª¥¹ÂÑÀ­¤ò
-         ÄɲÃ.
-       * ÍŽѻաإµ¥¦¥í¥ó¡Ù, Ì½²¦¡Ø¥â¥ë¥´¥¹¡Ù¤Ë°Å¹õÂÑÀ­¤òÄɲÃ.
-
-2003-06-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info.txt 1.15: ¥¤¥ó¥Ñ¥¯¥È¥Ï¥¦¥ó¥É¤ÎÀâÌÀʸ¤ÎÆüËܸìÌõÊѹ¹¡£
-
-2003-06-24  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.14:
-       ¥·¥ã¥É¥¦¡¦¥Ï¥¦¥ó¥É¤«¤éSELF_DARK_?ºï½ü. ½øÈפΥâ¥ó¥¹¥¿¡¼¤È¤·¤Æ¤ä¤ê²á¤®
-       ¤Ç¤¢¤Ã¤¿.
-
-       * src/object2.c 1.87:
-       ÃÃÌê»Õ¤ÎpvalǽÎϤΥ¨¥Ã¥»¥ó¥¹¤ÎÉղäÏÉé¤Îpval¤Î¥¢¥¤¥Æ¥à¤Ë¤Ï»È¤¨¤Ê¤¤¤è
-       ¤¦¤ËÊѹ¹.
-
-2003-06-23  nothere  <nothere@cvs>
-
-       * src/object2.c 1.86: ÃÃÌê»Õ¥³¥Þ¥ó¥É¤Ë´Ø¤¹¤ë½¤Àµ¤ÈÊѹ¹.
-       * Éé¤Îpval¤Î¥¢¥¤¥Æ¥à¤ËpvalǽÎϤΥ¨¥Ã¥»¥ó¥¹¤òÉղ乤ë¤È, µÕ¤Ë¥¨¥Ã¥»¥ó
-         ¥¹¤òÆÀ¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-       * Äɲù¶·â¤Î¥¨¥Ã¥»¥ó¥¹Éղûþ¤ËɬÍפʥ¨¥Ã¥»¥ó¥¹¤¬É½¼¨¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤
-         Àµ.
-       * Éé¤ÎpvalǽÎϤΥ¢¥¤¥Æ¥à¤Ë¥¨¥Ã¥»¥ó¥¹¤òÉղ乤ë¾ì¹ç¤Ïpval==0¤Î¾ì¹ç¤ÈƱ
-         Íͤ˿ôÃÍ»ØÄêÆþÎϤȤ·, Éé¤ÎÃͤò½¤Éü¤¹¤ë¤¿¤á¤Ë¤ÏÉáÄ̤˶¯²½¤¹¤ë¤Î¤ÈƱ
-         Åù¤Î¥¨¥Ã¥»¥ó¥¹¤ò¾ÃÈñ¤¹¤ë¤â¤Î¤È¤·¤¿.
-       * Éé¤Îpval¤ÎÉð´ï¤ËÄɲù¶·â¤Î¥¨¥Ã¥»¥ó¥¹¤òÉղä·¤¿¾ì¹ç¤Ï1-pvalÇܤÎÄɲÃ
-         ¹¶·â¤Î¥¨¥Ã¥»¥ó¥¹¤ò¾ÃÈñ¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/melee2.c 1.67:
-       Áý¿£¥â¥ó¥¹¥¿¡¼¤¬Áý¿£¤·¤¿ºÝ¤Ë, ¿·¤·¤¯Áý¤¨¤¿¥â¥ó¥¹¥¿¡¼¤¬¸«¤¨¤Ê¤¯¤Æ¤âÁý
-       ¿£¤¹¤ë¤³¤È¤¬»×¤¤½Ð¤Ë»Ä¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/cmd1.c 1.84, src/hissatsu.c 1.24, src/monster2.c 1.74, src/spells1.c 1.69:
-       RF3_NONLIVING¤Î»²¾È¤òmonster_living()¤Ç¤Þ¤È¤á¤é¤ì¤ëÉôʬ¤ò¤Þ¤È¤á¤¿. ¤³
-       ¤ì¤Ë´ØÏ¢¤·, °Ê²¼¤Î½¤Àµ¤ò´Þ¤à.
-       * Ëâ½Ã»È¤¤¤¬¥â¥ó¥¹¥¿¡¼¤ò¥â¥ó¥¹¥¿¡¼¡¦¥Ü¡¼¥ë¤ÇÊá¤é¤¨¤ä¤¹¤¤¾ò·ï¤¬¤ª¤«¤·
-         ¤¯, ÌµÀ¸Êª/¥¢¥ó¥Ç¥Ã¥É/¥Ç¡¼¥â¥ó¤Î¤ßÊá¤é¤¨¤ä¤¹¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-       * »à¤Î¸÷Àþ¤ò¥â¥ó¥¹¥¿¡¼¤ËÅö¤Æ¤¿»þ¤ÎȽÄê¤Ë¥Ç¡¼¥â¥ó¤Ç¤¢¤ë¤³¤È¤òÄɲÃ.
-
-       * src/melee1.c 1.36:
-       RES_ALL»ý¤Á¤ËÂФ·¤ÆÀ»¤Ê¤ë¥ª¡¼¥é¤ÈÆ®µ¤¥ª¡¼¥é¤ò̵¸ú¤Ë¤·¤¿.
-
-2003-06-22  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.13:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÂÑÀ­¤ÎÄ´À°. Ï䷹礤¤Ë¤è¤ëÊѹ¹ÅÀ¤Ï¼¡¤ÎÄ̤ê.
-       * HURT_LITE¤Î°ú·Ñ¤®¤ÇRES_DARK¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤¿Éôʬ¤ÎÄ´À°. ¥¢¥ó¥Ç¥Ã¥É¤ä
-         ¥Ç¡¼¥â¥ó¤ËRES_DARK¤¬¤¢¤ë¾ì¹ç¤Ï¸¶Â§¤È¤·¤Æ¤Þ¤À»Ä¤·¤Æ¤¤¤ë.
-       * GHB/LHB¤Ë¤ÏRES_ALL¤ÈRES_TELE°Ê³°¤ÎRES_*¤òÄɲÃ.
-       * ¡ØÃá½ø¤Î¥æ¥Ë¥³¡¼¥ó¡Ù, ¥Ó¥ë¥À¡¼Äë¹ñÄ벦¡Ø¥ÜÄë¥Ó¥ë¡Ù¤«¤éRES_SHARºï½ü.
-       * ¥¢¥ë¥³¥ó°Ê¾å¤ÎÁ±ÎɤÊÅ·»È (¥æ¥Ë¡¼¥¯´Þ¤à) ¤ËRES_LITEÄɲÃ.
-       * ÂÄÅ·»È¤ËRES_DARKÄɲÃ.
-       * Á´¤Æ¤Ë¤·¤Æ°ì¤Ä¤Î¤â¤Î¡Ø¥è¥°=¥½¥È¡¼¥È¡Ù, ¡Ø¥Ç¥£¥ª¡¦¥Ö¥é¥ó¥É¡¼¡Ù, »þ¤ò
-         Åý¤Ù¤ë¼Ô¡Ø¥ê¥Á¥ã¡¼¥É¡¦¥¦¥©¥ó¡Ù¥¿¥¤¥¿¥ó²¤Î²¦¡Ø¥¯¥í¥Î¥¹¡Ù¤ËRES_TIME
-         ÄɲÃ.
-       * ¥µ¥¤¥ä¿Í¡Ø¥Ê¥Ã¥Ñ¡Ù¤ËRES_WALLÄɲÃ.
-
-       * src/cave.c 1.106:
-       ¥¿¥¤¥ë»þ¤Î°Å¹õ¸÷¸»¤Îɽ¼¨¤È¤·¤Æ̤ÃΤÎÃÏ·Á¤Î¥¿¥¤¥ë¤ò»È¤¦¤³¤È¤È¤·¤¿.
-
-       * src/cave.c 1.105:
-       view_special_lite, view_granite_lite, new_ascii_graphics¤¬Ìµ¸ú¤À¤È,
-       ¥â¥ó¥¹¥¿¡¼¤Î°Å¹õ¸÷¸»¤Ç¾È¤é¤µ¤ì¤¿¥°¥ê¥Ã¥É¤¬°Å¤¯¤Ê¤é¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿.
-       ¤Þ¤¿, °Å¹õ¸÷¸»¤Ë´Ø¤·¤ÆMogami¤µ¤ó¤è¤ê "°Å¹õ¸÷¸»¤Ï´°Á´¤Ë¹õ¤ÎÊý¤¬¤è¤¤"
-       ¤È¤¤¤¦»ØŦ¤ò¼õ¤±¤¿. ¤³¤ì¤é¤Ë¤è¤ê, Á°½Ò¤Î¥ª¥×¥·¥ç¥ó¤Ë¤è¤é¤º°Å¹õ¸÷¸»¤Î
-       ÈϰϤÏTERM_DARK, ¹õ¤È¤·¤¿. ¤Ê¤ª, CAVE_MARK¤¬¤¢¤ë¤è¤¦¤ÊÉôʬ¤Ï¼ÂºÝ¤Ï̤
-       ÃΤǤϤʤ¤¤Î¤Ç, ¥«¡¼¥½¥ë¤òÅö¤Æ¤ì¤ÐÃÏ·Á̾¤¬Æɤá¤ë¤·, ¥È¥é¥Ã¥×Åù¤¬¤¢¤ì
-       ¤Ð'l'¤Ç¤Î¥«¡¼¥½¥ë¤ÏÈô¤Ö. ¤¢¤¯¤Þ¤ÇÃÏ·Á¤¬¹õ¤¯À÷¤Þ¤ë¤À¤±¤Ç¤¢¤ê, ¤³¤ì¤é
-       ¤Ï»ÅÍͤȤ·¤Æ»Ä¤¹.
-
-2003-06-21  nothere  <nothere@cvs>
-
-       * src/cave.c 1.104, src/files.c 1.119, src/monster2.c 1.73, src/types.h 1.33, src/xtra1.c 1.75:
-       µÛ·ìµ´, [µÛ·ìµ´]¤Î1¥Þ¥¹°Å»ë¤ò¼è¤ê²¼¤², °ÊÁ°¤Î±Êµ×¸÷¸»¤ËÌᤷ¤¿. ¤Ê¤ª,
-       °Ê²¼¤Î½¤Àµ¤ò´Þ¤à.
-       * update_mon_lite()Æâ¤Ç, ¸Â³¦¤Îµ÷Î¥¤Ï¥â¥ó¥¹¥¿¡¼¤Î¥ë¡¼¥×°ÊÁ°¤Ë·×»»¤·¤Æ
-         ¤ª¤¯¤è¤¦¤Ë½¤Àµ.
-       * À­³Ê¤¤¤«¤µ¤Þ¤ÎǦ¼Ô¤Ç, 'C'ɽ¼¨¤Ç¼«Ê¬¼«¿È¤Ë¸÷¸»¤¬¤¢¤ë¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Æ
-         ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * lib/edit/r_info.txt 1.12, src/bldg.c 1.40, src/cmd1.c 1.83, src/cmd2.c 1.51, src/defines.h 1.123, src/init1.c 1.61, src/load.c 1.67, src/mane.c 1.18, src/melee1.c 1.35, src/melee2.c 1.66, src/monster1.c 1.40, src/monster2.c 1.72, src/mspells1.c 1.53, src/mspells2.c 1.47, src/mspells3.c 1.26, src/object2.c 1.85, src/rooms.c 1.39, src/save.c 1.36, src/spells1.c 1.68, src/spells2.c 1.76, src/spells3.c 1.82, src/types.h 1.32, src/xtra2.c 1.85:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÂÑÀ­¤Î¤¦¤Á, ÆÃÄê¥Õ¥é¥°¤Ë°Í¸¤¹¤ë°ÅÌÛ¤ÎÂÑÀ­¤ÎÂçÉôʬ¤òÌÀ¼¨
-       Åª¤Ê¥Õ¥é¥°¤È¤·¤Æʬ³ä. ¤³¤ÎÊѹ¹¤Ç, ¥Ö¥ì¥¹¤Ç¤·¤«ÆÀ¤é¤ì¤Ê¤«¤Ã¤¿ÂÑÀ­¤ò»ý
-       ¤Ä¥â¥ó¥¹¥¿¡¼, ¥Ö¥ì¥¹¤òÅǤ¯¤¬Âбþ¤¹¤ëÂÑÀ­¤Î¤Ê¤¤¥â¥ó¥¹¥¿¡¼, ÃϹöÌȱ֤Î
-       ¤Ê¤¤¥¢¥ó¥Ç¥Ã¥ÉÅù¤òºî¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿. ¼ç¤ÊÊѹ¹ÅÀ¤Ï°Ê²¼¤ÎÄ̤ê.
-       * ÂÑÀ­´ØÏ¢¤Î¥Õ¥é¥°¤Ï, NO_*°Ê³°¤ò¿·¤·¤¤¥Õ¥é¥°¥»¥Ã¥ÈRFR¤Ë°Üž.
-       * ÁýÀߤµ¤ì¤¿¥Õ¥é¥°¤ÏRES_LITE, RES_DARK, RES_SHAR, RES_SOUN, RES_CHAO,
-         RES_WALL, RES_INER, RES_TIME, RES_GRAV. ¤³¤ì¤é¤Ï³Æ¼ï¥Ö¥ì¥¹, ORC,
-         HURT_LITE, UNDEAD¤«¤éʬΥ. r_info.txtÆâ¤Ç¤ÏÂбþ¤¹¤ëÂÑÀ­¥Õ¥é¥°¤òÍ¿¤¨
-         ¤Æ¤¢¤ë.
-       * ¡Ø¥¹¥È¡¼¥à¥Ö¥ê¥ó¥¬¡¼¡Ù¤Î¥«¥ª¥¹ÂÑÀ­¥½¡¼¥¹¥Ï¥Ã¥¯¤ÏRES_CHAO¤ËÊѹ¹.
-       * º®ÍðÂÑÀ­(RES_CONFÁêÅö)¤Èº®Í𤷤ʤ¤Ç½ÎÏ(NO_CONF)¤Ïº®Í𤷤ʤ¤Ç½ÎϤËÅý
-         ¹ç¤·, ¥À¥á¡¼¥¸·Ú¸º¤Ï1/2¤À¤Ã¤¿¤Î¤ò3/(6+d6)¤È¤·¤¿.
-       * ¥¢¥ó¥Ç¥Ã¥É¤ÎÃϹöÌȱ֤ÏUNDEAD¤ÈRES_NETH¤¬Æ±»þ¤Ë¤¢¤ë¾ì¹ç¤ËÍ­¸ú.
-       * ¥»¡¼¥Ö¥Ç¡¼¥¿¥Ð¡¼¥¸¥ç¥ó¤ò1.5.0.3¤Ë.
-       * ¥»¡¼¥Ö¥Ç¡¼¥¿ÊÑ´¹»þ¤Ë, ¥Ö¥ì¥¹¤Îµ­²±¤¬¤¢¤ë¾ì¹ç¤ÏÂбþ¤¹¤ëÂÑÀ­¤¬¤¢¤ì¤Ð
-         µ­²±¤µ¤ì¤ë. »×¤¤½Ð¤Çɽ¼¨¤µ¤ì¤Æ¤¤¤¿ÂÑÀ­¤Îɽ¼¨¤ò°Ý»ý¤¹¤ë.
-       * restrict_monster_to_dungeon()¤òÂçÉý¤ËÀ°Íý.
-       * ±Ñ¸ìÈǤǥե©¡¼¥¹ÂÑÀ­¤¬¹ì²»ÂÑÀ­¤ÎÄÖ¤ê¤Ë¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ.
-
-2003-06-20  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.11, src/cave.c 1.103, src/cmd1.c 1.82, src/defines.h 1.122, src/dungeon.c 1.120, src/init1.c 1.60, src/load.c 1.66, src/melee2.c 1.65, src/monster1.c 1.39, src/monster2.c 1.71, src/mspells1.c 1.52, src/xtra1.c 1.74, src/xtra2.c 1.84:
-       ¥â¥ó¥¹¥¿¡¼¤Î°Å¹õ¸÷¸»¤ò¼ÂÁõ.
-       * HAS_DARK_{1|2}, SELF_DARK_{1|2}¤Ç»ÈÍѲÄǽ. ºÇÂçȾ·Â3.
-       * °Å¹õ¸÷¸»¤ÏÉáÄ̤θ÷¸»¤Ë¤ÏÉ餱¤ë.
-       * °Å¹õ¸÷¸»¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤ÏÂÐǦ¼Ô¤Ç¤âÁ®¸÷¤ò»È¤ï¤Ê¤¤.
-       * °Å¹õ¸÷¸»ÈϰϤǤÏǦ¼Ô¤ÎĶ±£Ì©¾ò·ï¤Ë±Æ¶Á¤·¤Ê¤¤. ¤³¤ì¤Ï°Å¹õ¸÷¸»»ý¤Á¤Ï
-         ¼«Ê¬¤Î°Ç¤«¤é¤ÎÉÔ°ÕÂǤÁ¤ò¼õ¤±¤Ê¤¤²ò¼á¤Ë¤è¤ë.
-       * °Å¹õ¸÷¸»¤ÎÃæ¤Ç¤âÀÖ³°Àþ¤ä¥Æ¥ì¥Ñ¥·¡¼/ESP¤ÏÍ­¸ú.
-       * Ï䷹礤¤Ç·è¤Þ¤Ã¤¿¥â¥ó¥¹¥¿¡¼¤Ë¼Â¸³Åª¤ËÍ¿¤¨¤Æ¤¢¤ë. ¥â¥ó¥¹¥¿¡¼¤Ç¤Î½¤
-         Àµ¤ÏɬÍפȻפï¤ì¤ë.
-
-       * src/cave.c 1.102, src/monster2.c 1.70:
-       Ç¦¼Ô¤Ï°Å°Ç¤Îƶ·¢¤ÇÃÏ·Á¤ä¥¢¥¤¥Æ¥à¤¬´Ý¸«¤¨¤À¤Ã¤¿¤¬, ¥â¥ó¥¹¥¿¡¼¤¬¤³¤ì¤Ë
-       ¹ç¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤¿¤á, MAX_SIGHTÈϰϤΥâ¥ó¥¹¥¿¡¼¤â¸«¤¨¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/externs.h 1.125, src/generate.c 1.66, src/monster2.c 1.69:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¤ÎÇÛÃÖ¥³¡¼¥É¤ò´Ø¿ô¤Ë¤Þ¤È¤á¤¿. ¤Þ¤¿, *Ç˲õ*Åù¤Ç¾Ã¤¨¤¿
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¤òalloc_monster()¤«¤éºÆÀ¸À®¤¹¤ë¾ì¹ç¤Ï, ¤½¤ì¤À¤±¤Ç¥â¥ó¥¹
-       ¥¿¡¼ÇÛÃÖ1²óʬ¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/cave.c 1.101, src/files.c 1.118, src/types.h 1.31, src/xtra1.c 1.73:
-       µÛ·ìµ´¤È[µÛ·ìµ´]¤Î±Êµ×¸÷¸»+1¤ò, ¼«Ê¬¤Î¼þ°Ï1¥Þ¥¹¤À¤±¤Î°Å»ë¤ËÊѹ¹.
-
-2003-06-19  nothere  <nothere@cvs>
-
-       * src/cave.c 1.100: Ç¦¼Ô¤Î°Å»ë¤Ë¤Ä¤¤¤Æ¤ÎÊѹ¹.
-       * view_unsafe_grids¤È¤Î·ó¤Í¹ç¤¤¤ò¹Í¤¨¤Æ, ¾²¤ò¸«¤¿¤À¤±¤Ç¤ÏCAVE_MARK¤¬
-         Î©¤¿¤Ê¤¤¤è¤¦¤ËÊѹ¹. »ë³¦Æâ¤Ë¤¢¤ë¤È¤­¤Ï¾²¤Ë¸«¤¨¤ë¤¬, ¤½¤Î¾²¤¬»ë³¦¤«
-         ¤éÎ¥¤ì¤¿¤é̤ÃΤÎÃÏ·Á¤â¤·¤¯¤Ï'x'¤Ë¤Ê¤ë.
-       * Ç¦¼Ô¤Î»ë³¦¤Ï¸÷¸»¤Î°ì¼ï¤È¤ß¤Ê¤·, Ç¦¼Ô¤Î»ë³¦¤Î¾²¤òCAVE_MARK¤Çµ­²±¤¹¤ë
-         ¤Î¤Ïview_torch_grids¤¬ON¤Î»þ¤È¤·¤¿.
-
-       * src/cave.c 1.99, src/defines.h 1.121, src/externs.h 1.124, src/variable.c 1.41, src/xtra1.c 1.72:
-       update_view(), update_lite(), update_mon_lite()¤Ç³Æ¥°¥ê¥Ã¥É¤ËÂФ·ºÇÂç
-       3²ó¤Þ¤Çnote_spot()¤Èlite_spot()¤¬¸Æ¤Ð¤ì¤ë¤Î¤Ç, ¤½¤ì¤é¤ò¾¯¤·¤Ç¤â¹â®²½
-       ¤¹¤Ù¤¯, update_stuff()Æâ¤ÇÁ°½Ò¤Îupdate_*()¤¬Á´¤Æ¸Æ¤Ð¤ì¤Æ¤«¤éºÇ¸å¤Ëɬ
-       Íפʲó¿ôʬ¤À¤±¤Înote_spot()¤Èlite_spot()¤ò¸Æ¤Ö»ÅÍͤËÊѹ¹.
-
-2003-06-17  nothere  <nothere@cvs>
-
-       * src/bldg.c 1.39, src/cmd1.c 1.81, src/files.c 1.117, src/types.h 1.30, src/xtra1.c 1.71:
-       ¾èÇÏ»þ¤Î¥é¥ó¥¹/¥Ø¥ô¥£¡¦¥é¥ó¥¹¤Î¥À¥¤¥¹¤Î¸Ä¿ô¥Ü¡¼¥Ê¥¹¤ò¹¶·â/ɽ¼¨»þ¤Î
-       hack¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯¥·¥¹¥Æ¥àŪ¤Ë°·¤¨¤ë¤è¤¦¤Ë, p_ptr->to_dd[2],
-       p_ptr->to_ds[2]¤È¤¤¤¦ÊÑ¿ô¤òƳÆþ¤·, ¤½¤ì¤ò»È¤Ã¤Æ¤Þ¤È¤á¤¿. to_dd/to_ds
-       ¤Î¹Í¤¨Êý¼«ÂΤÏTOband¤«¤é. ¤Ê¤ª, °Ê²¼¤ÎÊѹ¹¤ò´Þ¤à.
-       * ·õ½Ñ²È¤À¤Ã¤¿¤êMPÉÔ­¤Ç¤¢¤ëÅù¤ÎÍýͳ¤ÇÍýÎϥܡ¼¥Ê¥¹¤¬¼õ¤±¤é¤ì¤Ê¤¤¾ì¹ç
-         ¤ÏÉð´ï¾¢¤Ç¤ÏÍýÎϤθú²Ì¤òɽ¼¨¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-       * Ê¿¶Ñ¥À¥á¡¼¥¸É½¼¨ÆâÉô¤Ç¤ÎºÙ¤«¤¤½¤Àµ.
-
-       * src/bldg.c 1.38: ËþÊ¢»þ¤Ë¤Ï½É²°¤Ç¿©»ö¤ò¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/birth.c 1.73, src/dungeon.c 1.119, src/externs.h 1.123, src/load.c 1.65, src/monster1.c 1.38:
-       ¾Þ¶â¼ó¥æ¥Ë¡¼¥¯, ÆüÂؤï¤ê¾Þ¶â¼ó, ¥é¥ó¥À¥à¥¯¥¨¥¹¥¿¡¼·èÄê¤ò¤½¤ì¤¾¤ì´Ø¿ô
-       ¤Ë¤Þ¤È¤á¤ÆÀ°Íý. ¤³¤Î²áÄø¤Ç°Ê²¼¤ÎÊѹ¹¤È½¤Àµ¤ò´Þ¤à.
-       * 0.0.3¤Î¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤«¤éÊÑ´¹¤¹¤ëºÝ¤Ë, ÆüÂؤï¤ê¾Þ¶â¼ó¤Î¥ì¥Ù¥ë¤Î²¼¸Â
-         ¤¬MAX(Å´¹ö¤ÎÅþ㳬, 40)¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ÇMAX(Å´¹ö¤ÎÅþ㳬/2, 40)¤È¤Ê
-         ¤ë¤è¤¦¤Ë½¤Àµ.
-       * SPECIAL»ý¤Á¤È¤¤¤¦¤À¤±¤Ç¤Ï¾Þ¶â¼ó/¥¯¥¨¥¹¥¿¡¼¤«¤é³°¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤¿.
-         ¡Ø¥Ð¡¼¥Î¡¼¥ë=¥ë¥Ñ¡¼¥È¡Ù¤Ê¤É¤Ë´Ø¤·¤Æ¤Ï, ¥¯¥¨¥¹¥¿¡¼¤Ë¤â¾Þ¶â¼ó¤Ë¤â¤Ê¤Ã
-         ¤Æ¤Ï¤Ê¤é¤Ê¤¤¥â¥ó¥¹¥¿¡¼ID¤ò¤Þ¤È¤á¤¿´Ø¿ô¤òºî¤Ã¤ÆȽÄꤹ¤ë¤³¤È¤È¤·¤¿.
-         ¤³¤ì¤Ç, SPECIALµ»¤ò»ý¤Ä¥æ¥Ë¡¼¥¯¤ò¾Þ¶â¼ó/¥¯¥¨¥¹¥¿¡¼¤Ë¤Ç¤­¤ë.
-       * ¥»¡¼¥Ö¥Ç¡¼¥¿¥í¡¼¥É»þ¤Î¥é¥ó¥À¥à¥¯¥¨¥¹¥¿¡¼·èÄê¤Ç¤Î¥â¥ó¥¹¥¿¡¼¥Æ¡¼¥Ö¥ë
-         ºîÀ®¤ËÄ̾ï»þƱÍÍmonster_quest()¤¬»È¤ï¤ì¤ë¤è¤¦¤Ë½¤Àµ.
-
-2003-06-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/externs.h 1.122, src/main-x11.c 1.23, src/util.c 1.42:
-       X11¥Ý¡¼¥È¤Ë¥Þ¥¦¥¹¤Ë¤è¤ëcopy&pasteµ¡Ç½¤òscthangband¤è¤ê°Ü¿¢¡£
-
-       * src/defines.h 1.120:
-       »³¤¬ÍÏ´äή¤ÇÍϤ±¤ë»ö¤Ë¤Ä¤¤¤Æ¡¢cave_perma_grid()¤Ë¤ÏMOUNTAINÅù¤¬Æþ¤Ã¤Æ¤¤¤ë¤Î¤Ë¡¢
-       cave_perma_bold()¤Ë¤ÏÆþ¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Çñ¤Ê¤ë¥Ð¥°¤È·ëÏÀ¡£MOUNTAINÅù¤òÄɲä·¤¿¡£
-
-       * src/files.c 1.116:
-       ¥¢¥ó¥É¥í¥¤¥É¤Ç¤Ïexperience¤ÎÂå¤ê¤Ë Construction point (¶¯²½ÅÙ)¤È¸Æ¤Ö¤Î¤À¤¬¡¢
-       ±Ñ¸ìÈǤǰì²Õ½ê¤À¤±exp¤Îɽ¼¨¤¬»Ä¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2003-06-17  nothere  <nothere@cvs>
-
-       * src/cave.c 1.98, src/dungeon.c 1.118, src/externs.h 1.121, src/generate.c 1.65, src/wild.c 1.25:
-       ÃϾå¤ÇÌë¤Ë¤Ê¤Ã¤¿Ä¾¸å¤Ï¾², ÁðÃÏ, º½Ãϰʳ°¤Ïµ­²±¤Ë»Ä¤Ã¤Æ¤¤¤ë¤è¤¦¤ËÊѹ¹.
-       ¤Þ¤¿, Ìë¤Î³¹¤Ç¤Ï±Êµ×´ä¤¬¸÷¤é¤Ê¤¤¤¬¾ï¤Ëµ­²±¤Ë¤¢¤ë¤è¤¦¤ËÊѹ¹¤·, Å¹¤ä·ú
-       Êª¤Î¼þ°Ï¤òÌÀ¤ë¤¯¤·¤¿.
-
-2003-06-16  nothere  <nothere@cvs>
-
-       * src/mspells2.c 1.46:
-       ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Î¥Æ¥ì¥Ý¡¼¥È¡¦¥¢¥¦¥§¥¤¤Ç¤â¥â¥ó¥¹¥¿¡¼¤¬µ¯¤­¤ë¤è¤¦¤Ë½¤Àµ.
-       ¤Þ¤¿, ¥Ú¥Ã¥È¤Î¥Æ¥ì¥Ý¡¼¥ÈËâË¡¶Ø»ßÌ¿ÎáÍ­¸ú»þ¤Ï·Á¼°Åª¤Ë¥Æ¥ì¥Ý¡¼¥È¡¦¥Ð¥Ã
-       ¥¯, ¥Æ¥ì¥Ý¡¼¥È¡¦¥ì¥Ù¥ë¤â¶Ø»ß¤¹¤ë¤è¤¦¤ËÊѹ¹. ËâË¡¤½¤Î¤â¤Î¤Ï̤¼ÂÁõ¤Ç¤¢
-       ¤ë¤¬, º£¸å¤Î¤¿¤á¤Ë.
-
-       * src/mspells1.c 1.51:
-       ¥â¥ó¥¹¥¿¡¼¤¬³Ø½¬¤·¤¿¥×¥ì¥¤¥ä¡¼¤ÎÂÑÀ­¥Õ¥é¥°¤ò1/100¤Ç¥ê¥»¥Ã¥È¤¹¤ëºÝ¤Ë
-       m_ptr->smart¤ò»È¤Ã¤Æ¤¤¤ë¥¯¥í¡¼¥ó¥Õ¥é¥°¤Þ¤Ç¥¯¥ê¥¢¤·¤Æ¤·¤Þ¤¤, ¥¯¥í¡¼¥ó
-       ¤¬ËÜÅö¤Î¥â¥ó¥¹¥¿¡¼¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ. ¥¯¥í¡¼¥óÃϹö¤Ç¥¯
-       ¥í¡¼¥ó¤Î¤Ï¤º¤Î¥æ¥Ë¡¼¥¯¤òÅݤ·¤¿¤é¼Â¤ÏËÜʪ¤Î¥æ¥Ë¡¼¥¯¤À¤Ã¤¿¤È¤¤¤¦¥Ð¥°¤ò
-       ½¤Àµ¤·¤¿¤³¤È¤Ë¤â¤Ê¤ë.
-
-       * src/melee2.c 1.64:
-       ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Ç²¥¤ê¹ç¤Ã¤¿»þ¤Ë¥ª¡¼¥é¤ò¶ô¤é¤Ã¤¿¥â¥ó¥¹¥¿¡¼¤ÎÂÑÀ­¤¬µ­²±
-       ¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-       * src/cmd1.c 1.80:
-       ¥×¥ì¥¤¥ä¡¼¤¬ÃγФǤ­¤Æ¤¤¤Ê¤¤¥ª¡¼¥é»ý¤Á¥â¥ó¥¹¥¿¡¼¤ò²¥¤Ã¤Æ¤â, ¤½¤Î¥â¥ó
-       ¥¹¥¿¡¼¤Î»×¤¤½Ð¤Ë¥ª¡¼¥é¤¬µ­²±¤µ¤ì¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/cmd2.c 1.50:
-       ²Ð±ê/Î䵤¤Î°À­¤ÎÉÕ¤¤¤¿Ì𤬤½¤ì¤é¤Î°À­¤ò¼åÅÀ¤È¤¹¤ë¥â¥ó¥¹¥¿¡¼¤ËÅö¤¿¤Ã
-       ¤¿¾ì¹ç¤Ï¤ä¤ä¥À¥á¡¼¥¸¤¬¾å¤¬¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/monster2.c 1.68:
-       ²Ð±ê¥ª¡¼¥é¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤ÏÎä·ì¤«¤É¤¦¤«¤Ë´Ø¤ï¤é¤ºÀÖ³°Àþ»ëÎϤǸ«¤¨¤ë
-       ¤è¤¦¤ËÊѹ¹.
-
-       * src/cmd1.c 1.79, src/cmd2.c 1.49, src/externs.h 1.120:
-       ¾¢ËâË¡ "Éð´ï°À­ÉÕÍ¿" ¤ò³Ý¤±¤¿¾õÂ֤Ǽͷ⤷¤¿Ìð¤äÅꤲ¤¿Êª¤Ë¤â¹¶·â°À­
-       ¤¬Å¬ÍѤµ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * lib/edit/r_info.txt 1.10:
-       ¥·¥ã¥É¥¦¡¦¥É¥ì¥¤¥¯¤Ï¥Ç¥¹¡¦¥É¥ì¥¤¥¯¤Î²¼°Ì¤È¸«¤Æ¤¤¤¤¤È¤¤¤¦¤³¤È¤Ç, ¥·¥ã
-       ¥É¥¦¡¦¥É¥ì¥¤¥¯¤«¤é·Ð¸³ÃÍ15000¤Ç¥Ç¥¹¡¦¥É¥ì¥¤¥¯¤Ë¿Ê²½¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/cmd1.c 1.78, src/cmd2.c 1.48, src/defines.h 1.119, src/mane.c 1.17, src/melee1.c 1.34, src/melee2.c 1.63, src/monster1.c 1.37, src/mspells1.c 1.50, src/mspells3.c 1.25, lib/edit/r_info.txt 1.9:
-       ¥â¥ó¥¹¥¿¡¼¤Îµæ¶ËÂÑÀ­´ØÏ¢¤Î½¤Àµ.
-       * RF3_IM_????¤ÈRF3_RES_ALL¤ò¤Þ¤È¤á¤ë¥Þ¥¯¥í¤òºî¤Ã¤¿. ¤Þ¤¿, ¥ì¥Ù¥ë¥Æ¥ì
-         ¥Ý¡¼¥È¤Ç»È¤ï¤ì¤ëȽÄê¤Ç¤¢¤ë°ø²Ìº®ÍðÂÑÀ­RF3_RES_NEXU¤Ë¤â¥Þ¥¯¥í¤ÏÍÑ°Õ
-         ¤·¤¿. ¤³¤Î¥Þ¥¯¥í¤ò»È¤¨¤Ð, µæ¶ËÂÑÀ­¤¬¤¢¤ë¤À¤±¤Ç¤³¤ì¤é¤ÎÂÑÀ­¤Ë¤è¤ë¸ú
-         ²Ì¤ò¼õ¤±¤é¤ì¤ë¤è¤¦¤Ë¤Ê¤ë. Éð´ï°À­¤Ç¥À¥á¡¼¥¸¤¬Çܲ䷤ʤ¤, ¥ª¡¼¥éÈ¿
-         ·â¤ò¼õ¤±¤Ê¤¤Åù¤Î¸ú²Ì¤¬¼õ¤±¤é¤ì¤ë¤è¤¦¤Ë¤Ê¤ë.
-       * ¾åµ­¤Î½¤Àµ¤Ë¤è¤ê, ¤³¤ì¤é¤ÎÂнè¤Î¤¿¤á¤ËÍ¿¤¨¤é¤ì¤Æ¤¤¤¿¤Ï¤°¤ì¥á¥¿¥ë¤Î
-         IM_????¤ÏÉÔÍפˤʤ俤ΤÇ, ºï½ü.
-
-       * src/monster1.c 1.36:
-       ¥â¥ó¥¹¥¿¡¼¤Î»×¤¤½Ð¤ÇËâË¡¤Î¿ô¤¬Â¿¤¹¤®¤ë¤Èvp[64], color[64]¤ÎÇÛÎó³°¥¢¥¯
-       ¥»¥¹¤¬µ¯¤­¤ë²ÄǽÀ­¤¬¤¢¤Ã¤¿¤Î¤Ç, Ç°¤Î¤¿¤ávp[96], color[96]¤Ë½¤Àµ. ¤Þ
-       ¤¿, ¼Í·â¤ä¥í¥±¥Ã¥È¤È¤¤¤Ã¤¿inate¹¶·â¤Îɽµ­»þ¤Î "¡¢" ¤À¤±¤Ï¾¤Î¤â¤Î¤È
-       °ã¤Ã¤Æ¸ÄÊ̤ιÔÆ°¤Î¿§¤¬ÉÕ¤¤¤Æ¤¤¤¿¤Î¤Ç, Â¾¤Ë¹ç¤ï¤»¤ÆÇò¤¯¤·¤¿.
-
-       * src/monster1.c 1.35:
-       ¥â¥ó¥¹¥¿¡¼ËâË¡ "°Å°Ç" ¤È "Á®¸÷" ¤Îɽ¼¨¤Ë´Ø¤¹¤ë¥Ð¥°½¤Àµ.
-       * ¥×¥ì¥¤¥ä¡¼¤¬Ç¦¼Ô¤Ç¤¢¤ë¾ì¹ç¤Ç¤â¥â¥ó¥¹¥¿¡¼¤¬¸÷¤Ë¼å¤«¤Ã¤¿¤ê¥¢¥ó¥Ç¥Ã¥É
-         ¤Ç¤¢¤ë¾ì¹ç¤ÏÁ®¸÷¤ò»È¤ï¤Ê¤¤¤Î¤À¤¬, »×¤¤½Ð¤Ç¤Îɽ¼¨¤ÎºÝ¤ÎȽÄê¤Ë
-         r_flags3¤«¤éÆÀ¤¿¥Õ¥é¥°¤ò»È¤¦¤¿¤á, ¥¢¥ó¥Ç¥Ã¥É¤Ç¤¢¤ë¤³¤È¤ä¸÷¤Ë¼å¤¤¤³
-         ¤È¤ò¥×¥ì¥¤¥ä¡¼¤¬¤Þ¤ÀÃΤé¤Ê¤¤¾ì¹ç¤Ë¥â¥ó¥¹¥¿¡¼¤¬Á®¸÷¤ò»È¤¨¤ë¤«¤Î¤è¤¦
-         ¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-       * ±Ñ¸ìÈǤǠ"create light" ¤¬TERM_YELLOW¤Çɽ¼¨¤µ¤ì¤ë¤è¤¦¤Ë½¤Àµ.
-
-2003-06-15  nothere  <nothere@cvs>
-
-       * src/cave.c 1.97, src/monster2.c 1.67: ÏÀÍý±é»»¤Î»È¤¤Êý¤Î½¤Àµ.
-
-       * src/cave.c 1.96, src/cmd2.c 1.47, src/cmd5.c 1.72, src/effects.c 1.42, src/hissatsu.c 1.23, src/melee2.c 1.62, src/mind.c 1.24, src/racial.c 1.39, src/spells2.c 1.75, src/store.c 1.31, src/xtra2.c 1.83:
-       ¥â¥ó¥¹¥¿¡¼¸÷¸»¤ä¥â¥ó¥¹¥¿¡¼¼«¿È¤Îupdate¤¬Â­¤ê¤Ê¤¤Éôʬ¤Î½¤Àµ.
-
-2003-06-14  nothere  <nothere@cvs>
-
-       * src/cave.c 1.95, src/cmd1.c 1.77, src/cmd6.c 1.54, src/defines.h 1.118, src/dungeon.c 1.117, src/floors.c 1.20, src/generate.c 1.64, src/melee2.c 1.61, src/mind.c 1.23, src/monster1.c 1.34, src/monster2.c 1.66, src/mspells1.c 1.49, src/mspells2.c 1.45, src/object2.c 1.84, src/spells1.c 1.67, src/spells2.c 1.74, src/spells3.c 1.81, src/xtra2.c 1.82:
-       ¥×¥ì¥¤¥ä¡¼¤Î°ÌÃÖ¤òɽ¤¹py, px¤È¤ÎÈæ³Ó¤ò¥Þ¥¯¥íplayer_bold()¤Ë¤Þ¤È¤á¤¿.
-       ¤³¤Î²áÄø¤Ç°Ê²¼¤Î¥Ð¥°¤ò½¤Àµ.
-       * Å¨¥â¥ó¥¹¥¿¡¼¤Î¹¶·â¥¿¡¼¥²¥Ã¥ÈºÂɸ¤Ë¥×¥ì¥¤¥ä¡¼¤Î°ÌÃÖ¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Æ,
-         ¥×¥ì¥¤¥ä¡¼¤Ï¥¿¡¼¥²¥Ã¥È¤Î¾ì½ê¤«¤éÆ°¤¤¤Æ¤¤¤ë¾õ¶·¤Ç¥Ú¥Ã¥È¤«¤é¹¶·â¤ò¼õ
-         ¤±¤¿¾ì¹ç¤Ë, ¥×¥ì¥¤¥ä¡¼¤ÎºÂɸ¤¬¥¿¡¼¥²¥Ã¥ÈÃÏÅÀ¤ÎxºÂɸ¤«yºÂɸ¤Î¤É¤Á¤é
-         ¤«¤ÈÅù¤·¤¤¾ì¹ç¤Ï¥¿¡¼¥²¥Ã¥È¤¬ºÆÀßÄꤵ¤ì¤º, ¼Ð¤á¤ËÆ°¤¤¤Æ¤¤¤¿¾ì¹ç¤Ë¤Î
-         ¤ß¥¿¡¼¥²¥Ã¥È¤¬ºÆÀßÄꤵ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/cmd1.c 1.76, src/cmd4.c 1.93, src/cmd5.c 1.71, src/defines.h 1.117, src/dungeon.c 1.116, src/files.c 1.115, src/floors.c 1.19, src/load.c 1.64, src/melee1.c 1.33, src/melee2.c 1.60, src/monster2.c 1.65, src/mspells1.c 1.48, src/mspells2.c 1.44, src/spells1.c 1.66, src/spells2.c 1.73, src/xtra2.c 1.81:
-       monster_desc()¤ËÅϤ¹¥Õ¥é¥°¤Ï¿ôÃͤÎľÀÜ»ØÄê¤À¤Ã¤¿¤Î¤Ç, µ­¹æÄê¿ô²½. ´Ø
-       Ï¢¤·¤Æ, °Ê²¼¤Î½¤Àµ¤ò´Þ¤à.
-       * monster_desc()¤Ç½êÍ­³Ê¤òÆÀ¤ë¥³¡¼¥É¤ÏÆüËܸìÈǤǤϥ³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Ê¤¤
-         ¤è¤¦¤Ë½¤Àµ.
-       * make_attack_spell()¤Èmonst_spell_monst()Æâ¤Ç¤Îddesc¤Ï¼ÂºÝ¤Ï»È¤ï¤ì
-         ¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Çºï½ü. ¸¸³Ð¤ò̵»ë¤·¤¿¥â¥ó¥¹¥¿¡¼Ì¾¤Ïproject()¤ÇÍ¿¤¨
-         ¤é¤ì¤Æ¤¤¤ë.
-
-       * src/cave.c 1.94:
-       ATTR_CLEAR¤Çʸ»ú¤Î¸«¤¨¤ë¤Ï¤º¤Î¥â¥ó¥¹¥¿¡¼¤Î­¸µ¤¬TERM_DARK¤À¤È¥â¥ó¥¹
-       ¥¿¡¼¤Îʸ»ú¤¬¾Ã¤¨¤Æ¤·¤Þ¤¦¤Î¤Ç, ¤½¤Î¾ì¹ç¤Ï¥â¥ó¥¹¥¿¡¼¤ÎÀßÄ꿧¤ò»È¤¦¤è¤¦
-       ¤ËÊѹ¹.
-
-       * src/melee2.c 1.59:
-       ²¦êµ¤Î¥â¥ë¥É¤Ð¤é¤Þ¤­¤Ç, ¤Ð¤é»µ¤«¤ì¤¿¥â¥ë¥É¤¬¸«¤¨¤Æ½é¤á¤ÆÆüì¤Ê¹ÔÆ°¤¬
-       µ­Ï¿¤Ë»Ä¤ë¤è¤¦¤ËÊѹ¹.
-
-2003-06-13  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.70, src/externs.h 1.119, src/xtra1.c 1.70:
-       spell_categoly_name()¤ò²¿ÅÙ¤â¸Æ¤ÖɬÍפΤʤ¤Éôʬ¤ÎÀ°Íý. ¤Þ¤¿, ´Ø¿ô̾¼«
-       ÂΤÎtypo fix. ("categoly" -> "category")
-
-       * src/melee2.c 1.58:
-       get_moves()Æâ¤Ç, get_moves_aux()¤òɬÍפȤ»¤º¤ËÊý¸þ¤¬·è¤Þ¤ë¾ì¹ç¤Ï
-       get_moves_aux()¤ò¸Æ¤Ð¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/melee2.c 1.57, src/mspells1.c 1.47, src/mspells2.c 1.43:
-       ²¦êµ¤Î¥â¥ë¥É¤Ð¤é»µ¤­¤ò¼öʸ/¹¶·â¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯, Áý¿£¤Î°ì¼ï¤È¤·¤Æ¼ÂÁõ.
-       process_monster()Æâ¤ÇÁý¤¨¤ëÈæ³Ó¤Î²ó¿ô¤ÏSPECIAL¤Ê¤·¤Î¥â¥ó¥¹¥¿¡¼¤Ç1²ó,
-       ²¦êµ°Ê³°¤ÎSPECIAL¤¢¤ê¤Ç¤â2²ó¤Ëα¤Þ¤ë.
-
-       * src/spells3.c 1.80:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î´¬Êª¤Ç¤ÎÂоݥ¢¥¤¥Æ¥àÁªÂò»þ¤Ë, Ì¤´ÕÄê¤Î¥¨¥´¤ä
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ÏÁª¤Ù¤ë¤è¤¦¤Ë¤·¤Æ, ¸µ¤«¤é¥¨¥´¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤À¤Ã
-       ¤¿¾ì¹ç¤Ë¶¯²½¤Ë¼ºÇÔ¤¹¤ë¥³¡¼¥É¤¬µ¡Ç½¤¹¤ë¤è¤¦¤Ë¤·¤¿.
-
-       * src/spells3.c 1.79:
-       ¥«¥ª¥¹ËâË¡ "µõ̵¾¤Íè" ¤òÃϾå¤Î¾ã³²Êª¤ËÎÙÀܤ·¤Æ»È¤Ã¤Æ¤â¥À¥á¡¼¥¸¤ò¼õ¤±
-       ¤Ê¤¤¤è¤¦¤ËÊѹ¹. ¤³¤ÎÊѹ¹¤ÏÃϾå¤Ë¸Â¤ë.
-
-       * src/rooms.c 1.38: ¥Ñ¥¿¡¼¥ó½ªÅÀ¤Î¥¢¥¤¥Æ¥à¤Ï¹âµéÉʳÎÄê¤È¤·¤¿.
-
-2003-06-13  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/option.txt 1.22, src/tables.c 1.65: ±ÑÌõ¡£
-
-2003-06-13  nothere  <nothere@cvs>
-
-       * lib/help/joption.txt 1.22:
-       ¥ª¥×¥·¥ç¥ó "last_words" ¤ÎÀâÌÀ¤Ë´Ø¤¹¤ë½¤Àµ.
-
-       * lib/help/joption.txt 1.21, lib/pref/pref-opt.prf 1.15, src/externs.h 1.118, src/generate.c 1.63, src/tables.c 1.64, src/variable.c 1.40:
-       ¥À¥ó¥¸¥ç¥ó¤Î³°Êɤò±Êµ×´ä¤ÇÀ¸À®¤¹¤ë¥ª¥×¥·¥ç¥óbound_walls_perm¤òºîÀ®.
-       ½é´üÃͤÏFALSE. 3¥Ú¡¼¥¸¤ËÆþ¤ì¤¿.
-
-       * src/mspells2.c 1.42:
-       ¥·¥ó¥Ü¥ë'B'¤ÎÆüì¤Ê¹ÔÆ°¤Ï¥Ú¥Ã¥ÈÌ¿Îá "¥Æ¥ì¥Ý¡¼¥È¶Ø»ß" ¤ÇÀ©¸Â¤Ç¤­¤ë¤è¤¦
-       ¤ËÊѹ¹.
-
-       * src/mspells2.c 1.41:
-       ¥Ú¥Ã¥È¤Î²¦êµ¤ÎÆÃÊ̤ʹÔÆ°¤Î¥â¥ë¥É¤Ð¤é¤Þ¤­¤Î¸ú²Ì¤¬¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-2003-06-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/object2.c 1.83: Typo: realy -> really
-
-2003-06-13  nothere  <nothere@cvs>
-
-       * src/spells3.c 1.78: "kaji item" -> "customized item".
-
-       * src/cave.c 1.93:
-       CHAR_CLEAR¤Ç¿§¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤¬Ì¤ÃΤÎÃÏ·ÁÅù¤Îʸ»ú' '¤ÎÃÏ·Á¤Ë¤¤¤ë¾ì¹ç
-       ¤Ï, ¤½¤Î¥â¥ó¥¹¥¿¡¼¤ÎÀßÄêʸ»ú¤ò»È¤¦¤è¤¦¤ËÊѹ¹.
-
-2003-06-12  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.69:
-       ¥Ú¥Ã¥È¥³¥Þ¥ó¥É¤ò³«¤¯¤È¤¹¤°¼Â¹Ô¤µ¤ì¤ë¥Ú¥Ã¥È¿ô¤Î¿ô¤¨¾å¤²¥ë¡¼¥×¤Î·ë²Ì¤Ï
-       ¥Ú¥Ã¥È¤Î²òÊü¤Î²ÄÈݤˤ·¤«»È¤ï¤ì¤Ê¤¤¤Î¤Ç, ¥ë¡¼¥×¤òPET_DISMISS¤Î¥Ö¥í¥Ã¥¯
-       ¤Ë°Ü¤·¤¿¾å¤Ç¥Ú¥Ã¥È¤¬¤¤¤ì¤ÐÅÓÃæ¤ÇÂǤÁÀÚ¤ë»ÅÍͤËÊѹ¹.
-
-       * src/xtra2.c 1.80: target_set_aux()¤Ç¤Î;ʬ¤Êc_ptr¤òºï½ü.
-
-       * src/store.c 1.30:
-       Å¹¤Ç¼Í·âÉð´ï¤ò»ý¤ÁÂؤ¨¤¿Ä¾¸å¤ËŹ¤Î¾¦ÉʤǤ¢¤ëÌð/ÃƤΥÀ¥á¡¼¥¸É½¼¨¤¬¹¹¿·
-       ¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç, ÁõÈ÷Êѹ¹¤½¤Î¾¤Ë¤è¤êPU_BONUS¤¬Î©¤Ã¤¿¾ì¹ç¤ÏŹ¤Î
-       ¾¦ÉʤòºÆÉÁ²è¤¹¤ë¤è¤¦¤ËÊѹ¹. ¤Þ¤¿, Á°¤«¤é¤¢¤Ã¤¿Ì¥ÎÏÊѲ½¤Î¸¡½Ð¥³¡¼¥É¤Ï
-       PU_BONUS¸¡½Ð¤Ç¤½¤Î¤Þ¤Þ¼Â¸½¤Ç¤­¤ë¤Î¤Ç, ºï½ü.
-
-       * src/cmd4.c 1.92, src/tables.c 1.63:
-       ¥â¥ó¥¹¥¿¡¼¥·¥ó¥Ü¥ëʬÎà¤ÎÀâÌÀÆâ¤ÎºÙ¤«¤¤½¤Àµ.
-
-       * src/load.c 1.63:
-       ¥»¡¼¥Ö¥Ç¡¼¥¿Ãæ¤Ç¿¤¹¤®¤ëÂÔµ¡Ãæ¥Ú¥Ã¥È¤Îºï½ü¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¥¿¥¤¥ß¥ó¥°
-       ¤òÊѹ¹. ¼ÂºÝ¤Ëºï½ü¤µ¤ì¤¿¥Ú¥Ã¥È¤¬¤¤¤ë¾ì¹ç¤Ë½Ð¤¹¤³¤È¤È¤·¤¿.
-
-       * src/cmd4.c 1.91, src/externs.h 1.117, src/files.c 1.114, src/monster2.c 1.64, src/xtra2.c 1.79:
-       ¥¢¥ê¡¼¥Ê/¥â¥ó¥¹¥¿¡¼³ÊÆ®¾ì³°¤ÇÂÔµ¡Ãæ¤Î¥Ú¥Ã¥È¤ò¸½ºß¤Î¥Ú¥Ã¥È¥ê¥¹¥È¤Ë, Ì¾
-       Á°ÉÕ¤­¤Ç¤¢¤ì¤Ð¥À¥ó¥×¤Ë¤âºÜ¤»¤ë¤è¤¦¤Ë½¤Àµ. ¤Þ¤¿, ¥Ú¥Ã¥È¥ê¥¹¥È¤Ç¤â(¾èÇÏ
-       Ãæ)ɽµ­¤¬¤«¤Ö¤é¤Ê¤¤¤è¤¦¤Ë½¤Àµ. ¤Ê¤ª, ¤³¤Î²áÄø¤Çlook_mon_desc()¤Ïm_idx
-       ÅϤ·¤Ç¤Ï¤Ê¤¯m_ptrÅϤ·¤ËÊѹ¹. ¤Þ¤¿, monster_desc()¤Ë¤ÏÂÔµ¡Ãæ¤Î¥Ú¥Ã¥È¤È
-       ²¾Äꤷ¤Æɽµ­¤¹¤ë¥â¡¼¥É¤òÄɲÃ.
-
-       * src/flavor.c 1.36: object_desc()¤ò¾¯¤·À°Íý/À°·Á.
-
-       * src/cmd6.c 1.53, src/externs.h 1.116, src/flavor.c 1.35, src/load.c 1.62, src/object1.c 1.62, src/object2.c 1.82:
-       ÃÃÌê»Õ¤Î¥¢¥¤¥Æ¥à¤«¤É¤¦¤«¤ÎȽÄê¤Ë¤Ïtval/xtra3¤ÎľÀÜ»ØÄê¤Ç¤Ï¤Ê¤¯, ¸µ¡¹
-       object2.c¤Ë¤¢¤ë´Ø¿ô¤ò»È¤¦¤è¤¦¤ËÊѹ¹.
-
-2003-06-11  nothere  <nothere@cvs>
-
-       * src/defines.h 1.116, src/floors.c 1.18, src/load.c 1.61, src/save.c 1.35:
-       ¥¢¥ê¡¼¥Ê¤ä¥â¥ó¥¹¥¿¡¼³ÊÆ®¾ì¤ËÆþ¤Ã¤Æ¤â¥Ú¥Ã¥È¤ò¼º¤ï¤Ê¤¤¤è¤¦¤ËÊѹ¹. ¥¯¥¨
-       ¥¹¥È¤Î½é´ü²½¤Î¾ì¹ç¤ÈƱÅù¤ÎȽÄê¤òÍѤ¤¤ë¤¿¤á, Ì²¤Ã¤Æ¤¤¤¿¤êÎ¥¤ì¤Æ¤¤¤ë
-       ¥Ú¥Ã¥È¤Ç¤â¼º¤ï¤Ê¤¤. ¤³¤Î²áÄø¤Ç¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤Ë°ì»þ¥Ú¥Ã¥È¥Ç¡¼¥¿¤ò½ñ¤­
-       ½Ð¤¹É¬Íפ¬¤¢¤ë¤¿¤á, ¥»¡¼¥Ö¥Ç¡¼¥¿¥Ð¡¼¥¸¥ç¥ó¤Ï1.5.0.2¤Ë.
-       * ³°¤ÇÂÔµ¡Ãæ¤Î¥Ú¥Ã¥È¤Ï¸½ºß¤Ïupkeep·×»»¤ÎÂоݳ°¤Ë¤Ê¤Ã¤Æ¤¤¤ë. ¤³¤ì¤ÏÊÑ
-         ¹¹¤¹¤ë¤Ù¤­¤«¤â¤·¤ì¤Ê¤¤.
-
-2003-06-10  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/news.txt 1.19, lib/help/faq.txt 1.3, src/z-config.h 1.9:
-       ¥á¡¼¥ë¥¢¥É¥ì¥¹¹¹¿·¡£lib/help/faq.txt ¤«¤é¤Ï¥á¡¼¥ë¥¢¥É¥ì¥¹ºï½ü¡£
-       (rgraÅù¤ËÁ÷¤Ã¤¿¤È¤­¤Ë¥¹¥Ñ¥à¤Î¸µ¤Ë¤Ê¤ë¤Î¤Ç)
-
-2003-06-10  nothere  <nothere@cvs>
-
-       * src/mspells1.c 1.46:
-       no_inate»ØÄê¤ÏËâË¡°Ê³°Á´Éô¤ËÂФ¹¤ë¤â¤Î¤È¹Í¤¨¤ë¤Î¤Ç, no_inate»þ¤Ë¶Ø»ß
-       ¤µ¤ì¤ëÂоݤòRF?_NOMAGIC_MASK¤È¤·¤¿.
-
-2003-06-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.92:
-       update_mon_lite()¤Ç¡¢note_spot()¤Èlite_spot()¤Î½çÈÖ¤¬µÕ¤À¤Ã¤¿°Ù¤Ë
-       lite_spot()¤Î¸úÎϤ¬½Ð¤º¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»(¤À¤±)¤Ç¾È¤é¤µ¤ì¤¿ÊɤÎɽ¼¨¤¬
-       ¤Á¤ã¤ó¤È¥¢¥Ã¥×¥Ç¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2003-06-10  nothere  <nothere@cvs>
-
-       * src/monster2.c 1.63:
-       ¥â¥ó¥¹¥¿¡¼¤¬¾¤´­¤µ¤ì¤¿Ä¾¸å¤Ë¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤¬¹¹¿·¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤ò
-       ½¤Àµ.
-
-2003-06-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.91:
-       update_lite()¤ÎÀèƬ¤Î¸÷¸»È¾·Â0¤Î»þ¤ÎÆüì½èÍý¤½¤Î¤â¤Î¤¬ÉÔÍס£
-
-2003-06-10  nothere  <nothere@cvs>
-
-       * src/cave.c 1.90:
-       ¥×¥ì¥¤¥ä¡¼¸÷¸»¤¬¾Ã¤¨¤¿Éôʬ¤Îlite_spot()¤Ë¤è¤ëºÆÉÁ²è¤Ïupdate_lite()¤Î
-       ºÇ¸å¤ÇCAVE_TEMP¤ò¸µ¤Ë¹Ô¤ï¤ì¤Æ¤ª¤ê, forget_lite()¤ò¸Æ¤Ö¤È¤³¤Î½èÍý¤¬Àµ
-       ¤·¤¯¹Ô¤ï¤ì¤Æ¤¤¤Ê¤¤¤è¤¦¤Ê¤Î¤Ç, ¥³¥á¥ó¥È¥¢¥¦¥È.
-
-2003-06-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.78: warning½üµî¡£
-
-2003-06-09  nothere  <nothere@cvs>
-
-       * src/object2.c 1.81:
-       make_object()¤ÎÁ°¤Ëget_obj_num_hook¤¬»ØÄꤵ¤ì¤Æ¤¤¤¿¾ì¹ç¤Ï, AM_GOOD¤¬
-       ÅϤµ¤ì¤¿¤È¤·¤Æ¤âmake_object()Æâ¤Ç¤Ïget_obj_num_prep()¤·Ä¾¤µ¤Ê¤¤¤è¤¦¤Ë
-       Êѹ¹. ¤½¤Î¾ì¹ç¤Ï, make_object()¤ÎÁ°¤Ëget_obj_num_prep()¤Ç¥Æ¡¼¥Ö¥ë¤¬¹½
-       À®¤µ¤ì¤Æ¤¤¤ë¤³¤È¤ò¿®ÍѤ¹¤ë.
-
-2003-06-08  nothere  <nothere@cvs>
-
-       * src/xtra2.c 1.77: ¤¤¤¯¤Ä¤«¤ÎºÙ¤«¤¤Êѹ¹.
-       * ¥³¥á¥ó¥È¤òÈù̯¤Ë½¤Àµ.
-       * ¥À¥ó¥¸¥ç¥ó¤Î¸ÇÄêÊ󽷤˸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤È°ìÈÌ¥¢¥¤¥Æ¥à¤¬Î¾Êý»ØÄê
-         ¤µ¤ì¤¿¾ì¹ç¤ÏξÊýÍî¤È¤¹¤è¤¦¤Ë½¤Àµ. ¥Ç¥Õ¥©¥ë¥È¤ÎÊ󽷤Ǥ¢¤ë³ÍÆÀ¤Î´¬Êª
-         ¤Ï¸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤È¥¢¥¤¥Æ¥àξÊý¤Î»ØÄ꤬¤Ê¤¤¾ì¹ç¤Î¤ß¤È¤Ê¤ë.
-       * ¸½¾õ¤Ç¤ÏÆÃÄê¤Î°ìÈÌ¥¢¥¤¥Æ¥à¤òÍî¤È¤¹ÆÃÄê¥â¥ó¥¹¥¿¡¼¤Ë¤ÏDROP_GOOD¤ä
-         DROP_GREAT¤ÏÍ¿¤¨¤é¤ì¤Æ¤¤¤Ê¤¤¤¬, ¤³¤ì¤é¤Î¾ì¹ç¤ËÀ¸À®¤µ¤ì¤ë¥¢¥¤¥Æ¥à¤Ë
-         ¤â·Á¼°Åª¤ËDROP_GOOD¤äDROP_GREAT¤òŬÍѤµ¤»¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/birth.c 1.72, src/cmd2.c 1.46, src/defines.h 1.115, src/generate.c 1.62, src/grid.c 1.15, src/init1.c 1.59, src/object2.c 1.80, src/racial.c 1.38, src/rooms.c 1.37, src/spells1.c 1.65, src/store.c 1.29, src/wizard2.c 1.43, src/xtra2.c 1.76:
-       AM_OKAY¤Î¿¿µ¶¤òµÕ¤Ë¤·, AM_NO_FIXED_ART¤ÈÊѹ¹.
-
-       * src/birth.c 1.71, src/cmd2.c 1.45, src/defines.h 1.114, src/externs.h 1.115, src/generate.c 1.61, src/grid.c 1.14, src/init1.c 1.58, src/object2.c 1.79, src/racial.c 1.37, src/rooms.c 1.36, src/spells1.c 1.64, src/store.c 1.28, src/wizard2.c 1.42, src/xtra2.c 1.75:
-       ¥¢¥¤¥Æ¥àÀ¸À®¤Ë´Ø¤ï¤ë´Ø¿ô·²¤ÎÊѹ¹.
-       * good¤ägreat¤Ê¤É¸ÄÊ̤Υե饰¤òÅϤ·¤Æ¤¤¤¿Éôʬ¤òbit¥Õ¥é¥°¤ÇÅϤ¹¤è¤¦¤Ë
-         Êѹ¹.
-       * ¥Ç¥Ð¥Ã¥°¥³¥Þ¥ó¥É "^A o" ¤ÎÃæ¤Ç¤ÎÆÃÊÌÀ½¥í¡¼¥ë ("r s") ¤Ç¤Ï¼ÂºÝ¤Î¡ùÀ¸
-         À®½èÍý¤È°ã¤¤, ¥¨¥´¤¬À¸À®¤µ¤ì¤Æ¤â¡ù¤È¤·¤Æ¾å½ñ¤­¤·¤Æ¤¤¤Æ, ¥¨¥´¤È¤·¤Æ
-         ¤Îart_flags¤ä½¤Àµ¤¬»Ä¤Ã¤¿¤Þ¤Þ¤ÎÉáÄ̤è¤ê¶¯¤¤¡ù¤¬ºî¤ì¤Æ¤¤¤¿¤Î¤Ç, ¤³¤ì
-         ¤ò½¤Àµ¤¹¤ë°ÕÌ£¤Ç¥í¡¼¥ë¥â¡¼¥ÉAM_SPECIAL¤òºîÀ®. ¤³¤Î¥â¡¼¥É»ÈÍÑ»þ¤Ï,
-         apply_magic()Æâ¤Ç²Äǽ¤Ê¾ì¹ç¤Ï¾ï¤Ë¡ù¡ú¤Î¤ß¤¬À¸À®¤µ¤ì¤ë.
-
-2003-06-07  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.68, src/cmd6.c 1.52, src/externs.h 1.114, src/spells2.c 1.72, src/spells3.c 1.77, src/streams.c 1.11, src/xtra2.c 1.74:
-       ¥À¥ó¥¸¥ç¥óÀ¸À®Ãæ¤Î*Ç˲õ*¥³¡¼¥É¤È°ìÈ̤Î*Ç˲õ*¥³¡¼¥É¤òÅý¹ç. ÊѶòÈÚÅܤÇ
-       ¤Î*Ç˲õ*»ÅÍͤ˹ç¤ï¤»¤¿¤¿¤á, °Ê²¼¤ÎÊѹ¹¤ò´Þ¤à.
-       * À¸À®Ãæ¤Î*Ç˲õ*¤Ç¤â¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ï*Ç˲õ*¤µ¤ì¤ë. ¤¿¤À¤·¤Þ¤À½Ð¸½¤·
-         ¤Æ¤¤¤Ê¤¤¤Î¤Ç, À¸À®Ãæ¤Î*Ç˲õ*¤Ç¤Ï¸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ï±Êµ×¤Ë¤Ï¼º¤ï
-         ¤ì¤Ê¤¤.
-       * cheat_peek»þ¤Ë¤Ï¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬À¸À®Ãæ¤Ë*Ç˲õ*¤µ¤ì¤¿»Ý¤òɽ¼¨¤¹¤ë.
-
-       * src/object2.c 1.78: Typo fix.
-
-       * src/xtra2.c 1.73: 2½Å¤Ë¤Ê¤Ã¤Æ¤¤¤¿break;¤òºï½ü.
-
-       * src/defines.h 1.113, src/mspells3.c 1.24:
-       ÀÄËâˡʬÎà¤Î [¤½¤Î¾] ¤Î¥Þ¥¹¥¯¤òÀ°Íý. RF4_XXX_MASK¤òºï½ü.
-
-       * src/defines.h 1.112:
-       ¥Æ¥ì¥Ý¡¼¥È¡¦¥ì¥Ù¥ë¤Ï½½Ê¬¤Ë¹¶·âËâË¡¤Ë¤Ê¤Ã¤Æ¤ª¤ê, ¹¶·âËâË¡¶Ø»ß¤Ç¥Ú¥Ã¥È
-       ¤Ë»È¤ï¤»¤Ê¤¤ÂоݤǤ¢¤ë¤ÈȽÃǤ·¤¿¤Î¤Ç, RF6_ATTACK_MASK¤Ë´Þ¤á¤¿. ¤Þ¤¿,
-       ¶«¤Ó¤Ï¥Ú¥Ã¥È¤Ê¤é¤Ð¼«Æ°Åª¤Ë¶Ø»ß¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾å¤Ë, ¶«¤Ó¤¬¹¶·â
-       ËâË¡¤È¤·¤Æ¤³¤ì1¤Ä¤Ç¼öʸ¤¬Ì¿Ã椹¤ë¤è¤¦¤Ê°ÌÃÖ¤òõ¤·¤Æ°ÜÆ°¤ò¤¹¤ë¤è¤¦¤Ë±Æ
-       ¶Á¤òµÚ¤Ü¤¹¤Î¤â¤É¤¦¤«¤È¹Í¤¨¤¿¤Î¤Ç, RF4_ATTACK_MASK¤«¤é³°¤·¤¿.
-
-       * lib/edit/r_info.txt 1.8: "¥Ä¥£¡¼¥ó¥Á" -> "¥Æ¥£¡¼¥ó¥Á".
-
-       * src/xtra2.c 1.72: monster_death()¤ÎÀ°Íý¤ÈÊѹ¹.
-       * ¥â¥ó¥¹¥¿¡¼¸ÇÍ­¤Î¥¢¥¤¥Æ¥à¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È, µÚ¤Ó¥¬¡¼¥Ç¥£¥¢¥ó¤Î¸ÇÄê
-         Êó½·¤òÍî¤È¤¹¾ò·ï¤ò¤Þ¤È¤áľ¤·, drop_item¤¬TRUE¤«¤ÄÈó¥¯¥í¡¼¥ó¤«¤Ä¥¢
-         ¥ê¡¼¥Ê³°¤«¤Ä¥â¥ó¥¹¥¿¡¼³ÊÆ®¾ì¤Î³°¤«¤Ä¥Ú¥Ã¥È¤Ç¤Ê¤¤¤³¤È¤È¤·¤¿.
-       * ¤Ê¤Þ¤±¤â¤Î¤Ç¤Î»°¼ï¤Î¿À´ï¤ÎÀ¸À®¥³¡¼¥É¤ò¥â¥ó¥¹¥¿¡¼¤Î¸ÇÍ­¥¢¡¼¥Æ¥£¥Õ¥¡
-         ¥¯¥È¤Î¥³¡¼¥É¤ÈÊÌ°·¤¤¤Ë¤·¤¿.
-       * ¥«¥ª¥¹¥Ñ¥È¥í¥ó¤«¤é¤Î*¾¡Íø*½Ë¤¤¤Î¸ÀÍÕ¤ÏÊѰۤǥѥȥí¥ó¤¬ÉÕ¤¤¤Æ¤¤¤ë¥×
-         ¥ì¥¤¥ä¡¼¤Ë¤âÍ¿¤¨¤é¤ì¤ë¤è¤¦¤ËÊѹ¹.
-       * ¥í¥ì¥ó¥È¤Î¼«Çú¥³¡¼¥É¤òEXPLODE¤Î¥ë¡¼¥×¤«¤é³°¤·, m_ptr->r_idx¤Çʬ´ô¤¹
-         ¤ëÉôʬ¤ËÆþ¤ì¤¿.
-       * Ç°¤Î¤¿¤á, ¡Øº®Æ٤Υµ¡¼¥Ú¥ó¥È¡Ù¤Î¥¯¥í¡¼¥ó¤Ç¤Ï*¾¡Íø*¥Õ¥é¥°¤òΩ¤Æ¤Ê¤¤
-         ¤è¤¦¤ËÊѹ¹.
-
-2003-06-07  nsk  <nsk@cvs>
-
-       * src/wizard2.c 1.41:
-       ¥¦¥£¥¶¡¼¥É¥â¡¼¥É¤ÇÁ´¤Æ¤ÎÀÄËâË¡¤ò³Ø½¬ºÑ¤ß¤Ë½ÐÍè¤ë¤è¤¦¤Ë¤·¤¿('E')¡£
-
-       * src/mspells3.c 1.23, src/tables.c 1.62, src/defines.h 1.111, src/externs.h 1.113, src/files.c 1.113:
-       ¥À¥ó¥×½ÐÎÏ»þ¤Ë³Ð¤¨¤¿ÀÄËâË¡¤âɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2003-06-06  nothere  <nothere@cvs>
-
-       * src/spells1.c 1.63:
-       1.62¤Î½¤Àµ¤Ç, who¤Ç»²¾È¤¹¤ëÉôʬ¤ò¥ß¥¹¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-       * src/spells1.c 1.62:
-       project_m()Æâ¤Ç, ¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤Ç½ÅÎϥ֥쥹¤òÅǤ¤¤¿¾ì¹ç¤Ê¤É¤Ë
-       ´Ø·¸¤Ê¤¤¤Ï¤º¤Î¥×¥ì¥¤¥ä¡¼¤Î¥ì¥Ù¥ë¤¬Û¯Û°ÅÙ·×»»¤Ë»È¤ï¤ì¤ë¤è¤¦¤Ê¾ì¹ç¤¬
-       ¤¢¤Ã¤¿¤Î¤Ç, ¹¶·â¦¤Î¥ì¥Ù¥ë¤ÇȽÄꤹ¤ë¤è¤¦¤Ë½¤Àµ. ¹¶·â¦¤Î¥ì¥Ù¥ë¤Ï¸½ºß
-       ¤Ï /2 ¤µ¤ì¤Æ°·¤ï¤ì¤ë. Æ±ÍͤË, ¥×¥ì¥¤¥ä¡¼¤Î¥ì¥Ù¥ë¸ÇÄê¤Ç¤Ï¤Ê¤¯¹¶·â¦¤Î
-       ¥ì¥Ù¥ë¤Ç¸«¤ë¤Ù¤­Éôʬ¤ò¤½¤Î¤è¤¦¤Ë½¤Àµ.
-
-       * src/mspells2.c 1.40, src/spells1.c 1.61: "È´¤±¶õ" -> "È´¤±³Ì".
-
-       * src/mspells1.c 1.45, src/mspells2.c 1.39:
-       È¿ËâË¡¥À¥ó¥¸¥ç¥ó¤Ç¤ÏSTUPID¤Ê¥â¥ó¥¹¥¿¡¼¤ÏÈ¿ËâË¡¾õÂ֤˵¤¤Å¤«¤º¤ËËâË¡¤ò
-       »È¤Ã¤Æ¼ºÇÔ¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/externs.h 1.112, src/mspells1.c 1.44, src/mspells2.c 1.38:
-       ¥â¥ó¥¹¥¿¡¼¤ÎËâË¡¼ºÇÔȽÄê¤ÎºÝ¤Ë, ¤½¤Î¹¶·â¤¬ËâˡŪ¤Ç¤¢¤ë¤«¤É¤¦¤«¤òRF4·è
-       ¤áÂǤÁ¤Ç¤Ï¤Ê¤¯, RF?_NOMAGIC_MASK¤ò¸«¤ë¤è¤¦¤ËÊѹ¹.
-
-       * lib/edit/r_info.txt 1.7: ¥â¥ó¥¹¥¿¡¼¤Î¿Ê²½¤ÎÄ´À°.
-       * ¥á¥Ã¥Ä¥©¥Ç¡¼¥â¥ó¤Ï·Ð¸³ÃÍ50000¤Ç¥Ë¥«¥Ç¡¼¥â¥ó¤Ë¿Ê²½.
-       * µðÂçÀÖ¥µ¥½¥ê¤Ï¥Õ¥§¥¤¥º¡¦¥¹¥Ñ¥¤¥À¡¼¤Ç¤Ï¤Ê¤¯µðÂ粫¥µ¥½¥ê¤Ë¿Ê²½.
-       * ²Ð¤Î¥¨¥ì¥á¥ó¥¿¥ë¤Ï·Ð¸³ÃÍ2400¤Ç¥Þ¥°¥Þ¤Î¥¨¥ì¥á¥ó¥¿¥ë¤Ë¿Ê²½.
-
-       * src/xtra2.c 1.71:
-       ¥¯¥í¡¼¥ó¥æ¥Ë¡¼¥¯¤òÅݤ·¤¿ºÝ¤Ë¤½¤Î¥æ¥Ë¡¼¥¯¤ËÆÃÄê¤Î¸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È
-       ¤òÍî¤È¤¹²ÄǽÀ­¤¬¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ. ¤Þ¤¿, ¥¬¡¼¥Ç¥£¥¢¥ó¤Î¤¤¤ë¥À¥ó¥¸¥ç¥ó
-       ¤Ç¥¬¡¼¥Ç¥£¥¢¥ó¤òÅݤ·¤¿È½Äê¤ÎºÝ¤Ë¥¯¥í¡¼¥ó¤Ç¤Ê¤¤¤³¤È¤òÉÕ¤±²Ã¤¨¤¿.
-
-       * src/racial.c 1.36: ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë´Ø¤¹¤ëÊѹ¹.
-       * MP¤¬¥³¥¹¥È¤ËËþ¤¿¤Ê¤¤¾ì¹ç¤Ï¤¤¤­¤Ê¤êHP¤ò¾ÃÈñ¤¹¤ë¤Î¤Ç¤Ï¤Ê¤¯, MP¤ò0¤Ë¤·
-         ¤Æ¤«¤éº¹Ê¬¤Î¥À¥á¡¼¥¸¤ò¼õ¤±¤ë¤è¤¦¤ËÊѹ¹.
-       * ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼»ÈÍÑ»þ¤ÎÄãHP·Ù¹ð¤Î»ÅÍͤòÊѹ¹¤·, (¥³¥¹¥È - MP) ¤¬HP
-         ¤ò¾å²ó¤ë¾ì¹ç¤Ë·Ù¹ð¤ò½Ð¤¹¤è¤¦¤Ë¤·¤¿.
-
-       * src/spells3.c 1.76:
-       µ¢´Ô¤Ê¤·¥â¡¼¥É¤Ç¤Ï¥Õ¥í¥¢¡¦¥ê¥»¥Ã¥È¤Ï̵°ÕÌ£¤Ê¤Î¤Ç̵¸ú¤Ë¤·¤¿.
-
-       * src/bldg.c 1.37:
-       Éð´ï¾¢¤ÎÉð´ïÈæ³Ó»þ¤Ë "¤Õ¤µ¤ï¤·¤¯¤Ê¤¤" "¾èÇÏÃæ¤Ë¸þ¤«¤Ê¤¤" ¤È¤¤¤Ã¤¿¥á¥Ã
-       ¥»¡¼¥¸¤¬½Ð¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-06-05  nothere  <nothere@cvs>
-
-       * src/melee1.c 1.32:
-       monster_critical()¤Ç, ¼õ¤±¤¿¥À¥á¡¼¥¸¤¬¥À¥¤¥¹ÌܤÎ100%¤òĶ¤¨¤ë¾ì¹ç¤Ë¤Ï
-       Û¯Û°ÅÙ¤äÀÚ¤ê½ý¤Ë´Ø¤ï¤ëmax¤¬1Áý¤ä¤µ¤ì¤º, 100%¤Á¤ç¤¦¤É¤Î¾ì¹ç¤è¤êÈù̯¤Ë
-       ¼å¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-       * src/bldg.c 1.36, src/cmd4.c 1.90, src/defines.h 1.110, src/dungeon.c 1.115, src/effects.c 1.41, src/externs.h 1.111, src/files.c 1.112, src/load.c 1.60, src/xtra1.c 1.69:
-       ¥¢¥ê¡¼¥Ê¤Ë´Ø¤¹¤ëÊѹ¹.
-       * ¥¢¥ê¡¼¥Ê¤Î²¿ÀïÌܤÇï¤ËÇÔË̤·¤¿¤«¤ò¥À¥ó¥×¤ËÌÀµ­¤¹¤ë¤è¤¦¤ËÊѹ¹.
-       * p_ptr->arena_number¤¬Éé¤Ç¤¢¤ì¤ÐÇÔË̤Ȥߤʤ¹¤è¤¦¤Ë¤Ê¤Ã¤¿¤¿¤á, ¸Å¤¤
-         ¥Ð¡¼¥¸¥ç¥ó¤ÇÇÔË̤·¤¿¾ì¹ç¤Î¼±ÊÌÍѤοôÃÍ99¤òÉé¤Î¿ôÃͤËÊÑ´¹¤¹¤ëɬÍפ¬
-         À¸¤¸¤¿¤Î¤Ç, ¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¥Ð¡¼¥¸¥ç¥ó¤ò1.5.0.1¤Ë¾å¤², -MAX_SHORT¤ËÊÑ
-         ´¹¤·¤Æ¤¤¤ë.
-       * ±Ñ¸ìÈÇ¥¢¥ê¡¼¥Ê¤Ç»È¤ï¤ì¤ë½ø¿ô¤Îsuffix¤ò´Ø¿ô¤Ë¤Þ¤È¤á¤¿.
-
-       * src/cmd4.c 1.89:
-       Ã£À®/¼ºÇÔ¤·¤¿¥¯¥¨¥¹¥È¤Îɽ¼¨¤òÊѹ¹. ½ÐÎϤγç¸Ì¤ä'-'¤ò·¤¨¤¿.
-
-       * src/cmd4.c 1.88, src/externs.h 1.110, src/files.c 1.111:
-       ¥¯¥¨¥¹¥È¾ðÊó¤ò'^Q'¤Çɽ¼¨¤¹¤ëÉôʬ¤È¥À¥ó¥×¤Ë¥¯¥¨¥¹¥È¾ðÊó¤òɽ¼¨¤¹¤ëÉôʬ
-       ¤Ç¶¦Ä̤ÊÉôʬ¤ò´Ø¿ô¤Ë¤Þ¤È¤á¤¿. ¤Þ¤¿, Ã£À®¤·¤¿/¼ºÇÔ¤·¤¿¥¯¥¨¥¹¥È¤Ï¥À¥ó¥×
-       ¤ÈƱÍͤË, '^Q'¤Ç¤âãÀ®»þ/¼ºÇÔ»þ¥ì¥Ù¥ë¤Ç¥½¡¼¥È¤·¤Æɽµ­¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/files.c 1.110:
-       ¥À¥ó¥×Ãæ¤Ë "[ ¥»¥¯¥·¥ç¥ó ]" ¤È "[¥»¥¯¥·¥ç¥ó]" ¤È¤¤¤¦É½¸½¤¬º®ºß¤·¤Æ¤¤
-       ¤ë¤Î¤Ç, "[¥»¥¯¥·¥ç¥ó]" ¤ËÅý°ì.
-
-       * src/cmd4.c 1.87, src/defines.h 1.109, src/dungeon.c 1.114, src/effects.c 1.40, src/files.c 1.109, src/floors.c 1.17, src/monster2.c 1.62, src/mspells1.c 1.43, src/mspells2.c 1.37, src/save.c 1.34, src/spells2.c 1.71, src/xtra1.c 1.68:
-       ¥¯¥¨¥¹¥ÈID¤¬¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤Îʪ¤«¤É¤¦¤«È½Äꤹ¤ëÉôʬ¤ò¥Þ¥¯¥í¤Ë¤Þ¤È¤á
-       ¤¿. ¾­ÍèŪ¤Ë¥é¥ó¥À¥à¥¯¥¨¥¹¥ÈÎΰè¤Î¸å¤í¤Ë¸ÇÄꥯ¥¨¥¹¥È¤òÇÛÃÖ¤¹¤ë¤³¤È¤ò
-       ¹Í¤¨¤¿¾å¤Ç¤ÎÊѹ¹.
-
-2003-06-03  nothere  <nothere@cvs>
-
-       * src/mspells1.c 1.42:
-       no_inate»þ¤Î¥Þ¥¹¥¯¤ÎľÀÜ»ØÄê¤òRF?_BREATH_MASK¤ËÃÖ¤­´¹¤¨¤¿. ¤Þ¤¿, ÊÑ¿ô
-       direct¤Ï¾ï¤ËTRUE¤Ç»È¤ï¤ì, À®Î©¤¹¤ë¤³¤È¤Î¤Ê¤¤Èæ³Ó¤Ë»È¤ï¤ì¤Æ¤¤¤¿¤Î¤Ç,
-       direct¤ò¿·¤¿¤Ë((x == px) && (y == py))¤Î°ÕÌ£¤Ç»È¤¦¤è¤¦¤ËÊѹ¹.
-
-       * src/monster2.c 1.61:
-       cheat_hear»þ¤Ë¥â¥ó¥¹¥¿¡¼¤ÎÂç·²¤¬À¸À®¤µ¤ì¤¿¾ì¹ç¤Ï½¸ÃĤζ¦ÄÌ¥·¥ó¥Ü¥ëʸ
-       »ú¤òÄÌÃΤ¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/rooms.c 1.35:
-       cheat_hear¤Ècheat_room¤òƱ»þ¤ËÍ­¸ú¤Ë¤·¤¿¾ì¹ç¤Ë¸Â¤ê, nest¤Î¥â¥ó¥¹¥¿¡¼
-       ¹½À®¤òpitƱÍͤËɽ¼¨¤¹¤ë¤è¤¦¤ËÊѹ¹. cheat_room¤âɬÍפȤ·¤¿¤Î¤Ï, nest¤Ï
-       °ìÈ̤˥â¥ó¥¹¥¿¡¼¤Î¼ïÎब¿¤¯, ¥á¥Ã¥»¡¼¥¸¤¬ÈѤ路¤¯¤Ê¤ë¤¿¤á.
-
-       * lib/edit/d_info.txt 1.4, src/defines.h 1.108, src/rooms.c 1.34:
-       ¥À¡¼¥¯¥¨¥ë¥Õpit¤òÄɲÃ. ½Ð¸½³«»Ï³¬45³¬¤Ç, Å´¹ö, ¾ë, °Å°Ç¤Îƶ·¢¤Ë½Ð¸½.
-
-       * src/rooms.c 1.33:
-       cheat_room»þ¤Ë, ¤¤¤¯¤Ä¤«¤Îpit¤änest¤Ë¤Ä¤¤¤Æ¾ÜºÙ¤òɽ¼¨¤¹¤ë¤è¤¦¤ËÊѹ¹.
-       ¥·¥ó¥Ü¥ëpit/nest¤Ç¤Ï¶¦Ä̤Îʸ»ú¤¬, ¥É¥é¥´¥ópit¤Ç¤Ï¥Ö¥ì¥¹¤Î¼ïÎब, ¥¯
-       ¥í¡¼¥ónest¤Ç¤Ï¥¯¥í¡¼¥óÂоݤ¬É½¼¨¤µ¤ì¤ë. ¤³¤Î²áÄø¤Çpick_vault_type()¤Î
-       Ìá¤êÃͤη¿¤òÊѹ¹. ¤Þ¤¿, É½¼¨¤Îʸ»úÎó¤Ç "¥â¥ó¥¹¥¿¡¼Éô²°" ¤È "Áã" ¤È½ñ
-       ¤«¤ì¤Æ¤¤¤¿Éôʬ¤Ï¤½¤ì¤¾¤ì "¥â¥ó¥¹¥¿¡¼Éô²°(nest)" "¥â¥ó¥¹¥¿¡¼Éô²°(pit)"
-       ¤È½ñ¤­´¹¤¨¤¿.
-
-       * src/birth.c 1.70: Ä¶Ç½ÎϼԤαÑʸ¤ÎºÇ¸å¤¬ ',' ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-       * src/mspells2.c 1.36:
-       ¥Ú¥Ã¥ÈÌ¿Îá "¥×¥ì¥¤¥ä¡¼¤ò´¬¤­¹þ¤àÈÏ°ÏËâË¡¤ò»È¤¦" Ìµ¸ú»þ¤Ë, ¥í¥±¥Ã¥È¤Î
-       µ°Æ»¤ÎÅÓÃæ¤Ë¥¿¡¼¥²¥Ã¥È¤È¤ÏÊ̤Υâ¥ó¥¹¥¿¡¼¤¬¤¤¤¿¾ì¹ç¤Ë¥×¥ì¥¤¥ä¡¼¤ò´¬¤­
-       ¹þ¤ó¤Ç¥í¥±¥Ã¥È¤òȯ¼Í¤·¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ. ¤Þ¤¿, get_project_point()¤Ï
-       Ãæ¤Îproject_path()¤Ç´û¤ËÃåÃÆÃÏÅÀ¤Ïµá¤á¤é¤ì¤Æ¤¤¤ë¤¿¤á, ´Êά²½¤·¤¿.
-
-       * src/defines.h 1.107:
-       ¥â¥ó¥¹¥¿¡¼¤Î¹¶·âËâË¡¤Î¥Þ¥¹¥¯¤òÊñ´Þ´Ø·¸¤Ë´ð¤Å¤¤¤ÆÀ°Íý.
-
-       * src/object2.c 1.77: ·Ù¹ðµ¡Ç½¤Ë´Ø¤¹¤ëÊѹ¹¤È½¤Àµ.
-       * È¿ËâË¡¤Îƶ·¢¤Ç¤ÏËâÎϤÎÍò, °Å¹õ¤ÎÍò, ¥¹¥¿¡¼¥Ð¡¼¥¹¥È, ÇËÌǤμê, ¸÷¤Î
-         ·õ¤ò·Ù¹ðÂоݤˤ·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-       * È¿¹¶·â¤Îƶ·¢¤Ç¤ÏÂÇ·â¤ò·Ù¹ðÂоݤˤ·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-       * ¥À¥á¡¼¥¸·×»»¤ò¤Þ¤È¤á¤é¤ì¤ëÉôʬ¤Ï¤Þ¤È¤á¤¿.
-       * ·Ù¹ð¥¢¥¤¥Æ¥à¤Ê¤·¤Ë·Ù¹ðµ¡Ç½¤¬¤¢¤ë¾ì¹ç¤ËÈ÷¤¨, choose_warning_item()¤ò
-         ½¤Àµ. Ìá¤êÃͤ¬NULL¤Î¾ì¹ç¤Ï·Ù¹ð¥¢¥¤¥Æ¥à¤¬¤Ê¤¤¤È¤ß¤Ê¤·, ¤½¤ìÍѤΥá¥Ã
-         ¥»¡¼¥¸¤òÍ¿¤¨¤¿.
-
-2003-06-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/z-config.h 1.8, src/cave.c 1.89:
-       VARIABLE_PLAYER_GRAPH¥Þ¥¯¥í¤òºï½ü¡£
-
-2003-06-02  nothere  <nothere@cvs>
-
-       * src/cave.c 1.88, src/defines.h 1.106, src/dungeon.c 1.113, src/floors.c 1.16, src/init1.c 1.57, src/monster2.c 1.60:
-       SHAPECHANGER¤ÈATTR_SEMIRAND¤ò¥Õ¥é¥°¥»¥Ã¥È1¤Ë°Üž. ¤³¤ì¤Ë¤è¤ê, ¥Õ¥é¥°
-       Èæ³Ó¤Ç¤Î¹â®²½¤ò¿Þ¤Ã¤¿.
-
-       * src/xtra2.c 1.70:
-       Á´ÌÇ·¿¤Î¥¯¥¨¥¹¥ÈÆâ¤Ç¥â¥ó¥¹¥¿¡¼¤òÅݤ·¤Æ¥ì¥Ù¥ë¥¢¥Ã¥×¤·¤¿ºÝ¤Ë¥«¥ª¥¹¥Ñ¥È
-       ¥í¥ó¤ÎÊ󽷤ǹ¶·â·Ï¸ú²Ì¤¬È¯Æ°¤¹¤ë¤È, ´û¤Ë»à¤ó¤ÀŨ¤ò¤â¤¦1²ó»¦¤·¤Æ¤·¤Þ¤Ã
-       ¤Æ¥­¥ë¥«¥¦¥ó¥È¤¬Áý¤¨¤Æ, ¥æ¥Ë¡¼¥¯1ÂΤÀ¤±¤¬»Ä¤ë¾õ¶·¤Ç¥¯¥¨¥¹¥ÈãÀ®¤Ë¤Ê¤Ã
-       ¤Æ¤·¤Þ¤¦¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç, »¦¤·¤¿¥â¥ó¥¹¥¿¡¼¤Îmonster_death()¤Ê¤É¤¬½ª
-       ¤ï¤ê¥Ç¡¼¥¿¤«¤é´°Á´¤Ë¾Ã¤¨¤Æ¤«¤éºÇ¸å¤Ë·Ð¸³ÃͳÍÆÀ¤Î½èÍý¤ò¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/melee2.c 1.56:
-       Í§¹¥Åª, ¤â¤·¤¯¤Ï¥Ú¥Ã¥È¤Î¥æ¥Ë¡¼¥¯¤¬¤¬¥Ô¥ó¥Á¤Ë¤Ê¤Ã¤Æ¥Æ¥ì¥Ý¡¼¥È¥ì¥Ù¥ë¤Î
-       ´¬Êª¤òÆɤó¤Çƨ¤²¤¿¾ì¹ç¤Ë¥¯¥¨¥¹¥È´°Î»¥Á¥§¥Ã¥¯¤ò¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/birth.c 1.69, src/defines.h 1.105, src/externs.h 1.109, src/floors.c 1.15, src/generate.c 1.60, src/monster2.c 1.59, src/variable.c 1.39:
-       ¼¡¤Î¾ì¹ç¤Ë, ¥Ú¥Ã¥È¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥æ¥Ë¡¼¥¯¥â¥ó¥¹¥¿¡¼¤ÈƱ¤¸¥â¥ó¥¹¥¿¡¼¤¬À¸
-       À®¤µ¤ì¤ë¤³¤È¤¬¤¢¤Ã¤¿.
-       * ¿·¤·¤¤³¬¤ÎºîÀ®
-       * ¤¢¤ë³¬¤òÀ¸À®¤·¤Æ½½Ê¬¤Ë¥¿¡¼¥ó¤¬·Ð²á¤·¤Æ¤«¤é¤½¤ÎÊݸ³¬¤ËÌá¤ë
-       ¤³¤ì¤ÏÀ¸À®»þÅÀ¤Çparty_mon[]¤Ë°ì»þÊݸ¤·¤¿¥â¥ó¥¹¥¿¡¼¤Î¿ô¤¬¹Í褵¤ì¤Æ¤¤
-       ¤Ê¤¤¤«¤é¤Ç¤¢¤Ã¤¿. ¤½¤³¤Ç, wipe_m_list()¤äclear_cave()¤Çr_info¤Î¥â¥ó¥¹
-       ¥¿¡¼Á´¤Æ¤Îcur_num¤ò0¤Ë¤·¤¿Ä¾¸å¤Ë¥Ú¥Ã¥È¤Ë¤è¤ê²Ã»»¤µ¤ì¤ëcur_num¤ò¤¢¤é¤«
-       ¤¸¤á·×»»¤·, ¤½¤Î¾å¤Ç¥À¥ó¥¸¥ç¥óÀ¸À®¤ä·Ð²á¥¿¡¼¥ó·×»»¤ò¹Ô¤¦¤³¤È¤Ç, ¥æ
-       ¥Ë¡¼¥¯¤Î2½ÅÀ¸À®¤ò²óÈò¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-
-2003-06-01  nothere  <nothere@cvs>
-
-       * src/floors.c 1.14:
-       *m_ptr¤Ëparty_mon[]¤ÎÃæ¿È¤¬ÂåÆþ¤µ¤ì¤ëÁ°¤Ëreal_r_ptr()¤¬¸Æ¤Ð¤ì¤Æ¤¤¤Æ,
-       m_ptr->mflags2¤ÎÃæ¿È¤¬real_r_ptr()¤ËÈ¿±Ç¤µ¤ì¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ.
-
-       * src/cave.c 1.87, src/defines.h 1.104, src/init1.c 1.56, lib/edit/r_info.txt 1.6:
-       »ØÎؤäÌô¤Î¥ß¥ß¥Ã¥¯¤Î¿§¤¬¤½¤Î»þ¡¹¤Î¸ÄÊ̤Îm_idx¤ÇÊѤï¤ë¥³¡¼¥É¤ò¥Õ¥é¥°
-       ATTR_SEMIRAND¤È¤·¤ÆÀ°Íý. ¥Õ¥é¥°¤Î¾ì½ê¤È¤·¤Æ¤Ï, ´û¤Ë»È¤ï¤ì¤Æ¤¤¤Ê¤¤
-       RF2_BRAIN_6¤òÍѤ¤¤¿.
-
-       * src/cave.c 1.86:
-       VARIABLE_PLAYER_GRAPH¤ò̵¸ú¤Ë¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤È¥×¥ì¥¤¥ä¡¼¤òɽ¼¨¤Ç¤­
-       ¤Ê¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/dungeon.c 1.112, src/floors.c 1.13, src/monster2.c 1.58:
-       Ëü¿§¥â¥ó¥¹¥¿¡¼¤ÎºÆÉÁ²è¥Õ¥é¥°shimmer_monsters¤Ë´Ø¤¹¤ë½¤Àµ.
-       * shimmer_monsters¥Õ¥é¥°´ØÏ¢¤Î½èÍý¤Ç¤Ï¥â¥ó¥¹¥¿¡¼¤Î³°¸«¤Ç¤¢¤ëap_r_idx
-         ¤ò¸«¤ë¤è¤¦¤ËÊѹ¹.
-       * shimmer_monsters¤Î¥ë¡¼¥×¤Ç¤Ï¸«¤¨¤Æ¤¤¤Ê¤¤¥â¥ó¥¹¥¿¡¼¤Ï̵»ë¤¹¤ë¤è¤¦¤Ë
-         Êѹ¹.
-       * ATTR_MULTI¤Î¾¤ËSHAPECHANGER¤Ç¤âºÆÉÁ²è¥Õ¥é¥°¤òΩ¤Æ¤ë¤³¤È¤È¤·¤¿. ¤³
-         ¤ì¤ÏÌäÂ꤬¤¢¤ì¤Ð¤¹¤°¤Ë̵¸ú²½¤¹¤ë¤Ù¤­.
-
-       * src/cave.c 1.85:
-       "ÉáÄÌ" ¤Ç¤¢¤ë¾ò·ï¤ËSHAPECHANGER¤Ç¤Ï¤Ê¤¤¤³¤È¤ò²Ã¤¨, ¤½¤ì°Ê¸å¤Î¥Ö¥í¥Ã¥¯
-       ¤ò½èÍý¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹. ¤Þ¤¿, ¥ß¥ß¥Ã¥¯¤Î¿§¤Î½èÍý¤ò¤¹¤Ù¤­¾ì½ê¤¬1¤Ä¤¢¤Ã
-       ¤¿¤Î¤ÇÄɲÃ.
-
-       * src/cave.c 1.84:
-       ¥ß¥ß¥Ã¥¯·Ï¥â¥ó¥¹¥¿¡¼¤Î¿§¤Î¥³¡¼¥É¤Ï¥¿¥¤¥ë¥â¡¼¥É¤ÇÍ­¸ú¤Ë¤Ê¤é¤Ê¤¤¤è¤¦¤Ë
-       ½¤Àµ.
-
-       * src/cave.c 1.83:
-       ¥Þ¥Ã¥×Ãæ¤Î¿¼¤¤ÍÏ´ä¤ò°ìÀƤ˸÷¤é¤»¤ë¥³¡¼¥É¤ò, ³°ÊɤÎmimic¤Ë¤â³ÈÄ¥.
-
-       * src/defines.h 1.103, src/init1.c 1.55:
-       »È¤ï¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥À¥ó¥¸¥ç¥ó¥Õ¥é¥°¤òXXX¤ÇÃÖ¤­´¹¤¨¤¿.
-
-2003-06-01  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info.txt 1.5:
-       µðÂ祵¥¤¥Ð¡¼¥ï¥¤¥¢¡¼¥àÅ·»È°­Ëâ¥ê¥Ã¥Á¤¬¸«¤¨¤ë¤è¤¦¤Ë¡£
-
-2003-06-01  nothere  <nothere@cvs>
-
-       * lib/edit/e_info.txt 1.3: ÂÑ»þ´ÖµÕž¤Î¥¨¥´²Á³Ê¤ò$7500¤ËÀßÄê.
-
-2003-06-01  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.82:
-       ¥³¡¼¥ÉÀ°Íý¡¢Â®ÅÙ²þÁ±¡£¤Þ¤¿SHAPECHANGER¤¬¥¿¥¤¥ëɽ¼¨¤Ç¤â¤Á¤ã¤ó¤È»Ñ¤òÊѤ¨¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/files.c 1.108:
-       ¥À¥ó¥×¤Î[¼ç¤Ê¥Ú¥Ã¥È]Íó¤Ç¾èÇÏÃæ¤Î¥Ú¥Ã¥È¤Ë¡Ö(¾èÇÏÃæ) ¾èÇÏÃæ¡×¤ÈÆó½Å¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2003-05-31  nothere  <nothere@cvs>
-
-       * src/cave.c 1.81:
-       ËÜÍ踫¤¨¤Ê¤¤¤Ï¤º¤ÎCHAR_CLEAR¤«¤ÄATTR_CLEAR¤Î¥â¥ó¥¹¥¿¡¼¤¬¸¸³Ð»þ¤Ë¸«¤¨
-       ¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/cave.c 1.80:
-       ¥â¥ó¥¹¥¿¡¼¥·¥ó¥Ü¥ë¤Î²èÌ̽ÐÎÏÉôʬ¤Î¥³¡¼¥É, ¥·¥ó¥Ü¥ë¥Õ¥é¥°´Ö¤Î°Í¸´Ø·¸
-       ¤òÀ°Íý¤·, ¤«¤Ä¥â¥ó¥¹¥¿¡¼¤Îɽ¸½¤ÎÉý¤òÁý¤ä¤¹¤è¤¦¤ËÊѹ¹.
-
-       ¥·¥ó¥Ü¥ë¥Õ¥é¥°´Ö¤Î°Í¸´Ø·¸¤äÍ¥Àè½ç°Ì¤Ïµì»ÅÍͤǤϼ¡¤ÎÄ̤ê¤Ç¤¢¤Ã¤¿.
-       * SHAPECHANGER, ATTR_ANY¤Î»ÈÍѤˤÏATTR_MULTI¤¬É¬Í×.
-       * ATTR_ANY¤¬¤¢¤ë¾ì¹ç¤ÏATTR_MULTI¤Ç¤Ï¤Ê¤¯ATTR_ANY¤ÎÇÛ¿§¤Ë¤Ê¤ë.
-       * ATTR_MULTI¤¬¤¢¤ë¤ÈATTR_CLEAR¤ÈCHAR_CLEAR¤¬Ìµ»ë¤µ¤ì¤ë.
-       À°Íý¸å¤Ï°Í¸´Ø·¸¤ÈÍ¥Àè½ç°Ì¤ÏATTR_ANY¤ÈATTR_MULTI¤Î¤â¤Î¤À¤±¤¬»Ä¤ë.
-
-       ¤³¤ÎÊѹ¹¤Ç, ¼¡¤Î¤è¤¦¤Ê¥â¥ó¥¹¥¿¡¼¤ò°·¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿.
-       * ÃÏ·Á¤ä¥¢¥¤¥Æ¥à¤Îʸ»ú¤ÏÊѤï¤é¤Ê¤¤¤¬, Ê¸»ú¤Î¿§¤À¤±¤¬ÊѤï¤ë.
-       * Ã±°ì¤Î¿§¤ÎSHAPECHANGER.
-       * ¾²¤Î¿§¤ËÀ÷¤Þ¤ëSHAPECHANGER.
-
-       ¸½¹Ô¥â¥ó¥¹¥¿¡¼¤ËÂФ¹¤ë±Æ¶Á¤Ï¼¡¤ÎÄ̤ê.
-       * "°Û¼¡¸µ¤Î¿§ºÌ" ¤Ë¤Ï¤â¤È¤â¤ÈCHAR_CLEAR¤¬¤³¤ÎÌÜŪ¤ÇÍ¿¤¨¤é¤ì¤Æ¤¤¤ë¤È¹Í
-         ¤¨¤é¤ì, ÀâÌÀ¥Æ¥­¥¹¥È¤Ë¤¢¤ë¤è¤¦¤Ë¿§¤À¤±¤¬Æ°¤¯É½¸½¤ËÊѤï¤ë.
-       * "µðÂ祵¥¤¥Ð¡¼¥ï¥¤¥¢¡¼¥àÅ·»È°­Ëâ¥ê¥Ã¥Á" ¤Ë¤Ï¤³¤³¤Çµó¤²¤¿¥Õ¥é¥°¤¬Á´¤Æ
-         Í¿¤¨¤é¤ì¤Æ¤¤¤ë¤¿¤á, ´°Á´¤Ë¸«¤¨¤Ê¤¯¤Ê¤ë¤Î¤Ç, ¤½¤Î¤Þ¤Þ¤À¤ÈÍýÉÔ¿Ô»à¤Î
-         ¸¶°ø¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦. ¸«¤ë¼êÃʤΤ¢¤ë¥×¥ì¥¤¥ä¡¼¤¬ÃγФǤ­¤ë¤è¤¦¤ÊÁȤß
-         ¹ç¤ï¤»¤Ë¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤.
-
-       ¤Ê¤ª, ¥¿¥¤¥ë¥â¡¼¥É»þ¤Ïº£¤Þ¤ÇÄ̤ê¤Î»ÅÍͤò°Ý»ý¤Ç¤­¤Æ¤¤¤ë.
-
-       * lib/edit/a_info.txt 1.4: ¡ú¥¹¥Ô¥¢¡Ø¥¬¥¨¥Ü¥ë¥°¡Ù¤ËTHROW¤òÍ¿¤¨¤¿.
-
-2003-05-31  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.68: ¹¹¿·
-
-       * src/xtra2.c 1.69: sprintf()¤Î°ú¿ô¤Î¥ß¥¹½¤Àµ¡£
-
-2003-05-31  nothere  <nothere@cvs>
-
-       * src/melee2.c 1.55:
-       ¾èÇÏÃæ¤Î¥â¥ó¥¹¥¿¡¼¤¬¥â¥ó¥¹¥¿¡¼¤ò¹¶·â¤¹¤ë¤È, ¹¶·â¤µ¤ì¤¿¥â¥ó¥¹¥¿¡¼¤¬¥×
-       ¥ì¥¤¥ä¡¼¤«¤éÎ¥¤ì¤Æ¤¤¤¯¾ì¹ç¤¬¤¢¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-05-31  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells1.c 1.60:
-       ¾èÇÏ»þ¤Î¥À¥á¡¼¥¸ÇÛʬ¤Î¥³¡¼¥É¤òºÆ¤Ó´°Á´¤Ë½ñ¤­Ä¾¤·¡£¾èÇÏÃæ¤ËÉáÄ̤˥ץ쥤
-       ¥ä¡¼¤òÁÀ¤Ã¤¿¥Ö¥ì¥¹¹¶·â¤ò¼õ¤±¤¿¤È¤­¤Ë¡¢¥À¥á¡¼¥¸¤¬50%¤º¤Ä¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ
-       ¤¤¤¿¤Î¤Ç¡¢¥×¥ì¥¤¥ä¡¼¤Ï¤Á¤ã¤ó¤È100%¤Î¥À¥á¡¼¥¸(¾èÇϤϴ¬¤­Åº¤¨¤Ç50%¤Î¥À¥á¡¼
-       ¥¸)¤ò¼õ¤±¤ë¤è¤¦¤ËºÆ½¤Àµ¤·¤¿¡£µÕ¤âƱÍÍ(ÌÇ¿¤Ë̵¤¤¾õ¶·¤À¤±¤ì¤É)¡£
-
-       ¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤ÎÀ襤¤Ë¾èÇϤ˾è¤Ã¤¿¾õÂ֤Ǵ¬¤­¹þ¤Þ¤ì¤¿¾ì¹ç¤Ï50%
-       ¤º¤Ä¤ÇÀµ¤·¤¤¡£¥Ü¥ë¥È/¥Ó¡¼¥à¤Î¾ì¹ç¤Ïone_in_(2)¤Ç¤É¤Á¤é¤«ÊÒÊý¤ËÅö¤¿¤ë¡£
-
-2003-05-31  nothere  <nothere@cvs>
-
-       * src/load.c 1.59: extract_option_vars()¤Î°ÌÃ֤ν¤Àµ.
-
-       * src/spells1.c 1.59:
-       ¥×¥ì¥¤¥ä¡¼¤ÎºÂɸ¤ÎÈæ³Ó¤¬2½Å¤Ë¤Ê¤Ã¤Æ¤¤¤ÆÉÔÍפÀ¤Ã¤¿Éôʬ¤ò½¤Àµ. ¤Þ¤¿, ½Å
-       ÎÏ°À­¤Î¥Ü¡¼¥ë¤ä¥Ö¥ì¥¹¤Ç¿½Å¥À¥á¡¼¥¸¤ò¼õ¤±¤ë¥Ð¥°¤ò½¤Àµ. TAB¤ÎÈù̯¤Ê½¤
-       Àµ.
-
-2003-05-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells1.c 1.58:
-       ¾èÇÏÃæ¤ËŨ¤Î¥Ü¥ë¥ÈÅù¤¬¾èÇϤòÁÀ¤Ã¤¿¤¿¤­¤Ë¥×¥ì¥¤¥ä¡¼¤Î¥À¥á¡¼¥¸¤ò0¤Ë¤¹¤ë
-       ¥³¡¼¥É¤¬¥Ð¥°¤Ã¤Æ¡¢¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤ÎÁ褤¤Ëñ¤Ë¥×¥ì¥¤¥ä¡¼¤¬´¬¤­¹þ
-       ¤Þ¤ì¤¿¤È¤­¤Ë¥Ü¥ë¥È¤Î¥À¥á¡¼¥¸¤¬0¤Ë¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-       ¤Þ¤¿¡¢¥³¡¼¥É¤òÀ°Íý¤·¤Æ¡¢¾èÇÏÃæ¤Ë¾¤Î¥â¥ó¥¹¥¿¡¼¤ÎÁ褤¤Ë´¬¤­¹þ¤Þ¤ì¤¿»þ¤Ï
-       ¥À¥á¡¼¥¸¤ò¾èÇϤȥץ쥤¥ä¡¼¤¬È¾Ê¬(dist+1)¤º¤Ä¼õ¤±¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2003-05-30  nothere  <nothere@cvs>
-
-       * lib/edit/d_info.txt 1.3:
-       D:$¹Ô¤Î¥À¥ó¥¸¥ç¥óÀâÌÀ¤Î±Ñʸ¤Ï¾®Ê¸»ú¤Ç»Ï¤Þ¤Ã¤¿Êý¤¬Îɤµ¤½¤¦¤Ê¤Î¤Ç, ¹ÓÌî
-       ¤ÈÅ´¹ö¤ÎÀâÌÀ¤Î¤ßÀèƬ¤ò¾®Ê¸»ú¤Ë.
-
-       * src/init2.c 1.26:
-       "ÆÃÊÌÀ½" ¤Ê¤É¤È¤¤¤Ã¤¿Ìäϸ½ºß¤Ï¥Æ¡¼¥Ö¥ë²½¤µ¤ì¤Æ¤ª¤ê, µ¯Æ°»þ¤Ë "ÆÃÊÌ
-       À½" ¤Ê¤É¤È¤¤¤Ã¤¿Ìäòquark_add()¤·¤Æ¤ª¤¯¤Î¤ÏÉÔÍפǤ¢¤ë¤ÈȽÃǤ·¤¿¤Î¤Ç,
-       quark_add()Éôʬ¤òºï½ü.
-
-       * src/wizard2.c 1.40:
-       ^A O ¤Î½ÐÎϤòÄɵ­·¿¤Ë¤·¤Æ, ¥Ð¡¼¥¸¥ç¥ó¤òÌÀµ­¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/wizard2.c 1.39:
-       ¥ª¥×¥·¥ç¥óbit¤Î»ÈÍѾõ¶·¤ò¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤¹¥³¥Þ¥ó¥É ^A O ¤òÄɲÃ. ¤Þ
-       ¤¿, do_cmd_debug()¤Îswitchʸ¤òÀ°·Á.
-
-       * src/dungeon.c 1.111, src/externs.h 1.108, src/load.c 1.58:
-       ¥ª¥×¥·¥ç¥óbit¤Î¥í¡¼¥É»þ¤«¤é¼ÂºÝ¤Î¥²¡¼¥à³«»Ï¤Þ¤Ç¤Î´Ö, Âбþ¤¹¤ëboolÊÑ¿ô
-       ¤ÎÃͤ¬ÂåÆþ¤µ¤ì¤ºFALSE¤Î¤Þ¤Þ¤Ç¤¢¤ë¾õÂÖ¤À¤Ã¤¿¤¿¤á, ¤½¤Î¸å¤Î³Æ¼ï¾ðÊó¤Î
-       ¥í¡¼¥É¤Ë¥ª¥×¥·¥ç¥ó¤Î¾õÂÖ¤¬È¿±Ç¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-2003-05-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.102, src/types.h 1.29, src/xtra1.c 1.67:
-       p_ptr->pspeed¤òbyte·¿¤ËÊѹ¹¡£xtra1.c¤ÇÉé¤Î¥¹¥Ô¡¼¥É¤Ç¥¢¥ó¥À¡¼¥Õ¥í¡¼¤·¤Ê¤¤¤è¤¦¤ËÂкö¤·¤¿¡£
-
-       * src/generate.c 1.59, src/load.c 1.57, src/floors.c 1.12:
-       set_floor_and_wall()¤òclear_cave()¤ÎÃæ¤Ç¸Æ¤ó¤Ç¤¤¤¿¤Î¤Ï½èÍý»þ´Ö¤Î
-       ÌµÂ̤À¤Ã¤¿¤Î¤Ç³°¤Ë½Ð¤·¤¿¡£
-
-2003-05-29  nothere  <nothere@cvs>
-
-       * src/externs.h 1.107, src/melee1.c 1.31, src/melee2.c 1.54, src/tables.c 1.61:
-       ¸¸³Ð»þ¤Î¥â¥ó¥¹¥¿¡¼Æ±»Î¤Î²¥¤ê¹ç¤¤¤È, ±Ñ¸ìÈǤθ¸³Ð»þ¤Îʸ¾Ï¤¬¤ª¤«¤·¤«¤Ã
-       ¤¿¤Î¤Ç½¤Àµ.
-
-       * src/load.c 1.56:
-       ^S¤Ç¥»¡¼¥Ö¤¹¤ë¤È¸ÄÊÌ¥À¥ó¥¸¥ç¥ó¤Î¾²¤ÈÊɤξðÊ󤬤¹¤Ù¤Æ0¤Ë¤Ê¤ê, ÊɤòÊø¤·
-       ¤¿ÀפˤϥÀ¥ó¥¸¥ç¥ó¤Ë´Ø¤ï¤é¤ºÉ¸½à¤Î¾²¤·¤«½Ð¤Ê¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * lib/edit/e_info.txt 1.2:
-       Ëɶñ¼öÇû¤ÇÇ˲õ¤µ¤ì¤¿(ÁÆ°­ÉÊ)¤Î³»¥¨¥´¤¬ÆâÉôŪ¤Ë¥¯¥í¡¼¥¯¥¨¥´°·¤¤¤À¤Ã¤¿
-       ¤Î¤Ç½¤Àµ.
-
-       * src/defines.h 1.101, src/generate.c 1.58, src/rooms.c 1.32:
-       ¸Ð¤ÎÀ¸À®¥¿¥¤¥×¤òµ­¹æÄê¿ô²½.
-
-       * src/defines.h 1.100, src/dungeon.c 1.110, src/generate.c 1.57, src/melee2.c 1.53, src/rooms.c 1.31:
-       ¥â¥ó¥¹¥¿¡¼¤Î´¶ÃÎÈϰϤ賦 100 ¤òµ­¹æÄê¿ô²½. ¤Þ¤¿, ¥À¥ó¥¸¥ç¥óÀ¸À®»þ¤Î
-       Éô²°¥¿¥¤¥×¤òµ­¹æÄê¿ô²½.
-
-       * src/artifact.c 1.30: "ÂǤÁÅݤ·¤¿" -> "ÂǤÁʧ¤Ã¤¿".
-
-       * src/cmd2.c 1.44:
-       18¥Þ¥¹¤è¤êÎ¥¤ì¤¿¥â¥ó¥¹¥¿¡¼¤ò¥¿¡¼¥²¥Ã¥È¤Ë¤¹¤ë¤È¼Í·â¤äÅêÚ³¤ò¤·¤Æ¤â¥¢¥¤
-       ¥Æ¥à¤¬Èô¤Ð¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-       * src/spells2.c 1.70:
-       °­ËâËâË¡ "¥Ú¥Ã¥ÈÇúÇË" ¤Î¥À¥á¡¼¥¸¤òºÇÂçHP¤Ç¸«¤ë¤è¤¦¤Ë¼Â¸³Åª¤ËÊѹ¹.
-
-       * src/defines.h 1.99, src/dungeon.c 1.109, src/externs.h 1.106, src/melee2.c 1.52, src/monster2.c 1.57, src/xtra2.c 1.68:
-       extract_energy[]¤ÇÇÛÎó³°¥¢¥¯¥»¥¹¤òµ¯¤³¤µ¤Ê¤¤¤è¤¦¤Ë½èÍý¤·¤Æ¤¤¤ëÉôʬ,
-       µÚ¤Ór_info¼¡Âè¤Ç¤ÏÇÛÎó³°¥¢¥¯¥»¥¹¤Î²ÄǽÀ­¤Î¤¢¤ë¾ì½ê¤ÎÂн褽¤Î¾¤ò¤Þ¤È
-       ¤á¤ë°ÕÌ£¤Ç, extract_energy[]¤Ë¤«¤Ö¤»¤ë¥Þ¥¯¥íSPEED_TO_ENERGY()¤òºî¤Ã
-       ¤¿. ¤Þ¤¿, ¥â¥ó¥¹¥¿¡¼¤Î½é´ü¥¹¥Ô¡¼¥É·èÄꥳ¡¼¥É¤ò¤Þ¤È¤á¤¿¾å¤ÇÀ°Íý.
-
-       * src/dungeon.c 1.108: "¥Ç¥Ð¥°" -> "¥Ç¥Ð¥Ã¥°".
-
-       * lib/edit/q0clone0.txt 1.2:
-       ¥¯¥¨¥¹¥È "¥¯¥í¡¼¥óÃϹö"Æâ¤Ç¥É¥¢¤¬¤º¤ì¤Æ¤¤¤ë¤È»×¤ï¤ì¤ëÉôʬ¤Î½¤Àµ.
-
-       * src/xtra2.c 1.67:
-       ¥æ¥Ë¡¼¥¯¤Î¥¯¥í¡¼¥ó¤òÅݤ·¤¿¾ì¹ç¤Ï¤½¤Î»Ýplayrecord¤ËÌÀµ­¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/files.c 1.107, src/spells1.c 1.57, src/spells2.c 1.69, src/xtra1.c 1.66:
-       p_ptr->tim_invis¤Èp_ptr->tim_reflect¤Î°·¤¤¤ò¾¯¤·À°Íý.
-
-       * src/spells1.c 1.56: ¤Û¤ó¤Î¾¯¤·¤À¤±¥³¡¼¥ÉÀ°Íý.
-
-2003-05-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd2.c 1.43, src/cmd4.c 1.86:
-       ±Ñ¸ìÈǤÎÆüµ­¤Îʸ¾Ï¤Ç¡¢²áµî·Á¤È¸½ºß·Á¤¬º®ºß¤·¤Æ¤¤¤¿¤Î¤ò²áµî·Á¤ËÅý°ì¡£
-
-2003-05-28  nothere  <nothere@cvs>
-
-       * src/generate.c 1.56:
-       1.55¤Çplace_floor_bold()¤È¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿Éôʬ¤Î½¤Àµ.
-
-       * src/generate.c 1.55: place_*_grid() -> place_*_bold().
-
-       * src/dungeon.c 1.107:
-       ¥â¥ó¥¹¥¿¡¼¤Î¿ç̲½èÍý¤òprocess_world()¤Ë°Ü¤·¤¿±Æ¶Á¤Ç¥â¥ó¥¹¥¿¡¼¤¬µ¯¤­¤Ë
-       ¤¯¤¯¤Ê¤Ã¤¿¤Î¤Ç, ¥×¥ì¥¤¥ä¡¼¤Î¥¹¥Ô¡¼¥É¤Ë±þ¤¸¤Æ¥â¥ó¥¹¥¿¡¼¤Î¿ç̲¥«¥¦¥ó¥¿
-       ¤ò¸º¤é¤¹Î̤òÄ´À°¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/generate.c 1.54:
-       ¥¢¥ê¡¼¥Ê¥ì¥Ù¥ë¤Ç¤¢¤Ã¤Æ¤â¥À¥ó¥¸¥ç¥ó¤Î³°ÊɤÀ¤±¤Ïfill_type[]¤ò»È¤¦¤è¤¦¤Ë
-       Êѹ¹.
-
-       * src/generate.c 1.53: cave_gen()¤Î¥³¡¼¥ÉÀ°Íý.
-
-2003-05-27  nothere  <nothere@cvs>
-
-       * src/dungeon.c 1.106, src/melee2.c 1.51:
-       ¥â¥ó¥¹¥¿¡¼¤Î¿ç̲¤âprocess_world()¤Ç½èÍý¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-2003-05-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/store.c 1.27, src/defines.h 1.98, src/dungeon.c 1.105:
-       ÀΤ«¤é»Ä¤Ã¤Æ¤¿TURNS¤ÈTICKS¤Îɽµ­¤Îº®Íð¤ò½¤Àµ¡£STORE_TURNS¢ªSTORE_TICKS
-
-2003-05-27  nothere  <nothere@cvs>
-
-       * src/generate.c 1.52, src/grid.c 1.13, src/grid.h 1.3, src/rooms.c 1.30:
-       ±£¤·¥É¥¢¤ò±£¤¹ÃÏ·Á¤¬fill_type[]¤Ë¸ÂÄꤵ¤ì¤Æ¤¤¤Æ, ¥À¥ó¥¸¥ç¥ó¤ÎÊɤι½À®
-       ¤Ë¤è¤Ã¤Æ¤Ï°ìÈ̤ÎÉô²°¤Ç±£¤·¥É¥¢¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì½ê¤¬ÌÀ¤é¤«¤Ëʬ¤«¤ë¤è¤¦¤Ê
-       À¸À®¤Î¤µ¤ìÊý¤¬¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç, ¤½¤¦¤¤¤Ã¤¿±£¤·¥É¥¢¤Î³°¸«¤Ë¤ÏÀ¸À®¾ì½ê¤Ë
-       ±þ¤¸¤¿ÊÉ (fill_type[], feat_wall_inner, feat_wall_outer) ¤òÂбþ¤µ¤»¤ë
-       ¤è¤¦¤ËÊѹ¹.
-
-       * src/cave.c 1.79, src/rooms.c 1.29, src/streams.c 1.10:
-       DARKNESS¥À¥ó¥¸¥ç¥ó¤Ç¤âÌÀ¤ë¤¯¤Ê¤Ã¤ÆÀ¸À®¤µ¤ì¤ëÉôʬ¤¬»Ä¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ.
-
-2003-05-26  nothere  <nothere@cvs>
-
-       * src/cave.c 1.78:
-       ÃÏ·ÁÊѲ½¤Ç¿¼¤¤ÍÏ´ä¤ËÊѤï¤Ã¤¿¾ì¹ç¤ËÍÏ´ä¤È¼þ°Ï8¥Þ¥¹¤¬¸÷¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/mspells1.c 1.41: "ɤ" -> "¿Í".
-
-       * src/dungeon.c 1.104, src/melee2.c 1.50:
-       ¹­°è¥Þ¥Ã¥×¤Ç¤Ï¾èÇÏÃæ¤Î¥Ú¥Ã¥È¤Î°ì»þŪ¾õÂÖ¤¬Àµ¤·¤¯¥ê¥»¥Ã¥È¤µ¤ì¤Ê¤¤¥Ð¥°
-       ¤¬Êó¹ð¤µ¤ì¤¿¤Î¤Ç, ¤½¤ì¤ò½¤Àµ¤¹¤ë¤¿¤á¤Ë¥â¥ó¥¹¥¿¡¼¤Î̵Ũ²½, ²Ã®, ¸ºÂ®,
-       Û¯Û°, º®Íð, ¶²ÉݤΥ«¥¦¥ó¥¿¤Î½èÍý¤ò¥×¥ì¥¤¥ä¡¼¤Î¥«¥¦¥ó¥¿Æ±ÍͤË
-       process_world()Æâ¤Ç°·¤¦¤è¤¦¤ËÊѹ¹.
-       * ¥â¥ó¥¹¥¿¡¼¤¬Û¯Û°¤È¤·¤¿¾ì¹ç¤Ë1/2¤Ç¹ÔÆ°¥­¥ã¥ó¥»¥ë¤µ¤ì¤¿¾ì¹ç¤Ïº®Íð¤È¶²
-         Éݤ¬½èÍý¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç, ½èÍý¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-       * ¤³¤ì¤Þ¤Ç¤Ï¥¹¥Ô¡¼¥É¤ÎÂ礭¤¤¥â¥ó¥¹¥¿¡¼¤Û¤É¾õÂÖÊѲ½¤¬ÀÚ¤ì¤ë¤Î¤¬Â®¤«¤Ã
-         ¤¿¤¬, ¥²¡¼¥à¥¿¡¼¥ó¥×¥í¥»¥¹¤Ç¾õÂÖ¤¬ÀÚ¤ì¤ë¤è¤¦¤ËÊѹ¹¤·¤¿¤¿¤á, °ÊÁ°¤Ë
-         Èæ¤Ù¤Æ¾õÂÖ¤¬Ä¹»ý¤Á¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿. ¤½¤³¤Ç, ²Ã®, ¸ºÂ®, Û¯Û°, º®Íð,
-         ¶²Éݤδü´Ö¤òºÆ¹Í¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤Ç, Äɤäƽ¤Àµ¤¹¤ë.
-       * m_max¸Ä¤ÎÍ×ÁǤò¸«¤ë¥ë¡¼¥×¤ò10¥²¡¼¥à¥¿¡¼¥óËè¤Ë²ó¤¹²ó¿ô¤¬1²óÁý¤¨¤ë¤¿
-         ¤á, ½èÍý¤ÎÃÙ¤¤¥Þ¥·¥ó¤Ç¤Ï¤ä¤ä½Å¤¯¤Ê¤ë¤³¤È¤¬¹Í¤¨¤é¤ì¤ë. ÌäÂ꤬µ¯¤­¤ë
-         ¾ì¹ç¤Ï¤¤¤Ä¤Ç¤â¤³¤ÎÊѹ¹¤òÇË´þ¤·¤Æ¹½¤ï¤Ê¤¤.
-
-2003-05-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.41:
-       ¥Þ¥¯¥í¤Î¥³¥Þ¥ó¥ÉÅù¤òÆþÎϤ¹¤ë¤È¤­¡¢Ê¸»úÎó¤ÎºÇ¸å¤Ë"\"¤¬¤¢¤ë¤È½ªÃ¼Ê¸»ú¤ò
-       ¥¨¥¹¥±¡¼¥×¤·¤Æ¡¢¥á¥â¥êÆâ¤Î¥´¥ß¤¬Ê¸»úÎó¤Î½ª¤ê¤Ë¤¯¤Ã¤Ä¤¤¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-2003-05-25  nothere  <nothere@cvs>
-
-       * src/dungeon.c 1.103:
-       ¥²¡¼¥à¥¿¡¼¥ó¤Î¥³¥á¥ó¥È¤Ç, ¥¿¡¼¥ó¿ô¤¬¸½¾õ¤È¹ç¤Ã¤Æ¤¤¤Ê¤¤¤â¤Î¤ò½¤Àµ.
-
-       * lib/edit/a_info.txt 1.3: "¥¢¥ó¥Ç¥É¥Ã¥É" -> "¥¢¥ó¥Ç¥Ã¥É".
-
-2003-05-24  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.67, src/effects.c 1.39, src/wild.c 1.24:
-       ¤¢¤é¤æ¤ë¾ì¹ç¤Ë¤ª¤¤¤Æ, set_action()¤Ç²Î°Ê³°¤Î¥¢¥¯¥·¥ç¥ó¤òÍ׵ᤵ¤ì¤¿¾ì
-       ¹ç¤Ïľ¤Á¤Ë²Î¤ò»ß¤á¤ë¤è¤¦¤ËÊѹ¹. set_action()¤«¤éstop_singing()¤ò¸Æ¤ó
-       ¤Ç¤¤¤ë¤¬, ºÆµ¢²¼¹ß¥ë¡¼¥×¤Ë¤Ê¤é¤Ê¤¤¤è¤¦¤ËÂн褷¤Æ¤¢¤ë.
-
-       * src/melee2.c 1.49, src/mspells1.c 1.40:
-       ¥â¥ó¥¹¥¿¡¼¤Î̵Ũ²½¾õÂÖ¤¬Àڤ줿»þ¤Î½èÍý¤Ë´Ø¤¹¤ë¥Ð¥°½¤Àµ.
-       * ¥×¥ì¥¤¥ä¡¼¤¬ËâÎϾõ¤ì¤¿¤È¤­¤Ë¾èÇϤ¬ÌµÅ¨²½¤·¤Æ¤¤¤¿¾ì¹ç, ¾èÇϤÎɬ
-         Í×¥¨¥Ê¥¸¡¼¤ËENERGY_NEED()¤¬²Ã»»¤µ¤ì¤ë¤Ù¤­¤Ê¤Î¤Ë²Ã»»¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿
-         ¥Ð¥°¤ò½¤Àµ.
-       * ¥â¥ó¥¹¥¿¡¼¤Î̵Ũ²½¤¬¼«Á³¤ËÀڤ줿¾ì¹ç, ¥Æ¥ì¥Ñ¥·¡¼¤ò´Þ¤á¤Æ¥×¥ì¥¤¥ä¡¼
-         ¤«¤é¸«¤¨¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤Ë¤·¤«ENERGY_NEED()¤Ë¤è¤ë¹Åľ»þ´Ö¤¬Å¬ÍѤµ¤ì
-         ¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/wild.c 1.23:
-       ¹­°è¥Þ¥Ã¥×¤Ë½Ð¤ë¤È²Î¤¬»ß¤Þ¤Ã¤¿¥á¥Ã¥»¡¼¥¸¤Ï½Ð¤ë¤¬, ¼ÂºÝ¤Ë¤Ï²Î¤¬»ß¤Þ¤Ã
-       ¤Æ¤ª¤é¤º, ¹­°è¥Þ¥Ã¥×¤ÇMP¤ò¸º¤é¤µ¤º²Î¤¤Â³¤±¤é¤ì¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/files.c 1.106:
-       tim_player_flags()¤Î°ú¿ôim_and_res¤Ï¾ï¤ËTRUE¤Ç»È¤ï¤ì¤Æ¤¤¤Æ°ÕÌ£¤ò¤Ê¤µ
-       ¤Ê¤«¤Ã¤¿¤Î¤Çºï½ü.
-
-       * src/generate.c 1.51:
-       cave_gen()¤ÎÅÓÃæ¤Ç³°ÊɤÀ¤±¥Õ¥é¥°¤òÍî¤È¤¹¥³¡¼¥É¤¬ÉÔÍפΤ褦¤Ê¤Î¤Ç,
-       #if 0 - #endif¤Ç°Ï¤Ã¤¿.
-
-       * src/generate.c 1.50:
-       ³°ÊɤòFEAT_NONE¤Ë½é´ü²½¤·¤Æ¤«¤é¤ï¤¶¤ï¤¶ºÆÀßÄꤷ¤Ê¤ª¤¹¤È¤¤¤¦¥³¡¼¥É¤ò
-       ºï½ü.
-
-       * src/cmd1.c 1.75, src/cmd2.c 1.42, src/defines.h 1.97, src/generate.c 1.49, src/mutation.c 1.11, src/spells3.c 1.75, src/streams.c 1.9:
-       ¥À¥ó¥¸¥ç¥ó¤Î³°¼þ¤Î±Êµ×´ä¤Î¸«¤¿Ìܤ¬¥À¥ó¥¸¥ç¥ó°Í¸¤Ë¤Ê¤ë¤è¤¦¤ËÊѹ¹.
-       ToME ¤È TOband ¤ò»²¹Í¤Ë¼ÂÁõ¤·¤¿.
-       * È½Äê¥Þ¥¯¥í, µÚ¤Ó¿Ê¤á¤Ê¤¤¾ì¹ç¤Î¥á¥Ã¥»¡¼¥¸¤Ï TOband ¤Î¤â¤Î¤ò»È¤Ã¤¿.
-       * ¥«¥ª¥¹ËâË¡ "µõ̵¾·Íè" ¤Ç, ¾²¤Ë¸«¤¨¤ë³°ÊɤÏÊɤ˿ô¤¨¤Ê¤¤.
-
-       * src/dungeon.c 1.102:
-       ²Î "¥Õ¥£¥ó¥´¥ë¥Õ¥£¥ó¤ÎÄ©Àï" ¤òºÆ³«¤·¤¿»þ¤Ë²èÌ̤¬ÌµÅ¨»þ¤Î¤â¤Î¤Ë¤Ê¤é¤º,
-       ¤½¤Î¸å¤ËÆ°¤¤¤¿¥â¥ó¥¹¥¿¡¼¤¬½ç¼¡Çò¤¯¤Ê¤Ã¤Æ¤¤¤¯¥Ð¥°¤ò½¤Àµ.
-
-2003-05-20  nothere  <nothere@cvs>
-
-       * src/store.c 1.26:
-       Ì¥ÎϤ¬¶Ëü¤ËÄ㤯, Å¹¼ç¤È¤Î¼ï²´ÖÁêÀ­¤¬¶Ëü¤Ë°­¤¯, ¶Ëü¤Ë²Á³Ê¤Î¹â¤¤¥¢
-       ¥¤¥Æ¥à¤¬¥Ö¥é¥Ã¥¯¥Þ¡¼¥±¥Ã¥È¤ÇÇä¤é¤ì¤¿¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Æ 1$ ¤ÇÇ㤨¤Æ¤¤
-       ¤¿¥Ð¥°¤ò²¾½¤Àµ. u32b¤Ø¤Î¥­¥ã¥¹¥È¤ËÍê¤Ã¤Æ¤ª¤ê, ¤½¤Î¾ì¤·¤Î¤®.
-
-2003-05-18  nothere  <nothere@cvs>
-
-       * lib/edit/a_info.txt 1.2:
-       Ì¤Ìõ¤Î¸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀâÌÀ¤òÏÂÌõ. ²þÁ±¤Î;ÃϤ¢¤ê.
-       N:28:¡ú³×À½¥¹¥±¥¤¥ë¡¦¥á¥¤¥ë¡Ø¥µ¥ë¥±¥Ã¥È¥¹¡Ù
-       N:44:¡ú¥¯¥í¡¼¥¯¡Ø¥³¥ë¥¤¥ó¡Ù
-       N:45:¡ú¥¨¥ë¥Õ¤Î¥¯¥í¡¼¥¯¡Ø¥Û¥ë¥³¥ë¥ì¥¹¡Ù
-       N:53:¡ú³×¥°¥í¡¼¥Ö¡Ø¥«¥ó¥ß¥¹¥ê¥à¡Ù
-       N:80:¡ú¼óÀڤ꥽¡¼¥É¡Ø¥¯¥ê¥¹¥É¥¥¥ê¥¢¥ó¡Ù
-       N:86:¡ú¥ì¥¤¥Ô¥¢¡Ø¥Õ¥©¥é¥¹¥®¥ë¡Ù
-       N:95:¡ú¥Ï¥ë¥Ù¥ë¥È¡Ø¥ª¥½¥ó¥Ç¥£¥¢¡Ù
-       N:105:¡ú¥É¥ï¡¼¥Õ¤Î¥í¥Ã¥Û¥¢¡¼¥Ð¡¼¡¦¥¢¥Ã¥¯¥¹
-       N:114:¡ú¥â¡¼¥Ë¥ó¥°¡¦¥¹¥¿¡¼¡Ø·ìή¤Î»É¡Ù
-       N:118:¡ú¥¯¥©¡¼¥¿¡¼¥¹¥¿¥Ã¥Õ¡Ø¥Ê¥ë=¥¤=¥Ð¥®¥ë¡Ù
-       N:180:¡ú¥Ï¥é¥É¤Î¥Ø¥ô¥£¡¦¥¯¥í¥¹¥Ü¥¦
-       ¤Ê¤ª, ±Ñ¸ìÈǤÇÁ´³Ñ¥¹¥Ú¡¼¥¹¤¬¸½¤ì¤ë¾ì½ê¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2003-05-17  nothere  <nothere@cvs>
-
-       * src/bldg.c 1.35:
-       °­Ì´¥â¡¼¥É¤Ç¤Î°­Ì´¤Î¼ï²ÊÌ¥»¡¼¥Ó¥ó¥°¥¹¥í¡¼¤ÎÆ°ºî¤ò½¤Àµ.
-
-       * src/xtra1.c 1.65:
-       IM_*¤À¤±¤¬¤¢¤Ã¤ÆÂбþ¤¹¤ëRES_*¤Î¤Ê¤¤ÁõÈ÷¤ò¿È¤ËÉÕ¤±¤Æ¤¤¤ë¾ì¹ç¤Ë, °ìÉô¤Î
-       ½èÍý¤Ç¤Ï¸µÁÇÌȱ֤¬¤¢¤ê¤Ê¤¬¤é¸µÁÇÂÑÀ­¤¬¤Ê¤¤¤È¤ß¤Ê¤µ¤ì¤ë¾ì¹ç¤¬¹Í¤¨¤é¤ì
-       ¤ë¤Î¤Ç, calc_bonuses()Æâ¤Çp_ptr->immune_*¤¬TRUE¤Ë¤Ê¤ë¾ì¹ç¤ÏÂбþ¤¹¤ë
-       p_ptr->resist_*¤âTRUE¤Ë¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/spells3.c 1.74:
-       mod_need_mana()¤Çµ­¹æÄê¿ô²½¤Ç¤­¤ëÉôʬ¤òµ­¹æÄê¿ô²½. ¥³¥á¥ó¥È¤òÉÕ²Ã.
-
-2003-05-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/init2.c 1.25, src/dungeon.c 1.101:
-       ÂÔµ¡¸å¤Î¥¹¥³¥¢Á÷¿®¤Çv_info¤Î¥Á¥§¥Ã¥¯¥µ¥à¤¬¤ª¤«¤·¤¤¥Ð¥°½¤Àµ¡£init_v_info()¤¬
-       ¥¹¥¿¡¼¥ÈľÁ°¤Þ¤Ç¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢Â¾¤Îinit_*_info()¤ÈƱ¤¸¾ì½ê¤Ë¤·¤¿¡£
-
-       * src/dungeon.c 1.100:
-       ¿³È½¤ÎÊõÀФ¬ÂÎÎϤòµÛ¼ý¤¹¤ë¥á¥Ã¥»¡¼¥¸¤Ç̤´ÕÄê¤Î»þ¤Ï¡Ö¤Ê¤Ë¤«¤¬¡×¤Èɽ¼¨¤¹¤ë¤è¤¦¤Ë
-       ½¤Àµ¡£¤Þ¤¿ËÞÍǤδ¬Êª¤ò»È¤Ã¤¿¸å¤ÎÊõÀФÏÂÎÎϤòµÛ¼ý¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-2003-05-16  nothere  <nothere@cvs>
-
-       * src/mspells2.c 1.28.2.1:
-       ¥Ú¥Ã¥ÈÌ¿Îá "¥×¥ì¥¤¥ä¡¼¤ò´¬¤­¹þ¤àÈÏ°ÏËâË¡¤ò»È¤¦" ¤Ë´Ø¤ï¤ë¥Ð¥°½¤Àµ.
-       ³«È¯ÈǤè¤ê¥Þ¡¼¥¸.
-       * ¥Ú¥Ã¥È¤Î¥Ü¡¼¥ëËâË¡¤Î¥¿¡¼¥²¥Ã¥È¤¬ÊɤÎÃæ¤Ë¤¤¤ë¾ì¹ç, ´¬¤­Åº¤¨OFF¤Ç¤¢¤Ã
-         ¤Æ¤â¥Ü¡¼¥ë¤ÎÃæ¿´¤Î·×»»¤¬¤º¤ì¤Æ¤¤¤Æ´¬¤­Åº¤¨¤Ë¤Ê¤ë¾ì¹ç¤¬¤¢¤Ã¤¿¥Ð¥°¤ò
-         ½¤Àµ.
-       * ¥Ú¥Ã¥È¤ÈŨ¤¬¤¤¤Æ, Êɤθþ¤³¤¦Â¦¤Ë¥×¥ì¥¤¥ä¡¼¤¬¤¤¤ë¾ì¹ç¤ò¹Í¤¨¤ë. ²¼¿Þ
-         ¤Ë¤ª¤¤¤Æ, 'A' ¤¬¥Ú¥Ã¥È¤Ç¤¢¤ê, 'D' ¤ÏŨ¤Ç¤¢¤ë¤È¤¹¤ë.
-
-         ..#........
-         .@#D.....A.
-         ..#........
-
-         ¤³¤Î¤È¤­, Ä̾ï¤Î¥Ü¡¼¥ëËâË¡¤Ç¤Ï¥×¥ì¥¤¥ä¡¼¤ò´¬¤­Åº¤¨¤Ë¤·¤Ê¤¤¤Î¤Ë, ´¬
-         ¤­Åº¤¨OFF¤À¤È¥Ü¡¼¥ëËâË¡¤ò·â¤¿¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤È¤¤¤¦¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç
-         ½¤Àµ.
-
-       * src/mspells2.c 1.35:
-       ¥Ú¥Ã¥È¤ÎÌ¿Îá½èÍýÉôʬ¤òÀ°Íý. ¤Þ¤¿, RF?_BALL_MASK¤ÎËâË¡¤ò»ý¤¿¤Ê¤¤¥â¥ó¥¹
-       ¥¿¡¼¤Ç¤Ï¥Ü¡¼¥ëËâË¡´¬¤­Åº¤¨È½Äê¤Î½èÍý¤ò¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-       * src/mspells2.c 1.34:
-       ¥Ú¥Ã¥ÈÌ¿Îá "¥×¥ì¥¤¥ä¡¼¤ò´¬¤­¹þ¤àÈÏ°ÏËâË¡¤ò»È¤¦" ¤Ë´Ø¤ï¤ë¥Ð¥°½¤Àµ.
-       * ¥Ú¥Ã¥È¤Î¥Ü¡¼¥ëËâË¡¤Î¥¿¡¼¥²¥Ã¥È¤¬ÊɤÎÃæ¤Ë¤¤¤ë¾ì¹ç, ´¬¤­Åº¤¨OFF¤Ç¤¢¤Ã
-         ¤Æ¤â¥Ü¡¼¥ë¤ÎÃæ¿´¤Î·×»»¤¬¤º¤ì¤Æ¤¤¤Æ´¬¤­Åº¤¨¤Ë¤Ê¤ë¾ì¹ç¤¬¤¢¤Ã¤¿¥Ð¥°¤ò
-         ½¤Àµ.
-       * ¥Ú¥Ã¥È¤ÈŨ¤¬¤¤¤Æ, Êɤθþ¤³¤¦Â¦¤Ë¥×¥ì¥¤¥ä¡¼¤¬¤¤¤ë¾ì¹ç¤ò¹Í¤¨¤ë. ²¼¿Þ
-         ¤Ë¤ª¤¤¤Æ, 'A' ¤¬¥Ú¥Ã¥È¤Ç¤¢¤ê, 'D' ¤ÏŨ¤Ç¤¢¤ë¤È¤¹¤ë.
-
-         ..#........
-         .@#D.....A.
-         ..#........
-
-         ¤³¤Î¤È¤­, Ä̾ï¤Î¥Ü¡¼¥ëËâË¡¤Ç¤Ï¥×¥ì¥¤¥ä¡¼¤ò´¬¤­Åº¤¨¤Ë¤·¤Ê¤¤¤Î¤Ë, ´¬
-         ¤­Åº¤¨OFF¤À¤È¥Ü¡¼¥ëËâË¡¤ò·â¤¿¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤È¤¤¤¦¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç
-         ½¤Àµ.
-
-       * lib/edit/r_info.txt 1.4:
-       ¥ô¥§¥Î¥à¡¦¥ï¥¤¥¢¡¼¥à¤È¥Ð¥¤¥ë¡¦¥ï¥¤¥¢¡¼¥à¤ËDROP_CORPSE¤òÉÕ¤±¤¿.
-
-       * src/cmd5.c 1.66: ³ç¸Ì¤¬Â¿¤¯¤Æ¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-2003-05-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd1.c 1.74, src/cmd5.c 1.65:
-       ÍîÇÏ»þ¤Î½ÏÎýÅپ徺(cmd5.c)¤â¾èÇϤνÏÎýÅÙ¤¬MAX¤ò±Û¤¨¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-       ¤µ¤é¤ËÀè¤Ë½¤Àµ¤Ç MIN() ¤ò MAX()¤È´Ö°ã¤¨¤Æ¤¤¤¿¤Î¤ÇºÆ½¤Àµ¡£
-
-2003-05-15  nothere  <nothere@cvs>
-
-       * src/cmd5.c 1.64:
-       (RIDING_EXP_SKILLED - RIDING_EXP_BEGINNER) -> 1500 ¤ËÌᤷ¤¿.
-
-2003-05-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd1.c 1.73:
-       ¾èÇϤνÏÎýÅپ徺¤Î¥³¡¼¥É¤òÀ°Íý¡£½ÏÎýÅÙ¤ÎMAX¤ò±Û¤¨¤Æ¤·¤Þ¤¦»ö¤¬¤¢¤ë¥Ð¥°½¤Àµ¡£
-
-2003-05-15  nothere  <nothere@cvs>
-
-       * src/defines.h 1.81.2.4, lib/help/jversion.txt 1.14.2.2, lib/file/news_j.txt 1.15.2.3, lib/file/news.txt 1.16.2.3, configure.in 1.22.2.3:
-       1.4.1 -> 1.4.2.
-
-       * src/spells3.c 1.73:
-       Î䵤¤Î2½ÅÂÑÀ­¤ÇÎ䵤¤ò·Ú¸º¤Ç¤­¤º, ÆǤÎ2½ÅÂÑÀ­¤ÇÎ䵤¤ò·Ú¸º¤¹¤ë¤è¤¦¤Ë
-       ¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/xtra1.c 1.55.2.1, src/wizard2.c 1.31.2.1, src/store.c 1.20.2.3, src/spellstips.h 1.24.4.1, src/spells3.c 1.56.2.4, src/spells1.c 1.44.2.2, src/racial.c 1.26.2.4, src/object2.c 1.62.2.2, src/mutation.c 1.7.2.1, src/mspells3.c 1.16.2.1, src/mspells1.c 1.34.2.1, src/monster1.c 1.27.2.1, src/melee2.c 1.37.2.2, src/melee1.c 1.22.2.1, src/mane.c 1.13.2.1, src/hissatsu.c 1.19.2.1, src/flavor.c 1.27.2.3, src/files.c 1.88.2.2, src/externs.h 1.87.2.4, src/dungeon.c 1.78.2.4, src/defines.h 1.81.2.3, src/cmd5.c 1.49.2.4, src/cmd4.c 1.66.2.5, src/cmd3.c 1.32.2.1, src/cmd1.c 1.60.2.2, src/birth.c 1.57.2.3, lib/help/jmagic.txt 1.8.2.1, lib/file/monspeak_j.txt 1.6.6.1, lib/edit/r_info.txt 1.1.2.1, lib/edit/q0000005.txt 1.1.2.1, lib/edit/k_info.txt 1.3.2.3:
-       1.5.x·Ï¤Î½¤Àµ¤ò¥Þ¡¼¥¸.
-       * ¥í¥Ã¥É¤Î¥Ð¥°½¤Àµ.
-       * ¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤¬¤é¤ß¤Î¥Ð¥°½¤Àµ.
-       * breath_shape()¤Î¥Ð¥°½¤Àµ.
-       * ÃÃÌê»Õ¤Î»¦Ù¤¤Î϶¼ê¤ÎÎô²½¤Î¥Ð¥°½¤Àµ.
-       * ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¥­¥ã¥ó¥»¥ë»þ¤ÎMP¤Î½¤Àµ.
-       * ¼ï²Êѹ¹¸å¤Î¥¿¡¼¥ó¿ô¤Î¥Ð¥°½¤Àµ.
-       * ¥â¥ó¥¹¥¿¡¼¤ÎHPµÛ¼ý¹¶·â¤Î¥Ð¥°½¤Àµ.
-       * ¥¹¥Ú¥ë¥Þ¥¹¥¿¡¼¤ÈÀÖËâÆ»»Õ¤Ë´Ø¤ï¤ë¥Ð¥°½¤Àµ.
-       * Ç˼ÙËâË¡ "¿À¤ÎÅܤê" ¤ò°Û¾ï¤Ë±ó¤¤µ÷Î¥¤ËÈô¤Ð¤»¤ë¥Ð¥°½¤Àµ.
-       * Í­ÎÁ¥â¥ó¥¹¥¿¡¼Ä´ºº¤Ë´Ø¤ï¤ë¥¦¥£¥ó¥É¥¦ÉÁ²è¤Î¥Ð¥°½¤Àµ.
-       * ¼«Âð¤ÈÇîʪ´Û¤¬ÊÕ¶­¤ÎÃϤˤʤë¥Ð¥°½¤Àµ.
-       * ²Î "ʬ²ò²»ÇÈ" ¤ÎÀâÌÀ½¤Àµ.
-       * ¥Ù¡¼¥¹¥¢¥¤¥Æ¥àÀâÌÀ¤ÎÏÂÌõ.
-       * Â¾¤¤¤¯¤Ä¤«.
-
-2003-05-13  nothere  <nothere@cvs>
-
-       * src/hissatsu.c 1.22: "martial arts" -> "special attacks".
-
-2003-05-12  nothere  <nothere@cvs>
-
-       * src/cave.c 1.77:
-       ¤â¤Ï¤ä¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤IBM¥°¥é¥Õ¥£¥Ã¥¯¥¹¤ËÂбþ¤·¤Æ¤¤¤¿Éôʬ¤òºï½ü.
-
-       * src/spellstips.h 1.25: ²Î "ʬ²ò²»ÇÈ" ¤ÎÀâÌÀ¤ò½¤Àµ.
-
-       * lib/file/seppuku.txt 1.4:
-       ±Ñ¸ìÈǤÇÀÚÊ¢¤·¤¿¾ì¹ç¤ÎLast word¤Î¥Ç¥Õ¥©¥ë¥È¤Îʸ¤òhissatsu.c¤«¤é¥³¥Ô¡¼
-       ¤·¤ÆÆþ¤ì¤¿.
-
-2003-05-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.105: Typo: vampicic -> vampiric
-
-2003-05-12  nothere  <nothere@cvs>
-
-       * lib/file/seppuku.txt 1.3:
-       ±Ñ¸ìÈǤÇÀÚÊ¢¤¹¤ë¤ÈLast word¤Î¥Ç¥Õ¥©¥ë¥È¤Îʸ¤¬Ê¸»ú²½¤±¤¹¤ë¤Î¤Ç, ÅöÌ̤Ï
-       seppuku.txt¤«¤éÆüËܸì¤òºï½ü¤·, ¥¹¥Ú¡¼¥¹¤À¤±¤Î¹Ô¤À¤±¤òÆþ¤ì¤¿.
-
-       * src/cave.c 1.76, src/cmd1.c 1.72, src/cmd2.c 1.41, src/cmd6.c 1.51, src/defines.h 1.96, src/dungeon.c 1.99, src/effects.c 1.38, src/files.c 1.104, src/melee1.c 1.30, src/mind.c 1.22, src/monster2.c 1.56, src/mspells1.c 1.39, src/object2.c 1.76, src/spells1.c 1.55, src/spells2.c 1.68, src/spells3.c 1.72, src/xtra1.c 1.64:
-       Ä̾ï¤Î°ì»þ¥Õ¥é¥°¤È, ¤½¤ì¤ËÂбþ¤¹¤ë²Î¤Î¾õÂ֤ΰ·¤¤¤¬¾¯¤·¤º¤ì¤Æ¤¤¤¿¤Î¤Ç,
-       °·¤¤¤òÅù²Á¤Ë¤¹¤ë¥Þ¥¯¥í¤òºî¤ê, ¤Þ¤È¤á¤é¤ì¤ëÉôʬ¤ò¤Þ¤È¤á¤¿. ¤³¤ì¤Ë´ØÏ¢
-       ¤·, ¤¤¤¯¤Ä¤«¤Î½¤Àµ¤ò´Þ¤à.
-       * ²Î "¸µÁÇÂÑÀ­" ¤ÎËâÎϾõî¾ò·ï¤¬¤ª¤«¤·¤«¤Ã¤¿¤Î¤Ç, Ä̾ï¤Î°ì»þÂÑÀ­¤ÈƱ
-         ¤¸¤¯¤·¤¿.
-       * ¥¨¥ó¥È¤È¥¢¥ó¥É¥í¥¤¥É¤Î¼åÅÀ¤¬¥ª¡¼¥é¤ËÈ¿±Ç¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-       * »à¤ÎÂç³ù¤¬¼«Ê¬¤ò½ý¤Ä¤±¤¿¾ì¹ç¤Ë, ¸µÁÇÌȱ֤¬¤¢¤Ã¤Æ¤â¸µÁÇ¥¹¥ì¥¤¤¬¼«Ê¬
-         ¤Ë¸ú¤¤¤Æ¤·¤Þ¤¦¾ì¹ç¤¬¤¢¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-05-11  nothere  <nothere@cvs>
-
-       * src/spells1.c 1.54:
-       GF_PSI¤òÅö¤Æ¤¿»þ¤Ë, ¥×¥ì¥¤¥ä¡¼¤Ë»ëÀþ¤¬Ä̤餺±Æ¶Á¤Î¤Ê¤¤¤Ï¤º¤Î¥â¥ó¥¹
-       ¥¿¡¼¤¬µ¯¤­¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/birth.c 1.68, src/externs.h 1.105, src/wizard2.c 1.38:
-       HD¤ò¿¶¤ë½èÍý¤Ï¥­¥ã¥é¥¯¥¿¥á¥¤¥¯»þ¤È¿·À¸Åù¤Îdo_cmd_rerate()»þ¤Ç¶¦Ä̤δØ
-       ¿ô¤ò¸Æ¤Ö¤è¤¦¤ËÊѹ¹.
-
-2003-05-11  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.67: ¹¹¿·
-
-       * CVSROOT/loginfo 1.2:
-       ¥³¥ß¥Ã¥È¥á¡¼¥ë¤òhengband-cvs@lists.sourceforge.jp¤ØÀßÄê¡£
-
-2003-05-11  nothere  <nothere@cvs>
-
-       * src/cmd4.c 1.85, src/flavor.c 1.34, src/melee1.c 1.29, src/spells1.c 1.53:
-       BCC++ 5.5.1¤Ç±Ñ¸ìÈǤò¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¾ì¹ç¤Î·Ù¹ð¤Î½üµî.
-
-       * lib/file/crime.txt 1.3: ¤â¤¦Æɤޤì¤Æ¤¤¤Ê¤¤crime.txt¤òºï½ü.
-
-2003-05-10  nothere  <nothere@cvs>
-
-       * src/cmd1.c 1.71, src/generate.c 1.48, src/main-win.c 1.24, src/makefile.bcc 1.8:
-       BCC++ 5.5.1¤Î¥³¥ó¥Ñ¥¤¥ë·Ù¹ðÀßÄê¤òÄɲä·¤¿¾å¤Ç, ½üµî²Äǽ¤Ê·Ù¹ð¤Î½üµî.
-
-       * src/files.c 1.103, lib/file/a_cursed.txt 1.3, lib/file/a_cursed_j.txt 1.10, lib/file/a_high.txt 1.5, lib/file/a_high_j.txt 1.12, lib/file/a_low.txt 1.7, lib/file/a_low_j.txt 1.11, lib/file/a_med.txt 1.7, lib/file/a_med_j.txt 1.12, lib/file/aname_j.txt 1.2, lib/file/chainswd.txt 1.2, lib/file/chainswd_j.txt 1.2, lib/file/crime.txt 1.2, lib/file/death.txt 1.2, lib/file/death_j.txt 1.3, lib/file/elvish.txt 1.2, lib/file/elvish_j.txt 1.2, lib/file/error.txt 1.2, lib/file/error_j.txt 1.2, lib/file/mondeath.txt 1.3, lib/file/mondeath_j.txt 1.3, lib/file/monfear.txt 1.3, lib/file/monfear_j.txt 1.5, lib/file/monfrien.txt 1.2, lib/file/monfrien_j.txt 1.2, lib/file/monspeak.txt 1.3, lib/file/monspeak_j.txt 1.9, lib/file/rumors.txt 1.3, lib/file/rumors_j.txt 1.3, lib/file/seppuku.txt 1.2, lib/file/seppuku_j.txt 1.2, lib/file/silly.txt 1.2, lib/file/silly_j.txt 1.2, lib/file/w_cursed.txt 1.3, lib/file/w_cursed_j.txt 1.6, lib/file/w_high.txt 1.6, lib/file/w_high_j.txt 1.10, lib/file/w_low.txt 1.4, lib/file/w_low_j.txt 1.15, lib/file/w_med.txt 1.6, lib/file/w_med_j.txt 1.12:
-       get_rnd_line()¤Î»ÅÍͤòÊѹ¹¤·, ¥é¥ó¥À¥Þ¥¤¥º¤¹¤ë³Æ¥Ö¥í¥Ã¥¯¤ÎÀèƬ¤Ë¹Ô¿ô
-       ¤ò½ñ¤«¤Ê¤¯¤Æ¤âÆ°ºî¤¹¤ë¤è¤¦¤ËÊѹ¹.
-       * ¥Ö¥í¥Ã¥¯¤Î¶èÀÚ¤ê¤Ï²þ¹Ô¤À¤±¤Î¹Ô, ¤â¤·¤¯¤Ï¥Õ¥¡¥¤¥ë½ªÃ¼¤È¤¹¤ë.
-       * Êѹ¹¤ÎÉûºîÍѤȤ·¤Æ, ¼¡¤Î¤è¤¦¤Ê»È¤¤Êý¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿.
-         N:1:¥â¥ó¥¹¥¿¡¼1
-         Âæ»ì1
-         N:2:¥â¥ó¥¹¥¿¡¼2
-         N:3:¥â¥ó¥¹¥¿¡¼3
-         Âæ»ì2
-         Âæ»ì3
-         ¤È½ñ¤¤¤¿¾ì¹ç¤Ë¤ÏÂæ»ì2¤È3¤Ï¥â¥ó¥¹¥¿¡¼1¤«¤é3¤Ç¶¦Ä̤ˤʤ뤬, Âæ»ì1¤À¤±
-         ¤Ï¥â¥ó¥¹¥¿¡¼1¤À¤±¤¬Ãý¤ë.
-
-2003-05-10  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/k_info.txt 1.8: °ìÉôÌõ½¤Àµ¡£¥³¥á¥ó¥ÈÄɲá£
-
-2003-05-09  nothere  <nothere@cvs>
-
-       * src/wizard2.c 1.37:
-       ^A j ¤Ç¥À¥ó¥¸¥ç¥ó¤À¤±»ØÄꤷ¤Æ³¬»ØÄê¤ò¥­¥ã¥ó¥»¥ë¤¹¤ë¤È, ³¬¤Ï¤½¤Î¤Þ¤Þ¤Ç¥À¥ó¥¸¥ç¥ó¤À¤±¤¬
-       ÊѤï¤Ã¤¿¤³¤È¤Ë¤Ê¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/tables.c 1.60:
-       mbe_info[]¤ÎÇÛÎóÍ×ÁǤ¬Àµ¤·¤¯{}¤Ç³ç¤é¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2003-05-09  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.66: ¹¹¿·
-
-       * src/spells2.c 1.67, src/defines.h 1.95, src/dungeon.c 1.98, src/generate.c 1.47, src/monster2.c 1.55:
-       MFLAG_SHOW¤ÈMFLAG_MARK¤ò m_ptr->mflag2¤Ø°ÜÆ°¤·¤Æ¡¢¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤ËÊݸ
-       ¤µ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤Ë¤è¤Ã¤Æ¥»¡¼¥Ö¥³¥Þ¥ó¥É»ÈÍÑľ¸å¤Ë¥â¥ó¥¹¥¿¡¼´¶ÃκѤߤÎ
-       Å¨¤¬´¶ÃΤµ¤ì¤Æ¤¤¤Ê¤¤¤«¤Î¤è¤¦¤Ë¿¶Éñ¤¦¥Ð¥°¤ò½¤Àµ¡£
-
-       * src/spells3.c 1.71, src/xtra2.c 1.66, src/mutation.c 1.10, src/spells1.c 1.52, src/spells2.c 1.66, src/defines.h 1.94, src/load.c 1.55, src/melee2.c 1.48, src/monster1.c 1.33, src/monster2.c 1.54:
-       m_ptr->flag2¤Î¥Õ¥é¥°Ì¾¤ò MFLAG_* ¤«¤éMFLAG2_* ¤ËÊѹ¹¤·¤¿¡£
-       ¼¡¤Î¤è¤¦¤Ë¼«Æ°¤Ç½èÍý¤·¤¿¤Î¤Ç¡¢»²¹Í¤Þ¤Ç¤Ë¡£
-       % for x in src/*.[ch]; do sed 's/MFLAG_\(KAGE\|NOPET\|NOGENO\|CHAMELEON\|NOFLOW\)/MFLAG2_\1/g' $x>$x.new; diff -u $x $x.new>$x.diff; done;
-       % cat src/*.diff|patch -p0
-
-2003-05-09  nothere  <nothere@cvs>
-
-       * src/cave.c 1.75, src/floors.c 1.11:
-       forget_view()¤Èforget_lite()¤ÎÃæ¤Ç¤Îlite_spot()¤ÏÉÔÍפΤ褦¤Ê¤Î¤Çºï½ü.
-       ¤³¤ì¤Ë¤è¤ê, leave_floor()¤Ç¤ÎÀè¤ÎHack¤ò¼è¤ê¾Ã¤·¤¿.
-
-       * src/floors.c 1.10:
-       ¥È¥é¥Ã¥×¡¦¥É¥¢¤ËÍî¤Á¤¿ºÝ¤Ë¥×¥ì¥¤¥ä¡¼¤¬¶á¤¯¤Î³¬Ãʤ˥ƥì¥Ý¡¼¥È¤·¤¿¤è¤¦¤Ë¸«¤¨¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/spells3.c 1.70:
-       ironman_downward»þ¤Ë¥Æ¥ì¥Ý¡¼¥È¡¦¥ì¥Ù¥ë¤Ç¥À¥ó¥¸¥ç¥ó¤ÎºÇ²¼Áؤò±Û¤¨¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/cave.c 1.74, src/effects.c 1.37:
-       music_singing()¤ò»È¤Ã¤¿Êý¤¬Ê¬¤«¤ê¤ä¤¹¤½¤¦¤ÊÉôʬ¤òÊѹ¹.
-
-       * src/spells3.c 1.69: ¥¢¥¤¥Æ¥à¤ò̵Îϲ½¤·¤Æ¤âÌäò°Ý»ý¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/files.c 1.102:
-       get_rnd_line()¤ÎÂоݤˤʤë¥Õ¥¡¥¤¥ë¤Ç, ÀèƬ¤¬¿ô»ú¤Ç¸å¤Ë¿ô»ú°Ê³°¤¬Â³¤¯¹Ô¤Ç¤¢¤Ã¤Æ¤â
-       ¹Ô¿ôÀßÄê¤È¤ß¤Ê¤µ¤ì¤Æ, ¤½¤Î·ë²Ì¹Ô¿ô¤¬ÀßÄꤵ¤ìľ¤·¤¿¤ê°Õ¿Þ¤·¤¿¹Ô¤¬½Ð¤Ê¤¤¾ì¹ç¤¬
-       ¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/avatar.c 1.8, src/birth.c 1.67, src/bldg.c 1.34, src/cmd4.c 1.84, src/cmd5.c 1.63, src/cmd6.c 1.50, src/dungeon.c 1.97, src/files.c 1.101, src/flavor.c 1.33, src/grid.c 1.12, src/hissatsu.c 1.21, src/main-win.c 1.23, src/makefile.bcc 1.7, src/melee1.c 1.28, src/melee2.c 1.47, src/mind.c 1.21, src/monster1.c 1.32, src/monster2.c 1.53, src/mspells1.c 1.38, src/mspells2.c 1.33, src/mspells3.c 1.22, src/object1.c 1.61, src/object2.c 1.75, src/racial.c 1.35, src/readdib.c 1.4, src/scores.c 1.15, src/spells1.c 1.51, src/spells3.c 1.68, src/util.c 1.40, src/wizard1.c 1.32, src/xtra1.c 1.63, src/xtra2.c 1.65:
-       BCC++ 5.5.1¤Ç·Ù¹ðÉõ¤¸¥ª¥×¥·¥ç¥ó -w- ¤ò³°¤·¤¿¾ì¹ç¤Î¥³¥ó¥Ñ¥¤¥ë·Ù¹ð¤Î½üµî.
-       * »ÈÍѤµ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô¤Ï¥³¥á¥ó¥È¥¢¥¦¥È¤Ç¤Ï¤Ê¤¯ºï½ü¤·¤¿.
-       * ±Ñ¸ìÈǤ侤Υץé¥Ã¥È¥Õ¥©¡¼¥à¤È¤Î¸ß´¹¤ò¤È¤ë¤¿¤á¤Ë¤É¤¦¤·¤Æ¤âɬÍפÊÉôʬ¤Î·Ù¹ð¤Ï
-         ½üµî¤Ç¤­¤Ê¤«¤Ã¤¿.
-       * Â¾¤Î¥³¥ó¥Ñ¥¤¥é¤Ç¤ÏÊ̤ηٹ𤬻ĤäƤ¤¤ë, ¤â¤·¤¯¤Ï¿·¤¿¤Ë·Ù¹ð¤µ¤ì¤ë¤«¤â¤·¤ì¤Ê¤¤.
-       * ·Ù¹ð¤òÌۤ餻¤ëɬÍפâÇö¤ì¤¿¤Î¤Ç, makefile.bcc¤«¤é¤Ï -w- ¤ò½üµî.
-
-2003-05-08  nothere  <nothere@cvs>
-
-       * src/monster2.c 1.52, src/mspells1.c 1.37, src/spells2.c 1.65, src/spells3.c 1.67, src/xtra1.c 1.62:
-       prace_is_()¤ò»È¤¦¤Ù¤­¤È¹Í¤¨¤é¤ì¤ëÉôʬ¤Î½¤Àµ.
-
-       * src/cmd1.c 1.70, src/externs.h 1.104, src/melee1.c 1.27, src/melee2.c 1.46, src/object2.c 1.74, src/tables.c 1.59, src/types.h 1.28, src/xtra2.c 1.64:
-       ·Ù¹ðµ¡Ç½¤Î¼ÂÁõ¤òÂçÉý¤ËÊѹ¹.
-       * ¥Þ¥¯¥í¤«¤é´Ø¿ô¤Ë½ñ¤­´¹¤¨.
-       * Íò·Ï¹¶·â¤äÇËÌǤμê¤äÂÇ·â¤ÇºÇ°­¤Î¾ì¹ç¤ò¹Í¤¨¤Æ¤¤¤ë¤Î¤Ë, ¾å°Ì°À­¤ÎÂÑÀ­¤¢¤ê
-         ¥À¥á¡¼¥¸·×»»»þ¤Ï´üÂÔÃͤǷ׻»¤µ¤ì¤Æ¤¤¤¿¤¿¤á, ·Ù¹ð¤Ë´Ø¤ï¤ë·×»»¤ÏºÇ°­¤Î¾ì¹ç¤Î
-         ·×»»¤ËÅý°ì¤·¤¿.
-       * ·Ù¹ðÂоݤ˸÷¤Î·õ¤òÄɲÃ.
-       * ¥À¥á¡¼¥¸·×»»¤ò¼ÂºÝ¤Î¤â¤Î¤È¤Û¤ÜƱÅù¤Ë¤·¤¿.
-       * ¼ï²¤¬»ý¤Ä¼åÅÀ¤äÌȱÖ, Í©Âβ½¾õÂ֤ʤɤòÈ¿±Ç¤µ¤»¤¿.
-       * ÇËÌǤμê¤ò´°Á´¤ËËɸæ¤Ç¤­¤ëËâË¡Ëɸæ¤ò»ý¤Ä¾ì¹ç¤ÏÌȱְ·¤¤¤È¤·¤¿.
-       * ¸µÁÇÂÇ·â¤Ë¤ÏÂÑÀ­¤äÌȱ֤ò, ÌµÂ°À­ÂÇ·â¤Ë¤ÏAC¤ò¹Íθ¤¹¤ë.
-       * ÂÇ·â¤Î·Ù¹ðȽÄê¤Ç, ¼Í·âÍÑ¥À¥¤¥¹¤ä¼«Çú¸å¤Î¹¶·â¤¬»»Æþ¤µ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-       * ¥Õ¥é¥­¥¢¤Ë¸ÂÄꤵ¤ì¤¿¤ï¤±¤Ç¤Ï¤Ê¤¤¤Î¤Ç, "frakir" ¤È½ñ¤«¤ì¤¿¾ì½ê¤ò½¤Àµ.
-       ¤³¤Î²áÄø¤Ç, ¥â¥ó¥¹¥¿¡¼¤ÎÂÇ·â¸ú²Ì¤Î¥Ç¡¼¥¿¤Î°ìÉô¤ò¥Æ¡¼¥Ö¥ë²½¤·¤ÆÀ°Íý¤·¤¿.
-
-       * src/files.c 1.100:
-       process_pref_file_command()¤Î¿ÃÊifʸʬ´ô¤òswitchʸ¤ËÊѹ¹.
-
-       * src/cave.c 1.73, src/dungeon.c 1.96, src/externs.h 1.103, src/generate.c 1.46:
-       ÃϾå¤ÇÆü¤¬ÄÀ¤ó¤À½Ö´Ö¤ËÍϴ䤬°Å¤¯¤Ê¤é¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-2003-05-07  nothere  <nothere@cvs>
-
-       * src/wizard1.c 1.31:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¥¹¥Ý¥¤¥é¡¼À¸À®»þ¤Ë, ÄɲÃÂÑÀ­¤ÈÄɲÃǽÎϤÎ̵ͭ¤òµ­¤¹¤è¤¦¤ËÊѹ¹.
-       TOband¤è¤ê°Ü¿¢.
-
-       * src/files.c 1.99: bool·¿¤è¤êint·¿¤È¤¹¤Ù¤­¾ì½ê¤¬¤¢¤Ã¤¿¤Î¤ÇÊѹ¹.
-
-       * lib/help/birth.txt 1.11, lib/help/jbirth.txt 1.10:
-       ³°ÉôÀ¸¤¤Î©¤Á¥Õ¥¡¥¤¥ë¤Î½ñ¼°ÀâÌÀ¤òÄɲÃ.
-
-       * src/store.c 1.25:
-       Á´¤Æ¤Î³¹¤Î¼«Âð¤ÈÇîʪ´Û¤Ç 'C' ¤ò»È¤¦¤ÈÊÕ¶­¤ÎÃϤˤ¤¤ë¤³¤È¤Ë¤Ê¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * lib/edit/k_info.txt 1.7:
-       ¥Ù¡¼¥¹¥¢¥¤¥Æ¥àÀâÌÀ¤Î̤Ìõʬ¤òÏÂÌõ. ±Ñʸ¤¬¥³¥á¥ó¥È¥¢¥¦¥È¤µ¤ì¤Æ¤¤¤¿Êª¤Ï¥³¥á¥ó¥È¤Î¤Þ¤Þ.
-       Ìõʸ¤Ï¤ª¤½¤é¤¯²þÁ±¤Î;ÃϤ¢¤ê.
-
-2003-05-06  nothere  <nothere@cvs>
-
-       * src/cmd4.c 1.83:
-       toggle_frequency()¤ÎÃæ¿È¤ò¿ÃÊifʸ¤«¤éswitchʸ¤ËÊѹ¹.
-
-       * src/spells1.c 1.50:
-       MAX()¤Î¸Æ¤Ó½Ð¤·¤ËÍð¿ô¤¬»È¤ï¤ì¤Æ¤¤¤Æ, "¥µ¥¤¥­¥Ã¥¯¡¦¥É¥ì¥¤¥ó" »ÈÍÑ»þ¤Ë¥Ð¥Ã¥¯¥Õ¥¡¥¤¥¢¤ò
-       ¶ô¤é¤Ã¤¿»þ¤ËÉé¤ÎMP¤Ë¤Ê¤êÆÀ¤ë¥Ð¥°¤ò½¤Àµ.
-
-2003-05-05  nothere  <nothere@cvs>
-
-       * lib/edit/r_info.txt 1.3:
-       ±Ñ¸ìÈǤǥ٥ӡ¼¥µ¥¿¥ó¤ÎÀâÌÀ¥Æ¥­¥¹¥È¤¬É½¼¨¤µ¤ì¤º, ÆüËܸìÈǤDZÑʸ¤ÈÏÂʸ¤¬Æ±»þ¤Ëɽ¼¨
-       ¤µ¤ì¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/bldg.c 1.33, src/defines.h 1.93, src/effects.c 1.36, src/externs.h 1.102, src/generate.c 1.45, src/tables.c 1.58, src/types.h 1.27, src/xtra2.c 1.63:
-       ¥¢¥ê¡¼¥Ê¥Ç¡¼¥¿¤ÎľÃÍ»ØÄê¤òµ­¹æÄê¿ô¤ËÃÖ¤­´¹¤¨, ¥Ç¡¼¥¿¹½Â¤¤òÊѹ¹. ¾ÞÉʤÏk_idxľÀÜ
-       »ØÄê¤Ç¤Ï¤Ê¤¯, tval¤Èsval¤ÎÁȤËÊѹ¹. ¤Þ¤¿, ¥â¥ó¥¹¥¿¡¼µ­¹æÄê¿ô¤ÎÄÖ¤ê¤ò°ìÉô½¤Àµ.
-
-       * src/scores.c 1.14:
-       Ã¼Ëö¥µ¥¤¥º¤Ë´Ø¤ï¤é¤º, *¾¡Íø*¤·¤Æ°úÂह¤ë»þ¤Î¥¯¥é¥¦¥ó¤òÃæ¿´¤Ëɽ¼¨¤µ¤»¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/defines.h 1.92, src/dungeon.c 1.95, src/object2.c 1.73, src/spells3.c 1.66, src/xtra2.c 1.62:
-       Vanilla¤Î¤Þ¤Þ¤Ë¤Ê¤Ã¤Æ¤¤¤ÆÊѶò¤È¹ç¤ï¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¥¢¥¤¥Æ¥à¤Îsval¤Îµ­¹æÄê¿ô¤òÊѶòÈÚÅÜ
-       »ÅÍͤ˹ç¤ï¤»¤¿.
-
-       * src/init1.c 1.54, src/racial.c 1.34, src/xtra2.c 1.61:
-       k_infoÆâ¤ÎID¤òľÀÜ»ØÄꤷ¤Æ¤¤¤¿Éôʬ¤òlookup_kind()¤ò»È¤¦¤è¤¦¤Ë½¤Àµ.
-       ¤Þ¤¿, sval¤ÎľÀÜ»ØÄ꤬¤¢¤Ã¤¿Éôʬ¤òµ­¹æÄê¿ô¤ò»È¤¦¤è¤¦¤Ë½¤Àµ.
-
-       * src/cmd4.c 1.82:
-       playrecord¤Ç, "³¬(¥À¥ó¥¸¥ç¥ó̾)" ¤È¤¤¤¦Ê¸»úÎó¤òformat()¤ÎÆâÉô¥Ð¥Ã¥Õ¥¡¤Ë¼è¤Ã¤Æ¤¤¤¿¤¿¤á,
-       NIKKI_STAIR¤Ê¤É¤Î»þ¤Ëformat()¤¬¸Æ¤Ð¤ì¤ë¤È, playrecord¤Ë½ñ¤«¤ì¤ë¤Ù¤­ "³¬(¥À¥ó¥¸¥ç¥ó
-       Ì¾)"¤È¤¤¤¦Ê¸»úÎó¤ò¾å½ñ¤­¤·¤Æ¤·¤Þ¤¤, ½ÐÎϤ¬¾¯¤·¤ª¤«¤·¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/dungeon.c 1.94:
-       ¥¦¥£¥¶¡¼¥É¥â¡¼¥É»ÈÍÑ»þ¤Ëplayrecord¤Ëµ­Ï¿¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç, µ­Ï¿¤¹¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/birth.c 1.66:
-       ¥­¥ã¥é¥¯¥¿ºîÀ®¤ÎºÇ¸å¤Ë 'S' ¤òÆþÎϤ·¤¿Ä¾¸å¤Ë¥é¥ó¥À¥à¥¯¥¨¥¹¥¿¡¼·èÄê¤ò¹Ô¤¦¤è¤¦¤Ë½¤Àµ.
-
-       * src/cmd3.c 1.37:
-       »×¤¤½Ð¾ÜºÙ»²¾ÈÃæ¤Ë 'r' ¤ò²¡¤¹¤È»×¤¤½Ð¥×¥í¥ó¥×¥È¤¬¾Ã¤¨¤ë¥Ð¥°¤ò½¤Àµ.
-
-       * src/bldg.c 1.32:
-       ¥â¥ó¥¹¥¿¡¼Ä´ºº¤·¤¿, ¤¢¤ë¤¤¤Ï¤·¤è¤¦¤È¤·¤¿¸å¤Ë³¹¤ò½Ð¤ë¤Ê¤ê¤·¤Æ¥Þ¥Ã¥×¤òºî¤êľ¤·¤¿½Ö´Ö¤Ë,
-       »×¤¤½Ð¥¦¥£¥ó¥É¥¦¤ËÊ̤Υâ¥ó¥¹¥¿¡¼¤¬É½¼¨¤µ¤ì¤ë¾ì¹ç¤¬¤¢¤ë¥Ð¥°¤ò½¤Àµ. ¥â¥ó¥¹¥¿¡¼Ä´ºº¤Ç
-       Âå¶â¤ò»Ùʧ¤Ã¤¿¾ì¹ç¤Ë¤½¤Î¥â¥ó¥¹¥¿¡¼¤ò»×¤¤½Ð¥¦¥£¥ó¥É¥¦¤Ëɽ¼¨¤¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/effects.c 1.35, src/externs.h 1.101, src/melee1.c 1.26, src/spells1.c 1.49:
-       ·Ð¸³Ã͵ۼýÉôʬ¤Ç¤Þ¤È¤á¤é¤ì¤ë¤â¤Î¤Ï´Ø¿ô¤Ë¤Þ¤È¤á¤ë¤è¤¦¤Ë¤·¤ÆÀ°Íý.
-       ¤³¤Î²áÄø¤Ç, ÃϹö°À­¤È¥«¥ª¥¹Â°À­¤Ë¤è¤ë·Ð¸³Ã͵ۼý»þ¤ÎÏÂʸ¤Ï¤ï¤º¤«¤ËÊѤï¤Ã¤¿.
-
-2003-05-04  nothere  <nothere@cvs>
-
-       * src/melee1.c 1.25:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÂÇ·â¤ÇËɶñ¤¬Îô²½¤·¤¿¤Î¤¬¼¡¤ÎÂÇ·â¤ËÈ¿±Ç¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ.
-
-       * src/melee2.c 1.45:
-       ¥â¥ó¥¹¥¿¡¼Æ±»Î¤Î²¥¤ê¹ç¤¤¤Ç, Ê´ºÕ°À­¤ËÂФ·AC·Ú¸º¤¬¤Ê¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ.
-
-       * lib/edit/q0000005.txt 1.2:
-       ¥¯¥¨¥¹¥È "Åã" Ã£À®»þ¤Î±Ñʸ¤¬ÏÂʸ¤ËÂбþ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-       * src/birth.c 1.65, src/cmd1.c 1.69, src/cmd2.c 1.40, src/cmd4.c 1.81, src/cmd5.c 1.62, src/defines.h 1.91, src/dungeon.c 1.93, src/externs.h 1.100, src/files.c 1.98, src/init1.c 1.53, src/load.c 1.54, src/racial.c 1.33, src/spells3.c 1.65, src/tables.c 1.57, src/wizard2.c 1.36, src/xtra1.c 1.61, src/xtra2.c 1.60:
-       ½ÏÎýÅ٤˴ؤ¹¤ë¿ôÃͤ¬Ä¾ÀÜ»ØÄꤵ¤ì¤Æ¤¤¤¿Éôʬ¤òµ­¹æÄê¿ô²½.
-
-       * src/cmd5.c 1.61:
-       Ç˼ÙËâË¡ "¿À¤ÎÅܤê" ¤Îʬ²ò¥Ü¡¼¥ëÍî²¼¤ÎÃæ¿´Éô¤ò41¥Þ¥¹Î¥¤ì¤¿¤È¤³¤í¤Þ¤Ç»ØÄê¤Ç¤­¤Æ
-       ¤¤¤¿¤Î¤Ç, 18¥Þ¥¹¤Þ¤Ç¤ËÀ©¸Â.
-
-       * src/spells3.c 1.64:
-       ¥¹¥Ú¥ë¥Þ¥¹¥¿¡¼¤ÈÀÖËâÆ»»Õ¤¬ËâË¡½ÏÎýÅ٤ˤè¤ëÆñ°×ÅÙ¸º¾¯¤ò¼õ¤±¤é¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/monster1.c 1.31:
-       ±Ñ¸ìÈǤǥâ¥ó¥¹¥¿¡¼¤Î»×¤¤½Ð¤Î°ìÉô¤¬Àµ¤·¤¯ÇÛ¿§¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-2003-05-03  nothere  <nothere@cvs>
-
-       * src/dungeon.c 1.92: Éð´ï´Ê°×´ÕÄê¤Îswitchʸ¤ò¾¯¤·À°Íý.
-
-       * src/melee1.c 1.24:
-       EXP_VAMP¹¶·â¤ò̵À¸Êª¼ï², ¤¢¤ë¤¤¤Ï̵À¸Êª¥ß¥ß¥Ã¥¯¤Î¥×¥ì¥¤¥ä¡¼¤¬¼õ¤±¤¿¾ì¹ç¤Ë,
-       ¹¶·â¤·¤¿¥â¥ó¥¹¥¿¡¼¤¬HP¤ò²óÉü¤·¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/dungeon.c 1.91, src/xtra1.c 1.60:
-       ¼ï²Êѹ¹¤¹¤ë¤È¥¿¡¼¥ó¿ô¤¬¶¸¤¤ÆüÉÕ¤¬¤º¤ì¤ë¤Î¤Ç, ·Ð²á¥²¡¼¥à¥¿¡¼¥ó¿ô·×»»¤Ë¤Ï
-       ¥¹¥¿¡¼¥È»þ¤Î¼ï²¤ò¸«¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/flavor.c 1.32:
-       ¼Í·âÉð´ï¤ÎÇÜΨɽ¼¨¤¬sval¤Îmod±é»»¤À¤Ã¤¿¤Î¤Ç, bow_tmul()¤ò»È¤¦¤è¤¦¤Ë½¤Àµ.
-
-       * src/cmd1.c 1.68:
-       view_unsafe_grids»þ¤Ë, ¼«Ê¬¤ÇÊ⤤¤¿¾²¤«¤é¤Ï 'x' ¤ò¾Ã¤¹¤è¤¦¤ËÊѹ¹.
-       ¤¿¤À¤·, ¸÷¸»¤Ê¤·¤â¤·¤¯¤ÏÌÕÌܤǥȥé¥Ã¥×¤Ë³Ý¤«¤Ã¤¿¾ì¹ç¤Ï 'x' ¤Ï¾Ã¤µ¤Ê¤¤.
-
-       * src/cmd5.c 1.60:
-       ¥«¥ª¥¹ËâË¡ "°­Ë⾤´­" ¤Ç¤Î¾¤´­¼ºÇÔ»þ¤Î±Ñʸ¤¬ "Greater Demon" ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç
-       "demons" ¤Ë½¤Àµ.
-
-       * src/melee2.c 1.44:
-       ¥â¥ó¥¹¥¿¡¼¤¬¿Ê²½¤·¤¿ºÝ¤Ësub_align¤¬Àµ¤·¤¯½é´ü²½¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/externs.h 1.99, src/mutation.c 1.9, src/racial.c 1.32:
-       ¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Ë´Ø¤¹¤ë½¤Àµ.
-       * ¥­¥ã¥ó¥»¥ë²Äǽ¤Ê¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤ò¥­¥ã¥ó¥»¥ë¤·¤Æ¤â¥³¥¹¥È¤È¥¿¡¼¥ó¤ò¾ÃÈñ¤·¤Ê¤¤¤è¤¦¤Ë,
-         TOband¤Î¼êË¡¤Ë¤è¤ê½¤Àµ. ¤³¤ì¤Ë¤è¤ê, É½¼¨Éô¤È¼Â¹ÔÉô¤Çʬ»¶¤·¤Æ¤¤¤¿¥ì¥¤¥·¥ã¥ë
-         ¥Ñ¥ï¡¼¤ÎÆñ°×Å٤ʤɤΥǡ¼¥¿¤ò1¸Ä½ê¤Ç´ÉÍý¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿.
-       * ¥Ú¥Ã¥È¤òÏ¢¤ì¤¿·õ½Ñ²È¤¬·¿¤òÊѹ¹¤Ç¤­¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/cmd1.c 1.67: "¥Ü¡¼¥Ñ¥ë¡¦¥Ö¥ì¡¼¥É" -> "¥ô¥©¡¼¥Ñ¥ë¥Ö¥ì¡¼¥É".
-
-       * lib/help/jmagic.txt 1.9, src/cmd5.c 1.59, src/mspells3.c 1.21, lib/edit/r_info.txt 1.2:
-       "¾¤´Ô" -> "¾¤´­".
-
-       * lib/file/monspeak_j.txt 1.8:
-       °ìÉô¥â¥ó¥¹¥¿¡¼¤ÎÂæ»ì¤Ë "¡Ö¡×" ¤¬¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-       * src/cmd5.c 1.58, src/defines.h 1.90, src/object1.c 1.60:
-       Îýµ¤½Ñ»Õ¤ÇÎýµ¤½Ñ¤òÁªÂò¤¹¤ëºÝ¤Î¥À¥ß¡¼¤Î¥¢¥¤¥Æ¥à¥¹¥í¥Ã¥È1111¤òµ­¹æÄê¿ôINVEN_FORCE¤ËÊѹ¹.
-
-       * src/defines.h 1.89:
-       is_magic()¥Þ¥¯¥í¤¬ÎΰèÈÖ¹æ0°Ê²¼¤ËÂФ·¤Æ¤âTRUE¤òÊÖ¤·¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-       * src/object2.c 1.72:
-       ¥¹¥Ú¥ë¥Þ¥¹¥¿¡¼/ÀÖËâÆ»»Õ¤Ç¤Ï "¥¢¥¤¥Æ¥à¤Î¾ÜºÙ" ¥¦¥£¥ó¥É¥¦É½¼¨¤Ç»È¤Ã¤¿ËâË¡½ñ¤Î¼öʸ
-       °ìÍ÷¤¬É½¼¨¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ.
-
-       * src/cmd5.c 1.57, src/dungeon.c 1.90, src/externs.h 1.98, src/mspells3.c 1.20, src/spells3.c 1.63:
-       ¾ÃÈñËâÎϸº¾¯¥Õ¥é¥°¤È (ÎΰèËâË¡¤Ç¤¢¤ì¤Ð) ËâË¡½ÏÎýÅÙ¤«¤éƳ¤«¤ì¤ë¾ÃÈñËâÎÏ·×»»¤ò
-       1´Ø¿ô¤Ë¤Þ¤È¤á¤¿.
-
-       * src/cmd5.c 1.56:
-       À¸Ì¿, °Å¹õ, ¼«Á³, °­ËâËâË¡¤Ë¼ºÇÔ¤¹¤ë¤È, ËâË¡¤ËÂбþ¤·¤¿ÆÁ°Ê³°¤Ë [¼±] ¤¬²¼¤¬¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-
-2003-04-17  iks  <iks@cvs>
-
-       * src/flavor.c 1.31, src/object2.c 1.71:
-       Ãü£»Õ¤¬»¦Ù¤½¤Àµ¤ò¤Ä¤±¤¿¾®¼ê¤¬Îô²½¤µ¤ì¤ë¤ÈȯÀ¸¤¹¤ë¥Ð¥°¤ò½¤Àµ¡£
-       - »¦Ù¤½¤Àµ¤¬0¤Ë¤Ê¤ë¤Èɽ¼¨¤¬¤ª¤«¤·¤¤
-       - Îô²½¤µ¤ì¤Æ¤«¤é¥¨¥Ã¥»¥ó¥¹¾Ãµî¤¹¤ë¤È¥Þ¥¤¥Ê¥¹¤Î»¦Ù¤½¤Àµ¤¬»Ä¤ë
-
-       * src/cmd1.c 1.66: ¾èÇÏ¥¹¥­¥ë·×»»¤Î¾ò·ï¼°¤¬¤ª¤«¤·¤¤¤Î¤ò½¤Àµ¡£
-
-       * src/object2.c 1.70:
-       ¥Æ¥ì¥Ñ¥·¡¼¤Î´§¤Ë̵À¸ÊªESP¤¬ÉÕ¤¤¤¿¾ì¹ç¡¢²¼°ÌESP¤¬3+1d(1d6)¸Ä¤Ä¤¯¤è¤¦¤ËÊѹ¹¡£
-
-       * src/spells1.c 1.48: ¥Ö¥ì¥¹¤Î·Á¾õÀ¸À®¥ë¡¼¥Á¥ó¤òXAngband¤«¤é°Ü¿¢¡£
-
-2003-04-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells1.c 1.47:
-       breath_shape()¤Î¥¢¥ë¥´¥ê¥º¥à¤Î¥Ð¥°½¤Àµ¡£grid¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤Èȯ¼ÍÅÀ¤«¤é
-       ¤Îµ÷Î¥¤Î¿ôÃͤòº®Æ±¤·¤Æ¤¤¤¿°Ù¡¢¼Ð¤áÊý¸þ¤Î¥Ö¥ì¥¹¤Î·Á¾õ¤¬°Û¾ï¤À¤Ã¤¿¡£
-
-       * src/xtra2.c 1.59, src/z-config.h 1.7, src/z-form.c 1.4, src/z-form.h 1.2, src/z-rand.c 1.4, src/z-rand.h 1.4, src/z-util.c 1.4, src/z-util.h 1.3, src/util.c 1.39, src/variable.c 1.38, src/wild.c 1.22, src/wizard1.c 1.30, src/wizard2.c 1.35, src/xtra1.c 1.59, src/types.h 1.26, src/store.c 1.24, src/streams.c 1.8, src/streams.h 1.2, src/tables.c 1.56, src/spells1.c 1.46, src/spells2.c 1.64, src/spells3.c 1.62, src/rooms.c 1.28, src/rooms.h 1.2, src/save.c 1.33, src/scores.c 1.13, src/object2.c 1.69, src/racial.c 1.31, src/mspells3.c 1.19, src/mutation.c 1.8, src/obj_kind.c 1.3, src/object1.c 1.59, src/mspells1.c 1.36, src/mspells2.c 1.32, src/melee1.c 1.23, src/melee2.c 1.43, src/mind.c 1.20, src/monster1.c 1.30, src/monster2.c 1.51, src/init2.c 1.24, src/load.c 1.53, src/mane.c 1.16, src/flavor.c 1.30, src/generate.c 1.44, src/grid.c 1.11, src/hissatsu.c 1.20, src/init1.c 1.52, src/externs.h 1.97, src/files.c 1.97, src/dungeon.c 1.89, src/effects.c 1.34, src/cmd6.c 1.49, src/defines.h 1.88, src/cmd3.c 1.36, src/cmd4.c 1.80, src/cmd5.c 1.55, src/cmd1.c 1.65, src/cmd2.c 1.39, src/cave.c 1.72, src/birth.c 1.64, Changelogs 1.65:
-       Leon»á¤Î´«¤á¤Ë½¾¤Ã¤Æ¡¢Vanilla¤Î¥³¡¼¥É¤ÈƱÍͤ˳ƥ½¡¼¥¹¥Õ¥¡¥¤¥ë¤ÎƬ¤Î
-       copyrightɽ¼¨¤Ë Ben Harrison¤Î̾Á°¤òÄɲá£
-       Á´¤Æ¤Î¸½¹Ô*band¤Ï Ben ¤Î¥³¡¼¥É¥Ù¡¼¥¹¤ò»È¤Ã¤Æ¤¤¤ë¤Î¤Ë ZAng¤¬½ÐÍ褿»þÅÀ
-       ¤Ç Ben ¼«¿È¤¬vanilla¤Î¥½¡¼¥¹¤Îcopyright¤Ë̾Á°¤òÆþ¤ì¤Æ¤Ê¤«¤Ã¤¿¤È¤¤¤¦Íý
-       Í³¤À¤±¤ÇÊѶò¤Ç¤â̾Á°¤¬È´¤±¤Æ¤¤¤ë¤«¤é¡¢¤È¤½¤¦¤¤¤¦Íýͳ¡£
-
-2003-04-09  root  <root@cvs>
-
-       * CVSROOT/checkoutlist 1.1, CVSROOT/commitinfo 1.1, CVSROOT/config 1.1, CVSROOT/cvswrappers 1.1, CVSROOT/editinfo 1.1, CVSROOT/loginfo 1.1, CVSROOT/modules 1.1, CVSROOT/notify 1.1, CVSROOT/rcsinfo 1.1, CVSROOT/taginfo 1.1, CVSROOT/verifymsg 1.1:
-       initial checkin
-
-2003-04-03  iks  <iks@cvs>
-
-       * src/birth.c 1.63, src/externs.h 1.96, src/files.c 1.96:
-       À¸¤¤Î©¤Á¥¨¥Ç¥£¥¿ÍѤΥƥó¥×¥ì¡¼¥È¤ò¥Õ¥¡¥¤¥ë¤ÇÄêµÁ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£(@nothere¤µ¤óÄó¶¡)
-
-       * src/object2.c 1.68:
-       Ãü£»Õ¤Î¥¨¥Ã¥»¥ó¥¹Äɲäǵݤ˥¹¥ì¥¤¤òÉղäǤ­¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd4.c 1.79: ´ûÃΤΥâ¥ó¥¹¥¿¡¼°ìÍ÷¤Ç¤Îµ­¹æ¤ÎÈ´¤±¤òÊä´°¡£
-
-       * src/bldg.c 1.31:
-       ¥«¥ª¥¹¤ÎÅã¤ÎÆÍÁ³ÊÑ°Û¼£ÎÅ¥µ¡¼¥Ó¥¹¤Çɬ¤º1¸ÄÊÑ°Û¤¬¼£¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/object2.c 1.67, src/store.c 1.23, src/wizard2.c 1.34:
-       Â¿¿ô¤Î¥í¥Ã¥É¤ò½ê»ý¤·¤¿¤È¤­¤Ëpval¤¬¥ª¡¼¥Ð¥Õ¥í¡¼¤¹¤ëÉÔ¶ñ¹ç¤ò½¤Àµ¡£
-
-2003-03-21  iks  <iks@cvs>
-
-       * src/mane.c 1.15:
-       ¤Þ¤Í¤Î¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤òÃϾå¤Ç»È¤Ã¤¿»þ¤ËÅ·°æ¤òÆͤ­Çˤé¤Ê¤¤¤è¤¦½¤Àµ¡£
-
-       * src/mane.c 1.14, src/mspells3.c 1.18:
-       °ø²ÌÂÑÀ­¤¬¤¢¤ë¥â¥ó¥¹¥¿¡¼¤Ï¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤µ¤ì¤Ê¤¤¤è¤¦Êѹ¹¡£
-
-2003-02-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.62, src/defines.h 1.87, src/util.c 1.38:
-       Robert Ruehlmann »á¤Ë "They are annoying and make the already pretty
-       long character creation process even longer.  (Ãæά) Stop pestering
-       me." ¤È¸À¤ï¤ì¤¿¤Î¤Ç¡¢¥­¥ã¥éÀ¸À®»þ¤Ë¡Ö¤è¤í¤·¤¤¤Ç¤¹¤«¡©¡×¤Î¼ÁÌä¤Ç n ¤È
-       Esc °Ê³°¤ÏÁ´Éô y ¤È¸«Ðö¤·¤ÆÀè¤Ë¿Ê¤à¤è¤¦¤Ë¤·¤¿¡£
-       ¤Ä¤¤¤Ç¤Ë¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¾å¤²¡£
-
-2003-02-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.78:
-       auto_dump_printf()¤Ç¡¢fprintf(.., "%s", str); ¤È¤¹¤ë¤Ù¤­¤È¤³¤í¤ò
-       fprintf(.., str);¤È½ñ¤¤¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2003-02-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/mspells2.c 1.31:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥¿¡¼¥²¥Ã¥È¤Î½¤Àµ¤ò¤·¤¿¤È¤­¤Ëbreak;¤òÆþ¤ì˺¤ì¤Æ¤¤¤Æ¥¿¡¼¥²¥Ã¥È¤òÀµ¤·¤¯Áª¤Ù¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2003-02-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.77: ¥³¥á¥ó¥È¤Î´Ö°ã¤¤½¤Àµ¡£
-
-       * src/files.c 1.95:
-       Macro Trigger¤Î¥³¡¼¥É¡¢ºÇ¶á½ñ¤­ÊѤ¨¤¿¤È¤­¤Ë¤¦¤Ã¤«¤êshift keyÉÕ¤­¤ÎÊý¤Îkey code¤Î°·¤¤¤ò´Ö°ã¤¨¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£´Êñ¶ò¤è¤ê¡£
-
-2003-02-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.77, src/cmd4.c 1.76, src/files.c 1.94, src/floors.c 1.9, src/init2.c 1.23, src/load.c 1.52, src/main.c 1.5, src/save.c 1.32, src/scores.c 1.12, src/wizard1.c 1.29:
-       cmd4.c¤Î auto_dump ¤Î¥³¡¼¥É¤òÀ°Íý¡¢¥³¥á¥ó¥ÈÉղá£Sangband¤Ø¤Î°Ü¿¢ºî¶È
-       ¤Ë¤ª¤¤¤Æ¤â¤¦¤Á¤ç¤Ã¤ÈåºÎï¤Ë¤·¤¿Êý¤¬Îɤ¤¤À¤í¤¦¤È¤¤¤¦»ö¤Ë¤Ê¤Ã¤¿°Ù¡£
-       ´ØÏ¢¤·¤Æsafe_setuid_*()¤Î»È¤¤Êý¤òÊѹ¹¡£Vanilla¤ÈƱÍͤˤ·¤¿¡£Èù̯¤Ësecurity¤¬¸þ¾å¤¹¤ë¡£
-
-2003-02-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.88:
-       {!!}¤È¹ï¤ó¤À¥¢¥¤¥Æ¥à¤¬ºÆ½¼Å¶¤µ¤ì¤¿¤È¤­¤Î¹ÔÆ°Ãæ»ß¤Ç¡¢Ãµº÷Ãæ¤Î¥â¡¼¥É¤¬²ò½ü¤µ¤ì¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£disturb(1, 0) ¢ª disturb(0, 0)
-
-2003-02-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.86, src/object2.c 1.66:
-       ½¼Å¶»þ´Ö¤¬Ä¹¤¤¥í¥Ã¥É¤ò¿¿ô½Å¤Í¤ë¤Èo_ptr->timeout¤¬overflaw¤¹¤ë¥Ð¥°¤ËÂкö¡£
-       ½Å¤Í¤é¤ì¤ë¥í¥Ã¥É¤Î¿ô¤ò99¤è¤ê¾¯¤¯À©¸Â¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2003-02-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.48, src/dungeon.c 1.87, src/externs.h 1.95, src/files.c 1.93, src/floors.c 1.8, src/main-gcu.c 1.10, src/main-x11.c 1.22, src/melee2.c 1.42, src/mind.c 1.19, src/monster2.c 1.50, src/mspells2.c 1.30, src/mspells3.c 1.17, src/object2.c 1.65, src/save.c 1.31, src/scores.c 1.11, src/spells2.c 1.63, src/spells3.c 1.61, src/util.c 1.37, src/wild.c 1.21, src/wizard1.c 1.28, src/wizard2.c 1.33, src/xtra2.c 1.58, src/birth.c 1.61, src/bldg.c 1.30, src/cave.c 1.71, src/cmd3.c 1.35, src/cmd4.c 1.75, src/cmd5.c 1.54:
-       gcc¤Ç -Wunused ¤òÉÕ¤±¤Æ¤â·Ù¹ð¤¬½Ð¤Ê¤¤¤è¤¦¤Ë̵»ë¤·¤Æ¤¤¤ë´Ø¿ô¤Î°ú¿ôÅù¤ò(void)¤ÇÌÀµ­¡£
-
-2003-02-04  Takeshi Mogami  <mogami@cvs>
-
-       * src/bldg.c 1.29, src/cmd3.c 1.34, src/externs.h 1.94, src/files.c 1.92, src/floors.c 1.7, src/monster1.c 1.29, src/monster2.c 1.49, src/spells2.c 1.62, src/tables.c 1.55, src/variable.c 1.37:
-       - lore_do_probe()¤Ç»×¤¤½Ð¾ðÊó¤òÁ´¤ÆÆÀ¤ë¤è¤¦¤Ë¤·¤Æ¡¢¥â¥ó¥¹¥¿¡¼Àç¿Í¤Ç¤â
-       ¤³¤Î´Ø¿ô¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£probing()¤Î¾ì¹ç¤Ï¿·¤·¤¤»×¤¤½Ð¾ðÊó¤òÆÀ¤é¤ì
-       ¤¿¤È¤­¤Ë¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¡£
-       - files.c¤Î¥Þ¥¯¥í¥È¥ê¥¬¡¼¤Î¥³¡¼¥É¤Çmalloc()¤ò»È¤Ã¤Æ¤¤¤¿¤Î¤Ç
-       string_make()¤Ë½ñ¤­ÊѤ¨¡¢Æ±»þ¤Ë¥³¡¼¥ÉÀ°Íý¡£
-       inet.c¤Èreport.c¤Ï¤½¤â¤½¤â´Ä¶­°Í¸¤Ê¤Î¤Çmalloc()¤Î¤Þ¤ÞÊѹ¹¤·¤Ê¤«¤Ã¤¿¡£
-
-       * lib/file/monspeak_j.txt 1.7: s/»Ò°­Ëâ/¾®°­Ëâ/
-
-2003-02-01  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.66.2.2, src/cmd5.c 1.49.2.3, src/dungeon.c 1.78.2.3, src/melee2.c 1.37.2.1, src/monster2.c 1.45.2.1, src/racial.c 1.26.2.3:
-       - ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤ÎÉÔÈ÷¤ÎºÆ½¤Àµ¤ÈËõ»¦¸å¤Î¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤ÎÉÔÈ÷¤ò¥Þ¡¼¥¸¡£
-       - Í©Â⽤·¤ÆÊɤ˴°Á´¤ËËä¤Þ¤Ã¤Æ¹ÓÇÏÆë¤é¤·¤ò»È¤Ã¤Æ¼ºÇÔ¤·¤ÆÍîÇϤ·¤¿¤È¤­¤Ë¡¢
-       ÍîÇϤ˼ºÇÔ¤·¤Æ¥Ú¥Ã¥È¤Ç¤Ê¤¤Å¨¥â¥ó¥¹¥¿¡¼¤Ë¾èÇϤ·¤¿¾õÂ֤ˤʤë¥Ð¥°¡¢¤µ¤é¤Ë
-       ¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤¹¤ë¤È¥Ú¥Ã¥È¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£(¤Û¤Ü¥Þ¡¼¥¸)
-
-       * src/cmd5.c 1.53, src/floors.c 1.6, src/racial.c 1.30:
-       ¥µ¡¼¥Ú¥ó¥È¤Ë¾èÇϤǤ­¤ëÊ£¹ç¥Ð¥°(1)+(2)+(3)½¤Àµ¡£
-       (1) ¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤Ç·Ò¤Ã¤¿³¬¤ò·ë¤Ö³¬ÃʤòÁܤ·¤Æ¡¢¤½¤Î³¬Ãʤξå¤Ë¥â¥ó¥¹
-       ¥¿¡¼¤òͶ¤¤¤³¤ß¡¢¥ì¥Ù¥ë¥Æ¥ì¥Ý¤ÇÀè²ó¤ê¤·¤Æ³¬ÃʤÎÈ¿ÂЦ¤«¤é¸µ¤Î¥Õ¥í¥¢¤ËÌá
-       ¤ë¤È¡¢¤½¤Î³¬Ãʤξå¤Ë¤¤¤ë¥â¥ó¥¹¥¿¡¼¤Ë½Å¤Ê¤ë»ö¤¬¤Ç¤­¤ë¥Ð¥°¡£
-       (2) µ³Ê¼¤Î¹ÓÇÏÆë¤é¤·¤Ç¾èÇϤ·¤¿Ä¾¸å¤ËÍîÇϤ¹¤ë¾ì¹ç¡¢¤Þ¤ï¤ê¤¬Å¨¤ÇËä¤Þ¤Ã¤Æ
-       ¤¤¤Æ¤·¤«¤â¸µ¼«Ê¬¤¬µï¤¿¾ì½ê¤â¥Ð¥°(1)¤Ë¤è¤Ã¤ÆËä¤Þ¤Ã¤Æ¤¤¤¿¤È¤­¡¢ÍîÇϤ¬¼º
-       ÇÔ¤·¤Æ¹ÓÇÏÆë¤é¤·¤ÎÂоݤÎŨ¤Ëp_ptr->riding¤¬ÀßÄꤵ¤ì¤¿¤Þ¤Þ¤Ë¤Ê¤ë¥Ð¥°¡£
-       (3) ³¬¤ò°ÜÆ°¤·¤Æ¥Ú¥Ã¥È¤¬ÉÕ¤¤¤Æ¤¯¤ë»þ¡¢p_ptr->riding¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ì¤Ð
-       ¥Ú¥Ã¥È¥Õ¥é¥°¤¬Ìµ¤¯¤Æ¤âÉÕ¤¤¤Æ¤¯¤ë¾å¡¢¥Ú¥Ã¥È¥Õ¥é¥°¤¬Ìµ¤¤¤È¤­¤Ë¶¯À©Åª¤ËÉÕ
-       ¤±¤Æ¤¤¤¿¥Ð¥°¡£
-
-       * lib/help/jobjects.txt 1.10, lib/help/objects.txt 1.9, readme.txt 1.11, readme_eng.txt 1.10:
-       ¥É¥­¥å¥á¥ó¥È¹¹¿·¡£
-
-       * src/cmd5.c 1.52, src/externs.h 1.93, src/object1.c 1.58:
-       {@ma}Åù¤Î¤è¤¦¤Ë¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤ò¥¿¥°¤Ë»È¤¦ÊýË¡¤òÁ´¤Æ¤Î¥³¥Þ¥ó¥É¤Ç»È¤¨¤ë
-       ¤è¤¦¤Ë¤·¤¿¡£¤½¤ÎÂå¤ê¤Ë{@a}¤Î¤è¤¦¤Ê¥³¥Þ¥ó¥É̾¤ò»ØÄꤷ¤Ê¤¤·Á¼°¤Ï»ÈÍÑÉÔ²Ä
-       ¤Ë¤·¤¿¤Î¤Ç¡¢{@aa}Åù¤È½ñ¤¤¤Æ¤â¤ª¤«¤·¤Ê¿¶Éñ¤¤¤Ï¤ª¤³¤é¤Ê¤¤¡£
-       »ÅÍͤ¬¤¹¤Ã¤­¤ê¤·¤Æ¡¢{@ma@ba@Ga}Åù¤â»È¤¨¤ë¤Î¤ÇÎɤ¤¤È»×¤¦¡£
-
-2003-01-26  henkma  <henkma@cvs>
-
-       * src/spells3.c 1.56.2.3:
-       ¾¢¤Î²Ã®ËâË¡¤Î´ü´Ö¤Îɽ¼¨¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ
-
-2003-01-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd1.c 1.64, src/defines.h 1.85, src/melee2.c 1.41, src/monster2.c 1.48:
-       ¥Ï¥ë¥Þ¥²¥É¥ó¥È¥é¥Ã¥×¤ÇÂÄÅ·»È¤Ï¥Ç¡¼¥â¥ó¦¤È¤·¤Æ¤Á¤ã¤ó¤ÈÀ臘¤è¤¦¤ËÊѹ¹¡£
-       ¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ë¤È¤­¤Ë¡¢¼öʸ¤À¤±¤Ç¤Ê¤¯²¥¤ê¤â¤Á¤ã¤ó¤È¥¿¡¼¥²¥Ã¥È¤òÁÀ¤¦¤è¤¦¤ËÊѹ¹¡£
-
-       * src/xtra1.c 1.58:
-       MPɽ¼¨¤Î¿§¤¬HP·Ù¹ð¤Î³ä¹ç¤Ë¤è¤Ã¤ÆÊѲ½¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢20%°Ê²¼¤Ë¤Ê¤Ã¤¿¤éÀÖ¤¯¤Ê¤ë¤è¤¦¤Ë¸ÇÄꤷ¤¿¡£
-
-       * src/rooms.c 1.27:
-       ¥Ô¥é¥Ë¥¢/¥Ï¥ë¥Þ¥²¥É¥ó¡¦¥È¥é¥Ã¥×¤Î°ÌÃÖ¤ò¾¯¤·¥é¥ó¥À¥à¤Ë¤·¤ÆÉô²°¤ÎÃæ±û¤«¤é¤º¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/mspells2.c 1.29, src/save.c 1.30, src/types.h 1.25, src/cmd1.c 1.63, src/cmd3.c 1.33, src/init1.c 1.51, src/load.c 1.51, src/melee2.c 1.40, src/monster1.c 1.28, src/mspells1.c 1.35:
-       - ¥Ï¥ë¥Þ¥²¥É¥ó¥È¥é¥Ã¥×¤ò°ÂÁ´¤Ë¤·¤¿¡£½Ð¸½¤¹¤ë¥â¥ó¥¹¥¿¡¼¤ÏÊѲ½Ìµ¤·¤À¤¬¡¢
-       °­Ëâ¤ÈÅ·»È¤¬Á´¤Æ¸ß¤¤¤Ë¥¿¡¼¥²¥Ã¥È¤òÀßÄꤵ¤ì¤Æ¤¤¤ë¤Î¤Ç¥×¥ì¥¤¥ä¡¼¤Ë¤ÏÌܤâ
-       ¤¯¤ì¤Ê¤¤¡£È¿·â¾¤´­¤Î¥³¡¼¥É¤òÀ°Íý¤·¤Æ»ë³¦Æâ¤Ë¤¤¤ëÂоݤˤ⥿¡¼¥²¥Ã¥È¤¬Àß
-       Äê¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ±þÍѤ·¤¿¡£
-       - ¤Þ¤¿¡¢¥â¥ó¥¹¥¿¡¼¤ÎËâË¡¤ÎÂоÝÁªÂò¤Î¥³¡¼¥É¤òÀ°Íý¤·¤¿¤Î¤Ç¥Ú¥Ã¥È¤Ë¥¿¡¼¥²¥Ã
-       ¥È¤òÍ¿¤¨¤¿¤È¤­¤Ë¡¢¤è¤êÀµ³Î¤Ë¥¿¡¼¥²¥Ã¥È¤Î¤ß¤ò¹¶·â¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡£
-       - freq_inate(freq_spell¤Î¥Ö¥ì¥¹ÈÇ)¤Ï¼Â¸úŪ¤Ë¤Ï̤»ÈÍѾõÂ֤ʤΤǺï½ü¤·¤¿¡£
-
-       * src/spells3.c 1.56.2.2:
-       ÊѸ¸¤ÎËâ¸ø¤Ë¾èÇϤ·¤Æ¥Æ¥ì¥Ý¡¼¥È¤¹¤ë¤È¡¢¤Þ¤ì¤ËÊѸ¸¤ÎËâ¸ø¤¬¥×¥ì¥¤¥ä¡¼¤«¤é
-       ¿ôÊâÎ¥¤ì¤¿°ÌÃ֤˸½¤ï¤ì¤ë¥Ð¥°½¤Àµ¡£¥Æ¥ì¥Ý¡¼¥È¤ÎÅþÃåÃÏÅÀ¤¬¤¿¤Þ¤¿¤Þ¸½ºßÃϤ«¤é
-       2Êâ°ÊÆâ¤ÎÈϰϤǤ¢¤Ã¤¿¤È¤­¡¢¸½ºßÃÏÉÕ¶á¤Î¥â¥ó¥¹¥¿¡¼¤¬¥Æ¥ì¥Ý¡¼¥È¤ËÉÕ¤¤¤Æ¤¯¤ë
-       ¥³¡¼¥É¤Ë¤Ò¤Ã¤«¤«¤Ã¤Æ¾èÇϤ¬¾¡¼ê¤Ë¥Æ¥ì¥Ý¡¼¥È¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-       * src/cave.c 1.70, src/melee2.c 1.39, src/monster2.c 1.47:
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤ÎÉÔÈ÷¡¢¤µ¤Ã¤­¤ÎÊѹ¹¤Ç¤Ï¤Þ¤À»Ä¤Ã¤Æ¤¤¤¿¤Î¤ÇºÆ½¤Àµ¡£
-       ¤Þ¤¿¡¢Ëõ»¦¸å¤Ë¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤¬¥¢¥Ã¥×¥Ç¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/xtra1.c 1.57, src/defines.h 1.84, src/dungeon.c 1.86, src/melee2.c 1.38:
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¡Ö¼«Ê¬¤Î¼þ°Ï¤òɽ¼¨¡×¡Ö¥À¥ó¥¸¥ç¥óÁ´Âοޡפǥ¢¥Ã¥×¥Ç¡¼¥È¤ËÉÔÈ÷
-       ¤¬¤¢¤êºÇ¿·¤Î¾õÂÖ¤òɽ¼¨¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       ¤Þ¤¿¡¢handle_staff()¤änotice_staff()¤Î¸Æ¤ÓÊý¤¬Åý°ì¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¤½¤ÎÊÕ¤òÀ°Íý¡£
-
-2003-01-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/raceclas.txt 1.8.2.1, src/object1.c 1.55.2.2, src/cmd1.c 1.60.2.1, src/main-win.c 1.21.2.1:
-       ³«È¯ÈǤ«¤é¥Ð¥°½¤ÀµÅù¥Þ¡¼¥¸(Blue-MageÀâÌÀ¡¢Íð¤ìÀã·î²Ö+¥«¥ª¥¹¸ú²Ì¡¢¥¢¥ó¥Ð¡¼´§¤ÎÀâÌÀ¡¢Win¤Îµ¯Æ°»þ¤Î¥Õ¥©¥ó¥È)¡£
-
-       * src/spells1.c 1.45:
-       &&¤È½ñ¤¯¤Ù¤­½ê¤Ç¡¢& ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£¤¿¤À¤·¡¢¾Ü¤·¤¯Ä´¤Ù¤¿¤¬¼Â³²¤Ï̵¤«¤Ã¤¿¡£
-
-       * lib/help/raceclas.txt 1.9:
-       Blue-Mage¤ÎÀâÌÀ¤Ç¡¢¤â¤Î¤Þ¤Í»Õ¤È¤Î°ã¤¤¤¬¤ï¤«¤êÆñ¤«¤Ã¤¿¤Î¤Ç½ñ¤­Ä¾¤·¡£
-       ¤µ¤é¤ËLeon Marrick¤µ¤ó¤Ë¹»Àµ(½ñ¤­Ä¾¤·¡©)¤·¤Æ¤â¤é¤Ã¤¿¡£
-
-2003-01-23  iks  <iks@cvs>
-
-       * src/cmd1.c 1.62:
-       Íð¤ìÀã·î²Ö»ÈÍÑ»þ¤Ë¡¢¥«¥ª¥¹¸ú²Ì¤ÇŨ¤¬¥¢¥¦¥§¥¤¤¹¤ë¤ÈÂÇ·â²ó¿ô¤¬1²ó;¤Ã¤ÆÊѤʤâ¤Î¤ò²¥¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2003-01-21  henkma  <henkma@cvs>
-
-       * src/object1.c 1.57:
-       ¥¢¥ó¥Ð¡¼´§¤Îȯư¤ÎÀâÌÀ¤ÎÆüËܸìÌõ¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-2003-01-16  henkma  <henkma@cvs>
-
-       * src/birth.c 1.60, src/files.c 1.91:
-       ¥·¥ã¥É¥¦¡¦¥·¥Õ¥È¤¬¼å¤¯¤Ê¤Ã¤¿¤Ë¤â¤«¤«¤ï¤é¤º¡¢¥¢¥ó¥Ð¡¼¶¸Àï»Î¤Î¥¹¥³¥¢¤¬Ä㤤¤Þ¤Þ
-       ¤À¤Ã¤¿¤Î¤Ç¡¢¥¹¥³¥¢·×»»¤òÉáÄ̤ËÌᤷ¤¿¡£Æ±»þ¤Ë¿¦¶È¤ÎÀâÌÀ¤Î¶¸Àï»Î¤Î½ê¤Îʸ¤âÊѹ¹
-       ¤·¤¿¡£
-
-2003-01-03  iks  <iks@cvs>
-
-       * src/main-win.c 1.22:
-       WinNT/2000/XP¤Çµ¯Æ°»þ¤Ë¥Õ¥©¥ó¥È¤¬¤ª¤«¤·¤¤ÉÔ¶ñ¹ç¤ò½¤Àµ¡£
-
-2002-12-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.40.2.7:
-       ±ö¿å¤ÎÌô¤ÎÊ¢¸º¤ê¤¬¥¢¥ó¥Ç¥Ã¥É¤Ë̵¸ú¤Î¤Ï¤º¤¬¡¢µÕ¤Ë¥¢¥ó¥Ç¥Ã¥É¤Î¤ßÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-12-23  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.64: ¹¹¿·¡£
-
-       * lib/help/jversion.txt 1.14.2.1, lib/help/version.txt 1.14.2.1:
-       version.txt¤ò1.4.1¤È1.5.1ÍѤ˹¹¿·¡£
-
-       * src/racial.c 1.26.2.2, src/spells3.c 1.56.2.1:
-       ËâÆ»¶ñ½Ñ»Õ¤Ï¡Ö¾ó¡×¤òµÛ¼ý¤Ç¤­¤Ê¤¤¤è¤¦¤Ë¤¹¤ë°Ù¤ÎHack¤ÎÉûºîÍѤǡ־ó¡×¤Ë
-       Ä̾ï¤Î½¼Å¶Åù¤¬½ÐÍè¤Ê¤«¤Ã¤¿¤Î¤ò½ÐÍè¤ë¤è¤¦¤Ë½¤Àµ¡£¤½¤ÎÂå¤ê¤ËËâÆ»¶ñ½Ñ»Õ¤Ï
-       ¡Ö¾ó¡×¤òµÛ¼ý¤·¤è¤¦¤È¤¹¤ë¤È·Ù¹ð¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd4.c 1.74:
-       'v'isual mode¤Ç¥´¥ß¤òɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¾ò·ï¼°¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       (char·¿¤Ç0x7f¤ÈÈæ³Ó¤¹¤ë¼°¤Ë¤Ê¤Ã¤Æ¤¤¤¿¡£)
-       ¤Þ¤¿¡¢¡Ö'v'¤Ç¥·¥ó¥Ü¥ëÊѹ¹¡×¤ÎÀâÌÀʸ¤Ï 'v'isual mode ¤¬»ÈÍÑÉÔ²Äǽ¤Ê¤È¤­
-       (flavor¤¬¤¢¤ë¥¢¥¤¥Æ¥à¤Î¾ì¹ç)¤Ïɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cave.c 1.69, src/cmd4.c 1.73:
-       ÃÏ·Á¤Îɽ¼¨Ê¸»ú/¥¿¥¤¥ë ¤Îɽ¼¨¤Ç¡¢bigtile¤Î¤È¤­¤Ë2ÇÜÉýASCII¤ò»È¤¤Ëº¤ì¤Æ¤¤¤¿½ê½¤Àµ¡£
-       ¤Þ¤¿¡¢'v'isual mode ¤Ç 0x80°Ê¾å¤Îattr¤È0x80°Ê²¼¤Îchar¤È¤ÎÁȤ߹礻Åù¤Î̵°ÕÌ£¤Ê
-       ÁȤ߹ç¤ï¤»¤òÁªÂò¤Ç¤­¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cmd4.c 1.66.2.4:
-       ¾ðÊó¥á¥Ë¥å¡¼¤Î (0)ÃÏ·Á¤Îʸ»ú/¥¿¥¤¥ë¤Î°ìÍ÷ ¤Ï¡¢¥·¥ó¥Ü¥ë¥¨¥Ç¥£¥¿ÀìÍѤȤ·¤Æ1.5.x
-       ¤À¤±¤ÇÄɲä·¤¿¤â¤Î¤À¤Ã¤¿¤Î¤Ë¡¢´Ö°ã¤¨¤Æ14x¤Ë¤â¥¿¥¤¥È¥ë¤À¤±Æþ¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Çºï½ü¡£
-
-2002-12-23  iks  <iks@cvs>
-
-       * src/save.c 1.29:
-       ¥»¡¼¥Ö»þ¤ËÃϾå¤Ç¤Ï˺¤ì¤¿ÌÀ¤«¤ê¤ÎºÆ·×»»¤ò¤·¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¿¤Î¤ò½¤Àµ¡£
-
-2002-12-20  Takeshi Mogami  <mogami@cvs>
-
-       * configure.in 1.24, lib/file/news.txt 1.18, lib/file/news_j.txt 1.17, src/defines.h 1.83:
-       ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò1.5.1¤Ø¡£
-
-       * lib/file/news.txt 1.16.2.2, lib/file/news_j.txt 1.15.2.2, src/defines.h 1.81.2.2, configure.in 1.22.2.2:
-       ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò1.4.1¤Ø¡£
-
-       * src/cmd4.c 1.66.2.3:
-       ¾ðÊó¥á¥Ë¥å¡¼¤Ë(0)ÃÏ·Á¤Îʸ»ú/¥¿¥¤¥ë¤Î°ìÍ÷ ¤Î¹àÌÜ¥¿¥¤¥È¥ëÄɲá£
-
-       * src/rooms.c 1.25.2.1:
-       greater vault ¤ÎÇÛÃ֤ǡ¢³°Êɤαʵ״ä¤Ë¤Ô¤Ã¤¿¤ê±è¤Ã¤Æ¤·¤Þ¤Ã¤Æ¡¢
-       Æþ¸ý¤¬ºÉ¤¬¤ì¤ë»ö¤¬¤¢¤ë¤Î¤ò½¤Àµ¡£¾å²¼º¸±¦¤Ë1¥Ö¥í¥Ã¥¯Í¾Íµ¤ò¼è¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-12-19  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/k_info.txt 1.3.2.2, src/cmd6.c 1.40.2.6, src/init2.c 1.19.2.3, src/store.c 1.20.2.2, src/birth.c 1.57.2.2:
-       ¥¨¥ë¥Õ¤Î¹ÔÎȤȱö¿å¤ÎÊѹ¹¡¢¥¢¥¤¥Æ¥à¤ÎÀâÌÀʸ¤ò¥Þ¡¼¥¸
-
-       * lib/edit/k_info.txt 1.6:
-       ±Ñ¸ìÈÇÀâÌÀʸ¤Ç°ì²Õ½ê¡ÖD:$¡×¤Î$¤òÉÕ¤±Ëº¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/edit/k_info.txt 1.5, src/init2.c 1.22, src/store.c 1.22, src/birth.c 1.59, src/cmd6.c 1.46:
-       ¥¨¥ë¥Õ¤Î¹ÔÎȤ϶õÊ¢½¼Â­¤ÈƱÅù¤Î¼¢ÍÜ¡¢»¨²ß²°¤Ç¾®¿ôÇä¤ë¡£
-       ±ö¿å¤Ï¥¢¥ó¥Ç¥Ã¥ÉÅù¤Ë¤Ï̵¸ú¡£
-       OAngband¤«¤éÉð´ï¡¢ËɶñÅù¤Î¥¢¥¤¥Æ¥à¤ÎÀâÌÀʸ¤òÌã¤Ã¤¿¡£ËÝÌõ¤Ï¤Þ¤ÀÅÓÃæ¡£
-       Ì¤Ìõ¤Ë¤Ï"#D:̤Ìõ#¤È¤¤¤¦¥³¥á¥ó¥È¤¬ÉÕ¤¤¤Æ¤¤¤ë¤Î¤Ç¾¯¤·¤º¤Ä¤Ç¤â¤ä¤ê¤¿¤¤(¤ä¤Ã¤ÆÍߤ·¤¤)
-
-       * lib/help/faq.txt 1.2: FAQ¹¹¿·¡£
-
-       * src/save.c 1.28:
-       clear_cave()¤Çm_ptr->cdis¤äflow¾ðÊó¤ò¾Ã¤·¤Æ¤¤¤ë¤Î¤Ç¡¢¥»¡¼¥Ö¼Â¹Ô¸å¤Ë
-       update¤òºÆ¼Â¹Ô¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-       wr_dungeon()¤Î¥¨¥é¡¼½èÍý¤¬¥Ð¥°¤Ã¤Æ¤¤¤Æsave_floor()Åù¤Ç¥¨¥é¡¼¤¬¤¢¤ë¤È¡¢
-       Segmentation Fault¤òµ¯¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ¥»¡¼¥Ö¥³¥Þ¥ó¥É¤Ë¤è¤ë¥»¡¼¥Ö¥Ç¡¼¥¿¤Ç¡¢¸÷¸»¤Î¥Õ¥é¥°¤¬ÃÏ·Á¤Ë»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ
-       ¤¤¤¿¤Î¤Çforget_lite()Åù¤òÆþ¤ì¤Æ½¤Àµ¡£
-
-2002-12-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.40.2.5:
-       ¥Ð¥°½¤Àµ¥Þ¡¼¥¸¤·Ëº¤ìÄɲá£ÃÃÌê»Õ¤Î¥¨¥Ã¥»¥ó¥¹¤ÇÄ̾ï¤Î¥¢¥¤¥Æ¥à¤Îȯư¤¬¤Ç¤­¤Ê¤¯¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-       * src/dungeon.c 1.78.2.2, src/externs.h 1.87.2.3, src/files.c 1.88.2.1, src/mind.c 1.17.2.1, src/object1.c 1.55.2.1, src/object2.c 1.62.2.1, src/util.c 1.35.2.1, src/autopick.c 1.75.2.1, src/birth.c 1.57.2.1, src/bldg.c 1.26.2.1, src/cmd5.c 1.49.2.2, src/cmd6.c 1.40.2.4:
-       1.5.0¤Î½¤Àµ¤ò¥Þ¡¼¥¸¡£roff_to_buf()¤Î¥Ð¥Ã¥Õ¥¡°î¤ì½¤Àµ¡£{!!}¤Ë¹ÔÆ°Ãæ»ß¤òÄɲá£
-
-       * src/dungeon.c 1.85:
-       {!!}¤È¹ï¤ó¤À¥¢¥¤¥Æ¥à¤ÎºÆ½¼Å¶»þ¤Ë¡¢¹ÔÆ°Ãæ»ß¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/floors.c 1.5:
-       ³¬ÃʤòÅФê¹ß¤ê¤·¤ÆÊݸ¤µ¤ì¤¿¥Õ¥í¥¢¤ËÌá¤ë¤ÈÁ´¤Æ¤Î̲¤Ã¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤¬
-       µ¯¤­¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-12-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/mind.c 1.18, src/object1.c 1.56, src/object2.c 1.64, src/util.c 1.36, src/autopick.c 1.76, src/birth.c 1.58, src/bldg.c 1.28, src/cmd5.c 1.51, src/cmd6.c 1.45, src/externs.h 1.92, src/files.c 1.90:
-       ¾ðÊó¥³¥Þ¥ó¥É¤Î(a)¤Ç¡¢roff_to_buf()¤ËÅϤ¹temp[]¤Î¥µ¥¤¥º¤¬Â­¤ê¤º¤Ë
-       ¥¯¥é¥Ã¥·¥å¤·¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£¤µ¤é¤Ë¥µ¥¤¥º¤ò°ú¿ô¤ÇÅϤ¹¤è¤¦¤Ë¤·¤¿¡£
-
-2002-12-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.44:
-       È¯Æ°²Äǽ¤Ê¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È°Ê³°¤Î¥¢¥¤¥Æ¥à¤Ëȯư¤¬Ìµ¤¤°ìÈ̤Υ¿¥¤¥×¤ÎÃÃÌê»Õ¤Î
-       ¥¨¥Ã¥»¥ó¥¹¤òÉÕ¤±¤ë¤ÈȯưÉÔ²Äǽ¤Ë¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-       * src/generate.c 1.43:
-       clear_cave()¤ÎÃæ¤Çwipe_o_list()¤Èwipe_m_list()¤ò´Ê°×²½¤·¤¿½é´ü²½¥³¡¼¥É
-       ¤ò»È¤Ã¤Æ¤¤¤¿¤¬¡¢½é´ü²½¤¬ÉÔ½½Ê¬¤Ç¡¢¥â¥ó¥¹¥¿¡¼¤Îhold_o_idxÅù¤¬»Ä¤Ã¤Æ¤¤¤¿
-       °Ù¡¢ÊѤʥª¥Ö¥¸¥§¥¯¥È¡Ö(¤Ê¤·)¡×Åù¤¬À¸À®¤µ¤ì¤ë»ö¤¬¤¢¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-12-11  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.84: ¶ãÍ·»í¿Í¤ÎÎîŪ´¶ÃΤǹÛÌ®¤ò´¶ÃΤ·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cave.c 1.66.2.1, src/cmd4.c 1.66.2.2, src/externs.h 1.87.2.2:
-       ´ûÃΤΡÁ¥ê¥¹¥ÈµÚ¤Ó¡¢'%'¥³¥Þ¥ó¥É¤Ç¥¿¥¤¥ë¤Î̵¤¤¥·¥ó¥Ü¥ë¤ò¤Á¤ã¤ó¤È
-       ÇܳÑJIS¤Çɽ¼¨¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£´Êñ¶ò¤è¤ê(¤È¤¤¤¦¤«»²¹Í)¡£
-
-       * src/cave.c 1.68, src/cmd4.c 1.71, src/externs.h 1.91:
-       ´ûÃΤΡÁ¥ê¥¹¥ÈµÚ¤Ó¡¢'%'¥³¥Þ¥ó¥É¤Ç¥¿¥¤¥ë¤Î̵¤¤¥·¥ó¥Ü¥ë¤ò¤Á¤ã¤ó¤È
-       ÇܳÑJIS¤Çɽ¼¨¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£´Êñ¶ò¤è¤ê¡£
-
-       * src/cmd4.c 1.70:
-       bigtile»ÈÍÑ»þ¤Î´ûÃΤΥ¢¥¤¥Æ¥à¥ê¥¹¥Èɽ¼¨¤¬¤Þ¤À¾¯¤·¥Ð¥°¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/effects.c 1.30.2.2, src/flavor.c 1.27.2.2, src/init1.c 1.48.2.2, lib/edit/d_info.txt 1.1.2.1, lib/edit/k_info.txt 1.3.2.1, lib/help/jgeneral.txt 1.6.6.1, readme.txt 1.8.6.2, src/cmd4.c 1.66.2.1, src/cmd5.c 1.49.2.1, src/cmd6.c 1.40.2.3:
-       TO³«È¯¥Á¡¼¥à¤«¤é¤ÎÊó¹ð¤ò¸µ¤Ë¤¤¤í¤¤¤í½¤Àµ¡£
-
-       * src/effects.c 1.33, src/flavor.c 1.29, src/floors.c 1.4, src/init1.c 1.50, src/save.c 1.27, Changelogs 1.63, lib/edit/d_info.txt 1.2, lib/edit/k_info.txt 1.4, lib/help/jgeneral.txt 1.7, readme.txt 1.10, src/cmd2.c 1.38, src/cmd4.c 1.69, src/cmd5.c 1.50, src/cmd6.c 1.43:
-       TO³«È¯¥Á¡¼¥à¤«¤é¤ÎÊó¹ð¤ò¸µ¤Ë¤¤¤í¤¤¤í½¤Àµ¡£
-       wr_monster()¤Ç´Ö°ã¤Ã¤Æap_r_idx¤ò½ñ¤­ÊѤ¨¤Æ¤¤¤¿¥´¥ßºï½ü¡£
-       ¡ÖÃϾå¤ËÌá¤Ã¤¿¡×¤Î¥á¥Ã¥»¡¼¥¸¤ò¥À¥ó¥¸¥ç¥ó¤«¤é½Ð¤¿¤È¤­¤Ë¤â½Ð¤¹¡£
-       ²¾¤Ë´Ö°ã¤Ã¤Æ1³¬¤ËÅФ깣ƻ¤¬½Ð¤Æ¤â-1³¬¤Ë¹Ô¤«¤Ê¤¤¤è¤¦¤Ë¡£
-       Æü쿩ÎȤÎȽÄê¤ËÊÑ¿ÈÃæ¤Î¾ì¹ç¤ò¹Íθ¡£
-       ¥¢¥ê¡¼¥Ê¤ËÆþ¤Ã¤¿¤È¤­Í©Â⽤¬²ò½ü¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       ¥¢¥¤¥Æ¥àÃ챤Çmsg_print(NULL)˺¤ì½¤Àµ¡£
-       ¾èÇÏÀ®¸ù¤·¤¿½Ö´Ö¤Ë¾èÇϤ˰ÊÁ°ÀßÄꤵ¤ì¤Æ¤¤¤¿¥Ø¥ë¥¹¥Ð¡¼É½¼¨¤ÏÉÔÍפʤΤǥ­¥ã¥ó¥»¥ë¡£
-       ±Ñ¸ìÈǤǿ©ÎÈÍÑ¡Ö¾ó¡×¤Î̾Á°¤Îɽ¼¨¤Î¥Ð¥°½¤Àµ¡£
-       d_info¤Ç¡¢R_CHAR_%c¤Î·Á¼°¤ÏÊ£¿ô¹Ô¤ËÂбþ¤·¤Æ¤ª¤é¤º¡¢»³¤Ç¥Ð¥°¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ¤½¤ÎºÝ R_CHAR_%s ¤Î¤è¤¦¤Ê·Á¼°1¤Ä¤À¤±¤ò»È¤¦¤è¤¦¤ËÊѹ¹¡£
-
-2002-12-11  iks  <iks@cvs>
-
-       * src/dungeon.c 1.83:
-       ¥â¥ó¥¹¥¿¡¼Æ®µ»¾ì¤Ç¤ÏÆÍÁ³ÊѰۤθú²Ì¤ÈƱÍͤ˼ö¤¤¤Î¸ú²ÌÅù(¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È´Þ¤à)¤òµ¯¤­¤Ê¤¯¤·¤¿¡£
-
-2002-12-11  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/f_info.txt 1.2, lib/pref/graf-new.prf 1.8, lib/pref/graf-xxx.prf 1.12, src/cmd4.c 1.68, src/main-x11.c 1.21:
-       Unangband¤«¤é¡¢´ûÃΤΡÁ¥ê¥¹¥È¤ÎÃæ¤Ç¥â¥ó¥¹¥¿¡¼¤ä¥¢¥¤¥Æ¥à¤Î¥·¥ó¥Ü¥ë¤ò
-       ¥¨¥Ç¥£¥Ã¥È¤¹¤ë¥â¡¼¥É¤ò°Ü¿¢¡£
-
-2002-12-09  iks  <iks@cvs>
-
-       * src/bldg.c 1.27, src/dungeon.c 1.82, src/floors.c 1.3, src/generate.c 1.42, src/load.c 1.50, src/save.c 1.26, src/wild.c 1.20:
-       Ì¤»ÈÍÑÊÑ¿ô¤Ë¤è¤ë·Ù¹ð¤ò½üµî¡£
-
-2002-12-08  Takeshi Mogami  <mogami@cvs>
-
-       * src/grid.c 1.9.2.1:
-       ±£¤·¥É¥¢¤¬´äÀФǾå½ñ¤­¤µ¤ì¤Æ¡¢¥É¥¢¤¬¤¢¤ë¤Ù¤­¾ì½ê¤¬ÊɤΤ褦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-       * lib/help/jversion.txt 1.15, lib/help/version.txt 1.15:
-       version.txt ¤Ë1.4.0¤È1.5.0¤Î¾ðÊóÄɲá£
-
-2002-12-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/load.c 1.46.2.1:
-       ¥í¡¼¥É»þ¤Ë¥«¥á¥ì¥ª¥ó¤Î cur_num ¤òÀµ¤·¤¯¹¹¿·¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       ¥«¥á¥ì¥ª¥óƶ·¢ºÇ²¼Áؤǡ¢¥»¡¼¥Ö&¥í¡¼¥É¤¹¤ë¤È¥«¥á¥ì¥ª¥ó¤Î²¦¤¬Ê£¿ô½Ð¤Æ¤·
-       ¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-       * src/dungeon.c 1.81, src/externs.h 1.90, src/floors.c 1.2, src/generate.c 1.41, src/load.c 1.49, src/monster2.c 1.46, src/object2.c 1.63, src/save.c 1.25, src/wild.c 1.19, src/xtra2.c 1.57:
-       ¡¦Êݸ¥Õ¥í¥¢¤Î¥æ¥Ë¡¼¥¯¤È¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Î°·¤¤¤¬¥¢¥ë¥´¥ê¥º¥àŪ¤Ë´Ö°ã¤Ã
-         ¤Æ¤¤¤¿¤Î¤Ç½ñ¤­Ä¾¤·¡£¸Å¤¤¥Õ¥í¥¢¤Ë²¿¤«¥æ¥Ë¡¼¥¯¤¬¤¤¤ëÃʳ¬¤Ç¡¢Â¾¤Î¥Õ¥í¥¢
-         ¤Ç½Ð¸½¤·¤¿¤½¤Î¥æ¥Ë¡¼¥¯¤ò¤¹¤°¤ËÅݤ·¤Æ¤·¤Þ¤¦¤È¡¢¸Å¤¤¥Õ¥í¥¢¤Î¥æ¥Ë¡¼¥¯¤¬
-         ¾Ã¤¨¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-       ¡¦¤Þ¤¿¡¢¥À¥ó¥¸¥ç¥ó¤ò¥í¡¼¥É¤·¤¿¤È¤­¤Ë¡¢¥«¥á¥ì¥ª¥ó¤Îcur_num¤òÀµ¤·¤¯¹¹¿·
-         ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£¤µ¤é¤Ë¡¢r_ptr¤òÊäÀµ¤¹¤ë¿¿ô¤Î Hack ¤ò°ì¤Ä¤Î
-         ´Ø¿ô real_r_ptr()¤Ë¤Þ¤È¤á¤¿¡£
-       ¡¦ÂçÎ̤Υ¢¥¤¥Æ¥à¡¢¥â¥ó¥¹¥¿¡¼¤Ë¤è¤Ã¤Æ¥»¡¼¥Ö¥Ç¡¼¥¿¤¬Æɤá¤Ê¤¯¤Ê¤ë¥Ð¥°¤¬¡¢
-         ÁêÊѤï¤é¤º»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢¤½¤ì¤âľ¤·¤¿¡£
-
-2002-11-30  Takeshi Mogami  <mogami@cvs>
-
-       * readme.txt 1.8.6.1, readme_eng.txt 1.8.6.1:
-       ¥Ø¥ë¥×¥³¥Þ¥ó¥É'?'¤Ë¤Ä¤¤¤Æ¸ÀµÚ¡£
-
-       * src/makefile.bcc 1.4.6.1, src/makefile.dos 1.3.8.1, src/makefile.ibm 1.3.8.1:
-       PythonÍѤΥ½¡¼¥¹¤Ç¤¢¤Ã¤¿ script.c ¤ò½ü¤­Ëº¤ì¤Æ¤¤¤¿¤Î¤Çºï½ü¡£
-
-       * src/makefile.dos 1.5, src/makefile.ibm 1.5:
-       makefile.dos¤Èmakefile.ibm¤â°ì±þ¹¹¿·¡£¸Å¤¤¥³¥á¥ó¥Èºï½ü¡£
-
-       * src/makefile.bcc 1.6:
-       PythonÍѤΥ½¡¼¥¹¤Ç¤¢¤Ã¤¿ script.c ¤ò½ü¤­Ëº¤ì¤Æ¤¤¤¿¤Î¤Çºï½ü¡£
-
-2002-11-29  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jobjects.txt 1.8.2.1, lib/help/objects.txt 1.7.2.1:
-       ËâË¡Æ»¶ñ»ÙÇۤμ«Æ°¹ï¤ß¤ÎÀâÌÀÄɲÃ
-
-       * src/flavor.c 1.27.2.1:
-       ËâË¡Æ»¶ñ»ÙÇۤΥե饰¤Î¼«Æ°¹ï¤ß¤¬Ìµ¤«¤Ã¤¿¤Î¤Ç¡¢{+Æ»}{Md}¤ËÀßÄê¡£
-
-       * src/effects.c 1.30.2.1: ÀÄËâÆ»»Õ¤Î³Ø½¬¾õÂ֤Ϻ®Í𤹤ë¤È¼«Æ°²ò½ü¡£
-
-       * src/init2.c 1.19.2.2, src/store.c 1.20.2.1:
-       »¨²ß²°¤Ç¿å¤ÎÌô¤òÇä¤ë¤è¤¦¤Ë¤·¤¿¡£Âå¤ê¤Ë¾¾ÌÀ¤ò¸º¤é¤·¤¿¡£
-
-       * src/dungeon.c 1.78.2.1:
-       ¹ÓÌî¤Ç¿¹¤Î¾å¤òÊ⤤¤¿¤È¤­¡¢energy_use¤¬26400¤Ç¡¢signed 16bit ¤ÎºÇÂçÃÍ´Ö¶á¤À¤Ã¤¿
-       ¤Î¤Ç¡¢¥é¥ó¥À¥à¤ÊENERGY_NEED()¤ò³Ý¤±¤¿¤È¤­¤Ë¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Æ»þ»ß¤á¾õÂÖ¤Ë
-       ¤Ê¤Ã¤Æ¤·¤Þ¤¦»ö¤¬¤¢¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-11-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.40.2.2:
-       ½øÈפΥ¨¥ó¥È¤¬²î»à¤·¤½¤¦¤Ê¤Î¤Ç¡¢Ìô¤Î±ÉÍÜɾ²Á¤òÁý¤·¤¿¡£
-       ¤Þ¤¿¿å¤ä¥¸¥å¡¼¥¹Åù¤ÏÆä˱ÉÍܲÁ¤¬¤¢¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/externs.h 1.87.2.1, src/init1.c 1.48.2.1, src/init2.c 1.19.2.1, src/variable.c 1.34.2.1, src/xtra2.c 1.54.2.1:
-       ¥°¥í¡¼¥Ð¥ë¤Ëm_name¤È¤¤¤¦ÊÑ¿ô¤¬¤¢¤ê¡¢¥í¡¼¥«¥ë¤Îm_name¤ÎÀë¸À¤ò˺¤ì¤Æ¤â
-       ¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼¤Ë¤Ê¤é¤º¤Ë¥¯¥é¥Ã¥·¥å¤¹¤ë¥Ð¥°¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ¥°¥í¡¼¥Ð¥ë¤Îm_name¤Ï̵°ÕÌ£¤À¤Ã¤¿¤Î¤Çºï½ü¡£
-
-2002-11-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.40.2.1:
-       ¶õ¤ÎËâË¡ËÀ/¾ó¤Î¥Á¥ã¡¼¥¸¤ò¿©¤ª¤¦¤È¤·¤Æ¼ºÇÔ¤·¤¿¤È¤­¤Ë{¶õ}¤È°õ¤¬ÉÕ¤«¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢ÉÕ¤¯¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/racial.c 1.28: ¶¸Àï»Î¤Îµ¢´Ô¤¬»È¤¨¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-11-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/load.c 1.48:
-       ¥»¡¼¥Ö¥Ç¡¼¥¿¤Î¥Ð¡¼¥¸¥ç¥ó¤òÈæ³Ó¤¹¤ë¤È¤­¤Ë¡¢1.3.2¤È¤¤¤¦¿ô»ú¤ò»È¤Ã¤Æ¤¤¤¿¤Î¤ò1.5.0¤Ë½¤Àµ¡£
-
-       * src/floors.c 1.1:
-       ¥Õ¥í¥¢Êݸ¥³¡¼¥É¤ÎÃæ¿´¤È¤Ê¤ë¥Õ¥¡¥¤¥ë¡£commit Ëº¤ì¤Æ¤¿¡£
-
-       * configure.in 1.22.2.1, lib/file/news.txt 1.16.2.1, lib/file/news_j.txt 1.15.2.1, src/defines.h 1.81.2.1:
-       ¥Ð¡¼¥¸¥ç¥ó1.4.0¤Ø
-
-       * src/generate.c 1.40, src/generate.h 1.2, src/load.c 1.47, src/makefile.bcc 1.5, src/makefile.dos 1.4, src/makefile.ibm 1.4, src/makefile.std 1.4, src/racial.c 1.27, src/save.c 1.24, src/script.c 1.3, src/spells2.c 1.61, src/spells3.c 1.57, src/streams.c 1.7, src/tables.c 1.54, src/types.h 1.24, src/variable.c 1.35, src/wizard2.c 1.32, src/xtra1.c 1.56, src/xtra2.c 1.55, configure.in 1.23, lib/file/news.txt 1.17, lib/file/news_j.txt 1.16, lib/help/joption.txt 1.20, lib/help/option.txt 1.21, lib/pref/pref-opt.prf 1.14, src/Makefile.am 1.7, src/cave.c 1.67, src/cmd1.c 1.61, src/cmd2.c 1.37, src/cmd4.c 1.67, src/defines.h 1.82, src/dungeon.c 1.79, src/effects.c 1.31, src/event.h 1.3, src/externs.h 1.88, src/files.c 1.89:
-       ¥Õ¥í¥¢Êݸ¤Î»ÅÍͤò¼ÂÁõ¡£
-
-       * Changelogs 1.62: 1.4.x¤Î»ÞºîÀ®Á°¤Ë¹¹¿·¡£
-
-       * src/rooms.c 1.25:
-       rooms.c 1.21 ¤Ç vault ºîÀ®»þ¤ËCAVE_ROOM¥Õ¥é¥°¤òÉÕ¤±¤Æ¤¤¤¿¤Î¤òÉÔÍѰդ˺ï½ü
-       ¤·¤Æ¤¤¤¿°Ù¤Ë¡¢vault¤ÎÃæ¤Ë´äÀФä¤éÄÌÏ©¤ä¤é¤Ç¤­¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-       ¤Ê¤¼ºï½ü¤·¤Æ¤¤¤¿¤Î¤«»×¤¤½Ð¤»¤Ê¤¤¡£
-
-       * src/cave.c 1.66:
-       Riv. 1.65 ¤Ç¡¢¥â¥ó¥¹¥¿¡¼¤ÎHPɽ¼¨¤ò¹¹¿·¤¹¤ë¤È¤­¡¢¾èÇϤÎHP¤À¤±2Îóʤֻö¤¬¤Ê¤¤
-       ¤è¤¦¤Ë½¤Àµ¤·¤¿ºÝ¡¢m_idx == 0 ¤ÇHPɽ¼¨¤Î¥­¥ã¥ó¥»¥ë¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Î¤ò¹Íθ¤·Ëº¤ì¤Æ
-       ¥­¥ã¥ó¥»¥ëÉÔǽ¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/cmd4.c 1.66:
-       ´ûÃΤΥâ¥ó¥¹¥¿¡¼¥ê¥¹¥È¤Ç¥æ¥Ë¡¼¥¯¤Î À¸Â¸/»àË´ ¤¬¸«¤ä¤¹¤¯¤Ê¤ë¤è¤¦¤Ë¿§¤òÊѤ¨¤¿¡£
-
-       * src/xtra2.c 1.54:
-       ¥¢¥ó¥Ð¡¼¤Î²¦Â²¤òÅݤ·¤¿¤È¤­¤Ë·ì¤Î¼ö¤¤¤ÎÃϿ̤ǾõîÁ°¤ÎÅݤ·¤¿¥¢¥ó¥Ð¡¼¤¬ÄÙ
-       ¤ì¤Æ¾Ã¤¨¤Æ¡¢Ä¾¸å¤Ë¿·¤¿¤ËÅݤ·¤¿¤Î¤ÈƱ¤¸¥¢¥ó¥Ð¡¼¤Î²¦Â²¤¬¾¤´­¤µ¤ì¤ë»ö¤¬¤¢¤Ã
-       ¤¿¤Î¤Ç½¤Àµ¡£Àè¤Ëmax_num = 0¤Î½èÍý¤ò¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-11-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.65:
-       ´ûÃΤΥâ¥ó¥¹¥¿¡¼/¥¢¥¤¥Æ¥àɽ¼¨¤Ç¡¢¥¹¥Ú¡¼¥¹¥­¡¼¤È'-'¥­¡¼¤Ç1²èÌÌ¥¹¥¯¡¼¥ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cave.c 1.65, src/cmd5.c 1.49, src/melee2.c 1.37:
-       ¡¦¾èÇÏÃæ¤Î¥æ¥Ë¡¼¥¯¤¬¾Ã¤¨¤¿¤È¤­¤Ë®ÅÙ¤äɽ¼¨¤Î¥¢¥Ã¥×¥Ç¡¼¥È¤¬Àµ¾ï¤Ë¹Ô¤ï¤ì
-       ¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       ¡¦¥â¥ó¥¹¥¿¡¼¤ÎHPɽ¼¨¤ò¹¹¿·¤¹¤ë¤È¤­¡¢¾èÇϤÎHP¤À¤±2Îóʤֻö¤¬¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-2002-11-23  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.61: ¹¹¿·
-
-       * src/load.c 1.46:
-       load.c 1.45 ¤Î½¤Àµ¤ÈƱÍͤÎʪ¤ò¥â¥ó¥¹¥¿¡¼¤ÎÊý¤Ë¤â¤¹¤ë¤Î¤ò˺¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/object1.c 1.55: ¸­¼Ô¤Î¥¢¥ß¥å¤ÎESP¤Î¿ô¤ÎÀâÌÀʸÄûÀµ¡£
-
-       * src/externs.h 1.87, src/object1.c 1.54, src/spells3.c 1.56, src/store.c 1.20, src/artifact.c 1.29, src/cmd3.c 1.32, src/cmd4.c 1.64:
-       ¿·¤·¤¤´ûÃΤΥ¢¥¤¥Æ¥à¥ê¥¹¥È¤Ç¡¢¸­¼Ô¤Î¥¢¥ß¥å¥ì¥Ã¥ÈÅù¤Çac¤Èpval¤¬ÌµÂ̤Ëɽ
-       ¼¨([+3] (+0)Åù)¤µ¤ì¤Æ¤¤¤¿¤Î¤Çɽ¼¨¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£¤Þ¤¿¥é¥ó¥À¥à¤ËǽÎÏ
-       Äɲäò»ý¤Ä¥¢¥¤¥Æ¥à¤Ï¥é¥ó¥À¥à¤Ç¤¢¤ë»ö¤òÀâÌÀ¹Ô¤ËÄɲá£
-
-       * lib/help/joption.txt 1.19, lib/help/option.txt 1.20, src/xtra2.c 1.53:
-       look¥³¥Þ¥ó¥É¤Î'x'¤Î¿¶Éñ¤¤¤òÈùÄ´À°¡£¼Í·âÅù¤Îtarget»ØÄê»þ¤Ë¤Ï¥¹¥Ú¡¼¥¹¥­¡¼
-       ¤Ï¼¡¤Î¥¿¡¼¥²¥Ã¥È¤Ø¥«¡¼¥½¥ë¤ò°ÜÆ°¤¹¤ë¤¬¡¢'x'¤Ï­¸µ¤Î¥¢¥¤¥Æ¥à¤òɽ¼¨¤¹¤ë¡£
-       ¤Þ¤¿¡¢¥ª¥×¥·¥ç¥ó¤Î¥Ø¥ë¥×¹¹¿·¡£
-
-       * src/wild.c 1.18:
-       ¹­°è¥Þ¥Ã¥×¤Ç²èÌ̤ò¥¹¥¯¥í¡¼¥ë¤¹¤ë¤È±¦Ã¼¤Î¶­³¦¤Î³°¤Þ¤Ç¥¹¥¯¥í¡¼¥ë¤Ç¤­¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-2002-11-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.63, src/externs.h 1.86, src/xtra2.c 1.52:
-       easy_floor»ÈÍÑÃæ¤Î look/target ¥³¥Þ¥ó¥É¤ò»È¤¤¤ä¤¹¤¯¤·¤¿¡£
-
-       * lib/edit/k_info.txt 1.3, src/flavor.c 1.27:
-       ¥¢¥¤¥Æ¥à̾¤ÎƬ¤ËÉÕ¤¤¤Æ¤¤¤¿¥´¥ß"& "¤òºï½ü¤·¤¿¤¬¡¢flavor.c¤Î°ìÉô¤¬"& "¤Î¸ºß
-       ¤ò²¾Äꤷ¤Æñ½ã¤Ë2ʸ»úºï½ü¤¹¤ë¤è¤¦¤Ê½èÍý¤ò¤·¤Æ¤¤¤¿°Ù¡¢»àÂΤÎ̾Á°¤Îɽ¼¨¤¬¤ª¤«
-       ¤·¤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£Â¾¤Ë¤âflavor.c¤Ë»Ä¤Ã¤Æ¤¤¤¿"& "ºï½ü¡£
-
-       * src/load.c 1.45:
-       ¥Ç¥Ð¥Ã¥°¥³¥Þ¥ó¥É¤ÇÂçÎ̤Υ¢¥¤¥Æ¥à¤ò°ìÅ٤˺îÀ®¤·¤Æ¥¢¥¤¥Æ¥à¿ô¤¬max(=1024¸Ä)¤Î
-       ¤È¤­¤Ë¤¹¤°¤Ë¥»¡¼¥Ö¤¹¤ë¤È¡¢¥í¡¼¥ÉÉÔ²Äǽ¤Ë¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-2002-11-21  iks  <iks@cvs>
-
-       * src/cmd6.c 1.40:
-       ¤¿¤À¤Î¾ó¤ò»È¤Ã¤¿¤È¤­¤Ë¡¢¾ó¤ò¿©ÎȤȤ¹¤ë¼ï²°Ê³°¤Ç¤Ï¡Ö¤â¤Ã¤¿¤¤¤Ê¤¤¡×¥á¥Ã¥»¡¼¥¸¤¬½Ð¤Ê¤¤¤è¤¦¤ËÊѹ¹¡£
-
-       * src/cmd4.c 1.62:
-       ÊÑ¿ô¤Î·¿°ã¤¤¤Ë¤è¤ë·Ù¹ð¤ò½üµî¡£´ûÃΤΥ¢¥¤¥Æ¥à¥ê¥¹¥È¤Ç1¤Ä¤â´ûÃΤǤʤ¤¤È¤­¤Ë»×¤¤½Ð¤ò¸«¤ë¤È¶õ¤Î¥¢¥¤¥Æ¥à¤Î»×¤¤½Ð¤òɽ¼¨¤·¤Æ¤¿¤Î¤ò½¤Àµ¡£
-
-2002-11-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/mspells3.c 1.16:
-       ÀÄËâÆ»»Õ¤Î¥ì¥Ù¥ë¥Æ¥ì¥Ý¡¼¥È¤òÃϾå¤Ç»È¤¦¤È¥â¥ó¥¹¥¿¡¼¤¬Â¸ºß¤·¤Ê¤¤Å·°æ¤òÇˤäÆÃè¤ËÉ⤤¤Æ¤¤¤¯¥Ð¥°½¤Àµ¡£
-
-       * src/mind.c 1.17:
-       Jaroslav Slade¤µ¤óÊó¹ð¤Î¶À»È¤¤¤Î¾ÃÈñ¥¨¥Í¥ë¥®¡¼¤Î¥Ð¥°½¤Àµ¡£
-       ¥Æ¥ì¥Ý¡¼¥È¤ÎÂå¤ê¤Ë¸÷¤Î¤·¤º¤¯Åù¤¬¾ÃÈñ¥¨¥Í¥ë¥®¡¼50¤Ë¤Ê¤Ã¤Æ¤¤¤¿¡£
-
-2002-11-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.75, src/object1.c 1.53, src/spells1.c 1.44, src/spells2.c 1.60, src/spells3.c 1.55:
-       John Mikula ¤«¤é¤ÎÊó¹ð(heng-ml¤ËžÁ÷ºÑ¤ß)¤Ë½¾¤Ã¤Æ±Ñʸ¤ò¤¤¤í¤¤¤í½¤Àµ¡£
-
-       * src/xtra2.c 1.51:
-       look¥³¥Þ¥ó¥É¤ä¥¿¡¼¥²¥Ã¥ÈÁªÂò»þ¤Ë¡¢¼¡¸µ¤ÎÈâ¤Î°ÌÃÖÁªÂò¤ÈƱÍͤιâ®°ÜÆ°¥â¡¼
-       ¥É¤ò°Ü¿¢¤·¤¿¡£¥·¥Õ¥È¥­¡¼+Êý¸þ»ØÄê¤ÇÂ礭¤¯°ÜÆ°¤¹¤ë¡£¤Þ¤¿¼¡¸µ¤ÎÈâ¤ÎÊý¤â
-       º£¤Þ¤Ç¤Ï¼Ð¤á°ÜÆ°¤¬¤Á¤ã¤ó¤È45ÅÙÊý¸þ¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢45ÅÙ(¤â¤Á¤í
-       ¤ó¥°¥ê¥Ã¥É¤¬ÀµÊý·Á¤È²¾Äꤷ¤¿¤È¤­¤ÎÃÍ)¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-11-19  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.39, src/wild.c 1.17, src/dungeon.c 1.78:
-       ¤À¤¤¤ÖÁ°¤«¤é¤¢¤Ã¤¿ alloc_monster()¤Î¸Æ¤ÓÊý¤Î´Ö°ã¤¨½¤Àµ¡£
-       ¥â¥ó¥¹¥¿¡¼¤Î¾¤´­¥³¡¼¥É¤ò¿¿ô¤Îbool·¿°ú¿ô¤«¤éu32b¤Îbit flag¤ÇÃÖ¤­´¹¤¨
-       ¤¿»þ¤Ë¡¢alloc_monster()¤Î¸Æ¤Ó½Ð¤·¤Î¥³¡¼¥É¤À¤± bit flagÍѤ˽ñ¤­ÊѤ¨Ëº¤ì
-       ¤Æ¤¤¤¿¡£(¤¿¤À¤·¡¢TRUE == 0x01 == PM_ALLOW_SLEEP ¤À¤Ã¤¿¤Î¤Ç¶öÁ³¼Â³²Ìµ¤·¡£)
-
-2002-11-18  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.38, src/grid.c 1.9, src/rooms.c 1.24:
-       Ä̤ì¤ëÊɤ¬½ÐÍè¤ëmimic¤Î¥Ð¥°¡£°ÍÁ³¤È¤·¤Æ»Ä¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-       ¤³¤ó¤É¤Ï²¿Ëü²ó¤â¥À¥ó¥¸¥ç¥óÀ¸À®¥Æ¥¹¥È¤ò·«¤êÊÖ¤·¤Æ¥Ç¥Ð¥Ã¥°¥³¡¼¥É¤Ç
-       ¥Ð¥°¤òõº÷¤·¤Æ¿ô¥ö½ê¼ÂºÝ¤Ë¥Ð¥°¤Î¸¶°ø¤Ë¤Ê¤Ã¤Æ¤¤¤ë½ê¤ò³Îǧ¤·¤Æ½¤Àµ¤·¤¿¡£
-
-       * src/util.c 1.35:
-       ÂçÎ̤Υޥ¯¥í¤òϢ³¼Â¹Ô¤·¤Æz-term¤Î¥ê¥ó¥°¥Ð¥Ã¥Õ¥¡¤¬°î¤ì¤ë¤È¡¢
-       ¤½¤ì°Ê¹ß¥Þ¥¯¥í¤À¤±¤¬°ìÀڼ¹Ԥµ¤ì¤Ê¤¯¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-2002-11-17  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/k_info.txt 1.2:
-       ÆüËܸìÈǤΥ¢¥¤¥Æ¥à̾¥Ç¡¼¥¿¤Ë¤¢¤ë "& "¤Ï̵Â̤ʤΤǺï½ü¡£
-       ±Ñ¸ìÈǤξì¹ç¤Ï "a " "an "¤òÄɲòÄǽ¤Ç¤¢¤ë»ö¤ò¼¨¤¹°õ¤À¤¬¡¢
-       Z°Ê¹ß¤Î¥¢¥¤¥Æ¥à¤Ï°ìÉô´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       (Ê£¿ô¤Îpiece¤Ç¤Ç¤­¤¿ armour ¤Ë¤Ï "a" "an" ¤ÏÉÕ¤«¤Ê¤¤¡£)
-
-       * src/cmd4.c 1.61:
-       Ey ¤Î¥â¥ó¥¹¥¿¡¼¤Î¥ê¥¹¥Èɽ¼¨/¥¢¥¤¥Æ¥à¤Î¥ê¥¹¥Èɽ¼¨¤ò°Ü¿¢¡£patch by So-Miya
-
-2002-11-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.39: ±Ñ¸ìÈǤÇmsg_format()¤Î°ú¿ô¤¬¾¯¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/birth.c 1.57:
-       ¥Ð¥ë¥í¥°¤Ï¥¹¥¿¡¼¥È»þ¤Ë¥é¥ó¥À¥à¤Ê¿Í´Ö¥¿¥¤¥×¤Î»àÂΤò»ý¤Ä¡£
-
-       * lib/help/jraceclas.txt 1.7, lib/help/raceclas.txt 1.8:
-       ¶¸Àï»Î¤ÎÀâÌÀ¤«¤é¶õÊ¢½¼Â­¤Î¥¯¥é¥¹¥Ñ¥ï¡¼¤Îµ­½Òºï½ü¡£
-
-       * src/cmd6.c 1.38:
-       ³¼¹ü¤¬¾ó/ËâË¡ËÀ¤ÎËâÎϤòµÛ¼ý¤¹¤ë¥³¡¼¥É¤¬Æ¯¤¤¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/cmd1.c 1.60:
-       Áö¤ë¥³¥Þ¥ó¥É¤Î½èÍý¤Ç¡¢mimic¤ò¹Íθ¤·¤Æ¤¤¤Ê¤¤¾ì½ê¤¬»Ä¤Ã¤Æ¤¤¤¿¤¿¤á¤Ë¹ÓÌî¤Î³°¼þ¤Ë
-       ±è¤Ã¤ÆÁö¤Ã¤¿¤È¤­¤Î¿¶Éñ¤¤¤¬¤ª¤«¤·¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/tables.c 1.53:
-       heng-ml¤ËÆϤ¤¤¿ John Mikula ¤µ¤ó¤Î¥¢¥É¥Ð¥¤¥¹¤Ë½¾¤Ã¤Æ½¤¹ÔÁΤ齤¨¤Î±Ñ¸ì̾
-       ¤ò¥í¡¼¥Þ»ú¤Ë¤·¤¿¡£
-
-2002-11-15  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/qdarkelf.txt 1.1, lib/edit/qdarkelf_j.txt 1.3, lib/edit/qhaunted.txt 1.1, lib/edit/qhaunted_j.txt 1.3, lib/edit/r_info.txt 1.1, lib/edit/r_info_j.txt 1.52, lib/edit/s_info.txt 1.1, lib/edit/s_info_j.txt 1.4, lib/edit/t0000001.txt 1.1, lib/edit/t0000001_j.txt 1.10, lib/edit/t0000002.txt 1.1, lib/edit/t0000002_j.txt 1.7, lib/edit/t0000003.txt 1.1, lib/edit/t0000003_j.txt 1.6, lib/edit/t0000004.txt 1.1, lib/edit/t0000004_j.txt 1.6, lib/edit/t0000005.txt 1.1, lib/edit/t0000005_j.txt 1.3, lib/edit/t0000006.txt 1.1, lib/edit/t0000006_j.txt 1.3, lib/edit/t_basic.txt 1.1, lib/edit/t_basic_j.txt 1.3, lib/edit/t_info.txt 1.1, lib/edit/t_info_j.txt 1.3, lib/edit/t_lite.txt 1.1, lib/edit/t_lite_j.txt 1.11, lib/edit/t_pref.txt 1.1, lib/edit/t_pref_j.txt 1.3, lib/edit/v_info.txt 1.1, lib/edit/v_info_j.txt 1.6, lib/edit/w_info.txt 1.1, lib/edit/w_info_j.txt 1.3, lib/edit/Makefile.am 1.5, lib/edit/a_info.txt 1.1, lib/edit/a_info_j.txt 1.28, lib/edit/d_info.txt 1.1, lib/edit/d_info_j.txt 1.6, lib/edit/e_info.txt 1.1, lib/edit/e_info_j.txt 1.27, lib/edit/f_info.txt 1.1, lib/edit/f_info_j.txt 1.11, lib/edit/k_info.txt 1.1, lib/edit/k_info_j.txt 1.35, lib/edit/m_info.txt 1.1, lib/edit/m_info_j.txt 1.11, lib/edit/misc.txt 1.1, lib/edit/misc_j.txt 1.11, lib/edit/q0000001.txt 1.1, lib/edit/q0000001_j.txt 1.3, lib/edit/q0000002.txt 1.1, lib/edit/q0000002_j.txt 1.3, lib/edit/q0000003.txt 1.1, lib/edit/q0000003_j.txt 1.3, lib/edit/q0000004.txt 1.1, lib/edit/q0000004_j.txt 1.3, lib/edit/q0000005.txt 1.1, lib/edit/q0000005_j.txt 1.3, lib/edit/q0000006.txt 1.1, lib/edit/q0000006_j.txt 1.3, lib/edit/q0000007.txt 1.1, lib/edit/q0000007_j.txt 1.3, lib/edit/q0000019.txt 1.1, lib/edit/q0000019_j.txt 1.3, lib/edit/q0000020.txt 1.1, lib/edit/q0000020_j.txt 1.3, lib/edit/q0000021.txt 1.1, lib/edit/q0000021_j.txt 1.3, lib/edit/q0000022.txt 1.1, lib/edit/q0000022_j.txt 1.3, lib/edit/q0000023.txt 1.1, lib/edit/q0000023_j.txt 1.3, lib/edit/q0000027.txt 1.1, lib/edit/q0000027_j.txt 1.6, lib/edit/q0000028.txt 1.1, lib/edit/q0000028_j.txt 1.3, lib/edit/q00000ms.txt 1.1, lib/edit/q00000ms_j.txt 1.4, lib/edit/q000chao.txt 1.1, lib/edit/q000chao_j.txt 1.3, lib/edit/q000dekn.txt 1.1, lib/edit/q000dekn_j.txt 1.3, lib/edit/q000eric.txt 1.1, lib/edit/q000eric_j.txt 1.3, lib/edit/q000lyeh.txt 1.1, lib/edit/q000lyeh_j.txt 1.3, lib/edit/q000natu.txt 1.1, lib/edit/q000natu_j.txt 1.3, lib/edit/q000sorc.txt 1.1, lib/edit/q000sorc_j.txt 1.3, lib/edit/q00water.txt 1.1, lib/edit/q00water_j.txt 1.3, lib/edit/q0clone0.txt 1.1, lib/edit/q0clone0_j.txt 1.4, lib/edit/q0fields.txt 1.1, lib/edit/q0fields_j.txt 1.3, lib/edit/q0thief1.txt 1.1, lib/edit/q0thief1_j.txt 1.4, lib/edit/q0thief2.txt 1.1, lib/edit/q0thief2_j.txt 1.4, lib/edit/q0willow.txt 1.1, lib/edit/q0willow_j.txt 1.3, lib/edit/q_info.txt 1.1, lib/edit/q_info_j.txt 1.4, lib/edit/q_oberon.txt 1.1, lib/edit/q_oberon_j.txt 1.3, lib/edit/q_pref.txt 1.1, lib/edit/q_pref_j.txt 1.3, lib/edit/q_random.txt 1.1, lib/edit/q_random_j.txt 1.3, lib/edit/q_serpen.txt 1.1, lib/edit/q_serpen_j.txt 1.4, lib/edit/q_warg.txt 1.1, lib/edit/q_warg_j.txt 1.3, src/files.c 1.88, src/generate.c 1.37, src/init2.c 1.19, src/load.c 1.44, src/wild.c 1.16, src/birth.c 1.56, src/bldg.c 1.26, src/cmd4.c 1.60, src/dungeon.c 1.77:
-       lib/edit/°Ê²¼¤Î¥Õ¥¡¥¤¥ë̾¤«¤é¡¢"_j"¤òºï½ü¡£
-
-       * src/spells3.c 1.54, src/wizard2.c 1.31:
-       ËâÎ϶ô¤¤¤Ç¼ºÇÔ¤·¤Æ¥í¥Ã¥É¤¬²õ¤ì¤¿¤È¤­¡¢»Ä¤ê¤Î¥í¥Ã¥É¤Îtimeout¤¬°Û¾ï¤Ë¤Ê¤ë¥Ð¥°½¤Àµ¡£
-       ¤Þ¤¿¥Ç¥Ð¥Ã¥°¥³¥Þ¥ó¥É»ÈÍÑÃæ¤Ë¸«ÉÕ¤±¤¿o_ptr->pval¤ò¥í¥Ã¥É¤Î¸Å¤¤»ÅÍͤËź¤Ã¤Æ
-       ½ñ¤­ÊѤ¨¤Æ¤¤¤¿¸Å¤¤¥³¡¼¥Éºï½ü¡£
-
-2002-11-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/init1.c 1.48:
-       rgra¤Ë¤Æ¡¢¸Å¤¤DOS¥¢¥×¥ê¤ò»È¤Ã¤¿¤¿¤á¤Ë¡¢t_info_j.txt¤ÎÃæ¤Î
-       "%:t0000001_j.txt"¤¬8ʸ»úÀ©¸Â¤Ë¤Ò¤Ã¤«¤«¤Ã¤Æ¥Õ¥¡¥¤¥ë¤¬Æɤ᤺¡¢
-       ÊѶòÈÚÅܤ¬¥¯¥é¥Ã¥·¥å¤·¤Æ¤¤¤¿¤¬¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬¤Ê¤¤¤Î¤Ç¸¶°ø¤ÎȽÌÀ¤¬Ã٤줿¡£
-       ¤½¤³¤Ç¥Õ¥¡¥¤¥ë¤¬Æɤá¤Ê¤¤¤È¤­¤Ï¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¤è¤¦¤Ë½¤Àµ¡£
-       (¤Ê¤¼¤«Æɤá¤Ê¤¯¤Æ¤â¥¨¥é¡¼¤ò½Ð¤µ¤Ê¤¤¤è¤¦¤ËHACK¤·¤Æ¤¢¤Ã¤¿¤¬¡¢
-       ¤È¤Ã¤Æ¤ª¤¯Íýͳ¤Ï¤Ê¤¤¤Î¤Ç¤½¤ÎHACKÉôʬ¤òºï½ü¡£)
-
-       * src/cmd4.c 1.59, src/mspells3.c 1.15:
-       Ãͤ¬Ì¤ÄêµÁ¤ÎÊÑ¿ô¤È¤¤¤¦Warning¤ËÂбþ¤·¤Æ½¤Àµ¡£
-
-2002-11-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.55:
-       ¥¢¥ó¥É¥í¥¤¥É¤ÎÌý¤Ó¤ó¤Ëapply_magic()¤ò¼Â¹Ô¤·¤Ê¤«¤Ã¤¿°Ù¡¢
-       pval¤«¤éxtra4¤ØdzÎÁ¤ÎÎ̤ÎÃͤò°Ü¤¹¥³¡¼¥É¤¬¼Â¹Ô¤µ¤ì¤º¡¢
-       ¥é¥ó¥¿¥ó¤ÎdzÎÁÊä½¼¤Ë»È¤¨¤Ê¤¤Ìý¤Ó¤ó¤Ë¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * lib/file/news.txt 1.16, lib/file/news_j.txt 1.15:
-       rr»á¤Îmail¥¢¥É¥ì¥¹¹¹¿·¡£
-
-       * src/birth.c 1.54:
-       ±Ñ¸ìÈǤǼï²ÁªÂò»þ¤ÎÀâÌÀʸ¤¬Ä¹¤¹¤®¤ÆÀÚ¤ì¤ë»ö¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/cmd6.c 1.37, src/spells3.c 1.53:
-       ¡¦ËâÆ»¶ñ½Ñ»Õ¤¬¿©ÎȤΡ־ó¡×¤òµÛ¼ý¤Ç¤­¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-       ¡¦¡Ö¾ó¡×¤ò»ÈÍÑ(u/Z)¤·¤¿¤È¤­¤Ë¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¡£
-
-       * lib/file/rumors_j.txt 1.2:
-       Â¿¾¯¤Î¸íÌõ¤Ë¡Ä¡¢Ìܤò¤Ä¤Ö¤Ã¤ÆÍߤ·¤¯¤Ê¤¤¡¢¤Î¤Ç²þÄû¡£
-
-       * src/cmd5.c 1.48: Î¥¤·¤¿¢ªÊü¤·¤¿
-
-2002-11-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/init2.c 1.18:
-       Ï£¶â½Ñ¤ÎŹ¤Ç¶õÊ¢½¼Â­¤Î´¬Êª¤òºï¤Ã¤¿Íó¤Ë¡¢¥Æ¥ì¥Ý¡¼¥È¡¢¥·¥ç¡¼¥È¡¦¥Æ¥ì¥Ý¡¼¥È¡¢
-       Éð´ï¥À¥á¡¼¥¸Áý²Ã¡¢Éð´ïÌ¿ÃæΨ¾å¾º¤òÄɲá£
-
-       * lib/edit/k_info_j.txt 1.34, lib/edit/misc_j.txt 1.10, lib/help/faq.txt 1.1, lib/help/general.hlp 1.7, lib/help/help.hlp 1.9, lib/help/joption.txt 1.18, lib/help/jraceclas.txt 1.6, lib/help/magic.hlp 1.6, lib/help/option.txt 1.19, lib/help/raceclas.txt 1.7, lib/pref/pref-opt.prf 1.13, src/tables.c 1.52, src/variable.c 1.34, src/autopick.c 1.74, src/birth.c 1.53, src/cmd5.c 1.47, src/cmd6.c 1.36, src/defines.h 1.81, src/externs.h 1.85, src/init2.c 1.17, src/racial.c 1.26, src/spells2.c 1.59:
-       ¶õÊ¢½¼Â­¤Î´¬Êª¤È¶¸Àï»Î¤Î¶õÊ¢½¼Â­¥ì¥¤¥·¥ã¥ëÇѻߡ£
-       ¥¢¥ó¥É¥í¥¤¥É¤ÏÌý¤Ó¤ó¤ò°û¤á¤ë¡£¥Ð¥ë¥í¥°¤Ï'E'¤Ç't','p','h'¤Î»àÂΤòµ¾¤Ë¤Ç¤­¤ë¡£
-       ¥¢¥ó¥Ç¥Ã¥É¤Ï¾ó¤«ËâË¡ËÀ¤Î¥Á¥ã¡¼¥¸¤ò¿©¤¨¤ë¡£¥¨¥ó¥È¤ÏÌô¤Î¿åʬ¤Ç½½Ê¬±ÉÍܤ¬¼è¤ì¤ë¡£
-
-2002-11-08  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.60: ¹¹¿·
-
-       * src/defines.h 1.80: 1.3.2¤ËÊѤ¨Ëº¤ì¤Æ¤¤¤¿¤È¤³¤íÊѤ¨¤¿¡£
-       ¸Å¤¤Ì¤»ÈÍѤΥޥ¯¥í¤¤¤¯¤Ä¤«ºï½ü¡£
-       ¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥é¥°¤Ë¤Ä¤¤¤Æ¥³¥á¥ó¥ÈÉղá£
-
-       * src/bldg.c 1.25: Ì¤»ÈÍÑÊÑ¿ôºï½ü¡£
-
-       * src/spells3.c 1.52, src/store.c 1.19, src/streams.c 1.6, src/tables.c 1.51, src/types.h 1.23, src/util.c 1.34, src/wild.c 1.15, src/wizard1.c 1.27, src/wizard2.c 1.30, src/xtra1.c 1.55, src/xtra2.c 1.50, src/z-term.c 1.18, src/z-virt.c 1.2, src/main-x11.c 1.20, src/main-xaw.c 1.2, src/mane.c 1.13, src/melee1.c 1.22, src/melee2.c 1.36, src/mind.c 1.16, src/monster1.c 1.27, src/monster2.c 1.45, src/mspells1.c 1.34, src/mspells2.c 1.28, src/mspells3.c 1.14, src/mutation.c 1.7, src/object1.c 1.52, src/object2.c 1.62, src/racial.c 1.25, src/readdib.c 1.3, src/rooms.c 1.23, src/save.c 1.23, src/scores.c 1.10, src/spells1.c 1.43, src/spells2.c 1.58, src/cmd4.c 1.58, src/cmd5.c 1.46, src/cmd6.c 1.35, src/defines.h 1.79, src/dungeon.c 1.76, src/effects.c 1.30, src/event.h 1.2, src/files.c 1.87, src/flavor.c 1.26, src/generate.c 1.36, src/grid.c 1.8, src/hissatsu.c 1.19, src/init.h 1.2, src/init1.c 1.47, src/init2.c 1.16, src/load.c 1.43, src/maid-x11.c 1.4, src/main-dos.c 1.7, src/main-gcu.c 1.9, src/main-ibm.c 1.3, src/main-mac-carbon.c 1.9, src/main-mac.c 1.22, src/main-win.c 1.21, src/artifact.c 1.28, src/autopick.c 1.73, src/avatar.c 1.7, src/birth.c 1.52, src/bldg.c 1.24, src/cave.c 1.64, src/chuukei.c 1.9, src/cmd1.c 1.59, src/cmd2.c 1.36, src/cmd3.c 1.31:
-       ´û¤Ë˺¤ì¤¿²¿¤«¤ÎÍýͳ¤Ë¤è¤Ã¤Æ¡¢Ä¹¤¤»ötab¤ò¥¹¥Ú¡¼¥¹8ʸ»ú¤Ë¤¹¤ëÀßÄê¤Ç
-       ¥³¡¼¥É¤ò½ñ¤¤¤Æ¤¤¤¿¤¬¡¢¥¹¥Ú¡¼¥¹4ʸ»ú¤ä2ʸ»ú¤Î¿Í¤¬¤¤¤ë¤Î¤Ç¡¢Á´¤Æ
-       ¤Þ¤È¤á¤Ætab¥³¡¼¥É¤ËÃÖ¤­ÊѤ¨¤¿¡£
-
-       * lib/edit/t0000002_j.txt 1.6, lib/edit/t0000003_j.txt 1.5, lib/edit/t0000004_j.txt 1.5, lib/edit/t_lite_j.txt 1.10, src/bldg.c 1.23, src/defines.h 1.78:
-       2ch¤Çºî¤é¤ì¤¿Éð´ï¾¢¤ÇAC¤Îɾ²Á¤òɽ¼¨¤¹¤ë¥Ñ¥Ã¥Á¤ò²þÎɤ·¤ÆƳÆþ¡£
-
-2002-11-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/grid.c 1.7, src/rooms.c 1.22:
-       ¥Ì¥á¥Î¡¼¥ë¤Ç¡¢ÊÉ°·¤¤¤Î¿¼¤¤¿å¤äÀõ¤¤¿å¤Ë±£¤·È⤬ÉÕ¤¯»ö¤¬¤¢¤ë¥Ð¥°½¤Àµ¡£
-
-       * lib/help/joption.txt 1.17, lib/help/option.txt 1.18:
-       cheat_save¤Èallow_debug_opts¤ÎÀâÌÀÄɲá£
-
-2002-11-06  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/option.txt 1.17, lib/pref/pref-opt.prf 1.12, lib/help/joption.txt 1.16, src/externs.h 1.84, src/melee2.c 1.35, src/monster2.c 1.44, src/tables.c 1.50, src/variable.c 1.33:
-       ¡Ö¥ì¥Ù¥ë¤Î¹â¤¤¥â¥ó¥¹¥¿¡¼¤¬Æ°¤¤¤¿¤é¹ÔÆ°Ãæ»ß¤¹¤ë¡×¥ª¥×¥·¥ç¥ódisturb_high¤òƳÆþ¡£
-
-       * src/mspells2.c 1.27, src/tables.c 1.49, src/variable.c 1.32, lib/help/joption.txt 1.15, lib/help/option.txt 1.16, lib/pref/pref-opt.prf 1.11, src/cave.c 1.63, src/externs.h 1.83, src/files.c 1.86, src/generate.c 1.35, src/melee2.c 1.34, src/mspells1.c 1.33:
-       ½é´ü¥ª¥×¥·¥ç¥ó terrain_streams¤Èstupid_monsters Çѻߡ£
-
-       * configure.in 1.22, lib/file/news.txt 1.15, lib/file/news_j.txt 1.14:
-       ¼¡¤Î¥Ð¡¼¥¸¥ç¥óÈֹ桢1.3.2¤Ø¡£
-
-       * lib/pref/pref-opt.prf 1.10, src/birth.c 1.51, src/cmd4.c 1.57, src/dungeon.c 1.75, src/effects.c 1.29, src/externs.h 1.82, src/files.c 1.85, src/load.c 1.42, src/save.c 1.22, src/tables.c 1.48, src/variable.c 1.31:
-       Implement allow_debug_opts. Fixed the bug that allows to change birth options before quick start
-
-2002-11-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.62:
-       ¶À¤ä¥ë¡¼¥ó¤Î¥Õ¥é¥°CAVE_OBJECT¤¬´Ö°ã¤Ã¤Æ»Ä¤ë»ö¤Î¤Ê¤¤¤è¤¦¤Ë¡¢
-       cave_set_feat()¤ÎÃæ¤Çºï½ü¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd2.c 1.35: ¹ÓÌî¤Ç³°¼þ¤ÎÌÚ¤òÀÚ¤ì¤Æ¤·¤Þ¤Ã¤ÆÊѶò¤¬Íî¤Á¤ë¥Ð¥°½¤Àµ¡£
-       ÌÚÅù¤Ëmimic¤·¤Æ¤¤¤ë±Êµ×´ä¤¬ÌڤȤ·¤Æ°·¤ï¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-       ¤Þ¤¿¡¢¥Ô¥é¥Ë¥¢/¥Ï¥ë¥Þ¥²/³«Ìç¤Î³ÆÆüì¥È¥é¥Ã¥×¤Î²ò½ü¤òº¤Æñ¤Ë¤·¤¿¡£
-
-       * src/effects.c 1.28: typo½¤Àµ¡£
-
-       * src/rooms.c 1.21:
-       ¥Ô¥é¥Ë¥¢/¥Ï¥ë¥Þ¥²¥É¥ó¥È¥é¥Ã¥×¤ÎºÇÄã½Ð¸½³¬¤òÀßÄꤷ˺¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-       ¤Ä¤¤¤Æ¤ËvaultÀ¸À®¤Î¥³¡¼¥É¤ò¾¯¤·À°Íý¡£ÌµÂ̤Ëcave_set_feat()(¥×¥ì¥¤Ãæ¤Ë»È¤¦°Ù¤Î´Ø¿ô)
-       ¤ò¸Æ¤ó¤Ç¤¤¤¿¤È¤³¤í¤òset_cave_feat()(³¬À¸À®Ãæ¤Ë»È¤¦´Ø¿ô)¤ÇÃÖ¤­´¹¤¨¤¿¡£
-
-       * src/spells1.c 1.42:
-       ¿¿¡¦·ë³¦¤¬¥×¥ì¥¤¥ä¡¼¤Î­¸µ¤Ë¤·¤«¥ë¡¼¥ó¤òºî¤ì¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-       ¥ë¡¼¥ó¤¬Ê¬²ò¤ÎËâË¡¤ÇÀµ¾ï¤Ë²õ¤ì¤Ê¤¤¥Ð¥°½¤Àµ¡£
-
-       * src/tables.c 1.47:
-       ÁªÂò²Äǽ¤ÊËâË¡Îΰè¤Î¥ê¥¹¥Èrealm_choice1[]¤È2[]¤ÇǦ¼Ô¤Îʬ¤¬Ìµ¤¯¡¢
-       ÇÛÎó³°¥¢¥¯¥»¥¹¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/flavor.c 1.25: ¼«Æ°ÂÑÀ­¹ï¤ß¤Î¥³¡¼¥É¤Ç·¿¤Î´Ö°ã¤¤½¤Àµ¡§u32b¢ªint
-
-2002-10-31  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/Makefile.am 1.6, src/autopick.c 1.72, src/flavor.c 1.24:
-       jlicense.txt¤ÎÄɲÃ˺¤ì½¤Àµ¡£Ì¤»ÈÍÑÊÑ¿ôºï½ü¡£Ì¤ÄêµÁ¤ÎÊÑ¿ô"kanji"»²¾È¤ò½¤Àµ¡£
-
-       * lib/help/jversion.txt 1.14, lib/help/version.txt 1.14:
-       version.txt¥Þ¡¼¥¸¡£
-
-       * src/externs.h 1.81, src/monster1.c 1.26, src/hissatsu.c 1.18:
-       ÌµÁл°ÃʤÇÊɤËÀø¤ë¥Ð¥°½¤Àµ¡£
-       »³¤ä±Êµ×´ä¤ò¹Íθ¤·¤Æ¥â¥ó¥¹¥¿¡¼¤¬ÃÏ·Á¤ËÆþ¤ì¤ë¤«¤É¤¦¤«È½Äꤹ¤ë´Ø¿ô¤¬
-       Ìµ¤«¤Ã¤¿¤Î¤Çºî¤Ã¤¿¡£(monster_can_enter())
-
-       * lib/help/jversion.txt 1.11.2.4, lib/help/version.txt 1.11.2.4:
-       1.2.2¤È1.3.1¤ÎÊѹ¹ÅÀ¤ò½ñ¤¤¤¿¡£
-
-2002-10-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/object2.c 1.43.2.5:
-       ¶¸Àï»Î¤Î»¦Ù¤¤Î»ØÎؤˡ¢to-dam¤Ø¤Î¥×¥é¥¹¤òÉղá£
-       ¤â¤È¤â¤È¤¢¤Ã¤¿to-hit¤Ø¤Î¥Þ¥¤¥Ê¥¹¤ÈƱ¤¸¼°¤ò»È¤Ã¤Æ o_ptr->to_d += 2+randint1(4); ¤È¤·¤¿¡£
-       ¤Þ¤¿»ØÎؤȥ¢¥ß¥å¤Î²ÁÃÍȽÄê¤Î¥³¡¼¥É¤ò½¤Àµ¡¢to_h + to_d + pval ¤Î¹ç·×¤¬¥Þ¥¤¥Ê¥¹
-       ¤Î¤È¤­¤À¤±Ìµ²ÁÃͤÈȽÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-10-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.60.2.6:
-       ²¦²È¤ÎÊè¤Î¥Ð¥°¤òľ¤¹¤È¤­¤Î¥¨¥ó¥Ð¥°¤Î½¤Àµ¤ò¥Þ¡¼¥¸¡£
-
-       * src/files.c 1.84:
-       commitľÁ°¤Ë¥³¥á¥ó¥È¤ò½ñ¤­²Ã¤¨¤¿¤é */ ¤ò˺¤ì¤Æ¤¤¤¿¡£
-
-       * src/files.c 1.83:
-       ²¦²È¤ÎÊè¤Î¥Ð¥°¤òľ¤¹¤È¤­¤Î¥¨¥ó¥Ð¥°¤ò½¤Àµ¡£INIT_SHOW_TEXT¤ò»È¤¦¤È¤­¤Ï¡¢
-       »öÁ°¤Ëquest_text[][]¤äquest_text_line¤ò½é´ü²½¤·¤Ê¤¯¤Æ¤Ï¤¤¤±¤Ê¤«¤Ã¤¿¡£
-       ¤Þ¤¿¡¢cur_num¤òreset¤·¤Æ¤â¤¤¤¤¤È¤­¤Ï¡¢¤ï¤¶¤ï¤¶INIT_SHOW_TEXT¤ËÊѹ¹¤·
-       ¤Ê¤¯¤Æ¤âÎɤ¤¤Î¤Ç´Ö°ã¤Ã¤ÆÊѤ¨¤Æ¤¤¤¿¤È¤³¤í¤òÌᤷ¤¿¡£
-
-2002-10-27  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.59: ¹¹¿·
-
-2002-10-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.60.2.5:
-       ²¦²È¤ÎÊ褬¥¯¥ê¥¢¤Ç¤­¤Ê¤¤»ö¤¬¤¢¤ë¥Ð¥°½¤Àµ¡£'C'¥³¥Þ¥ó¥É¤Ç¿ë¹ÔÃæ¤Î¥¯¥¨¥¹¥È¤ò
-       É½¼¨¤¹¤ë¤È¤­¤Ë init_flags ¤ò INIT_SHOW_TEXT(¾ðÊóɽ¼¨¤Î¤ß)¤Ë¤¹¤ë¤Ù¤­¤È¤³¤í¤Ç¡¢
-       INIT_ASSIGN(¥¯¥¨¥¹¥È¤Î½é´ü²½)¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-2002-10-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd1.c 1.44.4.3: Ê§¤¤È´¤±¤Ç¥Ñ¥¿¡¼¥ó¤òÈô¤Ó±Û¤¨¤é¤ì¤ë¥Ð¥°½¤Àµ¡£
-
-       * src/effects.c 1.25.2.2:
-       ¼­À¤¤Î¶ç¤Î²èÌ̤ǥ¹¥¯¥ê¡¼¥ó¥·¥ç¥Ã¥È¤ò»Ä¤¹¤è¤¦¤Ë¤·¤¿¡£
-       ¤Ä¤¤¤Ç¤Ë¼­À¤¤Î¶ç¤Î²èÌ̤ǥ«¡¼¥½¥ë¤¬½Ð¤Æ¤¤¤ë¤Î¤ò±£¤¹¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/tables.c 1.45.2.2, src/dungeon.c 1.61.2.7:
-       ¤Ä¤¤Æþ¤ì¤Æ¤·¤Þ¤Ã¤¿{¾å¼Á°Ê¾å}¤Î»ÅÍÍÊѹ¹¤òÌ᤹¡£
-
-2002-10-23  henkma  <henkma@cvs>
-
-       * lib/edit/r_info_j.txt 1.51:
-       Fat Man ¤Î¥ì¥¢¥ê¥Æ¥£¤ò255¤Ë¤·¤Æ, À¸À®¤µ¤ì¤Ê¤¯¤·¤¿.
-       ¢¨ ¸å¤Ç Fat Man ¤È¤¤¤¦Ì¾Á°¤Î¥â¥ó¥¹¥¿¡¼¤Ï r_info ¤«¤é¾Ã¤¨¤ë.
-
-2002-10-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/f_info_j.txt 1.10:
-       ¥Ô¥é¥Ë¥¢¡¦¥È¥é¥Ã¥×¤ÎÉô²°¤È¥Ï¥ë¥Þ¥²¥É¥ó¡¦¥È¥é¥Ã¥×¤ÎÉô²°¼ÂÁõ¡£
-
-2002-10-23  henkma  <henkma@cvs>
-
-       * lib/edit/r_info_j.txt 1.50:
-       ¡ØLittle Boy¡Ù ¢ª ¿Í¡¹¤òÇú»à¤µ¤»¤Æ¤­¤¿º¸¼ê¡Ø¥·¥¢¡¼¥Ï¡¼¥È¥¢¥¿¥Ã¥¯¡Ù
-       (±Ñ¸ì̾ Sheer Heart Attack, the Bomb Hand)
-
-2002-10-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.34, src/monster2.c 1.43, src/rooms.c 1.20, src/cave.c 1.61, src/cmd1.c 1.57, src/defines.h 1.77:
-       ¥Ô¥é¥Ë¥¢¡¦¥È¥é¥Ã¥×¤ÎÉô²°¤È¥Ï¥ë¥Þ¥²¥É¥ó¡¦¥È¥é¥Ã¥×¤ÎÉô²°¼ÂÁõ¡£
-
-       * src/rooms.c 1.19: æ«¥Ô¥Ã¥È¤¬ÊɤÎÃæ¤Ë¸ÉΩ¤·¤Æ¤¤¤ë»ö¤¬¤¢¤ë¥Ð¥°½¤Àµ¡£
-       Éô²°¤ÎÃæ¤Î¥°¥ê¥Ã¥É¤ÏCAVE_FLOOR¤ÇËä¤á¤Æ¤ª¤«¤Ê¤¤¤È¤¦¤Þ¤¯¥È¥ó¥Í¥ë¤¬·Ò¤¬¤é¤Ê¤¤¡£
-
-2002-10-22  Takeshi Mogami  <mogami@cvs>
-
-       * autopick_eng.txt 1.23: type½¤Àµ¡£
-
-       * src/dungeon.c 1.61.2.6, src/tables.c 1.45.2.1:
-       ¼å¤¤´Ê°×´ÕÄê¤Ç{¾å¼Á}¤È½Ð¤ëÂå¤ï¤ê¤Ë{¾å¼Á°Ê¾å}¤È½Ð¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/edit/q0clone0_j.txt 1.2.20.1:
-       little boy°úÂà¡£Âå¤ê¤ËBorshin¤òÆþ¤ì¤¿¡£
-
-2002-10-22  henkma  <henkma@cvs>
-
-       * autopick_eng.txt 1.15.2.3: skeleton ¢ª worthless skeleton
-
-       * autopick_eng.txt 1.22: skeleton ¢ª worthless skeleton
-       ¤³¤ì¤ÇÁü¤Ï½¦¤ï¤Ê¤¤¤Ï¤º
-
-2002-10-22  Takeshi Mogami  <mogami@cvs>
-
-       * acconfig.h 1.4, configure.in 1.21:
-       AC_DEFINE()¤ÎÃæ¤Ç¥³¥á¥ó¥È¤òÄêµÁ¤¹¤ì¤Ð¡¢acconfig.h ¤Ï¤¤¤é¤Ê¤¤¤Î¤Çºï½ü¡£
-       ¤³¤ì¤Ï¡¢¤½¤â¤½¤â¥³¥á¥ó¥È¤ò½ñ¤¯°Ù¤Î¥Õ¥¡¥¤¥ë¤À¤Ã¤¿¤é¤·¤¤¡£
-
-       * src/generate.c 1.33, src/grid.c 1.6, src/xtra2.c 1.49:
-       µ¶ÊɤΥХ°¤¬¤Þ¤À»Ä¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£¤É¤¦¤ä¤é¥é¥ó¥À¥àvault¤¬¥È¥ó¥Í¥ë¤ËÊ£»¨¤Ë
-       ¿¯¿©¤µ¤ì¤Æ¤¤¤¿¤è¤¦¤À¡£Éô²°¤ò·Ò¤°¥È¥ó¥Í¥ë¤ÎÅÓÃæ¤Î¥é¥ó¥À¥à¤Ê¥É¥¢¤Ï1¤Ä¤Î¾ì½ê¤Ë
-       °ì²ó¤·¤«ÃÖ¤«¤Ê¤¤¤«¤éÆä˽èÃÖ¤·¤Ê¤¯¤Æ¤¤¤¤¤À¤í¤¦¤È»×¤Ã¤Æ¤¤¤¿¤¬¡¢¼ÂºÝ¤ÏÊ£¿ô²ó
-       ½Å¤Ê¤Ã¤Æ¤¤¤¿¤è¤¦¤À¡£
-
-2002-10-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.71:
-       Îΰ賰¥¢¥¯¥»¥¹¤Î¥Ð¥°(inventory[INVEN_TOTAL]¤ËÂФ·¤Æ¼«Æ°Ç˲õ¤Î¥Á¥§¥Ã¥¯¤ò¤·¤Æ¤¤¤¿)¤ò½¤Àµ¡£
-
-2002-10-19  henkma  <henkma@cvs>
-
-       * autopick_eng.txt 1.15.2.2: skeleton of ¢ª skeleton
-
-       * autopick_eng.txt 1.21: Archer¤Î¹àÌÜ¡§skeleton of ¢ª skeleton
-       of¤òÉÕ¤±¤ë¤È¥æ¥Ë¡¼¥¯¤Î¹ü¤Ë¤·¤«¥Ò¥Ã¥È¤·¤Ê¤¤. Áü¤Ê¤É¤Ë¥Ò¥Ã¥È¤¹¤ë¤Î¤Ï²æËý¤¹¤ë
-       ¤³¤È¤Ë¤·¤Æ, ¤³¤Î¤è¤¦¤Ë¤¹¤Ù¤­¤À¤È»×¤ï¤ì¤ë.
-
-2002-10-16  henkma  <henkma@cvs>
-
-       * lib/file/a_med.txt 1.5.18.1: inteligence ¢ª intelligence
-
-       * lib/file/a_med.txt 1.6:
-       randart name¤Îtypo½¤Àµ inteligence ¢ª intelligence
-
-2002-10-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.32:
-       µ¶¤ÎÊÉ(Êɤ˸«¤¨¤ë¤¬ÉáÄ̤ËÄ̤ì¤ëÃÏ·Á)¤¬½Ð¸½¤¹¤ë¥Ð¥°½¤Àµ¡£¥À¥ó¥¸¥ç¥óÀ¸À®»þ¤Î
-       ¥Ð¥°¤À¤Ã¤¿¡£°ìÅÙ±£¤·È⤬ÇÛÃÖ¤µ¤ì¤¿°ÌÃ֤˳«¤¤¤¿/²õ¤ì¤¿¥É¥¢¤¬½Å¤Í¤ÆÇÛÃÖ¤µ¤ì¤Æ¤¤¤¿¡£
-
-       * Changelogs 1.58: ¹¹¿·
-
-       * src/cmd5.c 1.41.2.1, src/mane.c 1.10.4.2, src/object1.c 1.40.2.5:
-       ±Ñ¸ìÈÇ¡£You Æ°»ìs ¤Î½¤Àµ¡£EGO¤ÎÀâÌÀʸÄûÀµ¡£
-
-       * src/object1.c 1.51: prevents -> interferes with
-
-2002-10-13  henkma  <henkma@cvs>
-
-       * src/cmd5.c 1.45, src/mane.c 1.12: You Æ°»ìs ¢ª You Æ°»ì
-
-2002-10-12  henkma  <henkma@cvs>
-
-       * src/object1.c 1.50: ÆüËܸì¤ò±Ñ¸ì¤ËËÝÌõ¤·¤¿¤È¤­¤ÎÌõ¤·´Ö°ã¤¤½¤Àµ.
-
-2002-10-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-x11.c 1.19:
-       RGRA¤ÇÏÃÂ꤬½Ð¤¿¥Õ¥©¥ó¥È¤¬¸«ÉÕ¤«¤é¤Ê¤¤¤È¤­¤ÎÌäÂê¤ò½¤Àµ¡£
-       ¤Á¤ã¤ó¤È¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¤è¤¦¤Ë¤·¤¿¡£¥³¡¼¥É¤ÏZangband¤è¤ê¡£
-
-       * src/autopick.c 1.70, src/cmd3.c 1.30, src/externs.h 1.80, src/flavor.c 1.22, src/xtra1.c 1.54:
-       ÂÑÀ­¼«Æ°¹ï¤ß¤¬Æ°Åª¤Ë¼Â¹Ô¤µ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£ÃÃÌê»Õ¤ÎÁõÈ÷¤ä¥¨¥´Ç½ÎϤÎÉÕÍ¿
-       Åù¤Î¸å¤Ç¼«Æ°Åª¤Ë¼«Æ°¹ï¤ß¤¬¹¹¿·¤µ¤ì¤ë¡£(¼ÂºÝ¤Ë¤Ïobject_desc()¤ÎÃæ¤Ç½èÍý)
-       ¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È¤ÎÍÞÀ©¤Ï{%}¤â{.}¤ÈƱÍͤÎƯ¤­¤ò¤¹¤ë¤è¤¦¤Ë¤·¤Æ²ò·è¡£
-
-2002-10-08  iks  <iks@cvs>
-
-       * src/hissatsu.c 1.17: ·õ½Ñ²È¤Î³Ø½¬¤Ç¥¿¡¼¥ó¤ò¾ÃÈñ¤·¤Æ¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-10-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.40.2.4, src/xtra1.c 1.43.2.5:
-       °Å°Ç¤Î¸÷¸»¤òÁõÈ÷¤·¤Æ¤¤¤ë¤È¤­¤Ë¡¢
-       ²Ð±ê¥ª¡¼¥éÅù¤Ç¥×¥ì¥¤¥ä¡¼¤ÎÂΤ˸÷¸»¤¬¤¢¤ë¤È¤­¡¢¸÷¸»È¾·Â¤Î·×»»¤¬´Ö°ã¤Ã¤Æ
-       ¤¤¤Æ°Å°Ç¤Î¸÷¸»¤òÁõÈ÷¤·¤Æ¤âȾ·Â0¤Ë¤Ç¤­¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       *´ÕÄê*»þ¤Î°Å°Ç¸÷¸»¤ÎÀâÌÀ¤ËȾ·Â¤Î¥Þ¥¤¥Ê¥¹¿ôÃͤò¶ñÂÎŪ¤Ëɽµ­¡£
-
-       * src/object1.c 1.49, src/xtra1.c 1.53:
-       ²Ð±ê¥ª¡¼¥éÅù¤Ç¥×¥ì¥¤¥ä¡¼¤ÎÂΤ˸÷¸»¤¬¤¢¤ë¤È¤­¡¢¸÷¸»È¾·Â¤Î·×»»¤¬´Ö°ã¤Ã¤Æ
-       ¤¤¤Æ°Å°Ç¤Î¸÷¸»¤òÁõÈ÷¤·¤Æ¤âȾ·Â0¤Ë¤Ç¤­¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       *´ÕÄê*»þ¤Î°Å°Ç¸÷¸»¤ÎÀâÌÀ¤ËȾ·Â¤Î¥Þ¥¤¥Ê¥¹¿ôÃͤò¶ñÂÎŪ¤Ëɽµ­¡£
-
-2002-10-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.69:
-       »ý¤Áʪ¤ÎÃæ¤ÇÎ٤ꤢ¤Ã¤¿Ê£¿ô¤Î¥¹¥í¥Ã¥È¤Î¥¢¥¤¥Æ¥à¤¬Æ±»þ¤Ë´Ê°×´ÕÄꤵ¤ì¤¿¤È
-       ¤­¤ËÁ´ÉôƱ»þ¤Ë¼«Æ°Ç˲õ¤¹¤ë¤Î¤Ë¼ºÇÔ¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£°ì¤Ä¤¬Ç˲õ¤µ¤ì¤¿¸å
-       ¤Ç»ý¤ÁʪÆâ¤Î¥¹¥í¥Ã¥È¤¬1¤Ä¤º¤Ä¤º¤ì¤ë¤Î¤ò¹Íθ¤·Ëº¤ì¤Æ¤¤¤¿¡£
-
-2002-10-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.61.2.5, src/externs.h 1.69.2.3, src/variable.c 1.28.2.2, src/bldg.c 1.17.2.1:
-       ¥¯¥¨¥¹¥È¤ò°ú¤­¼õ¤±¤ëÅù¤·¤¿»þ¤Ë·è¤·¤Æ¥Ú¥Ã¥È¤È¤Ï¤°¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/dungeon.c 1.73:
-       Emacs¤ÎÁàºî¤ò´Ö°ã¤¨¤ÆÂçÎ̤ιԤΥ¤¥ó¥Ç¥ó¥È¤òÊѹ¹¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤ÇÌᤷ¤¿¡£
-
-       * src/bldg.c 1.22, src/dungeon.c 1.72, src/externs.h 1.79, src/variable.c 1.30:
-       ¥¯¥¨¥¹¥È¤ò°ú¤­¼õ¤±¤ëÅù¤·¤¿»þ¤Ë·è¤·¤Æ¥Ú¥Ã¥È¤È¤Ï¤°¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-09-27  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.45.2.4: Í©ÂΥ磻¥¢¡¼¥à¤ËÆÇ¡¢Î䵤ÂÑÀ­¡£
-
-2002-09-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-mac.c 1.21, src/main-win.c 1.20, src/main-x11.c 1.18, src/z-term.c 1.17, src/z-term.h 1.3:
-       Bit tile¥â¡¼¥ÉÍѤΥ«¡¼¥½¥ëɽ¼¨¥³¡¼¥É¤òÀ°Íý¡£main-xxx.c¤ÎÃæ¤ÇÃÏ·Á¾ðÊó¤ÎÇÛÎó¤Î
-       ÆâÍƤòľÀÜ»²¾È¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿½ê¤ò¡¢½ñ¤­ÊѤ¨¤Æ»²¾È¤»¤º¤ËºÑ¤à¤è¤¦¤Ë¤·¤¿¡£
-       ´û¤ËVanillaÍѤΥѥåÁ¤ÇŬÍѤ·¤Æ¤¤¤¿¤â¤Î¡£
-
-       * src/store.c 1.16.2.1, src/wizard1.c 1.23.2.1, src/wizard2.c 1.24.2.2, src/xtra1.c 1.43.2.4, src/defines.h 1.65.2.5, src/files.c 1.60.2.4, src/load.c 1.33.2.2, src/mspells2.c 1.21.2.2, src/rooms.c 1.15.4.1, src/spells1.c 1.29.2.4, lib/edit/t0000002_j.txt 1.4.4.1, lib/edit/t_lite_j.txt 1.7.4.2, lib/file/news.txt 1.12.2.3, lib/file/news_j.txt 1.11.2.3, lib/help/general.txt 1.8.4.1, lib/help/jbldg.txt 1.2.16.1, lib/help/jlicense.txt 1.1.2.3, lib/help/jversion.txt 1.11.2.3, lib/help/version.txt 1.11.2.3, src/birth.c 1.48.2.1, src/cmd3.c 1.23.4.2, src/cmd4.c 1.46.2.2, src/cmd6.c 1.23.2.4, configure.in 1.18.2.3, lib/edit/r_info_j.txt 1.45.2.3:
-       1.3.x ¤Ë²Ã¤¨¤¿¥Ð¥°½¤Àµ¤«¤é´Ø·¸¤¢¤ë¤â¤Î¤ò1.2.2¤ËŬÍÑ¡£
-
-       * lib/edit/r_info_j.txt 1.48, lib/edit/t0000002_j.txt 1.5, lib/edit/t_lite_j.txt 1.9:
-       ¥Ï¡¼¥Õ¥¨¥ë¢ª¥Ï¡¼¥Õ¥¨¥ë¥Õ¡£
-       ³¼¹ü¥É¥é¥´¥ó¤ËÂÑÎä¤ÈÂÑÆÇÉղá£
-
-2002-09-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/general.txt 1.9, lib/help/jlicense.txt 1.3, lib/help/jversion.txt 1.13, lib/help/version.txt 1.13:
-       Thangorodrim ¤Î¥¢¥É¥ì¥¹Êѹ¹¤ËÂбþ¡£
-
-       * src/mspells2.c 1.26:
-       TOband team¤è¤ê¤ÎÊó¹ð¤Ç¡¢monst_breath_monst() ¤ÇȾ·Â0¤Î¥Ü¡¼¥ë¤ò·â¤Æ¤Ê¤¤»ÅÍÍ
-       ¤À¤Ã¤¿¤Î¤ò½¤Àµ¡¢¤·¤«¤·¸½ºß¤Ï»È¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ç̵´Ø·¸¡£
-
-       * Changelogs 1.57: ¹¹¿·
-
-       * lib/help/jbldg.txt 1.3, src/birth.c 1.50, src/cmd1.c 1.56, src/cmd3.c 1.29, src/files.c 1.81, src/load.c 1.41, src/monster2.c 1.42, src/mspells2.c 1.25, src/rooms.c 1.18, src/spells1.c 1.41, src/store.c 1.18, src/wizard1.c 1.26, src/wizard2.c 1.29, src/xtra1.c 1.52:
-       ¡ÖTOband dev-team ¤«¤é¥Ð¥°Êó¹ð¡×¤Î¥Ð¥°¤¤¤í¤¤¤í½¤Àµ¡£Á´Éô¤Ç¤Ï¤Ê¤¤¡£
-       d_info¤Î'M:'¥Õ¥é¥°Åù¤Ï¼è¤êÆþ¤ì¤Ê¤«¤Ã¤¿¡£
-
-       * src/cmd4.c 1.56:
-       ¡ÖTOband dev-team ¤«¤é¥Ð¥°Êó¹ð¡×¤Î¥Ð¥°¤¤¤í¤¤¤í½¤Àµ¡£Á´Éô¤Ç¤Ï¤Ê¤¤¡£d_info¤Î'M:'¥Õ¥é¥°Åù¤Ï¼è¤êÆþ¤ì¤Ê¤«¤Ã¤¿¡£
-
-       * src/cmd6.c 1.34:
-       ¥È¥é¥Ã¥×´¶ÃΤΥí¥Ã¥É¤ò¿¶¤Ã¤¿¤È¤­¤ËÊý¸þ»ØÄê dir ¤¬0°Ê³°¤«¤É¤¦¤«¤Ç̤ȽÌÀ¤«¤É¤¦¤«
-       Ä´¤Ù¤Æ¤¤¤¿¤¬¡¢ËâË¡¶ñ½Ñ¤Ç»È¤Ã¤¿¤È¤­¤Ïdir¤¬Ì¤ÄêµÁ¤À¤Ã¤¿°Ù¤ËȽÄê¤ò´Ö°ã¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/autopick.c 1.68:
-       ¾²¾å¤Î¥¢¥¤¥Æ¥à¤Î¼«Æ°Ç˲õ¤Ç°ìÈÖ¾å¤Î¥¢¥¤¥Æ¥à¤òÇ˲õ¤·¤¿½ê¤Ç¥ë¡¼¥×¤¬½ª¤Ã¤Æ
-       ¤·¤Þ¤Ã¤Æ¤½¤Î²¼¤Î¥¢¥¤¥Æ¥à¤òÇ˲õ¤·¤Æ¤¯¤ì¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.25.2.2:
-       Loading /usr/share/emacs/site-lisp/lang/lang-ja.el (source)...
-       ³¬¤Î°ÜÆ°»þ¤Ë¥Ú¥Ã¥È¤òÃÖ¤¯½èÍý¤Ç¡¢m_ptr->r_idx ¤ËÀµ¤·¤¤ÃͤòÂåÆþ¤¹¤ëÁ°¤Ë
-       r_info[m_ptr->r_idx] ¤ò»²¾È¤·¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/generate.c 1.31:
-       ³¬¤Î°ÜÆ°»þ¤Ë¥Ú¥Ã¥È¤òÃÖ¤¯½èÍý¤Ç¡¢m_ptr->r_idx ¤ËÀµ¤·¤¤ÃͤòÂåÆþ¤¹¤ëÁ°¤Ë
-       r_info[m_ptr->r_idx] ¤ò»²¾È¤·¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-19  iks  <iks@cvs>
-
-       * src/spells2.c 1.57:
-       cave_set_feat´Ø¿ôƳÆþ¤ÇȯÀ¸¤·¤¿earthquake´Ø¿ô¤Î¥¨¥ó¥³¡¼¥É¥Ð¥°(¿Ì¸»¤ÈÁ´¤¯°ã¤¦°ÌÃ֤ǤÎÃÏ·Á½ñ¤­´¹¤¨¸½¾Ý)¤ò½¤Àµ¡£
-
-2002-09-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells2.c 1.56, src/streams.c 1.5, src/cmd1.c 1.55, src/cmd2.c 1.34, src/hissatsu.c 1.16, src/melee2.c 1.33, src/spells1.c 1.40:
-       c_ptr->mimic ¤Î¥³¡¼¥É¤µ¤é¤Ë¥Ð¥°¼è¤ê¡£ÃÏ·Á¤òÁàºî¤¹¤ë³Æ¥³¥Þ¥ó¥É disarm,
-       open, close, bash, tunnelÅù¡¢Á´Éôc_ptr->feat¤òľÀܸ«¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-       ¤Þ¤¿ËâË¡¸ú²Ì stone to mudÅù¤Çc_ptr->mimic¤ò¤Á¤ã¤ó¤È¹¹¿·¤·¤Æ¤¤¤Ê¤«¤Ã¤¿
-       ¤Î¤ò½¤Àµ¡£Ä¾ÀÜ c_ptr->feat ¤òÀßÄꤹ¤ë¥³¡¼¥É¤ò¤Û¤È¤ó¤ÉÁ´¤Æ
-       cave_set_feat()¤ÇÃÖ¤­ÊѤ¨¤Æ¼«Æ°Åª¤Ë mimic = 0 ¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/help/j_general.txt 1.2, lib/help/j_trans.txt 1.2, lib/help/jgeneral.hlp 1.6, lib/help/jlicense.txt 1.2, lib/help/jspecial.hlp 1.4:
-       Ãøºî¸¢É½µ­ 1.2.1¤«¤é¥Þ¡¼¥¸¡£
-
-       * src/cave.c 1.60, src/cmd1.c 1.54:
-       ±£¤·¥È¥é¥Ã¥×¤ËÎÙÀܤ·¤ÆÁö¤ë¥³¥Þ¥ó¥É¤òÆþÎϤ¹¤ë¤È¡Ö¤½¤ÎÊý¸þ¤Ë¤Ï¤¤¤±¤Þ¤»¤ó¡×
-       ¤È¸À¤ï¤ì¤ë»ö¤¬¤¢¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/artifact.c 1.27, src/autopick.c 1.67, src/bldg.c 1.21, src/cmd5.c 1.44, src/cmd6.c 1.33, src/defines.h 1.76, src/dungeon.c 1.71, src/externs.h 1.78, src/hissatsu.c 1.15, src/mind.c 1.15, src/racial.c 1.24, src/spells3.c 1.51, src/wizard2.c 1.28, src/xtra1.c 1.51:
-       ´ÕÄê¤Î¥í¥Ã¥É¤Î»ÈÍѸå¤Ë¼«Æ°ÇË´þ¤¬¤¢¤Ã¤¿¤È¤­¤Î¥Ð¥°½¤Àµ¡£
-       ¤µ¤é¤Ëp_ptr->notice¤Î¿·¤·¤¤¥Õ¥é¥°PN_AUTODESTROY¤òƳÆþ¤·¤Æ
-       ¤¤¤Á¤¤¤Áoptimize¤òÃ٤餻¤ëHack¤ò¤·¤Ê¤¤¤ÇºÑ¤à¤è¤¦¤Ë½ñ¤­ÊѤ¨¤¿¡£
-
-       * src/cmd6.c 1.23.2.3:
-       ´ÕÄê¤Î¥í¥Ã¥É¤Î»ÈÍѸå¤Ë¼«Æ°Ç˲õ¤¬µ¯¤­¤¿»þ¤Î½èÍý¤Çoptimize¤òÃ٤餻¤Æ¤¤¤ë¤Î¤Ë¡¢
-       Ã٤餻¤Æ¤¤¤¿optimize¤ò¸å¤Ç¤¹¤ë¤Î¤ò˺¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-11  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.48:
-       'l'ook¥³¥Þ¥ó¥É¤Ç¥¹¥Ú¡¼¥¹¥­¡¼¤Ç¶½Ì£¤Î¤¢¤ëÃÏ·Á¤ò½ä¤Ã¤Æ¤¤¤ë¤È¤­¡¢
-       ±£¤·Èâ¤ä±£¤·¥È¥é¥Ã¥×¤Î°ÌÃ֤ˤ⥫¡¼¥½¥ë¤¬Íè¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/load.c 1.40:
-       1.2.x°ÊÁ°¤Î¥»¡¼¥Ö¥Ç¡¼¥¿¤ò¥í¡¼¥É¤·¤¿¤È¤­¤Ë¥Æ¥ì¥Ñ¥·¡¼¤Î´§¤Î¥Æ¥ì¥Ñ¥·¡¼¤¬
-       ¼º¤ï¤ì¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * lib/edit/q0000027_j.txt 1.5, src/init1.c 1.46:
-       ÊýË¡Êѹ¹¡£¤µ¤Ã¤­¤ÎÊýË¡¤è¤ê¥¹¥Þ¡¼¥È¡£
-       F:+:58:8:0:0:0:0:32
-       ¤È½ñ¤¯¤ÈÃÏ·Á'+'¤Ï¸«³Ý¤±¤¬²ÖÖ¾´ä¤ÎÊÉ(58)¤Ç¡¢Ãµº÷¤¹¤ë¤È¥É¥¢(32)¤¬¸«ÉÕ¤«¤ë¡£
-
-       * lib/edit/q0000027_j.txt 1.4, src/init1.c 1.45:
-       ¥¯¥¨¥¹¥ÈÆâ¤Ç±£¤·È⤬ÃÖ¤«¤ì¤ë½èÍý¤ÎÊѹ¹¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲá£
-
-2002-09-08  xdd  <xdd@cvs>
-
-       * src/main-mac-carbon.c 1.8, src/main-mac.c 1.20:
-       ½é´üÀßÄê¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Æ¤¤¤Ê¤¤¾õÂ֤ǥ¿¥¤¥ëɽ¼¨¤òON¤Ë¤¹¤ë¤Èɽ¼¨¤µ¤ì¤Ê¤«¤Ã¤¿ÌäÂê¤Î½¤Àµ¡£
-
-       * src/main-mac-carbon.c 1.7, src/main-mac.c 1.19:
-       ¥³¥á¥ó¥È¹Ô¤ÎF9¤ÈF10¤Î¥­¡¼¥³¡¼¥É¤¬Æþ¤ìÊѤäƤ¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/pref/pref-mac.prf 1.5:
-       F9¤ÈF10¥­¡¼¤Î¥³¡¼¥É¤¬Æþ¤ìÊѤï¤Ã¤Æ¤¤¤ëÌäÂê¤Î½¤Àµ¡£
-
-       * src/main-mac-carbon.c 1.2.2.3, src/main-mac.c 1.17.4.1:
-       ¥³¥á¥ó¥È¹Ô¤ÎF9¤ÈF10¤Î¥­¡¼¥³¡¼¥É¤¬Æþ¤ìÊѤï¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/pref/pref-mac.prf 1.4.20.1:
-       F9¤ÈF10¥­¡¼¤Î¥³¡¼¥É¤¬Æþ¤ìÊѤï¤Ã¤Æ¤¤¤ëÌäÂê¤Î½¤Àµ¡£
-
-2002-09-08  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/version.txt 1.11.2.2: jversion.txt±ÑÌõ
-
-2002-09-08  habu  <habu@cvs>
-
-       * lib/help/jversion.txt 1.11.2.2:
-       ¥Ð¡¼¥¸¥ç¥ó1.2.1¤Î¥Ð¡¼¥¸¥ç¥óÍúÎò¤òÄɲá£
-
-       * configure.in 1.18.2.2, lib/file/news.txt 1.12.2.2, lib/file/news_j.txt 1.11.2.2, src/defines.h 1.65.2.4:
-       ¥Ð¡¼¥¸¥ç¥ó1.2.1¥ê¥ê¡¼¥¹¤Ë¸þ¤±¤Æ¥Ð¡¼¥¸¥ç¥ó̾¤ò¹¹¿·¡£
-
-2002-09-08  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/s_info_j.txt 1.3, lib/edit/t0000001_j.txt 1.9, lib/edit/t_lite_j.txt 1.8:
-       ¶¸Àï»Î¤ÎµÝ¤Î½ÏÎýÅÙ¤ò0¤Ë¡£¶À»È¤¤¤ÎÊó½·¤ò·Ù¹ð¤Î»ØÎؤˡ£
-
-       * Changelogs 1.56: ¹¹¿·
-
-2002-09-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells2.c 1.55:
-       ÃϿ̤¬µ¯¤­¤¿¤È¤­¤Ë̤´¶ÃΤΥȥé¥Ã¥×¤¬¾¡¼ê¤Ë´¶ÃκѤߤˤʤäƤ¤¤¿¤Î¤Ç½¤Àµ¤·¤Æ
-       ²¿¤â±Æ¶Á¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£1.3.0¤Þ¤Ç¤Ï̤´¶ÃΤΥȥé¥Ã¥×¤ÏÌäÅú̵ÍѤǾÃÌǤ·¤Æ
-       ¤¤¤¿¤¬¡¢´¶ÃκѤߥȥé¥Ã¥×¤ÏÊɤËÄÙ¤µ¤ì¤Ê¤¤¸Â¤ê¾Ã¤¨¤Ê¤¤¤Î¤Ç¡¢¸å¼Ô¤Ë¹ç¤»¤Æ½¤Àµ¤·¤¿¡£
-
-       * lib/help/jlicense.txt 1.1.2.2: rr9»á¤Ëʹ¤¤¤¿ÆâÍƤò»²¹Í¤ËËÝÌõ½¤Àµ¡£
-
-       * src/object2.c 1.43.2.4: ÂçËɸæ¤Î¼é¤ê¤Î»ØÎؤÎAC¤ò +7 Áý¤ä¤·¤¿¡£
-
-       * src/wizard2.c 1.24.2.1:
-       ^Aj¤Ç¥À¥ó¥¸¥ç¥óºÆÀ¸À®¤ò·«¤êÊÖ¤¹¤È¤É¤ó¤É¤ó p_ptr->energy_need ¤¬¸º¤Ã¤Æ¤¤¤Ã¤Æ
-       »þ»ß¤á¾õÂ֤ˤʤäƤ·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-2002-09-06  habu  <habu@cvs>
-
-       * src/melee2.c 1.26.2.2:
-       cave_info.when¤Î»ÅÍͤ¬ÊѤï¤Ã¤Æ¥â¥ó¥¹¥¿¡¼¤¬Æ¨¤²¤ë¥³¡¼¥ÉÀµ¤·¤¯µ¡Ç½¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-09-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster2.c 1.41, src/mspells1.c 1.32, src/object2.c 1.59, src/racial.c 1.23, src/rooms.c 1.17, src/spells1.c 1.39, src/spells2.c 1.54, src/spells3.c 1.50, src/streams.c 1.4, src/xtra2.c 1.47, configure.in 1.20, lib/edit/f_info_j.txt 1.9, lib/file/news.txt 1.14, lib/file/news_j.txt 1.13, src/cave.c 1.59, src/cmd1.c 1.53, src/cmd2.c 1.33, src/defines.h 1.75, src/dungeon.c 1.70, src/externs.h 1.77, src/generate.c 1.30, src/grid.c 1.5, src/load.c 1.39, src/melee1.c 1.21, src/melee2.c 1.31, src/mind.c 1.14:
-       c_ptr->mimic¤ò³èÍѤ¹¤ë°ìÏ¢¤Î²þ¤¡§
-       * ¥È¥é¥Ã¥×¤Ï³Æ櫤ÎÃÏ·Á¤òmimic¤Ç¾²¤Ë¸«¤»¤ë¢ªÆÃÄê¤Î¾ì½ê¤Ë¸ÇÍ­¤Ê¥È¥é¥Ã¥×¤òÇÛÃÖ²Äǽ¡£
-       * ±£¤·¥É¥¢¤ÏÉáÄ̤Υɥ¢¤òmimic¤ÇÊɤ˸«¤»¤ë¢ª»³Ì®¤äÍÏ´äÅù¤Ë¤â±£¤·¥É¥¢¤¬Â¸ºß²Äǽ¡£
-       * ¶À¡¢¼é¤ê¤Î¥ë¡¼¥ó¡¢Çúȯ¤Î¥ë¡¼¥ó¤Ï¡¢CAVE_OBJECT¥Õ¥é¥°+¤½¤ì¤¾¤ì¤Ø¤Îmimic¤Çɽ¸½¡£
-
-       * lib/edit/a_info_j.txt 1.27, src/cmd1.c 1.52:
-       ÍýÎϤη׻»¼°¤ò ÇÜΨ¡á¸µ¤ÎÇÜΨ¡ß(1.5)+2 ¤ËÊѹ¹¡£¥´¥ë¥ó¡¦¥Î¥ô¥¡¤ËKILL_DEMONÉղá£
-
-2002-09-06  habu  <habu@cvs>
-
-       * src/melee2.c 1.26.2.1:
-       ¥â¥ó¥¹¥¿¡¼¤¬À襤¤ò·è°Õ¤·¤¿»þ¤Ë¥Ø¥ë¥¹¥Ð¡¼¤¬¶²ÉݾõÂ֤Τޤ޹¹¿·¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/cave.c 1.53.2.2:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥×¥ì¥¤¥ä¡¼ÄÉÀ×¥³¡¼¥É¤Ç¡¢¤â¤Ï¤ä»È¤ï¤ì¤Æ¤¤¤Ê¤¤flow_n¤¬»Ä¤Ã¤Æ¤¤¤¿¤¿¤á¡¢forget_flow()¤¬Æ°¤¤¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-09-06  xdd  <xdd@cvs>
-
-       * src/main-mac-carbon.c 1.6:
-       MPW¤Ç¥³¥ó¥Ñ¥¤¥ë½ÐÍè¤Ê¤«¤Ã¤¿ÌäÂê¤Î½¤Àµ¡£
-
-       * src/main-mac-carbon.c 1.2.2.2:
-       MPW¤Ç¥³¥ó¥Ñ¥¤¥ë½ÐÍè¤Ê¤«¤Ã¤¿ÌäÂê¤Î½¤Àµ¡£
-
-2002-09-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.46.2.1:
-       1.3.0¤«¤éÅã¤Î¥¯¥¨¥¹¥È¤Î¾ðÊ󤬥À¥ó¥×Åù(1.2.0¤Ç¤Ï¥¯¥¨¥¹¥È¾ðÊó¥³¥Þ¥ó¥É¤Î¤ß)¤Ç
-       ´Ö°ã¤Ã¤¿É½¼¨¤¬¤µ¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¤ò¥Þ¡¼¥¸¡£
-
-       * src/cmd4.c 1.55, src/files.c 1.80:
-       Åã¤Î¥¯¥¨¥¹¥È¤Î¾ðÊ󤬥À¥ó¥×Åù¤Ç´Ö°ã¤Ã¤¿É½¼¨¤¬¤µ¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-       q_info_j.txt ¤òÆɤàÁ°¤Ë quest[].info ¤ò»È¤Ã¤Æ¤¤¤¿¤¿¤áÀµ¤·¤¤ÃͤˤʤäƤ¤¤Ê¤«¤Ã¤¿¡£
-
-       * src/mindtips.h 1.9:
-       ¶À¤ÎÉõ°õ¤ÎÀâÌÀ¤Î±Ñ¸ìÈǤ¬typo¤¬¤¢¤êñ¸ì¤½¤Î¤â¤Î¤â°ã¤Ã¤¿¡§vanich ¢ª eliminates
-
-2002-09-05  habu  <habu@cvs>
-
-       * src/cmd6.c 1.23.2.2:
-       ´ÕÄê¤Î¥í¥Ã¥É¤Ç´ÕÄꤷ¤¿¥¢¥¤¥Æ¥à¤¬¼«Æ°Ç˲õ¤¬¤µ¤ì¤¿»þ¤Ë»ý¤Á¤â¤ÎÍ󤬤º¤ì¤Æ´Ø·¸¤Ê¤¤¥¢¥¤¥Æ¥à¤¬½¼ÅÅÃæ¤Ë¤Ê¤ë¤Î¤ò½¤Àµ¡£
-
-2002-09-04  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.54:
-       ¥ª¥×¥·¥ç¥ó¤Î¼«Æ°¥»¡¼¥Ö´Ö³Ö¤ÎÀßÄê¤ò¤¹¤ë°Ù¤Ë'F'¤ò²¡¤¹¤È¥Ø¥ë¥×¤¬É½¼¨
-       ¤µ¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£break;¤¬°ì¤ÄÈ´¤±¤Æ¤¤¤¿¡£
-
-       * lib/help/Makefile.am 1.5.4.1: jlicense.txt¤òÄɲá£
-
-       * lib/help/jlicense.txt 1.1: New file.
-
-       * lib/help/j_general.txt 1.1.20.1, lib/help/j_trans.txt 1.1.20.1, lib/help/jgeneral.hlp 1.4.6.1, lib/help/jlicense.txt 1.1.2.1, lib/help/jspecial.hlp 1.2.6.1:
-       ¿·¤·¤¤»ÈÍѵöÂúʸ½ñ¤ò¤È¤ê¤¢¤¨¤ºÄɲá£Angband license ¤òÃæ¿´¤Ë¿ø¤¨¤ÆÊѹ¹
-       ¤ò²Ã¤¨¤ÆºÆÇÛÉÛ¤¹¤ë¾ì¹ç¤ÎÊѶòÈÚÅÜÆȼ«¤Î¾ò·ï¤òÄɲá£dual license ¤Ë¤Ä¤¤
-       ¤Æ¤ÎÃí°Õ¤âÉղᣤޤ¿¡¢¸½ºß¤Î Angband OpenSource Initiative ¤Î¾õ¶·¤Ë¤Ä
-       ¤¤¤Æthangorodorim¤Îʸ¾Ï¤ÎËÝÌõ¤òźÉÕ¡£
-
-2002-09-04  habu  <habu@cvs>
-
-       * src/mane.c 1.10.4.1:
-       ¤â¤Î¤Þ¤Í¤Î¼ÂºÝ¤Î¼ºÇÔΨ·×»»¤Ë´ïÍÑÅù¤¬¹Í褵¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-09-03  habu  <habu@cvs>
-
-       * src/object2.c 1.58:
-       ±ÔÉҤΥ¨¥´¤ÎESPÄɲäλÅÍÍÊѹ¹¤Î»þ¡¢±ÔÉҤδ§¤Î¤Û¤¦¤À¤±Êѹ¹¤·¤Æ±ÔÉҤγõ¤òÊѹ¹¤·Ëº¤ì¤Æ¤¤¤¿¤Î¤Ç¡¢³õ¤Î¤Û¤¦¤â´§¤ÈƱ¤¸¤è¤¦¤ËÊѹ¹¤·¤¿¡£
-
-2002-09-03  xdd  <xdd@cvs>
-
-       * src/main-mac-carbon.c 1.2.2.1:
-       CPU¤¬¹âÉé²Ù¤Ë¤Ê¤ëÌäÂê¤Î½¤Àµ¡£¥¿¥¤¥ëÉý¹â¤ÎÁªÂò¤Ç¥¯¥é¥Ã¥·¥å¤·¤Æ¤¤¤¿ÌäÂê¤Î½¤Àµ¡£¥¦¥§¥¤¥È¤òÂ礭¤¯¤·¤Æ¤â¥¢¥Ë¥á¡¼¥·¥ç¥ó¤·¤Æ¤¤¤Ê¤«¤Ã¤¿ÌäÂê¤Î½¤Àµ¡£Æ©²á½èÍý¤Î½¤Àµ¡£
-
-2002-09-03  habu  <habu@cvs>
-
-       * src/spells1.c 1.29.2.3:
-       project_p()Æâ¤Çwho¤¬-1(È¢¤ÎÇúȯ¤«¤éȯÀ¸¤·¤¿¥À¥á¡¼¥¸)¤Î»þ¤Ë¤½¤Î¤Þ¤Þ¥â¥ó¥¹¥¿¡¼ÇÛÎó¤òÆɤó¤ÇÇÛÎó³°¥¢¥¯¥»¥¹¤òµ¯¤³¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¡¢æ«¤Ç»à¤ó¤À¾ì¹ç¤ò¹Íθ¤·¤Ækillerʸ»úÎó¤Ë¤Ë"æ«"¤òÆþ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£³«È¯ÈǤΤۤ¦¤Çkillerʸ»úÎó¤Î"æ«"¤Î±Ñ¸ìÈǤòºî¤ë¤Î¤ò˺¤ì¤Æ¤¤¤¿¤Î¤â°ì½ï¤Ë½¤Àµ¡£
-
-       * src/spells1.c 1.38:
-       killerʸ»úÎó¤Î"æ«"¤Î±Ñ¸ìÈǤòºî¤ë¤Î¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲá£
-
-       * src/spells1.c 1.37:
-       project_p()Æâ¤Çwho¤¬-1(È¢¤ÎÇúȯ¤«¤éȯÀ¸¤·¤¿¥À¥á¡¼¥¸)¤Î»þ¤Ë¤½¤Î¤Þ¤Þ¥â¥ó¥¹¥¿¡¼ÇÛÎó¤òÆɤó¤ÇÇÛÎó³°¥¢¥¯¥»¥¹¤òµ¯¤³¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¡¢æ«¤Ç»à¤ó¤À¾ì¹ç¤ò¹Íθ¤·¤Ækillerʸ»úÎó¤Ë¤Ë"æ«"¤òÆþ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-09-02  xdd  <xdd@cvs>
-
-       * src/main-mac-carbon.c 1.5:
-       CPU¤¬¹âÉé²Ù¤Ë¤Ê¤ëÌäÂê¤Î½¤Àµ¡£
-       ¥¿¥¤¥ëÉý¹â¤ÎÁªÂò¤Ç¥¯¥é¥Ã¥·¥å¤·¤Æ¤¤¤¿ÌäÂê¤Î½¤Àµ¡£
-       ¥²¡¼¥àÃæ¡¢¥¦¥§¥¤¥È¤òÂ礭¤¯¤·¤Æ¤â¥¢¥Ë¥á¡¼¥·¥ç¥ó¤·¤Æ¤¤¤Ê¤«¤Ã¤¿ÌäÂê¤Î½¤Àµ
-       Æ©²á½èÍý¤Î½¤Àµ
-
-2002-09-02  habu  <habu@cvs>
-
-       * src/init2.c 1.12.4.1:
-       ¥â¥ó¥¹¥¿¡¼¥½¡¼¥ÈÍѤ˳ÎÊݤ·¤¿ÇÛÎó¤ò³«Êü¤·¤Æ¤¤¤º¡¢¥á¥â¥ê¥ê¡¼¥¯¤·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/spells1.c 1.29.2.2:
-       who_name¤ò½é´ü²½¤·¤Æ¤¤¤Ê¤¤¤¿¤á¤Ëkiller¤Ëstrcpy¤·¤¿»þ¤Ë¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¡¼¤¹¤ë»ö¤¬¤¢¤Ã¤¿¤Î¤Çwho_name¤ò¥Ì¥ëʸ»úÎó¤Ç½é´ü²½¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/flavor.c 1.17.4.1:
-       ¥â¥ó¥¹¥¿¡¼¥Ü¡¼¥ë¤äÁü¤Ê¤É¤Î¥¢¥¤¥Æ¥à¤Ïpval¤«¤é¥â¥ó¥¹¥¿¡¼ÈÖ¹æ¤ò¼èÆÀ¤·¤Æ¤¤¤ë¤¬¡¢¤¹¤Ù¤Æ¤Î¥¢¥¤¥Æ¥à¤Ç¥â¥ó¥¹¥¿¡¼ÇÛÎó¤ò¸«¤Æ¤¤¤¿¤¿¤á¿©ÎȤʤɤεðÂç¤Êpval¤ò»ý¤Ä¥¢¥¤¥Æ¥à¤ÇÇÛÎó³°¥¢¥¯¥»¥¹¤¬µ¯¤³¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-09-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/readdib.c 1.1.1.1.28.1:
-       winÈǤÇAdam Bolt¥¿¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Æ¤Ê¤¤¾õÂÖ¤ÇÆɤ߹þ¤â¤¦¤È¤¹¤ë¤È
-       ¥Õ¥¡¥¤¥ë̾¤¬Ê¸»ú²½¤±¤·¤¿¥¨¥é¡¼¥À¥¤¥¢¥í¥°¤¬½Ð¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-02  habu  <habu@cvs>
-
-       * src/flavor.c 1.21:
-       ¥â¥ó¥¹¥¿¡¼¥Ü¡¼¥ë¤äÁü¤Ê¤É¤Î¥¢¥¤¥Æ¥à¤Ïpval¤«¤é¥â¥ó¥¹¥¿¡¼ÈÖ¹æ¤ò¼èÆÀ¤·¤Æ¤¤¤ë¤¬¡¢¤¹¤Ù¤Æ¤Î¥¢¥¤¥Æ¥à¤Ç¥â¥ó¥¹¥¿¡¼ÇÛÎó¤ò¸«¤Æ¤¤¤¿¤¿¤á¿©ÎȤʤɤεðÂç¤Êpval¤ò»ý¤Ä¥¢¥¤¥Æ¥à¤ÇÇÛÎó³°¥¢¥¯¥»¥¹¤¬µ¯¤³¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-09-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.57, src/object2.c 1.57, src/spells1.c 1.35, src/spells2.c 1.53:
-       æ«¥Ô¥Ã¥È¤Î³«Ìç¥È¥é¥Ã¥×¤¬´¶ÃÎÁ°¤Ë²ò½ü²Äǽ¤À¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-09-02  iks  <iks@cvs>
-
-       * src/ang_eng.rc 1.4, src/angband.rc 1.5, src/main-win.c 1.19:
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤òÁ°Ì̤˸ÇÄꤹ¤ëµ¡Ç½¤òÄɲá£
-
-2002-09-01  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.45.2.2:
-       ¥¦¥©¡¼¥±¥ó¤Ë¡Ø¡ÙÉղᣥ¢¥¤¥Æ¥àÍ¤è¤¦¤Ë½¤Àµ¡£
-
-       * lib/edit/k_info_j.txt 1.29.2.1:
-       ±£Ì©¥¨¥Ã¥»¥ó¥¹¤ÎÁý¿£¥Ð¥°Âкö¤Ç¡¢¥¨¥ë¥Õ¤Î¥¯¥í¡¼¥¯¤È¹õÁõ«¤Îpval¤òɸ½à¤Ç1¤Ë¤·¤¿¡£
-       Ä̾ï¤Ï1d4¤Ç¾å½ñ¤­¤µ¤ì¤ë¤«¤é±Æ¶Á¤Ê¤¤¤¬¡¢ËÞÍǤ䥨¥Ã¥»¥ó¥¹Ãê½Ð¤¹¤ë¤È(+1)¤Ë¤Ê¤ë¡£
-
-2002-09-01  xdd  <xdd@cvs>
-
-       * src/main-mac-carbon.c 1.4:
-       main-mac.c¤òCarbon¤ËÂбþ¡£2ÇÜÉý¥¿¥¤¥ëɽ¼¨²Äǽ
-
-2002-09-01  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd3.c 1.28:
-       ¥â¥ó¥¹¥¿¡¼Ä´ºº¤Ç^M¤ò²¡¤·¤Æ̾Á°¤òÆþÎϤ»¤º¤Ë¥­¥ã¥ó¥»¥ë¤¹¤ë¤È²èÌ̤¬¿¿¤Ã°Å¤Ë¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-2002-08-31  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd2.c 1.32, src/object2.c 1.56:
-       ¼Í·â¤Î¤È¤­¤Ë*¥¹¥ì¥¤*¤¬Å¬ÍѤµ¤ì¤Æ¤¤¤Ê¤Ã¤¿¤Î¤Ç½¤Àµ¡£±Ñ¸ìÈǤǥ¨¥Ã¥»¥ó¥¹¤òÉղ乤ë
-       ¤È¤­¤Î¥¹¥ì¥¤¤Î¥ê¥¹¥È¤Î½çÈÖ¤ò¤­¤ì¤¤¤Ëľ¤·¤¿¡£
-
-2002-08-31  iks  <iks@cvs>
-
-       * src/mane.c 1.11:
-       ¤â¤Î¤Þ¤Í¤Î¼ÂºÝ¤Î¼ºÇÔΨ·×»»¤Ë´ïÍÑÅù¤¬¹Í褵¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-08-31  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.66:
-       ¼«Æ°½¦¤¤¤Î½¤ÀµÃͤΥ­¡¼¥ï¡¼¥É¤¬autopick.txtÅù¤Ç¤Ï¡Ö½¤ÀµÃÍnn°Ê¾å¤Î¡×¤È
-       ½ñ¤¤¤Æ¤¢¤ë¤Î¤Ë¡Ö½¤ÀµÃͤ¬nn°Ê¾å¤Î¡×¤Ç¤Ê¤¤¤È¼õ¤±ÉÕ¤±¤Ê¤«¤Ã¤¿¤Î¤ÇÁ°¼Ô¤ËÅý°ì¡£
-       ¸µ¡¹pval¤ò»ý¤¿¤Ê¤¤¥¢¥¤¥Æ¥à¤Î¾ì¹ç¤ÏÌ¿Ã潤Àµ¤ä¥À¥á¡¼¥¸½¤Àµ¤ÇȽÄꤹ¤ë¤è¤¦¤Ë
-       ¤·¤Æ¤¢¤Ã¤¿¤¬¡¢¥¨¥´¥¢¥¤¥Æ¥à¤ÎÃæ¤Ë¤ÏÀÚ¤ìÌ£¤ÎÉð´ï¤Î¤è¤¦¤Ëmax_pval¤¬0¤Ê¤Î¤Ë
-       ¼ÂºÝ¤Ïpval¤òÍ¿¤¨¤é¤ì¤Æ¤¤¤ë¤â¤Î¤¬¤¢¤ê¡¢¥­¡¼¥ï¡¼¥É¤¬Àµ¾ï¤ËÆ°ºî¤·¤Ê¤«¤Ã¤¿
-       ¤Î¤Çmax_pval¤ò¸«¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-2002-08-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.40.2.3, src/variable.c 1.28.2.1:
-       ¥á¥¤¥ó¥¦¥£¥ó¥É¥¦¤ÎÉý¤òÂ礭¤¯¤·¤¿¤È¤­¡¢¥¢¥¤¥Æ¥à¥ê¥¹¥ÈµÚ¤ÓÁõÈ÷¥ê¥¹¥È¤òɽ¼¨¤Ë
-       ¤ª¤¤¤ÆÇÛÎó³°¥¢¥¯¥»¥¹¤¬µ¯¤­¤Æwindows¤Ç¤Ï a) ¤Î°ÌÃ֤Υ¢¥¤¥Æ¥à̾¤¬ÅÓÃæ¤ÇÀÚ¤ì¤ë
-       ¤È¤¤¤¦¾É¾õ¤¬½Ð¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-2002-08-30  habu  <habu@cvs>
-
-       * src/xtra1.c 1.50:
-       ¾®¼ê¤Îpval¤¬0¤À¤ÈÁõÈ÷¤·¤Æ¤âËâË¡¤¬¾§¤¨¤Ë¤¯¤¯¤Ê¤é¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£have_flag()¤ò»È¤Ã¤Æ½ñ¤­Ä¾¤·¤¿»þ¤Ë´Ö°ã¤Ã¤Æ³ç¸Ì¤ò¸º¤é¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤¬¸¶°ø¤é¤·¤¤¡£
-
-2002-08-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/variable.c 1.29, src/object1.c 1.48:
-       ¥á¥¤¥ó¥¦¥£¥ó¥É¥¦¤ÎÉý¤òÂ礭¤¯¤·¤¿¤È¤­¡¢¥¢¥¤¥Æ¥à¥ê¥¹¥ÈµÚ¤ÓÁõÈ÷¥ê¥¹¥È¤òɽ¼¨¤Ë
-       ¤ª¤¤¤ÆÇÛÎó³°¥¢¥¯¥»¥¹¤¬µ¯¤­¤Æwindows¤Ç¤Ï a) ¤Î°ÌÃ֤Υ¢¥¤¥Æ¥à̾¤¬ÅÓÃæ¤ÇÀÚ¤ì¤ë
-       ¤È¤¤¤¦¾É¾õ¤¬½Ð¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-2002-08-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.33:
-       errr errr_tmp; ¤È¤¤¤¦¥°¥í¡¼¥Ð¥ëÊÑ¿ô¤ò°ÊÁ°¤Ë¥³¡¼¥ÉÀ°Íý¤·¤¿¤È¤­¤Ë¾Ã¤·¤Æ
-       ¤·¤Þ¤Ã¤¿¤¬¡¢MPW¤Ç¤Ï°ì²Õ½ê¤Ç¤³¤ì¤ò»È¤Ã¤Æ¤¤¤¿¤Î¤Ç¥¨¥é¡¼¤¬½Ð¤¿¡£
-       ¥í¡¼¥«¥ëÊÑ¿ô¤Ë½ñ¤­ÊѤ¨¤Æ½¤Àµ¡£
-
-       * src/cmd3.c 1.27:
-       ÂÑÀ­Ìùï¤ß¤Î¥Ç¡¼¥¿¹½Â¤ÂΤαѸìÈǤÎÄêµÁ¤Ë°ìÉôÆüËܸìÈǤηÁ¼°¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã
-       ¤Æ¤¿¤Î¤ò½¤Àµ¡£
-
-       * Changelogs 1.55: ¹¹¿·¡£
-
-       * lib/help/jversion.txt 1.11.2.1, lib/help/version.txt 1.11.2.1:
-       version.txt¡¢ 1.2.0¤È1.3.0ξÍÑ¡£
-
-       * lib/edit/k_info_j.txt 1.32, src/cmd1.c 1.51:
-       »à¤ÎÂç³ù¤ÎKILL_DRAGON¤ò¾Ã¤·¤ÆSLAY_DRAGON¤À¤±¤Ë¤·¤¿¡£
-       »à¤ÎÂç³ù¤Î¥À¥á¡¼¥¸¤¬Ê֤äƤ¯¤ë¤È¤­¤Î¥¹¥ì¥¤¤Î·×»»¤â½¤Àµ(¤Ä¤¤¤Ç¤Ë¾¯¡¹¥Ð¥°½¤Àµ)¡£
-
-       * lib/edit/a_info_j.txt 1.26: ¥Ù¥ë¥·¥¨¥ë¤Î´§¤ËEASY_SPELLÉղá£
-
-2002-08-27  habu  <habu@cvs>
-
-       * lib/edit/e_info_j.txt 1.26, src/defines.h 1.74, src/init1.c 1.44, src/object1.c 1.47, src/object2.c 1.55, src/wizard2.c 1.26, src/xtra1.c 1.49:
-       ËâË¡¤ÎÆñ°×ÅÙ¤ò²¼¤²¤ëEASY_SPELL¤ò¥Õ¥é¥°²½¤·¤¿¡£Æ±»þ¤ËÂ縭¼Ô¤Î¥¢¥ß¥å¥ì¥Ã¥È¤ËEASY_SPELL¥Õ¥é¥°¤òÄɲä·¤¿¡£
-
-       * lib/edit/e_info_j.txt 1.25: Â縭¼Ô¤Î¥¢¥ß¥å¥ì¥Ã¥È¤Ë·Ù¹ðǽÎϤòÄɲá£
-
-       * lib/edit/k_info_j.txt 1.31: ¸­¼Ô¤Î¥¢¥ß¥å¥ì¥Ã¥È¤ËÀÖ³°Àþ»ëÎϤòÄɲá£
-
-       * src/object2.c 1.54:
-       ¸­¼Ô¤Î¥¢¥ß¥å¥ì¥Ã¥È¤Ë²¼µéESP¤¬1¡Á3¸ÄÉÕ¤¯¤è¤¦¤Ë¤·¤¿¡£(add_esp_weak()¤ò»ÈÍÑ)
-
-2002-08-26  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jdefend.hlp 1.4, lib/help/jdungeon.hlp 1.3, lib/help/jgeneral.hlp 1.5, lib/help/jhelp.hlp 1.7, lib/help/jhelpinfo.txt 1.5, lib/help/jmagic.hlp 1.4, lib/help/jmagic.txt 1.8, lib/help/jmonster.hlp 1.3, lib/help/jobjects.hlp 1.4, lib/help/joption.txt 1.14, lib/help/jpref.hlp 1.3, lib/help/jraceclas.hlp 1.2, lib/help/jraceclas.txt 1.5, lib/help/jspecial.hlp 1.3, lib/help/jtown.hlp 1.3, lib/help/magic.txt 1.10, lib/help/option.txt 1.15, lib/help/raceclas.txt 1.6, src/birth.c 1.49, src/cmd4.c 1.53, src/files.c 1.79, autopick.txt 1.18, autopick_eng.txt 1.20, lib/help/birth.hlp 1.6, lib/help/birth.txt 1.10, lib/help/general.hlp 1.6, lib/help/jattack.hlp 1.5, lib/help/jbirth.hlp 1.6, lib/help/jbirth.txt 1.9:
-       ¥­¥ã¥é¥¯¥¿¡¼À¸À®Ãæ¤ä¥ª¥×¥·¥ç¥óÀßÄêÃæ¤Ë'?'¤ò²¡¤¹¤È¥Ø¥ë¥×¥Õ¥¡¥¤¥ë¤ÎÃæ¤Î
-       ¸½ºß¤Î²èÌ̤ËÂбþ¤·¤¿¹àÌܤòɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£(Eyangband¤Î¤Þ¤Í)
-
-2002-08-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells2.c 1.41.2.2:
-       ¥é¥¤¥È¥¨¥ê¥¢¤Ç¡¢Éô²°¤Î°ìÉô¤Ç¤Ê¤¤ÊɤäÌÚ¤¬¾È¤é¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/spells2.c 1.51:
-       Ì¤´ÕÄê¤Î¥È¥é¥Ã¥×´¶ÃÎ¥¢¥¤¥Æ¥à¤ò»È¤Ã¤¿¸å¤Ç¡¢Ìµ°ÕÌ£¤Ê¥¿¥¤¥ß¥ó¥°¤Ç·Ù¹ð¥á¥Ã¥»¡¼¥¸
-       ¤¬½Ð¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-08-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/object2.c 1.43.2.3:
-       "Ring of Warning pulsates" should be "Your Ring ...".
-
-       * src/object1.c 1.46: ESP¤ÎÀâÌÀʸ¤ò²þÁ±¡£
-
-       * src/cmd1.c 1.44.4.2:
-       Ê֤äÆÍ褿»à¤ÎÂç³ù¤Î¥À¥á¡¼¥¸·×»»¤Ç¥À¥á¡¼¥¸½¤Àµ¸å¤Ë¥Þ¥¤¥Ê¥¹¤Ë¤Ê¤Ã¤¿¤È¤­¡¢
-       0¤Ëľ¤¹¤Î¤ò˺¤ì¤Æ¤¤¤Æ¥Ò¥Ã¥È¥Ý¥¤¥ó¥È¤¬Áý¤¨¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/object2.c 1.52:
-       º£¸å¥Õ¥é¥°¤òÁý¤ä¤·¤¿¤È¤­¤Î°Ù¤Ë¡¢Íç¤Î¿ôÃͤϤʤë¤Ù¤¯»È¤ï¤Ê¤¤Êý¤¬Îɤ¤¤Î¤Ç
-       °ì²Õ½ê»Ä¤Ã¤Æ¤¤¤¿ art_flags[3]Åù¤Î¿ôÃͤˤè¤ëź»ú¤ò TR_FLAG_SIZE¤ò»È¤Ã¤Æ
-       for¥ë¡¼¥×¤Ç½ñ¤­´¹¤¨¤¿¡£
-
-       * lib/help/jobjects.txt 1.8, lib/help/objects.txt 1.7:
-       ESP¤ÎÂÑÀ­¼«Æ°¹ï¤ß¤ËÂбþ¤·¤Æhelp¹¹¿·¡£
-       {!!}¤È{.}¤È{$}¤ÎÀâÌÀ¤¬Ìµ¤«¤Ã¤¿¤Î¤ÇÄɲá£
-
-       * src/files.c 1.78: type: constraction -> construction
-
-2002-08-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.56.2.3:
-       MPW¤Î¥Ð¥°¤é¤·¤­¸½¾Ý¤Ç¡¢pre-processÃæ¤Ë¼ý½¸Ãæ¤Î¡Ö¼ý¡×¤Î»ú¤Î2¥Ð¥¤¥ÈÌܤ¬
-       ¾¡¼ê¤Ë¾Ã¤¨¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¾Ã¤¨¤Ê¤¤¤è¤¦¤Ë¶¯°ú¤Ë´Á»ú¥³¡¼¥É¤ò½ñ¤­¹þ¤ó¤À¡£
-
-       * lib/help/raceclas.txt 1.5: typo½¤Àµ¡£
-
-2002-08-21  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jpref.txt 1.14, lib/help/pref.txt 1.17, src/autopick.c 1.64, autopick.txt 1.17, autopick_eng.txt 1.19:
-       ºÆºÆ½¤Àµ¡£':'¤âedit¥Õ¥¡¥¤¥ë¤ÎÀßÄê¹Ô¤ä¼«Æ°½¦¤¤¤Î¶èÀڤ국¹æ¤È½Å¤Ê¤ë¤Î¤Ç¤ä¤Ð¤«¤Ã¤¿¡£
-       ';'¤ËÊѹ¹¡£
-
-       * src/artifact.c 1.26, src/externs.h 1.76, src/object2.c 1.51:
-       ·Ù¹ð¤Î»ØÎؤË1/3¤Î³ÎΨ¤Ç²¼µéESPÉղá£
-
-2002-08-20  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.16, autopick_eng.txt 1.18, lib/help/jpref.txt 1.13, lib/help/pref.txt 1.16, src/autopick.c 1.63:
-       ³Îǧ¤Î¸å½¦¤¦ÀßÄêʸ»ú¤ò'*'¤Ë¤·¤¿¤Î¤Ï¼ºÇÔ¤À¤Ã¤¿¡£¡Ö*´ÕÄê*ºÑ¤ß¤Î¡×¤È¤¤¤¦¥­¡¼¥ï¡¼¥É¤ò
-       Ëº¤ì¤Æ¤¤¤¿¡£¤½¤³¤Çʸ»ú¤ò':'¤ËÊѹ¹¡£
-
-       * src/dungeon.c 1.61.2.4:
-       ·Ð¸³ÃͤòµÛ¤¤¼è¤ëǽÎÏ(TRC_DRAIN_EXP)¤¬¥¢¥ó¥É¥í¥¤¥É¤Î¶¯²½ÅÙ¤âµÛ¤¤¼è¤Ã¤ÆÉÔµ¤Ì£
-       ¤À¤Ã¤¿¤Î¤Ç¡¢¥¢¥ó¥É¥í¥¤¥É¤Ç¤Ï̵¸ú¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/generate.c 1.25.2.1:
-       vault¤ÎÃæÅù¤Ç³¬Ãʤ¬¥È¥é¥Ã¥×¤ÈƱ¤¸¾ì½ê¤ËÇÛÃÖ¤µ¤ì¤Æ¡¢¥È¥é¥Ã¥×¤òȯ¸«¤·¤¿¤È¤­¤Ë
-       ³¬Ãʤ¬¾Ã¤¨¤ë»ö¤¬¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-       * src/dungeon.c 1.69:
-       ÌôÅù¤ËÂФ¹¤ë¥µ¥¤¥³¥á¥È¥ê¡¼¤Ï̵²ÁÃͤÎÌô¤ò{²õ¤ì¤Æ¤¤¤ë}¤ÈȽÄꤹ¤ë¸ú²Ì¤Ï¤¢¤Ã¤¿¤Î¤Ç¡¢
-       ¸ú²Ì¤ò̵¤¯¤¹¤Î¤Ï¤ä¤á¤ÆºÆ½¤Àµ¡£
-       ÌôÅù¤Ë¤Ä¤¤¤Æ¤Ïľ¸å¤Î¼«Æ°Ç˲õ¤À¤±¤ò̵¸ú¤Ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/dungeon.c 1.68:
-       Ä¶Ç½ÎϼԤΥµ¥¤¥³¥á¥È¥ê¡¼¤Ç¥¢¥¤¥Æ¥à¤Îfeeling¤¬¤ï¤«¤Ã¤¿½Ö´Ö¤Ë¼«Æ°Ç˲õŬÍÑ¡£
-       º£¤Þ¤Ç¤Ï̤ȽÌÀ¤ÎÌôÅù¤â¥µ¥¤¥³¥á¥È¥ê¡¼¤Î¸ú²Ì¤ò¼õ¤±¤Æ̵°ÕÌ£¤Ë{ÊÂ}¤ÈȽÄê
-       ¤µ¤ì¤Æ¤¤¤¿¤¬¡¢¼«Æ°Ç˲õ¤µ¤ì¤ë´í¸±¤¬¤¢¤ë¤Î¤Ç¡¢¥µ¥¤¥³¥á¥È¥ê¡¼¤Î±Æ¶Á¤Ï
-       Éð´ï¤äÁõ¾þÉʤÀ¤±¤ËÀ©¸Â¤·¤¿¡£
-
-       * src/spells2.c 1.50:
-       view_torch_grids¤¬ yes ¤Î¤È¤­¤Ï°Å°ÇÀ¸À®¤Ç°Å¤¯¤Ê¤Ã¤¿¾²¤ÎCAVE_MARK¤ò¾Ã¤µ¤Ê¤¤¡£
-
-       * autopick.txt 1.15, autopick_eng.txt 1.17, lib/help/jpref.txt 1.12, lib/help/pref.txt 1.15:
-       '*'¤ËƳÆþ¤Ëȼ¤Ã¤Æ¥Ø¥ë¥×¤Î¹¹¿·¡£
-
-       * src/autopick.c 1.62, src/cave.c 1.56, src/cmd1.c 1.49, src/cmd2.c 1.31, src/cmd4.c 1.52, src/defines.h 1.73, src/melee1.c 1.20, src/melee2.c 1.29, src/object1.c 1.45, src/object2.c 1.50, src/spells2.c 1.49:
-       heng-ml¤ËÍ褿 Kieron Dunbar ¤µ¤ó¤Î¥Ñ¥Ã¥Á¤ò¤Ç»ý¤ÁʪÍó¤Î¥¹¥Ú¡¼¥¹¤¬¤Ê¤¯¤Æ
-       ¼«Æ°½¦¤¤¤ËÀßÄꤵ¤ì¤¿¥¢¥¤¥Æ¥à¤ò½¦¤¨¤Ê¤¤¤È¤­¤Ë¡¢¡Ö½¦¤¨¤Ê¤¤¡×»ö¤òɽ¤ï¤¹¥á¥Ã
-       ¥»¡¼¥¸¤¬2ÅٽФƤ·¤Þ¤¦¸½¾Ý¤ò²ò·è¡£
-       ¤Þ¤¿¡¢¼«Æ°½¦¤¤ÀßÄê¤Î¥Õ¥é¥°'~'¡¢'!'¡¢¤Ë²Ã¤¨¤Æ¿·¤·¤¯'*'¤òƳÆþ¡§
-       carry_query_flag ¤Ç½Ð¤ë¤Î¤ÈƱÍͤʳÎǧ¥á¥Ã¥»¡¼¥¸¤ò¼«Æ°½¦¤¤¤ÎľÁ°¤Ë½Ð¤¹¡£
-       ¤¿¤À¤·¡¢'n'¤Ç¥­¥ã¥ó¥»¥ë¤·¤Æ¤â²¿ÅÙ¤â½Ð¤ë¤Î¤¬¤Á¤ç¤Ã¤È¤ï¤º¤é¤ï¤·¤¤¤È»×¤Ã
-       ¤¿¤Î¤Ç°ìÅÙ'n'¤ò²¡¤¹¤È¤½¤ì¤ò¥Õ¥é¥°¤Ç³Ð¤¨¤Æ¤ª¤¤¤Æ2ÅÙ¤Èʹ¤«¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-08-16  iks  <iks@cvs>
-
-       * src/dungeon.c 1.67:
-       ·Ð¸³ÃͤòµÛ¤¤¼è¤ëǽÎÏ(TRC_DRAIN_EXP)¤¬¥¢¥ó¥É¥í¥¤¥É¤Î¶¯²½ÅÙ¤âµÛ¤¤¼è¤Ã¤ÆÉÔµ¤Ì£¤À¤Ã¤¿¤Î¤Ç¡¢¥¢¥ó¥É¥í¥¤¥É¤Ç¤Ï̵¸ú¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-08-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.77:
-       »àË´¸å¤Î¥À¥ó¥×¥Õ¥¡¥¤¥ë½ñ¤­½Ð¤·¤Ç¡¢¡Ö¸½Â¸¤¹¤ë¥Õ¥¡¥¤¥ë %s ¤Ë¾å½ñ¤­¤·¤Þ¤¹¤«? ¡×
-       ¤Î¼ÁÌä¥á¥Ã¥»¡¼¥¸¤¬¥á¥Ã¥»¡¼¥¸¥í¥°¤Ë»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/spells2.c 1.48:
-       ²óÉü¥â¥ó¥¹¥¿¡¼Åù¤¬Ä·¤ÍÊÖ¤ë¤Î¤Ï»ÅÍÍ¡£¤È¤¤¤¦»ö¤ÇPROJECT_REFLECTABLEÉղá£
-
-2002-08-15  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.54: ¹¹¿·
-
-       * src/spells2.c 1.47, src/cmd1.c 1.48, src/cmd6.c 1.31, src/defines.h 1.72, src/hissatsu.c 1.14, src/melee1.c 1.19, src/melee2.c 1.28, src/mind.c 1.13, src/monster2.c 1.40, src/mspells1.c 1.31, src/mspells2.c 1.24, src/racial.c 1.22, src/spells1.c 1.34:
-       project_p()¤Ë¥Õ¥é¥°¤òÅϤ¹¤è¤¦¤Ë¤·¤¿¤¿¤á¡¢È¿¼Í¤·¤Ê¤¤ËâË¡¤Ë¤ÏÁ´¤ÆPROJECT_NO_REF¤ò
-       ÉÕ¤±¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¯¤Ê¤Ã¤¿¤¬¡¢¤ï¤º¤é¤ï¤·¤¤¤Î¤ÇµÕ¤Ë¤·¤Æ¡¢È¿¼Í¤¹¤ëËâË¡Á´¤Æ¤Ë
-       PROJECT_REFLECTABLE¤òÉÕ¤±¤ë¤È¤¤¤¦É÷¤ËÊѹ¹¤·¤¿¡£
-       À¸Ì¿Îϵۼý¡¢²óÉü¥â¥ó¥¹¥¿¡¼¡¢¥¹¥í¥¦¡¢¥¯¥í¡¼¥óÅù¤âº£¤Þ¤ÇÈ¿¼Í¤·¤Æ¤¤¤¿¤Î¤Ç¡¢
-       PROJECT_REFLECTABLE¤òÉÕ¤±¤ë¤Ù¤­¤À¤í¤¦¤±¤ì¤É¡¢¤½¤â¤½¤âÈ¿¼Í¤¹¤ë¤Ù¤­¤â¤Î¤«¤É¤¦¤«
-       Ì¤ä¿¤Î¤ÇÊÝα(º£¤ÏÈ¿¼Í¤·¤Ê¤¤¾õÂÖ)¡£
-
-       * lib/edit/r_info_j.txt 1.45.2.1:
-       ¥ª¡¼¥¬Àï»Î¤Ï¥ª¡¼¥¬¤Ê¤Î¤Ëµð¿Í¥Õ¥é¥°¤¬¤Ê¤«¤Ã¤¿¤Î¤ÇÄɲá£
-
-2002-08-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/effects.c 1.25.2.1:
-       ¶¸Àï»ÎÅù¤Ç¡¢Ç½ÎÏÃͤ¬ºÇÄã¤Î3¤Î¤Þ¤Þ¤Ç¡¢¥Ù¡¼¥¹Ç½ÎÏÃͤÀ¤±¤¬ÊѲ½¤·¤¿¤È¤­¤Ë
-       ²èÌ̾å¤ÎǽÎÏÃÍɽ¼¨¤¬ ÃÎǽ: 3¢ªÃÎǽx: 3 ¤Î¤è¤¦¤Ë¤Á¤ã¤ó¤È¹¹¿·¤µ¤ì¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-08-14  habu  <habu@cvs>
-
-       * src/dungeon.c 1.61.2.3, src/xtra1.c 1.43.2.3, src/cave.c 1.53.2.1:
-       ¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¥Ð¥°ºÆ½¤Àµ¡£¥Ð¥°¤Î¸¶°ø³ÎÄê¡£update_monsters(TRUE);¤Ç m_ptr->cdis¤ò½é´ü²½¤¹¤ë¤¬¡¢¤½¤Î½é´ü²½¤ÎÁ°¤Ë update_mon_lite(); ¤Ç»È¤Ã¤Æ¤¤¤¿¤Î¤¬¥Ð¥°¤Î¸¶°ø¤À¤Ã¤¿¡£¤Þ¤¿¡¢¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤ÇÊɤ䥢¥¤¥Æ¥à¤¬¾È¤é¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤â½¤Àµ¡£
-
-2002-08-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.66, src/xtra1.c 1.48, src/cave.c 1.55:
-       ¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¥Ð¥°ºÆ½¤Àµ¡£¥Ð¥°¤Î¸¶°ø³ÎÄê¡£update_monsters(TRUE);¤Ç
-       m_ptr->cdis¤ò½é´ü²½¤¹¤ë¤¬¡¢¤½¤Î½é´ü²½¤ÎÁ°¤Ë update_mon_lite(); ¤Ç»È¤Ã¤Æ¤¤¤¿
-       ¤Î¤¬¥Ð¥°¤Î¸¶°ø¤À¤Ã¤¿¡£
-       ¤Þ¤¿¡¢¥â¥ó¥¹¥¿¡¼¤Î¸÷¸»¤ÇÊɤ䥢¥¤¥Æ¥à¤¬¾È¤é¤µ¤ì¤Ê¤«¤Ã¤¿¥Ð¥°¤â½¤Àµ¡£
-
-2002-08-14  habu  <habu@cvs>
-
-       * src/externs.h 1.69.2.2, src/files.c 1.60.2.3, src/autopick.c 1.56.2.2:
-       ¡Ö¥À¥¤¥¹ÌÜnn°Ê¾å¤Î¡×¤Î½¤Àµ¡£nn¤¬°Û¤Ê¤ëÊ£¿ô¤Î¹Ô¤òƱ¤¸¤â¤Î¤È´ª°ã¤¤¤·¤ÆºÇ½é¤Î°ì¹ÔÌܰʳ°¤ÎÅÐÏ¿¤ò¥­¥ã¥ó¥»¥ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-2002-08-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/externs.h 1.75:
-       ¡Ö¥À¥¤¥¹ÌÜnn°Ê¾å¤Î¡×¤Î½¤Àµ¡£nn¤¬°Û¤Ê¤ëÊ£¿ô¤Î¹Ô¤òƱ¤¸¤â¤Î¤È´ª°ã¤¤¤·¤ÆºÇ½é¤Î
-       °ì¹ÔÌܰʳ°¤ÎÅÐÏ¿¤ò¥­¥ã¥ó¥»¥ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-       * src/mspells1.c 1.30:
-       ¼ö¤¤¤¬¥×¥ì¥¤¥ä¡¼¤ÎÈ¿¼Í¤ÇÄ·¤ÍÊ֤äƤ¤¤¿¤Î¤Ç¡¢½¤Àµ¡£project_p()¤Ëflg¤òÅϤ¹¤è¤¦¤Ë¤·¤¿¡£
-
-2002-08-14  habu  <habu@cvs>
-
-       * src/dungeon.c 1.61.2.2:
-       ¥À¥ó¥¸¥ç¥ó¤ËÆþ¤Ã¤¿ºÇ½é¤Î¥¿¡¼¥ó¤Ë¡¢¼«Ê¬¤Ç¸÷¤Ã¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤¬¤Á¤ã¤ó¤È¸÷¤é¤Ê¤¤¥Ð¥°½¤Àµ¡£update_stuff();¤ò2²ó¤Ëʬ¤±¤ÆÆɤó¤Ç¤¤¤¿¤Î¤¬¤Þ¤º¤«¤Ã¤¿¤é¤·¤¤¡£
-
-2002-08-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.61, src/files.c 1.76:
-       ¡Ö¥À¥¤¥¹ÌÜnn°Ê¾å¤Î¡×¤Î½¤Àµ¡£nn¤¬°Û¤Ê¤ëÊ£¿ô¤Î¹Ô¤òƱ¤¸¤â¤Î¤È´ª°ã¤¤¤·¤ÆºÇ½é¤Î
-       °ì¹ÔÌܰʳ°¤ÎÅÐÏ¿¤ò¥­¥ã¥ó¥»¥ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¡£
-
-       * src/dungeon.c 1.65:
-       ¥À¥ó¥¸¥ç¥ó¤ËÆþ¤Ã¤¿ºÇ½é¤Î¥¿¡¼¥ó¤Ë¡¢¼«Ê¬¤Ç¸÷¤Ã¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤¬¤Á¤ã¤ó¤È¸÷¤é¤Ê¤¤
-       ¥Ð¥°½¤Àµ¡£update_stuff();¤ò2²ó¤Ëʬ¤±¤Æ¸Æ¤ó¤Ç¤¤¤¿¤Î¤¬¤Þ¤º¤«¤Ã¤¿¤é¤·¤¤¡£
-
-       * src/spells1.c 1.33:
-       ¼ö¤¤¤¬¥×¥ì¥¤¥ä¡¼¤ÎÈ¿¼Í¤ÇÄ·¤ÍÊ֤äƤ¤¤¿¤Î¤Ç¡¢½¤Àµ¡£project_p()¤Ëflg¤òÅϤ¹¤è¤¦¤Ë¤·¤¿¡£
-
-2002-08-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.60:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Î1¹ÔÌܤÎÀâÌÀ½ñ¤­¤Ë¡¢¸¡º÷¥³¥Þ¥ó¥É¤òÄɲá£
-       ¸¡º÷ʸ»úÎó¤ò»ØÄꤹ¤ëÁ°¤Ë n ¤ä N ¤ò²¡¤·¤¿¤È¤­¤Ë¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd3.c 1.26:
-       ¼«Æ°¹ï¤ß¤Ç¡¢³Æ¼ïESP¤òÎ㤨¤Ð{~¼Ùµð}¤È¤¤¤¦É÷¤Ë¹ï¤à¤è¤¦¤Ë¤·¤¿¡£
-       ±Ñ¸ìÈǤÏ{~Evil~P}¤Ç¤Á¤ç¤Ã¤ÈŤ¤¡£
-
-       * src/generate.c 1.29:
-       vault¤ÎÃæÅù¤Ç³¬Ãʤ¬¥È¥é¥Ã¥×¤ÈƱ¤¸¾ì½ê¤ËÇÛÃÖ¤µ¤ì¤Æ¡¢¥È¥é¥Ã¥×¤òȯ¸«¤·¤¿¤È¤­¤Ë
-       ³¬Ãʤ¬¾Ã¤¨¤ë»ö¤¬¤¢¤Ã¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-2002-08-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.59:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Î»ÈÍÑÃæ¤Ë¤Ï¥×¥ì¥¤»þ´Ö¤Î¥«¥¦¥ó¥È¤¬¿Ê¤Þ¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-08-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.65.2.3, src/mspells2.c 1.21.2.1:
-       ¥Ú¥Ã¥È¤ÎÍò·Ï¤Î¥Ü¡¼¥ëËâË¡¤¬@¤Ë¤«¤¹¤ë¤«¤É¤¦¤«¤ÎȽÄ꤬´Ö°ã¤Ã¤Æ¤¤¤Æ¡¢
-       °ìÈÖ³°Â¦¤Ç¤«¤¹¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¤¿¡£¤½¤Î¾¤Î¥Ü¡¼¥ëËâË¡¤Ç
-       È¾·Â2¤Ê¤Î¤ËȾ·Â3¤È¸íǧ¤·¤Æ¼Í¤¿¤Ê¤¤»ö¤¬¤¢¤Ã¤¿¤Î¤Ç¤½¤ì¤âƱ»þ¤Ë½¤Àµ¡£
-
-       * src/cmd6.c 1.30:
-       ¤µ¤Ã¤­¤Î¥È¥é¥Ã¥×´¶ÃΤν¤Àµ¡¢¥í¥Ã¥É¤Î¤È¤­TRUE¤ÈFALSE¤¬µÕ¤À¤Ã¤¿¤Î¤Ç¡¢ºÆ½¤Àµ¡£
-
-       * src/defines.h 1.71, src/mspells2.c 1.23:
-       ¥Ú¥Ã¥È¤ÎÍò·Ï¤Î¥Ü¡¼¥ëËâË¡¤¬@¤Ë¤«¤¹¤ë¤«¤É¤¦¤«¤ÎȽÄ꤬´Ö°ã¤Ã¤Æ¤¤¤Æ¡¢
-       °ìÈÖ³°Â¦¤Ç¤«¤¹¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¤¿¡£¤½¤Î¾¤Î¥Ü¡¼¥ëËâË¡¤Ç
-       È¾·Â2¤Ê¤Î¤ËȾ·Â3¤È¸íǧ¤·¤Æ¼Í¤¿¤Ê¤¤»ö¤¬¤¢¤Ã¤¿¤Î¤Ç¤½¤ì¤âƱ»þ¤Ë½¤Àµ¡£
-
-       * src/cmd5.c 1.43, src/cmd6.c 1.29, src/dungeon.c 1.64, src/externs.h 1.74, src/mind.c 1.12, src/racial.c 1.21, src/spells2.c 1.46:
-       ¥È¥é¥Ã¥×´¶ÃΤΥ¢¥¤¥Æ¥à¤ò»È¤Ã¤¿¤È¤­¡¢Ì¤È½ÌÀ¤Î¥¢¥¤¥Æ¥à¤ò»È¤Ã¤Æ¤Þ¤ï¤ê¤Ë
-       ¥È¥é¥Ã¥×¤¬Ìµ¤«¤Ã¤¿¤È¤­¤Ï´¶ÃκѤßÈϰϤÎɽ¼¨¤Ë±Æ¶Á¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-2002-07-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.75:
-       ¥À¥ó¥×¤Ë'C'¤Î4¥Ú¡¼¥¸ÌܤòÄɲá£3¥Ú¡¼¥¸ÌܤΥƥì¥Ñ¥·¡¼¤ÎÍó¤Ï·Ù¹ð¤ËÊѹ¹¡£
-
-2002-07-28  henkma  <henkma@cvs>
-
-       * src/mspells1.c 1.29:
-       ¼ö¤¤·Ï¤ÎËâË¡¤¬Èô¤ó¤Ç¤¤¤¯¥¢¥Ë¥á¡¼¥·¥ç¥ó¤¬¸«¤¨¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-       * src/mspells1.c 1.28, src/spells1.c 1.32:
-       ¥â¥ó¥¹¥¿¡¼¤Î¼ö¤¤·Ï¥À¥á¡¼¥¸ËâË¡¤òproject¤Ç°·¤¦¤è¤¦¤Ë¤·, EyeEye¤Î¸ú²Ì¤¬¼ö¤¤·Ï
-       ¤ËÂФ·¤Æ¤âȯư¤¹¤ë¤è¤¦¤Ë¤·¤¿. ¥½¡¼¥¹¤òÂ礭¤¯ÊѤ¨¤ëÊѹ¹¤Ê¤Î¤Ç¤³¤ì¤Ï³«È¯ÈǤΤß.
-
-2002-07-28  habu  <habu@cvs>
-
-       * src/files.c 1.74: ¥À¥ó¥×Ãæ¤Î;·×¤Ê¶õÇò¤òºï½ü¡£
-
-2002-07-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/chuukei.c 1.8: ¥ï¡¼¥Ë¥ó¥°½üµî¡£
-
-       * src/defines.h 1.65.2.2:
-       TRC_P_FLAG_MASK¤Ë¥Õ¥é¥°¤¬Ìµ¤«¤Ã¤¿¤»¤¤¤Ç¡¢¥Á¥§¥ó¥½¡¼¤Î¥é¥ó¥À¥à¥á¥Ã¥»¡¼¥¸¤È
-       ¼ö¤ï¤ì¤Æ¤¤¤Ê¤¤¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È¤Îȯư¤¬½ÐÍè¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-07-26  henkma  <henkma@cvs>
-
-       * src/spells3.c 1.49:
-       EyeEye¤Î¥Ç¥Ð¥Ã¥°¤Î¤È¤­, int¤òÊÖ¤¹´Ø¿ô¤Ë"return;"¤¬»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-2002-07-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.73:
-       ¥À¥ó¥×¤Î¥¯¥¨¥¹¥È¾ðÊó¡¢Ã£À®¥ì¥Ù¥ë¤¬Æ±¤¸¤È¤­¤Ï´í¸±ÅÙ¥ì¥Ù¥ë¤Ç¥½¡¼¥È¡£
-
-2002-07-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.40.2.2:
-       'm'¥³¥Þ¥ó¥É¤ÇËâË¡½ñ¤òÁª¤Ö¤È¤­¡¢{@ma}Åù¤òÈ¿±Ç¤·¤Æ¥ê¥¹¥Èº¸Ã¼¤Îµ­¹æ¤¬ÊѤï¤ë¤è¤¦¤Ë
-       ¤·¤Æ¤¢¤ë¤¬¡¢¤½¤ì¤¬¤Þ¤À¥Ð¥°¤Ã¤Æ¤¤¤Æ¼ÂºÝ¤ÏÁªÂò¤Ç¤­¤ë¤Ï¤º¤ÎËâË¡½ñ¤Îµ­¹æ¤ÎÍ󤬶õÇò¤Ë
-       ¤Ê¤Ã¤Æ¤·¤Þ¤¦»ö¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/help/attack.txt 1.9, lib/help/jattack.txt 1.7:
-       *¥¹¥ì¥¤*¤Î²òÀ⽤Àµ¡£
-
-2002-07-25  henkma  <henkma@cvs>
-
-       * src/spells3.c 1.48, src/cmd1.c 1.47, src/externs.h 1.73, src/melee1.c 1.18, src/spells1.c 1.31:
-       »Í¸µÁǤι¶·â¤ËÂФ·, EyeEye¤¬¤Á¤ã¤ó¤ÈºîÍѤ·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Çľ¤·¤¿.
-       ¼ö¤¤·Ï¤ä¥ª¡¼¥é¥À¥á¡¼¥¸¤Ë´Ø¤·¤Æ¤âºîÍѤ·¤Æ¤¤¤Ê¤¤¤¬, ¤³¤ì¤Ï°Õ¿ÞŪ¤Ê
-       ¤â¤Î¤«¤â¤·¤ì¤Ê¤¤¤Î¤ÇÊÝα.
-
-2002-07-25  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.13.2.1, autopick_eng.txt 1.15.2.1, lib/help/commdesc.txt 1.7.6.1, lib/help/jcommdesc.txt 1.6.6.1, lib/pref/pickpref.prf 1.6.4.1, lib/pref/picktype.prf 1.5.4.1:
-       ¥É¥­¥å¥á¥ó¥ÈÎà¤ò¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Î¸¡º÷µ¡Ç½¤ËÂбþ¡£
-
-2002-07-25  henkma  <henkma@cvs>
-
-       * src/spells3.c 1.46.2.1, src/cmd1.c 1.44.4.1, src/externs.h 1.69.2.1, src/melee1.c 1.17.2.1, src/spells1.c 1.29.2.1:
-       »Í¸µÁǤι¶·â¤ËÂФ·, EyeEye¤¬¤Á¤ã¤ó¤ÈºîÍѤ·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Çľ¤·¤¿. ¼ö¤¤·Ï¤ä
-       ¥ª¡¼¥é¥À¥á¡¼¥¸¤Ë´Ø¤·¤Æ¤âºîÍѤ·¤Æ¤¤¤Ê¤¤¤¬, ¤³¤ì¤Ï°Õ¿ÞŪ¤Ê¤â¤Î¤«¤â¤·¤ì¤Ê¤¤¤Î
-       ¤ÇÊÝα.
-
-2002-07-25  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.14, autopick_eng.txt 1.16, lib/help/commdesc.txt 1.8, lib/help/jcommdesc.txt 1.7, lib/pref/pickpref.prf 1.7, lib/pref/picktype.prf 1.6:
-       ¥É¥­¥å¥á¥ó¥ÈÎà¤ò¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Î¸¡º÷µ¡Ç½¤ËÂбþ¡£
-
-2002-07-24  habu  <habu@cvs>
-
-       * src/files.c 1.72:
-       ¥­¥ã¥é¥¯¥¿¥À¥ó¥×¤Î¥¯¥¨¥¹¥È¾ðÊóɽ¼¨¤òãÀ®¥ì¥Ù¥ë¤Ë¤è¤Ã¤Æ¥½¡¼¥È¤·¤Æɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-07-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/externs.h 1.72, src/files.c 1.71, src/init1.c 1.43, src/init2.c 1.14:
-       ¥À¥ó¥×¤ÎºÇ¸å¤Ëlib/edit/¤Î¥Á¥§¥Ã¥¯¥µ¥à¤òÆþ¤ì¤Æ¤ß¤¿¡£¥½¡¼¥¹¤ò¤¤¤¸¤ì¤Ê¤¤¿Í¤Ø¤Î
-       ÍÞ»ßÎϤò´üÂÔ¡£'N'¤È'D'¤Î¹Ô¤Ï̵»ë¤¹¤ë¤Î¤Ç¡¢´Ä¶­¤¬°ã¤Ã¤Æ¤âƱ¤¸¿ôÃͤˤʤë¤Ï¤º¡£
-
-       * src/cmd4.c 1.51:
-       ¥ª¥×¥·¥ç¥óÀßÄê'='¤Ç¡¢¥Á¡¼¥È¥ª¥×¥·¥ç¥ó¤âhjkl¤ÇÊѤ¨¤é¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¤¢¤È¡¢hjkl¤ò¥Ï¡¼¥É¥³¡¼¥É¤Ë¤»¤º¤Á¤ã¤ó¤ÈkeymapÀßÄê¤Ë¤·¤¿¤¬¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/files.c 1.70:
-       'C'¤Î4¥Ú¡¼¥¸ÌܤÎʸ»ú¤¬¡Öζ ÇÜÂǡפȡÖεESP¡×¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Çζ¤ËÅý°ì¡£
-
-       * src/files.c 1.69:
-       'C'¤Î4¥Ú¡¼¥¸ÌܤÎÉð´ï¤Î¥Õ¥é¥°¤Ï2Îó¤À¤Ã¤¿¤¬¡¢¾¢¤ÎËâË¡·õ¤Î¥Õ¥é¥°¤òɽ¼¨¤¹¤ë°Ù¤Ë
-       3ÎóÌܤË@¤ÎÎó¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/flavor.c 1.20:
-       ÃÃÌê»Õ¤ÎÉð´ï¤Î±Ñ¸ìÈǤǥ­¥ã¥Ô¥¿¥é¥¤¥º¤¬ÊѤÀ¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/files.c 1.68: 'C'¤Î¿·²èÌ̱ѸìÈǤâÂбþ¡£
-
-2002-07-23  henkma  <henkma@cvs>
-
-       * src/mutation.c 1.6:
-       ÆÃÄê¤ÎÊÑ°Û¤òÆÀ¤ä¤¹¤¤¼ï²¤Ç, ÊѰۤμïÎà¤ò»ØÄꤷ¤ÆÊÑ°Û¤¹¤ë¤È¤­,
-       »ØÄꤷ¤¿¤â¤Î¤Ç¤Ï¤Ê¤¯¼ï²ÆÃÍ­¤ÎÊÑ°Û¤ò¤·¤Æ¤·¤Þ¤¦¤³¤È¤¬¤¢¤Ã¤¿¤Î¤Ç
-       Ä¾¤·¤¿.
-
-       * src/mutation.c 1.5.4.1:
-       ÆÃÄê¤ÎÊÑ°Û¤òÆÀ¤ä¤¹¤¤¼ï²¤Ç, ÊѰۤμïÎà¤ò»ØÄꤷ¤ÆÊÑ°Û¤¹¤ë¤È¤­, »ØÄꤷ¤¿¤â¤Î
-       ¤Ç¤Ï¤Ê¤¯¼ï²ÆÃÍ­¤ÎÊÑ°Û¤ò¤·¤Æ¤·¤Þ¤¦¤³¤È¤¬¤¢¤Ã¤¿¤Î¤Çľ¤·¤¿.
-
-2002-07-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/init1.c 1.42:
-       ÇÛÎó¤ÎÂ礭¤µ¤òsizeof¤Ç½ñ¤­Ä¾¤·¤¿¤È¤­¤Ë°ì²Õ½ê¡¢´Ø¿ô¤Î°ú¿ô¤È¤·¤Æ¥Ý¥¤¥ó¥¿ buf ¤¬
-       Í¿¤¨¤é¤ì¤Æ¤¤¤¿¤Î¤òsizeof(buf)¤È¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/cmd4.c 1.50, src/files.c 1.67:
-       'C'¥³¥Þ¥ó¥É¤Ç³Æ¼ïESP¤ò¥Æ¥ì¥Ñ¥·¡¼¤ÎÍó¤ËÄɲÃɽ¼¨¡£
-       ¤µ¤é¤Ë4¥Ú¡¼¥¸Ìܤ˳Ƽ凉¥ì¥¤¡¢³Æ¼ïESP¤È¤½¤Î¾¤Î3¥Ú¡¼¥¸ÌܤËɽ¼¨¤µ¤ì¤Ê¤¤¥Õ¥é¥°¤òÁ´¤Æɽ¼¨¡£
-       ¸Å¤¤4¥Ú¡¼¥¸ÌܰʹߤÏÇÑ»ß(´Ø¿ô¤Ï¥³¥á¥ó¥È¥¢¥¦¥È)¡£
-
-2002-07-21  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.53: ¹¹¿·
-
-2002-07-21  habu  <habu@cvs>
-
-       * src/files.c 1.66:
-       ¥¯¥¨¥¹¥È¥À¥ó¥×ÈùÄ´À°¡£¼¡¤Î¾ðÊó¤È¶õÇò¤ò2¹Ô¶õ¤±¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/files.c 1.65:
-       ¥­¥ã¥é¥¯¥¿¥À¥ó¥×¤Ë¥¯¥¨¥¹¥È¤ÎãÀ®¡¦¼ºÇԤξðÊó¤ò½ÐÎϤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-07-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra1.c 1.47, src/z-util.c 1.3, src/z-util.h 1.2, src/cmd6.c 1.28, src/dungeon.c 1.63, src/externs.h 1.71, src/files.c 1.64, src/inet.c 1.5, src/init1.c 1.41, src/init2.c 1.13, src/japanese.c 1.7, src/load.c 1.38, src/main-dos.c 1.6, src/main-gcu.c 1.8, src/main-ibm.c 1.2, src/main-mac-carbon.c 1.3, src/main-mac.c 1.18, src/main-win.c 1.18, src/main-x11.c 1.17, src/main.c 1.4, src/monster1.c 1.25, src/scores.c 1.9, src/script.c 1.2, src/util.c 1.32, src/wizard1.c 1.25, src/autopick.c 1.58, src/chuukei.c 1.7, src/cmd4.c 1.49:
-       Angband 3.0.0¤«¤é¡¢my_strcpy()¤ò°Ü¿¢('\0'¤ò¤Á¤ã¤ó¤ÈÉÕ¤±¤ëstrncpy()¤Î¤è¤¦¤Ê¤â¤Î)
-       ¤·¤Æ¡¢¤³¤ì¤Ëmb_strlcpy()¤òÅý¹ç¤·¤¿¡£Angband 3.0.0¤Ë¤Ê¤é¤Ã¤Æ´Ø¿ô¤ËÇÛÎó¤Î¥µ¥¤¥º
-       (1024¤È¤«80¤È¤«)¤òÅϤ¹¤È¤­¤Ïsizeof()¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/files.c 1.60.2.2, src/xtra1.c 1.43.2.2:
-       µÕcommit¡£°ÂÄêÈǤǤϻÅÍÍÊѹ¹¤Ï¤·¤Ê¤¤!
-
-       * src/files.c 1.60.2.1, src/xtra1.c 1.43.2.1:
-       ¥¢¥ó¥É¥í¥¤¥É¤Î·Ð¸³ÃͤÎÂå¤ê¤Ë¡Ö¶¯²½Å١פȤ·¤Æɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-07-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd3.c 1.25:
-       ¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È¤Î{.}¤ò¼«Æ°¹ï¤ß¤·¤Æ¤¯¤ì¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/cmd6.c 1.27, src/defines.h 1.69, src/load.c 1.37, src/object1.c 1.43, src/object2.c 1.49:
-       ÃÃÌê»Õ¤â¤¦°ìÅÙ½ñ¤­Ä¾¤·¡£¤É¤¦¤âÇÛÎó¤Îindex == ¥Õ¥é¥°ÈÖ¹æ¤È¤¤¤¦¤Î¤¬¥×¥í
-       ¥°¥é¥à¤Î¥á¥ó¥Æ¥Ê¥ó¥¹¤¬¤·¤Å¤é¤¯¡¢¿·¤·¤¯¥Õ¥é¥°¤òÁý¤·¤¿¤È¤­¤ÎÂбþ¤Ë¤âº¤¤ë
-       ¤Î¤Ç¡¢¥Õ¥é¥°ÈÖ¹æ(ȯư¤Ê¤É¤ÎÆüì¤Ê¤â¤Î¤Ï200°Ê¾å¤ÎÈÖ¹æ¤Ë¤Þ¤È¤á¤¿)¤È¥¨¥Ã
-       ¥»¥ó¥¹ÈÖ¹æ¤Î2¤Ä¶¦¡¢essence_info¤Î¹½Â¤ÂΤÎÃæ¤Ë´Þ¤á¤¿¡£¥¨¥Ã¥»¥ó¥¹ÉղäÎ
-       ¥á¥Ë¥å¡¼¤Ë½Ð¤Æ¤¯¤ë½çÈÖ¤¬¼«Í³¤ËÊѤ¨¤é¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡£
-
-       * src/object2.c 1.48:
-       Éղ乤륨¥Ã¥»¥ó¥¹¤òÁª¤Ö¤È¤­¤Îɽ¼¨¤¬¤º¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/object2.c 1.47:
-       Ëº¤ì¤Æ¤¤¤¿±Ñ¸ìÈǤν¤Àµ¤È¡¢ÁõÈ÷ÊÝ»ý¤ä¥ª¡¼¥éÅù¤Ç¥¨¥Ã¥»¥ó¥¹¤¬Â­¤ê¤Ê¤¤¤È¤­
-       ¤Ë¥á¥Ë¥å¡¼¥ê¥¹¥È¤òÀÖ¤¯É½¼¨¤¹¤ë¤Î¤Ë¼ºÇÔ¤·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * lib/edit/e_info_j.txt 1.24:
-       rgra¤Ç¤ÎÏÃÂê¤è¤ê¡£Ì¥ÏǤÎÌ¥ÎϤΥ¢¥ß¥å¥ì¥Ã¥È¤Î±Ñ¸ì̾¤ò
-       and Monster Turning ¤ËÊѹ¹¡£
-
-2002-07-19  Takeshi Mogami  <mogami@cvs>
-
-       * src/load.c 1.36, src/object1.c 1.42, src/object2.c 1.46, src/cmd6.c 1.26, src/defines.h 1.68:
-       KILL¥Õ¥é¥°¤äESP¥Õ¥é¥°¤òÃÃÌê»Õ¤¬»È¤¨¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd6.c 1.23.2.1, src/object1.c 1.40.2.1:
-       ÃÃÌê»Õ¤ÎÁõÈ÷¤Îȯư¤¬*´ÕÄê*¤Çɽ¼¨¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/object2.c 1.43.2.2:
-       ¿Í´ÖÇÜÂǤȷٹð¤¬Áý¤¨¤¿¤»¤¤¤Ç¡¢ÃÃÌê»Õ¤Î¥¨¥Ã¥»¥ó¥¹¥ê¥¹¥È¤¬°î¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/bldg.c 1.20, src/generate.c 1.28:
-       ¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤Î¥æ¥Ë¡¼¥¯¤¬¤¤¤Ê¤«¤Ã¤¿¤È¤­¤Î½¤Àµ¤¬¤¤¤í¤¤¤í´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤ÇºÆ½¤Àµ¡£
-
-2002-07-18  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/birth.txt 1.8.4.1, lib/help/jbirth.txt 1.7.4.1:
-       ¥Ø¥ë¥×¤ÎMP¤ÎÀâÌÀ¤Ë¤Ò¤È¤³¤È¼ï²ÊäÀµ¤¬´Ø·¸¤¹¤ë»ö¤òÄɲá£
-
-       * src/files.c 1.63, src/xtra1.c 1.46:
-       ¥¢¥ó¥É¥í¥¤¥É¤Î·Ð¸³ÃͤÎÂå¤ê¤Ë¡Ö¶¯²½Å١פȤ·¤Æɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd5.c 1.42, src/cmd6.c 1.25, src/maid-x11.c 1.3, src/main-gcu.c 1.7, src/xtra1.c 1.45, src/xtra2.c 1.46, src/z-util.c 1.2:
-       thangorodorim¤Ë¤¢¤Ã¤¿¥Ñ¥Ã¥Á¤¤¤í¤¤¤í¡£¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¹¹¿·¤ÎÉÔÈ÷¤Î½¤Àµ¡¢
-       ¥â¥ó¥¹¥¿¡¼¤¬¶²Éݤ¹¤ëȽÄê¤ÇHP10%¤ÎÊý¤¬HP1%¤è¤ê¶²Éݤ·¤ä¤¹¤«¤Ã¤¿¥Ð¥°½¤Àµ¡¢
-       main-gcu.c¤Ç½ªÎ»»þ¤Îcursus´ØÏ¢¤Î¸å½èÍý¤Ê¤É¡£
-
-       * src/util.c 1.29.2.1:
-       rgra¤ÇÏÃÂê¤Ë¤Ê¤Ã¤¿keymap¤Î¥Ð¥°½¤Àµ¡£'1','2','3','4','6','7','8','9' ¤Î
-       keymapÀßÄê¤òºï½ü¤¹¤ë¤È¥³¥Þ¥ó¥É¼Â¹ÔÃæ¤ÎÊý¸þ»ØÄê¤Ë¤â»È¤¨¤Ê¤¯¤Ê¤ë¤È¤¤¤¦Êª¡£
-       Angband¤äToME¤Ç¤Ï½¤ÀµºÑ¤ß¡£
-
-       * lib/edit/d_info_j.txt 1.4.2.1, src/monster2.c 1.37.2.1: typo½¤Àµ¡£
-
-2002-07-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/save.c 1.19.2.1, src/dungeon.c 1.61.2.1:
-       hengband -w ¤Ç°úÂष¤¿¥­¥ã¥é¤¬Éü³è¤·¤ÆÉáÄ̤˥ץ쥤³¹Ô¤Ç¤­¡¢»àË´¤·¤¿¥­¥ã¥é¤Ï
-       µ¯Æ°Ä¾¸å¤Ë¤â¤¦°ìÅÙ»à¤ó¤Ç¡¢¤É¤Á¤é¤â¥¹¥³¥¢ÅÐÏ¿¤ò2½Å¤Ë¤Ç¤­¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-2002-07-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/object2.c 1.43.2.1, src/spells2.c 1.41.2.1:
-       ±ÑÌõ½¤Àµ¡£coldly ¢ª coldness (¤Þ¤À»Ä¤Ã¤Æ¤¿)
-
-       * src/bldg.c 1.19, src/cmd4.c 1.48, src/generate.c 1.27:
-       ¥´¥ë¥Õ¥£¥ó¥Ö¡¼¥ëÅù¤ò¸ÇÄꥯ¥¨¥¹¥È¤ÇÀè¤ËÅݤ·¤¿¤È¤­¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤¬Àµ¾ï¤Ë
-       ¥­¥ã¥ó¥»¥ë¤·¤Æ²¼¤ê³¬Ãʤ¬À¸À®¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£¥á¥Ã¥»¡¼¥¸¤Ï
-       ¡Ö¤³¤Î³¬¤Ï°ÊÁ°¤Ï狼¤Ë¤è¤Ã¤Æ¼é¤é¤ì¤Æ¤¤¤¿¤è¤¦¤À¡Ä¡£¡×
-       ¡ÔãÀ®¤·¤¿¥¯¥¨¥¹¥È¡Õ
-       ¡Ö¥´¥ë¥Õ¥£¥ó¥Ö¡¼¥ë (6³¬) - ÉÔÀᄀ¡×
-       Åù¡£
-
-2002-07-14  habu  <habu@cvs>
-
-       * src/flavor.c 1.19:
-       TR_FULL_NAME¥Õ¥é¥°¤ò»ý¤Ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬¡Ö¥Ñ¥é¥ó¥Æ¥£¥¢¤ÎÀХѥé¥ó¥Æ¥£¥¢¤ÎÀСפΤ褦¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-07-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.44.2.1:
-       ¥í¥°¥ë¥¹»È¤¤¤Î¥¯¥¨¥¹¥È¤Ç¡¢¡Ö¥¯¥¨¥¹¥È¤òãÀ®¤·¤¿¡×¤Î¥á¥Ã¥»¡¼¥¸¤¬½Ð¤Ê¤¤¥Ð¥°½¤Àµ¡£
-       Zangband228¤Î¥³¡¼¥É¤Î¥Ð¥°¤À¤Ã¤¿¡£
-
-2002-07-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster1.c 1.24, src/util.c 1.30:
-       ¥â¥ó¥¹¥¿¡¼¤Î»×¤¤½Ð¤ò2¸Ä½ê¤Ç²þ¹Ô¤·¤Æ¸«°×¤¯¤·¤¿¡£
-
-       * lib/edit/a_info_j.txt 1.25:
-       hoge¤µ¤ó¤Î¥³¥á¥ó¥È¤ò¤Ï¤º¤·¤Æ¥Õ¥¡¥ê¥¹¤Î¥í¥ó¥°¡¦¥½¡¼¥É¤ÎSLAY¤òKILL¤Ë¤·¤¿¡£
-
-       * src/autopick.c 1.56.2.1:
-       prev_ptr¤Èk¤¬°ìÉô½é´ü²½Á°¤Ë»È¤Ã¤Æ¤¤¤ë¤È¤¤¤¦warning¤¬½Ð¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£¼Â³²¤Ï¤Ê¤«¤Ã¤¿¤¬¡£
-
-       * src/load.c 1.35:
-       ¸Å¤¤¥Ð¡¼¥¸¥ç¥ó¤Î¥»¡¼¥Ö¥Ç¡¼¥¿¤òÆɤॳ¡¼¥É¤Çc_ptr¤ÎÀßÄê¤ò˺¤ì¤Æ»È¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/files.c 1.62:
-       'C'¤ÇÌȱ֤Îɽ¼¨¤¬¥Ð¥°¤Ã¤ÆÏÓÎϤòÁý¤¹¥¢¥¤¥Æ¥à¤ÏÁ´¤Æ¤ÎÌȱ֤¬¤¢¤ë¤«¤Î¤è¤¦¤Ë
-       É½¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/spells2.c 1.44:
-       ¼«¸ÊʬÀϤò¤·¤¿¤È¤­ESP¥ª¡¼¥¯¤À¤±É½¼¨¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/edit/f_info_j.txt 1.8, src/cave.c 1.54, src/cmd1.c 1.46, src/defines.h 1.67, src/generate.c 1.26, src/rooms.c 1.16, src/spells2.c 1.43:
-       æ«¥Ô¥Ã¥È¤Î¼ÂÁõ¡£FEAT_INVIS¤òȯ¸«Á°¤Î³«Ìç¥È¥é¥Ã¥×¤È¤·¤ÆήÍÑ¡£
-
-       * src/spells1.c 1.30, src/spells2.c 1.42, src/spells3.c 1.47, src/store.c 1.17, src/types.h 1.22, src/wizard1.c 1.24, src/wizard2.c 1.25, src/xtra1.c 1.44, src/bldg.c 1.18, src/cmd1.c 1.45, src/cmd2.c 1.30, src/cmd3.c 1.24, src/cmd4.c 1.47, src/cmd6.c 1.24, src/defines.h 1.66, src/externs.h 1.70, src/files.c 1.61, src/flavor.c 1.18, src/hissatsu.c 1.13, src/init1.c 1.40, src/load.c 1.34, src/melee2.c 1.27, src/monster2.c 1.38, src/mspells1.c 1.27, src/mspells2.c 1.22, src/object1.c 1.41, src/object2.c 1.44, src/save.c 1.20, configure.in 1.19, lib/edit/a_info_j.txt 1.24, lib/edit/e_info_j.txt 1.23, lib/edit/k_info_j.txt 1.30, lib/file/news.txt 1.13, lib/file/news_j.txt 1.12, src/artifact.c 1.25:
-       branch-mogami-TR ¤ò¥Þ¡¼¥¸¡£¥Ð¡¼¥¸¥ç¥ó¤ò1.3.0¤Ë¾å¤²¤¿¡£
-       ¿·¤·¤¯Áý¤¨¤¿art_flags[3]¤ò¥»¡¼¥Ö¤¹¤ë¤è¤¦¤Ë¤·¤Æ¡¢
-       ¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¥Ð¡¼¥¸¥ç¥ó¤ò1.3.0.0¤Ë¾å¤²¤¿¡£
-
-       * configure.in 1.18.2.1, lib/file/news.txt 1.12.2.1, lib/file/news_j.txt 1.11.2.1, src/defines.h 1.65.2.1:
-       ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò1.2.0¤Ë¾å¤²¤¿¡£
-
-       * Changelogs 1.52: ¹¹¿·
-
-       * lib/edit/r_info_j.txt 1.45, src/mspells1.c 1.26: ÂçÏɤò¶¯¤¯¤·¤¿¡£
-
-2002-07-13  hoge  <hoge@cvs>
-
-       * lib/edit/a_info_j.txt 1.23, src/xtra1.c 1.43: ¥Ò¡¼¥í¡¼¥Ð¥°½¤Àµ
-
-2002-07-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.56:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Îµ¯Æ°»þ¤Ë¥²¡¼¥à¤ò¼«Æ°¥»¡¼¥Ö¤¹¤ë¡£¥¨¥Ç¥£¥¿¤ò½ªÎ»¤·¤Æ¤«¤é
-       100¥¿¡¼¥ó°ÊÆâ¤ËºÆµ¯Æ°¤·¤¿¤È¤­¤Ï¼«Æ°¥»¡¼¥Ö¤Ï¾Êά¡£
-
-2002-07-09  henkma  <henkma@cvs>
-
-       * src/xtra2.c 1.44:
-       ¥¯¥¨¥¹¥ÈãÀ®»þ¤Ë, ³¬Ãʤ¬¶À¤Î¾å(²¼¡©)¤Ëºî¤é¤ì¤ë¤Î¤ò¶Ø»ß.
-
-2002-07-08  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.44: ¥É¥ë¥¸¤Î·Ð¸³ÃÍȾ¸º¡£
-
-       * lib/edit/r_info_j.txt 1.43:
-       ÂçÏɤηи³ÃÍŬÅö¤Ë½¤Àµ¡£¥¨¥ª¥°¥´¡¼¥ì¥à¤ÎÀâÌÀÏÂÌõÄûÀµ¡£
-
-       * lib/edit/r_info_j.txt 1.42:
-       ¥Ç¥£¥ª¥Ë¥½¥¹¤ÎÀâÌÀʸ¤Ç¶õÇò¤¬È´¤±¤Æ¤¤¤¿¤Î¤òÄɲá£
-
-       * src/xtra2.c 1.43:
-       Kieron¤µ¤ó¤«¤é¤ÎÊó¹ð¤Ç¡¢Å¹¤ÎÃæ¤Ç¥¢¥ó¥É¥í¥¤¥É¤¬ÁõÈ÷¤òÊѤ¨¤Æ¥ì¥Ù¥ë¤¬¾å²¼¤·¤¿¤È¤­
-       Å¹¤ÎÃæ¤Ê¤Î¤Ë'@'¤¬É½¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-07-07  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/d_info_j.txt 1.4: ¥³¥á¥ó¥ÈÄɲá£
-
-       * lib/edit/d_info_j.txt 1.3, lib/edit/r_info_j.txt 1.41, src/defines.h 1.65, src/monster2.c 1.37, src/mspells1.c 1.25, src/mspells2.c 1.21:
-       ÂçÏɤò¶¯²½¡£SPECIAL¤Î¹ÔÆ°¤È¤·¤Æ¡¢¡Ö@¤òÄϤó¤Ç¶õÃ椫¤éÍ(=°ú¤­Ìᤷ+¥À¥á¡¼¥¸2d8)¡×
-       ¤È¡ÖµÞ¾å¾º¤·¤Æ½Ö»þ¤Ë°ÜÆ°(=¥·¥ç¡¼¥È¥Æ¥ì¥Ý¡¼¥È¡×¤ò¼ÂÁõ¡£
-       ÂçÏɤÈÂçÏɤΥæ¥Ë¡¼¥¯¤ÏÁ´¤Æ¤³¤ì¤ò»È¤¦+¥¹¥Ô¡¼¥É¤ò®¤¯¤·¤ÆHP¤òÁý¤·¤¿¡£
-       ¤µ¤é¤Ë¥æ¥Ë¡¼¥¯3ÂΤΤßSUMMON_KIN¤ÇÂçÏɤò¸Æ¤Ö(¥æ¥Ë¡¼¥¯²Ä)¡£
-
-       * src/xtra2.c 1.42:
-       'l'ook¥³¥Þ¥ó¥É¤Ç¡¢¥ì¥Ù¥ë¥¢¥Ã¥×¤Þ¤Ç¤ËɬÍפʿô [???] ¤¬¤¿¤Ì¤­¤ò¹Íθ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-07-07  henkma  <henkma@cvs>
-
-       * src/spells2.c 1.41:
-       *Ç˲õ*, ÃϿ̤λþ, ¶À¤¬ÊɤÎÃæ(¾å¡©)¤Ë»Ä¤Ã¤¿¤Þ¤Þ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¾Ãµî¤¹¤ë¤è¤¦¤Ë¤·¤¿.
-
-       * src/spells1.c 1.29:
-       Ê¬²ò¥Ö¥ì¥¹¤Ç¶À¤¬²õ¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç²õ¤ì¤ë¤è¤¦¤Ë½¤Àµ. ²õ¤ìÊý¤ÏÁ°¤ÈƱ¤¸¤Ç, Ã±¤Ë¾Ã¤¨¤ë¤À¤±.
-
-2002-07-07  habu  <habu@cvs>
-
-       * Makefile.am 1.2: EXTRA_DIST¤Ëhengband.spec¤òÄɲá£
-
-       * hengband.spec 1.1: TOW¤µ¤óºî¤ÎRPM¥Ñ¥Ã¥±¡¼¥¸ÍÑspec¥Õ¥¡¥¤¥ë¤òÄɲá£
-
-2002-07-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.40:
-       ËâË¡½ñÁªÂò»þ¤Î¥ê¥¹¥Èɽ¼¨¤Ç¡¢a) b) ¤ÎÍó¤Ï @mc @md Åù¤Î¹ï¤ß¤òÈ¿±Ç¤·¤ÆÊѤï¤ë¤¬¡¢
-       @mw¤È@mzµÚ¤ÓÂçʸ»ú¤Ç@mAÅù¤È¹ï¤ó¤Ç¤¢¤ë¤Èɽ¼¨Í󤬶õÇò¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/xtra2.c 1.41:
-       'l'ook¥³¥Þ¥ó¥É¤Ç¥ì¥Ù¥ë???¤Îɽ¼¨¤¬¡¢¤¿¤Ì¤­¤È¤¢¤ä¤·¤¤±Æ¤ò¹Íθ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-07-06  henkma  <henkma@cvs>
-
-       * src/store.c 1.16: Ç˼٤ÎËܤâËâË¡½ñ²°¤ÇÇä¤ì¤ë¤è¤¦¤Ë¤·¤¿.
-
-       * src/spells1.c 1.28:
-       ¥È¥é¥Ã¥×À¸À®¤Î¤È¤­, ¶À¤Î¾å¤Ë¤âÀ¸À®¤µ¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ.
-
-       * src/xtra2.c 1.40:
-       Å¨¤¬¶À¤Î¾å¤Ë¤¤¤ë¤È¤­, ¡Ö¡Á¤Ï¶À¤Î¾å¤Ë¤¤¤ë¡×¤¬½Ð¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¿¤Î¤Ç
-       ½Ð¤ë¤è¤¦¤Ë¤·¤¿.
-
-2002-07-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.55:
-       ^WÅù¤Î¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ¹Ô¤ÎÆâÍƤ¬´°Á´¤Ë¾Ã¤¨¤ë¤È¤­(¤Þ¤¿¤Ï¡¢¡Ö·¤¡×Åù¤Î°ìÉô¤Î
-       Ì¾»ì·¿¤Î¥­¡¼¥ï¡¼¥É¤À¤±¤¬»Ä¤ë¤È¤­)¤ËÊѶòÈÚÅܤ¬Íî¤Á¤ë¤Î¤ò½¤Àµ¡£
-
-       * src/load.c 1.33:
-       ¥È¥é¥Ã¥×̤´¶ÃÎ¥°¥ê¥Ã¥É¤Îɽ¼¨¤ò¼ÂÁõ¤¹¤ë°ÊÁ°¤Î¥Ð¡¼¥¸¥ç¥ó¤Î¥»¡¼¥Ö¥Ç¡¼¥¿¤ò
-       ¥í¡¼¥É¤¹¤ë¤ÈÉô²°¤Î³°Êɤ¬Á´Éô¶À¤ËÊѤï¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°¤ò½¤Àµ¡£
-
-       * src/autopick.c 1.54:
-       ¥æ¡¼¥¶¡¼¥Õ¥©¥ë¥À¤Ëpicktype.prf¤À¤±¤¬¤¢¤Ã¤Æ¡¢picktype-<̾Á°>.prf¤¬Ìµ¤¤¤È¤­¤Ë¤Ï¡¢
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Ïpicktype.prf¤À¤±¤òÆɤ߽ñ¤­¤·¤Æ¡¢picktype-<̾Á°>.prf¤ò¾¡¼ê¤Ë
-       ºî¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-07-04  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/joption.txt 1.13, lib/help/option.txt 1.14, src/cmd4.c 1.46, src/dungeon.c 1.61, src/externs.h 1.69, src/spells3.c 1.46, src/tables.c 1.45, src/variable.c 1.28:
-       ´Ê°×´ÕÄꤷ¤¿½Ö´Ö¤È¡¢ËâË¡¤ä¥¢¥¤¥Æ¥à¤ò»È¤Ã¤Æ´ÕÄꤷ¤¿½Ö´Ö¤Ë¡¢¼«Æ°Ç˲õ¤òŬ
-       ÍѤ¹¤ë¤«¤É¤¦¤«¤òdestroy_feeling ¥ª¥×¥·¥ç¥ó¤È destroy_identify ¥ª¥×¥·¥ç
-       ¥ó¤ÇÀßÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/autopick.c 1.53:
-       '~'¤Î¼«Æ°½¦¤¤¥ê¥¹¥È¤«¤é¤â»ÈÍѤ·¤Æ¤¤¤ë autopick_line_from_entry() ¤Î»ÅÍͤò
-       ÉÔÍÑ°Õ¤ËÊѤ¨¤Æ¡¢»ÈÍÑÃæ¤Îentry¤òfree¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-07-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.52:
-       "¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È"+¥­¡¼¥ï¡¼¥É¤Ç¤Ê¤¤Ê¸»úÎ󡢤Ȥ¤¤¦ÁȤ߹ç¤ï¤»¤Ë¤Ï
-       ¶èÀڤ국¹æ¤¬É¬Í×(¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î´¬Êª¤ËÂФ¹¤ëÂкö)¤Ê¤Î¤Ë¡¢
-       ^X¤ÇÀڤ괹¤¨¤¿¤È¤­¤ËÉÕ¤±Ëº¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ¡Ö¥¨¥´¤Ê¤ó¤È¤«¡×¢ª¡Ö¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È:¤Ê¤ó¤È¤«¡×¤È¤¤¤¦É÷¤Ë¤¹¤ë¡£
-
-2002-07-01  habu  <habu@cvs>
-
-       * src/spells2.c 1.40:
-       self_knowledge()¤Çº®Í𹶷â¤Îɽ¼¨¤¬¤Ê¤¼¤«½ÅÊ£¤·¤Æ¤¤¤¿¤Î¤Çºï½ü¡£
-
-2002-06-30  henkma  <henkma@cvs>
-
-       * src/spellstips.h 1.24: tips¤ËÂçÎ̤Îtypo¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2002-06-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/melee2.c 1.26:
-       ¿²¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤Ï̵Ũ¡¢²Ã®¡¢¸ºÂ®¤Î¥«¥¦¥ó¥¿¤¬¸º¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢
-       ¸º¤ë¤è¤¦¤Ë¤·¤¿¡£Û¯Û°¡¢º®ÍðÅù¤Ï¸½¹Ô¤Î¤Þ¤Þ(¸º¤é¤Ê¤¤)¡£
-
-       * src/wizard2.c 1.24:
-       ^Ac¤ÇINSTA_ART¤Î¡ú¤òºîÀ®¤·¤¿¤È¤­¡¢ÄɲÃÂÑÀ­Åù¤âÀµ¾ï¤ËÉÕ¤¯¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/dungeon.c 1.60, src/effects.c 1.25:
-       ±Ñʸ½¤Àµ¡£°ì»þŪ¸ú²Ì¤¬ÉÕ¤¤¤¿¤È¤­¤ÎÀâÌÀ¤Ï¸½ºß·Á¤¬Àµ¤·¤¤¡£
-
-2002-06-28  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.51: ¹¹¿·
-
-       * src/monster1.c 1.23:
-       WILD_ONLY¤¬ÉÕ¤¤¤Æ¤¤¤ë¥â¥ó¥¹¥¿¡¼¤Ç¡¢WILD_MOUNTAIN¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¥â¥ó¥¹¥¿¡¼¤Ç¤â
-       »³¤Ç½Ð¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-06-28  habu  <habu@cvs>
-
-       * lib/edit/v_info_j.txt 1.5:
-       ¥Ñ¥¿¡¼¥óvault¤Ç¥Ñ¥¿¡¼¥ó¤¬Â³¤¤¤Æ¤¤¤Ê¤¯¤Æ¿Ê¤á¤Ê¤¤Éôʬ¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-06-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.45, src/defines.h 1.64, src/dungeon.c 1.59:
-       ¥é¥ó¥À¥à¥¯¥¨¥¹¥ÈÃæ¤Ë¥Ñ¥¿¡¼¥óvault¤Ç¥Æ¥ì¥Ý¡¼¥È¤·¤¿»þ¤ËÍî¤Á¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-06-28  habu  <habu@cvs>
-
-       * src/chuukei.c 1.6: init_chuukei¤ÎÀë¸À¤ò()¤È¾Êά¤»¤º¤Ë(void)¤È¤·¤¿¡£
-
-2002-06-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.48:
-       ¥­¥ã¥é¥¯¥¿¡¼ºîÀ®¤Ç¡¢'S'¤ÇºÆ¥¹¥¿¡¼¥È¤·¤Æ¥¯¥¤¥Ã¥¯¥¹¥¿¡¼¥È¤·¤¿¤È¤­¡¢
-       mp_ptr ¤Î½é´ü²½¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-06-27  henkma  <henkma@cvs>
-
-       * src/store.c 1.15:
-       ²æ¤¬²È¤Ç(Page xx)¤«¤é(Page x)¤Ë°Ü¤ë¤È¤­¤ËºÇ¸å¤Î¥³¥Ã¥«¤¬¥´¥ß¤Ë¤Ê¤Ã¤Æ»Ä¤Ã¤Æ¤¿¤Î¤ò½¤Àµ.
-
-2002-06-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.44, src/defines.h 1.63, src/externs.h 1.68, src/files.c 1.60, src/load.c 1.32, src/main-mac-carbon.c 1.2, src/save.c 1.19, src/scores.c 1.8, src/variable.c 1.27, src/wizard1.c 1.23:
-       - ¥»¡¼¥Ö¥Õ¥¡¥¤¥ëÍѤÎÆÈΩ¤·¤¿¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òƳÆþ¤·¡¢¥Ð¡¼¥¸¥ç¥óÈæ³Ó´Ø¿ô
-         h_older_than() ¤òƳÆþ¤·¤¿¡£¿ô»ú¤ò4¤ÄÁ´¤Æ»ØÄꤷ¤ÆÈæ³Ó¤¹¤ë¡£
-       - ºÇ½é¤Î¥Ð¡¼¥¸¥ç¥ó¤Ï 1.1.1.0 ¤Ë¤·¤¿¡£º£¸å(h_ver_minor¤¬´ñ¿ô=³«È¯ÈÇ¡¢¶ö¿ô=°ÂÄêÈÇ)
-         ¤âºÇ½é¤Î»°·å¤Ï¡Ö³«È¯ÈǡפΥС¼¥¸¥ç¥ó¤ÈƱ¤¸¿ô»ú¤Ç¸ÇÄꤹ¤ë¤Î¤¬Îɤ¤¤È»×¤¦¡£
-       - ÀΤΥ»¡¼¥Ö¥Õ¥¡¥¤¥ë¤Ï¥Ð¡¼¥¸¥ç¥ó 0.0.0.3 ¤È¤·¤Æ¥í¡¼¥É¤µ¤ì¤ë¡£
-         (¸Å¤¹¤®¤Æ¤â¤Ï¤ä̵°ÕÌ£¤À¤Ã¤¿"SAVEFILE_VERSION"¤Îµ­²±°ÌÃÖ¤òήÍѤ·¤¿¤¿¤á¡£)
-       - ¸Å¤¯¤Æ´°Á´¤Ë̵°ÕÌ£¤À¤Ã¤¿V¤äZ¤Î¸Å¤¤¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¥³¡¼¥É¤òºï½ü¤·¤¿¡£
-       - main-mac-carbon.c¤¬¤¤¤Þ¤À¤ËVARSION_MAJORÅù¤ÎV¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»È¤Ã¤Æ¤¤¤¿
-         ¤Î¤Ç½¤Àµ¡£ºÇ¿·ÈǤËÃÖ¤­ÊѤ¨¡£
-
-2002-06-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd5.c 1.41: ±Ñ¸ìÈÇ̤Ìõ¡£'U'nnamed¤ÎÀâÌÀʸ¡£
-
-       * src/cmd5.c 1.40:
-       MP¤¬Â­¤ê¤Ê¤¤¤È¤­¤Ë¡Ö½½Ê¬¤Ê¥Þ¥¸¥Ã¥¯¥Ý¥¤¥ó¥È¤¬¤Ê¤¤¡×¤Î¥á¥Ã¥»¡¼¥¸¤Î¸å¡¢
-       flush_failure ¤¬¥ª¥ó¤Ç¤âÆþÎϤò¥¯¥ê¥¢¤·¤Æ¤¤¤Ê¤«¤Ã¤¿
-       (±Ó¾§¤Ë¼ºÇÔ¤·¤¿¤È¤­¤Ï¤Á¤ã¤ó¤È¥¯¥ê¥¢¤¹¤ë)¤Î¤Ç¡¢¥¯¥ê¥¢¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-06-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.58:
-       È¿Ëâˡƶ·¢¤Ç The arena absorbes all .....¤Èɽ¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç¡¢
-       The dungeon absorbes ¤Ë½¤Àµ¡£
-
-       * src/monster2.c 1.36:
-       ´Ö°ã¤Ã¤Æ¡¢(mode | PM_IGNORE_TERRAIN)¤È½ñ¤¤¤Æ¤¤¤¿¤Î¤Ç¡¢(mode & PM_IGNORE_TERRAIN)¤Ë½¤Àµ¡£
-
-       * src/monster1.c 1.22:
-       ±Ñ¸ìÈǤΥâ¥ó¥¹¥¿¡¼¤Î»×¤¤½ÐÃæ¤Î®ÅÙ¤Îɽ¼¨¤Ë¥¹¥Ú¡¼¥¹ÉÔ­¡£½¤Àµ¡£
-
-2002-06-25  henkma  <henkma@cvs>
-
-       * src/cave.c 1.53, src/dungeon.c 1.57, src/spells1.c 1.27, src/spells2.c 1.39, src/spells3.c 1.45:
-       ¶À¤òÃÖ¤¯¤È¤½¤Î¾ì½ê¤Ï¸÷¤ë. ¤¿¤À¤·°Å°Ç¤Îƶ·¢¤Ç¤Ï¶À¤¬¾Ã¤¨¤ë¤È¤½¤Î¾ì½ê¤Ï¸÷¤Ã¤Æ¤¤¤Ê
-       ¤¤¾õÂÖ¤ËÌá¤ë.
-
-2002-06-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.51: ÀßÄê¹Ô¤ÎÀâÌÀʸ¤Ë % ¤ä %all Åù¤ÎÀâÌÀÄɲá£
-       ^L ¤Î¥³¥Þ¥ó¥ÉÀâÌÀ¤¬½é´ü²½¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-06-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/d_info_j.txt 1.2, lib/edit/r_info_j.txt 1.40, src/monster1.c 1.21:
-       »³¤ËÂçÏɤ¬½Ð¤ë¤è¤¦¤Ë¡¢¥â¥ó¥¹¥¿¡¼¥Õ¥é¥°¤ËWILD_MOUNTAIN¤ò´Þ¤à¥À¥ó¥¸¥ç¥ó¤Ç¤Ï¡¢
-       WILD_ONLY¤Î¥â¥ó¥¹¥¿¡¼¤â½Ð¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¤ò¥½¥í¥ó¥É¡¼¥ë¤ËÀßÄê¡¢ESCORT¤ÈESCORTS¤òÉÕ¤±¤Æ¡¢¼Â¸³ÍѤË
-       ¥ì¥Ù¥ë¤À¤±55¤Ë¾å¤²¤Æ¤ª¤¤¤¿¡£¤½¤Î¾¤ÎÂçÏÉ¥æ¥Ë¡¼¥¯¤â¤Ê¤ë¤Ù¤¯½Ð¤ë¤è¤¦¤Ë
-       ¥ì¥¢¥ê¥Æ¥£1¤Ë¤·¤¿¡£¼ÂºÝ¤Ë¶¯¤µ¤òÊѤ¨¤ë¤Î¤Ï¼ê¤ò½Ð¤·¤Æ¤¤¤Ê¤¤¡£
-
-       * lib/file/rumors.txt 1.2:
-       typo: is a plenty of longswords -> are plenty of longswords
-
-       * src/object1.c 1.39: typo: it will attempts -> it will attempt
-
-       * lib/edit/q00000ms_j.txt 1.3:
-       M$¥¯¥¨¥¹¥È¤Ç¡¢¥É¥¢¤Ç¤¢¤ë¤Ù¤­¾ì½ê¤¬Æ»¤ÎÃÏ·Á¤À¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/autopick.c 1.50: ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿²þÎÉ¡£
-       - ¥³¥Þ¥ó¥É¥â¡¼¥É¤Ç¡¢'!'¡¢'~'¡¢'('¥­¡¼¤¬ÊØÍø¤Ë¤Ê¤Ã¤¿¡£
-         Â³¤±¤Æ²¡¤¹¤ÈÊ£¿ô¤Î¹Ô¤ò°ìÅÙ¤ËÀڤ괹¤¨¤é¤ì¤ë¡£
-       - ^K¤Ç¶õ¹Ô¤ò´Þ¤àÊ£¿ô¹Ô¤ò¥«¥Ã¥È¤·¤¿¸å¤Ç¡¢¥Ú¡¼¥¹¥È¤·¤¿¤È¤­¤Á¤ã¤ó¤È¶õ¹Ô¤â
-         ´Þ¤á¤ÆÄ¥¤êÉÕ¤±¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd2.c 1.29, src/cmd4.c 1.43:
-       ´Êñ¶ò¤è¤ê¡¢²èÌ̼̿¿¤Î¥­¥ã¥ó¥»¥ë¤ò²Äǽ¤Ë¤·¤¿¡£
-       ³¬ÃʤÇÃϾå¤Ë½Ð¤ë¤È¤­¤Ï¥á¥Ã¥»¡¼¥¸¤òÊѤ¨¤ë¡£
-
-2002-06-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.29:
-       ¥­¥ã¥é¥¯¥¿ºîÀ®Ãæ¤Î¡Ö¤è¤í¤·¤¤¤Ç¤¹¤«¡© [y/n]¡×¤Ê¤É¤¬¥á¥Ã¥»¡¼¥¸ÍúÎò¤Ë»Ä¤Ã¤Æ
-       ¤¤¤¿¤Î¤Ç¡¢¥×¥ì¥¤Ãæ¤Î¼ÁÌ䤷¤«»Ä¤µ¤Ê¤¤¤è¤¦¤Ë get_check_strict()¤ò½¤Àµ¡£
-
-       * lib/edit/a_info_j.txt 1.22.2.3, lib/edit/e_info_j.txt 1.21.2.3, lib/edit/k_info_j.txt 1.26.2.1, src/artifact.c 1.24.2.3, src/defines.h 1.59.2.4, src/flavor.c 1.17.2.2, src/init1.c 1.39.2.3, src/object2.c 1.41.2.4:
-       - ¡ù¤Ë¤Ï¶¯¤¤ESP(TELEPATHY, EVIL, NONLIVING)¤Î¤¦¤Á1¤Ä¤«¡¢¤Þ¤¿¤Ï¾¤Î¼å¤¤ESP 1d3¤¬ÉÕ¤¯¡£
-       - ÄɲÃǽÎϤˤÏ2/10¤Ç¼å¤¤ESP¤¬1¤ÄÉÕ¤¯¡£
-       - ±ÔÉҤ϶¯¤¤ESP¤«¼å¤¤ESP1d3¸Ä¡£¥Æ¥ì¥Ñ¥·¡¼´§¤ÏξÊý¡£
-       - ¡ú¤ËKILL_ORC¤ä¤éKILL_DEMON¤ä¤é¤¤¤¯¤Ä¤«Éղá£
-       - TR_FULL_NAME¤Î¼ÂÁõ¡£¥Ù¡¼¥¹Ì¾ Palantir ¢ª Crystal Ball Åù
-
-       * src/dungeon.c 1.56:
-       ¥Ñ¥¿¡¼¥ó¤ò»È¤Ã¤¿³¬¤ò»ØÄꤷ¤¿¥Æ¥ì¥Ý¡¼¥È¤Çmindepth¤ò̵»ë¤·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * Changelogs 1.50: ¹¹¿·
-
-       * src/monster1.c 1.20, src/monster2.c 1.35, src/spells3.c 1.44:
-       ¥¯¥í¡¼¥óÃϹö¤Ç¤ÎÆæ¤Î¥â¥ó¥¹¥¿¡¼¤Î¥Ð¥°½¤Àµ¡£¤³¤Î¥Ð¥°¤Ï3¤Ä¤Î¥Ð¥°¤ÎÊ£¹ç¤À¤Ã¤¿¡£
-       ¡¦°Å¤¤·ê¤Î¾å¤Ï¾¤´­ÉÔ²Äǽ¤À¤¬¡¢¥â¥ó¥¹¥¿¡¼¤ÎÊѿȸå¤ÎÇÛÃÖ¤âÉÔ²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤¿(¥Ð¥°1)
-       ¢ª °Å¤¤·ê¤ËÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤¬Ê⤤¤ÆÆþ¤ì¤ë(¥Ð¥°2)
-       ¢ª ÊѿȤÇÇÛÃÖ¼ºÇÔ(1.0.11°ÊÁ°¤Ï¤½¤Î¸å¤ÇÂçÄñ¥¯¥é¥Ã¥·¥å(¥Ð¥°3a))
-       ¢ª (1.1.0RC°Ê¹ß)ÇÛÃÖ¼ºÇԤˤâ´Ø¤ï¤é¤º¶¯°ú¤Ëm_list[hack_m_idx_ii]¤ò¸µ¤Î¥â¥ó¥¹¥¿¡¼¤Î¥Ç¡¼¥¿¤Ç¾å½ñ¤­¤·¤è¤¦¤È¤¹¤ë¡£(¥Ð¥°3b)
-       ¢ª hack_m_idx_ii¤Ï̤ÄêµÁ¤Ê¤Î¤ÇÁ´Á³´Ø·¸Ìµ¤¤°ÌÃÖ¤Îm_list¤òÇ˲õ¤·¤Æ¤·¤Þ¤¦¡£
-       ¢ª Ç˲õ¤µ¤ì¤¿¥â¥ó¥¹¥¿¡¼¤¬¸µµï¤¿°ÌÃÖ¤Îcave[y][x].m_idx¤¬»Ä¤ë
-          (= »à¤ó¤Ç¤â»à¤Ê¤Ê¤¤Ææ¤Î¸«¤¨¤Ê¤¤¥â¥ó¥¹¥¿¡¼(¤¿¤Þ¤¿¤Þml==TRUE¤Î¤È¤­)¡¢
-           ¤Þ¤¿¤Ï¡Ö¥×¥ì¥¤¥ä¡¼¡×(¤¿¤Þ¤¿¤Þml==FALSE¤Î¤È¤­))¡£
-
-2002-06-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.38:
-       ¥¢¥¤¥Æ¥àÁªÂò»þ¤Ë'('¤È')'¤Ç1¤ÄÌܤȺǸå¤Î¥¢¥¤¥Æ¥à¤òÁªÂò¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/autopick.c 1.49:
-       ¡Ö¥Ñ¥¿¡¼¥ó¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó¡×¤Î¥á¥Ã¥»¡¼¥¸¤¬¡¢'n'¤È'N'¤Ç¤Ïɽ¼¨¤µ¤ì¤Æ¤¤¤¿¤±¤ì¤É¡¢
-       '/'¤Ç¤Ïɽ¼¨¤µ¤ì¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/autopick.c 1.48:
-       ¼¡¤ò¸¡º÷'n'¡¢1¤ÄÁ°¤ò¸¡º÷'N'¤òÄɲ᣸«ÉÕ¤«¤é¤Ê¤«¤Ã¤¿¤È¤­¤Ï
-       ÀâÌÀʸÎΰè¤Ë¡Ö¥Ñ¥¿¡¼¥ó¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó: ¡×¤Èɽ¼¨¡£
-
-       * lib/help/pref.txt 1.14, autopick.txt 1.13, autopick_eng.txt 1.15, lib/help/jpref.txt 1.11:
-       ¥­¡¼¥ï¡¼¥É¤Î½çÈÖ¤¬¼«Í³¤Ë¤Ê¤Ã¤¿¤Î¤ËÂбþ¤·¤Æ¹¹¿·¡£
-
-       * src/autopick.c 1.47, src/externs.h 1.67, src/variable.c 1.26:
-       - ^U ^S ¤Ê¤É¤Î¥³¥Þ¥ó¥É¤òºÇÂ獵¤Î1024ʸ»ú¶á¤¯¤Î¹Ô¤Ë»È¤¦¤ÈÍî¤Á¤ë¥Ð¥°½¤Àµ¡£
-       - ^U ^S ¤Ê¤É¤Î¥³¥Þ¥ó¥É¤¬»È¤Ã¤¿¥á¥â¥ê¤ò²òÊü¤·¤Ê¤¤¤Ç¤É¤ó¤É¤óϲÈñ¤¹¤ë¥Ð¥°½¤Àµ¡£
-       - ¼«Æ°½¦¤¤ÀßÄê¤Î¥­¡¼¥ï¡¼¥É¤Î½çÈÖ¤ò¼«Í³¤Ë¤·¤¿¡£
-       - ¸¡º÷¥³¥Þ¥ó¥É'/'¼ÂÁõ¡£/^I¤Ç»ý¤Áʪ¤Î¥¢¥¤¥Æ¥à¤Ë°ìÃפ¹¤ë¹Ô¸¡º÷¡£/^L¤ÇºÇ¸å¤Ë¼«Æ°Ç˲õ¤·¤¿¥¢¥¤¥Æ¥à¤Ë°ìÃפ¹¤ë¹Ô¸¡º÷¡£
-
-2002-06-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/load.c 1.31: ¥Ð¡¼¥¸¥ç¥ó¥¢¥Ã¥×¸å¤Î¥í¡¼¥É¤Ç¶ÀÃÏ·Á¤ÎÊѹ¹¤òŬÍÑ¡£
-
-2002-06-20  henkma  <henkma@cvs>
-
-       * src/xtra2.c 1.39:
-       look¥³¥Þ¥ó¥É¤Ç, mirror¤Ëa¤¬ÉÕ¤¯¤«ÉÕ¤«¤Ê¤¤¤«¤ÎȽÄ꤬¸µ¤ÎÃÏ·Á¤ò»È¤Ã¤Æ¤Ê¤µ¤ì¤Æ¤¤
-       ¤¿¤Î¤Çľ¤·¤¿.
-
-       * src/cave.c 1.52:
-       ´Ö°ã¤Ã¤ÆÃÏ·Á¤Îmimic¥³¡¼¥É¤ò¤¤¤¸¤ë¤è¤¦¤ÊÊѹ¹¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-       * src/spells1.c 1.26:
-       ¥·¡¼¥«¡¼¥ì¥¤¤Î¥³¡¼¥É½¤Àµ. ºÇ¸å¤Î¶À¤Ë¤¢¤¿¤Ã¤¿¸å¤Î¥é¥ó¥À¥à¤ÊÊý¸þ¤ÎÁª¤ÓÊý¤¬
-       ÊѤÀ¤Ã¤¿¤Î¤Çľ¤·¤¿.
-
-       * src/cave.c 1.51, src/defines.h 1.62, src/externs.h 1.66, src/melee1.c 1.17, src/mind.c 1.11, src/object2.c 1.43, src/racial.c 1.20, src/spells1.c 1.25, src/spells3.c 1.43, src/xtra2.c 1.38:
-       ¶À¤Î»ÅÍÍÊѹ¹. Á°¤ÎÃÏ·Á¤ò¤Á¤ã¤ó¤ÈÊݸ¤·, ²õ¤ì¤¿¤é¶¯À©Åª¤Ë¾²¤Ë¤Ê¤ë¤Î¤Ç¤Ï¤Ê¤¯
-       Á°¤ÎÃÏ·Á¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿. Æ±¤¸ÊýË¡¤ÇÌæ¾Ï¤Ë¤Ä¤¤¤Æ¤â¤Ç¤­¤ë¤Ï¤º¤À¤±¤É¤½¤ì¤Ë¤Ä
-       ¤¤¤Æ¤Ïº£²ó¤ÏÊÝα. Êѹ¹Á°¤Î¤â¤Î¤Ç¶À¤Î¥×¥ì¥¤¤ò¤·¤Æ¤¤¤ë¤ÈÌäÂꤢ¤ë¤¬, ¥»¡¼¥Ö¥Õ
-       ¥¡¥¤¥ë¥³¥ó¥Ð¡¼¥È¤Î¥³¡¼¥É¤Ï¼¡¤Î¥Ð¡¼¥¸¥ç¥ó¥Ê¥ó¥Ð¡¼¥¢¥Ã¥×¤Î»þ¤Ë¤¹¤ëͽÄê.
-       ¥¸¥ç¥óup»þ
-
-2002-06-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.25:
-       ³¬¤ò°ÜÆ°¤¹¤ë¤È¤­¥Ú¥Ã¥È¤Î°À­¤òÊݸ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿°Ù¤ËÌäÅú̵ÍѤÇÃæΩ°·¤¤¤Ë¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * lib/help/jraceclas.txt 1.4, lib/help/raceclas.txt 1.4, src/birth.c 1.47:
-       - ¥Ø¥ë¥×¤ÎÀ­³Ê¤ÎÀâÌÀ¤Ë¡¢¥Ò¥Ã¥È¥Ý¥¤¥ó¥È¤È¼öʸ¤Î¼ºÇÔΨ¤Ø¤Î±Æ¶Á¤Ë¤Ä¤¤¤Æ¤Î
-         ÀâÌÀ¤òÄɲᣱѸìÈǤϥ­¥ã¥éºîÀ®»þ¤ÎÀâÌÀʸ¤Ë¤âÄɲá£ÆüËܸìÈǤÏʸ¾Ï¤¬¤¢
-         ¤Þ¤ê¤è¤¯¤Ê¤¤¤Î¤Ç¥­¥ã¥éºîÀ®»þ¤Ë¤Ä¤¤¤Æ¤Ï¸«Á÷¤ê¡£
-       - ±Ñ¸ìÈǤÎÀâÌÀʸ¤ÇÆɤߤ䤹¤¤¤è¤¦¤Ëʸ¤Î´Ö¤ò¥¹¥Ú¡¼¥¹Ê¸»ú¤ò2¤Ä¤Ë¤·¤¿¡£
-       - ±Ñ¸ìÈǤΥإë¥×¤Ç¸«½Ð¤·¤¬Dunedain(Ê£¿ô·Á)¤À¤Ã¤¿¤È¤³¤í¤òDunadan(ñ¿ô)¤Ë½¤Àµ¡£
-       - ÆüËܸìÈǤǥǥå¥Ê¥À¥ó¤ÎÀâÌÀ¤¬¥¢¥ó¥Ð¥é¥¤¥È¤ÈƱ¤¸¤À¤Ã¤¿¤Î¤òjangband¤Î¤â¤Î¤Ë½¤Àµ¡£
-
-       * lib/help/jdefend.txt 1.5, lib/help/jmonster.txt 1.6, lib/help/jobjects.txt 1.7, lib/help/jraceclas.txt 1.3, lib/help/jtown.txt 1.6, lib/help/version.txt 1.11:
-       ¥¿¥Ö¥³¡¼¥É¤¬Æþ¤Ã¤Æ¤¤¤¿¤Î¤ò¥¹¥Ú¡¼¥¹¤ËÊÑ´¹¡£
-       ¤Þ¤¿¡¢typo½¤Àµ ¡Ö¹ó¤¤¤É¤­¡×¢ª¡Ö¹ó¤¤¤È¤­¡×
-
-2002-06-19  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/joption.txt 1.12, lib/help/option.txt 1.13, src/tables.c 1.44, src/store.c 1.14:
-       ÃÍÃʤ¬Å¹¤Î¾å¸Â²Á³Ê°Ê¾å¤Î¥¢¥¤¥Æ¥à¤òÇä¤ë¤È¤­¸ò¾Ä¤¬ÉÔÍפǾå¸Â¶â³Û¤Ë¤¤¤­¤Ê¤ê
-       ·èÄꤹ¤ë¤¬¡¢¤½¤ì¤ËÂбþ¤¤¤ÆÃÍÀڤꥪ¥×¥·¥ç¥ó¤¬¥ª¥Õ¤Î¤È¤­¤â¾ÃÈñÀǤ¬³Ý¤«¤é
-       ¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¡£¤½¤ì¤òÇѻߤ·¤Æ¾ï¤Ë¾ÃÈñÀǤ¬³Ý¤«¤ë¤è¤¦¤Ë¤·¤¿¡£
-       Æ±»þ¤ËÃÍÀڤꥪ¥×¥·¥ç¥ó¤ò½é´ü¥ª¥×¥·¥ç¥ó¤Ë¤·¤Æ¥²¡¼¥àÃæ¤ËÊѹ¹¤Ç¤­¤Ê¤¯¤·¤¿¡£
-
-2002-06-19  henkma  <henkma@cvs>
-
-       * lib/edit/q0000027_j.txt 1.3:
-       ¸Å¤¤¾ë¤Î¾åµéËâË¡½ñÉô²°¤ËÂàËâʧ¼Ù¤òÃÖ¤¤¤¿, ¤Ä¤¤¤Ç¤Ë¤¤¤¯¤Ä¤«¥³¥á¥ó¥È¤ò½¤Àµ.
-
-2002-06-18  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd6.c 1.23, src/dungeon.c 1.55, src/externs.h 1.65:
-       ËâÆ»¶ñ½Ñ»Õ¤Ç¡¢Browse¥³¥Þ¥ó¥É¤¬»È¤¨¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/birth.c 1.46:
-       À¸¤¤Î©¤Á¥¨¥Ç¥£¥¿¤Ç¡¢¥Ð¥Ã¥¯¥¹¥Ú¡¼¥¹¥­¡¼¤¬´Á»ú¥³¡¼¥É¤È'\0'¤ò²õ¤¹¥Ð¥°½¤Àµ¡£
-
-2002-06-17  Takeshi Mogami  <mogami@cvs>
-
-       * configure.in 1.18: commit˺¤ì¤Æ¤¿¡£¤Û¤È¤ó¤É¼Â³²¤Ï¤Ê¤¤¤¬¡£
-
-       * src/spells2.c 1.38:
-       lite_area()¤ÈƱ»þ¤Ë¡¢°Å°ÇÀ¸À®¤ÎÈϰϤ⹭¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢
-       1.1.0RC2¤Þ¤Ç¤ÎÈϰϤËÌᤷ¤¿¡£
-
-       * lib/edit/k_info_j.txt 1.29, src/bldg.c 1.17, src/cmd5.c 1.39, src/spellstips.h 1.23:
-       ºÆ¤Ó John Q. Smith ¤µ¤ó¤Ë¤è¤ë±ÑʸÄûÀµ¡£
-
-       * src/object1.c 1.37:
-       ¤³¤Î¤¢¤¤¤À¤Î¾ÃÈñ¥Þ¥Ê´ØÏ¢¤Î½¤Àµ¤Î¡¢»Ä¤ê¥«¥¹¤Î¥´¥ßºï½ü¡£
-       ¼Â¼ÁŪ¤Ë̵°ÕÌ£¡¢Ìµ³²¤Ê¼°¡£
-
-2002-06-16  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/news.txt 1.12, lib/file/news_j.txt 1.11: news.txt ¹¹¿·¡£
-
-       * Changelogs 1.49: ¹¹¿·
-
-       * src/spells3.c 1.42:
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¼öʸ¥ê¥¹¥È¤òɽ¼¨¤¹¤ë¤ÈÀÄËâÆ»»Õ¤È¶À»È¤¤¤Ç
-       ¥¯¥é¥Ã¥·¥å¤·¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£Æ±»þ¤Ë¶¸Àï»Î¡¢¶À»È¤¤¡¢Ç¦¼Ô¤Ç
-       ¼öʸ¥ê¥¹¥È¤ò¤Á¤ã¤ó¤Èɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/object1.c 1.36:
-       Warning¤Ç¤Ê¤¤¤è¤¦¤Ë¡¢charÊÑ¿ô¤Øint¤òÂåÆþ¤¹¤ë¤È¤³¤í¤òcast¤·¤¿¡£
-
-       * src/birth.c 1.45: typo: paradin -> paladin
-
-       * src/cmd4.c 1.42, src/cmd5.c 1.38, src/defines.h 1.61, src/dungeon.c 1.54, src/hissatsu.c 1.12, src/object2.c 1.42, src/spells3.c 1.41, src/xtra1.c 1.42:
-       realm¤òɽ¤ï¤¹ÊÑ¿ô¤¬0¤òLIFE¤È¤¹¤ë¤È¤­¤È¡¢1¤òLIFE¤È¤¹¤ë¤È¤­¤Î2¼ïÎढ¤Ã¤Æ
-       ¤Þ¤®¤é¤ï¤·¤¤¤Î¤Ç¡¢1¤òLIFE¤È¤¹¤ë¤è¤¦¤ËÅý°ì¡£
-       ¤½¤Î²áÄø¤Ç¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Î¼öʸ¥ê¥¹¥È¤Îɽ¼¨¤Ç¥Ð¥°¤ò2¸Ä½êȯ¸«¡¢½¤Àµ¡£
-       1¤Ä¤Ïis_magic()¤Ë¤ï¤¿¤¹Ãͤ¬1¤º¤ì¤Æ¤¤¤¿¡£¤â¤¦1¤Ä¤ÏMIN_TECHNICH¤ò°ú¤¯¤È¤­¤Ë³ç¸Ì¤¬ÉÔ­¡£
-
-2002-06-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd5.c 1.37:
-       ¾ÃÈñMP¤Î¥Ð¥°¡¢Âçʸ»ú¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤ÇÆþÎϤ·¤¿¤È¤­¤Îɽ¼¨¤Ë¥Ð¥°¤¬»Ä¤Ã¤Æ
-       ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-06-15  henkma  <henkma@cvs>
-
-       * src/monster1.c 1.19:
-       ±Ñ¸ì¤Î»×¤¤½Ð¤Î®ÅÙɽ¼¨½¤Àµ, Ã±¸ì´Ö¤Î¥¹¥Ú¡¼¥¹Æþ¤ì˺¤ì¤Æ¤¿.
-
-       * src/cmd5.c 1.36:
-       ËâË¡¤Î¾ÃÈñMP¤¬¼ÂºÝ¤Ë»È¤¦¤È¤­¤Ïɽ¼¨¤è¤êÂ礭¤¯¤Ê¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ.
-       ½ÏÎýÅÙ¤ò¸«¤ë¤È¤­¤Ë°ì¤Ä¤º¤ì¤¿Îΰè¤ò¸«¤è¤¦¤È¤·¤Æ¤¤¤¿ÌÏÍÍ.
-
-2002-06-15  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/version.txt 1.10: 1.1.0Âбþ¡£
-
-2002-06-15  hoge  <hoge@cvs>
-
-       * lib/help/jversion.txt 1.11: jversion¥é¥¤¥È¥¨¥ê¥¢ÄɲÃ
-
-2002-06-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.44: 1¹ÔÀâÌÀ½ñ¤­ÊѤ¨¡£
-
-2002-06-15  hoge  <hoge@cvs>
-
-       * lib/help/jversion.txt 1.10: jversion
-
-2002-06-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/tables.c 1.43: Zap -> Punishment
-
-2002-06-15  henkma  <henkma@cvs>
-
-       * src/birth.c 1.43:
-       ËâË¡¤Î´Ê°×ÀâÌÀ¤Ë´Ø¤·¤Æ, ±Ñ¸ì¤ÎÊý¤¬°ìʸ­¤ê¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ. ½¤ÀµÁ°¤Ï
-       Crusade¤ÎÀâÌÀ¤¬Song¤ÎÀâÌÀ¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿.
-
-2002-06-15  hoge  <hoge@cvs>
-
-       * configure.in 1.17, lib/edit/m_info_j.txt 1.10, lib/file/news.txt 1.11, lib/file/news_j.txt 1.10, src/cmd5.c 1.35, src/defines.h 1.60, src/spells3.c 1.40, src/tables.c 1.42:
-       °Å¹õËâË¡¤Î¾ÃÈñMP¥Ð¥°½¤Àµ
-       ¥Ð¡¼¥¸¥ç¥ó¤ò1.1.0¤Ë¤¹¤ë
-
-2002-06-15  henkma  <henkma@cvs>
-
-       * src/monster1.c 1.18:
-       »×¤¤½Ð¤Î¥â¥ó¥¹¥¿¡¼¤Î®Å٤ˤĤ¤¤Æ, ±Ñ¸ìÈǤÎɽ¸½¤âÆüËܸìÈǤÈƱÄøÅ٤˺٤«¤¯¤·,
-       Æ±»þ¤Ë¤Á¤ã¤ó¤È¿§¤òÉÕ¤±¤ë¤è¤¦¤Ë¤·¤¿. É½¸½¤Ë¤½¤ì¤Û¤É¼«¿®¤¬¤¢¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤Î¤Ç
-       ¥Á¥§¥Ã¥¯¤è¤í¤·¤¯ > ¼«¿®¤Î¤¢¤ë¿Í(¼ç¤ËMogami¤µ¤ó(¾Ð))
-
-2002-06-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/bldg.c 1.16: Éð´ï¾¢¤Ç¤Î¥¹¥ì¥¤¤ÎÇÜΨɽ¼¨ÄûÀµ¡£
-
-       * src/wizard1.c 1.22.2.3, src/wizard2.c 1.23.2.2, src/melee2.c 1.25.2.3, src/monster2.c 1.34.2.2, src/object1.c 1.35.2.3, src/object2.c 1.41.2.3, src/spells2.c 1.37.2.3, lib/edit/a_info_j.txt 1.22.2.2, lib/edit/e_info_j.txt 1.21.2.2, src/artifact.c 1.24.2.2, src/bldg.c 1.15.2.3, src/cmd1.c 1.44.2.3, src/cmd3.c 1.23.2.3, src/defines.h 1.59.2.3:
-       ³Æ¼ïKILL¼ÂÁõ¡£SLAY¤¬3Çܤʤé5ÇÜ¡¢2.5Çܤʤé4ÇÜ¡¢2Çܤʤé3.5ÇܤËÀßÄꤷ¤¿¡£
-       *¡Á¥¹¥ì¥¤¥ä¡¼*¤ËÉղᣤ¿¤À¤·¡¢KILL_EVIL¤Ï¼ÂÁõ¤Ï¤·¤¿¤¬Éղ令º¡£
-
-       * src/object2.c 1.41.2.2, src/spells2.c 1.37.2.2, src/types.h 1.21.2.2, src/wizard1.c 1.22.2.2, src/xtra1.c 1.41.2.2, src/cmd3.c 1.23.2.2, src/cmd6.c 1.22.2.2, src/defines.h 1.59.2.2, src/init1.c 1.39.2.2, src/melee2.c 1.25.2.2, src/monster2.c 1.34.2.1, src/object1.c 1.35.2.2, lib/edit/a_info_j.txt 1.22.2.1, lib/edit/e_info_j.txt 1.21.2.1, src/bldg.c 1.15.2.2, src/cmd1.c 1.44.2.2:
-       KILL_GIANT ¤È ³Æ¼ïESP_ ¼ÂÁõ¡£Â¾¤Î³Æ¼ï KILL_ ¤Ï¥Õ¥é¥°¤À¤±ºî¤Ã¤Æ¤¢¤ë¡£
-       KILL_GIANT¤Ï¥Õ¥é¥ó¥Æ¥ó¥°¡¢ESP_¤Ï³Æ*¡Á¥¹¥ì¥¤¥ä¡¼*¤ËÉղá£
-
-       * lib/edit/k_info_j.txt 1.28: k_info¤Ë¤â½¤ÀµÄɲá£
-
-       * lib/edit/e_info_j.txt 1.22, src/mindtips.h 1.8, src/spellstips.h 1.22:
-       RGRA¤Ç¤ÎJohn Q. Smith¤µ¤ó¤Ë¤è¤ë ±ÑÌõ¤Î½¤Àµ¡¢ k_info°Ê³°¡£
-
-2002-06-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/wizard2.c 1.23.2.1, src/xtra1.c 1.41.2.1, src/mspells2.c 1.20.2.1, src/object1.c 1.35.2.1, src/object2.c 1.41.2.1, src/save.c 1.18.2.1, src/spells1.c 1.24.2.1, src/spells2.c 1.37.2.1, src/spells3.c 1.39.2.1, src/store.c 1.13.2.1, src/types.h 1.21.2.1, src/wizard1.c 1.22.2.1, src/cmd4.c 1.41.2.1, src/cmd6.c 1.22.2.1, src/defines.h 1.59.2.1, src/externs.h 1.64.2.1, src/files.c 1.59.2.1, src/flavor.c 1.17.2.1, src/hissatsu.c 1.11.2.1, src/init1.c 1.39.2.1, src/load.c 1.30.2.1, src/melee2.c 1.25.2.1, src/mspells1.c 1.24.2.1, src/artifact.c 1.24.2.1, src/bldg.c 1.15.2.1, src/cmd1.c 1.44.2.1, src/cmd2.c 1.28.2.1, src/cmd3.c 1.23.2.1:
-       TR1 TR2 TR3 ¤òÅý¹ç¡£¥Õ¥é¥°¤ò¥¤¥ó¥Ç¥Ã¥¯¥¹(¸½ºß¤Ï0¤«¤é92¤Þ¤Ç)¤Çɽ¸½¤·¡¢
-       have_flag(ÇÛÎó, ¥Õ¥é¥°);
-       add_flag(ÇÛÎó, ¥Õ¥é¥°);
-       remove_flag(ÇÛÎó, ¥Õ¥é¥°);
-       ¤Î³Æ¥Þ¥¯¥í¤òÄêµÁ¤·¤¿¡£
-
-2002-06-13  henkma  <henkma@cvs>
-
-       * lib/edit/k_info_j.txt 1.27:
-       rgra¤Î±Ñ¸ì¤Î´Ö°ã¤¤¤Î»ØŦ¤òÈ¿±Ç¤µ¤», ½¤Àµ°Æ¤Î¤¦¤ÁÂÅÅö¤À¤È»×¤ï¤ì¤ë¤â¤Î¤òºÎÍѤ·¤Æ¤ß¤¿.
-
-2002-06-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.42:
-       ½Ã¿Í¤Ç¥¯¥¤¥Ã¥¯¥¹¥¿¡¼¥È¤·¤¿¤È¤­¤ËÊÑ°Û¤¬µ¯¤­¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-06-12  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.48: ¹¹¿·
-
-       * src/hissatsu.c 1.11, src/load.c 1.30, src/mane.c 1.10, src/melee1.c 1.16, src/melee2.c 1.25, src/monster1.c 1.17, src/monster2.c 1.34, src/mspells1.c 1.24, src/mspells2.c 1.20, src/object2.c 1.41, src/racial.c 1.19, src/report.c 1.20, src/save.c 1.18, src/scores.c 1.7, src/spells1.c 1.24, src/spells2.c 1.37, src/spells3.c 1.39, src/types.h 1.21, src/util.c 1.28, src/variable.c 1.25, src/wild.c 1.14, src/wizard2.c 1.23, src/xtra1.c 1.41, src/xtra2.c 1.37, src/artifact.c 1.24, src/birth.c 1.41, src/cmd1.c 1.44, src/cmd2.c 1.28, src/cmd4.c 1.41, src/cmd5.c 1.34, src/dungeon.c 1.53, src/effects.c 1.24, src/externs.h 1.64, src/files.c 1.59:
-       Vanilla¤Ë¤Ê¤é¤Ã¤Æ¡¢¥­¥ã¥é¥¯¥¿¡¼¤Î¾õÂÖ¤òɽ¤ï¤¹¥°¥í¡¼¥Ð¥ëÊÑ¿ô¤Î¿¤¯¤ò
-       p_ptr ¤ÎÃæ¤Ë°Ü¤·¤¿¡£
-
-2002-06-11  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.39:
-       ¸«½¬¤¤¥Ñ¥é¥Ç¥£¥ó(ñÆÈ)¤È¥Ñ¥é¥Ç¥£¥ó¤¬GOOD¥Õ¥é¥°¤ò»ý¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ÇÄɲá£
-
-       * src/spells1.c 1.23:
-       À»Ù¥¤ò»È¤Ã¤¿¤È¤­Á±ÎɤʥڥåȤÏȽÄê¤Ê¤·¤Ç²Ã®¤À¤±¼õ¤±¤ë¡£
-
-       * src/cmd5.c 1.33, src/defines.h 1.59, src/monster2.c 1.33, src/mspells2.c 1.19:
-       Å¨¤¬Å¨¤ËÂФ·¤Æ¤Î¹ÔÆ°¤È¤·¤Æ»à¼ÔÉü³è¤ò»È¤¦¤È¤­¡¢»ë³¦Èϰϳ°¤Ç¤â¥á¥Ã¥»¡¼¥¸¤¬
-       ½Ð¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/spells3.c 1.38:
-       ÀÖËâÆ»»Õ¤Î½ÏÎýÅÙ¤¬Àµ¤·¤¯É½¼¨¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤ò½¤Àµ¡£ËâË¡¤Î½ÏÎýÅ٤Υ³¡¼¥É¤òÀ°Íý¡£
-
-       * src/externs.h 1.63, src/object1.c 1.35:
-       'm'¥³¥Þ¥ó¥É¤ÇËâË¡½ñ¤òÁªÂò¤¹¤ë¤È¤­¥é¥Ù¥ë a) b) c) d)...¤òÌäò¤ËÂбþ¤·¤¿
-       Àµ¤·¤¤¥é¥Ù¥ë a) b)... e) f)... ¤Ë¤·¤¿¡£¤Ä¤¤¤Ç¤Ë¡¢¾²¾å¤Ë¥¢¥¤¥Æ¥à¤¬¤¢¤ë¤È¤­¡¢
-       ¡Ö'4'or'6' ¾²¾å¡×¤¬´Ö°ã¤Ã¤Æɽ¼¨¤µ¤ì¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-       * src/tables.c 1.41: À»¤Ê¤ë¸æ¸ÀÍդαѸì̾¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-06-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.46: ¥Õ¥¡¥¤¥ë¤ÎÀèƬ/½ªÃ¼¤Ë°ÜÆ°¥³¥Þ¥ó¥É'g'/'G'Äɲá£
-       ¥Þ¥¯¥íÄêµÁÁÞÆþ'm'¥³¥Þ¥ó¥É¡¢¥­¡¼ÇÛÃÖÄêµÁÁÞÆþ'c'¥³¥Þ¥ó¥ÉÄɲá£
-
-       * lib/file/news.txt 1.10:
-       ¥Ð¥°Êó¹ð¤ò"heng-ml@kmc.gr.jp"¤Ø¡¢¤È¤¤¤¦É÷¤Ë½ñ¤­ÊѤ¨¡£
-
-2002-06-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.45: ¤µ¤Ã¤­¤Î½¤Àµ¤Ç¤Þ¤¿¥¨¥ó¥Ð¥°¤·¤Æ¤¤¤¿¤Î¤Ç ºÆ½¤Àµ¡£
-
-       * src/monster2.c 1.32:
-       ¥«¥á¥ì¥ª¥ó¤Î½èÍý¤ÎÊѹ¹¤Ç¡¢¤¿¤Ì¤­¤Î½èÍý¤ËÉûºîÍѤ¬½Ð¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/autopick.c 1.44:
-       ¡Ö¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î´¬Êª¡×¤ò̾Á°¤Ë"À¸À®¤Î´¬Êª"¤ò´Þ¤à¡ú¡ù¤Èǧ¼±¤·¤Æ
-       ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢Ì¾»ì·¿¤Î¥­¡¼¥ï¡¼¥É¤ÈƱÍͤνèÍý¤ËÊѹ¹¤·¤¿¡£
-       ¤Ä¤Þ¤ê¡¢¡Ö:¡×¤Ê¤·¤Çʸ»úÎó¤¬Â³¤¯¤È¤­¤ËºÇ½é¤Î¡Ö¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¡×¤ò
-       ¥­¡¼¥ï¡¼¥É¤Èǧ¼±¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/monster2.c 1.31:
-       ¥«¥á¥ì¥ª¥ó¤ÎÊÑ¿È¥³¡¼¥ÉÀ°Íý¡£get_mon_num_prep()¤ÎÃʳ¬¤Ç¾ò·ï¤òÁ´ÉôÉÕ¤±¤Æ
-       get_mon_num()¤Î¸Æ¤Ó½Ð¤·¤ò1²ó¤Ë¤·¤¿¡£
-
-2002-06-09  _nothere  <_nothere@cvs>
-
-       * src/monster2.c 1.30:
-       summon_specific_who_for_chameleons¤Ïsummon_specific_who¤ÎήÍѤÇÌäÂê¤Ê¤¤¤è¤¦¤Ê¤Î¤Ç¤½¤Î¤è¤¦¤ËÊѹ¹.
-
-2002-06-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster2.c 1.29:
-       ¥«¥á¥ì¥ª¥ó¤ÎÊÑ¿È»þ¤ËÊѿȤ¹¤ë¥â¥ó¥¹¥¿¡¼¤ÎÁªÂò¤Ë¼ºÇÔ¤·¤¿¤È¤­¡Ö¥×¥ì¥¤¥ä¡¼¡×¤Ë
-       ÊѿȤ¹¤ë¥Ð¥°¤¬¤¢¤ë¤è¤¦¤Ê¤Î¤Ç½¤Àµ¡£
-
-       * src/cmd1.c 1.43, src/cmd2.c 1.27, src/defines.h 1.58, src/dungeon.c 1.52, src/main-mac.c 1.17, src/main-win.c 1.17:
-       ÆâÉô¤Ç»È¤¦Æü쥭¡¼¥³¡¼¥É 255 254 253 252 ¤ò¥Þ¥¯¥í¤ÇÄêµÁ¡£
-       main-mac.c¤Î½ªÎ»¥á¥Ë¥å¡¼¤âÆü쥭¡¼¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-06-09  _nothere  <_nothere@cvs>
-
-       * src/dungeon.c 1.51, src/main-win.c 1.16:
-       ^X¤Ë¥Þ¥¯¥í¤ò³ä¤êÅö¤Æ¤ë¤ÈWindows¤Ç[x]¤ä¥á¥Ë¥å¡¼¤ò»È¤Ã¤¿¾ì¹ç¤Ê¤É¤ÇÌäÂ꤬½Ð¤¿¤Î¤Ç, Windows¤Î¥á¥Ë¥å¡¼¤«[x]¤«¤é½ªÎ»¤µ¤»¤ë¾ì¹ç¤ÏÆâÉô¥³¡¼¥É252¤òȯ¹Ô¤¹¤ë¤è¤¦¤Ë¤·¤¿.
-
-2002-06-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.50:
-       ¥Þ¥¯¥íÅù¤Ç¼Í·â¤¹¤ë¤È¤­¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥¿¡¼¥²¥Ã¥È¤Ë¼ÂºÝ¤Î¼ÍÄø¤¬
-       ¹Í褵¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¥Ð¥°½¤Àµ¡£
-
-2002-06-08  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.57, src/externs.h 1.62, src/monster2.c 1.28, src/spells3.c 1.37, src/variable.c 1.24:
-       ¥Á¥§¥ó¥¸¥â¥ó¥¹¥¿¡¼¤Î¤È¤­¤Ëplace_monster_one()¤Ç»È¤Ã¤Æ¤¤¤ë³°ÉôÊÑ¿ô
-        monster_terrain_sensitive ¤ÎÌò³ä¤ò mode¥Õ¥é¥°¤Ë°Ü¤·¤¿¡£
-
-       * src/cave.c 1.49:
-       'M'apɽ¼¨¤Ç¥È¥é¥Ã¥×̤´¶ÃΤÎÃÏ·Á¤ÎÍ¥Àè½ç°Ì¤¬¹â¤¹¤®¤Æ·¼Ìؤ·¤¿¸å¤Çɽ¼¨¤¹¤ë¤È
-       'x'¤À¤±¤ÇÄÙ¤ì¤Æ¸«¤¨¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-06-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-mac.c 1.16:
-       Kuwa¤µ¤ó¤è¤ê¡¢¥¿¥¤¥ë¥°¥é¥Õ¥£¥Ã¥¯¤ò³°Éô¤Î¥ê¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤È¤·¤ÆʬΥ¡£
-
-2002-06-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.34:
-       24¸Ä°Ê¾å¤Î¥¢¥¤¥Æ¥à¤¬¾²¤Ë¤¢¤ë¤È¤­¡¢num <= 23 ¤Ç floor_num[num] ¤Ë
-       ½ñ¤­¹þ¤ó¤Ç¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢num < 23 ¤Ë½¤Àµ¡£
-
-2002-06-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells2.c 1.36:
-       lite_area()¤òZ240·¿¤ÈVanilla·¿¤ò¹çÂΤ·¤¿¤â¤Î¤Ë¤·¤¿¡£
-
-       * src/cave.c 1.48:
-       µì¥¿¥¤¥ë¤Ç¥È¥é¥Ã¥×¤¬´Ö°ã¤Ã¤Ælighting¸ú²Ì¤ÎÂоݤˤʤäơ¢
-       É½¼¨¤¬¤ª¤«¤·¤¯¤Ê¤Ã¤Æ¥Ð¥°½¤Àµ¡£
-
-2002-06-04  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.11:
-       Ï·¥½¡¼¥µ¥é¡¼¤Î¥¿¥¤¥ë¤ÎÀßÄê¹Ô¤¬¥Ð¥°¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/dungeon.c 1.50:
-       play-record¤ËÆüÉÕ¤¬2²ó¤Å¤ÄÆþ¤ë¥Ð¥°½¤Àµ¡£¼ÂºÝ¤Î¥²¡¼¥à¤Ø¤Î±Æ¶Á¤Ï¤Ò¤È¤Ä¤À¤±¡¢
-       nightmare¥â¡¼¥É¤Ç12»þ¤Î°­Ì´¤¬2²óϢ³¤Çµ¯¤­¤Æ¤¤¤¿¡£
-
-2002-06-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.43:
-       ¥³¥á¥ó¥Èʸ¾Ï¤¬¤ª¤«¤·¤¤¤Î½¤Àµ¡£RC2¥¢¡¼¥«¥¤¥Ö¤ÎÊý¤ËÊѹ¹¤¹¤ëɬÍפϤʤ·¡£
-
-       * src/autopick.c 1.42:
-       optimize¤òÃ٤餻¤ë¤È¤­¤Î½èÍý¤Ï¤Á¤ã¤ó¤È¤Ç¤­¤Æ¤¤¤¿¤¬¡¢Ã٤餻¤Ê¤¤¤È¤­¤Î½èÍý¤¬
-       ¥¨¥ó¥Ð¥°¤·¤Æ¤¤¤¿¤Î¤ÇºÆ½¤Àµ¡£
-
-       * Changelogs 1.47: ¹¹¿·
-
-       * configure.in 1.16, lib/file/news.txt 1.9, lib/file/news_j.txt 1.9:
-       ¥Ð¡¼¥¸¥ç¥ó¤ò 1.1.0 RC2 ¤Ë¤·¤¿¡£
-
-       * src/artifact.c 1.23, src/autopick.c 1.41, src/bldg.c 1.15, src/cmd5.c 1.32, src/cmd6.c 1.22, src/dungeon.c 1.49, src/externs.h 1.61, src/hissatsu.c 1.10, src/mind.c 1.10, src/racial.c 1.18, src/spells3.c 1.36, src/wizard2.c 1.22:
-       ´ÕÄꤷ¤¿½Ö´Ö¤Î¼«Æ°Ç˲õ¤Ëº¬ËÜŪ¤Ê¥Ð¥°¤¬¤¢¤Ã¤¿¡£
-       ´ÕÄê¼êÃÊ(´¬Êª¤ä¾ó)¤ò¾ÃÈñ¤¹¤ëÁ°¤Ë¼«Æ°Ç˲õ¤Ë¤è¤Ã¤Æ¥¹¥í¥Ã¥È¤Î°ÌÃÖ¤¬ÊѤï¤Ã¤Æ
-       Ê̤Υ¢¥¤¥Æ¥à¤ò¾ÃÈñ(¿ô¤ò¸º¤é¤·¤¿¤ê¡¢pval¤ò¸º¤é¤·¤¿¤ê¤·¤Æ¤¤¤¿¡£
-       ¥¹¥í¥Ã¥È¤Îoptimize¤òÃ٤餻¤ë»ö¤Ë¤è¤Ã¤Æ²ò·è¡£
-
-       * src/autopick.c 1.40:
-       ¥¨¥ó¥Ð¥°¤·¤Æ¡¢¼«Æ°½¦¤¤¤ËÅÐÏ¿¤·¤¿¥¢¥¤¥Æ¥à¤ò´Ê°×¼«Æ°Ç˲õ¤Ç²õ¤·¤Æ¤¤¤¿¤Î¤ÇºÆ½¤Àµ¡£
-
-       * src/autopick.c 1.39:
-       ^G ¤È ^O ¤Î¥³¡¼¥É¤¬autopick.c¤Î¼ÂÁõ½é´ü¤Î¸Å¤¤·Á¼°¤Î¤Þ¤Þ¤À¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       ¤½¤³¤Ç»È¤Ã¤Æ¤¤¤¿static´Ø¿ô insert_string()¤È delete_string() ¤âºï½ü¡£
-       Æäˠinsert_string() ¤ÏÇÛÎó°î¤ì¤Î´í¸±¤¬¤¢¤Ã¤¿¡£
-
-       * src/autopick.c 1.38:
-       ²èÌ̲¼¤ËÀâÌÀʸ¤òɽ¼¨¤¹¤ë¤È¤³¤í¤Ç¡¢¤¢¤Þ¤ê¤Ë¿¤¯¤Î¥­¡¼¥ï¡¼¥É¤¬ÉÕ¤¤¤Æ¤¤¤ë¤È
-       ÇÛÎó°î¤ì¤òµ¯¤¹²ÄǽÀ­¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/autopick.c 1.37:
-       ¤µ¤Ã¤­¤Î½¤Àµ¤Çstrncat()¤Î»È¤¤Êý¤ò´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½ñ¤­Ä¾¤·¡£
-       ¤½¤Î¾¡¢¥³¡¼¥ÉÀ°Íý¡£¥³¥á¥ó¥ÈÄɲá£
-
-       * src/autopick.c 1.36:
-       ÂçÎ̤Îʸ»úÎó¤ò^K¤Ç¾Ã¤·¤¿¤È¤­¤ËÇÛÎó³°¤Ë'\0'¤ò½ñ¤­¹þ¤ó¤Ç¤¤¤¿¤Î¤ò½¤Àµ¡£
-       ^Y ¤È ^H ¤ÎÆ°ºî¤ò¤è¤êemacs like¤ËÄ´À°¡£
-
-2002-06-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/save.c 1.17:
-       munchkin_death¥ª¥×¥·¥ç¥ó¤Ç¥»¡¼¥Ö¤»¤º¤Ë¥Ç¥Ð¥Ã¥°¥â¡¼¥É¤ÇǽÎÏÃ;å¸Â¤òÄ´¤Ù¤Æ¡¢
-       ¿·µ¬¥­¥ã¥é¥¯¥¿¡¼ºîÀ® ¢ª '='¤Çmunchkin_death¤òoff
-       ¢ª 'S'¤ÇºÇ½é¤ËÌá¤ë ¢ª ºÆÅÙ¤Îquick start¤Î¼ÁÌä¤Ë'y'¡¢¤È¤¤¤¦¼ê½ç¤Ç
-       Àè¤ËÄ´¤Ù¤¿Ç½ÎÏÃ;å¸Â¤Ç¥×¥ì¥¤³«»Ï¤Ç¤­¤Æ¤·¤Þ¤¦È´¤±Æ»¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/autopick.c 1.35:
-       always_pickup¤¬¥ª¥ó¤Î¤È¤­¡¢¼«Æ°½¦¤¤/Ç˲õ¤ÎÀßÄê¤Ë¤è¤ëÇ˲õ¤À¤±¤ò̵»ë¤·¤Æ
-       ´Ê°×¼«Æ°Ç˲õ¥ª¥×¥·¥ç¥ó¤ÎÇ˲õ¤ÏŬÍѤ¹¤ë¤è¤¦¤Ë¤¹¤ë¤Ï¤º(¤·¤¿¤Ä¤â¤ê)¤À¤Ã¤¿¤Î¤Ë¡¢
-       Å¬ÍѤµ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/save.c 1.16:
-       ¥Ç¥Ð¥Ã¥°¥â¡¼¥É¤ä¥Á¡¼¥È¥ª¥×¥·¥ç¥óÅù¤ò»ÈÍѸå¤Î¥»¡¼¥Ö»þ¤Ë
-       ¥¯¥¤¥Ã¥¯¥¹¥¿¡¼¥È¤ò»ÈÍÑÉԲĤˤ¹¤ë¡£
-
-       * src/autopick.c 1.34:
-       ºÇ½é¤«¤é{%}Åù¤¬¹ï¤ó¤Ç¤¢¤ë¥¢¥¤¥Æ¥à¤ò*´ÕÄê*¤·¤¿¤È¤­¡¢¤½¤Î%¤òÂÑÀ­¹ï¤ß¤ÇŸ³«¤¹¤ë¡£
-
-       * Changelogs 1.46: ¹¹¿·
-
-       * configure.in 1.15, lib/file/news.txt 1.8:
-       ±Ñ¸ìÈÇÍѤ˥С¼¥¸¥ç¥ó½¤Àµ¡£¤Ä¤¤¤Ç¤Ë configure.in ¤Î¥Ð¡¼¥¸¥ç¥ó¤â½¤Àµ¡£
-
-2002-06-02  habu  <habu@cvs>
-
-       * src/load.c 1.29:
-       ¿·¤·¤¤¥×¥ì¥¤¥ä¡¼¤Î¥Õ¥é¥°¤òÆɤà»þ¤Ëz_older_than¤ò»È¤Ã¤Æ¤¤¤Ê¤¯¤Æ¸Å¤¤¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤¬Æɤá¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/defines.h 1.56, src/load.c 1.28, src/save.c 1.15:
-       ¥Ð¡¼¥¸¥ç¥ó1.1.-1¤Ë¤¹¤ë¤¿¤á¡¢load.c¤Èsave.c¤Î¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Æ¤¤¤¿Éôʬ¤ò³°¤·¤¿¡£
-       ¤Þ¤¿¡¢ÆâÉô¥Ð¡¼¥¸¥ç¥ó¤Ï1.0.99¤È¤·¤Æ¤¤¤ë¡£
-
-2002-06-02  hoge  <hoge@cvs>
-
-       * lib/file/news_j.txt 1.8, lib/help/jversion.txt 1.9, lib/help/version.txt 1.9:
-       version.txt¤ËÆüÉÕÆþ¤ì¤ë
-       news_j¤ò1.1.-1¢ª1.1.0RC1
-
-2002-06-01  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jversion.txt 1.8, lib/help/version.txt 1.8:
-       version.txtÊÔ½¸¡£
-
-2002-06-01  _nothere  <_nothere@cvs>
-
-       * src/store.c 1.13:
-       Å¹¤ÇÇã¤Ã¤¿¥¢¥¤¥Æ¥à¤Ë¤â¼«Æ°Ìùï¤ß¤òŬÍÑ. ¼«Æ°Ç˲õ¤Ï¹Ô¤ï¤Ê¤¤.
-
-2002-06-01  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.12, autopick_eng.txt 1.14, lib/help/jpref.txt 1.10, lib/help/pref.txt 1.13:
-       ¼«Æ°½¦¤¤¤Î¥­¡¼¥ï¡¼¥É¤ËCrusadeÄɲá£
-
-       * lib/help/jmagic.txt 1.7, lib/help/jraceclas.txt 1.2, lib/help/magic.txt 1.9, lib/help/raceclas.txt 1.3, src/birth.c 1.40:
-       À¸Ì¿Ç˼٤ËÂбþ¤·¤Æ¥Ø¥ë¥×¤Î½¤Àµ¡£
-
-       * src/birth.c 1.39, src/effects.c 1.23: »Ä¤Ã¤Æ¤¤¤¿ËÝÌõ¤ò´°Î»¡£
-
-       * configure.in 1.14, src/birth.c 1.38, src/cmd5.c 1.31, src/spells3.c 1.35, src/tables.c 1.40:
-       À¸Ì¿Ç˼٤ÎÀâÌÀ½¤Àµ¡¢¥¹¥¿¡¼¥À¥¹¥È¤Î¥À¥¤¥¹¤òd2¤Ë¡¢Ç˼٤αѸìÈǼöʸ̾¤Á¤ç¤Ã¤È½¤Àµ¡£
-
-2002-06-01  hoge  <hoge@cvs>
-
-       * lib/edit/m_info_j.txt 1.9, lib/file/death_j.txt 1.2, lib/file/monspeak_j.txt 1.6, lib/file/news_j.txt 1.7, src/birth.c 1.37, src/cmd5.c 1.30, src/effects.c 1.22, src/spells3.c 1.34, src/spellstips.h 1.21:
-       ¥¯¥¿¡¼¤ÎÀ¸¤¤Î©¤Á¤ò²þÎÉ
-       Ç˼٤ΥХé¥ó¥¹Ä´À°
-
-2002-06-01  habu  <habu@cvs>
-
-       * src/files.c 1.58:
-       ´Êñ¶ò¤Î¤Û¤¦¤Ç¤â½¤Àµ¤·¤¿¡¢¥¯¥¨¥¹¥ÈãÀ®¸å¤Ë¥»¡¼¥Ö&¥í¡¼¥É¤Ç¥­¥ã¥é¥¯¥¿²èÌ̤˥¯¥¨¥¹¥È̾¤¬½Ð¤Ê¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ¡£
-
-       * src/init1.c 1.39:
-       ¥ï¡¼¥Ë¥ó¥°½üµîºî¶È¤Ç16¿Ê¿ô¤ò%d¤Ç¼õ¤±¤ë¤è¤¦¤Ë¤·¤¿¤¿¤á¤Ëm_info_j.txt¤Î²òÀϤ˼ºÇÔ¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-2002-05-31  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.11, autopick_eng.txt 1.13, lib/help/jpref.txt 1.9, lib/help/pref.txt 1.12, src/autopick.c 1.33:
-       ¥­¡¼¥ï¡¼¥É¤Î½çÈÖ¤¬¤ª¤«¤·¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       ¡Ö¥¨¥´½¤ÀµÃÍ3°Ê¾å¤ÎÉð´ï¡×¢ª¡Ö½¤ÀµÃÍ3°Ê¾å¤Î¥¨¥´Éð´ï¡×
-
-       * autopick_eng.txt 1.12, lib/help/jpref.txt 1.8, lib/help/pref.txt 1.11, src/autopick.c 1.32, src/types.h 1.20, autopick.txt 1.10:
-       ¥­¡¼¥ï¡¼¥É¡Ö½¤ÀµÃÍn°Ê¾å¤Î¡Á¡×Äɲá£pval¤¬¤¢¤ë¥¢¥¤¥Æ¥à¤Ïpval¤À¤±¡¢
-       Ìµ¤¤¥¢¥¤¥Æ¥à¤Ïto-hit to-dam to-ac ¤ò¸«¤Æ¡¢¤É¤ì¤«¤¬(+n)°Ê¾å¤Ê¤é¥Þ¥Ã¥Á¡£
-
-       * autopick_eng.txt 1.11, lib/help/jpref.txt 1.7, lib/help/pref.txt 1.10, src/autopick.c 1.31:
-       ¼«Æ°½¦¤¤¤Î¡¢¥³¡¼¥ÉÀ°Íý¡¢¥Ø¥ë¥×½¤Àµ¡£
-
-       * src/init1.c 1.38: _strchr()¤Î·¿¤Î½¤Àµ¤Î»ÅÊý¤¬°ã¤Ã¤¿¤Î¤òºÆ½¤Àµ¡£
-
-       * src/autopick.c 1.30: ´ÕÄê»þ¤Î¼«Æ°Ç˲õ¤ÇÁõÈ÷Éʤò²õ¤·¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-
-2002-05-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.29:
-       ^I ¤ä ^L ¤Ç¼«Æ°½¦¤¤ÀßÄê¹Ô¤òÁÞÆþ¤¹¤ë¤È¤­¡¢¼«Æ°Åª¤Ë¡Ö¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÉð´ï¡×¡¢
-       ¡Ö¥¨¥´³õ¡×Åù¤Î¤è¤¦¤ËÀµ¤·¤¯½ñ¤¯¤è¤¦¤Ë½¤Àµ¡£
-
-       * Changelogs 1.45: ¹¹¿·
-
-       * src/autopick.c 1.28:
-       ±Ñ¸ìÈǤÇ̾»ì·¿¤Î¥­¡¼¥ï¡¼¥É¡Öartifacts¡×¤ò°ì±þ»Ä¤·¤Æ¤ª¤¤¤¿¤Î¤À¤¬¡¢
-       ºÇ½é¤Î8ʸ»ú¤Ç·ÁÍƻ췿¤È°ìÃפ·¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢´°Á´¤ËÇѻߤ·¤¿¡£
-
-       * autopick.txt 1.9, lib/pref/pickpref.prf 1.6, lib/pref/picktype.prf 1.5, src/autopick.c 1.27:
-       ¼«Æ°½¦¤¤¤Ë¡¢¥­¡¼¥ï¡¼¥É¡Ö¥¨¥´¡×¤òÄɲá£
-       ´û¸¤Î¥­¡¼¥ï¡¼¥É¡Ö¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¡×¤Ï·ÁÍƻ췿¤ËÊѹ¹¡£
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Ç¤Ï ^X ¤Ç ÌµÌÃ/¥¨¥´/¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È ¤òÀÚ¤êÊѤ¨¡£
-
-       * src/object2.c 1.40, src/report.c 1.19, src/save.c 1.14, src/spells2.c 1.35, src/spells3.c 1.33, src/spellstips.h 1.20, src/util.c 1.27, src/wild.c 1.13, src/wizard1.c 1.22, src/wizard2.c 1.21, src/flavor.c 1.17, src/h-system.h 1.3, src/h-type.h 1.2, src/inet.c 1.4, src/init1.c 1.37, src/kajitips.h 1.2, src/load.c 1.27, src/main-gcu.c 1.6, src/main-win.c 1.15, src/main-x11.c 1.16, src/mane.c 1.9, src/melee1.c 1.15, src/melee2.c 1.24, src/mindtips.h 1.7, src/monster1.c 1.16, src/mspells2.c 1.18, src/mspells3.c 1.13, src/obj_kind.c 1.2, src/object1.c 1.33, src/autopick.c 1.26, src/avatar.c 1.6, src/bldg.c 1.14, src/cmd1.c 1.42, src/cmd2.c 1.26, src/cmd3.c 1.23, src/cmd4.c 1.40, src/cmd5.c 1.29, src/dungeon.c 1.48, src/externs.h 1.60, src/files.c 1.57:
-       ¥ï¡¼¥Ë¥ó¥°¤Î½üµî¡£
-       gcc ¤Ç -pedantic -W -Wall -Wno-unused -Wno-sign-compare -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes ¤òÉÕ¤±¤Æ³Îǧ¡£
-
-2002-05-29  iks  <iks@cvs>
-
-       * src/defines.h 1.55:
-       MAX_GF¤ÎÄêµÁ¤Î¿ô»ú¤¬1¾¯¤Ê¤¯¤Æ¡¢¥À¥ó¥¸¥ç¥ó̾¤Î¥á¥â¥ê¤òÇ˲õ¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-05-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.54:
-       CAVE_UNSAFE¤¬´Ö°ã¤Ã¤Æ 0x3000¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢0x2000¤Ë½¤Àµ¡£
-       ¥Ó¥Ã¥È¿ô¤òϲÈñ¤·¤Æ¤ë¤À¤±¤Ç¼Â³²¤Ï¤Ê¤¤¡£
-
-2002-05-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.39, src/cmd5.c 1.28, src/hissatsu.c 1.9, src/melee1.c 1.14:
-       Ç˼٤Υá¥Ã¥»¡¼¥¸¡¢±Ñ¸ìÈÇÄɲá£Â¾¤Ë¾¯¤·nanka¤òľ¤·¤¿¡£
-
-       * autopick.txt 1.8, autopick_eng.txt 1.10, lib/help/jpref.txt 1.6, lib/help/pref.txt 1.9:
-       ´ÕÄꤷ¤¿½Ö´Ö¤Ë¼«Æ°¹ï¤ß¤ò¤¹¤ë»ö¤ËÂбþ¤·¤ÆÀâÌÀ¤ò¹¹¿·¡£
-
-       * src/melee1.c 1.13:
-       »àÂΤβô¤Ê¤É¤Îɵ¤¹¶·â¤ÇÂѵ×ÎϤ¬²¼¤Ã¤¿¤È¤­¤Ë¥á¥Ã¥»¡¼¥¸¤ò½Ð¤¹¡£
-
-       * lib/edit/e_info_j.txt 1.21:
-       ÉÔµà¤ÎÌܤÎrating¤¬0¤Çworthless¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢20¤Ë½¤Àµ¡£
-
-2002-05-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells3.c 1.32, src/spellstips.h 1.19, src/tables.c 1.39:
-       ±Ñ¸ìÈǤÎÀ¸Ì¿¡¢Ç˼٤ÎËâˡ̾¡¢ËâË¡ÀâÌÀ¡£
-
-       * src/tables.c 1.38, src/wizard1.c 1.21, src/wizard2.c 1.20, src/xtra2.c 1.36, lib/edit/m_info_j.txt 1.8, src/avatar.c 1.5, src/birth.c 1.36, src/cmd3.c 1.22, src/cmd5.c 1.27, src/defines.h 1.53, src/flavor.c 1.16, src/init2.c 1.12, src/object2.c 1.39, src/spells2.c 1.34, src/spells3.c 1.31, src/store.c 1.12:
-       haja -> crusade ¸¡º÷ÃÖ´¹
-
-       * src/cave.c 1.47, src/cmd1.c 1.41, src/defines.h 1.52, src/generate.c 1.24, src/spells2.c 1.33:
-       ÃϿ̤äÇ˲õ¤ÎÀפϥȥé¥Ã¥×¤¬Ìµ¤¤¤Î¤ÏÌÀ¤é¤«¤Ê¤Î¤Ç¡¢view_unsafe_grids¤Çɽ¼¨¤·¤Ê¤¤¡£
-
-       * src/cmd5.c 1.26:
-       - ¥é¥ó¥À¥à¤Ê°ÌÃÖ·èÄê»þ¤ËȾ·Â4¤ò±Û¤¨¤¿¤À¤±¤Ç¥­¥ã¥ó¥»¥ë¤·¤Æ¤·¤Þ¤Ã¤Æ
-         ¹­¤¤¾ì½ê¤Ç¤âÍî¤È¤¹¥Ü¡¼¥ë¤Î¿ô¤¬¸º¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-       - °ìÊý¡¢±Êµ×´ä¤ËÁˤޤ줿¤È¤­¤ÏÌäÅú̵ÍѤǥ­¥ã¥ó¥»¥ë¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-       - Êý¸þ¤ò»ØÄꤷ¤¿¤È¤­¤Ë¤½¤ÎÊý¸þ¤Î¥â¥ó¥¹¥¿¡¼¤Î°ÌÃÖ¤ò¥¿¡¼¥²¥Ã¥È¤Ë·è¤á¤º¤Ë
-         ÊɤËÅö¤¿¤ë¤È¤³¤í¤À¤±¤Ç·èÄꤷ¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£
-       - Êɤ¬Ìµ¤¤¸Â¤ê¼ÍÄø̵¸ÂÂç¤À¤Ã¤¿¤Î¤ÇŬÅö¤ËÀ©¸Â¡£¤È¤ê¤¢¤¨¤ºMAX_SIGHT*2¡£
-
-       * src/melee1.c 1.12:
-       ¥·¥ë¥Ð¡¼¥¼¥ê¡¼¤Ë¿¨¤é¤ì¤¿¤È¤­¡¢¸÷¸»¤ÎdzÎÁ¤ò¸º¤é¤¹¤Ï¤º¤¬¡¢pval¤ò¸º¤é¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-05-26  _nothere  <_nothere@cvs>
-
-       * src/birth.c 1.35:
-       ¥¯¥¤¥Ã¥¯¥¹¥¿¡¼¥È»þ¤Ë¼ï²¥Ý¥¤¥ó¥¿¤Ê¤É¤¬»à¤ó¤À»þ¤Îʪ¤ò»Ø¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-2002-05-26  hoge  <hoge@cvs>
-
-       * src/cmd5.c 1.25, src/defines.h 1.51, src/externs.h 1.59, src/files.c 1.56, src/spells1.c 1.22, src/spells2.c 1.32, src/spells3.c 1.30, src/spellstips.h 1.18, src/tables.c 1.37, src/xtra1.c 1.40, lib/edit/k_info_j.txt 1.26, lib/edit/m_info_j.txt 1.7, lib/pref/font-xxx.prf 1.4, lib/pref/spell-xx.prf 1.2, src/avatar.c 1.4, src/birth.c 1.34:
-       Ç˼٤ΥХ°½¤Àµ&À¸Ì¿¤ò¿·¥Ð¡¼¥¸¥ç¥ó¤Ë¡£
-
-2002-05-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.25:
-       ¥³¥Þ¥ó¥Éʸ»ú¤ËÂбþ¤¹¤ëʸ»ú¡Ö!¡×¡Ö~¡×¡Ö(¡×¤¬2Åٰʾ峤±¤Æ½ñ¤¤¤Æ¤¢¤ë¤È¤­¡¢
-       ºÇ½é¤Ë½Ð¤¿¤â¤Î¤À¤±¤ò¥³¥Þ¥ó¥Éʸ»ú¤È²ò¼á¤¹¤ë¤Ù¤­¤Ê¤Î¤Ç¡¢¤½¤Î¤è¤¦¤Ë½¤Àµ¡£
-
-2002-05-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.26:
-       roff_to_buf()¤Î¶Ø§½èÍý¤¬¥Ð¥°¤Ã¤Æ¤¤¤Æ¡¢¹ÔËö¤Î"¡£"¤¬¾Ã¤¨¤¿¤ê°ì»þŪ¤Ë¹Ô¤¬
-       ·Ò¤¬¤Ã¤¿¤ê¤·¤Æ¤¤¤¿¤Î¤Ç¡¢½¤Àµ¡£
-
-2002-05-25  _nothere  <_nothere@cvs>
-
-       * src/birth.c 1.33:
-       ¥­¥ã¥é¥¯¥¿ºîÀ®¤ò·«¤êÊÖ¤¹¤È̵¸Â¥ë¡¼¥×¤Ë´Ù¤Ã¤Æ¥Õ¥ê¡¼¥º¤¹¤ë¤Î¤ò½¤Àµ.
-
-       * src/files.c 1.55:
-       ¥«¥ª¥¹¤Î¼é¸îËâ¿Àɽ¼¨¤òÆÍÁ³ÊѰۤξì¹ç¤Ë¤âŬÍѤ¹¤ë¤è¤¦¤ËÊѹ¹.
-
-       * src/cmd1.c 1.40:
-       ¡ú¥¹¥È¡¼¥à¥Ö¥ê¥ó¥¬¡¼¤òÁõÈ÷¤·¤Æ¤¤¤ë¤Èͧ¹¥Åª¤Ç¤â¹¶·â¤¹¤ë¥³¡¼¥É¤¬Ìµ¸ú¤Ë¤Ê¤Ã¤Æ
-       ¤¤¤¿Éôʬ¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ. ¤¿¤À¤·È¿´¶¤¬¤Ä¤¤¤Æ¤¤¤ë¤Î¤Ç¤¢¤Þ¤ê°ÕÌ£¤Ï¤Ê¤¤.
-
-2002-05-25  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/e_info_j.txt 1.20:
-       Nick Keulmann¤µ¤ó¤ÎÄó°Æ¤Ë¤è¤ê¡¢of Fire Bolt Åù¤Î¥¨¥´Ì¾¤ò and Fire BoltÅù¤ËÊѹ¹¡£
-
-       * src/object2.c 1.38: ¡Öµ±¤­¤Î¡×¥¨¥´»ØÎؤ¬½Ð¤Ê¤¤¥Ð¥°½¤Àµ¡£
-
-       * src/bldg.c 1.13: maney -> money
-
-       * lib/edit/r_info_j.txt 1.38:
-       rgra¤Ë¤Æ¡¢Nick Keulmann¤è¤ê±Ñ¸ìÈǤΥâ¥ó¥¹¥¿¡¼ÀâÌÀʸÄ󶡡£
-
-2002-05-23  _nothere  <_nothere@cvs>
-
-       * src/birth.c 1.32:
-       (¥­¥ã¥é¥¯¥¿¡¼¤ÎÀ¸¤¤Î©¤Á - ÊÔ½¸¥â¡¼¥É)¤È¤¤¤¦Ê¸»úÎó¤¬À¸¤¤Î©¤Á¤½¤Î¤â¤Î¤Ç¾å½ñ¤­
-       ¤µ¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¸«¤¨¤ë¤è¤¦¤Ë½¤Àµ.
-
-       * src/init1.c 1.36:
-       color_char_to_attr()¤ÎÌá¤êÃͤòbyte¤Ë¤·¤¿·ë²Ì, ?_info_j.txt¤ÎG:¤Î¿§¥¨¥ó¥È¥êÉôʬ¤¬
-       ÉÔÀµ¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¤â¸¡½Ð¤Ç¤­¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ.
-
-2002-05-23  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.44: ¹¹¿·
-
-2002-05-23  iks  <iks@cvs>
-
-       * src/autopick.c 1.24, src/cmd4.c 1.38, src/dungeon.c 1.47, src/externs.h 1.58, src/files.c 1.54, src/init1.c 1.35, src/spells2.c 1.31, src/xtra1.c 1.39, src/z-term.c 1.16:
-       Âô»³¥ï¡¼¥Ë¥ó¥°½üµî¡£
-
-2002-05-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.46, src/cmd4.c 1.37, src/japanese.c 1.6, src/monster1.c 1.15, src/monster2.c 1.27, src/object1.c 1.32, src/spells3.c 1.29, src/store.c 1.11, src/wizard2.c 1.19, src/z-term.c 1.15:
-       char ¤Ë 255 ¤òÆþ¤ì¤ë¤Ê¤É¤Îwarning¤òľ¤·¤¿¡£
-
-2002-05-22  habu  <habu@cvs>
-
-       * lib/edit/k_info_j.txt 1.25: ½Å¥é¥ó¥µ¡¼ ¢ª ¥Ø¥ô¥£¡¦¥é¥ó¥¹ ¤ËÊѹ¹¡£
-       ¥Ø¥Ó¥£¡¦{¥Õ¥ì¥¤¥ë,¥¯¥í¥¹¥Ü¥¦} ¤ò ¥Ø¥ô¥£ ¤Ëɽµ­Åý°ì¡£
-
-2002-05-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/makefile.bcc 1.4: kasina¤µ¤ó¤ÎÊó¹ð¤Ç¥À¥ó¥¸¥ç¥ó¤Ç½¦¤Ã¤¿¥¢¥¤¥Æ¥à
-       {ʤÎÉð´ï¡¢»¦Ù¤¤ÎÉð´ï¡¢»ØÎØÅùÍÍ¡¹} ¤¬¤Ê¤¼¤«pval=-1¤Ë¤Ê¤Ã¤Æ
-       Çä¤ì¤Ê¤¤¥¢¥¤¥Æ¥à¤È¤·¤ÆÀ¸À®¤µ¤ì¤ë»ö¤¬¤¢¤Ã¤¿¡£
-       ¤È¤ê¤¢¤¨¤ººÇŬ²½¶Ø»ß¥ª¥×¥·¥ç¥ó -Od ¤òÉÕ¤±¤¿¤È¤³¤í¾É¾õ¤Ï¾Ã¤¨¤¿¤Î¤Ç¡¢
-       ¤³¤ì¤ò¥Ç¥Õ¥©¥ë¥È¤Ë¤¹¤ë¡£
-       bcc¤ÎºÇŬ²½¤Î¥Ð¥°¤Î¤»¤¤¤Ê¤Î¤«¡¢¤½¤ì¤È¤â¾¤Î¥á¥â¥êÇ˲õ¥Ð¥°¤«¤É¤¦¤«¤Ï¤Þ¤ÀÉÔÌÀ¡£
-
-       * src/dungeon.c 1.46, src/report.c 1.18:
-       ÂÔµ¡¤Î¼ÁÌäʸ¤¬¥á¥Ã¥»¡¼¥¸ÍúÎò¤Ë»Ä¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-05-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra1.c 1.38:
-       ±Ñ¸ìÈǤÎÊý¤ÏŤ¤É½¼¨Ê¸»úÎó¤¬Ä¹¤¹¤®¤Æ¡¢¤¹¤°¤Ëû¤¤Êý¤Ë°Ü¹Ô¤·¤½¤¦¤Ê¤Î¤Ç
-       ¾¯¤·Ã»¤«¤¯½¤Àµ¡£
-
-       * src/defines.h 1.50, src/xtra1.c 1.37:
-       °ì»þŪ¸ú²Ì¤Îɽ¼¨¤ò¤µ¤é¤Ë¥°¥ì¡¼¥É¥¢¥Ã¥×¡£¥¹¥Ú¡¼¥¹¤Ë;͵¤¬¤¢¤Ã¤¿¤éŤ¤Ì¾Á°¤Ç
-       É½¼¨¤¹¤ë¡£Í¾Íµ¤¬Ìµ¤¯¤Ê¤Ã¤¿¤é´Á»ú1ʸ»ú¤ËÌá¤ë¡£É½¼¨½ç¤ÏŬÅö¤ËʤÙÊѤ¨¤¿¡£
-
-2002-05-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra1.c 1.36:
-       ²èÌ̲¼¤Î°ì»þŪ¤ÊÂÑÀ­¤äǽÎϤÎɽ¼¨¤òNetHack¤Î¤è¤¦¤Ë²ÄÊѤˤ·¤¿¡£
-       ´Á»ú1ʸ»ú¤Ë¸Â¤é¤º¥¹¥Ú¡¼¥¹¤¬¤¢¤ë¸Â¤ê²¿Ê¸»ú¤Ç¤â»È¤¨¤ë¡£
-
-       * src/cmd5.c 1.24:
-       ºÇ½é¤Ë±Êµ×´ä¤Î¾å¤òÁªÂò¤Ç¤­¤Æ¤·¤Þ¤¦ÌäÂ꤬»Ä¤Ã¤Æ¤¤¤¿¤Î¤ÇÁªÂò¤Ç¤­¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cmd5.c 1.23, src/defines.h 1.49:
-       ¿À¤ÎÅܤ꤬±Êµ×´ä¤Î¿¿¾å¤ËÍî¤Á¤Æ¡¢±Êµ×´ä¤Î¸þ¤³¤¦¤Þ¤Çʬ²ò¤ÎÈϰϤËÆþ¤Ã¤Æ
-       ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢±Êµ×´ä¤Î¾å¤Ë¤ÏÍî¤Á¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/birth.c 1.31, src/cmd3.c 1.21, src/cmd5.c 1.22, src/defines.h 1.48, src/flavor.c 1.15, src/melee1.c 1.11, src/racial.c 1.17, src/spells1.c 1.21, src/spells2.c 1.30, src/tables.c 1.36, src/wizard1.c 1.20, src/wizard2.c 1.18:
-       - ¥¹¥¿¡¼¥À¥¹¥È¤Çproject(-1, ...)¤ÇÍî¤Á¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-       - table.c¤Î¼öʸ̾±Ñ¸ìÈǽñ¤¤¤¿¡£
-       - Ç˼٤αѸì̾¤È¤ê¤¢¤¨¤ºCrusade¡£
-       - ¿À¤ÎÅܤê¤Î¥¿¡¼¥²¥Ã¥È¤¬±Êµ×´ä¤Î¸þ¤³¤¦¤Ë»ØÄê¤Ç¤­¤¿¤Î¤ò½¤Àµ¡£
-       - ¥¯¥é¥¹¥Ñ¥ï¡¼¤Î¼ïÎà¤ÎȽÄ꤬realm==REALM_LIFE¤À¤Ã¤¿¤Î¤Ç¡¢
-         is_good_realm()¤È¤¤¤¦È½Äê¥Þ¥¯¥í¤ò½ñ¤¤¤Æ¤ª¤­¤«¤¨¡£
-       - ¥Ñ¥é¥Ç¥£¥ó¤¬ËâË¡½ñ¤ò²õ¤·¤¿¤È¤­¤ÎȽÄê¤âis_good_realm()¤òήÍѤ·¤Æ½¤Àµ¡£
-
-2002-05-20  hoge  <hoge@cvs>
-
-       * src/dungeon.c 1.45, src/effects.c 1.21, src/externs.h 1.57, src/load.c 1.26, src/melee1.c 1.10, src/racial.c 1.16, src/save.c 1.13, src/spells1.c 1.20, src/spells2.c 1.29, src/spells3.c 1.28, src/tables.c 1.35, lib/edit/m_info_j.txt 1.6, lib/edit/r_info_j.txt 1.37, src/cmd1.c 1.39, src/cmd5.c 1.21:
-       Ç˼٤¬¤À¤¤¤¿¤¤¤Ç¤­¤¿¡£
-       ²òÀâ¤È¤«¤Þ¤À¡£
-
-2002-05-19  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.43: ¹¹¿·
-
-       * lib/edit/f_info_j.txt 1.7: FEAT_UNDETECTED ¤ÎÄêµÁÄɲá£
-
-       * src/cave.c 1.45, src/defines.h 1.47, src/xtra2.c 1.35:
-       view_granite_lite off¤Çview_unsafe_grids on ¤Î¤È¤­ÊɤòÁ´Éôx¤Ë¤·¤Æ¤·¤Þ¤Ã
-       ¤Æ¤¤¤¿¥Ð¥°½¤Àµ¡£¤µ¤é¤Ë FEAT_UNDETECTED ¤òƳÆþ¤·¤Æ¡¢Ì¤´¶ÃΤÎÃÏ·Áɽ¼¨¤Î
-       Ê¸»ú¤ä¥¿¥¤¥ë¤òÊѹ¹¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/xtra2.c 1.34:
-       ¥Ñ¥È¥í¥ó¤ÎÊ󽷤ǥì¥Ù¥ë¤¬¾å¤ë¤È¡¢ºÆµ¢Åª¤Ëcheck_experience()¤¬¸Æ¤Ð¤ì¤Æ¡¢
-       Ç½ÎÏÃ;徺¤Î½èÍý¤¬¥Ð¥°¤ë¤Î¤Ç¡¢¥Ñ¥È¥í¥ó¤Î½èÍý¤Ï¥ë¡¼¥×¤ÎºÇ¸å¤Ë°ÜÆ°¡£
-
-2002-05-19  _nothere  <_nothere@cvs>
-
-       * src/cave.c 1.44:
-       view_granite_lite¤ânew_ascii_graphics¤âOFF¤Î»þ¤ËÃϾå¤Îü¤¬Êɤ˸«¤¨¤ë¸½¾Ý¤Î½¤Àµ.
-
-2002-05-18  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.23, src/cmd4.c 1.36, src/dungeon.c 1.44, src/externs.h 1.56:
-       {=g}¤Î½èÍý¤Î»ÅÊý¤òÊѤ¨¤Æ¡¢¥Ï¡¼¥É¥³¡¼¥É¤Ç¤¤¤Á¤¤¤ÁȽÄꤷ¤Ê¤¤¤Ç¡¢
-       ¼«Æ°½¦¤¤¤ÎÅÐÏ¿¥ê¥¹¥È¤Î°ìÈֺǽé¤Ë¡Ö(:=g¡×¤ò¶¯À©Åª¤ËÆþ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/help/raceclas.txt 1.2:
-       ±Ñ¸ìÈǤÎÀ­³ÊÀâÌÀ¤¬°ìÉô²õ¤ì¤Æ¤¿(¥­¡¼¥Ü¡¼¥É¥Þ¥¯¥í¤Ç¼«Æ°¤Ç½èÍý¤·¤Æ¤¿¤Î¤¬¼ºÇÔ)¤Î¤Ç½¤Àµ¡£
-
-       * lib/help/joption.txt 1.11, lib/help/option.txt 1.12:
-       ¥È¥é¥Ã¥×´¶ÃÎÈϰϤ«¤é½Ð¤ë¤È¤­¤Î·Ù¹ð¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ½¤Àµ¡£
-
-       * lib/help/joption.txt 1.10, lib/help/option.txt 1.11, lib/pref/pref-opt.prf 1.9, src/externs.h 1.55, src/generate.c 1.23, src/spells2.c 1.28, src/tables.c 1.34, src/variable.c 1.23, src/xtra2.c 1.33, src/cave.c 1.43, src/cmd1.c 1.38, src/defines.h 1.46:
-       Unangband ¤è¤ê¡¢view_unsafe_grids¥ª¥×¥·¥ç¥ó¼ÂÁõ¡£
-       Ì¤ÃΤÎÃÏ·Á¤Ç¥È¥é¥Ã¥×´¶ÃκѤߤÇ̵¤¤¾ì½ê¤Ï³¥¿§¤Î'x'¤òɽ¼¨¤¹¤ë¡£
-       ·¼ÌؤäËâË¡¤ÎÃÏ¿Þ¤ò»È¤¦¤È¸«¤¨¤Ê¤¯¤Ê¤ë¤¬¡¢¤½¤ì¤Þ¤Ç¤ÏÊØÍø¡£
-
-2002-05-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd2.c 1.25, src/dungeon.c 1.43:
-       ¥¢¥ê¡¼¥Ê¤Ç¡¢¤¯¤µ¤Ó ¤À¤±¤òÅꤲ¤é¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/xtra2.c 1.32: look¥³¥Þ¥ó¥É¤Ç̾Á°¤Î¼¡¤Ë(¥ì¥Ù¥ë???, Ìµ½ý)Åù¤Èɽ¼¨¡£
-
-       * src/spells3.c 1.27, src/wizard2.c 1.17, src/xtra2.c 1.31, src/cmd1.c 1.37, src/cmd2.c 1.24, src/cmd5.c 1.20, src/cmd6.c 1.21, src/defines.h 1.45, src/dungeon.c 1.42, src/externs.h 1.54, src/generate.c 1.22, src/grid.c 1.4, src/init1.c 1.34, src/mane.c 1.8, src/melee2.c 1.23, src/mind.c 1.9, src/monster2.c 1.26, src/mspells1.c 1.23, src/mspells2.c 1.17, src/mspells3.c 1.12, src/mutation.c 1.5, src/rooms.c 1.15, src/spells1.c 1.19, src/spells2.c 1.27, src/artifact.c 1.22:
-       summon_specific() ¤ä¡¢place_monster()Åù¤Î»ÅÍÍÊѹ¹¡£
-       u32b mode ¤È¤¤¤¦ÊÑ¿ô°ì¤Ä¤ÇÁ´Éô¤Î¥Õ¥é¥°¤òɽ¸½¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/edit/a_info_j.txt 1.22: The Angler ¤Ï¸Ä¿Í̾¤È¤·¤Æ¤Ï¸íÌõ¡£
-
-       * src/cmd5.c 1.19, src/defines.h 1.44, src/spells1.c 1.18, src/spells2.c 1.26:
-       PROJECT_FAST¤Î¼ÂÁõ¡£¥¹¥¿¡¼¥À¥¹¥È¤Ï¤Á¤ã¤ó¤È¥¹¥¿¡¼¥À¥¹¥È¤Ã¤Ý¤¯¤Ê¤Ã¤¿¡£
-       ¥é¥ó¥À¥à¤Ê»¶Íð¤ÎÉý¤¬dev=1¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤¬¡¢¤â¤Ã¤È»¶Í𤷤¿Êý¤¬¡Ö¤é¤·¤¤¡×¤Î¤Çdev=3¤Ë¤·¤¿¡£
-
-2002-05-16  _nothere  <_nothere@cvs>
-
-       * src/monster2.c 1.25:
-       ¥«¥á¥ì¥ª¥ó¤ÏºÇ½é¤Ë·è¤Þ¤Ã¤¿Â°À­¤Î¥â¥ó¥¹¥¿¡¼¤Ë¤·¤«²½¤±¤Ê¤¤¤Î¤Ç, À¸À®»þ¤Ësub_align¤â°ìÃפµ¤»¤ë¤è¤¦¤Ë¤·¤¿. ¤Þ¤¿, ¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤Ç¤Ï¤Ê¤¯¼«Á³À¸À®¤µ¤ì¤¿¥«¥á¥ì¥ª¥ó¤Î²¦¤Îsub_align¤ò³°¸«¤Ë¤è¤é¤ºÃæΩ¤È¤·¤¿.
-
-2002-05-16  iks  <iks@cvs>
-
-       * lib/edit/a_info_j.txt 1.21:
-       ToME¤Ç¤Îȯ²»¤Ë½¾¤Ã¤¿Ì¾¾ÎÊѹ¹¤ËÊѶò¤Ç¤âÄÉ¿ï¡£
-
-2002-05-15  _nothere  <_nothere@cvs>
-
-       * src/monster2.c 1.24: ¥â¥ó¥¹¥¿¡¼À¸À®»þ¤Îsub_alignÉÕ¤±¤Î¾ì½êÊѹ¹.
-
-       * src/spells2.c 1.25: ±Ñ¸ìÈǤǤΰÀ­É½µ­¤Î½¤ÀµËº¤ì¤Î½¤Àµ.
-
-2002-05-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.22: Ì¤»ÈÍÑ¤Î¥í¡¼¥«¥ëÊÑ¿ôºï½ü
-
-2002-05-14  hoge  <hoge@cvs>
-
-       * src/dungeon.c 1.41, src/effects.c 1.20, src/externs.h 1.53, src/files.c 1.53, src/flavor.c 1.14, src/init2.c 1.11, src/monster2.c 1.23, src/mspells1.c 1.22, src/object2.c 1.37, src/rooms.c 1.14, src/spells1.c 1.17, src/spells2.c 1.24, src/spells3.c 1.26, src/spellstips.h 1.17, src/store.c 1.10, src/tables.c 1.33, src/types.h 1.19, src/wizard1.c 1.19, src/wizard2.c 1.16, src/xtra2.c 1.30, lib/edit/k_info_j.txt 1.24, lib/edit/m_info_j.txt 1.5, lib/edit/misc_j.txt 1.9, lib/edit/t0000002_j.txt 1.4, lib/edit/t0000003_j.txt 1.4, lib/edit/t0000004_j.txt 1.4, lib/edit/t0000005_j.txt 1.2, lib/edit/t_lite_j.txt 1.7, lib/pref/font-xxx.prf 1.3, src/avatar.c 1.3, src/birth.c 1.30, src/cmd3.c 1.20, src/cmd5.c 1.18, src/defines.h 1.43:
-       Ç˼١£¤Þ¤Àºî¤Ã¤Æ¤ëÅÓÃæ¡£
-       ¤È¤ê¤¢¤¨¤º¤Ç¤­¤Æ¤ë¤È¤³¤í¤Þ¤Çcommit¡£
-       ¸ú²Ì¤Îɽ¼¨/¥ì¥Ù¥ë/¼ºÇÔΨÅù¤Ï¤Þ¤À¡£
-
-2002-05-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.21:
-       - ¤Þ¤¿¤âÉä¹æ¤ò´Ö°ã¤¨¤Æ¾²¤Î¾å¤Î¥¢¥¤¥Æ¥à¤ËÂФ·¤Æ¼«Æ°¹ï¤ß¤¬Àµ¾ïÆ°ºî¤·¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       - {=g}¤È¹ï¤ó¤À¥¢¥¤¥Æ¥à¤Ï¼«Æ°Ç˲õ¤ÎÂоݤ«¤é¤Ï¤º¤¹¤Ï¤º¤À¤Ã¤¿¤Î¤Ë¡¢
-         »ý¤Áʪ¤ÎÃæ¤Ë¤¢¤Ã¤Æ´ÕÄꤷ¤¿¤È¤­¤ÏÇ˲õ¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-05-13  _nothere  <_nothere@cvs>
-
-       * src/spells2.c 1.23:
-       Ä´ºº¥¢¥¤¥Æ¥à¤ò»È¤Ã¤¿»þ¤Î¥â¥ó¥¹¥¿¡¼Â°À­É½¼¨¤Î±Ñ¸ìɽµ­¤òû¤¯¤·¤¿.
-
-       * src/dungeon.c 1.40:
-       slot¤¬ÅϤµ¤ì¤ë¤Ù¤­¤È¤³¤í¤Ëo_ptr¤¬ÅϤµ¤ì¤Æ¤¤¤Æ¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2002-05-13  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.42: ¹¹¿·
-
-       * src/autopick.c 1.20, src/externs.h 1.52, src/spells3.c 1.25:
-       - »ý¤Áʪ¤ÎÃæ¤Î¥¢¥¤¥Æ¥à¤ò´ÕÄꤷ¤Æ¼«Æ°¹ï¤ß¤ä¼«Æ°Ç˲õ¤Ë¥Þ¥Ã¥Á¤µ¤»¤è¤¦¤È¤·¤¿
-         ¤È¤­¡¢¡Ö¼ý½¸Ãæ¤Î¡×¤ËÀè¤Ë¥Þ¥Ã¥Á¤·¤Æ¤·¤Þ¤Ã¤Æ´üÂÔÄ̤ê¤ÎÆ°ºî¤ò¤·¤Ê¤¤»ö¤¬¤¢¤Ã
-         ¤¿¤Î¤Ç¡¢¡Ö¼ý½¸Ãæ¤Î¡×¤Î½èÍý¤ò¾¯¤·Êѹ¹¡¢¡ÖÂоݤÎo_ptr°Ê³°¤Ç¡×¤½¤ì¤ÈƱ¤¸
-         ¼ïÎà¤Î¥¢¥¤¥Æ¥à¤ò»ý¤Ã¤Æ¤¤¤¿¤é¥Þ¥Ã¥Á¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       - ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Ç»ý¤Áʪ¤äÁõÈ÷¤òɽ¼¨¤·¤Æ¤¤¤ë¤È¤­¡¢¼«Æ°¹ï¤ß¤Î¸å¤Ç¤Á¤ã¤ó
-         ¤Èɽ¼¨¤ò¹¹¿·¡£¤µ¤é¤Ë¼«Æ°¹ï¤ß¤Ç¡Ö$¡×¤ä¡Ö.¡×¤òÉÕ¤±¤Æ¤¤¤¿»þ¤ËÈ÷¤¨¤Æ¡¢
-         PU_BONUS¤Î¥¢¥Ã¥×¥Ç¡¼¥È¥Õ¥é¥°¤âÉղá£
-
-2002-05-08  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd3.c 1.19, src/externs.h 1.51, src/object2.c 1.36, src/spells3.c 1.24, src/cmd1.c 1.36:
-       can_player_destroy_object()¤ÎexternÀë¸À¤¬¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£¤Ä¤¤¤Ç¤Ë
-       Â¾¤Î¾ì½ê¤Ç¤³¤Î´Ø¿ô¤ÈƱ¤¸½èÍý¤ò¤·¤Æ¤¤¤ë¤È¤³¤í¤ò¤³¤Î´Ø¿ô¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-05-07  _nothere  <_nothere@cvs>
-
-       * src/autopick.c 1.19:
-       ¼«Æ°Ç˲õ»þ¤Ë¥¢¥¤¥Æ¥à̾¤¬½é´ü²½¤µ¤ì¤Ê¤¤¤Þ¤Þ»È¤ï¤ì¤Æ¥¢¥¤¥Æ¥à̾¤Îɽ¼¨¤¬¶¸¤¦¤Î¤ò½¤Àµ.
-
-2002-05-07  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/misc_j.txt 1.8, lib/edit/r_info_j.txt 1.36, lib/file/mondeath_j.txt 1.2, lib/file/monspeak_j.txt 1.5:
-       Ëâ¿Í¥¦¥©¡¼¥±¥óÄɲá£
-
-       * lib/pref/font-win.prf 1.3: win¤ÎƦÉå¤âTERM_L_UMBER¤Ë¡£
-
-       * lib/edit/f_info_j.txt 1.6, src/cave.c 1.42:
-       ±Êµ×´ä¤Î¿§¤òTERM_L_UMBER(15ÈÖ;U)¤Ë¤·¤¿¡£¸÷¸»ÈϰϤο§TERM_YELLOW¤ÏÉáÄ̤ÎÊɤÎ
-       ¾ì¹ç¤È¶èÊ̤¬ÉÕ¤«¤Ê¤¯¤Æº¤¤ë¤Î¤Ç¡¢TERM_L_UMBER¤Ï¸÷¸»ÈϰϤǿ§¤¬ÊѤï¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd4.c 1.35, src/dungeon.c 1.39:
-       ¼«Æ°½¦¤¤¥Õ¥¡¥¤¥ë¤Ïpicktype-<name>.prf¤Èpicktype.prf¤ÎξÊý¤¬¤¢¤ë¤È¤­¡¢
-       Ì¾Á°ÉÕ¤­¤ÎÊý¤À¤±¤òÆɤà¤è¤¦¤Ë¤·¤¿¡£
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤È¤Î´Ø·¸¤â¥³¥ó¥·¥¹¥Æ¥ó¥È¤Ë¤Ê¤ë¡£
-
-       * src/mspells3.c 1.11: ÀÄËâÆ»»Õ¤ÎËâË¡¤Î¼ºÇÔΨɽ¼¨¤Î||¤È&&¤Î´Ö°ã¤¤½¤Àµ¡£
-
-2002-05-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.18:
-       inscribe_flags()¤Î´Ø¿ôÀë¸À¤¬auto_pickup_items()¤ÎÃæ¤Ë¤¢¤Ã¤¿¤Î¤Çºï½ü¡£
-       ¤³¤¦¤¤¤¦½ñ¤­Êý¤¹¤ë¤Ù¤­¤Ç¤Ê¤¤¤Í¡£
-
-2002-05-06  _nothere  <_nothere@cvs>
-
-       * src/externs.h 1.50:
-       ºÆÀë¸À¤Ç·¿¤¬°ìÃפ·¤Ê¤¤¥¨¥é¡¼¤¬½Ð¤ë¤Î¤Ç, inscribe_flags()¤Î¥×¥í¥È¥¿¥¤¥×¤ò´Þ¤á¤¿.
-
-2002-05-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/flavor.c 1.13:
-       ¡Ö{¼ö¤ï¤ì¤Æ¤¤¤ë}¡×¡Ö{¶õ}¡×¡Ö{̤´ÕÄê}¡×Åù¤Îµ¼»÷ÌäòËÜÅö¤ÎÌäǾå½ñ¤­¤·¤Ê¤¤¤Ç
-       ¡Ö{¼ö¤ï¤ì¤Æ¤¤¤ë, +ÏÓrÎäÍð}¡×Åù¤Î¤è¤¦¤Ëɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¤¿¤À¤·¡¢¡Ö??%°ú¤­¡×¤Îɽ¼¨¤ÏÎã³°¤È¤·¤Æ¾å½ñ¤­¤¹¤ë¡£
-
-       * src/autopick.c 1.17: Éä¹æ´Ö°ã¤Ã¤Æ¥¯¥é¥Ã¥·¥å¤·¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/dungeon.c 1.38:
-       ´Ê°×´ÕÄê¤Î¸å¤Ç¤â¼«Æ°Ç˲õ¤È¼«Æ°¹ï¤ß¤òŬÍÑ¡£¤³¤ì¤Ç auto-squelch ¤ÈƱÅù¡£
-
-       * Changelogs 1.41: ¹¹¿·
-
-       * src/autopick.c 1.16, src/cmd1.c 1.35, src/externs.h 1.49, src/spells3.c 1.23:
-       ¼«Æ°Ç˲õ¤È¼«Æ°¹ï¤ßµ¡Ç½¤ò¡¢¾²¾å¤ä»ý¤Áʪ¤Î´ÕÄê¤Î¸å¤Ë¤âŬÍѤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       Ê¤ÎÉð´ï¤òÇ˲õ¤¹¤ëÀßÄê¤ò¤·¤Æ¤¢¤ì¤Ð¡¢´ÕÄꤷ¤¿½Ö´Ö¤ËÇ˲õ¡¢
-       %¹ï¤ß¤ÎÀßÄê¤ò¤·¤Æ¤¢¤ì¤Ð*´ÕÄê*¤·¤¿½Ö´Ö¤ËÂÑÀ­¹ï¤ß¡¢Åù¤¬¤Ç¤­¤ë¡£
-
-2002-05-04  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jobjects.txt 1.6, lib/help/objects.txt 1.6, lib/pref/pickpref.prf 1.5, src/cmd3.c 1.18:
-       - ¿Í¿©¤¤¤ÎÉð´ï¤ÎÂÑÀ­¼«Æ°¹ï¤ß¤Ï"/p"¤Ë¤¹¤ë¤Ù¤­¤Ê¤Î¤Ç½¤Àµ¡£
-       - ÂÑÀ­¼«Æ°¹ï¤ß¤Î¥Ø¥ë¥×ʸ¾Ï½¤Àµ¡£Æä˱ѸìÈǤÏʸ¾Ï½¤Àµ¡£
-       - "%"¤ÎƯ¤­¤ÏÊѶò¤ËÆë¤ì¿Æ¤·¤ó¤ÀÆüËܿͤˤ·¤«°ÕÌ£¤Ê¤¤¤Î¤Ç¡¢
-         ±Ñ¸ìÈǤΥµ¥ó¥×¥ëÀßÄê¤Ç¤Ï"%all"¤ò»È¤¦»ö¤Ë¤·¤¿¡£
-
-       * lib/help/joption.txt 1.9, lib/help/option.txt 1.10:
-       ¥Ø¥ë¥×¤Ëdisturb_trap_detect¤Èalert_trap_detect¤òÄɲá£
-
-       * lib/pref/pref-opt.prf 1.8, src/defines.h 1.42, src/externs.h 1.48, src/generate.c 1.21, src/spells2.c 1.22, src/tables.c 1.32, src/types.h 1.18, src/variable.c 1.22, src/cmd1.c 1.34:
-       - CAVE_DETECT¥Õ¥é¥°¤ò¿·Àß¡¢¥È¥é¥Ã¥×´¶ÃÎÈÏ°ÏÆâ¤Ë¤¤¤ë»ö¤ò¼¨¤¹¡£(¤¿¤À¤·¡¢´¶ÃÎÈÏ°Ï
-         ¤Î¶­³¦Éôʬ¤Ï´¶ÃΤ·¤Æ¤¢¤Ã¤Æ¤âCAVE_DETECT¤òÉÕ¤±¤Ê¤¤¡¢°ìÊâÊ⤤¤¿¤é³°¤À¤«¤é)
-       - alert_trap_detect¥ª¥×¥·¥ç¥ó¤ò¿·Àß¡£Èϰϳ°¤Ë½Ð¤¿¤È¤­¤Î¥á¥Ã¥»¡¼¥¸¤Î̵ͭ¤òÀßÄê¡£
-
-       * src/generate.c 1.20: staticÉÕ¤±Ëº¤ì¡£
-
-       * src/cmd1.c 1.33, src/cmd2.c 1.23, src/defines.h 1.41, src/generate.c 1.19, src/hissatsu.c 1.8, src/melee2.c 1.22, src/monster2.c 1.22, src/spells1.c 1.16, src/spells2.c 1.21:
-       CAVE_FLOOR¤äCAVE_MASK¤Î̵Â̤ÊÁàºî¤òºï½ü¡£¥À¥ó¥¸¥ç¥óÀ¸À®Ãæ¤À¤±»ÈÍѤ¹¤ë¥Õ¥é¥°
-       ¤ÏÀ¸À®¤¬½ª¤Ã¤¿¤éÁ´¤Æ¥¯¥ê¥¢¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£º£¸å¤Ï¡¢CAVE_MASK¤Ë´Þ¤Þ¤ì¤ë¥Õ¥é¥°¤Ï
-       ¥À¥ó¥¸¥ç¥óÀ¸À®¤Î¸å¤Ê¤éÊ̤Υե饰¤È¤·¤ÆÍøÍѤǤ­¤ë¡£
-
-       * src/maid-x11.c 1.2:
-       ¤»¤Ã¤«¤¯maid-x11.c¤ËÆþ¤Ã¤Æ¤¤¤ë¡¢¥¬¥ó¥Þ¡¦¥³¥ì¥¯¥·¥ç¥ó¤Î¥³¡¼¥É¤¬ÀßÄêÃͤò
-       Êݸ¤¹¤ë¤Ù¤­ÊÑ¿ô¤¬¥í¡¼¥«¥ëÊÑ¿ô¤Ë¤µ¤ì¤Æ¤¤¤Æµ¡Ç½¤¬Æ¯¤¤¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ÇÀÅ
-       ÅªÊÑ¿ô¤Ë¤·¤Æ»È¤¨¤ë¤è¤¦¤Ë½¤Àµ¡£´Ä¶­ÊÑ¿ô ANGBAND_X11_GAMMA ¤Ë 1¡Á255¤ÎÃÍ
-       ¤òÆþ¤ì¤ë¤È¥¿¥¤¥ë¤Î¿§(¥³¥ó¥È¥é¥¹¥È¡©)¤¬ÊѤï¤ë
-
-2002-05-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.41, src/main-win.c 1.14, src/z-term.c 1.14:
-       - ÆóÇÜÉýASCIIɽ¼¨¤Ç¡¢´Á»ú¤Î2byteÌܤÎattr(¿§»ØÄê)¤ò¾¡¼ê¤Ë255¤Ë·è¤áÂǤÁ¤·¤Æ
-         2byteÌܤμ±Ê̤˻ȤäƤ¤¤¿¤é¡¢screen dump¤Ç¤½¤ì¤òÁÇľ¤Ë½ÐÎϤ·¤Æʸ»ú²½¤±
-         ¤·¤Æ¤¤¤¿¤Î¤Ç¡¢½¤Àµ¡£255¤Ë¤»¤º¡¢0xf0¤ò²Ã¤¨¤ë¤À¤±¤Ë¤·¤¿¡£
-       - ¤µ¤é¤Ë¡¢winÈǤÇÆóÇÜÉýƦÉå¤ÎÆâÉô¥³¡¼¥É¤Ë»È¤Ã¤Æ¤¤¤¿¡Ö¢ò¡×¤â¤½¤Î¤Þ¤Þ½ÐÎÏ
-         ¤µ¤ì¤Æ¤·¤Þ¤¤¤½¤¦¤Ê¤Î¤Ç¡¢Âå¤ê¤Ë¡Ö¢£¡×¤ò»È¤¦»ö¤Ë¤·¤¿¡£
-         ËÜÅö¤Ï½ÐÎÏ»þ¤Ë¡Ö¡ô¡×¤ËÃÖ¤­ÊѤ¨¤ë¤Î¤¬°ìÈÖ¤¤¤¤¤¬¡¢¤Ê¤ó¤«¥³¡¼¥É¤ÎÅÔ¹ç¾å
-         Â礬¤«¤ê¤Ê¥Ï¥Ã¥¯¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¤ä¤á¤Æ¤ª¤¯¡£
-
-       * src/autopick.c 1.15: Á°²ó¤ÎÊѹ¹¤Ç¥¨¥ó¥Ð¥°¤·¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-05-02  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.7, autopick_eng.txt 1.9, readme.txt 1.8, readme_eng.txt 1.8:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤ÎÀâÌÀÄɲá£
-
-       * src/externs.h 1.47, src/object1.c 1.31, src/xtra2.c 1.29:
-       easy_floor¤Ç¡¢
-       - look¥³¥Þ¥ó¥É»ÈÍÑÃæ¤ä°ÜÆ°Ãæ¤Ë¾²¾å¤Î23¸Ä¤ò±Û¤¨¤ë¥¢¥¤¥Æ¥à»³¤Î¿ô¤òÀµ¤·¤¯É½¼¨¡£
-       - 'x'¤Çɽ¼¨¤¹¤ë¾²¾å¤Î¥¢¥¤¥Æ¥à¥ê¥¹¥È¤â¥ê¥¿¡¼¥ó¥­¡¼¤Ç¥¹¥¯¥í¡¼¥ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/hissatsu.c 1.7:
-       É´¿Í»Â¤ê¤ÇºÇ½é¤Ë35ÅÀ¡¢¤µ¤é¤Ë»Â¤ê³¤±¤¿²ó¿ôx8¸º¤Ã¤Æ¡¢¤µ¤é¤Ë½ªÎ»¸å¤Ë¤Þ¤¿
-       35ÅÀ¸º¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢ºÇ¸å¤Î35ÅÀ¤Ï¸º¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-04-30  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.23, lib/file/news.txt 1.7, lib/file/news_j.txt 1.6, src/cmd2.c 1.22, src/cmd6.c 1.20, src/defines.h 1.40, src/dungeon.c 1.37, src/externs.h 1.46, src/generate.c 1.18, src/init1.c 1.33, src/load.c 1.25, src/monster1.c 1.14, src/monster2.c 1.21, src/mspells1.c 1.21, src/mspells2.c 1.16, src/rooms.c 1.13, src/save.c 1.12, src/spells1.c 1.15, src/spells2.c 1.20, src/spells3.c 1.22, src/spellstips.h 1.16, src/types.h 1.17, src/wizard2.c 1.15, src/xtra2.c 1.28:
-       branch-_nothere-subalign¤ò¥Þ¡¼¥¸.
-
-2002-04-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.30:
-       ¥³¥Þ¥ó¥É¥á¥Ë¥å¡¼Ãæ¤Ç¥¢¥¤¥Æ¥à¤òÁªÂòÃæ¤Ë¾²¾å¤Î¥¢¥¤¥Æ¥à¤òÁªÂò¤¹¤ëºÝ¤ÎÉÔ¶ñ¹ç½¤Àµ¡£
-       - easy_floor¤¬¥ª¥Õ¤Ç¤â¥á¥Ë¥å¡¼»ÈÍÑÃæ¤Ïget_item_floor()¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-       - 4 or 6 for floor Åù¤Îɽ¼¨¤ò±Ñ¸ìÈǤÇ˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲá£
-       - ÆüËܸìÈǤǤâ°ì²Õ½ê¤À¤±É½¼¨¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤ò¼éÀª¡£¥³¡¼¥ÉÀ°Íý¡£
-
-       * src/object1.c 1.29:
-       easy_floor¤Ç¥¢¥¤¥Æ¥à¤ò¾²¤«¤éÁªÂò¤¹¤ë¤È¤­¥ê¥¿¡¼¥ó¥­¡¼¤Ç¥¹¥¯¥í¡¼¥ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       23¸Ä¤ò±Û¤¨¤ë¥¢¥¤¥Æ¥à¤¬¤¢¤ë¤È¤­¤Ë»È¤¦¡£
-
-       * src/cave.c 1.40, src/defines.h 1.39, src/xtra1.c 1.35:
-       ¸÷¸»È¾·Â¡¢¡ù»ØÎؤȥɥ¥Õ¤Îðô¾þ¤ê¤òÉÕ¤±¤ì¤ÐºÇÂçÃͤ¬14¤À¤Ã¤¿¤Î¤Ç14¤Ë½¤Àµ¡£
-
-       * lib/help/helpinfo.txt 1.5, lib/help/jbirth.hlp 1.5, lib/help/jhelpinfo.txt 1.4:
-       ¥Ø¥ë¥×¤Î»È¤¤Êý¤ÎÀâÌÀ¤ò¹¹¿·¡£jk28¤Ç¾å²¼¤Ë°ÜÆ°¡¢Åù¡£
-
-       * src/cave.c 1.39, src/defines.h 1.38, src/xtra1.c 1.34:
-       ¸÷¸»¤ÎȾ·Â¤ÎºÇÂçÃͤò11¤Ë³ÈÄ¥¡£ÇÛÎó°î¤ì¤¬¤Ê¤¤»ö¤òdefine.h¤Î¥³¥á¥ó¥È¤Ëµ­½Ò¡£
-
-2002-04-29  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.40: ¹¹¿·
-
-       * lib/edit/f_info_j.txt 1.5: museum ¢ª Museum
-
-       * src/init1.c 1.32, lib/help/Makefile.am 1.5, lib/help/birth.hlp 1.5, lib/help/birth.txt 1.8, lib/help/charattr.hlp 1.6, lib/help/charattr.txt 1.8, lib/help/dungeon.txt 1.8, lib/help/general.txt 1.8, lib/help/help.hlp 1.8, lib/help/jbirth.hlp 1.4, lib/help/jbirth.txt 1.7, lib/help/jcharattr.hlp 1.4, lib/help/jcharattr.txt 1.9, lib/help/jdungeon.txt 1.6, lib/help/jgeneral.txt 1.6, lib/help/jhelp.hlp 1.6, lib/help/jmagic.txt 1.6, lib/help/jraceclas.hlp 1.1, lib/help/jraceclas.txt 1.1, lib/help/magic.txt 1.8, lib/help/raceclas.hlp 1.1, lib/help/raceclas.txt 1.1, src/birth.c 1.29, src/externs.h 1.45, src/files.c 1.52:
-       - ¥Ø¥ë¥×¥Õ¥¡¥¤¥ë¤ÎÂçÉýºÆÊÔ¡£¼ï²¡¢¿¦¶È¡¢À­³Ê¡¢¤ÎÀâÌÀ¤ò¤Þ¤È¤á¤Æ1¥Õ¥¡¥¤¥ë¤Ë¤·¤¿¡£
-       - ¥Ø¥ë¥×ʸ¾ÏÃæ¤Ç¥«¥é¡¼¤¬»È¤¨¤ëµ¡Ç½ ToME ¤«¤é°Ü¿¢¡£¤Þ¤ºÃÏ·Á¤ÎÀâÌÀ¤Ë»È¤Ã¤Æ¤ß¤¿¡£
-
-2002-04-29  _nothere  <_nothere@cvs>
-
-       * src/monster2.c 1.20.2.6: ºÙ¤«¤¤ÂåÆþ°ÌÃ֤ν¤Àµ.
-
-       * src/monster2.c 1.20.2.5: Ã±½ã¤ÊÂåÆþ¤ÇÎɤ«¤Ã¤¿¾ì½ê¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2002-04-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.28:
-       ±Ñ¸ìÈǤǠ'4 or 6 for Inven' ¤Îɽ¼¨¤ò˺¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/pref/pref-opt.prf 1.7: pref-opt.prfÃæ¤Îhilite_player¤Î½¤ÀµËº¤ì¡£
-
-       * Changelogs 1.39, lib/help/joption.txt 1.8, lib/help/option.txt 1.9, lib/pref/pref-opt.prf 1.6, src/cmd1.c 1.32, src/externs.h 1.44, src/files.c 1.51, src/tables.c 1.31, src/variable.c 1.21:
-       - find_cut¤Èfind_examine¤ÎÀâÌÀʸ(¥²¡¼¥àÃæ¤È¥Ø¥ë¥×ʸ¾Ï¤ÎξÊý)¤ò¤ï¤«¤ê¤ä¤¹¤¯¡£
-       - ¤Ä¤¤¤Ç¤Ëcmd1.c¤Î¥³¥á¥ó¥È¡ÖThe running algorithm¡×¤Î´Ö°ã¤¤½¤Àµ&¤ï¤«¤ê¤ä¤¹¤¯¡£
-       - ¤Þ¤À»Ä¤Ã¤Æ¤¿ÈÝÄê·Á skip_mutation ¢ª display_mutation
-       - hilite_player¤Î¥Ç¥Õ¥©¥ë¥È¤òoff¤Ë¡£
-
-       * readme.txt 1.7, readme_eng.txt 1.7:
-       ¥³¥Þ¥ó¥É¥ê¥¹¥È¤Ë¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿(_)¤òÄɲá£
-
-       * lib/help/joption.txt 1.7, lib/help/option.txt 1.8, lib/pref/pref-opt.prf 1.5, src/cmd3.c 1.17, src/dungeon.c 1.36, src/externs.h 1.43, src/flavor.c 1.12, src/tables.c 1.30, src/variable.c 1.20:
-       - ¥ª¥×¥·¥ç¥ó̾confirm_wear ¤ÎÊÑ¿ô̾¤¬ wear_confirm ¤À¤Ã¤¿¤Î¤Ç¡¢¥ª¥×¥·¥ç¥ó̾¤Ë¹ç¤ï¤»¤¿¡£
-       - ÈÝÄê·Á¤Î¥ª¥×¥·¥ç¥ó̾¤ò¤Á¤ã¤ó¤È½¤Àµ
-         avoid_abort ¢ª check_abort¡¢old_way_of_kaz ¢ª change_numeral
-       - target_pet¤Ï¥Ç¥Õ¥©¥ë¥È¤Çoff¤Ë½¤Àµ¡£
-
-       * lib/pref/pref-opt.prf 1.4, src/tables.c 1.29:
-       pref-opt¤Î¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Õ¥©¥ë¥ÈÀßÄê¤ÎʤӤò¤Á¤ã¤ó¤ÈÊѶò¤Ë¹ç¤»¤¿¡£
-       pref-opt¤ÇÈ´¤±¤Æ¤¤¤¿¥ª¥×¥·¥ç¥ó¤¤¤¯¤Ä¤«¤â¤Á¤ã¤ó¤ÈÊä´°¡£
-       table.c¤Î¥Ç¥Õ¥©¥ë¥È¤È¿©¤¤¤Á¤¬¤Ã¤Æ¤¤¤¿ÀßÄê¤Ï°ìÃפµ¤»¤Æ¡¢°ìÉôtable.c¤ÎÊý¤òÊѤ¨¤¿¡£
-
-2002-04-28  _nothere  <_nothere@cvs>
-
-       * src/spells3.c 1.21:
-       ¥«¥ª¥¹Â°À­¤ÇŨ¤ÎÊѿȤ¬¼ºÇÔ¤·, ÆâÉôŪ¤ËƱ¤¸¥â¥ó¥¹¥¿¡¼¤¬ÇÛÃÖ¤µ¤ìľ¤¹¾ì¹ç¤Ï, Á°¤Î¥â¥ó¥¹¥¿¡¼¤Î¾ðÊ󤬤½¤Î¤Þ¤ÞÊݸ¤µ¤ì¤ë¤è¤¦¤Ë½¤Àµ. ¤Þ¤¿, ÊѿȤ¬¹Ô¤ï¤ì¤¿/¼ºÇÔ¤·¤¿¾ì¹ç¥³¥Þ¥ó¥É·«¤êÊÖ¤·¤Î¥¿¡¼¥²¥Ã¥È»ØÄ꤬·Ñ³¤µ¤ì¤ë¤è¤¦¤ËÊѹ¹.
-
-       * lib/edit/k_info_j.txt 1.22.2.1, src/spellstips.h 1.15.10.1:
-       Ä´ºº¥¢¥¤¥Æ¥à¤äËâË¡¤ÎÀâÌÀ¤Ë°À­É½¼¨¤¬¤Ç¤­¤ëµ­½Ò¤òÄɲÃ.
-
-       * src/monster2.c 1.20.2.4:
-       Â°À­¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤«¤é¾¤´­¤µ¤ì¤¿¸î±ÒÉÕ¤­ÃæΩ (ϵ¤Î²Ĺ¤Ê¤É) ¤Î¸î±Ò¤¬È¿ÂЦ¤Î°À­¤Ë¤Ê¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿.
-
-2002-04-28  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.38: ¹¹¿·
-
-       * src/autopick.c 1.14:
-       ¥³¡¼¥ÉÀ°Íý¡¢¥³¥á¥ó¥ÈÄɲᣲèÌ̱¦¤Î¥³¥Þ¥ó¥ÉÀâÌÀ¤ÎºÆÉÁ²è¤ÎºÇŬ²½¡£
-
-2002-04-27  _nothere  <_nothere@cvs>
-
-       * src/monster2.c 1.20.2.3, src/spells3.c 1.20.2.2:
-       ¸î±Ò¤òȼ¤¦¥â¥ó¥¹¥¿¡¼¤ÎÃæΩ¤Î¸î±Ò¤â¤½¤Î¥â¥ó¥¹¥¿¡¼¤ÈƱ¤¸Â°À­¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ. ¤Þ¤¿, polymorph_monster()Ãæ¤Ç¤Î°À­Êݸ¥³¡¼¥É¤Ïµ¡Ç½¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¤Î¤Çºï½ü¤·¤¿.
-
-2002-04-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.13:
-       ²¼Éô¤Î¶èÀÚ¤êÀþ¤Î°ÌÃ֤˸½ºß¤Î¥â¡¼¥É̾¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/edit/r_info_j.txt 1.35:
-       ±Ñ¸ìÈǤÎÀâÌÀʸ¤Ç¹ÔËö¤Ë¥¹¥Ú¡¼¥¹¤¬È´¤±¤Æ¤¤¤¿¤Î¤òÄɲá£
-
-       * src/autopick.c 1.12: ¥á¡¼¥»¡¼¥¸Ãæ¤Î̵Â̤ʥ¹¥Ú¡¼¥¹ºï½ü¡£
-
-2002-04-27  _nothere  <_nothere@cvs>
-
-       * src/monster1.c 1.13.10.2, src/monster2.c 1.20.2.2, src/mspells1.c 1.20.2.2, src/mspells2.c 1.15.2.2:
-       ¤É¤Á¤é¤«¤Î°À­¤ÎÉÕ¤¤¤¿ÃæΩ¤ÏÈ¿ÂЦ¤ò¾¤´­¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹. ¤Þ¤¿, sub_align¤¬°ìÃפ·¤¿¥â¥ó¥¹¥¿¡¼Æ±»Î¤ÏÀï¤ï¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-2002-04-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd1.c 1.31, src/externs.h 1.42, src/generate.c 1.17, src/spells2.c 1.19, src/tables.c 1.28, src/types.h 1.16, src/variable.c 1.19:
-       ¥È¥é¥Ã¥×¤Î´¶ÃÎÈϰϤò½Ð¤¿¤È¤­¤Ë·Ù¹ð¤¹¤ë¥ª¥×¥·¥ç¥ó disturb_trap_detect
-       ¤ò OAngband ¤«¤é°Ü¿¢¡£
-       ÌäÂêÅÀ¤Ò¤È¤Ä¡§Ì¤È½ÌÀ¤Î¥È¥é¥Ã¥×´¶ÃÎ¥¢¥¤¥Æ¥à¤Ç¤â´¶ÃÎÈϰϤò½Ð¤¿¤È¤­¤Î·Ù¹ð¤Ë¤è¤Ã¤Æ¥È¥é¥Ã¥×´¶ÃΤǤ¢¤ë»ö¤¬¤ï¤«¤Ã¤Æ¤·¤Þ¤¦¤Î¤ÏÏÀÍýŪ¤Ç¤Ê¤¤¤¬¡¢¥¹¥Þ¡¼¥È¤Ê²ò·èÊý¤¬¤Ê¤¤¡£
-
-2002-04-27  _nothere  <_nothere@cvs>
-
-       * lib/file/news.txt 1.6.2.1, lib/file/news_j.txt 1.5.2.1, src/cmd2.c 1.21.2.1, src/cmd6.c 1.19.10.1, src/defines.h 1.37.2.1, src/dungeon.c 1.35.2.1, src/externs.h 1.41.2.1, src/generate.c 1.16.2.1, src/init1.c 1.31.2.1, src/load.c 1.24.2.1, src/monster1.c 1.13.10.1, src/monster2.c 1.20.2.1, src/mspells1.c 1.20.2.1, src/mspells2.c 1.15.2.1, src/rooms.c 1.12.2.1, src/save.c 1.11.2.1, src/spells1.c 1.14.2.1, src/spells2.c 1.18.2.1, src/spells3.c 1.20.2.1, src/types.h 1.15.2.1, src/wizard2.c 1.14.2.1, src/xtra2.c 1.27.2.1:
-       ÃæΩ¤Î¥â¥ó¥¹¥¿¡¼¤¬Á±Îɤޤ¿¤Ï¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤Ë¸Æ¤Ð¤ì¤¿¾ì¹ç¤Ë, °ì»þŪ¤Ë¤É¤Á¤é¤«¤Î°À­¤È¤·¤ÆÀ臘¤è¤¦¤ËÊѹ¹¤·¤Æ¤ß¤¿. ¤Þ¤¿, ¤É¤Á¤é¤«¤Î°À­¤Ë²ó¤Ã¤¿ÃæΩ¤¬¾¤´­¤·¤¿ÃæΩ¤â¤Þ¤¿¤½¤Î°ì»þ°À­¤ò¼õ¤±·Ñ¤°. ¤¿¤À¤·°ì»þ°À­¤Ë¤Ï¥¹¥ì¥¤¤Ê¤É¤ÏÄÌÍѤ·¤Ê¤¤. ¥»¡¼¥Ö¥Ç¡¼¥¿¤¬ÊѤï¤ë¤Î¤Ç¥Ð¡¼¥¸¥ç¥ó¤ò1.0.14¤Ë¾å¤²¤ë. ¼Â¸³Åª¤Ê»Þ¤È¤·¤Æ¤ª¤¯.
-
-2002-04-27  henkma  <henkma@cvs>
-
-       * src/racial.c 1.15: Îɤ¯¤ß¤¿¤éÉ´Îö·ý¤ÎÊý¤â¥Ð¥°¤Ã¤Æ¤¿¤Î¤Ç½¤Àµ.
-
-       * src/racial.c 1.14: ½¤¹ÔÁΤ齤¨¤Îɽ¼¨¤Ë¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Çľ¤·¤¿.
-
-2002-04-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.11:
-       ¼ï²¡¢¿¦¶È¤Î¾ò·ï¼°ÁÞÆþ(^C)¥³¥Þ¥ó¥É¤Î$RACE ¤È $CLASS ¤¬µÕ¤À¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-04-26  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/pickpref.prf 1.4, lib/pref/picktype.prf 1.4:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤Î¥µ¥ó¥×¥ë¤Ë½ÅÍפʥ³¥Þ¥ó¥É¤Î¤¤¤¯¤Ä¤«¤ÎÀâÌÀ¤ò½ñ¤­Æþ¤ì¤¿¡£
-
-       * src/birth.c 1.28:
-       ¥ª¡¼¥È¥í¡¼¥ë¹â®²½¡£É½¼¨¤¹¤ë»þ´Ö´Ö³Ö¤ò¶õ¤±¤ÆÉéô¤ò¸º¤é¤·¤¿Â¾¡¢
-       randint0(3*4*5 * 3*4*5 * 3*4*5) ¤ò2²ó¤À¤±»È¤Ã¤ÆǽÎÏÃÍ¥À¥¤¥¹¤ò¿¶¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/racial.c 1.13:
-       ÊÑ¿ÈÃæ¤À¤±¤Ç¤Ê¤¯¡Ö¼ï²¤Î¡×µÛ·ìµ´¤Î¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼À¸Ì¿Îϵۼý¤ÏÈ¿¹¶·â¤Ç»ÈÍÑÉԲġ£
-
-       * src/cmd2.c 1.21:
-       Å´¿Í¾å¤ê³¬ÃÊ̵¤·(ironman_downward)¥â¡¼¥É¤Î¤È¤­¡¢¥é¥ó¥À¥à¤Ë²¼¤ê¤ë²ó¿ô¤¬
-       1Áý¤¨¤ë¤Î¤Ï¤¢¤Þ¤ê¤Ë¤â¸·¤·¤¹¤®¤ÆÄ©ÀïÉÔ²Äǽ¤Ã¤Ý¤¤¤Î¤Ç¡¢¤³¤Î¥â¡¼¥É¤Î»þ¤Ï
-       É¬¤º¸ÇÄê²ó¿ô¤À¤±²¼¤ê¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-04-25  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.34, lib/edit/misc_j.txt 1.7:
-       ¥Ç¥£¥ª¥Ë¥½¥¹Äɲá£
-
-       * lib/edit/e_info_j.txt 1.19:
-       elec¢ªLightning ¡¢ dark ¢ª Darkness ¡¢Â¾¥­¥ã¥Ô¥¿¥é¥¤¥º½¤Àµ¡£
-
-       * Changelogs 1.37: ¹¹¿·
-
-       * src/wizard2.c 1.14:
-       ¥¦¥£¥¶¡¼¥É¥³¥Þ¥ó¥É ^A o ¤Ç¥ª¥Ö¥¸¥§¥¯¥È¤Îcursed¤ÎÃͤòɽ¼¨¡£
-
-       * src/dungeon.c 1.35, src/melee2.c 1.21:
-       typo½¤Àµ¡£aaron jorgensen ¤µ¤ó¤ÎÊó¹ð¡£
-
-2002-04-24  hoge  <hoge@cvs>
-
-       * src/mspells1.c 1.20, src/object2.c 1.35, src/racial.c 1.12, src/spells3.c 1.20, src/store.c 1.9, configure.in 1.13, lib/edit/e_info_j.txt 1.18, lib/edit/k_info_j.txt 1.22, lib/edit/r_info_j.txt 1.33, lib/file/news_j.txt 1.5, src/cmd1.c 1.30, src/defines.h 1.37, src/dungeon.c 1.34, src/effects.c 1.19:
-       ¼ö¤¤¹¹¿·
-       ¤È¤ê¤¢¤¨¤º¡¢¿Í»Â¤ê¢ª¿Í¶ô¤¤
-       ¿Í¶ô¤¤&·Ù¹ð¥¨¥Ã¥»¥ó¥¹
-
-2002-04-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.10: 'q'¤Î¾¤Ë'_'¤Ç¤â½ªÎ»¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-04-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.9:
-       ¥¨¥Ç¥£¥¿¤ò°ìÅÙ½ªÎ»¤·¤Æ¤â¥«¡¼¥½¥ë°ÌÃÖ¤òÊݸ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/birth.c 1.27: À¸¤¤Î©¤Á¥¨¥Ç¥£¥¿¤ÎÇÛÎó°î¤ì½¤Àµ¡£
-
-       * src/defines.h 1.36, src/load.c 1.24:
-       Ëº¤ì¤Æ¤¿TURNS_PER_TICK¤ÎÊѹ¹¤òº£¤ä¤Ã¤¿¡£20L¢ª10L¡£
-
-2002-04-22  _nothere  <_nothere@cvs>
-
-       * lib/edit/q0thief1_j.txt 1.3, lib/edit/q0thief2_j.txt 1.3, lib/edit/q_info_j.txt 1.3:
-       ¥â¥ê¥Ð¥ó¥È¤ÎÅð±¥®¥ë¥É¤Î2¤Ä¤Î¥¯¥¨¥¹¥È̾¤«¤é "Å𱥯¥¨¥¹¥È" ¤ò³°¤·¤¿.
-
-2002-04-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.26: ±Ñ¸ìÈǤǥá¥Ã¥»¡¼¥¸¤¬¤Ï¤ß½Ð¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/birth.c 1.25, src/defines.h 1.35, src/externs.h 1.41, src/files.c 1.50, src/japanese.c 1.5, src/load.c 1.23, src/save.c 1.11, src/types.h 1.15, src/variable.c 1.18:
-       ToME¤Î¥¯¥¤¥Ã¥¯¡¦¥¹¥¿¡¼¥È¤ÈÀ¸¤¤Î©¤Á¥¨¥Ç¥£¥¿°Ü¿¢¡£
-
-       * src/z-term.c 1.13: ¥Ç¥Ð¥Ã¥¯¥á¥Ã¥»¡¼¥¸¤Î³°¤·Ëº¤ì½¤Àµ¡£
-
-2002-04-20  _nothere  <_nothere@cvs>
-
-       * src/main-win.c 1.13:
-       ±¦¾å¤Îx¤ä¥Õ¥¡¥¤¥ë(F)¥á¥Ë¥å¡¼¤Î½ªÎ»(X)¤¬¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¤ÎÆ°ºî¤òctrl+x¤ò²¡¤·¤¿¾ì¹ç¤ÈƱ¤¸Æ°ºî¤ËÊѹ¹.
-
-       * lib/edit/k_info_j.txt 1.21: Éð´ï¼öÇû¤Î´¬Êª¤ÎÀâÌÀ¤ò½¤Àµ.
-
-       * src/object1.c 1.27:
-       *´ÕÄê*¤ÇÆɤá¤ëȯư¸ú²Ì¤ÎÀâÌÀ¤Ë¥À¥á¡¼¥¸¤È½¼Å¶¥¿¡¼¥ó¿ô¤¬½ñ¤«¤ì¤Æ¤¤¤Ê¤¤Êª¤¬»Ä¤Ã¤Æ¤¤¤¿¤Î¤ÇÄɲä·¤¿.
-
-2002-04-20  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.10:
-       ToME ¤Î 8x8 tile ¤Î¹¹¿·¤Ë¹ç¤ï¤»¤Æ¡¢¤¤¤¯¤Ä¤«¥¿¥¤¥ë¤òÌã¤Ã¤Æ¤­¤¿¡£
-
-2002-04-20  _nothere  <_nothere@cvs>
-
-       * src/main-win.c 1.12:
-       Windows¤Ç, ¥Õ¥¡¥¤¥ë(F)¥á¥Ë¥å¡¼¤Î½ªÎ»(X)¤ä±¦¾å¤Î[x]¤Ç½ªÎ»¤µ¤»¤¿¾ì¹ç¤Ëplayrecord¤Ë»Ä¤é¤Ê¤«¤Ã¤¿¤Î¤Ç, ¤½¤ì¤â»Ä¤ë¤è¤¦¤Ë¤·¤¿.
-
-2002-04-19  Takeshi Mogami  <mogami@cvs>
-
-       * src/generate.c 1.16:
-       Æ®µ»¾ì¤â¥â¥ó¥¹¥¿¡¼Æ®µ»¾ì¤ÈƱÍͤË1²èÌÌ¥µ¥¤¥º¤Ë½¤Àµ¡£
-
-       * src/z-term.c 1.12: && || ¤ÎÍ¥Àè½ç¤¬Û£Ëæ¤À¤Ã¤¿¤Î¤Ç½¤Àµ¡£³ç¸Ì˺¤ì¤Æ¤¿¡£
-
-2002-04-19  _nothere  <_nothere@cvs>
-
-       * src/spells1.c 1.14:
-       ²Ð±ê°À­¤ÈÎ䵤°À­¤Ç, ¼åÅÀ¤ÈÂÑÀ­¤òƱ»þ¤Ë»ý¤Ä¥â¥ó¥¹¥¿¡¼¤Ë¹¶·â¤·¤¿¾ì¹ç¤ÏÂÑÀ­¤¬Í¥À褵¤ì¤ë¤è¤¦¤Ë¤·¤¿. ¤Þ¤¿, Î䵤¤Ë¼å¤¤¥â¥ó¥¹¥¿¡¼¤Ï¶Ë´¨Â°À­¤Ë¤â¼å¤¯¤·¤¿.
-
-       * lib/edit/k_info_j.txt 1.20:
-       ¸­¼Ô¤Î¾ó¤Î*´ÕÄê*·ë²Ì¤ËÃÎǽ¤¬²óÉü¤¹¤ëµ­½Ò¤òÆþ¤ì˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲÃ.
-
-2002-04-19  Takeshi Mogami  <mogami@cvs>
-
-       * src/rooms.c 1.12:
-       ¥ß¥ß¥Ã¥¯(¥ß¥ß¥Ã¥¯(È¢)¤ÎÁü)¤¬mimicÉô²°¤Ë½Ð¤ë¤Î¤ò¶Ø»ß¡£
-       ¾éÃÌ¥­¥ã¥é¤Ê¤Î¤Ë¤¢¤ó¤Þ¤êÂô»³½Ð¤¹¤®¤Æ¾Ð¤¨¤Ê¤¤¡£
-
-2002-04-18  _nothere  <_nothere@cvs>
-
-       * src/cmd5.c 1.17, src/spells3.c 1.19:
-       ¥«¥ª¥¹ËâË¡¤ò¼ºÇÔ¤·¤¿¾ì¹ç, ¤Þ¤¿¤Ï¥·¥ã¥Ã¥Õ¥ë¤Î±¿Ì¿¤ÎÎؤˤè¤ëÎô²½¤Ç¤Ïpval¤ò¸º¾¯¤·¤Ê¤¤¤è¤¦¤ËÊѹ¹.
-
-2002-04-18  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/commdesc.txt 1.7, lib/help/jcommdesc.txt 1.6:
-       ¥³¥Þ¥ó¥ÉÀâÌÀ¥ê¥¹¥È¤ÎÀßÄê¥Õ¥¡¥¤¥ë´Ø·¸¤¬Ê¬Î¥¤·¤Æ¤ë¤Î¤Ï¸«Æñ¤¤¤Î¤Ç
-       ¤³¤Ã¤Á¤Ë¤âÄɲá£
-
-       * lib/help/command.txt 1.7, lib/help/jcommand.txt 1.6, lib/help/jpref.txt 1.5, lib/help/pref.txt 1.8:
-       ¼«Æ°½¦¤¤¥¨¥Ç¥£¥¿¤ÎÀâÌÀÄɲá£
-
-       * src/z-term.c 1.11:
-       revision 1.10 ¤Î½¤Àµ¤Ï´ª°ã¤¤¤·¤Æ¤¤¤Æ¡¢Á´Á³½¤Àµ¤Ë¤Ê¤Ã¤Æ¤Ê¤«¤Ã¤¿¡£
-       º£ÅÙ¤ÏËÜÅö¤Ë½¤Àµ¤·¤¿¡£
-
-2002-04-17  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-new.prf 1.7: ¥Ó¥Ï¥¤¥ó¥À¡¼¤Ë¶õÇò¤Î16x16¥¿¥¤¥ë¤ò³äÅö¤Æ¡£
-
-       * Changelogs 1.36: ¹¹¿·
-
-       * src/cave.c 1.38, src/z-term.c 1.10:
-       Bigtile¤Î¥¿¥¤¥ë¥â¡¼¥É¤ÇÁ´³ÑASCII¤·¤«¤Ê¤¤¥â¥ó¥¹¥¿¡¼Åù¤¬Æ°¤¤¤¿¤È¤­¤Ë¡¢
-       Term_queue_chars()¤¬ÇطʤΥ¿¥¤¥ë¤Î1byteÌܤò´Á»ú¤Î2byteÌܤȴª°ã¤¤¤·¤Æ
-       ¤½¤ÎÁ°¤Î¥¿¥¤¥ë¤Î±¦È¾Ê¬¤ò¾Ã¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/main-mac.c 1.15, src/main-x11.c 1.15:
-       USE_TRANSPARENCY¤ÇASCIIʸ»úÃÏ·Á¤Î¾å¤Ë¥¿¥¤¥ë¤ÎŨÅù¤¬¾è¤ë¤È¡¢
-       ASCII¥³¡¼¥É¤ò¥¿¥¤¥ë¤È´Ö°ã¤¨¤Æɽ¼¨¤·¤è¤¦¤È¤·¤Æ¥Ð¥°¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-04-17  _nothere  <_nothere@cvs>
-
-       * src/dungeon.c 1.33, src/wild.c 1.12:
-       Ìë¤Ë³¹¤ÎÃæ¤Î»³¤¬¸÷¤é¤Ê¤¤¤è¤¦¤ËÊѹ¹. Â¾, ÃϾå¤ÇÌë¤Ë¤Ê¤Ã¤¿¾ì¹ç¤Ë¼þÊÕ¤ò¸÷¤é¤Ê¤¯¤·¤¿.
-
-       * lib/edit/v_info_j.txt 1.4:
-       No.113 (Devided) ¤ÎvaultÆâ¤Î¥Ñ¥¿¡¼¥ó¤¬ºÇ¸å¤Þ¤ÇÊ⤱¤Ê¤¤¥Ñ¥¿¡¼¥ó¤À¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2002-04-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-mac.c 1.14: ¤¤¤í¤¤¤í½¤Àµ¡£
-       - USE_TRANSPARENCYÂбþ¡£
-       - ¥¿¥¤¥ë¹â¡¢¥¿¥¤¥ëÉý¡¢¥á¥Ë¥å¡¼¤ò¤Á¤ã¤ó¤È¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       - Bigtile¤Î±¦È¾Ê¬¤ÎºÆÉÁ²è¤¬¤Ç¤­¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       - ¥¦¥£¥ó¥É¥¦¤Î¥µ¥¤¥º¤ò¥Þ¥¦¥¹¤ÇÊѤ¨¤¿¤È¤­ÊѤʥµ¥¤¥º¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-         (MPW¤ÎLowWord()¤¬Í¾·×¤Êhighbit¤ò»ý¤Äint¤òÊÖ¤¹¤È¤¤¤¦¥Ð¥°¤À¤Ã¤¿¡£)
-
-       !!!! To do: Á´³ÑASCII¤Î¥â¥ó¥¹¥¿¡¼¤¬Æ°¤¤¤¿ÀפÎÃÏ·Á¥¿¥¤¥ë¤Î±¦È¾Ê¬¤¬ºÆÉÁ²è¤µ¤ì¤Ê¤¤¥Ð¥°¤¬»Ä¤Ã¤Æ¤¤¤ë¡£
-
-2002-04-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.8, src/types.h 1.14: ¥³¥á¥ó¥ÈÄɲá£typo½¤Àµ¡£
-
-2002-04-16  henkma  <henkma@cvs>
-
-       * lib/edit/k_info_j.txt 1.19: typo½¤Àµ. »°¿Í¾Îñ¿ô¸½ºß¤Î's'.
-
-       * lib/edit/k_info_j.txt 1.18: typo½¤Àµcorrensond¢ªcorrespond
-
-2002-04-16  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/pickpref.prf 1.3, lib/pref/picktype.prf 1.3:
-       ÂÑÀ­¼«Æ°¹ï¤ß¤ÎÎã¤ò¥µ¥ó¥×¥ë¤ËÆþ¤ì¤Æ¤ª¤¯¡£(±Ñ¸ìÈǤÇï¤â»È¤Ã¤Æ¤¯¤ì¤Ê¤¤¤Î¤ÇÀëÅÁ¡£)
-
-2002-04-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.26, src/xtra1.c 1.33:
-       rgra¤Ç¶µ¤¨¤Æ¤â¤é¤Ã¤¿¤Î¤Ç¡¢Éð´ï¤¬¡Ösuitable for riding¡×¤ò
-       ¡Ösuitable for use while riding¡×¤Ë½¤Àµ¡£
-
-       * src/generate.c 1.15, src/load.c 1.22, src/mane.c 1.7, src/melee2.c 1.20, src/mind.c 1.8, src/monster2.c 1.20, src/mspells1.c 1.19, src/mspells2.c 1.15, src/mspells3.c 1.10, src/racial.c 1.11, src/save.c 1.10, src/spells3.c 1.18, src/types.h 1.13, src/defines.h 1.34, src/dungeon.c 1.32, src/effects.c 1.18:
-       ¥¹¥Ô¡¼¥É¥·¥¹¥Æ¥à²þ¤¡£
-       ¹ÔÆ°1²ó¤ËɬÍפʥ¨¥Í¥ë¥®¡¼¤Ï ENERGY_NEED() = randnor(100, 31) * 2 ¡£
-       ¸å¤Ç¡¢TURNS_PER_TICK ¤ò 10 ¤Ë¤·¤¿¤È¤­¤Ë¤Ï¤³¤Î¡Ö* 2¡×¤Ï¼è¤ê½ü¤¯¡£
-
-2002-04-14  _nothere  <_nothere@cvs>
-
-       * src/cave.c 1.37:
-       ¸¸³Ð»þ¤Ë¤¿¤À¤ÎÃÏ·Á¤¬1/256¤Ç¥é¥ó¥À¥à¤Êʸ»ú¤ËÊѤï¤Ã¤Æ¸«¤¨¤ë¥³¡¼¥É¤¬¾å½ñ¤­ÂåÆþ¤Ç̵¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç, Í­¸ú¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ. ¸¸³Ð»þ¤ÎÆñ°×ÅÙÁý²Ã¤Ë¤Ä¤Ê¤¬¤ë¤Î¤Ç, ÌäÂ꤬½Ð¤¿¤é¤¤¤Ä¤Ç¤â̵¸ú²½¤·¤Æ¹½¤ï¤Ê¤¤.
-
-2002-04-14  habu  <habu@cvs>
-
-       * src/monster2.c 1.19:
-       dungeon_turn¤Ë±þ¤¸¤Æ¿¼ÁؤΥâ¥ó¥¹¥¿¡¼¤ò½Ð¤ä¤¹¤¯¤¹¤ë¥³¡¼¥É¤òTURNS_PER_TICK¤ò»È¤Ã¤Æ½ñ¤­ÊѤ¨¡£
-
-2002-04-14  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.49: reverse ¥â¡¼¥É¤Ç 2 8 ¤Î¾å²¼¤¬µÕ¤Ê¤Î¤ò½¤Àµ¡£
-
-       * src/autopick.c 1.7: && ¤È || ¤ÎÍ¥Àè½ç°Ì¤¬Û£Ëæ¤Ê¤È¤³¤í¤Ë³ç¸ÌÄɲá£
-
-       * Changelogs 1.35: ¹¹¿·
-
-       * src/files.c 1.48: 8 2 ¤Ç1¹Ô¾å²¼¤Ë°ÜÆ°¤Ç¤­¤ë¤è¤¦¤Ë¡£
-       ¥Ú¡¼¥¸¤ÎºÇ¸å¤Ç¾¡¼ê¤ËºÇ½é¤Î¥Ú¡¼¥¸¤Ë´¬Ìá¤é¤Ê¤¤¤è¤¦¤Ë¡£
-
-       * lib/help/attack.hlp 1.6, lib/help/attack.txt 1.8, lib/help/birth.hlp 1.4, lib/help/birth.txt 1.7, lib/help/charattr.hlp 1.5, lib/help/charattr.txt 1.7, lib/help/command.hlp 1.5, lib/help/commdesc.hlp 1.5, lib/help/defend.hlp 1.4, lib/help/dungeon.hlp 1.5, lib/help/dungeon.txt 1.7, lib/help/general.hlp 1.5, lib/help/general.txt 1.7, lib/help/help.hlp 1.7, lib/help/j_item2.txt 1.2, lib/help/jattack.hlp 1.4, lib/help/jattack.txt 1.6, lib/help/jbirth.hlp 1.3, lib/help/jbirth.txt 1.6, lib/help/jcharattr.hlp 1.3, lib/help/jcharattr.txt 1.8, lib/help/jcommand.hlp 1.4, lib/help/jcommand.txt 1.5, lib/help/jcommdesc.hlp 1.4, lib/help/jcommdesc.txt 1.5, lib/help/jdefend.hlp 1.3, lib/help/jdefend.txt 1.4, lib/help/jdungeon.hlp 1.2, lib/help/jdungeon.txt 1.5, lib/help/jgeneral.hlp 1.4, lib/help/jgeneral.txt 1.5, lib/help/jhelp.hlp 1.5, lib/help/jmagic.hlp 1.3, lib/help/jmonster.hlp 1.2, lib/help/jmonster.txt 1.5, lib/help/jobjects.hlp 1.3, lib/help/jobjects.txt 1.5, lib/help/joption.hlp 1.4, lib/help/jpref.hlp 1.2, lib/help/jpref.txt 1.4, lib/help/jspecial.hlp 1.2, lib/help/jtang.txt 1.5, lib/help/jtown.hlp 1.2, lib/help/jtown.txt 1.5, lib/help/magic.hlp 1.5, lib/help/monster.hlp 1.2, lib/help/monster.txt 1.4, lib/help/objects.hlp 1.3, lib/help/objects.txt 1.5, lib/help/option.hlp 1.5, lib/help/pref.hlp 1.5, lib/help/pref.txt 1.7, lib/help/town.hlp 1.2, lib/help/town.txt 1.5:
-       ¥ê¥ó¥¯¤Îʸ»ú¤Ë¿ô»ú¤ò»È¤ï¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¤Î¤ß¤Ë¤·¤¿¡£
-       ¿ô»ú¤Ï¸å¤Ç¾å²¼¤Ë1¹Ô°ÜÆ°Åù¤Ë»È¤¨¤ë¡£
-
-2002-04-14  habu  <habu@cvs>
-
-       * src/files.c 1.47: sprintf¤Î·¿¤ò%ld¤«¤é%d¤Ë½¤Àµ¡£
-
-2002-04-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.24, src/bldg.c 1.12, src/cave.c 1.36, src/cmd4.c 1.34, src/defines.h 1.33, src/dungeon.c 1.31, src/externs.h 1.40, src/files.c 1.46, src/generate.c 1.14, src/store.c 1.8, src/wild.c 1.11, src/xtra1.c 1.32:
-       ¥¹¥Ô¡¼¥É¥·¥¹¥Æ¥à½¤Àµ¤ËÈ÷¤¨¤Æ¡¢turn¤È»þ¹ï¤Î¼è¤ê¤¢¤Ä¤«¤¤¤Î¥³¡¼¥É¤òÀ°Íý¡£
-       #define TURNS_PER_TICK 20L ¤òÄêµÁ¤·¤¿¡£
-       ÆüÉÕ¤òµá¤á¤ë´Ø¿ôÅù¤òÍÑ°Õ¤·¤Æ¤½¤ì¤ò¸Æ¤Ö¤è¤¦¤Ë¤·¤¿¡£
-
-2002-04-13  _nothere  <_nothere@cvs>
-
-       * src/cave.c 1.35, src/z-term.c 1.9:
-       Á´³Ñʸ»ú¥â¡¼¥É¤Ç, ¼þ°Ï¤È¿§¤¬Á´¤¯Æ±¤¸Êª¤Îº¸¥Ð¥¤¥È¤¬¹¹¿·¤µ¤ì¤º, ±¦¥Ð¥¤¥È¤Îʸ»ú¤À¤±¤¬¹¹¿·¤µ¤ì¤ÆȾ³Ñ¤Ç¸½¤ì¤¿¤ê¤·¤Æ²½¤±¤ëÌäÂê¤ò½¤Àµ.
-
-2002-04-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.34, src/main-win.c 1.11, src/z-term.c 1.8:
-       ÆóÇÜÉýƦÉå¡¢ÆâÉô¥³¡¼¥É¤Ë¡Ö¢ò¡×¤ò»È¤¦ÊýË¡¤Ç¼ÂÁõ¡£
-       main-win.c¤Çrectangle¤ò¿Ê¤áÊý¤Ë¥Ð¥°¤¬¤¢¤ê¡¢rc.right¤ò3¥Ð¥¤¥È¿Ê¤á¤Æ¤¤¤¿¤Î¤Ç¡¢
-       ½¤Àµ¤·¤Æ¡¢Æ¦É夬±¦²£¤Ë¿­¤Ó¤Ê¤¯¤·¤¿¡£
-
-2002-04-12  _nothere  <_nothere@cvs>
-
-       * src/cave.c 1.33, src/z-term.c 1.7:
-       Á´³Ñ¥«¡¼¥½¥ë¤Î±¦È¾Ê¬¤¬Àµ¤·¤¯¾Ãµî¤µ¤ì¤Ê¤¤¤Î¤ò½¤Àµ. ¤Ä¤¤¤Ç¤Ë, ÀèÄø¤Îcave.c¤ÎÊѹ¹Éôʬ¤Ë#ifdef WINDOWS¤òÉÕ¤±¤¿.
-
-       * src/cave.c 1.32:
-       Windows¤ÇƦÉå¤Îbigtile¤¬Êø¤ì¤ëÌäÂê¤ËÂФ·¤Æ, bigtile_attr()Æâ¤ÇÂè2byte¤ËƦÉå¤ò¥³¥Ô¡¼¤¹¤ëÊýË¡¤Ç±þµÞ½èÃÖ. ¤·¤«¤·, µ¯Æ°»þ¤ä½ªÎ»»þ, °ÜÆ°»þ¤Ë²½¤±¤¿¤ê¥´¥ß¤¬»Ä¤Ã¤¿¤ê, ¸÷¸»¤¬±Êµ×´ä¤Ë¿©¤¤¹þ¤àÌäÂê¤Ï̤²ò·è.
-
-       * src/main-win.c 1.10:
-       Æ¦Éå¤Èbigtile¤¬Î¾ÊýÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È¤­, Æ¦Éå¤ÎÊɤ˥«¡¼¥½¥ë¤ò¹ç¤ï¤»¤ë¤ÈȾ³Ñ¤Î¥«¡¼¥½¥ë¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤òÁ´³Ñ¤Î¥«¡¼¥½¥ë¤Ëľ¤·¤¿.
-
-2002-04-12  Takeshi Mogami  <mogami@cvs>
-
-       * readme.txt 1.6: bigscreen¤ËÂбþ¤·¤Æ¤Ê¤«¤Ã¤¿°ìʸºï½ü¡£
-
-       * src/autopick.c 1.6: ¤Þ¤À»Ä¤Ã¤Æ¤¤¤¿ºÆÉÁ²è¥Ð¥°(^L)½¤Àµ¡£
-       ±Ñ¸ìÈÇ¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼½¤Àµ¡£±Ñ¸ì¥á¥Ã¥»¡¼¥¸ºÙ¤«¤¤¤È¤³½¤Àµ¡£
-       ^I ^L¤Ç¥­¡¼¥ï¡¼¥É¡ÖÉð´ï¡×¤¬ÁÞÆþ¤µ¤ì¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-04-10  iks  <iks@cvs>
-
-       * src/main-win.c 1.9:
-       ¥¦¥£¥ó¥É¥¦¤ò²á¾®¤Ë¥ê¥µ¥¤¥º¤Ç¤­¤Æ¤·¤Þ¤Ã¤Æbigscreen¤ÎµóÆ°¤¬¥¢¥ä¥·¥¤¤Î¤ò²ò·è¡£
-       ¥Õ¥©¥ó¥ÈÊѹ¹»þ¤Ë¥¦¥£¥ó¥É¥¦¥µ¥¤¥º¤¬80x24¤ËÌᤵ¤ì¤ë¾å¤Ë¡¢bigscreen¤¬Äɿ路¤Æ¤¤¤Ê¤¯¤Æɽ¼¨¤¬¿©¤ß½Ð¤·¤Æ¤¤¤¿¤Î¤ò²ò·è¡£
-
-2002-04-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.5:
-       const¥Ý¥¤¥ó¥¿(¥Ý¥¤¥ó¥¿)¤ÎÊÑ¿ô¤òC_FREE¤ËÅϤ¹¤ÈVC++¤¬¥ï¡¼¥Ë¥ó¥°¤ò½Ð¤¹»ö¤¬
-       ¤ï¤«¤Ã¤¿¤Î¤ÇºÆ½¤Àµ¡£
-
-       * src/autopick.c 1.4, src/externs.h 1.39: ¥ï¡¼¥Ë¥ó¥°¤ò̵¤¯¤¹½¤Àµ¡£
-       ¤½¤Î¾¡¢autopick editor¤Î¹Ô¤ÎÀâÌÀʸÄɲÃÅù¡£
-
-       * src/xtra2.c 1.27:
-       ¥¦¥£¥ó¥É¥¦¤Î¥ê¥µ¥¤¥º¸å¤ËÊѤʰÌÃ֤˥«¡¼¥½¥ë¤¬°ÜÆ°¤·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/xtra1.c 1.31:
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤ËÁ´ÂΥޥåפòɽ¼¨¤¹¤ë¤È¤­¡¢¥¦¥£¥ó¥É¥¦¤¬¾®¤µ¤¹¤®¤ë¤ÈÍî¤Á¤ë¤Î¤Ç¡¢
-       ¤½¤Î¤È¤­¤Ïɽ¼¨¤ò¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/birth.c 1.23, src/generate.c 1.13:
-       ¥â¥ó¥¹¥¿¡¼Æ®µ»¾ì¤Îɽ¼¨°ÌÃÖ¤¬ÊѤˤʤë¥Ð¥°½¤Àµ¡£
-       ¤â¤¦¤Ò¤È¤Ä¡¢¥­¥ã¥é¥¹¥¿¡¼¥È»þ¤Ë4ÂΤΥâ¥ó¥¹¥¿¡¼¤ò½é´ü²½¤·¤Æ¤Ê¤¤¥Ð¥°¤â½¤Àµ¡£
-       (»þ´Ö¤¬·Ð¤Ä¤È½é´ü²½¤µ¤ì¤ë¤Î¤Ç¼Â³²¤Ï¤Ê¤¤¤¬)
-
-2002-04-09  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.34: ¹¹¿·
-
-       * src/autopick.c 1.3:
-       Áᮽ¤Àµ¡£^I ¤ò¥­¥ã¥ó¥»¥ë¤·¤¿¸å¤Ç²èÌ̤òºÆÉÁ²è¤·¤Æ¤Ê¤«¤Ã¤¿¡£
-
-       * src/dungeon.c 1.30, src/externs.h 1.38, src/files.c 1.45, src/main-mac.c 1.13, src/main-win.c 1.8, src/main-x11.c 1.14, src/makefile.bcc 1.3, src/makefile.dos 1.3, src/makefile.ibm 1.3, src/makefile.std 1.3, src/types.h 1.12, src/util.c 1.25, src/variable.c 1.17, src/z-term.c 1.6, lib/pref/Makefile.am 1.3, lib/pref/pickpref.prf 1.2, lib/pref/picktype.prf 1.2, src/Makefile.am 1.6, src/autopick.c 1.2, src/cave.c 1.31, src/cmd1.c 1.29, src/cmd4.c 1.33:
-       branch-mogami-autopick¤ò¥Þ¡¼¥¸
-
-2002-04-09  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.17:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î´¬Êª¤ÎÀâÌÀ¤Ç "ʤÎ" ¤ò "̵ÌäÎ" ¤È¤·¤¿.
-
-2002-04-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.1.2.16:
-       ^I ^L ¤Ç¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°(¤È¥¿¥¤¥×)¤ò¼è¤ê¹þ¤à¤È¤­¡¢Ìäϼ«Æ°¹ï¤ß¤È¤·¤Æ
-       ¤È¤ê¤³¤à¤è¤¦¤Ë¤·¤¿¡£
-
-2002-04-09  henkma  <henkma@cvs>
-
-       * src/main-gcu.c 1.5:
-       curses¤Ç^S¤¬¸ú¤¯¤è¤¦¤Ë¤¹¤ë¥Ñ¥Ã¥Á, ÌµÂ̤Ëcurses¤ÎÃæ¤ÎÊý¤ò¤¤¤¸¤Ã¤Æ¤¤¤ë¤è¤¦¤Ë¸«
-       ¤¨¤ë¤Î¤ÇÊѹ¹¤·¤Æ¤ß¤¿. ÉáÄÌcurses¤Ç¤³¤Î¤è¤¦¤Ê¤³¤È¤ò¤¹¤ë»þ, Ã±¤Ë°ì²óraw();¤ò¸Æ
-       ¤ó¤Ç¤ª¤¯¤À¤±¤Ë¤¹¤ë¤È»×¤¦.
-
-2002-04-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.1.2.15:
-       ¥À¥¤¥¹ÌÜnn°Ê¾å¤Î¡¢¤Î±Ñ¸ìÈǤÎÀâÌÀʸɽ¼¨¤¬¥Ð¥°¤Ã¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/autopick.c 1.1.2.14:
-       2¡¢3¡¢4ºýÌܤÎËâË¡½ñ¤Î¥­¡¼¥ï¡¼¥É¤¬¥Ð¥°¤Ã¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/pref/Makefile.am 1.2.8.1, src/autopick.c 1.1.2.13:
-       ¥µ¥ó¥×¥ë¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß¤Ë¼ºÇÔ¤·¤¿¤È¤­¤ËÍî¤Á¤ë¤Î¤ò½¤Àµ¡£
-       make dist ¤Ç¥µ¥ó¥×¥ë¥Õ¥¡¥¤¥ë¤òźÉÕ¤µ¤»¤ë¤Î¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/z-config.h 1.6:
-       makefile.std¤ò»È¤Ã¤¿¤È¤­¡¢±Ñ¸ìÈǤÇ_JP¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/cmd4.c 1.32.4.4: ¥ï¡¼¥Ë¥ó¥°½Ð¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/autopick.c 1.1.2.12: Ì¤»ÈÍÑÊÑ¿ô¤Î¥ï¡¼¥Ë¥ó¥°½Ð¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-       ¥³¡¼¥ÉÀ°Íý¡£¥³¥Þ¥ó¥ÉÀâÌÀ¤ÎºÆÉÁ²è¤òɬÍפʤȤ­¤À¤±¤ËÀ©¸Â¡£
-
-2002-04-08  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.1.2.11: Âç»ö¤Ê ^I ¥³¥Þ¥ó¥É¤¬²õ¤ì¤Æ¤¿¡£½¤Àµ¡£
-
-       * src/autopick.c 1.1.2.10: ¥³¥Þ¥ó¥ÉÀâÌÀ¤Î¥ß¥¹½¤Àµ¡£
-
-       * src/autopick.c 1.1.2.9: ±Ñ¸ìÈǤ¬¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       256¹ÔÌܰʹߤǡ¢Êѹ¹¤ò´¶ÃΤǤ­¤º²èÌ̺ÆÉÁ²è¤¬¤µ¤ì¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       'b' '-' ¤Ç¤Î¥Ð¥Ã¥¯¥¹¥¯¥í¡¼¥ë¤¬È¾²èÌÌÄøÅÙ¤À¤Ã¤¿¥Ð¥°½¤Àµ¡£
-       ¥³¥Þ¥ó¥É¤µ¤é¤ËÅý¹ç¡£
-       ^R¤ÇÊѹ¹¤òÇË´þ¡£
-
-       * src/autopick.c 1.1.2.8:
-       ¤¤¤í¤¤¤í½¤Àµ¡£¤¤¤¯¤Ä¤«¤Î¥³¥Þ¥ó¥É¤ò¤Þ¤È¤á¤é¤ì¤ëʪ¤Ï¤Þ¤È¤á¤¿¡£
-
-       * src/autopick.c 1.1.2.7:
-       ¥¹¥¯¥í¡¼¥ë¤¬ÃÙ¤¤¤Î¤Ç¡¢1¹Ô¥¹¥¯¥í¡¼¥ë¤Ç¤Ê¤¯¥»¥ó¥¿¥ê¥ó¥°¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/autopick.c 1.1.2.6: Âç»ö¤Ê¹Ô¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤·¤¿¤Þ¤Þ¤À¤Ã¤¿¡£
-
-       * src/autopick.c 1.1.2.5: ¹â®²½½¤Àµ¡£
-
-       * src/angband.rc 1.4:
-       È¾³Ñ¥«¥Ê¤¬¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢SJIS CRLF¢ªEUC LF ¤ËÊѤ¨¤Æ¤ª¤¯¡£
-       ¥³¡¼¥ÉÊÑ´¹¤Çangband.rc¤À¤±½ü³°¤¹¤ë¼ê´Ö¤¬¤Ê¤¯¤Ê¤ë¡£
-
-       * src/main-cap.c 1.2, src/main-gcu.c 1.4:
-       gcu ¤È cap ¤Ç ^S ¤¬»È¤¨¤Ê¤¤¤Î¤ò½¤Àµ¤¹¤ë¥Ñ¥Ã¥Á flowctrl.dif ¤òŬÍÑ¡£
-       clockwork¤«¤é»ý¤Ã¤Æ¤­¤¿ Hallvard B. Furuseth ¤µ¤ó¤Î¥Ñ¥Ã¥Á¡£
-
-       * src/autopick.c 1.1.2.4: ¥«¥Ã¥È(^K)¤·¤Æ¥Ú¡¼¥¹¥È(^Y)¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ÇÛÎó°î¤ì¥Ð¥°½¤Àµ¡£
-
-2002-04-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.1.2.3:
-       ^I ¥³¥Þ¥ó¥É¤ÇÁõÈ÷¤òÁªÂò¤¹¤ë¥Õ¥é¥°¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * Changelogs 1.33: ¹¹¿·
-
-       * lib/pref/pickpref.prf 1.1, lib/pref/picktype.prf 1.1: New file.
-
-       * lib/pref/pickpref.prf 1.1.2.1, lib/pref/picktype.prf 1.1.2.1:
-       commit˺¤ì¤Æ¤¤¤¿¡£¥Ç¥Õ¥©¥ë¥È¤ÎÀßÄê¥Õ¥¡¥¤¥ë¡£Á´¤¯ÀßÄê¤ò½ñ¤¤¤Æ¤¤¤Ê¤¤¤È¤­¤Ë
-       ¥¨¥Ç¥£¥¿¤òµ¯Æ°¤¹¤ë¤ÈÆɤ߹þ¤à¡£¤½¤Î¾¤ËÆɤà»ö¤Ï¤Ê¤¤¡£
-
-       * src/variable.c 1.16.4.2, src/autopick.c 1.1.2.2, src/cmd1.c 1.27.4.3, src/cmd4.c 1.32.4.3, src/externs.h 1.36.4.3, src/files.c 1.43.4.2, src/types.h 1.10.4.2:
-       ¼è¤ê´º¤¨¤º´°À®¤È¤¤¤¦»ö¤Ë¤¹¤ë¡£½é´ü¤Î¹½ÁÛ¤ÏÁ´Éô¼ÂÁõ¤·¤¿¡£¤â¤¦»ÈÍѲÄǽ¡£
-
-       * src/main-mac.c 1.12: BigtileÍѤÎÊѹ¹¡£kuwa¤µ¤ó¤è¤ê¡£
-
-2002-04-07  henkma  <henkma@cvs>
-
-       * lib/edit/t0000001_j.txt 1.8: Ã±¤Ê¤ë¥³¥á¥ó¥È¤Î½¤Àµ.
-
-2002-04-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/autopick.c 1.1: New file.
-
-       * src/autopick.c 1.1.2.1:
-       ¼«Æ°½¦¤¤¥³¡¼¥É¤¬ÈîÂç²½¤¹¤ë¤Î¤ÇÊÌ¥Õ¥¡¥¤¥ë¤Ëʬ¤±¤¿¡£
-
-       * src/types.h 1.10.4.1, src/util.c 1.24.4.1, src/variable.c 1.16.4.1, src/xtra1.c 1.29.2.1, src/z-term.c 1.5.4.1, src/init1.c 1.29.4.1, src/init2.c 1.9.6.1, src/main-mac.c 1.11.4.1, src/main-win.c 1.7.4.1, src/main-x11.c 1.13.4.1, src/main.c 1.2.10.1, src/makefile.bcc 1.2.18.1, src/makefile.dos 1.2.14.1, src/makefile.ibm 1.2.14.1, src/makefile.std 1.2.14.1, src/mspells2.c 1.12.4.1, src/object1.c 1.24.4.1, src/object2.c 1.33.4.1, src/store.c 1.6.4.1, lib/help/charattr.hlp 1.2.4.1, lib/help/charattr.txt 1.4.2.1, lib/help/jcharattr.hlp 1.1.10.1, lib/help/jcharattr.txt 1.6.2.1, lib/help/jversion.txt 1.6.6.1, lib/help/version.txt 1.6.2.1, src/Makefile.am 1.5.8.1, src/angband.rc 1.2.4.1, src/artifact.c 1.19.4.1, src/cave.c 1.28.4.1, src/cmd1.c 1.27.4.2, src/cmd4.c 1.32.4.2, src/dungeon.c 1.27.4.1, src/externs.h 1.36.4.2, src/files.c 1.43.4.1, lib/edit/a_info_j.txt 1.17.4.1, lib/edit/e_info_j.txt 1.16.4.1, lib/edit/k_info_j.txt 1.15.4.1, lib/edit/r_info_j.txt 1.29.4.1, lib/file/news.txt 1.5.6.1, lib/file/news_j.txt 1.3.6.1, readme.txt 1.4.2.1, readme_eng.txt 1.5.4.1:
-       ¼«Æ°½¦¤¤¤Î¥²¡¼¥àÆ⥨¥Ç¥£¥¿¡¢¤«¤Ê¤ê·Á¤¬¤Ç¤­¤Æ¤­¤¿¡£'_'¤Çµ¯Æ°¡£'q'¤Ç½ªÎ»¡£
-       »Þ¤Î¥Ù¡¼¥¹¤òhengband-1-0-11¤ËÊѹ¹¤·¤¿¤Î¤Ç¡¢Êѹ¹¥Õ¥¡¥¤¥ë¤¬Â¿¤¤¤¬
-       ¤Û¤È¤ó¤É¤Ï¥Þ¡¼¥¸¤Ë¤è¤ë¤â¤Î¡£
-
-2002-04-06  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.32: ¹¹¿·
-
-       * lib/file/news.txt 1.5.10.1, lib/file/news_j.txt 1.3.10.1:
-       1.0.10 -> 1.0.11
-
-       * lib/edit/r_info_j.txt 1.32, lib/file/news.txt 1.6, lib/file/news_j.txt 1.4, src/cave.c 1.30, src/cmd1.c 1.28, src/cmd2.c 1.20, src/cmd3.c 1.16, src/defines.h 1.32, src/externs.h 1.37, src/generate.c 1.12, src/init1.c 1.31, src/load.c 1.21, src/melee2.c 1.19, src/monster2.c 1.18, src/save.c 1.9, src/spells1.c 1.13, src/spells2.c 1.18, src/types.h 1.11, src/xtra2.c 1.26, lib/edit/misc_j.txt 1.6:
-       branch-mogami-tanuki ¤ò¥Þ¡¼¥¸¡£
-
-       * lib/help/jversion.txt 1.6.10.1, lib/help/version.txt 1.6.6.1:
-       »Þ¤Ë¤âcommit
-
-       * lib/help/version.txt 1.7: ±Ñ¸ìÈÇÍúÎò 1.0.11
-
-2002-04-06  hoge  <hoge@cvs>
-
-       * lib/help/jversion.txt 1.7: jversion.txt ºîÀ®
-
-2002-04-06  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/a_info_j.txt 1.20: µÜËÜÉð¢¤Î¡ú¤ÎÀâÌÀÄɲá£
-
-       * readme.txt 1.5, readme_eng.txt 1.6: ¥¿¥¤¥ë¤ÈBigtile¤ÎÀâÌÀÄɲá£
-
-2002-04-06  hoge  <hoge@cvs>
-
-       * src/artifact.c 1.21: ¡ù¤Îwarning¤Á¤ç¤Ã¤È½¤Àµ¡£
-
-2002-04-06  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.31: HUMAN¥Õ¥é¥°½¤Àµ
-
-2002-04-06  hoge  <hoge@cvs>
-
-       * src/object2.c 1.34, src/xtra1.c 1.30, lib/edit/a_info_j.txt 1.19, lib/edit/e_info_j.txt 1.17, src/artifact.c 1.20, src/dungeon.c 1.29:
-       ¡ù¤äËɱҼԤËWARNING
-       Î¾¼ê»ý¤Á¤Á¤ç¤Ã¤È¼å¤¯
-       ±ÔÉÒ³õ¤ÎºÇÂçÃͤò6¤Ë¸º¤é¤¹
-
-2002-04-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.28, src/init2.c 1.10:
-       ¤Û¤È¤ó¤É³èÍѤµ¤ì¤Æ¤Ê¤¤ user.prf ¤ò¥æ¡¼¥¶¡¼¥Ç¥£¥ì¥¯¥È¥ê¤Ë³Æ¼«¤¬ÃÖ¤¯
-       ÀßÄê¥Õ¥¡¥¤¥ë¤È¤·¤Æ¤â¤Ã¤È³èÍѤǤ­¤ë¤è¤¦¤Ë¡¢¥»¡¼¥Ö¥Ç¡¼¥¿¤Î¥í¡¼¥É¤Î¸å¤Ç
-       user.prf¤òÆɤ߹þ¤à¤è¤¦¤Ë½¤Àµ¡£¤³¤¦¤¹¤ë¤È$CLASS $RACEÅù¤Ç¾ò·ïʬ´ô¤Ë»È¤¨¤ë¡£
-
-2002-04-05  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.16, src/init1.c 1.30, src/object1.c 1.25:
-       branch-_nothere-objdesc¤ò¥Þ¡¼¥¸.
-
-       * lib/edit/k_info_j.txt 1.15.2.6:
-       Mogami¤µ¤ó¤Î¹»Àµ·ë²Ì¤ò¼è¤ê¹þ¤ó¤Ç±ÑÌõ¤ò½¤Àµ.
-
-2002-04-05  habu  <habu@cvs>
-
-       * lib/edit/a_info_j.txt 1.18: ¥¨¥¯¥¹¥«¥ê¥Ð¡¼¤Ë·Ù¹ðǽÎϤòÄɲá£
-
-2002-04-05  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.15.2.5:
-       ¥­¥Î¥³, Ìô, ´¬Êª, ¥í¥Ã¥É, ËâË¡ËÀ, ¾ó¤ÎÀâÌÀ¤Î±ÑÌõ¤¬´°Î».
-
-2002-04-04  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.15.2.4, src/object1.c 1.24.2.2:
-       ´¬Êª¤ÎÀâÌÀ¤Þ¤Ç°ì±þ±ÑÌõ½ªÎ». *´ÕÄê*ºÑ¤ß¥¢¥¤¥Æ¥à¤Îµ­½Òɽ¼¨¥³¡¼¥É¤ÎÀ°Íý.
-
-2002-04-04  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/charattr.hlp 1.4, lib/help/charattr.txt 1.6:
-       µ»Ç½¤Ë¤Ä¤¤¤Æ¤Î¥Ø¥ë¥×(±Ñ¸ìÈÇ)¤òÄɲá£
-
-       * src/mspells2.c 1.14: ; ¤ò˺¤ì¤Æ¤¿; ºÆ½¤Àµ¡£
-
-       * Changelogs 1.31: ¹¹¿·
-
-       * src/mspells2.c 1.13:
-       mspells2.c ¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤Ç¼ÂÁõ¤µ¤ì¤Æ¤Ê¤¤ËâË¡¤ò»È¤Ã¤¿¤È¤­¡¢
-       return FALSE; ¤Ç¼öʸ¤ò¥­¥ã¥ó¥»¥ë¤·¤Ê¤±¤ì¤Ð¤¤¤±¤Ê¤¤¤È¤³¤í¤Ç¡¢break;¤·¤Æ
-       ¼öʸ¤ò¾§¤¨¤¿¸å¤Î½èÍý¤Ë°Ü¤ê¡¢¤â¤Î¤Þ¤Í¤ò³Ð¤¨¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ÆäËThe World ¤Ï who ¤¬Ì¤Äê¤Ê¾õÂ֤Ǥâ¤Î¤Þ¤Í¤ò³Ð¤¨¤ë¤Î¤Ç»ÈÍÑ»þ¤Ë¥Ð¥°¤ë¡£
-       ¤Ä¤¤¤Ç¤Ë¡¢»à¼ÔÉü³è¤Î¼öʸ¤Ï¥â¥ó¥¹¥¿¡¼ÂÐ¥â¥ó¥¹¥¿¡¼¤Ç¤â»È¤¨¤ë¤è¤¦¤Ë¼ÂÁõ¡£
-
-2002-04-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.25.6.2: ¤¿¤Ì¤­ ¤Îr_sights¤¬Á´¤¯Áý¤¨¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/melee2.c 1.18.6.2:
-       ¤·¤ã¤Ù¤ë¥â¥ó¥¹¥¿¡¼¤Î¤È¤­¤Ï¤·¤ã¤Ù¤ë¡£½Å¸ü¤Ê­²»¤â¤¹¤ë¡£
-
-2002-04-03  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.15.2.3: ¥­¥Î¥³¤ÈÌô¤ÎÀâÌÀ¤Î±ÑÌõ´°Î».
-
-2002-04-03  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.30.2.2, src/monster2.c 1.17.6.4:
-       ¤¿¤Ì¤­ ¤Ï¡¢AQUATIC¤Ë¤Ï¤Ê¤é¤Ê¤¤¡£¥æ¥Ë¡¼¥¯¤Ë¤Ê¤é¤Ê¤¤¡£¥ì¥Ù¥ë²¼¸ÂÉÕ¤­¡£
-
-       * src/monster2.c 1.17.6.3:
-       ¤¿¤Ì¤­ ¤ò¸«¤¿¤À¤±¤Ç¤Ï sights ¤òÁý¤ä¤µ¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-       Ì¾Á°¤ÎÉÕ¤¤¤¿¥Ú¥Ã¥È¤Î ¤¿¤Ì¤­ ¤Ë¤Ä¤¤¤Æ¤Á¤ã¤ó¤È̾Á°¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/monster2.c 1.17.6.2:
-       ¥â¥ë¥´¥¹¤¿¤Ì¤­¤È¤«¤¬´Êñ¤Ëºî¤ì¤Æ¤Þ¤º¤¤µ¤¤¬¤¹¤ë¤Î¤Ç¡¢
-       ¥Ú¥Ã¥È¤Î ¤¿¤Ì¤­ ¤Ï̾Á°¤ÎºÇ¸å¤Ë ¡© ¤òÄɲá£
-
-       * src/generate.c 1.11.6.1, src/melee2.c 1.18.6.1:
-       ¸«³Ý¤±¤Î¥â¥ó¥¹¥¿¡¼¼ï²¡¢ap_r_idx ¤ÎÀßÄê¤ò˺¤ì¤Æ¤¤¤¿¤È¤³¤í½¤Àµ¡£
-
-       * lib/edit/misc_j.txt 1.5.10.1, lib/edit/r_info_j.txt 1.30.2.1, src/cmd2.c 1.19.6.1, src/cmd3.c 1.15.4.1, src/defines.h 1.31.6.1, src/externs.h 1.36.6.1, src/init1.c 1.29.6.1, src/load.c 1.20.6.1, src/monster2.c 1.17.6.1, src/save.c 1.8.6.1, src/spells1.c 1.12.6.1, src/spells2.c 1.17.4.1, src/types.h 1.10.6.1, src/xtra2.c 1.25.6.1, src/cave.c 1.29.2.1, src/cmd1.c 1.27.6.1:
-       ¡Ö¤¿¤Ì¤­¡×¤Î¼ÂÁõ¡£¥»¡¼¥Ö¥Ç¡¼¥¿¤¬ÊѤë¤Î¤Ç¡¢¥Ð¡¼¥¸¥ç¥ó¤ò1.0.12¤Ë¾å¤²¤Æ¤¢¤ë¡£
-
-       * src/store.c 1.7:
-       Çîʪ´Û¤Ë´ó£¤¹¤ë¤È¤­¡¢Á´¤¯Æ±¤¸Êª¤¬´û¤Ë´ó£¤·¤Æ¤¢¤ë¤È¤­¤Ï¥á¥Ã¥»¡¼¥¸¤ò
-       ¾¯¤·ÊѤ¨¤ë¤è¤¦¤Ë¤·¤Æ¤ß¤¿¡£¼Ì¿¿¤ò¥³¥ì¥¯¥·¥ç¥ó¤¹¤ë¤È¤­¤Ë
-       µ¤ÉÕ¤«¤º¤ËÊ£¿ô¤Þ¤È¤Þ¤Ã¤Æ¤¤¤ë¤Î¤¬¤Ê¤ó¤«µ¤¤Ë¿©¤ï¤Ê¤«¤Ã¤¿¤Î¤Ç¡£
-
-       * src/files.c 1.44:
-       (")¥³¥Þ¥ó¥É¤Ç½é´ü¥ª¥×¥·¥ç¥ó¤òÊѹ¹¤Ç¤­¤ë¤È¡¢¼Â¸³¤¹¤ë¤Î¤ËÊØÍø¤Ê¤Î¤Ç¡¢
-       ¥¦¥£¥¶¡¼¥É¥â¡¼¥É¤Î¤È¤­¤À¤±¤ÏÊѹ¹¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-04-02  _nothere  <_nothere@cvs>
-
-       * src/angband.rc 1.3: Windows¤Ç¤Î¥á¥Ë¥å¡¼¤ÎȾ³Ñ¥«¥Ê¤òÁ´³Ñ¥«¥Ê¤ËÊѹ¹.
-
-       * src/cave.c 1.29:
-       ascii_to_zenkaku¥Æ¡¼¥Ö¥ë¤Ç¥³¥í¥ó¤È¥»¥ß¥³¥í¥ó¤¬µÕ¤À¤Ã¤¿¤Î¤Ç½¤Àµ.
-
-2002-04-02  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.30:
-       ¥×¡¼¥±¥ë¿Í¤ÎÀâÌÀ¤Î¸íÌõ¤Î¤¿¤á¡¢¿Í´Ö¤È´ª°ã¤¤¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç¡¢ÀâÌÀʸ½¤Àµ¡£
-       ¿Í´Ö¥Õ¥é¥°ºï½ü¡£
-
-2002-04-01  Takeshi Mogami  <mogami@cvs>
-
-       * src/main.c 1.3:
-       ¥³¥Þ¥ó¥É¥é¥¤¥ó¤«¤é -h ¤Ç½Ð¤ë¥Ø¥ë¥×¥á¥Ã¥»¡¼¥¸¤ËX11Åù¤Î¸ÇÍ­¤Î¾ðÊó¤âɽ¼¨¡£
-       OAng¤«¤é¥³¥Ô¡¼¤·¤Æ¤­¤Æ¡¢½¤Àµ¤·¤¿¤â¤Î¡£
-
-       * Changelogs 1.30: ¹¹¿·
-
-       * lib/help/charattr.hlp 1.3, lib/help/charattr.txt 1.5, lib/help/jcharattr.hlp 1.2, lib/help/jcharattr.txt 1.7:
-       ¿¦¶È¡¢¼ï²¡¢À­³Ê¤ÎǽÎÏ¡¢µ»Ç½½¤ÀµÉ½¤òºîÀ®¡£
-       (ÊѶòÍѤˤ¹¤ë¤ÎÌÌÅݤÇZAng¤Î¤Ï¾Ã¤·¤Æ¤¢¤Ã¤¿)
-
-       * src/externs.h 1.36.4.1, src/cmd1.c 1.27.4.1, src/cmd4.c 1.32.4.1:
-       ¼«Æ°½¦¤¤¥³¡¼¥É¤ò¥Þ¥¯¥í¤ò»È¤Ã¤ÆÀ°Íý¡£
-       ÀßÄê¹Ô¤ò²òÀϤ·¤Æ¤½¤ÎƯ¤­¤òÀâÌÀ¤¹¤ëʸ¤òºî¤ë´Ø¿ô¤ò¼ÂÁõ¤·¤¿¡£¸å¤Ç¥²¡¼¥àÃæ¤Ç¤Î
-       ÊÔ½¸µ¡Ç½¤Î²èÌÌÃæ¤Çɽ¼¨¤¹¤ëͽÄê¡£º£¤Ï¥Æ¥¹¥ÈÍѤË'~'¥³¥Þ¥ó¥ÉÆâ¤Çɽ¼¨¤·¤Æ¤¤¤ë¡£
-
-       * src/tables.c 1.27:
-       Leon¤µ¤ó¤Ë»ØŦ¤µ¤ì¤¿¥Ø¥ë¥×¤Î½¤Àµ¤Ë¹ç¤ï¤»¤Æ¡¢¥ª¥×¥·¥ç¥ó¤ÎÀâÌÀ½¤Àµ¡£
-
-       * lib/help/magic.txt 1.7, lib/help/attack.txt 1.7, lib/help/birth.txt 1.6, lib/help/bldg.txt 1.4, lib/help/charattr.txt 1.4, lib/help/command.txt 1.6, lib/help/commdesc.txt 1.6, lib/help/defend.txt 1.5, lib/help/dungeon.txt 1.6, lib/help/general.txt 1.6, lib/help/helpinfo.txt 1.4, lib/help/jattack.txt 1.5, lib/help/jbirth.txt 1.5, lib/help/jcharattr.txt 1.6, lib/help/jcommand.txt 1.4, lib/help/jcommdesc.txt 1.4, lib/help/jdefend.txt 1.3, lib/help/jdungeon.txt 1.4, lib/help/jgeneral.txt 1.4, lib/help/jhelpinfo.txt 1.3, lib/help/jmagic.txt 1.5, lib/help/jmonster.txt 1.4, lib/help/jobjects.txt 1.4, lib/help/joption.txt 1.6, lib/help/jpref.txt 1.3, lib/help/jtown.txt 1.4, lib/help/monster.txt 1.3, lib/help/objects.txt 1.4, lib/help/option.txt 1.7, lib/help/pref.txt 1.6, lib/help/tang.txt 1.5, lib/help/town.txt 1.4, lib/help/version.txt 1.6:
-       ½¤Àµ¡£
-
-2002-04-01  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.15.2.2:
-       ±ÑÌõ¤ò¾¯¤·ÄɲÃ. ±Ñ¸ìÎϤ˼«¿®¤¬¤Ê¤¤¤Î¤Ç¹»Àµ¤¬É¬Íפˤʤë.
-
-2002-03-31  Takeshi Mogami  <mogami@cvs>
-
-       * src/rooms.c 1.11:
-       ½½»úÉô²°Åù¤Îvault¤Ç¡¢¶¯¤¤Å¨¤¬¤¤¤ë¤Ï¤º¤Î¤È¤³¤í¤¬¥Ï¥¦¥ó¥ÉÅù¤Î¥°¥ë¡¼¥×¤ò
-       ºî¤ëŨ¤ÇËä¤Þ¤Ã¤Æ¤·¤Þ¤Ã¤Æ¡¢¤ä¤¿¤é³Ú¾¡¤Ë¤Ê¤ë¤Î¤òÉõ¤¸¤ë¤¿¤á¡¢
-       vault¤Î '9' ¤È '8' ¤ÎÃÏ·Á¤Ï¥°¥ë¡¼¥×¥Õ¥é¥°¤òµ¶¤Ë¤·¤Æ¤ß¤¿¡£¥°¥ë¡¼¥×¤òºî¤ë
-       ¤Î¤ÏÂç³µ¤Ï¼å¤¤Å¨¤Ê¤Î¤Ç¡¢µ¶¤Ë¤¹¤ë¤È¥È¡¼¥¿¥ë¤Ç¶¯¤¤Å¨¤Î¿ô¤¬Áý¤¨¤ë¡£
-
-2002-03-31  _nothere  <_nothere@cvs>
-
-       * lib/edit/k_info_j.txt 1.15.2.1, src/init1.c 1.29.2.1, src/object1.c 1.24.2.1:
-       ¥­¥Î¥³¡¦Ìô¡¦´¬Êª¡¦¥í¥Ã¥É¡¦ËâË¡ËÀ¡¦¾ó¤Ë¸ú²ÌÀâÌÀ¤òÄɲä·, *´ÕÄê*¤Çɽ¼¨¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿. ±Ñ¸ìÈǥƥ­¥¹¥È¤Ï¤Þ¤À̤´°À®. °ì±þ»Þ¤Ë¤·¤Æ¤ª¤¯.
-
-2002-03-31  henkma  <henkma@cvs>
-
-       * readme.txt 1.4, src/cmd3.c 1.15, src/xtra1.c 1.29:
-       ·Ù¹ð̵»ë¤Îµ¡Ç½ÄɲÃ. '$'¤ò¹ï¤ó¤Ç¤ª¤¯¤È¤½¤Î¥¢¥¤¥Æ¥à¤Ï·Ù¹ðǽÎϤò¼º¤Ê¤¦.
-       ¤Ê¤ª, Ìùï¤ß¤ÈÌþ䷤ΤȤ­¤Ë¾õÂ֤κƷ׻»¤ò¤·¤Æ¤¤¤Ê¤¤¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç
-       ¤Ä¤¤¤Ç¤Ë½¤Àµ¤·¤Æ¤ª¤¤¤¿.
-
-2002-03-30  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/defend.txt 1.4, lib/help/dungeon.txt 1.5, lib/help/jobjects.txt 1.3, lib/help/monster.txt 1.2, lib/help/objects.txt 1.3, lib/help/tang.txt 1.4, lib/help/town.txt 1.3:
-       ½¤Àµ¤È¡¢Á´¤Æ¤Î¥¹¥Ú¥ë¥Á¥§¥Ã¥¯¡£
-
-       * lib/help/Makefile.am 1.4, lib/help/arena.txt 1.4, lib/help/attack.hlp 1.5, lib/help/defend.hlp 1.3, lib/help/dungeon.hlp 1.4, lib/help/dungeon.txt 1.4, lib/help/help.hlp 1.6, lib/help/jattack.hlp 1.3, lib/help/jdefend.hlp 1.2, lib/help/jmonster.txt 1.3, lib/help/jobjects.txt 1.2, lib/help/jtown.txt 1.3, lib/help/monster.hlp 1.1, lib/help/monster.txt 1.1, lib/help/objects.hlp 1.2, lib/help/objects.txt 1.2, lib/help/readme.txt 1.6, lib/help/spoiler.hlp 1.4, lib/help/town.txt 1.2:
-       ±ÑÌõ¡¢¼è¤ê¤¢¤¨¤º´°À®¡£
-       ÆüËܸìÈǤν¤Àµ¤â¾¯¤·¡£
-
-       * src/spells2.c 1.17:
-       "¤¢¤Ê¤¿¤ÏĶǽÎϤò»ý¤Ã¤Æ¤¤¤ë¡£"¢ª"¤¢¤Ê¤¿¤Ï¥Æ¥ì¥Ñ¥·¡¼Ç½ÎϤò»ý¤Ã¤Æ¤¤¤ë¡£"
-
-2002-03-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/effects.c 1.17, src/files.c 1.43, src/mspells1.c 1.18, src/mspells2.c 1.12, src/scores.c 1.6, src/util.c 1.24, src/wild.c 1.10, src/cmd4.c 1.32, src/cmd5.c 1.16, src/defines.h 1.31, src/dungeon.c 1.27:
-       »àË´»þ¤Î¥¹¥³¥¢Á÷¿®¤¹¤ë¤«¤Î¼ÁÌäʸ¤¬ÍúÎò¤Ë»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Æ¥À¥ó¥×¤Î
-       ¹Ô¿ô¤¬ÌµÂ̤ˤʤë¤Î¤Ç»Ä¤é¤Ê¤¤¤è¤¦¤Ëget_checK_strict()¤Î¥â¡¼¥É¤ò
-       ¤Á¤ã¤ó¤È½¤Àµ¤·¤¿¡£¤Ä¤¤¤Ç¤Ë¥â¡¼¥ÉÄê¿ô¤ò¥Þ¥¯¥íÄêµÁ¡£
-
-       * lib/edit/f_info_j.txt 1.4: Áð¤à¤é # ¢ª :
-
-       * lib/edit/r_info_j.txt 1.29:
-       Wyrd sister ¢ª ±¿Ì¿¤ÎËâ½÷¡£Lesser black reaver ¢ª ³¥¿§¤ÎΫå¼Ô¡£
-
-       * src/cave.c 1.28: new_ascii_graphics¤Î¥³¡¼¥ÉÀ°Íý¡£
-
-2002-03-29  henkma  <henkma@cvs>
-
-       * src/cmd6.c 1.19:
-       ·¼¤ÎÆÁ¾å¾ºÈ½Äê(¤Î°ìÉô)¤Î½¤Àµ. ·¼ÌØÌô¤Ç+2,*·¼ÌØ*¤ÎÌô¤Ç+1¤ò, µÕ¤Ë¤·¤¿.
-
-2002-03-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/tables.c 1.26: ¥¹¥Ú¥ë¥Á¥§¥Ã¥¯¤Î¤È¤­Ä¾¤·¤¿¤Î¤Ëcommit˺¤ì¤Æ¤¿¡£
-
-2002-03-28  henkma  <henkma@cvs>
-
-       * src/tables.c 1.25: typo½¤Àµ.
-
-2002-03-28  Takeshi Mogami  <mogami@cvs>
-
-       * autopick_eng.txt 1.8, readme_eng.txt 1.5, lib/help/attack.txt 1.6, lib/help/birth.txt 1.5, lib/help/charattr.txt 1.3, lib/help/command.txt 1.5, lib/help/commdesc.txt 1.5, lib/help/general.txt 1.5, lib/help/magic.txt 1.5, lib/help/option.txt 1.6, lib/help/pref.txt 1.5, lib/help/version.txt 1.5:
-       ¥¹¥Ú¥ë¥Á¥§¥Ã¥¯
-
-2002-03-28  henkma  <henkma@cvs>
-
-       * src/mindtips.h 1.6: typo½¤Àµ.
-
-       * src/tables.c 1.24: ¶ãÍ·»í¿Í¤Î²Î¤Î̾Á°½¤Àµ.
-
-2002-03-27  henkma  <henkma@cvs>
-
-       * src/tables.c 1.23, src/spellstips.h 1.15: typo½¤Àµ.
-
-       * src/spellstips.h 1.14: typo½¤Àµ. shild¢ªshield.
-
-2002-03-26  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/attack.txt 1.5, lib/help/command.hlp 1.4, lib/help/command.txt 1.4, lib/help/commdesc.hlp 1.4, lib/help/commdesc.txt 1.4, lib/help/defend.txt 1.3, lib/help/pref.hlp 1.4, lib/help/pref.txt 1.4:
-       ±ÑÌõ¿Ê¹Ô
-
-       * lib/help/jcommand.hlp 1.3, lib/help/jcommdesc.hlp 1.3, lib/help/jpref.txt 1.2:
-       ½¤Àµ
-
-       * lib/help/jbirth.hlp 1.2, lib/help/jbirth.txt 1.4: ½¤Àµ¡£
-
-       * lib/help/birth.txt 1.4: ±ÑÌõ¿Ê¹Ô
-
-       * lib/help/jdefend.txt 1.2: ½¤Àµ
-
-       * lib/help/attack.hlp 1.4, lib/help/attack.txt 1.4, lib/help/defend.hlp 1.2, lib/help/defend.txt 1.2:
-       ±ÑÌõ¿Ê¹Ô
-
-       * lib/help/jattack.txt 1.4: ½¤Àµ¡£
-
-2002-03-26  henkma  <henkma@cvs>
-
-       * src/spellstips.h 1.13: typo½¤Àµ. Vamparic¢ªVampiric.
-
-       * src/mindtips.h 1.5, src/spellstips.h 1.12:
-       typo½¤Àµ, hiroism¢ªheroism.
-
-2002-03-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/wizard1.c 1.18:
-       ¥â¥ó¥¹¥¿¡¼¥¹¥Ý¥¤¥é¡¼¤Ç¡¢¥â¥ó¥¹¥¿¡¼¤ÎÈÖ¹æ½ÐÎϤ¬´Ö°ã¤Ã¤Æ¤ë¥Ð¥°½¤Àµ¡£
-
-       * lib/help/option.txt 1.5: °ìÉô¥»¡¼¥Ö¤·Ëº¤ì¤¿¡£
-
-       * lib/help/option.hlp 1.4, lib/help/option.txt 1.4: ±ÑÌõ¤µ¤é¤Ë¿Ê¹Ô¡£
-
-       * lib/help/joption.hlp 1.3, lib/help/joption.txt 1.5, lib/pref/pref-opt.prf 1.3, src/externs.h 1.36, src/tables.c 1.21, src/variable.c 1.16:
-       Ì¤»ÈÍѤÎstack_allow_wands¤òºï½ü¡£
-
-2002-03-25  habu  <habu@cvs>
-
-       * src/cmd3.c 1.14, src/dungeon.c 1.26, src/load.c 1.20, src/main-x11.c 1.13, src/wizard1.c 1.17:
-       »ÈÍѤµ¤ì¤Æ¤¤¤Ê¤¤ÊÑ¿ô¤Îºï½ü¡£
-
-2002-03-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/joption.txt 1.4: ±ÑÌõÃæ¤Ëµ¤ÉÕ¤¤¤¿¥ß¥¹¡£½¤Àµ¡£
-
-       * lib/help/charattr.hlp 1.2, lib/help/charattr.txt 1.2, lib/help/general.hlp 1.4, lib/help/general.txt 1.4, lib/help/magic.hlp 1.4, lib/help/magic.txt 1.4, lib/help/version.txt 1.4:
-       ±Ñ¸ìÈǥإë¥×¤Î¤Ç¤­¤¿¤È¤³¤Î¤ß¡£
-
-       * src/cmd3.c 1.13, src/externs.h 1.35, src/monster1.c 1.13, src/wizard1.c 1.16:
-       ¥â¥ó¥¹¥¿¡¼¥¹¥Ý¥¤¥é¡¼¤Î¥³¡¼¥É¤ò»×¤¤½Ð¤Î¥³¡¼¥É¤È¶¦Ä̲½¡£
-       ¤Ä¤¤¤Ç¤Ëcheat_know¤ÈÄ®¤Ç¤Î¥â¥ó¥¹¥¿¡¼Ä´ºº¤Î¥³¡¼¥ÉÀ°Íý¡£
-
-       * src/racial.c 1.10:
-       ÀÅ¿å¤Î±ÑÌõ½¤Àµ¡£  Clear Mind ¢ª Mirror Concentration
-
-2002-03-23  henkma  <henkma@cvs>
-
-       * src/racial.c 1.9: typo½¤Àµ. asuume¢ªassume
-
-2002-03-23  hoge  <hoge@cvs>
-
-       * src/cmd6.c 1.18, src/defines.h 1.30, src/files.c 1.42, src/hissatsu.c 1.6, src/init1.c 1.29, src/melee2.c 1.18, src/monster1.c 1.12, src/object1.c 1.24, src/object2.c 1.33, src/spells2.c 1.16, src/spells3.c 1.17, src/wizard1.c 1.15, lib/edit/a_info_j.txt 1.17, lib/edit/e_info_j.txt 1.16, lib/edit/r_info_j.txt 1.28, src/artifact.c 1.19, src/birth.c 1.22, src/bldg.c 1.11, src/cmd1.c 1.27, src/cmd2.c 1.19, src/cmd3.c 1.12, src/cmd5.c 1.15:
-       ¥â¥ó¥¹¥¿¡¼¤ÎHUMAN¥Õ¥é¥°¤È¥¢¥¤¥Æ¥à¤ÎSLAY_HUMAN
-       Â¼Àµ¤È¥Á¥§¥ó¥½¡¼¤ÏSLAY_HUMAN¤Ä¤±¤¿¤Î¤Ç¶¯¤µ¤ò¸«Ä¾¤·
-
-2002-03-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jcharattr.txt 1.5, lib/help/jgeneral.hlp 1.3, lib/help/jmagic.txt 1.4:
-       ±ÑÌõÃæ¤Ë¸«¤Ä¤±¤¿ÆüËܸìÈǤΥߥ¹¤ò½¤Àµ¡£
-
-2002-03-23  henkma  <henkma@cvs>
-
-       * src/mindtips.h 1.4: mirror ¤Î tips typo½¤Àµ.
-
-2002-03-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/racial.c 1.8: ·õ¤ÎÉñ¤¤¤ÎÌõ¤¬¤ï¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-23  henkma  <henkma@cvs>
-
-       * src/mindtips.h 1.3: mirror ¤Î tips½¤Àµ.
-
-2002-03-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/arena.txt 1.3, lib/help/attack.hlp 1.3, lib/help/attack.txt 1.3, lib/help/birth.hlp 1.3, lib/help/birth.txt 1.3, lib/help/bldg.txt 1.3, lib/help/charattr.hlp 1.1, lib/help/charattr.txt 1.1, lib/help/command.hlp 1.3, lib/help/command.txt 1.3, lib/help/commdesc.hlp 1.3, lib/help/commdesc.txt 1.3, lib/help/defend.hlp 1.1, lib/help/defend.txt 1.1, lib/help/dungeon.hlp 1.3, lib/help/dungeon.txt 1.3, lib/help/gambling.txt 1.3, lib/help/general.hlp 1.3, lib/help/general.txt 1.3, lib/help/help.hlp 1.5, lib/help/helpinfo.txt 1.3, lib/help/magic.hlp 1.3, lib/help/magic.txt 1.3, lib/help/objects.hlp 1.1, lib/help/objects.txt 1.1, lib/help/option.hlp 1.3, lib/help/option.txt 1.3, lib/help/pref.hlp 1.3, lib/help/pref.txt 1.3, lib/help/readme.txt 1.5, lib/help/spoiler.hlp 1.3, lib/help/tang.txt 1.3, lib/help/town.hlp 1.1, lib/help/town.txt 1.1, lib/help/version.txt 1.3:
-       Z240¤«¤é¥³¥Ô¡¼¡¢ºï½ü¤·¤¿¤Î¤ÈƱ̾¤Î¤â¤Î¤â¤¢¤ë¤·°ã¤¦¤Î¤â¤¢¤ë¡£
-
-       * lib/help/arena.txt 1.2, lib/help/attack.hlp 1.2, lib/help/attack.txt 1.2, lib/help/birth.hlp 1.2, lib/help/birth.txt 1.2, lib/help/bldg.txt 1.2, lib/help/command.hlp 1.2, lib/help/command.txt 1.2, lib/help/commdesc.hlp 1.2, lib/help/commdesc.txt 1.2, lib/help/dungeon.hlp 1.2, lib/help/dungeon.txt 1.2, lib/help/gambling.txt 1.2, lib/help/general.hlp 1.2, lib/help/general.txt 1.2, lib/help/help.hlp 1.4, lib/help/helpinfo.txt 1.2, lib/help/magic.hlp 1.2, lib/help/magic.txt 1.2, lib/help/option.hlp 1.2, lib/help/option.txt 1.2, lib/help/pref.hlp 1.2, lib/help/pref.txt 1.2, lib/help/readme.txt 1.4, lib/help/spoiler.hlp 1.2, lib/help/tang.txt 1.2, lib/help/version.txt 1.2:
-       ±Ñ¸ìÈǥإë¥×¤Îºî¶È³«»Ï¡£¼ê»Ï¤á¤Ë¸Å¤¤¤Î¤òºï½ü¡£Z24x¤Î¤ÈÆþ¤ì´¹¤¨¤Æºî¶È¤¹¤ë¡£
-
-2002-03-23  henkma  <henkma@cvs>
-
-       * src/spells2.c 1.15:
-       ¼ö¤¤¤Ë´Ø¤·¤Æ ¡Ö¤¢¤Ê¤¿¤Ï...¡×¤òŬÅö¤Êʸ¶ç¤Èº¹¤·Âؤ¨¤¿.
-       ¡Ö¼å¤¤¼ö¤¤¡×¤Ï, Â¾¤Îɽ¸½¤ÈÅý°ì¤·¤Æ, Ã±¤Ë¡Ö¼ö¤¤¡×¤ÇÎɤ¤¤È»×¤¦¤Î¤À¤¬¤É¤¦¤«¡©
-       # º£¤Î¤È¤³¤í¼å¤¤¼ö¤¤(±Ñ¸ì¤Ïweak curse)¤È¤·¤Æ¤¤¤ë.
-
-       * src/object1.c 1.23, src/spells2.c 1.14: ¼ö¤¤´ØÏ¢"nanka"¤òËÝÌõ.
-
-2002-03-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/w_low_j.txt 1.14:
-       ¤¹¤Ð¤ä¤­Ûù¡¢¾®¤µ¤­Ûùºï½ü¡£»úÂΤ¬°ã¤¦¤À¤±¤Ç̾Á°¤Î°ÕÌ£¤¬ÊѤäƤʤ¤¤«¤é¤Þ¤º¤¤¡£
-
-2002-03-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.41: ¥À¥ó¥×¤Î»àË´¾ì½ê¤Îɽ¼¨¤Ë¡¢»à°ø¤âÄɲá£
-
-       * src/effects.c 1.16:
-       Ëãáã¤äĦÁü¾õÂ֤ǻà¤ó¤À¤È¤­¡¢»à°ø¤Ë"Ëãáã¾õÂÖ¤Ç"¡¢"ĦÁü¾õÂÖ¤Ç"¤òÄɲ乤ë¤è¤¦¤Ë
-       ¤·¤Æ¤ß¤¿¡£
-
-       * src/cave.c 1.22.2.12, src/z-term.c 1.2.14.8:
-       ½¤Àµ2¤Ä¡¢¤³¤Ã¤Á¤Ë¤âcommit¡£¸å¤Ç¾¤Î¥Ð¥ê¥¢¥ó¥ÈÍѤÎdiff¤ò¼è¤ë¤¿¤á¡£
-
-       * src/z-term.c 1.5:
-       Bigtile»ÈÍÑ»þ¤Ë¥Þ¥Ã¥×²èÌ̤κ¸Ã¼¤¬¤½¤Î¾ì½êÃÏ·Á¤Ë¤è¤Ã¤Æ¤ÏÀµ¤·¤¯¥¢¥Ã¥×¥Ç¡¼¥È
-       ¤µ¤ì¤º¡¢¶õÇò¥­¥ã¥é¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£´Á»ú¤Î2ʸ»úÌܤòȽÄꤹ¤ë¥Õ¥é¥°
-       KANJI2¤ÎȽÄê¤Ë¥¿¥¤¥ë¤Îattr¤¬¤Ò¤Ã¤«¤«¤Ã¤Æ¤¤¤¿¡£
-
-       * src/cave.c 1.27:
-       lite_spot()¤ÇÁ´³Ñʸ»ú¤ÎÃÏ·Á¤òÀµ¤·¤¯¥¢¥Ã¥×¥Ç¡¼¥È¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       ¼ÂºÝ¤Ë¥Ð¥°¤¬¸½¤ï¤ì¤Æ¤¤¤¿¤Î¤Ï¡¢SJIS¤Î´Ä¶­¤Ç¥°¥é¥Õ¥£¥Ã¥¯¥â¡¼¥ÉOFF¤ÇBigtile¤ò
-       »È¤Ã¤¿¾ì¹ç¤À¤±¤À¤Ã¤¿¤¬¡¢Â¾¤Î¾ì¹ç¤Ç¤âÀøºßŪ¤ËÌäÂ꤫¤â¤·¤ì¤Ê¤¤¤Î¤Ç¡£
-
-2002-03-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.20.2.3, src/externs.h 1.30.2.5, src/generate.c 1.8.2.3, src/init1.c 1.23.2.3, src/object1.c 1.19.2.4, src/variable.c 1.12.2.3, src/wild.c 1.6.4.3, src/xtra2.c 1.21.2.7, src/z-term.c 1.2.14.7, src/cave.c 1.22.2.11, src/cmd4.c 1.27.2.3:
-       branch-mogami-bigtile¤Ë¡¢´´¤Ç¤ÎÊѹ¹ÅÀ¤âcommit¤·¤Æ¤ª¤¯¡£
-
-       * src/z-term.c 1.4:
-       ±Ñ¸ìÈǤÇbigtile¥â¡¼¥É¤Î¤È¤­¡¢¥¿¥¤¥ë¤Î±¦È¾Ê¬¤À¤±ºï½ü¤µ¤ì¤¿¸å¤ÇÀµ¤·¤¯½ñ¤­Ä¾¤·
-       ¤¬¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-20  habu  <habu@cvs>
-
-       * src/hissatsu.c 1.5: ·õ½Ñ²È¤ÎâÁÏǤ¬MP¤ò¾ÃÈñ¤·¤Æ¤¤¤Ê¤¤¥Ð¥°¤ò½¤Àµ
-
-2002-03-20  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.29: ¹¹¿·
-
-       * src/load.c 1.19:
-       ÁÆ°­ÉʤÎAC¤äÎô²½¤·¤¿pval¤¬¥í¡¼¥É¤¹¤ë¤È¸µ¤ËÌá¤Ã¤Æ¤·¤Þ¤¦¥Ð¥°¤ò½¤Àµ¡£
-       ¥¢¥¤¥Æ¥à¤Î¥í¡¼¥É»þ¤Ë¤¤¤Á¤¤¤Á k_info¡¢e_info¡¢a_info ¤«¤é¾ðÊó¤òÆɤó¤Ç¤Á¤ã¤ó¤È
-       ¥»¡¼¥Ö¤µ¤ì¤Æ¤¤¤¿¥ª¥Ö¥¸¥§¥¯¥È¥Ç¡¼¥¿¤ò¾å½ñ¤­¤·¤Æ¤¤¤¿¤¬¡¢Ìµ°ÕÌ£¤Ç¥Ð¥°¤Î²¹¾²
-       ¤Ê¤Î¤Ç¡¢¤½¤Î¤è¤¦¤Ê¥³¡¼¥É¤ò¤Þ¤ë¤´¤Èºï½ü¤·¤¿¡£
-
-       * src/dungeon.c 1.25, src/bldg.c 1.10, src/cmd6.c 1.17, src/defines.h 1.29:
-       EATER_CHARGE (= 0x10000L) Åù¤Î¥Þ¥¯¥í¤òÄêµÁ¤·¤ÆËâÆ»¶ñ½Ñ»Õ¤Î¥³¡¼¥É¤òÀ°Íý¡£
-       ¤µ¤é¤Ë¡¢¥í¥Ã¥É¤Î½¼Å¶¾õÂ֤οôÃͤò¥Ç¥Î¥ß¤·¤ÆÂÎÎϲóÉü¤Î¥í¥Ã¥É¤ò99ËܤȤ«»ý¤Ã¤Æ
-       ¤¤¤Æ¤â¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/pref/graf-new.prf 1.6:
-       ¥Õ¥§¥¢¥Î¡¼¥ë¤Î¥é¥ó¥×¡¢¥Ñ¥é¥ó¥Æ¥£¥¢¡¢Ãæ¤Ä¹ñ¥¬¥¤¥É¡¢½¤Àµ¡£
-
-2002-03-18  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-new.prf 1.5:
-       ²Î½¸¤Î16x16¥¿¥¤¥ë¤¬ÊѤʤΤòÄêµÁ¤µ¤ì¤Æ¤¿¤Î¤Çºï½ü¡£
-
-2002-03-17  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jmagic.txt 1.3: ·õ½Ñ²È¤Î·¿¤ÎÀâÌÀ¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲá£
-
-       * lib/help/jmagic.hlp 1.2, lib/help/jmagic.txt 1.2:
-       ËâË¡¤ÎÀâÌÀ¤òÊѶòÈÚÅܤËÂбþ¡£
-
-       * src/cmd6.c 1.16:
-       ËâÆ»¶ñ½Ñ»Õ¤Î¥ê¥Ô¡¼¥È¥³¥Þ¥ó¥É¤Ç¥í¥Ã¥É¤ò»È¤¦¥³¡¼¥É¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-16  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.27:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥³¡¼¥É¤¬¥Ð¥°¤Ã¤¿¤È¤­¤Ë¤Á¤ç¤¯¤Á¤ç¤¯¡Ö¥×¥ì¥¤¥ä¡¼¡×¤¬¤¢¤é¤ï¤ì¤Æ
-       HP¥²¡¼¥¸¤Îɽ¼¨¤Ç0¤Î³ä¤ê»»¤¬µ¯¤­¤ÆÊѶòÈÚÅܤ¬Íî¤Á¤ë¤Î¤Ç¡¢¥Ð¥°¤¬¤¢¤Ã¤Æ¤â¤¤¤­¤Ê¤ê
-       Íî¤Á¤Ê¤¤¤è¤¦¤Ë¡¢1ÅÀ¤À¤±HP¤òÍ¿¤¨¤ë½¤Àµ¡£
-
-       * src/monster2.c 1.17:
-       ¥«¥á¥ì¥ª¥ó¤Î²¦¤¬ÊѿȤ˼ºÇÔ¤·¤Æ¡Ö¥×¥ì¥¤¥ä¡¼¡×¤Ë¤Ê¤ë¤Î¤ò½¤Àµ¡£
-
-2002-03-15  hoge  <hoge@cvs>
-
-       * src/object2.c 1.32, src/save.c 1.8, src/spells1.c 1.12, src/spells2.c 1.13, src/spells3.c 1.16, src/types.h 1.10, src/wizard1.c 1.14, src/wizard2.c 1.13, src/xtra1.c 1.28, configure.in 1.12, lib/edit/a_info_j.txt 1.16, lib/edit/e_info_j.txt 1.15, lib/edit/k_info_j.txt 1.15, src/artifact.c 1.18, src/cmd1.c 1.26, src/cmd2.c 1.18, src/cmd3.c 1.11, src/cmd6.c 1.15, src/defines.h 1.28, src/dungeon.c 1.24, src/effects.c 1.15, src/externs.h 1.34, src/files.c 1.40, src/init1.c 1.28, src/load.c 1.18, src/mane.c 1.6, src/melee2.c 1.17, src/mind.c 1.7, src/mspells1.c 1.17, src/mspells2.c 1.11, src/mspells3.c 1.9, src/object1.c 1.22:
-       ¼ö¤¤¤Ï³°¤ì¤Ê¤¤¤À¤±¤Ç¤Ï¤Ê¤¯¡¢¤¤¤í¤¤¤í¥¤¥ä¤Ê¸ú²Ì¤¬¤¢¤ë¡£
-
-2002-03-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.23, src/generate.c 1.11, src/init1.c 1.27, src/variable.c 1.15, src/wild.c 1.9, src/xtra2.c 1.25:
-       ¿·µ¬¥²¡¼¥à³«»Ï¤Î¤È¤­¤Î¥Ñ¥Í¥ë¤Î°ÌÃÖ¤¬ÊѤÀ¤Ã¤¿¤Î¤Ç¡¢ºÆ½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.26:
-       Ë±Ñà¤ÎÀâÌÀ¡£ÁêÃ̤ηë²Ì¡¢Ê¸¤Î¹½À®¤ò¤Á¤ç¤Ã¤È¤À¤±½¤Àµ¡£
-
-2002-03-15  henkma  <henkma@cvs>
-
-       * src/spells2.c 1.12: ¼«¸ÊʬÀϤΥá¥Ã¥»¡¼¥¸¤Î½¤Àµ.
-
-       * src/xtra1.c 1.27:
-       ·õ½Ñ²È¤Î¹ßµ´¿Ø¤ÇAC-50¤¬¥Ñ¥é¥á¡¼¥¿É½¼¨¤ÎÊý¤Ë¸½¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ.
-       ¤Ò¤ç¤Ã¤È¤·¤Æ°Õ¿ÞŪ¤À¤Ã¤¿¤ê¤·¤¿¡©
-
-2002-03-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.26:
-       lite_spot()¤Î»È¤¨¤ëÈϰϤ¬in_bound()¤À¤Ã¤¿¤»¤¤¤Ç²èÌÌü¤Î
-       ¥Ü¥ë¥È¤ä¥Ü¡¼¥ë¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó¸å¤Ë¥´¥ß¤¬»Ä¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-       ¥Ü¥ë¥È¤ä¥Ü¡¼¥ë¤Î¥¢¥Ë¥á¡¼¥·¥ç¥ó¤òÁ´³Ñ¥­¥ã¥é¤ËÂбþ¡£
-
-       * Changelogs 1.28: ¹¹¿·
-
-       * src/xtra2.c 1.24:
-       center_player ¥ª¥Õ¤Î¤È¤­¤Î¹ÓÌî¤Ç¤Î²èÌÌÀÚ¤êÊѤ¨¤¬¤ª¤«¤·¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       ¤µ¤é¤Ë±¦¤È²¼¤Ë²èÌ̤òÀÚ¤êÊѤ¨¤ë¤Þ¤Ç¤Ëü¤Ë¶á¤Å¤±¤ë¸Â³¦Ãͤ¬1°ã¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/report.c 1.17:
-       testÍÑ¥µ¡¼¥Ð¡¼¤ËÁ÷¤ëÀßÄê¤Î¤Þ¤Þ¤Çcommit¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¡¢Ìᤷ¤¿¡£
-
-       * src/cmd4.c 1.31, src/report.c 1.16:
-       ¥¹¥¯¥ê¡¼¥ó¥·¥ç¥Ã¥È¤òÂ礭¤Ê¥¦¥£¥ó¥É¥¦¤ËÂбþ¡£
-
-2002-03-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.25: Á´³Ñ¥­¥ã¥é¤Çµ°Æ»É½¼¨¡£
-
-2002-03-12  habu  <habu@cvs>
-
-       * src/object1.c 1.21:
-       ¥¢¥¤¥Æ¥à¤Î¾ÜºÙɽ¼¨¤Ç¥¦¥£¥ó¥É¥¦½ÄÉý¤ò¥Õ¥ë¤Ë»È¤¦¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cmd4.c 1.30:
-       ¸¡º÷·ë²Ì¤Î¥Ï¥¤¥é¥¤¥Èɽ¼¨¤ÎºÂɸ¤ò½ÄÉý¤Ë¹ç¤ï¤»Ëº¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.24, src/dungeon.c 1.22, src/externs.h 1.33, src/generate.c 1.10, src/init1.c 1.26, src/variable.c 1.14, src/wild.c 1.8, src/xtra2.c 1.23:
-       center_player ¤¬¥ª¥Õ¤Î¤È¤­¤Ë¡¢²èÌÌɽ¼¨°ÌÃ֤νé´üÀßÄ꤬¤ª¤«¤·¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-12  henkma  <henkma@cvs>
-
-       * src/object2.c 1.31, lib/edit/e_info_j.txt 1.14:
-       »¦Ù¤¤ÎÉð´ï¤ÎÃÍÃʤη׻»¤ò½¤Àµ.
-
-2002-03-12  habu  <habu@cvs>
-
-       * src/cmd4.c 1.29:
-       ¥á¥Ã¥»¡¼¥¸ÍúÎò¤Îɽ¼¨¤ò¥¦¥£¥ó¥É¥¦¤Î½ÄÉý¤Ë¹ç¤ï¤»¤¿¡£¥¹¥¯¥í¡¼¥ë¤¹¤ë¹Ô¿ô¤Ï¤½¤Î¤Þ¤Þ¤Ë¤·¤Æ¤¤¤ë¡£
-
-2002-03-12  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.21, src/externs.h 1.32, src/files.c 1.39, src/generate.c 1.9, src/init1.c 1.25, src/load.c 1.17, src/main-mac.c 1.11, src/main-win.c 1.7, src/main-x11.c 1.12, src/monster1.c 1.11, src/object1.c 1.20, src/save.c 1.7, src/scores.c 1.5, src/store.c 1.6, src/variable.c 1.13, src/wild.c 1.7, src/xtra1.c 1.26, src/xtra2.c 1.22, src/z-term.c 1.3, src/z-term.h 1.2, src/ang_eng.rc 1.3, src/angband.rc 1.2, src/cave.c 1.23, src/cmd3.c 1.10, src/cmd4.c 1.28, src/defines.h 1.27:
-       branch-mogami-bigtile ¤ò¥Þ¡¼¥¸¡£
-
-       * src/main-mac.c 1.10.2.3: switchʸ¤Îbreak;˺¤ì¤ò½¤Àµ¡£
-
-       * src/main-mac.c 1.10.2.2: Kuwa¤µ¤ó¤ËMac¤Ç¥Æ¥¹¥È¤·¤Æ¤â¤é¤Ã¤Æ½¤Àµ¡£
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦¤Ë¥¿¥¤¥ë¤¬É½¼¨¤Ç¤­¤Ê¤¤¤Î¥Ð¥°¤é¤·¤­¿¶Éñ¤¤¤â½¤Àµ¡£
-
-       * Changelogs 1.27:
-       ¹¹¿·¡£rcs2log ¤ËÍ¿¤¨¤ë¥ª¥×¥·¥ç¥ó¤ò -v -h cvs ¤Ë¤·¤Æ¡¢¤Á¤ç¤Ã¤È·Á¼°Êѹ¹¡£
-       ¥Õ¥¡¥¤¥ë̾¤Ë¥ê¥Ó¥¸¥ç¥óÈÖ¹æ¤òÉÕ¤±¤¿¤Î¤Ç¡¢1.30.2.4 ¤ß¤¿¤¤¤Ë4¤Ä°Ê¾å¤Î¿ô»ú
-       ¤ÎÁȤÀ¤Ã¤¿¤é»Þ¤Î¥Õ¥¡¥¤¥ë¤Ç¤¢¤ë»ö¤¬¤ï¤«¤ë¡£
-
-       * src/scores.c 1.4.2.1: ¥¹¥³¥¢¥ê¥¹¥È¤òÂ礭¤¤¥¦¥£¥ó¥É¥¦¤ËÂбþ¡£
-
-       * src/cave.c 1.22.2.10:
-       USE_TRANSPARENCY¤ò»È¤Ã¤Æ¤Ê¤¤¤È¤­¤Î¥³¥ó¥Ñ¥¤¥ë¥¨¥é¡¼½¤Àµ¡£
-
-2002-03-12  henkma  <henkma@cvs>
-
-       * src/cmd6.c 1.14:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥Èȯư¤Î¥Ð¥°¤È¥á¥Ã¥»¡¼¥¸½¤Àµ. ¥ô¥£¥ë¥ä¤È¿¿Ëâ¹äζ·õ¤Î¾ì¹çʬ¤±,
-       ±Ñ¸ì¤Î¥³¥ë¥¤¥ó¤ÈÀÄζ¤Î¾ì¹çʬ¤±, É½¸½:"¥¢¡¼¥Þ¡¼"¤òɽ¸½:"³»"¤ËÅý°ì.
-
-2002-03-11  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.22.2.9, src/main-win.c 1.6.6.4:
-       Á´³Ñʸ»ú¤¬Â¸ºß¤·¤Ê¤¤Ê¸»ú¤Ç¤âÊÑ´¹¤·¤è¤¦¤È¤·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-       Bigtile¥Õ¥é¥°Êݸ¥Ð¥°¤Ã¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/main-win.c 1.6.6.3:
-       ½é´üÀßÄê¥Õ¥¡¥¤¥ë¤ËBigtile¥Õ¥é¥°¤Î¾õÂÖ¤òÊݸ¤¹¤ë¤è¤¦¤Ë¡£
-
-       * src/z-term.c 1.2.14.6:
-       Á´³Ñ¥­¥ã¥é¥¯¥¿¤Î¾å¤ò¥«¡¼¥½¥ë¤¬°ÜÆ°¤·¤¿¤È¤­¤Î¹¹¿·¤ÎÉÔÈ÷¤ò½¤Àµ¡£
-
-       * src/main-mac.c 1.10.2.1: Bigtile¡¢Mac¤ËÂбþ¡¢¤·¤¿¤Ä¤â¤ê¡£
-
-       * src/files.c 1.38.2.1:
-       ¥Ø¥ë¥×¤ä'I'Åù¤Ç»È¤¦ show_file() ¤òÂ礭¤¤¥¦¥£¥ó¥É¥¦¤ËÂбþ¡£
-
-       * src/main-win.c 1.6.6.2: Win¤âÁ´³ÑASCIIʸ»ú¤ËÂбþ¤·¤¿½¤Àµ¡£
-
-       * src/main-x11.c 1.11.2.4, src/z-term.c 1.2.14.5, src/cave.c 1.22.2.8:
-       Âбþ¤¹¤ë¥¿¥¤¥ë¤¬¤Ê¤¤¥ª¥Ö¥¸¥§¥¯¥È¤ÏASCIIʸ»ú¤òÁ´³Ñ¤ËÊÑ´¹¤·¤Æɽ¼¨¡£
-
-2002-03-11  henkma  <henkma@cvs>
-
-       * src/object2.c 1.30:
-       ¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ÎµÛ·ìȯư¤Ë´Ø¤¹¤ëÃÍÃÊɾ²Á¤Î¥Ð¥°½¤Àµ.
-       ¡Ö¼Ù°­¾ÃÌǡפȡÖͦµ¤²óÉü/ÆǾ䷡פÎɾ²Á¤¬¤µ¤ì¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç,
-       ¤Ä¤¤¤Ç¤ËŬÅö¤Ê¿ô»ú¤ÇÄɲ䷤Ƥª¤¤¤¿.
-
-2002-03-11  Takeshi Mogami  <mogami@cvs>
-
-       * src/externs.h 1.30.2.4, src/load.c 1.16.2.1, src/main-win.c 1.6.6.1, src/main-x11.c 1.11.2.3, src/monster1.c 1.9.2.2, src/object1.c 1.19.2.3, src/save.c 1.6.2.1, src/store.c 1.5.4.2, src/variable.c 1.12.2.2, src/xtra2.c 1.21.2.6, src/z-term.c 1.2.14.4, src/ang_eng.rc 1.2.10.1, src/angband.rc 1.1.1.1.14.1, src/cave.c 1.22.2.7, src/cmd3.c 1.9.4.4, src/cmd4.c 1.27.2.2:
-       bigtile¤òWindows¤ËÂбþ¡£¤½¤Î¾¥³¡¼¥É¤ÎÀ°Íý¡£arg_bigtile ¤òbigtile mode ¤ÎÍ׵ᡢ
-       use_bigtile mode ¤Ë¸½ºß¤¢¤ë»ö¤ò¼¨¤¹¥Õ¥é¥°¤È¤·¤¿¡£
-
-2002-03-11  iks  <iks@cvs>
-
-       * lib/edit/r_info_j.txt 1.25:
-       ¥ì¥à¥¹¡¤¥Ð¡¼¥Î¡¼¥ë¡¤¥ë¥Ñ¡¼¥È¤ÎÀâÌÀʸÄɲá£
-
-2002-03-11  habu  <habu@cvs>
-
-       * src/cmd3.c 1.9.4.3, src/object1.c 1.19.2.2:
-       ¥¤¥ó¥Ù¥ó¥È¥ê¡¢ÁõÈ÷¡¢¾²¤Î¥¢¥¤¥Æ¥àɽ¼¨¤Î°ÌÃÖ¤¬²èÌ̱¦Ã¼¤Ë¤Ê¤ë¤è¤¦¤ËÄ´À°¡£
-
-2002-03-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/xtra2.c 1.21.2.5: look¥³¥Þ¥ó¥É¤ÎÎΰ賰¥¢¥¯¥»¥¹¤ò½¤Àµ¡£
-
-       * src/dungeon.c 1.20.2.2:
-       ºî¶È¤Î¤Ä¤¤¤Ç¤Ë¡¢¡¢¥á¥Ã¥»¡¼¥¸¥µ¥Ö¥¦¥£¥ó¥É¥¦¤¬¥²¡¼¥à³«»Ï»þ¤ËÉÁ²è¤µ¤ì¤Æ¤¤¤Ê¤¤
-       ¾õÂ֤ǻϤޤë¤Î¤ò½¤Àµ¡£
-
-       * src/cave.c 1.22.2.6:
-       ¥À¥ó¥¸¥ç¥ó¤è¤ê¤â²èÌ̤¬Â礭¤¤¤È¤­¡¢ÇÛÎó³°¥¢¥¯¥»¥¹¤òËɤ°½¤Àµ¡£
-
-       * src/dungeon.c 1.20.2.1, src/externs.h 1.30.2.3, src/xtra2.c 1.21.2.4, src/z-term.c 1.2.14.3, src/z-term.h 1.1.1.1.14.1:
-       ¥¦¥£¥ó¥É¥¦¤Î¥ê¥µ¥¤¥º¤Îľ¸å¤Ë²èÌ̤κÇÉÁ²è¡£
-
-       * src/cave.c 1.22.2.5, src/defines.h 1.24.2.1, src/xtra1.c 1.25.2.1, src/xtra2.c 1.21.2.3:
-       23¹ÔÌܤθÇÄê°ÌÃÖ¤Ëɽ¼¨¤·¤Æ¤¤¤¿Ê¸»ú¤ò²èÌ̺Dz¼¹Ô¤Ë¡£
-
-       * src/main-x11.c 1.11.2.2, src/wild.c 1.6.4.2, src/xtra2.c 1.21.2.2, src/cave.c 1.22.2.4, src/generate.c 1.8.2.2, src/init1.c 1.23.2.2:
-       big screen ¤Î¼ÂÁõÅÓÃæ¡¢½ÄÊý¸þ¤Ë¥¦¥£¥ó¥É¥¦¤òÂ礭¤¯¤·¤¿¤È¤­¤ÏÆ°ºî¤¹¤ë¡£
-
-2002-03-10  habu  <habu@cvs>
-
-       * src/util.c 1.23: minor code change.
-
-       * configure.in 1.11, src/externs.h 1.31, src/h-config.h 1.5, src/util.c 1.22:
-       usleep()¤Î̵ͭ¤òautoconf¤ÇÄ´¤Ù¤ë¤è¤¦¤Ë¤·¤¿¡£
-       memset()¤ÏANSI C¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëɸ½à´Ø¿ô¤Ê¤Î¤ÇHAS_MEMSET¤Ï¾Ãµî¡£
-
-       * lib/edit/r_info_j.txt 1.24, src/defines.h 1.26, src/init1.c 1.24, src/monster1.c 1.10, src/wizard1.c 1.13:
-       RF1_FRIEND¤Ï»È¤ï¤ì¤Æ¤¤¤Ê¤¤(RF1_FRIENDS¤·¤«À¸À®¤Ë¤Ï´ØÍ¿¤·¤Æ¤¤¤Ê¤¤)¤Î¤ÇÇѻߡ£
-
-2002-03-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.22.2.3, src/cmd3.c 1.9.4.2, src/cmd4.c 1.27.2.1, src/externs.h 1.30.2.2, src/monster1.c 1.9.2.1:
-       »×¤¤¤Ç¤È'%'¥³¥Þ¥ó¥É¤Îɽ¼¨¤ò½¤Àµ¡£roff_top()¤òextern¤Ë¤·¤¿¤Ä¤¤¤Ç¤Ë¡¢
-       externs.h¤ÎÀ°Íý¡¢³Æ´Ø¿ô¤¬Àµ¤·¤¤°ÌÃ֤˽ñ¤¤¤Æ¤¢¤ë¤è¤¦¤Ë¤·¤¿¡£¡£
-
-2002-03-10  habu  <habu@cvs>
-
-       * src/cmd2.c 1.17, src/defines.h 1.25, src/flavor.c 1.11, src/tables.c 1.20:
-       ÊõÈ¢¤Î¥È¥é¥Ã¥×¤Ë¤â·ÙÊóÁõÃÖ¤òÄɲá£
-
-2002-03-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/z-term.c 1.2.14.2, src/cave.c 1.22.2.2:
-       ASCIIʸ»ú¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Îɽ¼¨¥Ð¥°½¤Àµ¡£
-
-       * src/cave.c 1.22.2.1, src/cmd3.c 1.9.4.1, src/externs.h 1.30.2.1, src/generate.c 1.8.2.1, src/init1.c 1.23.2.1, src/main-x11.c 1.11.2.1, src/object1.c 1.19.2.1, src/store.c 1.5.4.1, src/variable.c 1.12.2.1, src/wild.c 1.6.4.1, src/xtra2.c 1.21.2.1, src/z-term.c 1.2.14.1:
-       bigtile (Á´³Ñ¥¿¥¤¥ë)¤Î¼ÂÁõ³«»Ï
-
-2002-03-10  habu  <habu@cvs>
-
-       * src/cmd1.c 1.25, src/defines.h 1.24, src/object2.c 1.29, lib/edit/f_info_j.txt 1.3, src/cave.c 1.22:
-       ¿·¥È¥é¥Ã¥×¡¢·ÙÊóÁõÃÖ¤òÄɲá£
-
-       * lib/edit/r_info_j.txt 1.23, src/defines.h 1.23, src/init1.c 1.23, src/wizard1.c 1.12, src/xtra2.c 1.21:
-       ¥â¥ó¥¹¥¿¡¼ÈÖ¹æ¤À¤±¤ÇȽÊ̤Ǥ­¤ë¤Î¤ÇDROP_CHOSEN¥Õ¥é¥°¤òÇѻߡ£¤Þ¤¿¡¢DROP_USEFUL¤È¤¤¤¦Á´¤¯»È¤ï¤ì¤Æ¤Ê¤¤¥Õ¥é¥°¤â¤Ä¤¤¤Ç¤ËÇѻߤ·¤Æ¤ª¤¤¤¿¡£
-
-2002-03-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.21: 7+1d10 ¥Ü¥Ä¡£
-
-       * src/effects.c 1.14:
-       Á°¤Ë¸¸³ÐÃæ¤Î¥À¥á¡¼¥¸¤Î¸¶°ø¤òÀµ¤·¤¯É½¼¨¤¹¤ë¤è¤¦¤·¤¿¤È¤­¤Ë¡¢¥×¥ì¥¤µ­Ï¿¤Î
-       ¥Ô¥ó¥Á¤Ë¤Ê¤Ã¤¿¤È¤­¤Îµ­Ï¿¤¬¤¢¤Ã¤¿¤Î¤ò˺¤ì¤Æ¤¤¤¿¤Î¤Ç¡¢¤½¤ì¤ò½¤Àµ¡£
-       ¸¸³ÐÃæ¤Ë¤Ï damage_type == DAMEGE_ATTACK ¤Î¥À¥á¡¼¥¸¤Î¸¶°ø¤Ï¡Ö²¿¤«¡×¤Èµ­Ï¿
-       ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-03-09  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.20:
-       ¥­¥ã¥é¥¯¥¿¡¼À¸À®»þ¤ÎǽÎÏÃͤΥÀ¥¤¥¹¤ò¼Â¸³Åª¤Ë 5 + 1d3 + 1d4 + 1d5 ¤«¤é¡¢
-       7 + 1d10 ¤ËÊѹ¹¡£¤½¤ÎÂå¤êdelay¤ò¥Ç¥Õ¥©¥ë¥È¤Ç 10 (1/100 ÉÃ)Æþ¤ì¤¿¡£
-
-       * src/scores.c 1.4: scores.raw¤Îʸ»ú¥³¡¼¥É¤ò¼«Æ°¤ÇÊÑ´¹¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd4.c 1.27, src/effects.c 1.13, src/util.c 1.21:
-       get_check¤Î [y/n]¤Î¥á¥Ã¥»¡¼¥¸¤òÍúÎò¤Ë»Ä¤¹¤è¤¦¤Ë¤·¤Æ¤ß¤¿¡£
-       »Ä¤Ã¤ÆÍߤ·¤¯¤Ê¤¤¤È¤³¤í¤Ï get_check_strict("...", 4); ¤È¤¹¤ì¤Ð¤è¤¤¡£
-
-2002-03-08  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/t0000002_j.txt 1.3, lib/edit/t0000003_j.txt 1.3, lib/edit/t0000004_j.txt 1.3, lib/help/jbldg.txt 1.2, src/bldg.c 1.9:
-       Ä®¤ÎÎò»Ë¢ªÄ®¤Î³µÍ× ¤È¤·¤Æ¡¢jbldg.txt¤ò¤Á¤ã¤ó¤È½ñ¤¤¤¿¡£
-
-       * lib/help/jversion.txt 1.6: ½ñ¤­´Ö°ã¤¨ 2001 -> 2002
-
-       * src/files.c 1.38:
-       Win¤ÇȾ³Ñ8ʸ»ú¤è¤êŤ¤Ì¾Á°¤ò¾¡¼ê¤Ë8byte¤ËÀÚ¤ë¤Î¤òÇѻߡ£
-       ´Á»ú¤ò´Þ¤à¤È¤­¤Ë¥Õ¥¡¥¤¥ë̾¤¬ÊѤˤʤë»ö¤â¤Ê¤¯¤Ê¤ë¡£
-
-       * src/cave.c 1.21:
-       ¸¸³Ð¾õÂ֤ǤâMM¤ÇÀµ¤·¤¤¥¢¥¤¥Æ¥à̾¤¬É½¼¨¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç¡¢¡Ö²¿¤«´ñ̯¤Êʪ¡×
-       ¤ËÊѤ¨¤¿¡£¼«Æ°½¦¤¤¤½¤Î¤â¤Î¤ÏÀµ¤·¤¯Æ¯¤¯¤Þ¤Þ¤Ë¤·¤Æ¤¢¤ë¡£
-
-2002-03-08  habu  <habu@cvs>
-
-       * lib/edit/e_info_j.txt 1.13: of Poisoning -> of Venom
-
-       * lib/edit/e_info_j.txt 1.12, src/object2.c 1.28:
-       XTRA_POWER¥Õ¥é¥°¤Ç¸Æ¤Ð¤ì¤ë¤Î¤¬one_sustain()¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Çone_ability()¤Ë½¤Àµ¡£(½ËÊ¡)Éð´ï¤âe_info_j¤ÇXTRA_POWER¤òÄêµÁ¡£
-
-2002-03-07  hoge  <hoge@cvs>
-
-       * src/wizard2.c 1.12, lib/edit/a_info_j.txt 1.15, lib/edit/e_info_j.txt 1.11, lib/edit/t0000001_j.txt 1.7, lib/edit/t_lite_j.txt 1.6, src/artifact.c 1.17, src/cmd4.c 1.26, src/defines.h 1.22, src/effects.c 1.12, src/externs.h 1.30, src/flavor.c 1.10, src/init1.c 1.22, src/load.c 1.16, src/object2.c 1.27, src/types.h 1.9, src/wizard1.c 1.11:
-       ¥¢¥¤¥Æ¥àÀ¸À®¤Ë´Ø¤ï¤ë¥Õ¥é¥°gen_flagƳÆþ
-       ¥â¥ó¥¯¡¦Îýµ¤¤ÎÊó½·½¤Àµ
-
-2002-03-07  iks  <iks@cvs>
-
-       * lib/edit/a_info_j.txt 1.14:
-       ¥¨¥ª¥¦¥£¥óɱ¡¢¾¬°Ç¡¢¥À¡¢»ÂÅ´·õ¡¢Èô¹ÔÀÐÅù¤ËÆüËܸì¤ÎÀâÌÀʸ¤òÄɲá£
-
-       * lib/edit/r_info_j.txt 1.22:
-       ÀâÌÀʸ¤Î¤Ê¤«¤Ã¤¿¤¤¤¯¤Ä¤«¤Î¥â¥ó¥¹¥¿¡¼¤ËÆüËܸì¤ÎÀâÌÀʸ¤òÄɲá£ÌµÂ̤ʶõ¹Ô¤ò¤Ä¤¤¤Ç¤ËÄ´À°¡£
-
-2002-03-06  hoge  <hoge@cvs>
-
-       * lib/help/jversion.txt 1.5: jversion¹¹¿·
-
-2002-03-06  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.26: ¹¹¿·
-
-       * src/spells1.c 1.11: ÌÚ¤¬Åà¤Ã¤ÆºÕ¤±¤¿Åù¡¢±ÑÌõ¡£
-
-2002-03-06  habu  <habu@cvs>
-
-       * src/load.c 1.15, src/types.h 1.8:
-       EGO_XTRA_* ¤«¤é art_flags ¤Ø¤ÎÊÑ´¹¤òz_older_than()¤Ç°Ï¤ó¤À¡£¤Þ¤¿¡¢object_type.xtra1¤Ï¸½ºßÁ´¤¯»È¤ï¤ì¤Æ¤Ê¤¤¤Î¤Ç¤½¤Î»Ý¤ò¥³¥á¥ó¥È¤Ë½ñ¤¤¤¿¡£
-
-2002-03-06  hoge  <hoge@cvs>
-
-       * src/tables.c 1.19, configure.in 1.10, lib/edit/r_info_j.txt 1.21, lib/file/news.txt 1.5, lib/file/news_j.txt 1.3, lib/help/jversion.txt 1.4, src/cmd1.c 1.24, src/defines.h 1.21, src/racial.c 1.7, src/spells1.c 1.10:
-       ¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤ò1.0.10¤Ë¾å¤²¤ë
-       ¥³¡¼¥ó¤Î¥¸¥ã¥¬¡¼¥Î¡¼¥È¤Î¶¯¤µÊѹ¹
-       ÌڤϿ¤¯¤Î°À­¤Î¹¶·â¤Ç²õ¤ì¤ë
-       Ï¢Â³Ëâ¤ÎÊѹ¹
-
-2002-03-06  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-new.prf 1.4:
-       PernͳÍè¤Î16x16¥¿¥¤¥ë¤ÎÀßÄê¤ò´Ö°ã¤¨¤Æ¤¤¤Æ¡¢Çò¤¤Æ¦É夬¤¢¤é¤ï¤ì¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-
-       * src/generate.c 1.8, src/save.c 1.6:
-       ¾èÇϤΥХ°¡¢ËÜÅö¤Ë½¤Àµ¡£¸¶°ø¤Ï¥»¡¼¥Ö»þ¤Ëp_ptr->riding¤ò¥»¡¼¥Ö¤·¤¿¸å¤ÇÊѹ¹¤·¤¿¤»¤¤¡£
-       ¤µ¤Ã¤­¤Îgenerate.c¤Î½¤Àµ¤Ï¡¢´ª°ã¤¤¤À¤Ã¤¿¤Î¤Ç¼è¤ê¾Ã¤·¡£
-
-       * src/generate.c 1.7:
-       ¾èÇÏÃæ¤Ë¥»¡¼¥Ö¥í¡¼¥É¤·¤¿¤È¤­¡¢¾èÇÏÃæ¤Î¥Ú¥Ã¥È¤¬¤ª¤«¤·¤¯¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-2002-03-05  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.25: ¹¹¿·
-
-       * src/cmd1.c 1.23, src/effects.c 1.11, src/melee1.c 1.9, src/melee2.c 1.16, src/monster2.c 1.16, src/mspells1.c 1.16, src/spells1.c 1.9:
-       ¸¸³Ð¾õÂ֤λþ¤Ë»à°ø¤¬ ¥é¥ó¥À¥à¤Ê̾Á°+(?) ¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤ò¡¢
-       ¤Á¤ã¤ó¤ÈÀµ¤·¤¤Ì¾Á°¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£(?)¤ÎÄɲäâÇѻߡ£
-
-       * lib/edit/k_info_j.txt 1.14:
-       RGRA¤ÇNeo¤µ¤ó¤È¤¤¤¦¿Í¤¬¼«Ê¬¤Î»ö¤È´ª°ã¤¤¤·¤ÆÁû¤¤¤Ç¤¿¤Î¤Ç¡¢
-       Neo Tsuyoshi ¢ª Neo-Tsuyoshi
-
-2002-03-05  habu  <habu@cvs>
-
-       * src/object2.c 1.26:
-       ¤µ¤é¤Ë¥¨¥Ã¥»¥ó¥¹¾Ãµî¸å¤Ë¤â¥¤¥ó¥Ù¥ó¥È¥ê¤òʤÙÊѤ¨¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/object2.c 1.25:
-       ¥¨¥Ã¥»¥ó¥¹Éղøå¤Ë¥¤¥ó¥Ù¥ó¥È¥ê¤òʤÓÊѤ¨¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cave.c 1.20:
-       disturb()¤Î»þ¡¢¥â¥ó¥¹¥¿¡¼¤ÎÄÉÀ×ÍѾðÊ󤬹¹¿·¤µ¤ì¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-03-05  hoge  <hoge@cvs>
-
-       * lib/file/monfear_j.txt 1.4, lib/file/monspeak_j.txt 1.4:
-       ¥Ù¥Ó¡¼¥µ¥¿¥ó¤Î¥á¥Ã¥»¡¼¥¸
-
-       * lib/file/monfear_j.txt 1.3, lib/file/monspeak_j.txt 1.3, src/cmd1.c 1.22, src/dungeon.c 1.20, src/mind.c 1.6, src/object2.c 1.24, src/tables.c 1.18, src/xtra1.c 1.25:
-       µ¤¤òÎý¤ë¤È¹¶·âÎÏ¥¢¥Ã¥×
-       Í©Îî¤Î¥Ú¥Ê¥¢¥Ã¥×
-
-2002-03-05  habu  <habu@cvs>
-
-       * src/wizard1.c 1.10:
-       artifact.spoÀ¸À®¤Ç¡¢PYEC¡¢¥Ê¥¤¥ó¡¢¥Ð¥ë¥ÉÌð¤â´Þ¤Þ¤ì¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-03-04  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jversion.txt 1.3: ¥Ð¡¼¥¸¥ç¥óÍúÎò¤Ë1.0.9¤Î¾ðÊóÄɲá£
-
-       * lib/edit/r_info_j.txt 1.20:
-       ¥«¥ë¥À¡¼¥à¤ËCAN_SPEAK¤¬ÉÕ¤¤¤Æ¤Ê¤«¤Ã¤¿¤Î¤ÇÉÕ¤±¤¿¡£
-
-       * configure.in 1.9:
-       --disable-fontset ¤Ë¤Ä¤¤¤Æ¤ÎȽÃǤΥ³¡¼¥É¤¬´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * Changelogs 1.24: ¹¹¿·
-
-       * src/main-x11.c 1.11: ¥¿¥¤¥ëɽ¼¨¤Î¥µ¥¤¥º¤òÀµÊý·Á¤Ë¤¹¤ë¤¿¤á¤Ë¡¢
-       setenv ANGBAND_X11_FONT_0 '-sony-fixed-medium-r-normal--16-*-*-*-*-160-iso8859-1,-jis-fixed-medium-r-normal--16-*-*-*-*-320-jisx0208.1983-0'
-       setenv ANGBAND_X11_FONT '-sony-fixed-medium-r-normal--16-*-*-*-*-*-iso8859-1,-jis-fixed-medium-r-normal--16-*-*-*-*-*-jisx0208.1983-0'
-       ¤Î¤è¤¦¤Ë¡¢Ä̾ï¤Î¥Õ¥©¥ó¥È¤è¤ê¤âÉý¤À¤±2Çܤˤ·¤¿¤È¤­¡¢º£¤Þ¤Ç¤Ïɽ¼¨¤¬¤ª¤«¤·¤¯¤Ê¤Ã¤Æ
-       ²èÌ̤˥´¥ß¤¬½Ð¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¤·¤¿¡£
-
-       * src/cmd4.c 1.25, src/object1.c 1.19, src/report.c 1.15:
-       ¥¿¥¤¥ëɽ¼¨¤Ç¤â¥¹¥¯¥ê¡¼¥ó¥·¥ç¥Ã¥È¤òÁ÷¿®¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-03-04  habu  <habu@cvs>
-
-       * lib/edit/k_info_j.txt 1.13:
-       Èô¤ÓÆ»¶ñ¤Î½Ð¸½³¬Êѹ¹¤Ë¹ç¤ï¤»¤Æ¥¢¥¤¥Æ¥à¥ì¥Ù¥ë¤âÊѹ¹¡£
-
-2002-03-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.24:
-       rgra¤Ëή¤ì¤Æ¤¤¤¿¥Ñ¥Ã¥Á¤ò»²¹Í¤Ë¡¢'%'¥³¥Þ¥ó¥É¤Ç¿ôÃÍÆþÎϤÇchar¤äattr¤òÊѹ¹
-       ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£^N ^A ^C ¤Ç¿ôÃÍÆþÎϤËÆþ¤ë¡£
-
-2002-03-03  henkma  <henkma@cvs>
-
-       * src/racial.c 1.6:
-       ±Ñ¸ì¤Î¥ì¥¤¥·¥ã¥ë¥Ñ¥ï¡¼¤Î̾Á°¤ÎÂçʸ»ú¾®Ê¸»ú¤Î»È¤¤¤ï¤±¤¬¥Ð¥é¥Ð¥é¤Ê¤Î¤Ç,
-       ½ÅÍפÊñ¸ì¤ÎÀèƬ¤Î¤ßÂçʸ»ú¤È¤¤¤¦É÷¤ËÅý°ì.
-
-2002-03-03  hoge  <hoge@cvs>
-
-       * lib/file/a_cursed_j.txt 1.9, lib/file/a_high_j.txt 1.11, lib/file/a_low_j.txt 1.10, lib/file/a_med_j.txt 1.11, lib/file/w_high_j.txt 1.9, lib/file/w_low_j.txt 1.13, lib/file/w_med_j.txt 1.11, src/birth.c 1.19, src/init2.c 1.9, src/xtra1.c 1.24, lib/edit/a_info_j.txt 1.13, lib/edit/k_info_j.txt 1.12, lib/edit/t0000001_j.txt 1.6, lib/edit/t_lite_j.txt 1.5:
-       Èô¤ÓÆ»¶ñ¤Î½Ð¸½³¬Êѹ¹¤È¤½¤ì¤Ëȼ¤Ê¤Ã¤Æ¥¯¥¨¥¹¥È¤ÎÊó½·Êѹ¹
-       2¤Ä°Ê¾å¤Îñ¸ì¤Î¡ù̾¤Ë¡¦¤òÁÞÆþ
-
-2002-03-02  habu  <habu@cvs>
-
-       * lib/file/a_high_j.txt 1.10, lib/file/a_med_j.txt 1.10:
-       ¤Ê¤¼¤«°ì¹ÔÌܤÀ¤±N¤¬È´¤±¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-03-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-gcu.c 1.3, src/main-x11.c 1.10:
-       argv̤»ÈÍѤΥ¥Ë¥ó¥°¤ò¾Ã¤¹½¤Àµ¡£
-
-2002-03-02  habu  <habu@cvs>
-
-       * src/xtra1.c 1.23:
-       ¥¢¥é¥¤¥á¥ó¥È¤Î·×»»¤ÇÀè¤Ëj¤ò¥Ç¥¯¥ê¥á¥ó¥È¤·¤Ê¤¤¤ÈSEGV¤ë¤Î¤Ç½¤Àµ¡£
-
-       * src/spells3.c 1.15: Îô²½¹¶·â¤Ç¤Þ¤ì(1/13)¤Ëpval¤¬²¼¤¬¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/xtra1.c 1.22:
-       ¾Î¹æ̾¤¬¥Õ¥£¡¼¥ë¥É²èÌ̤ˤϤ߽Фµ¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£Ã¢¤·¡¢¾Î¹æ̾¤Ï¤³¤³¤Ç¤·¤«É½¼¨¤µ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¤Ï¤ß½Ð¤¹¤ä¤Ä¤Ï¤É¤¦¤ä¤Ã¤Æ¤âÁ´ÂΤò¸«¤ì¤Ê¤¤»ö¤Ë¤Ê¤ë¡£
-
-2002-03-02  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.19: growing ¢ªÂ礭¤¯¤Ê¤Ã¤Æ¤¯¤ë
-
-       * lib/edit/a_info_j.txt 1.12:
-       ÎϤλØÎؤαÑʸÀâÌÀ¤ò½¤Àµ¡£¥â¥ë¥´¥¹¤«¤é±£¤µ¤ì¤¿¢ª¥µ¥¦¥í¥ó¤«¤é±£¤µ¤ì¤¿¡£
-
-       * lib/edit/a_info_j.txt 1.11: ¥Õ¥ó¥Ç¥£¥ó¤Îº¿ÉÕ¤­Å´µå¤ÎÀâÌÀ½¤Àµ¡£
-
-2002-03-02  habu  <habu@cvs>
-
-       * src/xtra1.c 1.21:
-       ÆÁ¤Ë¤è¤ë¥¢¥é¥¤¥á¥ó¥È¤Î·×»»¤Î¥Ð¥°¤ò½¤Àµ¡£(kobayasi¤µ¤ó¸æÊó¹ð)
-
-2002-02-28  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.23: ¹¹¿·
-
-       * src/object1.c 1.18: '\n'¤ÎÄɲä·Ëº¤ì¤Æ¤¤¤¿¤Î¤òÄɲá£
-
-       * src/report.c 1.14:
-       MPW¤Ç¡¢-noMapCR ¥ª¥×¥·¥ç¥ó¤ÏÊÀ³²¤¬Èó¾ï¤ËÂ礭¤¯»ÈÍÑÉԲĤʤΤǡ¢¥í¡¼¥«¥ë¤Ç»È¤¦
-       ²þ¹Ô¥³¡¼¥É CR ¤«¤é¡¢¥¹¥³¥¢Á÷¿®ÍѤΠLF ¤ËÊÑ´¹¤¹¤ë¥³¡¼¥É¤òÄɲá£
-
-2002-02-28  habu  <habu@cvs>
-
-       * src/melee2.c 1.15:
-       ÊÉÈ´¤±¾õÂ֤ʤɤǥâ¥ó¥¹¥¿¡¼¤¬ÄÉÀפ·¤Ê¤¤¾ì¹ç¤Ç¤â¡¢ËâË¡¤ò·â¤Æ¤ë°ÌÃ֤ˤÏÍ¥ÀèŪ¤ËÆ°¤±¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells3.c 1.14:
-       ËâÎÏ¿©¤¤¼ºÇԤΥá¥Ã¥»¡¼¥¸¡¢°ÊÁ°½¤Àµ¤·¤¿¤Ï¤º¤À¤Ã¤¿¤Î¤Ë¡¢½¤Àµ¾ì½ê¤ò´Ö°ã¤¨¤Æ
-       ½¼Å¶¤Î¥á¥Ã¥»¡¼¥¸¤ÎÊý¤òÊѤ¨¤Æ¤¤¤¿¤Î¤Ç¡¢ºÆ½¤Àµ¡£
-
-       * src/cmd2.c 1.16:
-       ¥¨¥¯¥¹¥«¥ê¥Ñ¡¼¤òÅꤲ¤¿¤È¤­¤ËÂç¥À¥á¡¼¥¸¤Ë¤Ê¤ë¤è¤¦¤Ë¡¢ÅêÚ³¤¹¤ë¥¢¥¤¥Æ¥à¤Î
-       ¥À¥á¡¼¥¸½¤Àµ¤ÏÀäÂÐÃͤò¼è¤ë¤è¤¦¤Ë¤·¤¿¡£Ì¿Ã潤Àµ¤ÏÊѤï¤é¤Ê¤¤¤Î¤ÇÅö¤Æ¤ë¤Î¤Ï
-       Æñ¤·¤¤¡£
-
-       * src/files.c 1.37: pval < -10 ¤Î¤È¤­'C'¤Ç¤Îɽ¼¨¤¬¥Ð¥°¤ë¤Î¤ò½¤Àµ¡£
-
-       * src/files.c 1.36:
-       ¥­¥ã¥é¥¯¥¿¡¼¤ÎºîÀ®Ãæ¤ËÀ¸¤¤Î©¤Áɽ¼¨¤Ç¸½ºßÃϤòɽ¼¨¤·¤è¤¦¤È¤¹¤ë¥Ð¥°¤ò½¤Àµ¡£
-
-2002-02-26  habu  <habu@cvs>
-
-       * src/mane.c 1.5, src/monster1.c 1.9, src/mspells1.c 1.15, src/mspells2.c 1.10, src/mspells3.c 1.8, src/tables.c 1.17, src/wizard1.c 1.9:
-       ¥¢¥ó¥Ð¡¼¤Î²¦ -> ¥¢¥ó¥Ð¡¼¤Î²¦Â² ¤ËÅý°ì
-
-2002-02-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster2.c 1.15:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤Ç½Ð¤¿¥«¥á¥ì¥ª¥ó¤Î²¦¤Î¸î±Ò¤¬¥«¥á¥ì¥ª¥ó¤Ë¤Ê¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-02-26  habu  <habu@cvs>
-
-       * src/cmd1.c 1.21:
-       ¤Ê¤Þ¤±¤â¤Î¤ÏÂǷ⹶·â¤Ë¥Ú¥Ê¥ë¥Æ¥£¤ò¼õ¤±¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç¼Í·â¤ÈƱÍͳ°¤ì¤ä¤¹¤¯¤·¤¿¡£¤Þ¤¿¡¢¤Ê¤Þ¤±¤â¤Î¤Ï¥È¥é¥Ã¥×¤Ë¤«¤«¤ê*¤Ë¤¯¤¯*¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢¤«¤«¤ê¤ä¤¹¤¯¤·¤¿¡£
-       ¶²¤é¤¯¡¢check_hit¤¬ÂÇ·â¤ÎÌ¿ÃæȽÄê¤À¤È»×¤Ã¤Æ¥³¡¼¥É¤ò½ñ¤¤¤¿¤¿¤á¤Ë¤³¤Î¤è¤¦¤Ê»ö¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤À¤í¤¦¡£
-
-       * src/xtra2.c 1.20:
-       look¥³¥Þ¥ó¥É¤Ç¡¢¾²¤äº½ÃϤä²Ö¤Î¾å¤Ë¤¤¤ë»þ¤Ë¡Ö¤Ë¤¤¤ë¡×¤¬É½¼¨¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-02-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/mspells1.c 1.14:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤¬¥µ¡¼¥Ú¥ó¥È¥¾¥ó¥Ó¤ËÂбþ¤·¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-02-26  habu  <habu@cvs>
-
-       * src/artifact.c 1.16, src/externs.h 1.29, src/variable.c 1.12:
-       artifact_bias¤ÏÂç°èÊÑ¿ô¤Ç¤Ï¤Ê¤¯¡¢artifact.cÆâ¤ÎstaticÊÑ¿ô¤Ë¤·¤¿¡£¤Þ¤¿¡¢random_*¤Î°ú¿ôis_scroll¤ÏɬÍפʤ¤¤Î¤Çºï½ü¡£¤µ¤é¤Ëif¡Áelse if¤ÎÍåÎó¤òswitch¤Ç½ñ¤­¤Ê¤ª¤·¤¿¡£
-
-2002-02-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.20: MAX_HISCORES¤ò999¤Ë¤·¤¿¡£
-
-2002-02-26  habu  <habu@cvs>
-
-       * src/mspells1.c 1.13:
-       remove_bad_spell()¤Ç¡¢Í©Îî¤Î¾ì¹ç¤Ï100%ÃϹö°À­¤òºï½ü¡¢µÛ·ìµ´¤Î¾ì¹ç¤Ï100%°Å¹õ°À­¤òºï½ü¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£(»Í°À­¤ÎÌȱ֤ΰ·¤¤¤ÈƱ¤¸)
-       int_outof(r_ptr, 200) ¤Ïɬ¤º¿¿¤Ë¤Ê¤ë¤Î¤ÇȽÄꤷ¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/artifact.c 1.15, src/cmd6.c 1.13, src/externs.h 1.28, src/load.c 1.14, src/object1.c 1.17, src/object2.c 1.23, src/xtra2.c 1.19:
-       object_type.xtra1¤Î»ÈÍѤòÇѻߤ·¤Æart_flags¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤Ë¤è¤ê¡¢object_type.xtra1¤Ïº£¤Î¤È¤³¤í´°Á´¤Ë»È¤ï¤ì¤Æ¤¤¤Ê¤¤¥á¥ó¥ÐÊÑ¿ô¤Ë¤Ê¤Ã¤¿¡£
-       one_sustain()¡¢one_resistance()¡¢one_ability()¤Ê¤É¤Î´Ø¿ô¤òÍÑ°Õ¤·¡¢¤³¤ì¤Þ¤Ç¥Þ¥¸¥Ã¥¯¥Ê¥ó¥Ð¡¼¤À¤Ã¤¿¡¢random_resistance(...,randint(22)+16)¤Î¤è¤¦¤Ê»ØÄê¤ò¤¹¤Ù¤Æ¤³¤ì¤é¤ÇÃÖ¤­ÊѤ¨¤¿¡£
-       ¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¸ß´¹À­¤Î¤¿¤á¤Ëload.c¤Çxtra1¤Èxtra2¤ò¸«¤Æart_flags¤ËÂÑÀ­Åù¤ò¥³¥ó¥Ð¡¼¥È¤¹¤ë¥³¡¼¥É¤âÄɲä·¤¿¡£
-
-2002-02-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd5.c 1.14, src/hissatsu.c 1.4, src/mind.c 1.5, src/object1.c 1.16, src/object2.c 1.22, src/util.c 1.20:
-       ¥³¥Þ¥ó¥É¥á¥Ë¥å¡¼¤¬¥ê¥¿¡¼¥ó¥­¡¼¤ò¼±Ê̤¹¤ë¥³¡¼¥É¤ò '\r' ¤À¤±¤Ç¤Ê¤¯
-       '\n' ¤â²Ã¤¨¤¿¡£MPWÍÑ¡£
-
-2002-02-26  habu  <habu@cvs>
-
-       * src/object2.c 1.21:
-       ¥É¥ï¡¼¥Õ¤Î³»¤Î½ÅÎ̤ò2/3¤Ë¤¹¤ë¥³¡¼¥É¤È´ðËÜAC¤ò+5¤¹¤ë¥³¡¼¥É¤ò¡¢a_m_aux_2()Æâ¤Ë°ÜÆ°¡£
-
-       * src/artifact.c 1.14:
-       É¬Íפʤ¤¤Î¤Ç¡¢¥³¥á¥ó¥È¥¢¥¦¥È¤µ¤ì¤Æ¤¤¤ë¡¢if (is_scroll) msg_print(...);¤ò¤¹¤Ù¤Æºï½ü¡£
-
-2002-02-24  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.22: ¹¹¿·¡£
-
-       * src/main-mac.c 1.10:
-       ¥Ð¡¼¥¸¥ç¥ó¤¬ÊѤï¤Ã¤¿¤È¤­¤Ë¸Å¤¤½é´üÀßÄê¥Õ¥¡¥¤¥ë¤ò̵»ë¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ËÜÅö¤Ï½é´üÀßÄê¥Õ¥¡¥¤¥ë¤Î·¿¼°¤¬ÊѤ俤Ȥ­¤À¤±Ìµ»ë¤·¤¿¤¤¤¬¡¢¤¤¤¤°Æ¤¬¤Ê¤¤¡£
-
-       * Changelogs 1.21.2.2, lib/file/monfrien.txt 1.1.1.1.12.2: ±Ñʸ½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.18.2.3:
-       ±Ñ¸ì¤Î¥æ¥Ë¡¼¥¯¥â¥ó¥¹¥¿¡¼Ì¾¤Ë¤ÏThe¤ò¼«Ê¬¤ÇÉÕ¤±¤Ê¤¯¤Æ¤Ï¤¤¤±¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/file/mondeath.txt 1.2.8.1, lib/file/monfear_j.txt 1.2.4.2, lib/file/monfrien.txt 1.1.1.1.12.1, lib/file/monfrien_j.txt 1.1.1.1.12.2, lib/file/monspeak_j.txt 1.2.4.2, lib/edit/r_info_j.txt 1.18.2.2:
-       °ÆÆâ¿Í¤ò¾¯¤·½¤Àµ¡¢µÚ¤Ó¡¢±Ñ¸ìÂбþ¡£
-
-       * src/object2.c 1.20:
-       Ä¶¥Þ¥¤¥Ê¡¼¥Ð¥°½¤Àµ¡£Ìð¤Î¥À¥á¡¼¥¸½¤Àµ¤ÈÌ¿Ã潤Àµ¤Î¥Ö¡¼¥¹¥È¤Î·×»»¤¬¤¿¤Ö¤ó°Õ¿Þ¤È
-       °ã¤¦¡¢ÊѤʥ³¡¼¥É¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * src/cmd5.c 1.13:
-       MP¤¬Â­¤ê¤Ê¤¤¤È¤­¡¢ËâË¡¤ò»È¤¦¤«¤É¤¦¤«¤Î¼ÁÌä¤ò get_check_strict¤Ë¤·¤¿¡£
-
-       * src/tables.c 1.16:
-       MP¤¬Â­¤ê¤Ê¤¯¤Æ¤âËâË¡¤ò¡Ä¤Î¥ª¥×¥·¥ç¥ó¤ò¥Ç¥Õ¥©¥ë¥È¤ÇOFF¤Ë¤·¤¿¡£
-
-2002-02-24  habu  <habu@cvs>
-
-       * src/melee2.c 1.14:
-       ¥â¥ó¥¹¥¿¡¼¤Î°ÜÆ°½èÍý¤Ç¾ï¤ËFLASE¤Ë¤Ê¤ë¾ì½ê¤¬¤¢¤Ã¤¿¡£ºï½ü¤·¤Æ¤·¤Þ¤¦¤Î¤Ï¤¿¤á¤é¤ï¤ì¤ë¤Î¤Ç¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Æ¤ª¤¤¤¿¡£
-
-2002-02-24  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster2.c 1.14.2.1, src/wild.c 1.6.2.2:
-       player_place()¤Ç¥×¥ì¥¤¥ä¡¼¤òÃÖ¤¯¾ì½ê¤Ë¥â¥ó¥¹¥¿¡¼¤¬¤¤¤¿¤È¤­¡¢
-       Ã±½ã¤Ëdelete_monster¤¹¤ëÂå¤ê¤Ë¥â¥ó¥¹¥¿¡¼¤ò1¥Þ¥¹¤É¤«¤¹¤è¤¦¤Ë½¤Àµ¡£
-
-2002-02-24  habu  <habu@cvs>
-
-       * src/init1.c 1.21, src/xtra2.c 1.18:
-       int·¿¤ÇÎɤ¤ÊÑ¿ô¤ò¤¤¤¯¤Ä¤«¸«¤Ä¤±¤¿¤Î¤Çint·¿¤Ë¤·¤Æ¤ª¤¤¤¿¡£(¤Ê¤¼byte¤äs16b¤Ë¤Ê¤Ã¤Æ¤ë¤Î¤«Íý²ò¤Ë¶ì¤·¤à¡£)
-
-2002-02-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/monfrien_j.txt 1.1.1.1.12.1, lib/file/monspeak_j.txt 1.2.4.1, src/externs.h 1.27.2.1, src/init1.c 1.20.2.1, src/tables.c 1.15.2.1, src/variable.c 1.11.4.1, src/wild.c 1.6.2.1, Changelogs 1.21.2.1, lib/edit/misc_j.txt 1.5.2.1, lib/edit/r_info_j.txt 1.18.2.1, lib/edit/t0000001_j.txt 1.5.2.1, lib/file/mondeath_j.txt 1.1.1.1.12.1, lib/file/monfear_j.txt 1.2.4.1:
-       Î¹Àè°ÆÆâ¿Í¤Î¼ÂÁõ¡£
-
-2002-02-24  habu  <habu@cvs>
-
-       * src/defines.h 1.19, src/object1.c 1.15, src/xtra2.c 1.17, src/artifact.c 1.13, src/cmd1.c 1.20, src/cmd6.c 1.12:
-       V¤«¤é̾¾Î¤¬Êѹ¹¤µ¤ì¤¿¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ë¤Ä¤¤¤Æ ART_* ¤ÎÄêµÁ¤ò¤­¤Á¤ó¤È½ñ¤­ÊѤ¨¤¿¡£¤Þ¤¿¡¢ÄêµÁ¤·Ëº¤ì¤Æ¤¤¤ë¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤òÄɲä·¤¿¡£
-
-       * src/xtra2.c 1.16:
-       ¥æ¥Ë¡¼¥¯¤¬Íî¤È¤¹ÆÃÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Î¥Á¥§¥Ã¥¯¤¬¤Ê¤¼¤« randint1(99) < chance ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢randint0(100) < chance ¤Ë¤·¤¿¡£¤³¤Î¤Û¤¦¤¬ÌÀ¤«¤Ë¼«Á³¡£
-       ¤Þ¤¿¡¢if¡Áelse if¤ÎÍåÎó¤òswitch¤Ç½ñ¤­ÊѤ¨¤¿¡£ÊÑ¿ôa_idx¤Ïbyte·¿¤Ç¤¢¤ë°ÕÌ£¤¬¤Ê¤¤¤Î¤Çint·¿¤Ë¤·¤¿¡£
-
-2002-02-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jtang.txt 1.4: ¹­°è¥Þ¥Ã¥×¤ÎÀâÌÀÄɲá£
-
-2002-02-24  habu  <habu@cvs>
-
-       * lib/help/jtang.txt 1.3:
-       3¤Ä½¤Àµ¡£*ÂÎÎϲóÉü*¤Î²óÉüÎÌ¡¢À¸Ì¿ÎÏÉü³è¤ÎÌô->·Ð¸³ÃÍÉü³è¤ÎÌô¡¢¤Ê¤ó¤È¤«¤Î¥½¡¼¥É XdY->(XdY)¡£
-
-       * lib/edit/k_info_j.txt 1.11, src/object2.c 1.19:
-       ¥¨¥ë¥Õ¤Î¥¯¥í¡¼¥¯¤È¹õÁõ«¤Îpval¤òk_info_j¤Ç»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤¿¤¬¡¢ÃÃÌê»Õ¤¬¥¨¥Ã¥»¥ó¥¹¤òÃê½Ð¤·¤¿»þ¤ª¤«¤·¤Ê»ö¤Ë¤Ê¤ë¤Î¤Ç¡¢»ÅÊý¤Ê¤¯¥½¡¼¥¹¥Ï¥Ã¥¯¤ËÌᤷ¤¿¡£
-
-2002-02-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jtang.txt 1.2: ½é¿´¼Ô¥¬¥¤¥É¤òÊѶòÈÚÅÜÂбþ¤Ë¤·¤¿¡£
-
-       * readme_eng.txt 1.4: make install ¤ÎÀâÌÀÄɲÃ
-
-       * lib/edit/r_info_j.txt 1.18: »Ä¤Ã¤Æ¤¤¤¿±Ñʸ¤ÎÀâÌÀ¤òËÝÌõ¡£
-
-       * lib/help/jattack.hlp 1.2, lib/help/jcharattr.txt 1.4, lib/help/jobjects.hlp 1.2:
-       ¥¿¥°¤Î½¤Àµ¡£
-
-2002-02-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/object2.c 1.18:
-       Æ±¤¸¼ïÎà¤Î¥¢¥¤¥Æ¥à¤Î«¤¬2¤Ä¤¢¤ë¤È¤­¡¢¾å¤Î«¤¬´û¤Ë99ËܤˤʤäƤ¤¤ë»þ¤Ç¤â
-       »ý¤Áʪ¤ÎÀ°Íý¤Î¥³¡¼¥É¤ò¼Â¹Ô¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£¾¡¼ê¤ÊÌäΥ³¥Ô¡¼Åù
-       ¤¬µ¯¤­¤Æ°ì¸«ÉԲIJò¤Ë¸«¤¨¤ë¿¶¤ë¤Þ¤¤¤ò¤·¤Æ¤¤¤¿¡£¤Ä¤¤¤Ç¤Ë¥³¡¼¥É¤ÎÀ°Íý¡£
-
-       * src/main-x11.c 1.9: main-gcu.c ¤Î¥µ¥¦¥ó¥É¥³¡¼¥É¤ò°Ü¿¢¡£
-
-       * src/main-gcu.c 1.2: SOUND´ØÏ¢¤Ç¥Ð¥°¤Ã¤Ý¤¤¥³¡¼¥É¤ò½¤Àµ¡£
-
-2002-02-22  habu  <habu@cvs>
-
-       * src/bldg.c 1.8, src/cmd1.c 1.19, src/cmd2.c 1.15, src/dungeon.c 1.19, src/externs.h 1.27, src/spells3.c 1.13, src/wizard2.c 1.11:
-       ¥½¡¼¥¹¤Î»ê¤ë½ê¤Ë¤Á¤é¤Ð¤Ã¤Æ¤¤¤¿¥¯¥¨¥¹¥È¤«¤é½Ð¤ë»þ¤Î¥³¡¼¥É¤òleave_quest_check()¤È¤¤¤¦´Ø¿ô¤Ë¤·¤Æ¤Þ¤È¤á¤¿¡£
-
-       * src/artifact.c 1.12:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î»þ¡¢´ÕÄꤷ¤Æ¤Ê¤¤¥¢¥¤¥Æ¥à¤Ë»È¤Ã¤¿»þ¤Ë¤â¥¢¥¤¥Æ¥à¤Î¥Ç¡¼¥¿¤¬É½¼¨¤µ¤ì¤ë¤è¤¦¤Ë¡¢identify_fully_aux¤ò¸Æ¤ÖÁ°¤Ë¥¢¥¤¥Æ¥à¤ò*´ÕÄê*¤µ¤ì¤¿¾õÂ֤ˤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/z-rand.c 1.3, src/z-rand.h 1.3:
-       Rand_mod()¤Ï»È¤ï¤ì¤Æ¤Ê¤¤¤·¡¢Íð¿ôȯÀ¸´ï¤È¤·¤Æ¤ÎÀ­Ç½¤â°­¤¯¤Æº£¸å¤â»È¤ï¤Ê¤¤¤Ï¤º¤Ê¤Î¤Çºï½ü¡£
-
-       * src/object1.c 1.14, src/object2.c 1.17, src/xtra1.c 1.20, src/defines.h 1.18:
-       EGO_2HAND¤òEGO_2WEAPON¤ËÊѹ¹¡£2HAND¤ÏÉáÄÌξ¼ê»ý¤Á¤Î°ÕÌ£¤À¤í¤¦¤«¤é¾­Í躮Íð¤ò¾·¤«¤Ê¤¤¤è¤¦¤Ë¡£
-
-       * lib/edit/k_info_j.txt 1.10, src/object2.c 1.16:
-       ¹õÁõ«¤Ïpval¤¬+1¤«¤é+4¤Þ¤Ç¥é¥ó¥À¥à¤Ë½Ð¤ë¤è¤¦¤Ë¤·¤¿¡£¤½¤ÎºÝ¡¢k_info¤Çpval¤ÎºÇÂçÃͤò»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¤Î¤Ç¡¢¥¨¥ë¥Õ¤Î¥¯¥í¡¼¥¯¤â¥½¡¼¥¹¥Ï¥Ã¥¯¤Ç¤Ï¤Ê¤¯k_info¤Çpval¤ò»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/z-form.c 1.3:
-       Àè¤Ë´Á»ú¤¬¤¢¤ë¤«¤É¤¦¤«È½Äꤷ¤Æ¤ë¤Î¤Ç¡¢ÀèƬ¤Îʸ»ú¤òÂçʸ»ú¤ËÊÑ´¹¤¹¤ë»þ¤Ë´Á»ú¤Ç¤¢¤ë¤«È½Äꤹ¤ëɬÍפϤʤ¤¤Î¤Çifʸ¤òºï½ü¡£
-
-       * src/object1.c 1.13:
-       *´ÕÄê*»þ¤Ë°ìÈÖ¾å¤Î¹Ô¤Ë¥¢¥¤¥Æ¥à̾¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¤³¤ì¤Ë¤è¤Ã¤Æ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Î»þ¤Ë¤âAC¤ä»¦Ù¤½¤ÀµÃͤʤɤ¬Ê¬¤«¤ë¤è¤¦¤Ë¤Ê¤ë¡£
-
-       * src/xtra2.c 1.15:
-       ¤Ê¤Þ¤±¥°¥Ã¥º¤ÎÁªÂò¤ÎºÝswitch¤ò»È¤¦¤è¤¦¤Ë½ñ¤­ÊѤ¨¡£¤³¤Ã¤Á¤Î¤Û¤¦¤¬Ä¾´¶Åª¤Ê¥³¡¼¥É¤Ç¤·¤ç¤¦¡£
-
-       * lib/edit/r_info_j.txt 1.17:
-       ¥Õ¥ó¥Ç¥£¥ó¤ËDROP_CHOSEN¤òÉÕ¤±Ëº¤ì¤Æ¤¤¤ë¤è¤¦¤Ê¤Î¤ÇÉÕ¤±¤¿¡£
-
-       * lib/edit/k_info_j.txt 1.9:
-       Å´´§¤ò45³¬¤«¤é40³¬µé¤Ë²¼¤²¤¿¡£(¶â¤Î´§¤È°ì½ï¤È¤¤¤¦¤Î¤Ï¤ª¤«¤·¤¤¤À¤í¤¦)
-
-       * lib/edit/e_info_j.txt 1.10: ¥Æ¥ì¥Ñ¥·¡¼¤Î´§¤Î¥ì¥¢ÅÙ¤ò²¼¤²¤¿¡£
-
-2002-02-21  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.21: ¹¹¿·
-
-       * src/object2.c 1.15:
-       ÌðÅù¤Î¥¢¥¤¥Æ¥à¤Î«¤ò¤Ê¤ë¤Ù¤¯¤¦¤Þ¤¯µÍ¤á¤Æ»ý¤Ä¤è¤¦¤Ë¤·¤¿¡£
-       ¶ñÂÎŪ¤Ë¤Ï¡¢80ËܤΫ¤È70ËܤΫ¤ò»ý¤Ã¤Æ¤¤¤¿¤é99ËܤÈ51ËܤˤޤȤᾤ¹¡£
-       ¤³¤ì¤Ë¤è¤Ã¤Æ¼¡¤ËÎ㤨¤Ð40ËܤΫ¤ò½¦¤¦»þ¤Ë¡¢¤¤¤Á¤¤¤Á«¤Î°ìÉô¤òÍ¤Æ
-       ¿ô¤ò·¤¨¤Ê¤ª¤¹¼ê´Ö¤¬¤Ê¤¯¤Ê¤ë¡£
-
-       * src/cmd3.c 1.9:
-       '%'¹ï¤ß¤Ç¥Ç¥Õ¥©¤À¤Ã¤¿¾ì¹ç¤Ë¥¹¥Ú¡¼¥¹°ìʸ»ú¤À¤±¹ï¤à¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/pref/xtra-new.prf 1.3:
-       ¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼¤Î16x16¥¿¥¤¥ëÄêµÁ¡£(ŬÅö¤Ë³ä¤êÅö¤Æ¤Æ¤¢¤ë¡£)
-
-       * lib/pref/graf-new.prf 1.3:
-       16x16¥¿¥¤¥ë¤ËÂбþ¡£Z26x¤ÈPern¤Î¥¿¥¤¥ë¤ò¹çÀ®¤·¤¿µðÂç¤Êbmp¥Õ¥¡¥¤¥ë¤ò»ÈÍÑ¡£
-
-2002-02-21  henkma  <henkma@cvs>
-
-       * lib/edit/m_info_j.txt 1.4: ´ª°ã¤¤¤Ç¤·¤¿. m_info_j.txt¤ÎÊѹ¹¼è¤ê¾Ã¤·.
-
-       * lib/edit/m_info_j.txt 1.3:
-       ¥×¥ê¡¼¥¹¥È¤ÎËâË¡¤ÎÆñ°×ÅÙ¤ò½¤Àµ. ¤Ê¤¼¤«ÂèÆóÎΰè·Ï¤ÎËâË¡¤¬ÀΤè¤ê5%¸º¤Ã¤Æ¤Æ, (°ìÉô¤·¤«Ä´¤Ù¤Æ¤Ê¤¤¤¬)¥á¥¤¥¸¤è¤ê¤¦¤Þ¤¯¤Ê¤Ã¤Æ¤¿.
-
-2002-02-20  henkma  <henkma@cvs>
-
-       * lib/file/w_high.txt 1.5:
-       The Bastard Sword of Eowyn¤¬Æþ¤Ã¤¿¤Î¤Çrand art name¤«¤éof Eowyn¤òºï½ü.
-
-2002-02-19  habu  <habu@cvs>
-
-       * lib/edit/a_info_j.txt 1.10, lib/edit/misc_j.txt 1.5:
-       V¤«¤é¡¢The Bastard Sword of Eowyn¤òƳÆþ¡£¥ì¥¢ÅÙ100¤Ï½Ð¤Ë¤¯¤¹¤®¤ë(¥Ù¡¼¥¹¤¬¥Ð¥Ã¥½¤À¤«¤é¥ê¥ó¥®¥ë¤è¤ê½Ð¤Ë¤¯¤¤¤·)¤È»×¤¦¤Î¤Ç50¤Ë¤·¤¿¡£
-
-       * lib/edit/e_info_j.txt 1.9:
-       ¿·¥¨¥´¡¢À»¤Ê¤ëÌð¤òÄɲÃ(from angband 2.9.6)¡£
-
-2002-02-19  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.18: ¿¦¶ÈÁªÂò»þ¤ÎǦ¼Ô¤ÎÀâÌÀ¤â½¤Àµ(¸«¤ë¤³¤È¸«¤ë¤³¤È)
-
-2002-02-19  habu  <habu@cvs>
-
-       * lib/edit/r_info_j.txt 1.16:
-       ¥Ó¥Û¥ë¥À¡¼¤ÎÌõ¤âtwelve¤ò20¤È´Ö°ã¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.15:
-       twelve¤¬Æ󽽤ȴְã¤Ã¤ÆÌõ¤µ¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/help/jcharattr.txt 1.3:
-       ¥¤¥ó¥×¤Î¹à¤¬¥Ð¥ë¥í¥°¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£¡Ö¸«¤ë¤³¤È¸«¤ë¤³¤È¡×¤ò½¤Àµ¡£
-
-2002-02-19  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/e_info_j.txt 1.8:
-       ÃϿ̤ÎÉð´ï¤Î¥ì¥¢¥ê¥Æ¥£¤¬0¤À¤Ã¤¿¤Î¤Ç½¤Àµ¡£¥³¡¼¥É½ñ¤­»Ï¤á¤Ï
-       0¤Ç¤¤¤¤Í½Äê¤À¤Ã¤¿¤±¤É¡¢Í½ÄêÊѹ¹¤·¤¿¤Î¤ò˺¤ì¤Æ¤¿¡£
-
-2002-02-19  habu  <habu@cvs>
-
-       * lib/edit/misc_j.txt 1.4, lib/edit/v_info_j.txt 1.3:
-       Zang¤«¤é¿·¤·¤¤vault¤ò9¸ÄƳÆþ¡£
-
-       * src/rooms.c 1.10:
-       malloc, free¤ò»È¤Ã¤Æ¤¤¤¿¾ì½ê¤òC_MAKE, C_KILL¤ò»È¤Ã¤Æ½ñ¤­ÊѤ¨¡£
-
-       * lib/edit/a_info_j.txt 1.9, lib/edit/e_info_j.txt 1.7, src/artifact.c 1.11, src/bldg.c 1.7, src/cmd1.c 1.18, src/cmd2.c 1.14, src/cmd3.c 1.8, src/defines.h 1.17, src/files.c 1.35, src/init1.c 1.20, src/object1.c 1.12, src/object2.c 1.14, src/spells2.c 1.11, src/wizard1.c 1.8:
-       FORCE_WEPON -> FORCE_WEAPON
-
-       * lib/edit/a_info_j.txt 1.8: PYEC¤ËWARNING¥Õ¥é¥°Äɲá£
-
-2002-02-18  Takeshi Mogami  <mogami@cvs>
-
-       * src/wizard2.c 1.10: ^A o ¤ÎÀ¸À®Î¨¤Îɽ¼¨¤òlog¥°¥é¥Õ¤Ë¤·¤Æ¤ß¤¿¡£
-       log_{sqrt(2)}^{À¸À®Î¨} ¤È¤·¤¿¤Î¤Ç¡¢'*'¤¬2¤Ä¤Ç¤Á¤ç¤¦¤ÉÀ¸À®Î¨2Çܤò°ÕÌ£¤¹¤ë¡£
-
-       * src/wizard2.c 1.9:
-       ºÆ¤Ó½¤Àµ¡£boost¸ú²Ì¤Ï1/20¤Î³ÎΨ¤Ç¤·¤«µ¯¤­¤Ê¤¤¤Î¤Ç¾®¤µ¤¹¤®¤Æ¸«¤¨¤Ê¤¤Êý¤¬
-       Àµ¾ï¤À¤Ã¤¿¡£¤¤¤Þ¤Þ¤Ç¤Ï¤Þ¤À¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤¬¤¢¤Ã¤¿¡£
-
-2002-02-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/wizard2.c 1.8: ¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-02-17  habu  <habu@cvs>
-
-       * src/monster2.c 1.14:
-       Â°À­¤ÎÈæ³Ó¤Ç¡¢z_ptr¤Ç¤¢¤ë¤Ù¤­½ê¤¬r_ptr¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤¿¤á¡¢°ã¤¦Â°À­¤Î¥â¥ó¥¹¥¿¡¼¤òESCORT¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¥Ð¥°¤ò½¤Àµ¡£
-
-2002-02-17  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/q_serpen_j.txt 1.3: ¸¶¶§¢ª¸µ¶§
-
-       * src/wizard2.c 1.7:
-       ¥¦¥£¥¶¡¼¥É¥³¥Þ¥ó¥É ^A o ¤Çº¸Ã¼¤Î¥°¥é¥Õ¤Îɽ¼¨¤ò²þÎÉ¡£
-       ÁªÂò¤·¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤Î½Ð¸½Î¨¤ò³¬Ê̤ËÁêÂÐɾ²Á¤Çɽ¼¨¤·¤Æ¤¢¤ë¡£
-       º£¤Þ¤Ç¤Î¤ÏÁ´Á³É½¼¨¤¬Àµ¤·¤¯¤Ê¤¤¾å¤Ë¸«¤Æ¤â¤ï¤«¤é¤Ê¤«¤Ã¤¿¡£
-
-2002-02-16  Takeshi Mogami  <mogami@cvs>
-
-       * src/melee2.c 1.13: Å¨¤Î»þ»ß¤á¤¬¥Ð¥°¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * Changelogs 1.20: ¹¹¿·
-
-       * src/cmd4.c 1.23, src/effects.c 1.10, src/melee1.c 1.8, src/mspells1.c 1.12, src/mspells2.c 1.9:
-       Æ®µ»¾ì¤ÇÇԤ줿¤È¤­¡¢Èà¤Ï¤¢¤Ê¤¿¤ÎÀèÁĤò¡©¿ÍÁò¤Ã¤Æ¤¤¤ë¤¬ ¤Îɽµ­¤¬¤Ç¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-       ¤Þ¤¿¡¢¥×¥ì¥¤µ­Ï¿¤òÄɲá£
-
-2002-02-16  henkma  <henkma@cvs>
-
-       * src/util.c 1.19:
-       get_check_strict¤Îyes/no¤ò(o)k/(c)ancel¤ËÊѹ¹¤·¤Æ¤ß¤¿. Æ°ºî³Îǧ¤Ï¤·¤Æ¤¤¤ë¤¬, ¥²¡¼¥à¥×¥ì¥¤Ãæ¤Ë»î¤·¤Æ¤Ê¤¤¤Î¤ÇÁàºî´¶¤Î´¶ÁÛµá¤à. Á°¤Î¤è¤ê¤ÏÎɤ¤¤È»×¤¦. °ì±þÁ°µ­´Ø¿ô¤Î¤È¤³¤í¤Ëdefine¤·¤Æ¤¢¤ëCHECK_STRICT¤ò1¤Ë¤¹¤ì¤ÐÁ°¤Î¾õÂ֤ˤʤë¤è¤¦¤Ë¤·¤Æ¤¤¤ë. ¤½¤ÎÉôʬ¤Ë´Ø¤·¤Æno¤¬n¤À¤±¤ÇÈ¿±þ¤·¤Æ¤·¤Þ¤¦¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç¤Ä¤¤¤Ç¤Ëľ¤·¤Æ¤¢¤ë.
-
-2002-02-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster1.c 1.8: fire a missle -> fire an arrow
-
-2002-02-15  hoge  <hoge@cvs>
-
-       * lib/edit/t0000001_j.txt 1.5, src/defines.h 1.16, src/init1.c 1.19, src/mane.c 1.4, src/melee1.c 1.7, src/melee2.c 1.12, src/monster1.c 1.7, src/mspells1.c 1.11, src/mspells2.c 1.8, src/mspells3.c 1.7, src/tables.c 1.15, src/wizard1.c 1.7, lib/edit/r_info_j.txt 1.14:
-       ARROW_?¤òÁ´ÉôSHOOT¤ËÅý°ì¡£
-       ¥â¥ó¥¯¤ÎÅ𱥯¥¨¥¹¥ÈÊó½·½¤Àµ¡£
-
-2002-02-15  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.19: ¹¹¿·
-
-2002-02-15  habu  <habu@cvs>
-
-       * src/mspells1.c 1.10, src/mspells2.c 1.7, src/mspells3.c 1.6, src/mutation.c 1.4, src/object2.c 1.13, src/racial.c 1.5, src/rooms.c 1.9, src/save.c 1.5, src/spells1.c 1.8, src/spells2.c 1.10, src/spells3.c 1.12, src/store.c 1.5, src/streams.c 1.3, src/wild.c 1.6, src/wizard2.c 1.6, src/xtra2.c 1.14, src/z-rand.c 1.2, src/z-rand.h 1.2, src/cave.c 1.19, src/cmd1.c 1.17, src/cmd2.c 1.13, src/cmd4.c 1.22, src/cmd5.c 1.12, src/cmd6.c 1.11, src/dungeon.c 1.18, src/effects.c 1.9, src/files.c 1.34, src/flavor.c 1.9, src/generate.c 1.6, src/grid.c 1.3, src/grid.h 1.2, src/hissatsu.c 1.3, src/init1.c 1.18, src/load.c 1.13, src/main-dos.c 1.5, src/mane.c 1.3, src/melee1.c 1.6, src/melee2.c 1.11, src/mind.c 1.4, src/monster1.c 1.6, src/monster2.c 1.13, src/artifact.c 1.10, src/avatar.c 1.2, src/birth.c 1.17, src/bldg.c 1.6:
-       Ê¬¤«¤ê¤ä¤¹¤¤¤è¤¦¤Ë¡¢rand_int()¤òrandint0()¡¢randint()¤òrandint1()¤Ë¤¹¤Ù¤ÆÃÖ¤­ÊѤ¨¤¿¡£
-       ¤³¤ÎÃÖ´¹¤Ï´Êñ¤Ê¤Î¤Ç´Ö°ã¤Ã¤Æ¤Ê¤¤¤È»×¤¦¡£
-
-       * src/generate.c 1.5, src/mane.c 1.2, src/melee1.c 1.5, src/melee2.c 1.10, src/monster2.c 1.12, src/mspells1.c 1.9, src/mspells2.c 1.6, src/mspells3.c 1.5, src/object2.c 1.12, src/racial.c 1.4, src/rooms.c 1.8, src/spells1.c 1.7, src/spells2.c 1.9, src/spells3.c 1.11, src/store.c 1.4, src/streams.c 1.2, src/xtra2.c 1.13, src/artifact.c 1.9, src/cave.c 1.18, src/cmd1.c 1.16, src/cmd2.c 1.12, src/cmd5.c 1.11, src/cmd6.c 1.10, src/dungeon.c 1.17, src/effects.c 1.8:
-       randint() == 1, rand_int() == 0, rand_int() == 1 ¤òÁ´¤Æ one_in_()¤Ë¡¢
-       randint() != 1, rand_int() != 0, rand_int() != 1 ¤òÁ´¤Æ !one_in_()¤ËÃÖ¤­ÊѤ¨¤¿¡£
-       ¤³¤Îºî¶ÈÃæ¤Ë¥æ¥Ë¡¼¥¯¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤¿»þ¤Ë1/3¤ÇV_INDIVIDUALISM¤ò-1¤¹¤ë½ê¤ÎȽÄ꤬&¤È&&¤ò´Ö°ã¤¨¤Æ¤¤¤ë¤Î¤ò¸«¤Ä¤±¤¿¤Î¤Ç¤Ä¤¤¤Ç¤Ëľ¤·¤¿¡£
-       ¤Á¤ã¤ó¤È¤Ç¤­¤Æ¤ë¤«É԰¤ʤΤǡ¢ºî¶ÈÁ°¤Î¾õÂÖ¤Ëone_in_prev,ºî¶È¸å¤Î¾õÂÖ¤Ëone_in_after¤È¤¤¤¦¥¿¥°¤òÉÕ¤±¤Æ¤ª¤¯¡£
-
-       * src/object2.c 1.11:
-       ¥¯¥í¡¼¥«¡¼¤ä¥Ç¥¹¥½¡¼¥É¤Ê¤É¡¢¸ÇÄê¼ïÎà¤Î¥¢¥¤¥Æ¥à¤òÍî¤È¤¹Å¨¤òÅݤ·¤¿»þ¡¢µ©¤Ë¾ï»þÅÁÀâʪ¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬À¸À®¤µ¤ì¤ë²ÄǽÀ­¤¬¤¢¤Ã¤¿¡£¤³¤Î»þ¡¢¥¢¥¤¥Æ¥à¤Î¸õÊä¤Î¥Æ¡¼¥Ö¥ë¤â¥¯¥ê¥¢¤µ¤ì¤Ê¤¤°Ù¡¢¼¡¤Î¥¢¥¤¥Æ¥àÀ¸À®»þ¤Ë¸ÇÄê¼ïÎà¤Î¥¢¥¤¥Æ¥à¤¬Å¬ÍѤµ¤ì¤Æ¤·¤Þ¤¦¡£
-       ¤Ê¤Î¤Ç¡¢make_artifact_special()Æâ¤Ç¡¢get_obj_num_hook¤Ë²¿¤«´Ø¿ô¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬À¸À®¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-14  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.13, src/tables.c 1.14: typo deamon -> daemon
-
-       * src/effects.c 1.7:
-       ºÆ¤Ó½¤Àµ¡£ESC¤ò²¡¤¹¤È¶«¤Ó¤¬ "" ¤Ë¤Ê¤Ã¤Æ¡¢¤½¤Î¤Þ¤ÞÆþÎϤ»¤º¤Ë»à¤Ì¤È
-       »àË´¤Î¥á¥Ã¥»¡¼¥¸¤¬¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢¤½¤Î¤È¤­¤Ïɸ½à¤Î¥á¥Ã¥»¡¼¥¸
-       ¤ÇÃÖ¤­ÊѤ¨¤ë»ö¤Ë¤·¤¿¡£
-
-       * src/effects.c 1.6:
-       »àË´»þ¤ËÃÇËöËâ¤Î¶«¤Ó¤ÎÆþÎϤòESC¤Ç½ª¤ï¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/main-mac.c 1.9:
-       8x8¤È16x16¤ò¥á¥Ë¥å¡¼¤ÇÀڤ괹¤¨¤é¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£kuwa¤µ¤ó¤è¤ê¡£
-
-       * src/util.c 1.18:
-       MacÈǤDz¿¤«¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤ó¤À¤È¤­¥Õ¥¡¥¤¥ë¥¿¥¤¥×¤ò²õ¤·¤Æ¤·¤Þ¤¦¥Ð¥°½¤Àµ¡£
-
-       * lib/pref/graf-mac.prf 1.3:
-       Kuwa¤µ¤ó¤è¤ê¡¢¾ò·ïʬ¤±¤·¤Æ¡¢8x8¥¿¥¤¥ë¤Ç¤Ï graf-xxx.prf¡¢
-       16x16¥¿¥¤¥ë¤Ç¤Ï graf-new.prf ¤òÆɤà¤è¤¦¤Ë¡£
-
-2002-02-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/main-x11.c 1.8:
-       16x16¤òÁªÂò¤¹¤ëÄɲ媥ץ·¥ç¥ó -a ¤È 8x8¤Î -o ¤òÄɲá£
-       ¤Ä¤¤¤Ç¤Ë¡¢¥¹¥¯¥ê¥×¥È¤Ç $* -- -n1 Åù¤È½ñ¤¤¤Æ¤¤¤ë¤È¤­¤Ë
-       ¥¹¥¯¥ê¥×¥È¤Ë -- -a ¤È¤«¤òÍ¿¤¨¤é¤ì¤ë¤è¤¦¤Ë¡£Äɲ媥ץ·¥ç¥ó¤Î
-       ¶èÀÚ¤ê -- ¤¬Ê£¿ô¤¢¤é¤ï¤ì¤Æ¤â¥¨¥é¡¼¤ò½Ð¤µ¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/init2.c 1.8, src/main-x11.c 1.7:
-       ¥¦¥£¥ó¥É¥¦¤Î¿ô¤Î¥Ç¥Õ¥©¥ë¥È¤ò8¤«¤é3¤ËÊѹ¹¤·¡¢¥»¡¼¥Ö¥Ç¡¼¥¿¤ò¥í¡¼¥É¤»¤º¤Ë
-       ¿·µ¬¤Ë¥­¥ã¥é¥¯¥¿¡¼¤òºî¤Ã¤¿¤È¤­¡¢¥µ¥Ö¥¦¥£¥ó¥É¥¦1¤Ë¥á¥Ã¥»¡¼¥¸ÍúÎò¡¢
-       ¥µ¥Ö¥¦¥£¥ó¥É¥¦2¤Ë»ý¤Áʪɽ¼¨¤ò³ä¤êÅö¤Æ¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * readme.txt 1.3: make install ¤ËÂбþ¤·¤Æ readme.txt ¤Î¹¹¿·¡£
-
-       * Changelogs 1.18: ¹¹¿·
-
-       * src/cmd5.c 1.10:
-       ¥Ú¥Ã¥È¤Î¥¿¡¼¥²¥Ã¥È¤ò¡Ä ¤Î¥á¥Ë¥å¡¼Ê¸»úÎó¤Îɽ¼¨¤Ë ÇÛÎóbuf ¤ò»È¤Ã¤Æ¤¤¤Æ¡¢¤½¤Î¸å¤Ç
-       buf¤òÊ̤ÎÍÑÅӤˤâ»È¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢¥¹¥Ú¡¼¥¹¥­¡¼¤Ç¥á¥Ë¥å¡¼¤Î¥ê¥¹¥Èɽ¼¨¤òÀÚ¤êÊѤ¨¤ë
-       ¤È¥Ú¥Ã¥È¤Î¥¿¡¼¥²¥Ã¥È¤ò¡Ä¤Îɽ¼¨¤¬¥Ð¥°¤ë¤Î¤ò½¤Àµ¡£
-
-2002-02-13  habu  <habu@cvs>
-
-       * acconfig.h 1.3, acinclude.m4 1.1, configure.in 1.8, lib/apex/Makefile.am 1.2, lib/bone/Makefile.am 1.2, lib/data/Makefile.am 1.2, lib/edit/Makefile.am 1.4, lib/file/Makefile.am 1.2, lib/help/Makefile.am 1.3, lib/info/Makefile.am 1.2, lib/pref/Makefile.am 1.2, lib/save/Makefile.am 1.2, lib/script/Makefile.am 1.2, lib/user/Makefile.am 1.2, lib/xtra/graf/Makefile.am 1.3, src/Makefile.am 1.5:
-       make install¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£(angband-2.9.3¤ò»²¹Í¤Ë¤·¤¿)
-       Ä̾ï¤Ïsrc/hengband¤ò¥È¥Ã¥×¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤¹¤À¤±¡£(º£¤Þ¤Ç¤ÈƱÍͤλȤ¤¤«¤¿)
-       --with-setgid=games ¤È¤¤¤¦¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤Æconfiguire¤¹¤ë¤È¡¢games¥°¥ë¡¼¥×¤Ç¥·¥¹¥Æ¥à¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë»ö¤¬¤Ç¤­¤ë¡£¤³¤Î¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¼Â¹Ô¥Ð¥¤¥Ê¥ê¤Ï/usr/local/bin/hengband¡¢³Æ¼ïlib¥Õ¥¡¥¤¥ë¤Ï/usr/local/share/games/hengband/lib°Ê²¼¤ËÃÖ¤«¤ì¤ë¡£
-
-       * src/xtra1.c 1.19:
-       ÆüËܸì¤ÎŤ¹¤®¤ë¼ï²̾¤¬¤Ï¤ß½Ð¤µ¤Ê¤¤¤è¤¦¤Ë½¤Àµ¤·¤¿»þ¤Ë¡¢±Ñ¸ìÈǤΤ¿¤á¤Î¥³¡¼¥É¤ò»Ä¤µ¤Ê¤«¤Ã¤¿¤¿¤á¤Ë±Ñ¸ìÈǤ¬¥³¥ó¥Ñ¥¤¥ë¤Ç¤­¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-02-12  habu  <habu@cvs>
-
-       * src/melee2.c 1.9:
-       ¹¶·âËâË¡¤ò»È¤¨¤ë¥â¥ó¥¹¥¿¡¼¤ÏÍ¥ÀèŪ¤Ë¹¶·âËâË¡¤ò¼Í¤Æ¤ë°ÌÃ֤˰ÜÆ°¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£¤¤¤í¤¤¤í¤Êlos¥È¥ê¥Ã¥¯¤¬¤«¤Ê¤êËɤ²¤ë¤È»×¤¦¡£
-       ¤¬¡¢¤Þ¤À½½Ê¬¤Ê¥Æ¥¹¥È¤ò¹Ô¤Ê¤Ã¤¿¤È¤Ï¸À¤¨¤Ê¤¤¤Î¤Ç¡¢¤ª¤«¤·¤ÊÆ°¤­¤¬¤Ê¤¤¤«¤É¤¦¤«Ãí°Õ¤·¤Æ¤Û¤·¤¤¡£
-
-       * src/melee2.c 1.8: minor code cleanup.
-
-2002-02-11  henkma  <henkma@cvs>
-
-       * lib/file/a_high.txt 1.4, lib/file/a_high_j.txt 1.9, lib/file/a_low.txt 1.6, lib/file/w_cursed.txt 1.2, lib/file/w_low.txt 1.3, lib/file/w_low_j.txt 1.12:
-       randart name¤ÎÀ°Íý¡¢¤³¤ì¤Çº£²ó¤Î̾Á°À°Íý¤Ï¤Û¤Ü½ªÎ»¡£
-       ÆüËܸì¤ÎÊý¤Ë¤â¤¤¤¯¤Ä¤«Äɲá£
-
-2002-02-11  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.11: ´í¸±¤òÍ¿¤¨¤ë¡£¤Î±Ñʸ¡£
-
-2002-02-11  habu  <habu@cvs>
-
-       * src/object1.c 1.10, src/object2.c 1.10, src/wizard1.c 1.6, src/xtra1.c 1.18, src/z-config.h 1.5, lib/edit/a_info_j.txt 1.7, lib/edit/k_info_j.txt 1.8, src/cmd1.c 1.15, src/cmd3.c 1.7, src/defines.h 1.15, src/externs.h 1.26, src/init1.c 1.17, src/monster2.c 1.11:
-       branch-habu-warning¤ò¥Þ¡¼¥¸¡£
-
-2002-02-10  Takeshi Mogami  <mogami@cvs>
-
-       * src/monster2.c 1.10:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¤òÇ˲õ¤·¤¿¸å¤Ç¡¢¥é¥ó¥À¥à¤Ê¥â¥ó¥¹¥¿¡¼À¸À®¤Î¥¿¥¤¥ß¥ó¥°¤Ç
-       ¼ê²¼¤È°ì½ï¤ËºÆÀ¸À®¤µ¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-10  henkma  <henkma@cvs>
-
-       * lib/file/w_med.txt 1.5, lib/file/w_med_j.txt 1.10:
-       w_med¤Î±Ñ¸ì¤ò¹¹¿·¡¢ÆüËܸì¤ÎÊý¤âWARRIOR·óSTR·óCON¤Î̾Á°¤¬¾¯¤Ê¤«¤Ã¤¿¤Î¤ÇÄɲ䷤Ƥߤ¿¡£
-
-2002-02-10  iks  <iks@cvs>
-
-       * lib/file/a_low_j.txt 1.9, lib/file/a_med_j.txt 1.9, lib/file/w_low_j.txt 1.11, lib/file/w_med_j.txt 1.9:
-       ¡ù̾¤µ¤é¤Ë½¤Àµ¡£henkma¤µ¤ó¤Ë¤â´¶¼Õ¡£
-
-2002-02-10  henkma  <henkma@cvs>
-
-       * lib/file/w_high.txt 1.4, lib/file/w_med.txt 1.4, lib/file/w_med_j.txt 1.8:
-       iks¤µ¤ó¤È¤ÎƱ´ü¤Î¤¿¤á¤Ë°ì»þŪ¤Ëcommit¡¢¤³¤Î¾õÂÖ¤Ïw_med¤òÃæÅÓȾü¤Ë¤¤¤¸¤Ã¤Æ¤ë¾õÂÖ¡£
-
-2002-02-10  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/t0000001_j.txt 1.4, lib/edit/t_lite_j.txt 1.4:
-       ÃÃÌê»Õ¤Î±Ñ¸ì̾¤¬ Kaji ¤Î¤Þ¤Þ¤À¤Ã¤¿¤Î¤Ç Weaponsmith ¤Ë½¤Àµ¡£
-
-       * Changelogs 1.17: ¹¹¿·
-
-       * src/main-mac.c 1.8:
-       kuwa¤µ¤ó¤Î½¤ÀµÈÇ main-mac.c ¡£xdd¤µ¤ó¤¬ #ifdef JP ÉÕ¤­¤ÇÊѹ¹¤ò²Ã¤¨¤Æ¤¤¤¿
-       Éôʬ¤ò¡¢#ifdef JP ¤ò¤Ï¤º¤·¤Æ±Ñ¸ìÈǤǤâ»È¤¨¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-10  henkma  <henkma@cvs>
-
-       * lib/file/w_high.txt 1.3, lib/file/w_high_j.txt 1.8, lib/file/w_med.txt 1.3:
-       randart¤Î̾Á°¤ÎÄɲäÈÀ°Íý. ¼ç¤Ëw_high.txt(±Ñ¸ì).
-
-2002-02-09  habu  <habu@cvs>
-
-       * lib/help/jattack.txt 1.3: Ìð¤ÎÊ¿¶Ñ¥À¥á¡¼¥¸(#/#)¤Ë´Ø¤¹¤ëÀâÌÀ¤òÄɲá£
-
-2002-02-09  henkma  <henkma@cvs>
-
-       * lib/file/a_cursed.txt 1.2, lib/file/a_cursed_j.txt 1.8, lib/file/a_low.txt 1.5, lib/file/a_low_j.txt 1.8, lib/file/a_med.txt 1.5:
-       a_low.txt¤Èa_cursed.txt¹¹¿·, Â¾¤Îrandart name¤â¾¯¤·À°Íý.
-
-       * lib/file/a_high.txt 1.3, lib/file/a_low.txt 1.4, lib/file/a_med.txt 1.4:
-       ±Ñ¸ì¤Îrandart name ¼ç¤Ëa_high¤Èa_med. »Ä¤ê¤Ï¤Þ¤¿¸å¤Çcommit¤·¤Þ¤¹.
-
-2002-02-09  habu  <habu@cvs>
-
-       * src/externs.h 1.23.2.2, src/monster2.c 1.9.2.1:
-       ¥æ¥Ë¡¼¥¯À¸À®»þ¤Î·Ù¹ð¤â»ØÎؤǤϤʤ¯¥¢¥¤¥Æ¥à̾¤ò»È¤Ã¤Æɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/object2.c 1.9.2.3:
-       ·Ù¹ð¤¹¤ë¤Î¤Ï»ØÎؤȤϸ¤é¤Ê¤¯¤Ê¤Ã¤¿¤Î¤Ç¡¢·Ù¹ð¥Õ¥é¥°¤ò»ý¤ÄÁõÈ÷¤«¤é°ì¤Ä¤ò¥é¥ó¥À¥à¤ËÁª¤Ö´Ø¿ôchoose_warning_item()¤òºî¤ê¡¢¤½¤Î¥¢¥¤¥Æ¥à̾¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-       ¤Þ¤¿¡¢process_frakir()¤ò¥³¡¼¥É¤ò¾¯¤·À°Íý¤·¤ÆÆɤߤ䤹¤¯¤·¤¿¡£
-       ¤Ê¤¼¤«¥í¥±¥Ã¥È¤Ë´Ø¤¹¤ëDAMCALC¤¬Æó²ó¹Ô¤ï¤ì¤Æ¤¤¤¿¤Î¤Ç°ì¤Äºï½ü¤·¤¿¡£
-
-2002-02-08  habu  <habu@cvs>
-
-       * src/wizard1.c 1.5.2.1:
-       misc_flags3_desc(¥¹¥Ý¥¤¥é¡¼À¸À®¤Ë»È¤ï¤ì¤ë¡©)¤ËTR3_WARNING¤Î¹à¤òÄɲá£
-
-       * src/object2.c 1.9.2.2: flag_cost()¤ÇTR3_WARNING¤Î²ÁÃͤò2000¤ËÀßÄê¡£
-
-       * src/cmd3.c 1.6.2.2: ±Ñ¸ìÈǤΤۤ¦¤Ë¤â·Ù¹ð¤Î¼«Æ°¹ï¤ßÄɲá£
-
-       * src/cmd3.c 1.6.2.1: ¼«Æ°¹ï¤ß¤Ë·Ù¹ð¥Õ¥é¥°¤òÄɲá£
-
-       * src/z-config.h 1.2.2.1, lib/edit/a_info_j.txt 1.4.4.1, lib/edit/k_info_j.txt 1.5.2.1, src/cmd1.c 1.12.2.1, src/defines.h 1.12.2.1, src/externs.h 1.23.2.1, src/init1.c 1.14.2.1, src/object1.c 1.7.2.1, src/object2.c 1.9.2.1, src/xtra1.c 1.15.2.1:
-       ÀèÄø¤ÎÊѹ¹¤ò²þ¤á¤Æ»Þ(branch-habu-warning)¤Ëcommit¡£
-
-       * src/z-config.h 1.4, lib/edit/a_info_j.txt 1.6, lib/edit/k_info_j.txt 1.7, src/cmd1.c 1.14, src/defines.h 1.14, src/externs.h 1.25, src/init1.c 1.16, src/object1.c 1.9, src/xtra1.c 1.17:
-       ¤µ¤­¤Û¤É¤ÎÊѹ¹¤Ï¡¢¸í¤Ã¤Æ´´¤Î¤Û¤¦¤Ëcommit¤·¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¡¢´´¤òcommitÁ°¤Î¾õÂÖ¤ËÌᤷ¤¿¡£
-
-       * lib/edit/k_info_j.txt 1.6, src/cmd1.c 1.13, src/defines.h 1.13, src/externs.h 1.24, src/init1.c 1.15, src/object1.c 1.8, src/xtra1.c 1.16, src/z-config.h 1.3, lib/edit/a_info_j.txt 1.5:
-       °Ê²¼¤ÎÊѹ¹¤ÏHoge¤µ¤ó¤Î»¿Æ±¤¬ÆÀ¤é¤ì¤ë¤«¤É¤¦¤«Ê¬¤«¤é¤Ê¤¤¤Î¤Ç»Þ¤È¤·¤Æ³«È¯¡£
-       - ¥é¥ó¥À¥àǽÎϤˤª¤±¤ë¥Æ¥ì¥Ñ¥·¡¼Ç½ÎÏÄɲäϾ¤ÎÄɲäËÈæ¤Ù¤Æ³Êº¹¤¬¤¢¤ê¤¹¤®¤ë¤È»×¤¦¤Î¤Ç»ß¤á¡¢ÊѤï¤ê¤Ë·Ù¹ðǽÎÏÄɲäˤ·¤Æ¤ß¤¿¡£
-       - ¤³¤ì¤Ë½¾¤¤¡¢TR3_WARNING¥Õ¥é¥°¤òÁýÀߤ·¡¢·Ù¹ð¤Î»ØÎØ¡¢¥Õ¥é¥­¥¢¤â¥½¡¼¥¹¥Ï¥Ã¥¯¤Ç¤Ï¤Ê¤¯?_info.txtÆâ¤ÇÄêµÁ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       - process_frakir¤Ïɬ¤º»È¤¦¤Î¤Ç¡¢USE_FRAKIR¤ÎÄêµÁ¤Ïºï½ü¤·¤¿¡£
-       - *´ÕÄê*¤·¤¿»þ¤Î¥á¥Ã¥»¡¼¥¸¤Ë·Ù¹ðǽÎϤε­½Ò¤òÄɲᣱѸìÈǤϤޤÀ¡£
-
-       * src/spells3.c 1.10:
-       ¥â¥ó¥¹¥¿¡¼¤¬¥Æ¥ì¥Ý¡¼¥È¤·¤¿»þÈ¿·âÂоݤò²ò½ü¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤Ë¤è¤Ã¤Æ¥Æ¥ì¥Ý¡¼¥È¥¢¥¦¥§¥¤¤ÇÈô¤Ð¤·¤¿¥â¥ó¥¹¥¿¡¼¤¬¼¡¥¿¡¼¥ó¤Ë¥×¥ì¥¤¥ä¡¼¤Î¼þ¤ê¤Ë¾¤´­¤¹¤ë»ö¤òËɤ²¤ë¡£
-
-       * src/cmd2.c 1.11, src/externs.h 1.23, src/load.c 1.12, src/melee2.c 1.7, src/monster2.c 1.9, src/mspells1.c 1.8, src/mspells2.c 1.5, src/spells1.c 1.6:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÈ¿·âÂоݤòÀßÄꤹ¤ë´Ø¿ôset_target¤È²ò½ü¤·¤ë´Ø¿ôreset_target¤ò¿·Àߤ·¡¢¥½¡¼¥¹Æâ¤ÎÅö³º¥³¡¼¥É¤ò¤¹¤Ù¤Æ´Ø¿ô¤ÇÃÖ¤­ÊѤ¨¤¿¡£
-
-2002-02-08  henkma  <henkma@cvs>
-
-       * lib/file/a_high_j.txt 1.8: typo½¤Àµ¡£»¦À¸Í¿Ã¥¢ªÀ¸»¦Í¿Ã¥
-
-2002-02-08  iks  <iks@cvs>
-
-       * lib/file/a_high_j.txt 1.7, lib/file/a_med_j.txt 1.8, lib/file/w_high_j.txt 1.7, lib/file/w_low_j.txt 1.10, lib/file/w_med_j.txt 1.7:
-       commit¤¹¤ë¤È¤­¤Ë¼ê°ã¤¤¤Ç1¸Ä¤Î¥Õ¥¡¥¤¥ë¤·¤«¤·¤Ê¤«¤Ã¤¿»Ä¤ê¡£
-
-       * lib/file/a_low_j.txt 1.7:
-       ËÜÆüºÇ½ª¤Î¤Ä¤â¤ê¤Î¡ùÌÃÊѹ¹¡£henkma¤µ¤óÄó°Æ¤Î¤â¤Î¤â¸¡Æ¤ºÑ¤ß¡£
-
-2002-02-08  henkma  <henkma@cvs>
-
-       * lib/file/a_cursed_j.txt 1.7, lib/file/a_high_j.txt 1.6, lib/file/a_low_j.txt 1.6, lib/file/a_med_j.txt 1.7, lib/file/w_high_j.txt 1.6, lib/file/w_low_j.txt 1.9, lib/file/w_med_j.txt 1.6:
-       ¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Î̾Á°¤ò¾¯¤·À°Íý¡£Ì¾Á°°Æ¤òÂçÉý¤Ë¥³¥á¥ó¥È¤È¤·¤ÆÄɲá£
-       ¥Á¥§¥Ã¥¯¤Ê¤É¤ª´ê¤¤¤·¤Þ¤¹ > (¼ç¤Ë)iks¤µ¤ó
-
-2002-02-08  iks  <iks@cvs>
-
-       * lib/file/a_high_j.txt 1.5, lib/file/a_low_j.txt 1.5, lib/file/a_med_j.txt 1.6, lib/file/w_high_j.txt 1.5, lib/file/w_low_j.txt 1.8, lib/file/w_med_j.txt 1.5:
-       ¿ÀÏ÷ϥµ¥¤¥È¤Ê¤É¤ò¸µ¤Ë¡ùÌäÎÂçÉýÄɲᢽ¤Àµ¡¢°ÜÆ°¡¢Ä´À°¡£
-       »ØÎØ¡¦¥·¥ë¥Þ¥ê¥ë¥Í¥¿¤â¿¤·¡£a_low_j.txt¤ÏÆñ¹ÒÃæ¤Ê¤Î¤Ç¤Ä¤Ã¤³¤ß¸·¶Ø¡£
-
-2002-02-08  Takeshi Mogami  <mogami@cvs>
-
-       * src/birth.c 1.16:
-       ¥¯¥¨¥¹¥È¤Î¿ô¤ÎÀßÄê¤ÇESC¤ò²¡¤·¤¿¤È¤­¡¢¿ô¤ò0¤Ç¤Ï¤Ê¤¯10¤ËÀßÄꤹ¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-02-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.33, src/spells3.c 1.9:
-       ËâÎÏ¿©¤¤¼ºÇÔ¥á¥Ã¥»¡¼¥¸½¤Àµ¡£¥À¥ó¥×Ãæ¤Î±Ñʸ¤Î½¤Àµ¡£
-
-2002-02-07  habu  <habu@cvs>
-
-       * src/xtra1.c 1.15:
-       Ä¹¤¹¤®¤ë¼ï²̾(º£¤Î¤È¤³¤í¥Þ¥¤¥ó¥É¥Õ¥ì¥¢¤À¤±)¤Î»þ¤Ëɽ¼¨¤¬¥Þ¥Ã¥×¤Ë¤Ï¤ß½Ð¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/xtra1.c 1.14: Minor Code Clean up.
-
-2002-02-07  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.17:
-       ÌäÂêÅÀ¤ÏºÇ¸å¤Î command_cmd = cmd; ¤À¤±¤À¤È¤Ï¤Ã¤­¤ê¤·¤¿¤Î¤Ç¡¢¤½¤ÎÉôʬ¤Î¤ß¤ò
-       command_cmd = (byte)cmd; ¤Ë½¤Àµ¤¹¤ë»ö¤Ë¤·¤¿¡£cmd¤Î·¿¤Ïchar¤ËÌᤷ¤¿¡£
-
-2002-02-06  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.16:
-       ¥³¥Þ¥ó¥Éʸ»ú¤òÊÝ»ý¤¹¤ëÊÑ¿ô¤ÏÆâÉô¥³¥Þ¥ó¥É¤Î253¤ä¡¢254¤òÊÝ»ý¤¹¤ëɬÍפ¬¤¢¤ë¤Î¤Ç¡¢
-       char cmd; ¤«¤é¡¢ int cmd; ¤ËÌᤷ¤¿¡£¸·Ì©¤Ë¤Ïº£¤Þ¤Ç¤Ï unsigned char cmd; ¤À¤Ã¤¿¤¬¡¢
-       ÀøºßŪ¤Ê¥Ð¥°¤ä¥ï¡¼¥Ë¥ó¥°¤Î²ÄǽÀ­¤ò¶ËÎÏ̵¤¯¤¹¤¿¤á¤Ë¤Ï int ¤ÎÊý¤¬¤¤¤¤¤ÈȽÃÇ¡£
-
-2002-02-06  habu  <habu@cvs>
-
-       * src/util.c 1.15:
-       request_command()Æâ¤Î¥á¥Ë¥å¡¼¤Ë¤è¤ëÆþÎϤò´Ø¿ô²½¤·¤Ærequest_command¤Î³°¤Ë½Ð¤·¤¿¡£
-
-       * src/init1.c 1.14:
-       ÌµÂ̤˥ե饰¤ò»È¤Ã¤Æ¤¤¤¿ÆüËܸìÂбþstrchr¤Î¥³¡¼¥É¤ò½¤Àµ
-
-       * src/cave.c 1.17:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÆ÷¤¤ÄÉÀפǡ¢unsinged char¤Î0¤«¤é255¤Þ¤Ç̵Â̤ʤ¯»È¤¨¤ë¤è¤¦¤Ëupdate_smell()Æâ¤Î¿ôÃͤò½¤Àµ¤·¤¿¡£
-
-       * src/spells3.c 1.8:
-       ¥í¥Ã¥É¤«¤é¤ÎËâÎÏ¿©¤¤¤Ë¼ºÇÔ¤·¤¿»þ¤Î¥á¥Ã¥»¡¼¥¸¤ò¤½¤ì¤é¤·¤¯Êѹ¹¡£
-
-       * src/files.c 1.32:
-       ¥¯¥¨¥¹¥È¼Â¹ÔÃæ¤Î»þ¤Ï¥À¥ó¥×¤Ë¥¯¥¨¥¹¥È¤Î̾¾Î¤òɽ¼¨¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£¤Þ¤¿¡¢³¬ÁؤÎɽ¼¨¤ÏɬÍפʤ¤¤Î¤Ç¤·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-06  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.9:
-       ¡Ö̤ÃΤÎÃÏ·Á¡×¤ò¾²¤ÈƱ¤¸°·¤¤¤Çlighting effectÍѤΥ¿¥¤¥ë¤ò»È¤Ã¤Æ¤¤¤¿¤Î¤Ç
-       ÉáÄ̤ΰŤ¤¥¿¥¤¥ë¤Ë½¤Àµ¡£
-
-       * Changelogs 1.16: ¹¹¿·
-
-       * src/spells2.c 1.8:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤Ç½Ð¤¿¥æ¥Ë¡¼¥¯¤¬*Ç˲õ*¤Ç¾Ã¤¨¤ë¤è¤¦¤Ë¡¢
-       *Ç˲õ*¤Î¥³¡¼¥É¤Ç¥Æ¥ì¥Ý¡¼¥È¤Çƨ¤²¤ë¤Î¤òQUESTOR¤À¤±¤Ë½¤Àµ¤·¤¿¡£
-       ¤³¤ì¤Ï»ÅÍͤ¬¾¯¤·ÊѤ뤬¡¢ÊèÃϤǼ겼¤´¤È¥Ù¥¯¥Ê¤òÇ˲õ¤·¤Æ1ÂÐ1¤Î
-       À襤¤Ë»ý¤Á¹þ¤à»öÅù¤¬½ÐÍè¤Ê¤¯¤Ê¤ë¤Î¤Ç¡¢Îɤ¤Êѹ¹¤À¤È»×¤¦¡£
-       ¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤Î¥æ¥Ë¡¼¥¯¤ÏQUESTOR¤À¤«¤é±Æ¶Á¤Ê¤·¡£
-
-       * src/defines.h 1.12, src/mspells1.c 1.7, src/spells1.c 1.5:
-       ¥è¥ë¥à¥ó¥¬¥ó¥É¤¬À¸¤­¤Æ¤¤¤ë»þ¤Ë¥À¥ó¥¸¥ç¥ó¤Î¼ç¤Î¾¤´­¤Ç¿å¤¬¿á¤­½Ð¤·¤Æ
-       ¤¢¤¿¤ê¤¬Àõ¤¤¿å¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£¥è¥ë¥à¥ó¥¬¥ó¥É°Ê³°¤¬½Ð¤Ë¤¯¤¯¤Ê¤ë¤è¤¦¤Ë¡¢
-       ¥×¥ì¥¤¥ä¡¼¤ËÎÙÀܤ¹¤ë¾²¤Ï¿¼¤¤¿å¤Ë¤·¤Æ¤¤¤ë¤¬¡¢ÌäÂ꤬½Ð¤ë¤è¤¦¤Ê¤éÁ´¤Æ
-       Àõ¤¤¿å¤Ë¤¹¤ì¤Ð¤¤¤¤¤È»×¤¦¡£¿á¤­½Ð¤¹³ÎΨ¤Ï1/6¤Ë¤·¤Æ¤¢¤ë¡£Í×Ä´À°¡£
-
-       * src/birth.c 1.15, src/defines.h 1.11, src/dungeon.c 1.16, src/monster2.c 1.8, src/mspells1.c 1.6, src/mspells2.c 1.4, lib/edit/r_info_j.txt 1.12:
-       ¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤Î¼ÂÁõ¡£´ØÏ¢¤·¤Æ¥â¥ó¥¹¥¿¡¼¤¬¸½ºß¥À¥ó¥¸¥ç¥óÆâ¤Ë¤¤¤ë¿ô¡¢cur_num
-       ¤Î¼è¤ê°·¤¤¤ÎÀ°Íý¤È¥Ð¥°¥Õ¥£¥Ã¥¯¥¹¡¢¥«¥á¥ì¥ª¥ó¤Î²¦¤Î¾¤´­¤Î¤¿¤á¤Ëɬ¿Ü¤À¤Ã¤¿¡£
-
-2002-02-05  Takeshi Mogami  <mogami@cvs>
-
-       * src/flavor.c 1.8:
-       Å´¤¯¤µ¤Ó¤Ë¡¢(1ȯ¤Î¥À¥á¡¼¥¸/1¥¿¡¼¥ó¤Î¥À¥á¡¼¥¸)ɽ¼¨¤ò¼ÂÁõ¡£
-
-       * lib/file/monfear_j.txt 1.2, lib/file/monspeak_j.txt 1.2:
-       ¥é¥ª¥¦¤Î¥»¥ê¥Õ¡£
-
-2002-02-04  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd5.c 1.9:
-       ¥Ú¥Ã¥È¤Î²òÊü¤Î»ÅÍÍÊѹ¹¡£'All'¤òÇѻߤ·¤Æ'Unnamed'¤òƳÆþ¡£Ì¾Á°¤Î¤Ê¤¤¾èÇϰʳ°¤Î¥Ú¥Ã¥È
-       ¤À¤±¤òÁ´¤Æ²òÊü¤·¡¢Ì¾Á°ÉÕ¤­¤ä¾èÇϤˤϼÁÌ䤹¤é¤·¤Ê¤¤¡£
-
-       * src/main-mac.c 1.7:
-       ½é´üÀßÄê¥Õ¥¡¥¤¥ë¤Î̾Á°¤¬¤¤¤í¤¤¤í¤Ê¤È¤³¤í¤Ë»¶¤é¤Ð¤Ã¤Æ¤¤¤ë¤Î¤ò#defineʸ¤Ç
-       À°Íý¡£kuwa¤µ¤ó¤è¤ê¡£
-
-2002-02-04  henkma  <henkma@cvs>
-
-       * src/spellstips.h 1.11: samurai tips typo½¤Àµ.
-
-       * src/spellstips.h 1.10: ¤µ¤é¤Ë·õ½Ñ²Ètips(±Ñ¸ì)¤Îtypo½¤Àµ.
-
-2002-02-04  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.15:
-       ¡Ö¤³¤ó¤Ê¤Ë¿¤¯¤Î¥Ú¥Ã¥È¤ò°Ý»ý¤Ç¤­¤Ê¤¤¡×¤Îɽ¼¨¤Î¸å¤Î-more-¤¬ÊѤÀ¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-2002-02-04  henkma  <henkma@cvs>
-
-       * src/spellstips.h 1.9: ·õ½Ñ²È¤Î±Ñ¸ì¤Îtips½¤Àµ¡£
-
-2002-02-04  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.15: ¹¹¿·
-
-       * src/dungeon.c 1.14, src/files.c 1.31, src/xtra1.c 1.13:
-       20ɤ°Ê¾å¤Î̾Á°ÉÕ¤­¥Ú¥Ã¥È¤ò»ý¤Ã¤Æ»à¤Ì¤È¡¢¡Ö¼ç¤Ê¥Ú¥Ã¥È¡×¤Ëɽ¼¨¤µ¤ì¤º¡¢
-       ¤·¤«¤â¥×¥ì¥¤µ­Ï¿¤ÎºÇ¸å¤Ë¡Ö¡Á¤È¤Ï¤°¤ì¤¿¡×¤Îµ­Ï¿¤¬½Ð¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       ¤«¤Ê¤ê¥³¡¼¥É¤òºòÆü°ÊÁ°¤Î¤â¤Î¤ËÌᤷ¡¢if (alive) ¤Ë°Ï¤Þ¤ì¤Æ¤¤¤¿¥Ú¥Ã¥È
-       ¤Î¥Ç¡¼¥¿Êݸ¤Î¥³¡¼¥É¤ò if (alive && !death) ¤Ç°Ï¤à¤è¤¦¤Ë¤·¤Æ¡¢
-       p_ptr->riding = -1;¤òºï½ü¤·¤¿¡£
-       ºòÆü°ÊÁ°¤Î¥³¡¼¥É¤Ç¤Ï¡¢»àË´»þ¤Ë¥Ú¥Ã¥È¥Ç¡¼¥¿Êݸ¤Î¥³¡¼¥É¤¬¼Â¹Ô¤µ¤ì¤ë¤¬¡¢
-       »ë³¦¤¬Ä̤뤫¤ÎȽÄ꤬¾ï¤Ëµ¶¤Ê¤Î¤ÇÎÙ¤ê¤Ë¤¤¤ë¥Ú¥Ã¥È¤Î¤ß¤ò¡ÖÊݸ¡×¤·¤Æ¤¤¤¿¡£
-       ¡ÖÊݸ¡×¤·¤¿party_mon¤Ï¼Î¤Æ¤é¤ì¡¢¡ÖÊݸ¡×¤µ¤ì¤Ê¤«¤Ã¤¿¥Ú¥Ã¥È¤Ë¤Ä¤¤¤Æ
-       ¡Ö¡Á¤È¤Ï¤°¤ì¤¿¡×¤Î¥×¥ì¥¤µ­Ï¿¤¬¤µ¤ì¤Æ¤¤¤¿¡£
-
-       * src/Makefile.am 1.4, src/main-mac-carbon.c 1.1:
-       ±Ñ¸ìÈǤÎ107beta3¤«¤éÆþ¤ì¤Æ¤¿¤Ï¤º¤À¤Ã¤¿ main-mac-carbon.c ¤¬Ìµ¤«¤Ã¤¿»ö¤Ë
-       ¤¤¤Þ¤´¤íµ¤¤Å¤¤¤¿¤Î¤Ç¡¢º£Äɲá£8x8¥¿¥¤¥ëÍѤÎÊѹ¹¤â²Ã¤¨¤¿¡£
-
-2002-02-03  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.8, src/externs.h 1.22, src/main-dos.c 1.4, src/main-win.c 1.6, src/main-x11.c 1.6, src/variable.c 1.11, src/cave.c 1.16:
-       ¶À¤Î¥¿¥¤¥ë¤âlighting effect¤ËÂбþ¡£
-       use_lighting ÊÑ¿ô(¤«¤Ä¤Æ¤Î¡¢use_transparency)¤Ï´°Á´¤Ë°ÕÌ£¤¬¤Ê¤¯¤Ê¤Ã¤¿¤Î¤ÇÇѻߡ£
-
-       * src/generate.c 1.4, src/variable.c 1.10, src/xtra1.c 1.12, src/dungeon.c 1.13, src/externs.h 1.21, src/files.c 1.30:
-       »àË´/¾¡Íø ¥À¥ó¥×¤Î¼ç¤Ê¥Ú¥Ã¥È¤Îɽ¼¨¤ò¤Á¤ã¤ó¤È¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-       ¤½¤Î²¾Äê¤Ç riding_mon ¤òÇѻߡ¢party_mon[0] ¤ò¾èÇÏ¥â¥ó¥¹¥¿¡¼¤ÎÊݸÍѤ˻ÅÍͤ·¤¿¡£
-
-2002-02-03  habu  <habu@cvs>
-
-       * src/wild.c 1.5:
-       ¥Ú¥Ã¥È¤òÏ¢¤ì¤Æ¤¤¤ë»þ¤Ï¹­°è¥Þ¥Ã¥×¤Ë½Ð¤ë»þ¤Ë³Îǧ¤ò¼è¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-02-03  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.7, src/main-x11.c 1.5:
-       8x8¥¿¥¤¥ë¤Çlighting effect ¤ò¼ÂÁõ¡£»ë³¦³°¤ò°Å¤¯¡¢ÌÀ¤«¤ê¤ÎÈϰϤòÌÀ¤ë¤¯É½¼¨¤¹¤ë¡£
-
-       * src/xtra1.c 1.11:
-       »àË´»þ¤Î¥À¥ó¥×¤Ç¾èÇÏÃæ¤Î²Ã®¤Îɽ¼¨¤¬ÊѤÀ¤Ã¤¿¤Î¤ò½¤Àµ¡£
-       ¥À¥ó¥¸¥ç¥ó¤«¤éleave¤·¤Æ¤¤¤ë¤Î¤Ç¡¢¾èÇÏÃæ¤Î¥â¥ó¥¹¥¿¡¼¤¬m_list¤Ë¸ºß¤·¤Ê¤«¤Ã¤¿¡£
-
-2002-02-03  henkma  <henkma@cvs>
-
-       * src/spellstips.h 1.8:
-       ±Ñ¸ì¤Îtips¤Î´Ö°ã¤¤½¤Àµ. ÏĤó¤ÀÀ¤³¦¤ÎÀâÌÀ¤¬´Ö°ã¤Ã¤Æ¤¿.
-
-       * src/spellstips.h 1.7:
-       ¤Þ¤Àfor a while»Ä¤Ã¤Æ¤¿¤Î¤Çľ¤·¤¿. (̵ÂÌ¤Ë¥í¥°Áý¤ä¤·¤Á¤ã¤Ã¤Æ¤Þ¤¹, ¤¹¤ó¤Þ¤»¤ó.)
-
-       * src/spellstips.h 1.6: ²Î¤Î¸ú²Ì¤Ê¤Î¤Ëfor a while¤ÏÊѤʤΤǺï½ü.
-
-       * src/spellstips.h 1.5: tips¤Îtypo½¤Àµ.
-
-2002-02-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.29: ¾èÇÏÃæ¤Î±ÑÌõ˺¤ì¤òľ¤·¤¿¡£
-
-2002-02-03  henkma  <henkma@cvs>
-
-       * src/mspells3.c 1.4:
-       blue mage¤Îspell¤Î±Ñ¸ì¥á¥Ã¥»¡¼¥¸¤Ëñ¿ôÊ£¿ô¤Î´Ö°ã¤¤¤¬¤¢¤Ã¤¿¤Î¤Ç¤Þ¤È¤á¤Æ½¤Àµ.
-       ¡Ö¶¯Å¨¡×¤È¤¤¤¦É½¸½¤â¤Þ¤º¤¤¤È»×¤¦¤Î¤À¤¬, ¤³¤³¤Ë¤Ä¤¤¤Æ¤ÏÊÝα¤·¤Æ¤ª¤¯.
-
-2002-02-03  habu  <habu@cvs>
-
-       * lib/edit/s_info_j.txt 1.2:
-       ¤¤¤¤¤«¤²¤ó¤ÊµÝ¤Î½ÏÎýÅÙ¤ÏÁ´¤Æ¤Î¿¦¶È¤ÇMAX¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ½é´ü½ÏÎýÅ٤ϥí¥ó¥°¡¦¥Ü¥¦¤Ë¹ç¤ï¤»¤¿¡£
-
-2002-02-03  Takeshi Mogami  <mogami@cvs>
-
-       * src/init1.c 1.13, Changelogs 1.14:
-       ½é´ü²½¤»¤º¤ËÊÑ¿ô¤¬»È¤ï¤ì¤Æ¤¤¤ë²ÄǽÀ­¤È¤¤¤¦warning¤¬½Ð¤ë¤Î¤Ç¡¢½Ð¤Ê¤¤¤è¤¦¤Ë½ñ¤­Ä¾¤·¡£
-
-       * lib/help/joption.txt 1.3:
-       ¥ª¥×¥·¥ç¥ó¤Î°ÜÆ°¤ËÄɽ¾¤·¤Æ¹¹¿·¡£easy_open¤ËÊÉÈ´¤±¤ÎÀâÌÀÄɲá£
-
-2002-02-02  Takeshi Mogami  <mogami@cvs>
-
-       * src/tables.c 1.13:
-       easy_* use_command over_exert ¥ª¥×¥·¥ç¥ó¤Î°ÌÃÖ¤ò¥­¡¼ÆþÎÏ¥ª¥×¥·¥ç¥ó¤ËÊѹ¹¡£
-
-       * src/mspells1.c 1.5: Ring-Ranger ¢ª the Ring-Ranger¡£
-       ¥»¥ê¥Õ¤Î¥Ô¥ê¥ª¥É¤Î°ÌÃÖ¤¬ÊѤʤΤ⽤Àµ¡£
-       's'¤òÉÕ¤±¤è¤¦¤«Ì¤ä¿¤Î¤À¤±¤ì¤É¡¢Ranger ¤Ï¡ÖÆÃÊÌ´ñ½±Ââ¡×¤È¤«¡Ö¿¹ÎÓ·ÙÈ÷Ââ¡×
-       ¤È¤«¤Î¡ÖÂâ¡×ñ¿ô¤À¤«¤é 's' ¤Ï¤¤¤é¤Ê¤¤¡£¸Ä¡¹¤Î¡ÖÂâ°÷¡×¤Ï ranger ¤Ç¡¢Æ¬¤¬¾®Ê¸»ú¡£
-       ¤¿¤À¡¢"We are"¤Ç¤¤¤¤¤«¤É¤¦¤«¼«¿®¤Ê¤·¡£
-
-       * lib/edit/q0clone0_j.txt 1.2, src/init1.c 1.12, src/xtra2.c 1.12:
-       (clone)¥Õ¥é¥°¤ò³ÈÄ¥¤·¤Æ¡¢¥¯¥í¡¼¥óÃϹö¤Î¥æ¥Ë¡¼¥¯Ã£¤òÁ´¤Æ(clone)¤Ë¤·¤¿¡£
-       ¥¯¥í¡¼¥ó¤òÅݤ·¤Æ¤â¥ª¥ê¥¸¥Ê¥ë¤ÏÀ¸¤­¤Æ¤¤¤ë¡£
-       ¤½¤ì¤«¤é¡¢¥æ¥Ë¡¼¥¯¤Î¥¯¥í¡¼¥ó¤Ï¥¢¥¤¥Æ¥à¤òÍ¤¬¡¢»àÂΤÏÍ¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-       ¥¬¥Á¥ã¥Ô¥óÅù¤¬¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤Î¥æ¥Ë¡¼¥¯¤Ç¤¢¤Ã¤Æ¤âÀè¤ËÅݤ·¤Æ¤·¤Þ¤Ã¤Æ
-       ¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤¬Ìµ¤¯¤Ê¤ë»ö¤òËɤ²¤ë¡£¾Þ¶â¼ó¤Ç;·×¤ËÌÙ¤±¤ë»ö¤â¤Ê¤¯¤Ê¤ë¡£
-       ¤¿¤À¤·¡¢¥´¥ë¥Õ¥£¥ó¥Ö¡¼¥ëÅù¤Î¥¯¥í¡¼¥óÃϹö°Ê³°¤Î¥¯¥¨¥¹¥È¤Ë¤Ï±Æ¶Á¤·¤Ê¤¤
-       ¤Î¤Ç¤³¤ì¤Ë¤Ä¤¤¤Æ¤Ïľ¤é¤Ê¤¤¡£
-
-       * src/cmd6.c 1.9:
-       ÉáÄ̤ÎT¥·¥ã¥Ä¤¬¤Þ¤ÀÆɤá¤Æ¤·¤Þ¤Ã¤ÆÍÓÈé»æ¤Îʸ¾Ï¤¬½Ð¤ë¥Ð¥°¤ò½¤Àµ¡£
-
-       * src/cmd4.c 1.21:
-       '~'¤Î(i)¼«Æ°½¦¤¤/Ç˲õ¥ê¥¹¥È¤Ç[Ç˲õ]¤ò´Ö°ã¤Ã¤Æ[ÊüÃÖ]¤Èɽ¼¨¤·¤Æ¤¿¤Î¤ò
-       ½¤Àµ¡£¤Ä¤¤¤Ç¤Ë¡¢'('¤Ç¥Þ¥Ã¥×¤Çɽ¼¨¤·¤Ê¤¤ÅÐÏ¿¤ò¤·¤¿¤â¤Î¤ò(ÊüÃÖ)Åù¤È
-       ´Ý³ç¸Ì¤Çɽ¼¨¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * Changelogs 1.13: ¹¹¿·
-
-       * src/main-mac.c 1.6:
-       16x16¥¿¥¤¥ë¥°¥é¥Õ¥£¥Ã¥¯ÍѤÀ¤Ã¤¿main-mac.c¤ò8x8¥¿¥¤¥ëÍѤ˽¤Àµ¡£
-
-       * src/files.c 1.28:
-       ±Ñ¸ìÈǤǤϠ¡ÖSTR :¡× ¡ÖINT !¡×¤Î¤è¤¦¤Ë¥¹¥Ú¡¼¥¹¤¬¤Ò¤È¤Ä;¤ë¤Î¤Ç¡¢
-       ¤»¤Ã¤«¤¯¤À¤«¤éÍ­¸ú¤Ë»È¤Ã¤Æ¡¢ ¡ÖINT!:¡×¤Î¤è¤¦¤Ë¤¹¤ë¤è¤¦½¤Àµ¡£
-
-       * src/tables.c 1.12, src/files.c 1.27:
-       - ±Ñ¸ìÈǤÇǽÎÏÃÍMAX¤Î ! ¤Î°ÌÃÖ¤¬¤º¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       - ÆüËܸìÈǤÇ"¸½ºß"¤Î¥é¥Ù¥ë¤¬¤º¤ì¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-       - 'C'¤Î3¥Ú¡¼¥¸ÌܤÇÆüËܸìÈǤϥÀ¥á¡¼¥¸¤ò¼õ¤±¤¿Ç½ÎÏÃͤË'x'¤¬ÉÕ¤«¤Ê¤¤¤Î¤ò½¤Àµ¡£
-       - ±Ñ¸ìÈǤǤâ¥À¥á¡¼¥¸¤ò¼õ¤±¤Æ¤Æ¤â¼õ¤±¤Æ¤Ê¤¯¤Æ¤âStrÅù¤Î¤Þ¤ÞÊѲ½¤·¤Ê¤¤¤Î¤ò½¤Àµ¡£
-
-       * src/main-mac.c 1.5, src/util.c 1.14:
-       MPWÍѤˡ¢util.c ¤ÎÊý¤Î 13 ¤â '\r' ¤Ë½ñ¤­Ä¾¤·¡£
-
-       * src/main-mac.c 1.4: MPW¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç '\r' ¤¬ line feed(¤Ä¤Þ¤ê10)¡¢
-       '\n' ¤¬ caridge return (¤Ä¤Þ¤ê13)¤òȯÀ¸¤µ¤»¤ë¤È¤¤¤¦¤È¤ó¤Ç¤â¤Ê¤¤»ÅÍͤǤ¢¤ë
-       ¤³¤È¤¬È½ÌÀ¤·¤¿¤Î¤Ç¡¢13¤È¤¤¤¦¥­¡¼¥³¡¼¥É¤ò»È¤ï¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-       (-noMapCR¤È¤¤¤¦¥ª¥×¥·¥ç¥ó¤Ç'\r'¤È'\n'¤òÆþ¤ì´¹¤¨¤é¤ì¤ë¤¬¡¢
-       ¤É¤Ã¤Á¤Î¥ª¥×¥·¥ç¥ó¤Ç¤âÆ°¤¯¤è¤¦¤Ë¤·¤¿¡£)
-
-       * src/cave.c 1.15, src/util.c 1.13, src/z-config.h 1.2:
-       ºÆ¤Ó MPW¸þ¤±¤ÎÊѹ¹³Æ¼ï¡£
-
-2002-02-01  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.12: ¹¹¿·
-
-       * src/birth.c 1.14:
-       ±Ñ¸ìÈǤΥ¢¥ó¥É¥í¥¤¥É¤ÎÀ¸¤¤Î©¤Á¤ÇƱ¤¸¼ïÎà¤Î¹Ô¤¬2¤Ä½Å¤Ê¤ë¥Ð¥°½¤Àµ¡£
-
-       * lib/pref/xtra-xxx.prf 1.4:
-       Ä¹¤¹¤®¤ÆÆɤ߹þ¤ß¤Ë»þ´Ö¤¬¤«¤«¤ê¤½¤¦¤Ê¤Î¤Ç¡¢0¤ò»ØÄꤹ¤ë¤ÈÀßÄê¤ò¤·¤Ê¤¤»ö¤ò
-       ÍøÍѤ·¤Æ¡¢¿¦¶È¤ÎÀßÄê¤È¼ï²¤ÎÀßÄê¤Ëʬ¤±¤Æ¥¹¥Ã¥­¥ê¤µ¤»¤¿¡£
-
-       * src/birth.c 1.13, src/dungeon.c 1.12, src/externs.h 1.20, src/main-mac.c 1.3, src/object1.c 1.7, src/util.c 1.12:
-       MPWÍѤÎÊѹ¹³Æ¼ï¡£
-
-       * readme_eng.txt 1.3: ¥¹¥³¥¢¥µ¡¼¥Ð¡¼¤Î¾ì½êÄɲá£
-
-2002-02-01  habu  <habu@cvs>
-
-       * src/mspells1.c 1.4, src/mspells2.c 1.3:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥Æ¥ì¥Ý¡¼¥È¤Ë¤Ä¤¤¤Æ¤¤¤¯¤«¤É¤¦¤«¤Ïget_check_strict¤ò»È¤Ã¤Æyes¤ÈÆþÎϤ·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/cmd2.c 1.10:
-       ¾èÇÏÃæ¤Ç¤â­¸µ¤Î櫤äÊõÈ¢¤ò²ò½ü¤·¤¿¤ê³«¤±¤¿¤ê¤Ç¤­¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-31  habu  <habu@cvs>
-
-       * src/externs.h 1.19, src/japanese.c 1.4, src/load.c 1.11:
-       rd_string¤ÎÃæ¤Îʸ»ú¥³¡¼¥ÉÊÑ´¹Éôʬ¤Ç¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¡¼¤Î²ÄǽÀ­¤¬¤¢¤ë¤Î¤Ç½¤Àµ¡£¤Þ¤¿¡¢¤½¤Î¥³¡¼¥É¤òjapanese.c¤Ë°ÜÆ°¤·¤Æcodeconv()´Ø¿ô¤È¤·¤¿¡£
-
-2002-01-31  henkma  <henkma@cvs>
-
-       * src/artifact.c 1.8:
-       ¶À»È¤¤¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¥Ð¥¤¥¢¥¹¤¬¥ì¥ó¥¸¥ã¡¼¤È¤¤¤Ã¤·¤ç¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ÇÊѹ¹.
-       3:1¤ÇBIAS_MAGE:BIAS_ROGUE¤Ë¤·¤¿.
-
-2002-01-30  Takeshi Mogami  <mogami@cvs>
-
-       * src/h-config.h 1.4, src/h-system.h 1.2:
-       Mac ¤Î MPWÍѤÎÄêµÁ¤Ê¤É¤òÄɲᣠkuwa¤µ¤ó¤è¤ê¡£
-
-       * src/effects.c 1.5, src/externs.h 1.18, src/xtra2.c 1.11:
-       make_screen_dump()¤ò»È¤¦¥³¡¼¥É¤ò #ifdef WORLD_SCORE ¤ËÆþ¤ì¤¿¡£
-
-2002-01-29  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.14:
-       ÊèÃÏ¡¢²Ð»³¡¢ÃϹö¤¬°Å¤¤·ê¤ÎÃÏ·Á¤ÇËä¤á¤Ä¤¯¤µ¤ì¤Æ¸«¤¨¤Æ¤·¤Þ¤Ã¤¿¤Î¤Ç¡¢Í¥ÀèÅÙ¤ò²¼¤²¤¿¡£
-
-       * src/cave.c 1.13:
-       ¤Þ¤¿Ê̤ÎÊýË¡¡£¤Þ¤ï¤ê¤ËƱ¤¸ÃÏ·Á¤¬Ì©½¸¤·¤Æ¤Ê¤¤¤È¤­¤Ë¾¯¤·Í¥ÀèÅÙ¤ò¾å¤²¤ëÊýË¡
-       ¤ò»î¤·¤Æ¤ß¤ë¡£
-
-       * src/cave.c 1.12:
-       Í¥Àè½ç°Ì¤¬Æ±¤¸»þ¤Ï¡¢xrat*yrat¤ÎÈϰϤÎÃ椫¤éËè²ó°ã¤¦°ÌÃÖ¤ÎÂåɽ¤òÁª¤ó¤Ç
-       ¤½¤ì¤òºÎÍѤ¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cave.c 1.11:
-       ½Ì¾®¥Þ¥Ã¥×ɽ¼¨¤Ç¡¢ÃÏ·Á¤ÎÍ¥ÀèÅÙ¤òswitch(feat)¤ÇºÙ¤«¤¯½ñ¤¤¤¿¡£
-
-       * src/chuukei.c 1.5:
-       ½ñ¤±¤ëʸ»ú¿ô¤¬ MAX_HOSTNAME ¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò MAX_HOSTNAME - 1 ¤Ë½¤Àµ¡£
-
-       * src/chuukei.c 1.4, src/util.c 1.11:
-       strncpy()¤ò»È¤Ã¤Æ¤¤¤Æ¡¢½ªÃ¼Ê¸»ú¤ò¹Íθ¤·¤Æ¤¤¤Ê¤¤¤È¤³¤í¤ò½¤Àµ¡£
-
-2002-01-29  henkma  <henkma@cvs>
-
-       * src/util.c 1.10:
-       Á°²ó¤Îstrncpy¤¬¤é¤ß¤Î½¤Àµ¤ËÂФ·¡¢¤Ç±Ñ¸ì¤ÎÊý¤Î½ñ¤­Êý¤òÆüËܸì¤ÎÊý¤Ë¤¢¤ï¤»¤¿¡£
-       ¤Ä¤¤¤Ç¤ËÍÑ°Õ¤µ¤ì¤¿¥Ð¥Ã¥Õ¥¡¤ò¤Á¤ã¤ó¤ÈÁ´Éô»È¤¦¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/util.c 1.9:
-       strncpy¤Ç½ªÃ¼Ê¸»ú'\0'¤òÆþ¤ì¤Æ¤¯¤ì¤ë¤³¤È¤ò²¾Äꤷ¤¿¥³¡¼¥É¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       ¤³¤Î¤¿¤á¤Ë¡¢¾ì¹ç¤Ë¤è¤Ã¤Æ¤Ï¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¡¼¤ÇÍî¤Á¤ë¤³¤È¤¬¤¢¤Ã¤¿¡£
-
-2002-01-28  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.11: ¹¹¿·
-
-2002-01-28  habu  <habu@cvs>
-
-       * lib/edit/r_info_j.txt 1.11:
-       ¥á¥Õ¥£¥¹¥È¥Õ¥§¥ì¥¹¤«¤éñÆȤÎESCORTS¥Õ¥é¥°¤òºï½ü¡£
-
-2002-01-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.26:
-       °úÂà»þ¤ËÀ¸¤¤Î©¤Á¤Î²¼¤Î¡Ö¡Á¤Ç°úÂष¤¿¡×¤Î¥á¥Ã¥»¡¼¥¸¤¬¤ª¤«¤·¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-01-28  habu  <habu@cvs>
-
-       * lib/edit/r_info_j.txt 1.10: ¥µ¥à¥é¥¤¤Î¹¶·â¤òHIT¤«¤éSLASH¤ËÊѹ¹¡£
-       ¤Þ¤¿¡¢¥µ¥à¥é¥¤¤Î±Ñ¸ìÈǤÎÀâÌÀÉôʬ¤ËÆüËܸ줬»Ä¤Ã¤Æ¤¤¤¿¤Î¤Çºï½ü¡£
-
-2002-01-28  Takeshi Mogami  <mogami@cvs>
-
-       * src/cave.c 1.10:
-       ¥Þ¥Ã¥×ɽ¼¨¤Ç¤Îɽ¼¨¤ÎÍ¥ÀèÅÙ¤òÊѹ¹¡£¥¢¥¤¥Æ¥à¤ò¾ï¤ËÃÏ·Á¤è¤êÍ¥À褷¤Æɽ¼¨¡£
-       ¥â¥ó¥¹¥¿¡¼¤Ï¥¢¥¤¥Æ¥à¤è¤ê¤âÍ¥Àè¡£
-
-       * src/variable.c 1.9, src/cave.c 1.9, src/externs.h 1.17, src/main-dos.c 1.3, src/main-win.c 1.5, src/main-x11.c 1.4:
-       use_transparency ¤ò use_lighting ¤Ë²þ̾¡£
-       ¤µ¤Ã¤­¤Î½¤Àµ¤Ç use_transparency ¤¬¥¿¥¤¥ë¤Î½Å¤Íɽ¼¨¤Î¥ª¥×¥·¥ç¥ó¤À¤È»×¤Ã¤Æ¡¢
-       8x8¥¿¥¤¥ë¤Ç¤âÀßÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¡¢cave.c¤ÇÌÀ°Å¸ú²Ì¤Î»ÈÍѲÄÈݤòANGBAND_GRAF¤Ç
-       È½Äꤹ¤ë¤è¤¦½¤Àµ¤·¤¿¤¬¡¢¼Â¤Ï use_transparency ¤Ï¥¿¥¤¥ë¤ÎÌÀ°Å¸ú²Ì¤Î¥ª¥×¥·¥ç¥ó
-       ¤È¤·¤Æ¤·¤«»È¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢¤¢¤é¤¿¤á¤Æ½¤Àµ¤·¤¿¡£
-
-       * acconfig.h 1.2, configure.in 1.7, src/cave.c 1.8, src/main-x11.c 1.3:
-       8x8¥¿¥¤¥ë¤Ç¡¢transparency¤ËÂбþ¡£ÃÏ·Á¤È¥¢¥¤¥Æ¥à¤ä¥­¥ã¥é¥¯¥¿¡¼¤¬½Å¤Ê¤Ã¤Æɽ¼¨¤µ¤ì¤ë¡£
-       ¤â¤·¤«¤·¤Æ¡¢¹õ¤Ã¤Ý¤¤¥¢¥¤¥Æ¥à¤ä¥â¥ó¥¹¥¿¡¼¤Ë¤Ä¤¤¤Æ¥¿¥¤¥ë¤ò°ìÉô½¤ÀµÉ¬Íפ«¤â¡£
-
-2002-01-27  Takeshi Mogami  <mogami@cvs>
-
-       * src/cmd4.c 1.20: fd_copy() ¤¬¤É¤¦¤â²ø¤·¤¤¤Î¤Ç¡¢»È¤¦¤Î¤ò¤ä¤á¤Æ¤ß¤¿¡£
-
-       * src/melee1.c 1.4: ±Ñ¸ìÈǤǥޥÀ¥à¥Ç¥Ó¤Î¥»¥ê¥Õ¤¬È´¤±¤Æ¤¤¤¿¤Î¤òÄɲá£
-
-2002-01-27  iks  <iks@cvs>
-
-       * lib/file/a_cursed_j.txt 1.6, lib/file/a_med_j.txt 1.5: ¤Þ¤¿¹¹¿·¡£
-
-       * lib/file/a_cursed_j.txt 1.5, lib/file/a_high_j.txt 1.4, lib/file/a_low_j.txt 1.4, lib/file/a_med_j.txt 1.4, lib/file/w_cursed_j.txt 1.5, lib/file/w_high_j.txt 1.4, lib/file/w_low_j.txt 1.7, lib/file/w_med_j.txt 1.4:
-       ²þ¹Ô¥³¡¼¥É°ã¤Ã¤Æ¤Þ¤·¤¿¡£¤¹¤ó¤Þ¤»¤ó¡£
-
-       * lib/file/a_cursed_j.txt 1.4, lib/file/a_high_j.txt 1.3, lib/file/a_low_j.txt 1.3, lib/file/a_med_j.txt 1.3, lib/file/w_cursed_j.txt 1.4, lib/file/w_high_j.txt 1.3, lib/file/w_low_j.txt 1.6, lib/file/w_med_j.txt 1.3:
-       ¡ù̾¤ò¤«¤Ê¤ê½¤Àµ¡¢Äɲä⿾¯¤¢¤ê¤Þ¤¹¡£
-
-2002-01-27  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.10: ¹¹¿·
-
-       * src/report.c 1.13:
-       make_screen_dump()¤Ç¼«Æ°ÊÑ¿ô¤ÎÇÛÎó¤Î½é´ü²½¤ò´Ø¿ôÆâ¤Ç¤ä¤Ã¤Æ¤¤¤¿¤¬¡¢
-       °ìÉô¤Î´Ä¶­¤Ç¥¨¥é¡¼¤Ë¤Ê¤ë¤È»×¤¦¤Î¤Ç¡¢static ¤ÎÇÛÎó¤Ë¤·¤¿¡£
-
-       * Changelogs 1.9: ¹¹¿·
-
-       * src/report.c 1.12:
-       ¥¿¥¤¥ë¥°¥é¥Õ¥£¥Ã¥¯¥â¡¼¥É¤Ç¤Ï¡¢make_screen_dump()¤Ï²¿¤â¤·¤Ê¤¤¤Çµ¢¤¨¤ë
-       ¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-27  hoge  <hoge@cvs>
-
-       * src/monster2.c 1.7: ¥Ð¥Î¥ë¥Ñ¥Ñ¥Ã¥Á¡£
-       ¤³¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç1.0.9¤È¤¹¤ë¡£
-
-2002-01-26  habu  <habu@cvs>
-
-       * src/cmd1.c 1.12, src/cmd2.c 1.9: typo fix.
-
-       * src/report.c 1.11:
-       ºî¤Ã¤¿¥À¥ó¥×¤òºÆÅÙbuf_sprintf¤Ë¿©¤ï¤»¤Æ"%%"¤Ê¤É¤¬ÊѤ˲ò¼á¤µ¤ì¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-2002-01-26  Takeshi Mogami  <mogami@cvs>
-
-       * lib/file/a_cursed_j.txt 1.3, lib/file/w_cursed_j.txt 1.3, lib/file/w_low_j.txt 1.5:
-       ÊѤʤκï½ü¡£
-
-       * src/files.c 1.25: 'C'¤Ç¡¢¾èÇÏÃæ¤Î®ÅÙ¤Îɽµ­¤Ë¤Á¤ã¤ó¤ÈÂбþ¡£
-
-2002-01-26  hoge  <hoge@cvs>
-
-       * src/load.c 1.10, src/spells2.c 1.7, src/xtra1.c 1.10, src/xtra2.c 1.10, configure.in 1.6, lib/file/news.txt 1.4, lib/file/news_j.txt 1.2, lib/xtra/graf/Makefile.am 1.2, src/artifact.c 1.7, src/birth.c 1.12, src/cave.c 1.7, src/cmd1.c 1.11, src/cmd2.c 1.8, src/cmd6.c 1.8, src/dungeon.c 1.11, src/files.c 1.24:
-       ¥Ð¡¼¥¸¥ç¥óÈֹ椢¤Á¤³¤ÁÊѹ¹
-       ¡ù¤Îxtra4»È¤ï¤º
-       ¥¯¥í¥¹¥Ü¥¦¤ÏÈôµ÷Υû¤¯¤Æ»È¤¤¤ä¤¹¤¤
-       ¥¢¡¼¥Á¥ã¡¼¤Ï¥¯¥í¥¹¥Ü¥¦ºÇÂç3²ó
-       @nothere¤µ¤ó¤Î¥Ñ¥Ã¥Á³Æ¼ï
-
-2002-01-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/util.c 1.8:
-       ÃΤé¤Ê¤¤¥Þ¥¯¥í¥È¥ê¥¬¡¼Ì¾( \[hogehoge] ¤È¤« ) ¤Ë½Ð²ñ¤¦¤ÈÊѤʥޥ¯¥í¥È¥ê¥¬¡¼¤ò
-       ÅÐÏ¿¤·¤Æ¤·¤Þ¤Ã¤Æ¡¢ÆÃÄê¤Î¥­¡¼ÆþÎϤÎÈ¿±þ¤¬1Éö᤯ÃÙ¤¯¤Ê¤ë¥Ð¥°¤ò½¤Àµ¡£
-
-2002-01-26  habu  <habu@cvs>
-
-       * src/cmd1.c 1.10, src/cmd2.c 1.7, src/xtra1.c 1.9:
-       Éð´ï½ÏÎýÅٴط¸¤Î¥½¡¼¥¹¤¬±ø¤Ê¤¤¤Î¤Ç¾¯¤·½¤Àµ¤·¤Æ¸«¤ä¤¹¤¯¤·¤¿¡£
-
-2002-01-26  henkma  <henkma@cvs>
-
-       * src/xtra2.c 1.9:
-       ¼þ°Ï¤òÄ´¤Ù¤ë¥³¥Þ¥ó¥É¤Ç¡¢ ´äÀÐ':'¤¬¤Ò¤Ã¤«¤«¤é¤Ê¤¤¤è¤¦¤ËÊѹ¹¡£
-
-2002-01-26  iks  <iks@cvs>
-
-       * lib/file/w_low_j.txt 1.4: ÅÐÏ¿¿ô¤Î¿ô¤¨´Ö°ã¤¤¤Î½¤Àµ¡£
-
-       * lib/file/a_cursed_j.txt 1.2, lib/file/a_high_j.txt 1.2, lib/file/a_low_j.txt 1.2, lib/file/a_med_j.txt 1.2, lib/file/w_cursed_j.txt 1.2, lib/file/w_high_j.txt 1.2, lib/file/w_low_j.txt 1.3, lib/file/w_med_j.txt 1.2:
-       ¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È̾¤òÄɲÃ/½¤Àµ
-
-2002-01-26  habu  <habu@cvs>
-
-       * src/report.c 1.10:
-       Ä¾ÀÜ'\0'¤ò½ñ¤¯ÊýË¡¤Ç¤Ï¥Ð¥Ã¥Õ¥¡¤ò¥ª¡¼¥Ð¡¼¤¹¤ë²ÄǽÀ­¤¬¤¢¤ë¤Î¤Ç¡¢buf_append¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-26  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.8: ¹¹¿·
-
-2002-01-26  habu  <habu@cvs>
-
-       * src/report.c 1.9:
-       ¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×¤ÎËöÈø¤Ë'\0'¤òÉÕ¤±¤Æ¤­¤Á¤ó¤È½ªÃ¼¤µ¤»¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-26  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.23: °úÂà¤Î¤È¤­¤Ë¡¢À¸¤¤Î©¤Á¤Î²¼¤Î¥á¥Ã¥»¡¼¥¸¤òÊѹ¹¡£
-
-2002-01-26  habu  <habu@cvs>
-
-       * src/cmd4.c 1.19, src/externs.h 1.16, src/report.c 1.8:
-       make_screen_dump¤òreport.c¤Ë°ÜÆ°¤·¡¢buf_sprintf¤ò»È¤Ã¤Æ¥À¥ó¥×¤òºî¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-25  habu  <habu@cvs>
-
-       * src/cmd4.c 1.18: ¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×¤Î¥Ð¥Ã¥Õ¥¡¤ÎŤµ¤ò·×¤ëÊýË¡¤òÊѹ¹¡£
-
-       * src/cmd4.c 1.17, src/defines.h 1.10, src/load.c 1.9, src/save.c 1.4, src/xtra2.c 1.8:
-       °úÂà»þ¤Î¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×ÍѤ˥µ¡¼¥Ú¥ó¥È¤òÅݤ·¤¿½Ö´Ö¤Î²èÌ̤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-       ¤Þ¤¿¡¢ÂÔµ¡¤È¾­Íè¤Î°úÂà¤Î°Ù¤Ë¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤ËÊݸ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£
-       ¥»¡¼¥Ö¥Õ¥¡¥¤¥ë¤Î»ÅÍͤ¬ÊѤï¤Ã¤¿¤Î¤Ç¥Ð¡¼¥¸¥ç¥ó¤¬°ì¤Ä¾å¤¬¤Ã¤Æ¤¤¤ë¤Î¤ÇÃí°Õ¡£
-
-2002-01-25  Takeshi Mogami  <mogami@cvs>
-
-       * src/defines.h 1.9, src/rooms.c 1.7:
-       ¶µ²ñ¤Î¥â¥ó¥¹¥¿¡¼¤ÎÁªÂò¤ò±Ñ¸ì̾¤ËÍê¤é¤º¤Ë¡¢¥â¥ó¥¹¥¿¡¼ÈÖ¹æ¤ÇȽÄꤹ¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-25  habu  <habu@cvs>
-
-       * src/cmd4.c 1.16, src/report.c 1.7:
-       ¥Õ¥¡¥¤¥ë¤òclose¤»¤º¤Ëremove¤·¤Æ¤¤¤¿¾ì½ê¤òclose¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/cmd4.c 1.15:
-       ¥¹¥¯¥ê¡¼¥ó¥À¥ó¥×ºîÀ®Ãæ¤Ë¥Ð¥Ã¥Õ¥¡¥ª¡¼¥Ð¡¼¤¬µ¯¤³¤é¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/externs.h 1.15, src/report.c 1.6, src/variable.c 1.8, src/cmd4.c 1.14, src/effects.c 1.4:
-       ¥­¥ã¥é¥¯¥¿»àË´»þ¤ËHTML·Á¼°¤Î¥¹¥¯¥ê¡¼¥ó¥·¥ç¥Ã¥È¤òÁ÷¿®¤¹¤ëµ¡Ç½¤òÄɲá£
-       ¤Þ¤À°úÂà»þ¤ÈÂÔµ¡»þ¤ËÂбþ¤·¤Æ¤¤¤Ê¤¤¡£ÂÔµ¡¤·¤¿»þ¤Ë¤É¤¦¤¹¤ë¤«¤Ï¹Í¤¨¤É¤³¤í¡£
-
-2002-01-25  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.6, autopick_eng.txt 1.7, src/tables.c 1.11:
-       autopick¤Ç»È¤¤Æ»¤¬¤¢¤ë¤Î¤Ç¡¢$REALM1 $REALM2 ¤Ç no magic ¤Ç¤Ê¤¯ none ¤ò
-       ÊÖ¤¨¤¹¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/files.c 1.22: - »àË´¥À¥ó¥×¤Î¥á¥Ã¥»¡¼¥¸ÍúÎò¤ò¡¢15¹Ô->30¹Ô¤Ø
-       - ¥À¥ó¥×¤ÎÀ¸¤¤Î©¤Áɽ¼¨¤Î¤È¤³¤í¡¢¤³¤Ê¤¤¤À¤ÎÊѹ¹¤Î¤»¤¤¤Ç¥Ð¥é¥ó¥¹¤¬°­¤«¤Ã¤¿¤Î¤Ç¡¢
-         °ì¹Ô¶õ¹ÔÄɲá£
-
-2002-01-25  hoge  <hoge@cvs>
-
-       * lib/edit/k_info_j.txt 1.5, lib/edit/t0000001_j.txt 1.3, lib/edit/t_lite_j.txt 1.3, src/artifact.c 1.6, src/cmd1.c 1.9, src/cmd6.c 1.7, src/load.c 1.8, src/melee2.c 1.6, src/rooms.c 1.6:
-       ¡ù¤ÎȯưÆñ°×ÅÙ¤Ïȯư¤Î¼ïÎà¤Ë°Í¸¡¢Ä¶±£Ì©¤Ï¥ì¥Ù¥ë¤È±£Ì©Ç½ÎϤǷèÄê¡¢À»Æ²µ³»Î¤Ï¶µ²ñ¤ÇÅо졢³²Ãî¶î½ü¤Î¥í¥Ã¥É¤Î¥ì¥Ù¥ëÊѹ¹
-
-2002-01-25  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.6:
-       ¤¤¤¯¤Ä¤«ÄêµÁÄɲᣥХ¤¥ë¤È»þ¶õwyrm¡¢¹õ°á¤Î½¤¹ÔÁΡ¢²«°á¤Î½¤¹ÔÁΤϥ¿¥¤¥ëÄɲá£
-
-       * lib/pref/pref-mac.prf 1.4, lib/pref/pref-win.prf 1.4, lib/pref/pref-x11.prf 1.4:
-       ¥Þ¥¯¥í¥È¥ê¥¬¡¼¤Ë¤Ä¤¤¤Æ¡¢Æ±¤¸¥­¡¼¤Ê¤éƱ¤¸Ì¾Á°¤Ë¤Ê¤ë¤è¤¦¤ËÅý°ì¡£
-
-       * src/cmd4.c 1.13, src/files.c 1.21:
-       - '@'¥³¥Þ¥ó¥É¤Ç¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤à¤È¤­¤Ë pref ¥Ç¥£¥ì¥¯¥È¥ê¤«¤éÆɤß
-         ¹þ¤ó¤Ç¤«¤é¥æ¡¼¥¶¡¼¥Ç¥£¥ì¥¯¥È¥ê¤«¤éÆɤ߹þ¤à¤¬¡¢¥¨¥é¡¼¤Ï¥æ¡¼¥¶¡¼
-         ¥Ç¥£¥ì¥¯¥È¥ê¤Î¤â¤Î¤À¤±¤òÊÖ¤¹¤Î¤Ç¡¢¼ÂºÝ¤Ïpref¤Î¥Õ¥¡¥¤¥ë¤òÆɤó¤Ç
-         ¤¤¤Æ¤â¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬½Ð¤Æ¤¤¤¿¡£¤½¤ì¤ò½¤Àµ¤·¤Æ¡¢Î¾Êý¼ºÇÔ¤·¤¿¤Î
-         ¤« pref ¤«¤é¤À¤±Æɤ᤿¤Î¤«¤ï¤«¤ë¤è¤¦¤Ë¤·¤¿¡£
-       - ¤Ä¤¤¤Æ¤Ë¡¢ÀßÄê¥Õ¥¡¥¤¥ë¤Ë¤è¤ë¥ª¥×¥·¥ç¥óÊѹ¹¤Ë¼ºÇÔ¤·¤¿¤È¤­¤Î¥¨¥é¡¼
-         ¥á¥Ã¥»¡¼¥¸½¤Àµ¡£
-
-2002-01-24  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.5:
-       ¥¤¥±¥¿¡¢¥¤¥ó¥¿¡¼¥Í¥Ã¥È'e'¡¢¥Ô¥«¥Á¥ã¥¦¡¢¤×¤è¡£
-
-       * src/spells3.c 1.7:
-       ¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥ÈÀ¸À®¤Ç¡¢¼ºÇÔ¤¹¤ë¤è¤¦¤ÊÁªÂò¤ÏºÇ½é¤«¤é½ÐÍè¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.9:
-       µðÂç²Ð¥¢¥ê¤Î±Ñ¸ì̾¤òÊѤ¨¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢Giant red ant ->Giant fire ant ¤ËÊѹ¹¡£
-
-       * src/files.c 1.20:
-       ¥Ø¥ë¥×¥Õ¥¡¥¤¥ëÍѤËZ240¤Îshow_file()¤«¤é¥³¥Ô¥Ú¤·¤Æ¤­¤¿¤È¤­¤Ë¡¢reverse ¥Õ¥é¥°¤Î½èÍý¤ò
-       ´Ö°ã¤Ã¤Æ¾Ã¤·¤Æ¤¤¤¿¤Î¤Ç¡¢Éü³è¤µ¤»¤¿¡£
-
-       * src/files.c 1.19: ¤â¤¦»È¤ï¤Ê¤¯¤Ê¤Ã¤¿ prt_num()Åù¤òºï½ü¡£
-
-       * src/files.c 1.18:
-       set user id ¤ò»È¤Ã¤Æ¤¤¤ë¤È¤­¤Ë¡¢safe_setuid_drop()¤¬¤Á¤ã¤ó¤ÈƯ¤¤¤Æ¥æ¡¼¥¶¡¼ÀßÄê
-       ¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤á¤ë¤è¤¦¤Ë¡¢¤µ¤é¤Ë½¤Àµ¡£
-
-       * src/util.c 1.7:
-       get_check()¤ÎÃæ¤Î¡¢´Á»ú¤ò´Þ¤à¥á¥Ã¥»¡¼¥¸¤ËÂФ·¤ÆÀèƬ¤Î 70"byte"¤ò¥³¥Ô¡¼¤È¤¤¤¦´í¸±¤Ê½èÍý
-               (void)strnfmt(buf, 78, "%.70s[y/n] ", prompt);
-       ¤òmb_strlcpy()¤ò»È¤Ã¤Æ½ñ¤­Ä¾¤·¡£
-       safe_setuid_drop();¤Î½èÍý¤¬¤Á¤ã¤ó¤ÈÆ°¤¯¤«¼Â¸³Ãæ¤Ë¶öÁ³ÉÔ¶ñ¹ç¤¬µ¯¤Ã¤Æ¥Ð¥°¤¬È½ÌÀ¤·¤¿¡£
-
-       * src/japanese.c 1.3:
-       ¤º¤Ã¤ÈÁ°¤Ëľ¤·¤¿¤Ï¤º¤Î¥Ð¥°¡£mb_strlcpy()¤Ç¡¢¥³¥Ô¡¼¸µ¤¬´Á»ú¤«¤É¤¦¤«¤Ç¾ò·ïʬ´ô¤¹¤ë
-       ¤Ï¤º¤Î¤È¤³¤í¤ò¤Þ¤À½ñ¤­¹þ¤ó¤Ç¤Ê¤¤¥³¥Ô¡¼Àè¤Ç iskanji() ¤ò¸«¤Æ¤ë¤È¤¤¤¦¥¢¥Û¤Ê¥Ð¥°½¤Àµ¡£
-
-2002-01-24  henkma  <henkma@cvs>
-
-       * src/cmd1.c 1.8:
-       ÉâÍ·¤¬ÉÕ¤¤¤Æ¤Ê¤¯¤Æ¤â²Ùʪ¤¬·Ú¤±¤ì¤Ð¿å¤Î¾å¤òÁö¤ì¤ë¤è¤¦¤Ë½¤Àµ¡£
-       Áö¤ë¥³¥Þ¥ó¥É¤Ç¡¢Ê⤯¤³¤È¤Î·«¤êÊÖ¤·°Ê¾å¤Î¾ðÊ󤹤ʤï¤Á̤´ÕÄê¤Î
-       ¤â¤Î¤ËÉâÍ·¤¬ÉÕ¤¤¤Æ¤ë¤«¤É¤¦¤«¤Î¾ðÊó¤¬ÆÀ¤é¤ì¤Æ¤·¤Þ¤¦¤³¤È¤¬¤Ê¤¯
-       ¤Ê¤Ã¤¿¡£
-
-2002-01-23  habu  <habu@cvs>
-
-       * src/xtra1.c 1.8: Minor code cleanup.
-
-2002-01-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/xtra-xxx.prf 1.3, Changelogs 1.7, lib/help/jtown.txt 1.2, lib/pref/graf-xxx.prf 1.4:
-       - jtown Á´³Ñ£°¢ª0
-       - xtra-xxx.prf ¸Å¤¤¹Ô¤òºï½ü¡£
-       - °ìÉô½¤Àµ¡£
-
-2002-01-23  habu  <habu@cvs>
-
-       * src/cmd6.c 1.6, src/defines.h 1.8, src/dungeon.c 1.10, src/externs.h 1.14, src/generate.c 1.3, src/init1.c 1.11, src/init2.c 1.7, src/load.c 1.7, src/main-win.c 1.4, src/main.c 1.2, src/melee2.c 1.5, src/monster2.c 1.6, src/object2.c 1.9, src/racial.c 1.3, src/save.c 1.3, src/spells1.c 1.4, src/spells2.c 1.6, src/store.c 1.3, src/types.h 1.7, src/util.c 1.6, src/wild.c 1.4, src/wizard2.c 1.5, src/xtra1.c 1.7, src/xtra2.c 1.7, src/angband.h 1.2, src/artifact.c 1.5, src/birth.c 1.11, src/bldg.c 1.5, src/cmd1.c 1.7, src/cmd2.c 1.6, src/cmd3.c 1.6, src/cmd4.c 1.12, src/cmd5.c 1.8:
-       ÌµÂ̤˻Ĥäƥ½¡¼¥¹±ø¤·¤Ë¤Ê¤Ã¤Æ¤¤¤¿Python´Ø·¸¤Î¥³¡¼¥É¤òºï½ü¡£script.c¤È¡¢z-config.h¤ÎÃæ¤ÎUSE_SCRIPTÊÕ¤ê¤Îµ­½Ò¤Ï°ì±þ»Ä¤·¤Æ¤¤¤ë¡£
-
-2002-01-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/flavor.c 1.7:
-       ´¬Êª¤Î̤¼±ÊÌ̾¤òÆüËܸì¤È±Ñ¸ì¤Ò¤Ã¤¯¤ê¤«¤¨¤·¤Æ¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-01-23  habu  <habu@cvs>
-
-       * lib/help/jmonster.txt 1.2: ¥â¥ó¥¹¥¿¡¼¤Îµ­¹æ¤Îɽ¤Î¤º¤ì¤ò½¤Àµ¡£
-
-2002-01-23  Takeshi Mogami  <mogami@cvs>
-
-       * src/flavor.c 1.6:
-       ¥³¡¼¥ÉÀ°Íý¡¢ÆüËܸìÈǤǥª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤Æ±Ñ¸ì̾¤òɽ¼¨¤·¤Æ¤¤¤¿º¢¤Î̾»Ä¤òËõ¾Ã¡£
-
-2002-01-23  habu  <habu@cvs>
-
-       * lib/help/jdungeon.txt 1.3: ³¬¤ÎÊ·°Ïµ¤¤Ë´Ø¤¹¤ëµ­½Ò¤Î´Ö°ã¤¤¤ò½¤Àµ¡£
-
-       * lib/help/jbirth.txt 1.3:
-       ËâË¡Îΰè¤Îɽ¤Î¤º¤ì¤ò½¤Àµ¡£(TAB¤¬¤¢¤ë¤È¤º¤ì¤ë¤è¤¦¤À¡£)
-       ¤Ä¤¤¤Ç¤Ë½ÄÀþ¤òÆþ¤ì¤Æ¸«¤ä¤¹¤¯¤·¤¿¡£
-
-2002-01-23  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/graf-xxx.prf 1.3:
-       Pern¤Î8x8.bmp¤ò»È¤¦¤è¤¦¤Ë¤·¤Æ¡¢¤¤¤¯¤Ä¤«¤Î¥â¥ó¥¹¥¿¡¼¤ËÂбþ¡£
-       ÊѶòÆȼ«¤Î¥â¥ó¥¹¥¿¡¼¤Ï¼êÉÕ¤«¤º¡£
-
-       * src/files.c 1.17: ºÆ¤Ó '!'¡£ 1¹Ô¾å¤Ë½¤Àµ¡£
-
-       * src/files.c 1.16: '!'¤Îɽ¼¨°ÌÃÖ½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.8:
-       ÀâÌÀʸ¤¬±Ñ¸ì¤Î¤Þ¤Þ¤Î¥â¥ó¥¹¥¿¡¼¤¬±Ñ¸ìÈǤǤϤ»¤Ã¤«¤¯¤ÎÀâÌÀʸ¤òɽ¼¨¤·¤Æ¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-       * Changelogs 1.6, src/cmd4.c 1.11, src/files.c 1.15, src/wizard1.c 1.5:
-       pern¤Î·Ç¼¨ÈĤÇÊó¹ð¤µ¤ì¤Æ¤¤¤¿¡¢safe_setuid_drop();¤È safe_setuid_grab(); ¤ò
-       ¤Á¤ã¤ó¤È¤·¤¿¤È¤³¤í¤Ç¸Æ¤Ö¤è¤¦¤Ë½¤Àµ¡£
-
-       * lib/help/jcharattr.txt 1.2, lib/help/jcommand.txt 1.3, lib/help/jcommdesc.txt 1.3, lib/help/jgeneral.hlp 1.2, lib/help/jgeneral.txt 1.3:
-       ¤Á¤ç¤Ã¤È½¤Àµ
-
-2002-01-22  habu  <habu@cvs>
-
-       * src/cave.c 1.6, src/dungeon.c 1.9, src/externs.h 1.13, src/melee2.c 1.4:
-       ¥â¥ó¥¹¥¿¡¼¤ÎÄÉÀץ롼¥Á¥ó´Ø·¸¤òO¤ò»²¹Í¤ËÂçÉý¤ËÊѹ¹¡£¤«¤Ê¤ê¤Î½èÍý®ÅÙ¥¢¥Ã¥×¤Ë·Ò¤¬¤ë¤Ï¤º¡£
-
-2002-01-22  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/jobjects.hlp 1.1, lib/help/jobjects.txt 1.1:
-       ¥Õ¥¡¥¤¥ëÄɲäÎÄɲÃ
-
-       * lib/help/readme.txt 1.3:
-       Á°¡¢¡Ö´Ö°ã¤Ã¤Æreadme.txt¤òhelp¥Ç¥£¥ì¥¯¥È¥ê¤Ëadd¤·¤¿¤Þ¤Þ¤À¤Ã¤¿¡×¤È»×¤Ã¤Æºï½ü¤·¤¿¤¬¡¢
-       ´ª°ã¤¤¤À¤Ã¤¿¤Î¤ÇÉü³è¡£
-
-       * lib/help/jbldg.txt 1.1, lib/help/jcharattr.hlp 1.1, lib/help/jcharattr.txt 1.1, lib/help/jcommand.hlp 1.2, lib/help/jcommand.txt 1.2, lib/help/jcommand0.txt 1.2, lib/help/jcommdesc.hlp 1.2, lib/help/jcommdesc.txt 1.2, lib/help/jdefend.hlp 1.1, lib/help/jdefend.txt 1.1, lib/help/jdungeon.hlp 1.1, lib/help/jdungeon.txt 1.2, lib/help/jgambling.txt 1.2, lib/help/jgeneral.hlp 1.1, lib/help/jgeneral.txt 1.2, lib/help/jhelp.hlp 1.4, lib/help/jhelpinfo.txt 1.2, lib/help/jmagic.hlp 1.1, lib/help/jmagic.txt 1.1, lib/help/jmonster.hlp 1.1, lib/help/jmonster.txt 1.1, lib/help/joption.hlp 1.2, lib/help/joption.txt 1.2, lib/help/jplaying.txt 1.2, lib/help/jpref.hlp 1.1, lib/help/jpref.txt 1.1, lib/help/jspecial.hlp 1.1, lib/help/jtang.txt 1.1, lib/help/jtown.hlp 1.1, lib/help/jtown.txt 1.1, lib/help/jversion.txt 1.2, src/files.c 1.14, Changelogs 1.5, lib/help/Makefile.am 1.2, lib/help/j_general.txt 1.1, lib/help/j_item1.txt 1.1, lib/help/j_item2.txt 1.1, lib/help/j_name.txt 1.2, lib/help/j_trans.txt 1.1, lib/help/japanese.txt 1.2, lib/help/jattack.hlp 1.1, lib/help/jattack.txt 1.2, lib/help/jbirth.hlp 1.1, lib/help/jbirth.txt 1.2:
-       ÆüËܸìÈǤÎZ240¥Ø¥ë¥×¤ò¸µ¤ËÊѶòÈÚÅܥإë¥×¤òºîÀ®¡£
-       ¤Þ¤Àjmagic¤Ê¤É¡¢°ìÉô̤´°À®¡£
-
-2002-01-22  habu  <habu@cvs>
-
-       * src/cmd5.c 1.7, src/externs.h 1.12, src/spells2.c 1.5:
-       ¥Ú¥Ã¥ÈÇúÇˤÎËâË¡¤Ç¥æ¥Ë¡¼¥¯¥â¥ó¥¹¥¿¡¼¤òÇ˲õ¤Ç¤­¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-       * src/externs.h 1.11, src/init1.c 1.10, src/init2.c 1.6:
-       fake_{text,name}_size¤ÎÊÑ¿ô¤ò¤ï¤¶¤ï¤¶»È¤ï¤º¤Ë¡¢FAKE_{NAME,TEXT}_SIZE¤ÎÄê¿ô¤òľÀܻȤ¦¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-22  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.8:
-       µÙ·Æ½ªÎ»»þ¤ËÁ´¤¯Ìµ°ÕÌ£¤Ë disturb() ¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¤Î¤Çºï½ü¡£
-       µÙ·Æ¤ò´Þ¤à¥Þ¥¯¥í¤¬»È¤¤¤ä¤¹¤¯¤Ê¤ë¡£
-
-       * lib/help/jhelp.hlp 1.3: *** empty log message ***
-
-2002-01-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/object1.c 1.6:
-       @+¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È+¿ô»ú¤Ë¤Ä¤¤¤Æ¡¢ÁªÂò»è¤Ë¤Ê¤¤¥¢¥¤¥Æ¥à¤òÁªÂò¤·¤è¤¦¤È¤·¤Æ¤·¤Þ¤¦
-       ¤È¤¤¤¦¤Î¤ò°ÊÁ°½¤Àµ¤·¤¿¤¬¡¢@+¿ô»ú¤Ë¤Ä¤¤¤ÆŬÍѤµ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç¤³¤Á¤é¤â½¤Àµ¡£
-
-       * autopick.txt 1.5, autopick_eng.txt 1.6, src/tables.c 1.10:
-       -¡Ö¾ï¤Ë¥¢¥¤¥Æ¥à¤ò½¦¤¦¡×¡¢¤È¡Ö¥¢¥¤¥Æ¥à¤ò½¦¤¦¤È¤­³Îǧ¤¹¤ë¡×¤Ï½é¿´¼Ô¤Ë
-         ¸«ÉÕ¤±¤é¤ì¤º¤Ëº¤¤ë»ö¤¬Â¿¤¤¤è¤¦¤Ê¤Î¤Ç¡¢ÌÜΩ¤Ä¤è¤¦¤Ë¥ª¥×¥·¥ç¥ó¤Î¾å¤«¤é
-         2ÈÖÌܤÈ3ÈÖÌܤ˻ý¤Ã¤ÆÍ褿¡£
-       - autopick ¤Ç¡¢lib/user/ ¤ò lib\user\ ¤ËÄûÀµ¡£¤½¤Î¾Ĺ¤¹¤®¤ë¹ÔÅù¤òÀ°Íý¡£
-
-       * Changelogs 1.4, lib/edit/e_info_j.txt 1.6:
-       Ä̾ï¤ÎÉð´ï¤Ë·ê·¡¤ê¤Î¥¨¥´¤¬½Ð¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£
-
-       * lib/file/a_high.txt 1.2, lib/file/a_low.txt 1.3, lib/file/a_med.txt 1.3, lib/file/w_high.txt 1.2, lib/file/w_low.txt 1.2, lib/file/w_med.txt 1.2:
-       ±Ñ¸ì¤Î¡ù̾¤ò³È½¼¡£
-
-2002-01-21  habu  <habu@cvs>
-
-       * configure.in 1.5, src/h-config.h 1.3:
-       mkstemp()¤Î̵ͭ¤ÎȽÄê¤òconfigure¤Ç¤ä¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/dungeon.c 1.7, src/externs.h 1.10, src/scores.c 1.3, src/util.c 1.5:
-       get_check_strict() ¤òºî¤Ã¤¿¡£mode¤Î»ØÄê¤Ë¤è¤Ã¤ÆESC¤ò¼õ¤±¤Ä¤±¤Ê¤¤¤è¤¦¤Ë¤·¤¿¤ê¡¢
-       'y'°ìʸ»ú¤Ç¤Ï¤Ê¤¯"yes"¤È3ʸ»úÆþÎϤ·¤Ê¤¤¤È¤¤¤±¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-       »àË´¸å¡¢¥¹¥³¥¢ÅÐÏ¿¤òʹ¤¤¤Æ¤¯¤ë¤È¤­¤Ë¡¢ESC¤ò¼õ¤±¤Ä¤±¤Ê¤¤¥â¡¼¥É¤Ç»ÈÍÑ¡£
-       ¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È¤Î¼ÁÌä¤Ç¤Ï"yes"¤òÍ׵᤹¤ë¥â¡¼¥É¤Ç»ÈÍÑ¡£
-       Â¾¤Ë¤â»È¤¤Æ»¤¢¤ë¤È»×¤¦¤¬¡¢¤Þ¤À¤³¤ÎÆó²Õ½ê¤À¤±¡£
-
-2002-01-21  habu  <habu@cvs>
-
-       * src/files.c 1.13: sprintf¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¹ç¤Ã¤Æ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-01-21  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.12, src/xtra2.c 1.6: - ±Ñ¸ìÈǤÎ'C'²èÌÌÄ´À°¡£
-       - ÆüÉÕɽ¼¨¤ò¼ÂÁõ¡£
-
-       * Changelogs 1.3, src/files.c 1.11: 'C'¤Î²èÌ̤ζõ¹Ô¤Î°ÌÃÖ¤òÊѤ¨¤Æ¤ß¤¿¡£
-       Changelogs¹¹¿·
-
-2002-01-20  habu  <habu@cvs>
-
-       * src/defines.h 1.7, src/dungeon.c 1.6:
-       update_time()¤Ç¡¢tmp¤Èstart_time¤¬Åù¤·¤«¤Ã¤¿¤é1Éåץ쥤»þ´Ö¤òÁý¤ä¤¹¥³¡¼¥É¤òºï½ü¤·¡¢¤«¤ï¤ê¤Ëµ¯Æ°»þ¤Ë¥×¥ì¥¤»þ´Ö¤ò1ÉÃÁý¤ä¤¹¤è¤¦¤ËÊѹ¹¡£
-
-2002-01-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.10: ±Ñ¸ìÈǤθ½ºßÃϤÎʸ¤ò˺¤ì¤Æ¤¤¤¿¤Î¤ÇÄɲá£
-
-       * src/cmd4.c 1.10, src/externs.h 1.9, src/files.c 1.9, src/spells2.c 1.4, src/xtra1.c 1.6, src/xtra2.c 1.5:
-       ¥­¥ã¥é¥¯¥¿¡¼¾ðÊó²èÌ̤òÊѹ¹¡£
-       ¥¿¡¼¥ó¿ôɽ¼¨¤ÏÆüÉդˤ¹¤ëͽÄê¤À¤¬¡¢¤Þ¤Àºî¶È¤·¤Æ¤Ê¤¤¡£
-
-2002-01-20  henkma  <henkma@cvs>
-
-       * src/melee1.c 1.3:
-       ¥â¥ó¥¹¥¿¡¼¤Î½¼Å¶¥¨¥Í¥ë¥®¡¼¤òÃ¥¤¦¹¶·â¤Ë¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤ò½¤Àµ(ËâË¡ËÀ¤¬nËܽŤʤäƤë¤È¡¢ËÜÍèµÛ¤ï¤ì¤ë¤Ù¤­Î̤ÎnÇܵۤï¤ì¤Æ¤¿)
-
-2002-01-20  Takeshi Mogami  <mogami@cvs>
-
-       * src/tables.c 1.9, lib/help/readme.txt 1.2, src/cmd4.c 1.9, src/files.c 1.8:
-       - ¼«Æ°Ç˲õ¥ª¥×¥·¥ç¥ó¤Î¥¿¥¤¥È¥ë¤ò¾¯¤·½¤Àµ¡¢
-       - ¥Ø¥ë¥×¥·¥¹¥Æ¥à¤ÇESC¤ò¡Ö¥Ø¥ë¥×¤Î½ªÎ»¡×¤«¤é¡¢¡Ö°ì¤Ä°ÊÁ°¤Î²èÌ̤ËÌá¤ë¡×¤ËÊѹ¹¡£
-         °ìÈÖ¾å¤Î²èÌ̤ÇESC¤ò²¡¤¹¤È½ªÎ»¡£¤Þ¤¿¡¢'q'¤ò²¡¤·¤Æ¤â½ªÎ»¡£
-       - ´Ö°ã¤Ã¤Æreadme.txt¤òhelp¥Ç¥£¥ì¥¯¥È¥ê¤Ëadd¤·¤¿¤Þ¤Þ¤À¤Ã¤¿¤Î¤òºï½ü¡£
-
-2002-01-20  habu  <habu@cvs>
-
-       * src/init1.c 1.9:
-       add_name(),add_text()¤òºî¤Ã¤Æ¡¢Ì¾Á°¤ÈÀâÌÀ¤Î³ÊǼ¤ò´Ø¿ô²½¤·¤¿¡£
-
-       * src/object2.c 1.8:
-       ¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ë¤Ê¤ë³ÎΨ¤òÀ°Íý¡£(Éð´ï1/40¡¢µÝ¡¦Ëɶñ1/20)
-       ¤Ä¤¤¤Ç¤Ë¥¤¥ó¥Ç¥ó¥È¤òÀ°Íý¡£
-
-2002-01-19  Takeshi Mogami  <mogami@cvs>
-
-       * lib/help/help.hlp 1.3:
-       ´Ö°ã¤Ã¤ÆÆüËܸì¤Îreadme.txt¤ò»²¾È¤·¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-       * lib/help/help.hlp 1.2, lib/help/jhelp.hlp 1.2, readme.txt 1.2, src/files.c 1.7:
-       ¥ª¥ó¥é¥¤¥ó¥Ø¥ë¥×'?'¥³¥Þ¥ó¥É¤«¤é¡¢readme.txt ¤È autopick.txt¤ò»²¾È
-       ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/files.c 1.6:
-       ¶á¤¯¹Ô¤Ê¤¦¥­¥ã¥é¥¯¥¿¡¼¾ðÊó'C'¤Î²èÌ̤ÎÊѹ¹¤ËÈ÷¤¨¤Æ¡¢É½¼¨¤¹¤ë³Æ¹Ô¤Î
-       °ÌÃÖ¤ä¥é¥Ù¥ë¤òÇÛÎó¤Ç´ÉÍý¤¹¤ë¤è¤¦¤Ë½ñ¤­´¹¤¨¡£
-
-       * src/flavor.c 1.5: @nothere¤µ¤ó¤Î¥Ñ¥Ã¥Á¡£¶â̵¹¤¤È¶âÍ­¹¤¤ò²«¿§¤Ë¤¹¤ë¡£
-
-       * src/store.c 1.2:
-       @nothere¤µ¤ó¤Î¥Ñ¥Ã¥Á¡£Å¹¤ä²È¤Ç¥¢¥¤¥Æ¥à'z'¤òÇ㤨¤Æ¤·¤Þ¤¦¥Ð¥°¤Î½¤Àµ¡£
-
-       * Changelogs 1.2, src/init1.c 1.8, src/mind.c 1.3, src/tables.c 1.8, src/types.h 1.6:
-       »È¤Ã¤Æ¤¤¤Ê¤¤ E_name ¤òÁ´¤Æºï½ü¡£
-
-       * src/rooms.c 1.5:
-       r_info ¤Ç Monk -> monk ¤Ë½¤Àµ¤·¤¿¤Î¤Ç¤½¤ì¤Ë¹ç¤ï¤»¤Æ¶µ²ñ¤Î¥³¡¼¥É¤ò½¤Àµ¡£
-
-       * src/mspells3.c 1.3, src/tables.c 1.7: ÀÄËâ½Ñ»Õ¤ÎËâË¡¤Î±Ñ¸ì̾¤ò½¤Àµ¡£
-
-       * src/birth.c 1.10: À­³Ê¤ÎÁªÂò¤ÇÀâÌÀʸ¤ÎÉý¤¬¹­¤¹¤®¤ë¤Î¤Ç½¤Àµ¡£
-
-2002-01-18  Takeshi Mogami  <mogami@cvs>
-
-       * Changelogs 1.1: ChangeLogs¤ò
-       rcs2log | sed s#/www/cvsroot/Hengband/##g > Changelogs
-       ¤Î¤è¤¦¤ËÆþ¤ì¤ë»ö¤Ë¤·¤Þ¤·¤ç¤¦¡£
-
-       * src/object2.c 1.7:
-       ¥¨¥´¥¢¥¤¥Æ¥à¤ÎÀ¸À®»þ¤Ë¥ì¥Ù¥ë¤Ë¤è¤Ã¤Æ½Ð¸½¤òÀ©¸Â¤¹¤ë¥³¡¼¥É¤¬
-       ¤¢¤Ã¤¿¤¬¡¢¥ì¥Ù¥ë¤Ïȯư¤Ê¤É¤ÎÊ̤λö¤Ë»È¤¦¤è¤¦¤Ê¤Î¤Ç¥³¥á¥ó¥È¥¢¥¦¥È¡£
-
-       * lib/edit/e_info_j.txt 1.5, src/object2.c 1.6:
-       ¥ì¥¢¥ê¥Æ¥£¤ò´Ö°ã¤¨¤Æbyte¤ÎÈϰϤè¤êÂ礭¤¯¤·¤Æ¤·¤Þ¤Ã¤¿¤Æ¤¤¤¿¤Î¤Ç½¤Àµ¡£
-
-2002-01-18  henkma  <henkma@cvs>
-
-       * src/birth.c 1.9:
-       ¥­¥ã¥é¥á¥¤¥¯¤Î¥ª¡¼¥È¥í¡¼¥ë¿ôÃÍÀßÄê°Ê³°¤Î¤È¤³¤í¤âBEEP¤Î¥Ð¥°¤¬¤¢¤Ã¤¿¤Î¤Ç½¤Àµ¡£
-       (¥«¡¼¥½¥ë°ÜÆ°¤Î¤¿¤á¤Ë2468¤ò²¡¤¹¤Ê¤É¡¢Ê̤ÎÀßÄê²èÌ̤˰ܤé¤Ê¤¤¹ÔÆ°Á´¤Æ¤ËBEEP¤¬½Ð¤Æ¤Þ¤·¤¿¡£)
-
-2002-01-18  habu  <habu@cvs>
-
-       * configure.in 1.4, src/Makefile.am 1.3:
-       CFLAGS¤Ø¤Î-fno-strength-reduce¤ÎÄɲäòconfigure.in¤Ç¹Ô¤Ê¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-2002-01-18  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/e_info_j.txt 1.4, src/defines.h 1.6, src/object2.c 1.5:
-       switchʸ¤Ç½ñ¤«¤ì¤Æ¤¤¤¿¡¢À¸À®¤¹¤ë¥¨¥´¥¢¥¤¥Æ¥à¤òÁª¤Ö¥³¡¼¥É¤òe_info¤Ë½ñ¤¤¤¿
-       rarity¤ò¸µ¤Ë¤·¤Æ·è¤á¤ë¤è¤¦¤Ë½ñ¤­ÊѤ¨¡£
-       ¤¿¤À¤·¡¢»ØÎؤȥ¢¥ß¥å¥ì¥Ã¥È¤ÏÎ㳰Ū¤Ê½èÍý¤¬Â¿¤¹¤®¤ë¤Î¤Ç¤È¤ê¤¢¤¨¤ºÄü¤á¡£½ñ¤­ÊѤ¨¤Ï¤Ê¤·¡£
-
-       * src/birth.c 1.8, src/defines.h 1.5, src/externs.h 1.8, src/init1.c 1.7, src/load.c 1.6, src/monster1.c 1.5, src/monster2.c 1.5, src/xtra2.c 1.4, lib/edit/r_info_j.txt 1.7:
-       init_r_info_txt() ¤ÎMega Hack¤ò̵¤¯¤¹¤è¤¦¤Ë½¤Àµ¡£
-       - RF8_WILD_DUNGEON ¤Ï RF8_WILD_ONLY¤Ë²þ̾¡£
-       - WILD_TOO ¥Õ¥é¥° ¤À¤±¤¬¤¢¤Ã¤Æ³°¤ÎWILD_* ¥Õ¥é¥°¤¬¤Ê¤¤¥â¥ó¥¹¥¿¡¼¤ÏÁ´¤Æ
-         ¤ÎWILD_* ¥Õ¥é¥°¤òÉÕ¤±¤¿¤¹½èÍý¤¬¤¢¤Ã¤¿¤¬¡¢Â¾¤Ë¤ÏÁ´¤¯WILD_TOO¤ò»È¤Ã¤Æ
-         ¤¤¤Ê¤«¤Ã¤¿¤Î¤Ç r_info_j.txt ¤ò½ñ¤­ÊѤ¨¤Æ ´¹¤ï¤ê¤Ë WILD_ALL ¤òƳÆþ¡£
-
-2002-01-18  henkma  <henkma@cvs>
-
-       * src/birth.c 1.7:
-       ¥ª¡¼¥È¥í¡¼¥ë¤Î¿ôÃÍÀßÄê¤Î»þ¡¢·Ù¹ðBEEP¤Î¥ª¥×¥·¥ç¥ó¤òON¤Ë¤·¤Æ¤ë¤ÈËؤɤΥ­¡¼¤ÇBEEP½Ð¤Æ¤·¤Þ¤¦¤Î¤ò¡¢ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¥­¡¼¤ò²¡¤·¤¿»þ¤À¤±½Ð¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-18  habu  <habu@cvs>
-
-       * src/Makefile.am 1.2, src/cmd3.c 1.5, src/externs.h 1.7, src/init.h 1.1, src/init1.c 1.6, src/init2.c 1.5, src/rooms.c 1.4, src/types.h 1.5, src/variable.c 1.7, src/wizard1.c 1.4:
-       *_info¤Î½é´ü²½¥³¡¼¥É¤òÂçÉý¤Ë½ñ¤­ÊѤ¨¤Æ¤¢¤ëÄøÅ٤ޤȤ᤿¡£(ºÇ¿·ÈÇV¤äZ¤ò»²¹Í¤Ë)
-
-       * lib/edit/Makefile.am 1.3, lib/edit/s_info_j.txt 1.1, lib/edit/se_info_j.txt 1.3, lib/edit/we_info_j.txt 1.3, src/birth.c 1.6, src/cmd1.c 1.6, src/cmd2.c 1.5, src/cmd4.c 1.8, src/cmd5.c 1.6, src/dungeon.c 1.5, src/externs.h 1.6, src/init1.c 1.5, src/init2.c 1.4, src/load.c 1.5, src/types.h 1.4, src/variable.c 1.6, src/wizard2.c 1.4, src/xtra1.c 1.5:
-       se_info(µ»Ç½½ÏÎýÅÙ)¤Èwe_info(Éð´ï½ÏÎýÅÙ)¤òs_info¤ËÅý¹ç¡£
-
-2002-01-17  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/e_info_j.txt 1.3.4.1, src/defines.h 1.4.4.1, src/object2.c 1.4.4.1:
-       ¥¨¥´¥¢¥¤¥Æ¥à¤Î¼ïÎà¤Î·èÄê¤òswitchʸ¤Ë°Í¸¤»¤º¡¢¥ì¥¢¥ê¥Æ¥£¤Ç·è¤á¤ë¤è¤¦¤Ë½¤Àµ¡£
-       ¥³¡¼¥É¤À¤±Â¸ºß¤·¤Æ¤¤¤¿*¥ª¡¼¥¯¥¹¥ì¥¤¥ä¡¼*Åù¤¬Í­¸ú¤Ë¤Ê¤Ã¤¿¤¬¡¢É¬Íפʤée_info.txt
-       ¤ò¤¤¤¸¤Ã¤Æ̵¸ú¤Ë¤¹¤ì¤ÐÎɤ¤¡£
-
-2002-01-17  habu  <habu@cvs>
-
-       * src/bldg.c 1.4, src/cmd3.c 1.4, src/cmd4.c 1.7, src/cmd6.c 1.5, src/spells3.c 1.6, src/wizard1.c 1.3:
-       C_MAKE¤ËÂбþ¤¹¤ëC_KILL¤¬¤Ê¤¯¤Æ¥á¥â¥ê¥ê¡¼¥¯¤·¤Æ¤¤¤¿¾ì½ê¤ò¤¹¤Ù¤Æ½¤Àµ¡£
-
-       * src/init1.c 1.4:
-       k_info¤À¤±name_size¤ÎÎΰ褬­¤ê¤Ê¤¤»þ¤Ërealloc¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤¿¤Î¤ò¡¢Â¾¤ÈƱ¤¸¤¯¥¨¥é¡¼¤òÊÖ¤¹¤è¤¦¤Ë¤·¤¿¡£¤Ê¤¼k_info¤À¤±ÆÃÊÌ°·¤¤¤µ¤ì¤Æ¤¤¤¿¤Î¤«Á´¤¯ÉÔÌÀ¡£
-
-       * src/report.c 1.5: Vasprintf¤Ç³ÎÊݤ¹¤ëÎΰè¤ò1024¥Ð¥¤¥È¤Ë¤·¤¿¡£
-
-2002-01-17  Takeshi Mogami  <mogami@cvs>
-
-       * configure.in 1.3, src/report.c 1.4:
-       vasprint()´Ø¿ô¤Î¸ºß¤ò ./configure ¤ò»È¤Ã¤ÆÃΤë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-17  habu  <habu@cvs>
-
-       * src/init2.c 1.3:
-       Çîʪ´Û¤ÏBM¤ä²æ¤¬²È¤ÈƱ¤¸¤¯Å¹¤Î¥¢¥¤¥Æ¥à¤ò·èÄꤹ¤ë¥Æ¡¼¥Ö¥ë¤ÏɬÍפʤ¤¤Î¤Ç³ÎÊݤ·¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-
-       * lib/edit/Makefile.am 1.2:
-       tables.c¤«¤é³°¤Ë½Ð¤·¤¿¥Õ¥¡¥¤¥ë¤òEXTRA_DIST¤ËÄɲá£
-
-       * src/types.h 1.3, src/variable.c 1.5, src/wizard2.c 1.3, src/xtra1.c 1.4, lib/edit/m_info_j.txt 1.2, lib/edit/se_info_j.txt 1.2, lib/edit/we_info_j.txt 1.2, src/birth.c 1.5, src/cmd1.c 1.5, src/cmd2.c 1.4, src/cmd4.c 1.6, src/cmd5.c 1.5, src/dungeon.c 1.4, src/externs.h 1.5, src/init1.c 1.3, src/init2.c 1.2, src/load.c 1.4, src/tables.c 1.6:
-       branch-habu-tables-improve»Þ¤Ç¤ÎÊѹ¹¤ò´´¤Ë¥Þ¡¼¥¸¡£
-
-       * lib/edit/misc_j.txt 1.3.2.3, src/externs.h 1.3.2.4, src/init1.c 1.2.6.4, src/init2.c 1.1.1.1.6.4, src/variable.c 1.4.2.4:
-       max_we_idx, max_se_idx¤Ï»È¤ï¤Ê¤¤¤Ç¡¢MAX_CLASS¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/load.c 1.3.2.4, src/tables.c 1.4.2.3, src/variable.c 1.4.2.3:
-       ËâË¡¤Î¾ðÊó¤Î¥Æ¡¼¥Ö¥ë¤òtables.c¤«¤élib/edit/m_info_j.txt¤Ë°ÜÆ°¤·¤¿¡£
-
-       * lib/edit/m_info_j.txt 1.1: New file.
-
-       * lib/edit/m_info_j.txt 1.1.2.1, src/birth.c 1.4.2.4, src/externs.h 1.3.2.3, src/init1.c 1.2.6.3, src/init2.c 1.1.1.1.6.3:
-       ËâË¡¤Î¾ðÊó¤Î¥Æ¡¼¥Ö¥ë¤òtables.c¤«¤élib/edit/m_info_j.txt¤Ë°ÜÆ°¤·¤¿¡£
-
-       * src/birth.c 1.4.2.3, src/dungeon.c 1.3.2.1, src/load.c 1.3.2.3:
-       ¥»¥¯¥·¡¼¥®¥ã¥ë¤Ï¥à¥Á¤Îµ»Ç½¤¬ºÇÂç¤Þ¤Ç¾å¤¬¤ë¤è¤¦¤Ë¥Æ¡¼¥Ö¥ë¤òÊѹ¹¤¹¤ë¥¿¥¤¥ß¥ó¥°¤òÊѹ¹¡£¤³¤¦¤·¤Ê¤¤¤È¼¡¤Î¥­¥ã¥é¤Ç¤âµ»Ç½¤¬ºÇÂç¤Þ¤Ç¾å¤¬¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦(°ìÅÙ¥»¡¼¥Ö¤¹¤ë¤ÈÌá¤ë¤¬)¡£
-
-       * src/types.h 1.2.2.2, src/variable.c 1.4.2.2, src/wizard2.c 1.2.2.2, src/cmd4.c 1.5.2.2, src/cmd5.c 1.4.2.1, src/externs.h 1.3.2.2, src/init1.c 1.2.6.2, src/init2.c 1.1.1.1.6.2, src/load.c 1.3.2.2, src/tables.c 1.4.2.2:
-       Éð´ï½ÏÎýÅÙ¤ÈƱÍͤ˵»Ç½½ÏÎýÅÙ¤âtables.c¤«¤élib/edit¤Ë°ÜÆ°¡£
-
-       * lib/edit/se_info_j.txt 1.1: New file.
-
-       * lib/edit/misc_j.txt 1.3.2.2, lib/edit/se_info_j.txt 1.1.2.1, src/birth.c 1.4.2.2, src/cmd1.c 1.3.2.2, src/cmd2.c 1.3.2.2:
-       Éð´ï½ÏÎýÅÙ¤ÈƱÍͤ˵»Ç½½ÏÎýÅÙ¤âtables.c¤«¤élib/edit¤Ë°ÜÆ°¡£
-
-       * lib/edit/a_info_j.txt 1.4:
-       ¥Û¥ë¥³¥ì¥¹¤Î½Å¤µ¤ò½¤Àµ¡£(¥Ù¡¼¥¹¥¢¥¤¥Æ¥à¤ò¥¨¥ë¥Õ¤Î¥¯¥í¡¼¥¯¤ËÊѹ¹¤·¤¿»þ¤Ë½Å¤µ¤òÊѤ¨Ëº¤ì¤Æ¤¤¤¿)
-
-       * src/externs.h 1.3.2.1, src/init1.c 1.2.6.1, src/init2.c 1.1.1.1.6.1, src/load.c 1.3.2.1, src/tables.c 1.4.2.1, src/types.h 1.2.2.1, src/variable.c 1.4.2.1, src/wizard2.c 1.2.2.1, src/xtra1.c 1.3.2.1:
-       Éð´ï¤Î½ÏÎýÅ٤Υơ¼¥Ö¥ë¤òtables.c¤Ç¤Ï¤Ê¤¯lib/edit°Ê²¼¤ËÃÖ¤¯¤è¤¦¤Ë¤·¤¿¡£
-       ½ÏÎýÅ٥ơ¼¥Ö¥ë¤Ïweapon_exp_table¤È¤¤¤¦·¿¤ÎÊÑ¿ô¤Ë³ÊǼ¤µ¤ì¤ë¡£
-
-       * lib/edit/we_info_j.txt 1.1: New file.
-
-       * lib/edit/misc_j.txt 1.3.2.1, lib/edit/we_info_j.txt 1.1.2.1, src/birth.c 1.4.2.1, src/cmd1.c 1.3.2.1, src/cmd2.c 1.3.2.1, src/cmd4.c 1.5.2.1:
-       Éð´ï¤Î½ÏÎýÅ٤Υơ¼¥Ö¥ë¤òtables.c¤Ç¤Ï¤Ê¤¯lib/edit°Ê²¼¤ËÃÖ¤¯¤è¤¦¤Ë¤·¤¿¡£
-       ½ÏÎýÅ٥ơ¼¥Ö¥ë¤Ïweapon_exp_table¤È¤¤¤¦·¿¤ÎÊÑ¿ô¤Ë³ÊǼ¤µ¤ì¤ë¡£
-
-2002-01-17  Takeshi Mogami  <mogami@cvs>
-
-       * src/externs.h 1.4, src/object1.c 1.5, src/spells3.c 1.5:
-       ´ÕÄꤹ¤ëʪ¤¬¤Ê¤¤¤È¤­¡¢¥­¥ã¥ó¥»¥ë°·¤¤¤»¤º¤ËÁ´¤Æ¤Î¥¢¥¤¥Æ¥à¤òÁªÂò²Äǽ¤Ë¤¹¤ë¡£
-
-       * src/object1.c 1.4:
-       @0 Åù¤Î¹ï¤ß¤¬¤¢¤ë¥¢¥¤¥Æ¥à¤¬Ê£¿ô¤¢¤ë¤È¤­¤Ë¡¢'0'¤ò²¡¤¹¤È¡¢
-       ÁªÂò»è¤Ë´Þ¤Þ¤ì¤Ê¤¤¥¢¥¤¥Æ¥à¤ËÀè¤Ë¥Þ¥Ã¥Á¤·¤Æ¤·¤Þ¤¦»ö¤¬¤¢¤ë¤Î¤ò½¤Àµ¡£
-       Î㤨¤Ð¡¢¥¯¥í¥¹¥Ü¥¦¤ÎÌð{@f0}¤ÈÌð{@f0}¤ò»ý¤Ã¤Æ¤¤¤ë¤È¤­¤ËÌð¤ò0¤ÇÁªÂò¤Ç¤­¤Ê¤«¤Ã¤¿¡£
-
-       * lib/edit/k_info_j.txt 1.4, src/spellstips.h 1.4, src/tables.c 1.5:
-       Àç½Ñ¤Î¼¡¸µ¤ÎÈâÅù¤ÎÊѹ¹¤È¡¢¹õÁõ«¤ÎÄɲä˱ѸìÈǤâÂбþ¡£
-
-       * src/cmd3.c 1.3: '/'¥³¥Þ¥ó¥É¤Î̾Á°¤Ç¸¡º÷ ^M ¤Ç¤Î¥á¥Ã¥»¡¼¥¸½¤Àµ¡£
-
-2002-01-16  Takeshi Mogami  <mogami@cvs>
-
-       * autopick.txt 1.4, autopick_eng.txt 1.5, src/cmd1.c 1.4:
-       ¡Ö¼ý½¸Ãæ¡×¤ò²þÎÉ¡¢¡Ökval¤¬Æ±¤¸¡×¤À¤±¤Ç¤Ê¤¯¼ÂºÝ¤Ë½Å¤Í¤é¤ì¤ë¤â¤Î¤À¤±¤¬¥Þ¥Ã¥Á¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£¡£
-
-       * src/spells3.c 1.4:
-       ´Ê°×´ÕÄꤵ¤ì¤¿¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ò´ÕÄꤷ¤¿¤È¤­¡¢¡Ö¡Á¤òȯ¸«¤·¤¿¡×¤Îµ­Ï¿¤¬
-       Æüµ­¤Ë»Ä¤é¤Ê¤«¤Ã¤¿¤Î¤ò½¤Àµ¡£
-
-       * lib/edit/a_info_j.txt 1.3, lib/edit/k_info_j.txt 1.3, lib/edit/misc_j.txt 1.3, lib/edit/r_info_j.txt 1.6, src/artifact.c 1.4, src/cmd5.c 1.4, src/cmd6.c 1.4, src/defines.h 1.4, src/melee2.c 1.3, src/monster2.c 1.4, src/mspells1.c 1.3, src/object2.c 1.4, src/spells3.c 1.3, src/spellstips.h 1.3, src/tables.c 1.4:
-       fix2r3¤Ë¤ª¤±¤ë¡¢hoge¤µ¤ó¤ÎÊѹ¹¤ò¥Þ¡¼¥¸¡£
-
-       * src/melee2.c 1.1.1.1.4.2, src/monster2.c 1.2.4.2, src/mspells1.c 1.1.1.1.4.2, src/object2.c 1.2.4.2, src/spells3.c 1.1.1.1.4.2, src/spellstips.h 1.2.4.1, src/tables.c 1.2.4.2, src/artifact.c 1.2.4.2, src/cmd3.c 1.1.1.1.4.2, src/cmd5.c 1.2.4.2, src/cmd6.c 1.2.4.2, src/defines.h 1.2.4.2, lib/edit/a_info_j.txt 1.1.1.1.4.2, lib/edit/k_info_j.txt 1.1.1.1.4.4, lib/edit/misc_j.txt 1.1.1.1.4.4, lib/edit/r_info_j.txt 1.1.1.1.4.4, mkinstalldirs 1.1.1.1.4.3:
-       £±·î16Æü¸½ºß¤Îhoge¤µ¤ó¤Î¼ê¸µ¤Î¥½¡¼¥¹¡£
-
-       * autopick.txt 1.3, autopick_eng.txt 1.4:
-       ¡Ö̵ÌäΡפˤĤ¤¤Æ¼ÂÎã¤ÎÃæ¤ÇÀâÌÀʸ¤ò³È½¼¡£
-
-2002-01-16  habu  <habu@cvs>
-
-       * src/cmd4.c 1.5:
-       remove_auto_dump()¤Î¥Õ¥¡¥¤¥ë¥³¥Ô¡¼Éôʬ¤Ç fd_copy() ¤ò»È¤¦¤è¤¦¤Ë¤·¤¿¡£
-
-       * src/util.c 1.4:
-       ¿÷·¿¤À¤±Â¸ºß¤·¤Æ¤¤¤¿¡¢¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼¤¹¤ë´Ø¿ô fd_copy() ¤ò¼ÂÁõ¤·¤¿¡£
-
-2002-01-16  Takeshi Mogami  <mogami@cvs>
-
-       * autopick_eng.txt 1.3: Îã¤Ë'('¤Î»ÈÍѤòÄɲá£
-
-2002-01-16  habu  <habu@cvs>
-
-       * src/flavor.c 1.4:
-       ±Ñ¸ìÈǤǡ¢¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ë¥Õ¥§¥¤¥¯¹ï¤ß¤Ç¤­¤Ê¤¤¤è¤¦¤Ë¤·¤¿¡£
-       ¤Þ¤¿¡¢¥¨¥´¤Ë¥Õ¥§¥¤¥¯¹ï¤ß¤ò¤·¤¿»þ¤Ïñ¤ËºÇ¸å¤ËÄɲ乤ë¤è¤¦¤Ë¤·¤¿¡£
-
-       * configure.in 1.2: --disable-japanese¤ÎÀâÌÀ¤ò½¤Àµ¡£
-       ¸Å¤¤(?)FreeBSD¤ÇLocale¤ò»È¤¨¤ë¤è¤¦¤Ëxpg4¥é¥¤¥Ö¥é¥ê¤Î¥Á¥§¥Ã¥¯¤òÄɲá£
-
-       * src/autoconf.h.in 1.2: ¤³¤Î¥Õ¥¡¥¤¥ë¤âauto*´Ø·¸¤Î¥Õ¥¡¥¤¥ë¤Ê¤Î¤Çºï½ü¡£
-
-       * src/stamp-h.in 1.2: ¤³¤ì¤âautomakeÅù¤¬¼«Æ°Åª¤ËÀ¸À®¤¹¤ë¤Î¤Çºï½ü
-
-       * Makefile.in 1.3: Àè¤Îºî¶È¤Ç¾Ã¤·Ëº¤ì¤Æ¤¤¤¿¥Õ¥¡¥¤¥ë¤òºï½ü¡£
-
-       * Makefile.in 1.2, aclocal.m4 1.2, bootstrap 1.1, configure 1.2, install-sh 1.2, lib/Makefile.in 1.2, lib/apex/Makefile.in 1.2, lib/bone/Makefile.in 1.2, lib/data/Makefile.in 1.2, lib/edit/Makefile.in 1.2, lib/file/Makefile.in 1.2, lib/help/Makefile.in 1.2, lib/info/Makefile.in 1.2, lib/pref/Makefile.in 1.2, lib/save/Makefile.in 1.2, lib/script/Makefile.in 1.2, lib/user/Makefile.in 1.2, lib/xtra/Makefile.in 1.2, lib/xtra/font/Makefile.in 1.2, lib/xtra/graf/Makefile.in 1.2, lib/xtra/music/Makefile.in 1.2, lib/xtra/sound/Makefile.in 1.2, missing 1.2, mkinstalldirs 1.3, src/Makefile.in 1.2:
-       automake,autoconfÅù¤Ë¤è¤Ã¤Æºî¤é¤ì¤ë¥Õ¥¡¥¤¥ë¤òºï½ü¡£¤³¤ì¤é¤Ïcvs¤Î¥ê¥Ý¥¸¥È¥ê¤ËÆþ¤ì¤ë¤Ù¤­¥Õ¥£¥¢¥ë¤Ç¤Ï¤Ê¤¤¡£
-       ¤«¤ï¤ê¤Ë¡¢¼«Æ°Åª¤Ë¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤òÀ¸À®¤¹¤ë¥¹¥¯¥ê¥×¥Èbootstrap¤òÄɲá£
-
-2002-01-16  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.5:
-       ±Ñ¸ìÈǤΥâ¥ó¥¹¥¿¡¼¤Î̾Á°¤Î¥­¥ã¥Ô¥¿¥é¥¤¥º¤òÅý°ì¡£
-       *band ¤Î¥­¥ã¥Ô¥¿¥é¥¤¥º¤Ï°Ê²¼¤Î¥ë¡¼¥ë¤Î¤è¤¦¤À¡£
-       - ¥â¥ó¥¹¥¿¡¼Ì¾¤ÎÀèƬ¤ÏÂçʸ»ú(ÅöÁ³)¡¢
-       - ¸Çͭ̾»ì¤ÎƬ¤ÏÂçʸ»ú(dragon¡¢trollÅù ¤Ï°ìÈÌ̾»ì¤È¸«¤Ê¤¹¡£)
-       - ¥æ¥Ë¡¼¥¯¤Î̾Á°¤ÏÁ´¤Æ¤Îñ¸ì¤òÂçʸ»ú(¤¿¤À¤·¡¢of, the, in Åù¤ò½ü¤¯)
-       - Wyrm¤Î̾Á°¤â¥æ¥Ë¡¼¥¯¤ÈƱÍͤ˰·¤¦¡£
-       - ¤½¤Î¾¤ÏÁ´¤Æ¾®Ê¸»ú¡£
-
-2002-01-16  henkma  <henkma@cvs>
-
-       * src/cmd4.c 1.4: ¾ðÊó¥³¥Þ¥ó¥É¤Îknown uniques¤òremaining uniques¤Ë
-
-       * lib/edit/r_info_j.txt 1.4:
-       Ashram(ÆüËܸì̾:¹õ°á¤Îµ³»Î¡Ø¥¢¥·¥å¥é¥à¡Ù)¤ò Ashram, the Ebony Knight ¤Ë
-
-2002-01-15  habu  <habu@cvs>
-
-       * src/monster1.c 1.4:
-       ±Ñ¸ìÈǤǥ¹¥¿¡¼¥Ð¡¼¥¹¥È¤Î»×¤¤½Ð¤¬É½¼¨¤µ¤ì¤Ê¤¤¥Ð¥°¤ò½¤Àµ¡£
-
-       * .cvsignore 1.2, lib/.cvsignore 1.2, lib/apex/.cvsignore 1.2, lib/bone/.cvsignore 1.2, lib/data/.cvsignore 1.2, lib/edit/.cvsignore 1.2, lib/file/.cvsignore 1.2, lib/help/.cvsignore 1.2, lib/info/.cvsignore 1.2, lib/pref/.cvsignore 1.2, lib/save/.cvsignore 1.2, lib/script/.cvsignore 1.2, lib/user/.cvsignore 1.2, lib/xtra/.cvsignore 1.2, lib/xtra/font/.cvsignore 1.2, lib/xtra/graf/.cvsignore 1.2, lib/xtra/music/.cvsignore 1.2, lib/xtra/sound/.cvsignore 1.2, src/.cvsignore 1.2:
-       ¤ä¤Ï¤ê³Æ¼«¤ÎHOME¤Ç»ØÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¤Î¤Ç¡¢.cvsignore¤òºï½ü¡£
-
-       * lib/xtra/font/.cvsignore 1.1, lib/xtra/graf/.cvsignore 1.1, lib/xtra/music/.cvsignore 1.1, lib/xtra/sound/.cvsignore 1.1, src/.cvsignore 1.1, .cvsignore 1.1, lib/.cvsignore 1.1, lib/apex/.cvsignore 1.1, lib/bone/.cvsignore 1.1, lib/data/.cvsignore 1.1, lib/edit/.cvsignore 1.1, lib/file/.cvsignore 1.1, lib/help/.cvsignore 1.1, lib/info/.cvsignore 1.1, lib/pref/.cvsignore 1.1, lib/save/.cvsignore 1.1, lib/script/.cvsignore 1.1, lib/user/.cvsignore 1.1, lib/xtra/.cvsignore 1.1:
-       commit update¤Î»þ¤Ë´Ø·¸¤Ê¤¤¥Õ¥¡¥¤¥ë¤ò̵»ë¤¹¤ë¤è¤¦¤Ë.cvsignore¤òÀßÄê¡£
-
-2002-01-15  Takeshi Mogami  <mogami@cvs>
-
-       * lib/edit/r_info_j.txt 1.3: Wong -> Richard Wong
-
-       * src/variable.c 1.4: $GRAF¤Î¥Ç¥Õ¥©¥ë¥È¤ÎÃͤò "ascii" ¤ËÊѹ¹¡£
-       º£Ëø¤Ï°ÕÌ£¤Ê¤¯"old"¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢8x8¥¿¥¤¥ë¤ò»ÈÍÑÃæ¤Ê¤Î¤«ascii¥°¥é¥Õ¥£¥Ã¥¯¤Ê¤Î¤«
-       prf¥Õ¥¡¥¤¥ë¤ÎÃæ¤ÇȽÊ̤Ǥ­¤Ê¤«¤Ã¤¿¡£
-
-       * src/files.c 1.5:
-       ¤Ê¤¼¤«¡¢REALM1 REALM2 ¤Î½èÍý¤¬½ÅÊ£¤·¤Æ¤¤¤¿¤Î¤ÇÊÒÊýºï½ü¡£¥¿¥¤¥ë¥°¥é¥Õ¥£¥Ã¥¯»ÈÍÑÃæ¤Ç¤â¥À¥ó¥×¥Õ¥¡¥¤¥ë¤ÎÂÑÀ­É½¼¨Íó¤Î¾å¤¬Ê¸»ú²½¤±¤·¤Ê¤¤¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-15  iks  <iks@cvs>
-
-       * src/cave.c 1.5: ²þ¹Ô¥³¡¼¥Éľ¤·¤¿¡¥
-
-2002-01-15  Takeshi Mogami  <mogami@cvs>
-
-       * src/files.c 1.4:
-       ¥ª¥×¥·¥ç¥ó¤Î̾Á°¤òÊѤ¨¤¿¤È¤­¡¢¸Å¤¤Ì¾Á°¤ÎÀßÄê¤ò´Þ¤à prf ¥Õ¥¡¥¤¥ë¤òºÇ¸å¤Þ¤Ç
-       Æɤ߹þ¤Þ¤º¤ËÌäÂê¤òµ¯¤¹¤Î¤Ç¡¢¥ª¥×¥·¥ç¥óÀßÄê¹Ô¤Î¥¨¥é¡¼¤ÇÆɤ߹þ¤ß¤ò»ß¤á¤º¤Ë
-       Ã±¤Ë̵»ë¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-2002-01-15  iks  <iks@cvs>
-
-       * src/cave.c 1.4: 'M'¥³¥Þ¥ó¥É¤ÎÆüËܸì¥á¥Ã¥»¡¼¥¸¤Î½¤Àµ
-
-2002-01-13  iks  <iks@cvs>
-
-       * src/birth.c 1.4: ¥«¡¼¥½¥ë¥­¡¼¤Ç¥­¥ã¥é¥¯¥¿¤òºîÀ®¤Ç¤­¤ë¤è¤¦¤Ë¹¹¿·¡£
-
-2002-01-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/racial.c 1.2, src/report.c 1.3, src/rooms.c 1.3, src/save.c 1.2, src/spells1.c 1.3, src/spells2.c 1.3, src/spells3.c 1.2, src/tables.c 1.3, src/types.h 1.2, src/util.c 1.3, src/variable.c 1.3, src/wild.c 1.3, src/wizard2.c 1.2, src/xtra1.c 1.3, src/xtra2.c 1.3, src/z-form.c 1.2, src/cmd6.c 1.3, src/defines.h 1.3, src/dungeon.c 1.3, src/effects.c 1.3, src/externs.h 1.3, src/files.c 1.3, src/flavor.c 1.3, src/generate.c 1.2, src/grid.c 1.2, src/h-config.h 1.2, src/hissatsu.c 1.2, src/inet.c 1.3, src/load.c 1.3, src/main-dos.c 1.2, src/main-win.c 1.3, src/makefile.dos 1.2, src/makefile.ibm 1.2, src/makefile.std 1.2, src/melee1.c 1.2, src/melee2.c 1.2, src/mind.c 1.2, src/mindtips.h 1.2, src/monster1.c 1.3, src/monster2.c 1.3, src/mspells1.c 1.2, src/mspells2.c 1.2, src/mspells3.c 1.2, src/mutation.c 1.3, src/object1.c 1.3, src/object2.c 1.3, lib/edit/t0000004_j.txt 1.2, lib/edit/t0000006_j.txt 1.2, lib/edit/t_basic_j.txt 1.2, lib/edit/t_info_j.txt 1.2, lib/edit/t_lite_j.txt 1.2, lib/edit/t_pref_j.txt 1.2, lib/edit/v_info_j.txt 1.2, lib/edit/w_info_j.txt 1.2, lib/file/a_low.txt 1.2, lib/file/a_med.txt 1.2, lib/file/mondeath.txt 1.2, lib/file/monfear.txt 1.2, lib/file/monspeak.txt 1.2, lib/file/news.txt 1.3, lib/pref/colors.prf 1.2, lib/pref/font-ami.prf 1.2, lib/pref/font-dos.prf 1.2, lib/pref/font-ibm.prf 1.2, lib/pref/font-mac.prf 1.2, lib/pref/font-mon.prf 1.2, lib/pref/font-win.prf 1.2, lib/pref/font-x11.prf 1.2, lib/pref/font-xxx.prf 1.2, lib/pref/font.prf 1.2, lib/pref/graf-ami.prf 1.2, lib/pref/graf-dos.prf 1.2, lib/pref/graf-gcu.prf 1.2, lib/pref/graf-ibm.prf 1.2, lib/pref/graf-mac.prf 1.2, lib/pref/graf-new.prf 1.2, lib/pref/graf-win.prf 1.2, lib/pref/graf-x11.prf 1.2, lib/pref/graf-xaw.prf 1.2, lib/pref/graf-xxx.prf 1.2, lib/pref/graf.prf 1.2, lib/pref/pref-acn.prf 1.2, lib/pref/pref-ami.prf 1.2, lib/pref/pref-gcu.prf 1.2, lib/pref/pref-mac.prf 1.3, lib/pref/pref-opt.prf 1.2, lib/pref/pref-win.prf 1.3, lib/pref/pref-x11.prf 1.3, lib/pref/user-win.prf 1.2, lib/pref/user.prf 1.2, lib/pref/xtra-gcu.prf 1.2, lib/pref/xtra-new.prf 1.2, lib/pref/xtra-xxx.prf 1.2, lib/xtra/sound/sound.cfg 1.2, src/ang_eng.rc 1.2, src/artifact.c 1.3, src/birth.c 1.3, src/bldg.c 1.3, src/cave.c 1.3, src/chuukei.c 1.3, src/cmd1.c 1.3, src/cmd2.c 1.3, src/cmd3.c 1.2, src/cmd4.c 1.3, src/cmd5.c 1.3, autopick.txt 1.2, autopick_eng.txt 1.2, lib/edit/a_info_j.txt 1.2, lib/edit/e_info_j.txt 1.3, lib/edit/f_info_j.txt 1.2, lib/edit/k_info_j.txt 1.2, lib/edit/misc_j.txt 1.2, lib/edit/q0000001_j.txt 1.2, lib/edit/q0000002_j.txt 1.2, lib/edit/q0000003_j.txt 1.2, lib/edit/q0000004_j.txt 1.2, lib/edit/q0000005_j.txt 1.2, lib/edit/q0000006_j.txt 1.2, lib/edit/q0000007_j.txt 1.2, lib/edit/q0000019_j.txt 1.2, lib/edit/q0000020_j.txt 1.2, lib/edit/q0000021_j.txt 1.2, lib/edit/q0000022_j.txt 1.2, lib/edit/q0000023_j.txt 1.2, lib/edit/q0000027_j.txt 1.2, lib/edit/q0000028_j.txt 1.2, lib/edit/q00000ms_j.txt 1.2, lib/edit/q000chao_j.txt 1.2, lib/edit/q000dekn_j.txt 1.2, lib/edit/q000eric_j.txt 1.2, lib/edit/q000lyeh_j.txt 1.2, lib/edit/q000natu_j.txt 1.2, lib/edit/q000sorc_j.txt 1.2, lib/edit/q00water_j.txt 1.2, lib/edit/q0fields_j.txt 1.2, lib/edit/q0thief1_j.txt 1.2, lib/edit/q0thief2_j.txt 1.2, lib/edit/q0willow_j.txt 1.2, lib/edit/q_info_j.txt 1.2, lib/edit/q_oberon_j.txt 1.2, lib/edit/q_pref_j.txt 1.2, lib/edit/q_random_j.txt 1.2, lib/edit/q_serpen_j.txt 1.2, lib/edit/q_warg_j.txt 1.2, lib/edit/qdarkelf_j.txt 1.2, lib/edit/qhaunted_j.txt 1.2, lib/edit/r_info_j.txt 1.2, lib/edit/t0000001_j.txt 1.2, lib/edit/t0000002_j.txt 1.2, lib/edit/t0000003_j.txt 1.2, mkinstalldirs 1.2, readme_eng.txt 1.2:
-       Hengband 108 fix2 revision 4
-       fix2 ¤Ë±Ñ¸ìÈǤÈmogami¤Î¥Ñ¥Ã¥Á¤ÈHabu¤µ¤ó¤Î¥Ñ¥Ã¥Á¤ò¥Þ¡¼¥¸¡£
-
-2002-01-13  habu  <habu@cvs>
-
-       * src/report.c 1.2.2.4: Á°¤ÎÊѹ¹¤Ç»È¤ï¤Ê¤¯¤Ê¤Ã¤¿ÊÑ¿ô¤ÎÀë¸À¤òºï½ü¡£
-
-       * src/report.c 1.2.2.3:
-       ÆüÉÕ¤Èʸ»ú¥³¡¼¥É¤Ï¤â¤Ï¤ä¥¹¥³¥¢¥µ¡¼¥Ð¤ËÁ÷¤ëɬÍפϤʤ¤¤Î¤Ç³ºÅö¥³¡¼¥É¤òºï½ü¡£
-
-       * src/report.c 1.2.2.2: ÌµÂ̤ËÆó½Å¤ËÎΰè¤ò³ÎÊݤ·¤Æ¤¤¤¿¤Î¤ò½¤Àµ¡£
-       ¤µ¤é¤Ë¥¤¥ó¥Ç¥ó¥È¤ò½¤Àµ¡£
-
-       * src/report.c 1.2.2.1:
-       Angband¤Î¥³¡¼¥Ç¥£¥ó¥°¥¹¥¿¥¤¥ë¤Ë½¾¤Ã¤Æ¥¤¥ó¥Ç¥ó¥È¤òÉÕ¤±¤Ê¤ª¤·¤¿¡£
-
-2002-01-13  Takeshi Mogami  <mogami@cvs>
-
-       * src/spells1.c 1.2.2.2:
-       ¥â¥ó¥¹¥¿¡¼¤Î¥Ö¥ì¥¹¤òÍá¤Ó¤Æunmaker¤¬Çúȯ¤·¤¿¤È¤­¡¢¥Ö¥ì¥¹¤òÅǤ¤¤¿¥â¥ó¥¹¥¿¡¼
-       ¤¬ÊѿȤ¹¤ë¤È¡¢¥×¥ì¥¤¥ä¡¼¤ËÂФ¹¤ëkiller¤ÎÀßÄê¤Ë¼ºÇÔ¤·¤Æ¤¤¤¿¤Î¤Ç¡¢
-       ÊÑ¿ÈÁ°¤Î¥â¥ó¥¹¥¿¡¼¤Î̾Á°¤òÊÝ»ý¤¹¤ë¤è¤¦¤Ë½¤Àµ¡£
-
-       * lib/edit/r_info_j.txt 1.1.1.1.2.3: Balrog -> Greater Balrog
-
-       * src/cmd3.c 1.1.1.1.2.2:
-       »×¤¤½Ð¤Î̾Á°¸¡º÷¤ò¥­¥ã¥ó¥»¥ë»þ¤Ëreturn ¤Ë°ú¿ô˺¤ì¡£
-
-       * lib/pref/graf-win.prf 1.1.1.1.4.3, lib/pref/graf-x11.prf 1.1.1.1.4.3, lib/pref/graf-xaw.prf 1.1.1.1.4.3, lib/pref/graf-xxx.prf 1.1.1.1.4.3, lib/pref/graf.prf 1.1.1.1.4.3, lib/pref/pref-acn.prf 1.1.1.1.4.3, lib/pref/pref-ami.prf 1.1.1.1.4.3, lib/pref/pref-gcu.prf 1.1.1.1.4.3, lib/pref/pref-mac.prf 1.2.4.3, lib/pref/pref-win.prf 1.2.4.3, lib/pref/user-win.prf 1.1.1.1.4.3, lib/pref/user.prf 1.1.1.1.4.3, lib/pref/xtra-gcu.prf 1.1.1.1.4.3, lib/pref/xtra-new.prf 1.1.1.1.4.3, lib/pref/xtra-xxx.prf 1.1.1.1.4.3, lib/xtra/sound/sound.cfg 1.1.1.1.4.3, src/birth.c 1.2.4.1, src/main-dos.c 1.1.1.1.4.3, src/makefile.dos 1.1.1.1.4.3, src/makefile.ibm 1.1.1.1.4.3, src/makefile.std 1.1.1.1.4.3, lib/edit/t0000001_j.txt 1.1.1.1.4.3, lib/edit/t0000002_j.txt 1.1.1.1.4.3, lib/edit/t0000003_j.txt 1.1.1.1.4.3, lib/edit/t0000004_j.txt 1.1.1.1.4.3, lib/edit/t0000006_j.txt 1.1.1.1.4.3, lib/edit/t_basic_j.txt 1.1.1.1.4.3, lib/edit/t_info_j.txt 1.1.1.1.4.3, lib/edit/t_lite_j.txt 1.1.1.1.4.3, lib/edit/t_pref_j.txt 1.1.1.1.4.3, lib/edit/v_info_j.txt 1.1.1.1.4.3, lib/edit/w_info_j.txt 1.1.1.1.4.3, lib/pref/colors.prf 1.1.1.1.4.3, lib/pref/font-ami.prf 1.1.1.1.4.3, lib/pref/font-dos.prf 1.1.1.1.4.3, lib/pref/font-ibm.prf 1.1.1.1.4.3, lib/pref/font-mac.prf 1.1.1.1.4.3, lib/pref/font-mon.prf 1.1.1.1.4.3, lib/pref/font-win.prf 1.1.1.1.4.3, lib/pref/font-x11.prf 1.1.1.1.4.3, lib/pref/font-xxx.prf 1.1.1.1.4.3, lib/pref/font.prf 1.1.1.1.4.3, lib/pref/graf-ami.prf 1.1.1.1.4.3, lib/pref/graf-dos.prf 1.1.1.1.4.3, lib/pref/graf-gcu.prf 1.1.1.1.4.3, lib/pref/graf-ibm.prf 1.1.1.1.4.3, lib/pref/graf-mac.prf 1.1.1.1.4.3, lib/pref/graf-new.prf 1.1.1.1.4.3, lib/edit/e_info_j.txt 1.2.4.3, lib/edit/f_info_j.txt 1.1.1.1.4.3, lib/edit/k_info_j.txt 1.1.1.1.4.3, lib/edit/misc_j.txt 1.1.1.1.4.3, lib/edit/q0000001_j.txt 1.1.1.1.4.3, lib/edit/q0000002_j.txt 1.1.1.1.4.3, lib/edit/q0000003_j.txt 1.1.1.1.4.3, lib/edit/q0000004_j.txt 1.1.1.1.4.3, lib/edit/q0000005_j.txt 1.1.1.1.4.3, lib/edit/q0000006_j.txt 1.1.1.1.4.3, lib/edit/q0000007_j.txt 1.1.1.1.4.3, lib/edit/q0000019_j.txt 1.1.1.1.4.3, lib/edit/q0000020_j.txt 1.1.1.1.4.3, lib/edit/q0000021_j.txt 1.1.1.1.4.3, lib/edit/q0000022_j.txt 1.1.1.1.4.3, lib/edit/q0000023_j.txt 1.1.1.1.4.3, lib/edit/q0000027_j.txt 1.1.1.1.4.3, lib/edit/q0000028_j.txt 1.1.1.1.4.3, lib/edit/q00000ms_j.txt 1.1.1.1.4.3, lib/edit/q000chao_j.txt 1.1.1.1.4.3, lib/edit/q000dekn_j.txt 1.1.1.1.4.3, lib/edit/q000eric_j.txt 1.1.1.1.4.3, lib/edit/q000lyeh_j.txt 1.1.1.1.4.3, lib/edit/q000natu_j.txt 1.1.1.1.4.3, lib/edit/q000sorc_j.txt 1.1.1.1.4.3, lib/edit/q00water_j.txt 1.1.1.1.4.3, lib/edit/q0fields_j.txt 1.1.1.1.4.3, lib/edit/q0thief1_j.txt 1.1.1.1.4.3, lib/edit/q0thief2_j.txt 1.1.1.1.4.3, lib/edit/q0willow_j.txt 1.1.1.1.4.3, lib/edit/q_info_j.txt 1.1.1.1.4.3, lib/edit/q_oberon_j.txt 1.1.1.1.4.3, lib/edit/q_pref_j.txt 1.1.1.1.4.3, lib/edit/q_random_j.txt 1.1.1.1.4.3, lib/edit/q_serpen_j.txt 1.1.1.1.4.3, lib/edit/q_warg_j.txt 1.1.1.1.4.3, lib/edit/qdarkelf_j.txt 1.1.1.1.4.3, lib/edit/qhaunted_j.txt 1.1.1.1.4.3, lib/edit/r_info_j.txt 1.1.1.1.4.3:
-       ¥Ø¥Ã¥À¤ÎCVS¾ðÊó¤òºï½ü¡£¤½¤Î¾¡¢´Ö°ã¤Ã¤¿lib/¥Õ¥¡¥¤¥ë¤Îcommit¤ò½¤Àµ¡£
-
-       * lib/pref/graf-win.prf 1.1.1.1.2.2, lib/pref/graf-x11.prf 1.1.1.1.2.2, lib/pref/graf-xaw.prf 1.1.1.1.2.2, lib/pref/graf-xxx.prf 1.1.1.1.2.2, lib/pref/graf.prf 1.1.1.1.2.2, lib/pref/pref-acn.prf 1.1.1.1.2.2, lib/pref/pref-ami.prf 1.1.1.1.2.2, lib/pref/pref-gcu.prf 1.1.1.1.2.2, lib/pref/pref-mac.prf 1.2.2.2, lib/pref/pref-win.prf 1.2.2.2, lib/pref/user-win.prf 1.1.1.1.2.2, lib/pref/user.prf 1.1.1.1.2.2, lib/pref/xtra-gcu.prf 1.1.1.1.2.2, lib/pref/xtra-new.prf 1.1.1.1.2.2, lib/pref/xtra-xxx.prf 1.1.1.1.2.2, lib/xtra/sound/sound.cfg 1.1.1.1.2.2, src/main-dos.c 1.1.1.1.2.2, src/makefile.dos 1.1.1.1.2.2, src/makefile.ibm 1.1.1.1.2.2, src/makefile.std 1.1.1.1.2.2, lib/edit/t0000001_j.txt 1.1.1.1.2.2, lib/edit/t0000002_j.txt 1.1.1.1.2.2, lib/edit/t0000003_j.txt 1.1.1.1.2.2, lib/edit/t0000004_j.txt 1.1.1.1.2.2, lib/edit/t0000006_j.txt 1.1.1.1.2.2, lib/edit/t_basic_j.txt 1.1.1.1.2.2, lib/edit/t_info_j.txt 1.1.1.1.2.2, lib/edit/t_lite_j.txt 1.1.1.1.2.2, lib/edit/t_pref_j.txt 1.1.1.1.2.2, lib/edit/v_info_j.txt 1.1.1.1.2.2, lib/edit/w_info_j.txt 1.1.1.1.2.2, lib/pref/colors.prf 1.1.1.1.2.2, lib/pref/font-ami.prf 1.1.1.1.2.2, lib/pref/font-dos.prf 1.1.1.1.2.2, lib/pref/font-ibm.prf 1.1.1.1.2.2, lib/pref/font-mac.prf 1.1.1.1.2.2, lib/pref/font-mon.prf 1.1.1.1.2.2, lib/pref/font-win.prf 1.1.1.1.2.2, lib/pref/font-x11.prf 1.1.1.1.2.2, lib/pref/font-xxx.prf 1.1.1.1.2.2, lib/pref/font.prf 1.1.1.1.2.2, lib/pref/graf-ami.prf 1.1.1.1.2.2, lib/pref/graf-dos.prf 1.1.1.1.2.2, lib/pref/graf-gcu.prf 1.1.1.1.2.2, lib/pref/graf-ibm.prf 1.1.1.1.2.2, lib/pref/graf-mac.prf 1.1.1.1.2.2, lib/pref/graf-new.prf 1.1.1.1.2.2, lib/edit/e_info_j.txt 1.2.2.2, lib/edit/f_info_j.txt 1.1.1.1.2.2, lib/edit/k_info_j.txt 1.1.1.1.2.2, lib/edit/misc_j.txt 1.1.1.1.2.2, lib/edit/q0000001_j.txt 1.1.1.1.2.2, lib/edit/q0000002_j.txt 1.1.1.1.2.2, lib/edit/q0000003_j.txt 1.1.1.1.2.2, lib/edit/q0000004_j.txt 1.1.1.1.2.2, lib/edit/q0000005_j.txt 1.1.1.1.2.2, lib/edit/q0000006_j.txt 1.1.1.1.2.2, lib/edit/q0000007_j.txt 1.1.1.1.2.2, lib/edit/q0000019_j.txt 1.1.1.1.2.2, lib/edit/q0000020_j.txt 1.1.1.1.2.2, lib/edit/q0000021_j.txt 1.1.1.1.2.2, lib/edit/q0000022_j.txt 1.1.1.1.2.2, lib/edit/q0000023_j.txt 1.1.1.1.2.2, lib/edit/q0000027_j.txt 1.1.1.1.2.2, lib/edit/q0000028_j.txt 1.1.1.1.2.2, lib/edit/q00000ms_j.txt 1.1.1.1.2.2, lib/edit/q000chao_j.txt 1.1.1.1.2.2, lib/edit/q000dekn_j.txt 1.1.1.1.2.2, lib/edit/q000eric_j.txt 1.1.1.1.2.2, lib/edit/q000lyeh_j.txt 1.1.1.1.2.2, lib/edit/q000natu_j.txt 1.1.1.1.2.2, lib/edit/q000sorc_j.txt 1.1.1.1.2.2, lib/edit/q00water_j.txt 1.1.1.1.2.2, lib/edit/q0fields_j.txt 1.1.1.1.2.2, lib/edit/q0thief1_j.txt 1.1.1.1.2.2, lib/edit/q0thief2_j.txt 1.1.1.1.2.2, lib/edit/q0willow_j.txt 1.1.1.1.2.2, lib/edit/q_info_j.txt 1.1.1.1.2.2, lib/edit/q_oberon_j.txt 1.1.1.1.2.2, lib/edit/q_pref_j.txt 1.1.1.1.2.2, lib/edit/q_random_j.txt 1.1.1.1.2.2, lib/edit/q_serpen_j.txt 1.1.1.1.2.2, lib/edit/q_warg_j.txt 1.1.1.1.2.2, lib/edit/qdarkelf_j.txt 1.1.1.1.2.2, lib/edit/qhaunted_j.txt 1.1.1.1.2.2, lib/edit/r_info_j.txt 1.1.1.1.2.2:
-       ¥Ø¥Ã¥À¡¼¤ÎCVS¾ðÊó¤òÁ´Éôºï½ü
-
-       * src/birth.c 1.2.2.2:
-       ¤Þ¤Á¤¬¤Ã¤Æ¡¢iks¤µ¤ó¤Î¤òbirth.c¤ò¾å½ñ¤­¥³¥Ô¡¼¤·¤Æ¼«Ê¬¤ÎºÇ¿·¤ÎÊѹ¹¤ò
-       ¼º¤Ê¤Ã¤Æ¤¤¤¿¤Î¤Ç¡¢Ìᤷ¤¿¡£
-       iks¤µ¤ó¤Îbirth.c¤È¤Î¥Þ¡¼¥¸¤Ï¸å¤Ç¤â¤Ã¤È¿µ½Å¤Ë¤ä¤ë¡£
-
-2002-01-12  Takeshi Mogami  <mogami@cvs>
-
-       * lib/pref/colors.prf 1.1.1.1.4.2, lib/pref/font-ami.prf 1.1.1.1.4.2, lib/pref/font-dos.prf 1.1.1.1.4.2, lib/pref/font-ibm.prf 1.1.1.1.4.2, lib/pref/font-mac.prf 1.1.1.1.4.2, lib/pref/font-mon.prf 1.1.1.1.4.2, lib/pref/font-win.prf 1.1.1.1.4.2, lib/pref/font-x11.prf 1.1.1.1.4.2, lib/pref/font-xxx.prf 1.1.1.1.4.2, lib/pref/font.prf 1.1.1.1.4.2, lib/pref/graf-ami.prf 1.1.1.1.4.2, lib/pref/graf-dos.prf 1.1.1.1.4.2, lib/pref/graf-gcu.prf 1.1.1.1.4.2, lib/pref/graf-ibm.prf 1.1.1.1.4.2, lib/pref/graf-mac.prf 1.1.1.1.4.2, lib/pref/graf-new.prf 1.1.1.1.4.2, lib/pref/graf-win.prf 1.1.1.1.4.2, lib/pref/graf-x11.prf 1.1.1.1.4.2, lib/pref/graf-xaw.prf 1.1.1.1.4.2, lib/pref/graf-xxx.prf 1.1.1.1.4.2, lib/pref/graf.prf 1.1.1.1.4.2, lib/pref/pref-acn.prf 1.1.1.1.4.2, lib/pref/pref-ami.prf 1.1.1.1.4.2, lib/pref/pref-gcu.prf 1.1.1.1.4.2, lib/pref/pref-mac.prf 1.2.4.2, lib/pref/pref-win.prf 1.2.4.2, lib/pref/user-win.prf 1.1.1.1.4.2, lib/pref/user.prf 1.1.1.1.4.2, lib/pref/xtra-gcu.prf 1.1.1.1.4.2, lib/pref/xtra-new.prf 1.1.1.1.4.2, lib/pref/xtra-xxx.prf 1.1.1.1.4.2, lib/xtra/sound/sound.cfg 1.1.1.1.4.2, src/main-dos.c 1.1.1.1.4.2, src/makefile.dos 1.1.1.1.4.2, src/makefile.ibm 1.1.1.1.4.2, src/makefile.std 1.1.1.1.4.2, lib/edit/t0000001_j.txt 1.1.1.1.4.2, lib/edit/t0000002_j.txt 1.1.1.1.4.2, lib/edit/t0000003_j.txt 1.1.1.1.4.2, lib/edit/t0000004_j.txt 1.1.1.1.4.2, lib/edit/t0000006_j.txt 1.1.1.1.4.2, lib/edit/t_basic_j.txt 1.1.1.1.4.2, lib/edit/t_info_j.txt 1.1.1.1.4.2, lib/edit/t_lite_j.txt 1.1.1.1.4.2, lib/edit/t_pref_j.txt 1.1.1.1.4.2, lib/edit/v_info_j.txt 1.1.1.1.4.2, lib/edit/w_info_j.txt 1.1.1.1.4.2, lib/edit/misc_j.txt 1.1.1.1.4.2, lib/edit/q0000001_j.txt 1.1.1.1.4.2, lib/edit/q0000002_j.txt 1.1.1.1.4.2, lib/edit/q0000003_j.txt 1.1.1.1.4.2, lib/edit/q0000004_j.txt 1.1.1.1.4.2, lib/edit/q0000005_j.txt 1.1.1.1.4.2, lib/edit/q0000006_j.txt 1.1.1.1.4.2, lib/edit/q0000007_j.txt 1.1.1.1.4.2, lib/edit/q0000019_j.txt 1.1.1.1.4.2, lib/edit/q0000020_j.txt 1.1.1.1.4.2, lib/edit/q0000021_j.txt 1.1.1.1.4.2, lib/edit/q0000022_j.txt 1.1.1.1.4.2, lib/edit/q0000023_j.txt 1.1.1.1.4.2, lib/edit/q0000027_j.txt 1.1.1.1.4.2, lib/edit/q0000028_j.txt 1.1.1.1.4.2, lib/edit/q00000ms_j.txt 1.1.1.1.4.2, lib/edit/q000chao_j.txt 1.1.1.1.4.2, lib/edit/q000dekn_j.txt 1.1.1.1.4.2, lib/edit/q000eric_j.txt 1.1.1.1.4.2, lib/edit/q000lyeh_j.txt 1.1.1.1.4.2, lib/edit/q000natu_j.txt 1.1.1.1.4.2, lib/edit/q000sorc_j.txt 1.1.1.1.4.2, lib/edit/q00water_j.txt 1.1.1.1.4.2, lib/edit/q0fields_j.txt 1.1.1.1.4.2, lib/edit/q0thief1_j.txt 1.1.1.1.4.2, lib/edit/q0thief2_j.txt 1.1.1.1.4.2, lib/edit/q0willow_j.txt 1.1.1.1.4.2, lib/edit/q_info_j.txt 1.1.1.1.4.2, lib/edit/q_oberon_j.txt 1.1.1.1.4.2, lib/edit/q_pref_j.txt 1.1.1.1.4.2, lib/edit/q_random_j.txt 1.1.1.1.4.2, lib/edit/q_serpen_j.txt 1.1.1.1.4.2, lib/edit/q_warg_j.txt 1.1.1.1.4.2, lib/edit/qdarkelf_j.txt 1.1.1.1.4.2, lib/edit/qhaunted_j.txt 1.1.1.1.4.2, lib/edit/r_info_j.txt 1.1.1.1.4.2, lib/edit/e_info_j.txt 1.2.4.2, lib/edit/f_info_j.txt 1.1.1.1.4.2, lib/edit/k_info_j.txt 1.1.1.1.4.2, mkinstalldirs 1.1.1.1.4.2:
-       ¥Ø¥Ã¥À¤ÎCVS¾ðÊó¤¬ÊѤ˹¹¿·¤µ¤ì¤Æ¤Ædiff¤ò¤È¤ê¤º¤é¤¤¤Î¤Çľ¤·¤¿¡£
-
-       * src/xtra2.c 1.2.4.1, src/z-form.c 1.1.1.1.4.1, src/types.h 1.1.1.1.4.1, src/util.c 1.2.4.1, src/variable.c 1.2.4.1, src/wild.c 1.2.4.1, src/wizard2.c 1.1.1.1.4.1, src/xtra1.c 1.2.4.1, src/spells1.c 1.2.4.1, src/spells2.c 1.2.4.1, src/spells3.c 1.1.1.1.4.1, src/tables.c 1.2.4.1, src/mutation.c 1.2.4.1, src/object1.c 1.2.4.1, src/object2.c 1.2.4.1, src/racial.c 1.1.1.1.4.1, src/rooms.c 1.2.4.1, src/save.c 1.1.1.1.4.1, src/makefile.ibm 1.1.1.1.4.1, src/makefile.std 1.1.1.1.4.1, src/melee1.c 1.1.1.1.4.1, src/melee2.c 1.1.1.1.4.1, src/mind.c 1.1.1.1.4.1, src/mindtips.h 1.1.1.1.4.1, src/monster1.c 1.2.4.1, src/monster2.c 1.2.4.1, src/mspells1.c 1.1.1.1.4.1, src/mspells2.c 1.1.1.1.4.1, src/mspells3.c 1.1.1.1.4.1, src/externs.h 1.2.4.1, src/files.c 1.2.4.1, src/flavor.c 1.2.4.1, src/generate.c 1.1.1.1.4.1, src/grid.c 1.1.1.1.4.1, src/h-config.h 1.1.1.1.4.1, src/hissatsu.c 1.1.1.1.4.1, src/inet.c 1.2.4.1, src/load.c 1.2.4.1, src/main-dos.c 1.1.1.1.4.1, src/main-win.c 1.2.4.1, src/makefile.dos 1.1.1.1.4.1, src/cmd5.c 1.2.4.1, src/cmd6.c 1.2.4.1, src/defines.h 1.2.4.1, src/dungeon.c 1.2.4.1, src/effects.c 1.2.4.1, src/bldg.c 1.2.4.1, src/cave.c 1.2.4.1, src/chuukei.c 1.2.4.1, src/cmd1.c 1.2.4.1, src/cmd2.c 1.2.4.1, src/cmd3.c 1.1.1.1.4.1, src/cmd4.c 1.2.4.1, lib/pref/font.prf 1.1.1.1.4.1, lib/pref/graf-ami.prf 1.1.1.1.4.1, lib/pref/graf-dos.prf 1.1.1.1.4.1, lib/pref/graf-gcu.prf 1.1.1.1.4.1, lib/pref/graf-ibm.prf 1.1.1.1.4.1, lib/pref/graf-mac.prf 1.1.1.1.4.1, lib/pref/graf-new.prf 1.1.1.1.4.1, lib/pref/graf-win.prf 1.1.1.1.4.1, lib/pref/graf-x11.prf 1.1.1.1.4.1, lib/pref/graf-xaw.prf 1.1.1.1.4.1, lib/pref/graf-xxx.prf 1.1.1.1.4.1, lib/pref/graf.prf 1.1.1.1.4.1, lib/pref/pref-acn.prf 1.1.1.1.4.1, lib/pref/pref-ami.prf 1.1.1.1.4.1, lib/pref/pref-gcu.prf 1.1.1.1.4.1, lib/pref/pref-mac.prf 1.2.4.1, lib/pref/pref-opt.prf 1.1.1.1.4.1, lib/pref/pref-win.prf 1.2.4.1, lib/pref/pref-x11.prf 1.2.4.1, lib/pref/user-win.prf 1.1.1.1.4.1, lib/pref/user.prf 1.1.1.1.4.1, lib/pref/xtra-gcu.prf 1.1.1.1.4.1, lib/pref/xtra-new.prf 1.1.1.1.4.1, lib/pref/xtra-xxx.prf 1.1.1.1.4.1, lib/xtra/sound/sound.cfg 1.1.1.1.4.1, src/ang_eng.rc 1.1.1.1.4.1, src/artifact.c 1.2.4.1, lib/edit/t0000002_j.txt 1.1.1.1.4.1, lib/edit/t0000003_j.txt 1.1.1.1.4.1, lib/edit/t0000004_j.txt 1.1.1.1.4.1, lib/edit/t0000006_j.txt 1.1.1.1.4.1, lib/edit/t_basic_j.txt 1.1.1.1.4.1, lib/edit/t_info_j.txt 1.1.1.1.4.1, lib/edit/t_lite_j.txt 1.1.1.1.4.1, lib/edit/t_pref_j.txt 1.1.1.1.4.1, lib/edit/v_info_j.txt 1.1.1.1.4.1, lib/edit/w_info_j.txt 1.1.1.1.4.1, lib/file/a_low.txt 1.1.1.1.4.1, lib/file/a_med.txt 1.1.1.1.4.1, lib/file/mondeath.txt 1.1.1.1.4.1, lib/file/monfear.txt 1.1.1.1.4.1, lib/file/monspeak.txt 1.1.1.1.4.1, lib/file/news.txt 1.2.4.1, lib/pref/colors.prf 1.1.1.1.4.1, lib/pref/font-ami.prf 1.1.1.1.4.1, lib/pref/font-dos.prf 1.1.1.1.4.1, lib/pref/font-ibm.prf 1.1.1.1.4.1, lib/pref/font-mac.prf 1.1.1.1.4.1, lib/pref/font-mon.prf 1.1.1.1.4.1, lib/pref/font-win.prf 1.1.1.1.4.1, lib/pref/font-x11.prf 1.1.1.1.4.1, lib/pref/font-xxx.prf 1.1.1.1.4.1, lib/edit/t0000001_j.txt 1.1.1.1.4.1, lib/edit/q_serpen_j.txt 1.1.1.1.4.1, lib/edit/q_warg_j.txt 1.1.1.1.4.1, lib/edit/qdarkelf_j.txt 1.1.1.1.4.1, lib/edit/qhaunted_j.txt 1.1.1.1.4.1, lib/edit/r_info_j.txt 1.1.1.1.4.1, lib/edit/misc_j.txt 1.1.1.1.4.1, lib/edit/q0000001_j.txt 1.1.1.1.4.1, lib/edit/q0000002_j.txt 1.1.1.1.4.1, lib/edit/q0000003_j.txt 1.1.1.1.4.1, lib/edit/q0000004_j.txt 1.1.1.1.4.1, lib/edit/q0000005_j.txt 1.1.1.1.4.1, lib/edit/q0000006_j.txt 1.1.1.1.4.1, lib/edit/q0000007_j.txt 1.1.1.1.4.1, lib/edit/q0000019_j.txt 1.1.1.1.4.1, lib/edit/q0000020_j.txt 1.1.1.1.4.1, lib/edit/q0000021_j.txt 1.1.1.1.4.1, lib/edit/q0000022_j.txt 1.1.1.1.4.1, lib/edit/q0000023_j.txt 1.1.1.1.4.1, lib/edit/q0000027_j.txt 1.1.1.1.4.1, lib/edit/q0000028_j.txt 1.1.1.1.4.1, lib/edit/q00000ms_j.txt 1.1.1.1.4.1, lib/edit/q000chao_j.txt 1.1.1.1.4.1, lib/edit/q000dekn_j.txt 1.1.1.1.4.1, lib/edit/q000eric_j.txt 1.1.1.1.4.1, lib/edit/q000lyeh_j.txt 1.1.1.1.4.1, lib/edit/q000natu_j.txt 1.1.1.1.4.1, lib/edit/q000sorc_j.txt 1.1.1.1.4.1, lib/edit/q00water_j.txt 1.1.1.1.4.1, lib/edit/q0fields_j.txt 1.1.1.1.4.1, lib/edit/q0thief1_j.txt 1.1.1.1.4.1, lib/edit/q0thief2_j.txt 1.1.1.1.4.1, lib/edit/q0willow_j.txt 1.1.1.1.4.1, lib/edit/q_info_j.txt 1.1.1.1.4.1, lib/edit/q_oberon_j.txt 1.1.1.1.4.1, lib/edit/q_pref_j.txt 1.1.1.1.4.1, lib/edit/q_random_j.txt 1.1.1.1.4.1, autopick.txt 1.1.1.1.4.1, autopick_eng.txt 1.1.1.1.4.1, lib/edit/a_info_j.txt 1.1.1.1.4.1, lib/edit/e_info_j.txt 1.2.4.1, lib/edit/f_info_j.txt 1.1.1.1.4.1, lib/edit/k_info_j.txt 1.1.1.1.4.1, mkinstalldirs 1.1.1.1.4.1:
-       hengband 1.0.8 fix2 revision 3
-       + for_r3.patch.0110
-       + display_autopick.patch.0112
-       + object1.c.0112.patch
-
-       ºÇ¿·ÈǤǤϤʤ¤¡£
-       ¤¿¤Ö¤ó¡¢¸½ºßhoge¤µ¤ó¤¬¼ê¸µ¤ÇŬÍѤ·¤Æ¤¤¤ë¤È»×¤ï¤ì¤ë¥½¡¼¥¹¥Ñ¥Ã¥Á¤ò¤Þ¤È¤á¤¿¤â¤Î¡£
-       ºÇ¿·ÈǤȤÎdiff¤ò¼è¤Ã¤Æhoge¤µ¤ó¤ËÁ÷¤ë¤¿¤á¤À¤±¤Ë½àÈ÷¡£
-
-       * autopick.txt 1.1.1.1.2.2: add '(' in example. (first commit)
-
-       * src/xtra1.c 1.2.2.1, src/xtra2.c 1.2.2.1, src/z-form.c 1.1.1.1.2.1, src/tables.c 1.2.2.1, src/types.h 1.1.1.1.2.1, src/util.c 1.2.2.1, src/variable.c 1.2.2.1, src/wild.c 1.2.2.1, src/wizard2.c 1.1.1.1.2.1, src/spells1.c 1.2.2.1, src/spells2.c 1.2.2.1, src/spells3.c 1.1.1.1.2.1, src/mind.c 1.1.1.1.2.1, src/mindtips.h 1.1.1.1.2.1, src/monster1.c 1.2.2.1, src/monster2.c 1.2.2.1, src/mspells1.c 1.1.1.1.2.1, src/mspells2.c 1.1.1.1.2.1, src/mspells3.c 1.1.1.1.2.1, src/mutation.c 1.2.2.1, src/object1.c 1.2.2.1, src/object2.c 1.2.2.1, src/racial.c 1.1.1.1.2.1, src/rooms.c 1.2.2.1, src/save.c 1.1.1.1.2.1, src/dungeon.c 1.2.2.1, src/effects.c 1.2.2.1, src/externs.h 1.2.2.1, src/files.c 1.2.2.1, src/flavor.c 1.2.2.1, src/generate.c 1.1.1.1.2.1, src/grid.c 1.1.1.1.2.1, src/h-config.h 1.1.1.1.2.1, src/hissatsu.c 1.1.1.1.2.1, src/inet.c 1.2.2.1, src/load.c 1.2.2.1, src/main-dos.c 1.1.1.1.2.1, src/main-win.c 1.2.2.1, src/makefile.dos 1.1.1.1.2.1, src/makefile.ibm 1.1.1.1.2.1, src/makefile.std 1.1.1.1.2.1, src/melee1.c 1.1.1.1.2.1, src/melee2.c 1.1.1.1.2.1, src/bldg.c 1.2.2.1, src/cave.c 1.2.2.1, src/chuukei.c 1.2.2.1, src/cmd1.c 1.2.2.1, src/cmd2.c 1.2.2.1, src/cmd3.c 1.1.1.1.2.1, src/cmd4.c 1.2.2.1, src/cmd5.c 1.2.2.1, src/cmd6.c 1.2.2.1, src/defines.h 1.2.2.1, lib/pref/colors.prf 1.1.1.1.2.1, lib/pref/font-ami.prf 1.1.1.1.2.1, lib/pref/font-dos.prf 1.1.1.1.2.1, lib/pref/font-ibm.prf 1.1.1.1.2.1, lib/pref/font-mac.prf 1.1.1.1.2.1, lib/pref/font-mon.prf 1.1.1.1.2.1, lib/pref/font-win.prf 1.1.1.1.2.1, lib/pref/font-x11.prf 1.1.1.1.2.1, lib/pref/font-xxx.prf 1.1.1.1.2.1, lib/pref/font.prf 1.1.1.1.2.1, lib/pref/graf-ami.prf 1.1.1.1.2.1, lib/pref/graf-dos.prf 1.1.1.1.2.1, lib/pref/graf-gcu.prf 1.1.1.1.2.1, lib/pref/graf-ibm.prf 1.1.1.1.2.1, lib/pref/graf-mac.prf 1.1.1.1.2.1, lib/pref/graf-new.prf 1.1.1.1.2.1, lib/pref/graf-win.prf 1.1.1.1.2.1, lib/pref/graf-x11.prf 1.1.1.1.2.1, lib/pref/graf-xaw.prf 1.1.1.1.2.1, lib/pref/graf-xxx.prf 1.1.1.1.2.1, lib/pref/graf.prf 1.1.1.1.2.1, lib/pref/pref-acn.prf 1.1.1.1.2.1, lib/pref/pref-ami.prf 1.1.1.1.2.1, lib/pref/pref-gcu.prf 1.1.1.1.2.1, lib/pref/pref-mac.prf 1.2.2.1, lib/pref/pref-opt.prf 1.1.1.1.2.1, lib/pref/pref-win.prf 1.2.2.1, lib/pref/pref-x11.prf 1.2.2.1, lib/pref/user-win.prf 1.1.1.1.2.1, lib/pref/user.prf 1.1.1.1.2.1, lib/pref/xtra-gcu.prf 1.1.1.1.2.1, lib/pref/xtra-new.prf 1.1.1.1.2.1, lib/pref/xtra-xxx.prf 1.1.1.1.2.1, lib/xtra/sound/sound.cfg 1.1.1.1.2.1, src/ang_eng.rc 1.1.1.1.2.1, src/artifact.c 1.2.2.1, src/birth.c 1.2.2.1, lib/edit/t0000001_j.txt 1.1.1.1.2.1, lib/edit/t0000002_j.txt 1.1.1.1.2.1, lib/edit/t0000003_j.txt 1.1.1.1.2.1, lib/edit/t0000004_j.txt 1.1.1.1.2.1, lib/edit/t0000006_j.txt 1.1.1.1.2.1, lib/edit/t_basic_j.txt 1.1.1.1.2.1, lib/edit/t_info_j.txt 1.1.1.1.2.1, lib/edit/t_lite_j.txt 1.1.1.1.2.1, lib/edit/t_pref_j.txt 1.1.1.1.2.1, lib/edit/v_info_j.txt 1.1.1.1.2.1, lib/edit/w_info_j.txt 1.1.1.1.2.1, lib/file/a_low.txt 1.1.1.1.2.1, lib/file/a_med.txt 1.1.1.1.2.1, lib/file/mondeath.txt 1.1.1.1.2.1, lib/file/monfear.txt 1.1.1.1.2.1, lib/file/monspeak.txt 1.1.1.1.2.1, lib/file/news.txt 1.2.2.1, lib/edit/misc_j.txt 1.1.1.1.2.1, lib/edit/q0000001_j.txt 1.1.1.1.2.1, lib/edit/q0000002_j.txt 1.1.1.1.2.1, lib/edit/q0000003_j.txt 1.1.1.1.2.1, lib/edit/q0000004_j.txt 1.1.1.1.2.1, lib/edit/q0000005_j.txt 1.1.1.1.2.1, lib/edit/q0000006_j.txt 1.1.1.1.2.1, lib/edit/q0000007_j.txt 1.1.1.1.2.1, lib/edit/q0000019_j.txt 1.1.1.1.2.1, lib/edit/q0000020_j.txt 1.1.1.1.2.1, lib/edit/q0000021_j.txt 1.1.1.1.2.1, lib/edit/q0000022_j.txt 1.1.1.1.2.1, lib/edit/q0000023_j.txt 1.1.1.1.2.1, lib/edit/q0000027_j.txt 1.1.1.1.2.1, lib/edit/q0000028_j.txt 1.1.1.1.2.1, lib/edit/q00000ms_j.txt 1.1.1.1.2.1, lib/edit/q000chao_j.txt 1.1.1.1.2.1, lib/edit/q000dekn_j.txt 1.1.1.1.2.1, lib/edit/q000eric_j.txt 1.1.1.1.2.1, lib/edit/q000lyeh_j.txt 1.1.1.1.2.1, lib/edit/q000natu_j.txt 1.1.1.1.2.1, lib/edit/q000sorc_j.txt 1.1.1.1.2.1, lib/edit/q00water_j.txt 1.1.1.1.2.1, lib/edit/q0fields_j.txt 1.1.1.1.2.1, lib/edit/q0thief1_j.txt 1.1.1.1.2.1, lib/edit/q0thief2_j.txt 1.1.1.1.2.1, lib/edit/q0willow_j.txt 1.1.1.1.2.1, lib/edit/q_info_j.txt 1.1.1.1.2.1, lib/edit/q_oberon_j.txt 1.1.1.1.2.1, lib/edit/q_pref_j.txt 1.1.1.1.2.1, lib/edit/q_random_j.txt 1.1.1.1.2.1, lib/edit/q_serpen_j.txt 1.1.1.1.2.1, lib/edit/q_warg_j.txt 1.1.1.1.2.1, lib/edit/qdarkelf_j.txt 1.1.1.1.2.1, lib/edit/qhaunted_j.txt 1.1.1.1.2.1, lib/edit/r_info_j.txt 1.1.1.1.2.1, autopick.txt 1.1.1.1.2.1, autopick_eng.txt 1.1.1.1.2.1, lib/edit/a_info_j.txt 1.1.1.1.2.1, lib/edit/e_info_j.txt 1.2.2.1, lib/edit/f_info_j.txt 1.1.1.1.2.1, lib/edit/k_info_j.txt 1.1.1.1.2.1, mkinstalldirs 1.1.1.1.2.1, readme_eng.txt 1.1.1.1.2.1:
-       hengband 1.0.8 fix2 revision 4 by mogami
-       including iks's new birth.c and Habu's object1.c.0112.patch.
-
-       * src/spellstips.h 1.2, src/tables.c 1.2, src/util.c 1.2, src/variable.c 1.2, src/wild.c 1.2, src/wizard1.c 1.2, src/xtra1.c 1.2, src/xtra2.c 1.2, src/z-term.c 1.2, src/dungeon.c 1.2, src/effects.c 1.2, src/externs.h 1.2, src/files.c 1.2, src/flavor.c 1.2, src/inet.c 1.2, src/init1.c 1.2, src/japanese.c 1.2, src/load.c 1.2, src/main-mac.c 1.2, src/main-win.c 1.2, src/main-x11.c 1.2, src/makefile.bcc 1.2, src/monster1.c 1.2, src/monster2.c 1.2, src/mutation.c 1.2, src/object1.c 1.2, src/object2.c 1.2, src/report.c 1.2, src/rooms.c 1.2, src/scores.c 1.2, src/spells1.c 1.2, src/spells2.c 1.2, lib/edit/e_info_j.txt 1.2, lib/file/news.txt 1.2, lib/file/w_low_j.txt 1.2, lib/pref/pref-mac.prf 1.2, lib/pref/pref-win.prf 1.2, lib/pref/pref-x11.prf 1.2, src/artifact.c 1.2, src/birth.c 1.2, src/bldg.c 1.2, src/cave.c 1.2, src/chuukei.c 1.2, src/cmd1.c 1.2, src/cmd2.c 1.2, src/cmd4.c 1.2, src/cmd5.c 1.2, src/cmd6.c 1.2, src/defines.h 1.2:
-       hengband 1.0.8 fix2
-
-       * lib/xtra/font/9X15.FON 1.1.1.1, lib/xtra/font/9X15B.FON 1.1.1.1, lib/xtra/font/xm10x17.fnt 1.1.1.1, lib/xtra/font/xm10x17b.fnt 1.1.1.1, lib/xtra/font/xm12x20.fnt 1.1.1.1, lib/xtra/font/xm12x20b.fnt 1.1.1.1, lib/xtra/font/xm16x25.fnt 1.1.1.1, lib/xtra/font/xm16x25b.fnt 1.1.1.1, lib/xtra/font/xm4x6.fnt 1.1.1.1, lib/xtra/font/xm5x8.fnt 1.1.1.1, lib/xtra/font/xm6x12.fnt 1.1.1.1, lib/xtra/font/xm6x12b.fnt 1.1.1.1, lib/xtra/font/xm8x13.fnt 1.1.1.1, lib/xtra/font/xm8x13b.fnt 1.1.1.1, lib/xtra/font/xm8x16.fnt 1.1.1.1, lib/xtra/font/xm8x16b.fnt 1.1.1.1, lib/xtra/graf/Makefile.am 1.1.1.1, lib/xtra/graf/Makefile.in 1.1.1.1, lib/xtra/graf/delete.me 1.1.1.1, lib/xtra/music/Makefile.am 1.1.1.1, lib/xtra/music/Makefile.in 1.1.1.1, lib/xtra/music/delete.me 1.1.1.1, lib/xtra/sound/Makefile.am 1.1.1.1, lib/xtra/sound/Makefile.in 1.1.1.1, lib/xtra/sound/sound.cfg 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * lib/xtra/font/9X15.FON 1.1, lib/xtra/font/9X15B.FON 1.1, lib/xtra/font/xm10x17.fnt 1.1, lib/xtra/font/xm10x17b.fnt 1.1, lib/xtra/font/xm12x20.fnt 1.1, lib/xtra/font/xm12x20b.fnt 1.1, lib/xtra/font/xm16x25.fnt 1.1, lib/xtra/font/xm16x25b.fnt 1.1, lib/xtra/font/xm4x6.fnt 1.1, lib/xtra/font/xm5x8.fnt 1.1, lib/xtra/font/xm6x12.fnt 1.1, lib/xtra/font/xm6x12b.fnt 1.1, lib/xtra/font/xm8x13.fnt 1.1, lib/xtra/font/xm8x13b.fnt 1.1, lib/xtra/font/xm8x16.fnt 1.1, lib/xtra/font/xm8x16b.fnt 1.1, lib/xtra/graf/Makefile.am 1.1, lib/xtra/graf/Makefile.in 1.1, lib/xtra/graf/delete.me 1.1, lib/xtra/music/Makefile.am 1.1, lib/xtra/music/Makefile.in 1.1, lib/xtra/music/delete.me 1.1, lib/xtra/sound/Makefile.am 1.1, lib/xtra/sound/Makefile.in 1.1, lib/xtra/sound/sound.cfg 1.1:
-       New file.
-
-       * lib/file/a_cursed.txt 1.1.1.1, lib/file/a_high.txt 1.1.1.1, lib/file/a_low.txt 1.1.1.1, lib/file/a_med.txt 1.1.1.1, lib/file/chainswd.txt 1.1.1.1, lib/file/crime.txt 1.1.1.1, lib/file/dead.txt 1.1.1.1, lib/file/death.txt 1.1.1.1, lib/file/elvish.txt 1.1.1.1, lib/file/error.txt 1.1.1.1, lib/file/mondeath.txt 1.1.1.1, lib/file/monfear.txt 1.1.1.1, lib/file/monfrien.txt 1.1.1.1, lib/file/monfrien_j.txt 1.1.1.1, lib/file/monspeak.txt 1.1.1.1, lib/file/monspeak_j.txt 1.1.1.1, lib/file/news.txt 1.1.1.1, lib/file/news_j.txt 1.1.1.1, lib/file/rumors.txt 1.1.1.1, lib/file/rumors_j.txt 1.1.1.1, lib/file/seppuku.txt 1.1.1.1, lib/file/seppuku_j.txt 1.1.1.1, lib/file/silly.txt 1.1.1.1, lib/file/silly_j.txt 1.1.1.1, lib/file/timefun.txt 1.1.1.1, lib/file/timefun_j.txt 1.1.1.1, lib/file/timenorm.txt 1.1.1.1, lib/file/timenorm_j.txt 1.1.1.1, lib/file/w_cursed.txt 1.1.1.1, lib/file/w_cursed_j.txt 1.1.1.1, lib/file/w_high.txt 1.1.1.1, lib/file/w_high_j.txt 1.1.1.1, lib/file/w_low.txt 1.1.1.1, lib/file/w_low_j.txt 1.1.1.1, lib/file/w_med.txt 1.1.1.1, lib/file/w_med_j.txt 1.1.1.1, lib/help/Makefile.am 1.1.1.1, lib/help/Makefile.in 1.1.1.1, lib/help/arena.txt 1.1.1.1, lib/help/attack.hlp 1.1.1.1, lib/help/attack.txt 1.1.1.1, lib/help/birth.hlp 1.1.1.1, lib/help/birth.txt 1.1.1.1, lib/help/bldg.txt 1.1.1.1, lib/help/command.hlp 1.1.1.1, lib/help/command.txt 1.1.1.1, lib/help/commdesc.hlp 1.1.1.1, lib/help/commdesc.txt 1.1.1.1, lib/help/dungeon.hlp 1.1.1.1, lib/help/dungeon.txt 1.1.1.1, lib/help/gambling.txt 1.1.1.1, lib/help/general.hlp 1.1.1.1, lib/help/general.txt 1.1.1.1, lib/help/help.hlp 1.1.1.1, lib/help/helpinfo.txt 1.1.1.1, lib/help/j_name.txt 1.1.1.1, lib/help/japanese.txt 1.1.1.1, lib/help/jattack.txt 1.1.1.1, lib/help/jbirth.txt 1.1.1.1, lib/help/jcommand.hlp 1.1.1.1, lib/help/jcommand.txt 1.1.1.1, lib/help/jcommand0.txt 1.1.1.1, lib/help/jcommdesc.hlp 1.1.1.1, lib/help/jcommdesc.txt 1.1.1.1, lib/help/jdungeon.txt 1.1.1.1, lib/help/jgambling.txt 1.1.1.1, lib/help/jgeneral.txt 1.1.1.1, lib/help/jhelp.hlp 1.1.1.1, lib/help/jhelpinfo.txt 1.1.1.1, lib/help/joption.hlp 1.1.1.1, lib/help/joption.txt 1.1.1.1, lib/help/jplaying.txt 1.1.1.1, lib/help/jversion.txt 1.1.1.1, lib/help/magic.hlp 1.1.1.1, lib/help/magic.txt 1.1.1.1, lib/help/option.hlp 1.1.1.1, lib/help/option.txt 1.1.1.1, lib/help/pref.hlp 1.1.1.1, lib/help/pref.txt 1.1.1.1, lib/help/readme.txt 1.1.1.1, lib/help/spoiler.hlp 1.1.1.1, lib/help/tang.txt 1.1.1.1, lib/help/version.txt 1.1.1.1, lib/info/Makefile.am 1.1.1.1, lib/info/Makefile.in 1.1.1.1, lib/info/delete.me 1.1.1.1, lib/pref/Makefile.am 1.1.1.1, lib/pref/Makefile.in 1.1.1.1, lib/pref/colors.prf 1.1.1.1, lib/pref/font-ami.prf 1.1.1.1, lib/pref/font-dos.prf 1.1.1.1, lib/pref/font-ibm.prf 1.1.1.1, lib/pref/font-mac.prf 1.1.1.1, lib/pref/font-mon.prf 1.1.1.1, lib/pref/font-win.prf 1.1.1.1, lib/pref/font-x11.prf 1.1.1.1, lib/pref/font-xxx.prf 1.1.1.1, lib/pref/font.prf 1.1.1.1, lib/pref/graf-ami.prf 1.1.1.1, lib/pref/graf-dos.prf 1.1.1.1, lib/pref/graf-gcu.prf 1.1.1.1, lib/pref/graf-ibm.prf 1.1.1.1, lib/pref/graf-mac.prf 1.1.1.1, lib/pref/graf-new.prf 1.1.1.1, lib/pref/graf-win.prf 1.1.1.1, lib/pref/graf-x11.prf 1.1.1.1, lib/pref/graf-xaw.prf 1.1.1.1, lib/pref/graf-xxx.prf 1.1.1.1, lib/pref/graf.prf 1.1.1.1, lib/pref/pref-acn.prf 1.1.1.1, lib/pref/pref-ami.prf 1.1.1.1, lib/pref/pref-emx.prf 1.1.1.1, lib/pref/pref-gcu.prf 1.1.1.1, lib/pref/pref-key.prf 1.1.1.1, lib/pref/pref-mac.prf 1.1.1.1, lib/pref/pref-opt.prf 1.1.1.1, lib/pref/pref-win.prf 1.1.1.1, lib/pref/pref-x11.prf 1.1.1.1, lib/pref/pref.prf 1.1.1.1, lib/pref/proxy.prf 1.1.1.1, lib/pref/spell-xx.prf 1.1.1.1, lib/pref/user-win.prf 1.1.1.1, lib/pref/user.prf 1.1.1.1, lib/pref/xtra-gcu.prf 1.1.1.1, lib/pref/xtra-new.prf 1.1.1.1, lib/pref/xtra-xxx.prf 1.1.1.1, lib/save/Makefile.am 1.1.1.1, lib/save/Makefile.in 1.1.1.1, lib/save/delete.me 1.1.1.1, lib/script/Makefile.am 1.1.1.1, lib/script/Makefile.in 1.1.1.1, lib/script/delete.me 1.1.1.1, lib/user/Makefile.am 1.1.1.1, lib/user/Makefile.in 1.1.1.1, lib/user/delete.me 1.1.1.1, lib/xtra/Makefile.am 1.1.1.1, lib/xtra/Makefile.in 1.1.1.1, lib/xtra/font/10X20.FON 1.1.1.1, lib/xtra/font/12X24.FON 1.1.1.1, lib/xtra/font/5X8.FON 1.1.1.1, lib/xtra/font/6X10.FON 1.1.1.1, lib/xtra/font/6X12.FON 1.1.1.1, lib/xtra/font/6X13.FON 1.1.1.1, lib/xtra/font/6X13B.FON 1.1.1.1, lib/xtra/font/6X9.FON 1.1.1.1, lib/xtra/font/7X13.FON 1.1.1.1, lib/xtra/font/7X13B.FON 1.1.1.1, lib/xtra/font/8X13.FON 1.1.1.1, lib/xtra/font/8X13B.FON 1.1.1.1, lib/xtra/font/Makefile.am 1.1.1.1, lib/xtra/font/Makefile.in 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * lib/file/a_cursed.txt 1.1, lib/file/a_high.txt 1.1, lib/file/a_low.txt 1.1, lib/file/a_med.txt 1.1, lib/file/chainswd.txt 1.1, lib/file/crime.txt 1.1, lib/file/dead.txt 1.1, lib/file/death.txt 1.1, lib/file/elvish.txt 1.1, lib/file/error.txt 1.1, lib/file/mondeath.txt 1.1, lib/file/monfear.txt 1.1, lib/file/monfrien.txt 1.1, lib/file/monfrien_j.txt 1.1, lib/file/monspeak.txt 1.1, lib/file/monspeak_j.txt 1.1, lib/file/news.txt 1.1, lib/file/news_j.txt 1.1, lib/file/rumors.txt 1.1, lib/file/rumors_j.txt 1.1, lib/file/seppuku.txt 1.1, lib/file/seppuku_j.txt 1.1, lib/file/silly.txt 1.1, lib/file/silly_j.txt 1.1, lib/file/timefun.txt 1.1, lib/file/timefun_j.txt 1.1, lib/file/timenorm.txt 1.1, lib/file/timenorm_j.txt 1.1, lib/file/w_cursed.txt 1.1, lib/file/w_cursed_j.txt 1.1, lib/file/w_high.txt 1.1, lib/file/w_high_j.txt 1.1, lib/file/w_low.txt 1.1, lib/file/w_low_j.txt 1.1, lib/file/w_med.txt 1.1, lib/file/w_med_j.txt 1.1, lib/help/Makefile.am 1.1, lib/help/Makefile.in 1.1, lib/help/arena.txt 1.1, lib/help/attack.hlp 1.1, lib/help/attack.txt 1.1, lib/help/birth.hlp 1.1, lib/help/birth.txt 1.1, lib/help/bldg.txt 1.1, lib/help/command.hlp 1.1, lib/help/command.txt 1.1, lib/help/commdesc.hlp 1.1, lib/help/commdesc.txt 1.1, lib/help/dungeon.hlp 1.1, lib/help/dungeon.txt 1.1, lib/help/gambling.txt 1.1, lib/help/general.hlp 1.1, lib/help/general.txt 1.1, lib/help/help.hlp 1.1, lib/help/helpinfo.txt 1.1, lib/help/j_name.txt 1.1, lib/help/japanese.txt 1.1, lib/help/jattack.txt 1.1, lib/help/jbirth.txt 1.1, lib/help/jcommand.hlp 1.1, lib/help/jcommand.txt 1.1, lib/help/jcommand0.txt 1.1, lib/help/jcommdesc.hlp 1.1, lib/help/jcommdesc.txt 1.1, lib/help/jdungeon.txt 1.1, lib/help/jgambling.txt 1.1, lib/help/jgeneral.txt 1.1, lib/help/jhelp.hlp 1.1, lib/help/jhelpinfo.txt 1.1, lib/help/joption.hlp 1.1, lib/help/joption.txt 1.1, lib/help/jplaying.txt 1.1, lib/help/jversion.txt 1.1, lib/help/magic.hlp 1.1, lib/help/magic.txt 1.1, lib/help/option.hlp 1.1, lib/help/option.txt 1.1, lib/help/pref.hlp 1.1, lib/help/pref.txt 1.1, lib/help/readme.txt 1.1, lib/help/spoiler.hlp 1.1, lib/help/tang.txt 1.1, lib/help/version.txt 1.1, lib/info/Makefile.am 1.1, lib/info/Makefile.in 1.1, lib/info/delete.me 1.1, lib/pref/Makefile.am 1.1, lib/pref/Makefile.in 1.1, lib/pref/colors.prf 1.1, lib/pref/font-ami.prf 1.1, lib/pref/font-dos.prf 1.1, lib/pref/font-ibm.prf 1.1, lib/pref/font-mac.prf 1.1, lib/pref/font-mon.prf 1.1, lib/pref/font-win.prf 1.1, lib/pref/font-x11.prf 1.1, lib/pref/font-xxx.prf 1.1, lib/pref/font.prf 1.1, lib/pref/graf-ami.prf 1.1, lib/pref/graf-dos.prf 1.1, lib/pref/graf-gcu.prf 1.1, lib/pref/graf-ibm.prf 1.1, lib/pref/graf-mac.prf 1.1, lib/pref/graf-new.prf 1.1, lib/pref/graf-win.prf 1.1, lib/pref/graf-x11.prf 1.1, lib/pref/graf-xaw.prf 1.1, lib/pref/graf-xxx.prf 1.1, lib/pref/graf.prf 1.1, lib/pref/pref-acn.prf 1.1, lib/pref/pref-ami.prf 1.1, lib/pref/pref-emx.prf 1.1, lib/pref/pref-gcu.prf 1.1, lib/pref/pref-key.prf 1.1, lib/pref/pref-mac.prf 1.1, lib/pref/pref-opt.prf 1.1, lib/pref/pref-win.prf 1.1, lib/pref/pref-x11.prf 1.1, lib/pref/pref.prf 1.1, lib/pref/proxy.prf 1.1, lib/pref/spell-xx.prf 1.1, lib/pref/user-win.prf 1.1, lib/pref/user.prf 1.1, lib/pref/xtra-gcu.prf 1.1, lib/pref/xtra-new.prf 1.1, lib/pref/xtra-xxx.prf 1.1, lib/save/Makefile.am 1.1, lib/save/Makefile.in 1.1, lib/save/delete.me 1.1, lib/script/Makefile.am 1.1, lib/script/Makefile.in 1.1, lib/script/delete.me 1.1, lib/user/Makefile.am 1.1, lib/user/Makefile.in 1.1, lib/user/delete.me 1.1, lib/xtra/Makefile.am 1.1, lib/xtra/Makefile.in 1.1, lib/xtra/font/10X20.FON 1.1, lib/xtra/font/12X24.FON 1.1, lib/xtra/font/5X8.FON 1.1, lib/xtra/font/6X10.FON 1.1, lib/xtra/font/6X12.FON 1.1, lib/xtra/font/6X13.FON 1.1, lib/xtra/font/6X13B.FON 1.1, lib/xtra/font/6X9.FON 1.1, lib/xtra/font/7X13.FON 1.1, lib/xtra/font/7X13B.FON 1.1, lib/xtra/font/8X13.FON 1.1, lib/xtra/font/8X13B.FON 1.1, lib/xtra/font/Makefile.am 1.1, lib/xtra/font/Makefile.in 1.1:
-       New file.
-
-       * lib/Makefile.am 1.1.1.1, lib/Makefile.in 1.1.1.1, lib/apex/Makefile.am 1.1.1.1, lib/apex/Makefile.in 1.1.1.1, lib/apex/h_scores.raw 1.1.1.1, lib/apex/readme.txt 1.1.1.1, lib/bone/Makefile.am 1.1.1.1, lib/bone/Makefile.in 1.1.1.1, lib/bone/delete.me 1.1.1.1, lib/data/Makefile.am 1.1.1.1, lib/data/Makefile.in 1.1.1.1, lib/data/delete.me 1.1.1.1, lib/edit/Makefile.am 1.1.1.1, lib/edit/Makefile.in 1.1.1.1, lib/edit/a_info_j.txt 1.1.1.1, lib/edit/d_info_j.txt 1.1.1.1, lib/edit/e_info_j.txt 1.1.1.1, lib/edit/f_info_j.txt 1.1.1.1, lib/edit/k_info_j.txt 1.1.1.1, lib/edit/misc_j.txt 1.1.1.1, lib/edit/q0000001_j.txt 1.1.1.1, lib/edit/q0000002_j.txt 1.1.1.1, lib/edit/q0000003_j.txt 1.1.1.1, lib/edit/q0000004_j.txt 1.1.1.1, lib/edit/q0000005_j.txt 1.1.1.1, lib/edit/q0000006_j.txt 1.1.1.1, lib/edit/q0000007_j.txt 1.1.1.1, lib/edit/q0000019_j.txt 1.1.1.1, lib/edit/q0000020_j.txt 1.1.1.1, lib/edit/q0000021_j.txt 1.1.1.1, lib/edit/q0000022_j.txt 1.1.1.1, lib/edit/q0000023_j.txt 1.1.1.1, lib/edit/q0000027_j.txt 1.1.1.1, lib/edit/q0000028_j.txt 1.1.1.1, lib/edit/q00000ms_j.txt 1.1.1.1, lib/edit/q000chao_j.txt 1.1.1.1, lib/edit/q000dekn_j.txt 1.1.1.1, lib/edit/q000eric_j.txt 1.1.1.1, lib/edit/q000lyeh_j.txt 1.1.1.1, lib/edit/q000natu_j.txt 1.1.1.1, lib/edit/q000sorc_j.txt 1.1.1.1, lib/edit/q00water_j.txt 1.1.1.1, lib/edit/q0clone0_j.txt 1.1.1.1, lib/edit/q0fields_j.txt 1.1.1.1, lib/edit/q0thief1_j.txt 1.1.1.1, lib/edit/q0thief2_j.txt 1.1.1.1, lib/edit/q0willow_j.txt 1.1.1.1, lib/edit/q_info_j.txt 1.1.1.1, lib/edit/q_oberon_j.txt 1.1.1.1, lib/edit/q_pref_j.txt 1.1.1.1, lib/edit/q_random_j.txt 1.1.1.1, lib/edit/q_serpen_j.txt 1.1.1.1, lib/edit/q_warg_j.txt 1.1.1.1, lib/edit/qdarkelf_j.txt 1.1.1.1, lib/edit/qhaunted_j.txt 1.1.1.1, lib/edit/r_info_j.txt 1.1.1.1, lib/edit/t0000001_j.txt 1.1.1.1, lib/edit/t0000002_j.txt 1.1.1.1, lib/edit/t0000003_j.txt 1.1.1.1, lib/edit/t0000004_j.txt 1.1.1.1, lib/edit/t0000005_j.txt 1.1.1.1, lib/edit/t0000006_j.txt 1.1.1.1, lib/edit/t_basic_j.txt 1.1.1.1, lib/edit/t_info_j.txt 1.1.1.1, lib/edit/t_lite_j.txt 1.1.1.1, lib/edit/t_pref_j.txt 1.1.1.1, lib/edit/v_info_j.txt 1.1.1.1, lib/edit/w_info_j.txt 1.1.1.1, lib/file/Makefile.am 1.1.1.1, lib/file/Makefile.in 1.1.1.1, lib/file/a_cursed_j.txt 1.1.1.1, lib/file/a_high_j.txt 1.1.1.1, lib/file/a_low_j.txt 1.1.1.1, lib/file/a_med_j.txt 1.1.1.1, lib/file/aname_j.txt 1.1.1.1, lib/file/book-0_jp.txt 1.1.1.1, lib/file/chainswd_j.txt 1.1.1.1, lib/file/dead_j.txt 1.1.1.1, lib/file/death_j.txt 1.1.1.1, lib/file/elvish_j.txt 1.1.1.1, lib/file/error_j.txt 1.1.1.1, lib/file/mondeath_j.txt 1.1.1.1, lib/file/monfear_j.txt 1.1.1.1, src/main-ibm.c 1.1.1.1, src/makefile.bcc 1.1.1.1, src/makefile.dos 1.1.1.1, src/makefile.ibm 1.1.1.1, src/makefile.std 1.1.1.1, src/readdib.c 1.1.1.1, src/script.c 1.1.1.1, src/wall.bmp 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * lib/Makefile.am 1.1, lib/Makefile.in 1.1, lib/apex/Makefile.am 1.1, lib/apex/Makefile.in 1.1, lib/apex/h_scores.raw 1.1, lib/apex/readme.txt 1.1, lib/bone/Makefile.am 1.1, lib/bone/Makefile.in 1.1, lib/bone/delete.me 1.1, lib/data/Makefile.am 1.1, lib/data/Makefile.in 1.1, lib/data/delete.me 1.1, lib/edit/Makefile.am 1.1, lib/edit/Makefile.in 1.1, lib/edit/a_info_j.txt 1.1, lib/edit/d_info_j.txt 1.1, lib/edit/e_info_j.txt 1.1, lib/edit/f_info_j.txt 1.1, lib/edit/k_info_j.txt 1.1, lib/edit/misc_j.txt 1.1, lib/edit/q0000001_j.txt 1.1, lib/edit/q0000002_j.txt 1.1, lib/edit/q0000003_j.txt 1.1, lib/edit/q0000004_j.txt 1.1, lib/edit/q0000005_j.txt 1.1, lib/edit/q0000006_j.txt 1.1, lib/edit/q0000007_j.txt 1.1, lib/edit/q0000019_j.txt 1.1, lib/edit/q0000020_j.txt 1.1, lib/edit/q0000021_j.txt 1.1, lib/edit/q0000022_j.txt 1.1, lib/edit/q0000023_j.txt 1.1, lib/edit/q0000027_j.txt 1.1, lib/edit/q0000028_j.txt 1.1, lib/edit/q00000ms_j.txt 1.1, lib/edit/q000chao_j.txt 1.1, lib/edit/q000dekn_j.txt 1.1, lib/edit/q000eric_j.txt 1.1, lib/edit/q000lyeh_j.txt 1.1, lib/edit/q000natu_j.txt 1.1, lib/edit/q000sorc_j.txt 1.1, lib/edit/q00water_j.txt 1.1, lib/edit/q0clone0_j.txt 1.1, lib/edit/q0fields_j.txt 1.1, lib/edit/q0thief1_j.txt 1.1, lib/edit/q0thief2_j.txt 1.1, lib/edit/q0willow_j.txt 1.1, lib/edit/q_info_j.txt 1.1, lib/edit/q_oberon_j.txt 1.1, lib/edit/q_pref_j.txt 1.1, lib/edit/q_random_j.txt 1.1, lib/edit/q_serpen_j.txt 1.1, lib/edit/q_warg_j.txt 1.1, lib/edit/qdarkelf_j.txt 1.1, lib/edit/qhaunted_j.txt 1.1, lib/edit/r_info_j.txt 1.1, lib/edit/t0000001_j.txt 1.1, lib/edit/t0000002_j.txt 1.1, lib/edit/t0000003_j.txt 1.1, lib/edit/t0000004_j.txt 1.1, lib/edit/t0000005_j.txt 1.1, lib/edit/t0000006_j.txt 1.1, lib/edit/t_basic_j.txt 1.1, lib/edit/t_info_j.txt 1.1, lib/edit/t_lite_j.txt 1.1, lib/edit/t_pref_j.txt 1.1, lib/edit/v_info_j.txt 1.1, lib/edit/w_info_j.txt 1.1, lib/file/Makefile.am 1.1, lib/file/Makefile.in 1.1, lib/file/a_cursed_j.txt 1.1, lib/file/a_high_j.txt 1.1, lib/file/a_low_j.txt 1.1, lib/file/a_med_j.txt 1.1, lib/file/aname_j.txt 1.1, lib/file/book-0_jp.txt 1.1, lib/file/chainswd_j.txt 1.1, lib/file/dead_j.txt 1.1, lib/file/death_j.txt 1.1, lib/file/elvish_j.txt 1.1, lib/file/error_j.txt 1.1, lib/file/mondeath_j.txt 1.1, lib/file/monfear_j.txt 1.1, src/main-ibm.c 1.1, src/makefile.bcc 1.1, src/makefile.dos 1.1, src/makefile.ibm 1.1, src/makefile.std 1.1, src/readdib.c 1.1, src/script.c 1.1, src/wall.bmp 1.1:
-       New file.
-
-       * src/ang_eng.rc 1.1.1.1, src/angband.h 1.1.1.1, src/angband.ico 1.1.1.1, src/angband.rc 1.1.1.1, src/avatar.c 1.1.1.1, src/bldg.c 1.1.1.1, src/chuukei.c 1.1.1.1, src/defines.h 1.1.1.1, src/event.h 1.1.1.1, src/externs.h 1.1.1.1, src/generate.h 1.1.1.1, src/grid.h 1.1.1.1, src/h-basic.h 1.1.1.1, src/h-config.h 1.1.1.1, src/h-define.h 1.1.1.1, src/h-system.h 1.1.1.1, src/h-type.h 1.1.1.1, src/hissatsu.c 1.1.1.1, src/japanese.c 1.1.1.1, src/maid-x11.c 1.1.1.1, src/main-cap.c 1.1.1.1, src/main-dos.c 1.1.1.1, src/main-gcu.c 1.1.1.1, src/main-mac.c 1.1.1.1, src/main-win.c 1.1.1.1, src/main-x11.c 1.1.1.1, src/main-xaw.c 1.1.1.1, src/main.c 1.1.1.1, src/mane.c 1.1.1.1, src/mind.c 1.1.1.1, src/mindtips.h 1.1.1.1, src/mspells1.c 1.1.1.1, src/mspells2.c 1.1.1.1, src/mspells3.c 1.1.1.1, src/obj_kind.c 1.1.1.1, src/readdib.h 1.1.1.1, src/rooms.h 1.1.1.1, src/scores.c 1.1.1.1, src/spellstips.h 1.1.1.1, src/streams.h 1.1.1.1, src/types.h 1.1.1.1, src/wild.c 1.1.1.1, src/z-config.h 1.1.1.1, src/z-form.h 1.1.1.1, src/z-rand.h 1.1.1.1, src/z-term.h 1.1.1.1, src/z-util.h 1.1.1.1, src/z-virt.h 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * src/ang_eng.rc 1.1, src/angband.h 1.1, src/angband.ico 1.1, src/angband.rc 1.1, src/avatar.c 1.1, src/bldg.c 1.1, src/chuukei.c 1.1, src/defines.h 1.1, src/event.h 1.1, src/externs.h 1.1, src/generate.h 1.1, src/grid.h 1.1, src/h-basic.h 1.1, src/h-config.h 1.1, src/h-define.h 1.1, src/h-system.h 1.1, src/h-type.h 1.1, src/hissatsu.c 1.1, src/japanese.c 1.1, src/maid-x11.c 1.1, src/main-cap.c 1.1, src/main-dos.c 1.1, src/main-gcu.c 1.1, src/main-mac.c 1.1, src/main-win.c 1.1, src/main-x11.c 1.1, src/main-xaw.c 1.1, src/main.c 1.1, src/mane.c 1.1, src/mind.c 1.1, src/mindtips.h 1.1, src/mspells1.c 1.1, src/mspells2.c 1.1, src/mspells3.c 1.1, src/obj_kind.c 1.1, src/readdib.h 1.1, src/rooms.h 1.1, src/scores.c 1.1, src/spellstips.h 1.1, src/streams.h 1.1, src/types.h 1.1, src/wild.c 1.1, src/z-config.h 1.1, src/z-form.h 1.1, src/z-rand.h 1.1, src/z-term.h 1.1, src/z-util.h 1.1, src/z-virt.h 1.1:
-       New file.
-
-       * src/artifact.c 1.1.1.1, src/dungeon.c 1.1.1.1, src/effects.c 1.1.1.1, src/flavor.c 1.1.1.1, src/generate.c 1.1.1.1, src/grid.c 1.1.1.1, src/inet.c 1.1.1.1, src/init1.c 1.1.1.1, src/init2.c 1.1.1.1, src/load.c 1.1.1.1, src/mutation.c 1.1.1.1, src/racial.c 1.1.1.1, src/report.c 1.1.1.1, src/rooms.c 1.1.1.1, src/spells3.c 1.1.1.1, src/streams.c 1.1.1.1, src/wizard1.c 1.1.1.1, src/wizard2.c 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * src/artifact.c 1.1, src/dungeon.c 1.1, src/effects.c 1.1, src/flavor.c 1.1, src/generate.c 1.1, src/grid.c 1.1, src/inet.c 1.1, src/init1.c 1.1, src/init2.c 1.1, src/load.c 1.1, src/mutation.c 1.1, src/racial.c 1.1, src/report.c 1.1, src/rooms.c 1.1, src/spells3.c 1.1, src/streams.c 1.1, src/wizard1.c 1.1, src/wizard2.c 1.1:
-       New file.
-
-       * src/birth.c 1.1.1.1, src/cmd1.c 1.1.1.1, src/cmd2.c 1.1.1.1, src/cmd3.c 1.1.1.1, src/cmd4.c 1.1.1.1, src/cmd5.c 1.1.1.1, src/cmd6.c 1.1.1.1, src/files.c 1.1.1.1, src/store.c 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * src/birth.c 1.1, src/cmd1.c 1.1, src/cmd2.c 1.1, src/cmd3.c 1.1, src/cmd4.c 1.1, src/cmd5.c 1.1, src/cmd6.c 1.1, src/files.c 1.1, src/store.c 1.1:
-       New file.
-
-       * src/cave.c 1.1.1.1, src/kajitips.h 1.1.1.1, src/melee1.c 1.1.1.1, src/melee2.c 1.1.1.1, src/monster1.c 1.1.1.1, src/monster2.c 1.1.1.1, src/object1.c 1.1.1.1, src/object2.c 1.1.1.1, src/save.c 1.1.1.1, src/spells1.c 1.1.1.1, src/spells2.c 1.1.1.1, src/xtra1.c 1.1.1.1, src/xtra2.c 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * src/cave.c 1.1, src/kajitips.h 1.1, src/melee1.c 1.1, src/melee2.c 1.1, src/monster1.c 1.1, src/monster2.c 1.1, src/object1.c 1.1, src/object2.c 1.1, src/save.c 1.1, src/spells1.c 1.1, src/spells2.c 1.1, src/xtra1.c 1.1, src/xtra2.c 1.1:
-       New file.
-
-       * readme_angband 1.1.1.1, readme_eng.txt 1.1.1.1, src/Makefile.am 1.1.1.1, src/Makefile.in 1.1.1.1, src/autoconf.h.in 1.1.1.1, src/stamp-h.in 1.1.1.1, src/tables.c 1.1.1.1, src/util.c 1.1.1.1, src/variable.c 1.1.1.1, src/z-form.c 1.1.1.1, src/z-rand.c 1.1.1.1, src/z-term.c 1.1.1.1, src/z-util.c 1.1.1.1, src/z-virt.c 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * readme_angband 1.1, readme_eng.txt 1.1, src/Makefile.am 1.1, src/Makefile.in 1.1, src/autoconf.h.in 1.1, src/stamp-h.in 1.1, src/tables.c 1.1, src/util.c 1.1, src/variable.c 1.1, src/z-form.c 1.1, src/z-rand.c 1.1, src/z-term.c 1.1, src/z-util.c 1.1, src/z-virt.c 1.1:
-       New file.
-
-       * Makefile.am 1.1.1.1, Makefile.in 1.1.1.1, acconfig.h 1.1.1.1, aclocal.m4 1.1.1.1, autopick.txt 1.1.1.1, autopick_eng.txt 1.1.1.1, configure 1.1.1.1, configure.in 1.1.1.1, install-sh 1.1.1.1, missing 1.1.1.1, mkinstalldirs 1.1.1.1, readme.txt 1.1.1.1:
-       Hengband 1.0.8 start!
-
-
-       * Makefile.am 1.1, Makefile.in 1.1, acconfig.h 1.1, aclocal.m4 1.1, autopick.txt 1.1, autopick_eng.txt 1.1, configure 1.1, configure.in 1.1, install-sh 1.1, missing 1.1, mkinstalldirs 1.1, readme.txt 1.1:
-       New file.
-
index 5c95d14..4f9456b 100644 (file)
@@ -4,7 +4,7 @@
 # ¤¤¤Þ¤¹¡£¤³¤Î¥Õ¥¡¥¤¥ë¤ò 'picktype.prf' ¤È¤¤¤¦Ì¾Á°¤Ç
 # lib\user\picktype.prf ¤« ~/.angband/Hengband/picktype.prf ¤È¤·¤Æ¥³¥Ô¡¼
 # ¤¹¤ì¤Ð¡¢¤½¤Î¤Þ¤Þ¼«Æ°½¦¤¤¥Õ¥¡¥¤¥ë¤È¤·¤Æ»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
-# (Unix ¤Î¾ì¹ç¤Ï ~/.angband/Hengband/ ¤Î¤ß¤¬»ÈÍѲÄǽ¡£WindowÅù¡¢Unix°Ê
+# (Unix ¤Î¾ì¹ç¤Ï ~/.angband/Hengband/ ¤Î¤ß¤¬»ÈÍѲÄǽ¡£WindowsÅù¡¢Unix°Ê
 # ³°¤Î¾ì¹ç¤Ï¡¢lib\user\ ¤Î¤ß¤¬»ÈÍѲÄǽ¤Ç¤¹¡£)
 #
 #    ¡ü¼«Æ°½¦¤¤¤Î»È¤¤Êý
@@ -23,7 +23,7 @@
 #       ^B ^N ^P ^F      :  ¥«¡¼¥½¥ë¤ò°ÜÆ°¤·¤Þ¤¹¡£(¤¤¤Ä¤Ç¤â»È¤¨¤Þ¤¹)
 #       ^I  : »ý¤Áʪ/ÁõÈ÷¤«¤é¥¢¥¤¥Æ¥à¤òÁª¤ó¤Ç¤½¤Î̾Á°¤òÁÞÆþ¤·¤Þ¤¹¡£
 #       ^S  : ¥«¡¼¥½¥ë°ÌÃ֤Υ¢¥¤¥Æ¥à¤Î ½¦¤¦/Ç˲õ/ÊüÃÖ ¤ÎÀڤ괹¤¨
-#       ^U  : Ì¤´ÕÄê/*̤´ÕÄê*/´ÕÄêºÑ¤ß/*´ÕÄê*ºÑ¤ß ¤ÎÀ©¸Â¤ÎÀڤ괹¤¨
+#       ^U  : Ì¤´ÕÄê/̤ȽÌÀ/´ÕÄêºÑ¤ß/*´ÕÄê*ºÑ¤ß ¤ÎÀ©¸Â¤ÎÀڤ괹¤¨
 #       ^L  : ºÇ¸å¤Ë¼«Æ°Ç˲õ¤·¤¿¥¢¥¤¥Æ¥à¤Î̾Á°¤òÁÞÆþ¡£
 #       '/' : ¸¡º÷¡£Â³¤±¤Æ ^I ¤« ^L ¤ò²¡¤¹¤ÈľÀÜ»ØÄꤷ¤¿¥¢¥¤¥Æ¥à¤ò¸¡º÷¤·¤Þ¤¹¡£
 #       'n' : ¼¡¤Ë¥Þ¥Ã¥Á¤¹¤ë¹Ô¤ò¸¡º÷¡£(¾ò·ïʬ´ô¤ò¹Íθ¤·¤Þ¤»¤ó)
 #      ¡¦Ì¤È½ÌÀ¤Î¡Á        : ¸ú²Ì¤Îʬ¤«¤é¤Ê¤¤¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #      ¡¦Ì¤´ÕÄê¤Î¡Á        : ´ÕÄꤵ¤ì¤Æ¤¤¤Ê¤¤¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #      ¡¦´ÕÄêºÑ¤ß¤Î¡Á      : ´ÕÄꤵ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
-#      ¡¦*´ÕÄê*ºÑ¤ß¤Î¡Á    : ´°Á´¤Ë´ÕÄꤵ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
+#      ¡¦*´ÕÄê*ºÑ¤ß¤Î¡Á    : *´ÕÄê*¤µ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #      ¡¦¥À¥¤¥¹Ìܤΰ㤦¡Á  : »¦Ù¤¤ÎÉð´ïÅù¤Ç¥À¥¤¥¹¤ÎÌܤ¬Ä̾ï¤È°Û¤Ê¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #      ¡¦¥À¥¤¥¹ÌÜn°Ê¾å¤Î¡Á : ¥À¥¤¥¹¿ô¡ßÌÌ¿ô¤¬ n °Ê¾å¤Î¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #      ¡¦½¤ÀµÃÍn°Ê¾å¤Î¡Á   : Ç½ÎϽ¤ÀµÃͤ¬(+n)°Ê¾å¤Î¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 #        %:¥Õ¥¡¥¤¥ë̾
 #          lib\user\¥Õ¥¡¥¤¥ë̾ ¤« ~/.angband/Hengband/¥Õ¥¡¥¤¥ë̾ ¤ò¼«
 #          Æ°½¦¤¤¤ÎÅÐÏ¿¥Õ¥¡¥¤¥ë¤È¤·¤ÆÆɤ߹þ¤ß¤Þ¤¹¡£
-#        *·Ù¹ð!!* ¼«Ê¬¼«¿È(Î㤨¤Ðpicktype.prf)¤òÆɤ߹þ¤ó¤Ç¤·¤Þ¤¦¤È
-#                 ±Êµ×¥ë¡¼¥×¤Ë¤Ê¤Ã¤Æ¥¯¥é¥Ã¥·¥å¤¹¤ë¤Î¤ÇÀäÂФä¤é¤Ê¤¤¤è¤¦¤Ë¡£
 #    
 #      ¡¦»ÈÍѲÄǽ¤Ê±é»»»Ò
 #        [EQU °ú¿ô£± °ú¿ô£² ...]
index 30bf821..97b8476 100644 (file)
 #        %:filename
 #          Read a file named 'filename' as a new pick-pref file. The file 
 #          must be in the user directory.
-#          Caution: Avoid naming the parent file, or the game might freeze up.
 #    
 #      - usage of operators
 #        [EQU arg1 arg2 ...]
index 380c689..0df0e76 100644 (file)
@@ -3,7 +3,7 @@ AC_INIT(src/main.c)
 
 AM_CONFIG_HEADER(src/autoconf.h)
 
-AM_INIT_AUTOMAKE(hengband, 1.5.4)
+AM_INIT_AUTOMAKE(hengband, 1.6.2)
 
 AC_ARG_WITH(setgid,
 [  --with-setgid=NAME      install hengband as group NAME],
index 6df5e4f..91602b3 100644 (file)
@@ -1579,7 +1579,7 @@ F:STR | CON | HIDE_TYPE | CHAOTIC | REGEN | SLOW_DIGEST |
 F:SLAY_EVIL | BRAND_ELEC | SLAY_DEMON | FREE_ACT | RES_ELEC |
 F:RES_LITE | LITE | SEE_INVIS | SHOW_MODS | ACTIVATE | SPEED |
 F:SUST_CON | SUST_STR | SUST_INT | SUST_WIS | RES_DARK |
-F:RES_DISEN | RES_FEAR | BLOWS | SPEED
+F:RES_DISEN | RES_FEAR | BLOWS
 D:Ìë¤Î·õ¥°¥ì¥¤¥¹¥ï¥ó¥À¡¼¤ÈÂФò¤Ê¤¹Ãë¤Î·õ¤Ç¡¢¥È¥é¥ó¥×¤ÎËâÎϤ¬¹þ¤á¤é¤ì¤Æ¤¤¤ë¡£
 D:¡Ö¤½¤ì¤Ï²«¶â¤ÎÁÇÀ²¤é¤·¤¤ÂǽФ·ÌÏÍͤ¬»Ü¤µ¤ì¤¿¡¢Ä¹¤¤Ç»Îп§¤Î¾ä¤À¤Ã¤¿¡£
 D:¤½¤³¤«¤éÆͤ­½Ð¤Æ¤¤¤ë·õ¤ÎÊÁ¤Ï¶â¥á¥Ã¥­¤µ¤ì¤Æ¤¤¤ë¤é¤·¤¯¡¢ÊÁƬ¤Ë¤Ï
@@ -2298,7 +2298,7 @@ W:30:60:260:200000
 P:0:4d5:15:15:0
 F:BLOWS | VAMPIRIC | HOLD_LIFE | SLAY_UNDEAD | SLAY_EVIL | SLAY_HUMAN |
 F:REGEN | RES_FEAR | RES_BLIND | SLOW_DIGEST | SHOW_MODS
-D:¿ô¤¨ÀÚ¤ì¤Ê¤¤¤Û¤É¤Î¼ó¤òÍ¤Æ¤­¤¿¤³¤Î·ì¤Ëµ²¤¨¤¿¿Ï¤Ï
+D:¿ô¤¨ÀÚ¤ì¤Ê¤¤¤Û¤É¤Î¼ó¤òÍî¤Ȥ·¤Æ¤­¤¿¤³¤Î·ì¤Ëµ²¤¨¤¿¿Ï¤Ï
 D:Ũ¤Î·ì¤Èº²¤òµÛ¤Ã¤Æ¼ê¤Ë¤¹¤ë¼Ô¤ÎÂΤòÌþ¤¹¡£
 
 # The Long Bow 'Belthronding'
index eeac31c..bb6733b 100644 (file)
@@ -576,7 +576,7 @@ E:alarm
 G:^:R
 
 N:92:³«Ì祹¥¤¥Ã¥Á
-E:wall opeing trap
+E:wall opening trap
 G:^:w
 
 N:93:²Ö
index 2eb59ba..c48c9c0 100644 (file)
@@ -504,7 +504,7 @@ P:0:4d5:0:0:0
 F:SHOW_MODS
 D:$A giant, curved blade designed to cleave the head cleanly from the 
 D:$body.
-D:ƹÂΤ«¤éƬ¤òåºÎï¤ËÀÚ¤êÍ°Ù¤Ëºî¤é¤ì¤¿¡¢µðÂç¤Ê¶Ê¤Ã¤¿¿Ï¤ò»ý¤Ä·õ¤À¡£
+D:ƹÂΤ«¤éƬ¤òåºÎï¤ËÀÚ¤êÍî¤Ȥ¹°Ù¤Ëºî¤é¤ì¤¿¡¢µðÂç¤Ê¶Ê¤Ã¤¿¿Ï¤ò»ý¤Ä·õ¤À¡£
 
 N:41:¥«¥¿¥Ê
 E:& Katana~
@@ -818,7 +818,7 @@ P:0:4d4:0:0:0
 F:SHOW_MODS
 D:$An enormous two-handed battle axe, carried by Dwarven champions, who 
 D:$compete to see who can cleave the most orc heads.
-D:µðÂç¤Êξ¼ê»ý¤ÁÍѤÎÀïÉà¤À¡£¥ª¡¼¥¯¤Î¼ó¤òÍ¤¿¿ô¤ò¶¥¤¦¥É¥ï¡¼¥Õ¤ÎÀï»Î¤¬
+D:µðÂç¤Êξ¼ê»ý¤ÁÍѤÎÀïÉà¤À¡£¥ª¡¼¥¯¤Î¼ó¤òÍî¤Ȥ·¤¿¿ô¤ò¶¥¤¦¥É¥ï¡¼¥Õ¤ÎÀï»Î¤¬
 D:°¦ÍѤ·¤Æ¤¤¤ë¡£
 
 
@@ -2575,7 +2575,7 @@ I:75:35:100
 W:3:0:4:40
 A:3/1
 P:0:1d1:0:0:0
-D:$It heals you 6d8, cures blindness, confusion and berserk and reduces cuts 
+D:$It heals you 4d8, cures blindness, confusion and berserk and reduces cuts 
 D:$when you quaff it.
 D:¤½¤ì¤Ï°û¤à¤ÈÂÎÎϤ¬4d8²óÉü¤·¡¢ÌÕÌÜ¡¦º®Í𡦶¸Àï»Î²½¤òÌþ¤·¡¢ÀÚ¤ê½ý¤òϤ餲¤ë¡£
 
@@ -5631,7 +5631,7 @@ D:
 
 #JZ#
 N:584:¥É¥é¥´¥ó¡¦¥°¥í¡¼¥Ö
-E:& Set~ of Gloves of Dragon
+E:& Set~ of Dragon Gloves
 G:]:G
 I:31:3:0
 W:60:0:30:10000
@@ -6029,7 +6029,7 @@ W:85:0:50:7000
 A:85/4
 P:0:1d2:0:0:0
 F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
-D:$It produces a huge mana ball (damage of core: (300*d200)*2) centered on you 
+D:$It produces a huge mana ball (damage of core: (300+d200)*2) centered on you 
 D:$when you use it. If you are neither mage, high-mage, sorcerer, magiceater 
 D:$nor blue-mage, you take 50 damage.
 D:¤½¤ì¤Ï»È¤¦¤ÈÃæ¿´Éô¥À¥á¡¼¥¸(300+d200)*2¤ÎµðÂç¤Ê½ã¿è¤ÊËâÎϤεå¤ò¼«Ê¬¤ò
index fa555c8..3396aa9 100644 (file)
@@ -2885,7 +2885,7 @@ R:8:0
 R:9:0
 
 
-### Harper ###
+### Bard ###
 N:17
 I:MUSIC:CHR:0x04:0:1:400
 # Life
@@ -3535,7 +3535,7 @@ R:8:0
 R:9:0
 
 
-### Kihei ###
+### Cavalry ###
 N:22
 I:NONE:STR:0x00:0:99:0
 # Life
@@ -3603,7 +3603,7 @@ R:8:0
 R:9:0
 
 
-### Kaji ###
+### Weaponsmith ###
 N:24
 I:NONE:STR:0x00:0:99:0
 # Life
index 286c6ba..1d7aa39 100644 (file)
@@ -16,9 +16,9 @@ Q:$11:T:The Wizards of Chaos have discovered a magical Node of
 Q:$11:T:Chaos in a nearby volcano. You must seek the Node and
 Q:$11:T:dispatch its guardians so that the Tower of Chaos can
 Q:$11:T:claim the mystical energies of the Node.
-Q:11:T:¥«¥ª¥¹ËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î²Ð»³¤Ë¥«¥ª¥¹¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤¿¡£
-Q:11:T:²æ¡¹¥«¥ª¥¹ËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢
-Q:11:T:¤ª¤Þ¤¨¤Ï¤½¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤Æ¼éÈ÷Ââ¤òÇɸ¯¤¹¤ë¤Î¤À¡£
+Q:11:T:¥«¥ª¥¹ËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î²Ð»³¤Ë¥«¥ª¥¹¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤Î¸ºß¤ò³Îǧ
+Q:11:T:¤·¤¿¡£²æ¡¹¥«¥ª¥¹ËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢¤ª¤Þ¤¨¤Ï
+Q:11:T:¤½¤ÎÆðÛÅÀ¤Î¾ì½ê¤ò¸«¤Ä¤±¤Æ¤½¤³¤ËÁã¿©¤¦¥â¥ó¥¹¥¿¡¼¤òÊҤŤ±¤Æ¤¯¤ë¤Î¤À¡£
 ?:1
 
 # Description for quest reward
index 9abf500..5e3783c 100644 (file)
@@ -16,9 +16,9 @@ Q:$12:T:The Wizards of Nature have discovered a magical Node of
 Q:$12:T:Nature in a nearby forest. You must seek the Node and 
 Q:$12:T:dispatch its guardians so that the Tower of Nature can 
 Q:$12:T:claim the mystical energies of the Node.
-Q:12:T:¼«Á³ËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î¿¹¤Ë¼«Á³¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤¿¡£
-Q:12:T:²æ¡¹¼«Á³ËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢
-Q:12:T:¤ª¤Þ¤¨¤Ï¤½¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤Æ¼éÈ÷Ââ¤òÇɸ¯¤¹¤ë¤Î¤À¡£
+Q:12:T:¼«Á³ËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î¿¹¤Ë¼«Á³¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤Î¸ºß¤ò³Îǧ
+Q:12:T:¤·¤¿¡£²æ¡¹¼«Á³ËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢¤ª¤Þ¤¨¤Ï
+Q:12:T:¤½¤ÎÆðÛÅÀ¤Î¾ì½ê¤ò¸«¤Ä¤±¤Æ¤½¤³¤ËÁã¿©¤¦¥â¥ó¥¹¥¿¡¼¤òÊҤŤ±¤Æ¤¯¤ë¤Î¤À¡£
 ?:1
 
 # Description for quest reward
index e024bf6..2f1394e 100644 (file)
@@ -16,9 +16,9 @@ Q:$10:T:The Wizards of Sorcery have discovered a magical Node of Sorcery
 Q:$10:T:in a damp area nearby. You must seek the Node and dispatch 
 Q:$10:T:its guardians so that the Tower of Sorcery can claim the 
 Q:$10:T:mystical energies of the Node.
-Q:10:T:Àç½ÑËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î¼¾ÃϤËÀç½Ñ¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤¿¡£
-Q:10:T:²æ¡¹Àç½ÑËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢
-Q:10:T:¤ª¤Þ¤¨¤Ï¤½¤ÎÆðÛÅÀ¤ò¸«¤Ä¤±¤Æ¼éÈ÷Ââ¤òÇɸ¯¤¹¤ë¤Î¤À¡£
+Q:10:T:Àç½ÑËâË¡¤Î¸­¼Ô¤¿¤Á¤¬¡¢¶á¤¯¤Î¼¾ÃϤËÀç½Ñ¥¨¥Í¥ë¥®¡¼¤ÎÆðÛÅÀ¤Î¸ºß¤ò³Îǧ
+Q:10:T:¤·¤¿¡£²æ¡¹Àç½ÑËâË¡¤ÎÅ㤬¤½¤ÎËâÎϤνêÍ­¸¢¤òÆÀ¤é¤ì¤ë¤è¤¦¤Ë¡¢¤ª¤Þ¤¨¤Ï
+Q:10:T:¤½¤ÎÆðÛÅÀ¤Î¾ì½ê¤ò¸«¤Ä¤±¤Æ¤½¤³¤ËÁã¿©¤¦¥â¥ó¥¹¥¿¡¼¤òÊҤŤ±¤Æ¤¯¤ë¤Î¤À¡£
 ?:1
 
 # Description for quest reward
index b539a61..55fb5ae 100644 (file)
@@ -245,7 +245,7 @@ D:
 
 #JZ#
 #JZ#(¥³¥á¥ó¥È)Ìõ¤Ï »ç·î´×´Ý¤µ¤ó
-N:4:¥º¥ª¥¢¥ª¥È¥ê
+N:4:¥º¥¢¥ª¥¢¥È¥ê
 E:Chaffinch
 G:B:r
 I:110:1d1:30:1:10
@@ -254,7 +254,7 @@ B:BITE:HURT:1d3
 F:RAND_25 | CAN_FLY | WILD_ONLY | WILD_WOOD | WILD_GRASS
 F:ANIMAL | DROP_SKELETON
 D:$Utterly harmless, except when angry.
-D:Åܤ餻¤Ê¤±¤ì¤ÐÁ´¤¯Ìµ³²¤À¡£
+D:ƬÀIJַܡ£Åܤ餻¤Ê¤±¤ì¤ÐÁ´¤¯Ìµ³²¤À¡£
 
 #JZ#
 N:5:Ì¤µ¤®
@@ -749,7 +749,7 @@ D:
 
 #JZ#
 N:39:¡Ø¥°¥ì¡¼¥¿¡¼¡¦¥Ø¥ë=¥Ó¡¼¥¹¥È¡Ù
-E:Greater hell-beast
+E:Greater Hell-Beast
 G:U:s
 I:115:15d100:10:100:99
 W:1:6:0:250:0:0
@@ -1103,10 +1103,10 @@ B:CLAW:HURT:1d6
 B:CLAW:HURT:1d6
 F:BASH_DOOR | WILD_ALL | DROP_SKELETON | DROP_CORPSE
 F:ANIMAL
-D:$A larger than normal feline, hissing loudly.  Its velvet claws conceal a 
-D:$fistful of needles.
-D:Ä̾ï¤Î¥Í¥³¤è¤êÂΤ¬Â礭¤¯¤ÆÂ礭¤ÊÀ¼¤ÇÌĤ¯¡£¤½¤Î¥Ó¥í¡¼¥É¤ÎÈþ¤·¤¤ÄޤϱԤ¤
-D:¿Ë¤Î¤è¤¦¤À¡£
+D:$A larger than normal feline, hissing loudly.  Its velvet paws conceal a
+D:$ fistful of needles.
+D:Ä̾ï¤Î¥Í¥³¤è¤êÂΤ¬Â礭¤¯¤ÆÂ礭¤ÊÀ¼¤ÇÌĤ¯¡£
+D:¤½¤Î½À¤é¤«¤¯Èþ¤·¤¤Â­¤Ë¤Ï±Ô¤¤ÄÞ¤¬±£¤µ¤ì¤Æ¤¤¤ë¡£
 
 #J0#
 N:63:¡Ø¥¹¥á¥¢¥´¥ë¡Ù
@@ -1276,7 +1276,7 @@ I:120:10d8:2:1:99
 W:3:2:0:14:25:84
 B:TOUCH:EAT_LITE:1d6
 B:TOUCH:EAT_LITE:1d6
-F:NEVER_MOVE | CAN_SWIM |
+F:NEVER_MOVE | CAN_SWIM | HAS_DARK_1 |
 F:STUPID | EMPTY_MIND |
 F:IM_POIS |
 F:NO_CONF | NO_SLEEP | NO_FEAR
@@ -2576,7 +2576,7 @@ D:
 
 #JZ#
 N:159:¡Ø¼êÉ餤¤Î·§¡Ù
-E:The wounded bear
+E:The Wounded Bear
 G:q:r
 I:110:10d10:10:35:10
 W:9:1:0:25:0:0
@@ -4500,7 +4500,7 @@ G:Z:o
 I:110:6d6:30:30:0
 W:15:1:0:50:0:0
 B:BITE:HURT:1d6
-F:FORCE_SLEEP | DROP_CORPSE
+F:FORCE_SLEEP |
 F:FRIENDS | SELF_LITE_1 | SELF_LITE_2 |
 F:BASH_DOOR | 
 F:ANIMAL | RES_LITE
@@ -4516,7 +4516,7 @@ G:Z:D
 I:110:6d6:30:30:0
 W:15:1:0:50:0:0
 B:BITE:HURT:1d6
-F:FORCE_SLEEP | DROP_CORPSE
+F:FORCE_SLEEP |
 F:FRIENDS |
 F:BASH_DOOR | HURT_LITE | 
 F:ANIMAL | RES_DARK
@@ -4675,7 +4675,7 @@ B:BITE:HURT:1d6
 B:BITE:HURT:1d6
 B:BITE:HURT:1d6
 F:ATTR_CLEAR | 
-F:FRIENDS | DROP_SKELETON | DROP_CORPSE
+F:FRIENDS |
 F:INVISIBLE | BASH_DOOR | 
 F:ANIMAL
 D:$A completely translucent hound.
@@ -4947,7 +4947,7 @@ G:*:w
 I:120:6d6:100:30:0
 W:17:1:0:50:0:0
 B:EXPLODE:COLD:8d8
-F:FORCE_SLEEP | CAN_FLY |
+F:FORCE_SLEEP | CAN_FLY | COLD_BLOOD |
 F:EMPTY_MIND | AURA_COLD | HURT_FIRE |
 F:IM_COLD | NO_FEAR | NO_CONF | NO_SLEEP | NONLIVING
 D:$The embodiment of cold.
@@ -5079,7 +5079,7 @@ B:BITE:FIRE:2d3
 F:FORCE_SLEEP | SELF_LITE_2 |
 F:FRIENDS | 
 F:BASH_DOOR | HURT_COLD |
-F:ANIMAL | IM_FIRE | DROP_SKELETON | DROP_CORPSE |
+F:ANIMAL | IM_FIRE |
 S:1_IN_10 | 
 S:BR_FIRE
 D:$Flames lick at its feet and its tongue is a blade of fire.  You can feel a 
@@ -5098,7 +5098,7 @@ B:CLAW:HURT:1d8
 B:BITE:COLD:1d6
 F:FORCE_SLEEP | 
 F:FRIENDS | HURT_FIRE |
-F:BASH_DOOR | DROP_SKELETON | DROP_CORPSE |
+F:BASH_DOOR |
 F:ANIMAL | IM_COLD
 S:1_IN_10 | 
 S:BR_COLD
@@ -5117,7 +5117,7 @@ B:BITE:HURT:2d3
 B:BITE:HURT:2d3
 B:BITE:ELEC:2d3
 F:FORCE_SLEEP | SELF_LITE_2 |
-F:FRIENDS | DROP_SKELETON | DROP_CORPSE |
+F:FRIENDS |
 F:BASH_DOOR | 
 F:ANIMAL | IM_ELEC
 S:1_IN_10 | 
@@ -5617,7 +5617,7 @@ B:BITE:HURT:1d8
 B:CLAW:HURT:3d3
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
-F:FRIENDS | DROP_SKELETON | DROP_CORPSE
+F:FRIENDS |
 F:BASH_DOOR | HURT_ROCK |
 F:ANIMAL | RES_SHAR
 S:1_IN_10 | 
@@ -5640,7 +5640,7 @@ B:CLAW:HURT:3d3
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
 F:FRIENDS | CAN_FLY |
-F:BASH_DOOR | DROP_SKELETON | DROP_CORPSE | EAT_POISONOUS |
+F:BASH_DOOR |
 F:ANIMAL | IM_POIS
 S:1_IN_10 | 
 S:BR_POIS
@@ -5678,7 +5678,7 @@ B:CLAW:HURT:3d3
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
 F:FRIENDS | 
-F:BASH_DOOR | CAN_SWIM | DROP_SKELETON | DROP_CORPSE | EAT_ACIDIC |
+F:BASH_DOOR | CAN_SWIM |
 F:ANIMAL | IM_ACID
 S:1_IN_10 | 
 S:BR_ACID
@@ -6414,7 +6414,7 @@ F:IM_FIRE | IM_COLD | NO_CONF | NO_SLEEP | RES_DISE | RES_TELE
 S:1_IN_8 | 
 S:HEAL | HASTE | BO_FIRE
 D:$This tiny night dwarf is as greedy for gold as his brother, Alberich.
-D:¤³¤Î¾®¤µ¤Ê°Ç¤Î¥É¥ï¡¼¥Õ¤ÏÈà¤Î·»¥¢¥ë¥Ù¥ê¥åÒ¤ËÉ餱¤Ê¤¤¤¯¤é¤¤¶â¤ËìÅÍߤÀ¡£
+D:¤³¤Î¾®¤µ¤Ê°Ç¤Î¥É¥ï¡¼¥Õ¤ÏÈà¤Î·»¥¢¥ë¥Ù¥ê¥Ò¤ËÉ餱¤Ê¤¤¤¯¤é¤¤¶â¤ËìÅÍߤÀ¡£
 
 #JZ#
 #JZ#¥¢¥ë¥Ù¥ê¥Ò¤Î©»Ò¥Ï¡¼¥²¥ó
@@ -6422,7 +6422,7 @@ D:
 #JZ#¥¢¥ë¥Ù¥ê¥Ò¤Î©»Ò¤Ç¤¢¤ê¡¢¥°¥ó¥¿¡¼²¦¤Î°ÛÉãÄï¤Ë¤¢¤¿¤ê¤Þ¤¹¡£Õ¡·×¤Ë
 #JZ#¤è¤Ã¤Æ¥¸¡¼¥¯¥Õ¥ê¡¼¥É¤ò»¦³²¤·¡¢»Ø´Ä¤òÃ¥¤Ã¤¿ÈȿͤǤ¹¡£ by µ×ᤵ¤ó
 N:383:¥¢¥ë¥Ù¥ê¥Ò¤Î©»Ò¡Ø¥Ï¡¼¥²¥ó¡Ù
-E:Hagen, son of Alberich
+E:Hagen, Son of Alberich
 G:h:o
 I:110:82d10:20:80:10
 W:24:2:0:300:0:0
@@ -7119,7 +7119,7 @@ I:120:13d13:20:40:20
 W:27:2:0:130:0:0
 B:SLASH:EXP_20:2d13
 B:SLASH:EXP_20:2d13
-F:CHAR_MULTI | EVIL | IM_POIS | IM_COLD | 
+F:CHAR_MULTI | EVIL | IM_POIS | IM_COLD | RES_CHAO |
 F:FORCE_SLEEP | FORCE_MAXHP | CAN_FLY |
 F:COLD_BLOOD | BASH_DOOR | NONLIVING |
 F:NO_CONF | NO_SLEEP | NO_FEAR
@@ -7259,7 +7259,7 @@ B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
 F:FRIENDS | 
 F:BASH_DOOR | 
-F:ANIMAL | RES_SOUN | NO_CONF | NO_SLEEP | DROP_SKELETON | DROP_CORPSE
+F:ANIMAL | RES_SOUN | NO_CONF | NO_SLEEP |
 S:1_IN_5 | 
 S:BR_SOUN
 D:$A blurry canine form which seems to be moving as fast as the eye can 
@@ -7277,7 +7277,7 @@ B:BITE:HURT:2d8
 B:BITE:HURT:2d8
 B:CLAW:HURT:3d3
 B:CLAW:HURT:3d3
-F:FORCE_SLEEP | RES_NEXU | DROP_SKELETON | DROP_CORPSE | EAT_NEXUS |
+F:FORCE_SLEEP | RES_NEXU |
 F:FRIENDS | 
 F:BASH_DOOR | 
 F:ANIMAL | NO_CONF | NO_SLEEP
@@ -8480,7 +8480,7 @@ D:
 D:¤¿¤¯¤Ê¤Ã¤Æ¤¤¤ë¡£
 D:¤«¤Ä¤Æ¥É¥ê¡¼¥à¥é¥ó¥É¤Ç°ìÈֹ⤤ʸÌÀ¤ÎÃæ¿´¤Ç¤¢¤Ã¤¿¥µ¥ë¥Ê¥¹¤ò¡¢°ìÈÕ¤ÇÇ˲õ¤·
 D:¤Æ¤·¤Þ¤Ã¤¿¤³¤È¤¬¤¢¤ë¡£
-D:¥Ü¥¯¥ë¥°¤ÎÈ¿±þ¤ÏÈó¾ï¤ËÆߤ¯¡¢à¨ÃîÎà¤é¤·¤¯ÃÙ¤¤¥Ú¡¼¥¹¤Ç¹ÔÆ°¤¹¤ë¡£
+D:¥Ü¥¯¥é¥°¤ÎÈ¿±þ¤ÏÈó¾ï¤ËÆߤ¯¡¢à¨ÃîÎà¤é¤·¤¯ÃÙ¤¤¥Ú¡¼¥¹¤Ç¹ÔÆ°¤¹¤ë¡£
 D:·ã¤·¤¤Åܤê¤ò¡¢Áê¼ê¤¬¤È¤Ã¤¯¤Ë»à¤ó¤Ç¤¤¤ë¤È¤¤¤¦¤Î¤Ë¡¢¤½¤Î»Ò¹¤Ë¸þ¤±¤Æ¤Ö¤Ä¤±
 D:¤ë¤³¤È¤â¤¢¤ë¤È¤¤¤¦¡£
 D:¡Ê¥é¥ô¥¯¥é¥Õ¥È¡Ö¥µ¥ë¥Ê¥¹¤ò¤ß¤Þ¤Ã¤¿ºÒÌñ¡×¾¡Ë
@@ -8964,8 +8964,8 @@ B:BITE:HURT:4d4
 B:BITE:HURT:4d4
 F:FORCE_SLEEP | 
 F:FRIENDS | 
-F:BASH_DOOR | ATTR_MULTI | DROP_SKELETON | DROP_CORPSE
-F:ANIMAL | NO_CONF | NO_SLEEP | SELF_LITE_2 | EAT_POISONOUS | EAT_ACIDIC |
+F:BASH_DOOR | ATTR_MULTI |
+F:ANIMAL | NO_CONF | NO_SLEEP | SELF_LITE_2 |
 F:IM_ELEC | IM_POIS | IM_ACID | IM_FIRE | IM_COLD
 S:1_IN_5
 S:BR_ACID | BR_POIS | BR_COLD | BR_FIRE | BR_ELEC
@@ -9165,7 +9165,7 @@ B:HIT:EXP_20:13d1
 B:HIT:EXP_20:13d1
 F:FORCE_MAXHP | OPEN_DOOR | FRIENDS | DROP_60 | REGENERATE |
 F:ONLY_ITEM | NO_FEAR | NONLIVING |
-F:EVIL | IM_POIS | IM_COLD | IM_FIRE | DEMON 
+F:EVIL | IM_POIS | IM_COLD | IM_FIRE | RES_CHAO | DEMON
 D:$Slender, red-skinned demons twisting in nightmarish shapes. 
 D:$They are armed with hellblades, which will suck the life from 
 D:$your body.
@@ -9496,7 +9496,7 @@ B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
-F:FORCE_SLEEP | FRIENDS | DROP_SKELETON | DROP_CORPSE
+F:FORCE_SLEEP | FRIENDS |
 F:BASH_DOOR | 
 F:ANIMAL | RES_GRAV | NO_CONF | NO_SLEEP | 
 S:1_IN_5 | 
@@ -9540,7 +9540,7 @@ B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
-F:FORCE_SLEEP | FRIENDS | DROP_SKELETON | DROP_CORPSE
+F:FORCE_SLEEP | FRIENDS |
 F:BASH_DOOR | 
 F:ANIMAL | RES_INER | NO_CONF | NO_SLEEP
 S:1_IN_5 | 
@@ -9562,7 +9562,7 @@ B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
 F:FRIENDS | 
-F:BASH_DOOR | DROP_SKELETON | DROP_CORPSE
+F:BASH_DOOR |
 F:ANIMAL | RES_WALL | NO_CONF | NO_SLEEP
 S:1_IN_8 | 
 S:BR_WALL
@@ -10143,7 +10143,7 @@ D:
 
 #JZ#
 N:572:¡Ø¥°¥ì¡¼¥¿¡¼ÃϹöËâË¡¤ª¤Ð¤±¥­¥Î¥³=¥¯¥¤¥ë¥¹¥ë¥°¿Í´Ö¡Ù
-E:The Greater hell magic mushroom were-quylthulg
+E:The Greater Hell Magic Mushroom Were-Quylthulg
 G:Q:s
 I:120:19d99:50:80:50
 W:36:3:0:2500:0:0
@@ -10191,7 +10191,7 @@ D:$A Lord of Chaos famous for his skill at arms.
 D:º®Æ٤ε®Â²¤Ç¡¢Éð½Ñ¤Îã¿Í¤È¤·¤Æͭ̾¡£Àµ¡¹Æ²¡¹¤ÈÀ臘¤³¤È¤ò¹¥¤à¡£
 
 #JZ#
-N:574:º®ÆÙ¤ÎÍ»Ò
+N:574:º®ÆÙ¤ÎÍî¤Ȥ·»Ò
 E:Chaos spawn
 G:e:u
 I:110:26d26:20:50:20
@@ -10684,7 +10684,7 @@ B:HIT:HURT:6d6
 B:HIT:HURT:5d5
 B:HIT:HURT:5d5
 B:HIT:EXP_20
-F:FORCE_SLEEP | FORCE_MAXHP | SMART | RES_NETH | HUMAN |
+F:FORCE_SLEEP | FORCE_MAXHP | SMART | RES_NETH | MALE | HUMAN |
 F:ONLY_ITEM | DROP_1D2 | DROP_2D2 | 
 F:COLD_BLOOD | OPEN_DOOR | BASH_DOOR | 
 F:EVIL | IM_COLD | HAS_LITE_1 |
@@ -11083,7 +11083,7 @@ B:HIT:HURT:5d5
 B:HIT:HURT:5d5
 B:HIT:HURT:5d5
 B:HIT:HURT:5d5
-F:UNIQUE | FEMALE | DROP_1D2 | DROP_2D2 | ONLY_ITEM | DROP_GOOD |
+F:UNIQUE | FEMALE | DROP_1D2 | DROP_2D2 | ONLY_ITEM | DROP_GOOD | HUMAN |
 F:FORCE_SLEEP | FORCE_MAXHP | RAND_25 | DROP_CORPSE |
 F:CAN_SPEAK | CAN_SWIM | WILD_OCEAN |
 F:KILL_ITEM | KILL_BODY | BASH_DOOR | POWERFUL |
@@ -11347,19 +11347,19 @@ F:CAN_SWIM | NO_CONF | NO_SLEEP |
 D:$Weird, jelly like creatures. No two look the same.
 D:µ¤Ì£¤Î°­¤¤¥¼¥ê¡¼¾õÀ¸Êª¡£Æ±¤¸¤è¤¦¤Ë¤ß¤¨¤ë¤â¤Î¤ÏÆó¤Ä¤È̵¤¤¡£
 
-#JZ#
-N:627:¡ØFat Man¡Ù
-E:Fat Man
-G:{:D
-I:120:14d14:10:80:12
-W:40:255:0:200:0:0
-B:EXPLODE:SHATTER:200d2
-F:FORCE_SLEEP | FORCE_MAXHP | UNIQUE | REFLECTING |
-F:EMPTY_MIND | COLD_BLOOD | BASH_DOOR |
-F:IM_FIRE | IM_COLD | IM_ELEC | IM_POIS |
-F:NO_FEAR | NO_CONF | NO_SLEEP | NONLIVING | RES_TELE
-D:$A shining machine of death and destruction.
-D:µ±¤¯»à¤ÈÇ˲õ¤Îµ¡³£¤À¡£
+N:627:ÃϹö¤ÎÅ´ÄÈ
+E:Hammer of hell
+G:\:v
+I:100:50d10:30:40:0
+#
+# ½Ð¸½¤Ï1.7.x°Ê¹ß
+#
+W:24:255:0:1000:0:0
+B:CRUSH:SUPERHURT:30d1
+F:COLD_BLOOD | EVIL | NO_SLEEP | NO_CONF | NO_FEAR | NO_STUN | NONLIVING |
+F:IM_ACID | IM_COLD | IM_POIS | RES_NETH | RES_DARK | BASH_DOOR
+D:$A foul iron hammer forged with body and souls of victims on the infernal anvil.
+D:µ¾À·¼Ô¤ÎÁõÈ÷¤Èº²¤ò¸Ç¤á¤Æ¡¢ÃϹö¤ÎÅ´¾²¤ÇÃ䨤ƤǤ­¤¿²Ò¡¹¤·¤¤Å´ÄȤÀ¡£
 
 #JZ#
 N:628:¼ö¤ï¤ì¤·¡Ø¥Þ¥ì¥­¥¹¡Ù
@@ -11388,7 +11388,7 @@ D:
 #JZ#
 #JZ#¥â¥ë¥¬¥ó¥¹¥¿¡¼¥ó¡£ÌÀ¤ÎÌÀÀ±¹æ¡£¥¸¥å¥ê¥¢¥ó¤¬¾è¤Ã¤Æ¤¤¤ëÇÏ¡£ by Æ£²¬¤µ¤ó
 N:629:¥¸¥å¥ê¥¢¥ó¤Î¾èÇÏ¡ØÌÀ¤ÎÌÀÀ±¡Ù
-E:Morgenstern, Julian's steed
+E:Morgenstern, Julian's Steed
 G:q:W
 I:130:30d100:20:100:50
 W:40:3:0:2000:0:0
@@ -11626,7 +11626,7 @@ D:
 D:¤É¤ó¤ÊÆþ¤êÁȤó¤ÀÄÌÏ©¤Ç¤âÄ̤êÈ´¤±¤Æ¥À¥ó¥¸¥ç¥óÃæ¤Ë¶Á¤­ÅϤ롣
 
 #J0#
-N:641:¥ß¥Î¥¿¥¦¥ë¥¹
+N:641:¥ß¥Î¥¿¥¦¥í¥¹
 E:Minotaur
 G:H:U
 I:130:100d10:13:25:10
@@ -11953,7 +11953,7 @@ D:
 D:³°¸«¤ÏˢΩ¤ÄÉÔÄê·Á¤Î¸Ç¤Þ¤ê¤Ç¡¢²¿É´¤â¤Îµ¶Â­¤¬¤½¤³¤«¤é¿­¤Ó¤Æ¤¤¤ë¡£
 D:¥¦¥Ü¡á¥µ¥¹¥é¤Îµ¶Â­¤ÏÀ䤨´Ö¤Ê¤¯·ÁÀ®¤µ¤ì¤Æ¤Ï¿¶¤ê²ó¤µ¤ì¡¢
 D:¥¨¥µ¤Ë¿¨¤ì¤ë¤È¤½¤ì¤òÄϤó¤Ç¼«Ê¬¤ÎÃæ¤Ë¼è¤ê¹þ¤ó¤Ç¤¤¤ë¡£
-D:¤Þ¤¿¡¢¥¦¥Ü¡á¥µ¥¹¥é¤«¤é¤ÏÀ䤨´Ö¤Ê¤¯¡ÖÍ»Ò¡×¤¬À¸»º¤µ¤ì¤Ä¤Å¤±¤Æ¤ª¤ê¡¢
+D:¤Þ¤¿¡¢¥¦¥Ü¡á¥µ¥¹¥é¤«¤é¤ÏÀ䤨´Ö¤Ê¤¯¡ÖÍî¤Ȥ·»Ò¡×¤¬À¸»º¤µ¤ì¤Ä¤Å¤±¤Æ¤ª¤ê¡¢
 D:¥¦¥Ü¡á¥µ¥¹¥éËÜÂΤϤ½¤ì¤ò¥¨¥µ¤È¤·¤ÆºÆ¤Ó¼«Ê¬¤ÎÃæ¤ËµÛ¼ý¤·¤Æ¤¤¤ë¡£
 D:´õ¤Ë¿Æ¤Îµ¶Â­¤«¤éƨ¤ì¤¿¤â¤Î¤Ï¡¢
 D:º²¤Î̵¤¤¿Æ¤Îµ¤¤Þ¤°¤ì¤ÎÂå¹Ô¼Ô¤È¤Ê¤ë¤¬¡¢Æ¶·¢¤«¤é½Ð¤ë¤³¤È¤Ï¤Ê¤¤¤è¤¦¤À¡£
@@ -12081,7 +12081,7 @@ D:
 
 #JZ#
 N:660:¥Ö¥é¥ó¥É¤Î©»Ò¡Ø¥ê¥Ê¥ë¥É¡Ù
-E:Rinaldo, son of Brand
+E:Rinaldo, Son of Brand
 G:p:w
 I:120:16d100:20:120:40
 W:41:3:0:7000:0:0
@@ -12309,7 +12309,7 @@ F:ANIMAL | NO_CONF | NO_SLEEP | CAN_SWIM | RIDING
 S:1_IN_8
 S:BR_POIS | BR_DARK | BR_NETH
 D:$A large basilisk, whose shape resembles that of a great wyrm.
-D:Âç·¿¤Î¥Ð¥¸¥ê¥¹¥¯¤Ç¡¢¥ï¥¤¥¢¡¼¥à¤Ë»÷¤¿»Ñ¤ò¤·¤Æ¤¤¤ë¡£
+D:Âç·¿¤Î¥Ð¥·¥ê¥¹¥¯¤Ç¡¢¥ï¥¤¥¢¡¼¥à¤Ë»÷¤¿»Ñ¤ò¤·¤Æ¤¤¤ë¡£
 
 #JZ#
 N:669:¡Ø¥«¥ê¥Ö¥Ç¥£¥¹¡Ù
@@ -13712,7 +13712,7 @@ B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | SELF_DARK_1 |
-F:FRIENDS | RES_NETH | DROP_SKELETON | DROP_CORPSE
+F:FRIENDS | RES_NETH |
 F:OPEN_DOOR | BASH_DOOR | 
 F:ANIMAL | NO_CONF | NO_SLEEP
 S:1_IN_5 | 
@@ -13734,7 +13734,7 @@ B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP | 
 F:FRIENDS | 
-F:OPEN_DOOR | BASH_DOOR | DROP_SKELETON | DROP_CORPSE
+F:OPEN_DOOR | BASH_DOOR |
 F:ANIMAL | RES_TIME | NO_CONF | NO_SLEEP
 S:1_IN_8 | 
 S:BR_TIME
@@ -13756,7 +13756,7 @@ B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP |
 F:FRIENDS | RES_PLAS | SELF_LITE_2 |
-F:OPEN_DOOR | BASH_DOOR | DROP_SKELETON | DROP_CORPSE
+F:OPEN_DOOR | BASH_DOOR |
 F:ANIMAL | IM_ELEC | IM_FIRE | NO_CONF | NO_SLEEP
 S:1_IN_5 | 
 S:BR_PLAS
@@ -13795,7 +13795,7 @@ D:
 #J0# °ìÈÖµ¤¤ËÆþ¤ê¤Þ¤·¤¿¤Î¤Ç¡¢¤½¤¦¤·¤Æ¤¢¤ê¤Þ¤¹¡£
 #J0#
 N:728:¥¹¥È¡¼¥à¡¦¥ï¥¤¥¢¡¼¥à
-E:Great storm wyrm
+E:Great Storm Wyrm
 G:D:b
 I:120:30d100:30:150:80
 W:51:2:0:13000:0:0
@@ -13875,7 +13875,7 @@ B:HIT:HURT:10d5
 B:HIT:HURT:10d5
 B:HIT:HURT:10d5
 B:HIT:EXP_80
-F:FORCE_SLEEP | FORCE_MAXHP | SMART | IM_FIRE | IM_COLD | IM_POIS | HUMAN |
+F:FORCE_SLEEP | FORCE_MAXHP | SMART | IM_FIRE | IM_COLD | IM_POIS | MALE | HUMAN |
 F:ONLY_ITEM | DROP_1D2 | DROP_2D2 | RES_NETH | RES_NEXU | RES_PLAS |
 F:COLD_BLOOD | OPEN_DOOR | BASH_DOOR | EVIL
 S:1_IN_5 |
@@ -14148,12 +14148,12 @@ S:BLIND | CONF | SCARE | CAUSE_4 | CAUSE_3 |
 S:BA_WATE | DARKNESS | BR_DARK | TELE_TO 
 D:$An enormously fearsome and powerful inhabitant of the depths. It 
 D:$resembles a gargantuan octopus and its evil is almost tangible.
-D:¤È¤Æ¤Ä¤â¤Ê¤¯¶¯¤¯¶²¤·¤¤¿¼³¤¤ÎÀ¸¤­Êª¤À¡£µðÂç¤ÊÂý¤Ë»÷¤Æ¤¤¤Æ¡¢
+D:¤È¤Æ¤Ä¤â¤Ê¤¯¶¯¤¯¶²¤í¤·¤¤¿¼³¤¤ÎÀ¸¤­Êª¤À¡£µðÂç¤ÊÂý¤Ë»÷¤Æ¤¤¤Æ¡¢
 D:¸«¤¿¤À¤±¤Ç¤½¤Î¼Ù°­¤µ¤¬ÅÁ¤ï¤Ã¤Æ¤¯¤ë¡£
 
 #J0#
 N:741:¥¢¥¤¥¹¡¦¥ï¥¤¥¢¡¼¥à
-E:Great ice wyrm
+E:Great Ice Wyrm
 G:D:w
 I:120:30d100:30:170:80
 W:54:2:0:15000:0:0
@@ -14373,7 +14373,7 @@ S:BO_MANA | BO_NETH | BA_NETH |
 S:S_UNDEAD
 D:$A bloodshot eyeball floating in the air, you'd be forgiven for assuming it 
 D:$harmless.
-D:¤½¤ì¤ÏÃè¤ËÉ⤫¤Ö·ìÁö¤Ã¤¿Ì̤ܶÀ¡£Ìµ³²¤À¤È»×¤Ã¤Æ¤â¤«¤Þ¤ï¤Ê¤¤¡£
+D:¤½¤ì¤ÏÃè¤ËÉ⤫¤Ö·ìÁö¤Ã¤¿Ì̤ܶÀ¡£Ìµ³²¤À¤È»×¤Ã¤¿¤Î¤â̵Íý¤Ï¤Ê¤¤¤¬¡Ä¡£
 
 #J0#
 N:750:Ƭ³¸¤Î¥É¥ë¥¸
@@ -14397,7 +14397,7 @@ S:S_UNDEAD
 D:$A glowing skull possessed by sorcerous power.  It need not move, but 
 D:$merely blast you with mighty magic.
 D:¤½¤ì¤Ïȯ¸÷¤¹¤ëƬ³¸¹ü¤Ç¡¢¥½¡¼¥µ¥é¡¼¤ÎÎϤˤè¤Ã¤ÆÆ°¤«¤µ¤ì¤Æ¤¤¤ë¡£
-D:¤¢¤Þ¤êÆ°¤«¤Ê¤¤¤¬¡¢¤Þ¤ì¤Ë¶¯ÎϤÊËâË¡¤Ç¹¶·â¤·¤Æ¤¯¤ë¡£
+D:Æ°¤¯É¬Íפ¬¤Ê¤¯¡¢¶¯ÎϤÊËâË¡¤Ç¹¶·â¤·¤Æ¤¯¤ë¤Î¤ß¤Ç¤¢¤ë¡£
 
 #J0#
 N:751:¥«¥ª¥¹¡¦¥Ü¥ë¥Æ¥Ã¥¯¥¹
@@ -14520,7 +14520,7 @@ D:
 
 #J0#
 N:756:¥Ø¥ë¡¦¥ï¥¤¥¢¡¼¥à
-E:Great hell wyrm
+E:Great Hell Wyrm
 G:D:r
 I:120:54d100:40:170:40
 W:55:2:0:18000:0:0
@@ -15109,7 +15109,7 @@ S:BLIND | CONF | SCARE | CAUSE_4 | CAUSE_3 | TELE_TO | TELE_AWAY |
 S:BA_WATE | DARKNESS | BR_DARK | BR_ACID | BR_POIS
 D:$An enormously fearsome and powerful inhabitant of the depths. It 
 D:$resembles a gargantuan octopus and its evil is almost tangible.
-D:¤È¤Æ¤Ä¤â¤Ê¤¯¶¯¤¯¶²¤·¤¤¿¼³¤¤ÎÀ¸¤­Êª¤À¡£µðÂç¤ÊÂý¤Ë»÷¤Æ¤¤¤Æ¡¢
+D:¤È¤Æ¤Ä¤â¤Ê¤¯¶¯¤¯¶²¤í¤·¤¤¿¼³¤¤ÎÀ¸¤­Êª¤À¡£µðÂç¤ÊÂý¤Ë»÷¤Æ¤¤¤Æ¡¢
 D:¸«¤¿¤À¤±¤Ç¤½¤Î¼Ù°­¤µ¤¬ÅÁ¤ï¤Ã¤Æ¤¯¤ë¡£
 
 #JZ#
@@ -15197,7 +15197,7 @@ B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:BITE:HURT:2d12
 B:CLAW:HURT:3d3
-F:ATTR_MULTI | ATTR_ANY | DROP_SKELETON | DROP_CORPSE
+F:ATTR_MULTI | ATTR_ANY |
 F:FORCE_SLEEP | 
 F:FRIENDS | 
 F:BASH_DOOR | 
@@ -15268,7 +15268,7 @@ B:BITE:FIRE:5d12
 B:BITE:FIRE:5d12
 B:CRUSH:HURT:6d15
 B:CRUSH:HURT:6d15
-F:FORCE_SLEEP | FORCE_MAXHP | AQUATIC | WILD_OCEAN |
+F:FORCE_SLEEP | FORCE_MAXHP | AQUATIC | WILD_OCEAN | EVIL |
 F:IM_FIRE | IM_ACID | IM_COLD | IM_POIS | RES_DARK |
 F:DRAGON | NO_CONF | NO_SLEEP | NO_FEAR | DROP_CORPSE | RIDING
 S:1_IN_9
@@ -15624,7 +15624,7 @@ D:$passion nor compassion. He was dressed completely in scaled white armor,
 D:$not silver or metallic-colored, but looking as if it had been enameled."
 D:¥¸¥å¥ê¥¢¥ó¤ÏÌîÀ­¤Î¿¹ÎÓ¤ò²÷Ŭ¤Ë»×¤Ã¤Æ¤¤¤ë¡£Èà¤Î³Ú¤·¤ß¤Ï¼í¤ê¤¬¤¤¤Î¤¢¤ë³Íʪ¡¢
 D:¤¹¤Ê¤ï¤Á¤¢¤Ê¤¿¤ò¤·¤È¤á¤ë¤³¤È¤À¡£
-D:¡Ö¹õ¤¤È±¤òŤ¯¿­¤Ð¤·¡¢ÀĤ¤ÌܤˤÏÇ®¾ð¤âƱ¾è¤âɽ¤ì¤Æ¤¤¤Ê¤¤¡£Çò¤¤¾®»¥³»¤Ë¿È
+D:¡Ö¹õ¤¤È±¤òŤ¯¿­¤Ð¤·¡¢ÀĤ¤ÌܤˤÏÇ®¾ð¤âƱ¾ð¤âɽ¤ì¤Æ¤¤¤Ê¤¤¡£Çò¤¤¾®»¥³»¤Ë¿È
 D:¤òÊñ¤ó¤Ç¤¤¤ë¡£¶ä¤È¤«¤½¤Î¾¤Î¶â°Ū¤Ê¿§¤Ç¤Ï¤Ê¤¯¤Æ¡¢¤Þ¤ë¤Ç¥¨¥Ê¥á¥ë¤òÅɤÃ
 D:¤¿¤è¤¦¤Ë¸«¤¨¤ë¡£¡×
 D:¡Ê¥í¥¸¥ã¡¼¡¦¥¼¥é¥º¥Ë¥¤¡¢²¬Éô¹¨Ç·Ìõ¡Ö¥¢¥ó¥Ð¡¼¤Î¶å²¦»Ò¡×ÁáÀî½ñ˼¡¢p.46¡Ë
@@ -16104,8 +16104,7 @@ B:CLAW:HURT:3d3
 F:ATTR_MULTI | ATTR_ANY |
 F:FORCE_SLEEP | CAN_FLY |
 F:FRIENDS |
-F:BASH_DOOR | AURA_FIRE | AURA_ELEC | AURA_COLD | DROP_CORPSE | 
-F:DROP_SKELETON | SELF_LITE_2 |
+F:BASH_DOOR | AURA_FIRE | AURA_ELEC | AURA_COLD | SELF_LITE_2 |
 F:ANIMAL | IM_ACID | IM_FIRE | IM_COLD | IM_ELEC | IM_POIS | 
 F:RES_LITE | RES_DARK | RES_SOUN | RES_CHAO | RES_NETH | RES_DISE |
 F:RES_WALL | RES_INER | RES_TIME | RES_GRAV | RES_PLAS | RES_NEXU | RES_SHAR |
@@ -16874,7 +16873,7 @@ D:
 D:Ê¿¶Ñ¿ÈĹ¤Ï£±£µ¡Á£²£°¥á¡¼¥È¥ë¤À¤¬¡¢
 D:ÂΤγÆÉô°Ì¤ÎÂ礭¤µ¤ò¼«Í³¤ËÊѤ¨¤ë»ö¤¬½ÐÍè¤ë¡£
 D:¸µ¡¹¤Ï¥ë¥ë¥¤¥¨¤ËÀ¸Â©¤·¤Æ¤¤¤¿¤¬¡¢¤½¤ÎÄÀËפȶ¦¤ËÂçÉôʬ¤ÏÉõ°õ¤µ¤ì¤Æ¤¤¤ë¡£
-D:¤·¤«¤·¡¢°ìÉô¤Î¥¯¥È¥¥¥ë¥Õ¤ÎÍ»Ò¤Ï¡¢¥Ç¥£¡¼¥×¥ï¥ó¤Ë¤è¤Ã¤Æ¡¢
+D:¤·¤«¤·¡¢°ìÉô¤Î¥¯¥È¥¥¥ë¥Õ¤ÎÍî¤Ȥ·»Ò¤Ï¡¢¥Ç¥£¡¼¥×¥ï¥ó¤Ë¤è¤Ã¤Æ¡¢
 D:¿¼¤¤³¤¹Â¤ÎÄì¤ÇÍܤï¤ì¤Æ¤¤¤ë¡£
 D:¡Ö¤¹¤Ù¤Æ¤¬¥ë¥ë¥¤¥¨¤ÎµðÂç¤ÊÀФ¤ê¤Î´Û¤Ë²£¤¿¤ï¤ê¡¢¶¯ÁԤʥ¯¥È¥¥¥ë¡¼
 D:¤Î¼öʸ¤Ë¤Þ¤â¤é¤ì¡¢À±¤¿¤Á¤ÈÃϵ夬¤Õ¤¿¤¿¤ÓÀµ¤·¤¤°ÌÃ֤ˤâ¤É¤ëµ±¤«¤·
@@ -17041,7 +17040,7 @@ D:
 D:²æ¡¹¤ÎÀ¤³¦¤Ë¾¤´­¤µ¤ì¤¿¾ì¹ç¡¢¥¬¥¹¾õ¤Î·ÁÂÖ¤ÇÃϵå¤Î³Ë¤Þ¤Ç¿»Æ©¤·¡¢
 D:¤½¤³¤«¤é²ÐÃì¤È¤Ê¤Ã¤ÆÃϾå¤ËÊ®¤­½Ð¤·¤Æ¤¯¤ë¡£
 D:¡ÖÊ®½Ð¤¹¤ëÉÂŪ¤ÊÎп§¤Î±ë¤ÎÃì... ¿¼±ó¤«¤Ä¿ÍÃΤò±Û¤¨¤¿ÃϤÎÄ줫¤é
-D:²Ð»³¤ÎÍͤˤۤȤФ·¤ê¡¢·òÁ´¤Ê±ë¤¬Í¤Ï¤º¤Î±Æ¤òºî¤é¤º¡¢
+D:²Ð»³¤ÎÍͤˤۤȤФ·¤ê¡¢·òÁ´¤Ê±ë¤¬Íî¤Ȥ¹¤Ï¤º¤Î±Æ¤òºî¤é¤º¡¢
 D:¾ËÀФò¤ª¤¾¤Þ¤·¤¯¤âÆÇ¡¹¤·¤¤ÎÐÀĤÇÊñ¤à¡£¤½¤Î¤è¤¦¤Ê·ã¤·¤¤Ç³¾Æ
 D:¤ËÈ¿¤·¤Æ¤½¤³¤ËÇ®¤Ï¤Ê¤¯¡¢¤¿¤À»à¤ÈÉåÇԤμ¾µ¤¤¬¤¢¤ë¤Î¤ß¤À¡£¡×
 D:¡Ê¥é¥ô¥¯¥é¥Õ¥È¡Ö½Ëº×¡×¡Ë
@@ -18238,7 +18237,7 @@ B:BITE:HURT:25d1
 B:CLAW:HURT:3d3
 F:FORCE_SLEEP |
 F:FRIENDS | SELF_LITE_1 |
-F:OPEN_DOOR | BASH_DOOR | DROP_SKELETON | DROP_CORPSE
+F:OPEN_DOOR | BASH_DOOR |
 F:ANIMAL | NO_CONF | NO_SLEEP
 S:1_IN_8 |
 S:BR_MANA
@@ -18279,7 +18278,7 @@ D:$It was left here to be used against intruders.
 D:¤½¤ì¤Ï¿¯Æþ¼Ô¤ËÂФ·¤Æ»ÈÍѤ¹¤ë¤¿¤á¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¡£
 
 N:890:¥ô¥§¥Î¥à¡¦¥ï¥¤¥¢¡¼¥à
-E:Great venom wyrm
+E:Great Venom Wyrm
 G:D:g
 I:120:54d100:30:170:80
 W:55:2:0:16000:0:0
@@ -18404,7 +18403,7 @@ F:DROP_CORPSE | DROP_SKELETON | CAN_SWIM
 S:1_IN_5 |
 S:ROCKET
 D:$You watch in horror as he aims his massive weapon at you.
-D:Èà¤Ï¤½¤Î¶²¤·¤¤½Å²Ð´ï¤ÎÁÀ¤¤¤ò¤¢¤Ê¤¿¤Ë¸þ¤±¤Æ¤¤¤ë¡£
+D:Èà¤Ï¤½¤Î¶²¤í¤·¤¤½Å²Ð´ï¤ÎÁÀ¤¤¤ò¤¢¤Ê¤¿¤Ë¸þ¤±¤Æ¤¤¤ë¡£
 
 N:897:ÇËÊҥܥë¥Æ¥Ã¥¯¥¹
 E:Shard vortex
@@ -18431,7 +18430,7 @@ W:30:2:0:350:0:0
 B:TOUCH:ACID:8d8
 B:TOUCH:PARALYZE:3d3
 F:NEVER_MOVE | MULTIPLY | ONLY_GOLD | DROP_90 | ANIMAL | HURT_ROCK |
-F:NO_FEAR | NO_SLEEP | NO_CONF | NO_STUN | EMPTY_MIND
+F:NO_FEAR | NO_SLEEP | NO_CONF | NO_STUN | EMPTY_MIND | COLD_BLOOD |
 F:IM_COLD | IM_FIRE | IM_ELEC | IM_POIS
 D:$Just a normal wall, boring gray rock. But wait! It seems to be growing...
 D:¤¿¤À¤ÎÉáÄ̤ÎÊɤÀ¡£¸«¤Ê¤ì¤¿³¥¿§¤Î´ä¤Ç¤Ç¤­¤Æ¤¤¤ë¡£
@@ -18493,8 +18492,8 @@ I:100:15d25:15:120:10
 W:25:2:0:100:700:898
 B:TOUCH:FIRE:5d5
 B:TOUCH:PARALYZE:3d3
-F:NEVER_MOVE | MULTIPLY | ONLY_GOLD | DROP_60 | DROP_90 | EMPTY_MIND
-F:ANIMAL | HURT_ROCK | COLD_BLOOD | NO_FEAR | NO_CONF | NO_SLEEP | NO_STUN |
+F:NEVER_MOVE | MULTIPLY | ONLY_GOLD | DROP_60 | DROP_90 | EMPTY_MIND |
+F:ANIMAL | HURT_ROCK | NO_FEAR | NO_CONF | NO_SLEEP | NO_STUN |
 F:IM_ACID | IM_ELEC | IM_POIS | IM_FIRE
 D:$It's just a block of dark rock. But wait! It seems to be growing...
 D:ÉáÄ̤ιõ¤¤´ä¤ÎÊɤÀ¡£¤·¤«¤·¤Á¤ç¤Ã¤ÈÂԤƤ衩¤À¤ó¤À¤óÂ礭¤¯¤Ê¤Ã¤Æ¤¯¤ë¤è¤¦¤Ê¡Ä
@@ -18624,7 +18623,7 @@ D:$An ingenious gnomish invention -- a golem designed for underwater
 D:$usage.
 D:¥Î¡¼¥à¤ÎÅ·ºÍ¤¬ºî¤Ã¤¿È¯ÌÀÉʤÀ¡£¿¼¤¤¿åÃæ¤ÇƯ¤¯¤è¤¦¤ËÀ߷פµ¤ì¤¿¥´¡¼¥ì¥à¤Ç¤¢¤ë¡£
 
-N:911:ÀбѤÎÊÉ
+N:911:ÀбѤιÛÌ®
 E:Quartz vein
 G:%:w
 I:100:15d11:15:30:10
@@ -18788,7 +18787,7 @@ D:$of gills.
 D:¿åÃæ¤Ç¤ÎÀ¸³è¤ËŬ±þ¤·¤¿¥Ê¡¼¥¬¤À¡£µû¤Î¤è¤¦¤ÊÈø¥Ò¥ì¤È¥¨¥é¤ò»ý¤Ã¤Æ¤¤¤ë¡£
 
 N:920:¡Ø¥Ç¥â¥´¥ë¥´¥ó¡Ù
-E:The demogorgon
+E:The Demogorgon
 G:U:u
 I:125:65d100:30:140:20
 W:75:2:0:37000:0:0
@@ -18841,7 +18840,7 @@ S:BR_ELEC | BO_ELEC
 D:¤«¤ï¤¤¤é¤·¤¤³°¸«¤ò¤·¤Æ¤¤¤ë¤¬¡¢ÌýÃǤ¹¤ë¤È»×¤ï¤Ì¾×·â¤ò¼õ¤±¤ë¤À¤í¤¦¡£
 
 N:923:Àã½÷
-E:Yukionnna
+E:Yukionna
 G:p:w
 I:110:30d10:20:20:20
 W:27:2:0:300:0:0
@@ -18933,7 +18932,7 @@ D:
 D:Èà¤Ï¾ï¤Ë¥­¥Î¥³²¦¹ñ¤òÀ¬Éþ¤·¤è¤¦¤È¤¿¤¯¤é¤ó¤Ç¤¤¤ë¡£
 
 N:929:µðÂ祵¥¤¥Ð¡¼¥ï¥¤¥¢¡¼¥àÅ·»È°­Ëâ¥ê¥Ã¥Á
-E:Greater cyber wyrm angel daemon lich
+E:Greater Cyber Wyrm Angel Daemon Lich
 G:N:W
 I:150:99d99:50:200:1
 W:99:50:0:30000:0:0
@@ -18980,7 +18979,7 @@ B:HIT:HURT:14d14
 B:HIT:HURT:14d14
 B:HIT:HURT:14d14
 F:DROP_CORPSE | FORCE_SLEEP | FORCE_MAXHP |
-F:ONLY_ITEM | DROP_2D2 | DROP_GOOD | HUMAN |
+F:ONLY_ITEM | DROP_2D2 | DROP_GOOD | MALE | HUMAN |
 F:REFLECTING | SMART | REGENERATE | OPEN_DOOR |
 F:IM_COLD | IM_FIRE | IM_ELEC | NO_CONF | NO_STUN |
 F:NO_SLEEP | RES_TELE | RES_NETH | CAN_FLY | POWERFUL |
@@ -18993,7 +18992,7 @@ D:
 D:¡ÊÀ»Íªµª¡¢Ä¶¿Í¥í¥Ã¥¯¡ÖÀÖ¤¤¥µ¡¼¥Ú¥ó¥È¡×¡Ë
 
 N:931:¶ä²Ï¹ÄÄë¡Ø¥«¥ë¡¦¥À¡¼¥àIIIÀ¤¡Ù
-E:Caldarm the third
+E:Caldarm the Third
 G:p:D
 I:130:60d100:100:200:20
 W:79:5:0:32000:0:0
@@ -19063,7 +19062,7 @@ D:
 D:¡ÊÀ»Íªµª¡¢Ä¶¿Í¥í¥Ã¥¯¡Ö½ñ¤ò¼é¤ë¼Ô¡×¡Ë
 
 N:934:¡Ø¥ë¥Ñ¡¼¥È¾­·³¡Ù
-E:Rupart the general
+E:Rupart the General
 G:p:r
 I:130:35d100:100:170:0
 W:71:255:0:18000:0:0
@@ -19104,7 +19103,7 @@ D:ξ
 D:½÷¿À¥¤¥·¥¿¡¼¤òÉõ°õ¤·¤¿¤ÈÅÁ¤¨¤é¤ì¤ë¡£
 
 N:936:ËÌÅÍ¿À·ý¤Î»È¤¤¼ê¡Ø¥±¥ó¥·¥í¥¦¡Ù
-E:Kenshirou the Fist of The North Star
+E:Kenshirou the Fist of the North Star
 G:p:W
 I:123:60d100:50:170:10
 W:62:2:0:30000:0:0
@@ -19123,7 +19122,7 @@ D:
 D:»þÂå¤Ë¤¢¤Ã¤Æ°¦¤ËÀ¸¤­¡¢°¦¤Î¤¿¤á¤ËÀï¤Ã¤Æ¤¤¤ë¡£
 
 N:937:¥µ¥¤¥Ð¡¼¡Ø¥ì¥à¥¹¡Ù
-E:Lems the cyborg
+E:Lems the Cyborg
 G:g:W
 I:130:50d100:30:160:0
 W:61:3:0:26000:0:0
@@ -19316,19 +19315,19 @@ S:BR_COLD | DISPEL | BR_POIS | BA_COLD | BO_ICEE |
 S:CONF | SCARE | HOLD | S_DEMON
 
 N:947:Åð±¡Ø¥×¥¢¡¼¡Ù
-E:Poor, the thief
+E:Poor, the Thief
 G:p:b
 I:105:80d10:20:50:50
 W:25:3:0:500:0:0
 B:HIT:HURT:5d10
 B:HIT:HURT:5d10
 B:CRUSH:SUPERHURT:30d2
-F:UNIQUE | DROP_CORPSE | FORCE_MAXHP | CAN_SPEAK | HUMAN |
+F:UNIQUE | DROP_CORPSE | FORCE_MAXHP | CAN_SPEAK | HUMAN | MALE |
 F:EVIL | ONLY_ITEM | DROP_1D2 | DROP_60 | DROP_GOOD |
 F:NO_SLEEP | NO_CONF | BASH_DOOR
 
 N:948:Åð±¡Ø¥ê¥Ã¥Á¡Ù
-E:Rich, the thief
+E:Rich, the Thief
 G:p:b
 I:130:50d10:20:80:50
 W:29:3:0:700:0:0
@@ -19336,14 +19335,14 @@ B:HIT:POISON:3d6
 B:HIT:POISON:3d6
 B:TOUCH:EAT_GOLD
 B:TOUCH:EAT_ITEM
-F:UNIQUE | DROP_CORPSE | FORCE_MAXHP | CAN_SPEAK | HUMAN |
+F:UNIQUE | DROP_CORPSE | FORCE_MAXHP | CAN_SPEAK | HUMAN | MALE |
 F:EVIL | ONLY_ITEM | DROP_2D2 | DROP_GOOD |
 F:NO_SLEEP | NO_CONF | OPEN_DOOR | MOVE_BODY |
 S:1_IN_2 |
 S:BLINK | TPORT | TRAPS | CONF | BLIND | SLOW | HOLD | FORGET
 
 N:949:ͦ¼Ô¡Ø¥¤¥±¥¿¡Ù
-E:Iketa, the brave
+E:Iketa, the Brave
 G:p:B
 I:130:50d100:50:170:0
 W:70:2:0:30000:0:0
@@ -19403,7 +19402,7 @@ W:44:4:0:500:0:0
 B:EXPLODE:HURT:30d3
 F:FORCE_SLEEP |
 F:FRIENDS |
-F:OPEN_DOOR | BASH_DOOR | DROP_SKELETON | DROP_CORPSE |
+F:OPEN_DOOR | BASH_DOOR |
 F:ANIMAL | NO_CONF | NO_SLEEP
 D:º£¤Ë¤âÇúȯ¤·¤½¤¦¤Ê¸¤¤À¡£
 
@@ -19433,6 +19432,12 @@ F:FORCE_SLEEP | DROP_1D2 | SMART | DROP_CORPSE | DROP_SKELETON |
 F:ORC | HURT_LITE | EVIL | RES_DARK
 S:1_IN_2 |
 S:SHOOT
+D:$In a rare display of ingenuity, the Orcs invented an incredibly
+D:$destructive weapon. Most Orcish artillerists are those who dared
+D:$criticize its effectiveness.
+D:¤á¤Ã¤¿¤Ë¸«¤»¤Ê¤¤È¯ÌÀ¤ÎºÍ¤Ë¤è¤Ã¤Æ¡¢¥ª¡¼¥¯¤Ï¿®¤¸¤é¤ì¤Ê¤¤¤Û¤ÉÇ˲õŪ¤Ê
+D:ʼ´ï¤òȯÌÀ¤·¤¿¡£¤³¤Î¥ª¡¼¥¯×¸µÝÂâ¤Îʼ»Î¤ÎÂçȾ¤Ï¡¢¤½¤ÎÍ­¸úÀ­¤Ëµ¿Ìä¤ò
+D:Åꤲ¤«¤±¤¿¼Ô¤¿¤Á¤¬Ì³¤á¤Æ¤¤¤ë¡£
 
 # Description in English by Nick Keulmann
 N:955:¤ä¤»¤³¤±¤¿ÇÏ
@@ -19541,12 +19546,12 @@ F:RES_TELE | CAN_SWIM | WILD_SWAMP
 S:1_IN_10 |
 S:SHRIEK | MIND_BLAST
 D:$It`s a slime colony.
-D:$If you so much as DARE to touch it
+D:$If you so much as DARE to touch it.
 D:²Ä°¦¤é¤·¤¤½ã¿´Ìµ¹¤¤Ê¥¹¥é¥¤¥à¥â¥ë¥É¤À¡£
 D:¿¨¤ì¤Æ»à¤Í¡ª
 
 N:963:¥Ó¥ë¥À¡¼Äë¹ñÄ벦¡Ø¥ÜÄë¥Ó¥ë¡Ù
-E:Boty-Buildeng, the emperor
+E:Boty-Buildeng, the Emperor
 G:P:U
 I:120:12d100:25:130:40
 W:36:2:0:2500:0:0
@@ -19610,7 +19615,7 @@ S:BA_FIRE | HASTE | HOLD | CONF | BLIND
 D:ÃǤ¸¤Æ¥Þ¥ê¥ª¤ÎÎà»÷ÉʤǤϤʤ¤¡ª(ËܿͼçÄ¥)¡£
 
 N:967:¥¬¥­Âç¾­¡Ø¥¸¥ã¥¤¥¢¥ó¡Ù
-E:Jaian, the boss of the kids
+E:Jaian, the Boss of the Kids
 G:p:o
 I:110:100d10:16:100:20
 W:29:3:0:500:0:0
@@ -19729,7 +19734,7 @@ D:$with it's breath of fire.
 D:¥í¡¼¥É¥¹¤Î¸ÅÂåε¤Î°ìɤ¤Ç¡¢¤½¤Î²Ð±ê¤Î¥Ö¥ì¥¹¤ÇÁ´¤Æ¤ò¾Æ¤­¿Ô¤¯¤¹¡£
 
 N:973:°Å¹õ¤ÎÅç¥Þ¡¼¥â¤Î¹ÄÄë¡Ø¥Ù¥ë¥É¡Ù
-E:Beld, ruler of Marmo
+E:Beld, Ruler of Marmo
 G:p:r
 I:125:77d30:10:160:50
 W:48:4:0:18500:0:0
@@ -20564,7 +20569,7 @@ S:HEAL | TRAPS
 # ¶¯¤¹¤®¤ë¡©
 #
 N:1022:¥µ¥¤¥ä¿Í¡Ø¥Ê¥Ã¥Ñ¡Ù
-E:Nappa the Saiayan
+E:Nappa the Saiyan
 G:p:U
 I:125:25d100:30:125:15
 W:50:3:0:13500:0:0
@@ -20580,8 +20585,8 @@ S:1_IN_8 |
 S:TELE_TO | BO_MANA
 D:$He looks like brawny human being apparently. 
 D:$However, unlike man, it has the tail of a monkey. 
-D:$This tail proves he is a Saiayan. 
-D:$A Saiayan's fighting power is far superior to human's and will bring many destruction.
+D:$This tail proves he is a Saiyan. 
+D:$A Saiyan's fighting power is far superior to human's and will bring many destruction.
 D:í÷¤·¤¤¿Í´Ö¤Î¤è¤¦¤À¤¬¡¢±î¤Î¿¬Èø¤¬ÉÕ¤¤¤Æ¤¤¤ë¡£¤³¤ì¤³¤½¤¬¥µ¥¤¥ä¿Í¤Î¾Ú¤À¡£
 D:¤½¤ÎÀïÆ®ÎϤϿʹ֤òο²ï¤·¡¢Â¿¤¯¤ÎÇ˲õ¤ò¸Æ¤Óµ¯¤³¤¹¤À¤í¤¦¡£
 
@@ -20741,7 +20746,7 @@ F:MOVE_BODY | KILL_WALL | IM_FIRE | IM_ELEC | IM_POIS | IM_ACID | IM_COLD |
 F:RES_NETH | RES_WATE | RES_PLAS | RES_NEXU |
 F:RES_DISE | RES_WALL | RES_INER | RES_TIME | RES_GRAV | NO_STUN | REGENERATE |
 F:NO_CONF | NO_SLEEP | CAN_FLY |
-F:EMPTY_MIND | COLD_BLOOD | BASH_DOOR | POWERFUL | RAND_25 |
+F:COLD_BLOOD | BASH_DOOR | POWERFUL | RAND_25 |
 F:GOOD | DROP_CORPSE | SELF_LITE_2
 D:$He was the braver of Atlantis. His body was converted by a Shinto priest, 
 D:$in order to fight against "Papa". His body is now made by Orihalcon.
@@ -20796,7 +20801,7 @@ N:1034:
 E:The Minotaur of the Labyrinth
 G:H:U
 I:120:25d10:13:25:10
-W:40:255:0:600:0:0
+W:40:3:0:600:0:0
 B:BUTT:HURT:4d6
 B:BUTT:HURT:4d6
 B:BUTT:HURT:2d6
@@ -21131,7 +21136,7 @@ G:p:y
 I:110:6d8:20:10:5
 W:4:1:0:18:600:1055
 B:HIT:HURT:1d9
-F:DROP_60 | WILD_ALL | HUMAN |
+F:DROP_60 | WILD_ALL | HUMAN | MALE |
 F:OPEN_DOOR | DROP_SKELETON | DROP_CORPSE | 
 F:HAS_LITE_1 | NO_CONF | NO_SLEEP
 S:1_IN_12 |
@@ -21145,7 +21150,7 @@ G:p:y
 I:110:6d8:20:10:5
 W:8:1:0:18:600:1055
 B:HIT:HURT:1d6
-F:DROP_60 | WILD_ALL | FRIENDS | HUMAN |
+F:DROP_60 | WILD_ALL | FRIENDS | HUMAN | MALE |
 F:OPEN_DOOR | DROP_SKELETON | DROP_CORPSE | 
 F:HAS_LITE_1 | NO_CONF | NO_SLEEP
 S:1_IN_12 |
@@ -21398,7 +21403,7 @@ D:
 D:ËâË¡¤ÎÌÚ¤ÎÍÕ¤òƬ¤ËºÜ¤»¤Æ¿Í¤Ë²½¤±¤ë¤Î¤À¡£
 
 N:1068:º®Æ٤Υµ¥Þ»Õ¡Ø¥Ç¥£¥ª¥Ë¥½¥¹¡Ù
-E:Dionysus, The Munchkin of Chaos
+E:Dionysus, the Munchkin of Chaos
 G:G:g
 I:154:10d100:100:162:40
 W:55:7:0:10000:0:0
index 351c736..d77b90c 100644 (file)
@@ -350,8 +350,6 @@ B:9:M:2:0:0:0:0:0:0:0:0:0
 
 B:$10:N:Thieves Guild:Lardbottom:Hobbit
 B:10:N:Åð±¤Î¥®¥ë¥É:¥é¡¼¥É¥Ü¥È¥à:¥Û¥Ó¥Ã¥È
-B:$10:A:0:Get share of stolen gold:0:0:s:7:2
-B:10:A:0:Åð¤ó¤À¶â¤ò»³Ê¬¤±¤¹¤ë:0:0:s:7:2
 B:$10:A:1:Rest for the night:0:100:r:17:0
 B:10:A:1:°ìÇñ¤¹¤ë:0:100:r:17:0
 B:$10:A:2:Identify possessions:100:2000:i:26:0
index cbd3584..89622ca 100644 (file)
@@ -313,8 +313,6 @@ B:9:M:2:0:0:0:0:0:0:0:0:0
 
 B:$10:N:Thieves Guild:Paliro:Yeek
 B:10:N:Åð±¤Î¥®¥ë¥É:¥Ñ¥ê¥í:¥¤¡¼¥¯
-B:$10:A:0:get Share of stolen gold:0:0:s:7:2
-B:10:A:0:Åð¤ó¤À¶â¤ò»³Ê¬¤±¤¹¤ë:0:0:s:7:2
 B:$10:A:1:Rest for the night:0:50:r:17:0
 B:10:A:1:°ìÇñ¤¹¤ë:0:50:r:17:0
 B:$10:A:2:Identify possessions:100:600:i:26:0
index 19c7378..a451192 100644 (file)
@@ -219,8 +219,6 @@ B:9:C:0:0:2:0:0:1:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
 
 B:$10:N:Thieves Den:Molvrae:Dark Elf
 B:10:N:Åð±¤Î¥¢¥¸¥È:¥â¥ë¥Ö¥é¥¨:¥À¡¼¥¯¡¦¥¨¥ë¥Õ
-B:$10:A:0:Get share of stolen gold:0:0:s:7:2
-B:10:A:0:Åð¤ó¤À¶â¤ò»³Ê¬¤±¤¹¤ë:0:0:s:7:2
 B:$10:A:1:Rest for the night:0:50:r:17:0
 B:10:A:1:°ìÇñ¤¹¤ë:0:50:r:17:0
 B:$10:A:2:Identify possessions:175:800:i:26:0
index f5072d5..fc47706 100644 (file)
@@ -232,21 +232,22 @@ F:b:129:3:0:0:0:0:0:18
 
 ############### Quest 18 - Water Cave ###############
 
-# Quest 15 assigned, entrance is quest entrance
+# Quest 18 assigned, entrance is quest entrance
 ?:[EQU $QUEST18 1]
 F:y:8:3:0:0:0:0:0:18
 F:b:129:3:0:0:0:0:0:18
 
-# Quest 15 completed
+# Quest 18 completed
 ?:[EQU $QUEST18 2]
 F:b:129:3:0:0:0:0:0:18
 
-# Quest 15 rewarding, reward is Ring of Lordly Protection, no new quest available
+# Quest 18 rewarding, reward is Ring of Poison Resistance,
+# continue with quest 27
 ?:[EQU $QUEST18 3]
 F:b:129:3:0:0:0:0:0:27
 F:!:1:3:0:143
 
-# Quest 15 finished, no new quest available
+# Quest 18 finished, continue with quest 27
 ?:[EQU $QUEST18 4]
 F:b:129:3:0:0:0:0:0:27
 
@@ -265,98 +266,104 @@ F:b:129:3:0:0:0:0:0:27
 
 # Quest 27 rewarding (default reward if not given one from below)
 # the Executioner's Sword 'Crisdurian'
-# continue with quest 33
 ?:[EQU $QUEST27 3]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:80
 
+# Quest 27 rewarding (Weaponsmith gets Multi-Hued Dragon Scale Mail)
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Weaponsmith] ]
-F:a:128:3
+F:a:128:3:0:0:0:0:0:15
 F:@:1:3:0:405
 
-# Quest 27 rewarding (Tourist gets Platinum Yendorian Express Card)
-# continue with quest 33
+# Quest 27 rewarding (Tourist gets The Platinum Yendorian Express Card)
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Tourist] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:141
 
-# Quest 27 rewarding (Ranger, Archer gets Long Bow of Bard)
-# continue with quest 33
+# Quest 27 rewarding (Ranger and Archer get The Long Bow of Bard)
 ?:[AND [EQU $QUEST27 3] [IOR [EQU $CLASS Ranger] [EQU $CLASS Archer] ] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:125
 
-# Quest 27 rewarding (Warrior gets Glaive of Pain)
-# continue with quest 33
-?:[AND [EQU $QUEST27 3] [EQU $CLASS Warrior] ]
+# Quest 27 rewarding (Warrior and Berserker get The Glaive of Pain)
+?:[AND [EQU $QUEST27 3] [IOR [EQU $CLASS Warrior] [EQU $CLASS Berserker]]]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:94
 
-# Quest 27 rewarding (BeastMaster gets Lance of Eorlingas)
-# continue with quest 33
+# Quest 27 rewarding (BeastMaster gets The Lance of Eorlingas)
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS BeastMaster] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:100
 
-# Quest 27 rewarding (Kihei gets GaeBolg)
-# continue with quest 33
+# Quest 27 rewarding (Cavalry gets GaeBolg)
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Cavalry] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:163
 
 # Quest 27 rewarding (Chaos-Warrior gets Zarcuthra)
-# continue with quest 33
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Chaos-Warrior] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:77
 
-# Quest 27 rewarding (Rogue gets Sling of Buckland)
-# continue with quest 33
+# Quest 27 rewarding (Rogue gets The Sling of Buckland)
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Rogue] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:134
 
 # Quest 27 rewarding (Monk gets The Leather Jacket of Shiva's Avatar)
-# continue with quest 33
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Monk] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:26
 
 # Quest 27 rewarding (Ninja gets The Amulet of the Pitch Dark Night)
-# continue with quest 33
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Ninja] ]
-F:a:128:3
+F:a:128:3:0:0:0:0:0:15
 F:@:1:3:0:0:0:215
 
-# Quest 27 rewarding (Mage, High-Mage)
-# get Hard Leather Cap of Ben Franklin
-# continue with quest 33
+# Quest 27 rewarding (Mage, High-Mage, Sorcerer and Blue-Mage
+# get The Hard Leather Cap of Indra)
 ?:[AND [EQU $QUEST27 3] [IOR [IOR [EQU $CLASS Mage] [EQU $CLASS High-Mage] ] [IOR [EQU $CLASS Sorcerer] [EQU $CLASS Blue-Mage] ] ] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:33
 
-# Quest 27 rewarding (Priest, Bard, ForceTrainer)
-# get Palantir of Westernesse
-# continue with quest 33
+# Quest 27 rewarding (Priest, Bard and ForceTrainer
+# get The Palantir of Westernesse)
 ?:[AND [EQU $QUEST27 3] [IOR [IOR [EQU $CLASS Priest] [EQU $CLASS Bard] ] [IOR [EQU $CLASS ForceTrainer] [EQU $CLASS Mindcrafter] ] ] ]
 F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:15
 
-# Quest 27 rewarding (Magiceater, Mirror-Master)
-# get Numenor
-# continue with quest 33
-?:[AND [EQU $QUEST27 3] [IOR [EQU $CLASS Magiceater] [EQU $CLASS Mirror-Master] ] ] ]
-F:a:128:3
+# Quest 27 rewarding (Mirror-Master gets The Jewel Encrusted Crown of Numenor)
+?:[AND [EQU $QUEST27 3] [EQU $CLASS Mirror-Master] ]
+F:a:128:3:0:0:0:0:0:15
 F:@:1:3:0:0:0:132
 
-# Quest 27 rewarding (Samurai)
-# get Groo
-# continue with quest 33
+# Quest 27 rewarding (Samurai gets The Katana 'Aglarang')
 ?:[AND [EQU $QUEST27 3] [EQU $CLASS Samurai] ]
-F:b:129:3
+F:b:129:3:0:0:0:0:0:15
 F:!:1:3:0:0:0:81
 
-# Quest 27 finished, continue with quest 33
+# Quest 27 rewarding (Crusade Paladin gets the Amulet of Sacred Knights)
+?:[AND [EQU $QUEST27 3] [EQU $CLASS Paladin] [EQU $REALM1 Crusade] ]
+F:b:129:3:0:0:0:0:NONE:15
+F:!:1:3:0:0:0:217
+
+# Quest 27 rewarding (Death Paladin gets the Collar Harness of the Hell)
+?:[AND [EQU $QUEST27 3] [EQU $CLASS Paladin] [EQU $REALM1 Death] ]
+F:b:129:3:0:0:0:0:NONE:15
+F:!:1:3:0:0:0:218
+
+# Quest 27 rewarding (Warrior-Mage, Red-Mage and Magic-Eater
+# get The Charmed Pendant)
+?:[AND [EQU $QUEST27 3] [IOR [EQU $CLASS Warrior-Mage] [EQU $CLASS Red-Mage] [EQU $CLASS Magic-Eater]] ]
+F:b:129:3:0:0:0:0:NONE:15
+F:!:1:3:0:0:0:219
+
+# Quest 27 rewarding (Imitator gets the Pendant of Gogo)
+?:[AND [EQU $QUEST27 3] [EQU $CLASS Imitator] ]
+F:b:129:3:0:0:0:0:NONE:15
+F:!:1:3:0:0:0:220
+
+# Quest 27 finished, continue with quest 15
 ?:[EQU $QUEST27 4]
 F:b:129:3:0:0:0:0:0:15
 
@@ -364,7 +371,7 @@ F:b:129:3:0:0:0:0:0:15
 ?:[EQU $QUEST27 5]
 F:b:129:3:0:0:0:0:0:27
 
-# Quest 27 failed but done, continue with quest 33
+# Quest 27 failed but done, continue with quest 15
 ?:[EQU $QUEST27 6]
 F:b:129:3:0:0:0:0:0:15
 
@@ -535,8 +542,8 @@ B:2:A:0:
 B:$2:A:0:Research item:1000:1000:a:1:0
 B:2:A:0:¥¢¥¤¥Æ¥àÄ´ºº:1000:1000:a:1:0
 ?:1
-B:$2:A:1:Town history:0:0:h:2:0
-B:2:A:1:³¹¤ÎÎò»Ë:0:0:h:2:0
+B:$2:A:1:Town Overview:0:0:h:2:0
+B:2:A:1:³¹¤Î³µÍ×:0:0:h:2:0
 
 B:$3:N:Casino:Materim:Human
 B:3:N:¥«¥¸¥Î:¥Þ¥Æ¥ê¥à:¿Í´Ö
@@ -597,8 +604,6 @@ B:7:M:2:0:0:0:0:0:0:0:0:0
 
 B:$8:N:Thieves Guild:Lardbottom:Hobbit
 B:8:N:Åð±¤Î¥®¥ë¥É:¥é¡¼¥É¥Ü¥È¥à:¥Û¥Ó¥Ã¥È
-B:$8:A:0:Get share of stolen gold:0:0:s:7:2
-B:8:A:0:Åð¤ó¤À¶â¤ò»³Ê¬¤±¤¹¤ë:0:0:s:7:2
 B:$8:A:1:Rest for the night:0:100:r:17:0
 B:8:A:1:°ìÇñ¤¹¤ë:0:100:r:17:0
 B:$8:A:2:Identify possessions:100:2000:i:26:0
@@ -636,7 +641,7 @@ B:$11:M:0:2:0:0:0:0:0:0:0:0
 B:11:M:0:2:0:0:0:0:0:0:0:0
 
 B:$12:N:Trump Tower:Pelloi:Amberite
-B:12:N:¥È¥é¥ó¥×Ëâ½Ñ¤ÎÅã:¥Ú¥í¥¤:¥¢¥ó¥Ð¡¼¤Î²¦Â²
+B:12:N:¥È¥é¥ó¥×Ëâ½Ñ¤ÎÅã:¥Ú¥í¥¤:¥¢¥ó¥Ð¥é¥¤¥È
 B:$12:A:0:Recall to dungeon:100:200:r:33:0
 B:12:A:0:¥À¥ó¥¸¥ç¥ó¤Øµ¢´Ô:100:200:r:33:0
 B:$12:A:1:Teleport to dungeon-level:100000:1000000:t:34:0
index 4bd88d7..8fe1a95 100644 (file)
@@ -1,6 +1,6 @@
 N: 1:BIAS_ELEC
 'Lightning Conductor'
-'Electorostatic Barrier'
+'Electrostatic Barrier'
 'Shocking!'
 'Static Charge'
 of Insulation
@@ -47,7 +47,7 @@ N: 5:BIAS_ACID
 'Rustproof'
 'Melting'
 'Acidic Rain'
-'halogen'
+'Halogen'
 'Iron Will'
 'Stainless'
 'Glacial Acetic Acid'
@@ -60,7 +60,7 @@ N:14:BIAS_NECROMANTIC
 'Infernal Contract'
 'Sacrifice to void'
 'Forgotten Fear'
-'Zombi Master'
+'Zombie Master'
 of Arcam
 of Deformity
 of Sabbath
@@ -89,7 +89,7 @@ N: 8:BIAS_WIS
 'Spiritual Focus'
 'Holy Strength'
 'Avatar of Hope'
-'Keeper of Minde'
+'Keeper of Mind'
 'Oracle's Attendant'
 'Peacehoper'
 'Seeker of Skybreak'
@@ -110,7 +110,7 @@ of the Pickpocket
 N:17:BIAS_MAGE
 N: 7:BIAS_INT
 'Deja-Vu'
-'Caffein'
+'Caffeine'
 'Oath of Mages'
 'Whispers of Muse'
 of Talisman
@@ -131,7 +131,7 @@ of Meng Huo
 
 N:10:BIAS_CON
 'Endurance'
-'Glowth Period'
+'Growth Period'
 'Trollism'
 'Big Useless Fellow'
 'Healthy One'
@@ -157,7 +157,7 @@ N:11:BIAS_CHR
 'Brunet Hair of Maiden'
 'Rose Bouquet'
 'Innocent Dress'
-'Mini=Skirt'
+'Miniskirt'
 of Companion
 of Super Model
 of Passion
@@ -166,14 +166,12 @@ N:*:Default
 'Sambo'
 'Blink'
 'Pizza'
-'Virgin Hair'
 'Curator'
 'Babel'
 'Grand Prix'
-'Generater'
+'Generator'
 'Bladereturner'
 'Iron Maiden'
-of Normally
 of Glass
 of Clay
 of Sand
index 561d514..47e05da 100644 (file)
@@ -143,7 +143,7 @@ N: 6:BIAS_STR
 ¡ØÆù¤Î¥«¡¼¥Æ¥ó¡Ù
 ÆîÈÚ²¦ÌҳͤÎ
 ¥¹¥â¡¼Àï»Î¤Î
-¥ß¥Î¥¿¥¦¥ë¥¹¤Î
+¥ß¥Î¥¿¥¦¥í¥¹¤Î
 
 N:10:BIAS_CON
 ¡Ø·§¤Î¾¸¡Ù
index 1253f3a..5dfc2b5 100644 (file)
@@ -18,6 +18,8 @@ N:732:Bull Gates
 ¡Ö£Í¡ðÄë¹ñ¤Ï±Ê±ó¤ËÉÔÌǤÀ¡ª¡×
 
 N:764:Uriel, Angel of Fire
+N:765:Azriel, Angel of Death
+N:769:Raphael, the Messenger
 ¡Ö¼ç¤è¡¢¤³¤Îºá¿¼¤­¼Ô¤Ëŷȳ¤ò¤ªÍ¿¤¨²¼¤µ¤¤¡ª¡×
 
 N:780:Vlad Dracula, Prince of Darkness
index 77e26c3..c19f0d3 100644 (file)
@@ -34,11 +34,11 @@ N:8:Farmer Maggot
 #tells you to get off his land.
 ¤Ï¡Ö¤ï¤·¤ÎÅÚÃϤ«¤é½Ð¤Æ¤¤¤±¡×¤È¸À¤Ã¤Æ¤¤¤ë¡£
 #says, "Grip! Fang! Wolf! Come on, lads!"
-¡Ö¤«¤ß¤Ä¤­¡ª¤­¤Ð¡ª¤ª¤ª¤«¤ß¡ª¤ß¤ó¤ÊÍ褤¡ª¡×
+¡Ö¤¯¤¤¤Ä¤­¡ª¤­¤Ð¡ª¤ª¤ª¤«¤ß¡ª¤ß¤ó¤ÊÍ褤¡ª¡×
 #says, "They won't harm you -- not unless I tell 'em to!"
 ¡Ö¤¢¤¤¤Ä¤é¤Ï³ú¤ß¤Ä¤¤¤¿¤ê¤»¤ó¤è¡£¤ï¤·¤¬Ì¿Î᤻¤ó¤«¤®¤ê¤Ê¡ª¡×
 #says, "Here, Grip! Fang! Heel!"
-¡Ö¤³¤³¤À¡¢¤«¤ß¤Ä¤­¡ª¤­¤Ð¡ªÍ褤¡ª¡×
+¡Ö¤³¤³¤À¡¢¤¯¤¤¤Ä¤­¡ª¤­¤Ð¡ªÍ褤¡ª¡×
 exclaims, "Well, if that isn't queerer than ever?"
 #asks, "Were you coming to visit me?"
 ¡Ö¤ï¤·¤Ë²ñ¤¤¤Ë¤­¤¿¤Î¤«¤¤¡©¡×
@@ -242,7 +242,7 @@ says, 'Give 'til it hurts!'
 #says, 'Don't force me to put an arrow in your skull...'
 ¡Ö²¶¤Ë¤ªÁ°¤ÎƬ¤ò¼ÍÈ´¤«¤»¤Ê¤¤¤Ç¤¯¤ì...¡×
 #says, 'Kevin Costner has soiled my name!'
-¡Ö¥±¥Ó¥ó¡¦¥³¥¹¥Ê¡¼¤Ï²¶¤Î̾Á°¤òÃϤËÍ¤¿¡ª¡×
+¡Ö¥±¥Ó¥ó¡¦¥³¥¹¥Ê¡¼¤Ï²¶¤Î̾Á°¤òÃϤËÍî¤Ȥ·¤¿¡ª¡×
 
 #N:169:Brodda, the Easterling
 #N:291:Ulfast, Son of Ulfang
@@ -1005,7 +1005,7 @@ N:*:Default lines
 #says: 'Your puny efforts make me laugh!'
 ¡Ö¤ªÁ°¤ÎÉÏÁê¤ÊÅØÎϤÏÊÒÊ¢Äˤ¤¤ï¡ª¡×
 #says: 'Drop dead, wimp!'
-¡Ö»¨µû¤¬¡ª»à³¼¤òÍ¤¬¤¤¤¤¡ª¡×
+¡Ö»¨µû¤¬¡ª»à³¼¤òÍî¤Ȥ¹¤¬¤¤¤¤¡ª¡×
 #says: 'You should have fled while you had the chance.'
 ¡Ö¥Á¥ã¥ó¥¹¤¬¤¢¤ë¤¦¤Á¤Ë¤µ¤Ã¤µ¤Èƨ¤²¤Æ¤ª¤±¤Ð¤¤¤¤¤â¤Î¤ò¡×
 #screams: 'Die by my hand!'
index 4d07284..5e99aee 100644 (file)
@@ -1,18 +1,18 @@
 
                   ****************************************
-                  **           Hengband 1.5.4           **
+                  **           Hengband 1.6.2           **
                   ****************************************
 
-          Based on Moria:    Copyright (c) 1985 Robert Alan Koeneke
-              and Umoria:    Copyright (c) 1989 James E. Wilson
+          Based on Moria:   Copyright (c) 1985 Robert Alan Koeneke
+              and Umoria:   Copyright (c) 1989 James E. Wilson
 
-       Angband 2.7 - 2.9:    Ben Harrison (benh@phial.com)
-    Japanese version 1.2:    Sitoshin, sayu, FIRST, TeO
+       Angband 2.7 - 2.9:   Ben Harrison (benh@phial.com)
+    Japanese version 1.2:   Sitoshin, sayu, FIRST, TeO
 
-       Old ZAngband code:    (Mr) Topi Ylinen < f1toyl@uta.fi >
-       New ZAngband code:    Robert Ruehlmann < rr9@thangorodrim.net >
-    ZAngband 2.3.0 - ???:    The ZAngband DevTeam
-       ZAngband Jap ver.:    Mitsuhiro Itakura < m-itakura@geocities.co.jp >
+       Old ZAngband code:   (Mr) Topi Ylinen < f1toyl@uta.fi >
+       New ZAngband code:   Robert Ruehlmann < rr9@thangorodrim.net >
+    ZAngband 2.3.0 - ???:   The ZAngband DevTeam
+       ZAngband Jap ver.:   Mitsuhiro Itakura <itakura @ users.sourceforge.net>
 
 
            Hengband: Mr.Hoge (echizen @ users.sourceforge.jp) & Many others
index 73111f8..35c4afc 100644 (file)
@@ -1,6 +1,6 @@
 
                   ***************************************
-                  **           ÊѶòÈÚÅÜ  1.5.4         **
+                  **           ÊѶòÈÚÅÜ  1.6.2         **
                   ***************************************
 
           Based on Moria:    Copyright (c) 1985 Robert Alan Koeneke
@@ -9,10 +9,10 @@
        Angband 2.7 - 2.9:    Ben Harrison (benh@phial.com)
             ÆüËܸìÈÇ 1.2:    ¤·¤È¤·¤ó, sayu, FIRST, TeO
 
-       Old ZAngband code:    (Mr) Topi Ylinen < f1toyl@uta.fi >
-       New ZAngband code:    Robert Ruehlmann < rr9@thangorodrim.net >
+       Old ZAngband code:    (Mr) Topi Ylinen < f1toyl¡÷uta.fi >
+       New ZAngband code:    Robert Ruehlmann < rr9¡÷thangorodrim.net >
     ZAngband 2.3.0 - ???:    The ZAngband DevTeam
-       ZAngband ÆüËܸìÈÇ:    ÈÄÁÒ½¼ÍΠ< m-itakura@geocities.co.jp >
+       ZAngband ÆüËܸìÈÇ:    ÈÄÁÒ½¼ÍΠ< itakura¡÷users.sourceforge.net >
 
 
           ÊѶòÈÚÅÜ: Mr.hoge (echizen¡÷users.sourceforge.jp) ¡õ Â¿¤¯¤ÎÊý¡¹
index 99ee964..a0a2548 100644 (file)
@@ -125,7 +125,7 @@ N:*:Default
 #Buy a home in the dungeon, any depth you want! Contact: McDuck & Co.
 ¥À¥ó¥¸¥ç¥ó¤Ë²È¤òÇ㤪¤¦¡ª¤É¤ó¤Ê¿¼¤µ¤Ç¤â¡ªMcDuck ÉÔÆ°»º¤Ë¤¤¤Þ¤¹¤°Ï¢Íí¤ò¡ª
 #They say that Alberich has forged an all-powerful Ring.
-¥¢¥ë¥Ù¥ê¥Ã¥¯¤¬Á´¤Æ¤ÎÎϤλØÎؤòºî¤Ã¤¿¤é¤·¤¤¡£
+¥¢¥ë¥Ù¥ê¥Ò¤¬Á´¤Æ¤ÎÎϤλØÎؤòºî¤Ã¤¿¤é¤·¤¤¡£
 #A good item will not corrode.
 Îɤ¤¥¢¥¤¥Æ¥à¤ÏÉå¿©¤·¤Ê¤¤¡£
 #They say that Alberich lost the Tarnhelm after making himself invisible.
@@ -244,7 +244,7 @@ If you start seeing red monsters, you have probably gained infravision.
 #When all else fails, read the instructions.
 ²¿¤â¤«¤â¼ºÇÔ¤·¤¿¤Ê¤é¡¢ÀâÌÀ½ñ¤òÆɤó¤Ç¤ß¤ë¤ó¤À¤Ê¡£
 #I've seen Paavo Vaaranen drop a Power Dragon Scale Mail!
-½Ä»³¥Î¥Ã¥¯¤¬£Ð£Ä£Ó£Í¤òÍ¤Î¤ò¸«¤¿¤¾¡ª
+½Ä»³¥Î¥Ã¥¯¤¬£Ð£Ä£Ó£Í¤òÍî¤Ȥ¹¤Î¤ò¸«¤¿¤¾¡ª
 #They say that the dungeon has no bottom.
 ¥À¥ó¥¸¥ç¥ó¤Ë¤ÏÄ줬¤Ê¤¤¤é¤·¤¤¡£
 #They say that the dungeon has a bottom.
@@ -307,7 +307,7 @@ Kharis' tomb is somewhere in the dungeon and you won't want to desecrate it!
 #Selling unidentified potions to shopkeepers might be safer than quaffing them.
 Ì¤´ÕÄê¤ÎÌô¤òŹ¤ËÇä¤ë¤Î¤Ï¡¢¼«Ê¬¤Ç°û¤à¤è¤ê°ÂÁ´¤À¡£
 #Always look out for trapdoors on "special" feeling levels!
-¡ÖÆÃÊ̤ʡ״¶¤¸¤Î¤¹¤ë³¬¤Ç¤Ï¾ï¤ËÍ¸Í¤Ëµ¤¤ò¤Ä¤±¤í¡ª
+¡ÖÆÃÊ̤ʡ״¶¤¸¤Î¤¹¤ë³¬¤Ç¤Ï¾ï¤ËÍî¤Ȥ·¸Í¤Ëµ¤¤ò¤Ä¤±¤í¡ª
 #There is a way to max out your stats with Potions of Charisma & Nexus.
 Ì¥ÎϤÎÌô¤È°ø²Ìº®Íð¤Ç¥¹¥Æ¡¼¥¿¥¹¤òÁ´ÉôºÇÂç¤Ë¤¹¤ëÊýË¡¤¬¤¢¤ë¡£
 #Unique opponents will recover their health faster than other creatures.
index dfcd085..23fe8c9 100644 (file)
@@ -8,7 +8,7 @@ D:There may be Vampires around!
 
 S:0200 
 E:0359
-D:Only Zangband players are up now!
+D:Only Hengband players are up now!
 
 S:0400 
 E:0459
index ab0df0a..2cfd760 100644 (file)
@@ -1,34 +1,34 @@
 S:0000 
 E:0059
-D:It's the witching hour!
+D:Ëâ½÷¤â¤¦¤í¤Ä¤¯¿¿ÌëÃæ¤À¡ª
 
 S:0100 
 E:0259
-D:There may be Vampires around!
+D:¥ô¥¡¥ó¥Ñ¥¤¥¢¤¬¤½¤³¤éÃæ¤Ë¤¤¤ë¤À¤í¤¦¡ª
 
 S:0200 
 E:0459
-D:Only Zangband players are up now!
+D:ÊѶòÈÚÅܤΥץ쥤¥ä¡¼¤·¤«µ¯¤­¤Æ¤¤¤Ê¤¤¡ª
 
 S:0100 
 E:0459
-D:It's really *very* late!
+D:*ËÜÅö¤Ë*ÃÙ¤¤¡ª
 
 S:0500 
 E:0558
-D:Aren't you sleepy yet?
+D:¤Þ¤À̲¤¯¤Ê¤¤¤«¤Ê¡©
 
 S:0559 
 E:0559
-D:It doesn't matter what you found!
+D:Â礷¤¿Êª¤Ï¸«¤Ä¤«¤é¤Ê¤¤¡ª
 
 S:0600 
 E:0759
-D:The sun is up. Time to have fun!
+D:Æü¤¬¾º¤Ã¤¿¡£³Ú¤·¤à»þ´Ö¤À¡ª
 
 S:0601
 E:0800
-D:Are you having fun yet?
+D:¤Þ¤À³Ú¤·¤ó¤Ç¤ë¡©
 
 S:0800 
 E:0905
@@ -36,57 +36,56 @@ D:@$#$@$!%@$#%$@&$^#%@$!^#&#*
 
 S:0800
 E:1059
-D:You feel there is something special about this level.
+D:¤³¤Î³¬¤Ë¤Ï²¿¤«ÆÃÊ̤ʤâ¤Î¤¬¤¢¤ë¤è¤¦¤Êµ¤¤¬¤¹¤ë¡£
 
 S:1100 
 E:1159
-D:You see a maze of twisty passages, all alike.
+D:Á´¤Æ¤¬»÷¤¿¤è¤¦¤Ê¤Í¤¸¤ì¤¿Æ»¤ÎÌÂÏ©¤¬¸«¤¨¤ë¡£
 
 S:1155 
 E:1200
-D:Are you having fun yet?
+D:¤Þ¤À³Ú¤·¤ó¤Ç¤ë¡©
 
 S:1159 
 E:1200
-D:This fortune is broken!
+D:±¿Ì¿¤ÏºÕ¤±¤¿¡ª
 
 S:1200 
 E:1205
-D:This fortune is still broken!
+D:±¿Ì¿¤Ï¤Þ¤ÀºÕ¤±¤¿¤Þ¤Þ¤À¡ª
 
 S:1200 
 E:1359
-D:Uh oh, now you've done it!
+D:¤¦¡¼¤à¡¢¤è¤¯¤ä¤Ã¤¿¡ª
 
 S:1400 
 E:1729
-D:What did you do with the Phial?
+D:ààÍþÉӤDz¿¤ò¤·¤¿¡©
 
 S:1730 
 E:1744
-D:You need your chocolate vitamin!
+D:¥Á¥ç¥³¥ì¡¼¥È¤Î¥Ó¥¿¥ß¥ó¤¬É¬ÍפÀ¡ª
 
 S:1745 
 E:1759
-D:Tornado Warning!
+D:ε´¬·ÙÊó¡ª
 
 S:1759 
 E:1800
-D:Night is coming. Danger! Danger!
+D:Ì뤬Íè¤ë¡£´í¸±¡ª´í¸±¡ª
 
 S:1700 
 E:1859
-D:Take a Vampire out for dinner!
+D:¥ô¥¡¥ó¥Ñ¥¤¥¢¤òͼ¿©¤Ë»ý¤Áµ¢¤ì¡ª
 
 S:2100 
 E:2159
-D:Warp Factor Nine. Now!
+D:¥ï¡¼¥×9¤Î»þ´Ö¤À¡ª
 
 S:2200 
 E:2359
-D:PARTY!
+D:¥Ñ¡¼¥Æ¥£¡ª
 
 S:2359 
 E:2359
-D:It's almost the witching hour!
-
+D:¤½¤í¤½¤íËâ½÷¤Î¿¿ÌëÃæ¤À¡ª
index 9f45d1d..aa92f3e 100644 (file)
@@ -58,7 +58,7 @@ N: 4:BIAS_COLD
 ¡ØÎä¹ó´Ý¡Ù
 ¡ØÀã·î²Ö¡Ù
 ¡ØÅß¾­·³¡Ù
-¡Ø¥¤¥§¥Æ¥£¤ÎÅܤê¡Ù
+¡Ø¥¤¥¨¥Æ¥£¤ÎÅܤê¡Ù
 ¡Ø¥¢¥¤¥¹¥¯¥é¥¤¥Þ¡¼¡Ù
 ¡Ø¥ª¡¼¥í¥é¡¦¥¨¥¯¥¹¥­¥å¡¼¥·¥ç¥ó¡Ù
 ¶Ë´¨¤ÎÃÏ¥¨¥¾¤Î
index 8e2dd3d..e052a64 100644 (file)
@@ -317,7 +317,7 @@ Weapon of Slay Dragon
 Weapon of *Slay* Animal
     This weapon is especially effective against natural creatures and
     will inflict damage with four times the normal dice against such
-    creatures, and allows wielder to sense the presence of natutal
+    creatures, and allows wielder to sense the presence of natural
     creatures.  It will also increase your intelligence and allow you
     to regenerate hit-points and mana faster.
 
index b7bf64e..0040040 100644 (file)
@@ -213,7 +213,7 @@ long text will cut down.
 Once you have generated a character and dead or quit game, you will be
 asked whether you want to use quick start or not at start up.  If you
 choose to use quick start, you get new character with exactly same
-race, class, stat, background and etc.. as your last chatacter.
+race, class, stat, background and etc. as your last character.
 
 
 ***** <PrimaryStats>
@@ -227,7 +227,7 @@ of 18, and even higher, into the "percentile" range, represented as
 "18/01" through "18/130".  True maximum of each base stat is randomly
 ranging from 18/70 to 18/130, and average of all your stat maximums
 are always 18/100.  These maximums are chosen randomly when your
-character is created or your character quaff a Potion of New Life.
+character is created or your character quaffs a Potion of New Life.
 Actually, every stat can be raised even above these maximum of base
 stat by modification from race, class, personality and magical
 equipment, up to a pure maximum of 18/220, which is represented as
@@ -375,7 +375,7 @@ Infra-vision
      distance.  This ability works equally well with or with out a
      light source.  The majority of Hengband's creatures are
      cold-blooded, and will not be detected unless lit up by a light
-     source.  Most non human races have innate infra-vision ability.
+     source.  Most non-human races have innate infra-vision ability.
      Humans can gain infra-vision only if it is magically enhanced.
 
 
index e3ea034..e18f61b 100644 (file)
@@ -645,7 +645,7 @@ Reload auto-picker/destroyer preference ($)
 
 Edit auto-picker/destroyer pref (_)
      Allow the user to edit the pickpref-<player's name>.prf in the
-     user directry.  Basic usage of the editor is almost same as vi,
+     user directory.  Basic usage of the editor is almost same as vi,
      and also have emacs like commands.  Most commands is always
      displayed on the first line and the right half of the screen.
 
@@ -655,9 +655,9 @@ Edit auto-picker/destroyer pref (_)
       'q'            :  Quit the editor (command mode only)
       'hjkl2468'     :  Move cursor (command mode only)
       ^B ^N ^P ^F    :  Move cursor (always)
-      ^I  : Choose an item from inventry/equipment, then insert its name.
+      ^I  : Choose an item from inventory/equipment, then insert its name.
       ^S  : Rotates action (pick up / destroy / leave on floor)
-      ^U  : Rotates idendify state (identified / unidentified / ...)
+      ^U  : Rotates identify state (identified / unidentified / ...)
       ^L  : Insert name of the last auto-destroyed item.
       '/' : Search string, or search an item specified by ^I or ^L.
       'n' : Search next
@@ -679,9 +679,9 @@ Identify Symbol (/)
      Use this command to find out what a character stands for. For
      instance, by pressing "/.", you can find out that the "." symbol
      stands for a floor spot. When used with a symbol that represents
-     creatures, the this command will tell you only what class of
-     creature the symbol stands for, not give you specific information
-     about a creature you can see. To get that, use the Look command.
+     creatures, this command will tell you only what class of creature
+     the symbol stands for, not give you specific information about a
+     creature you can see. To get that, use the Look command.
 
      There are four special symbols you can use with the Identify
      Symbol command to access specific parts of your monster memory.
@@ -741,7 +741,7 @@ Command your pets (p)
      you disallow them to pick up anything.
 
 Output list of random artifacts (^V)
-     This command write file named "randifact.txt" to your user
+     This command writes file named "randifact.txt" to your user
      directory with list of all random artifact you have.
 
 -- 
@@ -750,5 +750,5 @@ Updated    : (2.7.6) by Russ Allbery (rra@cs.stanford.edu)
 Updated    : (2.7.9) by Ben Harrison (benh@phial.com)
 Updated    : Zangband 2.2.0 through 2.2.6c by Robert Ruehlmann
 Updated    : Zangband DevTeam
-Updated    : Hengband 1.0.11
+Updated    : Hengband 1.6.1
 
index 722bbc5..cd9cf43 100644 (file)
@@ -173,7 +173,7 @@ of Resistance.
 
 of Elvenkind.
      This is the same as Resistance armor, only generally better
-     enchanted. It will also make you more stealthy.
+     enchanted. It will also make you stealthier.
 
 of Permanence (Robes Only)
      These robes provide resistance to fire, cold, acid, and
@@ -194,7 +194,7 @@ of Intelligence
      This item will both increase and sustain your intelligence.
 
 of Wisdom
-     This item and will both increase and sustain your wisdom.
+     This item will both increase and sustain your wisdom.
 
 of Beauty
      This item will both increase and sustain your charisma.
@@ -532,7 +532,7 @@ Healing is available in multiple forms including: Potions and Staves
 of Cure Light Wounds, Potions of Cure Serious Wounds, Potions of Cure
 Critical Wounds, Potions, Staves and Rods of Healing, Potions of
 *Healing* and Potions of Life, from weakest to strongest. Both the Life
-and Nature realms contains spells to heal the player.
+and Nature realms contain spells to heal the player.
 
 Cure Light Wounds
      restores 2d8 hitpoints and removes cuts, blindness and berserk.
index b49500e..615af87 100644 (file)
@@ -107,7 +107,7 @@ glow with their own never-ending light.
 === Objects In The Dungeon ===
 
 The dungeons are full of objects just waiting to be picked up and used.
-How did they get there? Well, the main source for useful items are all
+How did they get there? Well, the main sources for useful items are all
 the foolish adventurers that proceeded into the dungeon before you.
 They get killed, and the helpful creatures scatter the various treasure
 throughout the dungeon. Most cursed items are placed there by the
@@ -211,8 +211,6 @@ they pass through.
 Doors can be broken down by bashing them. Once a door is bashed open,
 it is forever useless and cannot be closed.
 
-For historical reasons, secret doors are never locked.
-
 
 ***** <Feelings>
 === Level Feelings ===
index def8ecf..937fcf8 100644 (file)
@@ -8,7 +8,7 @@ Q. I want to play as an Android, Balrog, Golem, Skeleton, Zombie,
    How do I avoid starvation?
 
 A. Scroll of Satisfy Hunger and Berserker's ability of Satisfy Hunger
-   are obsoleted.  And races which previously relyed on Satisfy Hunger
+   are obsoleted.  And races which previously relied on Satisfy Hunger
    have new sources of nutrition now; Android can quaff oil.  Balrogs
    can sacrifice human corpse using the 'E'at command.  Golems,
    Skeletons, Zombies, and Spectres can absorb mana from staves and
@@ -16,7 +16,7 @@ A. Scroll of Satisfy Hunger and Berserker's ability of Satisfy Hunger
    potions.
 
 
-Q. I got through the Yeek cave and I headed into the wilderness....and
+Q. I got through the Yeek cave and I headed into the wilderness... and
    I'm still there searching endlessly down one road after another
    looking for a town.  Where are other towns and dungeons?
 
@@ -30,12 +30,12 @@ Q. I'm playing as a berserker, and cannot read scrolls.  How do I
    remove curse?
 
 A. You can simply 't'ake off cursed equipments.  Since cursed
-   equipments are strongly sticking, you need to try 't'ake off
+   equipments are strongly sticking; you need to try 't'ake off
    command many times.
 
 
 Q. I know Berserkers cannot use scrolls, and rods.  How do I recall
-   from dungeon?  Maybe I need to travel completely on foot?!!
+   from dungeon?  Maybe I need to travel completely on foot!?
 
 A. Berserkers gain a class power 'Recall' at level 10.  Press the
    'U'(original keyset) or 'O'(Roguelike keyset) to use class power.
@@ -109,9 +109,9 @@ A. You cannot directly control your mount unless you use one hand to
 Q. Where is the score server?  And how do I register my character
    dumps?
 
-A. Here;'http://hengband.sourceforge.jp/en/score.html'.
+A. Here; 'http://hengband.sourceforge.jp/en/score.html'.
    When you die, Hengband will ask you as 'Do you send score to the
-   world score sever?'.  And if you answer 'y', Hengband will
+   world score server?'.  And if you answer 'y', Hengband will
    automatically register your character dump and screen shot.
 
 
@@ -130,10 +130,9 @@ A. Hengband is mainly based on ZAngband 2.2.8 Japanese version.
    addition to simple translation.
 
    Hengband also includes codes from many other variants including
-   ToME, OAngband, etc...  Mr.Hoge wrote the first original part of
+   ToME, OAngband, etc.  Mr.Hoge wrote the first original part of
    Hengband.  And currently, it is maintained by Hengband Development
-   Team including Mr.Hoge, Habu, Henkma, iks, Kuwa, Mogami, nsk, and
-   @nothere.
+   Team including Mr.Hoge, Habu, Henkma, iks, Kuwa, Mogami and nsk.
 
 
 Q. Where is Hengband?
index 7a4e87c..74cf1c9 100644 (file)
@@ -16,7 +16,7 @@ give you a decent chance against the great Serpent of Chaos, who lurks
 somewhere in the depths of the dungeon.
 
 ***** <First>
---- First Place to Go
+--- First Place to Go ---
 
 The player will begin his adventure on the town level where he may
 acquire supplies, weapons, armor, and magical devices by bartering
@@ -31,7 +31,9 @@ safe.  Once you complete this dungeon, you will be strong enough to
 leave Outpost in search of greater adventures.  Carry lots of food and
 fuel, for the journey can be a long one.
 
---- The Global Map  ( Press the '<' key, And you see all of the world! )
+--- The Global Map ---
+
+[[[[[GPress the '<' key, and you see all of the world!]
 
 Since this world is very large, it is convenient to go into global map
 mode by pressing the '<' key, and then return to local map mode by '>'
index c952fea..6c470a4 100644 (file)
      ¤ò¸Æ¤Ó´ó¤»¤¿¤ê¡¢Â¾¤Î¥â¥ó¥¹¥¿¡¼¤òÅݤ¹¤è¤¦»Å¸þ¤±¤¿¤ê¡¢Êü¤·¤¿¤ê¡¢¥É
      ¥¢¤ò³«¤±¤¿¤ê¥¢¥¤¥Æ¥à¤ò½¦¤¦¤Î¤òµö²Ä¤·¤¿¤ê¶Ø»ß¤·¤¿¤ê¤Ç¤­¤Þ¤¹¡£¥¢¥¤
      ¥Æ¥à¤ò½¦¤¦¤Î¤ò¶Ø»ß¤¹¤ë¤È¡¢¥Ú¥Ã¥È¤Ï¤½¤ì¤Þ¤Ç¤Ë½¦¤Ã¤¿¥¢¥¤¥Æ¥à¤òÁ´¤Æ
-     Í¤Þ¤¹¡£
+     Íî¤Ȥ·¤Þ¤¹¡£
 
 ¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Î¥ê¥¹¥È½ÐÎÏ: (^V)
      ¤¢¤Ê¤¿¤Î¥æ¡¼¥¶¡¼¥Ç¥£¥ì¥¯¥È¥ê¤Î "randifact.txt" ¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤
index 524f55a..b099a4f 100644 (file)
 ¤Þ¤º³¬Ãʤξå¤Ë¥­¥ã¥é¥¯¥¿¡¼¤ò°ÜÆ°¤µ¤»¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
 
 ÊѶòÈÚÅܤǤϳ¬Ãʤϳ¬Áؤò¤Ò¤È¤Ä¤À¤±°ÜÆ°¤·¡¢¹£Æ»¤Ï³¬Áؤò£²¤Ä°ÜÆ°¤·¤Þ¤¹¡£
-¤¿¤À¤·¡¢¤Þ¤ì¤ËÉáÄ̤è¤ê¤âŤ¤³¬Ãʤ乣ƻ¤Ç¤¢¤ë»ö¤â¤¢¤ê¡¢¤½¤Î¾ì¹ç¤Ï¤½¤ì¤¾
-¤ì³¬Áؤò£²¤Ä¤«£³¤Ä°ÜÆ°¤·¤Æ¤·¤Þ¤¦¤Î¤ÇÃí°Õ¤¬É¬ÍפǤ¹¡£
 
 ¤É¤Î³¬¤Ë¤â¡¢¾¯¤Ê¤¯¤Æ¤â°ì¤Ä¤Î¾å¤ê³¬ÃʤÈÆó¤Ä¤Î²¼¤ê³¬Ãʤ¬¤¢¤ê¤Þ¤¹¡£¾å¼ê¤Ë
 ±£¤µ¤ì¤¿¥É¥¢¤ò¸«¤Ä¤±¤ë¤Î¤ÏÂçÊѤʤ³¤È¤«¤â¤·¤ì¤Þ¤»¤ó¤·¡¢»þ¤Ë¤Ï³¬Ãʤò¸«¤Ä
index cc36834..5cd44da 100644 (file)
@@ -27,7 +27,7 @@
 Â¿¤¯¤Î¿©ÎÁ¤ò»ý¤Ã¤Æ¤¤¤«¤Ê¤±¤ì¤Ð¤¤¤±¤Þ¤»¤ó¡£
 
 
---- ¹­°è¥Þ¥Ã¥× ----  ( '<' ¤ò²¡¤¹¤À¤±¤Ç¡¢¹­Âç¤ÊÀ¤³¦¤¬¸«¤¨¤ë¡ª¡ª¡ª)
+[[[[[G--- ¹­°è¥Þ¥Ã¥× ----  ( '<' ¤ò²¡¤¹¤À¤±¤Ç¡¢¹­Âç¤ÊÀ¤³¦¤¬¸«¤¨¤ë¡ª¡ª¡ª)]
 
 ¤³¤ÎÀ¤³¦¤ÏÈó¾ï¤Ë¹­¤¤¤Î¤Ç¡¢³¹¤Î³°¤Ë½Ð¤ë¤È¤­¤Ï'<'¤Ç¹­°è¥Þ¥Ã¥×¤ËÆþ¤ê¡¢ÌÜ
 ÅªÃϤˤĤ¤¤¿¤È¤³¤í¤Ç'>'¤ÇÄ̾ï¥Þ¥Ã¥×¤ËÌá¤ë¡¢¤È¤¤¤¦°ÜÆ°¤Î»ÅÊý¤¬ÊØÍø¤Ç¤¹¡£
index 2cccb57..1460473 100644 (file)
     ÊѶòÈÚÅܤΡ¢ÆüËܸìÈÇ¥¢¥ó¥°¥Ð¥ó¥É¤ª¤è¤ÓÆüËܸìÈÇ Zangband¤è¤ê¤ÎÊÑ
   ¹¹Éôʬ¤Ë¤Ä¤¤¤Æ¤Ï°Ê²¼¤Î¼Ô¤¬Âåɽ¤·¤ÆÃøºî¸¢¤òÍ­¤·¤Þ¤¹¡£
 
-    Mr.hoge                 Email: echizen¡÷users.sourceforge.jp
+    Mr.hoge          Email: echizen¡÷users.spamblock.sourceforge.jp
 
 
     ÆüËܸìÈÇ Zangband¤Î¡¢Zangband ¸ÇÍ­¤ÎÆüËܸ첽Éôʬ¤Ë¤Ä¤¤¤Æ¤Ï°Ê²¼¤Î¼Ô
   ¤¬Âåɽ¤·¤ÆÃøºî¸¢¤òÍ­¤·¤Þ¤¹¡£
 
-    ÈÄÁÒ                    Email: m-itakura@geocities.co.jp
+    ÈÄÁÒ             Email: itakura¡÷users.spamblock.sourceforge.net
 
 
     ÆüËܸìÈÇ¥¢¥ó¥°¥Ð¥ó¥É 2.8.3-1.2.6 ¤Ç¤Î¥ª¥ê¥¸¥Ê¥ë angband 2.8.3 ¤è¤ê
   ¤ÎÁ´µ¡¼ï¶¦Ä̤ÎÊѹ¹Éôʬ¤Ë¤Ä¤¤¤Æ¤Ï°Ê²¼¤Î¼Ô¤¬Ãøºî¸¢¤òÍ­¤·¤Þ¤¹¡£
 
-    ¤·¤È¤·¤ó(ÆⳤÀ¶½¨)      iris@bf.mbn.or.jp
-    ¥¨¥ë¥í¥Ã¥¯              CXK01336@niftyserve.or.jp
-    £Æ£É£Ò£Ó£Ô(ÇòÊý·òÂÀϺ)  argrath@yo.rim.or.jp
-    sayu(YOKOYAMA Atsushi)  sayu@gol.com
-    ´ß¹¯»Ê                  kis-@ca2.so-net.or.jp
-    TeO                     CXE00237@niftyserve.or.jp
-    ÅÜÅó¤Î²Ë¿Í(¶â¸÷´²Ê÷)    KFF02766@niftyserve.or.jp
+    ¤·¤È¤·¤ó(ÆⳤÀ¶½¨)      iris¡÷bf.mbn.or.jp
+    ¥¨¥ë¥í¥Ã¥¯              CXK01336¡÷niftyserve.or.jp
+    £Æ£É£Ò£Ó£Ô(ÇòÊý·òÂÀϺ)  argrath¡÷yo.rim.or.jp
+    sayu(YOKOYAMA Atsushi)  sayu¡÷gol.com
+    ´ß¹¯»Ê                  kis-¡÷ca2.so-net.or.jp
+    TeO                     CXE00237¡÷niftyserve.or.jp
+    ÅÜÅó¤Î²Ë¿Í(¶â¸÷´²Ê÷)    KFF02766¡÷niftyserve.or.jp
     VOLKO(¾ë¸Í¥¤¥µ¥à)       ÅìµþBBS: VOLKO
 
 
   ¤Î³Æµ¡¼ï¤Ë¤ª¤±¤ëÊѹ¹Éôʬ¤Ë¤Ä¤¤¤Æ¤Ï¤½¤ì¤¾¤ì°Ê²¼¤Î°Ü¿¢¼Ô¤¬Ãøºî¸¢¤òÍ­¤·
   ¤Þ¤¹¡£
 
-    PC-98x1   ¤Ø¤Î°Ü¿¢¼Ô : ¤·¤È¤·¤ó(iris@bf.mbn.or.jp)
-                           ¥¨¥ë¥í¥Ã¥¯(CXK01336@niftyserve.or.jp)
-    X680x0    ¤Ø¤Î°Ü¿¢¼Ô : £Æ£É£Ò£Ó£Ô(argrath@yo.rim.or.jp)
-    DOS/V     ¤Ø¤Î°Ü¿¢¼Ô : sayu(sayu@gol.com)
-    UNIX/X11  ¤Ø¤Î°Ü¿¢¼Ô : ´ß¹¯»Ê(kis-@ca2.so-net.or.jp)
-                           Íû¹¸¿­(ri@kuis.kyoto-u.ac.jp)
-    NeXTSTEP  ¤Ø¤Î°Ü¿¢¼Ô : ¹â¶¶Îá(Âç³Ø:ks7098tr@ex.ecip.osaka-u.ac.jp)
-                                 (¼«Âð:rei0@osk2.3web.ne.jp)
-    FM-TOWNS  ¤Ø¤Î°Ü¿¢¼Ô : ÊÒ»³·ò°ìϺ(ken_katayama@geocities.co.jp)
-    Windows95 ¤Ø¤Î°Ü¿¢¼Ô : TeO (CXE00237@niftyserve.or.jp)
+    PC-98x1   ¤Ø¤Î°Ü¿¢¼Ô : ¤·¤È¤·¤ó(iris¡÷bf.mbn.or.jp)
+                           ¥¨¥ë¥í¥Ã¥¯(CXK01336¡÷niftyserve.or.jp)
+    X680x0    ¤Ø¤Î°Ü¿¢¼Ô : £Æ£É£Ò£Ó£Ô(argrath¡÷yo.rim.or.jp)
+    DOS/V     ¤Ø¤Î°Ü¿¢¼Ô : sayu(sayu¡÷gol.com)
+    UNIX/X11  ¤Ø¤Î°Ü¿¢¼Ô : ´ß¹¯»Ê(kis-¡÷ca2.so-net.or.jp)
+                           Íû¹¸¿­(ri¡÷kuis.kyoto-u.ac.jp)
+    NeXTSTEP  ¤Ø¤Î°Ü¿¢¼Ô : ¹â¶¶Îá(Âç³Ø:ks7098tr¡÷ex.ecip.osaka-u.ac.jp)
+                                 (¼«Âð:rei0¡÷osk2.3web.ne.jp)
+    FM-TOWNS  ¤Ø¤Î°Ü¿¢¼Ô : ÊÒ»³·ò°ìϺ(ken_katayama¡÷geocities.co.jp)
+    Windows95 ¤Ø¤Î°Ü¿¢¼Ô : TeO (CXE00237¡÷niftyserve.or.jp)
 
 
 
index 31322f7..3a17872 100644 (file)
 ¤Ï¤¤¤±¤Þ¤»¤ó¡£·Ð¸³ÃͤäÀïÍøÉʤϡ¢¼«Ê¬¼«¿È¤Î¼ê¤ÇÁò¤êµî¤Ã¤¿²øʪ¤Îʬ¤À¤±¤¬
 ÆÀ¤é¤ì¤ë¤Î¤Ç¤¹¡£
 
-¥Ú¥Ã¥È¤Ë»ß¤á¤ò»É¤µ¤ì¤¿¥â¥ó¥¹¥¿¡¼¤¬¥¢¥¤¥Æ¥à¤òÍ¤Ê¤¤¤È¤¤¤¦ÊѶòÈÚÅܤÎÆÈ
äλÅÍͤϽÏθ¤Î·ë²Ì¤È¤·¤ÆÄê¤á¤é¤ì¤¿¤â¤Î¤Ç¤¹¡£ÌµÍýÌðÍý²ò¼á¤·¤è¤¦¤È¤¹¤ì
С¢¥Ú¥Ã¥È¤¬Íð˽¤Ë¹¶·â¤¹¤ë¤¿¤á¤Ë¥¢¥¤¥Æ¥à¤¬¹ÔÊýÉÔÌÀ¤Ë¤Ê¤Ã¤¿¤êÇ˲õ¤µ¤ì¤Æ
¤¤ë¤Î¤À¤È¹Í¤¨¤ë»ö¤â¤Ç¤­¤Þ¤¹¤¬¡¢¸½¼ÂŪ¤Ç¤Ï¤Ê¤¤¤È¸À¤Ã¤ÆÉÔËþ¤ò¸À¤¦¿Í¤Ï¿
-¤¤¤Ç¤·¤ç¤¦¡£¤³¤ÎÅÀ¤Ë¤Ä¤¤¤Æ¤Ï¸½¼ÂÀ­¤è¤ê¤â¥²¡¼¥à¥Ð¥é¥ó¥¹¤òÍ¥À褷¤Æ»ÅÍͤò
-Äê¤á¤Æ¤¢¤ê¤Þ¤¹¡£
+¥Ú¥Ã¥È¤Ë»ß¤á¤ò»É¤µ¤ì¤¿¥â¥ó¥¹¥¿¡¼¤¬¥¢¥¤¥Æ¥à¤òÍî¤È¤µ¤Ê¤¤¤È¤¤¤¦ÊѶòÈÚÅܤÎ
ÈÆäλÅÍͤϽÏθ¤Î·ë²Ì¤È¤·¤ÆÄê¤á¤é¤ì¤¿¤â¤Î¤Ç¤¹¡£ÌµÍýÌðÍý²ò¼á¤·¤è¤¦¤È¤¹
ì¤Ð¡¢¥Ú¥Ã¥È¤¬Íð˽¤Ë¹¶·â¤¹¤ë¤¿¤á¤Ë¥¢¥¤¥Æ¥à¤¬¹ÔÊýÉÔÌÀ¤Ë¤Ê¤Ã¤¿¤êÇ˲õ¤µ¤ì
Ƥ¤¤ë¤Î¤À¤È¹Í¤¨¤ë»ö¤â¤Ç¤­¤Þ¤¹¤¬¡¢¸½¼ÂŪ¤Ç¤Ï¤Ê¤¤¤È¸À¤Ã¤ÆÉÔËþ¤ò¸À¤¦¿Í¤Ï
+¿¤¤¤Ç¤·¤ç¤¦¡£¤³¤ÎÅÀ¤Ë¤Ä¤¤¤Æ¤Ï¸½¼ÂÀ­¤è¤ê¤â¥²¡¼¥à¥Ð¥é¥ó¥¹¤òÍ¥À褷¤Æ»ÅÍÍ
+¤òÄê¤á¤Æ¤¢¤ê¤Þ¤¹¡£
 
 ÊѶòÈÚÅܤǤϥڥåȤò´Ö°ã¤Ã¤Æ¹¶·â¤·¤Æ¤·¤Þ¤Ã¤Æ¤âÈà¤é¤ÏÅܤê¤À¤·¤¿¤ê¤Ï¤·¤Þ
 ¤»¤ó¡£¤¢¤Ê¤¿¤ÏËâˡŪ¤Ê¼êÃʤˤè¤Ã¤Æ¥Ú¥Ã¥È¤Î¼«Í³°Õ»Ö¤ò´°Á´¤Ë¾¸°®¤·¤Æ¤¤¤ë
 ¥³¥Þ¥ó¥É¤Ç»Ø¼¨¤¹¤ë»ö¤¬¤Ç¤­¤Þ¤¹¡£¡Ö¥×¥ì¥¤¥ä¡¼¤ò´¬¤­¹þ¤àÈÏ°ÏËâË¡¤ò»È¤¦¡×
 ¤ò(ON)¤Ë¤¹¤ì¤Ð¤¤¤¤¤Î¤Ç¤¹¡£
 
-ºÇ¸å¤Ë¡¢¥Ú¥Ã¥È¤ÎÀ©¸æ¤ò°Ý»ý¤¹¤ë¤Î¤Ë¤ÏÂ礭¤ÊÀº¿ÀÎϤ¬É¬ÍפȤʤê¤Þ¤¹¡£ºÇ½é
-¤ä¤½¤Î¸å¤Î¿ôÂΤϡ֥ե꡼¡×¤Ç¤¹¤¬¡¢¤½¤Î¸å¤ÏMP¤Î²óÉüΨ¤¬²¼¤¬¤ê¤Þ¤¹¡£¥Ú¥Ã
-¥Èã¤Î¥ì¥Ù¥ë¤Î¹ç·×¤¬Â礭¤±¤ì¤ÐÂ礭¤¤¤Û¤É¡¢MP¤Î²óÉüΨ¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¡£
-¤½¤·¤Æ¡¢°Ý»ý¥³¥¹¥È¤¬100%¤òĶ¤¨¤ë¤ÈMP¤Ï²óÉü¤»¤º¤ËµÕ¤Ë²¼¤¬¤ê»Ï¤á¤Þ¤¹¡£Àï
-»Î¤äµ³Ê¼Åù¤ÎMP¤ò»ý¤¿¤Ê¤¤¿¦¶È¤Î¾ì¹ç¤Ï¥Ú¥Ã¥È¤Î°Ý»ý¥³¥¹¥È¤¬100%MP¤òĶ¤¨¤¿
-»þÅÀ¤Ç¤½¤ì°Ê¾å¥Ú¥Ã¥È¤ò°Ý»ý¤¹¤ë»ö¤¬¤Ç¤­¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£²¿ÂΤ«¤Î¥Ú¥Ã¥È¤ò¨
-ºÂ¤Ë²òÊü¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Ç¤·¤ç¤¦¡£Â¾¤Î²øʪ¤ò¾¤´­¤¹¤ë¤è¤¦¤Ê²øʪ¤ò¥Ú¥Ã
-¥È¤Ë¤¹¤ë¤È¤­¤Ï¤³¤Î¤³¤È¤ò˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ²¼¤µ¤¤¡£
+ºÇ¸å¤Ë¡¢¥Ú¥Ã¥È¤ÎÀ©¸æ¤ò°Ý»ý¤¹¤ë¤Î¤Ë¤ÏÂ礭¤ÊÀº¿ÀÎϤ¬É¬ÍפȤʤꡢ¥Ú¥Ã¥Èã
+¤Î¥ì¥Ù¥ë¤Î¹ç·×¤¬Â礭¤±¤ì¤ÐÂ礭¤¤¤Û¤É¡¢MP¤Î²óÉüΨ¤Ï¾®¤µ¤¯¤Ê¤ê¤Þ¤¹¡£¤½¤·
+¤Æ¡¢°Ý»ý¥³¥¹¥È¤¬100%¤òĶ¤¨¤ë¤ÈMP¤Ï²óÉü¤»¤º¤ËµÕ¤Ë²¼¤¬¤ê»Ï¤á¤Þ¤¹¡£Àï»Î¤ä
+µ³Ê¼Åù¤ÎMP¤ò»ý¤¿¤Ê¤¤¿¦¶È¤Î¾ì¹ç¤Ï¥Ú¥Ã¥È¤Î°Ý»ý¥³¥¹¥È¤¬100%¤òĶ¤¨¤¿»þÅÀ¤Ç
+¤½¤ì°Ê¾å¥Ú¥Ã¥È¤ò°Ý»ý¤¹¤ë»ö¤¬¤Ç¤­¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£²¿ÂΤ«¤Î¥Ú¥Ã¥È¤ò¨ºÂ¤Ë²ò
+Êü¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤Ç¤·¤ç¤¦¡£Â¾¤Î²øʪ¤ò¾¤´­¤¹¤ë¤è¤¦¤Ê²øʪ¤ò¥Ú¥Ã¥È¤Ë¤¹
+¤ë¤È¤­¤Ï¤³¤Î¤³¤È¤ò˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ²¼¤µ¤¤¡£
 
 
 --- ¥Ú¥Ã¥È¤ÎÆþ¼ê ---
 Í§¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤Ï¤¢¤Ê¤¿¤ò¹¶·â¤·¤Þ¤»¤ó¤¬¡¢É¬¤º¤·¤â¤¢¤Ê¤¿¤ÎŨ¤ò¹¶·â¤¹
 ¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
 
-¥Ú¥Ã¥È¤Î¤è¤¦¤Ë¡¢Í§¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤â¤Þ¤º¤¤¤³¤È¤ò¤¹¤ë¤ÈŨ¤Ë²ó¤ê¤Þ¤¹¡£¤Þ
-¤¿Í§¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤¬¾¤´­¤¹¤ë¥â¥ó¥¹¥¿¡¼¤Ïͧ¹¥Åª¤Ë¤Ê¤ê¤Þ¤¹¡£¤·¤«¤·¥Ú¥Ã
-¥È¤È°ã¤¤¡¢Í§¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤Ï°Ý»ý¤Î¤¿¤á¤ÎMP¤òɬÍפȤ»¤º¡¢¤Þ¤¿Ì¿Î᤹¤ë
-¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
+ͧ¹¥Åª¤Ê¥â¥ó¥¹¥¿¡¼¤Ë¤Þ¤º¤¤¤³¤È¤ò¤¹¤ë¤ÈŨ¤Ë²ó¤ê¤Þ¤¹¡£¤Þ¤¿Í§¹¥Åª¤Ê¥â¥ó¥¹
+¥¿¡¼¤¬¾¤´­¤¹¤ë¥â¥ó¥¹¥¿¡¼¤Ïͧ¹¥Åª¤Ë¤Ê¤ê¤Þ¤¹¡£¤·¤«¤·¥Ú¥Ã¥È¤È°ã¤¤¡¢Í§¹¥Åª
+¤Ê¥â¥ó¥¹¥¿¡¼¤Ï°Ý»ý¤Î¤¿¤á¤ÎMP¤òɬÍפȤ»¤º¡¢¤Þ¤¿Ì¿Î᤹¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£
 
 --
 Original   : (??)
 Updated    : (??)
 Updated    : Zangband DevTeam
-Updated    : Hengband 1.0.11
+Updated    : Hengband 1.7.0
 
 
 ***** Begin Hyperlinks
index 4a68fc1..1bc673b 100644 (file)
 === µ¿»÷´ÕÄê ===
 
 ¥À¥ó¥¸¥ç¥ó¤ò¤¦¤í¤Ä¤¤¤Æ¤¤¤ë¤È»þ¡¹ÁõÈ÷¤ä»ý¤Áʪ¤Î¼Á¤Ë´Ø¤·¤Æ²¿¤«¤ò´¶¤¸¤ë¤³
-¤È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡Öµ¿»÷´ÕÄê¡×¤È¸Æ¤Ð¤ì¡¢ÂоݤÏÉð´ï¤ÈËɶñ¤Ë¸Â¤é¤ì¤Þ
-¤¹¡£µ¿»÷´ÕÄê¤Î®¤µ¤ÈÀµ³Î¤µ¤Ï´ö¤Ä¤«¤ÎÍ×ÁǤ˱ƶÁ¤µ¤ì¤Þ¤¹¤¬¡¢´ðËÜŪ¤Ë¤Ï¿¦
-¶È¤È¥ì¥Ù¥ë¤Ç·è¤Þ¤ê¤Þ¤¹¡£µ¿»÷´ÕÄê¤Ï¡Ö¶¯¤¤¡×¤«¡Ö¼å¤¤¡×¡¢¤½¤·¤Æ¡ÖÃÙ¤¤¡×¡Ö
-ÉáÄ̡סÖ®¤¤¡×¤Î¤É¤ì¤«¤Ç¤¹¡£
+¤È¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡Öµ¿»÷´ÕÄê¡×¤È¸Æ¤Ð¤ì¤Þ¤¹¡£µ¿»÷´ÕÄê¤Î®¤µ¤ÈÀµ³Î¤µ¤Ï
+´ö¤Ä¤«¤ÎÍ×ÁǤ˱ƶÁ¤µ¤ì¤Þ¤¹¤¬¡¢´ðËÜŪ¤Ë¤Ï¿¦¶È¤È¥ì¥Ù¥ë¤Ç·è¤Þ¤ê¤Þ¤¹¡£µ¿»÷
+´ÕÄê¤Î®¤µ¤Ï¡ÖÃÙ¤¤¡×¡ÖÉáÄ̡סÖ®¤¤¡×¤Î¤É¤ì¤«¤Ç¤¹¡£Éð´ï¤ÈËɶñ¤Îµ¿»÷´ÕÄê
+¤ÎÊýË¡¤Ë¤Ï¡Ö¶¯¤¤¡×¤«¡Ö¼å¤¤¡×¤¬¤¢¤ê¤Þ¤¹¡£¤½¤ì°Ê³°¤Îµ¿»÷´ÕÄê¤ÎÊýË¡¤Ï¾ï¤Ë
+¡Ö¶¯¤¤¡×¤Ç¤¹¡£
 
 
 É½£± - ¿¦¶ÈÊ̤ε¿»÷´ÕÄêǽÎÏ
 
-    ¿¦¶È               ÊýË¡       Â®¤µ
-    ----------------------------------------
-    Warrior            ¶¯¤¤       ¤È¤Æ¤â®¤¤
-    Mage/High-Mage     ¼å¤¤       ÃÙ¤¤
-    Priest             ¼å¤¤       ¤È¤Æ¤â®¤¤
-    Rogue              ¶¯¤¤       Â®¤¤
-    Ranger             ¶¯¤¤       ÉáÄÌ
-    Paladin            ¶¯¤¤       ÉáÄÌ
-    Warrior-Mage       ¼å¤¤       ÉáÄÌ
-    Mindcrafter        ¼å¤¤       ÉáÄÌ
-    Chaos Warrior      ¶¯¤¤       ÉáÄÌ
-    Monk               ¼å¤¤       Â®¤¤
+                       Éð´ï¤ÈËɶñ               Éð´ï¤ÈËɶñ°Ê³°
+    ¿¦¶È               ÊýË¡       Â®¤µ          Â®¤µ
+    ----------------------------------------------------------
+    Àï»Î               ¶¯¤¤       ¤È¤Æ¤â®¤¤    ÉÔ²Äǽ
+    ¥á¥¤¥¸             ¼å¤¤       ÃÙ¤¤          ¤È¤Æ¤â®¤¤
+    ¥×¥ê¡¼¥¹¥È         ¼å¤¤       ¤È¤Æ¤â®¤¤    Â®¤¤
+    Åð±               ¶¯¤¤       Â®¤¤          Â®¤¤
+    ¥ì¥ó¥¸¥ã¡¼         ¶¯¤¤       ÉáÄÌ          ÉáÄÌ
+    ¥Ñ¥é¥Ç¥£¥ó         ¶¯¤¤       ÉáÄÌ          ÃÙ¤¤
+    ËâË¡Àï»Î           ¼å¤¤       ÉáÄÌ          ÉáÄÌ
+    º®ÆÙ¤ÎÀï»Î         ¶¯¤¤       ÉáÄÌ          ÃÙ¤¤
+    ½¤¹ÔÁΠ            ¼å¤¤       Â®¤¤          ÉáÄÌ
+    Ä¶Ç½ÎϼԠ          ¼å¤¤       ÉáÄÌ          Â®¤¤
+    ¥Ï¥¤=¥á¥¤¥¸        ¼å¤¤       ÃÙ¤¤          ¤È¤Æ¤â®¤¤
+    ´Ñ¸÷µÒ             ¶¯¤¤       ¶Ë¤á¤Æ®¤¤    ¶Ë¤á¤Æ®¤¤
+    ¤â¤Î¤Þ¤Í»Õ         ¼å¤¤       ÉáÄÌ          ÃÙ¤¤
+    Ëâ½Ã»È¤¤           ¼å¤¤       ÉáÄÌ          ÃÙ¤¤
+    ¥¹¥Ú¥ë¥Þ¥¹¥¿¡¼     ¼å¤¤       ÃÙ¤¤          ¤È¤Æ¤â®¤¤
+    ¥¢¡¼¥Á¥ã¡¼         ¶¯¤¤       ¤È¤Æ¤â®¤¤    ÉÔ²Äǽ
+    ËâÆ»¶ñ½Ñ»Õ         ¼å¤¤       ÃÙ¤¤          ¤È¤Æ¤â®¤¤
+    ¶ãÍ·»í¿Í           ¼å¤¤       ¤È¤Æ¤â®¤¤    Â®¤¤
+    ÀÖËâÆ»»Õ           ¼å¤¤       ÉáÄÌ          ÉáÄÌ
+    ·õ½Ñ²È             ¶¯¤¤       ¤È¤Æ¤â®¤¤    ÉÔ²Äǽ
+    Îýµ¤½Ñ»Õ           ¼å¤¤       Â®¤¤          Â®¤¤
+    ÀÄËâÆ»»Õ           ¼å¤¤       ÉáÄÌ          ¤È¤Æ¤â®¤¤
+    µ³Ê¼               ¶¯¤¤       ¤È¤Æ¤â®¤¤    ÉÔ²Äǽ
+    ¶¸Àï»Î             ¶¯¤¤       ¶Ë¤á¤Æ®¤¤    ÉÔ²Äǽ
+    ÃÃÌê»Õ             ¶¯¤¤       ¤È¤Æ¤â®¤¤    ÃÙ¤¤
+    ¶À»È¤¤             ¼å¤¤       ÉáÄÌ          ¤È¤Æ¤â®¤¤
+    Ç¦¼Ô               ¶¯¤¤       Â®¤¤          ÃÙ¤¤
 
 
 µ¿»÷´ÕÄꤵ¤ì¤¿¥¢¥¤¥Æ¥à¤Ï´¶¤¸¤¿ÉʼÁ¤Ë¤è¤Ã¤ÆÌ䬹ï¤Þ¤ì¤Þ¤¹(²¼¤Î [e]¤ò»²
     ------------------------------------------------
     ¼ö¤ï¤ì¤Æ¤¤¤ë   ¼ö¤ï¤ì¤¿¥¢¥¤¥Æ¥à(°­¤¤¥¨¥´¥¢¥¤
                    ¥Æ¥à¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È´Þ¤à)
-    ¾å¼Á           ¥Ü¡¼¥Ê¥¹¤Î¤¢¤ë¥¢¥¤¥Æ¥à(Îɤ¤Ì¾¤Î¤¢
+    ¾å¼Á°Ê¾å       ¥Ü¡¼¥Ê¥¹¤Î¤¢¤ë¥¢¥¤¥Æ¥à(Îɤ¤Ì¾¤Î¤¢
                    ¤ë¥¢¥¤¥Æ¥à¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È´Þ¤à)
 
 
 
 /¼Ù : /* : ÌǼ٤ÎÉð´ï               /X¼Ù : /X* : *ÌǼÙ*¤ÎÉð´ï
 /¿Í : /p : ¿Í¿©¤¤¤ÎÉð´ï             /X¿Í : /Xp : *¿Í¿©¤¤*¤ÎÉð´ï
-/Π: /D : ¥É¥é¥´¥ó¡¦¥¹¥ì¥¤¥ä¡¼     /Xζ : /XD : *¥É¥é¥´¥ó¡¦¥¹¥ì¥¤¥ä¡¼*
+/ε : /D : ¥É¥é¥´¥ó¡¦¥¹¥ì¥¤¥ä¡¼     /Xζ : /XD : *¥É¥é¥´¥ó¡¦¥¹¥ì¥¤¥ä¡¼*
 /¥ª : /o : ¥ª¡¼¥¯¡¦¥¹¥ì¥¤¥ä¡¼       /X¥ª : /Xo : *¥ª¡¼¥¯¡¦¥¹¥ì¥¤¥ä¡¼*
 /¥È : /T : ¥È¥í¥ë¡¦¥¹¥ì¥¤¥ä¡¼       /X¥È : /XT : *¥È¥í¥ë¡¦¥¹¥ì¥¤¥ä¡¼*
 /µð : /P : ¥¸¥ã¥¤¥¢¥ó¥È¡¦¥¹¥ì¥¤¥ä¡¼ /Xµð : /XP : *¥¸¥ã¥¤¥¢¥ó¥È¡¦¥¹¥ì¥¤¥ä¡¼*
 ~Á± : ~Good : Á±ÎÉESP               (ÃΠ: (In : ÃÎÎÏ°Ý»ý
 ~̵ : ~Nolv : ÌµÀ¸ÊªESP             (¸­ : (Wi : ¸­¤µ°Ý»ý
 ~¿Í : ~p : ¿Í´ÖESP                  (´ï : (Dx : ´ïÍѤµ°Ý»ý
-~Π: ~D : ¥É¥é¥´¥óESP              (ÂÑ : (Cn : Âѵ×ÎÏ°Ý»ý
+~ε : ~D : ¥É¥é¥´¥óESP              (ÂÑ : (Cn : Âѵ×ÎÏ°Ý»ý
 ~¥ª : ~o : ¥ª¡¼¥¯ESP                (Ì¥ : (Ch : Ì¥ÎÏ°Ý»ý
 ~¥È : ~T : ¥È¥í¥ëESP
 ~µð : ~P : µð¿ÍESP
index 53e83e4..9724436 100644 (file)
@@ -675,8 +675,8 @@ MP
 ¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤ÎãÀ®¤òµ­Ï¿¤¹¤ë  [record_rand_quest]
     ¥é¥ó¥À¥à¥¯¥¨¥¹¥È¤òãÀ®¤·¤¿¤«¡¢Æ¨¤²¤À¤·¤Æ¼ºÇÔ¤·¤¿¤È¤­¤Ëµ­Ï¿¤·¤Þ¤¹¡£
 
-***** <record_maxdeapth>
-ºÇ¿¼³¬¤ò¹¹¿·¤·¤¿¤È¤­¤Ëµ­Ï¿¤¹¤ë  [record_maxdeapth]
+***** <record_maxdepth>
+ºÇ¿¼³¬¤ò¹¹¿·¤·¤¿¤È¤­¤Ëµ­Ï¿¤¹¤ë  [record_maxdepth]
     µ¢´Ô¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë³¬¤è¤ê¤â¿¼¤¤³¬¤Ë°ÜÆ°¤·¤¿¤È¤­¤Ëµ­Ï¿¤µ¤ì¤Þ¤¹¡£¥ê
     ¥»¥Ã¥È¥ê¥³¡¼¥ë¤Î´¬ÊªÅù¤ÇÀßÄ곬¤òÊѤ¨¤¿¾ì¹ç¤ÏƱ¤¸³¬¤Ç2Åٰʾ嵭Ͽ¤·
     ¤Æ¤·¤Þ¤¦»ö¤â¤¢¤ê¤Þ¤¹¡£
index 438829f..9c22815 100644 (file)
@@ -110,7 +110,7 @@ pref file)
       ^B ^N ^P ^F      :  ¥«¡¼¥½¥ë¤ò°ÜÆ°¤·¤Þ¤¹¡£(¤¤¤Ä¤Ç¤â»È¤¨¤Þ¤¹)
       ^I  : »ý¤Áʪ/ÁõÈ÷¤«¤é¥¢¥¤¥Æ¥à¤òÁª¤ó¤Ç¤½¤Î̾Á°¤òÁÞÆþ¤·¤Þ¤¹¡£
       ^S  : ¥«¡¼¥½¥ë°ÌÃ֤Υ¢¥¤¥Æ¥à¤Î ½¦¤¦/Ç˲õ/ÊüÃÖ ¤ÎÀڤ괹¤¨
-      ^U  : Ì¤´ÕÄê/*̤´ÕÄê*/´ÕÄêºÑ¤ß/*´ÕÄê*ºÑ¤ß ¤ÎÀ©¸Â¤ÎÀڤ괹¤¨
+      ^U  : Ì¤´ÕÄê/̤ȽÌÀ/´ÕÄêºÑ¤ß/*´ÕÄê*ºÑ¤ß ¤ÎÀ©¸Â¤ÎÀڤ괹¤¨
 
 
 ***** <Macros>
@@ -147,13 +147,23 @@ pref file)
 
 "\" ¥³¥Þ¥ó¥É(¥Þ¥¯¥í¹ÔÆ°¤Ëµ­½Ò¤¹¤ë¤È¤­¤Ë¤Ï "\\" ¤ÈÆþÎϤ·¤Þ¤¹)¤Ï¥Þ¥¯¥í¤Ë
 ¤ª¤¤¤ÆÂçÊÑÊØÍø¤Ê¥³¥Þ¥ó¥É¤Ç¤¹¡£¤É¤Î¥Þ¥¯¥í¤ä¥­¡¼ÇÛÃ֤ˤª¤¤¤Æ¤â¡¢"\" ¥³¥Þ
-¥ó¥É¤Ë³¤¯¥­¡¼¤ÏÁ´¤Æ¥¢¥ó¥°¥Ð¥ó¥É¤Î¡ÖÆâÉôŪ¥­¡¼ÇÛÃ֡פΥ­¡¼¤È²ò¼á¤µ¤ì¤Þ
-¤¹¡£¡ÖÆâÉôŪ¥­¡¼ÇÛÃ֡פΥꥹ¥È¤Ï "jcommand.txt" ¤ò¸«¤Æ²¼¤µ¤¤¡£Î㤨¤Ð¡¢
-¥Þ¥¯¥í¹ÔÆ°¤Ë "\\.6"¤Èµ­½Ò¤·¡¢¥È¥ê¥¬¡¼¥­¡¼¤ò"SHIFT-(¥Æ¥ó¥­¡¼)6" ¤Ë¤·¤¿
-¤È¤·¤Þ¤¹¡£¤Ä¤Þ¤ê SHIFT-(¥Æ¥ó¥­¡¼)6 ¤Ë "\" + "." + "6" ¤¬ÄêµÁ¤µ¤ì¤¿¤È¤¹
-¤ë¤È¡¢¤É¤Î¥­¡¼ÇÛÃÖ¤ò»ÈÍѤ·¤Æ¤¤¤ë¤È¤­¤Ç¤â¡¢¡ÖÅì¤ËÁö¤ë¡×¤È²ò¼á¤µ¤ì¤Þ¤¹¡£
-¥­¡¼ÇÛÃÖ¤äÄêµÁ¤Ë°Í¸¤·¤Ê¤¤¤È¤¤¤¦ÅÀ¤Ç¥Þ¥¯¥í¤Ï¤Ê¤ë¤Ù¤¯ "\" ¥³¥Þ¥ó¥É¤ò»È
-¤Ã¤ÆÆâÉôŪ¥­¡¼ÇÛÃ֤ǵ­½Ò¤·¤¿¤Û¤¦¤¬¤è¤¤¤Ç¤·¤ç¤¦¡£
+¥ó¥É¤Ë³¤¯¥­¡¼¤Ï¥¢¥ó¥°¥Ð¥ó¥É¤Î¡ÖÆâÉôŪ¥­¡¼ÇÛÃ֡פΥ­¡¼¤È²ò¼á¤µ¤ì¤Þ¤¹¡£
+¡ÖÆâÉôŪ¥­¡¼ÇÛÃ֡פΥꥹ¥È¤Ï "jcommand.txt" ¤ò¸«¤Æ²¼¤µ¤¤¡£Î㤨¤Ð¡¢¥Þ¥¯
+¥í¹ÔÆ°¤Ë "\\.6"¤Èµ­½Ò¤·¡¢¥È¥ê¥¬¡¼¥­¡¼¤ò"SHIFT-(¥Æ¥ó¥­¡¼)6" ¤Ë¤·¤¿¤È¤·¤Þ
+¤¹¡£¤Ä¤Þ¤ê SHIFT-(¥Æ¥ó¥­¡¼)6 ¤Ë "\" + "." + "6" ¤¬ÄêµÁ¤µ¤ì¤¿¤È¤¹¤ë¤È¡¢
+¤É¤Î¥­¡¼ÇÛÃÖ¤ò»ÈÍѤ·¤Æ¤¤¤ë¤È¤­¤Ç¤â¡¢¡ÖÅì¤ËÁö¤ë¡×¤È²ò¼á¤µ¤ì¤Þ¤¹¡£¥­¡¼ÇÛ
+ÃÖ¤äÄêµÁ¤Ë°Í¸¤·¤Ê¤¤¤È¤¤¤¦ÅÀ¤Ç¥Þ¥¯¥í¤Ï¤Ê¤ë¤Ù¤¯ "\" ¥³¥Þ¥ó¥É¤ò»È¤Ã¤ÆÆâÉô
+Ū¥­¡¼ÇÛÃ֤ǵ­½Ò¤·¤¿¤Û¤¦¤¬¤è¤¤¤Ç¤·¤ç¤¦¡£
+
+ÆâÉôŪ¥­¡¼ÇÛÃÖ¤ò»È¤¦ºÝ¤ÎÃí°Õ¤ò½Ò¤Ù¤Þ¤¹¡£"\\" ¤Ï1¤Ä¤Î¥³¥Þ¥ó¥É¤ËÂФ·1²ó¤À
+¤±Í­¸ú¤Ç¤¹¡£Î㤨¤Ð¡¢¥í¡¼¥°É÷¥­¡¼ÇÛÃ֤ǥޥ¯¥í "\\u0u0" ¤ò¼Â¹Ô¤¹¤ë¤È¡¢ºÇ
+½é¤Î "\\u0" ¤ÏÆâÉôŪ¥­¡¼ÇÛÃÖ¤ÎÆ°ºî¤È¤Ê¤êÌÃ{@u0}¤ËÂбþ¤¹¤ë¾ó¤ò»È¤¤¤Þ¤¹
+¤¬¡¢¼¡¤Î "u0" ¤ÏÆâÉôŪ¥­¡¼ÇÛÃ֤ǤϤʤ¯¥í¡¼¥°É÷¥­¡¼ÇÛÃÖ¤ÇÆþÎϤ·¤¿¤È¸«¤Ê
+¤µ¤ì¡¢¤ª¤½¤é¤¯°Õ¿Þ¤·¤Æ¤¤¤Ê¤¤Æ°ºî¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤Î¥Þ¥¯¥í¤ò¥í¡¼¥°É÷¥­¡¼ÇÛ
+Ã֤ǤâÆâÉôŪ¥­¡¼ÇÛÃ֤Ȥ·¤ÆÀµ¤·¤¯Æ°ºî¤µ¤»¤ë¤Ë¤Ï "\\u0\\u0" ¤Èµ­½Ò¤¹¤ë¤Ù
+¤­¤Ç¤¹¡£¤Þ¤¿¡¢"\e" ¤òµ­½Ò¤·¤¿¸å¤Ë¥³¥Þ¥ó¥É¤òµ­½Ò¤¹¤ë¾ì¹ç¤Ë¤â "\\" ¤òµ­½Ò
+¤¹¤ë¤Ù¤­¤Ç¤¹¡£Îã¤È¤·¤Æ¡¢¥í¡¼¥°É÷¥­¡¼ÇÛÃ֤ǤϠ"\\\eu0" ¤Ï¸íÆ°ºî¤·¤Þ¤¹¤Î
+¤Ç "\\\e\\u0" ¤È¤¹¤ë¤Ù¤­¤Ç¤¹¡£
 
 ¥Þ¥¯¥í¤ÎÄêµÁ¤Ï¥æ¡¼¥¶¡¼ÀßÄê¥Õ¥¡¥¤¥ëÃæ¤Ç¤Ï£²¹Ô¤ËÅϤäƵ­½Ò¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
 £±¹ÔÌܤϠ"A:<ʸ»úÎó>" ¤Ç¡¢¤³¤ì¤Ï¥¨¥ó¥³¡¼¥É¤µ¤ì¤¿¥Þ¥¯¥í¹ÔÆ°¤òɽ¤·¤Þ¤¹¡£
@@ -306,9 +316,8 @@ picktype.prf 
 ¡¦¤¹¤Ù¤Æ¤Î¡Á        : ¤¹¤Ù¤Æ¤Î¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦¼ý½¸Ãæ¤Î¡Á        : ´û¤ËƱ¤¸¼ïÎà¤Îʪ¤ò»ý¤Ã¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦Ì¤È½ÌÀ¤Î¡Á        : ¸ú²Ì¤Îʬ¤«¤é¤Ê¤¤¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
-¡¦Ì¤´ÕÄê¤Î¡Á        : ´ÕÄꤵ¤ì¤Æ¤¤¤Ê¤¤¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦´ÕÄêºÑ¤ß¤Î¡Á      : ´ÕÄꤵ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
-¡¦*´ÕÄê*ºÑ¤ß¤Î¡Á    : ´°Á´¤Ë´ÕÄꤵ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
+¡¦*´ÕÄê*ºÑ¤ß¤Î¡Á    : *´ÕÄê*¤µ¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦¥À¥¤¥¹Ìܤΰ㤦¡Á  : »¦Ù¤¤ÎÉð´ïÅù¤Ç¥À¥¤¥¹¤ÎÌܤ¬Ä̾ï¤È°Û¤Ê¤ë¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦¥À¥¤¥¹ÌÜn°Ê¾å¤Î¡Á : ¥À¥¤¥¹¿ô¡ßÌÌ¿ô¤¬ n °Ê¾å¤Î¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
 ¡¦½¤ÀµÃÍn°Ê¾å¤Î¡Á   : Ç½ÎϽ¤ÀµÃͤ¬(+n)°Ê¾å¤Î¥¢¥¤¥Æ¥à¤¬Âоݤˤʤê¤Þ¤¹¡£
@@ -462,9 +471,6 @@ $LEVEL
    lib\user\¥Õ¥¡¥¤¥ë̾ ¤« ~/.angband/Hengband/¥Õ¥¡¥¤¥ë̾ ¤ò¼«
    Æ°½¦¤¤¤ÎÅÐÏ¿¥Õ¥¡¥¤¥ë¤È¤·¤ÆÆɤ߹þ¤ß¤Þ¤¹¡£
 
-(*·Ù¹ð!!*) ¼«Ê¬¼«¿È(Î㤨¤Ðpicktype.prf)¤òÆɤ߹þ¤ó¤Ç¤·¤Þ¤¦¤È±Êµ×¥ë¡¼¥×
-           ¤Ë¤Ê¤Ã¤Æ¥¯¥é¥Ã¥·¥å¤¹¤ë¤Î¤ÇÀäÂФä¤é¤Ê¤¤¤è¤¦¤Ë¡£
-
 
 --- ¼«Æ°½¦¤¤ÀßÄê¤Ë³èÍѤ·¤¿Îã ---
 
index 5446202..c3022bf 100644 (file)
@@ -6,6 +6,123 @@
 ¥Ð¡¼¥¸¥ç¥óÍúÎò
 --------------
 
+2004/7/13 Ver. 1.6.2 (¿·°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ 1.4.7 ¤ÎÁ´¤Æ¤ÎÊѹ¹ÅÀ¡£
+
+
+2004/7/13 Ver. 1.4.7 (µì°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ Êݸ¥Õ¥í¥¢¤Î»ÅÍͤò»ý¤¿¤Ê¤¤1.4.x¥Ö¥é¥ó¥Á¤Î¿¿¤ÎºÇ½ªÈǤËÃ×̿Ū¤Ê¥Ð¥°¤¬
+ ¤¤¤¯¤Ä¤âȯ¸«¤µ¤ì¤¿¤¿¤á½¤Àµ¥ê¥ê¡¼¥¹¡£
+
+ ¥Ð¥°½¤Àµ¡§
+   ¥À¥ó¥¸¥ç¥ó¤Î¼ç¤ÎÀ¸À®»þ¤Ë̵¸Â¥ë¡¼¥×¤Ë´Ù¤ë¥Ð¥°¡£
+   MacÈǤÇÆüËܸì¤Î¥Õ¥¡¥¤¥ë̾¤ò°·¤¦ºÝ¤Ë°Û¾ï½ªÎ»¤¹¤ë¥Ð¥°¡£
+   ºÇÂçHP:0¤Î¥«¥á¥ì¥ª¥ó¤¬À¸À®¤µ¤ì¡¢°Û¾ï½ªÎ»¤Î¸¶°ø¤È¤Ê¤ë¥Ð¥°¡£
+   ¥¶¥Ã¥¯¤«¤é¤¢¤Õ¤ì¤¿ÁõÈ÷Éʤò·«¤êÊÖ¤·¥³¥Þ¥ó¥É¤ÇÁõÈ÷¤¹¤ë¤È¥¢¥¤¥Æ¥à¤¬¾Ã¤¨¤ë¥Ð¥°¡£
+   ¥¯¥¨¥¹¥ÈÆâ¤Çµ¢´Ô¤ò»È¤¦¤È "¹ÓÌî" ¤È¤¤¤¦Ì¾¤Î¥À¥ó¥¸¥ç¥ó¤ËÈô¤Ð¤µ¤ì¤ë¥Ð¥°¡£
+   »À¤ÎÌð¤Î¥¨¥´»ØÎؤòȯư¤¹¤ë¤È²Ð±ê°À­¤Î¥Ü¥ë¥È¤òÊü¤Ä¥Ð¥°¡£
+   ¥¶¥Ã¥¯¤«¤é¥¢¥¤¥Æ¥à¤¬¤¢¤Õ¤ì¤ëȽÄê¤Î¥Ð¥°¡£
+   ¥²¡¼¥à¥¿¡¼¥ó¤¬¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤¹¤ë¥Ð¥°¡£
+   °­Ì´¥â¡¼¥É¤Ç¥â¥ó¥¹¥¿¡¼¤«¤é·Ð¸³Ãͤ¬°Û¾ï¤Ë¿¤¯Æþ¼ê¤Ç¤­¤¿¥Ð¥°¡£
+   ¤½¤Î¾¡¢³Æ¼ïtypo¡¢¤Ø¥ë¥×½¤Àµ¡£
+
+
+2004/5/31 Ver. 1.6.1 (¿·°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ ¥Ð¥°½¤Àµ¡§
+   Æ±Ì¾Ê£¿ô¥â¥ó¥¹¥¿¡¼¤¬¾Þ¶â¼ó¤Î¾ì¹ç¤Ë»àÂΤ¬¼«Æ°½¦¤¤/Ç˲õ¤Ë¥Ò¥Ã¥È¤·¤Ê¤¤¥Ð¥°¡£
+   ÃϾå¥Þ¥Ã¥×¤Ç¾èÇϤΰŹõ¸÷¸»¤¬Í­¸ú¤Ë¤Ê¤ë¥Ð¥°¡£
+   ¤¢¤ä¤·¤¤±Æ¤¬Áý¿£¤·¤¿Ä¾¸å¤ËÀµÂΤ¬¸«¤¨¤ë¥Ð¥°¡£
+   ¥é¥ó¥À¥à¥¯¥¨¥¹¥ÈÊü´þľ¸å¤Ë³¬ÃÊÀ¸À®¤¹¤ë¤È¶¯À©½ªÎ»¤¹¤ë¥Ð¥°¡£
+   ¤½¤Î¾¡¢³Æ¼ïʸ»ú²½¤±¡¢typo¡¢É½¼¨¥¢¥Ã¥×¥Ç¡¼¥ÈÉÔÈ÷¡¢¤Ø¥ë¥×½¤Àµ¡£
+
+ ¤½¤Î¾¡¢1.4.6 ¤ÎÁ´¤Æ¤ÎÊѹ¹ÅÀ¡£
+
+
+2004/5/31 Ver. 1.4.6 (µì°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ Êݸ¥Õ¥í¥¢¤Î»ÅÍͤò»ý¤¿¤Ê¤¤1.4.x¥Ö¥é¥ó¥Á¤Î¿¿¤ÎºÇ½ªÈÇ¡£
+
+ °ìÉô¿¦¶È¤Î¥ì¥Ù¥ëÊ̾ιæ¤ÎÊѹ¹¡£
+ ÊѶòÈÚÅܤòµ¯Æ°¤·¤¿¤Þ¤ÞWindows¤ò¥·¥ã¥Ã¥È¥À¥¦¥ó¤·¤¿¾ì¹ç¤Ë¥»¡¼¥Ö¤¹¤ë¡£
+ WindowsÈǤÈMacÈǤǡ¢¥Ð¥°¤Ç¶¯À©½ªÎ»¤·¤¿¾ì¹ç¤Ë¥²¡¼¥à¤ò¶ÛµÞ¥»¡¼¥Ö¤¹¤ë¡£
+ Îýµ¤½Ñ»Õ¤¬ËâË¡½ñ¤ò»È¤¨¤Ê¤¤¾ì¹ç¤ËÀìÍÑ¥×¥í¥ó¥×¥È¤òÄ̤¹¡£
+ ¥é¥ó¥À¥à¥¯¥¨¥¹¥¿¡¼¤Ïvault¤Ë¤ÏÇÛÃÖ¤µ¤ì¤Ê¤¤¡£
+ »àË´»þ¤ÎÊèÈ꤫¤é»à°ø¤¬¤Ï¤ß½Ð¤µ¤Ê¤¤¤è¤¦¤ËÊѹ¹¡£
+ ¥Ï¥¦¥ó¥É¤Ï¹ü¤È»àÂΤòÍî¤È¤µ¤Ê¤¤¡£
+
+ ¥Ð¥°½¤Àµ¡§
+   ¾¡Íø¸å¤ÎÀÚÊ¢¤Îµ­Ï¿¤Î¥Ð¥°¡£
+   ¾èÇÏÃæ¤Î¥â¥ó¥¹¥¿¡¼¤¬°ì»þŪ¤Ë¾Ã¤¨¤ë¾ì¹ç¤¬¤¢¤ë¥Ð¥°¡£
+   ¥¢¥ê¡¼¥Ê¤ÇËõ»¦·ÏËâË¡¤ò»È¤¨¤Æ¤¤¤¿¥Ð¥°¡£
+   »àÂΤȹü¤òξÊýÍî¤È¤¹¤Ï¤º¤Î¥â¥ó¥¹¥¿¡¼¤¬¹ü¤òÍî¤È¤µ¤Ê¤¤¥Ð¥°¡£
+   ¥é¥ó¥À¥à¥¯¥¨¥¹¥¿¡¼¤Î¤¤¤Ê¤¤¥¯¥¨¥¹¥È³¬¤¬À¸À®¤µ¤ì¤ë¥Ð¥°¡£
+   ¼êÜØÃÆÅù¤ÎÄ̾ï½Ð¸½¤·¤Ê¤¤¥â¥ó¥¹¥¿¡¼¤Î¿Í·Á¤¬½Ð¸½¤¹¤ë¥Ð¥°¡£
+   "%:<file>"Æɤ߹þ¤ß¤Ç̵¸Â¥ë¡¼¥×¤Ë´Ù¤ë¥Ð¥°¡£
+   ¹ÓÌî¥Þ¥Ã¥×À¸À®»þ¤Ë¶¯À©½ªÎ»¤¹¤ë¾ì¹ç¤¬¤¢¤ë¥Ð¥°¡£
+   quark¤¬»È¤¤ÀÚ¤é¤ì¤ë¤È̵ÌäDzõ¤ì¤ë¥é¥ó¥À¥à¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬À¸À®¤µ¤ì¤ë¥Ð¥°¡£
+   ¥Ñ¥¿¡¼¥ó¾å¤Î¾èÇϲÄǽ¥Ú¥Ã¥È¤òÍѤ¤¤Æ¥Ñ¥¿¡¼¥ó¤ò̵»ë¤Ç¤­¤ë¥Ð¥°¡£
+   Æþ¿È¤Ç¥â¥ó¥¹¥¿¡¼¤òÅݤ·¤¿Ä¾¸å¤Ë¥«¥ª¥¹¤Î¼é¸î°­Ëâ¤ÎÊó½·Åù¤Ç¥Æ¥ì¥Ý¡¼¥È¤·¤Æ¤â
+   Åݤ·¤¿»þ¤Î°ÌÃÖ¤ËÌá¤ë¥Ð¥°¡£
+   ¾¢ËâË¡ "Éð´ï°À­ÉÕÍ¿" ¤Ç(+3¹¶·â)°Ê¾å¤ÎÀÚ¤ìÌ£¤ÎÈ»¤Î·õ¤¬¤Ç¤­¤ë¥Ð¥°¡£
+   Ç¦¼Ô¤ÎĶ±£Ì©²ò½üȽÄê¤Î¥Ð¥°¡£
+   ¥Æ¥ì¥Ý¡¼¥ÈÄÉÈø¤Ë´Ø¤¹¤ë¥Ð¥°¡£
+   X11 on MacOSX¤Ç¥µ¥Ö¥¦¥£¥ó¥É¥¦¤ò¥ê¥µ¥¤¥º¤¹¤ëºÝ¤Î¥Ð¥°¡£
+   MacÈǤÇÀßÄ꤬Êݸ¤µ¤ì¤Ê¤¤¥Ð¥°¡£
+   ./configure --with-setgid=games ¤Ç¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥»¡¼¥ÖÉÔ²Äǽ¤Î¥Ð¥°¡£
+   ¤½¤Î¾¡¢³Æ¼ïʸ»ú²½¤±¡¢typo¡¢É½¼¨¥¢¥Ã¥×¥Ç¡¼¥ÈÉÔÈ÷¡¢¤Ø¥ë¥×½¤Àµ¡£
+
+
+2004/1/9 Ver. 1.6.0 (¿·°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ 1.5.4¤Î¥Ð¥°¥Õ¥£¥Ã¥¯¥¹ÈÇ¡£
+ ¿·¤·¤¤°ÂÄêÈÇ¥Ö¥é¥ó¥Á¤ÎºÇ½é¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤¹¡£
+
+ ¥¬¥ó¥À¥ë¥Õ¤Î¾ó, ÂÓËâÎÏ¥Ú¥ó¥À¥ó¥È¤Îȯư¤Î»ÅÍÍÊѹ¹¡£
+ Åð±¥®¥ë¥É¤Î¡Öʬ¤±Á°¡×Çѻߡ£
+ ÆüÂؤï¤ê¾Þ¶â¼ó¤ÏƱ̾¤Î¥â¥ó¥¹¥¿¡¼¤ò¶èÊ̤·¤Ê¤¤¡£
+ ¥À¥ó¥¸¥ç¥ó¤Î¥Õ¥í¥¢´Ö¤ò°ÜÆ°¤¹¤ëºÝ¤Ë¶À¤ÏÇúȯ¤Ê¤·¤Ç¾Ã¤¨¤ë¤è¤¦¤Ë½¤Àµ¡£
+ X11¤Ç, ¥Þ¥¦¥¹¤Ç¤Î´Á»ú¤Î¥³¥Ô¡¼ & ¥Ú¡¼¥¹¥È¤¬»È¤¨¤ë¤è¤¦¤Ë½¤Àµ¡£
+
+ ¥Ð¥°½¤Àµ¡§
+   ./configure --with-setgid=games ¤Ç¥³¥ó¥Ñ¥¤¥ë»þ¤Ë¥»¡¼¥ÖÉÔ²Äǽ¤Î¥Ð¥°¡£
+   {@ud}Åù¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥ÈÌäÎÉÔ¶ñ¹ç¡£
+   ¥»¡¼¥Ö¼Â¹Ô»þ¤Ësanity blast¤ò¼õ¤±¤ë¥Ð¥°¡£
+   lite_town¤Ç¤Î¸Å¤¤¾ë¤ÎÊó½·¤¬¸Å¤«¤Ã¤¿¥Ð¥°¡£
+   ¥é¥Ã¥­¡¼¥Þ¥ó¤ÇÆÍÁ³ÊÑ°Û¼£ÎŤò¤¹¤ë¤È¥Õ¥ê¡¼¥º¤¹¤ë¥Ð¥°¡£
+   ¥æ¥Ë¡¼¥¯¤¬¥¢¥¤¥Æ¥à¤ò½¦¤Ã¤¿¤Þ¤ÞÊݸ³¬¤Ç¾Ã¤¨¤ë¤È¤Þ¤ì¤Ë¥¯¥é¥Ã¥·¥å¡£
+   ¥â¥ó¥¹¥¿¡¼Æ±»Î¤ÎÅꤲÍî¤È¤·¤Ç¡¢¥×¥ì¥¤¥ä¡¼¤¬¥À¥á¡¼¥¸¤ò¼õ¤±¤ë¥Ð¥°¡£
+   ¤½¤Î¾¡¢³Æ¼ïʸ»ú²½¤±¡¢typo¡¢É½¼¨¥¢¥Ã¥×¥Ç¡¼¥ÈÉÔÈ÷¡¢¤Ø¥ë¥×½¤Àµ¡£
+
+ ¤½¤Î¾¡¢1.4.5 ¤ÎÁ´¤Æ¤ÎÊѹ¹ÅÀ¡£
+
+
+2004/1/9 Ver. 1.4.5 (µì°ÂÄêÈÇ¥Ö¥é¥ó¥Á)
+ 1.4.x¥Ö¥é¥ó¥Á¤ÎºÇ½ªÈÇ¡£
+ Êݸ¥Õ¥í¥¢¤Î»ÅÍͤò»ý¤¿¤Ê¤¤ºÇ¸å¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤Ê¤ëͽÄê¡£
+
+ ÁõÈ÷ÉʤÎ*´ÕÄê*»þ¤Ë½ÅÍפǤʤ¤ÀâÌÀʸ¤ò¤¤¤Á¤¤¤Áɽ¼¨¤·¤Ê¤¤¡£
+ Windows¤Çsound.cfg¤ÎÀßÄê¤òÍ­¸ú¤Ë(KoKa¤µ¤ó¤Î¥Ñ¥Ã¥Á)
+
+ ¥Ð¥°½¤Àµ¡§
+   ¥â¥ó¥¹¥¿¡¼Æ®µ»¾ì¤Ç¥é¥ó¥À¥à¥Æ¥ì¥Ý¡¼¥È¤·¤Ææ½ÐÉÔ²Äǽ¤Ë¤Ê¤ë¥Ð¥°¡£
+   ¥í¡¼¥É»þ¤Î´Á»ú¥³¡¼¥ÉÊÑ´¹¥ß¥¹¡£
+   ·õ½Ñ²È¤Î¥Ö¡¼¥á¥é¥ó¤¬Æ®µ»¾ì¤Ç»ÈÍÑÉÔǽ¤Î¥Ð¥°¡£
+   ¥â¥ó¥¹¥¿¡¼¥Ü¡¼¥ë¤¬Îô²½¤·¤ÆÃæ¿È¤¬ÊѤï¤ë¥Ð¥°¡£
+   ËâË¡¤ÎÅ«¤¬½Å¤Ê¤Ã¤Æ½¼Å¶Î̤¬¥ê¥»¥Ã¥È¤µ¤ì¤ë¥Ð¥°¡£
+   ´ÕÄêºÑ¤ß¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ë{ÆÃÊÌÀ½}¤Îµ¼»÷ÌäòÉÕ¤¯ÉÔ¶ñ¹ç¡£
+   ¼ö¤ï¤ì¤¿Éð´ï¤¬Íø¤­¼ê¤«¤éµÕ¼ê¤Ë°ÜÆ°¤¹¤ë¥Ð¥°¡£
+   ¥Ú¥Ã¥È¾¤´­¤¬¼ºÇÔ¤¹¤ë¥Ð¥°¡£
+   ¿¹¤ÎÃæ¤Ç¶Ç¤ÎÀï»Î¤¬Éü³èÉÔǽ¤Î¥Ð¥°¡£
+   ´Ø·¸Ìµ¤¤¥â¥ó¥¹¥¿¡¼»àË´¤Ç»þ»ß¤á¥­¥ã¥ó¥»¥ë¤Î¥Ð¥°¡£
+   ¶ä¤Î¥¨¥ó¥¼¥ë¤Î¿ô¤¨´Ö°ã¤¤¡£
+   ¡Ø̵ܤΥߥΥ¿¥¦¥í¥¹¡Ù¤¬¼ç¾¤´­¤Ç½Ð¤Ê¤«¤Ã¤¿¥Ð¥°
+   ÃÏ·Á¤È¤Î´Ø·¸¤Ç¥Ú¥Ã¥È¤Î¥Ö¥ì¥¹¤Î´¬¤­Åº¤¨¤Ë¤Ê¤ë¥Ð¥°¡£
+   ¥Ö¥ì¥¹¤¬ÊɤòÈ´¤±¤ë»ö¤¬¤¢¤ë¥Ð¥°¡£
+   Ê¸»ú¤¬'+','%','{'¤Î¥â¥ó¥¹¥¿¡¼¤ò¥â¥ó¥¹¥¿¡¼¤ÎÃμ±¥á¥Ë¥å¡¼¤ËÄɲá£
+   ¼ï²Êѹ¹ÍúÎò¤Îµ­Ï¿ÉÔÈ÷¡£
+   Ä¹¤¹¤®¤ë¾Î¹æ¤òû¤¯Êѹ¹¡£Â¾¤â¾¯¤·½¤Àµ¡£
+   ²þ̾¡§"A Set of Gloves of Dragon" -> "A Set of Dragon Gloves"
+   ¤½¤Î¾¡¢³Æ¼ïʸ»ú²½¤±¡¢typo¡¢É½¼¨¥¢¥Ã¥×¥Ç¡¼¥ÈÉÔÈ÷¡¢¤Ø¥ë¥×½¤Àµ¡£
+
+
 2003/8/12 Ver. 1.5.4 (³«È¯ÈÇ¥Ö¥é¥ó¥Á)
  ¿·¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¥¢¥ß¥å¥ì¥Ã¥ÈÄɲÃ(¸Å¤¤¾ë¤ÎÊó½·)¡£
  {@ma}¡¢{@0}Åù¤ÎÌäθú²Ì¤¬ÁõÈ÷¤ä¾²¤Î¾å¤Î¥¢¥¤¥Æ¥à¤Ë¤â»È¤¨¤ë¤è¤¦¤Ë¡¢
   ¥é¥ó¥À¥àÄɲÃǽÎϤǥƥì¥Ñ¥·¡¼¤ÏÇѻߤ·Âå¤ï¤ê¤Ë·Ù¹ðÄɲÃ
   ¥â¥ó¥¹¥¿¡¼¤ÎAI²þÎÉ
   º®Æ٤Υµ¡¼¥Ú¥ó¥È¤Ï¥À¥ó¥¸¥ç¥ó¤Î¼ç¾¤´­¤Î¼öʸ¤ò»È¤¦
-  ¥¯¥í¡¼¥óÃϹö¤Î¥æ¥Ë¡¼¥¯Ã£¤òÁ´¤Æ(clone)¤Ë(¥¢¥¤¥Æ¥à¤ÏÍ)
+  ¥¯¥í¡¼¥óÃϹö¤Î¥æ¥Ë¡¼¥¯Ã£¤òÁ´¤Æ(clone)¤Ë(¥¢¥¤¥Æ¥à¤ÏÍî¤Ȥ¹)
   Èô¤ÓÆ»¶ñ¤Î½Ð¸½³¬Êѹ¹
   Îô²½¹¶·â¤Ç¤Þ¤ì(1/13)¤Ëpval¤¬²¼¤¬¤ë
   ÅêÚ³¤Ç¥¢¥¤¥Æ¥à¤Î¥À¥á¡¼¥¸½¤Àµ¤ÏÀäÂÐÃͤò¼è¤Ã¤Æ²ò¼á¤¹¤ë
index d75583d..4fe4540 100644 (file)
@@ -52,8 +52,8 @@ Warrior-Mage  | 2   | 2 | 2 | 2 | 2   | 2 | 1 | 2 | 2   | 2   |
 Chaos Warrior |     |   |   | 1 |     |   |   |   | 1   |     |
 Monk          | 1   |   | 1 |   | 1   |   |   | 1 |     |     | 
 High Mage     | 1   | 1 | 1 | 1 | 1   | 1 | 1 | 1 | 1   | 1   |
-              |     |   |   |   |     |   | 1 |   |     |     |  
-              |     |   |   |   |     | 1 |   |   |     |     |  
+Tourist       |     |   |   |   |     |   | 1 |   |     |     |  
+BeastMaster   |     |   |   |   |     | 1 |   |   |     |     |  
 ForceTrainer  | 1   |   | 1 |   | 1   |   |   | 1 |     | 1   |  
 Sorcerer      |  All realms
 Red Mage      |  All realms (Lower rank spellbooks only)
@@ -71,12 +71,12 @@ There are eleven class-specific magics (or techniques):
 - Kendo               (for Samurai)
 - The Force           (for ForceTrainer)
 - Blue-Magic          (for Blue Mage)
-- Rage                (for Berserker
+- Rage                (for Berserker)
 - Smithery            (for Weaponsmith)
 - Mirror-magic        (for Mirror Master)
 - Ninjutsu            (for Ninja)
 
-See raceclas.tx#TheClasses [a] for more details.
+See raceclas.txt#TheClasses [a] for more details.
 
 
 ***** <MagicRealms>
index 5c6f8be..4559c0b 100644 (file)
@@ -73,7 +73,7 @@ will probably get cleaned up.
 === Monster Memories ===
 
 Because there are so many monsters and because often different monsters
-share similar colors and symbols, it is very difficult to keep track of
+share similar colors and symbols; it is very difficult to keep track of
 the capabilities of various creatures. Luckily, Hengband automatically
 keeps track of your experiences with a particular creature.
  
@@ -86,14 +86,14 @@ that fact is noted.
 
 If you have killed enough of a particular creature, or suffered enough
 attacks, recalling the monster memory may also provide you with
-information not otherwise available, such as a armor class or hit dice.
+information not otherwise available, such as an armor class or hit dice.
 These are not explained, but may be useful to give the relative danger
 of each creature.
  
 Your monster memory may be accessed by pressing '/' and then entering
 the symbol you wish to research. Each monster with that symbol of which
 you have some knowledge will displayed in turn beginning with the
-deepest. Alternatively, you may enter targetting mode by pressing '*'
+deepest. Alternatively, you may enter targeting mode by pressing '*'
 and, with the cursor over the creature in question, press 'r' to
 recall details.
 
@@ -106,7 +106,7 @@ character.
 ***** <Uniques>
 === Unique Monsters ===
 
-The monsters in Hengband are unique in that each variety of monster
+The monsters in Hengband are unique in that each variety of monsters
 has its own set of physical and, where applicable, magical abilities.
 However, some monsters in Hengband are truly unique and this group
 of monsters are often referred to as "Uniques".
@@ -181,32 +181,33 @@ an attack of amnesia.
 ***** <Pets>
 === Pets and Riding ===
 
-In Hengband, pets are very useful. In other variants (such as Zangband), 
-your pets are often so eager to destroy your opponents that they may 
-forget all about you, and you get trampled under their feet as they 
-charge at your foe. In Hengband, however, pets will never attack you 
-by mistake; you can walk around in safety even as your pet Great Hell 
-Wyrm breaths. Pets will also never be irritated with you; their will is 
-perfectly dominated by you, and all pets are permanently your pets.
-
-One might think that they can make the game much easier. It is of
-course highly satisfying to send your pet Great Hell Wyrm into a Troll 
+In Hengband, pets are very useful.  In other variants (such as
+Zangband), your pets are often so eager to destroy your opponents that
+they may forget all about you, and you get trampled under their feet
+as they charge at your foe.  In Hengband, however, pets will never
+attack you by mistake; you can walk around in safety even as your pet
+Great Hell Wyrm breaths.  Pets will also never be irritated with you;
+their will is perfectly dominated by you, and all pets are permanently
+your pets.
+
+One might think that they can make the game much easier.  It is of
+course highly satisfying to send your pet Great Hell Wyrm into a Troll
 pit and wait outside listening for the howls of agony and terror, the
-sounds of guts splattering, bones crunching and so on. But one should
+sounds of guts splattering, bones crunching and so on.  But one should
 not expect to gain any experience and item drops for such a combat:
 you will only gain experience and items for creatures to whom you
 deliver the death blow yourself.
 
-Monsters which get killed by a pet don't drop items. This feature of
+Monsters which get killed by a pet don't drop items.  This feature of
 Hengband is unique and severe, and you might complain about it because
 this feature is not very realistic, but this is a well-thought-out
 result of weighing game balance with reality.
 
 Finally, it takes a lot of mental energy to maintain your control over
-charmed monsters. The first monster or the first few are 'free',
-but after that maintaining the control will start taxing your mana
-regain rate. The higher the sum of the levels of your pets the less
-mana you will be able to regain. Keep this in mind if you have a pet
+charmed monsters, and start taxing your mana regain rate.  The higher
+the sum of the levels of your pets the less mana you will be able to
+regain.  And after the upkeep became more then 100% mana, you begin to
+lose mana rather than regain.  Keep this in mind if you have a pet
 which can summon or otherwise produce more pets...
 
 
index 0f1b31d..ebb07f2 100644 (file)
@@ -223,27 +223,46 @@ described simply as a 'Potion of Heroism'.
 
 Occasionally, as you wander around the dungeon you will sense something
 about the quality of an item or items you are wielding or carrying in
-your backpack. This sensing ability is called 'pseudo-id' and is
-limited to weapons and armor. The speed and accuracy of your pseudo-id
-ability depends on a number of factors but the primary considerations
-are your class and level. Pseudo-id can be 'strong' or 'weak' and
-'slow', 'medium' or 'fast'.
+your backpack. This sensing ability is called 'pseudo-id'. The speed
+and accuracy of your pseudo-id ability depends on a number of factors
+but the primary considerations are your class and level. Pseudo-id
+speed can be 'slow', 'medium' or 'fast'. Pseudo-id method of weapons
+and armors can be 'strong' or 'weak'. Pseudo-id method of others is
+always 'strong'.
 
 
 Table 1 - Pseudo-Id ability of the Classes
 
-    Class              Method     Speed
-    ----------------------------------------
-    Warrior            Strong     Very Fast
-    Mage/High-Mage     Weak       Slow
-    Priest             Weak       Very Fast
-    Rogue              Strong     Fast
-    Ranger             Strong     Medium
-    Paladin            Strong     Medium
-    Warrior-Mage       Weak       Medium
-    Mindcrafter        Weak       Medium
-    Chaos Warrior      Strong     Medium
-    Monk               Weak       Fast
+                       Weapons and Armors       Others
+    Class              Method     Speed         Speed
+    --------------------------------------------------------
+    Warrior            Strong     Very Fast     Impossible
+    Mage               Weak       Slow          Very Fast
+    Priest             Weak       Very Fast     Fast
+    Rogue              Strong     Fast          Fast
+    Ranger             Strong     Medium        Medium
+    Paladin            Strong     Medium        Slow
+    Warrior-Mage       Weak       Medium        Medium
+    Chaos-Warrior      Strong     Medium        Slow
+    Monk               Weak       Fast          Medium
+    Mindcrafter        Weak       Medium        Fast
+    High-Mage          Weak       Slow          Very Fast
+    Tourist            Strong     Extr. Fast    Extr. Fast
+    Imitator           Weak       Medium        Slow
+    BeastMaster        Weak       Medium        Slow
+    Sorcerer           Weak       Slow          Very Fast
+    Archer             Strong     Very Fast     Impossible
+    Magic-Eater        Weak       Slow          Very Fast
+    Bard               Weak       Very Fast     Fast
+    Red-Mage           Weak       Medium        Medium
+    Samurai            Strong     Very Fast     Impossible
+    ForceTrainer       Weak       Fast          Fast
+    Blue-Mage          Weak       Medium        Very Fast
+    Cavalry            Strong     Very Fast     Impossible
+    Berserker          Strong     Extr. Fast    Impossible
+    Weaponsmith        Strong     Very Fast     Slow
+    Mirror-Master      Weak       Medium        Very Fast
+    Ninja              Strong     Fast          Slow
 
 
 When you pseudo-id an item, it will be inscribed (see below [e]) with
@@ -271,7 +290,7 @@ Table 3 - Weak Pseudo-Id
     ------------------------------------------------
     cursed         a cursed item (includes bad ego
                    items and artifacts)
-    good           an enchanted item (includes good
+    uncursed       an enchanted item (includes good
                    ego items and artifacts)
 
 
@@ -333,7 +352,7 @@ Of all the objects in Hengband that you might find, by far the most
 important group are artifacts.  Artifacts are unique items with
 additional properties such as increasing or sustaining one or more
 of your stats and granting resistances or abilities. Often an
-artifact cab be 'A'ctivated for a magical effect. These can be
+artifact can be 'A'ctivated for a magical effect. These can be
 Extremely useful - especially for classes that are weak in magic.
 
 There are two types of artifacts - fixed and random. The fixed
@@ -781,7 +800,7 @@ Rods ('-')
 Spellbooks ('?')
     There are four spell books for each of the magic realms and which
     are found either in the shops or at varying depths in the dungeons.
-    If you are are a spellcaster, you may 'b'rowse any book belonging
+    If you are a spellcaster, you may 'b'rowse any book which belonging
     to your chosen realm(s) to see what spells it contains. You may not
     browse books from realms other than those that your character has
     chosen. You may learn new spells with the 'g' command and cast them
index 38948cb..eadce9a 100644 (file)
@@ -9,8 +9,8 @@ which is shown on the "options" screen, plus the internal name of the
 option in brackets, followed by a textual description of the option.
 
 Note that the internal name of the option can be used in user pref
-files to force the option to a given settingsee "command.txt" for
-more info.
+files to force the option to a given setting (see "command.txt" for
+more info).
 
 Various concepts are mentioned in the descriptions below, including
 "disturb", (cancel any running, resting, or repeated commands, which
@@ -96,7 +96,7 @@ Prompt before exiting a quest level    [confirm_quest]
 Allow targetting pets    [target_pet]
     Normally, the program doesn't automatically choose pets as target
     in the targeting mode of attack spells. If this option is set, the
-    program always choose every monsters in sight as target.
+    program always chooses every monster in sight as target.
 
 ***** <easy_open>
 Automatically open doors    [easy_open]
@@ -106,7 +106,7 @@ Automatically open doors    [easy_open]
 
 ***** <easy_disarm>
 Automatically disarm traps    [easy_disarm]
-    Makes it easy for your character disarm a trap: simply by walking into
+    Makes it easy for your character disarms a trap: simply by walking into
     it! Also the disarm command will automatically select one direction
     if only one known trap is near you.
 
@@ -362,7 +362,7 @@ Always create unusually small dungeon levels    [always_small_levels]
 ***** <empty_levels>
 Allow empty 'arena' levels    [empty_levels]
     Normal dungeon levels consist mostly of rock. If this option is in
-    use, levels which have empty floor instead of solid rock may  also 
+    use, levels which have empty floor instead of solid rock may also 
     be created (somewhat reminiscent of Nethack's "big-room" levels). 
     These levels can be extremely deadly, especially with breathing
     monsters (since there are few obstructions to shield). Arena levels
@@ -650,16 +650,16 @@ Record when destroy unique monster    [record_destroy_uniq]
 
 ***** <record_fix_quest>
 Record fixed quests    [record_fix_quest]
-    If this option is set, result of every fixed quests will be
+    If this option is set, result of every fixed quest will be
     written in the Play-record.
 
 ***** <record_rand_quest>
 Record random quests    [record_rand_quest]
-    If this option is set, result of every random quests will be
+    If this option is set, result of every random quest will be
     written in the Play-record.
 
-***** <record_maxdeapth>
-Record movements to deepest level    [record_maxdeapth]
+***** <record_maxdepth>
+Record movements to deepest level    [record_maxdepth]
     If this option is set, deepest level will be written in the
     Play-record when you reached new deepest level.
 
@@ -675,7 +675,7 @@ Record purchased items    [record_buy]
 
 ***** <record_sell>
 Record sold items    [record_sell]
-    If this option is set, names and numbers of every items you sold
+    If this option is set, names and numbers of every item you sold
     will be written in the Play-record.
 
 ***** <record_danger>
@@ -860,7 +860,7 @@ Manually haggle in stores    [manual_haggle]
 ***** <easy_band>
 Easy Mode (*)    [easy_band]
     This option enables easy game mode for beginners. If this option is
-    set, you takes only half damage from any enemy's attack compared
+    set, you take only half damage from any enemy's attack compared
     to normal mode, and monster's summoning spells become much
     weaker. But your score will be estimated to be negative number,
     and you cannot send score record to world score board.
@@ -921,7 +921,7 @@ Permanently enable the autoscummer    [ironman_autoscum]
 ***** <ironman_empty_levels>
 Always create empty 'arena' levels (*)    [ironman_empty_levels]
     If this option is enabled, then every level will be empty 'arena'
-    level . See the "Allow empty 'arena' levels" option above.
+    level. See the "Allow empty 'arena' levels" option above.
 
 ***** <ironman_rooms>
 Always generate very unusual rooms (*)    [ironman_rooms]
@@ -954,7 +954,7 @@ Preserve artifacts (*)    [preserve_mode]
 ***** <autoroller>
 Allow use of autoroller for stats (*)    [autoroller]
     If you choose to use the auto-roller, you can specify minimum
-    limit of each stats.  Once you have specified your desired
+    limit of each stat.  Once you have specified your desired
     statistics, the computer will then randomly roll successive
     start-up characters and compare them to your specified
     criteria. Each stat is rolled as a number from 8 to 17, with a
index 3ea6f8c..5ad4cd8 100644 (file)
@@ -90,7 +90,7 @@ Reload auto-picker/destroyer preference ($)
 
 Edit auto-picker/destroyer pref (_)
      Allow the user to edit the pickpref-<player's name>.prf in the
-     user directry.  Basic usage of the editor is almost same as vi,
+     user directory.  Basic usage of the editor is almost same as vi,
      and also have emacs like commands.  Most commands is always
      displayed on the first line and the right half of the screen.
 
@@ -100,9 +100,9 @@ Edit auto-picker/destroyer pref (_)
       'q'            :  Quit the editor (command mode only)
       'hjkl2468'     :  Move cursor (command mode only)
       ^B ^N ^P ^F    :  Move cursor (always)
-      ^I  : Choose an item from inventry/equipment, then insert its name
+      ^I  : Choose an item from inventory/equipment, then insert its name
       ^S  : Rotates action (pick up / destroy / leave on floor)
-      ^U  : Rotates idendify state (identified / unidentified / ...)
+      ^U  : Rotates identify state (identified / unidentified / ...)
 
 
 ***** <Macros>
@@ -413,7 +413,6 @@ Special Notes:
     %:filename
       Read a file named 'filename' as a new pick-pref file. The file 
       must be in the user directory.
-      Caution: Avoid naming the parent file, or the game might freeze up.
 
   - usage of operators
     [EQU arg1 arg2 ...]
index da7d45c..5670a54 100644 (file)
@@ -914,8 +914,8 @@ command("U"/"O").
     their special combat techniques when surrounded by an anti-magic
     barrier.  Berserkers, however, cannot use any magical devices or
     read any scrolls, and are hopeless at all non-combat skills.
-    Since Berserker Amberite or Spectres are quite easy to *win* with,
-    their scores are lowered.
+    Since Berserker Spectres are quite easy to *win* with, their 
+    scores are lowered.
 
     Berserkers use a unique system of techniques called 'Rage'.  They
     gain more techniques as they gain levels.  They use no magic:
index 9308408..c59efb2 100644 (file)
@@ -441,7 +441,7 @@ An arrow (1d5) (+0, +0) (26/26)
 
 The first number is the average damage per shot, and the second is
 average damage per round.  The two numbers can differ because the
-shooting weapons have differing energy requirements per shot (unlike
+shooting weapons have different energy requirements per shot (unlike
 melee weapons.)
 
 === On Slays ===
@@ -561,10 +561,10 @@ watchful for opportunities to get a double move on monsters, and be
 aware that they can do the same to you!  This rule change has a lot of 
 consequences; playing the game will teach them to you...
 
-Apart from this, things are pretty familar.  The amount of energy you 
+Apart from this, things are pretty familiar.  The amount of energy you 
 can gain each game turn is 10 for an average-speed player or monster, 
 can be almost 50 for very fast ones, and most actions you take cost 100 
-energy to perform.  The biggest exception are weapons of Extra Shots; 
+energy to perform.  The biggest exception is weapons of Extra Shots; 
 firing one of these takes less energy, making monsters appear to move 
 in slow motion.  
 
index 194c89d..04f118a 100644 (file)
@@ -76,7 +76,7 @@ The world of Hengband includes five towns separated by a wilderness
 and many dungeons. Fixed quests (see below [d]) could be begun by
 entering certain buildings in the towns.
 
-While most people welcome these large world, they are not for everyone
+While most people welcome this large world, they are not for everyone
 and consequently, there are three possible town options in Hengband -
 the 'Standard' town(s), the 'Lite' town and the 'Vanilla' town. The
 default is the standard town and the lite town and the vanilla town
@@ -135,7 +135,7 @@ for computer efficiency reasons.
 --- The 'Vanilla' Town ---
 
 The vanilla town consists of the nine standard shops only and an
-impenetrable wall which surrounds the town. There are no other
+impenetrable wall which surrounds the town. There is no other
 embellishments. The special buildings and the fixed quests are
 unavailable if you select this option as is the wilderness.
 
@@ -149,7 +149,7 @@ to come out of the woodwork when excited. Blubbering idiots are a
 constant annoyance, but not harmful. Public drunks wander about the
 town singing, and are of no threat to anyone. Sneaky rogues who work
 for the black market are always greedily eyeing your backpack for
-potential new 'purchases'. . . And finally, what town would be complete
+potential new 'purchases'... And finally, what town would be complete
 without a swarm of half drunk warriors, who take offense or become
 annoyed just for the fun of it.
 
index 7f409a9..1e33628 100644 (file)
@@ -1,5 +1,56 @@
 === History of Hengband ===
 
+
+Jan. 9th, 2004  hengband 1.6.0 (New stable branch) released.
+ This is a bug-fix version of 1.5.4, and 
+ the first version of the new stable branch (1.6.x) .
+
+- Activation of the Wizardstaff of Gandalf was changed.
+- Activation of the Charmed Pendant was changed.
+- "share gold" in thievs guild was abolished.
+- Hunter's office make no difference between two races of the same name.
+- Mirrors will disappear when you move to other floor.
+
+- Various bug fixes:
+  "./configure --with-setgid=games" didn't work.
+  Strange behavior for inscriptions such as {@ud}.
+  Sanity blast each time you used save command.
+  Quest rewards in lite_town were older.
+  The game crashed at cure mutation service when you are a Lucky.
+  The rarely crashed when a unique vanished from a saved floor.
+  When a monster threw another monster, the player caused damage.
+  Many typo, screen update failures, wrong descriptions etc.
+
+- All changes for 1.4.5 are also included in 1.6.0 .
+
+
+Jan. 9th, 2004  hengband 1.4.5 (Old stable branch) released.
+ This is the final version of old stable branch (1.4.x),
+ and is the final version without the saved floor.
+
+- Avoid displaying unimportant descriptions when *identified* an object.
+- Enabled use of sound.cfg on Windows. (Thanks to KoKa)
+- Mimicing monsters '+','%','{' didn't appear in monster knowledge menu.
+
+- Various bug fixes:
+  Samurai couldn't use Boomerang tech in Arena.
+  A monster in Capture Ball sometimes disenchanted and changed.
+  Random teleport in Monster Arena cause infinite loop.
+  Charging Magic Whistles were stacked, and charge was reset.
+  Surplus {special} fake inscription on identified artifact.
+  Some items in the Race career list in character dump were missing.
+  Warrior of the Dawn couldn't reproduced in forests.
+  Cursed weapon in left hand was able to move to right hand.
+  Summon Pet sometimes failed.
+  Stop time was cancelled when any monster die.
+  Miscount of Silver Angels.
+  Renamed "A Set of Gloves of Dragon" to "A Set of Dragon Gloves".
+  Sometimes pets mistakenly breathed on the player.
+  Sometimes normal breath pierce walls.
+  The Minotaur of the Labyrinth should be summond by final boss.
+  Many typo, screen update failures, wrong descriptions etc.
+
+
 Aug. 12th, 2003  hengband 1.5.4 (Development branch) released.
 
 - New artifatct amulets.
index d0423c4..26c6a65 100644 (file)
@@ -1398,7 +1398,7 @@ K:581:0xA8/0xA0
 # Feanorian lamp
 K:582:0xB5/0xB6
 
-# Set of Gloves of Dragon
+# Set of Dragon Gloves
 K:584:0x0D/0x5D
 
 # Pair of Dragon Boots
@@ -4606,7 +4606,7 @@ R:1020:0x07/0x68
 # Nami, the Mate
 R:1021:0x03/0x70
 
-# Nappa the Saiayan
+# Nappa the Saiyan
 R:1022:0x0F/0x70
 
 # Hand grenade
index 7a0f2e0..fb25a29 100644 (file)
@@ -3356,7 +3356,7 @@ R:1020:0x07:0x68
 # Nami, the Mate
 R:1021:0x03:0x70
 
-# Nappa the Saiayan
+# Nappa the Saiyan
 R:1022:0x0F:0x70
 
 # Hand grenade
@@ -4592,7 +4592,7 @@ K:581:0xCE:0x9F
 # & Feanorian lamp~
 K:582:0xD8:0x86
 
-# & Set~ of Gloves of Dragon
+# & Set~ of Dragon Gloves
 K:584:0x0D:0x5D
 
 # & Pair~ of Dragon Boots
index 7ea9fc1..0823866 100644 (file)
@@ -55,7 +55,6 @@ Y:change_numeral
 
 ##### Game-Play #####
 
-X:manual_haggle
 X:auto_scum
 Y:stack_force_notes
 X:stack_force_costs
@@ -106,6 +105,7 @@ X:hilite_player
 
 ##### Birth Options #####
 
+X:manual_haggle
 X:easy_band
 Y:smart_learn
 X:smart_cheat
@@ -127,6 +127,8 @@ Y:powerup_home
 ##### Easy Object Auto-Destroyer #####
 
 X:destroy_items
+X:destroy_feeling
+X:destroy_identify
 Y:leave_worth
 X:leave_equip
 Y:leave_chest
@@ -142,7 +144,7 @@ Y:record_rand_art
 Y:record_destroy_uniq
 Y:record_fix_quest
 Y:record_rand_quest
-Y:record_maxdeapth
+Y:record_maxdepth
 Y:record_stair
 Y:record_buy
 X:record_sell
diff --git a/lib/xtra/graf/8x8.bmp b/lib/xtra/graf/8x8.bmp
new file mode 100644 (file)
index 0000000..4b457b0
Binary files /dev/null and b/lib/xtra/graf/8x8.bmp differ
index b288736..e170234 100644 (file)
@@ -1,7 +1,7 @@
 ¡½¡½¡½ ¥¤¥ó¥¹¥È¡¼¥ë ¡½¡½¡½
 
 ¡üWindows
-  WindowÍѥХ¤¥Ê¥ê¤ò¥À¥¦¥ó¥í¡¼¥É¤·¡¢Å¬Åö¤Ê¥Õ¥©¥ë¥À¤ËŸ³«¤·¤Þ¤¹¡£
+  WindowsÍѥХ¤¥Ê¥ê¤ò¥À¥¦¥ó¥í¡¼¥É¤·¡¢Å¬Åö¤Ê¥Õ¥©¥ë¥À¤ËŸ³«¤·¤Þ¤¹¡£
   ¸å¤ÏŸ³«¤·¤¿¥Õ¥©¥ë¥À¤Ë°ÜÆ°¤·¡¢hengband¤ò¥¯¥ê¥Ã¥¯¤¹¤ì¤ÐÍ·¤Ù¤Þ¤¹¡£
 
   ¡¦WindowsÈÇÆȼ«¤Îµ¡Ç½(by Koka¤µ¤ó)
index f4a0aa5..52400ca 100644 (file)
@@ -26,7 +26,7 @@ hengband_SOURCES = \
 
 EXTRA_hengband_SOURCES = \
        angband.ico angband.rc ang_eng.rc maid-x11.c main-mac.c main-win.c \
-       main-dos.c main-ibm.c main-mac-carbon.c \
+       main-dos.c main-ibm.c \
        makefile.bcc makefile.std makefile.dos makefile.ibm \
        readdib.c wall.bmp
 
index fd27f79..fa137cf 100644 (file)
@@ -1911,7 +1911,7 @@ bool create_artifact(object_type *o_ptr, bool a_scroll)
                o_ptr->ident |= (IDENT_MENTAL);
 
                strcpy(dummy_name, "");
-               (void)screen_object(o_ptr, TRUE);
+               (void)screen_object(o_ptr, 0L);
 
 #ifdef JP
                if (!(get_string("¤³¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ò²¿¤È̾ÉÕ¤±¤Þ¤¹¤«¡©", dummy_name, 80)))
@@ -3107,7 +3107,7 @@ void random_artifact_resistance(object_type * o_ptr, artifact_type *a_ptr)
 /*
  * Create the artifact of the specified number
  */
-void create_named_art(int a_idx, int y, int x)
+bool create_named_art(int a_idx, int y, int x)
 {
        object_type forge;
        object_type *q_ptr;
@@ -3119,13 +3119,13 @@ void create_named_art(int a_idx, int y, int x)
        q_ptr = &forge;
 
        /* Ignore "empty" artifacts */
-       if (!a_ptr->name) return;
+       if (!a_ptr->name) return FALSE;
 
        /* Acquire the "kind" index */
        i = lookup_kind(a_ptr->tval, a_ptr->sval);
 
        /* Oops */
-       if (!i) return;
+       if (!i) return FALSE;
 
        /* Create the artifact */
        object_prep(q_ptr, i);
@@ -3153,6 +3153,12 @@ void create_named_art(int a_idx, int y, int x)
 
        random_artifact_resistance(q_ptr, a_ptr);
 
+       /*
+        * drop_near()Æâ¤ÇÉáÄ̤θÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬½Å¤Ê¤é¤Ê¤¤À­¼Á¤Ë°Í¸¤¹¤ë.
+        * ²¾¤Ë2¸Ä°Ê¾å¸ºß²Äǽ¤«¤ÄÁõÈ÷Éʰʳ°¤Î¸ÇÄꥢ¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤¬ºîÀ®¤µ¤ì¤ì¤Ð
+        * ¤³¤Î´Ø¿ô¤ÎÊÖ¤êÃͤϿ®ÍѤǤ­¤Ê¤¯¤Ê¤ë.
+        */
+
        /* Drop the artifact from heaven */
-       (void)drop_near(q_ptr, -1, y, x);
+       return drop_near(q_ptr, -1, y, x) ? TRUE : FALSE;
 }
index 80f1aa6..b5cd20f 100644 (file)
@@ -2663,6 +2663,11 @@ void do_cmd_edit_autopick(void)
 
        static s32b old_autosave_turn = 0L;
 
+       if (turn < old_autosave_turn)
+       {
+               while (old_autosave_turn > turn) old_autosave_turn -= TURNS_PER_TICK * TOWN_DAWN;
+       }
+
        /* Autosave */
        if (turn > old_autosave_turn + 100L)
        {
index 932b677..1796a24 100644 (file)
@@ -728,7 +728,7 @@ static hist_type bg[] =
 
 
 #ifdef JP
-       {"¤¢¤Ê¤¿¤Ï½÷²¦¥¯¥é¥³¥ó¤Î²¿¿Í¤«¤Î»Ò¶¡¤Î¤¦¤Á¤Î°ì¿Í¤Ç¤¹¡£"
+       {"¤¢¤Ê¤¿¤Ï½÷²¦¥¯¥é¥å³¥ó¤Î²¿¿Í¤«¤Î»Ò¶¡¤Î¤¦¤Á¤Î°ì¿Í¤Ç¤¹¡£"
        , 100, 84, 85, 50 },
 
        {"¤¢¤Ê¤¿¤ÏÀÖ¤¤È©¤È", 40, 85, 86, 50 },
@@ -1353,7 +1353,7 @@ static hist_type bg[] =
        {"¤¢¤Ê¤¿¤Ï°­¤òÌǤܤ¹¤¿¤á¤Ë¤³¤ÎÃϤËÁ÷¤é¤ì¤Æ¤­¤Þ¤·¤¿¡£", 100, 143, 144, 80},
        {"¤³¤ÎÌÜŪ¤òÀ®¤·¿ë¤²¤ë¤Þ¤Ç¤ÏµÙ¤à¤³¤È¤Ïµö¤µ¤ì¤Þ¤»¤ó¡£", 100, 144, 0, 80},
 #else
-       {"You are of the blessed host of heaven.", 100, 142, 143, 80},
+       {"You are of the blessed host of heaven.  ", 100, 142, 143, 80},
        {"You have been sent to earth to eradicate the wicked, ", 100, 143, 144, 80},
        {"and shall not rest until you have succeeded.", 100, 144, 0, 80},
 #endif
@@ -2341,7 +2341,7 @@ static bool get_player_realms(void)
        p_ptr->realm2 = 255;
        while (1)
        {
-               char temp[80*8];
+               char temp[80*10];
                cptr t;
                count = 0;
                p_ptr->realm1 = choose_realm(realm_choices1[p_ptr->pclass], &count);
@@ -2357,7 +2357,7 @@ static bool get_player_realms(void)
 
                roff_to_buf(realm_jouhou[technic2magic(p_ptr->realm1)-1], 74, temp, sizeof(temp));
                t = temp;
-               for (i = 0; i< 6; i++)
+               for (i = 0; i < 10; i++)
                {
                        if(t[0] == 0)
                                break; 
@@ -3322,12 +3322,6 @@ static void player_wipe(void)
        p_ptr->mane_num = 0;
        p_ptr->exit_bldg = TRUE; /* only used for arena now -KMW- */
 
-       /* Reset rewards */
-       for (i = 0; i < MAX_BACT; i++)
-       {
-               p_ptr->rewards[i] = 0;
-       }
-
        /* Bounty */
        p_ptr->today_mon = 0;
 
@@ -3357,6 +3351,29 @@ static void player_wipe(void)
 
 
 /*
+ *  Hook function for quest monsters
+ */
+static bool mon_hook_quest(int r_idx)
+{
+       monster_race *r_ptr = &r_info[r_idx];
+
+       /* Random quests are in the dungeon */
+       if (r_ptr->flags8 & RF8_WILD_ONLY) return FALSE;
+
+       /* No random quests for aquatic monsters */
+       if (r_ptr->flags7 & RF7_AQUATIC) return FALSE;
+
+       /* No random quests for multiplying monsters */
+       if (r_ptr->flags2 & RF2_MULTIPLY) return FALSE;
+
+       /* No quests to kill friendly monsters */
+       if (r_ptr->flags7 & RF7_FRIENDLY) return FALSE;
+
+       return TRUE;
+}
+
+
+/*
  * Determine the random quest uniques
  */
 void determine_random_questor(quest_type *q_ptr)
@@ -3365,7 +3382,7 @@ void determine_random_questor(quest_type *q_ptr)
        monster_race *r_ptr;
 
        /* Prepare allocation table */
-       get_mon_num_prep(monster_quest, NULL);
+       get_mon_num_prep(mon_hook_quest, NULL);
 
        while (1)
        {
@@ -3407,7 +3424,6 @@ void determine_random_questor(quest_type *q_ptr)
 static void init_dungeon_quests(int number_of_quests)
 {
        int i;
-       monster_race    *r_ptr;
 
        /* Init the random quests */
        init_flags = INIT_ASSIGN;
@@ -3417,13 +3433,6 @@ static void init_dungeon_quests(int number_of_quests)
 
        p_ptr->inside_quest = 0;
 
-       /* Remove QUESTOR flag */
-       for (i = 1; i < max_r_idx; i++)
-       {
-               r_ptr = &r_info[i];
-               if (r_ptr->flags1 & RF1_QUESTOR) r_ptr->flags1 &= ~RF1_QUESTOR;
-       }
-
        /* Generate quests */
        for (i = MIN_RANDOM_QUEST + number_of_quests - 1; i >= MIN_RANDOM_QUEST; i--)
        {
@@ -3468,13 +3477,16 @@ static void init_turn(void)
        {
                /* Undead start just after midnight */
                turn = (TURNS_PER_TICK*3 * TOWN_DAWN) / 4 + 1;
+               turn_limit = TURNS_PER_TICK * TOWN_DAWN * MAX_DAYS + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
        }
        else
        {
                turn = 1;
+               turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
        }
 
        dungeon_turn = 1;
+       dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
 }
 
 /*
@@ -3603,7 +3615,7 @@ static byte player_init[MAX_CLASS][3][2] =
        },
 
        {
-               /* Harper */
+               /* Bard */
                { TV_MUSIC_BOOK, 0 },
                { TV_SOFT_ARMOR, SV_SOFT_LEATHER_ARMOR},
                { TV_SWORD, SV_SHORT_SWORD },
@@ -3638,7 +3650,7 @@ static byte player_init[MAX_CLASS][3][2] =
        },
 
        {
-               /* Kihei */
+               /* Cavalry */
                { TV_BOW, SV_SHORT_BOW },
                { TV_SOFT_ARMOR, SV_LEATHER_SCALE_MAIL},
                { TV_POLEARM, SV_BROAD_SPEAR}
@@ -3652,7 +3664,7 @@ static byte player_init[MAX_CLASS][3][2] =
        },
 
        {
-               /* Kaji */
+               /* Weaponsmith */
                { TV_RING, SV_RING_RES_FEAR }, /* Warriors need it! */
                { TV_HARD_ARMOR, SV_CHAIN_MAIL },
                { TV_POLEARM, SV_BROAD_AXE }
@@ -5274,10 +5286,8 @@ static bool do_cmd_histpref(void)
        {
 #ifdef JP
                msg_print("À¸¤¤Î©¤ÁÀßÄê¥Õ¥¡¥¤¥ë¤ÎÆɤ߹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£");
-               msg_print("histedit.prf¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£");
 #else
                msg_print("Failed to load background history preference.");
-               msg_print("Can't find histpref.prf");
 #endif
                msg_print(NULL);
 
@@ -5420,7 +5430,7 @@ static void edit_history(void)
                        if ((x > 0) && (iskanji2(p_ptr->history[y], x-1))) x--;
 #endif
                }
-               else if (c == '\r')
+               else if (c == '\r' || c == '\n')
                {
                        Term_erase(0, 11, 255);
                        Term_erase(0, 17, 255);
index 26b2ec3..ef40e4f 100644 (file)
@@ -1672,7 +1672,7 @@ static bool vault_aux_battle(int r_idx)
        monster_race *r_ptr = &r_info[r_idx];
 
        /* Decline town monsters */
-/*     if (!monster_dungeon(r_idx)) return FALSE; */
+/*     if (!mon_hook_dungeon(r_idx)) return FALSE; */
 
        /* Decline unique monsters */
 /*     if (r_ptr->flags1 & (RF1_UNIQUE)) return (FALSE); */
@@ -2813,18 +2813,25 @@ msg_print("
                                }
                                else
                                {
-                                       int oldturn = turn;
+                                       s32b oldturn = turn;
 #ifdef JP
                                        do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "½É²°¤ËÇñ¤Þ¤Ã¤¿¡£");
 #else
                                        do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "stay over night at the inn");
 #endif
                                        turn = (turn / (TURNS_PER_TICK*TOWN_DAWN/2) + 1) * (TURNS_PER_TICK*TOWN_DAWN/2);
+
+                                       if (dungeon_turn < dungeon_turn_limit)
+                                       {
+                                               dungeon_turn += MIN(turn - oldturn, TURNS_PER_TICK*250);
+                                               if (dungeon_turn > dungeon_turn_limit) dungeon_turn = dungeon_turn_limit;
+                                       }
+
+                                       prevent_turn_overflow();
+
                                        if (((oldturn + TURNS_PER_TICK * TOWN_DAWN / 4) % (TURNS_PER_TICK * TOWN_DAWN)) > TURNS_PER_TICK * TOWN_DAWN/4) do_cmd_write_nikki(NIKKI_HIGAWARI, 0, NULL);
                                        p_ptr->chp = p_ptr->mhp;
 
-                                       dungeon_turn += MIN(turn - oldturn, TURNS_PER_TICK*250);
-
                                        if (ironman_nightmare)
                                        {
 #ifdef JP
@@ -2927,22 +2934,6 @@ msg_print("
 
 
 /*
- * Share gold for thieves
- */
-static void share_gold(void)
-{
-       int i = (p_ptr->lev * 2) * 10;
-#ifdef JP
-msg_format("¡ð%d ¤ò¼ê¤ËÆþ¤ì¤¿¡£", i);
-#else
-       msg_format("You collect %d gold pieces", i);
-#endif
-
-       p_ptr->au += i;
-}
-
-
-/*
  * Display quest information
  */
 static void get_questinfo(int questnum)
@@ -4714,21 +4705,6 @@ msg_print("
                if (do_res_stat(A_CON)) paid = TRUE;
                if (do_res_stat(A_CHR)) paid = TRUE;
                break;
-       case BACT_GOLD: /* set timed reward flag */
-               if (!p_ptr->rewards[BACT_GOLD])
-               {
-                       share_gold();
-                       p_ptr->rewards[BACT_GOLD] = TRUE;
-               }
-               else
-               {
-#ifdef JP
-                       msg_print("º£Æü¤Îʬ¤±Á°¤Ï¤¹¤Ç¤Ë»Ùʧ¤Ã¤¿¤¾¡ª");
-#else
-                       msg_print("You just had your daily allowance!");
-#endif
-               }
-               break;
        case BACT_ENCHANT_ARROWS:
                item_tester_hook = item_tester_hook_ammo;
                enchant_item(bcost, 1, 1, 0);
@@ -4824,7 +4800,7 @@ msg_print("
                        p_ptr->word_recall = 1;
                        p_ptr->recall_dungeon = select_dungeon;
                        max_dlv[p_ptr->recall_dungeon] = ((amt > d_info[select_dungeon].maxdepth) ? d_info[select_dungeon].maxdepth : ((amt < d_info[select_dungeon].mindepth) ? d_info[select_dungeon].mindepth : amt));
-                       if (record_maxdeapth)
+                       if (record_maxdepth)
 #ifdef JP
                                do_cmd_write_nikki(NIKKI_TRUMP, select_dungeon, "¥È¥é¥ó¥×¥¿¥ï¡¼¤Ç");
 #else
@@ -4842,7 +4818,10 @@ msg_print("
                break;
        }
        case BACT_LOSE_MUTATION:
-               if (p_ptr->muta1 || p_ptr->muta2 || p_ptr->muta3)
+               if (p_ptr->muta1 || p_ptr->muta2 ||
+                   (p_ptr->muta3 & ~MUT3_GOOD_LUCK) ||
+                   (p_ptr->pseikaku != SEIKAKU_LUCKY &&
+                    (p_ptr->muta3 & MUT3_GOOD_LUCK)))
                {
                        while(!lose_mutation(0));
                        paid = TRUE;
index 4cb5abb..7591fa9 100644 (file)
@@ -459,7 +459,7 @@ bool player_can_see_bold(int y, int x)
        xx = (x < px) ? (x + 1) : (x > px) ? (x - 1) : x;
 
        /* Check for "local" illumination */
-       if ((cave[yy][xx].info & CAVE_MNLT) || ((cave[yy][xx].info & (CAVE_GLOW | CAVE_MNDK)) == CAVE_GLOW))
+       if (cave[yy][xx].info & CAVE_GLOW)
        {
                /* Assume the wall is really illuminated */
                return (TRUE);
@@ -763,7 +763,7 @@ static byte lighting_colours[16][2] =
                /* Unsafe cave grid -- idea borrowed from Unangband */ \
                if (view_unsafe_grids && (c_ptr->info & CAVE_UNSAFE)) \
                { \
-                       feat = FEAT_UNDETECTD; \
+                       feat = FEAT_UNDETECTED; \
 \
                        /* Access unsafe darkness */ \
                        f_ptr = &f_info[feat]; \
@@ -800,7 +800,7 @@ static byte lighting_colours[16][2] =
                        /* Use darkened colour */ \
                        a = !new_ascii_graphics ? TERM_L_DARK : lighting_colours[a][1]; \
                } \
-               else if (use_graphics && feat_supports_lighting(feat)) \
+               else if (feat_supports_lighting(feat)) \
                { \
                        /* Use a dark tile */ \
                        c++; \
@@ -948,7 +948,7 @@ void map_info(int y, int x, byte *ap, char *cp)
 
        /* Is this grid "darkened" by monster? */
        bool darkened_grid = ((c_ptr->info & (CAVE_VIEW | CAVE_LITE | CAVE_MNLT | CAVE_MNDK)) == (CAVE_VIEW | CAVE_MNDK)) &&
-                                                       !p_ptr->see_nocto && !p_ptr->blind;
+                                                       !p_ptr->see_nocto && !p_ptr->blind && !p_ptr->wild_mode;
 
        /* Floors (etc) */
        if ((feat <= FEAT_INVIS) || (feat == FEAT_DIRT) || (feat == FEAT_GRASS))
@@ -981,7 +981,12 @@ void map_info(int y, int x, byte *ap, char *cp)
                                /* Handle "blind" */
                                if (p_ptr->blind)
                                {
-                                       if (use_graphics)
+                                       if (is_ascii_graphics(a))
+                                       {
+                                               /* Use "dark gray" */
+                                               a = TERM_L_DARK;
+                                       }
+                                       else
                                        {
                                                /*
                                                 * feat_supports_lighting(feat)
@@ -991,11 +996,6 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                /* Use a dark tile */
                                                c++;
                                        }
-                                       else
-                                       {
-                                               /* Use "dark gray" */
-                                               a = TERM_L_DARK;
-                                       }
                                }
 
                                /* Handle "torch-lit" grids */
@@ -1004,7 +1004,12 @@ void map_info(int y, int x, byte *ap, char *cp)
                                        /* Torch lite */
                                        if (view_yellow_lite && !p_ptr->wild_mode)
                                        {
-                                               if (use_graphics)
+                                               if (is_ascii_graphics(a))
+                                               {
+                                                       /* Use "yellow" */
+                                                       a = TERM_YELLOW;
+                                               }
+                                               else
                                                {
                                                        /*
                                                         * feat_supports_lighting(feat)
@@ -1014,18 +1019,18 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                        /* Use a brightly lit tile */
                                                        c += 2;
                                                }
-                                               else
-                                               {
-                                                       /* Use "yellow" */
-                                                       a = TERM_YELLOW;
-                                               }
                                        }
                                }
 
                                /* Handle "dark" grids */
                                else if ((c_ptr->info & (CAVE_GLOW | CAVE_MNDK)) != CAVE_GLOW)
                                {
-                                       if (use_graphics)
+                                       if (is_ascii_graphics(a))
+                                       {
+                                               /* Use "dark gray" */
+                                               a = TERM_L_DARK;
+                                       }
+                                       else
                                        {
                                                /*
                                                 * feat_supports_lighting(feat)
@@ -1035,11 +1040,6 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                /* Use a dark tile */
                                                c++;
                                        }
-                                       else
-                                       {
-                                               /* Use "dark gray" */
-                                               a = TERM_L_DARK;
-                                       }
                                }
 
                                /* Handle "out-of-sight" grids */
@@ -1048,7 +1048,12 @@ void map_info(int y, int x, byte *ap, char *cp)
                                        /* Special flag */
                                        if (view_bright_lite && !p_ptr->wild_mode)
                                        {
-                                               if (use_graphics)
+                                               if (is_ascii_graphics(a))
+                                               {
+                                                       /* Use "gray" */
+                                                       a = TERM_SLATE;
+                                               }
+                                               else
                                                {
                                                        /*
                                                         * feat_supports_lighting(feat)
@@ -1058,11 +1063,6 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                        /* Use a dark tile */
                                                        c++;
                                                }
-                                               else
-                                               {
-                                                       /* Use "gray" */
-                                                       a = TERM_SLATE;
-                                               }
                                        }
                                }
                        }
@@ -1073,7 +1073,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                {
                        /* Unsafe cave grid -- idea borrowed from Unangband */
                        if (view_unsafe_grids && (c_ptr->info & (CAVE_UNSAFE)))
-                               feat = FEAT_UNDETECTD;
+                               feat = FEAT_UNDETECTED;
                        else
                                feat = FEAT_NONE;
 
@@ -1119,7 +1119,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                /* Use darkened colour */
                                                a = lighting_colours[a][1];
                                        }
-                                       else if (use_graphics && feat_supports_lighting(feat))
+                                       else if (feat_supports_lighting(feat))
                                        {
                                                /* Use a dark tile */
                                                c++;
@@ -1130,15 +1130,14 @@ void map_info(int y, int x, byte *ap, char *cp)
                                else if (c_ptr->info & (CAVE_LITE | CAVE_MNLT))
                                {
                                        /* Torch lite */
-                                       if (view_yellow_lite && !p_ptr->wild_mode && ((use_graphics && feat_supports_lighting(feat)) || is_ascii_graphics(a)))
+                                       if (view_yellow_lite && !p_ptr->wild_mode && (feat_supports_lighting(feat) || is_ascii_graphics(a)))
                                        {
                                                if (is_ascii_graphics(a))
                                                {
                                                        /* Use lightened colour */
                                                        a = lighting_colours[a][0];
                                                }
-                                               else if (use_graphics &&
-                                                               feat_supports_lighting(feat))
+                                               else if (feat_supports_lighting(feat))
                                                {
                                                        /* Use a brightly lit tile */
                                                        c += 2;
@@ -1147,7 +1146,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                                }
 
                                /* Handle "view_bright_lite" */
-                               else if (view_bright_lite && !p_ptr->wild_mode && ((use_graphics && feat_supports_lighting(feat)) || is_ascii_graphics(a)))
+                               else if (view_bright_lite && !p_ptr->wild_mode && (feat_supports_lighting(feat) || is_ascii_graphics(a)))
                                {
                                        /* Not viewable */
                                        if (!(c_ptr->info & CAVE_VIEW))
@@ -1157,7 +1156,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                        /* Use darkened colour */
                                                        a = lighting_colours[a][1];
                                                }
-                                               else if (use_graphics && feat_supports_lighting(feat))
+                                               else if (feat_supports_lighting(feat))
                                                {
                                                        /* Use a dark tile */
                                                        c++;
@@ -1172,6 +1171,11 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                        /* Use darkened colour */
                                                        a = lighting_colours[a][1];
                                                }
+                                               else if (feat_supports_lighting(feat))
+                                               {
+                                                       /* Use a dark tile */
+                                                       c++;
+                                               }
                                        }
                                }
                        }
@@ -1184,15 +1188,15 @@ void map_info(int y, int x, byte *ap, char *cp)
                                /* Handle "blind" */
                                if (p_ptr->blind)
                                {
-                                       if (use_graphics)
+                                       if (is_ascii_graphics(a))
                                        {
-                                               /* Use a dark tile */
-                                               c++;
+                                               /* Use "dark gray" */
+                                               a = TERM_L_DARK;
                                        }
                                        else
                                        {
-                                               /* Use "dark gray" */
-                                               a = TERM_L_DARK;
+                                               /* Use a dark tile */
+                                               c++;
                                        }
                                }
 
@@ -1202,15 +1206,15 @@ void map_info(int y, int x, byte *ap, char *cp)
                                        /* Torch lite */
                                        if (view_yellow_lite && !p_ptr->wild_mode)
                                        {
-                                               if (use_graphics)
+                                               if (is_ascii_graphics(a))
                                                {
-                                                       /* Use a brightly lit tile */
-                                                       c += 2;
+                                                       /* Use "yellow" */
+                                                       a = TERM_YELLOW;
                                                }
                                                else
                                                {
-                                                       /* Use "yellow" */
-                                                       a = TERM_YELLOW;
+                                                       /* Use a brightly lit tile */
+                                                       c += 2;
                                                }
                                        }
                                }
@@ -1221,29 +1225,30 @@ void map_info(int y, int x, byte *ap, char *cp)
                                        /* Not viewable */
                                        if (!(c_ptr->info & CAVE_VIEW))
                                        {
-                                               if (use_graphics)
+                                               if (is_ascii_graphics(a))
                                                {
-                                                       /* Use a dark tile */
-                                                       c++;
+                                                       /* Use "gray" */
+                                                       a = TERM_SLATE;
                                                }
                                                else
                                                {
-                                                       /* Use "gray" */
-                                                       a = TERM_SLATE;
+                                                       /* Use a dark tile */
+                                                       c++;
                                                }
                                        }
 
                                        /* Not glowing */
                                        else if ((c_ptr->info & (CAVE_GLOW | CAVE_MNDK)) != CAVE_GLOW)
                                        {
-                                               if (use_graphics)
+                                               if (is_ascii_graphics(a))
                                                {
-                                                       /* Use a lit tile */
+                                                       /* Use "gray" */
+                                                       a = TERM_SLATE;
                                                }
                                                else
                                                {
-                                                       /* Use "gray" */
-                                                       a = TERM_SLATE;
+                                                       /* Use a dark tile */
+                                                       c++;
                                                }
                                        }
 
@@ -1257,16 +1262,17 @@ void map_info(int y, int x, byte *ap, char *cp)
                                                xx = (x < px) ? (x + 1) : (x > px) ? (x - 1) : x;
 
                                                /* Check for "local" illumination */
-                                               if ((cave[yy][xx].info & (CAVE_GLOW | CAVE_MNDK)) != CAVE_GLOW)
+                                               if (!(cave[yy][xx].info & CAVE_GLOW))
                                                {
-                                                       if (use_graphics)
+                                                       if (is_ascii_graphics(a))
                                                        {
-                                                               /* Use a lit tile */
+                                                               /* Use "gray" */
+                                                               a = TERM_SLATE;
                                                        }
                                                        else
                                                        {
-                                                               /* Use "gray" */
-                                                               a = TERM_SLATE;
+                                                               /* Use a dark tile */
+                                                               c++;
                                                        }
                                                }
                                        }
@@ -1282,7 +1288,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                        {
                                /* Unsafe cave grid -- idea borrowed from Unangband */
                                if (view_unsafe_grids && (c_ptr->info & (CAVE_UNSAFE)))
-                                       feat = FEAT_UNDETECTD;
+                                       feat = FEAT_UNDETECTED;
                                else
                                        feat = FEAT_NONE;
                        }
@@ -1309,7 +1315,7 @@ void map_info(int y, int x, byte *ap, char *cp)
                switch (feat)
                {
                case FEAT_NONE:
-               case FEAT_UNDETECTD:
+               case FEAT_UNDETECTED:
                case FEAT_DARK_PIT:
                        feat_priority = 1;
                        break;
@@ -1844,7 +1850,7 @@ void note_spot(int y, int x)
                        xx = (x < px) ? (x + 1) : (x > px) ? (x - 1) : x;
 
                        /* Check for "local" illumination */
-                       if ((cave[yy][xx].info & (CAVE_GLOW | CAVE_MNDK)) == CAVE_GLOW)
+                       if (cave[yy][xx].info & CAVE_GLOW)
                        {
                                /* Memorize */
                                c_ptr->info |= (CAVE_MARK);
@@ -1960,6 +1966,9 @@ void lite_spot(int y, int x)
                {
                        /* Term_queue_chars ¤ÏÁ´³ÑASCIIÃÏ·Á¤òÀµ¤·¤¯update¤¹¤ë¡£ */
                        Term_queue_chars(panel_col_of(x), y-panel_row_prt, 2, a, &ascii_to_zenkaku[2*(c-' ')]);
+
+                       /* Update sub-windows */
+                       p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
                        return;
                }
 #endif
@@ -2150,10 +2159,10 @@ void prt_path(int y, int x)
                        /* Hack -- Queue it */
 #ifdef USE_TRANSPARENCY
                        Term_queue_char(panel_col_of(nx), ny-panel_row_prt, a, c, ta, tc);
-                       if (use_bigtile) Term_queue_char(panel_col_of(nx)+1, ny-panel_row_prt, a, c2, 0, 0);
+                       if (use_bigtile) Term_queue_char(panel_col_of(nx)+1, ny-panel_row_prt, a2, c2, 0, 0);
 #else
                        Term_queue_char(panel_col_of(nx), ny-panel_row_prt, a, c);
-                       if (use_bigtile) Term_queue_char(panel_col_of(nx)+1, ny-panel_row_prt, a, c2);
+                       if (use_bigtile) Term_queue_char(panel_col_of(nx)+1, ny-panel_row_prt, a2, c2);
 #endif
                }
 
@@ -3132,7 +3141,7 @@ void update_lite(void)
                                if (d > p) continue;
 
                                /* Viewable, nearby, grids get "torch lit" */
-                               if (player_has_los_bold(y, x))
+                               if (cave[y][x].info & CAVE_VIEW)
                                {
                                        /* This grid is "torch lit" */
                                        cave_lite_hack(y, x);
@@ -3717,7 +3726,7 @@ void forget_view(void)
                /* Forget that the grid is viewable */
                c_ptr->info &= ~(CAVE_VIEW);
 
-               if (!panel_contains(y, x)) continue;
+               /* if (!panel_contains(y, x)) continue; */
 
                /* Update the screen */
                /* lite_spot(y, x); Perhaps don't need? */
@@ -4793,32 +4802,28 @@ void wiz_lite(bool ninja)
                                        /* Feature code (applying "mimic" field) */
                                        feat = f_info[c_ptr->mimic ? c_ptr->mimic : c_ptr->feat].mimic;
 
+                                       /* Perma-lite the grid */
+                                       if (!(d_info[dungeon_type].flags1 & DF1_DARKNESS) && !ninja)
+                                       {
+                                               c_ptr->info |= (CAVE_GLOW);
+                                       }
+
                                        /* Memorize normal features */
-                                       if (ninja)
+                                       if ((feat > FEAT_INVIS) && (feat != FEAT_DIRT) && (feat != FEAT_GRASS))
                                        {
                                                /* Memorize the grid */
                                                c_ptr->info |= (CAVE_MARK);
                                        }
-                                       else
+
+                                       /* Perma-lit grids (newly and previously) */
+                                       else if (c_ptr->info & CAVE_GLOW)
                                        {
-                                               if ((feat > FEAT_INVIS))
+                                               /* Normally, memorize floors (see above) */
+                                               if (view_perma_grids && !view_torch_grids)
                                                {
                                                        /* Memorize the grid */
                                                        c_ptr->info |= (CAVE_MARK);
                                                }
-
-                                               /* Perma-lite the grid */
-                                               if (!(d_info[dungeon_type].flags1 & DF1_DARKNESS))
-                                               {
-                                                       c_ptr->info |= (CAVE_GLOW);
-
-                                                       /* Normally, memorize floors (see above) */
-                                                       if (view_perma_grids && !view_torch_grids)
-                                                       {
-                                                               /* Memorize the grid */
-                                                               c_ptr->info |= (CAVE_MARK);
-                                                       }
-                                               }
                                        }
                                }
                        }
@@ -4833,6 +4838,11 @@ void wiz_lite(bool ninja)
 
        /* Window stuff */
        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
+
+       if (p_ptr->special_defense & NINJA_S_STEALTH)
+       {
+               if (cave[py][px].info & CAVE_GLOW) set_superstealth(FALSE);
+       }
 }
 
 
@@ -4913,6 +4923,23 @@ void cave_set_feat(int y, int x, int feat)
 {
        cave_type *c_ptr = &cave[y][x];
 
+       if (!character_dungeon)
+       {
+               /* Clear mimic type */
+               c_ptr->mimic = 0;
+
+               /* Change the feature */
+               c_ptr->feat = feat;
+
+               return;
+       }
+
+       if (is_mirror_grid(c_ptr) && (d_info[dungeon_type].flags1 & DF1_DARKNESS))
+       {
+               c_ptr->info &= ~(CAVE_GLOW);
+               if (!view_torch_grids) c_ptr->info &= ~(CAVE_MARK);
+       }
+
        /* Clear mimic type */
        c_ptr->mimic = 0;
 
@@ -4926,15 +4953,21 @@ void cave_set_feat(int y, int x, int feat)
        if ((feat == FEAT_DEEP_LAVA) && !(d_info[dungeon_type].flags1 & DF1_DARKNESS))
        {
                int i, yy, xx;
+               cave_type *cc_ptr;
 
                for (i = 0; i < 9; i++)
                {
                        yy = y + ddy_ddd[i];
                        xx = x + ddx_ddd[i];
                        if (!in_bounds2(yy, xx)) continue;
-                       cave[yy][xx].info |= CAVE_GLOW;
+                       cc_ptr = &cave[yy][xx];
+                       cc_ptr->info |= CAVE_GLOW;
+
                        if (player_has_los_bold(yy, xx))
                        {
+                               /* Update the monster */
+                               if (cc_ptr->m_idx) update_mon(cc_ptr->m_idx, FALSE);
+
                                /* Notice */
                                note_spot(yy, xx);
 
@@ -4942,8 +4975,16 @@ void cave_set_feat(int y, int x, int feat)
                                lite_spot(yy, xx);
                        }
                }
+
+               if (p_ptr->special_defense & NINJA_S_STEALTH)
+               {
+                       if (cave[py][px].info & CAVE_GLOW) set_superstealth(FALSE);
+               }
        }
 
+       /* Update the monster */
+       if (c_ptr->m_idx) update_mon(c_ptr->m_idx, FALSE);
+
        /* Notice */
        note_spot(y, x);
 
index 106bda7..a2d9034 100644 (file)
@@ -459,101 +459,6 @@ int connect_chuukei_server(char *prf_name)
 #endif
 }
 
-#ifdef SJIS
-static void sjis2euc(char *str)
-{
-       int i, l;
-       unsigned char c1, c2;
-       int kanji = 0;
-       int iseuc = 1;
-       l = strlen(str);
-
-       for (i = 0; i < l; i++)
-       {
-               c1 = str[i];
-               if (c1 & 0x80) kanji = 1;
-               if (c1>=0x80 && (c1 < 0xa1 || c1 > 0xfe)) iseuc = 0;
-       }
-
-       if (kanji && !iseuc)
-       {
-               unsigned char tmp[256];
-
-               for (i = 0; i < l; i++)
-               {
-                       c1 = str[i];
-                       if (c1 & 0x80)
-                       {
-                               i++;
-                               c2 = str[i];
-                               if (c2 >= 0x9f)
-                               {
-                                       c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe0 : 0x60);
-                                       c2 += 2;
-                               }
-                               else
-                               {
-                                       c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe1 : 0x61);
-                                       c2 += 0x60 + (c2 < 0x7f);
-                               }
-                               tmp[i - 1] = c1;
-                               tmp[i] = c2;
-                       }
-                       else
-                               tmp[i] = c1;
-               }
-               tmp[l] = 0;
-               strcpy(str, tmp);
-       }
-}  
-
-static void euc2sjis(char *str)
-{
-       int i, l;
-       unsigned char c1, c2;
-       int kanji = 0;
-       int iseuc = 1;
-       l = strlen(str);
-
-       for (i = 0; i < l; i++)
-       {
-               c1 = str[i];
-               if (c1 & 0x80)  kanji = 1;
-               if (c1>=0x80 && (c1 < 0xa1 || c1 > 0xfe)) iseuc = 0;
-       }
-       if (kanji && iseuc)
-       {
-               unsigned char   tmp[256];
-
-               for (i = 0; i < l; i++)
-               {
-                       c1 = str[i];
-                       if (c1 & 0x80)
-                       {
-                               i++;
-                               c2 = str[i];
-                               if (c1 % 2)
-                               {
-                                       c1 = (c1 >> 1) + (c1 < 0xdf ? 0x31 : 0x71);
-                                       c2 -= 0x60 + (c2 < 0xe0);
-                               }
-                               else
-                               {
-                                       c1 = (c1 >> 1) + (c1 < 0xdf ? 0x30 : 0x70);
-                                       c2 -= 2;
-                               }
-
-                               tmp[i - 1] = c1;
-                               tmp[i] = c2;
-                       }
-                       else
-                               tmp[i] = c1;
-               }
-               tmp[l] = 0;
-               strcpy(str, tmp);
-       }
-}  
-#endif
 
 /* str¤¬Æ±¤¸Ê¸»ú¤Î·«¤êÊÖ¤·¤«¤É¤¦¤«Ä´¤Ù¤ë */
 static bool string_is_repeat(char *str, int len)
index 942d66a..4c62d73 100644 (file)
@@ -416,8 +416,6 @@ s16b tot_dam_aux(object_type *o_ptr, int tdam, monster_type *m_ptr, int mode, bo
                                }
 
                                if (mult < 30) mult = 30;
-                               if (o_ptr->name1 == ART_HRUNTING)
-                                       mult *= 3;
                        }
 
                        /* Execute Giant */
@@ -1092,7 +1090,7 @@ static void hit_trap(bool break_trap)
                        if (p_ptr->ffall)
                        {
 #ifdef JP
-                               msg_print("Í¸Í¤òÈô¤Ó±Û¤¨¤¿¡£");
+                               msg_print("Íî¤Ȥ·¸Í¤òÈô¤Ó±Û¤¨¤¿¡£");
 #else
                                msg_print("You fly over a trap door.");
 #endif
@@ -1101,7 +1099,7 @@ static void hit_trap(bool break_trap)
                        else
                        {
 #ifdef JP
-                               msg_print("Í¸Í¤ËÍî¤Á¤¿¡ª");
+                               msg_print("Íî¤Ȥ·¸Í¤ËÍî¤Á¤¿¡ª");
                                if ((p_ptr->pseikaku == SEIKAKU_COMBAT) || (inventory[INVEN_BOW].name1 == ART_CRIMSON))
                                        msg_print("¤¯¤Ã¤½¡Á¡ª");
 #else
@@ -1111,7 +1109,7 @@ static void hit_trap(bool break_trap)
                                sound(SOUND_FALL);
                                dam = damroll(2, 8);
 #ifdef JP
-                               name = "Í¸Í";
+                               name = "Íî¤Ȥ·¸Í";
 #else
                                name = "a trap door";
 #endif
@@ -1123,7 +1121,7 @@ static void hit_trap(bool break_trap)
                                        do_cmd_save_game(TRUE);
 
 #ifdef JP
-                               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "Í¸Í¤ËÍî¤Á¤¿");
+                               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "Íî¤Ȥ·¸Í¤ËÍî¤Á¤¿");
 #else
                                do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "You have fallen through a trap door!");
 #endif
@@ -1140,7 +1138,7 @@ static void hit_trap(bool break_trap)
                        if (p_ptr->ffall)
                        {
 #ifdef JP
-                               msg_print("Í·ê¤òÈô¤Ó±Û¤¨¤¿¡£");
+                               msg_print("Íî¤Ȥ··ê¤òÈô¤Ó±Û¤¨¤¿¡£");
 #else
                                msg_print("You fly over a pit trap.");
 #endif
@@ -1149,14 +1147,14 @@ static void hit_trap(bool break_trap)
                        else
                        {
 #ifdef JP
-                               msg_print("Í·ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
+                               msg_print("Íî¤Ȥ··ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
 #else
                                msg_print("You have fallen into a pit!");
 #endif
 
                                dam = damroll(2, 6);
 #ifdef JP
-                               name = "Í·ê";
+                               name = "Íî¤Ȥ··ê";
 #else
                                name = "a pit trap";
 #endif
@@ -1171,7 +1169,7 @@ static void hit_trap(bool break_trap)
                        if (p_ptr->ffall)
                        {
 #ifdef JP
-                               msg_print("¥È¥²¤Î¤¢¤ëÍ·ê¤òÈô¤Ó±Û¤¨¤¿¡£");
+                               msg_print("¥È¥²¤Î¤¢¤ëÍî¤Ȥ··ê¤òÈô¤Ó±Û¤¨¤¿¡£");
 #else
                                msg_print("You fly over a spiked pit.");
 #endif
@@ -1180,7 +1178,7 @@ static void hit_trap(bool break_trap)
                        else
                        {
 #ifdef JP
-                       msg_print("¥¹¥Ñ¥¤¥¯¤¬Éߤ«¤ì¤¿Í·ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
+                       msg_print("¥¹¥Ñ¥¤¥¯¤¬Éߤ«¤ì¤¿Íî¤Ȥ··ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
 #else
                                msg_print("You fall into a spiked pit!");
 #endif
@@ -1188,7 +1186,7 @@ static void hit_trap(bool break_trap)
 
                                /* Base damage */
 #ifdef JP
-                               name = "Í·ê";
+                               name = "Íî¤Ȥ··ê";
 #else
                                name = "a pit trap";
 #endif
@@ -1206,7 +1204,7 @@ static void hit_trap(bool break_trap)
 
 
 #ifdef JP
-                                       name = "¥È¥²¤Î¤¢¤ëÍ·ê";
+                                       name = "¥È¥²¤Î¤¢¤ëÍî¤Ȥ··ê";
 #else
                                        name = "a spiked pit";
 #endif
@@ -1226,7 +1224,7 @@ static void hit_trap(bool break_trap)
                        if (p_ptr->ffall)
                        {
 #ifdef JP
-                               msg_print("¥È¥²¤Î¤¢¤ëÍ·ê¤òÈô¤Ó±Û¤¨¤¿¡£");
+                               msg_print("¥È¥²¤Î¤¢¤ëÍî¤Ȥ··ê¤òÈô¤Ó±Û¤¨¤¿¡£");
 #else
                                msg_print("You fly over a spiked pit.");
 #endif
@@ -1235,7 +1233,7 @@ static void hit_trap(bool break_trap)
                        else
                        {
 #ifdef JP
-                       msg_print("¥¹¥Ñ¥¤¥¯¤¬Éߤ«¤ì¤¿Í·ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
+                       msg_print("¥¹¥Ñ¥¤¥¯¤¬Éߤ«¤ì¤¿Íî¤Ȥ··ê¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¡ª");
 #else
                                msg_print("You fall into a spiked pit!");
 #endif
@@ -1245,7 +1243,7 @@ static void hit_trap(bool break_trap)
                                dam = damroll(2, 6);
 
 #ifdef JP
-                               name = "Í·ê";
+                               name = "Íî¤Ȥ··ê";
 #else
                                name = "a pit trap";
 #endif
@@ -1262,7 +1260,7 @@ static void hit_trap(bool break_trap)
 
 
 #ifdef JP
-                                       name = "¥È¥²¤Î¤¢¤ëÍ·ê";
+                                       name = "¥È¥²¤Î¤¢¤ëÍî¤Ȥ··ê";
 #else
                                        name = "a spiked pit";
 #endif
@@ -2009,7 +2007,7 @@ static void py_attack_aux(int y, int x, bool *fear, bool *mdeath, s16b hand, int
 
 
 
-       if (((p_ptr->pclass == CLASS_ROGUE) || (p_ptr->pclass == CLASS_NINJA)) && inventory[INVEN_RARM+hand].tval)
+       if (((p_ptr->pclass == CLASS_ROGUE) || (p_ptr->pclass == CLASS_NINJA)) && buki_motteruka(INVEN_RARM + hand) && !p_ptr->icky_wield[hand])
        {
                int tmp = p_ptr->lev*6+(p_ptr->skill_stl+10)*4;
                if (p_ptr->monlite && (mode != HISSATSU_NYUSIN)) tmp /= 3;
@@ -2070,8 +2068,7 @@ static void py_attack_aux(int y, int x, bool *fear, bool *mdeath, s16b hand, int
 
        /* Disturb the monster */
        m_ptr->csleep = 0;
-       if (r_ptr->flags7 & RF7_HAS_LD_MASK)
-               p_ptr->update |= (PU_MON_LITE);
+       if (r_ptr->flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
 
        /* Extract monster name (or "it") */
        monster_desc(m_name, m_ptr, 0);
@@ -2618,7 +2615,7 @@ msg_format("%s
                                }
                                else k = 1;
                        }
-                       else if ((p_ptr->pclass == CLASS_NINJA) && (!p_ptr->icky_wield[hand]) && ((p_ptr->cur_lite <= 0) || one_in_(7)))
+                       else if ((p_ptr->pclass == CLASS_NINJA) && buki_motteruka(INVEN_RARM + hand) && !p_ptr->icky_wield[hand] && ((p_ptr->cur_lite <= 0) || one_in_(7)))
                        {
                                int maxhp = maxroll(r_ptr->hdice, r_ptr->hside);
                                if (one_in_(backstab ? 13 : (stab_fleeing || fuiuchi) ? 15 : 27))
@@ -2691,7 +2688,7 @@ msg_format("
 #ifdef JP
                                        msg_print("¤Þ¤¿¤Ä¤Þ¤é¤Ì¤â¤Î¤ò»Â¤Ã¤Æ¤·¤Þ¤Ã¤¿¡¥¡¥¡¥");
 #else
-                                       msg_print("Sign..Another trifling thing I've cut....");
+                                       msg_print("Sigh... Another trifling thing I've cut....");
 #endif
                                break;
                        }
@@ -2782,6 +2779,7 @@ msg_format("
                                }
                                m_ptr->maxhp -= (k+7)/8;
                                if (m_ptr->hp > m_ptr->maxhp) m_ptr->hp = m_ptr->maxhp;
+                               if (m_ptr->maxhp < 1) m_ptr->maxhp = 1;
                                weak = TRUE;
                        }
                        can_drain = FALSE;
@@ -3115,6 +3113,7 @@ bool py_attack(int y, int x, int mode)
 
        cave_type       *c_ptr = &cave[y][x];
        monster_type    *m_ptr = &m_list[c_ptr->m_idx];
+       monster_race    *r_ptr = &r_info[m_ptr->r_idx];
        char            m_name[80];
 
        /* Disturb the player */
@@ -3124,8 +3123,8 @@ bool py_attack(int y, int x, int mode)
 
        if (m_ptr->csleep) /* It is not honorable etc to attack helpless victims */
        {
-               if (!(r_info[m_ptr->r_idx].flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_COMPASSION, -1);
-               if (!(r_info[m_ptr->r_idx].flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_HONOUR, -1);
+               if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_COMPASSION, -1);
+               if (!(r_ptr->flags3 & RF3_EVIL) || one_in_(5)) chg_virtue(V_HONOUR, -1);
        }
 
        /* Extract monster name (or "it") */
@@ -3137,7 +3136,7 @@ bool py_attack(int y, int x, int mode)
        /* Track a new monster */
        if (m_ptr->ml) health_track(c_ptr->m_idx);
 
-       if ((r_info[m_ptr->r_idx].flags1 & RF1_FEMALE) &&
+       if ((r_ptr->flags1 & RF1_FEMALE) &&
            !(p_ptr->stun || p_ptr->confused || p_ptr->image || !m_ptr->ml))
        {
                if ((inventory[INVEN_RARM].name1 == ART_ZANTETSU) || (inventory[INVEN_LARM].name1 == ART_ZANTETSU))
@@ -3200,7 +3199,7 @@ bool py_attack(int y, int x, int mode)
 #else
                                msg_format("You stop to avoid hitting %s.", m_name);
 #endif
-                       return FALSE;
+                               return FALSE;
                        }
                }
        }
@@ -3226,7 +3225,7 @@ bool py_attack(int y, int x, int mode)
 
                /* Disturb the monster */
                m_ptr->csleep = 0;
-               p_ptr->update |= (PU_MON_LITE);
+               if (r_ptr->flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
 
                /* Done */
                return FALSE;
@@ -3234,7 +3233,7 @@ bool py_attack(int y, int x, int mode)
 
        if (p_ptr->migite && p_ptr->hidarite)
        {
-               if ((p_ptr->skill_exp[GINOU_NITOURYU] < s_info[p_ptr->pclass].s_max[GINOU_NITOURYU]) && ((p_ptr->skill_exp[GINOU_NITOURYU] - 1000) / 200 < r_info[m_ptr->r_idx].level))
+               if ((p_ptr->skill_exp[GINOU_NITOURYU] < s_info[p_ptr->pclass].s_max[GINOU_NITOURYU]) && ((p_ptr->skill_exp[GINOU_NITOURYU] - 1000) / 200 < r_ptr->level))
                {
                        if (p_ptr->skill_exp[GINOU_NITOURYU] < WEAPON_EXP_BEGINNER)
                                p_ptr->skill_exp[GINOU_NITOURYU] += 80;
@@ -3257,7 +3256,7 @@ bool py_attack(int y, int x, int mode)
                if (cur < max)
                {
                        int ridinglevel = r_info[m_list[p_ptr->riding].r_idx].level;
-                       int targetlevel = r_info[m_ptr->r_idx].level;
+                       int targetlevel = r_ptr->level;
                        int inc = 0;
 
                        if ((cur / 200 - 5) < targetlevel)
@@ -3321,7 +3320,7 @@ bool py_attack(int y, int x, int mode)
 }
 
 
-static bool pattern_seq(int c_y, int c_x, int n_y, int n_x)
+bool pattern_seq(int c_y, int c_x, int n_y, int n_x)
 {
        if (!pattern_tile(c_y, c_x) && !pattern_tile(n_y, n_x))
                return TRUE;
@@ -3548,6 +3547,9 @@ void move_player(int dir, int do_pickup, bool break_trap)
        cave_type *c_ptr;
        monster_type *m_ptr;
 
+       monster_type *riding_m_ptr = &m_list[p_ptr->riding];
+       monster_race *riding_r_ptr = &r_info[p_ptr->riding ? riding_m_ptr->r_idx : 0]; /* Paranoia */
+
        char m_name[80];
 
        bool p_can_pass_walls = FALSE;
@@ -3667,14 +3669,10 @@ void move_player(int dir, int do_pickup, bool break_trap)
                p_can_pass_walls = FALSE;
        }
 
-       if (p_ptr->riding)
-       {
-               cave[py][px].m_idx = 0;
-       }
-
        /* Hack -- attack monsters */
        if (c_ptr->m_idx && (m_ptr->ml || cave_floor_bold(y, x) || p_can_pass_walls))
        {
+               monster_race *r_ptr = &r_info[m_ptr->r_idx];
 
                /* Attack -- only if we can see it OR it is not in a wall */
                if (!is_hostile(m_ptr) &&
@@ -3684,7 +3682,7 @@ void move_player(int dir, int do_pickup, bool break_trap)
                    ((cave_floor_bold(y, x)) || (c_ptr->feat == FEAT_TREES) || (p_can_pass_walls)))
                {
                        m_ptr->csleep = 0;
-                       p_ptr->update |= (PU_MON_LITE);
+                       if (r_ptr->flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
 
                        /* Extract monster name (or "it") */
                        monster_desc(m_name, m_ptr, 0);
@@ -3701,9 +3699,9 @@ void move_player(int dir, int do_pickup, bool break_trap)
                                py_attack(y, x, 0);
                                oktomove = FALSE;
                        }
-                       else if (monster_can_cross_terrain(cave[py][px].feat, &r_info[m_ptr->r_idx]) &&
+                       else if (monster_can_cross_terrain(cave[py][px].feat, r_ptr) &&
                                 (cave_floor_bold(py, px) || cave[py][px].feat == FEAT_TREES ||
-                                 (r_info[m_ptr->r_idx].flags2 & RF2_PASS_WALL)))
+                                 (r_ptr->flags2 & RF2_PASS_WALL)))
                        {
                                do_past = TRUE;
                        }
@@ -3822,7 +3820,7 @@ void move_player(int dir, int do_pickup, bool break_trap)
        }
 
 #endif /* ALLOW_EASY_DISARM -- TNB */
-       else if (p_ptr->riding && (r_info[m_list[p_ptr->riding].r_idx].flags1 & RF1_NEVER_MOVE))
+       else if (p_ptr->riding && (riding_r_ptr->flags1 & RF1_NEVER_MOVE))
        {
 #ifdef JP
                msg_print("Æ°¤±¤Ê¤¤¡ª");
@@ -3834,16 +3832,16 @@ void move_player(int dir, int do_pickup, bool break_trap)
                disturb(0, 0);
        }
 
-       else if (p_ptr->riding && m_list[p_ptr->riding].monfear)
+       else if (p_ptr->riding && riding_m_ptr->monfear)
        {
                char m_name[80];
 
                /* Acquire the monster name */
-               monster_desc(m_name, &m_list[p_ptr->riding], 0);
+               monster_desc(m_name, riding_m_ptr, 0);
 
                /* Dump a message */
 #ifdef JP
-msg_format("%s¤¬¶²Éݤ·¤Æ¤¤¤ÆÀ©¸æ¤Ç¤­¤Ê¤¤¡£", m_name);
+               msg_format("%s¤¬¶²Éݤ·¤Æ¤¤¤ÆÀ©¸æ¤Ç¤­¤Ê¤¤¡£", m_name);
 #else
                msg_format("%^s is too scared to control.", m_name);
 #endif
@@ -3857,7 +3855,7 @@ msg_format("%s
                disturb(0, 0);
        }
 
-       else if ((p_ptr->riding && (r_info[m_list[p_ptr->riding].r_idx].flags7 & RF7_AQUATIC)) && (c_ptr->feat != FEAT_SHAL_WATER) && (c_ptr->feat != FEAT_DEEP_WATER))
+       else if ((p_ptr->riding && (riding_r_ptr->flags7 & RF7_AQUATIC)) && (c_ptr->feat != FEAT_SHAL_WATER) && (c_ptr->feat != FEAT_DEEP_WATER))
        {
 #ifdef JP
                msg_print("Φ¾å¤Ë¾å¤¬¤ì¤Ê¤¤¡£");
@@ -3869,7 +3867,7 @@ msg_format("%s
                disturb(0, 0);
        }
 
-       else if ((p_ptr->riding && !(r_info[m_list[p_ptr->riding].r_idx].flags7 & (RF7_AQUATIC | RF7_CAN_SWIM | RF7_CAN_FLY))) && (c_ptr->feat == FEAT_DEEP_WATER))
+       else if ((p_ptr->riding && !(riding_r_ptr->flags7 & (RF7_AQUATIC | RF7_CAN_SWIM | RF7_CAN_FLY))) && (c_ptr->feat == FEAT_DEEP_WATER))
        {
 #ifdef JP
                msg_print("¿å¾å¤Ë¹Ô¤±¤Ê¤¤¡£");
@@ -3881,7 +3879,7 @@ msg_format("%s
                disturb(0, 0);
        }
 
-       else if ((p_ptr->riding && (r_info[m_list[p_ptr->riding].r_idx].flags2 & (RF2_AURA_FIRE)) && !(r_info[m_list[p_ptr->riding].r_idx].flags7 & (RF7_CAN_FLY))) && (c_ptr->feat == FEAT_SHAL_WATER))
+       else if ((p_ptr->riding && (riding_r_ptr->flags2 & RF2_AURA_FIRE) && !(riding_r_ptr->flags7 & RF7_CAN_FLY)) && (c_ptr->feat == FEAT_SHAL_WATER))
        {
 #ifdef JP
                msg_print("¿å¾å¤Ë¹Ô¤±¤Ê¤¤¡£");
@@ -3893,7 +3891,7 @@ msg_format("%s
                disturb(0, 0);
        }
 
-       else if ((p_ptr->riding && !(r_info[m_list[p_ptr->riding].r_idx].flags7 & (RF7_CAN_FLY)) && !(r_info[m_list[p_ptr->riding].r_idx].flagsr & RFR_EFF_IM_FIRE_MASK)) && ((c_ptr->feat == FEAT_SHAL_LAVA) || (c_ptr->feat == FEAT_DEEP_LAVA)))
+       else if ((p_ptr->riding && !(riding_r_ptr->flags7 & RF7_CAN_FLY) && !(riding_r_ptr->flagsr & RFR_EFF_IM_FIRE_MASK)) && ((c_ptr->feat == FEAT_SHAL_LAVA) || (c_ptr->feat == FEAT_DEEP_LAVA)))
        {
 #ifdef JP
                msg_print("ÍÏ´ä¤Î¾å¤Ë¹Ô¤±¤Ê¤¤¡£");
@@ -3905,10 +3903,10 @@ msg_format("%s
                disturb(0, 0);
        }
 
-       else if (p_ptr->riding && m_list[p_ptr->riding].stunned && one_in_(2))
+       else if (p_ptr->riding && riding_m_ptr->stunned && one_in_(2))
        {
                char m_name[80];
-               monster_desc(m_name, &m_list[p_ptr->riding], 0);
+               monster_desc(m_name, riding_m_ptr, 0);
 #ifdef JP
                msg_format("%s¤¬Û¯Û°¤È¤·¤Æ¤¤¤Æ¤¦¤Þ¤¯Æ°¤±¤Ê¤¤¡ª",m_name);
 #else
@@ -4085,6 +4083,8 @@ msg_format("%s
                        }
                }
 
+               if (p_ptr->riding) cave[py][px].m_idx = 0;
+
                if (do_past)
                {
 #ifdef JP
@@ -4119,36 +4119,29 @@ msg_format("%s
                py = y;
                px = x;
 
-               if (p_ptr->riding && (r_info[m_list[p_ptr->riding].r_idx].flags2 & RF2_KILL_WALL))
-               {
-                       if (cave[py][px].feat >= FEAT_RUBBLE && cave[py][px].feat < FEAT_PERM_SOLID)
-                       {
-                               /* Forget the wall */
-                               cave[py][px].info &= ~(CAVE_MARK);
-
-                               /* Notice */
-                               cave_set_feat(py, px, floor_type[randint0(100)]);
-                       }
-               }
                if (music_singing(MUSIC_WALL))
                {
                        project(0, 0, py, px,
                                (60 + p_ptr->lev), GF_DISINTEGRATE, PROJECT_KILL | PROJECT_ITEM, -1);
                }
-               else if (p_ptr->kill_wall)
+               else if (p_ptr->kill_wall || (p_ptr->riding && (riding_r_ptr->flags2 & RF2_KILL_WALL)))
                {
-                       if (cave_valid_bold(py, px) &&
+                       if (!cave_floor_bold(py, px) && !cave_perma_bold(py, px) &&
                                (cave[py][px].feat < FEAT_PATTERN_START ||
                                 cave[py][px].feat > FEAT_PATTERN_XTRA2) &&
                                (cave[py][px].feat < FEAT_DEEP_WATER ||
                                 cave[py][px].feat > FEAT_GRASS))
                        {
+                               /* Forget the wall */
+                               cave[py][px].info &= ~(CAVE_MARK);
+
                                if (cave[py][px].feat == FEAT_TREES)
                                        cave_set_feat(py, px, FEAT_GRASS);
                                else
                                        cave_set_feat(py, px, floor_type[randint0(100)]);
                        }
-                               /* Update some things -- similar to GF_KILL_WALL */
+
+                       /* Update some things -- similar to GF_KILL_WALL */
                        p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MONSTERS | PU_MON_LITE);
                }
 
@@ -4325,7 +4318,7 @@ msg_format("%s
                                        msg_print("*Leaving trap detect region!*");
 #endif
                                }
-                               
+
                                if (disturb_trap_detect)
                                {
                                        disturb(0, 0);
@@ -4336,11 +4329,12 @@ msg_format("%s
 
        if (p_ptr->riding)
        {
-               m_list[p_ptr->riding].fy = py;
-               m_list[p_ptr->riding].fx = px;
+               riding_m_ptr->fy = py;
+               riding_m_ptr->fx = px;
                cave[py][px].m_idx = p_ptr->riding;
                update_mon(cave[py][px].m_idx, TRUE);
-               p_ptr->update |= (PU_MON_LITE);
+               if (riding_r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+                       p_ptr->update |= (PU_MON_LITE);
        }
 }
 
index ea612cb..065e371 100644 (file)
@@ -118,22 +118,27 @@ void do_cmd_go_up(void)
 
        if (autosave_l) do_cmd_save_game(TRUE);
 
-       if (p_ptr->inside_quest)
+       /* For a random quest */
+       if (p_ptr->inside_quest &&
+           quest[p_ptr->inside_quest].type == QUEST_TYPE_RANDOM)
        {
                leave_quest_check();
 
-               if (quest[leaving_quest].type != QUEST_TYPE_RANDOM)
-               {
-                       p_ptr->inside_quest = c_ptr->special;
-                       dun_level = 0;
-               }
-               else
-               {
-                       p_ptr->inside_quest = 0;
-               }
+               p_ptr->inside_quest = 0;
+       }
+
+       /* For a fixed quest */
+       if (p_ptr->inside_quest &&
+           quest[p_ptr->inside_quest].type != QUEST_TYPE_RANDOM)
+       {
+               leave_quest_check();
 
+               p_ptr->inside_quest = c_ptr->special;
+               dun_level = 0;
                up_num = 0;
        }
+
+       /* For normal dungeon and random quest */
        else
        {
                /* New depth */
@@ -299,7 +304,7 @@ void do_cmd_go_down(void)
                if (record_stair)
                {
 #ifdef JP
-                       if (fall_trap) do_cmd_write_nikki(NIKKI_STAIR, down_num, "Í¸Í¤ËÍî¤Á¤¿");
+                       if (fall_trap) do_cmd_write_nikki(NIKKI_STAIR, down_num, "Íî¤Ȥ·¸Í¤ËÍî¤Á¤¿");
                        else do_cmd_write_nikki(NIKKI_STAIR, down_num, "³¬Ãʤò²¼¤ê¤¿");
 #else
                        if (fall_trap) do_cmd_write_nikki(NIKKI_STAIR, down_num, "fell through a trap door");
@@ -310,7 +315,7 @@ void do_cmd_go_down(void)
                if (fall_trap)
                {
 #ifdef JP
-                       msg_print("¤ï¤¶¤ÈÍ¸Í¤ËÍî¤Á¤¿¡£");
+                       msg_print("¤ï¤¶¤ÈÍî¤Ȥ·¸Í¤ËÍî¤Á¤¿¡£");
 #else
                        msg_print("You deliberately jump through the trap door.");
 #endif
@@ -718,7 +723,7 @@ static void chest_trap(int y, int x, s16b o_idx)
                else
                {
 #ifdef JP
-                       msg_print("±²´¬¤«¹çÂΤ·¡¢ÇËÎö¤·¤¿¡ª");
+                       msg_print("±²´¬¤¬¹çÂΤ·¡¢ÇËÎö¤·¤¿¡ª");
 #else
                        msg_print("Vortices coalesce and wreak destruction!");
 #endif
@@ -738,7 +743,7 @@ static void chest_trap(int y, int x, s16b o_idx)
 
                /* Message. */
 #ifdef JP
-               msg_print("¶²¤·¤¤À¼¤¬¶Á¤¤¤¿:  ¡Ö°Å°Ç¤¬Æò¤ò¤Ä¤Ä¤Þ¤ó¡ª¡×");
+               msg_print("¶²¤í¤·¤¤À¼¤¬¶Á¤¤¤¿:  ¡Ö°Å°Ç¤¬Æò¤ò¤Ä¤Ä¤Þ¤ó¡ª¡×");
 #else
                msg_print("Hideous voices bid:  'Let the darkness have thee!'");
 #endif
@@ -1675,9 +1680,10 @@ static bool do_cmd_tunnel_aux(int y, int x)
 #else
                                msg_print("You have finished the tunnel.");
 #endif
-                               chg_virtue(V_DILIGENCE, 1);
-                               chg_virtue(V_NATURE, -1);
                        }
+
+                       chg_virtue(V_DILIGENCE, 1);
+                       chg_virtue(V_NATURE, -1);
                }
 
                /* Failure (quartz) */
@@ -4202,9 +4208,9 @@ bool do_cmd_throw_aux(int mult, bool boomerang, int shuriken)
                return FALSE;
        }
 
-       if (p_ptr->inside_arena)
+       if (p_ptr->inside_arena && !boomerang)
        {
-               if (o_ptr->tval != 5)
+               if (o_ptr->tval != TV_SPIKE)
                {
 #ifdef JP
                        msg_print("¥¢¥ê¡¼¥Ê¤Ç¤Ï¥¢¥¤¥Æ¥à¤ò»È¤¨¤Ê¤¤¡ª");
index 7304366..e9b19f9 100644 (file)
@@ -303,7 +303,7 @@ s = "
 
                if (!get_item(&slot, q, s, (USE_EQUIP)))
                        return;
-               if (slot == INVEN_RARM)
+               if ((slot == INVEN_RARM) && !cursed_p(&inventory[INVEN_RARM]))
                {
                        object_type *or_ptr = &inventory[INVEN_RARM];
                        object_type *ol_ptr = &inventory[INVEN_LARM];
@@ -490,69 +490,60 @@ msg_print("
        /* Increment the equip counter by hand */
        equip_cnt++;
 
-       /* Where is the item now */
-       if (slot == INVEN_RARM)
-       {
-               if((o_ptr->tval != TV_SHIELD) && (o_ptr->tval != TV_CAPTURE) && (o_ptr->tval != TV_CARD) && (empty_hands(FALSE) & 0x00000001) && ((o_ptr->weight > 99) || (o_ptr->tval == TV_POLEARM)) && (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE)))
-#ifdef JP
-                       act = "¤òξ¼ê¤Ç¹½¤¨¤¿";
-#else
-                       act = "You are wielding";
-#endif
-               else
 #ifdef JP
-                       act = (left_hander ? "¤òº¸¼ê¤ËÁõÈ÷¤·¤¿" : "¤ò±¦¼ê¤ËÁõÈ÷¤·¤¿");
+#define STR_WIELD_RARM "%s(%c)¤ò±¦¼ê¤ËÁõÈ÷¤·¤¿¡£"
+#define STR_WIELD_LARM "%s(%c)¤òº¸¼ê¤ËÁõÈ÷¤·¤¿¡£"
+#define STR_WIELD_ARMS "%s(%c)¤òξ¼ê¤Ç¹½¤¨¤¿¡£"
 #else
-                       act = "You are wielding";
+#define STR_WIELD_RARM "You are wielding %s (%c) in your right hand."
+#define STR_WIELD_LARM "You are wielding %s (%c) in your left hand."
+#define STR_WIELD_ARMS "You are wielding %s (%c) with both hands."
 #endif
 
-       }
-       else if (slot == INVEN_LARM)
+       /* Where is the item now */
+       switch (slot)
        {
-#ifdef JP
-               act = (left_hander ? "¤ò±¦¼ê¤ËÁõÈ÷¤·¤¿" : "¤òº¸¼ê¤ËÁõÈ÷¤·¤¿");
-#else
-               act = "You are wielding";
-#endif
+       case INVEN_RARM:
+               if ((o_ptr->tval != TV_SHIELD) && (o_ptr->tval != TV_CAPTURE) && (o_ptr->tval != TV_CARD) && (empty_hands(FALSE) & 0x00000001) && ((o_ptr->weight > 99) || (o_ptr->tval == TV_POLEARM)) && (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE)))
+                       act = STR_WIELD_ARMS;
+               else
+                       act = (left_hander ? STR_WIELD_LARM : STR_WIELD_RARM);
+               break;
 
-       }
-       else if (slot == INVEN_BOW)
-       {
+       case INVEN_LARM:
+               act = (left_hander ? STR_WIELD_RARM : STR_WIELD_LARM);
+               break;
+
+       case INVEN_BOW:
 #ifdef JP
-               act = "¤ò¼Í·âÍѤËÁõÈ÷¤·¤¿";
+               act = "%s(%c)¤ò¼Í·âÍѤËÁõÈ÷¤·¤¿¡£";
 #else
-               act = "You are shooting with";
+               act = "You are shooting with %s (%c).";
 #endif
+               break;
 
-       }
-       else if (slot == INVEN_LITE)
-       {
+       case INVEN_LITE:
 #ifdef JP
-               act = "¤ò¸÷¸»¤Ë¤·¤¿";
+               act = "%s(%c)¤ò¸÷¸»¤Ë¤·¤¿¡£";
 #else
-               act = "Your light source is";
+               act = "Your light source is %s (%c).";
 #endif
+               break;
 
-       }
-       else
-       {
+       default:
 #ifdef JP
-               act = "¤òÁõÈ÷¤·¤¿";
+               act = "%s(%c)¤òÁõÈ÷¤·¤¿¡£";
 #else
-               act = "You are wearing";
+               act = "You are wearing %s (%c).";
 #endif
-
+               break;
        }
 
        /* Describe the result */
        object_desc(o_name, o_ptr, TRUE, 3);
 
        /* Message */
-#ifdef JP
-       msg_format("%s(%c)%s¡£", o_name, index_to_label(slot), act );
-#else
-       msg_format("%s %s (%c).", act, o_name, index_to_label(slot));
-#endif
+       msg_format(act, o_name, index_to_label(slot));
 
 
        /* Cursed! */
@@ -581,7 +572,7 @@ msg_print("
                }
                else
                {
-                       p_ptr->old_race2 = 1L << (p_ptr->prace-32);
+                       p_ptr->old_race2 |= 1L << (p_ptr->prace-32);
                }
                p_ptr->prace = RACE_VAMPIRE;
 #ifdef JP
@@ -667,40 +658,43 @@ void kamaenaoshi(int item)
 #ifdef JP
                        msg_format("%s¤òξ¼ê¤Ç¹½¤¨¤¿¡£", o_name );
 #else
-                       msg_format("You are wielding %s with two-handed.", o_name );
+                       msg_format("You are wielding %s with both hands.", o_name );
 #endif
                 else
 #ifdef JP
                        msg_format("%s¤ò%s¤Ç¹½¤¨¤¿¡£", o_name, (left_hander ? "º¸¼ê" : "±¦¼ê"));
 #else
-                       msg_format("You are wielding %s with %s hand.", o_name, (left_hander ? "left":"right") );
+                       msg_format("You are wielding %s in your %s hand.", o_name, (left_hander ? "left":"right") );
 #endif
        }
-       else if ((item == INVEN_LARM) && buki_motteruka(INVEN_RARM))
+       else if (item == INVEN_LARM)
        {
-               o_ptr = &inventory[INVEN_RARM];
-               object_desc(o_name, o_ptr, TRUE, 3);
-               if (((o_ptr->weight > 99) || (o_ptr->tval == TV_POLEARM)) && (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE)))
+               if (buki_motteruka(INVEN_RARM))
+               {
+                       o_ptr = &inventory[INVEN_RARM];
+                       object_desc(o_name, o_ptr, TRUE, 3);
+                       if (((o_ptr->weight > 99) || (o_ptr->tval == TV_POLEARM)) && (!p_ptr->riding || (p_ptr->pet_extra_flags & PF_RYOUTE)))
 #ifdef JP
-                       msg_format("%s¤òξ¼ê¤Ç¹½¤¨¤¿¡£", o_name );
+                               msg_format("%s¤òξ¼ê¤Ç¹½¤¨¤¿¡£", o_name );
 #else
-                       msg_format("You are wielding %s with two-handed.", o_name );
+                               msg_format("You are wielding %s with both hands.", o_name );
 #endif
-       }
-       else if ((item == INVEN_LARM) && !(empty_hands(FALSE) & 0x0002))
-       {
-               o_ptr = &inventory[INVEN_LARM];
-               o2_ptr = &inventory[INVEN_RARM];
-               object_copy(o_ptr, o2_ptr);
-               p_ptr->total_weight += o2_ptr->weight;
-               inven_item_increase(INVEN_RARM,-1);
-               inven_item_optimize(INVEN_RARM);
-               object_desc(o_name, o_ptr, TRUE, 3);
+               }
+               else if (!(empty_hands(FALSE) & 0x0002))
+               {
+                       o_ptr = &inventory[INVEN_LARM];
+                       o2_ptr = &inventory[INVEN_RARM];
+                       object_copy(o_ptr, o2_ptr);
+                       p_ptr->total_weight += o2_ptr->weight;
+                       inven_item_increase(INVEN_RARM,-1);
+                       inven_item_optimize(INVEN_RARM);
+                       object_desc(o_name, o_ptr, TRUE, 3);
 #ifdef JP
-               msg_format("%s¤ò»ý¤ÁÂؤ¨¤¿¡£", o_name );
+                       msg_format("%s¤ò»ý¤ÁÂؤ¨¤¿¡£", o_name);
 #else
-               msg_format("You switched hand of %s.", o_name );
+                       msg_format("You switched hand of %s.", o_name);
 #endif
+               }
        }
 }
 
@@ -1185,9 +1179,9 @@ void do_cmd_observe(void)
 
        /* Describe it fully */
 #ifdef JP
-       if (!screen_object(o_ptr, TRUE)) msg_print("ÆäËÊѤï¤Ã¤¿¤È¤³¤í¤Ï¤Ê¤¤¤è¤¦¤À¡£");
+       if (!screen_object(o_ptr, SCROBJ_FORCE_DETAIL)) msg_print("ÆäËÊѤï¤Ã¤¿¤È¤³¤í¤Ï¤Ê¤¤¤è¤¦¤À¡£");
 #else
-       if (!screen_object(o_ptr, TRUE)) msg_print("You see nothing special.");
+       if (!screen_object(o_ptr, SCROBJ_FORCE_DETAIL)) msg_print("You see nothing special.");
 #endif
 
 }
index ae30002..9fa04a3 100644 (file)
@@ -461,9 +461,11 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
                case NIKKI_HIGAWARI:
                {
 #ifdef JP
-                       fprintf(fff, "%dÆüÌÜ\n",day);
+                       if (day < MAX_DAYS) fprintf(fff, "%dÆüÌÜ\n", day);
+                       else fputs("*****ÆüÌÜ\n", fff);
 #else
-                       fprintf(fff, "Day %d\n",day);
+                       if (day < MAX_DAYS) fprintf(fff, "Day %d\n", day);
+                       else fputs("Day *****\n", fff);
 #endif
                        do_level = FALSE;
                        break;
@@ -524,7 +526,7 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
 #ifdef JP
                        fprintf(fff, " %2d:%02d %20s ¥é¥ó¥À¥à¥¯¥¨¥¹¥È(%s)¤òãÀ®¤·¤¿¡£\n", hour, min, note_level, name);
 #else
-                       fprintf(fff, " %2d:%02d %20s completed randome quest '%s'\n", hour, min, note_level, name);
+                       fprintf(fff, " %2d:%02d %20s completed random quest '%s'\n", hour, min, note_level, name);
 #endif
                        break;
                }
@@ -805,6 +807,13 @@ errr do_cmd_write_nikki(int type, int num, cptr note)
                                        fprintf(fff, "%s was crushed by falling rocks.\n", note);
 #endif
                                        break;
+                               case 8:
+#ifdef JP
+                                       fprintf(fff, "%s¤¬¥Æ¥ì¥Ý¡¼¥È¡¦¥ì¥Ù¥ë¤Ë¤è¤Ã¤Æ¾Ã¤¨µî¤Ã¤¿¡£\n", note);
+#else
+                                       fprintf(fff, "%s was made disappeared by teleport level.\n", note);
+#endif
+                                       break;
                                default:
                                        fprintf(fff, "\n");
                                        break;
@@ -2970,7 +2979,7 @@ void do_cmd_macros(void)
 
                /* Describe that action */
 #ifdef JP
-               prt("(1) ¥æ¡¼¥¶¡¼ÀßÄê¥Õ¥¡¥¤¥ë¤Î¥í¡¼¥É", 4, 5);
+               prt("¥Þ¥¯¥í¹ÔÆ°¤¬(¤â¤·¤¢¤ì¤Ð)²¼¤Ëɽ¼¨¤µ¤ì¤Þ¤¹:", 20, 0);
 #else
                prt("Current action (if any) shown below:", 20, 0);
 #endif
@@ -3609,7 +3618,7 @@ void do_cmd_visuals(void)
 
                /* Prompt */
 #ifdef JP
-               prt("¥³¥Þ¥ó¥É:", 18, 0);
+               prt("¥³¥Þ¥ó¥É:", 15, 0);
 #else
                prt("Command: ", 15, 0);
 #endif
@@ -3634,7 +3643,7 @@ void do_cmd_visuals(void)
 
                        /* Prompt */
 #ifdef JP
-                       prt("¥Õ¥¡¥¤¥ë: ", 18, 0);
+                       prt("¥Õ¥¡¥¤¥ë: ", 17, 0);
 #else
                        prt("File: ", 17, 0);
 #endif
@@ -4967,7 +4976,7 @@ static cptr monster_group_text[] =
  * Symbols of monsters in each group. Note the "Uniques" group
  * is handled differently.
  */
-static cptr monster_group_char[] = 
+static cptr monster_group_char[] =
 {
        (char *) -1L,
        "a",
@@ -5021,8 +5030,8 @@ static cptr monster_group_char[] =
        "X",
        "Y",
        "Z",
-       "$!?=&`.|/\\~[]()>",
-       "#",
+       "!$&()+./=>?[\\]`{|~",
+       "#%",
        ",",
        "*",
        NULL
@@ -5138,6 +5147,7 @@ static cptr object_group_text[] =
        "¥´¥ß",
        "¶õ¤Î¥Ó¥ó",
        "¹ü",
+       "»àÂÎ",
        "Åá·õÎà",       /* "Swords" */
        "Æß´ï",         /* "Blunt Weapons" */
        "ĹÊÁÉð´ï",     /* "Polearms" */
@@ -5178,6 +5188,7 @@ static cptr object_group_text[] =
        "Junks",
        "Bottles",
        "Skeletons",
+       "Corpses",
        "Swords",
        "Blunt Weapons",
        "Polearms",
@@ -5227,6 +5238,7 @@ static byte object_group_tval[] =
        TV_JUNK,
        TV_BOTTLE,
        TV_SKELETON,
+       TV_CORPSE,
        TV_SWORD,
        TV_HAFTED,
        TV_POLEARM,
@@ -5396,79 +5408,6 @@ static int collect_artifacts(int grp_cur, int object_idx[])
 static char hack[17] = "dwsorgbuDWvyRGBU";
 
 
-static errr photo_fgets(FILE *fff, char *buf, huge n)
-{
-       huge i = 0;
-
-       char *s;
-
-       char tmp[1024];
-
-       /* Read a line */
-       if (fgets(tmp, 1024, fff))
-       {
-               /* Convert weirdness */
-               for (s = tmp; *s; s++)
-               {
-                       /* Handle newline */
-                       if (*s == '\n')
-                       {
-                               /* Terminate */
-                               buf[i] = '\0';
-
-                               /* Success */
-                               return (0);
-                       }
-
-                       /* Handle tabs */
-                       else if (*s == '\t')
-                       {
-                               /* Hack -- require room */
-                               if (i + 8 >= n) break;
-
-                               /* Append a space */
-                               buf[i++] = ' ';
-
-                               /* Append some more spaces */
-                               while (!(i % 8)) buf[i++] = ' ';
-                       }
-
-#ifdef JP
-                       else if (iskanji(*s))
-                       {
-                               if (!s[1]) break;
-                               buf[i++] = *s++;
-                               buf[i++] = *s;
-                       }
-# ifndef EUC
-       /* È¾³Ñ¤«¤Ê¤ËÂбþ */
-                       else if ((((int)*s & 0xff) > 0xa1) && (((int)*s & 0xff ) < 0xdf))
-                       {
-                               buf[i++] = *s;
-                               if (i >= n) break;
-                       }
-# endif
-#endif
-                       /* Handle printables */
-                       else
-                       {
-                               /* Copy */
-                               buf[i++] = *s;
-
-                               /* Check length */
-                               if (i >= n) break;
-                       }
-               }
-       }
-
-       /* Nothing */
-       buf[0] = '\0';
-
-       /* Failure */
-       return (1);
-}
-
-
 /*
  * Hack -- load a screen dump from a file
  */
@@ -5515,32 +5454,46 @@ void do_cmd_load_screen(void)
 
 
        /* Load the screen */
-       for (y = 0; okay && (y < hgt); y++)
+       for (y = 0; okay; y++)
        {
-               /* Get a line of data */
-               if (photo_fgets(fff, buf, 1024)) okay = FALSE;
+               /* Get a line of data including control code */
+               if (!fgets(buf, 1024, fff)) okay = FALSE;
+
+               /* Get the blank line */
+               if (buf[0] == '\n' || buf[0] == '\0') break;
+
+               /* Ignore too large screen image */
+               if (y >= hgt) continue;
 
                /* Show each row */
                for (x = 0; x < wid - 1; x++)
                {
+                       /* End of line */
+                       if (buf[x] == '\n' || buf[x] == '\0') break;
+
                        /* Put the attr/char */
                        Term_draw(x, y, TERM_WHITE, buf[x]);
                }
        }
 
-       /* Get the blank line */
-       if (my_fgets(fff, buf, sizeof(buf))) okay = FALSE;
-
-
        /* Dump the screen */
-       for (y = 0; okay && (y < hgt); y++)
+       for (y = 0; okay; y++)
        {
-               /* Get a line of data */
-               if (photo_fgets(fff, buf, 1024)) okay = FALSE;
+               /* Get a line of data including control code */
+               if (!fgets(buf, 1024, fff)) okay = FALSE;
+
+               /* Get the blank line */
+               if (buf[0] == '\n' || buf[0] == '\0') break;
+
+               /* Ignore too large screen image */
+               if (y >= hgt) continue;
 
                /* Dump each row */
                for (x = 0; x < wid - 1; x++)
                {
+                       /* End of line */
+                       if (buf[x] == '\n' || buf[x] == '\0') break;
+
                        /* Get the attr/char */
                        (void)(Term_what(x, y, &a, &c));
 
@@ -5557,10 +5510,6 @@ void do_cmd_load_screen(void)
        }
 
 
-       /* Get the blank line */
-       if (my_fgets(fff, buf, sizeof(buf))) okay = FALSE;
-
-
        /* Close it */
        my_fclose(fff);
 
@@ -7031,7 +6980,7 @@ static void do_cmd_knowledge_pets(void)
 
        fprintf(fff, "----------------------------------------------\n");
 #ifdef JP
-       fprintf(fff, "    ¹ç·×: %d ɤ¤Î¥Ú¥Ã¥È\n", t_friends);
+       fprintf(fff, "    ¹ç·×: %d ÂΤΥڥåÈ\n", t_friends);
        fprintf(fff, " °Ý»ý¥³¥¹¥È: %d%% MP\n", show_upkeep);
 #else
        fprintf(fff, "   Total: %d pet%s.\n",
@@ -7125,21 +7074,12 @@ static void do_cmd_knowledge_kill_count(void)
 #else
                        fprintf(fff,"You have defeated no enemies yet.\n\n");
 #endif
-
-               else if (Total == 1)
-#ifdef JP
-                       fprintf(fff,"¤¢¤Ê¤¿¤Ï°ìɤ¤ÎŨ¤òÅݤ·¤Æ¤¤¤ë¡£\n\n");
-#else
-                       fprintf(fff,"You have defeated one enemy.\n\n");
-#endif
-
                else
 #ifdef JP
-                       fprintf(fff,"¤¢¤Ê¤¿¤Ï %lu ɤ¤ÎŨ¤òÅݤ·¤Æ¤¤¤ë¡£\n\n", Total);
+                       fprintf(fff,"¤¢¤Ê¤¿¤Ï%ldÂΤÎŨ¤òÅݤ·¤Æ¤¤¤ë¡£\n\n", Total);
 #else
-                       fprintf(fff,"You have defeated %lu enemies.\n\n", Total);
+                       fprintf(fff,"You have defeated %ld %s.\n\n", Total, (Total == 1) ? "enemy" : "enemies");
 #endif
-
        }
 
        Total = 0;
@@ -7184,11 +7124,11 @@ static void do_cmd_knowledge_kill_count(void)
                        if (This > 0)
                        {
 #ifdef JP
-                               /* p,t¤Ï¿Í¤È¿ô¤¨¤ë by ita*/
-                               if(strchr("pt",r_ptr->d_char))
+                               /* p,t¤Ï¿Í¤È¿ô¤¨¤ë by ita */
+                               if (strchr("pt", r_ptr->d_char))
                                        fprintf(fff, "     %3d ¿Í¤Î %s\n", This, r_name + r_ptr->name);
                                else
-                                       fprintf(fff, "     %3d ɤ¤Î %s\n", This, r_name + r_ptr->name);
+                                       fprintf(fff, "     %3d ÂΤΠ%s\n", This, r_name + r_ptr->name);
 #else
                                if (This < 2)
                                {
@@ -7218,7 +7158,7 @@ static void do_cmd_knowledge_kill_count(void)
 
        fprintf(fff,"----------------------------------------------\n");
 #ifdef JP
-       fprintf(fff,"    ¹ç·×: %lu ɤ¤òÅݤ·¤¿¡£\n", Total);
+       fprintf(fff,"    ¹ç·×: %lu ÂΤòÅݤ·¤¿¡£\n", Total);
 #else
        fprintf(fff,"   Total: %lu creature%s killed.\n",
                Total, (Total == 1 ? "" : "s"));
@@ -7526,7 +7466,7 @@ static bool visual_mode_command(char ch, bool *visual_list_ptr,
 
        case 'P':
        case 'p':
-               if (attr_idx)
+               if (attr_idx || (!(char_idx & 0x80) && char_idx)) /* Allow TERM_DARK text */
                {
                        /* Set the char */
                        *cur_attr_ptr = attr_idx;
@@ -7621,13 +7561,16 @@ static void display_monster_list(int col, int row, int per_page, s16b mon_idx[],
                }
                else if (p_ptr->wizard) 
                {
-                       c_prt(attr, format("%d", r_idx), row + i, 60);
+                       c_prt(attr, format("%d", r_idx), row + i, 62);
                }
 
                a = r_ptr->x_attr;
                c = r_ptr->x_char;
                if (use_bigtile) bigtile_attr(&c, &a, &c2, &a2);
 
+               /* Erase chars before overwritten by the race letter */
+               Term_erase(69, row + i, 255);
+
                /* Display symbol */
                Term_putch(70, row + i, a, c);
 
@@ -7637,9 +7580,9 @@ static void display_monster_list(int col, int row, int per_page, s16b mon_idx[],
                /* Display kills */
                if (!(r_ptr->flags1 & RF1_UNIQUE)) put_str(format("%5d", r_ptr->r_pkills), row + i, 73);
 #ifdef JP
-               else c_put_str((r_ptr->max_num == 0 ? TERM_L_DARK : TERM_WHITE), (r_ptr->max_num == 0 ? "»àË´" : "À¸Â¸"), row + i, 73);
+               else c_put_str((r_ptr->max_num == 0 ? TERM_L_DARK : TERM_WHITE), (r_ptr->max_num == 0 ? "»àË´" : "À¸Â¸"), row + i, 74);
 #else
-               else c_put_str((r_ptr->max_num == 0 ? TERM_L_DARK : TERM_WHITE), (r_ptr->max_num == 0 ? "dead" : "alive"), row + i, 73);
+               else c_put_str((r_ptr->max_num == 0 ? TERM_L_DARK : TERM_WHITE), (r_ptr->max_num == 0 ? " dead" : "alive"), row + i, 73);
 #endif
        
        }
@@ -7726,14 +7669,14 @@ static void do_cmd_knowledge_monsters(void)
                        prt("Ãμ± - ¥â¥ó¥¹¥¿¡¼", 2, 0);
                        prt("¥°¥ë¡¼¥×", 4, 0);
                        prt("̾Á°", 4, max + 3);
-                       if (p_ptr->wizard) prt("Idx", 4, 60);
+                       if (p_ptr->wizard) prt("Idx", 4, 62);
                        prt("ʸ»ú »¦³²¿ô", 4, 67);
 #else
                        prt("Knowledge - Monsters", 2, 0);
                        prt("Group", 4, 0);
                        prt("Name", 4, max + 3);
-                       if (p_ptr->wizard) prt("Idx", 4, 60);
-                       prt("Sym   Kills", 4, 67);
+                       if (p_ptr->wizard) prt("Idx", 4, 62);
+                       prt("Sym  Kills", 4, 68);
 #endif
 
                        for (i = 0; i < 78; i++)
@@ -7956,7 +7899,7 @@ static void desc_obj_fake(int k_idx)
        /* Hack -- Handle stuff */
        handle_stuff();
 
-       if (!screen_object(o_ptr, FALSE))
+       if (!screen_object(o_ptr, SCROBJ_FAKE_OBJECT | SCROBJ_FORCE_DETAIL))
        {
 #ifdef JP
                msg_print("ÆäËÊѤï¤Ã¤¿¤È¤³¤í¤Ï¤Ê¤¤¤è¤¦¤À¡£");
@@ -8045,7 +7988,7 @@ static void do_cmd_knowledge_objects(void)
                        prt("¥°¥ë¡¼¥×", 4, 0);
                        prt("̾Á°", 4, max + 3);
                        if (p_ptr->wizard) prt("Idx", 4, 70);
-                       prt("ʸ»ú", 4, 75);
+                       prt("ʸ»ú", 4, 74);
 #else
                        prt("Knowledge - objects", 2, 0);
                        prt("Group", 4, 0);
@@ -8112,7 +8055,7 @@ static void do_cmd_knowledge_objects(void)
 
                /* Prompt */
 #ifdef JP
-               prt(format("<Êý¸þ>, 'r'¤Ç»×¤¤½Ð¤ò¸«¤ë%s%s, ESC", k_ptr->flavor ? "" : visual_list ? ", ENTER¤Ç·èÄê" : ", 'v'¤Ç¥·¥ó¥Ü¥ëÊѹ¹", (attr_idx||char_idx) ? ", 'c', 'p'¤Ç¥Ú¡¼¥¹¥È" : ", 'c'¤Ç¥³¥Ô¡¼"), hgt - 1, 0);
+               prt(format("<Êý¸þ>, 'r'¤Ç¾ÜºÙ¤ò¸«¤ë%s%s, ESC", k_ptr->flavor ? "" : visual_list ? ", ENTER¤Ç·èÄê" : ", 'v'¤Ç¥·¥ó¥Ü¥ëÊѹ¹", (attr_idx||char_idx) ? ", 'c', 'p'¤Ç¥Ú¡¼¥¹¥È" : ", 'c'¤Ç¥³¥Ô¡¼"), hgt - 1, 0);
 #else
                prt(format("<dir>, 'r' to recall%s%s, ESC", k_ptr->flavor ? "" : visual_list ? ", ENTER to accept" : ", 'v' for visuals", (attr_idx||char_idx) ? ", 'c', 'p' to paste" : ", 'c' to copy"), hgt - 1, 0);
 #endif
@@ -8302,11 +8245,18 @@ static void do_cmd_knowledge_features(void)
                if (redraw)
                {
                        clear_from(0);
-               
+
+#ifdef JP
+                       prt("ɽ¼¨ - ÃÏ·Á", 2, 0);
+                       prt("¥°¥ë¡¼¥×", 4, 0);
+                       prt("̾Á°", 4, max + 3);
+                       prt("ʸ»ú", 4, 66);
+#else
                        prt("Visuals - features", 2, 0);
                        prt("Group", 4, 0);
                        prt("Name", 4, max + 3);
                        prt("Sym", 4, 67);
+#endif
 
                        for (i = 0; i < 78; i++)
                        {
@@ -9537,6 +9487,7 @@ void do_cmd_time(void)
        char desc[1024];
 
        char buf[1024];
+       char day_buf[10];
 
        FILE *fff;
 
@@ -9556,14 +9507,17 @@ void do_cmd_time(void)
 #endif
 
 
+       if (day < MAX_DAYS) sprintf(day_buf, "%d", day);
+       else strcpy(day_buf, "*****");
+
        /* Message */
 #ifdef JP
-       msg_format("%d ÆüÌÜ,»þ¹ï¤Ï%d:%02d %s¤Ç¤¹¡£",
-                  day, (hour % 12 == 0) ? 12 : (hour % 12),
+       msg_format("%sÆüÌÜ, »þ¹ï¤Ï%d:%02d %s¤Ç¤¹¡£",
+                  day_buf, (hour % 12 == 0) ? 12 : (hour % 12),
                   min, (hour < 12) ? "AM" : "PM");
 #else
-       msg_format("This is day %d. The time is %d:%02d %s.",
-                  day, (hour % 12 == 0) ? 12 : (hour % 12),
+       msg_format("This is day %s. The time is %d:%02d %s.",
+                  day_buf, (hour % 12 == 0) ? 12 : (hour % 12),
                   min, (hour < 12) ? "AM" : "PM");
 #endif
 
index cab8e49..3d2dfd8 100644 (file)
@@ -29,7 +29,7 @@ cptr spell_category_name(int tval)
                return "¼öʸ";
 #else
        case TV_HISSATSU_BOOK:
-               return "arts";
+               return "art";
        case TV_LIFE_BOOK:
                return "prayer";
        case TV_MUSIC_BOOK:
@@ -51,7 +51,7 @@ cptr spell_category_name(int tval)
  * The "known" should be TRUE for cast/pray, FALSE for study
  */
 
-bool select_the_force=FALSE;
+bool select_the_force = FALSE;
 
 static int get_spell(int *sn, cptr prompt, int sval, bool learned, int use_realm)
 {
@@ -369,6 +369,79 @@ static bool item_tester_learn_spell(object_type *o_ptr)
 }
 
 
+static bool player_has_no_spellbooks(void)
+{
+       int         i;
+       object_type *o_ptr;
+
+       for (i = 0; i < INVEN_PACK; i++)
+       {
+               o_ptr = &inventory[i];
+               if (o_ptr->k_idx && check_book_realm(o_ptr->tval, o_ptr->sval)) return FALSE;
+       }
+
+       for (i = cave[py][px].o_idx; i; i = o_ptr->next_o_idx)
+       {
+               o_ptr = &o_list[i];
+               if (o_ptr->k_idx && check_book_realm(o_ptr->tval, o_ptr->sval)) return FALSE;
+       }
+
+       return TRUE;
+}
+
+
+static void confirm_use_force(bool browse_only)
+{
+       int  item;
+       char which;
+
+#ifdef ALLOW_REPEAT
+
+       /* Get the item index */
+       if (repeat_pull(&item) && (item == INVEN_FORCE))
+       {
+               browse_only ? do_cmd_mind_browse() : do_cmd_mind();
+               return;
+       }
+
+#endif /* ALLOW_REPEAT */
+
+       /* Show the prompt */
+#ifdef JP
+       prt("('w'Îýµ¤½Ñ, ESC) 'w'¤«ESC¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤¡£ ", 0, 0);
+#else
+       prt("(w for the Force, ESC) Hit 'w' or ESC. ", 0, 0);
+#endif
+
+       while (1)
+       {
+               /* Get a key */
+               which = inkey();
+
+               if (which == ESCAPE) break;
+               else if (which == 'w')
+               {
+
+#ifdef ALLOW_REPEAT
+
+                       repeat_push(INVEN_FORCE);
+
+#endif /* ALLOW_REPEAT */
+
+                       break;
+               }
+       }
+
+       /* Clear the prompt line */
+       prt("", 0, 0);
+
+       if (which == 'w')
+       {
+               browse_only ? do_cmd_mind_browse() : do_cmd_mind();
+       }
+}
+
+
 /*
  * Peruse the spells/prayers in a book
  *
@@ -394,7 +467,7 @@ void do_cmd_browse(void)
        if (!(p_ptr->realm1 || p_ptr->realm2) && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE))
        {
 #ifdef JP
-msg_print("ËܤòÆɤळ¤È¤¬¤Ç¤­¤Ê¤¤¡ª");
+               msg_print("ËܤòÆɤळ¤È¤¬¤Ç¤­¤Ê¤¤¡ª");
 #else
                msg_print("You cannot read books!");
 #endif
@@ -407,37 +480,48 @@ msg_print("
                set_action(ACTION_NONE);
        }
 
+       if (p_ptr->pclass == CLASS_FORCETRAINER)
+       {
+               if (player_has_no_spellbooks())
+               {
+                       confirm_use_force(TRUE);
+                       return;
+               }
+               select_the_force = TRUE;
+       }
+
        /* Restrict choices to "useful" books */
        if (p_ptr->realm2 == REALM_NONE) item_tester_tval = mp_ptr->spell_book;
        else item_tester_hook = item_tester_learn_spell;
 
        /* Get an item */
 #ifdef JP
-q = "¤É¤ÎËܤòÆɤߤޤ¹¤«? ";
+       q = "¤É¤ÎËܤòÆɤߤޤ¹¤«? ";
 #else
        q = "Browse which book? ";
 #endif
 
 #ifdef JP
-s = "Æɤá¤ëËܤ¬¤Ê¤¤¡£";
+       s = "Æɤá¤ëËܤ¬¤Ê¤¤¡£";
 #else
        s = "You have no books that you can read.";
 #endif
 
-       if (p_ptr->pclass == CLASS_FORCETRAINER)
-               select_the_force = TRUE;
-       if (!get_item(&item, q, s, (USE_INVEN | USE_FLOOR))){
-           select_the_force = FALSE;
-           return;
+       if (!get_item(&item, q, s, (USE_INVEN | USE_FLOOR)))
+       {
+               select_the_force = FALSE;
+               return;
        }
        select_the_force = FALSE;
 
-       if (item == INVEN_FORCE) { /* the_force */
-           do_cmd_mind_browse();
-           return;
-       } else
+       if (item == INVEN_FORCE) /* the_force */
+       {
+               do_cmd_mind_browse();
+               return;
+       }
+
        /* Get the item (in the pack) */
-       if (item >= 0)
+       else if (item >= 0)
        {
                o_ptr = &inventory[item];
        }
@@ -4676,7 +4760,7 @@ void do_cmd_cast(void)
        if (!p_ptr->realm1 && (p_ptr->pclass != CLASS_SORCERER) && (p_ptr->pclass != CLASS_RED_MAGE))
        {
 #ifdef JP
-msg_print("¼öʸ¤ò¾§¤¨¤é¤ì¤Ê¤¤¡ª");
+               msg_print("¼öʸ¤ò¾§¤¨¤é¤ì¤Ê¤¤¡ª");
 #else
                msg_print("You cannot cast spells!");
 #endif
@@ -4687,15 +4771,16 @@ msg_print("
        /* Require lite */
        if (p_ptr->blind || no_lite())
        {
+               if (p_ptr->pclass == CLASS_FORCETRAINER) confirm_use_force(FALSE);
+               else
+               {
 #ifdef JP
-msg_print("Ìܤ¬¸«¤¨¤Ê¤¤¡ª");
+                       msg_print("Ìܤ¬¸«¤¨¤Ê¤¤¡ª");
 #else
-               msg_print("You cannot see!");
+                       msg_print("You cannot see!");
 #endif
-               if (p_ptr->pclass == CLASS_FORCETRAINER)
-                   do_cmd_mind();
-               else
                        flush();
+               }
                return;
        }
 
@@ -4703,7 +4788,7 @@ msg_print("
        if (p_ptr->confused)
        {
 #ifdef JP
-msg_print("º®Í𤷤Ƥ¤¤Æ¾§¤¨¤é¤ì¤Ê¤¤¡ª");
+               msg_print("º®Í𤷤Ƥ¤¤Æ¾§¤¨¤é¤ì¤Ê¤¤¡ª");
 #else
                msg_print("You are too confused!");
 #endif
@@ -4711,6 +4796,16 @@ msg_print("
                return;
        }
 
+       if (p_ptr->pclass == CLASS_FORCETRAINER)
+       {
+               if (player_has_no_spellbooks())
+               {
+                       confirm_use_force(FALSE);
+                       return;
+               }
+               select_the_force = TRUE;
+       }
+
        prayer = spell_category_name(mp_ptr->spell_book);
 
        /* Restrict choices to spell books */
@@ -4718,31 +4813,32 @@ msg_print("
 
        /* Get an item */
 #ifdef JP
-q = "¤É¤Î¼öʸ½ñ¤ò»È¤¤¤Þ¤¹¤«? ";
+       q = "¤É¤Î¼öʸ½ñ¤ò»È¤¤¤Þ¤¹¤«? ";
 #else
        q = "Use which book? ";
 #endif
 
 #ifdef JP
-s = "¼öʸ½ñ¤¬¤Ê¤¤¡ª";
+       s = "¼öʸ½ñ¤¬¤Ê¤¤¡ª";
 #else
        s = "You have no spell books!";
 #endif
 
-       if (p_ptr->pclass == CLASS_FORCETRAINER)
-               select_the_force = TRUE;
-       if (!get_item(&item, q, s, (USE_INVEN | USE_FLOOR))){
-           select_the_force = FALSE;
-           return;
+       if (!get_item(&item, q, s, (USE_INVEN | USE_FLOOR)))
+       {
+               select_the_force = FALSE;
+               return;
        }
        select_the_force = FALSE;
 
-       if (item == INVEN_FORCE) { /* the_force */
-           do_cmd_mind();
-           return;
-       } else
+       if (item == INVEN_FORCE) /* the_force */
+       {
+               do_cmd_mind();
+               return;
+       }
+
        /* Get the item (in the pack) */
-       if (item >= 0)
+       else if (item >= 0)
        {
                o_ptr = &inventory[item];
        }
@@ -5326,9 +5422,9 @@ void do_cmd_pet_dismiss(void)
                        handle_stuff();
 
 #ifdef JP
-                       sprintf(buf, "%s¤òÊü¤·¤Þ¤¹¤«¡© [Yes/No/Unnamed (%dɤ)]", friend_name, max_pet-i);
+                       sprintf(buf, "%s¤òÊü¤·¤Þ¤¹¤«¡© [Yes/No/Unnamed (%dÂÎ)]", friend_name, max_pet - i);
 #else
-                       sprintf(buf, "Dismiss %s? [Yes/No/Unnamed (%d remain)]", friend_name, max_pet-i);
+                       sprintf(buf, "Dismiss %s? [Yes/No/Unnamed (%d remain)]", friend_name, max_pet - i);
 #endif
                        prt(buf, 0, 0);
 
@@ -5391,7 +5487,7 @@ void do_cmd_pet_dismiss(void)
 
                                /* Update the monsters */
                                p_ptr->update |= (PU_BONUS | PU_MONSTERS);
-                               p_ptr->redraw |= (PR_EXTRA);
+                               p_ptr->redraw |= (PR_EXTRA | PR_UHEALTH);
                        }
 
                        /* HACK : Add the line to message buffer */
@@ -5416,7 +5512,7 @@ void do_cmd_pet_dismiss(void)
        C_KILL(who, max_m_idx, u16b);
 
 #ifdef JP
-       msg_format("%d ɤ¤Î¥Ú¥Ã¥È¤òÊü¤·¤Þ¤·¤¿¡£", Dismissed);
+       msg_format("%d ÂΤΥڥåȤòÊü¤·¤Þ¤·¤¿¡£", Dismissed);
 #else
        msg_format("You have dismissed %d pet%s.", Dismissed,
                   (Dismissed == 1 ? "" : "s"));
@@ -5584,6 +5680,8 @@ bool do_riding(bool force)
        x = px + ddx[dir];
        c_ptr = &cave[y][x];
 
+       if (p_ptr->special_defense & KATA_MUSOU) set_action(ACTION_NONE);
+
        if (p_ptr->riding)
        {
                /* Skip non-empty grids */
@@ -5596,6 +5694,9 @@ msg_print("
 #endif
                        return FALSE;
                }
+
+               if (!pattern_seq(py, px, y, x)) return FALSE;
+
                p_ptr->riding = 0;
                p_ptr->pet_extra_flags &= ~(PF_RYOUTE);
                p_ptr->riding_ryoute = p_ptr->old_riding_ryoute = FALSE;
@@ -5611,19 +5712,20 @@ msg_print("
 #endif
                        return FALSE;
                }
-               if (!(c_ptr->m_idx))
+
+               m_ptr = &m_list[c_ptr->m_idx];
+
+               if (!c_ptr->m_idx || !m_ptr->ml)
                {
 #ifdef JP
-msg_print("¤½¤Î¾ì½ê¤Ë¤Ï¥â¥ó¥¹¥¿¡¼¤Ï¤¤¤Þ¤»¤ó¡£");
+                       msg_print("¤½¤Î¾ì½ê¤Ë¤Ï¥â¥ó¥¹¥¿¡¼¤Ï¤¤¤Þ¤»¤ó¡£");
 #else
-                       msg_print("Here is no pet.");
+                       msg_print("Here is no monster.");
 #endif
 
                        return FALSE;
                }
 
-               m_ptr = &m_list[c_ptr->m_idx];
-
                if (!is_pet(m_ptr) && !force)
                {
 #ifdef JP
@@ -5654,26 +5756,7 @@ msg_print("
 
                        return FALSE;
                }
-               if ((cave[py][px].feat >= FEAT_PATTERN_START) && (cave[py][px].feat <= FEAT_PATTERN_XTRA2) && ((cave[y][x].feat < FEAT_PATTERN_START) || (cave[y][x].feat > FEAT_PATTERN_XTRA2)))
-               {
-#ifdef JP
-msg_print("¥Ñ¥¿¡¼¥ó¤Î¾å¤«¤é¤Ï¾è¤ì¤Þ¤»¤ó¡£");
-#else
-                       msg_print("You cannot ride from on Pattern.");
-#endif
-
-                       return FALSE;
-               }
-               if (!m_ptr->ml)
-               {
-#ifdef JP
-msg_print("¤½¤Î¾ì½ê¤Ë¤Ï¥â¥ó¥¹¥¿¡¼¤Ï¤¤¤Þ¤»¤ó¡£");
-#else
-                       msg_print("Here is no monster.");
-#endif
-
-                       return FALSE;
-               }
+               if (!pattern_seq(py, px, y, x)) return FALSE;
                if (r_info[m_ptr->r_idx].level > randint1((p_ptr->skill_exp[GINOU_RIDING] / 50 + p_ptr->lev / 2 + 20)))
                {
 #ifdef JP
@@ -5880,7 +5963,7 @@ void do_cmd_pet(void)
        sprintf(target_buf,"¥Ú¥Ã¥È¤Î¥¿¡¼¥²¥Ã¥È¤ò»ØÄê (¸½ºß¡§%s)",
                (pet_t_m_idx ? r_name + r_info[m_list[pet_t_m_idx].r_idx].name : "»ØÄê¤Ê¤·"));
 #else
-       sprintf(target_buf,"specify a targert of pet (now:%s)",
+       sprintf(target_buf,"specify a target of pet (now:%s)",
                (pet_t_m_idx ? r_name + r_info[m_list[pet_t_m_idx].r_idx].name : "nothing"));
 #endif
        power_desc[num] = target_buf;
@@ -6073,7 +6156,7 @@ power_desc[num] = "Υ
        powers[num++] = PET_RIDING;
 
 #ifdef JP
-       power_desc[num] = "¥Ú¥Ã¥È¤Ë̾Á°¤ò¤Ä¤±¤ë¡£";
+       power_desc[num] = "¥Ú¥Ã¥È¤Ë̾Á°¤ò¤Ä¤±¤ë";
 #else
        power_desc[num] = "name pets";
 #endif
index cca50aa..62e3a0d 100644 (file)
@@ -5282,7 +5282,11 @@ msg_print("
 
                        case ART_BOROMIR:
                        {
+#ifdef JP
+                               msg_print("¤¢¤Ê¤¿¤ÏÎ϶¯¤¤ÆÍÉ÷¤ò¿á¤­ÌĤ餷¤¿¡£¼þ°Ï¤ÎŨ¤¬¿Ì¤¨¾å¤Ã¤Æ¤¤¤ë!");
+#else
                                msg_print("You wind a mighty blast; your enemies tremble!");
+#endif
                                (void)turn_monsters((3 * p_ptr->lev / 2) + 10);
                                o_ptr->timeout = randint0(40) + 40;
                                break;
@@ -5434,7 +5438,7 @@ msg_print("
 #ifdef JP
                                msg_print("¥à¥Á¤ò¿­¤Ð¤·¤¿¡£");
 #else
-                               msg_print("You stretched your wip.");
+                               msg_print("You stretched your whip.");
 #endif
 
                                fetch(dir, 500, TRUE);
@@ -6167,7 +6171,7 @@ msg_print("
                                break;
                        case EGO_RING_ACID_BOLT:
                                if (!get_aim_dir(&dir)) return;
-                               fire_bolt(GF_FIRE, dir, damroll(5, 8));
+                               fire_bolt(GF_ACID, dir, damroll(5, 8));
                                o_ptr->timeout = randint0(6) + 6;
                                break;
                        case EGO_RING_MANA_BOLT:
@@ -6836,7 +6840,7 @@ static int select_magic_eater(bool only_browse)
                        prt(format(" %s staff", (menu_line == 1) ? "> " : "  "), 2, 14);
                        prt(format(" %s wand", (menu_line == 2) ? "> " : "  "), 3, 14);
                        prt(format(" %s rod", (menu_line == 3) ? "> " : "  "), 4, 14);
-                       prt("Which type of magic do you usu?", 0, 0);
+                       prt("Which type of magic do you use?", 0, 0);
 #endif
                        choice = inkey();
                        switch(choice)
@@ -6999,11 +7003,7 @@ static int select_magic_eater(bool only_browse)
                                {
                                        chance -= 3 * (p_ptr->lev - level);
                                }
-                               chance += p_ptr->to_m_chance;
-                               if (p_ptr->heavy_spell) chance += 20;
-                               if(p_ptr->dec_mana && p_ptr->easy_spell) chance-=4;
-                               else if (p_ptr->easy_spell) chance-=3;
-                               else if (p_ptr->dec_mana) chance-=2;
+                               chance = mod_spell_chance_1(chance);
                                chance = MAX(chance, adj_mag_fail[p_ptr->stat_ind[mp_ptr->spell_stat]]);
                                /* Stunning makes spells harder */
                                if (p_ptr->stun > 50) chance += 25;
@@ -7011,8 +7011,7 @@ static int select_magic_eater(bool only_browse)
 
                                if (chance > 95) chance = 95;
 
-                               if(p_ptr->dec_mana) chance--;
-                               if (p_ptr->heavy_spell) chance += 5;
+                               chance = mod_spell_chance_2(chance);
 
                                col = TERM_WHITE;
 
@@ -7303,11 +7302,7 @@ msg_print("
        {
                chance -= 3 * (p_ptr->lev - level);
        }
-       chance += p_ptr->to_m_chance;
-       if (p_ptr->heavy_spell) chance += 20;
-       if(p_ptr->dec_mana && p_ptr->easy_spell) chance-=4;
-       else if (p_ptr->easy_spell) chance-=3;
-       else if (p_ptr->dec_mana) chance-=2;
+       chance = mod_spell_chance_1(chance);
        chance = MAX(chance, adj_mag_fail[p_ptr->stat_ind[mp_ptr->spell_stat]]);
        /* Stunning makes spells harder */
        if (p_ptr->stun > 50) chance += 25;
@@ -7315,8 +7310,7 @@ msg_print("
 
        if (chance > 95) chance = 95;
 
-       if(p_ptr->dec_mana) chance--;
-       if (p_ptr->heavy_spell) chance += 5;
+       chance = mod_spell_chance_2(chance);
 
        if (randint0(100) < chance)
        {
index e194025..7e46bc1 100644 (file)
  */
 #define VERSION_NAME "Hengband"
 
-/* Savefile version for Hengband 1.1.1 and later */
-#define H_VER_MAJOR 1
-#define H_VER_MINOR 5
-#define H_VER_PATCH 4
-#define H_VER_EXTRA 0
 
-/* Added for ZAngband */
+/*
+ * "Program Version Number" of the game
+ *
+ * FAKE_VER_MAJOR=1,2 were reserved for ZAngband version 1.x.x/2.x.x .
+ *
+ * Program Version of Hengband version is
+ *   "(FAKE_VER_MAJOR-10).(FAKE_VER_MINOR).(FAKE_VER_PATCH)".
+ */
 #define FAKE_VERSION   0
 #define FAKE_VER_MAJOR 11
-#define FAKE_VER_MINOR 5
-#define FAKE_VER_PATCH 4
+#define FAKE_VER_MINOR 6
+#define FAKE_VER_PATCH 2
+
+
+/*
+ * "Savefile Version Number" for Hengband 1.1.1 and later
+ *
+ * First three digits may be same as the Program Version.  But not
+ * always same.  It means that newer version may preserves lower
+ * compatibility with the older version.
+ *
+ * For example, newer Hengband 1.4.4 creates savefiles marked with
+ * Savefile Version 1.4.0.0 .  It means that Hengband 1.4.0 can load a
+ * savefile of Hengband 1.4.4 (lower compatibility!).
+ *
+ * Upper compatibility is always guaranteed.
+ */
+#define H_VER_MAJOR 1
+#define H_VER_MINOR 6
+#define H_VER_PATCH 0
+#define H_VER_EXTRA 0
+
 
 #define ANGBAND_2_8_1
 #define ZANGBAND
  */
 #define TOWN_DAWN         10000    /* Number of ticks from dawn to dawn XXX */
 #define TURNS_PER_TICK    10L      /* Number of energy-gain-turns per ticks */
+#define MAX_DAYS          20000    /* Maximum days */
 #define BREAK_GLYPH       550      /* Rune of protection resistance */
 #define BREAK_MINOR_GLYPH 299      /* For explosive runes */
 #define BTH_PLUS_ADJ       3       /* Adjust BTH per plus-to-hit */
 #define FEAT_MIRROR             0xc3
 
 /* unknown grid (not detected)  */
-#define FEAT_UNDETECT         0xc4
+#define FEAT_UNDETECTED         0xc4
 
 /* special traps */
 #define FEAT_TRAP_ARMAGEDDON    0xc5
 #define TV_STAFF        55
 #define TV_WAND         65
 #define TV_ROD          66
-#define TV_PARCHEMENT   69
+#define TV_PARCHMENT    69
 #define TV_SCROLL       70
 #define TV_POTION       75
 #define TV_FLASK        77
  *   ITEM: Affect each object in the "blast area" in some way
  *   KILL: Affect each monster in the "blast area" in some way
  *   HIDE: Hack -- disable "visual" feedback from projection
+ *   DISI: Disintegrate non-permanent features
+ *   PLAYER: Main target is player (used for riding player)
+ *   AIMED: Target is only player or monster, so don't affect another.
+ *          Depend on PROJECT_PLAYER.
+ *          (used for minimum (rad == 0) balls on riding player)
+ *   REFLECTABLE: Refrectable spell attacks (used for "bolts")
+ *   NO_HANGEKI: Avoid counter attacks of monsters
+ *   PATH: Only used for printing project path
+ *   FAST: Hide "visual" of flying bolts until blast
  */
 #define PROJECT_JUMP        0x01
 #define PROJECT_BEAM        0x02
 #define PROJECT_HIDE        0x80
 #define PROJECT_DISI        0x100
 #define PROJECT_PLAYER      0x200
-#define PROJECT_MONSTER     0x400
+#define PROJECT_AIMED       0x400
 #define PROJECT_REFLECTABLE 0x800
 #define PROJECT_NO_HANGEKI  0x1000
 #define PROJECT_PATH        0x2000
 #define PROJECT_FAST        0x4000
 
+
+/*
+ * Special caster ID for project()
+ */
+#define PROJECT_WHO_UNCTRL_POWER -1
+
+
 /*
  * Bit flags for the "enchant()" function
  */
 #define PR_STATE        0x00100000L     /* Display Extra (State) */
 #define PR_SPEED        0x00200000L     /* Display Extra (Speed) */
 #define PR_STUDY        0x00400000L     /* Display Extra (Study) */
-#define PR_MANE         0x00800000L     /* Display Extra (Mane) */
+#define PR_IMITATION    0x00800000L     /* Display Extra (Imitation) */
 #define PR_EXTRA        0x01000000L     /* Display Extra Info */
 #define PR_BASIC        0x02000000L     /* Display Basic Info */
 #define PR_MAP          0x04000000L     /* Display Map */
 #define PM_ALLOW_UNIQUE   0x00000040
 #define PM_IGNORE_TERRAIN 0x00000080
 #define PM_HASTE          0x00000100
+#define PM_MULTIPLY       0x00000400
 
 
 /* Bit flags for monster_desc() */
@@ -4455,7 +4495,7 @@ extern int PlayerUID;
 #define BACT_GREET_KING              4
 #define BACT_KING_LEGENDS            5
 #define BACT_QUEST                   6
-#define BACT_GOLD                    7
+#define BACT_XXX_UNUSED              7
 #define BACT_POSTER                  8
 #define BACT_ARENA_RULES             9
 #define BACT_ARENA                  10
@@ -5301,3 +5341,9 @@ extern int PlayerUID;
 
 #define SCREEN_BUF_SIZE 65536           /* max screen dump buffer size */
 
+
+/*
+ * Bit flags for screen_object()
+ */
+#define SCROBJ_FAKE_OBJECT  0x00000001
+#define SCROBJ_FORCE_DETAIL 0x00000002
index 35bb9cf..ec4f9d8 100644 (file)
@@ -1754,7 +1754,11 @@ static void recharged_notice(object_type *o_ptr)
        if (!o_ptr->inscription) return;
 
        /* Find a '!' */
+#ifdef JP
+       s = strchr_j(quark_str(o_ptr->inscription), '!');
+#else
        s = strchr(quark_str(o_ptr->inscription), '!');
+#endif
 
        /* Process notification request. */
        while (s)
@@ -1782,7 +1786,11 @@ static void recharged_notice(object_type *o_ptr)
                }
 
                /* Keep looking for '!'s */
+#ifdef JP
+               s = strchr_j(s + 1, '!');
+#else
                s = strchr(s + 1, '!');
+#endif
        }
 }
 
@@ -2161,28 +2169,12 @@ msg_print("
 
                        /* Window stuff */
                        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
-               }
-       }
 
-       /* Set back the rewards once a day */
-       /* Only used for reward in thief's guild for now */
-       if (!(turn % (TURNS_PER_TICK * TOWN_DAWN)))
-       {
-               int n;
-
-               /* Reset the rewards */
-               for (n = 0; n < MAX_BACT; n++)
-               {
-                       p_ptr->rewards[n] = FALSE;
+                       if (p_ptr->special_defense & NINJA_S_STEALTH)
+                       {
+                               if (cave[py][px].info & CAVE_GLOW) set_superstealth(FALSE);
+                       }
                }
-
-               /* Message */
-#ifdef JP
-if (cheat_xtra) msg_print("Êó½·¤ò¥ê¥»¥Ã¥È");
-#else
-               if (cheat_xtra) msg_print("Rewards reset.");
-#endif
-
        }
 
 
@@ -2304,6 +2296,7 @@ take_hit(DAMAGE_NOESCAPE, damage, "
                cptr message;
                cptr hit_from;
 
+               if (prace_is_(RACE_ENT)) damage += damage / 3;
                if (p_ptr->resist_fire) damage = damage / 3;
                if (IS_OPPOSE_FIRE()) damage = damage / 3;
 
@@ -2520,7 +2513,7 @@ msg_print("
                                }
                        }
 
-                       /* TY_CURSE activates at mignight! */
+                       /* TY_CURSE activates at midnight! */
                        if (!hour && !min)
                        {
                                int count = 0;
@@ -3725,7 +3718,7 @@ take_hit(DAMAGE_NOESCAPE, randint1(p_ptr->wt / 6), "ž
                                if (!cursed_p(o_ptr))
                                {
 #ifdef JP
-msg_print("Éð´ï¤òÍ¤Æ¤·¤Þ¤Ã¤¿¡ª");
+                                       msg_print("Éð´ï¤òÍî¤È¤·¤Æ¤·¤Þ¤Ã¤¿¡ª");
 #else
                                        msg_print("You drop your weapon!");
 #endif
@@ -3748,7 +3741,7 @@ msg_print("
                if ((p_ptr->cursed & TRC_TELEPORT_SELF) && one_in_(200))
                {
 #ifdef JP
-if (get_check_strict("¥Æ¥ì¥Ý¡¼¥È¤·¤Þ¤¹¤«¡©", CHECK_OKAY_CANCEL))
+                       if (get_check_strict("¥Æ¥ì¥Ý¡¼¥È¤·¤Þ¤¹¤«¡©", CHECK_OKAY_CANCEL))
 #else
                        if (get_check_strict("Teleport? ", CHECK_OKAY_CANCEL))
 #endif
@@ -3762,7 +3755,7 @@ if (get_check_strict("
                {
                        char noise[1024];
 #ifdef JP
-if (!get_rnd_line("chainswd_j.txt", 0, noise))
+                       if (!get_rnd_line("chainswd_j.txt", 0, noise))
 #else
                        if (!get_rnd_line("chainswd.txt", 0, noise))
 #endif
@@ -3802,9 +3795,9 @@ if (!get_rnd_line("chainswd_j.txt", 0, noise))
 
                                o_ptr->curse_flags |= new_curse;
 #ifdef JP
-msg_format("°­°Õ¤ËËþ¤Á¤¿¹õ¤¤¥ª¡¼¥é¤¬%s¤ò¤È¤ê¤Þ¤¤¤¿...", o_name);
+                               msg_format("°­°Õ¤ËËþ¤Á¤¿¹õ¤¤¥ª¡¼¥é¤¬%s¤ò¤È¤ê¤Þ¤¤¤¿...", o_name);
 #else
-                               msg_format("There is a malignant black aura surrounding %s...", o_name);
+                               msg_format("There is a malignant black aura surrounding your %s...", o_name);
 #endif
 
                                o_ptr->feeling = FEEL_NONE;
@@ -3829,9 +3822,9 @@ msg_format("
 
                                o_ptr->curse_flags |= new_curse;
 #ifdef JP
-msg_format("°­°Õ¤ËËþ¤Á¤¿¹õ¤¤¥ª¡¼¥é¤¬%s¤ò¤È¤ê¤Þ¤¤¤¿...", o_name);
+                               msg_format("°­°Õ¤ËËþ¤Á¤¿¹õ¤¤¥ª¡¼¥é¤¬%s¤ò¤È¤ê¤Þ¤¤¤¿...", o_name);
 #else
-                               msg_format("There is a malignant black aura surrounding %s...", o_name);
+                               msg_format("There is a malignant black aura surrounding your %s...", o_name);
 #endif
 
                                o_ptr->feeling = FEEL_NONE;
@@ -3849,9 +3842,9 @@ msg_format("
 
                                object_desc(o_name, choose_cursed_obj_name(TRC_CALL_ANIMAL), FALSE, 0);
 #ifdef JP
-msg_format("%s¤¬Æ°Êª¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
+                               msg_format("%s¤¬Æ°Êª¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
 #else
-                               msg_format("%s have attracted an animal!", o_name);
+                               msg_format("Your %s have attracted an animal!", o_name);
 #endif
 
                                disturb(0, 0);
@@ -3866,9 +3859,9 @@ msg_format("%s
 
                                object_desc(o_name, choose_cursed_obj_name(TRC_CALL_DEMON), FALSE, 0);
 #ifdef JP
-msg_format("%s¤¬°­Ëâ¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
+                               msg_format("%s¤¬°­Ëâ¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
 #else
-                               msg_format("%s have attracted a demon!", o_name);
+                               msg_format("Your %s have attracted a demon!", o_name);
 #endif
 
                                disturb(0, 0);
@@ -3884,9 +3877,9 @@ msg_format("%s
 
                                object_desc(o_name, choose_cursed_obj_name(TRC_CALL_DRAGON), FALSE, 0);
 #ifdef JP
-msg_format("%s¤¬¥É¥é¥´¥ó¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
+                               msg_format("%s¤¬¥É¥é¥´¥ó¤ò°ú¤­´ó¤»¤¿¡ª", o_name);
 #else
-                               msg_format("%s have attracted an animal!", o_name);
+                               msg_format("Your %s have attracted an animal!", o_name);
 #endif
 
                                disturb(0, 0);
@@ -3898,7 +3891,7 @@ msg_format("%s
                        {
                                disturb(0, 0);
 #ifdef JP
-msg_print("¤È¤Æ¤â°Å¤¤... ¤È¤Æ¤â¶²¤¤¡ª");
+                               msg_print("¤È¤Æ¤â°Å¤¤... ¤È¤Æ¤â¶²¤¤¡ª");
 #else
                                msg_print("It's so dark... so scary!");
 #endif
@@ -3921,22 +3914,22 @@ msg_print("
 
                        object_desc(o_name, choose_cursed_obj_name(TRC_DRAIN_HP), FALSE, 0);
 #ifdef JP
-msg_format("%s¤Ï¤¢¤Ê¤¿¤ÎÂÎÎϤòµÛ¼ý¤·¤¿¡ª", o_name);
+                       msg_format("%s¤Ï¤¢¤Ê¤¿¤ÎÂÎÎϤòµÛ¼ý¤·¤¿¡ª", o_name);
 #else
-                       msg_format("%s drains HP from you!", o_name);
+                       msg_format("Your %s drains HP from you!", o_name);
 #endif
                        take_hit(DAMAGE_LOSELIFE, MIN(p_ptr->lev*2, 100), o_name, -1);
                }
                /* Handle mana draining */
-               if ((p_ptr->cursed & TRC_DRAIN_MANA) && one_in_(666))
+               if ((p_ptr->cursed & TRC_DRAIN_MANA) && p_ptr->csp && one_in_(666))
                {
                        char o_name[MAX_NLEN];
 
                        object_desc(o_name, choose_cursed_obj_name(TRC_DRAIN_MANA), FALSE, 0);
 #ifdef JP
-msg_format("%s¤Ï¤¢¤Ê¤¿¤ÎËâÎϤòµÛ¼ý¤·¤¿¡ª", o_name);
+                       msg_format("%s¤Ï¤¢¤Ê¤¿¤ÎËâÎϤòµÛ¼ý¤·¤¿¡ª", o_name);
 #else
-                       msg_format("%s drains mana from you!", o_name);
+                       msg_format("Your %s drains mana from you!", o_name);
 #endif
                        p_ptr->csp -= MIN(p_ptr->lev, 50);
                        if (p_ptr->csp < 0)
@@ -4036,15 +4029,18 @@ msg_format("%s
                                recharged_notice(o_ptr);
                                j++;
                        }
+
+                       /* One of the stack of rod is charged */
+                       if (o_ptr->timeout % k_ptr->pval)
+                       {
+                               j++;
+                       }
                }
        }
 
        /* Notice changes */
        if (j)
        {
-               /* Combine pack */
-               p_ptr->notice |= (PN_COMBINE);
-
                /* Window stuff */
                p_ptr->window |= (PW_INVEN);
                wild_regen = 20;
@@ -4111,7 +4107,7 @@ msg_print("
                                msg_print("You feel yourself yanked upwards!");
 #endif
 
-                               p_ptr->recall_dungeon = dungeon_type;
+                               if (dungeon_type) p_ptr->recall_dungeon = dungeon_type;
                                if (record_stair)
                                        do_cmd_write_nikki(NIKKI_RECALL, dun_level, NULL);
 
@@ -4255,7 +4251,7 @@ static bool enter_wizard_mode(void)
        if (!p_ptr->noscore)
        {
                /* Wizard mode is not permitted */
-               if (!allow_debug_opts)
+               if (!allow_debug_opts || arg_wizard)
                {
 #ifdef JP
                        msg_print("¥¦¥£¥¶¡¼¥É¥â¡¼¥É¤Ïµö²Ä¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£ ");
@@ -5409,6 +5405,55 @@ static bool monster_tsuri(int r_idx)
 }
 
 
+/* Hack -- Pack Overflow */
+static void pack_overflow(void)
+{
+       if (inventory[INVEN_PACK].k_idx)
+       {
+               int item = INVEN_PACK;
+               char o_name[MAX_NLEN];
+               object_type *o_ptr;
+
+               /* Access the slot to be dropped */
+               o_ptr = &inventory[item];
+
+               /* Disturbing */
+               disturb(0, 0);
+
+               /* Warning */
+#ifdef JP
+               msg_print("¥¶¥Ã¥¯¤«¤é¥¢¥¤¥Æ¥à¤¬¤¢¤Õ¤ì¤¿¡ª");
+#else
+               msg_print("Your pack overflows!");
+#endif
+
+               /* Describe */
+               object_desc(o_name, o_ptr, TRUE, 3);
+
+               /* Message */
+#ifdef JP
+               msg_format("%s(%c)¤òÍî¤È¤·¤¿¡£", o_name, index_to_label(item));
+#else
+               msg_format("You drop %s (%c).", o_name, index_to_label(item));
+#endif
+
+               /* Drop it (carefully) near the player */
+               (void)drop_near(o_ptr, 0, py, px);
+
+               /* Modify, Describe, Optimize */
+               inven_item_increase(item, -255);
+               inven_item_describe(item);
+               inven_item_optimize(item);
+
+               /* Handle "p_ptr->notice" */
+               notice_stuff();
+
+               /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
+               handle_stuff();
+       }
+}
+
+
 /*
  * Process the player
  *
@@ -5567,6 +5612,7 @@ msg_print("
        if (p_ptr->riding && !p_ptr->confused && !p_ptr->blind)
        {
                monster_type *m_ptr = &m_list[p_ptr->riding];
+               monster_race *r_ptr = &r_info[m_ptr->r_idx];
 
                if (m_ptr->csleep)
                {
@@ -5575,7 +5621,7 @@ msg_print("
                        /* Recover fully */
                        m_ptr->csleep = 0;
 
-                       if (r_info[m_ptr->r_idx].flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
+                       if (r_ptr->flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
 
                        /* Acquire the monster name */
                        monster_desc(m_name, m_ptr, 0);
@@ -5593,7 +5639,7 @@ msg_format("%^s
                        int d = 1;
 
                        /* Make a "saving throw" against stun */
-                       if (randint0(r_info[m_ptr->r_idx].level) < p_ptr->skill_exp[GINOU_RIDING])
+                       if (randint0(r_ptr->level) < p_ptr->skill_exp[GINOU_RIDING])
                        {
                                /* Recover fully */
                                d = m_ptr->stunned;
@@ -5633,7 +5679,7 @@ msg_format("%^s
                        int d = 1;
 
                        /* Make a "saving throw" against stun */
-                       if (randint0(r_info[m_ptr->r_idx].level) < p_ptr->skill_exp[GINOU_RIDING])
+                       if (randint0(r_ptr->level) < p_ptr->skill_exp[GINOU_RIDING])
                        {
                                /* Recover fully */
                                d = m_ptr->confused;
@@ -5673,7 +5719,7 @@ msg_format("%^s
                        int d = 1;
 
                        /* Make a "saving throw" against stun */
-                       if (randint0(r_info[m_ptr->r_idx].level) < p_ptr->skill_exp[GINOU_RIDING])
+                       if (randint0(r_ptr->level) < p_ptr->skill_exp[GINOU_RIDING])
                        {
                                /* Recover fully */
                                d = m_ptr->monfear;
@@ -5795,53 +5841,7 @@ msg_format("%^s
 
 
                /* Hack -- Pack Overflow */
-               if (inventory[INVEN_PACK].k_idx)
-               {
-                       int item = INVEN_PACK;
-
-                       char o_name[MAX_NLEN];
-
-                       object_type *o_ptr;
-
-                       /* Access the slot to be dropped */
-                       o_ptr = &inventory[item];
-
-                       /* Disturbing */
-                       disturb(0, 0);
-
-                       /* Warning */
-#ifdef JP
-msg_print("¥¶¥Ã¥¯¤«¤é¥¢¥¤¥Æ¥à¤¬¤¢¤Õ¤ì¤¿¡ª");
-#else
-                       msg_print("Your pack overflows!");
-#endif
-
-
-                       /* Describe */
-                       object_desc(o_name, o_ptr, TRUE, 3);
-
-                       /* Message */
-#ifdef JP
-msg_format("%s(%c)¤òÍî¤È¤·¤¿¡£", o_name, index_to_label(item));
-#else
-                       msg_format("You drop %s (%c).", o_name, index_to_label(item));
-#endif
-
-
-                       /* Drop it (carefully) near the player */
-                       (void)drop_near(o_ptr, 0, py, px);
-
-                       /* Modify, Describe, Optimize */
-                       inven_item_increase(item, -255);
-                       inven_item_describe(item);
-                       inven_item_optimize(item);
-
-                       /* Handle "p_ptr->notice" */
-                       notice_stuff();
-
-                       /* Handle "p_ptr->update" and "p_ptr->redraw" and "p_ptr->window" */
-                       handle_stuff();
-               }
+               pack_overflow();
 
 
                /* Hack -- cancel "lurking browse mode" */
@@ -5941,6 +5941,10 @@ msg_format("%s(%c)
                }
 
 
+               /* Hack -- Pack Overflow */
+               pack_overflow();
+
+
                /*** Clean up ***/
 
                /* Significant */
@@ -6069,7 +6073,7 @@ msg_format("%s(%c)
                                        }
                                }
                                new_mane = FALSE;
-                               p_ptr->redraw |= (PR_MANE);
+                               p_ptr->redraw |= (PR_IMITATION);
                        }
                        if (p_ptr->action == ACTION_LEARN)
                        {
@@ -6185,7 +6189,7 @@ static void dungeon(bool load_game)
        if ((max_dlv[dungeon_type] < dun_level) && !p_ptr->inside_quest)
        {
                max_dlv[dungeon_type] = dun_level;
-               if (record_maxdeapth) do_cmd_write_nikki(NIKKI_MAXDEAPTH, dun_level, NULL);
+               if (record_maxdepth) do_cmd_write_nikki(NIKKI_MAXDEAPTH, dun_level, NULL);
        }
 
        /* Validate the panel */
@@ -6288,6 +6292,8 @@ msg_print("
 #endif
        }
 
+       if (!load_game && (p_ptr->special_defense & NINJA_S_STEALTH)) set_superstealth(FALSE);
+
        /*** Process this dungeon level ***/
 
        /* Reset the monster generation level */
@@ -6382,8 +6388,15 @@ msg_print("
 
                /* Count game turns */
                turn++;
-               if (!p_ptr->wild_mode || wild_regen) dungeon_turn++;
-               else if (p_ptr->wild_mode && !(turn % ((MAX_HGT + MAX_WID) / 2))) dungeon_turn++;
+
+               if (dungeon_turn < dungeon_turn_limit)
+               {
+                       if (!p_ptr->wild_mode || wild_regen) dungeon_turn++;
+                       else if (p_ptr->wild_mode && !(turn % ((MAX_HGT + MAX_WID) / 2))) dungeon_turn++;
+               }
+
+               prevent_turn_overflow();
+
                if (wild_regen) wild_regen--;
        }
 
@@ -6827,12 +6840,6 @@ quit("
                counts_write(2,0);
                p_ptr->count = 0;
 
-#ifdef JP
-               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "ÊÕ¶­¤ÎÃϤ˹ߤêΩ¤Ã¤¿¡£");
-#else
-               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "You are standing in the Outpost.");
-#endif
-
                load = FALSE;
 
                determine_bounty_uniques();
@@ -6908,8 +6915,26 @@ prt("
        /* Hack -- Enter wizard mode */
        if (arg_wizard)
        {
-               if (enter_wizard_mode()) p_ptr->wizard = TRUE;
-               else if (p_ptr->is_dead) quit("Already dead.");
+               if (enter_wizard_mode())
+               {
+                       p_ptr->wizard = TRUE;
+
+                       if (p_ptr->is_dead || !py || !px)
+                       {
+                               /* Avoid crash */
+                               p_ptr->inside_quest = 0;
+
+                               /* Initialize the saved floors data */
+                               init_saved_floors();
+
+                               /* Avoid crash in update_view() */
+                               py = px = 10;
+                       }
+               }
+               else if (p_ptr->is_dead)
+               {
+                       quit("Already dead.");
+               }
        }
 
        /* Initialize the town-buildings if necessary */
@@ -6939,6 +6964,19 @@ prt("
        character_icky = FALSE;
 
 
+       if (new_game)
+       {
+               char buf[80];
+
+#ifdef JP
+               sprintf(buf, "%s¤Ë¹ß¤êΩ¤Ã¤¿¡£", map_name());
+#else
+               sprintf(buf, "You are standing in the %s.", map_name());
+#endif
+               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, buf);
+       }
+
+
        /* Start game */
        p_ptr->playing = TRUE;
 
@@ -7041,16 +7079,18 @@ prt("
                                p_ptr->chp_frac = 0;
                                p_ptr->exit_bldg = TRUE;
                                reset_tim_flags();
+
+                               /* prepare next floor */
+                               leave_floor();
                        }
                        else
                        {
                                /* Mega-Hack -- Allow player to cheat death */
 #ifdef JP
-if ((p_ptr->wizard || cheat_live) && !get_check("»à¤Ë¤Þ¤¹¤«? "))
+                               if ((p_ptr->wizard || cheat_live) && !get_check("»à¤Ë¤Þ¤¹¤«? "))
 #else
                                if ((p_ptr->wizard || cheat_live) && !get_check("Die? "))
 #endif
-
                                {
                                        /* Mark social class, reset age, if needed */
                                        if (p_ptr->sc) p_ptr->sc = p_ptr->age = 0;
@@ -7063,11 +7103,10 @@ if ((p_ptr->wizard || cheat_live) && !get_check("
 
                                        /* Message */
 #ifdef JP
-msg_print("¥¦¥£¥¶¡¼¥É¥â¡¼¥É¤ËÇ°¤òÁ÷¤ê¡¢»à¤òµ½¤¤¤¿¡£");
+                                       msg_print("¥¦¥£¥¶¡¼¥É¥â¡¼¥É¤ËÇ°¤òÁ÷¤ê¡¢»à¤òµ½¤¤¤¿¡£");
 #else
                                        msg_print("You invoke wizard mode and cheat death.");
 #endif
-                                       wipe_m_list();
 
                                        msg_print(NULL);
 
@@ -7090,25 +7129,12 @@ msg_print("
                                        p_ptr->csp = p_ptr->msp;
                                        p_ptr->csp_frac = 0;
 
-                                       /* Hack -- Healing */
-                                       (void)set_blind(0);
-                                       (void)set_confused(0);
-                                       (void)set_poisoned(0);
-                                       (void)set_afraid(0);
-                                       (void)set_paralyzed(0);
-                                       (void)set_image(0);
-                                       (void)set_stun(0);
-                                       (void)set_cut(0);
-
-                                       /* Hack -- Prevent starvation */
-                                       (void)set_food(PY_FOOD_MAX - 1);
-
                                        /* Hack -- cancel recall */
                                        if (p_ptr->word_recall)
                                        {
                                                /* Message */
 #ifdef JP
-msg_print("Ä¥¤ê¤Ä¤á¤¿Â絤¤¬Î®¤ìµî¤Ã¤¿...");
+                                               msg_print("Ä¥¤ê¤Ä¤á¤¿Â絤¤¬Î®¤ìµî¤Ã¤¿...");
 #else
                                                msg_print("A tension leaves the air around you...");
 #endif
@@ -7130,21 +7156,33 @@ msg_print("ĥ
 
                                        /* Note cause of death XXX XXX XXX */
 #ifdef JP
-(void)strcpy(p_ptr->died_from, "»à¤Îµ½¤­");
+                                       (void)strcpy(p_ptr->died_from, "»à¤Îµ½¤­");
 #else
                                        (void)strcpy(p_ptr->died_from, "Cheating death");
 #endif
 
-
                                        /* Do not die */
                                        p_ptr->is_dead = FALSE;
 
+                                       /* Hack -- Healing */
+                                       (void)set_blind(0);
+                                       (void)set_confused(0);
+                                       (void)set_poisoned(0);
+                                       (void)set_afraid(0);
+                                       (void)set_paralyzed(0);
+                                       (void)set_image(0);
+                                       (void)set_stun(0);
+                                       (void)set_cut(0);
+
+                                       /* Hack -- Prevent starvation */
+                                       (void)set_food(PY_FOOD_MAX - 1);
+
                                        dun_level = 0;
                                        p_ptr->inside_arena = FALSE;
                                        p_ptr->inside_battle = FALSE;
                                        leaving_quest = 0;
                                        p_ptr->inside_quest = 0;
-                                       p_ptr->recall_dungeon = dungeon_type;
+                                       if (dungeon_type) p_ptr->recall_dungeon = dungeon_type;
                                        dungeon_type = 0;
                                        if (lite_town || vanilla_town)
                                        {
@@ -7178,6 +7216,10 @@ msg_print("ĥ
 #else
                                        do_cmd_write_nikki(NIKKI_BUNSHOU, 1, "                            but revived.");
 #endif
+
+                                       /* prepare next floor */
+                                       leave_floor();
+                                       wipe_m_list();
                                }
                        }
                }
@@ -7209,3 +7251,45 @@ s32b turn_real(s32b hoge)
                return hoge;
        }
 }
+
+/*
+ * ¥¿¡¼¥ó¤Î¥ª¡¼¥Ð¡¼¥Õ¥í¡¼¤ËÂФ¹¤ëÂнè
+ * ¥¿¡¼¥óµÚ¤Ó¥¿¡¼¥ó¤òµ­Ï¿¤¹¤ëÊÑ¿ô¤ò¥¿¡¼¥ó¤Î¸Â³¦¤Î1ÆüÁ°¤Þ¤Ç´¬¤­Ì᤹.
+ */
+void prevent_turn_overflow(void)
+{
+       int rollback_days, i, j;
+       s32b rollback_turns;
+
+       if (turn < turn_limit) return;
+
+       rollback_days = 1 + (turn - turn_limit) / (TURNS_PER_TICK * TOWN_DAWN);
+       rollback_turns = TURNS_PER_TICK * TOWN_DAWN * rollback_days;
+
+       if (turn > rollback_turns) turn -= rollback_turns;
+       else turn = 1; /* Paranoia */
+       if (old_turn > rollback_turns) old_turn -= rollback_turns;
+       else old_turn = 1;
+       if (old_battle > rollback_turns) old_battle -= rollback_turns;
+       else old_battle = 1;
+
+       for (i = 1; i < max_towns; i++)
+       {
+               for (j = 0; j < MAX_STORES; j++)
+               {
+                       store_type *st_ptr = &town[i].store[j];
+
+                       if (st_ptr->last_visit > -10L * TURNS_PER_TICK * STORE_TICKS)
+                       {
+                               st_ptr->last_visit -= rollback_turns;
+                               if (st_ptr->last_visit < -10L * TURNS_PER_TICK * STORE_TICKS) st_ptr->last_visit = -10L * TURNS_PER_TICK * STORE_TICKS;
+                       }
+
+                       if (st_ptr->store_open)
+                       {
+                               st_ptr->store_open -= rollback_turns;
+                               if (st_ptr->store_open < 1) st_ptr->store_open = 1;
+                       }
+               }
+       }
+}
index 0b763c2..a97a2ec 100644 (file)
@@ -4874,7 +4874,7 @@ msg_print("
                }
                else
                {
-                       p_ptr->old_race2 = 1L << (p_ptr->prace-32);
+                       p_ptr->old_race2 |= 1L << (p_ptr->prace-32);
                }
                p_ptr->prace = new_race;
                rp_ptr = &race_info[p_ptr->prace];
@@ -4943,8 +4943,8 @@ msg_format("%s
                if (one_in_(6))
                {
 #ifdef JP
-msg_print("¸½ºß»Ñ¤ÇÀ¸¤­¤Æ¤¤¤¯¤Î¤Ïº¤Æñ¤Ê¤è¤¦¤À¡ª");
-take_hit(DAMAGE_LOSELIFE, damroll(randint1(10), p_ptr->lev), "Ã×̿Ū¤ÊÆÍÁ³ÊÑ°Û", -1);
+                       msg_print("¸½ºß¤Î»Ñ¤ÇÀ¸¤­¤Æ¤¤¤¯¤Î¤Ïº¤Æñ¤Ê¤è¤¦¤À¡ª");
+                       take_hit(DAMAGE_LOSELIFE, damroll(randint1(10), p_ptr->lev), "Ã×̿Ū¤ÊÆÍÁ³ÊÑ°Û", -1);
 #else
                        msg_print("You find living difficult in your present form!");
                        take_hit(DAMAGE_LOSELIFE, damroll(randint1(10), p_ptr->lev), "a lethal mutation", -1);
@@ -5119,7 +5119,6 @@ int take_hit(int damage_type, int damage, cptr hit_from, int monspell)
        /* Dead player */
        if (p_ptr->chp < 0)
        {
-               char buf[10];
                bool android = (p_ptr->prace == RACE_ANDROID ? TRUE : FALSE);
 
 #ifdef JP       /* »à¤ó¤À»þ¤Ë¶¯À©½ªÎ»¤·¤Æ»à¤ò²óÈò¤Ç¤­¤Ê¤¯¤·¤Æ¤ß¤¿ by Habu */
@@ -5152,6 +5151,8 @@ int take_hit(int damage_type, int damage, cptr hit_from, int monspell)
                else
                {
                        int q_idx = quest_number(dun_level);
+                       bool seppuku = streq(hit_from, "Seppuku");
+                       bool winning_seppuku = p_ptr->total_winner && seppuku;
 
 #ifdef WORLD_SCORE
                        /* Make screen dump */
@@ -5159,46 +5160,73 @@ int take_hit(int damage_type, int damage, cptr hit_from, int monspell)
 #endif
 
                        /* Note cause of death */
+                       if (seppuku)
+                       {
+                               strcpy(p_ptr->died_from, hit_from);
+#ifdef JP
+                               if (!winning_seppuku) strcpy(p_ptr->died_from, "ÀÚÊ¢");
+#endif
+                       }
+                       else
+                       {
+                               char dummy[1024];
 #ifdef JP
-                       sprintf(p_ptr->died_from, "%s%s%s", !p_ptr->paralyzed ? "" : p_ptr->free_act ? "ĦÁü¾õÂÖ¤Ç":"Ëãáã¾õÂÖ¤Ç", p_ptr->image ? "¸¸³Ð¤ËÏĤó¤À" : "", hit_from);
+                               sprintf(dummy, "%s%s%s", !p_ptr->paralyzed ? "" : p_ptr->free_act ? "ĦÁü¾õÂÖ¤Ç" : "Ëãáã¾õÂÖ¤Ç", p_ptr->image ? "¸¸³Ð¤ËÏĤó¤À" : "", hit_from);
 #else
-                       sprintf(p_ptr->died_from, "%s%s", hit_from, !p_ptr->paralyzed ? "" : " while helpless");
+                               sprintf(dummy, "%s%s", hit_from, !p_ptr->paralyzed ? "" : " while helpless");
 #endif
+                               my_strcpy(p_ptr->died_from, dummy, sizeof p_ptr->died_from);
+                       }
 
                        /* No longer a winner */
                        p_ptr->total_winner = FALSE;
 
-                       if (p_ptr->inside_arena)
+                       if (winning_seppuku)
+                       {
 #ifdef JP
-                               strcpy(buf,"¥¢¥ê¡¼¥Ê");
+                               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "¾¡Íø¤Î¸åÀÚÊ¢¤·¤¿¡£");
 #else
-                               strcpy(buf,"in the Arena");
+                               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "did Seppuku after the winning.");
 #endif
-                       else if (!dun_level)
+                       }
+                       else
+                       {
+                               char buf[10];
+
+                               if (p_ptr->inside_arena)
 #ifdef JP
-                               strcpy(buf,"ÃϾå");
+                                       strcpy(buf,"¥¢¥ê¡¼¥Ê");
 #else
-                               strcpy(buf,"on the surface");
+                                       strcpy(buf,"in the Arena");
 #endif
-                       else if (q_idx && (is_fixed_quest_idx(q_idx) &&
-                                !((q_idx == QUEST_OBERON) || (q_idx == QUEST_SERPENT))))
+                               else if (!dun_level)
 #ifdef JP
-                               strcpy(buf,"¥¯¥¨¥¹¥È");
+                                       strcpy(buf,"ÃϾå");
 #else
-                               strcpy(buf,"in a quest");
+                                       strcpy(buf,"on the surface");
 #endif
-                       else
+                               else if (q_idx && (is_fixed_quest_idx(q_idx) &&
+                                        !((q_idx == QUEST_OBERON) || (q_idx == QUEST_SERPENT))))
 #ifdef JP
-                               sprintf(buf,"%d³¬", dun_level);
+                                       strcpy(buf,"¥¯¥¨¥¹¥È");
 #else
-                               sprintf(buf,"level %d", dun_level);
+                                       strcpy(buf,"in a quest");
 #endif
+                               else
 #ifdef JP
-                       sprintf(tmp,"%s¤Ç%s¤Ë»¦¤µ¤ì¤¿¡£",buf, p_ptr->died_from);
+                                       sprintf(buf,"%d³¬", dun_level);
 #else
-                       sprintf(tmp,"killed by %s %s.", p_ptr->died_from, buf);
+                                       sprintf(buf,"level %d", dun_level);
 #endif
-                       do_cmd_write_nikki(NIKKI_BUNSHOU, 0, tmp);
+
+#ifdef JP
+                               sprintf(tmp, "%s¤Ç%s¤Ë»¦¤µ¤ì¤¿¡£", buf, p_ptr->died_from);
+#else
+                               sprintf(tmp, "killed by %s %s.", p_ptr->died_from, buf);
+#endif
+                               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, tmp);
+                       }
+
 #ifdef JP
                        do_cmd_write_nikki(NIKKI_GAMESTART, 1, "-------- ¥²¡¼¥à¥ª¡¼¥Ð¡¼ --------");
 #else
@@ -5209,11 +5237,10 @@ int take_hit(int damage_type, int damage, cptr hit_from, int monspell)
                        flush();
 
 #ifdef JP
-if (get_check_strict("²èÌ̤òÊݸ¤·¤Þ¤¹¤«¡©", CHECK_NO_HISTORY))
+                       if (get_check_strict("²èÌ̤òÊݸ¤·¤Þ¤¹¤«¡©", CHECK_NO_HISTORY))
 #else
                        if (get_check_strict("Dump the screen? ", CHECK_NO_HISTORY))
 #endif
-
                        {
                                do_cmd_save_screen();
                        }
@@ -5224,7 +5251,7 @@ if (get_check_strict("
                        if (!last_words)
                        {
 #ifdef JP
-msg_format("¤¢¤Ê¤¿¤Ï%s¤Þ¤·¤¿¡£", android ? "²õ¤ì" : "»à¤Ë");
+                               msg_format("¤¢¤Ê¤¿¤Ï%s¤Þ¤·¤¿¡£", android ? "²õ¤ì" : "»à¤Ë");
 #else
                                msg_print(android ? "You are broken." : "You die.");
 #endif
@@ -5233,10 +5260,10 @@ msg_format("
                        }
                        else
                        {
-                               if (streq(p_ptr->died_from, "Seppuku"))
+                               if (winning_seppuku)
                                {
 #ifdef JP
-                                 get_rnd_line("seppuku_j.txt", 0, death_message);
+                                       get_rnd_line("seppuku_j.txt", 0, death_message);
 #else
                                        get_rnd_line("seppuku.txt", 0, death_message);
 #endif
@@ -5244,13 +5271,13 @@ msg_format("
                                else
                                {
 #ifdef JP
-get_rnd_line("death_j.txt", 0, death_message);
+                                       get_rnd_line("death_j.txt", 0, death_message);
 #else
                                        get_rnd_line("death.txt", 0, death_message);
 #endif
                                }
 #ifdef JP
-                               while (!get_string(streq(p_ptr->died_from, "Seppuku") ? "¼­À¤¤Î¶ç: " : "ÃÇËöËâ¤Î¶«¤Ó: ", death_message, 1024)) ;
+                               while (!get_string(winning_seppuku ? "¼­À¤¤Î¶ç: " : "ÃÇËöËâ¤Î¶«¤Ó: ", death_message, 1024)) ;
 #else
                                while (!get_string("Last word: ", death_message, 1024)) ;
 #endif
@@ -5262,63 +5289,62 @@ get_rnd_line("death_j.txt", 0, death_message);
                                        strcpy(death_message, android ? "You are broken." : "You die.");
 #endif
                                }
-                               if (streq(p_ptr->died_from, "Seppuku"))
-                               {
+
 #ifdef JP
-                                 int i, len;
-                                 int w = Term->wid;
-                                 int h = Term->hgt;
-                                 int msg_pos_x[9] = {  5,  7,  9, 12,  14,  17,  19,  21, 23};
-                                 int msg_pos_y[9] = {  3,  4,  5,  4,   5,   4,   5,   6,  4};
-                                 cptr str;
-                                 char* str2;
-
-                                 Term_clear();
-
-                                 /* ºù»¶¤ë */
-                                 for (i = 0; i < 40; i++) 
-                                   Term_putstr(randint0(w / 2) * 2, randint0(h), 2, TERM_VIOLET, "¦Ô");
-
-                                 str = death_message;
-                                 if (strncmp(str, "¡Ö", 2) == 0) str += 2;
-
-                                 str2 = strstr_j(str, "¡×");
-                                 if (str2 != NULL) *str2 = '\0';
-
-                                 i = 0;
-                                 while (i < 9)
-                                 {
-                                   str2 = strstr_j(str, " ");
-                                   if (str2 == NULL) len = strlen(str);
-                                   else len = str2 - str;
-
-                                   if (len != 0)
-                                   {
-                                     Term_putstr_v(w * 3 / 4 - 2 - msg_pos_x[i] * 2, msg_pos_y[i], len,
-                                                 TERM_WHITE, str);
-                                     if (str2 == NULL) break;
-                                     i++;
-                                   }
-                                   str = str2 + 1;
-                                   if (*str == 0) break;
-                                 }
-
-                                 /* Hide cursor */
-                                 Term_putstr(w-1, h-1, 1, TERM_WHITE, " ");
-
-                                 flush();
+                               if (winning_seppuku)
+                               {
+                                       int i, len;
+                                       int w = Term->wid;
+                                       int h = Term->hgt;
+                                       int msg_pos_x[9] = {  5,  7,  9, 12,  14,  17,  19,  21, 23};
+                                       int msg_pos_y[9] = {  3,  4,  5,  4,   5,   4,   5,   6,  4};
+                                       cptr str;
+                                       char* str2;
+
+                                       Term_clear();
+
+                                       /* ºù»¶¤ë */
+                                       for (i = 0; i < 40; i++)
+                                               Term_putstr(randint0(w / 2) * 2, randint0(h), 2, TERM_VIOLET, "¦Ô");
+
+                                       str = death_message;
+                                       if (strncmp(str, "¡Ö", 2) == 0) str += 2;
+
+                                       str2 = strstr_j(str, "¡×");
+                                       if (str2 != NULL) *str2 = '\0';
+
+                                       i = 0;
+                                       while (i < 9)
+                                       {
+                                               str2 = strstr_j(str, " ");
+                                               if (str2 == NULL) len = strlen(str);
+                                               else len = str2 - str;
+
+                                               if (len != 0)
+                                               {
+                                                       Term_putstr_v(w * 3 / 4 - 2 - msg_pos_x[i] * 2, msg_pos_y[i], len,
+                                                       TERM_WHITE, str);
+                                                       if (str2 == NULL) break;
+                                                       i++;
+                                               }
+                                               str = str2 + 1;
+                                               if (*str == 0) break;
+                                       }
+
+                                       /* Hide cursor */
+                                       Term_putstr(w-1, h-1, 1, TERM_WHITE, " ");
+
+                                       flush();
 #ifdef WORLD_SCORE
-                                 /* Make screen dump */
-                                 screen_dump = make_screen_dump();
+                                       /* Make screen dump */
+                                       screen_dump = make_screen_dump();
 #endif
 
-                                 /* Wait a key press */
-                                 (void)inkey();
-#else
-                                       msg_print(death_message);
-#endif
+                                       /* Wait a key press */
+                                       (void)inkey();
                                }
                                else
+#endif
                                        msg_print(death_message);
                        }
                }
@@ -5345,7 +5371,7 @@ get_rnd_line("death_j.txt", 0, death_message);
 #endif
 
 #ifdef JP
-                       sprintf(tmp,"%s¤Ë¤è¤Ã¤Æ¥Ô¥ó¥Á¤Ë´Ù¤¤¤Ã¤¿¡£",hit_from);
+                       sprintf(tmp,"%s¤Ë¤è¤Ã¤Æ¥Ô¥ó¥Á¤Ë´Ù¤Ã¤¿¡£",hit_from);
 #else
                        sprintf(tmp,"A critical situation because of %s.",hit_from);
 #endif
index d23adf1..1eddbca 100644 (file)
@@ -167,7 +167,9 @@ extern s16b object_level;
 extern s16b monster_level;
 extern s16b base_level;
 extern s32b turn;
+extern s32b turn_limit;
 extern s32b dungeon_turn;
+extern s32b dungeon_turn_limit;
 extern s32b old_turn;
 extern s32b old_battle;
 extern bool use_sound;
@@ -311,7 +313,7 @@ extern bool record_rand_art;
 extern bool record_destroy_uniq;
 extern bool record_fix_quest;
 extern bool record_rand_quest;
-extern bool record_maxdeapth;
+extern bool record_maxdepth;
 extern bool record_stair;
 extern bool record_buy;
 extern bool record_sell;
@@ -491,7 +493,7 @@ extern bool preserve_mode;
 extern bool autoroller;
 extern bool autochara;
 extern bool can_save;
-extern bool world_monster;
+extern s16b world_monster;
 extern bool world_player;
 extern int cap_mon;
 extern int cap_mspeed;
@@ -613,6 +615,7 @@ extern void search(void);
 extern void py_pickup_aux(int o_idx);
 extern void carry(int pickup);
 extern bool py_attack(int y, int x, int mode);
+extern bool pattern_seq(int c_y, int c_x, int n_y, int n_x);
 extern bool player_can_enter(byte feature);
 extern void move_player(int dir, int do_pickup, bool break_trap);
 extern void run_step(int dir);
@@ -725,6 +728,7 @@ extern bool psychometry(void);
 extern void leave_level(int level);
 extern void enter_level(int level);
 extern s32b turn_real(s32b hoge);
+extern void prevent_turn_overflow(void);
 
 
 /* files.c */
@@ -782,7 +786,8 @@ extern void stair_creation(void);
 
 /* generate.c */
 extern void place_closed_door(int y, int x);
-extern void place_quest_monsters(void);
+extern bool place_quest_monsters(void);
+extern void wipe_generate_cave_flags(void);
 extern void clear_cave(void);
 extern void generate_cave(void);
 
@@ -819,19 +824,8 @@ extern void screen_roff(int r_idx, int mode);
 extern void display_roff(int r_idx);
 extern void output_monster_spoiler(int r_idx, void (*roff_func)(byte attr, cptr str));
 extern void create_name(int type, char *name);
-/* monster1.c (was in monster3.c ??) */
-extern bool monster_quest(int r_idx);
-extern bool monster_dungeon(int r_idx);
-extern bool monster_ocean(int r_idx);
-extern bool monster_shore(int r_idx);
-extern bool monster_town(int r_idx);
-extern bool monster_wood(int r_idx);
-extern bool monster_volcano(int r_idx);
-extern bool monster_mountain(int r_idx);
-extern bool monster_grass(int r_idx);
-extern bool monster_deep_water(int r_idx);
-extern bool monster_shallow_water(int r_idx);
-extern bool monster_lava(int r_idx);
+extern bool mon_hook_dungeon(int r_idx);
+
 extern monster_hook_type get_monster_hook(void);
 extern monster_hook_type get_monster_hook2(int y, int x);
 extern void set_friendly(monster_type *m_ptr);
@@ -870,7 +864,7 @@ extern void update_monsters(bool full);
 extern bool place_monster_aux(int who, int y, int x, int r_idx, u32b mode);
 extern bool place_monster(int y, int x, u32b mode);
 extern bool alloc_horde(int y, int x);
-extern bool alloc_guardian(void);
+extern bool alloc_guardian(bool def_val);
 extern bool alloc_monster(int dis, u32b mode);
 extern bool summon_specific(int who, int y1, int x1, int lev, int type, u32b mode);
 extern bool summon_named_creature (int who, int oy, int ox, int r_idx, u32b mode);
@@ -890,7 +884,7 @@ extern void object_flags(object_type *o_ptr, u32b flgs[TR_FLAG_SIZE]);
 extern void object_flags_known(object_type *o_ptr, u32b flgs[TR_FLAG_SIZE]);
 extern void object_desc_store(char *buf, object_type *o_ptr, int pref, int mode);
 extern cptr item_activation(object_type *o_ptr);
-extern bool screen_object(object_type *o_ptr, bool real);
+extern bool screen_object(object_type *o_ptr, u32b mode);
 extern char index_to_label(int i);
 extern s16b label_to_inven(int c);
 extern s16b label_to_equip(int c);
@@ -1088,12 +1082,15 @@ extern bool eat_magic(int power);
 extern void discharge_minion(void);
 extern void kawarimi(bool success);
 extern bool rush_attack(bool *mdeath);
+extern void remove_all_mirrors(bool explode);
 
 /* spells3.c */
 extern bool teleport_away(int m_idx, int dis, bool dec_valour);
 extern void teleport_monster_to(int m_idx, int ty, int tx, int power);
 extern void teleport_player(int dis);
+extern void teleport_player_away(int m_idx, int dis);
 extern void teleport_player_to(int ny, int nx, bool no_tele);
+extern void teleport_away_followable(int m_idx);
 extern void teleport_level(int m_idx);
 extern bool recall_player(int turns);
 extern bool word_of_recall(void);
@@ -1130,6 +1127,8 @@ extern bool potion_smash_effect(int who, int y, int x, int k_idx);
 extern void display_spell_list(void);
 extern s16b experience_of_spell(int spell, int realm);
 extern int mod_need_mana(int need_mana, int spell, int realm);
+extern int mod_spell_chance_1(int chance);
+extern int mod_spell_chance_2(int chance);
 extern s16b spell_chance(int spell,int realm);
 extern bool spell_okay(int spell, bool learned, bool study_pray, int realm);
 extern void print_spells(int target_spell, byte *spells, int num, int y, int x, int realm);
@@ -1152,6 +1151,7 @@ extern bool curse_weapon(bool force, int slot);
 extern bool brand_bolts(void);
 extern bool polymorph_monster(int y, int x);
 extern bool dimension_door(void);
+extern bool mirror_tunnel(void);
 extern bool summon_kin_player(int level, int y, int x, u32b mode);
 
 /* store.c */
@@ -1201,6 +1201,7 @@ extern errr macro_add(cptr pat, cptr act);
 extern sint macro_find_exact(cptr pat);
 extern char inkey(void);
 extern cptr quark_str(s16b num);
+extern void quark_init(void);
 extern s16b quark_add(cptr str);
 extern s16b message_num(void);
 extern cptr message_str(int age);
@@ -1386,7 +1387,7 @@ extern void one_ability(object_type *o_ptr);
 extern bool create_artifact(object_type *o_ptr, bool a_scroll);
 extern bool activate_random_artifact(object_type * o_ptr);
 extern void random_artifact_resistance(object_type * o_ptr, artifact_type *a_ptr);
-extern void create_named_art(int a_idx, int y, int x);
+extern bool create_named_art(int a_idx, int y, int x);
 
 /* scores.c */
 extern void display_scores_aux(int from, int to, int note, high_score *score);
@@ -1556,7 +1557,10 @@ extern void jverb2( const char *in , char *out);
 extern void jverb3( const char *in , char *out);
 extern void jverb( const char *in , char *out , int flag);
 extern char* strstr_j(cptr str1, cptr str2);
-extern void codeconv(char *str);
+extern char *strchr_j(const char *ptr, char ch);
+extern void sjis2euc(char *str);
+extern void euc2sjis(char *str);
+extern byte codeconv(char *str);
 extern bool iskanji2(cptr s, int x);
 #endif
 
index 3f0d0d7..77422cf 100644 (file)
@@ -417,11 +417,6 @@ errr process_pref_file_command(char *buf)
 
        switch (buf[0])
        {
-       /* Process "%:<fname>" */
-       case '%':
-               /* Attempt to Process the given file */
-               return process_pref_file(buf + 2);
-
        /* Mega-Hack -- read external player's history file */
        /* Process "H:<history>" */
        case 'H':
@@ -438,7 +433,7 @@ errr process_pref_file_command(char *buf)
                        n2 = strtol(zz[2], NULL, 0);
                        if (i >= max_r_idx) return 1;
                        r_ptr = &r_info[i];
-                       if (n1) r_ptr->x_attr = n1;
+                       if (n1 || (!(n2 & 0x80) && n2)) r_ptr->x_attr = n1; /* Allow TERM_DARK text */
                        if (n2) r_ptr->x_char = n2;
                        return 0;
                }
@@ -454,7 +449,7 @@ errr process_pref_file_command(char *buf)
                        n2 = strtol(zz[2], NULL, 0);
                        if (i >= max_k_idx) return 1;
                        k_ptr = &k_info[i];
-                       if (n1) k_ptr->x_attr = n1;
+                       if (n1 || (!(n2 & 0x80) && n2)) k_ptr->x_attr = n1; /* Allow TERM_DARK text */
                        if (n2) k_ptr->x_char = n2;
                        return 0;
                }
@@ -470,7 +465,7 @@ errr process_pref_file_command(char *buf)
                        n2 = strtol(zz[2], NULL, 0);
                        if (i >= max_f_idx) return 1;
                        f_ptr = &f_info[i];
-                       if (n1) f_ptr->x_attr = n1;
+                       if (n1 || (!(n2 & 0x80) && n2)) f_ptr->x_attr = n1; /* Allow TERM_DARK text */
                        if (n2) f_ptr->x_char = n2;
                        return 0;
                }
@@ -583,7 +578,7 @@ errr process_pref_file_command(char *buf)
                                int os = option_info[i].o_set;
                                int ob = option_info[i].o_bit;
 
-                               if (p_ptr->playing && 6 == option_info[i].o_page && !p_ptr->wizard)
+                               if ((p_ptr->playing || character_xtra) && 6 == option_info[i].o_page && !p_ptr->wizard)
                                {
 #ifdef JP
                                        msg_format("½é´ü¥ª¥×¥·¥ç¥ó¤ÏÊѹ¹¤Ç¤­¤Þ¤»¤ó! '%s'", buf);
@@ -1105,6 +1100,14 @@ static errr process_pref_file_aux(cptr name, int preftype)
                /* Process "%:<file>" */
                if (buf[0] == '%')
                {
+                       static int depth_count = 0;
+
+                       /* Ignore if deeper than 20 level */
+                       if (depth_count > 20) continue;
+
+                       /* Count depth level */
+                       depth_count++;
+
                        /* Process that file if allowed */
                        switch (preftype)
                        {
@@ -1119,6 +1122,9 @@ static errr process_pref_file_aux(cptr name, int preftype)
                                break;
                        }
 
+                       /* Set back depth level */
+                       depth_count--;
+
                        /* Continue */
                        continue;
                }
@@ -1852,13 +1858,13 @@ static void display_player_middle(void)
                int day, hour, min;
                extract_day_hour_min(&day, &hour, &min);
 
-               sprintf(buf, 
 #ifdef JP
-                       "%dÆüÌÜ %2d:%02d", 
+               if (day < MAX_DAYS) sprintf(buf, "%dÆüÌÜ %2d:%02d", day, hour, min);
+               else sprintf(buf, "*****ÆüÌÜ %2d:%02d", hour, min);
 #else
-                       "Day %d %2d:%02d", 
+               if (day < MAX_DAYS) sprintf(buf, "Day %d %2d:%02d", day, hour, min);
+               else sprintf(buf, "Day ***** %2d:%02d", hour, min);
 #endif
-                       day, hour, min);
        }
        display_player_one_line(ENTRY_DAY, buf, TERM_L_GREEN);
 
@@ -1873,7 +1879,7 @@ static void display_player_middle(void)
        /* Dump mana power */
        if (p_ptr->csp >= p_ptr->msp) 
                display_player_one_line(ENTRY_SP, format("%4d/%4d", p_ptr->csp , p_ptr->msp), TERM_L_GREEN);
-       else if (p_ptr->csp > (p_ptr->msp * hitpoint_warn) / 10
+       else if (p_ptr->csp > p_ptr->msp / 5
                display_player_one_line(ENTRY_SP, format("%4d/%4d", p_ptr->csp , p_ptr->msp), TERM_YELLOW);
        else
                display_player_one_line(ENTRY_SP, format("%4d/%4d", p_ptr->csp , p_ptr->msp), TERM_RED);
@@ -2340,7 +2346,7 @@ static void player_flags(u32b flgs[TR_FLAG_SIZE])
                if (p_ptr->lev > 14)
                {
                        add_flag(flgs, TR_REGEN);
-                       if (p_ptr->pclass == CLASS_WARRIOR)
+                       if ((p_ptr->pclass == CLASS_WARRIOR) || (p_ptr->pclass == CLASS_BERSERKER))
                        {
                                add_flag(flgs, TR_SLOW_DIGEST);
                                /*
@@ -3799,17 +3805,17 @@ void display_player(int mode)
 
                        *statmsg = '\0';
 
-                       if (p_ptr->is_dead && p_ptr->total_winner)
+                       if (p_ptr->is_dead)
                        {
+                               if (p_ptr->total_winner)
+                               {
 #ifdef JP
-                               strcpy(statmsg, "¡Ä¤¢¤Ê¤¿¤Ï¾¡Íø¤Î¸å°úÂष¤¿¡£");
+                                       sprintf(statmsg, "¡Ä¤¢¤Ê¤¿¤Ï¾¡Íø¤Î¸å%s¤·¤¿¡£", streq(p_ptr->died_from, "Seppuku") ? "ÀÚÊ¢" : "°úÂà");
 #else
-                               strcpy(statmsg, "...You retired from the adventure after the winning.");
+                                       sprintf(statmsg, "...You %s after the winning.", streq(p_ptr->died_from, "Seppuku") ? "did Seppuku" : "retired from the adventure");
 #endif
-                       }
-                       else if (p_ptr->is_dead)
-                       {
-                               if (!dun_level)
+                               }
+                               else if (!dun_level)
                                {
 #ifdef JP
                                        sprintf(statmsg, "¡Ä¤¢¤Ê¤¿¤Ï%s¤Ç%s¤Ë»¦¤µ¤ì¤¿¡£", map_name(), p_ptr->died_from);
@@ -4095,7 +4101,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                                fprintf(fff, "\n  [¼ç¤Ê¥Ú¥Ã¥È]\n\n");
 #else
-                               fprintf(fff, "\n  [leading pets]\n\n");
+                               fprintf(fff, "\n  [Leading Pets]\n\n");
 #endif
                                pet = TRUE;
                        }
@@ -4114,7 +4120,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                                fprintf(fff, "\n  [¼ç¤Ê¥Ú¥Ã¥È]\n\n");
 #else
-                               fprintf(fff, "\n  [leading pets]\n\n");
+                               fprintf(fff, "\n  [Leading Pets]\n\n");
 #endif
                                pet = TRUE;
                        }
@@ -4144,7 +4150,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                strcat(p[col], "\n  [³Ø½¬ºÑ¤ß¤ÎÀÄËâË¡]\n");
 #else
-               strcat(p[col], "\n  [Learned blue magic]\n");
+               strcat(p[col], "\n  [Learned Blue Magic]\n");
 #endif
 
 
@@ -4158,7 +4164,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                                        strcat(p[col], "\n     [¥Ü¥ë¥È·¿]\n");
 #else
-                                       strcat(p[col], "\n     [Bolt  type]\n");
+                                       strcat(p[col], "\n     [Bolt  Type]\n");
 #endif
                                        break;
 
@@ -4166,7 +4172,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                                        strcat(p[col], "\n     [¥Ü¡¼¥ë·¿]\n");
 #else
-                                       strcat(p[col], "\n     [Ball  type]\n");
+                                       strcat(p[col], "\n     [Ball  Type]\n");
 #endif
                                        break;
 
@@ -4190,7 +4196,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                                        strcat(p[col], "\n     [ ¤½¤Î¾ ]\n");
 #else
-                                       strcat(p[col], "\n     [Other type]\n");
+                                       strcat(p[col], "\n     [Other Type]\n");
 #endif
                                        break;
                        }
@@ -4258,6 +4264,8 @@ errr make_character_dump(FILE *fff)
                {
                        fprintf(fff, p[i]);
                }
+
+               fputc('\n', fff);
        }
 
        fprintf(fff, "\n");
@@ -4266,7 +4274,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
        fprintf(fff, "\n  [¥¯¥¨¥¹¥È¾ðÊó]\n");
 #else
-       fprintf(fff, "\n  [Quest information]\n");
+       fprintf(fff, "\n  [Quest Information]\n");
 #endif
 
        /* Allocate Memory */
@@ -4283,6 +4291,7 @@ errr make_character_dump(FILE *fff)
        do_cmd_knowledge_quests_completed(fff, quest_num);
        fputc('\n', fff);
        do_cmd_knowledge_quests_failed(fff, quest_num);
+       fputc('\n', fff);
 
        /* Free Memory */
        C_KILL(quest_num, max_quests, int);
@@ -4292,7 +4301,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                fprintf(fff, "\n  [»à¤ÌľÁ°¤Î¥á¥Ã¥»¡¼¥¸]\n\n");
 #else
-               fprintf(fff, "\n  [Last messages]\n\n");
+               fprintf(fff, "\n  [Last Messages]\n\n");
 #endif
                for (i = MIN(message_num(), 30); i >= 0; i--)
                {
@@ -4304,7 +4313,7 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
        fprintf(fff, "\n  [¤½¤Î¾¤Î¾ðÊó]\n");
 #else
-       fprintf(fff, "\n  [Miscellaneous information]\n");
+       fprintf(fff, "\n  [Miscellaneous Information]\n");
 #endif
 
 #ifdef JP
@@ -4348,21 +4357,21 @@ errr make_character_dump(FILE *fff)
 
        if (ironman_autoscum)
 #ifdef JP
-               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß  :     ALWAYS");
+               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß:       ALWAYS");
 #else
                fprintf(fff, "\n Autoscum:           ALWAYS");
 #endif
 
        else if (auto_scum)
 #ifdef JP
-               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß  :     ON");
+               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß:       ON");
 #else
                fprintf(fff, "\n Autoscum:           ON");
 #endif
 
        else
 #ifdef JP
-               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß  :     OFF");
+               fprintf(fff, "\n ¼«Æ°Áª¤ê¹¥¤ß:       OFF");
 #else
                fprintf(fff, "\n Autoscum:           OFF");
 #endif
@@ -4399,7 +4408,7 @@ errr make_character_dump(FILE *fff)
 
        if (vanilla_town)
 #ifdef JP
-               fprintf(fff, "\n ¸µÁĤÎÄ®¤Î¤ß: ON");
+               fprintf(fff, "\n ¸µÁĤÎÄ®¤Î¤ß:       ON");
 #else
                fprintf(fff, "\n Vanilla Town:       ON");
 #endif
@@ -4424,15 +4433,15 @@ errr make_character_dump(FILE *fff)
 #ifdef JP
                fprintf(fff, "\n ³¬Ãʤò¾å¤¬¤ì¤Ê¤¤:   ON");
 #else
-               fprintf(fff, "\n Diving only:        ON");
+               fprintf(fff, "\n Diving Only:        ON");
 #endif
 
 
        if (ironman_rooms)
 #ifdef JP
-               fprintf(fff, "\n ÉáÄ̤Ǥʤ¤Éô²°¤òÀ¸À®:         ON");
+               fprintf(fff, "\n ÉáÄ̤Ǥʤ¤Éô²°:     ON");
 #else
-               fprintf(fff, "\n Unusual rooms:      ON");
+               fprintf(fff, "\n Unusual Rooms:      ON");
 #endif
 
 
@@ -4453,7 +4462,7 @@ errr make_character_dump(FILE *fff)
 
        else if (empty_levels)
 #ifdef JP
-               fprintf(fff, "\n ¥¢¥ê¡¼¥Ê:           ON");
+               fprintf(fff, "\n ¥¢¥ê¡¼¥Ê:           ENABLED");
 #else
                fprintf(fff, "\n Arena Levels:       ENABLED");
 #endif
@@ -4472,51 +4481,56 @@ errr make_character_dump(FILE *fff)
        fprintf(fff, "\n Num. Random Quests: %d", number_of_quests());
 #endif
 
-       if (p_ptr->arena_number < 0)
+       fprintf(fff, "\n");
+
+       if (!lite_town && !vanilla_town)
        {
-               if (p_ptr->arena_number <= ARENA_DEFEATED_OLD_VER)
+               if (p_ptr->arena_number < 0)
                {
+                       if (p_ptr->arena_number <= ARENA_DEFEATED_OLD_VER)
+                       {
 #ifdef JP
-                       fprintf(fff, "\n Æ®µ»¾ì: ÇÔËÌ\n");
+                               fprintf(fff, "\n Æ®µ»¾ì: ÇÔËÌ\n");
 #else
-                       fprintf(fff, "\n Arena: defeated\n");
+                               fprintf(fff, "\n Arena: Defeated\n");
 #endif
-               }
-               else
-               {
+                       }
+                       else
+                       {
 #ifdef JP
-                       fprintf(fff, "\n Æ®µ»¾ì: %d²óÀï¤Ç%s¤ÎÁ°¤ËÇÔËÌ\n", -p_ptr->arena_number,
-                               r_name + r_info[arena_info[-1 - p_ptr->arena_number].r_idx].name);
+                               fprintf(fff, "\n Æ®µ»¾ì: %d²óÀï¤Ç%s¤ÎÁ°¤ËÇÔËÌ\n", -p_ptr->arena_number,
+                                       r_name + r_info[arena_info[-1 - p_ptr->arena_number].r_idx].name);
 #else
-                       fprintf(fff, "\n Arena: defeated by %s in the %d%s fight\n",
-                               r_name + r_info[arena_info[-1 - p_ptr->arena_number].r_idx].name,
-                               -p_ptr->arena_number, get_ordinal_number_suffix(-p_ptr->arena_number));
+                               fprintf(fff, "\n Arena: Defeated by %s in the %d%s fight\n",
+                                       r_name + r_info[arena_info[-1 - p_ptr->arena_number].r_idx].name,
+                                       -p_ptr->arena_number, get_ordinal_number_suffix(-p_ptr->arena_number));
 #endif
+                       }
                }
-       }
-       else if (p_ptr->arena_number > MAX_ARENA_MONS + 2)
-       {
+               else if (p_ptr->arena_number > MAX_ARENA_MONS + 2)
+               {
 #ifdef JP
-               fprintf(fff, "\n Æ®µ»¾ì: ¿¿¤Î¥Á¥ã¥ó¥Ô¥ª¥ó\n");
+                       fprintf(fff, "\n Æ®µ»¾ì: ¿¿¤Î¥Á¥ã¥ó¥Ô¥ª¥ó\n");
 #else
-               fprintf(fff, "\n Arena: True Champion\n");
+                       fprintf(fff, "\n Arena: True Champion\n");
 #endif
-       }
-       else if (p_ptr->arena_number > MAX_ARENA_MONS - 1)
-       {
+               }
+               else if (p_ptr->arena_number > MAX_ARENA_MONS - 1)
+               {
 #ifdef JP
-               fprintf(fff, "\n Æ®µ»¾ì: ¥Á¥ã¥ó¥Ô¥ª¥ó\n");
+                       fprintf(fff, "\n Æ®µ»¾ì: ¥Á¥ã¥ó¥Ô¥ª¥ó\n");
 #else
-               fprintf(fff, "\n Arena: Champion\n");
+                       fprintf(fff, "\n Arena: Champion\n");
 #endif
-       }
-       else
-       {
+               }
+               else
+               {
 #ifdef JP
-               fprintf(fff, "\n Æ®µ»¾ì:   %2d¾¡\n", (p_ptr->arena_number > MAX_ARENA_MONS ? MAX_ARENA_MONS : p_ptr->arena_number));
+                       fprintf(fff, "\n Æ®µ»¾ì: %2d¾¡\n", (p_ptr->arena_number > MAX_ARENA_MONS ? MAX_ARENA_MONS : p_ptr->arena_number));
 #else
-               fprintf(fff, "\n Arena:   %2d victor%s\n", (p_ptr->arena_number > MAX_ARENA_MONS ? MAX_ARENA_MONS : p_ptr->arena_number), (p_ptr->arena_number>1) ? "ies" : "y");
+                       fprintf(fff, "\n Arena: %2d Victor%s\n", (p_ptr->arena_number > MAX_ARENA_MONS ? MAX_ARENA_MONS : p_ptr->arena_number), (p_ptr->arena_number > 1) ? "ies" : "y");
 #endif
+               }
        }
 
        if (p_ptr->noscore)
@@ -5490,7 +5504,7 @@ msg_print("
                                break;
                        }
 
-                       sprintf(xtmp, "%s: %s", player_name, what);
+                       sprintf(xtmp, "%s: %s", player_name, what ? what : caption);
                        my_fputs(ffp, xtmp, 80);
                        my_fputs(ffp, "\n", 80);
 
@@ -5932,11 +5946,14 @@ prt("
        (void)strcpy(p_ptr->died_from, "(alive and well)");
 #endif
 
-       /* Update some things */
-       p_ptr->update |= (PU_VIEW | PU_LITE | PU_MON_LITE | PU_DISTANCE);
+       /* HACK -- don't get sanity blast on updating view */
+       hack_mind = FALSE;
 
        /* Update stuff */
        update_stuff();
+
+       /* HACK -- reset the hackish flag */
+       hack_mind = TRUE;
 }
 
 
@@ -5984,7 +6001,7 @@ long total_points(void)
                if(max_dlv[i] > max_dl)
                        max_dl = max_dlv[i];
 
-       point_l = (p_ptr->max_exp + (100 * max_dl));
+       point_l = (p_ptr->max_max_exp + (100 * max_dl));
        point_h = point_l / 0x10000L;
        point_l = point_l % 0x10000L;
        point_h *= mult;
@@ -6018,6 +6035,7 @@ long total_points(void)
 }
 
 
+#define GRAVE_LINE_WIDTH 31
 
 /*
  * Centers a string within a 31 character string               -JWT-
@@ -6030,10 +6048,10 @@ static void center_string(char *buf, cptr str)
        i = strlen(str);
 
        /* Necessary border */
-       j = 15 - i / 2;
+       j = GRAVE_LINE_WIDTH / 2 - i / 2;
 
        /* Mega-Hack */
-       (void)sprintf(buf, "%*s%s%*s", j, "", str, 31 - i - j, "");
+       (void)sprintf(buf, "%*s%s%*s", j, "", str, GRAVE_LINE_WIDTH - i - j, "");
 }
 
 
@@ -6128,20 +6146,17 @@ static void print_tomb(void)
        /* Print the text-tombstone */
        if (!done)
        {
-               cptr    p;
-
-               char    tmp[160];
-
-               char    buf[1024];
-#ifndef JP
-               char    dummy[80];
+               cptr   p;
+               char   tmp[160];
+               char   buf[1024];
+               char   dummy[80];
+               char   *t;
+               FILE   *fp;
+               time_t ct = time((time_t)0);
+#ifdef JP
+               int    extra_line = 0;
 #endif
 
-               FILE        *fp;
-
-               time_t  ct = time((time_t)0);
-
-
                /* Clear screen */
                Term_clear();
 
@@ -6152,7 +6167,6 @@ static void print_tomb(void)
                path_build(buf, sizeof(buf), ANGBAND_DIR_FILE, "dead.txt");
 #endif
 
-
                /* Open the News file */
                fp = my_fopen(buf, "r");
 
@@ -6172,17 +6186,15 @@ static void print_tomb(void)
                        my_fclose(fp);
                }
 
-
                /* King or Queen */
                if (p_ptr->total_winner || (p_ptr->lev > PY_MAX_LEVEL))
                {
 #ifdef JP
-               /* ±ÑÆüÀÚ¤êÂؤ¨ */
-                 p= "°ÎÂç¤Ê¤ë¼Ô";
+                       /* ±ÑÆüÀÚ¤êÂؤ¨ */
+                       p= "°ÎÂç¤Ê¤ë¼Ô";
 #else
                        p = "Magnificent";
 #endif
-
                }
 
                /* Normal */
@@ -6202,47 +6214,40 @@ static void print_tomb(void)
                center_string(buf, p);
                put_str(buf, 8, 11);
 
-
                center_string(buf, cp_ptr->title);
-
                put_str(buf, 10, 11);
 
 #ifdef JP
-(void)sprintf(tmp, "¥ì¥Ù¥ë: %d", (int)p_ptr->lev);
+               (void)sprintf(tmp, "¥ì¥Ù¥ë: %d", (int)p_ptr->lev);
 #else
                (void)sprintf(tmp, "Level: %d", (int)p_ptr->lev);
 #endif
-
                center_string(buf, tmp);
                put_str(buf, 11, 11);
 
 #ifdef JP
-(void)sprintf(tmp, "·Ð¸³ÃÍ: %ld", (long)p_ptr->exp);
+               (void)sprintf(tmp, "·Ð¸³ÃÍ: %ld", (long)p_ptr->exp);
 #else
                (void)sprintf(tmp, "Exp: %ld", (long)p_ptr->exp);
 #endif
-
                center_string(buf, tmp);
                put_str(buf, 12, 11);
 
 #ifdef JP
-(void)sprintf(tmp, "½ê»ý¶â: %ld", (long)p_ptr->au);
+               (void)sprintf(tmp, "½ê»ý¶â: %ld", (long)p_ptr->au);
 #else
                (void)sprintf(tmp, "AU: %ld", (long)p_ptr->au);
 #endif
-
                center_string(buf, tmp);
                put_str(buf, 13, 11);
 
 #ifdef JP
-       /* Êè¤Ë¹ï¤à¸ÀÍÕ¤ò¥ª¥ê¥¸¥Ê¥ë¤è¤êºÙ¤«¤¯É½¼¨ */
-       if (streq(p_ptr->died_from, "ÅÓÃ潪λ"))
-       {
-               strcpy(tmp, "<¼«»¦>");
-       }
-       else
-       {
-               if (streq(p_ptr->died_from, "ripe"))
+               /* Êè¤Ë¹ï¤à¸ÀÍÕ¤ò¥ª¥ê¥¸¥Ê¥ë¤è¤êºÙ¤«¤¯É½¼¨ */
+               if (streq(p_ptr->died_from, "ÅÓÃ潪λ"))
+               {
+                       strcpy(tmp, "<¼«»¦>");
+               }
+               else if (streq(p_ptr->died_from, "ripe"))
                {
                        strcpy(tmp, "°úÂà¸å¤ËÅ·¼÷¤òÁ´¤¦");
                }
@@ -6252,71 +6257,105 @@ static void print_tomb(void)
                }
                else
                {
-                       strcpy(tmp, p_ptr->died_from);
-               }
-       }
-       center_string(buf, tmp);
-       put_str(buf, 14, 11);
-
-       if(!streq(p_ptr->died_from, "ripe") && !streq(p_ptr->died_from, "Seppuku"))
-       {
-               if( dun_level == 0 )
-               {
-                       cptr town = (p_ptr->town_num ? "³¹" : "¹ÓÌî");
-                       if(streq(p_ptr->died_from, "ÅÓÃ潪λ"))
-                       {
-                               sprintf(tmp, "%s¤Ç»à¤ó¤À", town);
-                       }
-                       else
+                       roff_to_buf(p_ptr->died_from, GRAVE_LINE_WIDTH + 1, tmp, sizeof tmp);
+                       t = tmp + strlen(tmp) + 1;
+                       if (*t)
                        {
-                               sprintf(tmp, "¤Ë%s¤Ç»¦¤µ¤ì¤¿", town);
+                               strcpy(dummy, t); /* 2nd line */
+                               if (*(t + strlen(t) + 1)) /* Does 3rd line exist? */
+                               {
+                                       for (t = dummy + strlen(dummy) - 2; iskanji(*(t - 1)); t--) /* Loop */;
+                                       strcpy(t, "¡Ä");
+                               }
+                               else if (strstr_j(tmp, "¡Ø") && suffix(dummy, "¡Ù"))
+                               {
+                                       char dummy2[80];
+                                       char *name_head = strstr_j(tmp, "¡Ø");
+                                       sprintf(dummy2, "%s%s", name_head, dummy);
+                                       if (strlen(dummy2) <= GRAVE_LINE_WIDTH)
+                                       {
+                                               strcpy(dummy, dummy2);
+                                               *name_head = '\0';
+                                       }
+                               }
+                               else if (strstr_j(tmp, "¡Ö") && suffix(dummy, "¡×"))
+                               {
+                                       char dummy2[80];
+                                       char *name_head = strstr_j(tmp, "¡Ö");
+                                       sprintf(dummy2, "%s%s", name_head, dummy);
+                                       if (strlen(dummy2) <= GRAVE_LINE_WIDTH)
+                                       {
+                                               strcpy(dummy, dummy2);
+                                               *name_head = '\0';
+                                       }
+                               }
+                               center_string(buf, dummy);
+                               put_str(buf, 15, 11);
+                               extra_line = 1;
                        }
                }
-               else
+               center_string(buf, tmp);
+               put_str(buf, 14, 11);
+
+               if (!streq(p_ptr->died_from, "ripe") && !streq(p_ptr->died_from, "Seppuku"))
                {
-                       if(streq(p_ptr->died_from, "ÅÓÃ潪λ"))
+                       if (dun_level == 0)
                        {
-                               sprintf(tmp, "Ãϲ¼ %d ³¬¤Ç»à¤ó¤À", dun_level);
+                               cptr town = p_ptr->town_num ? "³¹" : "¹ÓÌî";
+                               if (streq(p_ptr->died_from, "ÅÓÃ潪λ"))
+                               {
+                                       sprintf(tmp, "%s¤Ç»à¤ó¤À", town);
+                               }
+                               else
+                               {
+                                       sprintf(tmp, "¤Ë%s¤Ç»¦¤µ¤ì¤¿", town);
+                               }
                        }
                        else
                        {
-                               sprintf(tmp, "¤ËÃϲ¼ %d ³¬¤Ç»¦¤µ¤ì¤¿", dun_level);
+                               if (streq(p_ptr->died_from, "ÅÓÃ潪λ"))
+                               {
+                                       sprintf(tmp, "Ãϲ¼ %d ³¬¤Ç»à¤ó¤À", dun_level);
+                               }
+                               else
+                               {
+                                       sprintf(tmp, "¤ËÃϲ¼ %d ³¬¤Ç»¦¤µ¤ì¤¿", dun_level);
+                               }
                        }
+                       center_string(buf, tmp);
+                       put_str(buf, 15 + extra_line, 11);
                }
-               center_string(buf, tmp);
-               put_str(buf, 15, 11);
-       }
 #else
                (void)sprintf(tmp, "Killed on Level %d", dun_level);
                center_string(buf, tmp);
                put_str(buf, 14, 11);
 
-
-               if (strlen(p_ptr->died_from) > 24)
-               {
-                       strncpy(dummy, p_ptr->died_from, 24);
-                       dummy[24] = '\0';
-                       (void)sprintf(tmp, "by %s.", dummy);
-               }
-               else
-                       (void)sprintf(tmp, "by %s.", p_ptr->died_from);
-
+               roff_to_buf(format("by %s.", p_ptr->died_from), GRAVE_LINE_WIDTH + 1, tmp, sizeof tmp);
                center_string(buf, tmp);
                put_str(buf, 15, 11);
+               t = tmp + strlen(tmp) + 1;
+               if (*t)
+               {
+                       strcpy(dummy, t); /* 2nd line */
+                       if (*(t + strlen(t) + 1)) /* Does 3rd line exist? */
+                       {
+                               int dummy_len = strlen(dummy);
+                               strcpy(dummy + MIN(dummy_len, GRAVE_LINE_WIDTH - 3), "...");
+                       }
+                       center_string(buf, dummy);
+                       put_str(buf, 16, 11);
+               }
 #endif
 
-
-
                (void)sprintf(tmp, "%-.24s", ctime(&ct));
                center_string(buf, tmp);
                put_str(buf, 17, 11);
 
 #ifdef JP
-msg_format("¤µ¤è¤¦¤Ê¤é¡¢%s!", player_name);
+               msg_format("¤µ¤è¤¦¤Ê¤é¡¢%s!", player_name);
 #else
                msg_format("Goodbye, %s!", player_name);
 #endif
-
        }
 }
 
@@ -6965,14 +7004,19 @@ errr process_pickpref_file(cptr name)
 errr process_histpref_file(cptr name)
 {
        char buf[1024];
-
        errr err = 0;
+       bool old_character_xtra = character_xtra;
 
        /* Build the filename */
        path_build(buf, sizeof(buf), ANGBAND_DIR_USER, name);
 
+       /* Hack -- prevent modification birth options in this file */
+       character_xtra = TRUE;
+
        err = process_pref_file_aux(buf, PREF_TYPE_HISTPREF);
 
+       character_xtra = old_character_xtra;
+
        /* Result */
        return (err);
 }
@@ -7065,8 +7109,14 @@ errr counts_write(int where, u32b count)
                /* File type is "DATA" */
                FILE_TYPE(FILE_TYPE_DATA);
 
+               /* Grab permissions */
+               safe_setuid_grab();
+
                /* Create a new high score file */
                fd = fd_make(buf, 0644);
+
+               /* Drop permissions */
+               safe_setuid_drop();
        }
 
        /* Grab permissions */
@@ -7269,10 +7319,9 @@ Term_putstr(0, 0, -1, TERM_WHITE, "
  */
 static void handle_signal_abort(int sig)
 {
-       int wid, hgt, rows;
+       int wid, hgt;
 
        Term_get_size(&wid, &hgt);
-       rows = hgt - 4;
 
        /* Disable handler */
        (void)signal(sig, SIG_IGN);
@@ -7306,6 +7355,12 @@ Term_putstr(45, hgt - 1, -1, TERM_RED, "
 #endif
 
 
+#ifdef JP
+       do_cmd_write_nikki(NIKKI_GAMESTART, 0, "----¥²¡¼¥à°Û¾ï½ªÎ»----");
+#else
+       do_cmd_write_nikki(NIKKI_GAMESTART, 0, "---- Panic Save and Abort Game ----");
+#endif
+
        /* Flush output */
        Term_fresh();
 
index dccdf0d..c786a87 100644 (file)
@@ -1605,6 +1605,11 @@ static void get_inscription(char *buff, object_type *o_ptr)
 }
 
 
+#ifdef JP
+#undef strchr
+#define strchr strchr_j
+#endif
+
 
 /*
  * Creates a description of the item "o_ptr", and stores it in "out_val".
@@ -2317,22 +2322,13 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode)
                }
 
                /* Hack -- The only one of its kind */
-               else if (known && (artifact_p(o_ptr) || o_ptr->art_name))
+               else if ((known && (artifact_p(o_ptr) || o_ptr->art_name)) ||
+                        ((o_ptr->tval == TV_CORPSE) &&
+                         (r_info[o_ptr->pval].flags1 & RF1_UNIQUE)))
                {
                        t = object_desc_str(t, "The ");
                }
 
-               /* Unique corpses are unique */
-               else if (o_ptr->tval == TV_CORPSE)
-               {
-                       monster_race *r_ptr = &r_info[o_ptr->pval];
-
-                       if (r_ptr->flags1 & RF1_UNIQUE)
-                       {
-                               t = object_desc_str(t, "The ");
-                       }
-               }
-
                /* A single one, with a vowel in the modifier */
                else if ((*s == '#') && (is_a_vowel(modstr[0])))
                {
index 7221445..3965c80 100644 (file)
@@ -332,6 +332,8 @@ static void build_dead_end(void)
 
        /* Give one square */
        place_floor_bold(py, px);
+
+       wipe_generate_cave_flags();
 }
 
 
@@ -670,6 +672,11 @@ void leave_floor(void)
        /* Preserve pets and prepare to take these to next floor */
        preserve_pet();
 
+       /* Remove all mirrors without explosion */
+       remove_all_mirrors(FALSE);
+
+       if (p_ptr->special_defense & NINJA_S_STEALTH) set_superstealth(FALSE);
+
        /* New floor is not yet prepared */
        new_floor_id = 0;
 
@@ -1048,14 +1055,27 @@ void change_floor(void)
                        }
                }
 
+               /* Break connection to killed floor */
+               else
+               {
+                       if (change_floor_mode & CFM_UP)
+                               sf_ptr->lower_floor_id = 0;
+                       else if (change_floor_mode & CFM_DOWN)
+                               sf_ptr->upper_floor_id = 0;
+               }
+
                /* Maintain monsters and artifacts */
                if (loaded)
                {
                        int i;
-                       s32b absence_ticks = (turn - sf_ptr->last_visit) / TURNS_PER_TICK;
+                       s32b tmp_last_visit = sf_ptr->last_visit;
+                       s32b absence_ticks;
                        int alloc_chance = d_info[dungeon_type].max_m_alloc_chance;
                        int alloc_times;
 
+                       while (tmp_last_visit > turn) tmp_last_visit -= TURNS_PER_TICK * TOWN_DAWN;
+                       absence_ticks = (turn - tmp_last_visit) / TURNS_PER_TICK;
+
                        /* Maintain monsters */
                        for (i = 1; i < m_max; i++)
                        {
@@ -1128,7 +1148,7 @@ void change_floor(void)
                                }
                        }
 
-                       place_quest_monsters();
+                       (void)place_quest_monsters();
 
                        /* Place some random monsters */
                        alloc_times = absence_ticks / alloc_chance;
index bb35b34..a328d27 100644 (file)
@@ -185,6 +185,9 @@ static bool alloc_stairs(int feat, int num, int walls)
                                if (i < more_num) c_ptr->feat = feat+0x07;
                                else c_ptr->feat = feat;
 
+                               /* No longer a "FLOOR" */
+                               c_ptr->info &= ~(CAVE_FLOOR);
+
                                /* All done */
                                flag = TRUE;
                        }
@@ -389,7 +392,7 @@ static void try_door(int y, int x)
 
 
 /* Place quest monsters */
-void place_quest_monsters(void)
+bool place_quest_monsters(void)
 {
        int i;
 
@@ -442,11 +445,12 @@ void place_quest_monsters(void)
 
                                        if (!cave_floor_grid(c_ptr) || c_ptr->o_idx || c_ptr->m_idx) continue;
                                        if (distance(y, x, py, px) < 10) continue;
+                                       if (c_ptr->info & CAVE_ICKY) continue;
                                        else break;
                                }
 
                                /* Failed to place */
-                               if (!l) break;
+                               if (!l) return FALSE;
 
                                /* Try to place the monster */
                                if (place_monster_aux(0, y, x, quest[i].r_idx, mode))
@@ -460,8 +464,13 @@ void place_quest_monsters(void)
                                        continue;
                                }
                        }
+
+                       /* Failed to place */
+                       if (k == SAFE_MAX_ATTEMPTS) return FALSE;
                }
        }
+
+       return TRUE;
 }
 
 
@@ -1030,7 +1039,7 @@ static bool cave_gen(void)
        /* Determine the character location */
        if (!new_player_spot()) return FALSE;
 
-       place_quest_monsters();
+       if (!place_quest_monsters()) return FALSE;
 
        /* Basic "amount" */
        k = (dun_level / 3);
@@ -1091,7 +1100,7 @@ msg_format("
        }
 
        /* Put the Guardian */
-       (void)alloc_guardian();
+       if (!alloc_guardian(TRUE)) return FALSE;
 
        if (empty_level && (!one_in_(DARK_EMPTY) || (randint1(100) > dun_level)) && !(d_info[dungeon_type].flags1 & DF1_DARKNESS))
        {
@@ -1403,7 +1412,7 @@ msg_print("
                panel_col_min = cur_wid;
 
                if (cheat_room)
-                 msg_format("X:%d, Y:%d.", cur_hgt, cur_wid);
+                 msg_format("X:%d, Y:%d.", cur_wid, cur_hgt);
        }
        else
        {
@@ -1457,7 +1466,7 @@ static byte extract_feeling(void)
 /*
  * Wipe all unnecessary flags after cave generation
  */
-static void wipe_generate_cave_flags(void)
+void wipe_generate_cave_flags(void)
 {
        int x, y;
 
index 064cf95..2146d0d 100644 (file)
@@ -157,6 +157,8 @@ void place_random_door(int y, int x, bool room)
 
        /* Closed, locked, or stuck doors (400/1000) */
        else place_closed_door(y, x);
+
+       delete_monster(y, x);
 }
 
 
index 360951d..67c1b5d 100644 (file)
 
 #define place_floor_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,floor_type[randint0(100)]); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_FLOOR); \
+       set_cave_feat(Y,X,floor_type[randint0(100)]); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_FLOOR); \
+       delete_monster(Y, X); \
 }
 
 #define place_floor_grid(C) \
 { \
-  (C)->feat = floor_type[randint0(100)]; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_FLOOR; \
+       (C)->feat = floor_type[randint0(100)]; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_FLOOR; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_extra_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,fill_type[randint0(100)]); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_EXTRA); \
+       set_cave_feat(Y,X,fill_type[randint0(100)]); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_EXTRA); \
+       delete_monster(Y, X); \
 }
 
 #define place_extra_grid(C) \
 { \
-  (C)->feat = fill_type[randint0(100)]; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_EXTRA; \
+       (C)->feat = fill_type[randint0(100)]; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_EXTRA; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_extra_noperm_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,fill_type[randint0(100)]); \
-  if ((cave[Y][X].feat >= FEAT_PERM_EXTRA) && (cave[Y][X].feat <= FEAT_PERM_SOLID)) cave[Y][X].feat -= 0x04; \
-  else if (cave[Y][X].feat == FEAT_MOUNTAIN) cave[Y][X].feat = feat_wall_inner; \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_EXTRA); \
+       set_cave_feat(Y,X,fill_type[randint0(100)]); \
+       if ((cave[Y][X].feat >= FEAT_PERM_EXTRA) && (cave[Y][X].feat <= FEAT_PERM_SOLID)) cave[Y][X].feat -= 0x04; \
+       else if (cave[Y][X].feat == FEAT_MOUNTAIN) cave[Y][X].feat = feat_wall_inner; \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_EXTRA); \
+       delete_monster(Y, X); \
 }
 
 #define place_inner_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,feat_wall_inner); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_INNER); \
+       set_cave_feat(Y,X,feat_wall_inner); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_INNER); \
+       delete_monster(Y, X); \
 }
 
 #define place_inner_grid(C) \
 { \
-  (C)->feat = feat_wall_inner; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_INNER; \
+       (C)->feat = feat_wall_inner; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_INNER; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_outer_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,feat_wall_outer); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_OUTER); \
+       set_cave_feat(Y,X,feat_wall_outer); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_OUTER); \
+       delete_monster(Y, X); \
 }
 
 #define place_outer_grid(C) \
 { \
-  (C)->feat = feat_wall_outer; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_OUTER; \
+       (C)->feat = feat_wall_outer; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_OUTER; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_outer_noperm_bold(Y, X) \
 { \
-  if ((feat_wall_outer >= FEAT_PERM_EXTRA) && (feat_wall_outer <= FEAT_PERM_SOLID)) set_cave_feat(Y, X, feat_wall_outer-0x04); \
-  else if (feat_wall_outer == FEAT_MOUNTAIN) cave[Y][X].feat = feat_wall_inner; \
-  else set_cave_feat(Y,X,feat_wall_outer); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,(CAVE_OUTER | CAVE_VAULT)); \
+       if ((feat_wall_outer >= FEAT_PERM_EXTRA) && (feat_wall_outer <= FEAT_PERM_SOLID)) set_cave_feat(Y, X, feat_wall_outer-0x04); \
+       else if (feat_wall_outer == FEAT_MOUNTAIN) cave[Y][X].feat = feat_wall_inner; \
+       else set_cave_feat(Y,X,feat_wall_outer); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,(CAVE_OUTER | CAVE_VAULT)); \
+       delete_monster(Y, X); \
 }
 
 #define place_outer_noperm_grid(C) \
 { \
-  if ((feat_wall_outer >= FEAT_PERM_EXTRA) && (feat_wall_outer <= FEAT_PERM_SOLID)) (C)->feat = feat_wall_outer-0x04; \
-  else if (feat_wall_outer == FEAT_MOUNTAIN) (C)->feat = feat_wall_inner; \
-  else (C)->feat = feat_wall_outer; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= (CAVE_OUTER | CAVE_VAULT); \
+       if ((feat_wall_outer >= FEAT_PERM_EXTRA) && (feat_wall_outer <= FEAT_PERM_SOLID)) (C)->feat = feat_wall_outer-0x04; \
+       else if (feat_wall_outer == FEAT_MOUNTAIN) (C)->feat = feat_wall_inner; \
+       else (C)->feat = feat_wall_outer; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= (CAVE_OUTER | CAVE_VAULT); \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_solid_bold(Y, X) \
 { \
-  set_cave_feat(Y,X,feat_wall_solid); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_SOLID); \
+       set_cave_feat(Y,X,feat_wall_solid); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_SOLID); \
+       delete_monster(Y, X); \
 }
 
 #define place_solid_grid(C) \
 { \
-  (C)->feat = feat_wall_solid; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_SOLID; \
+       (C)->feat = feat_wall_solid; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_SOLID; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 #define place_solid_noperm_bold(Y, X) \
 { \
-  if ((cave[Y][X].info & CAVE_VAULT) && (feat_wall_solid >= FEAT_PERM_EXTRA) && (feat_wall_solid <= FEAT_PERM_SOLID)) set_cave_feat(Y, X, feat_wall_solid-0x04); \
-  else set_cave_feat(Y,X,feat_wall_solid); \
-  cave[Y][X].info &= ~(CAVE_MASK); \
-  add_cave_info(Y,X,CAVE_SOLID); \
+       if ((cave[Y][X].info & CAVE_VAULT) && (feat_wall_solid >= FEAT_PERM_EXTRA) && (feat_wall_solid <= FEAT_PERM_SOLID)) set_cave_feat(Y, X, feat_wall_solid-0x04); \
+       else set_cave_feat(Y,X,feat_wall_solid); \
+       cave[Y][X].info &= ~(CAVE_MASK); \
+       add_cave_info(Y,X,CAVE_SOLID); \
+       delete_monster(Y, X); \
 }
 
 #define place_solid_noperm_grid(C) \
 { \
-  if ((c_ptr->info & CAVE_VAULT) && (feat_wall_solid >= FEAT_PERM_EXTRA) && (feat_wall_solid <= FEAT_PERM_SOLID)) (C)->feat = feat_wall_solid-0x04; \
-  else (C)->feat = feat_wall_solid; \
-  (C)->info &= ~(CAVE_MASK); \
-  (C)->info |= CAVE_SOLID; \
+       if ((c_ptr->info & CAVE_VAULT) && (feat_wall_solid >= FEAT_PERM_EXTRA) && (feat_wall_solid <= FEAT_PERM_SOLID)) (C)->feat = feat_wall_solid-0x04; \
+       else (C)->feat = feat_wall_solid; \
+       (C)->info &= ~(CAVE_MASK); \
+       (C)->info |= CAVE_SOLID; \
+       if ((C)->m_idx) delete_monster_idx((C)->m_idx); \
 }
 
 
index bc79a96..31b6c25 100644 (file)
@@ -636,6 +636,9 @@ static bool cast_hissatsu_spell(int spell)
                                update_mon(m_idx, TRUE);
                                lite_spot(oy, ox);
                                lite_spot(ty, tx);
+
+                               if (r_info[m_ptr->r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+                                       p_ptr->update |= (PU_MON_LITE);
                        }
                }
                break;
@@ -923,7 +926,12 @@ static bool cast_hissatsu_spell(int spell)
                        m_ptr = &m_list[m_idx];
 
                        /* Monster cannot move back? */
-                       if (!monster_can_enter(ny, nx, &r_info[m_ptr->r_idx])) continue;
+                       if (!monster_can_enter(ny, nx, &r_info[m_ptr->r_idx]))
+                       {
+                               /* -more- */
+                               if (i < 2) msg_print(NULL);
+                               continue;
+                       }
 
                        cave[y][x].m_idx = 0;
                        cave[ny][nx].m_idx = m_idx;
@@ -1212,11 +1220,10 @@ prt("
                {
 #ifdef JP
                        msg_print("Éð»ÎÆ»¤È¤Ï¡¢»à¤Ì¤³¤È¤È¸«¤Ä¤±¤¿¤ê¡£");
-                       take_hit(DAMAGE_FORCE, 9999, "ÀÚÊ¢", -1);
 #else
                        msg_print("Meaning of Bushi-do is found in the death.");
-                       take_hit(DAMAGE_FORCE, 9999, "Seppuku", -1);
 #endif
+                       take_hit(DAMAGE_FORCE, 9999, "Seppuku", -1);
                }
                break;
        }
index eb75548..9a4cefd 100644 (file)
@@ -223,7 +223,7 @@ int soc_write_str(int sd, char *buf)
 #endif
 
 #if !defined(WINDOWS) && !defined(MACINTOSH)
-static jmp_buf env;
+static sigjmp_buf      env;
 static void (*sig_int_saved)(int);
 static void (*sig_alm_saved)(int);
 #endif
index ca6abe9..fa78486 100644 (file)
 
 #ifdef JP
 #undef strchr
-static char *_strchr(const char *ptr, char ch)
-{
-       for ( ; *ptr != '\0'; ++ptr)
-       {
-               if (*ptr == ch) return (char *)ptr;
-               if (iskanji(*ptr)) ++ptr;
-       }
-
-       return NULL;
-}
-#define strchr _strchr
+#define strchr strchr_j
 #endif
 /*
  * This file is used to initialize various variables and arrays for the
@@ -747,7 +737,7 @@ static cptr d_info_flags1[] =
  * Returns FALSE when there isn't enough space available to store
  * the text.
  */
-static bool add_text(u32b *offset, header *head, cptr buf)
+static bool add_text(u32b *offset, header *head, cptr buf, bool normal_text)
 {
        /* Hack -- Verify space */
        if (head->text_size + strlen(buf) + 8 > FAKE_TEXT_SIZE)
@@ -757,7 +747,34 @@ static bool add_text(u32b *offset, header *head, cptr buf)
        if (*offset == 0)
        {
                /* Advance and save the text index */
-               *offset = ++head->text_size;    
+               *offset = ++head->text_size;
+       }
+
+       /* Additional text */
+       else if (normal_text)
+       {
+               /*
+                * If neither the end of the last line nor
+                * the beginning of current line is not a space,
+                * fill up a space as a correct separator of two words.
+                */
+               if (head->text_size > 0 &&
+#ifdef JP
+                   (*(head->text_ptr + head->text_size - 1) != ' ') &&
+                   ((head->text_size == 1) || !iskanji(*(head->text_ptr + head->text_size - 2))) && 
+                   (buf[0] != ' ') && !iskanji(buf[0])
+#else
+                   (*(head->text_ptr + head->text_size - 1) != ' ') &&
+                   (buf[0] != ' ')
+#endif
+                   )
+               {
+                       /* Append a space */
+                       *(head->text_ptr + head->text_size) = ' ';
+
+                       /* Advance the index */
+                       head->text_size++;
+               }
        }
 
        /* Append chars to the text */
@@ -956,7 +973,7 @@ errr parse_v_info(char *buf, header *head)
                s = buf+2;
 
                /* Store the text */
-               if (!add_text(&v_ptr->text, head, s)) return (7);
+               if (!add_text(&v_ptr->text, head, s, FALSE)) return (7);
        }
 
        /* Process 'X' for "Extra info" (one line only) */
@@ -1441,7 +1458,7 @@ errr parse_k_info(char *buf, header *head)
 #endif
 
                /* Store the text */
-               if (!add_text(&k_ptr->text, head, s)) return (7);
+               if (!add_text(&k_ptr->text, head, s, TRUE)) return (7);
        }
 
        /* Process 'G' for "Graphics" (one line only) */
@@ -1715,7 +1732,7 @@ errr parse_a_info(char *buf, header *head)
 #endif
 
                /* Store the text */
-               if (!add_text(&a_ptr->text, head, s)) return (7);
+               if (!add_text(&a_ptr->text, head, s, TRUE)) return (7);
        }
 
 
@@ -1929,7 +1946,7 @@ errr parse_e_info(char *buf, header *head)
                s = buf+2;
 
                /* Store the text */
-               if (!add_text(&e_ptr->text, head, s)) return (7);
+               if (!add_text(&e_ptr->text, head, s, TRUE)) return (7);
        }
 
 #endif
@@ -2243,7 +2260,7 @@ errr parse_r_info(char *buf, header *head)
 #endif
 
                /* Store the text */
-               if (!add_text(&r_ptr->text, head, s)) return (7);
+               if (!add_text(&r_ptr->text, head, s, TRUE)) return (7);
        }
 
        /* Process 'G' for "Graphics" (one line only) */
@@ -2282,8 +2299,8 @@ errr parse_r_info(char *buf, header *head)
 
                /* Save the values */
                r_ptr->speed = spd;
-               r_ptr->hdice = hp1;
-               r_ptr->hside = hp2;
+               r_ptr->hdice = MAX(hp1, 1);
+               r_ptr->hside = MAX(hp2, 1);
                r_ptr->aaf = aaf;
                r_ptr->ac = ac;
                r_ptr->sleep = slp;
@@ -2679,7 +2696,7 @@ errr parse_d_info(char *buf, header *head)
 #endif
 
                /* Store the text */
-               if (!add_text(&d_ptr->text, head, s)) return (7);
+               if (!add_text(&d_ptr->text, head, s, TRUE)) return (7);
        }
 
        /* Process 'W' for "More Info" (one line only) */
@@ -3472,9 +3489,8 @@ static errr process_dungeon_file_aux(char *buf, int ymin, int xmin, int ymax, in
                                else
                                {
                                        /* Create the artifact */
-                                       create_named_art(artifact_index, *y, *x);
-
-                                       a_info[artifact_index].cur_num = 1;
+                                       if (create_named_art(artifact_index, *y, *x))
+                                               a_info[artifact_index].cur_num = 1;
                                }
                        }
 
index 0d050a3..3e08d39 100644 (file)
@@ -1596,7 +1596,7 @@ static errr init_other(void)
        C_MAKE(macro__buf, 1024, char);
 
        /* Quark variables */
-       C_MAKE(quark__str, QUARK_MAX, cptr);
+       quark_init();
 
        /* Message variables */
        C_MAKE(message__ptr, MESSAGE_MAX, u16b);
index 0c2b1bf..523b881 100644 (file)
@@ -142,98 +142,194 @@ char* strstr_j(const char* s, const char* t)
 }
 
 
+char *strchr_j(const char *ptr, char ch)
+{
+       for ( ; *ptr != '\0'; ++ptr)
+       {
+               if (*ptr == ch) return (char *)ptr;
+               if (iskanji(*ptr)) ++ptr;
+       }
+
+       return NULL;
+}
+
+
 /*
- * str¤ò´Ä¶­¤Ë¹ç¤Ã¤¿Ê¸»ú¥³¡¼¥É¤ËÊÑ´¹¤¹¤ë¡£
- * str¤ÎŤµ¤ËÀ©¸Â¤Ï¤Ê¤¤¡£
+ * Convert SJIS string to EUC string
  */
-void codeconv(char *str)
+void sjis2euc(char *str)
 {
        int i;
-       int kanji = 0, iseuc = 1;
-       int len;
        unsigned char c1, c2;
        unsigned char *tmp;
 
-       /* ´Á»ú¤¬Â¸ºß¤·¡¢¤½¤Î´Á»ú¥³¡¼¥É¤¬EUC¤«¤É¤¦¤«Ä´¤Ù¤ë¡£*/
-       for (i = 0; str[i]; i++)
+       int len = strlen(str);
+
+       C_MAKE(tmp, len+1, byte);
+
+       for (i = 0; i < len; i++)
        {
                c1 = str[i];
-               if (c1 & 0x80)  kanji = 1;
-               if ( c1>=0x80 && (c1 < 0xa1 || c1 > 0xfe)) iseuc = 0;
+               if (c1 & 0x80)
+               {
+                       i++;
+                       c2 = str[i];
+                       if (c2 >= 0x9f)
+                       {
+                               c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe0 : 0x60);
+                               c2 += 2;
+                       }
+                       else
+                       {
+                               c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe1 : 0x61);
+                               c2 += 0x60 + (c2 < 0x7f);
+                       }
+                       tmp[i - 1] = c1;
+                       tmp[i] = c2;
+               }
+               else
+                       tmp[i] = c1;
        }
+       tmp[len] = 0;
+       strcpy(str, (char *)tmp);
 
-       /* str¤ÎŤµ+1(tmp³ÎÊÝÍÑ) */
-       len = i + 1;
+       C_KILL(tmp, len+1, byte);
+}  
 
-#ifdef EUC
-       if (kanji && !iseuc)     /* SJIS -> EUC */
-       {
-               C_MAKE(tmp, len, byte);
 
-               for (i = 0; str[i]; i++)
+/*
+ * Convert EUC string to SJIS string
+ */
+void euc2sjis(char *str)
+{
+       int i;
+       unsigned char c1, c2;
+       unsigned char *tmp;
+       
+       int len = strlen(str);
+
+       C_MAKE(tmp, len+1, byte);
+
+       for (i = 0; i < len; i++)
+       {
+               c1 = str[i];
+               if (c1 & 0x80)
                {
-                       c1 = str[i];
-                       if (c1 & 0x80)
+                       i++;
+                       c2 = str[i];
+                       if (c1 % 2)
                        {
-                               i++;
-                               c2 = str[i];
-                               if (c2 >= 0x9f)
-                               {
-                                       c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe0 : 0x60);
-                                       c2 += 2;
-                               }
-                               else
-                               {
-                                       c1 = c1 * 2 - (c1 >= 0xe0 ? 0xe1 : 0x61);
-                                       c2 += 0x60 + (c2 < 0x7f);
-                               }
-                               tmp[i - 1] = c1;
-                               tmp[i] = c2;
+                               c1 = (c1 >> 1) + (c1 < 0xdf ? 0x31 : 0x71);
+                               c2 -= 0x60 + (c2 < 0xe0);
                        }
                        else
-                               tmp[i] = c1;
-               }
-               tmp[i] = '\0';
-               strcpy(str, (char *)tmp);
+                       {
+                               c1 = (c1 >> 1) + (c1 < 0xdf ? 0x30 : 0x70);
+                               c2 -= 2;
+                       }
 
-               C_KILL(tmp, len, byte);
+                       tmp[i - 1] = c1;
+                       tmp[i] = c2;
+               }
+               else
+                       tmp[i] = c1;
        }
-#endif
+       tmp[len] = 0;
+       strcpy(str, (char *)tmp);
 
-#ifdef SJIS
-       if (kanji && iseuc)     /* EUC -> SJIS */
+       C_KILL(tmp, len+1, byte);
+}  
+
+
+/*
+ * str¤ò´Ä¶­¤Ë¹ç¤Ã¤¿Ê¸»ú¥³¡¼¥É¤ËÊÑ´¹¤·¡¢ÊÑ´¹Á°¤Îʸ»ú¥³¡¼¥É¤òÊÖ¤¹¡£
+ * str¤ÎŤµ¤ËÀ©¸Â¤Ï¤Ê¤¤¡£
+ *
+ * 0: Unknown
+ * 1: ASCII (Never known to be ASCII in this function.)
+ * 2: EUC
+ * 3: SJIS
+ */
+byte codeconv(char *str)
+{
+       byte code = 0;
+       int i;
+
+       for (i = 0; str[i]; i++)
        {
-               C_MAKE(tmp, len, byte);
+               unsigned char c1;
+               unsigned char c2;
+
+               /* First byte */
+               c1 = str[i];
+
+               /* ASCII? */
+               if (!(c1 & 0x80)) continue;
+
+               /* Second byte */
+               i++;
+               c2 = str[i];
 
-               for (i = 0; str[i]; i++)
+               if (((0xa1 <= c1 && c1 <= 0xdf) || (0xfd <= c1 && c1 <= 0xfe)) &&
+                   (0xa1 <= c2 && c2 <= 0xfe))
                {
-                       c1 = str[i];
-                       if (c1 & 0x80)
+                       /* Only EUC is allowed */
+                       if (!code)
                        {
-                               i++;
-                               c2 = str[i];
-                               if (c1 % 2)
-                               {
-                                       c1 = (c1 >> 1) + (c1 < 0xdf ? 0x31 : 0x71);
-                                       c2 -= 0x60 + (c2 < 0xe0);
-                               }
-                               else
-                               {
-                                       c1 = (c1 >> 1) + (c1 < 0xdf ? 0x30 : 0x70);
-                                       c2 -= 2;
-                               }
-                               tmp[i - 1] = c1;
-                               tmp[i] = c2;
+                               /* EUC */
+                               code = 2;
+                       }
+
+                       /* Broken string? */
+                       else if (code != 2)
+                       {
+                               /* No conversion */
+                               return 0;
                        }
-                       else
-                               tmp[i] = c1;
                }
-               tmp[i] = '\0';
-               strcpy(str, tmp);
 
-               C_KILL(tmp, len, byte);
+               else if (((0x81 <= c1 && c1 <= 0x9f) &&
+                         ((0x40 <= c2 && c2 <= 0x7e) || (0x80 <= c2 && c2 <= 0xfc))) ||
+                        ((0xe0 <= c1 && c1 <= 0xfc) &&
+                         (0x40 <= c2 && c2 <= 0x7e)))
+               {
+                       /* Only SJIS is allowed */
+                       if (!code)
+                       {
+                               /* SJIS */
+                               code = 3;
+                       }
+
+                       /* Broken string? */
+                       else if (code != 3)
+                       {
+                               /* No conversion */
+                               return 0;
+                       }
+               }
        }
+
+
+       switch (code)
+       {
+#ifdef EUC
+       case 3:
+               /* SJIS -> EUC */
+               sjis2euc(str);
+               break;
 #endif
+
+#ifdef SJIS
+       case 2:
+               /* EUC -> SJIS */
+               euc2sjis(str);
+
+               break;
+#endif
+       }
+
+       /* Return kanji code */
+       return code;
 }
 
 /* Ê¸»úÎós¤Îx¥Ð¥¤¥ÈÌܤ¬´Á»ú¤Î1¥Ð¥¤¥ÈÌܤ«¤É¤¦¤«È½Äꤹ¤ë */
index 92f2190..97c7ded 100644 (file)
@@ -1,14 +1,14 @@
 static cptr kaji_tips[5] =
 {
 #ifdef JP
-       "¸½ºß»ý¤Ã¤Æ¤¤¤ë¥¨¥Ã¥»¥ó¥¹¤Î°ìÍ÷¤òɽ¼¨¤¹¤ë",
+       "¸½ºß»ý¤Ã¤Æ¤¤¤ë¥¨¥Ã¥»¥ó¥¹¤Î°ìÍ÷¤òɽ¼¨¤¹¤ë¡£",
        "¥¢¥¤¥Æ¥à¤«¤é¥¨¥Ã¥»¥ó¥¹¤ò¼è¤ê½Ð¤¹¡£¥¨¥Ã¥»¥ó¥¹¤ò¼è¤é¤ì¤¿¥¢¥¤¥Æ¥à¤ÏÁ´¤¯ËâË¡¤¬¤«¤«¤Ã¤Æ¤¤¤Ê¤¤½é´ü¾õÂÖ¤ËÌá¤ë¡£",
        "´û¤Ë¥¨¥Ã¥»¥ó¥¹¤¬Éղ䵤줿¥¢¥¤¥Æ¥à¤«¤é¥¨¥Ã¥»¥ó¥¹¤Î¤ß¾Ã¤·µî¤ë¡£¥¨¥Ã¥»¥ó¥¹¤Ï¼ê¤ËÆþ¤é¤Ê¤¤¡£",
        "¥¢¥¤¥Æ¥à¤Ë¥¨¥Ã¥»¥ó¥¹¤òÉղ乤롣´û¤Ë¥¨¥Ã¥»¥ó¥¹¤¬Éղ䵤줿¥¢¥¤¥Æ¥à¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤Ë¤ÏÉղäǤ­¤Ê¤¤¡£",
        "Éð´ï¤äËɶñ¤ò¶¯²½¤·¤¿¤ê¡¢¹¶·â¤Ç½ý¤Ä¤«¤Ê¤¤¤è¤¦¤Ë¤·¤¿¤ê¤¹¤ë¡£¥¨¥Ã¥»¥ó¥¹¤¬Éղ䵤줿¥¢¥¤¥Æ¥à¤ä¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ËÂФ·¤Æ¤â»ÈÍѤǤ­¤ë¡£",
 #else
-       "Display essences you have",
-       "Extract essences from an item. the item become non magical.",
+       "Display essences you have.",
+       "Extract essences from an item. The item become non magical.",
        "Remove added essences from an equipment which was improved before. The removed essence will be ruined.",
        "Add essences to an item. The improved items or artifacts cannot be reimprove.",
        "Enchant an equipment or make an equiment element-proofed. The improved items and artifacts can be enchanted too.",
index 8e4daf6..edc96de 100644 (file)
@@ -73,7 +73,14 @@ static u32b  v_check = 0L;
  */
 static u32b    x_check = 0L;
 
-
+/*
+ * Hack -- Japanese Kanji code
+ * 0: Unknown
+ * 1: ASCII
+ * 2: EUC
+ * 3: SJIS
+ */
+static byte kanji_code = 0;
 
 /*
  * This function determines if the version of the savefile
@@ -220,8 +227,40 @@ static void rd_string(char *str, int max)
 
        /* Terminate */
        str[max-1] = '\0';
+
+
 #ifdef JP
-       codeconv(str);
+       /* Convert Kanji code */
+       switch (kanji_code)
+       {
+#ifdef SJIS
+       case 2:
+               /* EUC to SJIS */
+               euc2sjis(str);
+               break;
+#endif
+
+#ifdef EUC
+       case 3:
+               /* SJIS to EUC */
+               sjis2euc(str);
+               break;
+#endif
+
+       case 0:
+       {
+               /* ÉÔÌÀ¤Î´Á»ú¥³¡¼¥É¤«¤é¥·¥¹¥Æ¥à¤Î´Á»ú¥³¡¼¥É¤ËÊÑ´¹ */
+               byte code = codeconv(str);
+
+               /* ´Á»ú¥³¡¼¥É¤¬È½ÌÀ¤·¤¿¤é¡¢¤½¤ì¤òµ­Ï¿ */
+               if (code) kanji_code = code;
+
+               break;
+       }
+       default:
+               /* No conversion needed */
+               break;
+       }
 #endif
 }
 
@@ -1490,6 +1529,8 @@ static void rd_extra(void)
        rd_s32b(&p_ptr->au);
 
        rd_s32b(&p_ptr->max_exp);
+       if (h_older_than(1, 5, 4, 1)) p_ptr->max_max_exp = p_ptr->max_exp;
+       else rd_s32b(&p_ptr->max_max_exp);
        rd_s32b(&p_ptr->exp);
        rd_u16b(&p_ptr->exp_frac);
 
@@ -1642,20 +1683,14 @@ static void rd_extra(void)
        rd_s16b(&p_ptr->oldpy);
        if (z_older_than(10, 3, 13) && !dun_level && !p_ptr->inside_arena) {p_ptr->oldpy = 33;p_ptr->oldpx = 131;}
 
+       /* Was p_ptr->rewards[MAX_BACT] */
        rd_s16b(&tmp16s);
-
-       if (tmp16s > MAX_BACT)
+       for (i = 0; i < tmp16s; i++)
        {
-#ifdef JP
-note(format("¤ÎÃæ", tmp16s));
-#else
-               note(format("Too many (%d) building rewards!", tmp16s));
-#endif
-
+               s16b tmp16s2;
+               rd_s16b(&tmp16s2);
        }
 
-       for (i = 0; i < tmp16s; i++) rd_s16b(&p_ptr->rewards[i]);
-
        rd_s16b(&p_ptr->mhp);
        rd_s16b(&p_ptr->chp);
        rd_u16b(&p_ptr->chp_frac);
@@ -1904,6 +1939,20 @@ note(format("
        rd_byte(&tmp8u);
        feeling = tmp8u;
 
+       switch (p_ptr->start_race)
+       {
+       case RACE_VAMPIRE:
+       case RACE_SKELETON:
+       case RACE_ZOMBIE:
+       case RACE_SPECTRE:
+               turn_limit = TURNS_PER_TICK * TOWN_DAWN * MAX_DAYS + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
+               break;
+       default:
+               turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
+               break;
+       }
+       dungeon_turn_limit = TURNS_PER_TICK * TOWN_DAWN * (MAX_DAYS - 1) + TURNS_PER_TICK * TOWN_DAWN * 3 / 4;
+
        /* Turn of last "feeling" */
        rd_s32b(&old_turn);
 
@@ -1960,7 +2009,7 @@ note(format("
 
        if (h_older_than(1, 5, 0, 2))
        {
-               C_WIPE(&party_mon[i], MAX_PARTY_MON, monster_type);
+               C_WIPE(party_mon, MAX_PARTY_MON, monster_type);
        }
        else
        {
@@ -3077,8 +3126,13 @@ static errr rd_savefile_new_aux(void)
        rd_u32b(&tmp32u);
 
        /* Later use (always zero) */
-       rd_u32b(&tmp32u);
+       rd_u16b(&tmp16u);
+
+       /* Later use (always zero) */
+       rd_byte(&tmp8u);
 
+       /* Kanji code */
+       rd_byte(&kanji_code);
 
        /* Read RNG state */
        rd_randomizer();
@@ -3800,10 +3854,31 @@ bool load_floor(saved_floor_type *sf_ptr, u32b mode)
        byte old_h_ver_minor = 0;
        byte old_h_ver_patch = 0;
        byte old_h_ver_extra = 0;
-
        bool ok = TRUE;
        char floor_savefile[1024];
 
+       byte old_kanji_code = kanji_code;
+
+       /*
+        * Temporal files are always written in system depended kanji
+        * code.
+        */
+#ifdef JP
+# ifdef EUC
+       /* EUC kanji code */
+       kanji_code = 2;
+# endif
+# ifdef SJIS
+       /* SJIS kanji code */
+       kanji_code = 3;
+# endif
+#else
+       /* ASCII */
+       kanji_code = 1;
+#endif
+
+
        /* We have one file already opened */
        if (mode & SLF_SECOND)
        {
@@ -3869,6 +3944,9 @@ bool load_floor(saved_floor_type *sf_ptr, u32b mode)
                h_ver_extra = old_h_ver_extra;
        }
 
+       /* Restore old knowledge */
+       kanji_code = old_kanji_code;
+
        /* Result */
        return ok;
 }
diff --git a/src/main-mac-carbon.c b/src/main-mac-carbon.c
deleted file mode 100644 (file)
index 07dc294..0000000
+++ /dev/null
@@ -1,5909 +0,0 @@
-/* File: main-mac.c */
-
-/* Purpose: Simple support for MACINTOSH Angband */
-
-/*
- * This file should only be compiled with the "Macintosh" version
- *
- * This file written by "Ben Harrison (benh@phial.com)".
- *
- * Some code adapted from "MacAngband 2.6.1" by Keith Randall
- *
- * Maarten Hazewinkel (mmhazewi@cs.ruu.nl) provided some initial
- * suggestions for the PowerMac port.
- *
- * Steve Linberg (slinberg@crocker.com) provided the code surrounded
- * by "USE_SFL_CODE".
- *
- * The graphics code is adapted from an extremely minimal subset of
- * the code from "Sprite World II", an amazing animation package.
- *
- * See "z-term.c" for info on the concept of the "generic terminal"
- *
- * The preference file is now a text file named "Angband preferences".
- *
- * Note that the "preference" file is now a simple text file called
- * "Angband preferences", which contains the versions information, so
- * that obsolete preference files can be ignored (this may be bad).
- *
- * Note that "init1.c", "init2.c", "load1.c", "load2.c", and "birth.c"
- * should probably be "unloaded" as soon as they are no longer needed,
- * to save space, but I do not know how to do this.
- *
- * Stange bug -- The first "ClipRect()" call crashes if the user closes
- * all the windows, switches to another application, switches back, and
- * then re-opens the main window, for example, using "command-a".
- *
- * By default, this file assumes that you will be using a 68020 or better
- * machine, running System 7 and Color Quickdraw.  In fact, the game will
- * refuse to run unless these features are available.  This allows the use
- * of a variety of interesting features such as graphics and sound.
- *
- * To create a version which can be used on 68000 machines, or on machines
- * which are not running System 7 or Color Quickdraw, simply activate the
- * "ANGBAND_LITE_MAC" compilation flag in the proper header file.  This
- * will disable all "modern" features used in this file, including support
- * for multiple sub-windows, color, graphics, and sound.
- *
- * When compiling with the "ANGBAND_LITE_MAC" flag, the "ANGBAND_LITE"
- * flag will be automatically defined, which will disable many of the
- * advanced features of the game itself, reducing the total memory usage.
- *
- * If you are never going to use "graphics" (especially if you are not
- * compiling support for graphics anyway) then you can delete the "pict"
- * resource with id "1001" with no dangerous side effects.
- */
-
-
-/*
- * Important Resources in the resource file:
- *
- *   FREF 130 = 'A271' / 'APPL' (application)
- *   FREF 129 = 'A271' / 'SAVE' (save file)
- *   FREF 130 = 'A271' / 'TEXT' (bone file, generic text file)
- *   FREF 131 = 'A271' / 'DATA' (binary image file, score file)
- *
- *   DLOG 128 = "About Angband..."
- *
- *   ALRT 128 = unused (?)
- *   ALRT 129 = "Warning..."
- *   ALRT 130 = "Are you sure you want to quit without saving?"
- *
- *   DITL 128 = body for DLOG 128
- *   DITL 129 = body for ALRT 129
- *   DITL 130 = body for ALRT 130
- *
- *   ICON 128 = "warning" icon
- *
- *   MENU 128 = apple (about, -, ...)
- *   MENU 129 = File (new, open, close, save, -, exit, quit)
- *   MENU 130 = Edit (undo, -, cut, copy, paste, clear)
- *
- *   PICT 1001 = Graphics tile set
- */
-
-
-/*
- * File name patterns:
- *   all 'APEX' files have a filename of the form "*:apex:*" (?)
- *   all 'BONE' files have a filename of the form "*:bone:*" (?)
- *   all 'DATA' files have a filename of the form "*:data:*"
- *   all 'SAVE' files have a filename of the form "*:save:*"
- *   all 'USER' files have a filename of the form "*:user:*" (?)
- *
- * Perhaps we should attempt to set the "_ftype" flag inside this file,
- * to avoid nasty file type information being spread all through the
- * rest of the code.  (?)  This might require adding hooks into the
- * "fd_open()" and "my_fopen()" functions in "util.c".  XXX XXX XXX
- */
-
-
-/*
- * Reasons for each header file:
- *
- *   angband.h = Angband header file
- *
- *   Types.h = (included anyway)
- *   Gestalt.h = gestalt code
- *   QuickDraw.h = (included anyway)
- *   OSUtils.h = (included anyway)
- *   Files.h = file code
- *   Fonts.h = font code
- *   Menus.h = menu code
- *   Dialogs.h = dialog code
- *   Windows.h = (included anyway)
- *   Palettes.h = palette code
- *   StandardFile.h = file dialog box
- *   DiskInit.h = disk initialization
- *   ToolUtils.h = HiWord() / LoWord()
- *   Desk.h = OpenDeskAcc()
- *   Devices.h = OpenDeskAcc()
- *   Events.h = event code
- *   Resources.h = resource code
- *   Controls.h = button code
- *   SegLoad.h = ExitToShell(), AppFile, etc
- *   Memory.h = SetApplLimit(), NewPtr(), etc
- *   QDOffscreen.h = GWorld code
- *   Sound.h = Sound code
- *
- * For backwards compatibility:
- *   Use GestaltEqu.h instead of Gestalt.h
- *   Add Desk.h to include simply includes Menus.h, Devices.h, Events.h
- */
-
-
-#include "angband.h"
-
-#include <Types.h>
-#include <Gestalt.h>
-#include <QuickDraw.h>
-#include <Files.h>
-#include <Fonts.h>
-#include <Menus.h>
-#include <Dialogs.h>
-#include <Windows.h>
-#include <Palettes.h>
-#include <StandardFile.h>
-#include <DiskInit.h>
-#include <ToolUtils.h>
-#include <Devices.h>
-#include <Events.h>
-#include <Resources.h>
-#include <Controls.h>
-#include <SegLoad.h>
-#include <Memory.h>
-#include <QDOffscreen.h>
-#include <Sound.h>
-#if TARGET_API_MAC_CARBON
-#include <Navigation.h>
-#endif
-
-#ifdef JP
-
-#include <Script.h>
-
-#endif
-
-/*
- * Cleaning up a couple of things to make these easier to change --AR
- */
-#ifdef JP
-#define PREF_FILE_NAME "Hengband Preferences"
-#else
-#define PREF_FILE_NAME "Hengband-E Preferences"
-#endif
-
-/*
- * Use "malloc()" instead of "NewPtr()"
- */
-/* #define USE_MALLOC */
-
-
-#if defined(powerc) || defined(__powerc)
-
-/*
- * Disable "LITE" version
- */
-# undef ANGBAND_LITE_MAC
-
-#endif
-
-
-#ifdef ANGBAND_LITE_MAC
-
-/*
- * Maximum number of windows
- */
-# define MAX_TERM_DATA 1
-
-#else /* ANGBAND_LITE_MAC */
-
-/*
- * Maximum number of windows
- */
-# define MAX_TERM_DATA 8
-
-/*
- * Activate some special code
- */
-# define USE_SFL_CODE
-
-#endif /* ANGBAND_LITE_MAC */
-
-
-
-#ifdef USE_SFL_CODE
-
-/*
- * Include the necessary header files
- */
-#include <AppleEvents.h>
-#include <EPPC.h>
-#include <Folders.h>
-
-#endif
-
-
-/*
- * Globals for MPW compilation
- */
-#ifdef MAC_MPW
-       /* Globals needed */
-       QDGlobals qd;
-       u32b _ftype;
-       u32b _fcreator;
-#endif
-
-
-
-#if 0
-
-/*
- * The Angband Color Set (0 to 15):
- *   Black, White, Slate, Orange,    Red, Blue, Green, Umber
- *   D-Gray, L-Gray, Violet, Yellow, L-Red, L-Blue, L-Green, L-Umber
- *
- * Colors 8 to 15 are basically "enhanced" versions of Colors 0 to 7.
- *
- * On the Macintosh, we use color quickdraw, and we use actual "RGB"
- * values below to choose the 16 colors.
- *
- * If we are compiled for ancient machines, we bypass color and simply
- * draw everything in white (letting "z-term.c" automatically convert
- * "black" into "wipe" calls).
- */
-static RGBColor foo[16] =
-{
-       {0x0000, 0x0000, 0x0000},       /* TERM_DARK */
-       {0xFFFF, 0xFFFF, 0xFFFF},       /* TERM_WHITE */
-       {0x8080, 0x8080, 0x8080},       /* TERM_SLATE */
-       {0xFFFF, 0x8080, 0x0000},       /* TERM_ORANGE */
-       {0xC0C0, 0x0000, 0x0000},       /* TERM_RED */
-       {0x0000, 0x8080, 0x4040},       /* TERM_GREEN */
-       {0x0000, 0x0000, 0xFFFF},       /* TERM_BLUE */
-       {0x8080, 0x4040, 0x0000},       /* TERM_UMBER */
-       {0x4040, 0x4040, 0x4040},       /* TERM_L_DARK */
-       {0xC0C0, 0xC0C0, 0xC0C0},       /* TERM_L_WHITE */
-       {0xFFFF, 0x0000, 0xFFFF},       /* TERM_VIOLET */
-       {0xFFFF, 0xFFFF, 0x0000},       /* TERM_YELLOW */
-       {0xFFFF, 0x0000, 0x0000},       /* TERM_L_RED */
-       {0x0000, 0xFFFF, 0x0000},       /* TERM_L_GREEN */
-       {0x0000, 0xFFFF, 0xFFFF},       /* TERM_L_BLUE */
-       {0xC0C0, 0x8080, 0x4040}        /* TERM_L_UMBER */
-};
-
-#endif
-
-
-/*
- * Forward declare
- */
-typedef struct term_data term_data;
-
-/*
- * Extra "term" data
- */
-struct term_data
-{
-       term            *t;
-
-       Rect            r;
-
-       WindowPtr       w;
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* Nothing */
-
-#else /* ANGBAND_LITE_MAC */
-
-       short padding;
-
-       short pixelDepth;
-
-       GWorldPtr theGWorld;
-
-       GDHandle theGDH;
-
-       GDHandle mainSWGDH;
-
-#endif /* ANGBAND_LITE_MAC */
-
-       Str15           title;
-
-       s16b            oops;
-
-       s16b            keys;
-
-       s16b            last;
-
-       s16b            mapped;
-
-       s16b            rows;
-       s16b            cols;
-
-       s16b            font_id;
-       s16b            font_size;
-       s16b            font_face;
-       s16b            font_mono;
-
-       s16b            font_o_x;
-       s16b            font_o_y;
-       s16b            font_wid;
-       s16b            font_hgt;
-
-       s16b            tile_o_x;
-       s16b            tile_o_y;
-       s16b            tile_wid;
-       s16b            tile_hgt;
-
-       s16b            size_wid;
-       s16b            size_hgt;
-
-       s16b            size_ow1;
-       s16b            size_oh1;
-       s16b            size_ow2;
-       s16b            size_oh2;
-};
-
-
-
-
-/*
- * Forward declare -- see below
- */
-static bool CheckEvents(bool wait);
-
-
-/*
- * Hack -- location of the main directory
- */
-static short app_vol;
-static long  app_dir;
-
-
-/*
- * Delay handling of double-clicked savefiles
- */
-Boolean open_when_ready = FALSE;
-
-/*
- * Delay handling of pre-emptive "quit" event
- */
-Boolean quit_when_ready = FALSE;
-
-
-/*
- * Hack -- game in progress
- */
-static int game_in_progress = 0;
-
-
-/*
- * Only do "SetPort()" when needed
- */
-static WindowPtr active = NULL;
-
-
-
-/*
- * An array of term_data's
- */
-static term_data data[MAX_TERM_DATA];
-
-
-
-/*
- * Note when "open"/"new" become valid
- */
-static bool initialized = FALSE;
-
-
-
-/*
- * CodeWarrior uses Universal Procedure Pointers
- */
-static ModalFilterUPP ynfilterUPP;
-
-#ifdef USE_SFL_CODE
-
-/*
- * Apple Event Hooks
- */
-AEEventHandlerUPP AEH_Start_UPP;
-AEEventHandlerUPP AEH_Quit_UPP;
-AEEventHandlerUPP AEH_Print_UPP;
-AEEventHandlerUPP AEH_Open_UPP;
-
-#endif
-
-/*
-       Extra Sound Mode
-*/
-
-static int ext_sound = 0;
-
-#define                SND_NON         0
-#define                SND_ATTACK      1
-#define                SND_MOVE                2
-#define                SND_TRAP                3
-#define                SND_SHOP                4
-#define                SND_ME          5
-#define                SND_CMD_ERROR   6
-
-static int soundchoice[] = {
-       SND_NON,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_TRAP,
-       SND_ATTACK,
-       SND_ME,
-       SND_ME,
-       SND_ME,
-       SND_MOVE,
-       SND_ATTACK,
-       SND_ME,
-       SND_ATTACK,
-       SND_NON,
-       SND_MOVE,
-       SND_MOVE,
-       SND_ME,
-       SND_SHOP,
-       SND_SHOP,
-       SND_SHOP,
-       SND_SHOP,
-       SND_MOVE,
-       SND_MOVE,
-       SND_MOVE,
-       SND_MOVE,
-       SND_ATTACK,
-       SND_SHOP,
-       SND_SHOP,
-       SND_ME,
-       SND_NON,
-       SND_ATTACK,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_NON,
-       SND_NON,
-       SND_ATTACK,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_TRAP,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_NON,
-       SND_CMD_ERROR,
-       SND_TRAP,
-       SND_NON,
-       SND_NON,
-       SND_TRAP,
-       SND_ATTACK,
-       SND_TRAP,
-       SND_ATTACK,
-       SND_ATTACK,
-       SND_NON,
-       SND_TRAP,
-};
-
-static int                     soundmode[8];
-
-static int ext_graf = 0;
-
-
-
-/*
- * Convert refnum+vrefnum+fname into a full file name
- * Store this filename in 'buf' (make sure it is long enough)
- * Note that 'fname' looks to be a "pascal" string
- */
-#if TARGET_API_MAC_CARBON
-static void refnum_to_name(char *buf, long refnum, short vrefnum, char *fname)
-{
-       DirInfo pb;
-       Str255 name;
-       int err;
-       int i, j;
-
-       char res[1000];
-       
-       FSSpec spec;
-       short   vref;
-    long       dirID;
-    
-       i=999;
-
-       res[i]=0; i--;
-       for (j=1; j<=fname[0]; j++)
-       {
-               res[i-fname[0]+j] = fname[j];
-       }
-       i-=fname[0];
-
-       vref = vrefnum;
-       dirID = refnum;
-
-       while (1)
-       {
-               pb.ioDrDirID=pb.ioDrParID;
-               err = FSMakeFSSpec( vref, dirID, "\p", &spec );
-               
-               if( err != noErr )
-                   break;
-               
-               res[i] = ':'; i--;
-               for (j=1; j<=spec.name[0]; j++)
-               {
-                       res[i-spec.name[0]+j] = spec.name[j];
-               }
-               i -= spec.name[0];
-               
-               dirID = spec.parID;
-       }
-
-       /* Extract the result */
-       for (j = 0, i++; res[i]; j++, i++) buf[j] = res[i];
-       buf[j] = 0;
-}
-#else
-static void refnum_to_name(char *buf, long refnum, short vrefnum, char *fname)
-{
-       DirInfo pb;
-       Str255 name;
-       int err;
-       int i, j;
-
-       char res[1000];
-
-       i=999;
-
-       res[i]=0; i--;
-       for (j=1; j<=fname[0]; j++)
-       {
-               res[i-fname[0]+j] = fname[j];
-       }
-       i-=fname[0];
-
-       pb.ioCompletion=NULL;
-       pb.ioNamePtr=name;
-       pb.ioVRefNum=vrefnum;
-       pb.ioDrParID=refnum;
-       pb.ioFDirIndex=-1;
-
-       while (1)
-       {
-               pb.ioDrDirID=pb.ioDrParID;
-               err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-               res[i] = ':'; i--;
-               for (j=1; j<=name[0]; j++)
-               {
-                       res[i-name[0]+j] = name[j];
-               }
-               i -= name[0];
-
-               if (pb.ioDrDirID == fsRtDirID) break;
-       }
-
-       /* Extract the result */
-       for (j = 0, i++; res[i]; j++, i++) buf[j] = res[i];
-       buf[j] = 0;
-}
-#endif
-
-#if TARGET_API_MAC_CARBON
-pascal OSErr FSpLocationFromFullPath(short fullPathLength,
-                                                                        const void *fullPath,
-                                                                        FSSpec *spec)
-{
-       AliasHandle     alias;
-       OSErr           result;
-       Boolean         wasChanged;
-       Str32           nullString;
-       
-       /* Create a minimal alias from the full pathname */
-       nullString[0] = 0;      /* null string to indicate no zone or server name */
-       result = NewAliasMinimalFromFullPath(fullPathLength, fullPath, nullString, nullString, &alias);
-       if ( result == noErr )
-       {
-               /* Let the Alias Manager resolve the alias. */
-               result = ResolveAlias(NULL, alias, spec, &wasChanged);
-               
-               /* work around Alias Mgr sloppy volume matching bug */
-               if ( spec->vRefNum == 0 )
-               {
-                       /* invalidate wrong FSSpec */
-                       spec->parID = 0;
-                       spec->name[0] =  0;
-                       result = nsvErr;
-               }
-               DisposeHandle((Handle)alias);   /* Free up memory used */
-       }
-       return ( result );
-}
-#endif
-
-#if 0
-
-/*
- * XXX XXX XXX Allow the system to ask us for a filename
- */
-static bool askfor_file(char *buf, int len)
-{
-       SFReply reply;
-       Str255 dflt;
-       Point topleft;
-       short vrefnum;
-       long drefnum, junk;
-
-       /* Default file name */
-       sprintf((char*)dflt + 1, "%s's description", buf);
-       dflt[0] = strlen((char*)dflt + 1);
-
-       /* Ask for a file name */
-       topleft.h=(qd.screenBits.bounds.left+qd.screenBits.bounds.right)/2-344/2;
-       topleft.v=(2*qd.screenBits.bounds.top+qd.screenBits.bounds.bottom)/3-188/2;
-       SFPutFile(topleft, "\pSelect a filename:", dflt, NULL, &reply);
-       /* StandardPutFile("\pSelect a filename:", dflt, &reply); */
-
-       /* Process */
-       if (reply.good)
-       {
-               int fc;
-
-               /* Get info */
-               GetWDInfo(reply.vRefNum, &vrefnum, &drefnum, &junk);
-
-               /* Extract the name */
-               refnum_to_name(buf, drefnum, vrefnum, (char*)reply.fName);
-
-               /* Success */
-               return (TRUE);
-       }
-
-       /* Failure */
-       return (FALSE);
-}
-
-#endif
-
-static void local_to_global( Rect *r )
-{
-       Point           temp;
-       
-       temp.h = r->left;
-       temp.v = r->top;
-       
-       LocalToGlobal( &temp );
-       
-       r->left = temp.h;
-       r->top = temp.v;
-       
-       temp.h = r->right;
-       temp.v = r->bottom;
-       
-       LocalToGlobal( &temp );
-       
-       r->right = temp.h;
-       r->bottom = temp.v;
-}
-
-static void global_to_local( Rect *r )
-{
-       Point           temp;
-       
-       temp.h = r->left;
-       temp.v = r->top;
-       
-       GlobalToLocal( &temp );
-       
-       r->left = temp.h;
-       r->top = temp.v;
-       
-       temp.h = r->right;
-       temp.v = r->bottom;
-       
-       GlobalToLocal( &temp );
-       
-       r->right = temp.h;
-       r->bottom = temp.v;
-}
-
-
-/*
- * Center a rectangle inside another rectangle
- */
-static void center_rect(Rect *r, Rect *s)
-{
-       int centerx = (s->left + s->right)/2;
-       int centery = (2*s->top + s->bottom)/3;
-       int dx = centerx - (r->right - r->left)/2 - r->left;
-       int dy = centery - (r->bottom - r->top)/2 - r->top;
-       r->left += dx;
-       r->right += dx;
-       r->top += dy;
-       r->bottom += dy;
-}
-
-
-/*
- * Convert a pascal string in place
- *
- * This function may be defined elsewhere, but since it is so
- * small, it is not worth finding the proper function name for
- * all the different platforms.
- */
-static void ptocstr(StringPtr src)
-{
-       int i;
-
-       /* Hack -- pointer */
-       char *s = (char*)(src);
-
-       /* Hack -- convert the string */
-       for (i = s[0]; i; i--, s++) s[0] = s[1];
-
-       /* Hack -- terminate the string */
-       s[0] = '\0';
-}
-
-
-#if defined(USE_SFL_CODE)
-
-
-/*
- * The following three routines (pstrcat, pstrinsert, and PathNameFromDirID)
- * were taken from the Think Reference section called "Getting a Full Pathname"
- * (under the File Manager section).  We need PathNameFromDirID to get the
- * full pathname of the opened savefile, making no assumptions about where it
- * is.
- *
- * I had to hack PathNameFromDirID a little for MetroWerks, but it's awfully
- * nice.
- */
-static void pstrcat(StringPtr dst, StringPtr src)
-{
-       /* copy string in */
-       BlockMove(src + 1, dst + *dst + 1, *src);
-
-       /* adjust length byte */
-       *dst += *src;
-}
-
-/*
- * pstrinsert - insert string 'src' at beginning of string 'dst'
- */
-static void pstrinsert(StringPtr dst, StringPtr src)
-{
-       /* make room for new string */
-       BlockMove(dst + 1, dst + *src + 1, *dst);
-
-       /* copy new string in */
-       BlockMove(src + 1, dst + 1, *src);
-
-       /* adjust length byte */
-       *dst += *src;
-}
-
-static void PathNameFromDirID(long dirID, short vRefNum, StringPtr fullPathName)
-{
-       CInfoPBRec      block;
-       Str255  directoryName;
-       OSErr   err;
-
-       fullPathName[0] = '\0';
-
-       block.dirInfo.ioDrParID = dirID;
-       block.dirInfo.ioNamePtr = directoryName;
-
-       while (1)
-       {
-               block.dirInfo.ioVRefNum = vRefNum;
-               block.dirInfo.ioFDirIndex = -1;
-               block.dirInfo.ioDrDirID = block.dirInfo.ioDrParID;
-               err = PBGetCatInfo(&block, FALSE);
-               pstrcat(directoryName, (StringPtr)"\p:");
-               pstrinsert(fullPathName, directoryName);
-               if (block.dirInfo.ioDrDirID == 2) break;
-       }
-}
-
-#endif
-
-#if TARGET_API_MAC_CARBON
-
-static OSErr ChooseFile( StringPtr filename, FSSpec selfld )
-{
-       NavReplyRecord          reply;
-       NavDialogOptions        dialogOptions;
-       NavTypeListHandle       navTypeList = NULL;
-       OSErr                           err;
-       AEDesc  deffld;
-       
-       AECreateDesc( typeFSS, &selfld, sizeof(FSSpec), &deffld );
-       
-       err = NavGetDefaultDialogOptions( &dialogOptions );
-       
-       if( err == noErr ){
-               
-               err = NavChooseFile( &deffld, &reply, &dialogOptions, NULL, NULL, NULL, navTypeList, NULL );
-               
-               if ( reply.validRecord && err == noErr ){
-                       // grab the target FSSpec from the AEDesc:
-                       FSSpec          finalFSSpec;
-                       AEKeyword       keyWord;
-                       DescType        typeCode;
-                       Size            actualSize = 0;
-
-                       // retrieve the returned selection:
-                       // there is only one selection here we get only the first AEDescList:
-                       if (( err = AEGetNthPtr( &(reply.selection), 1, typeFSS, &keyWord, &typeCode, &finalFSSpec, sizeof( FSSpec ), &actualSize )) == noErr )
-                       {
-                               refnum_to_name( filename, finalFSSpec.parID, finalFSSpec.vRefNum, finalFSSpec.name );
-                               // 'finalFSSpec' is the chosen file¥Î
-                       }
-                       
-                       err = NavDisposeReply( &reply );
-               }
-               if( navTypeList != NULL )
-               {
-                       DisposeHandle( (Handle)navTypeList );
-                       navTypeList = NULL;
-               }
-       }
-       
-       AEDisposeDesc( &deffld );
-       
-       return err;
-}
-
-#endif
-
-/*
- * Activate a given window, if necessary
- */
-static void activate(WindowPtr w)
-{
-       /* Activate */
-       if (active != w)
-       {
-               /* Activate */
-#if TARGET_API_MAC_CARBON
-               if (w) SetPortWindowPort(w);
-#else
-               if (w) SetPort(w);
-#endif
-
-               /* Remember */
-               active = w;
-       }
-}
-
-
-/*
- * Display a warning message
- */
-static void mac_warning(cptr warning)
-{
-       Str255 text;
-       int len, i;
-
-       /* Limit of 250 chars */
-       len = strlen(warning);
-       if (len > 250) len = 250;
-
-       /* Make a "Pascal" string */
-       text[0] = len;
-       for (i=0; i<len; i++) text[i+1] = warning[i];
-
-       /* Prepare the dialog box values */
-       ParamText(text, "\p", "\p", "\p");
-
-       /* Display the Alert, wait for Okay */
-       Alert(129, 0L);
-}
-
-
-
-/*** Some generic functions ***/
-
-
-#ifdef ANGBAND_LITE_MAC
-
-/*
- * Hack -- activate a color (0 to 255)
- */
-#define term_data_color(TD,A) /* Nothing */
-
-#else /* ANGBAND_LITE_MAC */
-
-/*
- * Hack -- activate a color (0 to 255)
- */
-static void term_data_color(term_data *td, int a)
-{
-       u16b rv, gv, bv;
-
-       RGBColor color;
-
-       /* Extract the R,G,B data */
-       rv = angband_color_table[a][1];
-       gv = angband_color_table[a][2];
-       bv = angband_color_table[a][3];
-
-       /* Set the color */
-       color.red = (rv | (rv << 8));
-       color.green = (gv | (gv << 8));
-       color.blue = (bv | (bv << 8));
-
-       /* Activate the color */
-       RGBForeColor(&color);
-
-       /* Memorize color */
-       td->last = a;
-}
-
-#endif /* ANGBAND_LITE_MAC */
-
-
-/*
- * Hack -- Apply and Verify the "font" info
- *
- * This should usually be followed by "term_data_check_size()"
- */
-static void term_data_check_font(term_data *td)
-{
-       int i;
-
-       FontInfo info;
-
-       WindowPtr old = active;
-
-
-       /* Activate */
-       activate(td->w);
-
-       /* Instantiate font */
-       TextFont(td->font_id);
-       TextSize(td->font_size);
-       TextFace(td->font_face);
-
-       /* Extract the font info */
-       GetFontInfo(&info);
-
-       /* Assume monospaced */
-       td->font_mono = TRUE;
-
-       /* Extract the font sizing values XXX XXX XXX */
-       td->font_wid = CharWidth('@'); /* info.widMax; */
-       td->font_hgt = info.ascent + info.descent;
-       td->font_o_x = 0;
-       td->font_o_y = info.ascent;
-
-       /* Check important characters */
-       for (i = 33; i < 127; i++)
-       {
-               /* Hack -- notice non-mono-space */
-               if (td->font_wid != CharWidth(i)) td->font_mono = FALSE;
-
-               /* Hack -- collect largest width */
-               if (td->font_wid < CharWidth(i)) td->font_wid = CharWidth(i);
-       }
-
-       /* Set default offsets */
-       td->tile_o_x = td->font_o_x;
-       td->tile_o_y = td->font_o_y;
-
-       /* Set default tile size */
-       if( td->tile_wid == 0 && td->tile_hgt == 0 ){
-               td->tile_wid = td->font_wid;
-               td->tile_hgt = td->font_hgt;
-       }
-
-       /* Re-activate the old window */
-       activate(old);
-}
-
-
-/*
- * Hack -- Apply and Verify the "size" info
- */
-static void term_data_check_size(term_data *td)
-{
-       BitMap          screen;
-       
-#if TARGET_API_MAC_CARBON
-       GetQDGlobalsScreenBits( &screen );
-#else
-       screen = qd.screenBits;
-#endif
-       /* Minimal window size */
-       if (td == &data[0])
-       {
-               /* Enforce minimal size */
-               if (td->cols < 80) td->cols = 80;
-               if (td->rows < 24) td->rows = 24;
-       }
-
-       /* Allow small windows for the rest */
-       else
-       {
-               if (td->cols < 1) td->cols = 1;
-               if (td->rows < 1) td->rows = 1;
-       }
-
-       /* Minimal tile size */
-       if (td->tile_wid < 4) td->tile_wid = 4;
-       if (td->tile_hgt < 4) td->tile_hgt = 4;
-
-       /* Default tile offsets */
-       td->tile_o_x = (td->tile_wid - td->font_wid) / 2;
-       td->tile_o_y = (td->tile_hgt - td->font_hgt) / 2;
-
-       /* Minimal tile offsets */
-       if (td->tile_o_x < 0) td->tile_o_x = 0;
-       if (td->tile_o_y < 0) td->tile_o_y = 0;
-
-       /* Apply font offsets */
-       td->tile_o_x += td->font_o_x;
-       td->tile_o_y += td->font_o_y;
-
-       /* Calculate full window size */
-       td->size_wid = td->cols * td->tile_wid + td->size_ow1 + td->size_ow2;
-       td->size_hgt = td->rows * td->tile_hgt + td->size_oh1 + td->size_oh2;
-
-       /* Verify the top */
-       if (td->r.top > screen.bounds.bottom - td->size_hgt)
-       {
-               td->r.top = screen.bounds.bottom - td->size_hgt;
-       }
-
-       /* Verify the top */
-       if (td->r.top < screen.bounds.top + 30)
-       {
-               td->r.top = screen.bounds.top + 30;
-       }
-
-       /* Verify the left */
-       if (td->r.left > screen.bounds.right - td->size_wid)
-       {
-               td->r.left = screen.bounds.right - td->size_wid;
-       }
-
-       /* Verify the left */
-       if (td->r.left < screen.bounds.left)
-       {
-               td->r.left = screen.bounds.left;
-       }
-
-       /* Calculate bottom right corner */
-       td->r.right = td->r.left + td->size_wid;
-       td->r.bottom = td->r.top + td->size_hgt;
-
-       /* Assume no graphics */
-       td->t->higher_pict = FALSE;
-       td->t->always_pict = FALSE;
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* No graphics */
-
-#else /* ANGBAND_LITE_MAC */
-
-       /* Handle graphics */
-       if (use_graphics)
-       {
-               /* Use higher_pict whenever possible */
-               if (td->font_mono) td->t->higher_pict = TRUE;
-
-               /* Use always_pict only when necessary */
-               else td->t->always_pict = TRUE;
-       }
-
-#endif /* ANGBAND_LITE_MAC */
-
-       /* Fake mono-space */
-       if (!td->font_mono ||
-           (td->font_wid != td->tile_wid) ||
-               (td->font_hgt != td->tile_hgt))
-       {
-               /* Handle fake monospace -- this is SLOW */
-               if (td->t->higher_pict) td->t->higher_pict = FALSE;
-               td->t->always_pict = TRUE;
-       }
-}
-
-/*
- * Hack -- resize a term_data
- *
- * This should normally be followed by "term_data_resize()"
- */
-static void term_data_resize(term_data *td)
-{
-       /* Actually resize the window */
-       SizeWindow(td->w, td->size_wid, td->size_hgt, 0);
-}
-
-
-
-/*
- * Hack -- redraw a term_data
- *
- * Note that "Term_redraw()" calls "TERM_XTRA_CLEAR"
- */
-static void term_data_redraw(term_data *td)
-{
-       term *old = Term;
-
-       /* Activate the term */
-       Term_activate(td->t);
-
-       /* Redraw the contents */
-       Term_redraw();
-
-       /* Flush the output */
-       Term_fresh();
-
-       /* Restore the old term */
-       Term_activate(old);
-       
-       /* No need to redraw */
-#if TARGET_API_MAC_CARBON
-       {
-               RgnHandle               theRgn = NewRgn();
-               GetWindowRegion( td->w, kWindowContentRgn, theRgn );
-               ValidWindowRgn( (WindowRef)(td->w), theRgn );
-               DisposeRgn( theRgn );
-       }
-#else
-       ValidRect(&td->w->portRect);
-#endif
-
-}
-
-
-
-
-#ifdef ANGBAND_LITE_MAC
-
-/* No graphics */
-
-#else /* ANGBAND_LITE_MAC */
-
-
-/*
- * Constants
- */
-
-static int pictID = 1001;      /* 8x8 tiles; 16x16 tiles are 1002 */
-
-static int grafWidth = 8;      /* Always equal to grafHeight */
-static int grafHeight = 8;     /* Either 8 or 16 */
-
-static bool arg_newstyle_graphics;
-static bool use_newstyle_graphics;
-
-/*
- * Forward Declare
- */
-typedef struct FrameRec FrameRec;
-
-/*
- * Frame
- *
- *     - GWorld for the frame image
- *     - Handle to pix map (saved for unlocking/locking)
- *     - Pointer to color pix map (valid only while locked)
- */
-struct FrameRec
-{
-       GWorldPtr               framePort;
-       PixMapHandle    framePixHndl;
-       PixMapPtr               framePix;
-       
-};
-
-
-/*
- * The global picture data
- */
-static FrameRec *frameP = NULL;
-
-
-/*
- * Lock a frame
- */
-static void BenSWLockFrame(FrameRec *srcFrameP)
-{
-       PixMapHandle            pixMapH;
-
-       pixMapH = GetGWorldPixMap(srcFrameP->framePort);
-       (void)LockPixels(pixMapH);
-       HLockHi((Handle)pixMapH);
-       srcFrameP->framePixHndl = pixMapH;
-#if TARGET_API_MAC_CARBON
-       srcFrameP->framePix = (PixMapPtr)*(Handle)pixMapH;
-#else
-       srcFrameP->framePix = (PixMapPtr)StripAddress(*(Handle)pixMapH);
-#endif
-       
-}
-
-
-/*
- * Unlock a frame
- */
-static void BenSWUnlockFrame(FrameRec *srcFrameP)
-{
-       if (srcFrameP->framePort != NULL)
-       {
-               HUnlock((Handle)srcFrameP->framePixHndl);
-               UnlockPixels(srcFrameP->framePixHndl);
-       }
-
-       srcFrameP->framePix = NULL;
-       
-}
-
-static OSErr BenSWCreateGWorldFromPict(
-       GWorldPtr *pictGWorld,
-       PicHandle pictH)
-{
-       OSErr err;
-       GWorldPtr saveGWorld;
-       GDHandle saveGDevice;
-       GWorldPtr tempGWorld;
-       Rect pictRect;
-       short depth;
-       GDHandle theGDH;
-
-       /* Reset */
-       *pictGWorld = NULL;
-
-       /* Get depth */
-       depth = data[0].pixelDepth;
-
-       /* Get GDH */
-       theGDH = data[0].theGDH;
-
-       /* Obtain size rectangle */
-       pictRect = (**pictH).picFrame;
-       OffsetRect(&pictRect, -pictRect.left, -pictRect.top);
-
-       /* Create a GWorld */
-       err = NewGWorld(&tempGWorld, depth, &pictRect, nil, 
-                                       theGDH, noNewDevice);
-
-       /* Success */
-       if (err != noErr)
-       {
-               return (err);
-       }
-
-       /* Save pointer */
-       *pictGWorld = tempGWorld;
-
-       /* Save GWorld */
-       GetGWorld(&saveGWorld, &saveGDevice);
-
-       /* Activate */
-       SetGWorld(tempGWorld, nil);
-
-       /* Dump the pict into the GWorld */
-       (void)LockPixels(GetGWorldPixMap(tempGWorld));
-       EraseRect(&pictRect);
-       DrawPicture(pictH, &pictRect);
-       UnlockPixels(GetGWorldPixMap(tempGWorld));
-
-       /* Restore GWorld */
-       SetGWorld(saveGWorld, saveGDevice);
-       
-       /* Success */
-       return (0);
-}
-
-
-
-
-/*
- * Init the global "frameP"
- */
-
-static errr globe_init(void)
-{
-       OSErr err;
-       
-       GWorldPtr tempPictGWorldP;
-
-       PicHandle newPictH;
-
-       /* Use window XXX XXX XXX */
-#if TARGET_API_MAC_CARBON
-       SetPortWindowPort(data[0].w);
-#else
-       SetPort(data[0].w);
-#endif
-
-
-       /* Get the pict resource */
-       newPictH = GetPicture(pictID);
-
-       /* Analyze result */
-       err = (newPictH ? 0 : -1);
-
-       /* Oops */
-       if (err == noErr)
-       {
-
-               /* Create GWorld */
-               err = BenSWCreateGWorldFromPict(&tempPictGWorldP, newPictH);
-               
-               /* Release resource */
-               ReleaseResource((Handle)newPictH);
-
-               /* Error */
-               if (err == noErr)
-               {
-                       /* Create the frame */
-                       frameP = (FrameRec*)NewPtrClear((Size)sizeof(FrameRec));
-
-                       /* Analyze result */
-                       err = (frameP ? 0 : -1);
-
-                       /* Oops */
-                       if (err == noErr)
-                       {
-                               /* Save GWorld */
-                               frameP->framePort = tempPictGWorldP;
-
-                               /* Lock it */
-                               BenSWLockFrame(frameP);
-                       }
-               }
-       }
-
-       /* Result */
-       return (err);
-}
-
-
-/*
- * Nuke the global "frameP"
- */
-static errr globe_nuke(void)
-{
-       /* Dispose */
-       if (frameP)
-       {
-               /* Unlock */
-               BenSWUnlockFrame(frameP);
-
-               /* Dispose of the GWorld */
-               DisposeGWorld(frameP->framePort);
-
-               /* Dispose of the memory */
-               DisposePtr((Ptr)frameP);
-
-               /* Forget */
-               frameP = NULL;
-       }
-
-       /* Flush events */      
-       FlushEvents(everyEvent, 0);
-
-       /* Success */
-       return (0);
-}
-
-
-#endif /* ANGBAND_LITE_MAC */
-
-
-
-/*** Support for the "z-term.c" package ***/
-
-
-/*
- * Initialize a new Term
- *
- * Note also the "window type" called "noGrowDocProc", which might be more
- * appropriate for the main "screen" window.
- *
- * Note the use of "srcCopy" mode for optimized screen writes.
- */
-static void Term_init_mac(term *t)
-{
-       term_data *td = (term_data*)(t->data);
-
-       static RGBColor black = {0x0000,0x0000,0x0000};
-       static RGBColor white = {0xFFFF,0xFFFF,0xFFFF};
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* Make the window */
-       td->w = NewWindow(0, &td->r, td->title, 0, noGrowDocProc, (WindowPtr)-1, 1, 0L);
-
-#else /* ANGBAND_LITE_MAC */
-
-       /* Make the window */
-       td->w = NewCWindow(0, &td->r, td->title, 0, documentProc, (WindowPtr)-1, 1, 0L);
-
-#endif /* ANGBAND_LITE_MAC */
-
-       /* Activate the window */
-       activate(td->w);
-
-       /* Erase behind words */
-       TextMode(srcCopy);
-
-       /* Apply and Verify */
-       term_data_check_font(td);
-       term_data_check_size(td);
-
-       /* Resize the window */
-       term_data_resize(td);
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* Prepare the colors (base colors) */
-       BackColor(blackColor);
-       ForeColor(whiteColor);
-
-#else /* ANGBAND_LITE_MAC */
-
-       /* Prepare the colors (real colors) */
-       RGBBackColor(&black);
-       RGBForeColor(&white);
-
-       /* Block */
-       {
-               Rect tempRect;
-               Rect globalRect;
-               GDHandle mainGDH;
-               GDHandle currentGDH;
-               GWorldPtr windowGWorld;
-               PixMapHandle basePixMap;
-
-               /* Obtain the rect */
-#if TARGET_API_MAC_CARBON
-               GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &globalRect );
-#else
-               globalRect = td->w->portRect;
-               LocalToGlobal((Point*)&globalRect.top);
-               LocalToGlobal((Point*)&globalRect.bottom);
-#endif
-
-               /* Obtain the proper GDH */
-               mainGDH = GetMaxDevice(&globalRect);
-
-               /* Extract GWorld and GDH */
-               GetGWorld(&windowGWorld, &currentGDH);
-
-               /* Obtain base pixmap */
-               basePixMap = (**mainGDH).gdPMap;
-
-               /* Save pixel depth */
-               td->pixelDepth = (**basePixMap).pixelSize;
-
-               /* Save Window GWorld */
-               td->theGWorld = windowGWorld;
-
-               /* Save Window GDH */
-               td->theGDH = currentGDH;
-
-               /* Save main GDH */
-               td->mainSWGDH = mainGDH;
-       }
-
-#endif /* ANGBAND_LITE_MAC */
-
-       {
-               Rect            portRect;
-
-#if TARGET_API_MAC_CARBON
-               GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
-               global_to_local( &portRect );
-#else
-               portRect = td->w->portRect;
-#endif
-               /* Clip to the window */
-               ClipRect(&portRect);
-
-               /* Erase the window */
-               EraseRect(&portRect);
-
-               /* Invalidate the window */
-#if TARGET_API_MAC_CARBON
-               InvalWindowRect((WindowRef)(td->w), (const Rect *)(&portRect));
-#else
-               InvalRect(&portRect);
-#endif
-
-               /* Display the window if needed */
-               if (td->mapped) ShowWindow(td->w);
-
-               /* Hack -- set "mapped" flag */
-               t->mapped_flag = td->mapped;
-
-               /* Forget color */
-               td->last = -1;
-       }
-       /* Oops */
-/*     if (err == noErr)
-       {
-               
-       }*/
-}
-
-
-
-/*
- * Nuke an old Term
- */
-static void Term_nuke_mac(term *t)
-{
-
-#pragma unused (t)
-
-       /* XXX */
-}
-
-
-
-/*
- * Unused
- */
-static errr Term_user_mac(int n)
-{
-
-#pragma unused (n)
-
-       /* Success */
-       return (0);
-}
-
-
-
-/*
- * React to changes
- */
-static errr Term_xtra_mac_react(void)
-{
-       term_data *td = (term_data*)(Term->data);
-
-
-       /* Reset color */
-       td->last = -1;
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* Nothing */
-       
-#else /* ANGBAND_LITE_MAC */
-
-       /* Handle sound */
-       if (use_sound != arg_sound)
-       {
-               /* Apply request */
-               use_sound = arg_sound;
-       }
-
-       
-       /* Handle transparency */
-       if (use_newstyle_graphics != arg_newstyle_graphics)
-       {
-               globe_nuke();
-
-               if (globe_init() != 0)
-               {
-                       plog("Cannot initialize graphics!");
-                       arg_graphics = FALSE;
-                       arg_newstyle_graphics = FALSE;
-               }
-
-               /* Apply request */
-               use_newstyle_graphics = arg_newstyle_graphics;
-
-               /* Apply and Verify */
-               term_data_check_size(td);
-
-               /* Resize the window */
-               term_data_resize(td);
-               /* Reset visuals */
-               reset_visuals();
-       }
-       
-       /* Handle graphics */
-       if (use_graphics != arg_graphics)
-       {
-               /* Initialize graphics */
-
-               if (!use_graphics && !frameP && (globe_init() != 0))
-               {
-#ifdef JP
-                       plog("¥°¥é¥Õ¥£¥Ã¥¯¤Î½é´ü²½¤Ï½ÐÍè¤Þ¤»¤ó¤Ç¤·¤¿.");
-#else
-                       plog("Cannot initialize graphics!");
-#endif
-                       arg_graphics = FALSE;
-               }
-
-               /* Apply request */
-               use_graphics = arg_graphics;
-
-               /* Apply and Verify */
-               term_data_check_size(td);
-
-               /* Resize the window */
-               term_data_resize(td);
-
-               /* Reset visuals */
-               reset_visuals();
-       }
-
-#endif /* ANGBAND_LITE_MAC */
-
-       /* Success */
-       return (0);
-}
-
-
-/*
- * Do a "special thing"
- */
-static errr Term_xtra_mac(int n, int v)
-{
-       term_data *td = (term_data*)(Term->data);
-
-       Rect r;
-
-       /* Analyze */
-       switch (n)
-       {
-               /* Make a noise */
-               case TERM_XTRA_NOISE:
-               {
-                       /* Make a noise */
-                       SysBeep(1);
-
-                       /* Success */
-                       return (0);
-               }
-
-#ifdef ANGBAND_LITE_MAC
-
-               /* Nothing */
-
-#else /* ANGBAND_LITE_MAC */
-
-               /* Make a sound */
-               case TERM_XTRA_SOUND:
-               {
-                       Handle handle;
-
-                       Str255 sound;
-
-#if 0
-                       short oldResFile;
-                       short newResFile;
-
-                       /* Open the resource file */
-                       oldResFile = CurResFile();
-                       newResFile = OpenResFile(sound);
-
-                       /* Close the resource file */
-                       CloseResFile(newResFile);
-                       UseResFile(oldResFile);
-#endif
-
-                       /* Get the proper sound name */
-                       sprintf((char*)sound + 1, "%.16s.wav", angband_sound_name[v]);
-                       sound[0] = strlen((char*)sound + 1);
-
-                       /* Obtain resource XXX XXX XXX */
-                       handle = Get1NamedResource('snd ', sound);
-                       if( handle == NULL || ext_sound )
-                               handle = GetNamedResource('snd ', sound);
-                       
-                       /* Oops */
-                       if (handle && soundmode[soundchoice[v]] == true)
-                       {
-                               /* Load and Lock */
-                               LoadResource(handle);
-                               HLock(handle);
-
-                               /* Play sound (wait for completion) */
-                               SndPlay(nil, (SndListHandle)handle, true);
-
-                               /* Unlock and release */
-                               HUnlock(handle);
-                               ReleaseResource(handle);
-                       }
-                       /* Success */
-                       return (0);
-               }
-
-#endif /* ANGBAND_LITE_MAC */
-
-               /* Process random events */
-               case TERM_XTRA_BORED:
-               {
-                       /* Process an event */
-                       (void)CheckEvents(FALSE);
-
-                       /* Success */
-                       return (0);
-               }
-
-               /* Process pending events */
-               case TERM_XTRA_EVENT:
-               {
-                       /* Process an event */
-                       (void)CheckEvents(v);
-
-                       /* Success */
-                       return (0);
-               }
-
-               /* Flush all pending events (if any) */
-               case TERM_XTRA_FLUSH:
-               {
-                       /* Hack -- flush all events */
-                       while (CheckEvents(TRUE)) /* loop */;
-
-                       /* Success */
-                       return (0);
-               }
-
-               /* Hack -- Change the "soft level" */
-               case TERM_XTRA_LEVEL:
-               {
-                       /* Activate if requested */
-                       if (v) activate(td->w);
-
-                       /* Success */
-                       return (0);
-               }
-
-               /* Clear the screen */
-               case TERM_XTRA_CLEAR:
-               {
-                       Rect            portRect;
-                       
-#if TARGET_API_MAC_CARBON
-                       GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
-                       global_to_local( &portRect );
-#else
-                       portRect = td->w->portRect;
-#endif
-
-                       /* No clipping XXX XXX XXX */
-                       ClipRect(&portRect);
-
-                       /* Erase the window */
-                       EraseRect(&portRect);
-
-                       /* Set the color */
-                       term_data_color(td, TERM_WHITE);
-
-                       /* Frame the window in white */
-                       MoveTo(0, 0);
-                       LineTo(0, td->size_hgt-1);
-                       LineTo(td->size_wid-1, td->size_hgt-1);
-                       LineTo(td->size_wid-1, 0);
-
-                       /* Clip to the new size */
-                       r.left = portRect.left + td->size_ow1;
-                       r.top = portRect.top + td->size_oh1;
-                       r.right = portRect.right - td->size_ow2;
-                       r.bottom = portRect.bottom - td->size_oh2;
-                       ClipRect(&r);
-
-                       /* Success */
-                       return (0);
-               }
-
-               /* React to changes */
-               case TERM_XTRA_REACT:
-               {
-                       /* React to changes */
-                       return (Term_xtra_mac_react());
-               }
-
-               /* Delay (milliseconds) */
-               case TERM_XTRA_DELAY:
-               {
-                       /* If needed */
-                       if (v > 0)
-                       {
-#if TARGET_API_MAC_CARBON
-                               EventRecord tmp;
-                               UInt32 ticks;
-
-                               /* Convert millisecs to ticks */
-                               ticks = (v * 60L) / 1000;
-
-                               /*
-                                * Hack? - Put the programme into sleep.
-                                * No events match ~everyEvent, so nothing
-                                * should be lost in Angband's event queue.
-                                * Even if ticks are 0, it's worth calling for
-                                * the above mentioned reasons.
-                                */
-                               WaitNextEvent(~everyEvent, &tmp, ticks, nil);
-#else
-                               long m = TickCount() + (v * 60L) / 1000;
-
-                               /* Wait for it */
-                               while (TickCount() < m) /* loop */;
-#endif
-                       }
-
-                       /* Success */
-                       return (0);
-               }
-       }
-
-       /* Oops */
-       return (1);
-}
-
-
-
-/*
- * Low level graphics (Assumes valid input).
- * Draw a "cursor" at (x,y), using a "yellow box".
- * We are allowed to use "Term_grab()" to determine
- * the current screen contents (for inverting, etc).
- */
-static errr Term_curs_mac(int x, int y)
-{
-       Rect r;
-
-       term_data *td = (term_data*)(Term->data);
-
-       /* Set the color */
-       term_data_color(td, TERM_YELLOW);
-
-       /* Frame the grid */
-       r.left = x * td->tile_wid + td->size_ow1;
-       r.right = r.left + td->tile_wid;
-       r.top = y * td->tile_hgt + td->size_oh1;
-       r.bottom = r.top + td->tile_hgt;
-
-#ifdef JP
-       if (x + 1 < Term->wid &&
-           ((use_bigtile && Term->old->a[y][x+1] == 255)
-            || (iskanji(Term->old->c[y][x]) && !(Term->old->a[y][x] & 0x80))))
-#else
-       if (use_bigtile && x + 1 < Term->wid && Term->old->a[y][x+1] == 255)
-#endif
-               r.right += td->tile_wid;
-
-       FrameRect(&r);
-
-       /* Success */
-       return (0);
-}
-
-
-/*
- * Low level graphics (Assumes valid input)
- *
- * Erase "n" characters starting at (x,y)
- */
-static errr Term_wipe_mac(int x, int y, int n)
-{
-       Rect r;
-
-       term_data *td = (term_data*)(Term->data);
-
-       /* Erase the block of characters */
-       r.left = x * td->tile_wid + td->size_ow1;
-       r.right = r.left + n * td->tile_wid;
-       r.top = y * td->tile_hgt + td->size_oh1;
-       r.bottom = r.top + td->tile_hgt;
-       EraseRect(&r);
-
-       /* Success */
-       return (0);
-}
-
-
-/*
- * Low level graphics.  Assumes valid input.
- *
- * Draw several ("n") chars, with an attr, at a given location.
- */
-static errr Term_text_mac(int x, int y, int n, byte a, const char *cp)
-{
-       int xp, yp;
-
-       term_data *td = (term_data*)(Term->data);
-
-       /* Set the color */
-       term_data_color(td, (a & 0x0F));
-
-       /* Starting pixel */
-       xp = x * td->tile_wid + td->tile_o_x + td->size_ow1;
-       yp = y * td->tile_hgt + td->tile_o_y + td->size_oh1;
-
-       /* Move to the correct location */
-       MoveTo(xp, yp);
-
-       /* Draw the character */
-       if (n == 1) DrawChar(*cp);
-
-       /* Draw the string */
-       else DrawText(cp, 0, n);
-
-       /* Success */
-       return (0);
-}
-
-
-/*
- * Low level graphics (Assumes valid input)
- *
- * Erase "n" characters starting at (x,y)
- */
-#ifdef USE_TRANSPARENCY
-static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp,
-                         const byte *tap, const char *tcp)
-#else
-static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
-#endif
-{
-       int i;
-       Rect r2;
-       term_data *td = (term_data*)(Term->data);
-       GDHandle saveGDevice;
-       GWorldPtr saveGWorld;
-       
-       PixMapHandle PortPix;
-       
-       /* Save GWorld */
-       GetGWorld(&saveGWorld, &saveGDevice);
-       
-       r2.left = x * td->tile_wid + td->size_ow1;
-       r2.right = r2.left + td->tile_wid;
-       r2.top = y * td->tile_hgt + td->size_oh1;
-       r2.bottom = r2.top + td->tile_hgt;
-       
-       if( n > 1 )
-       {
-               /* Instantiate font */
-               TextFont(td->font_id);
-               TextSize(td->font_size);
-               TextFace(td->font_face);
-               
-               /* Restore colors */
-               BackColor(blackColor);
-               ForeColor(whiteColor);
-       }
-       else
-       {
-               /* Destination rectangle */
-/*             r2.left = x * td->tile_wid + td->size_ow1;
-               r2.top = y * td->tile_hgt + td->size_oh1;
-               r2.bottom = r2.top + td->tile_hgt;*/
-               
-       }
-               
-       /* Scan the input */
-       for (i = 0; i < n; i++)
-       {
-               bool done = FALSE;
-
-               byte a = ap[i];
-               char c = cp[i];
-
-               /* Second byte of bigtile */
-               if (use_bigtile && a == 255)
-               {
-                       /* Advance */
-                       r2.left += td->tile_wid;
-
-                       continue;
-               }
-
-               /* Prepare right of rectangle now */
-               r2.right = r2.left + td->tile_wid;
-
-#ifdef ANGBAND_LITE_MAC
-
-               /* No graphics */
-
-#else /* ANGBAND_LITE_MAC */
-
-               /* Graphics -- if Available and Needed */
-               if (use_graphics && ((byte)a & 0x80) && ((byte)c & 0x80))
-               {
-#if TARGET_API_MAC_CARBON
-                       PixMapHandle    srcBitMap = GetGWorldPixMap(frameP->framePort);
-                       PixMapHandle    destBitMap;
-#else
-                       BitMapPtr srcBitMap = (BitMapPtr)(frameP->framePix);
-                       BitMapPtr destBitMap;
-#endif
-                               
-                       int col, row;
-                       Rect r1;
-
-#ifdef USE_TRANSPARENCY
-                       Rect terrain_r;
-                       bool terrain_flag = FALSE;
-                       byte ta = tap[i];
-                       char tc = tcp[i];
-
-                       if ((a != ta || c != tc) &&
-                           ((byte)ta & 0x80) && ((byte)tc & 0x80))
-                       {
-                               /* Row and Col */
-                               row = ((byte)ta & 0x7F);
-                               col = ((byte)tc & 0x7F);
-
-                               /* Terrain Source rectangle */
-                               terrain_r.left = col * grafWidth;
-                               terrain_r.top = row * grafHeight;
-                               terrain_r.right = terrain_r.left + grafWidth;
-                               terrain_r.bottom = terrain_r.top + grafHeight;
-
-                               terrain_flag = TRUE;
-                       }
-#endif
-
-                       /* Row and Col */
-                       row = ((byte)a & 0x7F);
-                       col = ((byte)c & 0x7F);
-                       
-                       /* Source rectangle */
-                       r1.left = col * grafWidth;
-                       r1.top = row * grafHeight;
-                       r1.right = r1.left + grafWidth;
-                       r1.bottom = r1.top + grafHeight;
-
-                       /* Hardwire CopyBits */
-                       BackColor(whiteColor);
-                       ForeColor(blackColor);
-
-                       /* Draw the picture */
-#if TARGET_API_MAC_CARBON
-                       destBitMap = GetPortPixMap(GetWindowPort( td->w ));
-#else
-                       destBitMap = (BitMapPtr)&(td->w->portBits);
-#endif
-                       if (use_bigtile) r2.right += td->tile_wid;
-
-#ifdef USE_TRANSPARENCY
-                       if (terrain_flag)
-                       {
-                               /*
-                                * Source mode const = srcCopy:
-                                *
-                                * determine how close the color of the source
-                                * pixel is to black, and assign this relative
-                                * amount of foreground color to the
-                                * destination pixel; determine how close the
-                                * color of the source pixel is to white, and
-                                * assign this relative amount of background
-                                * color to the destination pixel
-                                */
-#if TARGET_API_MAC_CARBON
-                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &terrain_r, &r2, srcCopy, NULL);
-#else
-                               CopyBits( srcBitMap, destBitMap, &terrain_r, &r2, srcCopy, NULL );
-#endif
-                               /*
-                                * Draw transparent tile
-                                * BackColor is ignored and the destination is
-                                * left untouched
-                                */
-                               BackColor(blackColor);
-#if TARGET_API_MAC_CARBON
-                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &r1, &r2, transparent, NULL);
-#else
-                               CopyBits( srcBitMap, destBitMap, &r1, &r2, transparent, NULL );
-#endif
-                       }
-                       else
-#endif /* USE_TRANSPARENCY */
-                       {
-#if TARGET_API_MAC_CARBON
-                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &r1, &r2, srcCopy, NULL);
-#else
-                               CopyBits( srcBitMap, destBitMap, &r1, &r2, srcCopy, NULL );
-#endif
-                       }
-
-                       /* Restore colors */
-                       BackColor(blackColor);
-                       ForeColor(whiteColor);
-
-                       /* Forget color */
-                       td->last = -1;
-
-                       /* Done */
-                       done = TRUE;
-               }
-
-#endif /* ANGBAND_LITE_MAC */
-
-               /* Normal */
-               if (!done)
-               {
-                       int xp, yp;
-
-                       /* Set the color */
-                       term_data_color(td, (a & 0x0F));
-                       
-                       /* Starting pixel */
-                       xp = r2.left + td->tile_o_x;
-                       yp = r2.top + td->tile_o_y;
-                       
-                       /* Move to the correct location */
-                       MoveTo(xp, yp);
-
-#ifdef JP
-                       if (iskanji(c))
-                       {
-                               /* Double width rectangle */
-                               r2.right += td->tile_wid;
-
-                               /* Erase */
-                               EraseRect(&r2);
-
-                               /* Draw the character */
-                               DrawText(cp, i, 2);
-                               
-                               i++;
-                               
-                               r2.left += td->tile_wid;
-                       }
-                       else
-#endif
-                       {
-                               /* Erase */
-                               EraseRect(&r2);
-
-                               /* Draw the character */
-                               DrawChar(c);
-                       }
-               }
-
-               /* Advance */
-               r2.left += td->tile_wid;
-       }
-               
-       /* Success */
-       return (0);
-}
-
-
-/*
- * Create and initialize window number "i"
- */
-static void term_data_link(int i)
-{
-       term *old = Term;
-
-       term_data *td = &data[i];
-
-       /* Only once */
-       if (td->t) return;
-
-       /* Require mapped */
-       if (!td->mapped) return;
-
-       /* Allocate */
-       MAKE(td->t, term);
-
-       /* Initialize the term */
-       term_init(td->t, td->cols, td->rows, td->keys);
-
-       /* Use a "software" cursor */
-       td->t->soft_cursor = TRUE;
-
-       /* Erase with "white space" */
-       td->t->attr_blank = TERM_WHITE;
-       td->t->char_blank = ' ';
-
-       /* Prepare the init/nuke hooks */
-       td->t->init_hook = Term_init_mac;
-       td->t->nuke_hook = Term_nuke_mac;
-
-       /* Prepare the function hooks */
-       td->t->user_hook = Term_user_mac;
-       td->t->xtra_hook = Term_xtra_mac;
-       td->t->wipe_hook = Term_wipe_mac;
-       td->t->curs_hook = Term_curs_mac;
-       td->t->text_hook = Term_text_mac;
-       td->t->pict_hook = Term_pict_mac;
-
-       /* Link the local structure */
-       td->t->data = (vptr)(td);
-
-       /* Activate it */
-       Term_activate(td->t);
-
-       /* Global pointer */
-       angband_term[i] = td->t;
-
-       /* Activate old */
-       Term_activate(old);
-}
-
-
-
-
-/*
- * Set the "current working directory" (also known as the "default"
- * volume/directory) to the location of the current application.
- *
- * Code by: Maarten Hazewinkel (mmhazewi@cs.ruu.nl)
- *
- * This function does not appear to work correctly with System 6.
- */
-static void SetupAppDir(void)
-{
-       FCBPBRec fcbBlock;
-       OSErr err = noErr;
-       char errString[100];
-
-       /* Get the location of the Angband executable */
-       fcbBlock.ioCompletion = NULL;
-       fcbBlock.ioNamePtr = NULL;
-       fcbBlock.ioVRefNum = 0;
-       fcbBlock.ioRefNum = CurResFile();
-       fcbBlock.ioFCBIndx = 0;
-       err = PBGetFCBInfo(&fcbBlock, FALSE);
-       if (err != noErr)
-       {
-#ifdef JP
-               sprintf(errString, "PBGetFCBInfo ¥¨¥é¡¼ #%d.\r ½ªÎ»¤·¤Þ¤¹.", err);
-#else
-               sprintf(errString, "Fatal PBGetFCBInfo Error #%d.\r Exiting.", err);
-#endif
-               mac_warning(errString);
-               ExitToShell();
-       }
-
-       /* Extract the Vol and Dir */
-       app_vol = fcbBlock.ioFCBVRefNum;
-       app_dir = fcbBlock.ioFCBParID;
-
-       /* Set the current working directory to that location */
-       err = HSetVol(NULL, app_vol, app_dir);
-       if (err != noErr)
-       {
-#ifdef JP
-               sprintf(errString, "HSetVol ¥¨¥é¡¼ #%d.\r ½ªÎ»¤·¤Þ¤¹.", err);
-#else
-               sprintf(errString, "Fatal HSetVol Error #%d.\r Exiting.", err);
-#endif
-               mac_warning(errString);
-               ExitToShell();
-       }
-}
-
-
-
-
-/*
- * Global "preference" file pointer
- */
-static FILE *fff;
-
-/*
- * Read a "short" from the file
- */
-static int getshort(void)
-{
-       int x = 0;
-       char buf[256];
-       if (0 == my_fgets(fff, buf, sizeof(buf))) x = atoi(buf);
-       return (x);
-}
-
-/*
- * Dump a "short" to the file
- */
-static void putshort(int x)
-{
-       fprintf(fff, "%d\n", x);
-}
-
-
-
-/*
- * Write the "preference" data to the current "file"
- */
-static void save_prefs(void)
-{
-       int i;
-
-       term_data *td;
-
-
-       /*** The current version ***/
-
-       putshort(FAKE_VERSION);
-       putshort(FAKE_VER_MAJOR);
-       putshort(FAKE_VER_MINOR);
-       putshort(FAKE_VER_PATCH);
-
-       putshort(arg_sound);
-       putshort(arg_graphics);
-       putshort(arg_newstyle_graphics);
-       putshort(arg_bigtile);
-       
-       /* SoundMode */
-       for( i = 0 ; i < 7 ; i++ )
-               putshort(soundmode[i]);
-       
-       /* Dump */
-       for (i = 0; i < MAX_TERM_DATA; i++)
-       {
-               /* Access */
-               td = &data[i];
-
-               putshort(td->mapped);
-
-               putshort(td->font_id);
-               putshort(td->font_size);
-               putshort(td->font_face);
-
-               putshort(td->tile_wid);
-               putshort(td->tile_hgt);
-
-               putshort(td->cols);
-               putshort(td->rows);
-
-               putshort(td->r.left);
-               putshort(td->r.top);
-       }
-}
-
-
-/*
- * Load the preferences from the current "file"
- *
- * XXX XXX XXX Being able to undefine various windows is
- * slightly bizarre, and may cause problems.
- */
-static void load_prefs(void)
-{
-       int i;
-
-       int old_version, old_major, old_minor, old_patch;
-
-       term_data *td;
-       MenuHandle m;
-
-       /*** Version information ***/
-
-       /* Preferences version */
-       old_version = getshort();
-       old_major = getshort();
-       old_minor = getshort();
-       old_patch = getshort();
-
-       /* Hack -- Verify or ignore */
-       if ((old_version != FAKE_VERSION) ||
-           (old_major != FAKE_VER_MAJOR) ||
-           (old_minor != FAKE_VER_MINOR) ||
-           (old_patch != FAKE_VER_PATCH))
-       {
-               /* Message */
-               #ifdef JP
-               mac_warning("¸Å¤¤½é´üÀßÄê¥Õ¥¡¥¤¥ë¤ò̵»ë¤·¤Þ¤¹.");
-               #else
-               mac_warning("Ignoring old preferences.");
-               #endif
-               /* Ignore */
-               return;
-       }
-
-       arg_sound = getshort();
-       arg_graphics = getshort();
-       arg_newstyle_graphics = getshort();
-       use_newstyle_graphics = arg_newstyle_graphics;
-       
-       if (use_newstyle_graphics == true)
-       {
-               ANGBAND_GRAF = "new";
-               arg_newstyle_graphics = true;
-               grafWidth = grafHeight = 16;
-               pictID = 1002;
-       }
-       else
-       {
-               ANGBAND_GRAF = "old";
-               arg_newstyle_graphics = false;
-               grafWidth = grafHeight = 8;
-               pictID = 1001;
-       }
-
-       arg_bigtile = getshort();
-       use_bigtile = arg_bigtile;
-       
-       /* SoundMode */
-       for( i = 0 ; i < 7 ; i++ )
-               soundmode[i] = getshort();
-       
-       /* Special menu */
-       m = GetMenuHandle(134);
-
-#if TARGET_API_MAC_CARBON
-       /* Item "arg_sound" */
-       CheckMenuItem(m, 1, arg_sound);
-
-       /* Item "arg_graphics" */
-       CheckMenuItem(m, 2, arg_graphics);
-       
-       /* Item "arg_newstyle_graphics"*/
-       CheckMenuItem(m, 8, arg_newstyle_graphics);
-#else
-       /* Item "arg_sound" */
-       CheckItem(m, 1, arg_sound);
-
-       /* Item "arg_graphics" */
-       CheckItem(m, 2, arg_graphics);
-       
-       /* Item "arg_newstyle_graphics"*/
-       CheckItem(m, 8, arg_newstyle_graphics);
-#endif
-
-       /* Windows */
-       for (i = 0; i < MAX_TERM_DATA; i++)
-       {
-               /* Access */
-               td = &data[i];
-
-               td->mapped = getshort();
-
-               td->font_id = getshort();
-               td->font_size = getshort();
-               td->font_face = getshort();
-
-               td->tile_wid = getshort();
-               td->tile_hgt = getshort();
-
-               td->cols = getshort();
-               td->rows = getshort();
-
-               td->r.left = getshort();
-               td->r.top = getshort();
-
-               /* Done */
-               if (feof(fff)) break;
-       }
-}
-
-
-
-
-/*
- * Hack -- default data for a window
- */
-static void term_data_hack(term_data *td)
-{
-       short fid;
-
-#ifdef JP
-#if TARGET_API_MAC_CARBON
-       /* Default to Osaka font (Japanese) */
-       fid = FMGetFontFamilyFromName( "\pOsaka¡ÝÅùÉý" );
-#else
-       GetFNum( "\pÅùÉýÌÀÄ«", &fid);
-       SetFScaleDisable( true );
-#endif
-#else
-       /* Default to Monaco font */
-       GetFNum("\pmonaco", &fid);
-#endif
-
-       /* Wipe it */
-       WIPE(td, term_data);
-
-       /* No color */
-       td->last = -1;
-
-       /* Default borders */
-       td->size_ow1 = 2;
-       td->size_ow2 = 2;
-       td->size_oh2 = 2;
-
-       /* Start hidden */
-       td->mapped = FALSE;
-
-       /* Default font */
-       td->font_id = fid;
-
-       /* Default font size */
-       td->font_size = 12;
-
-       /* Default font face */
-       td->font_face = 0;
-
-       /* Default size */
-       td->rows = 24;
-       td->cols = 80;
-
-       /* Default position */
-       td->r.left = 10;
-       td->r.top = 40;
-
-       /* Minimal keys */
-       td->keys = 16;
-}
-
-
-/*
- * Read the preference file, Create the windows.
- *
- * We attempt to use "FindFolder()" to track down the preference file,
- * but if this fails, for any reason, we will try the "SysEnvirons()"
- * method, which may work better with System 6.
- */
-static void init_windows(void)
-{
-       int i, b = 0;
-
-       term_data *td;
-
-       SysEnvRec env;
-       short savev;
-       long saved;
-
-       bool oops;
-
-
-       /*** Default values ***/
-
-       /* Initialize (backwards) */
-       for (i = MAX_TERM_DATA - 1; i >= 0; i--)
-       {
-               int n;
-
-               cptr s;
-
-               /* Obtain */
-               td = &data[i];
-
-               /* Defaults */
-               term_data_hack(td);
-
-               /* Obtain title */
-               s = angband_term_name[i];
-
-               /* Get length */
-               n = strlen(s);
-
-               /* Maximal length */
-               if (n > 15) n = 15;
-
-               /* Copy the title */
-               strncpy((char*)(td->title) + 1, s, n);
-
-               /* Save the length */
-               td->title[0] = n;
-
-               /* Tile the windows */
-               td->r.left += (b * 30);
-               td->r.top += (b * 30);
-
-               /* Tile */
-               b++;
-       }
-
-
-       /*** Load preferences ***/
-
-       /* Assume failure */
-       oops = TRUE;
-
-       /* Assume failure */
-       fff = NULL;
-
-#ifdef USE_SFL_CODE
-
-       /* Block */
-       if (TRUE)
-       {
-               OSErr   err;
-               short   vref;
-               long    dirID;
-               char    foo[128];
-
-               /* Find the folder */
-               err = FindFolder(kOnSystemDisk, kPreferencesFolderType, kCreateFolder,
-                                &vref, &dirID);
-
-               /* Success */
-               if (!err)
-               {
-                       /* Extract a path name */
-                       PathNameFromDirID(dirID, vref, (StringPtr)foo);
-
-                       /* Convert the string */
-                       ptocstr((StringPtr)foo);
-
-                       /* Append the preference file name */
-                       strcat(foo, PREF_FILE_NAME);
-
-                       /* Open the preference file */
-                       fff = fopen(foo, "r");
-
-                       /* Success */
-                       oops = FALSE;
-               }
-       }
-
-#endif /* USE_SFL_CODE */
-
-#if TARGET_API_MAC_CARBON
-#else
-       /* Oops */
-       if (oops)
-       {
-               /* Save */
-               HGetVol(0, &savev, &saved);
-
-               /* Go to the "system" folder */
-               SysEnvirons(curSysEnvVers, &env);
-               SetVol(0, env.sysVRefNum);
-
-               /* Open the file */
-               fff = fopen(PREF_FILE_NAME, "r");
-
-               /* Restore */
-               HSetVol(0, savev, saved);
-       }
-#endif
-
-       /* Load preferences */
-       if (fff)
-       {
-               /* Load a real preference file */
-               load_prefs();
-
-               /* Close the file */
-               my_fclose(fff);
-       }
-
-
-       /*** Instantiate ***/
-
-       /* Main window */
-       td = &data[0];
-
-       /* Many keys */
-       td->keys = 1024;
-
-       /* Start visible */
-       td->mapped = TRUE;
-
-       /* Link (backwards, for stacking order) */
-       for (i = MAX_TERM_DATA - 1; i >= 0; i--)
-       {
-               term_data_link(i);
-       }
-
-       /* Main window */
-       td = &data[0];
-
-       /* Main window */
-       Term_activate(td->t);
-}
-
-static void init_sound( void )
-{
-       int err, i;
-       DirInfo pb;
-       SignedByte              permission = fsRdPerm;
-       pascal short    ret;
-       
-       Handle handle;
-       Str255 sound;
-
-       /* Descend into "lib" folder */
-       pb.ioCompletion = NULL;
-       pb.ioNamePtr = "\plib";
-       pb.ioVRefNum = app_vol;
-       pb.ioDrDirID = app_dir;
-       pb.ioFDirIndex = 0;
-
-       /* Check for errors */
-       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-       /* Success */
-       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-       {
-               /* Descend into "lib/save" folder */
-               pb.ioCompletion = NULL;
-               pb.ioNamePtr = "\pxtra";
-               pb.ioVRefNum = app_vol;
-               pb.ioDrDirID = pb.ioDrDirID;
-               pb.ioFDirIndex = 0;
-
-               /* Check for errors */
-               err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-                       
-                       /* Success */
-               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-               {
-                       /* Descend into "lib/save" folder */
-                       pb.ioCompletion = NULL;
-                       pb.ioNamePtr = "\psound";
-                       pb.ioVRefNum = app_vol;
-                       pb.ioDrDirID = pb.ioDrDirID;
-                       pb.ioFDirIndex = 0;
-
-                       /* Check for errors */
-                       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-                       /* Success */
-                       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-                       {
-                               ret = HOpenResFile( app_vol , pb.ioDrDirID , "\psound.rsrc" , permission );
-                               if( ret != -1 ){
-                                       ext_sound = 1;
-                                       
-                                       for( i = 0 ; i < 7 ; i++ )
-                                                       soundmode[i] = false;
-                                       
-                                       for( i = 1 ; i < SOUND_MAX ; i++ ){
-                                               /* Get the proper sound name */
-                                               sprintf((char*)sound + 1, "%.16s.wav", angband_sound_name[i]);
-                                               sound[0] = strlen((char*)sound + 1);
-
-                                               /* Obtain resource XXX XXX XXX */
-                                               handle = Get1NamedResource('snd ', sound);
-                                               if( handle == NULL || ext_sound )
-                                                       handle = GetNamedResource('snd ', sound);
-                                               
-                                               if( handle )
-                                                       soundmode[soundchoice[i]] = true;
-                                               
-                                       }
-                               }
-                       }
-               }
-       }
-}
-
-static void init_graf( void )
-{
-       int err, i;
-       DirInfo pb;
-       SignedByte              permission = fsRdPerm;
-       pascal short    ret;
-       
-       Handle handle;
-       Str255 graf;
-
-       /* Descend into "lib" folder */
-       pb.ioCompletion = NULL;
-       pb.ioNamePtr = "\plib";
-       pb.ioVRefNum = app_vol;
-       pb.ioDrDirID = app_dir;
-       pb.ioFDirIndex = 0;
-
-       /* Check for errors */
-       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-       /* Success */
-       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-       {
-               /* Descend into "lib/xtra" folder */
-               pb.ioCompletion = NULL;
-               pb.ioNamePtr = "\pxtra";
-               pb.ioVRefNum = app_vol;
-               pb.ioDrDirID = pb.ioDrDirID;
-               pb.ioFDirIndex = 0;
-
-               /* Check for errors */
-               err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-                       
-               /* Success */
-               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-               {
-                       /* Descend into "lib/xtra/graf" folder */
-                       pb.ioCompletion = NULL;
-                       pb.ioNamePtr = "\pgraf";
-                       pb.ioVRefNum = app_vol;
-                       pb.ioDrDirID = pb.ioDrDirID;
-                       pb.ioFDirIndex = 0;
-
-                       /* Check for errors */
-                       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-                       /* Success */
-                       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-                       {
-                               ret = HOpenResFile( app_vol , pb.ioDrDirID , "\pgraf.rsrc" , permission );
-                               if (ret != -1)
-                               {
-                                       ext_graf = 1;
-
-                                       /* Obtain resource XXX XXX XXX */
-                                       handle = Get1NamedResource('PICT', graf);
-                                       if ( handle == NULL || ext_graf )
-                                               handle = GetNamedResource('PICT', "\pgraf.rsrc");
-                               }
-                       }
-               }
-       }
-}
-
-#ifdef CHUUKEI
-/*
-
-*/
-static void init_chuukei( void )
-{
-       char path[1024];
-       char tmp[1024];
-       FILE *fp;
-       
-       path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "chuukei.txt");
-
-       fp = fopen(path, "r");
-       if(!fp)
-               return;
-       
-       /* Read a line */
-       if (fgets(tmp, 1024, fp)){
-               if(tmp[0] == '-'){
-                       int n = strlen(tmp);
-                       tmp[n-1] = 0;
-                       switch(tmp[1]){
-                       case 'p':
-                       {
-                               if (!tmp[2]) break;
-                               chuukei_server = TRUE;
-                               if(connect_chuukei_server(&tmp[2])<0){
-                                       msg_print("connect fail");
-                                       return;
-                               }
-                               msg_print("connect");
-                               msg_print(NULL);
-                               break;
-                       }
-
-                       case 'c':
-                       {
-                               chuukei_client = TRUE;
-                               connect_chuukei_server(&tmp[2]);
-                               play_game(FALSE);
-                               quit(NULL);
-                       }
-                       }
-               }
-               
-       }
-       fclose(fp);
-       
-}
-#endif
-
-/*
-
-*/
-short InevrtCheck( DialogPtr targetDlg, short check )
-{
-       Handle  checkH;
-       short   itemType;
-       long    result;
-       Rect    box;
-       
-       GetDialogItem( targetDlg, check, &itemType, &checkH, &box );
-       result = (GetControlValue( (ControlHandle)checkH ) + 1 ) % 2;
-       SetControlValue( (ControlHandle)checkH , result );
-       return result ;
-
-}
-
-/*
-
-*/
-short SetCheck( DialogPtr targetDlg, short check, long result )
-{
-       Handle  checkH;
-       short   itemType;
-
-       Rect    box;
-       
-       GetDialogItem( targetDlg, check, &itemType, &checkH, &box );
-       SetControlValue( (ControlHandle)checkH , result );
-       return result ;
-
-}
-
-/*
-
-*/
-short GetCheck( DialogPtr targetDlg, short check )
-{
-       Handle  checkH;
-       short   itemType;
-       long    result;
-       Rect    box;
-       
-       GetDialogItem( targetDlg, check, &itemType, &checkH, &box );
-       result = GetControlValue( (ControlHandle)checkH );
-       return result ;
-
-}
-void SoundConfigDLog(void)
-{
-       DialogPtr dialog;
-       Rect r;
-       short item_hit;
-       int     i;
-
-       dialog=GetNewDialog(131, 0, (WindowPtr)-1);
-       SetDialogDefaultItem( dialog, ok );
-       SetDialogCancelItem( dialog, cancel );
-       for( i = 1 ; i < 7 ; i++ )
-               SetCheck( dialog, i+2 , soundmode[i] );
-       
-       ShowWindow(dialog);
-       for( item_hit = 100 ; cancel < item_hit ; ){
-               ModalDialog(0, &item_hit);
-               
-               switch(item_hit){
-                       case ok:
-                               for( i = 1 ; i < 7 ; i++ )
-                                       soundmode[i] = GetCheck( dialog, i+2 );
-                               break;
-                       case cancel:
-                               break;
-                       default:
-                               InevrtCheck( dialog, item_hit );
-               }
-       }
-       DisposeDialog(dialog);
-
-}
-
-
-/*
- * Exit the program
- */
-static void save_pref_file(void)
-{
-       bool oops;
-
-       SysEnvRec env;
-       short savev;
-       long saved;
-
-
-       /* Assume failure */
-       oops = TRUE;
-
-       /* Assume failure */
-       fff = NULL;
-
-       /* Text file */
-       _ftype = 'TEXT';
-
-
-#ifdef USE_SFL_CODE
-
-       /* Block */
-       if (TRUE)
-       {
-               OSErr   err;
-               short   vref;
-               long    dirID;
-               char    foo[128];
-
-               /* Find the folder */
-               err = FindFolder(kOnSystemDisk, kPreferencesFolderType, kCreateFolder,
-                                &vref, &dirID);
-
-               /* Success */
-               if (!err)
-               {
-                       /* Extract a path name */
-                       PathNameFromDirID(dirID, vref, (StringPtr)foo);
-
-                       /* Convert the string */
-                       ptocstr((StringPtr)foo);
-
-                       /* Append the preference file name */
-                       strcat(foo, PREF_FILE_NAME);
-
-                       /* Open the preference file */
-                       /* my_fopen set file type and file creator for MPW */
-                       fff = my_fopen(foo, "w");
-
-                       /* Success */
-                       oops = FALSE;
-               }
-       }
-
-#endif /* USE_SFL_CODE */
-
-#if TARGET_API_MAC_CARBON
-#else
-       /* Oops */
-       if (oops)
-       {
-               /* Save */
-               HGetVol(0, &savev, &saved);
-
-               /* Go to "system" folder */
-               SysEnvirons(curSysEnvVers, &env);
-               SetVol(0, env.sysVRefNum);
-
-               /* Open the preference file */
-               /* my_fopen set file type and file creator for MPW */
-               fff = fopen(PREF_FILE_NAME, "w");
-
-               /* Restore */
-               HSetVol(0, savev, saved);
-       }
-#endif
-
-       /* Save preferences */
-       if (fff)
-       {
-               /* Write the preferences */
-               save_prefs();
-
-               /* Close it */
-               my_fclose(fff);
-       }
-}
-
-
-
-/*
- * A simple "Yes/No" filter to parse "key press" events in dialog windows
- */
-static pascal Boolean ynfilter(DialogPtr dialog, EventRecord *event, short *ip)
-{
-       /* Parse key press events */
-       if (event->what == keyDown)
-       {
-               int i = 0;
-               char c;
-
-               /* Extract the pressed key */
-               c = (event->message & charCodeMask);
-
-               /* Accept "no" and <return> and <enter> */
-               if ((c=='n') || (c=='N') || (c==13) || (c==3)) i = 1;
-
-               /* Accept "yes" */
-               else if ((c=='y') || (c=='Y')) i = 2;
-
-               /* Handle "yes" or "no" */
-               if (i)
-               {
-                       short type;
-                       ControlHandle control;
-                       Rect r;
-
-                       /* Get the button */
-                       GetDialogItem(dialog, i, &type, (Handle*)&control, &r);
-
-                       /* Blink button for 1/10 second */
-                       HiliteControl(control, 1);
-                       Term_xtra_mac(TERM_XTRA_DELAY, 100);
-                       HiliteControl(control, 0);
-
-                       /* Result */
-                       *ip = i;
-                       return (1);
-               }
-       }
-
-       /* Ignore */
-       return (0);
-}
-
-
-/*
- * Handle menu: "File" + "New"
- */
-static void do_menu_file_new(void)
-{
-       /* Hack */
-       HiliteMenu(0);
-
-       /* Game is in progress */
-       game_in_progress = 1;
-
-       /* Flush input */
-       flush();
-
-       /* Play a game */
-       play_game(TRUE);
-
-       /* Hack -- quit */
-       quit(NULL);
-}
-
-
-/*
- * Handle menu: "File" + "Open"
- */
-#if TARGET_API_MAC_CARBON
-static void do_menu_file_open(bool all)
-{
-       int err;
-       short vrefnum;
-       long drefnum;
-       long junk;
-       DirInfo pb;
-       SFTypeList types;
-       SFReply reply;
-       Point topleft;
-       BitMap screen;
-       FSSpec  fsp;
-       char path[1024];
-       
-       refnum_to_name(path, app_dir, app_vol, (char*)("\plib:save:"));
-       
-       FSpLocationFromFullPath( strlen(path), path, &fsp );
-       
-       /* Get any file */
-       err = ChooseFile( savefile, fsp );
-       
-       /* Allow cancel */
-       if (err != noErr) return;
-
-       /* Extract textual file name for save file */
-/*     GetWDInfo(reply.vRefNum, &vrefnum, &drefnum, &junk);
-       refnum_to_name(savefile, drefnum, vrefnum, (char*)reply.fName);
-*/
-       /* Hack */
-       HiliteMenu(0);
-
-       /* Game is in progress */
-       game_in_progress = 1;
-
-       /* Flush input */
-       flush();
-
-       /* Play a game */
-       play_game(FALSE);
-
-       /* Hack -- quit */
-       quit(NULL);
-}
-#else
-static void do_menu_file_open(bool all)
-{
-       int err;
-       short vrefnum;
-       long drefnum;
-       long junk;
-       DirInfo pb;
-       SFTypeList types;
-       SFReply reply;
-       Point topleft;
-
-
-       /* XXX XXX XXX */
-
-       /* vrefnum = GetSFCurVol(); */
-       vrefnum = -*((short*)0x214);
-
-       /* drefnum = GetSFCurDir(); */
-       drefnum = *((long*)0x398);
-
-       /* Descend into "lib" folder */
-       pb.ioCompletion = NULL;
-       pb.ioNamePtr = "\plib";
-       pb.ioVRefNum = vrefnum;
-       pb.ioDrDirID = drefnum;
-       pb.ioFDirIndex = 0;
-
-       /* Check for errors */
-       err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-       /* Success */
-       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-       {
-               /* Descend into "lib/save" folder */
-               pb.ioCompletion = NULL;
-               pb.ioNamePtr = "\psave";
-               pb.ioVRefNum = vrefnum;
-               pb.ioDrDirID = pb.ioDrDirID;
-               pb.ioFDirIndex = 0;
-
-               /* Check for errors */
-               err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
-
-               /* Success */
-               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
-               {
-                       /* SetSFCurDir(pb.ioDrDirID); */
-                       *((long*)0x398) = pb.ioDrDirID;
-               }
-       }
-
-       /* Window location */
-       topleft.h = (qd.screenBits.bounds.left+qd.screenBits.bounds.right)/2-344/2;
-       topleft.v = (2*qd.screenBits.bounds.top+qd.screenBits.bounds.bottom)/3-188/2;
-
-       /* Allow "all" files */
-       if (all)
-       {
-               /* Get any file */
-               SFGetFile(topleft, "\p", NULL, -1, types, NULL, &reply);
-       }
-
-       /* Allow "save" files */
-       else
-       {
-               /* Legal types */
-               types[0] = 'SAVE';
-
-               /* Get a file */
-               SFGetFile(topleft, "\p", NULL, 1, types, NULL, &reply);
-       }
-
-       /* Allow cancel */
-       if (!reply.good) return;
-
-       /* Extract textual file name for save file */
-       GetWDInfo(reply.vRefNum, &vrefnum, &drefnum, &junk);
-       refnum_to_name(savefile, drefnum, vrefnum, (char*)reply.fName);
-
-       /* Hack */
-       HiliteMenu(0);
-
-       /* Game is in progress */
-       game_in_progress = 1;
-
-       /* Flush input */
-       flush();
-
-       /* Play a game */
-       play_game(FALSE);
-
-       /* Hack -- quit */
-       quit(NULL);
-}
-#endif
-
-
-/*
- * Handle the "open_when_ready" flag
- */
-static void handle_open_when_ready(void)
-{
-       /* Check the flag XXX XXX XXX make a function for this */
-       if (open_when_ready && initialized && !game_in_progress)
-       {
-               /* Forget */
-               open_when_ready = FALSE;
-
-               /* Game is in progress */
-               game_in_progress = 1;
-
-               /* Wait for it */
-               pause_line(23);
-
-               /* Flush input */
-               flush();
-
-               /* Play a game */
-               play_game(FALSE);
-
-               /* Quit */
-               quit(NULL);
-       }
-}
-
-
-
-/*
- * Initialize the menus
- *
- * Verify menus 128, 129, 130
- * Create menus 131, 132, 133, 134
- *
- * The standard menus are:
- *
- *   Apple (128) =   { About, -, ... }
- *   File (129) =    { New,Open,Import,Close,Save,-,Exit,Quit }
- *   Edit (130) =    { Cut, Copy, Paste, Clear }   (?)
- *   Font (131) =    { Bold, Extend, -, Monaco, ..., -, ... }
- *   Size (132) =    { ... }
- *   Window (133) =  { Angband, Mirror, Recall, Choice,
- *                     Term-4, Term-5, Term-6, Term-7 }
- *   Special (134) = { arg_sound, arg_graphics, -,
- *                     arg_fiddle, arg_wizard }
- */
-static void init_menubar(void)
-{
-       int i, n;
-
-       Rect r;
-
-       WindowPtr tmpw;
-
-       MenuHandle m;
-       OSErr           err;
-       long            response;
-
-       /* Get the "apple" menu */
-       m = GetMenu(128);
-
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Add the DA's to the "apple" menu */
-#if TARGET_API_MAC_CARBON
-#else
-       AppendResMenu   (m, 'DRVR');
-#endif
-
-       /* Get the "File" menu */
-#if TARGET_API_MAC_CARBON
-       m = GetMenu(129);
-       err = Gestalt( gestaltSystemVersion, &response );
-       if ( (err == noErr) && (response >= 0x00000A00) )
-       {
-               DeleteMenuItem( m, 7 );
-       }
-#else
-       m = GetMenu(129);
-#endif
-
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-
-       /* Get the "Edit" menu */
-       m = GetMenu(130);
-
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-
-       /* Make the "Font" menu */
-       #ifdef JP
-       m = NewMenu(131, "\p¥Õ¥©¥ó¥È");
-       #else
-       m = NewMenu(131, "\pFont");
-       #endif
-       
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Add "bold" */
-       AppendMenu(m, "\pBold");
-
-       /* Add "wide" */
-       AppendMenu(m, "\pWide");
-
-       /* Add a separator */
-       AppendMenu(m, "\p-");
-
-       /* Fake window */
-       r.left = r.right = r.top = r.bottom = 0;
-
-       /* Make the fake window */
-       tmpw = NewWindow(0, &r, "\p", false, documentProc, 0, 0, 0);
-
-       /* Activate the "fake" window */
-#if TARGET_API_MAC_CARBON
-       SetPortWindowPort(tmpw);
-#else
-       SetPort(tmpw);
-#endif
-
-       /* Default mode */
-       TextMode(0);
-
-       /* Default size */
-       TextSize(12);
-
-       /* Add the fonts to the menu */
-       AppendResMenu(m, 'FONT');
-
-       /* Size of menu */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Scan the menu */
-       for (i = n; i >= 4; i--)
-       {
-               Str255 tmpName;
-               short fontNum;
-
-               /* Acquire the font name */
-               GetMenuItemText(m, i, tmpName);
-
-               /* Acquire the font index */
-#if TARGET_API_MAC_CARBON
-               fontNum = FMGetFontFamilyFromName( tmpName );
-#else
-               GetFNum(tmpName, &fontNum);
-#endif
-
-               /* Apply the font index */
-               TextFont(fontNum);
-
-               /* Remove non-mono-spaced fonts */
-               if ((CharWidth('i') != CharWidth('W')) || (CharWidth('W') == 0))
-               {
-                       /* Delete the menu item XXX XXX XXX */
-                       DeleteMenuItem  (m, i);
-               }
-       }
-
-       /* Destroy the old window */
-       DisposeWindow(tmpw);
-
-       /* Add a separator */
-       AppendMenu(m, "\p-");
-
-       /* Add the fonts to the menu */
-       AppendResMenu   (m, 'FONT');
-
-
-       /* Make the "Size" menu */
-       #ifdef JP
-       m = NewMenu(132, "\p¥µ¥¤¥º");
-       #else
-       m = NewMenu(132, "\pSize");
-       #endif
-       
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Add some sizes (stagger choices) */
-       for (i = 8; i <= 32; i += ((i / 16) + 1))
-       {
-               Str15 buf;
-               
-               /* Textual size */
-               sprintf((char*)buf + 1, "%d", i);
-               buf[0] = strlen((char*)buf + 1);
-
-               /* Add the item */
-               AppendMenu(m, buf);
-       }
-
-
-       /* Make the "Windows" menu */
-       #ifdef JP
-       m = NewMenu(133, "\p¥¦¥¤¥ó¥É¥¦");
-       #else
-       m = NewMenu(133, "\pWindows");
-       #endif
-       
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Default choices */
-       for (i = 0; i < MAX_TERM_DATA; i++)
-       {
-               Str15 buf;
-               
-               /* Describe the item */
-               sprintf((char*)buf + 1, "%.15s", angband_term_name[i]);
-               buf[0] = strlen((char*)buf + 1);
-
-               /* Add the item */
-               AppendMenu(m, buf);
-
-               /* Command-Key shortcuts */
-               if (i < 8) SetItemCmd(m, i + 1, '0' + i);
-       }
-
-
-       /* Make the "Special" menu */
-       #ifdef JP
-       m = NewMenu(134, "\pÆÃÊÌ");
-       #else
-       m = NewMenu(134, "\pSpecial");
-       #endif
-       
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Append the choices */
-       #ifdef JP
-       AppendMenu(m, "\p¥µ¥¦¥ó¥É»ÈÍÑ");
-       AppendMenu(m, "\p¥°¥é¥Õ¥£¥Ã¥¯»ÈÍÑ");
-       AppendMenu(m, "\p-");
-       AppendMenu(m, "\parg_fiddle");
-       AppendMenu(m, "\parg_wizard");
-       AppendMenu(m, "\p-");
-       AppendMenu(m, "\p¥µ¥¦¥ó¥ÉÀßÄê...");
-       AppendMenu(m, "\p16X16¥°¥é¥Õ¥£¥Ã¥¯");
-       AppendMenu(m, "\p£²ÇÜÉý¥¿¥¤¥ëɽ¼¨");
-       #else
-       AppendMenu(m, "\parg_sound");
-       AppendMenu(m, "\parg_graphics");
-       AppendMenu(m, "\p-");
-       AppendMenu(m, "\parg_fiddle");
-       AppendMenu(m, "\parg_wizard");
-       AppendMenu(m, "\p-");
-       AppendMenu(m, "\pSound config");
-       AppendMenu(m, "\pAdam Bolt tile");
-       AppendMenu(m, "\pBigtile Mode");
-       #endif
-
-       /* Make the "TileWidth" menu */
-       #ifdef JP
-       m = NewMenu(135, "\p¥¿¥¤¥ëÉý");
-       #else
-       m = NewMenu(135, "\pTileWidth");
-       #endif
-
-       /* Insert the menu */
-       InsertMenu(m, 0);
-
-       /* Add some sizes */
-       for (i = 4; i <= 32; i++)
-       {
-               Str15 buf;
-               
-               /* Textual size */
-               sprintf((char*)buf + 1, "%d", i);
-               buf[0] = strlen((char*)buf + 1);
-
-               /* Append item */
-               AppendMenu(m, buf);
-       }
-
-
-       /* Make the "TileHeight" menu */
-       #ifdef JP
-       m = NewMenu(136, "\p¥¿¥¤¥ë¹â");
-       #else
-       m = NewMenu(136, "\pTileHeight");
-       #endif
-
-       /* Insert the menu */
-       InsertMenu(m, 255);
-
-       /* Add some sizes */
-       for (i = 4; i <= 32; i++)
-       {
-               Str15 buf;
-
-               /* Textual size */
-               sprintf((char*)buf + 1, "%d", i);
-               buf[0] = strlen((char*)buf + 1);
-
-               /* Append item */
-               AppendMenu(m, buf);
-       }
-
-
-       /* Update the menu bar */
-       DrawMenuBar();
-}
-
-
-/*
- * Prepare the menus
- */
-static void setup_menus(void)
-{
-       int i, n;
-
-       short value;
-
-       Str255 s;
-
-       MenuHandle m;
-
-       term_data *td = NULL;
-
-
-       /* Relevant "term_data" */
-       for (i = 0; i < MAX_TERM_DATA; i++)
-       {
-               /* Unused */
-               if (!data[i].t) continue;
-
-               /* Notice the matching window */
-               if (data[i].w == FrontWindow()) td = &data[i];
-       }
-
-
-       /* File menu */
-       m = GetMenuHandle(129);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-       /* Enable "new"/"open..."/"import..." */
-       if (initialized && !game_in_progress)
-       {
-#if TARGET_API_MAC_CARBON
-               EnableMenuItem(m, 1);
-               EnableMenuItem(m, 2);
-               EnableMenuItem(m, 3);
-#else
-               EnableItem(m, 1);
-               EnableItem(m, 2);
-               EnableItem(m, 3);
-#endif
-       }
-
-       /* Enable "close" */
-       if (initialized)
-       {
-#if TARGET_API_MAC_CARBON
-               EnableMenuItem(m, 4);
-#else
-               EnableItem(m, 4);
-#endif
-       }
-
-       /* Enable "save" */
-       if (initialized && character_generated)
-       {
-#if TARGET_API_MAC_CARBON
-               EnableMenuItem(m, 5);
-#else
-               EnableItem(m, 5);
-#endif
-       }
-
-       /* Enable "quit" */
-       if (TRUE)
-       {
-#if TARGET_API_MAC_CARBON
-               EnableMenuItem(m, 7);
-#else
-               EnableItem(m, 7);
-#endif
-       }
-
-
-       /* Edit menu */
-       m = GetMenuHandle(130);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-       /* Enable "edit" options if "needed" */
-       if (!td)
-       {
-#if TARGET_API_MAC_CARBON
-               EnableMenuItem(m, 1);
-               EnableMenuItem(m, 3);
-               EnableMenuItem(m, 4);
-               EnableMenuItem(m, 5);
-               EnableMenuItem(m, 6);
-#else
-               EnableItem(m, 1);
-               EnableItem(m, 3);
-               EnableItem(m, 4);
-               EnableItem(m, 5);
-               EnableItem(m, 6);
-#endif
-       }
-
-
-       /* Font menu */
-       m = GetMenuHandle(131);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-       /* Hack -- look cute XXX XXX */
-       /* SetItemStyle(m, 1, bold); */
-
-       /* Hack -- look cute XXX XXX */
-       /* SetItemStyle(m, 2, extend); */
-
-       /* Active window */
-       if (td)
-       {
-#if TARGET_API_MAC_CARBON
-               /* Enable "bold" */
-               EnableMenuItem(m, 1);
-
-               /* Enable "extend" */
-               EnableMenuItem(m, 2);
-
-               /* Check the appropriate "bold-ness" */
-               if (td->font_face & bold) CheckMenuItem(m, 1, TRUE);
-
-               /* Check the appropriate "wide-ness" */
-               if (td->font_face & extend) CheckMenuItem(m, 2, TRUE);
-
-               /* Analyze fonts */
-               for (i = 4; i <= n; i++)
-               {
-                       /* Enable it */
-                       EnableMenuItem(m, i);
-
-                       /* Analyze font */
-                       GetMenuItemText(m, i, s);
-                       GetFNum(s, &value);
-
-                       /* Check active font */
-                       if (td->font_id == value) CheckMenuItem(m, i, TRUE);
-               }
-#else
-               /* Enable "bold" */
-               EnableItem(m, 1);
-
-               /* Enable "extend" */
-               EnableItem(m, 2);
-
-               /* Check the appropriate "bold-ness" */
-               if (td->font_face & bold) CheckItem(m, 1, TRUE);
-
-               /* Check the appropriate "wide-ness" */
-               if (td->font_face & extend) CheckItem(m, 2, TRUE);
-
-               /* Analyze fonts */
-               for (i = 4; i <= n; i++)
-               {
-                       /* Enable it */
-                       EnableItem(m, i);
-
-                       /* Analyze font */
-                       GetMenuItemText(m, i, s);
-                       GetFNum(s, &value);
-
-                       /* Check active font */
-                       if (td->font_id == value) CheckItem(m, i, TRUE);
-               }
-#endif
-       }
-
-
-       /* Size menu */
-       m = GetMenuHandle(132);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-       
-       /* Active window */
-       if (td)
-       {
-               /* Analyze sizes */
-               for (i = 1; i <= n; i++)
-               {
-#if TARGET_API_MAC_CARBON
-                       /* Analyze size */
-                       GetMenuItemText(m, i, s);
-                       s[s[0]+1] = '\0';
-                       value = atoi((char*)(s+1));
-
-                       /* Enable the "real" sizes */
-                       if (RealFont(td->font_id, value)) EnableMenuItem(m, i);
-
-                       /* Check the current size */
-                       if (td->font_size == value) CheckMenuItem(m, i, TRUE);
-#else
-                       /* Analyze size */
-                       GetMenuItemText(m, i, s);
-                       s[s[0]+1] = '\0';
-                       value = atoi((char*)(s+1));
-
-                       /* Enable the "real" sizes */
-                       if (RealFont(td->font_id, value)) EnableItem(m, i);
-
-                       /* Check the current size */
-                       if (td->font_size == value) CheckItem(m, i, TRUE);
-#endif
-               }
-       }
-
-
-       /* Windows menu */
-       m = GetMenuHandle(133);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Check active windows */
-       for (i = 1; i <= n; i++)
-       {
-               /* Check if needed */
-#if TARGET_API_MAC_CARBON
-               CheckMenuItem(m, i, data[i-1].mapped);
-#else
-               CheckItem(m, i, data[i-1].mapped);
-#endif
-       }
-
-
-       /* Special menu */
-       m = GetMenuHandle(134);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-#if TARGET_API_MAC_CARBON
-       /* Item "arg_sound" */
-       EnableMenuItem(m, 1);
-       CheckMenuItem(m, 1, arg_sound);
-
-       /* Item "arg_graphics" */
-       EnableMenuItem(m, 2);
-       CheckMenuItem(m, 2, arg_graphics);
-
-       /* Item "arg_fiddle" */
-       EnableMenuItem(m, 4);
-       CheckMenuItem(m, 4, arg_fiddle);
-
-       /* Item "arg_wizard" */
-       EnableMenuItem(m, 5);
-       CheckMenuItem(m, 5, arg_wizard);
-
-       /* Item "SoundSetting" */
-       EnableMenuItem(m, 7);
-
-       /* Item NewStyle Graphics */
-       EnableMenuItem(m, 8);
-       CheckMenuItem(m, 8, use_newstyle_graphics);
-
-       /* Item Bigtile Mode */
-       EnableMenuItem(m, 9);
-       CheckMenuItem(m, 9, arg_bigtile);
-#else
-       /* Item "arg_sound" */
-       EnableItem(m, 1);
-       CheckItem(m, 1, arg_sound);
-
-       /* Item "arg_graphics" */
-       EnableItem(m, 2);
-       CheckItem(m, 2, arg_graphics);
-
-       /* Item "arg_fiddle" */
-       EnableItem(m, 4);
-       CheckItem(m, 4, arg_fiddle);
-
-       /* Item "arg_wizard" */
-       EnableItem(m, 5);
-       CheckItem(m, 5, arg_wizard);
-
-       /* Item "SoundSetting" */
-       EnableItem(m, 7);
-
-       /* Item NewStyle Graphics */
-       EnableItem(m, 8);
-       CheckItem(m, 8, use_newstyle_graphics);
-
-       /* Item Bigtile Mode */
-       EnableItem(m, 9);
-       CheckItem(m, 9, arg_bigtile);
-#endif
-
-       /* TileWidth menu */
-       m = GetMenuHandle(135);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-       /* Active window */
-       if (td)
-       {
-               /* Analyze sizes */
-               for (i = 1; i <= n; i++)
-               {
-                       /* Analyze size */
-                       /* GetMenuItemText(m,i,s); */
-                       GetMenuItemText(m, i, s);
-                       s[s[0]+1] = '\0';
-                       value = atoi((char*)(s+1));
-
-#if TARGET_API_MAC_CARBON
-                       /* Enable */
-                       EnableMenuItem(m, i);
-
-                       /* Check the current size */
-                       if (td->tile_wid == value) CheckMenuItem(m, i, TRUE);
-#else
-                       /* Enable */
-                       EnableItem(m, i);
-
-                       /* Check the current size */
-                       if (td->tile_wid == value) CheckItem(m, i, TRUE);
-#endif
-               }
-       }
-
-
-       /* TileHeight menu */
-       m = GetMenuHandle(136);
-
-       /* Get menu size */
-#if TARGET_API_MAC_CARBON
-       n = CountMenuItems(m);
-#else
-       n = CountMItems(m);
-#endif
-
-       /* Reset menu */
-       for (i = 1; i <= n; i++)
-       {
-               /* Reset */
-#if TARGET_API_MAC_CARBON
-               DisableMenuItem(m, i);
-               CheckMenuItem(m, i, FALSE);
-#else
-               DisableItem(m, i);
-               CheckItem(m, i, FALSE);
-#endif
-       }
-
-       /* Active window */
-       if (td)
-       {
-               /* Analyze sizes */
-               for (i = 1; i <= n; i++)
-               {
-                       /* Analyze size */
-                       GetMenuItemText(m, i, s);
-                       s[s[0]+1] = '\0';
-                       value = atoi((char*)(s+1));
-
-#if TARGET_API_MAC_CARBON
-                       /* Enable */
-                       EnableMenuItem(m, i);
-
-                       /* Check the current size */
-                       if (td->tile_hgt == value) CheckMenuItem(m, i, TRUE);
-#else
-                       /* Enable */
-                       EnableItem(m, i);
-
-                       /* Check the current size */
-                       if (td->tile_hgt == value) CheckItem(m, i, TRUE);
-#endif
-               }
-       }
-}
-
-
-/*
- * Process a menu selection (see above)
- *
- * Hack -- assume that invalid menu selections are disabled above,
- * which I have been informed may not be reliable.  XXX XXX XXX
- */
-static void menu(long mc)
-{
-       int i;
-
-       int menuid, selection;
-
-       static unsigned char s[1000];
-
-       short fid;
-
-       term_data *td = NULL;
-
-       WindowPtr old_win;
-
-
-       /* Analyze the menu command */
-       menuid = HiWord(mc);
-       selection = LoWord(mc);
-
-
-       /* Find the window */
-       for (i = 0; i < MAX_TERM_DATA; i++)
-       {
-               /* Skip dead windows */
-               if (!data[i].t) continue;
-
-               /* Notice matches */
-               if (data[i].w == FrontWindow()) td = &data[i];
-       }
-
-
-       /* Branch on the menu */
-       switch (menuid)
-       {
-               /* Apple Menu */
-               case 128:
-               {
-                       /* About Angband... */
-#if TARGET_API_MAC_CARBON
-                       if (selection == 1)
-                       {
-                               DialogPtr dialog;
-                               short item_hit;
-
-                               /* Get the about dialogue */
-                               dialog=GetNewDialog(128, 0, (WindowPtr)-1);
-
-                               /* Move it to the middle of the screen */
-                               RepositionWindow(
-                                       GetDialogWindow(dialog),
-                                       NULL,
-                                       kWindowCenterOnMainScreen);
-
-                               /* Show the dialog */
-                               TransitionWindow(GetDialogWindow(dialog),
-                                       kWindowZoomTransitionEffect,
-                                       kWindowShowTransitionAction,
-                                       NULL);
-
-                               /* Wait for user to click on it */
-                               ModalDialog(0, &item_hit);
-
-                               /* Free the dialogue */
-                               DisposeDialog(dialog);
-                               break;
-                       }
-#else
-                       if (selection == 1)
-                       {
-                               DialogPtr dialog;
-                               Rect r;
-                               short item_hit;
-
-                               dialog=GetNewDialog(128, 0, (WindowPtr)-1);
-
-                               r=dialog->portRect;
-                               center_rect(&r, &qd.screenBits.bounds);
-                               MoveWindow(dialog, r.left, r.top, 1);
-                               ShowWindow(dialog);
-                               ModalDialog(0, &item_hit);
-                               DisposeDialog(dialog);
-                               break;
-                       }
-
-                       /* Desk accessory */
-                       /* GetMenuItemText(GetMHandle(128),selection,s); */
-                       GetMenuItemText(GetMenuHandle(128), selection, s);
-                       OpenDeskAcc(s);
-                       break;
-#endif
-               }
-
-               /* File Menu */
-               case 129:
-               {
-                       switch (selection)
-                       {
-                               /* New */
-                               case 1:
-                               {
-                                       do_menu_file_new();
-                                       break;
-                               }
-
-                               /* Open... */
-                               case 2:
-                               {
-                                       do_menu_file_open(FALSE);
-                                       break;
-                               }
-
-                               /* Import... */
-                               case 3:
-                               {
-                                       do_menu_file_open(TRUE);
-                                       break;
-                               }
-
-                               /* Close */
-                               case 4:
-                               {
-                                       /* No window */
-                                       if (!td) break;
-
-                                       /* Not Mapped */
-                                       td->mapped = FALSE;
-
-                                       /* Not Mapped */
-                                       td->t->mapped_flag = FALSE;
-
-                                       /* Hide the window */
-                                       HideWindow(td->w);
-
-                                       break;
-                               }
-
-                               /* Save */
-                               case 5:
-                               {
-                                       if (!can_save){
-#ifdef JP
-                                               plog("º£¤Ï¥»¡¼¥Ö¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£");
-#else
-                                               plog("You may not do that right now.");
-#endif
-                                               break;
-                                       }
-                                       
-                                       /* Hack -- Forget messages */
-                                       msg_flag = FALSE;
-
-                                       /* Hack -- Save the game */
-                                       do_cmd_save_game(FALSE);
-
-                                       break;
-                               }
-
-                               /* Quit (with save) */
-                               case 7:
-                               {
-                                       /* Save the game (if necessary) */
-                                       if (game_in_progress && character_generated)
-                                       {
-                                               if (!can_save){
-#ifdef JP
-                                                       plog("º£¤Ï¥»¡¼¥Ö¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£");
-#else
-                                                       plog("You may not do that right now.");
-#endif
-                                                       break;
-                                               }
-                                               /* Hack -- Forget messages */
-                                               msg_flag = FALSE;
-
-                                               /* Save the game */
-#if 0
-                                               do_cmd_save_game(FALSE);
-#endif
-                                               Term_key_push(SPECIAL_KEY_QUIT);
-                                               break;
-                                       }
-
-                                       /* Quit */
-                                       quit(NULL);
-                                       break;
-                               }
-                       }
-                       break;
-               }
-
-               /* Edit menu */
-               case 130:
-               {
-                       /* Unused */
-                       break;
-               }
-
-               /* Font menu */
-               case 131:
-               {
-                       /* Require a window */
-                       if (!td) break;
-
-                       /* Memorize old */
-                       old_win = active;
-
-                       /* Activate */
-                       activate(td->w);
-
-                       /* Toggle the "bold" setting */
-                       if (selection == 1)
-                       {
-                               /* Toggle the setting */
-                               if (td->font_face & bold)
-                               {
-                                       td->font_face &= ~bold;
-                               }
-                               else
-                               {
-                                       td->font_face |= bold;
-                               }
-
-                               /* Tile Width Hight Init */
-                               td->tile_wid = td->tile_hgt = 0;
-
-                               /* Apply and Verify */
-                               term_data_check_font(td);
-                               term_data_check_size(td);
-
-                               /* Resize and Redraw */
-                               term_data_resize(td);
-                               term_data_redraw(td);
-
-                               break;
-                       }
-
-                       /* Toggle the "wide" setting */
-                       if (selection == 2)
-                       {
-                               /* Toggle the setting */
-                               if (td->font_face & extend)
-                               {
-                                       td->font_face &= ~extend;
-                               }
-                               else
-                               {
-                                       td->font_face |= extend;
-                               }
-
-                               /* Tile Width Hight Init */
-                               td->tile_wid = td->tile_hgt = 0;
-
-                               /* Apply and Verify */
-                               term_data_check_font(td);
-                               term_data_check_size(td);
-
-                               /* Resize and Redraw */
-                               term_data_resize(td);
-                               term_data_redraw(td);
-
-                               break;
-                       }
-
-                       /* Get a new font name */
-                       GetMenuItemText(GetMenuHandle(131), selection, s);
-                       GetFNum(s, &fid);
-
-                       /* Save the new font id */
-                       td->font_id = fid;
-
-                       /* Current size is bad for new font */
-                       if (!RealFont(td->font_id, td->font_size))
-                       {
-                               /* Find similar size */
-                               for (i = 1; i <= 32; i++)
-                               {
-                                       /* Adjust smaller */
-                                       if (td->font_size - i >= 8)
-                                       {
-                                               if (RealFont(td->font_id, td->font_size - i))
-                                               {
-                                                       td->font_size -= i;
-                                                       break;
-                                               }
-                                       }
-
-                                       /* Adjust larger */
-                                       if (td->font_size + i <= 128)
-                                       {
-                                               if (RealFont(td->font_id, td->font_size + i))
-                                               {
-                                                       td->font_size += i;
-                                                       break;
-                                               }
-                                       }
-                               }
-                       }
-
-                       /* Tile Width Hight Init */
-                       td->tile_wid = td->tile_hgt = 0;
-
-                       /* Apply and Verify */
-                       term_data_check_font(td);
-                       term_data_check_size(td);
-
-                       /* Resize and Redraw */
-                       term_data_resize(td);
-                       term_data_redraw(td);
-
-                       /* Restore the window */
-                       activate(old_win);
-
-                       break;
-               }
-
-               /* Size menu */
-               case 132:
-               {
-                       if (!td) break;
-
-                       /* Save old */
-                       old_win = active;
-
-                       /* Activate */
-                       activate(td->w);
-
-                       GetMenuItemText(GetMenuHandle(132), selection, s);
-                       s[s[0]+1]=0;
-                       td->font_size = atoi((char*)(s+1));
-
-                       /* Tile Width Hight Init */
-                       td->tile_wid = td->tile_hgt = 0;
-
-                       /* Apply and Verify */
-                       term_data_check_font(td);
-                       term_data_check_size(td);
-
-                       /* Resize and Redraw */
-                       term_data_resize(td);
-                       term_data_redraw(td);
-
-                       /* Restore */
-                       activate(old_win);
-
-                       break;
-               }
-
-               /* Window menu */
-               case 133:
-               {
-                       /* Parse */
-                       i = selection - 1;
-
-                       /* Check legality of choice */
-                       if ((i < 0) || (i >= MAX_TERM_DATA)) break;
-
-                       /* Obtain the window */
-                       td = &data[i];
-
-                       /* Mapped */
-                       td->mapped = TRUE;
-
-                       /* Link */      
-                       term_data_link(i);
-
-                       /* Mapped (?) */
-                       td->t->mapped_flag = TRUE;
-
-                       /* Show the window */
-                       ShowWindow(td->w);
-
-                       /* Bring to the front */
-                       SelectWindow(td->w);
-
-                       break;
-               }
-
-               /* Special menu */
-               case 134:
-               {
-                       switch (selection)
-                       {
-                               case 1:
-                               {
-                                       /* Toggle arg_sound */
-                                       arg_sound = !arg_sound;
-
-                                       /* React to changes */
-                                       Term_xtra(TERM_XTRA_REACT, 0);
-
-                                       break;
-                               }
-
-                               case 2:
-                               {
-                                       /* Toggle arg_graphics */
-                                       arg_graphics = !arg_graphics;
-                                       if( arg_graphics == true ){
-                                               ANGBAND_GRAF = "old";
-                                               arg_newstyle_graphics = false;
-                                               grafWidth = grafHeight = 8;
-                                               pictID = 1001;
-                                       }
-
-                                       /* Hack -- Force redraw */
-                                       Term_key_push(KTRL('R'));
-
-                                       break;
-                               }
-
-                               case 4:
-                               {
-                                       arg_fiddle = !arg_fiddle;
-                                       break;
-                               }
-
-                               case 5:
-                               {
-                                       arg_wizard = !arg_wizard;
-                                       break;
-                               }
-
-                               case 7:
-                               {
-                                       SoundConfigDLog();
-                                       break;
-                               }
-                               case 8:
-                               {
-                                       if (streq(ANGBAND_GRAF, "old"))
-                                       {
-                                               ANGBAND_GRAF = "new";
-                                               arg_newstyle_graphics = true;
-                                               grafWidth = grafHeight = 16;
-                                               pictID = 1002;
-                                       }
-                                       else
-                                       {
-                                               ANGBAND_GRAF = "old";
-                                               arg_newstyle_graphics = false;
-                                               grafWidth = grafHeight = 8;
-                                               pictID = 1001;
-                                       }
-
-                                       /* Hack -- Force redraw */
-                                       Term_key_push(KTRL('R'));
-                                       break;
-                               }
-
-                               case 9: /* bigtile mode */
-                               {
-                                       term_data *td = &data[0];
-
-                                       if (!can_save){
-#ifdef JP
-                                               plog("º£¤ÏÊѹ¹½ÐÍè¤Þ¤»¤ó¡£");
-#else
-                                               plog("You may not do that right now.");
-#endif
-                                               break;
-                                       }
-
-                                       /* Toggle "arg_bigtile" */
-                                       arg_bigtile = !arg_bigtile;
-
-                                       /* Activate */
-                                       Term_activate(td->t);
-
-                                       /* Resize the term */
-                                       Term_resize(td->cols, td->rows);
-
-                                       break;
-                               }
-
-                       }
-
-                       break;
-               }
-
-               /* TileWidth menu */
-               case 135:
-               {
-                       if (!td) break;
-
-                       /* Save old */
-                       old_win = active;
-
-                       /* Activate */
-                       activate(td->w);
-
-                       GetMenuItemText(GetMenuHandle(135), selection, s);
-                       s[s[0]+1]=0;
-                       td->tile_wid = atoi((char*)(s+1));
-
-                       /* Apply and Verify */
-                       term_data_check_size(td);
-
-                       /* Resize and Redraw */
-                       term_data_resize(td);
-                       term_data_redraw(td);
-
-                       /* Restore */
-                       activate(old_win);
-
-                       break;
-               }
-
-               /* TileHeight menu */
-               case 136:
-               {
-                       if (!td) break;
-
-                       /* Save old */
-                       old_win = active;
-
-                       /* Activate */
-                       activate(td->w);
-
-                       GetMenuItemText(GetMenuHandle(136), selection, s);
-                       s[s[0]+1]=0;
-                       td->tile_hgt = atoi((char*)(s+1));
-
-                       /* Apply and Verify */
-                       term_data_check_size(td);
-
-                       /* Resize and Redraw */
-                       term_data_resize(td);
-                       term_data_redraw(td);
-
-                       /* Restore */
-                       activate(old_win);
-
-                       break;
-               }
-       }
-
-
-       /* Clean the menu */
-       HiliteMenu(0);
-}
-
-
-#ifdef USE_SFL_CODE
-
-
-/*
- * Check for extra required parameters -- From "Maarten Hazewinkel"
- */
-static OSErr CheckRequiredAEParams(const AppleEvent *theAppleEvent)
-{
-       OSErr   aeError;
-       DescType        returnedType;
-       Size    actualSize;
-
-       aeError = AEGetAttributePtr(theAppleEvent, keyMissedKeywordAttr, typeWildCard,
-                                   &returnedType, NULL, 0, &actualSize);
-
-       if (aeError == errAEDescNotFound) return (noErr);
-
-       if (aeError == noErr) return (errAEParamMissed);
-
-       return (aeError);
-}
-
-
-/*
- * Apple Event Handler -- Open Application
- */
-static pascal OSErr AEH_Start(const AppleEvent *theAppleEvent,
-                             const AppleEvent *reply, long handlerRefCon)
-{
-#pragma unused(reply, handlerRefCon)
-
-       return (CheckRequiredAEParams(theAppleEvent));
-}
-
-
-/*
- * Apple Event Handler -- Quit Application
- */
-static pascal OSErr AEH_Quit(const AppleEvent *theAppleEvent,
-                            const AppleEvent *reply, long handlerRefCon)
-{
-#pragma unused(reply, handlerRefCon)
-#if TARGET_API_MAC_CARBON
-
-       /* Save the game (if necessary) */
-       if (game_in_progress && character_generated)
-       {
-                       if (!can_save){
-#ifdef JP
-                               plog("º£¤Ï¥»¡¼¥Ö¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£");
-#else
-                               plog("You may not do that right now.");
-#endif
-                               return;
-                       }
-                       /* Hack -- Forget messages */
-                       msg_flag = FALSE;
-
-                       /* Save the game */
-#if 0
-                       do_cmd_save_game(FALSE);
-#endif
-                       Term_key_push(SPECIAL_KEY_QUIT);
-                       return;
-               }
-
-               /* Quit */
-               quit(NULL);
-#else
-       /* Quit later */
-       quit_when_ready = TRUE;
-
-       /* Check arguments */
-       return (CheckRequiredAEParams(theAppleEvent));
-#endif
-}
-
-
-/*
- * Apple Event Handler -- Print Documents
- */
-static pascal OSErr AEH_Print(const AppleEvent *theAppleEvent,
-                             const AppleEvent *reply, long handlerRefCon)
-{
-#pragma unused(theAppleEvent, reply, handlerRefCon)
-
-       return (errAEEventNotHandled);
-}
-
-
-/*
- * Apple Event Handler by Steve Linberg (slinberg@crocker.com).
- *
- * The old method of opening savefiles from the finder does not work
- * on the Power Macintosh, because CountAppFiles and GetAppFiles,
- * used to return information about the selected document files when
- * an application is launched, are part of the Segment Loader, which
- * is not present in the RISC OS due to the new memory architecture.
- *
- * The "correct" way to do this is with AppleEvents.  The following
- * code is modeled on the "Getting Files Selected from the Finder"
- * snippet from Think Reference 2.0.  (The prior sentence could read
- * "shamelessly swiped & hacked")
- */
-static pascal OSErr AEH_Open(AppleEvent *theAppleEvent,
-                            AppleEvent* reply, long handlerRefCon)
-{
-#pragma unused(reply, handlerRefCon)
-
-       FSSpec          myFSS;
-       AEDescList      docList;
-       OSErr           err;
-       Size            actualSize;
-       AEKeyword       keywd;
-       DescType        returnedType;
-       char            foo[128];
-       FInfo           myFileInfo;
-
-       /* Put the direct parameter (a descriptor list) into a docList */
-       err = AEGetParamDesc(theAppleEvent, keyDirectObject, typeAEList, &docList);
-       if (err) return err;
-
-       /*
-        * We ignore the validity check, because we trust the FInder, and we only
-        * allow one savefile to be opened, so we ignore the depth of the list.
-        */
-
-       err = AEGetNthPtr(&docList, 1L, typeFSS, &keywd,
-                         &returnedType, (Ptr) &myFSS, sizeof(myFSS), &actualSize);
-       if (err) return err;
-
-       /* Only needed to check savefile type below */
-       err = FSpGetFInfo(&myFSS, &myFileInfo);
-       if (err)
-       {
-               sprintf(foo, "Arg!  FSpGetFInfo failed with code %d", err);
-               mac_warning (foo);
-               return err;
-       }
-
-       /* Ignore non 'SAVE' files */
-       if (myFileInfo.fdType != 'SAVE') return noErr;
-
-       /* XXX XXX XXX Extract a file name */
-       PathNameFromDirID(myFSS.parID, myFSS.vRefNum, (StringPtr)savefile);
-       pstrcat((StringPtr)savefile, (StringPtr)&myFSS.name);
-
-       /* Convert the string */
-       ptocstr((StringPtr)savefile);
-
-       /* Delay actual open */
-       open_when_ready = TRUE;
-
-       /* Dispose */
-       err = AEDisposeDesc(&docList);
-
-       /* Success */
-       return noErr;
-}
-
-
-#endif
-
-
-
-/*
- * Macintosh modifiers (event.modifier & ccc):
- *   cmdKey, optionKey, shiftKey, alphaLock, controlKey
- *
- *
- * Macintosh Keycodes (0-63 normal, 64-95 keypad, 96-127 extra):
- *
- * Return:36
- * Delete:51
- *
- * Period:65
- * Star:67
- * Plus:69
- * Clear:71
- * Slash:75
- * Enter:76
- * Minus:78
- * Equal:81
- * 0-7:82-89
- * 8-9:91-92
- *
- * F5: 96
- * F6: 97
- * F7: 98
- * F3:99
- * F8:100
- * F10:109
- * F11:103
- * F13:105
- * F14:107
- * F9:101
- * F12:111
- * F15:113
- * Help:114
- * Home:115
- * PgUp:116
- * Del:117
- * F4: 118
- * End:119
- * F2:120
- * PgDn:121
- * F1:122
- * Lt:123
- * Rt:124
- * Dn:125
- * Up:126
- */
-
-
-/*
- * Optimize non-blocking calls to "CheckEvents()"
- * Idea from "Maarten Hazewinkel <mmhazewi@cs.ruu.nl>"
- */
-#define EVENT_TICKS 6
-
-
-/*
- * Check for Events, return TRUE if we process any
- *
- * Hack -- Handle AppleEvents if appropriate (ignore result code).
- */
-static bool CheckEvents(bool wait)
-{
-       EventRecord event;
-
-       WindowPtr w;
-
-       Rect r;
-
-       long newsize;
-
-       int ch, ck;
-
-       int mc, ms, mo, mx;
-
-       int i;
-
-       term_data *td = NULL;
-
-       huge curTicks;
-
-       static huge lastTicks = 0L;
-
-
-       /* Access the clock */
-       curTicks = TickCount();
-
-       /* Hack -- Allow efficient checking for non-pending events */
-       if (!wait && (curTicks < lastTicks + EVENT_TICKS)) return (FALSE);
-
-       /* Timestamp last check */
-       lastTicks = curTicks;
-
-#if TARGET_API_MAC_CARBON
-       WaitNextEvent( everyEvent, &event, 1L, nil );
-#else
-       /* Let the "system" run */
-       SystemTask();
-
-       /* Get an event (or null) */
-       GetNextEvent(everyEvent, &event);
-#endif
-
-       /* Hack -- Nothing is ready yet */
-       if (event.what == nullEvent) return (FALSE);
-
-       /* Analyze the event */
-       switch (event.what)
-       {
-
-#if 0
-
-               case activateEvt:
-               {
-                       w = (WindowPtr)event.message;
-
-                       activate(w);
-
-                       break;
-               }
-
-#endif
-
-               case updateEvt:
-               {
-                       /* Extract the window */
-                       w = (WindowPtr)event.message;
-
-                       /* Find the window */
-                       for (i = 0; i < MAX_TERM_DATA; i++)
-                       {
-                               /* Skip dead windows */
-                               if (!data[i].t) continue;
-
-                               /* Notice matches */
-                               if (data[i].w == w) td = &data[i];
-                       }
-
-                       /* Hack XXX XXX XXX */
-                       BeginUpdate(w);
-                       EndUpdate(w);
-
-                       /* Redraw the window */
-                       if (td) term_data_redraw(td);
-
-                       break;
-               }
-
-               case keyDown:
-               case autoKey:
-               {
-                       /* Extract some modifiers */
-                       mc = (event.modifiers & controlKey) ? TRUE : FALSE;
-                       ms = (event.modifiers & shiftKey) ? TRUE : FALSE;
-                       mo = (event.modifiers & optionKey) ? TRUE : FALSE;
-                       mx = (event.modifiers & cmdKey) ? TRUE : FALSE;
-
-                       /* Keypress: (only "valid" if ck < 96) */
-                       ch = (event.message & charCodeMask) & 255;
-
-                       /* Keycode: see table above */
-                       ck = ((event.message & keyCodeMask) >> 8) & 255;
-
-                       /* Command + "normal key" -> menu action */
-                       if (mx && (ck < 64))
-                       {
-                               /* Hack -- Prepare the menus */
-                               setup_menus();
-
-                               /* Run the Menu-Handler */
-                               menu(MenuKey(ch));
-
-                               /* Turn off the menus */
-                               HiliteMenu(0);
-
-                               /* Done */
-                               break;
-                       }
-
-
-                       /* Hide the mouse pointer */
-                       ObscureCursor();
-
-                       /* Normal key -> simple keypress */
-                       if (ck < 64)
-                       {
-                               /* Enqueue the keypress */
-                               Term_keypress(ch);
-                       }
-
-                       /* Hack -- normal "keypad keys" -> special keypress */
-                       else if (!mc && !ms && !mo && !mx && (ck < 96))
-                       {
-                               /* Hack -- "enter" is confused */
-                               if (ck == 76) ch = '\n';
-
-                               /* Send control-caret as a trigger */
-                               Term_keypress(30);
-
-                               /* Send the "ascii" keypress */
-                               Term_keypress(ch);
-                       }
-
-                       /* Bizarre key -> encoded keypress */
-                       else if (ck <= 127)
-                       {
-                               /* Hack -- introduce with control-underscore */
-                               Term_keypress(31);
-
-                               /* Send some modifier keys */
-                               if (mc) Term_keypress('C');
-                               if (ms) Term_keypress('S');
-                               if (mo) Term_keypress('O');
-                               if (mx) Term_keypress('X');
-
-                               /* Hack -- Downshift and encode the keycode */
-                               Term_keypress('0' + (ck - 64) / 10);
-                               Term_keypress('0' + (ck - 64) % 10);
-
-                               /* Hack -- Terminate the sequence */
-                               /* MPW can generate 10 or 13 for keycode of '\r' */
-                               /* -noMapCR option swaps '\r' and '\n' */
-                               Term_keypress('\r');
-                       }
-
-                       break;
-               }
-
-               case mouseDown:
-               {
-                       int code;
-
-                       /* Analyze click location */
-                       code = FindWindow(event.where, &w);
-
-                       /* Find the window */
-                       for (i = 0; i < MAX_TERM_DATA; i++)
-                       {
-                               /* Skip dead windows */
-                               if (!data[i].t) continue;
-
-                               /* Notice matches */
-                               if (data[i].w == w) td = &data[i];
-                       }
-
-                       /* Analyze */
-                       switch (code)
-                       {
-                               case inMenuBar:
-                               {
-                                       setup_menus();
-                                       menu(MenuSelect(event.where));
-                                       HiliteMenu(0);
-                                       break;
-                               }
-#if !TARGET_API_MAC_CARBON
-                               case inSysWindow:
-                               {
-                                       SystemClick(&event, w);
-                                       break;
-                               }
-#endif
-
-                               case inDrag:
-                               {
-                                       Point p;
-
-                                       WindowPtr old_win;
-                                       BitMap screen;
-                                       Rect portRect;
-#if TARGET_API_MAC_CARBON                                              
-                                       GetQDGlobalsScreenBits( &screen );
-#else
-                                       screen = qd.screenBits;
-#endif 
-                                       r = screen.bounds;
-                                       r.top += 20; /* GetMBarHeight() XXX XXX XXX */
-                                       InsetRect(&r, 4, 4);
-                                       DragWindow(w, event.where, &r);
-
-                                       /* Oops */
-                                       if (!td) break;
-
-                                       /* Save */
-                                       old_win = active;
-
-                                       /* Activate */
-                                       activate(td->w);
-
-                                       /* Analyze */
-#if TARGET_API_MAC_CARBON
-                                       GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
-#else
-                                       portRect = td->w->portRect;
-                                       local_to_global( &portRect );
-#endif
-                                       p.h = portRect.left;
-                                       p.v = portRect.top;
-#if !TARGET_API_MAC_CARBON
-                                       LocalToGlobal(&p);
-#endif
-                                       td->r.left = p.h;
-                                       td->r.top = p.v;
-
-                                       /* Restore */
-                                       activate(old_win);
-
-                                       /* Apply and Verify */
-                                       term_data_check_size(td);
-
-                                       break;
-                               }
-
-                               case inGoAway:
-                               {
-                                       /* Oops */
-                                       if (!td) break;
-
-                                       /* Track the go-away box */
-                                       if (TrackGoAway(w, event.where))
-                                       {
-                                               /* Not Mapped */
-                                               td->mapped = FALSE;
-
-                                               /* Not Mapped */
-                                               td->t->mapped_flag = FALSE;
-
-                                               /* Hide the window */
-                                               HideWindow(td->w);
-                                       }
-
-                                       break;
-                               }
-
-                               case inGrow:
-                               {
-                                       s16b x, y;
-
-                                       term *old = Term;
-                                       BitMap          screen;
-       
-#if TARGET_API_MAC_CARBON
-                                       GetQDGlobalsScreenBits( &screen );
-#else
-                                       screen = qd.screenBits;
-#endif
-                                       /* Oops */
-                                       if (!td) break;
-
-                                       /* Fake rectangle */
-                                       r.left = 20 * td->tile_wid + td->size_ow1;
-                                       r.right = screen.bounds.right;
-                                       r.top = 1 * td->tile_hgt + td->size_oh1;
-                                       r.bottom = screen.bounds.bottom;
-
-                                       /* Grow the rectangle */
-                                       newsize = GrowWindow(w, event.where, &r);
-
-                                       /* Handle abort */
-                                       if (!newsize) break;
-
-                                       /* Extract the new size in pixels */
-                                       y = HiWord(newsize) - td->size_oh1 - td->size_oh2;
-                                       x = LoWord(newsize) - td->size_ow1 - td->size_ow2;
-
-                                       /* Extract a "close" approximation */
-                                       td->rows = y / td->tile_hgt;
-                                       td->cols = x / td->tile_wid;
-
-                                       /* Apply and Verify */
-                                       term_data_check_size(td);
-                                       /* Activate */
-                                       Term_activate(td->t);
-
-                                       /* Hack -- Resize the term */
-                                       Term_resize(td->cols, td->rows);
-
-                                       /* Resize and Redraw */
-                                       term_data_resize(td);
-                                       term_data_redraw(td);
-
-                                       /* Restore */
-                                       Term_activate(old);
-
-                                       break;
-                               }
-
-                               case inContent:
-                               {
-                                       SelectWindow(w);
-
-                                       break;
-                               }
-                       }
-
-                       break;
-               }
-
-               /* Disk Event -- From "Maarten Hazewinkel" */
-               case diskEvt:
-               {
-
-#if TARGET_API_MAC_CARBON
-#else
-                       /* check for error when mounting the disk */
-                       if (HiWord(event.message) != noErr)
-                       {
-                               Point p =
-                               {120, 120};
-
-                               DILoad();
-                               DIBadMount(p, event.message);
-                               DIUnload();
-                       }
-#endif
-                       break;
-               }
-
-               /* OS Event -- From "Maarten Hazewinkel" */
-               case osEvt:
-               {
-                       switch ((event.message >> 24) & 0x000000FF)
-                       {
-                               case suspendResumeMessage:
-
-                               /* Resuming: activate the front window */
-                               if (event.message & resumeFlag)
-                               {
-#if TARGET_API_MAC_CARBON
-                                       Cursor  arrow;
-                                               
-                                       SetPortWindowPort( FrontWindow() );
-                                       
-                                       GetQDGlobalsArrow( &arrow );
-                                       SetCursor(&arrow);
-#else
-                                       SetPort(FrontWindow());
-                                       SetCursor(&qd.arrow);
-#endif
-                               }
-
-                               /* Suspend: deactivate the front window */
-                               else
-                               {
-                                       /* Nothing */
-                               }
-
-                               break;
-                       }
-
-                       break;
-               }
-
-#ifdef USE_SFL_CODE
-
-               /* From "Steve Linberg" and "Maarten Hazewinkel" */
-               case kHighLevelEvent:
-               {
-#if TARGET_API_MAC_CARBON
-                       AEProcessAppleEvent(&event);
-#else
-                       /* Process apple events */
-                       if (AEProcessAppleEvent(&event) != noErr)
-                       {
-                               #ifdef JP
-                               plog("Apple Event Handler¤Î¥¨¥é¡¼¤Ç¤¹.");
-                               #else
-                               plog("Error in Apple Event Handler!");
-                               #endif
-                       }
-
-                       /* Handle "quit_when_ready" */
-                       if (quit_when_ready)
-                       {
-                               /* Forget */
-                               quit_when_ready = FALSE;
-
-                               /* Do the menu key */
-                               menu(MenuKey('q'));
-
-                               /* Turn off the menus */
-                               HiliteMenu(0);
-                       }
-
-                       /* Handle "open_when_ready" */
-                       handle_open_when_ready();
-#endif
-
-                       break;
-               }
-
-#endif
-
-       }
-
-
-       /* Something happened */
-       return (TRUE);
-}
-
-
-
-
-/*** Some Hooks for various routines ***/
-
-
-/*
- * Mega-Hack -- emergency lifeboat
- */
-static vptr lifeboat = NULL;
-
-
-/*
- * Hook to "release" memory
- */
-static vptr hook_rnfree(vptr v, huge size)
-{
-
-#pragma unused (size)
-
-#ifdef USE_MALLOC
-
-       /* Alternative method */
-       free(v);
-
-#else
-
-       /* Dispose */
-       DisposePtr(v);
-
-#endif
-
-       /* Success */
-       return (NULL);
-}
-
-/*
- * Hook to "allocate" memory
- */
-static vptr hook_ralloc(huge size)
-{
-
-#ifdef USE_MALLOC
-
-       /* Make a new pointer */
-       return (malloc(size));
-
-#else
-
-       /* Make a new pointer */
-       return (NewPtr(size));
-
-#endif
-
-}
-
-/*
- * Hook to handle "out of memory" errors
- */
-static vptr hook_rpanic(huge size)
-{
-
-#pragma unused (size)
-
-       vptr mem = NULL;
-
-       /* Free the lifeboat */
-       if (lifeboat)
-       {
-               /* Free the lifeboat */
-               DisposePtr(lifeboat);
-
-               /* Forget the lifeboat */
-               lifeboat = NULL;
-
-               /* Mega-Hack -- Warning */
-               #ifdef JP
-               mac_warning("¥á¥â¥ê¡¼¤¬Â­¤ê¤Þ¤»¤ó!\rº£¤¹¤°½ªÎ»¤·¤Æ²¼¤µ¤¤!");
-               #else
-               mac_warning("Running out of Memory!\rAbort this process now!");
-               #endif
-
-               /* Mega-Hack -- Never leave this function */
-               while (TRUE) CheckEvents(TRUE);
-       }
-
-       /* Mega-Hack -- Crash */
-       return (NULL);
-}
-
-
-/*
- * Hook to tell the user something important
- */
-static void hook_plog(cptr str)
-{
-       /* Warning message */
-       mac_warning(str);
-}
-
-/*
- * Hook to tell the user something, and then quit
- */
-static void hook_quit(cptr str)
-{
-       /* Warning if needed */
-       if (str) mac_warning(str);
-
-       /* Write a preference file */
-       save_pref_file();
-
-       /* All done */
-       ExitToShell();
-}
-
-/*
- * Hook to tell the user something, and then crash
- */
-static void hook_core(cptr str)
-{
-       /* XXX Use the debugger */
-       /* DebugStr(str); */
-
-       /* Warning */
-       if (str) mac_warning(str);
-
-       /* Warn, then save player */
-       #ifdef JP
-       mac_warning("Ã×̿Ū¤Ê¥¨¥é¡¼¤Ç¤¹.\r¶¯À©Åª¤Ë¥»¡¼¥Ö¤·¤Æ½ªÎ»¤·¤Þ¤¹.");
-       #else
-       mac_warning("Fatal error.\rI will now attempt to save and quit.");
-       #endif
-
-       /* Attempt to save */
-       #ifdef JP
-       if (!save_player()) mac_warning("·Ù¹ð -- ¥»¡¼¥Ö¤Ë¼ºÇÔ¤·¤Þ¤·¤¿!");
-       #else
-       if (!save_player()) mac_warning("Warning -- save failed!");
-       #endif
-       
-       /* Quit */
-       quit(NULL);
-}
-
-
-
-/*** Main program ***/
-
-
-/*
- * Init some stuff
- *
- * XXX XXX XXX Hack -- This function attempts to "fix" the nasty
- * "Macintosh Save Bug" by using "absolute" path names, since on
- * System 7 machines anyway, the "current working directory" often
- * "changes" due to background processes, invalidating any "relative"
- * path names.  Note that the Macintosh is limited to 255 character
- * path names, so be careful about deeply embedded directories...
- *
- * XXX XXX XXX Hack -- This function attempts to "fix" the nasty
- * "missing lib folder bug" by allowing the user to help find the
- * "lib" folder by hand if the "application folder" code fails...
- */
-static void init_stuff(void)
-{
-       int i;
-
-       short vrefnum;
-       long drefnum;
-       long junk;
-
-       SFTypeList types;
-       SFReply reply;
-
-       Rect r;
-       Point topleft;
-
-       char path[1024];
-
-       BitMap screen;
-       Rect screenRect;
-
-#if TARGET_API_MAC_CARBON
-       OSErr err = noErr;
-       NavDialogOptions dialogOptions;
-       FSSpec theFolderSpec;
-       NavReplyRecord theReply;
-#endif
-       /* Fake rectangle */
-       r.left = 0;
-       r.top = 0;
-       r.right = 344;
-       r.bottom = 188;
-
-       /* Center it */
-#if TARGET_API_MAC_CARBON
-       screenRect = GetQDGlobalsScreenBits(&screen)->bounds;
-#else
-       screenRect = qd.screenBits.bounds;
-#endif
-       center_rect(&r, &screenRect);
-
-       /* Extract corner */
-       topleft.v = r.top;
-       topleft.h = r.left;
-
-
-       /* Default to the "lib" folder with the application */
-       refnum_to_name(path, app_dir, app_vol, (char*)("\plib:"));
-
-
-       /* Check until done */
-       while (1)
-       {
-               /* Prepare the paths */
-               init_file_paths(path);
-
-               /* Build the filename */
-#ifdef JP
-               path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news_j.txt");
-#else
-               path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news.txt");
-#endif
-
-               /* Attempt to open and close that file */
-               if (0 == fd_close(fd_open(path, O_RDONLY))) break;
-
-               /* Warning */
-#ifdef JP
-               plog_fmt("'%s' ¥Õ¥¡¥¤¥ë¤ò¥ª¡¼¥×¥ó½ÐÍè¤Þ¤»¤ó.", path);
-#else
-               plog_fmt("Unable to open the '%s' file.", path);
-#endif
-
-               /* Warning */
-#ifdef JP
-               plog("Hengband¤Î'lib'¥Õ¥©¥ë¥À¤¬Â¸ºß¤·¤Ê¤¤¤«Àµ¤·¤¯Ìµ¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹.");
-#else
-               plog("The Angband 'lib' folder is probably missing or misplaced.");
-#endif
-
-               /* Warning */
-#ifdef JP
-               plog("Please 'open' any file in any sub-folder of the 'lib' folder.");
-#else
-               plog("Please 'open' any file in any sub-folder of the 'lib' folder.");
-#endif
-               
-#if TARGET_API_MAC_CARBON
-               /* Ask the user to choose the lib folder */
-               err = NavGetDefaultDialogOptions(&dialogOptions);
-
-               /* Paranoia */
-               if (err != noErr) quit(NULL);
-
-               /* Set default location option */
-               dialogOptions.dialogOptionFlags |= kNavSelectDefaultLocation;
-
-               /* Clear preview option */
-               dialogOptions.dialogOptionFlags &= ~(kNavAllowPreviews);
-
-               /* Forbit selection of multiple files */
-               dialogOptions.dialogOptionFlags &= ~(kNavAllowMultipleFiles);
-
-               /* Display location */
-               dialogOptions.location = topleft;
-
-               /* Load the message for the missing folder from the resource fork */
-               GetIndString(dialogOptions.message, 128, 1);
-
-               /* Wait for the user to choose a folder */
-               err = NavChooseFolder(
-                       nil,
-                       &theReply,
-                       &dialogOptions,
-                       nil,
-                       nil,
-                       nil);
-
-               /* Assume the player doesn't want to go on */
-               if ((err != noErr) || !theReply.validRecord) quit(NULL);
-
-               /* Retrieve FSSpec from the reply */
-               {
-                       AEKeyword theKeyword;
-                       DescType actualType;
-                       Size actualSize;
-
-                       /* Get a pointer to selected folder */
-                       err = AEGetNthPtr(
-                               &(theReply.selection),
-                               1,
-                               typeFSS,
-                               &theKeyword,
-                               &actualType,
-                               &theFolderSpec,
-                               sizeof(FSSpec),
-                               &actualSize);
-
-                       /* Paranoia */
-                       if (err != noErr) quit(NULL);
-               }
-
-               /* Free navitagor reply */
-               err = NavDisposeReply(&theReply);
-
-               /* Paranoia */
-               if (err != noErr) quit(NULL);
-
-               /* Extract textual file name for given file */
-               refnum_to_name(
-                       path,
-                       theFolderSpec.parID,
-                       theFolderSpec.vRefNum,
-                       (char *)theFolderSpec.name);
-#else
-               /* Allow "text" files */
-               types[0] = 'TEXT';
-
-               /* Allow "save" files */
-               types[1] = 'SAVE';
-
-               /* Allow "data" files */
-               types[2] = 'DATA';
-
-               /* Get any file */
-               SFGetFile(topleft, "\p", NULL, 3, types, NULL, &reply);
-
-               /* Allow cancel */
-               if (!reply.good) quit(NULL);
-
-               /* Extract textual file name for given file */
-               GetWDInfo(reply.vRefNum, &vrefnum, &drefnum, &junk);
-               refnum_to_name(path, drefnum, vrefnum, (char*)reply.fName);
-#endif
-
-               /* Hack -- Remove the "filename" */
-               i = strlen(path) - 1;
-               while ((i > 0) && (path[i] != ':')) i--;
-               if (path[i] == ':') path[i+1] = '\0';
-
-               /* Hack -- allow "lib" folders */
-               if (suffix(path, "lib:")) continue;
-
-               /* Hack -- Remove the "sub-folder" */
-               i = i - 1;
-               while ((i > 1) && (path[i] != ':')) i--;
-               if (path[i] == ':') path[i+1] = '\0';
-       }
-}
-
-
-/*
- * Macintosh Main loop
- */
-void main(void)
-{
-       EventRecord tempEvent;
-       int numberOfMasters = 10;
-
-#if !TARGET_API_MAC_CARBON
-       /* Increase stack space by 64K */
-       SetApplLimit(GetApplLimit() - 131072L);//65536L);
-
-       /* Stretch out the heap to full size */
-       MaxApplZone();
-#endif
-
-       /* Get more Masters */
-       while (numberOfMasters--) MoreMasters();
-
-#if !TARGET_API_MAC_CARBON
-       /* Set up the Macintosh */
-       InitGraf(&qd.thePort);
-       InitFonts();
-       InitWindows();
-       InitMenus();
-       /* TEInit(); */
-       InitDialogs(NULL);
-#endif
-       InitCursor();
-
-#ifdef JP
-       KeyScript(smRoman);
-#endif
-
-       /* Flush events */
-       FlushEvents(everyEvent, 0);
-
-       /* Flush events some more (?) */
-       (void)EventAvail(everyEvent, &tempEvent);
-       (void)EventAvail(everyEvent, &tempEvent);
-       (void)EventAvail(everyEvent, &tempEvent);
-
-
-#ifdef ANGBAND_LITE_MAC
-
-       /* Nothing */
-
-#else /* ANGBAND_LITE_MAC */
-
-# if defined(powerc) || defined(__powerc)
-
-       /* Assume System 7 */
-       
-       /* Assume Color Quickdraw */
-
-# else
-
-       /* Block */
-       if (TRUE)
-       {
-               OSErr err;
-               long versionNumber;
-
-               /* Check the Gestalt */
-               err = Gestalt(gestaltSystemVersion, &versionNumber);
-
-               /* Check the version */
-               if ((err != noErr) || (versionNumber < 0x0700))
-               {
-                       #ifdef JP
-                       quit("¤³¤Î¥×¥í¥°¥é¥à¤Ï´Á»úTalk7.x.x°Ê¹ß¤ÇÆ°ºî¤·¤Þ¤¹.");
-                       #else
-                       quit("You must have System 7 to use this program.");
-                       #endif
-               }
-       }
-
-       /* Block */
-       if (TRUE)
-       {
-               SysEnvRec env;
-
-               /* Check the environs */
-               if (SysEnvirons(1, &env) != noErr)
-               {
-                       #ifdef JP
-                       quit("SysEnvirons ¥³¡¼¥ë¤Ï¼ºÇÔ¤·¤Þ¤·¤¿¡ª");
-                       #else
-                       quit("The SysEnvirons call failed!");
-                       #endif
-               }
-
-               /* Check for System Seven Stuff */
-               if (env.systemVersion < 0x0700)
-               {
-                       #ifdef JP
-                       quit("¤³¤Î¥×¥í¥°¥é¥à¤Ï´Á»úTalk7.x.x°Ê¹ß¤ÇÆ°ºî¤·¤Þ¤¹.");
-                       #else
-                       quit("You must have System 7 to use this program.");
-                       #endif
-               }
-
-               /* Check for Color Quickdraw */
-               if (!env.hasColorQD)
-               {
-                       #ifdef JP
-                       quit("¤³¤Î¥×¥í¥°¥é¥à¤ÏColor Quickdraw¤¬Ìµ¤¤¤ÈÆ°ºî¤·¤Þ¤»¤ó.");
-                       #else
-                       quit("You must have Color Quickdraw to use this program.");
-                       #endif
-               }
-       }
-
-# endif
-
-#endif /* ANGBAND_LITE_MAC */
-
-
-#ifdef USE_SFL_CODE
-       /* Obtain a "Universal Procedure Pointer" */
-       AEH_Start_UPP = NewAEEventHandlerUPP(AEH_Start);
-       /* Install the hook (ignore error codes) */
-       AEInstallEventHandler(kCoreEventClass, kAEOpenApplication, AEH_Start_UPP,
-                             0L, FALSE);
-
-       /* Obtain a "Universal Procedure Pointer" */
-       AEH_Quit_UPP = NewAEEventHandlerUPP(AEH_Quit);
-       /* Install the hook (ignore error codes) */
-       AEInstallEventHandler(kCoreEventClass, kAEQuitApplication, AEH_Quit_UPP,
-                             0L, FALSE);
-
-       /* Obtain a "Universal Procedure Pointer" */
-       AEH_Print_UPP = NewAEEventHandlerUPP(AEH_Print);
-       /* Install the hook (ignore error codes) */
-       AEInstallEventHandler(kCoreEventClass, kAEPrintDocuments, AEH_Print_UPP,
-                             0L, FALSE);
-
-       /* Obtain a "Universal Procedure Pointer" */
-       AEH_Open_UPP = NewAEEventHandlerUPP(AEH_Open);
-       /* Install the hook (ignore error codes) */
-       AEInstallEventHandler(kCoreEventClass, kAEOpenDocuments, AEH_Open_UPP,
-                             0L, FALSE);
-#endif
-
-       /* Find the current application */
-       SetupAppDir();
-
-
-       /* Mark ourself as the file creator */
-       _fcreator = 'Heng';
-
-       /* Default to saving a "text" file */
-       _ftype = 'TEXT';
-
-
-#if defined(__MWERKS__)
-
-       /* Obtian a "Universal Procedure Pointer" */
-#if TARGET_API_MAC_CARBON
-       ynfilterUPP = NewModalFilterUPP(ynfilter);
-#else
-       ynfilterUPP = NewModalFilterProc(ynfilter);
-#endif
-
-#endif
-
-
-       /* Hook in some "z-virt.c" hooks */
-       rnfree_aux = hook_rnfree;
-       ralloc_aux = hook_ralloc;
-       rpanic_aux = hook_rpanic;
-
-       /* Hooks in some "z-util.c" hooks */
-       plog_aux = hook_plog;
-       quit_aux = hook_quit;
-       core_aux = hook_core;
-
-       BackColor(blackColor);
-       ForeColor(whiteColor);
-
-       /* Show the "watch" cursor */
-       SetCursor(*(GetCursor(watchCursor)));
-
-       /* Prepare the menubar */
-       init_menubar();
-
-       /* Prepare the windows */
-       init_windows();
-
-       init_sound();
-
-       init_graf();
-       
-       /* Hack -- process all events */
-       while (CheckEvents(TRUE)) /* loop */;
-
-       /* Reset the cursor */
-#if TARGET_API_MAC_CARBON
-       {
-               Cursor  arrow;
-               GetQDGlobalsArrow( &arrow );
-               SetCursor(&arrow);
-       }
-#else
-       SetCursor( &qd.arrow );
-#endif
-
-
-       /* Mega-Hack -- Allocate a "lifeboat" */
-       lifeboat = NewPtr(16384);
-
-       /* Note the "system" */
-       ANGBAND_SYS = "mac";
-
-       /* Initialize */
-       init_stuff();
-
-       /* Initialize */
-       init_angband();
-
-
-       /* Hack -- process all events */
-       while (CheckEvents(TRUE)) /* loop */;
-
-
-       /* We are now initialized */
-       initialized = TRUE;
-
-
-       /* Handle "open_when_ready" */
-       handle_open_when_ready();
-
-#ifdef CHUUKEI
-       init_chuukei();
-#endif
-
-       /* Prompt the user */
-#ifdef JP
-       prt("'¥Õ¥¡¥¤¥ë'¥á¥Ë¥å¡¼¤è¤ê'¿·µ¬'¤Þ¤¿¤Ï'³«¤¯...'¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£", 23, 10);
-#else
-       prt("[Choose 'New' or 'Open' from the 'File' menu]", 23, 15);
-#endif
-
-       /* Flush the prompt */
-       Term_fresh();
-
-
-       /* Hack -- Process Events Forever */
-       while (TRUE) CheckEvents(TRUE);
-}
-
index da08f6c..bfe9aaf 100644 (file)
 #include <Memory.h>
 #include <QDOffscreen.h>
 #include <Sound.h>
+#if TARGET_API_MAC_CARBON
+#include <Navigation.h>
+#include <CFPreferences.h>
+#include <CFNumber.h>
+# ifdef MAC_MPW
+# include <CarbonStdCLib.h>
+# endif
+#endif
 
 #ifdef JP
 
 /* #define USE_MALLOC */
 
 
+/* Default creator signature */
+#ifndef ANGBAND_CREATOR
+# define ANGBAND_CREATOR 'Heng'
+#endif
+
+
 #if defined(powerc) || defined(__powerc)
 
 /*
 /*
  * Globals for MPW compilation
  */
-#ifdef MAC_MPW
+#if defined(MACH_O_CARBON) || defined(MAC_MPW)
        /* Globals needed */
+#if !TARGET_API_MAC_CARBON
        QDGlobals qd;
-       u32b _ftype;
-       u32b _fcreator;
+#endif
+       OSType _ftype;
+       OSType _fcreator;
 #endif
 
 
@@ -306,10 +322,6 @@ struct term_data
 
 #endif /* ANGBAND_LITE_MAC */
 
-       GWorldPtr               bufferPort;
-       PixMapHandle    bufferPixHndl;
-       PixMapPtr               bufferPix;
-
        Str15           title;
 
        s16b            oops;
@@ -399,6 +411,10 @@ static term_data data[MAX_TERM_DATA];
  */
 static bool initialized = FALSE;
 
+/*
+ * Version of Mac OS - for version specific bug workarounds (; ;)
+ */
+static long mac_os_version;
 
 
 /*
@@ -500,7 +516,7 @@ static int soundchoice[] = {
        SND_TRAP,
 };
 
-static int                     soundmode[8];
+static short                   soundmode[8];
 
 static int ext_graf = 0;
 
@@ -511,6 +527,55 @@ static int ext_graf = 0;
  * Store this filename in 'buf' (make sure it is long enough)
  * Note that 'fname' looks to be a "pascal" string
  */
+#if TARGET_API_MAC_CARBON
+static void refnum_to_name(char *buf, long refnum, short vrefnum, char *fname)
+{
+       CInfoPBRec pb;
+       Str255 name;
+       int err;
+       int i, j;
+
+       char res[1000];
+       
+       FSSpec spec;
+       short   vref;
+    long       dirID;
+    
+       i=999;
+
+       res[i]=0; i--;
+       for (j=1; j<=fname[0]; j++)
+       {
+               res[i-fname[0]+j] = fname[j];
+       }
+       i-=fname[0];
+
+       vref = vrefnum;
+       dirID = refnum;
+
+       while (1)
+       {
+               pb.dirInfo.ioDrDirID=pb.dirInfo.ioDrParID;
+               err = FSMakeFSSpec( vref, dirID, "\p", &spec );
+               
+               if( err != noErr )
+                   break;
+               
+               res[i] = ':'; i--;
+               for (j=1; j<=spec.name[0]; j++)
+               {
+                       res[i-spec.name[0]+j] = spec.name[j];
+               }
+               i -= spec.name[0];
+               
+               dirID = spec.parID;
+       }
+
+       /* Extract the result */
+       for (j = 0, i++; res[i]; j++, i++) buf[j] = res[i];
+       buf[j] = 0;
+}
+#else
 static void refnum_to_name(char *buf, long refnum, short vrefnum, char *fname)
 {
        DirInfo pb;
@@ -553,7 +618,39 @@ static void refnum_to_name(char *buf, long refnum, short vrefnum, char *fname)
        for (j = 0, i++; res[i]; j++, i++) buf[j] = res[i];
        buf[j] = 0;
 }
+#endif
 
+#if TARGET_API_MAC_CARBON
+pascal OSErr FSpLocationFromFullPath(short fullPathLength,
+                                                                        const void *fullPath,
+                                                                        FSSpec *spec)
+{
+       AliasHandle     alias;
+       OSErr           result;
+       Boolean         wasChanged;
+       Str32           nullString;
+       
+       /* Create a minimal alias from the full pathname */
+       nullString[0] = 0;      /* null string to indicate no zone or server name */
+       result = NewAliasMinimalFromFullPath(fullPathLength, fullPath, nullString, nullString, &alias);
+       if ( result == noErr )
+       {
+               /* Let the Alias Manager resolve the alias. */
+               result = ResolveAlias(NULL, alias, spec, &wasChanged);
+               
+               /* work around Alias Mgr sloppy volume matching bug */
+               if ( spec->vRefNum == 0 )
+               {
+                       /* invalidate wrong FSSpec */
+                       spec->parID = 0;
+                       spec->name[0] =  0;
+                       result = nsvErr;
+               }
+               DisposeHandle((Handle)alias);   /* Free up memory used */
+       }
+       return ( result );
+}
+#endif
 
 #if 0
 
@@ -599,7 +696,164 @@ static bool askfor_file(char *buf, int len)
 
 #endif
 
+static void local_to_global( Rect *r )
+{
+       Point           temp;
+       
+       temp.h = r->left;
+       temp.v = r->top;
+       
+       LocalToGlobal( &temp );
+       
+       r->left = temp.h;
+       r->top = temp.v;
+       
+       temp.h = r->right;
+       temp.v = r->bottom;
+       
+       LocalToGlobal( &temp );
+       
+       r->right = temp.h;
+       r->bottom = temp.v;
+}
+
+static void global_to_local( Rect *r )
+{
+       Point           temp;
+       
+       temp.h = r->left;
+       temp.v = r->top;
+       
+       GlobalToLocal( &temp );
+       
+       r->left = temp.h;
+       r->top = temp.v;
+       
+       temp.h = r->right;
+       temp.v = r->bottom;
+       
+       GlobalToLocal( &temp );
+       
+       r->right = temp.h;
+       r->bottom = temp.v;
+}
+
+
+#ifdef MAC_MPW
+
+/*
+ * Convert pathname to an appropriate format, because MPW's
+ * CarbonStdCLib chose to use system's native path format,
+ * making our lives harder to create binaries that run on
+ * OS 8/9 and OS X :( -- pelpel
+ */
+void convert_pathname(char* path)
+{
+       char buf[1024];
+
+       /* Nothing has to be done for CarbonLib on Classic */
+       if (mac_os_version >= 0x1000)
+       {
+               /* Convert to POSIX style */
+               ConvertHFSPathToUnixPath(path, buf);
+
+               /* Copy the result back */
+               strcpy(path, buf);
+       }
+
+       /* Done. */
+       return;
+}
+
+# ifdef CHECK_MODIFICATION_TIME
+
+/*
+ * Although there is no easy way to emulate fstat in the old interface,
+ * we still can do stat-like things, because Mac OS is an OS.
+ */
+static int get_modification_time(cptr path, u32b *mod_time)
+{
+       CInfoPBRec pb;
+       Str255 pathname;
+       int i;
+
+       /* Paranoia - make sure the pathname fits in Str255 */
+       i = strlen(path);
+       if (i > 255) return (-1);
+
+       /* Convert pathname to a Pascal string */
+       strncpy((char *)pathname + 1, path, 255);
+       pathname[0] = i;
+
+       /* Set up parameter block */
+       pb.hFileInfo.ioNamePtr = pathname;
+       pb.hFileInfo.ioFDirIndex = 0;
+       pb.hFileInfo.ioVRefNum = app_vol;
+       pb.hFileInfo.ioDirID = 0;
+
+       /* Get catalog information of the file */
+       if (PBGetCatInfoSync(&pb) != noErr) return (-1);
+
+       /* Set modification date and time */
+       *mod_time = pb.hFileInfo.ioFlMdDat;
+
+       /* Success */
+       return (0);
+}
+
+
+/*
+ * A (non-Mach-O) Mac OS version of check_modification_time, for those
+ * compilers without good enough POSIX-compatibility libraries XXX XXX
+ */
+errr check_modification_date(int fd, cptr template_file)
+{
+#pragma unused(fd)
+       u32b txt_stat, raw_stat;
+       char *p;
+       char fname[32];
+       char buf[1024];
+
+       /* Build the file name */
+       path_build(buf, sizeof(buf), ANGBAND_DIR_EDIT, template_file);
+
+       /* XXX XXX XXX */
+       convert_pathname(buf);
+
+       /* Obtain modification time */
+       if (get_modification_time(buf, &txt_stat)) return (-1);
+
+       /* XXX Build filename of the corresponding *.raw file */
+       strnfmt(fname, sizeof(fname), "%s", template_file);
+
+       /* Find last '.' */
+       p = strrchr(fname, '.');
+
+       /* Can't happen */
+       if (p == NULL) return (-1);
+
+       /* Substitute ".raw" for ".txt" */
+       strcpy(p, ".raw");
+
+       /* Build the file name of the raw file */
+       path_build(buf, sizeof(buf), ANGBAND_DIR_DATA, fname);
 
+       /* XXX XXX XXX */
+       convert_pathname(buf);
+
+       /* Obtain modification time */
+       if (get_modification_time(buf, &raw_stat)) return (-1);
+
+       /* Ensure the text file is not newer than the raw file */
+       if (txt_stat > raw_stat) return (-1);
+
+       /* Keep using the current .raw file */
+       return (0);
+}
+
+# endif /* CHECK_MODIFICATION_TIME */
+
+#endif /* MAC_MPW */
 
 /*
  * Center a rectangle inside another rectangle
@@ -701,7 +955,54 @@ static void PathNameFromDirID(long dirID, short vRefNum, StringPtr fullPathName)
 
 #endif
 
+#if TARGET_API_MAC_CARBON
+
+static OSErr ChooseFile( StringPtr filename, FSSpec selfld )
+{
+       NavReplyRecord          reply;
+       NavDialogOptions        dialogOptions;
+       NavTypeListHandle       navTypeList = NULL;
+       OSErr                           err;
+       AEDesc  deffld;
+       
+       AECreateDesc( typeFSS, &selfld, sizeof(FSSpec), &deffld );
+       
+       err = NavGetDefaultDialogOptions( &dialogOptions );
+       
+       if( err == noErr ){
+               
+               err = NavChooseFile( &deffld, &reply, &dialogOptions, NULL, NULL, NULL, navTypeList, NULL );
+               
+               if ( reply.validRecord && err == noErr ){
+                       // grab the target FSSpec from the AEDesc:
+                       FSSpec          finalFSSpec;
+                       AEKeyword       keyWord;
+                       DescType        typeCode;
+                       Size            actualSize = 0;
+
+                       // retrieve the returned selection:
+                       // there is only one selection here we get only the first AEDescList:
+                       if (( err = AEGetNthPtr( &(reply.selection), 1, typeFSS, &keyWord, &typeCode, &finalFSSpec, sizeof( FSSpec ), &actualSize )) == noErr )
+                       {
+                               refnum_to_name( (char *)filename, finalFSSpec.parID, finalFSSpec.vRefNum, (char *)finalFSSpec.name );
+                               // 'finalFSSpec' is the chosen file¥Î
+                       }
+                       
+                       err = NavDisposeReply( &reply );
+               }
+               if( navTypeList != NULL )
+               {
+                       DisposeHandle( (Handle)navTypeList );
+                       navTypeList = NULL;
+               }
+       }
+       
+       AEDisposeDesc( &deffld );
+       
+       return err;
+}
 
+#endif
 
 /*
  * Activate a given window, if necessary
@@ -712,7 +1013,11 @@ static void activate(WindowPtr w)
        if (active != w)
        {
                /* Activate */
+#if TARGET_API_MAC_CARBON
+               if (w) SetPortWindowPort(w);
+#else
                if (w) SetPort(w);
+#endif
 
                /* Remember */
                active = w;
@@ -850,6 +1155,13 @@ static void term_data_check_font(term_data *td)
  */
 static void term_data_check_size(term_data *td)
 {
+       BitMap          screen;
+       
+#if TARGET_API_MAC_CARBON
+       GetQDGlobalsScreenBits( &screen );
+#else
+       screen = qd.screenBits;
+#endif
        /* Minimal window size */
        if (td == &data[0])
        {
@@ -886,27 +1198,27 @@ static void term_data_check_size(term_data *td)
        td->size_hgt = td->rows * td->tile_hgt + td->size_oh1 + td->size_oh2;
 
        /* Verify the top */
-       if (td->r.top > qd.screenBits.bounds.bottom - td->size_hgt)
+       if (td->r.top > screen.bounds.bottom - td->size_hgt)
        {
-               td->r.top = qd.screenBits.bounds.bottom - td->size_hgt;
+               td->r.top = screen.bounds.bottom - td->size_hgt;
        }
 
        /* Verify the top */
-       if (td->r.top < qd.screenBits.bounds.top + 30)
+       if (td->r.top < screen.bounds.top + 30)
        {
-               td->r.top = qd.screenBits.bounds.top + 30;
+               td->r.top = screen.bounds.top + 30;
        }
 
        /* Verify the left */
-       if (td->r.left > qd.screenBits.bounds.right - td->size_wid)
+       if (td->r.left > screen.bounds.right - td->size_wid)
        {
-               td->r.left = qd.screenBits.bounds.right - td->size_wid;
+               td->r.left = screen.bounds.right - td->size_wid;
        }
 
        /* Verify the left */
-       if (td->r.left < qd.screenBits.bounds.left)
+       if (td->r.left < screen.bounds.left)
        {
-               td->r.left = qd.screenBits.bounds.left;
+               td->r.left = screen.bounds.left;
        }
 
        /* Calculate bottom right corner */
@@ -946,7 +1258,6 @@ static void term_data_check_size(term_data *td)
        }
 }
 
-static OSErr XDDSWUpDateGWorldFromPict( term_data *td );
 /*
  * Hack -- resize a term_data
  *
@@ -956,8 +1267,6 @@ static void term_data_resize(term_data *td)
 {
        /* Actually resize the window */
        SizeWindow(td->w, td->size_wid, td->size_hgt, 0);
-       
-               XDDSWUpDateGWorldFromPict( td );
 }
 
 
@@ -982,9 +1291,19 @@ static void term_data_redraw(term_data *td)
 
        /* Restore the old term */
        Term_activate(old);
-
+       
        /* No need to redraw */
+#if TARGET_API_MAC_CARBON
+       {
+               RgnHandle               theRgn = NewRgn();
+               GetWindowRegion( td->w, kWindowContentRgn, theRgn );
+               ValidWindowRgn( (WindowRef)(td->w), theRgn );
+               DisposeRgn( theRgn );
+       }
+#else
        ValidRect(&td->w->portRect);
+#endif
+
 }
 
 
@@ -1047,24 +1366,14 @@ static void BenSWLockFrame(FrameRec *srcFrameP)
        (void)LockPixels(pixMapH);
        HLockHi((Handle)pixMapH);
        srcFrameP->framePixHndl = pixMapH;
+#if TARGET_API_MAC_CARBON
+       srcFrameP->framePix = (PixMapPtr)*(Handle)pixMapH;
+#else
        srcFrameP->framePix = (PixMapPtr)StripAddress(*(Handle)pixMapH);
+#endif
        
 }
 
-/*
- * Lock a frame
- */
-static void XDDSWLockFrame( term_data *td )
-{
-       PixMapHandle            pixMapH;
-
-       pixMapH = GetGWorldPixMap(td->bufferPort);
-       (void)LockPixels(pixMapH);
-       HLockHi((Handle)pixMapH);
-       td->bufferPixHndl = pixMapH;
-       td->bufferPix = (PixMapPtr)*(Handle)pixMapH;
-}
-
 
 /*
  * Unlock a frame
@@ -1081,20 +1390,6 @@ static void BenSWUnlockFrame(FrameRec *srcFrameP)
        
 }
 
-/*
- * Unlock a frame
- */
-static void XDDSWUnlockFrame( term_data *td )
-{
-       if (td->bufferPort != NULL)
-       {
-               HUnlock((Handle)td->bufferPixHndl);
-               UnlockPixels(td->bufferPixHndl);
-       }
-
-       td->bufferPix = NULL;
-}
-
 static OSErr BenSWCreateGWorldFromPict(
        GWorldPtr *pictGWorld,
        PicHandle pictH)
@@ -1153,119 +1448,7 @@ static OSErr BenSWCreateGWorldFromPict(
 }
 
 
-static OSErr XDDSWCreateGWorldFromPict(
-       GWorldPtr *pictGWorld,
-       term_data *td )
-{
-       OSErr err;
-       GWorldPtr saveGWorld;
-       GDHandle saveGDevice;
-       GWorldPtr tempGWorld;
-       Rect pictRect;
-       short depth;
-       GDHandle theGDH;
-       
-       tempGWorld = NULL;
-       
-       /* Reset */
-       *pictGWorld = NULL;
-
-       /* Get depth */
-       depth = td->pixelDepth;
-
-       /* Get GDH */
-       theGDH = td->theGDH;
-
-       /* Obtain size rectangle */
-       pictRect.left = 0;
-       pictRect.right = td->size_wid;
-       pictRect.top = 0;
-       pictRect.bottom = td->tile_hgt;
-       
-       /* Create a GWorld */
-       err = NewGWorld(&tempGWorld, 0, &pictRect, 0, 0, 0);
-       
-       /* Success */
-       if (err != noErr)
-       {
-               return (err);
-       }
-       
-       /* Save pointer */
-       *pictGWorld = tempGWorld;
-       
-       /* Save GWorld */
-       GetGWorld(&saveGWorld, &saveGDevice);
-
-       /* Activate */
-       SetGWorld(tempGWorld, nil);
-
-       /* Dump the pict into the GWorld
-       (void)LockPixels(GetGWorldPixMap(tempGWorld));
-       EraseRect(&pictRect);
-//     DrawPicture(pictH, &pictRect);
-       UnlockPixels(GetGWorldPixMap(tempGWorld));
-
-       /* Restore GWorld */
-       SetGWorld(saveGWorld, saveGDevice);
-
-       return (0);
-}
-
-
-static OSErr XDDSWUpDateGWorldFromPict( term_data *td )
-{
-       GWorldPtr saveGWorld;
-       GDHandle saveGDevice;
-       Rect pictRect;
-       short depth;
-       GDHandle theGDH;
-       
-       GWorldFlags     errflag;
-       
-       /*  */
-       
-       if( td->bufferPort == NULL )
-               return;
-       /* Get depth */
-       depth = td->pixelDepth;
-
-       /* Get GDH */
-       theGDH = td->theGDH;
-       
-       /* Obtain size rectangle */
-       pictRect.top = 0;
-       pictRect.left = 0;
-       pictRect.right = td->size_wid;
-       pictRect.bottom = td->tile_hgt;
-       
-       XDDSWUnlockFrame(td);
-       
-       errflag = UpdateGWorld( &td->bufferPort, depth, &pictRect, 0, 0, 0);
-       XDDSWLockFrame(td);
-       if( errflag & gwFlagErr ){
-               //SysBeep(0);
-               return;
-       }
-
-#if 0  
-       /* Save GWorld */
-       GetGWorld(&saveGWorld, &saveGDevice);
-
-       /* Activate */
-       SetGWorld(td->bufferPort, nil);
-
-       /* Dump the pict into the GWorld */
-       (void)LockPixels(GetGWorldPixMap(td->bufferPort));
-       EraseRect(&td->bufferPort->portRect);
-       
-       UnlockPixels(GetGWorldPixMap(td->bufferPort));
 
-       /* Restore GWorld */
-       SetGWorld(saveGWorld, saveGDevice);
-#endif
-       
-}
 
 /*
  * Init the global "frameP"
@@ -1280,7 +1463,11 @@ static errr globe_init(void)
        PicHandle newPictH;
 
        /* Use window XXX XXX XXX */
+#if TARGET_API_MAC_CARBON
+       SetPortWindowPort(data[0].w);
+#else
        SetPort(data[0].w);
+#endif
 
 
        /* Get the pict resource */
@@ -1423,12 +1610,13 @@ static void Term_init_mac(term *t)
                PixMapHandle basePixMap;
 
                /* Obtain the rect */
-               tempRect = td->w->portRect;
-
-               /* Obtain the global rect */    
-               globalRect = tempRect;
+#if TARGET_API_MAC_CARBON
+               GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &globalRect );
+#else
+               globalRect = td->w->portRect;
                LocalToGlobal((Point*)&globalRect.top);
                LocalToGlobal((Point*)&globalRect.bottom);
+#endif
 
                /* Obtain the proper GDH */
                mainGDH = GetMaxDevice(&globalRect);
@@ -1454,26 +1642,37 @@ static void Term_init_mac(term *t)
 
 #endif /* ANGBAND_LITE_MAC */
 
-       /* Clip to the window */
-       ClipRect(&td->w->portRect);
+       {
+               Rect            portRect;
+
+#if TARGET_API_MAC_CARBON
+               GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
+               global_to_local( &portRect );
+#else
+               portRect = td->w->portRect;
+#endif
+               /* Clip to the window */
+               ClipRect(&portRect);
 
-       /* Erase the window */
-       EraseRect(&td->w->portRect);
+               /* Erase the window */
+               EraseRect(&portRect);
 
-       /* Invalidate the window */
-       InvalRect(&td->w->portRect);
+               /* Invalidate the window */
+#if TARGET_API_MAC_CARBON
+               InvalWindowRect((WindowRef)(td->w), (const Rect *)(&portRect));
+#else
+               InvalRect(&portRect);
+#endif
 
-       /* Display the window if needed */
-       if (td->mapped) ShowWindow(td->w);
+               /* Display the window if needed */
+               if (td->mapped) ShowWindow(td->w);
 
-       /* Hack -- set "mapped" flag */
-       t->mapped_flag = td->mapped;
+               /* Hack -- set "mapped" flag */
+               t->mapped_flag = td->mapped;
 
-       /* Forget color */
-       td->last = -1;
-       XDDSWCreateGWorldFromPict( &td->bufferPort, td );
-       
-       XDDSWLockFrame( td );
+               /* Forget color */
+               td->last = -1;
+       }
        /* Oops */
 /*     if (err == noErr)
        {
@@ -1567,11 +1766,11 @@ static errr Term_xtra_mac_react(void)
 
                if (!use_graphics && !frameP && (globe_init() != 0))
                {
-                       #ifdef JP
+#ifdef JP
                        plog("¥°¥é¥Õ¥£¥Ã¥¯¤Î½é´ü²½¤Ï½ÐÍè¤Þ¤»¤ó¤Ç¤·¤¿.");
-                       #else
+#else
                        plog("Cannot initialize graphics!");
-                       #endif
+#endif
                        arg_graphics = FALSE;
                }
 
@@ -1676,7 +1875,7 @@ static errr Term_xtra_mac(int n, int v)
                case TERM_XTRA_BORED:
                {
                        /* Process an event */
-                       (void)CheckEvents(0);
+                       (void)CheckEvents(FALSE);
 
                        /* Success */
                        return (0);
@@ -1715,11 +1914,20 @@ static errr Term_xtra_mac(int n, int v)
                /* Clear the screen */
                case TERM_XTRA_CLEAR:
                {
+                       Rect            portRect;
+                       
+#if TARGET_API_MAC_CARBON
+                       GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
+                       global_to_local( &portRect );
+#else
+                       portRect = td->w->portRect;
+#endif
+
                        /* No clipping XXX XXX XXX */
-                       ClipRect(&td->w->portRect);
+                       ClipRect(&portRect);
 
                        /* Erase the window */
-                       EraseRect(&td->w->portRect);
+                       EraseRect(&portRect);
 
                        /* Set the color */
                        term_data_color(td, TERM_WHITE);
@@ -1731,10 +1939,10 @@ static errr Term_xtra_mac(int n, int v)
                        LineTo(td->size_wid-1, 0);
 
                        /* Clip to the new size */
-                       r.left = td->w->portRect.left + td->size_ow1;
-                       r.top = td->w->portRect.top + td->size_oh1;
-                       r.right = td->w->portRect.right - td->size_ow2;
-                       r.bottom = td->w->portRect.bottom - td->size_oh2;
+                       r.left = portRect.left + td->size_ow1;
+                       r.top = portRect.top + td->size_oh1;
+                       r.right = portRect.right - td->size_ow2;
+                       r.bottom = portRect.bottom - td->size_oh2;
                        ClipRect(&r);
 
                        /* Success */
@@ -1754,10 +1962,27 @@ static errr Term_xtra_mac(int n, int v)
                        /* If needed */
                        if (v > 0)
                        {
+#if TARGET_API_MAC_CARBON
+                               EventRecord tmp;
+                               UInt32 ticks;
+
+                               /* Convert millisecs to ticks */
+                               ticks = (v * 60L) / 1000;
+
+                               /*
+                                * Hack? - Put the programme into sleep.
+                                * No events match ~everyEvent, so nothing
+                                * should be lost in Angband's event queue.
+                                * Even if ticks are 0, it's worth calling for
+                                * the above mentioned reasons.
+                                */
+                               WaitNextEvent(~everyEvent, &tmp, ticks, nil);
+#else
                                long m = TickCount() + (v * 60L) / 1000;
 
                                /* Wait for it */
                                while (TickCount() < m) /* loop */;
+#endif
                        }
 
                        /* Success */
@@ -1896,30 +2121,22 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
 {
        int i;
        Rect r2;
-       bool use_buffer = false;
        term_data *td = (term_data*)(Term->data);
        GDHandle saveGDevice;
        GWorldPtr saveGWorld;
        
        PixMapHandle PortPix;
        
-
        /* Save GWorld */
        GetGWorld(&saveGWorld, &saveGDevice);
        
+       r2.left = x * td->tile_wid + td->size_ow1;
+       r2.right = r2.left + td->tile_wid;
+       r2.top = y * td->tile_hgt + td->size_oh1;
+       r2.bottom = r2.top + td->tile_hgt;
+       
        if( n > 1 )
        {
-               /* Destination rectangle */
-               r2.left = x * td->tile_wid + td->size_ow1;
-               r2.right = r2.left + td->tile_wid;
-               r2.top = 0;
-               r2.bottom = r2.top + td->tile_hgt;
-       
-               /* Activate */
-               SetGWorld(td->bufferPort, nil);
-               PortPix = GetGWorldPixMap(td->bufferPort );
-               LockPixels( PortPix );
-
                /* Instantiate font */
                TextFont(td->font_id);
                TextSize(td->font_size);
@@ -1928,22 +2145,14 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
                /* Restore colors */
                BackColor(blackColor);
                ForeColor(whiteColor);
-
-               /* Erase */
-               EraseRect(&td->bufferPort->portRect);
-
-               use_buffer = true;
        }
        else
        {
                /* Destination rectangle */
-               r2.left = x * td->tile_wid + td->size_ow1;
+/*             r2.left = x * td->tile_wid + td->size_ow1;
                r2.top = y * td->tile_hgt + td->size_oh1;
-               r2.bottom = r2.top + td->tile_hgt;
-               
-               /* no buffering, so we use the normal current port */
+               r2.bottom = r2.top + td->tile_hgt;*/
                
-               use_buffer = false;
        }
                
        /* Scan the input */
@@ -1975,8 +2184,13 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
                /* Graphics -- if Available and Needed */
                if (use_graphics && ((byte)a & 0x80) && ((byte)c & 0x80))
                {
+#if TARGET_API_MAC_CARBON
+                       PixMapHandle    srcBitMap = GetGWorldPixMap(frameP->framePort);
+                       PixMapHandle    destBitMap;
+#else
                        BitMapPtr srcBitMap = (BitMapPtr)(frameP->framePix);
                        BitMapPtr destBitMap;
+#endif
                                
                        int col, row;
                        Rect r1;
@@ -2019,12 +2233,11 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
                        ForeColor(blackColor);
 
                        /* Draw the picture */
-
-                       if (use_buffer)
-                               destBitMap = (BitMapPtr)(td->bufferPix);
-                       else
-                               destBitMap = (BitMapPtr)&(td->w->portBits);
-                               
+#if TARGET_API_MAC_CARBON
+                       destBitMap = GetPortPixMap(GetWindowPort( td->w ));
+#else
+                       destBitMap = (BitMapPtr)&(td->w->portBits);
+#endif
                        if (use_bigtile) r2.right += td->tile_wid;
 
 #ifdef USE_TRANSPARENCY
@@ -2041,20 +2254,31 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
                                 * assign this relative amount of background
                                 * color to the destination pixel
                                 */
+#if TARGET_API_MAC_CARBON
+                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &terrain_r, &r2, srcCopy, NULL);
+#else
                                CopyBits( srcBitMap, destBitMap, &terrain_r, &r2, srcCopy, NULL );
-                               
+#endif
                                /*
                                 * Draw transparent tile
                                 * BackColor is ignored and the destination is
                                 * left untouched
                                 */
                                BackColor(blackColor);
+#if TARGET_API_MAC_CARBON
+                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &r1, &r2, transparent, NULL);
+#else
                                CopyBits( srcBitMap, destBitMap, &r1, &r2, transparent, NULL );
+#endif
                        }
                        else
 #endif /* USE_TRANSPARENCY */
                        {
+#if TARGET_API_MAC_CARBON
+                               CopyBits( (BitMap *) *srcBitMap, (BitMap *) *destBitMap, &r1, &r2, srcCopy, NULL);
+#else
                                CopyBits( srcBitMap, destBitMap, &r1, &r2, srcCopy, NULL );
+#endif
                        }
 
                        /* Restore colors */
@@ -2115,60 +2339,12 @@ static errr Term_pict_mac(int x, int y, int n, const byte *ap, const char *cp)
                /* Advance */
                r2.left += td->tile_wid;
        }
-       
-       if( use_buffer )
-       {
-               /* Now we blast the buffer pixmap onto the screen in the right place */
-               BitMapPtr       srcBitMap = (BitMapPtr)(td->bufferPix);
-
-               BitMapPtr       destBitMap = (BitMapPtr)&(td->w->portBits);
-
-               Rect            srcRect;
-               Rect            destRect;
-               
-               
-               srcRect.left = x * td->tile_wid + td->size_ow1;
-               srcRect.top = 0;
-               srcRect.right = srcRect.left + (td->tile_wid * n);
-               srcRect.bottom = td->tile_hgt;
                
-               destRect.left = x * td->tile_wid + td->size_ow1;
-               destRect.right = destRect.left + (td->tile_wid * n);
-               destRect.top = y * td->tile_hgt + td->size_oh1;
-               destRect.bottom = destRect.top + td->tile_hgt;
-
-               /* Double width rectangle */
-               if (use_bigtile)
-               {
-                       srcRect.right += td->tile_wid * n;
-                       destRect.right += td->tile_wid * n;
-               }
-
-               UnlockPixels( PortPix );
-
-               /* Restore GWorld */
-               SetGWorld(saveGWorld, saveGDevice);
-               
-               /* Hardwire CopyBits */
-               BackColor(whiteColor);
-               ForeColor(blackColor);
-               
-               CopyBits( srcBitMap, destBitMap, &srcRect, &destRect, srcCopy, NULL );
-               
-               /* Restore colors */
-               BackColor(blackColor);
-               ForeColor(whiteColor);
-       }
-       
        /* Success */
        return (0);
 }
 
 
-
-
-
-
 /*
  * Create and initialize window number "i"
  */
@@ -2278,8 +2454,301 @@ static void SetupAppDir(void)
 
 
 
+#if TARGET_API_MAC_CARBON
+/*
+ * Using Core Foundation's Preferences services -- pelpel
+ *
+ * Requires OS 8.6 or greater with CarbonLib 1.1 or greater. Or OS X,
+ * of course.
+ *
+ * Without this, we can support older versions of OS 8 as well
+ * (with CarbonLib 1.0.4).
+ *
+ * Frequent allocation/deallocation of small chunks of data is
+ * far from my liking, but since this is only called at the
+ * beginning and the end of a session, I hope this hardly matters.
+ */
+
+
+/*
+ * Store "value" as the value for preferences item name
+ * pointed by key
+ */
+static void save_pref_short(const char *key, short value)
+{
+       CFStringRef cf_key;
+       CFNumberRef cf_value;
+
+       /* allocate and initialise the key */
+       cf_key = CFStringCreateWithCString(NULL, key, kTextEncodingUS_ASCII);
+
+       /* allocate and initialise the value */
+       cf_value = CFNumberCreate(NULL, kCFNumberShortType, &value);
+
+       if ((cf_key != NULL) && (cf_value != NULL))
+       {
+               /* Store the key-value pair in the applications preferences */
+               CFPreferencesSetAppValue(
+                       cf_key,
+                       cf_value,
+                       kCFPreferencesCurrentApplication);
+       }
+
+       /*
+        * Free CF data - the reverse order is a vain attempt to
+        * minimise memory fragmentation.
+        */
+       if (cf_value) CFRelease(cf_value);
+       if (cf_key) CFRelease(cf_key);
+}
+
 
 /*
+ * Load preference value for key, returns TRUE if it succeeds with
+ * vptr updated appropriately, FALSE otherwise.
+ */
+static bool query_load_pref_short(const char *key, short *vptr)
+{
+       CFStringRef cf_key;
+       CFNumberRef cf_value;
+
+       /* allocate and initialise the key */
+       cf_key = CFStringCreateWithCString(NULL, key, kTextEncodingUS_ASCII);
+
+       /* Oops */
+       if (cf_key == NULL) return (FALSE);
+
+       /* Retrieve value for the key */
+       cf_value = CFPreferencesCopyAppValue(
+               cf_key,
+               kCFPreferencesCurrentApplication);
+
+       /* Value not found */
+       if (cf_value == NULL)
+       {
+               CFRelease(cf_key);
+               return (FALSE);
+       }
+
+       /* Convert the value to short */
+       CFNumberGetValue(
+               cf_value,
+               kCFNumberShortType,
+               vptr);
+
+       /* Free CF data */
+       CFRelease(cf_value);
+       CFRelease(cf_key);
+
+       /* Success */
+       return (TRUE);
+}
+
+
+/*
+ * Update short data pointed by vptr only if preferences
+ * value for key is located.
+ */
+static void load_pref_short(const char *key, short *vptr)
+{
+       short tmp;
+
+       if (query_load_pref_short(key, &tmp)) *vptr = tmp;
+       return;
+}
+
+
+/*
+ * Save preferences to preferences file for current host+current user+
+ * current application.
+ */
+static void cf_save_prefs()
+{
+       int i;
+
+       /* Version stamp */
+       save_pref_short("version.major", FAKE_VERSION);
+       save_pref_short("version.minor", FAKE_VER_MAJOR);
+       save_pref_short("version.patch", FAKE_VER_MINOR);
+       save_pref_short("version.extra", FAKE_VER_PATCH);
+
+       /* Gfx settings */
+       save_pref_short("arg.arg_sound", arg_sound);
+       save_pref_short("arg.arg_graphics", arg_graphics);
+       save_pref_short("arg.arg_newstyle_graphics", arg_newstyle_graphics);
+       save_pref_short("arg.arg_bigtile", arg_bigtile);
+
+       /* SoundMode */
+       for( i = 0 ; i < 7 ; i++ )
+               save_pref_short(format("sound%d.on", i), soundmode[i]);
+       
+       /* Windows */
+       for (i = 0; i < MAX_TERM_DATA; i++)
+       {
+               term_data *td = &data[i];
+
+               save_pref_short(format("term%d.mapped", i), td->mapped);
+
+               save_pref_short(format("term%d.font_id", i), td->font_id);
+               save_pref_short(format("term%d.font_size", i), td->font_size);
+               save_pref_short(format("term%d.font_face", i), td->font_face);
+
+               save_pref_short(format("term%d.tile_wid", i), td->tile_wid);
+               save_pref_short(format("term%d.tile_hgt", i), td->tile_hgt);
+
+               save_pref_short(format("term%d.cols", i), td->cols);
+               save_pref_short(format("term%d.rows", i), td->rows);
+               save_pref_short(format("term%d.left", i), td->r.left);
+               save_pref_short(format("term%d.top", i), td->r.top);
+       }
+
+       /*
+        * Make sure preferences are persistent
+        */
+       CFPreferencesAppSynchronize(
+               kCFPreferencesCurrentApplication);
+}
+
+
+/*
+ * Load preferences from preferences file for current host+current user+
+ * current application.
+ */
+static void cf_load_prefs()
+{
+       bool ok;
+       short pref_major, pref_minor, pref_patch, pref_extra;
+       int i;
+
+       MenuHandle m;
+
+       /* Assume nothing is wrong, yet */
+       ok = TRUE;
+
+       /* Load version information */
+       ok &= query_load_pref_short("version.major", &pref_major);
+       ok &= query_load_pref_short("version.minor", &pref_minor);
+       ok &= query_load_pref_short("version.patch", &pref_patch);
+       ok &= query_load_pref_short("version.extra", &pref_extra);
+
+       /* Any of the above failed */
+       if (!ok)
+       {
+               /* This may be the first run */
+#ifdef JP
+               mac_warning("½é´üÀßÄê¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¡£");
+#else
+               mac_warning("Preferences are not found.");
+#endif
+
+               /* Ignore the rest */
+               return;
+       }
+
+#if 0
+
+       /* Check version */
+       if ((pref_major != PREF_VER_MAJOR) ||
+               (pref_minor != PREF_VER_MINOR) ||
+               (pref_patch != PREF_VER_PATCH) ||
+               (pref_extra != PREF_VER_EXTRA))
+       {
+               /* Message */
+               mac_warning(
+                       format("Ignoring %d.%d.%d.%d preferences.",
+                               pref_major, pref_minor, pref_patch, pref_extra));
+
+               /* Ignore */
+               return;
+       }
+
+#endif
+
+       /* Gfx settings */
+       {
+               short pref_tmp;
+
+               /* sound */
+               if (query_load_pref_short("arg.arg_sound", &pref_tmp))
+                       arg_sound = pref_tmp;
+
+               /* graphics */
+               if (query_load_pref_short("arg.arg_graphics", &pref_tmp))
+                       arg_graphics = pref_tmp;
+
+               /*newstyle graphics*/
+               if (query_load_pref_short("arg.arg_newstyle_graphics", &pref_tmp))
+               {
+                       use_newstyle_graphics = pref_tmp;
+               }
+
+               if (use_newstyle_graphics == true)
+               {
+                       ANGBAND_GRAF = "new";
+                       arg_newstyle_graphics = true;
+                       grafWidth = grafHeight = 16;
+                       pictID = 1002;
+               }
+               else
+               {
+                       ANGBAND_GRAF = "old";
+                       arg_newstyle_graphics = false;
+                       grafWidth = grafHeight = 8;
+                       pictID = 1001;
+               }
+
+               /* double-width tiles */
+               if (query_load_pref_short("arg.arg_bigtile", &pref_tmp))
+               {
+                       use_bigtile = pref_tmp;
+               }
+
+       }
+
+       /* SoundMode */
+       for( i = 0 ; i < 7 ; i++ )
+       {
+               query_load_pref_short(format("sound%d.on", i), &soundmode[i]);
+       }
+
+       /* Special menu */
+       m = GetMenuHandle(134);
+
+       /* Item "arg_sound" */
+       CheckMenuItem(m, 1, arg_sound);
+
+       /* Item "arg_graphics" */
+       CheckMenuItem(m, 2, arg_graphics);
+       
+       /* Item "arg_newstyle_graphics"*/
+       CheckMenuItem(m, 8, arg_newstyle_graphics);
+
+       /* Item "arg_bigtile"*/
+       CheckMenuItem(m, 9, arg_bigtile);
+
+       /* Windows */
+       for (i = 0; i < MAX_TERM_DATA; i++)
+       {
+               term_data *td = &data[i];
+
+               load_pref_short(format("term%d.mapped", i), &td->mapped);
+
+               load_pref_short(format("term%d.font_id", i), &td->font_id);
+               load_pref_short(format("term%d.font_size", i), &td->font_size);
+               load_pref_short(format("term%d.font_face", i), &td->font_face);
+
+               load_pref_short(format("term%d.tile_wid", i), &td->tile_wid);
+               load_pref_short(format("term%d.tile_hgt", i), &td->tile_hgt);
+
+               load_pref_short(format("term%d.cols", i), &td->cols);
+               load_pref_short(format("term%d.rows", i), &td->rows);
+               load_pref_short(format("term%d.left", i), &td->r.left);
+               load_pref_short(format("term%d.top", i), &td->r.top);
+       }
+}
+
+#else
+/*
  * Global "preference" file pointer
  */
 static FILE *fff;
@@ -2291,7 +2760,7 @@ static int getshort(void)
 {
        int x = 0;
        char buf[256];
-       if (0 == my_fgets(fff, buf, 256)) x = atoi(buf);
+       if (0 == my_fgets(fff, buf, sizeof(buf))) x = atoi(buf);
        return (x);
 }
 
@@ -2422,8 +2891,8 @@ static void load_prefs(void)
                soundmode[i] = getshort();
        
        /* Special menu */
-       m = GetMenuHandle(134); //m = GetMHandle(134);
-       
+       m = GetMenuHandle(134);
+
        /* Item "arg_sound" */
        CheckItem(m, 1, arg_sound);
 
@@ -2432,7 +2901,10 @@ static void load_prefs(void)
        
        /* Item "arg_newstyle_graphics"*/
        CheckItem(m, 8, arg_newstyle_graphics);
-       
+
+       /* Item "arg_bigtile"*/
+       CheckItem(m, 9, arg_bigtile);
+
        /* Windows */
        for (i = 0; i < MAX_TERM_DATA; i++)
        {
@@ -2458,7 +2930,7 @@ static void load_prefs(void)
                if (feof(fff)) break;
        }
 }
-
+#endif /* TARGET_API_MAC_CARBON */
 
 
 
@@ -2469,13 +2941,25 @@ static void term_data_hack(term_data *td)
 {
        short fid;
 
-       #ifdef JP
-       GetFNum( "\pÅùÉýÌÀÄ«", &fid);     /* ¥Õ¥©¥ó¥È̾¤«¤éIDÈÖ¹æ¤òÄ´¤Ù¤ë  */
+#if TARGET_API_MAC_CARBON
+#ifdef JP
+       /* Default to Osaka font (Japanese) */
+       fid = FMGetFontFamilyFromName( "\pOsaka¡ÝÅùÉý" );
+#else
+       /* Default to Monaco font */
+       fid = FMGetFontFamilyFromName("\pmonaco");
+#endif
+#else
+#ifdef JP
+       /* Default to ÅùÉýÌÀÄ« font (Japanese) */
+       GetFNum( "\pÅùÉýÌÀÄ«", &fid);
        SetFScaleDisable( true );
-       #else
+#else
        /* Default to Monaco font */
        GetFNum("\pmonaco", &fid);
-       #endif
+#endif
+#endif
+
        /* Wipe it */
        WIPE(td, term_data);
 
@@ -2572,7 +3056,10 @@ static void init_windows(void)
 
 
        /*** Load preferences ***/
-
+       
+#if TARGET_API_MAC_CARBON
+       cf_load_prefs();
+#else
        /* Assume failure */
        oops = TRUE;
 
@@ -2641,6 +3128,7 @@ static void init_windows(void)
                /* Close the file */
                my_fclose(fff);
        }
+#endif /* TARGET_API_MAC_CARBON */
 
 
        /*** Instantiate ***/
@@ -2670,7 +3158,7 @@ static void init_windows(void)
 static void init_sound( void )
 {
        int err, i;
-       DirInfo pb;
+       CInfoPBRec pb;
        SignedByte              permission = fsRdPerm;
        pascal short    ret;
        
@@ -2678,45 +3166,45 @@ static void init_sound( void )
        Str255 sound;
 
        /* Descend into "lib" folder */
-       pb.ioCompletion = NULL;
-       pb.ioNamePtr = "\plib";
-       pb.ioVRefNum = app_vol;
-       pb.ioDrDirID = app_dir;
-       pb.ioFDirIndex = 0;
+       pb.dirInfo.ioCompletion = NULL;
+       pb.dirInfo.ioNamePtr = "\plib";
+       pb.dirInfo.ioVRefNum = app_vol;
+       pb.dirInfo.ioDrDirID = app_dir;
+       pb.dirInfo.ioFDirIndex = 0;
 
        /* Check for errors */
        err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
 
        /* Success */
-       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+       if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
        {
                /* Descend into "lib/save" folder */
-               pb.ioCompletion = NULL;
-               pb.ioNamePtr = "\pxtra";
-               pb.ioVRefNum = app_vol;
-               pb.ioDrDirID = pb.ioDrDirID;
-               pb.ioFDirIndex = 0;
+               pb.dirInfo.ioCompletion = NULL;
+               pb.dirInfo.ioNamePtr = "\pxtra";
+               pb.dirInfo.ioVRefNum = app_vol;
+               pb.dirInfo.ioDrDirID = pb.dirInfo.ioDrDirID;
+               pb.dirInfo.ioFDirIndex = 0;
 
                /* Check for errors */
                err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
                        
                        /* Success */
-               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+               if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
                {
                        /* Descend into "lib/save" folder */
-                       pb.ioCompletion = NULL;
-                       pb.ioNamePtr = "\psound";
-                       pb.ioVRefNum = app_vol;
-                       pb.ioDrDirID = pb.ioDrDirID;
-                       pb.ioFDirIndex = 0;
+                       pb.dirInfo.ioCompletion = NULL;
+                       pb.dirInfo.ioNamePtr = "\psound";
+                       pb.dirInfo.ioVRefNum = app_vol;
+                       pb.dirInfo.ioDrDirID = pb.dirInfo.ioDrDirID;
+                       pb.dirInfo.ioFDirIndex = 0;
 
                        /* Check for errors */
                        err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
 
                        /* Success */
-                       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+                       if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
                        {
-                               ret = HOpenResFile( app_vol , pb.ioDrDirID , "\psound.rsrc" , permission );
+                               ret = HOpenResFile( app_vol , pb.dirInfo.ioDrDirID , "\psound.rsrc" , permission );
                                if( ret != -1 ){
                                        ext_sound = 1;
                                        
@@ -2746,7 +3234,7 @@ static void init_sound( void )
 static void init_graf( void )
 {
        int err, i;
-       DirInfo pb;
+       CInfoPBRec pb;
        SignedByte              permission = fsRdPerm;
        pascal short    ret;
        
@@ -2754,53 +3242,53 @@ static void init_graf( void )
        Str255 graf;
 
        /* Descend into "lib" folder */
-       pb.ioCompletion = NULL;
-       pb.ioNamePtr = "\plib";
-       pb.ioVRefNum = app_vol;
-       pb.ioDrDirID = app_dir;
-       pb.ioFDirIndex = 0;
+       pb.dirInfo.ioCompletion = NULL;
+       pb.dirInfo.ioNamePtr = "\plib";
+       pb.dirInfo.ioVRefNum = app_vol;
+       pb.dirInfo.ioDrDirID = app_dir;
+       pb.dirInfo.ioFDirIndex = 0;
 
        /* Check for errors */
        err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
 
        /* Success */
-       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+       if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
        {
                /* Descend into "lib/xtra" folder */
-               pb.ioCompletion = NULL;
-               pb.ioNamePtr = "\pxtra";
-               pb.ioVRefNum = app_vol;
-               pb.ioDrDirID = pb.ioDrDirID;
-               pb.ioFDirIndex = 0;
+               pb.dirInfo.ioCompletion = NULL;
+               pb.dirInfo.ioNamePtr = "\pxtra";
+               pb.dirInfo.ioVRefNum = app_vol;
+               pb.dirInfo.ioDrDirID = pb.dirInfo.ioDrDirID;
+               pb.dirInfo.ioFDirIndex = 0;
 
                /* Check for errors */
                err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
                        
                /* Success */
-               if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+               if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
                {
                        /* Descend into "lib/xtra/graf" folder */
-                       pb.ioCompletion = NULL;
-                       pb.ioNamePtr = "\pgraf";
-                       pb.ioVRefNum = app_vol;
-                       pb.ioDrDirID = pb.ioDrDirID;
-                       pb.ioFDirIndex = 0;
+                       pb.dirInfo.ioCompletion = NULL;
+                       pb.dirInfo.ioNamePtr = "\pgraf";
+                       pb.dirInfo.ioVRefNum = app_vol;
+                       pb.dirInfo.ioDrDirID = pb.dirInfo.ioDrDirID;
+                       pb.dirInfo.ioFDirIndex = 0;
 
                        /* Check for errors */
                        err = PBGetCatInfo((CInfoPBPtr)&pb, FALSE);
 
                        /* Success */
-                       if ((err == noErr) && (pb.ioFlAttrib & 0x10))
+                       if ((err == noErr) && (pb.dirInfo.ioFlAttrib & 0x10))
                        {
-                               ret = HOpenResFile( app_vol , pb.ioDrDirID , "\pgraf.rsrc" , permission );
+                               ret = HOpenResFile( app_vol , pb.dirInfo.ioDrDirID , "\pgraf.rsrc" , permission );
                                if (ret != -1)
                                {
                                        ext_graf = 1;
-                                       
+
                                        /* Obtain resource XXX XXX XXX */
                                        handle = Get1NamedResource('PICT', graf);
                                        if ( handle == NULL || ext_graf )
-                                               handle = GetNamedResource('PICT', graf);
+                                               handle = GetNamedResource('PICT', "\pgraf.rsrc");
                                }
                        }
                }
@@ -2817,7 +3305,7 @@ static void init_chuukei( void )
        char tmp[1024];
        FILE *fp;
        
-       path_build(path, 1024, ANGBAND_DIR_XTRA, "chuukei.txt");
+       path_build(path, sizeof(path), ANGBAND_DIR_XTRA, "chuukei.txt");
 
        fp = fopen(path, "r");
        if(!fp)
@@ -2919,7 +3407,7 @@ void SoundConfigDLog(void)
        for( i = 1 ; i < 7 ; i++ )
                SetCheck( dialog, i+2 , soundmode[i] );
        
-       ShowWindow(dialog);
+       /* ShowWindow(dialog); */ 
        for( item_hit = 100 ; cancel < item_hit ; ){
                ModalDialog(0, &item_hit);
                
@@ -2942,6 +3430,12 @@ void SoundConfigDLog(void)
 /*
  * Exit the program
  */
+#if TARGET_API_MAC_CARBON
+static void save_pref_file(void)
+{
+       cf_save_prefs();
+}
+#else
 static void save_pref_file(void)
 {
        bool oops;
@@ -3026,6 +3520,7 @@ static void save_pref_file(void)
                my_fclose(fff);
        }
 }
+#endif
 
 
 
@@ -3057,7 +3552,7 @@ static pascal Boolean ynfilter(DialogPtr dialog, EventRecord *event, short *ip)
                        Rect r;
 
                        /* Get the button */
-                       GetDialogItem(dialog, i, &type, (Handle*)&control, &r); //GetDItem(dialog, i, &type, (Handle*)&control, &r);
+                       GetDialogItem(dialog, i, &type, (Handle*)&control, &r);
 
                        /* Blink button for 1/10 second */
                        HiliteControl(control, 1);
@@ -3075,31 +3570,236 @@ static pascal Boolean ynfilter(DialogPtr dialog, EventRecord *event, short *ip)
 }
 
 
+#if TARGET_API_MAC_CARBON
+
+
+#ifdef MACH_O_CARBON
+
+/* Carbon File Manager utilities by pelpel */
+
+/*
+ * (Carbon)
+ * Convert a pathname to a corresponding FSSpec.
+ * Returns noErr on success.
+ */
+static OSErr path_to_spec(const char *path, FSSpec *spec)
+{
+       OSErr err;
+       FSRef ref;
+
+       /* Convert pathname to FSRef ... */
+       err = FSPathMakeRef(path, &ref, NULL);
+       if (err != noErr) return (err);
+
+       /* ... then FSRef to FSSpec */
+       err = FSGetCatalogInfo(&ref, kFSCatInfoNone, NULL, NULL, spec, NULL);
+       
+       /* Inform caller of success or failure */
+       return (err);
+}
+
+
+/*
+ * (Carbon)
+ * Convert a FSSpec to a corresponding pathname.
+ * Returns noErr on success.
+ */
+static OSErr spec_to_path(const FSSpec *spec, char *buf, size_t size)
+{
+       OSErr err;
+       FSRef ref;
+
+       /* Convert FSSpec to FSRef ... */
+       err = FSpMakeFSRef(spec, &ref);
+       if (err != noErr) return (err);
+
+       /* ... then FSRef to pathname */
+       err = FSRefMakePath(&ref, buf, size);
+
+       /* Inform caller of success or failure */
+       return (err);
+}
+
+
+#endif /* MACH_O_CARBON */
+
+
+/*
+ * Prepare savefile dialogue and set the variable
+ * savefile accordingly. Returns true if it succeeds, false (or
+ * aborts) otherwise. If all is false, only allow files whose type
+ * is 'SAVE'.
+ * Originally written by Peter Ammon
+ */
+static bool select_savefile(bool all)
+{
+       OSErr err;
+       FSSpec theFolderSpec;
+       FSSpec savedGameSpec;
+       NavDialogOptions dialogOptions;
+       NavReplyRecord reply;
+       /* Used only when 'all' is true */
+       NavTypeList types = {ANGBAND_CREATOR, 1, 1, {'SAVE'}};
+       NavTypeListHandle myTypeList;
+       AEDesc defaultLocation;
+
+#ifdef MACH_O_CARBON
+
+       /* Find the save folder */
+       err = path_to_spec(ANGBAND_DIR_SAVE, &theFolderSpec);
+
+#else
+
+       /* Find :lib:save: folder */
+       err = FSMakeFSSpec(app_vol, app_dir, "\p:lib:save:", &theFolderSpec);
+
+#endif
+
+       /* Oops */
+       if (err != noErr) quit("Unable to find the folder :lib:save:");
+
+       /* Get default Navigator dialog options */
+       err = NavGetDefaultDialogOptions(&dialogOptions);
+
+       /* Clear preview option */
+       dialogOptions.dialogOptionFlags &= ~kNavAllowPreviews;
+
+       /* Disable multiple file selection */
+       dialogOptions.dialogOptionFlags &= ~kNavAllowMultipleFiles;
+
+       /* Make descriptor for default location */
+       err = AECreateDesc(typeFSS, &theFolderSpec, sizeof(FSSpec),
+               &defaultLocation);
+
+       /* Oops */
+       if (err != noErr) quit("Unable to allocate descriptor");
+
+       /* We are indifferent to signature and file types */
+       if (all)
+       {
+               myTypeList = (NavTypeListHandle)nil;
+       }
+
+       /* Set up type handle */
+       else
+       {
+               err = PtrToHand(&types, (Handle *)&myTypeList, sizeof(NavTypeList));
+
+               /* Oops */
+               if (err != noErr) quit("Error in PtrToHand. Try enlarging heap");
+
+       }
+
+       /* Call NavGetFile() with the types list */
+       err = NavChooseFile(&defaultLocation, &reply, &dialogOptions, NULL,
+               NULL, NULL, myTypeList, NULL);
+
+       /* Free type list */
+       if (!all) DisposeHandle((Handle)myTypeList);
+
+       /* Error */
+       if (err != noErr)
+       {
+               /* Nothing */
+       }
+
+       /* Invalid response -- allow the user to cancel */
+       else if (!reply.validRecord)
+       {
+               /* Hack -- Fake error */
+               err = -1;
+       }
+
+       /* Retrieve FSSpec from the reply */
+       else
+       {
+               AEKeyword theKeyword;
+               DescType actualType;
+               Size actualSize;
+
+               /* Get a pointer to selected file */
+               (void)AEGetNthPtr(&reply.selection, 1, typeFSS, &theKeyword,
+                       &actualType, &savedGameSpec, sizeof(FSSpec), &actualSize);
+
+               /* Dispose NavReplyRecord, resources and descriptors */
+               (void)NavDisposeReply(&reply);
+       }
+
+       /* Dispose location info */
+       AEDisposeDesc(&defaultLocation);
+
+       /* Error */
+       if (err != noErr) return (FALSE);
+
+#ifdef MACH_O_CARBON
+
+       /* Convert FSSpec to pathname and store it in variable savefile */
+       (void)spec_to_path(&savedGameSpec, savefile, sizeof(savefile));
+
+#else
+
+       /* Convert FSSpec to pathname and store it in variable savefile */
+       refnum_to_name(
+               savefile,
+               savedGameSpec.parID,
+               savedGameSpec.vRefNum,
+               (char *)savedGameSpec.name);
+
+#endif
+
+       /* Success */
+       return (TRUE);
+}
+#endif
+
+
+/*
+ * Handle menu: "File" + "New"
+ */
+static void do_menu_file_new(void)
+{
+       /* Hack */
+       HiliteMenu(0);
+
+       /* Game is in progress */
+       game_in_progress = 1;
+
+       /* Flush input */
+       flush();
+
+       /* Play a game */
+       play_game(TRUE);
+
+       /* Hack -- quit */
+       quit(NULL);
+}
+
+
 /*
- * Handle menu: "File" + "New"
+ * Handle menu: "File" + "Open"
  */
-static void do_menu_file_new(void)
+#if TARGET_API_MAC_CARBON
+static void do_menu_file_open(bool all)
 {
+       /* Let the player to choose savefile */
+       if (!select_savefile(all)) return;
+
        /* Hack */
        HiliteMenu(0);
 
        /* Game is in progress */
-       game_in_progress = 1;
+       game_in_progress = TRUE;
 
        /* Flush input */
        flush();
 
        /* Play a game */
-       play_game(TRUE);
+       play_game(FALSE);
 
        /* Hack -- quit */
        quit(NULL);
 }
-
-
-/*
- * Handle menu: "File" + "Open"
- */
+#else
 static void do_menu_file_open(bool all)
 {
        int err;
@@ -3194,6 +3894,7 @@ static void do_menu_file_open(bool all)
        /* Hack -- quit */
        quit(NULL);
 }
+#endif
 
 
 /*
@@ -3253,7 +3954,8 @@ static void init_menubar(void)
        WindowPtr tmpw;
 
        MenuHandle m;
-
+       OSErr           err;
+       long            response;
 
        /* Get the "apple" menu */
        m = GetMenu(128);
@@ -3262,11 +3964,22 @@ static void init_menubar(void)
        InsertMenu(m, 0);
 
        /* Add the DA's to the "apple" menu */
-       AppendResMenu   (m, 'DRVR');    //AddResMenu(m, 'DRVR');
-
+#if TARGET_API_MAC_CARBON
+#else
+       AppendResMenu   (m, 'DRVR');
+#endif
 
        /* Get the "File" menu */
+#if TARGET_API_MAC_CARBON
+       m = GetMenu(129);
+       err = Gestalt( gestaltSystemVersion, &response );
+       if ( (err == noErr) && (response >= 0x00000A00) )
+       {
+               DeleteMenuItem( m, 7 );
+       }
+#else
        m = GetMenu(129);
+#endif
 
        /* Insert the menu */
        InsertMenu(m, 0);
@@ -3305,7 +4018,11 @@ static void init_menubar(void)
        tmpw = NewWindow(0, &r, "\p", false, documentProc, 0, 0, 0);
 
        /* Activate the "fake" window */
+#if TARGET_API_MAC_CARBON
+       SetPortWindowPort(tmpw);
+#else
        SetPort(tmpw);
+#endif
 
        /* Default mode */
        TextMode(0);
@@ -3314,10 +4031,14 @@ static void init_menubar(void)
        TextSize(12);
 
        /* Add the fonts to the menu */
-       AppendResMenu(m, 'FONT');       //AddResMenu(m, 'FONT');
+       AppendResMenu(m, 'FONT');
 
        /* Size of menu */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Scan the menu */
        for (i = n; i >= 4; i--)
@@ -3326,11 +4047,14 @@ static void init_menubar(void)
                short fontNum;
 
                /* Acquire the font name */
-               /* GetMenuItemText(m, i, tmpName); */
-               GetMenuItemText(m, i, tmpName); //GetItem(m, i, tmpName);
+               GetMenuItemText(m, i, tmpName);
 
                /* Acquire the font index */
+#if TARGET_API_MAC_CARBON
+               fontNum = FMGetFontFamilyFromName( tmpName );
+#else
                GetFNum(tmpName, &fontNum);
+#endif
 
                /* Apply the font index */
                TextFont(fontNum);
@@ -3339,8 +4063,7 @@ static void init_menubar(void)
                if ((CharWidth('i') != CharWidth('W')) || (CharWidth('W') == 0))
                {
                        /* Delete the menu item XXX XXX XXX */
-                       /* DeleteMenuItem(m, i); */
-                       DeleteMenuItem  (m, i); //DelMenuItem(m, i);
+                       DeleteMenuItem  (m, i);
                }
        }
 
@@ -3351,7 +4074,7 @@ static void init_menubar(void)
        AppendMenu(m, "\p-");
 
        /* Add the fonts to the menu */
-       AppendResMenu   (m, 'FONT');    //AddResMenu(m, 'FONT');
+       AppendResMenu   (m, 'FONT');
 
 
        /* Make the "Size" menu */
@@ -3519,83 +4242,136 @@ static void setup_menus(void)
 
 
        /* File menu */
-       m = GetMenuHandle(129); //m = GetMHandle(129);
+       m = GetMenuHandle(129);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
        /* Enable "new"/"open..."/"import..." */
        if (initialized && !game_in_progress)
        {
+#if TARGET_API_MAC_CARBON
+               EnableMenuItem(m, 1);
+               EnableMenuItem(m, 2);
+               EnableMenuItem(m, 3);
+#else
                EnableItem(m, 1);
                EnableItem(m, 2);
                EnableItem(m, 3);
+#endif
        }
 
        /* Enable "close" */
        if (initialized)
        {
+#if TARGET_API_MAC_CARBON
+               EnableMenuItem(m, 4);
+#else
                EnableItem(m, 4);
+#endif
        }
 
        /* Enable "save" */
        if (initialized && character_generated)
        {
+#if TARGET_API_MAC_CARBON
+               EnableMenuItem(m, 5);
+#else
                EnableItem(m, 5);
+#endif
        }
 
        /* Enable "quit" */
        if (TRUE)
        {
+#if TARGET_API_MAC_CARBON
+               EnableMenuItem(m, 7);
+#else
                EnableItem(m, 7);
+#endif
        }
 
 
        /* Edit menu */
-       m = GetMenuHandle(130); //m = GetMHandle(130);
+       m = GetMenuHandle(130);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
        /* Enable "edit" options if "needed" */
        if (!td)
        {
+#if TARGET_API_MAC_CARBON
+               EnableMenuItem(m, 1);
+               EnableMenuItem(m, 3);
+               EnableMenuItem(m, 4);
+               EnableMenuItem(m, 5);
+               EnableMenuItem(m, 6);
+#else
                EnableItem(m, 1);
                EnableItem(m, 3);
                EnableItem(m, 4);
                EnableItem(m, 5);
                EnableItem(m, 6);
+#endif
        }
 
 
        /* Font menu */
-       m = GetMenuHandle(131); //m = GetMHandle(131);
+       m = GetMenuHandle(131);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
        /* Hack -- look cute XXX XXX */
@@ -3607,6 +4383,33 @@ static void setup_menus(void)
        /* Active window */
        if (td)
        {
+#if TARGET_API_MAC_CARBON
+               /* Enable "bold" */
+               EnableMenuItem(m, 1);
+
+               /* Enable "extend" */
+               EnableMenuItem(m, 2);
+
+               /* Check the appropriate "bold-ness" */
+               if (td->font_face & bold) CheckMenuItem(m, 1, TRUE);
+
+               /* Check the appropriate "wide-ness" */
+               if (td->font_face & extend) CheckMenuItem(m, 2, TRUE);
+
+               /* Analyze fonts */
+               for (i = 4; i <= n; i++)
+               {
+                       /* Enable it */
+                       EnableMenuItem(m, i);
+
+                       /* Analyze font */
+                       GetMenuItemText(m, i, s);
+                       GetFNum(s, &value);
+
+                       /* Check active font */
+                       if (td->font_id == value) CheckMenuItem(m, i, TRUE);
+               }
+#else
                /* Enable "bold" */
                EnableItem(m, 1);
 
@@ -3626,28 +4429,37 @@ static void setup_menus(void)
                        EnableItem(m, i);
 
                        /* Analyze font */
-                       /* GetMenuItemText(m,i,s); */
-                       GetMenuItemText(m, i, s);       //GetItem(m, i, s);
+                       GetMenuItemText(m, i, s);
                        GetFNum(s, &value);
 
                        /* Check active font */
                        if (td->font_id == value) CheckItem(m, i, TRUE);
                }
+#endif
        }
 
 
        /* Size menu */
-       m = GetMenuHandle(132); //m = GetMHandle(132);
+       m = GetMenuHandle(132);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
        
        /* Active window */
@@ -3656,9 +4468,20 @@ static void setup_menus(void)
                /* Analyze sizes */
                for (i = 1; i <= n; i++)
                {
+#if TARGET_API_MAC_CARBON
                        /* Analyze size */
-                       /* GetMenuItemText(m,i,s); */
-                       GetMenuItemText(m, i, s);       //GetItem(m, i, s);
+                       GetMenuItemText(m, i, s);
+                       s[s[0]+1] = '\0';
+                       value = atoi((char*)(s+1));
+
+                       /* Enable the "real" sizes */
+                       if (RealFont(td->font_id, value)) EnableMenuItem(m, i);
+
+                       /* Check the current size */
+                       if (td->font_size == value) CheckMenuItem(m, i, TRUE);
+#else
+                       /* Analyze size */
+                       GetMenuItemText(m, i, s);
                        s[s[0]+1] = '\0';
                        value = atoi((char*)(s+1));
 
@@ -3667,38 +4490,84 @@ static void setup_menus(void)
 
                        /* Check the current size */
                        if (td->font_size == value) CheckItem(m, i, TRUE);
+#endif
                }
        }
 
 
        /* Windows menu */
-       m = GetMenuHandle(133); //m = GetMHandle(133);
+       m = GetMenuHandle(133);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Check active windows */
        for (i = 1; i <= n; i++)
        {
                /* Check if needed */
+#if TARGET_API_MAC_CARBON
+               CheckMenuItem(m, i, data[i-1].mapped);
+#else
                CheckItem(m, i, data[i-1].mapped);
+#endif
        }
 
 
        /* Special menu */
-       m = GetMenuHandle(134); //m = GetMHandle(134);
+       m = GetMenuHandle(134);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
+#if TARGET_API_MAC_CARBON
+       /* Item "arg_sound" */
+       EnableMenuItem(m, 1);
+       CheckMenuItem(m, 1, arg_sound);
+
+       /* Item "arg_graphics" */
+       EnableMenuItem(m, 2);
+       CheckMenuItem(m, 2, arg_graphics);
+
+       /* Item "arg_fiddle" */
+       EnableMenuItem(m, 4);
+       CheckMenuItem(m, 4, arg_fiddle);
+
+       /* Item "arg_wizard" */
+       EnableMenuItem(m, 5);
+       CheckMenuItem(m, 5, arg_wizard);
+
+       /* Item "SoundSetting" */
+       EnableMenuItem(m, 7);
+
+       /* Item NewStyle Graphics */
+       EnableMenuItem(m, 8);
+       CheckMenuItem(m, 8, use_newstyle_graphics);
+
+       /* Item Bigtile Mode */
+       EnableMenuItem(m, 9);
+       CheckMenuItem(m, 9, arg_bigtile);
+#else
        /* Item "arg_sound" */
        EnableItem(m, 1);
        CheckItem(m, 1, arg_sound);
@@ -3725,20 +4594,29 @@ static void setup_menus(void)
        /* Item Bigtile Mode */
        EnableItem(m, 9);
        CheckItem(m, 9, arg_bigtile);
-
+#endif
 
        /* TileWidth menu */
-       m = GetMenuHandle(135); //m = GetMHandle(135);
+       m = GetMenuHandle(135);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
        /* Active window */
@@ -3749,31 +4627,48 @@ static void setup_menus(void)
                {
                        /* Analyze size */
                        /* GetMenuItemText(m,i,s); */
-                       GetMenuItemText(m, i, s);       //GetItem(m, i, s);
+                       GetMenuItemText(m, i, s);
                        s[s[0]+1] = '\0';
                        value = atoi((char*)(s+1));
 
+#if TARGET_API_MAC_CARBON
+                       /* Enable */
+                       EnableMenuItem(m, i);
+
+                       /* Check the current size */
+                       if (td->tile_wid == value) CheckMenuItem(m, i, TRUE);
+#else
                        /* Enable */
                        EnableItem(m, i);
 
                        /* Check the current size */
                        if (td->tile_wid == value) CheckItem(m, i, TRUE);
+#endif
                }
        }
 
 
        /* TileHeight menu */
-       m = GetMenuHandle(136); //m = GetMHandle(136);
+       m = GetMenuHandle(136);
 
        /* Get menu size */
+#if TARGET_API_MAC_CARBON
+       n = CountMenuItems(m);
+#else
        n = CountMItems(m);
+#endif
 
        /* Reset menu */
        for (i = 1; i <= n; i++)
        {
                /* Reset */
+#if TARGET_API_MAC_CARBON
+               DisableMenuItem(m, i);
+               CheckMenuItem(m, i, FALSE);
+#else
                DisableItem(m, i);
                CheckItem(m, i, FALSE);
+#endif
        }
 
        /* Active window */
@@ -3783,16 +4678,23 @@ static void setup_menus(void)
                for (i = 1; i <= n; i++)
                {
                        /* Analyze size */
-                       /* GetMenuItemText(m,i,s); */
-                       GetMenuItemText(m, i, s);       //GetItem(m, i, s);
+                       GetMenuItemText(m, i, s);
                        s[s[0]+1] = '\0';
                        value = atoi((char*)(s+1));
 
+#if TARGET_API_MAC_CARBON
+                       /* Enable */
+                       EnableMenuItem(m, i);
+
+                       /* Check the current size */
+                       if (td->tile_hgt == value) CheckMenuItem(m, i, TRUE);
+#else
                        /* Enable */
                        EnableItem(m, i);
 
                        /* Check the current size */
                        if (td->tile_hgt == value) CheckItem(m, i, TRUE);
+#endif
                }
        }
 }
@@ -3842,6 +4744,35 @@ static void menu(long mc)
                case 128:
                {
                        /* About Angband... */
+#if TARGET_API_MAC_CARBON
+                       if (selection == 1)
+                       {
+                               DialogPtr dialog;
+                               short item_hit;
+
+                               /* Get the about dialogue */
+                               dialog=GetNewDialog(128, 0, (WindowPtr)-1);
+
+                               /* Move it to the middle of the screen */
+                               RepositionWindow(
+                                       GetDialogWindow(dialog),
+                                       NULL,
+                                       kWindowCenterOnMainScreen);
+
+                               /* Show the dialog */
+                               TransitionWindow(GetDialogWindow(dialog),
+                                       kWindowZoomTransitionEffect,
+                                       kWindowShowTransitionAction,
+                                       NULL);
+
+                               /* Wait for user to click on it */
+                               ModalDialog(0, &item_hit);
+
+                               /* Free the dialogue */
+                               DisposeDialog(dialog);
+                               break;
+                       }
+#else
                        if (selection == 1)
                        {
                                DialogPtr dialog;
@@ -3855,15 +4786,16 @@ static void menu(long mc)
                                MoveWindow(dialog, r.left, r.top, 1);
                                ShowWindow(dialog);
                                ModalDialog(0, &item_hit);
-                               DisposeDialog(dialog);          //DisposDialog(dialog);
+                               DisposeDialog(dialog);
                                break;
                        }
 
                        /* Desk accessory */
                        /* GetMenuItemText(GetMHandle(128),selection,s); */
-                       GetMenuItemText(GetMenuHandle(128), selection, s);      //GetItem(GetMHandle(128), selection, s);
+                       GetMenuItemText(GetMenuHandle(128), selection, s);
                        OpenDeskAcc(s);
                        break;
+#endif
                }
 
                /* File Menu */
@@ -4038,8 +4970,7 @@ static void menu(long mc)
                        }
 
                        /* Get a new font name */
-                       /* GetMenuItemText(GetMHandle(131), selection, s); */
-                       GetMenuItemText(GetMenuHandle(131), selection, s);              //GetItem(GetMHandle(131), selection, s);
+                       GetMenuItemText(GetMenuHandle(131), selection, s);
                        GetFNum(s, &fid);
 
                        /* Save the new font id */
@@ -4101,8 +5032,7 @@ static void menu(long mc)
                        /* Activate */
                        activate(td->w);
 
-                       /* GetMenuItemText(GetMHandle(132), selection, s); */
-                       GetMenuItemText(GetMenuHandle(132), selection, s);      //GetItem(GetMHandle(132), selection, s);
+                       GetMenuItemText(GetMenuHandle(132), selection, s);
                        s[s[0]+1]=0;
                        td->font_size = atoi((char*)(s+1));
 
@@ -4179,6 +5109,7 @@ static void menu(long mc)
                                                grafWidth = grafHeight = 8;
                                                pictID = 1001;
                                        }
+
                                        /* Hack -- Force redraw */
                                        Term_key_push(KTRL('R'));
 
@@ -4265,8 +5196,7 @@ static void menu(long mc)
                        /* Activate */
                        activate(td->w);
 
-                       /* GetMenuItemText(GetMHandle(135), selection, s); */
-                       GetMenuItemText(GetMenuHandle(135), selection, s);      //GetItem(GetMHandle(135), selection, s);
+                       GetMenuItemText(GetMenuHandle(135), selection, s);
                        s[s[0]+1]=0;
                        td->tile_wid = atoi((char*)(s+1));
 
@@ -4294,8 +5224,7 @@ static void menu(long mc)
                        /* Activate */
                        activate(td->w);
 
-                       /* GetMenuItemText(GetMHandle(136), selection, s); */
-                       GetMenuItemText(GetMenuHandle(136), selection, s);      //GetItem(GetMHandle(136), selection, s);
+                       GetMenuItemText(GetMenuHandle(136), selection, s);
                        s[s[0]+1]=0;
                        td->tile_hgt = atoi((char*)(s+1));
 
@@ -4346,7 +5275,7 @@ static OSErr CheckRequiredAEParams(const AppleEvent *theAppleEvent)
  * Apple Event Handler -- Open Application
  */
 static pascal OSErr AEH_Start(const AppleEvent *theAppleEvent,
-                             const AppleEvent *reply, long handlerRefCon)
+                             AppleEvent *reply, long handlerRefCon)
 {
 #pragma unused(reply, handlerRefCon)
 
@@ -4358,15 +5287,42 @@ static pascal OSErr AEH_Start(const AppleEvent *theAppleEvent,
  * Apple Event Handler -- Quit Application
  */
 static pascal OSErr AEH_Quit(const AppleEvent *theAppleEvent,
-                            const AppleEvent *reply, long handlerRefCon)
+                            AppleEvent *reply, long handlerRefCon)
 {
 #pragma unused(reply, handlerRefCon)
+#if TARGET_API_MAC_CARBON
+
+       /* Save the game (if necessary) */
+       if (game_in_progress && character_generated)
+       {
+                       if (!can_save){
+#ifdef JP
+                               plog("º£¤Ï¥»¡¼¥Ö¤¹¤ë¤³¤È¤Ï½ÐÍè¤Þ¤»¤ó¡£");
+#else
+                               plog("You may not do that right now.");
+#endif
+                               return;
+                       }
+                       /* Hack -- Forget messages */
+                       msg_flag = FALSE;
+
+                       /* Save the game */
+#if 0
+                       do_cmd_save_game(FALSE);
+#endif
+                       Term_key_push(SPECIAL_KEY_QUIT);
+                       return;
+               }
 
+               /* Quit */
+               quit(NULL);
+#else
        /* Quit later */
        quit_when_ready = TRUE;
 
        /* Check arguments */
        return (CheckRequiredAEParams(theAppleEvent));
+#endif
 }
 
 
@@ -4374,7 +5330,7 @@ static pascal OSErr AEH_Quit(const AppleEvent *theAppleEvent,
  * Apple Event Handler -- Print Documents
  */
 static pascal OSErr AEH_Print(const AppleEvent *theAppleEvent,
-                             const AppleEvent *reply, long handlerRefCon)
+                             AppleEvent *reply, long handlerRefCon)
 {
 #pragma unused(theAppleEvent, reply, handlerRefCon)
 
@@ -4396,7 +5352,7 @@ static pascal OSErr AEH_Print(const AppleEvent *theAppleEvent,
  * snippet from Think Reference 2.0.  (The prior sentence could read
  * "shamelessly swiped & hacked")
  */
-static pascal OSErr AEH_Open(AppleEvent *theAppleEvent,
+static pascal OSErr AEH_Open(const AppleEvent *theAppleEvent,
                             AppleEvent* reply, long handlerRefCon)
 {
 #pragma unused(reply, handlerRefCon)
@@ -4550,16 +5506,19 @@ static bool CheckEvents(bool wait)
        /* Timestamp last check */
        lastTicks = curTicks;
 
+#if TARGET_API_MAC_CARBON
+       WaitNextEvent( everyEvent, &event, 1L, nil );
+#else
        /* Let the "system" run */
        SystemTask();
 
        /* Get an event (or null) */
        GetNextEvent(everyEvent, &event);
+#endif
 
        /* Hack -- Nothing is ready yet */
        if (event.what == nullEvent) return (FALSE);
 
-
        /* Analyze the event */
        switch (event.what)
        {
@@ -4709,20 +5668,27 @@ static bool CheckEvents(bool wait)
                                        HiliteMenu(0);
                                        break;
                                }
-
+#if !TARGET_API_MAC_CARBON
                                case inSysWindow:
                                {
                                        SystemClick(&event, w);
                                        break;
                                }
+#endif
 
                                case inDrag:
                                {
                                        Point p;
 
                                        WindowPtr old_win;
-
-                                       r = qd.screenBits.bounds;
+                                       BitMap screen;
+                                       Rect portRect;
+#if TARGET_API_MAC_CARBON                                              
+                                       GetQDGlobalsScreenBits( &screen );
+#else
+                                       screen = qd.screenBits;
+#endif 
+                                       r = screen.bounds;
                                        r.top += 20; /* GetMBarHeight() XXX XXX XXX */
                                        InsetRect(&r, 4, 4);
                                        DragWindow(w, event.where, &r);
@@ -4737,9 +5703,17 @@ static bool CheckEvents(bool wait)
                                        activate(td->w);
 
                                        /* Analyze */
-                                       p.h = td->w->portRect.left;
-                                       p.v = td->w->portRect.top;
+#if TARGET_API_MAC_CARBON
+                                       GetWindowBounds( (WindowRef)td->w, kWindowContentRgn, &portRect );
+#else
+                                       portRect = td->w->portRect;
+                                       local_to_global( &portRect );
+#endif
+                                       p.h = portRect.left;
+                                       p.v = portRect.top;
+#if !TARGET_API_MAC_CARBON
                                        LocalToGlobal(&p);
+#endif
                                        td->r.left = p.h;
                                        td->r.top = p.v;
 
@@ -4778,15 +5752,21 @@ static bool CheckEvents(bool wait)
                                        s16b x, y;
 
                                        term *old = Term;
-
+                                       BitMap          screen;
+       
+#if TARGET_API_MAC_CARBON
+                                       GetQDGlobalsScreenBits( &screen );
+#else
+                                       screen = qd.screenBits;
+#endif
                                        /* Oops */
                                        if (!td) break;
 
                                        /* Fake rectangle */
                                        r.left = 20 * td->tile_wid + td->size_ow1;
-                                       r.right = qd.screenBits.bounds.right;
+                                       r.right = screen.bounds.right;
                                        r.top = 1 * td->tile_hgt + td->size_oh1;
-                                       r.bottom = qd.screenBits.bounds.bottom;
+                                       r.bottom = screen.bounds.bottom;
 
                                        /* Grow the rectangle */
                                        newsize = GrowWindow(w, event.where, &r);
@@ -4834,6 +5814,9 @@ static bool CheckEvents(bool wait)
                /* Disk Event -- From "Maarten Hazewinkel" */
                case diskEvt:
                {
+
+#if TARGET_API_MAC_CARBON
+#else
                        /* check for error when mounting the disk */
                        if (HiWord(event.message) != noErr)
                        {
@@ -4844,7 +5827,7 @@ static bool CheckEvents(bool wait)
                                DIBadMount(p, event.message);
                                DIUnload();
                        }
-
+#endif
                        break;
                }
 
@@ -4858,8 +5841,17 @@ static bool CheckEvents(bool wait)
                                /* Resuming: activate the front window */
                                if (event.message & resumeFlag)
                                {
+#if TARGET_API_MAC_CARBON
+                                       Cursor  arrow;
+                                               
+                                       SetPortWindowPort( FrontWindow() );
+                                       
+                                       GetQDGlobalsArrow( &arrow );
+                                       SetCursor(&arrow);
+#else
                                        SetPort(FrontWindow());
                                        SetCursor(&qd.arrow);
+#endif
                                }
 
                                /* Suspend: deactivate the front window */
@@ -4879,6 +5871,9 @@ static bool CheckEvents(bool wait)
                /* From "Steve Linberg" and "Maarten Hazewinkel" */
                case kHighLevelEvent:
                {
+#if TARGET_API_MAC_CARBON
+                       AEProcessAppleEvent(&event);
+#else
                        /* Process apple events */
                        if (AEProcessAppleEvent(&event) != noErr)
                        {
@@ -4904,6 +5899,7 @@ static bool CheckEvents(bool wait)
 
                        /* Handle "open_when_ready" */
                        handle_open_when_ready();
+#endif
 
                        break;
                }
@@ -5096,7 +6092,15 @@ static void init_stuff(void)
 
        char path[1024];
 
+       BitMap screen;
+       Rect screenRect;
 
+#if TARGET_API_MAC_CARBON
+       OSErr err = noErr;
+       NavDialogOptions dialogOptions;
+       FSSpec theFolderSpec;
+       NavReplyRecord theReply;
+#endif
        /* Fake rectangle */
        r.left = 0;
        r.top = 0;
@@ -5104,7 +6108,12 @@ static void init_stuff(void)
        r.bottom = 188;
 
        /* Center it */
-       center_rect(&r, &qd.screenBits.bounds);
+#if TARGET_API_MAC_CARBON
+       screenRect = GetQDGlobalsScreenBits(&screen)->bounds;
+#else
+       screenRect = qd.screenBits.bounds;
+#endif
+       center_rect(&r, &screenRect);
 
        /* Extract corner */
        topleft.v = r.top;
@@ -5122,32 +6131,104 @@ static void init_stuff(void)
                init_file_paths(path);
 
                /* Build the filename */
-               #ifdef JP
-                       path_build(path, 1024, ANGBAND_DIR_FILE, "news_j.txt");
-               #else
-                       path_build(path, 1024, ANGBAND_DIR_FILE, "news.txt");
-               #endif
+#ifdef JP
+               path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news_j.txt");
+#else
+               path_build(path, sizeof(path), ANGBAND_DIR_FILE, "news.txt");
+#endif
 
                /* Attempt to open and close that file */
                if (0 == fd_close(fd_open(path, O_RDONLY))) break;
 
                /* Warning */
-               #ifdef JP
-                       plog_fmt("'%s' ¥Õ¥¡¥¤¥ë¤ò¥ª¡¼¥×¥ó½ÐÍè¤Þ¤»¤ó.", path);
-               #else
-                       plog_fmt("Unable to open the '%s' file.", path);
-               #endif
+#ifdef JP
+               plog_fmt("'%s' ¥Õ¥¡¥¤¥ë¤ò¥ª¡¼¥×¥ó½ÐÍè¤Þ¤»¤ó.", path);
+#else
+               plog_fmt("Unable to open the '%s' file.", path);
+#endif
 
                /* Warning */
-               #ifdef JP
-                       plog("Hengband¤Î'lib'¥Õ¥©¥ë¥À¤¬Â¸ºß¤·¤Ê¤¤¤«Àµ¤·¤¯Ìµ¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹.");
-               #else
-                       plog("The Angband 'lib' folder is probably missing or misplaced.");
-               #endif
+#ifdef JP
+               plog("Hengband¤Î'lib'¥Õ¥©¥ë¥À¤¬Â¸ºß¤·¤Ê¤¤¤«Àµ¤·¤¯Ìµ¤¤²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹.");
+#else
+               plog("The Angband 'lib' folder is probably missing or misplaced.");
+#endif
 
                /* Warning */
+#ifdef JP
+               plog("Please 'open' any file in any sub-folder of the 'lib' folder.");
+#else
                plog("Please 'open' any file in any sub-folder of the 'lib' folder.");
+#endif
+               
+#if TARGET_API_MAC_CARBON
+               /* Ask the user to choose the lib folder */
+               err = NavGetDefaultDialogOptions(&dialogOptions);
+
+               /* Paranoia */
+               if (err != noErr) quit(NULL);
+
+               /* Set default location option */
+               dialogOptions.dialogOptionFlags |= kNavSelectDefaultLocation;
+
+               /* Clear preview option */
+               dialogOptions.dialogOptionFlags &= ~(kNavAllowPreviews);
+
+               /* Forbit selection of multiple files */
+               dialogOptions.dialogOptionFlags &= ~(kNavAllowMultipleFiles);
+
+               /* Display location */
+               dialogOptions.location = topleft;
+
+               /* Load the message for the missing folder from the resource fork */
+               GetIndString(dialogOptions.message, 128, 1);
+
+               /* Wait for the user to choose a folder */
+               err = NavChooseFolder(
+                       nil,
+                       &theReply,
+                       &dialogOptions,
+                       nil,
+                       nil,
+                       nil);
+
+               /* Assume the player doesn't want to go on */
+               if ((err != noErr) || !theReply.validRecord) quit(NULL);
+
+               /* Retrieve FSSpec from the reply */
+               {
+                       AEKeyword theKeyword;
+                       DescType actualType;
+                       Size actualSize;
+
+                       /* Get a pointer to selected folder */
+                       err = AEGetNthPtr(
+                               &(theReply.selection),
+                               1,
+                               typeFSS,
+                               &theKeyword,
+                               &actualType,
+                               &theFolderSpec,
+                               sizeof(FSSpec),
+                               &actualSize);
+
+                       /* Paranoia */
+                       if (err != noErr) quit(NULL);
+               }
+
+               /* Free navitagor reply */
+               err = NavDisposeReply(&theReply);
 
+               /* Paranoia */
+               if (err != noErr) quit(NULL);
+
+               /* Extract textual file name for given file */
+               refnum_to_name(
+                       path,
+                       theFolderSpec.parID,
+                       theFolderSpec.vRefNum,
+                       (char *)theFolderSpec.name);
+#else
                /* Allow "text" files */
                types[0] = 'TEXT';
 
@@ -5166,6 +6247,7 @@ static void init_stuff(void)
                /* Extract textual file name for given file */
                GetWDInfo(reply.vRefNum, &vrefnum, &drefnum, &junk);
                refnum_to_name(path, drefnum, vrefnum, (char*)reply.fName);
+#endif
 
                /* Hack -- Remove the "filename" */
                i = strlen(path) - 1;
@@ -5191,15 +6273,18 @@ void main(void)
        EventRecord tempEvent;
        int numberOfMasters = 10;
 
+#if !TARGET_API_MAC_CARBON
        /* Increase stack space by 64K */
        SetApplLimit(GetApplLimit() - 131072L);//65536L);
 
        /* Stretch out the heap to full size */
        MaxApplZone();
+#endif
 
        /* Get more Masters */
        while (numberOfMasters--) MoreMasters();
 
+#if !TARGET_API_MAC_CARBON
        /* Set up the Macintosh */
        InitGraf(&qd.thePort);
        InitFonts();
@@ -5207,6 +6292,7 @@ void main(void)
        InitMenus();
        /* TEInit(); */
        InitDialogs(NULL);
+#endif
        InitCursor();
 
 #ifdef JP
@@ -5296,46 +6382,44 @@ void main(void)
 
 #endif /* ANGBAND_LITE_MAC */
 
+       /* 
+        * Remember Mac OS version, in case we have to cope with version-specific
+        * problems
+        */
+       (void)Gestalt(gestaltSystemVersion, &mac_os_version);
 
 #ifdef USE_SFL_CODE
-
        /* Obtain a "Universal Procedure Pointer" */
-       AEH_Start_UPP = NewAEEventHandlerProc(AEH_Start);
-
+       AEH_Start_UPP = NewAEEventHandlerUPP(AEH_Start);
        /* Install the hook (ignore error codes) */
        AEInstallEventHandler(kCoreEventClass, kAEOpenApplication, AEH_Start_UPP,
                              0L, FALSE);
 
        /* Obtain a "Universal Procedure Pointer" */
-       AEH_Quit_UPP = NewAEEventHandlerProc(AEH_Quit);
-
+       AEH_Quit_UPP = NewAEEventHandlerUPP(AEH_Quit);
        /* Install the hook (ignore error codes) */
        AEInstallEventHandler(kCoreEventClass, kAEQuitApplication, AEH_Quit_UPP,
                              0L, FALSE);
 
        /* Obtain a "Universal Procedure Pointer" */
-       AEH_Print_UPP = NewAEEventHandlerProc(AEH_Print);
-
+       AEH_Print_UPP = NewAEEventHandlerUPP(AEH_Print);
        /* Install the hook (ignore error codes) */
        AEInstallEventHandler(kCoreEventClass, kAEPrintDocuments, AEH_Print_UPP,
                              0L, FALSE);
 
        /* Obtain a "Universal Procedure Pointer" */
-       AEH_Open_UPP = NewAEEventHandlerProc(AEH_Open);
-
+       AEH_Open_UPP = NewAEEventHandlerUPP(AEH_Open);
        /* Install the hook (ignore error codes) */
        AEInstallEventHandler(kCoreEventClass, kAEOpenDocuments, AEH_Open_UPP,
                              0L, FALSE);
-
 #endif
 
-
        /* Find the current application */
        SetupAppDir();
 
 
        /* Mark ourself as the file creator */
-       _fcreator = 'Heng';
+       _fcreator = ANGBAND_CREATOR;
 
        /* Default to saving a "text" file */
        _ftype = 'TEXT';
@@ -5344,7 +6428,11 @@ void main(void)
 #if defined(__MWERKS__)
 
        /* Obtian a "Universal Procedure Pointer" */
+#if TARGET_API_MAC_CARBON
+       ynfilterUPP = NewModalFilterUPP(ynfilter);
+#else
        ynfilterUPP = NewModalFilterProc(ynfilter);
+#endif
 
 #endif
 
@@ -5359,8 +6447,8 @@ void main(void)
        quit_aux = hook_quit;
        core_aux = hook_core;
 
-BackColor(blackColor);
-               ForeColor(whiteColor);
+       BackColor(blackColor);
+       ForeColor(whiteColor);
 
        /* Show the "watch" cursor */
        SetCursor(*(GetCursor(watchCursor)));
@@ -5379,7 +6467,15 @@ BackColor(blackColor);
        while (CheckEvents(TRUE)) /* loop */;
 
        /* Reset the cursor */
-       SetCursor(&qd.arrow);
+#if TARGET_API_MAC_CARBON
+       {
+               Cursor  arrow;
+               GetQDGlobalsArrow( &arrow );
+               SetCursor(&arrow);
+       }
+#else
+       SetCursor( &qd.arrow );
+#endif
 
 
        /* Mega-Hack -- Allocate a "lifeboat" */
@@ -5391,6 +6487,9 @@ BackColor(blackColor);
        /* Initialize */
        init_stuff();
 
+       /* Catch nasty signals */
+       signals_init();
+
        /* Initialize */
        init_angband();
 
@@ -5411,11 +6510,11 @@ BackColor(blackColor);
 #endif
 
        /* Prompt the user */
-       #ifdef JP
+#ifdef JP
        prt("'¥Õ¥¡¥¤¥ë'¥á¥Ë¥å¡¼¤è¤ê'¿·µ¬'¤Þ¤¿¤Ï'³«¤¯...'¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£", 23, 10);
-       #else
+#else
        prt("[Choose 'New' or 'Open' from the 'File' menu]", 23, 15);
-       #endif
+#endif
 
        /* Flush the prompt */
        Term_fresh();
index 3f85edb..a34e327 100644 (file)
@@ -519,10 +519,12 @@ static DIBINIT infMask;
  */
 static bool can_use_sound = FALSE;
 
+#define SAMPLE_MAX 8
+
 /*
  * An array of sound file names
  */
-static cptr sound_file[SOUND_MAX];
+static cptr sound_file[SOUND_MAX][SAMPLE_MAX];
 
 #endif /* USE_SOUND */
 
@@ -723,7 +725,11 @@ static int init_bg(void)
 
        hBG = LoadImage(NULL, bmfile,  IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
        if (!hBG) {
+#ifdef JP
                plog_fmt("ÊÉ»æÍѥӥåȥޥåנ'%s' ¤òÆɤ߹þ¤á¤Þ¤»¤ó¡£", bmfile);
+#else
+               plog_fmt("Can't load the bitmap file '%s'.", bmfile);
+#endif
                use_bg = 0;
                return 0;
        }
@@ -1252,6 +1258,88 @@ static void load_prefs(void)
        }
 }
 
+#ifdef USE_SOUND
+
+/*
+ * XXX XXX XXX - Taken from files.c.
+ *
+ * Extract "tokens" from a buffer
+ *
+ * This function uses "whitespace" as delimiters, and treats any amount of
+ * whitespace as a single delimiter.  We will never return any empty tokens.
+ * When given an empty buffer, or a buffer containing only "whitespace", we
+ * will return no tokens.  We will never extract more than "num" tokens.
+ *
+ * By running a token through the "text_to_ascii()" function, you can allow
+ * that token to include (encoded) whitespace, using "\s" to encode spaces.
+ *
+ * We save pointers to the tokens in "tokens", and return the number found.
+ */
+static s16b tokenize_whitespace(char *buf, s16b num, char **tokens)
+{
+       int k = 0;
+
+       char *s = buf;
+
+
+       /* Process */
+       while (k < num)
+       {
+               char *t;
+
+               /* Skip leading whitespace */
+               for ( ; *s && isspace(*s); ++s) /* loop */;
+
+               /* All done */
+               if (!*s) break;
+
+               /* Find next whitespace, if any */
+               for (t = s; *t && !isspace(*t); ++t) /* loop */;
+
+               /* Nuke and advance (if necessary) */
+               if (*t) *t++ = '\0';
+
+               /* Save the token */
+               tokens[k++] = s;
+
+               /* Advance */
+               s = t;
+       }
+
+       /* Count */
+       return (k);
+}
+
+static void load_sound_prefs(void)
+{
+       int i, j, num;
+       char tmp[1024];
+       char ini_path[1024];
+       char wav_path[1024];
+       char *zz[SAMPLE_MAX];
+
+       /* Access the sound.cfg */
+       path_build(ini_path, 1024, ANGBAND_DIR_XTRA_SOUND, "sound.cfg");
+
+       for (i = 0; i < SOUND_MAX; i++)
+       {
+               GetPrivateProfileString("Sound", angband_sound_name[i], "", tmp, 1024, ini_path);
+
+               num = tokenize_whitespace(tmp, SAMPLE_MAX, zz);
+
+               for (j = 0; j < num; j++)
+               {
+                       /* Access the sound */
+                       path_build(wav_path, 1024, ANGBAND_DIR_XTRA_SOUND, zz[j]);
+
+                       /* Save the sound filename, if it exists */
+                       if (check_file(wav_path))
+                               sound_file[i][j] = string_make(zz[j]);
+               }
+       }
+}
+
+#endif /* USE_SOUND */
 
 /*
  * Create the new global palette based on the bitmap palette
@@ -1506,23 +1594,8 @@ static bool init_sound(void)
        /* Initialize once */
        if (!can_use_sound)
        {
-               int i;
-
-               char wav[128];
-               char buf[1024];
-
-               /* Prepare the sounds */
-               for (i = 1; i < SOUND_MAX; i++)
-               {
-                       /* Extract name of sound file */
-                       sprintf(wav, "%s.wav", angband_sound_name[i]);
-
-                       /* Access the sound */
-                       path_build(buf, sizeof(buf), ANGBAND_DIR_XTRA_SOUND, wav);
-
-                       /* Save the sound filename, if it exists */
-                       if (check_file(buf)) sound_file[i] = string_make(buf);
-               }
+               /* Load the prefs */
+               load_sound_prefs();
 
                /* Sound available */
                can_use_sound = TRUE;
@@ -2081,6 +2154,11 @@ static errr Term_xtra_win_noise(void)
  */
 static errr Term_xtra_win_sound(int v)
 {
+#ifdef USE_SOUND
+       int i;
+       char buf[1024];
+#endif /* USE_SOUND */
+
        /* Sound disabled */
        if (!use_sound) return (1);
 
@@ -2089,18 +2167,28 @@ static errr Term_xtra_win_sound(int v)
 
 #ifdef USE_SOUND
 
-       /* Unknown sound */
-       if (!sound_file[v]) return (1);
+       /* Count the samples */
+       for (i = 0; i < SAMPLE_MAX; i++)
+       {
+               if (!sound_file[v][i])
+                       break;
+       }
+
+       /* No sample */
+       if (i == 0) return (1);
+
+       /* Build the path */
+       path_build(buf, 1024, ANGBAND_DIR_XTRA_SOUND, sound_file[v][Rand_simple(i)]);
 
 #ifdef WIN32
 
        /* Play the sound, catch errors */
-       return (PlaySound(sound_file[v], 0, SND_FILENAME | SND_ASYNC));
+       return (PlaySound(buf, 0, SND_FILENAME | SND_ASYNC));
 
 #else /* WIN32 */
 
        /* Play the sound, catch errors */
-       return (sndPlaySound(sound_file[v], SND_ASYNC));
+       return (sndPlaySound(buf, SND_ASYNC));
 
 #endif /* WIN32 */
 
@@ -4176,6 +4264,42 @@ LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
                        return 0;
                }
 
+               case WM_QUERYENDSESSION:
+               {
+                       if (game_in_progress && character_generated)
+                       {
+                               /* Hack -- Forget messages */
+                               msg_flag = FALSE;
+
+                               /* Mega-Hack -- Delay death */
+                               if (p_ptr->chp < 0) p_ptr->is_dead = FALSE;
+
+#ifdef JP
+                               do_cmd_write_nikki(NIKKI_GAMESTART, 0, "----¥²¡¼¥àÃæÃÇ----");
+#else
+                               do_cmd_write_nikki(NIKKI_GAMESTART, 0, "---- Save and Exit Game ----");
+#endif
+
+                               /* Hardcode panic save */
+                               p_ptr->panic_save = 1;
+
+                               /* Forbid suspend */
+                               signals_ignore_tstp();
+
+                               /* Indicate panic save */
+#ifdef JP
+                               (void)strcpy(p_ptr->died_from, "(¶ÛµÞ¥»¡¼¥Ö)");
+#else
+                               (void)strcpy(p_ptr->died_from, "(panic save)");
+#endif
+
+                               /* Panic save */
+                               (void)save_player();
+                       }
+                       quit(NULL);
+                       return 0;
+               }
+
                case WM_QUIT:
                {
                        quit(NULL);
@@ -5053,6 +5177,8 @@ int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
                }
        }
 
+       /* Catch nasty signals */
+       signals_init();
 
        /* Initialize */
        init_angband();
index a5ec992..d8b1bca 100644 (file)
@@ -2133,23 +2133,152 @@ static void copy_x11_end(const Time time)
        }
 }
 
+
+static Atom xa_targets, xa_timestamp, xa_text, xa_compound_text;
+
+/*
+ * Set the required variable atoms at start-up to avoid errors later.
+ */
+static void set_atoms(void)
+{
+       xa_targets = XInternAtom(DPY, "TARGETS", False);
+       xa_timestamp = XInternAtom(DPY, "TIMESTAMP", False);
+       xa_text = XInternAtom(DPY, "TEXT", False);
+       xa_compound_text = XInternAtom(DPY, "COMPOUND_TEXT", False);
+}
+
+
+static Atom request_target = 0;
+
 /*
  * Send a message to request that the PRIMARY buffer be sent here.
  */
-static void paste_x11_request(const Time time)
+static void paste_x11_request(Atom target, const Time time)
 {
+       /*
+        * It's from some sample programs on the web.
+        * What does it mean? -- XXX
+        */
+       Atom property = XInternAtom(DPY, "__COPY_TEXT", False);
+
        /* Check the owner. */
-       if (XGetSelectionOwner(Metadpy->dpy, XA_PRIMARY) == None)
+       if (XGetSelectionOwner(DPY, XA_PRIMARY) == None)
        {
                /* No selection. */
                /* bell("No selection found."); */
                return;
        }
 
-       /* Request the event as a STRING. */
-       XConvertSelection(DPY, XA_PRIMARY, XA_STRING, XA_STRING, WIN, time);
+       request_target = target;
+    
+       /* Request the event */
+       XConvertSelection(DPY, XA_PRIMARY, target, property, WIN, time);
+}
+
+
+/*
+ * Add the contents of the PRIMARY buffer to the input queue.
+ *
+ * Hack - This doesn't use the "time" of the event, and so accepts anything a
+ * client tries to send it.
+ */
+static void paste_x11_accept(const XSelectionEvent *ptr)
+{
+       unsigned long left;
+       const long offset = 0;
+       const long length = 32000;
+       XTextProperty xtextproperty;
+       errr err = 0;
+
+       /*
+        * It's from some sample programs on the web.
+        * What does it mean? -- XXX
+        */
+       Atom property = XInternAtom(DPY, "__COPY_TEXT", False);
+
+
+       /* Failure. */
+       if (ptr->property == None)
+       {
+               if (request_target == xa_compound_text)
+               {
+                       /* Re-request as STRING */
+                       paste_x11_request(XA_STRING, ptr->time);
+               }
+               else
+               {
+                       request_target = 0;
+                       plog("Paste failure (remote client could not send).");
+               }
+               return;
+       }
+
+       if (ptr->selection != XA_PRIMARY)
+       {
+               plog("Paste failure (remote client did not send primary selection).");
+               return;
+       }
+
+       if (ptr->target != request_target)
+       {
+               plog("Paste failure (selection in unknown format).");
+               return;
+       }
+
+       /* Get text */
+       if (XGetWindowProperty(Metadpy->dpy, Infowin->win, property, offset,
+                              length, TRUE, request_target,
+                              &xtextproperty.encoding,
+                              &xtextproperty.format,
+                              &xtextproperty.nitems,
+                              &left,
+                              &xtextproperty.value)
+           != Success)
+       {
+               /* Failure */
+               return;
+       }
+
+       if (request_target == xa_compound_text)
+       {
+               char **list;
+               int count;
+               
+               XmbTextPropertyToTextList(DPY, &xtextproperty, &list, &count);
+
+               if (list)
+               {
+                       int i;
+
+                       for (i = 0; i < count; i++)
+                       {
+                               /* Paste the text. */
+                               err = type_string(list[i], 0);
+
+                               if (err) break;
+                       }
+
+                       /* Free the string */
+                       XFreeStringList(list);
+               }
+       }
+       else /* if (request_target == XA_STRING) */
+       {
+               /* Paste the text. */
+               err = type_string((char *)xtextproperty.value, xtextproperty.nitems);
+       }
+
+       /* Free the data pasted. */
+       XFree(xtextproperty.value); 
+
+       /* No room. */
+       if (err)
+       {
+               plog("Paste failure (too much text selected).");
+       }
 }
 
+
 /*
  * Add a character to a string in preparation for sending it to another
  * client as a STRING.
@@ -2157,24 +2286,17 @@ static void paste_x11_request(const Time time)
  * receiving this format (although the standard specifies a restricted set).
  * Strings do not have a colour.
  */
-static int add_char_string(char *buf, byte a, char c)
-{
-       (void)a;
-
-       *buf = c;
-       return 1;
-}
-
-static bool paste_x11_send_text(XSelectionRequestEvent *rq, int (*add)(char *, byte, char))
+static bool paste_x11_send_text(XSelectionRequestEvent *rq)
 {
        char buf[1024];
+       char *list[1000];
        co_ord max, min;
-       int x,y,l;
+       int x,y,l,n;
        byte a;
        char c;
 
        /* Too old, or incorrect call. */
-       if (rq->time < s_ptr->time || !add) return FALSE;
+       if (rq->time < s_ptr->time) return FALSE;
 
        /* Work out which way around to paste. */
        sort_co_ord(&min, &max, &s_ptr->init, &s_ptr->cur);
@@ -2189,47 +2311,114 @@ static bool paste_x11_send_text(XSelectionRequestEvent *rq, int (*add)(char *, b
        /* Delete the old value of the property. */
        XDeleteProperty(DPY, rq->requestor, rq->property);
 
-       for (y = 0; y < Term->hgt; y++)
+       for (n = 0, y = 0; y < Term->hgt; y++)
        {
+#ifdef JP
+               int kanji = 0;
+#endif
                if (y < min.y) continue;
                if (y > max.y) break;
 
-               for (x = l = 0; x < Term->wid; x++)
+               for (l = 0, x = 0; x < Term->wid; x++)
                {
+#ifdef JP
+                       if (x > max.x) break;
+
+                       /* Find the character. */
+                       Term_what(x, y, &a, &c);
+
+                       if (1 == kanji) kanji = 2;
+                       else if (iskanji(c)) kanji = 1;
+                       else kanji = 0;
+
                        if (x < min.x) continue;
+
+                       /*
+                        * A single kanji character was divided in two...
+                        * Delete the garbage.
+                        */
+                       if ((2 == kanji && x == min.x) ||
+                           (1 == kanji && x == max.x))
+                               c = ' ';
+#else
                        if (x > max.x) break;
+                       if (x < min.x) continue;
 
                        /* Find the character. */
                        Term_what(x, y, &a, &c);
+#endif
 
                        /* Add it. */
-                       l += (*add)(buf+l, a, c);
+                       buf[l] = c;
+                       l++;
                }
 
-#if 0
-               /* Terminate all but the last line in an appropriate way. */
-               if (y != max.y) l += (*add)(buf+l, TERM_WHITE, '\n');
-#else
-               /* Terminate all line unless single line message. */
-               if (min.y != max.y) l += (*add)(buf+l, TERM_WHITE, '\n');
-#endif
+               /* Ignore trailing spaces */
+               while (buf[l-1] == ' ') l--;
 
-               /* Send the (non-empty) string. */
-               XChangeProperty(DPY, rq->requestor, rq->property, rq->target, 8,
-                       PropModeAppend, (byte*)buf, l);
+               /* Terminate all line unless it's single line. */
+               if (min.y != max.y)
+               {
+                       buf[l] = '\n';
+                       l++;
+               }
+
+               /* End of string */
+               buf[l] = '\0';
+
+               list[n++] = (char *)string_make(buf);
        }
-       return TRUE;
-}
 
-static Atom xa_targets, xa_timestamp;
+       /* End of the list */
+       list[n] = NULL;
 
-/*
- * Set the required variable atoms at start-up to avoid errors later.
- */
-static void set_atoms(void)
-{
-       xa_targets = XInternAtom(DPY, "TARGETS", False);
-       xa_timestamp = XInternAtom(DPY, "TIMESTAMP", False);
+
+       if (rq->target == XA_STRING)
+       {
+               for (n = 0; list[n]; n++)
+               {
+                       /* Send the (non-empty) string. */
+                       XChangeProperty(DPY, rq->requestor, rq->property, rq->target, 8,
+                                       PropModeAppend, (unsigned char *)list[n], strlen(list[n]));
+               }
+       }
+
+       else if (rq->target == xa_text || 
+                rq->target == xa_compound_text)
+       {
+               XTextProperty text_prop;
+               XICCEncodingStyle style;
+
+               if (rq->target == xa_text)
+                       style = XStdICCTextStyle;
+               else /* if (rq->target == xa_compound_text) */
+                       style = XCompoundTextStyle;
+
+               if (Success ==
+                   XmbTextListToTextProperty(DPY, list, n, style, &text_prop))
+               {
+                       /* Send the compound text */
+                       XChangeProperty(DPY,
+                                       rq->requestor,
+                                       rq->property,
+                                       text_prop.encoding,
+                                       text_prop.format,
+                                       PropModeAppend,
+                                       text_prop.value,
+                                       text_prop.nitems);
+                               
+                       /* Free the data. */
+                       XFree(text_prop.value);
+               }
+       }
+
+       /* Free the list of strings */
+       for (n = 0; list[n]; n++)
+       {
+               string_free(list[n]);
+       }
+
+       return TRUE;
 }
 
 /*
@@ -2253,16 +2442,20 @@ static void paste_x11_send(XSelectionRequestEvent *rq)
         * Note that this currently rejects MULTIPLE targets.
         */
 
-       if (rq->target == XA_STRING)
+       if (rq->target == XA_STRING ||
+           rq->target == xa_text ||
+           rq->target == xa_compound_text)
        {
-               if (!paste_x11_send_text(rq, add_char_string))
+               if (!paste_x11_send_text(rq))
                        ptr->property = None;
        }
        else if (rq->target == xa_targets)
        {
-               Atom target_list[2];
+               Atom target_list[4];
                target_list[0] = XA_STRING;
-               target_list[1] = xa_targets;
+               target_list[1] = xa_text;
+               target_list[2] = xa_compound_text;
+               target_list[3] = xa_targets;
                XChangeProperty(DPY, rq->requestor, rq->property, rq->target,
                        (8 * sizeof(target_list[0])), PropModeReplace,
                        (unsigned char *)target_list,
@@ -2283,76 +2476,6 @@ static void paste_x11_send(XSelectionRequestEvent *rq)
        XSendEvent(DPY, rq->requestor, FALSE, NoEventMask, &event);
 }
 
-/*
- * Add the contents of the PRIMARY buffer to the input queue.
- *
- * Hack - This doesn't use the "time" of the event, and so accepts anything a
- * client tries to send it.
- */
-static void paste_x11_accept(const XSelectionEvent *ptr)
-{
-       unsigned long offset, left;
-
-       /* Failure. */
-       if (ptr->property == None)
-       {
-               /* bell("Paste failure (remote client could not send)."); */
-               return;
-       }
-
-       if (ptr->selection != XA_PRIMARY)
-       {
-               /* bell("Paste failure (remote client did not send primary selection)."); */
-               return;
-       }
-
-       if (ptr->target != XA_STRING)
-       {
-               /* bell("Paste failure (selection in unknown format)."); */
-               return;
-       }
-
-       for (offset = 0; ; offset += left)
-       {
-               errr err;
-
-               /* A pointer for the pasted information. */
-               unsigned char *data;
-
-               Atom type;
-               int fmt;
-               unsigned long nitems;
-
-               /* Set data to the string, and catch errors. */
-               if (XGetWindowProperty(Metadpy->dpy, Infowin->win, XA_STRING, offset,
-                       32767, TRUE, XA_STRING, &type, &fmt, &nitems, &left, &data)
-                       != Success) break;
-
-               /* Paste the text. */
-               err = type_string((char*)data, nitems);
-
-               /* Free the data pasted. */
-               XFree(data);
-
-               /* No room. */
-               if (err == PARSE_ERROR_OUT_OF_MEMORY)
-               {
-                       /* bell("Paste failure (too much text selected)."); */
-                       break;
-               }
-               /* Paranoia? - strange errors. */
-               else if (err)
-               {
-                       break;
-               }
-
-               /* Pasted everything. */
-               if (!left) return;
-       }
-
-       /* An error has occurred, so free the last bit of data before returning. */
-       XFree(data);
-}
 
 /*
  * Handle various events conditional on presses of a mouse button.
@@ -2365,7 +2488,7 @@ static void handle_button(Time time, int x, int y, int button,
 
        if (press && button == 1) copy_x11_start(x, y);
        if (!press && button == 1) copy_x11_end(time);
-       if (!press && button == 2) paste_x11_request(time);
+       if (!press && button == 2) paste_x11_request(xa_compound_text, time);
 }
 
 
index d0c159e..8393ba9 100644 (file)
@@ -8,7 +8,7 @@
  * are included in all such copies.  Other copyrights may also apply.
  */
 
-/* Purpose: Mane code */
+/* Purpose: Imitation code */
 
 #include "angband.h"
 
@@ -1403,7 +1403,7 @@ msg_print("
        energy_use = 100;
 
        /* Window stuff */
-       p_ptr->redraw |= (PR_MANE);
+       p_ptr->redraw |= (PR_IMITATION);
        p_ptr->window |= (PW_PLAYER);
        p_ptr->window |= (PW_SPELL);
 
index a9c36f1..65e9ad7 100644 (file)
@@ -2013,7 +2013,7 @@ act = "%s
                                if (!explode)
                                {
                                        project(m_idx, 0, t_ptr->fy, t_ptr->fx,
-                                               (pt == GF_OLD_SLEEP ? r_ptr->level : damage), pt, PROJECT_KILL | PROJECT_STOP | PROJECT_MONSTER, -1);
+                                               (pt == GF_OLD_SLEEP ? r_ptr->level : damage), pt, PROJECT_KILL | PROJECT_STOP | PROJECT_AIMED, -1);
                                }
 
                                if (heal_effect)
@@ -2066,7 +2066,7 @@ msg_format("%s
                                                        project(t_idx, 0, m_ptr->fy, m_ptr->fx,
                                                                damroll (1 + ((tr_ptr->level) / 26),
                                                                1 + ((tr_ptr->level) / 17)),
-                                                               GF_FIRE, PROJECT_KILL | PROJECT_STOP | PROJECT_MONSTER, -1);
+                                                               GF_FIRE, PROJECT_KILL | PROJECT_STOP | PROJECT_AIMED, -1);
                                                }
                                                else
                                                {
@@ -2093,7 +2093,7 @@ msg_format("%s
                                                        project(t_idx, 0, m_ptr->fy, m_ptr->fx,
                                                                damroll (1 + ((tr_ptr->level) / 26),
                                                                1 + ((tr_ptr->level) / 17)),
-                                                               GF_COLD, PROJECT_KILL | PROJECT_STOP | PROJECT_MONSTER, -1);
+                                                               GF_COLD, PROJECT_KILL | PROJECT_STOP | PROJECT_AIMED, -1);
                                                }
                                                else
                                                {
@@ -2120,7 +2120,7 @@ msg_format("%s
                                                        project(t_idx, 0, m_ptr->fy, m_ptr->fx,
                                                                damroll (1 + ((tr_ptr->level) / 26),
                                                                1 + ((tr_ptr->level) / 17)),
-                                                               GF_ELEC, PROJECT_KILL | PROJECT_STOP | PROJECT_MONSTER, -1);
+                                                               GF_ELEC, PROJECT_KILL | PROJECT_STOP | PROJECT_AIMED, -1);
                                                }
                                                else
                                                {
@@ -3288,6 +3288,8 @@ msg_print("
                                {
                                        cave_set_feat(ny, nx, FEAT_GRASS);
 
+                                       /* Monster destroyed a tree */
+                                       did_kill_wall = TRUE;
                                }
                                if (!(r_ptr->flags7 & RF7_CAN_FLY) && !(r_ptr->flags8 & RF8_WILD_WOOD))
                                {
@@ -3308,7 +3310,8 @@ msg_print("
                                /* Wake up the moved monster */
                                y_ptr->csleep = 0;
 
-                               if (r_info[y_ptr->r_idx].flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
+                               if (r_info[y_ptr->r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+                                       p_ptr->update |= (PU_MON_LITE);
                        }
 
                        /* Hack -- Update the new location */
@@ -3875,14 +3878,15 @@ bool process_the_world(int num, int who, bool vs_player)
                msg_print(NULL);
        }
 
-       world_monster = TRUE;
+       /* This monster cast spells */
+       world_monster = hack_m_idx;
 
        if (vs_player) do_cmd_redraw();
 
        while(num--)
        {
                if(!m_ptr->r_idx) break;
-               process_monster(hack_m_idx);
+               process_monster(world_monster);
 
                reset_target(m_ptr);
 
@@ -3911,7 +3915,7 @@ bool process_the_world(int num, int who, bool vs_player)
        /* Window stuff */
        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
 
-       world_monster = FALSE;
+       world_monster = 0;
        if (vs_player || los(py, px, m_ptr->fy, m_ptr->fx))
        {
 #ifdef JP
index 839bdfb..b766bc4 100644 (file)
@@ -347,7 +347,7 @@ void mindcraft_info(char *p, int use_mind, int power)
          case 8:  sprintf(p, " %s10d6+%d", s_dam, plev * 3 / 2 + boost * 3 / 5); break;
          case 9:  break;
 #ifdef JP
-         case 10: sprintf(p, " ºÇÂç%dɤ", 1+boost/100); break;
+         case 10: sprintf(p, " ºÇÂç%dÂÎ", 1+boost/100); break;
 #else
          case 10: sprintf(p, " max %d", 1+boost/100); break;
 #endif
@@ -1115,11 +1115,12 @@ static bool cast_force_spell(int spell)
                        int oy = y, ox = x;
                        int m_idx = cave[y][x].m_idx;
                        monster_type *m_ptr = &m_list[m_idx];
+                       monster_race *r_ptr = &r_info[m_ptr->r_idx];
                        char m_name[80];
 
                        monster_desc(m_name, m_ptr, 0);
 
-                       if (randint1(r_info[m_ptr->r_idx].level * 3 / 2) > randint0(dam / 2) + dam/2)
+                       if (randint1(r_ptr->level * 3 / 2) > randint0(dam / 2) + dam/2)
                        {
 #ifdef JP
                                msg_format("%s¤ÏÈô¤Ð¤µ¤ì¤Ê¤«¤Ã¤¿¡£", m_name);
@@ -1155,6 +1156,9 @@ static bool cast_force_spell(int spell)
                                        update_mon(m_idx, TRUE);
                                        lite_spot(oy, ox);
                                        lite_spot(ty, tx);
+
+                                       if (r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+                                               p_ptr->update |= (PU_MON_LITE);
                                }
                        }
                }
@@ -1406,7 +1410,8 @@ msg_format("There are too many mirrors to control!");
 #else
          msg_print("Go through the world of mirror...");
 #endif
-         return dimension_door();
+         return mirror_tunnel();
+
        /* mirror of recall */
        case 17:
                return word_of_recall();
@@ -1780,7 +1785,8 @@ msg_print("
                /* Redraw the new grid */
                lite_spot(ty, tx);
 
-               p_ptr->update |= (PU_MON_LITE);
+               if (r_info[m_ptr->r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+                       p_ptr->update |= (PU_MON_LITE);
 
                break;
        }
@@ -2071,7 +2077,7 @@ msg_format("%s
                                        msg_print("Your mind unleashes its power in an uncontrollable storm!");
 #endif
 
-                                       project(1, 2 + plev / 10, py, px, plev * 2,
+                                       project(PROJECT_WHO_UNCTRL_POWER, 2 + plev / 10, py, px, plev * 2,
                                                GF_MANA, PROJECT_JUMP | PROJECT_KILL | PROJECT_GRID | PROJECT_ITEM, -1);
                                        p_ptr->csp = MAX(0, p_ptr->csp - plev * MAX(1, plev / 10));
                                }
@@ -2110,7 +2116,7 @@ msg_format("%s
                                        msg_print("Your mind unleashes its power in an uncontrollable storm!");
 #endif
 
-                                       project(1, 2 + plev / 10, py, px, plev * 2,
+                                       project(PROJECT_WHO_UNCTRL_POWER, 2 + plev / 10, py, px, plev * 2,
                                                GF_MANA, PROJECT_JUMP | PROJECT_KILL | PROJECT_GRID | PROJECT_ITEM, -1);
                                        p_ptr->csp = MAX(0, p_ptr->csp - plev * MAX(1, plev / 10));
                                }
index 5bf0d7f..ca35175 100644 (file)
@@ -11,7 +11,7 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
        "°ìÄê»þ´Ö¡¢AC¤ò¾å¾º¤µ¤»¤ë¡£¥ì¥Ù¥ë¤¬¾å¤¬¤ë¤È¡¢»À¡¢±ê¡¢Î䵤¡¢ÅÅ·â¡¢ÆǤÎÂÑÀ­¤âÆÀ¤é¤ì¤ë¡£",
        "¥ì¥Ù¥ë25̤Ëþ¤Ç¡¢¥¢¥¤¥Æ¥à¤ÎÊ·°Ïµ¤¤òÃΤ롣¥ì¥Ù¥ë25°Ê¾å¤Ç¡¢¥¢¥¤¥Æ¥à¤ò´ÕÄꤹ¤ë¡£",
        "¥ì¥Ù¥ë25̤Ëþ¤Ç¡¢¼«Ê¬¤òÃæ¿´¤È¤·¤¿Àº¿À¹¶·â¤Îµå¤òȯÀ¸¤µ¤»¤ë¡£¥ì¥Ù¥ë25°Ê¾å¤Ç¡¢»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤ËÂФ·¤ÆÀº¿À¹¶·â¤ò¹Ô¤¦¡£",
-       "¶²ÉݤÈÛ¯Û°¤«¤é²óÉü¤·¡¢¥Ò¡¼¥íµ¤Ê¬¤«¤Ä²Ã®¾õÂ֤Ǥʤ±¤ì¤ÐHP¤¬¾¯¤·²óÉü¤¹¤ë¡£¤µ¤é¤Ë¡¢°ìÄê»þ´Ö¥Ò¡¼¥í¡¼µ¤Ê¬¤Ë¤Ê¤ê¡¢²Ã®¤¹¤ë¡£",
+       "¶²ÉݤÈÛ¯Û°¤«¤é²óÉü¤·¡¢¥Ò¡¼¥í¡¼µ¤Ê¬¤«¤Ä²Ã®¾õÂ֤Ǥʤ±¤ì¤ÐHP¤¬¾¯¤·²óÉü¤¹¤ë¡£¤µ¤é¤Ë¡¢°ìÄê»þ´Ö¥Ò¡¼¥í¡¼µ¤Ê¬¤Ë¤Ê¤ê¡¢²Ã®¤¹¤ë¡£",
        "¥¢¥¤¥Æ¥à¤ò¼«Ê¬¤Î­¸µ¤Ø°ÜÆ°¤µ¤»¤ë¡£",
        "Àº¿À¹¶·â¤Îµå¤òÊü¤Ä¡£¥â¥ó¥¹¥¿¡¼¤ËÌ¿Ã椹¤ë¤È¡¢0¡Á1.5¥¿¡¼¥ó¾ÃÈñ¤¹¤ë¡£Äñ¹³¤µ¤ì¤Ê¤±¤ì¤Ð¡¢MP¤¬²óÉü¤¹¤ë¡£",
        "̵½ýµå¤ò¤âÀÚ¤êÎö¤¯½ã¿è¤Ê¥¨¥Í¥ë¥®¡¼¤Î¥Ó¡¼¥à¤òÊü¤Ä¡£",
@@ -72,13 +72,13 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
 },
 {
        "¶á¤¯¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤ò´¶ÃΤ¹¤ë¡£¥ì¥Ù¥ë15¤ÇÆ©ÌÀ¤Ê¥â¥ó¥¹¥¿¡¼¤ò´¶ÃΤ¹¤ë¡£¥ì¥Ù¥ë25¤Ç°ìÄê»þ´Ö¥Æ¥ì¥Ñ¥·¡¼¤òÆÀ¤ë¡£¥ì¥Ù¥ë35¤Ç¼þÊÕ¤ÎÃÏ·Á¤ò´¶ÃΤ¹¤ë¡£Á´¤Æ¤Î¸ú²Ì¤Ï¡¢¶À¤Î¾å¤Ç¤Ê¤¤¤È¥ì¥Ù¥ë4¤À¤±Í¾·×¤ËɬÍפˤʤ롣",
-       "¼«Ê¬¤Î¤¤¤ë¾²¤Î¾å¤Ë¶À¤òÀ¸À®¤¹¤ë",
+       "¼«Ê¬¤Î¤¤¤ë¾²¤Î¾å¤Ë¶À¤òÀ¸À®¤¹¤ë¡£",
        "Á®¸÷¤ÎÌð¤òÊü¤Ä¡£¥ì¥Ù¥ë10°Ê¾å¤Ç¤Ï¶À¤Î¾å¤Ç»È¤¦¤È¥Ó¡¼¥à¤Ë¤Ê¤ë¡£",
        "¶áµ÷Î¥¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¤¹¤ë¡£",
        "¼«Ê¬¤Î¼þ°Ï¤ä¡¢ ¼«Ê¬¤Î¤¤¤ëÉô²°Á´ÂΤòÌÀ¤ë¤¯¤¹¤ë¡£",
        "±óµ÷Î¥¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¤¹¤ë¡£",
        "°ìÄê»þ´Ö¡¢¶À¤Î¥ª¡¼¥é¤¬ÉÕ¤¯¡£¹¶·â¤ò¼õ¤±¤ë¤ÈÇËÊҤΥÀ¥á¡¼¥¸¤ÇÈ¿·â¤·¡¢¤µ¤é¤Ë¶À¤Î¾å¤Ë¤¤¤¿¾ì¹ç¶áµ÷Î¥¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¤¹¤ë¡£",
-       "¥â¥ó¥¹¥¿¡¼¤ò1ÂΥƥì¥Ý¡¼¥È¤µ¤»¤ë¡£",
+       "¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¥Ó¡¼¥à¤òÊü¤Ä¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
        "ÇËÊҤεå¤òÊü¤Ä¡£",
        "Á´¤Æ¤Î¶À¤Î¼þ¤ê¤Ë̲¤ê¤Îµå¤òȯÀ¸¤µ¤»¤ë¡£",
        "¥¿¡¼¥²¥Ã¥È¤Ë¸þ¤«¤Ã¤ÆËâÎϤΥӡ¼¥à¤òÊü¤Ä¡£¶À¤ËÌ¿Ã椹¤ë¤È¡¢¤½¤Î¶À¤òÇ˲õ¤·¡¢Ê̤ζÀ¤Ë¸þ¤«¤Ã¤ÆÈ¿¼Í¤¹¤ë¡£",
@@ -121,20 +121,20 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
 static cptr mind_tips[5][MAX_MIND_POWERS] =
 {
 {
-       "detects visible monsters in your vicinity and more and more. detects traps and doors at level 5, invisible monsters at level 15, items at level 30. And magic mapping at level 20. lights and know the whole level at level 45. gives telepathy at level 25",
-       "fires a beam or ball which inflicts PSI damage.",
-       "teleport short distance.",
-       "teleport long distance.",
-       "stuns, confuses or scares a monster. or attempts to charm all monsters in sight at level 30.",
-       "fires a ball which hurts monsters with telekinesis",
-       "gives stone skin and some resistance to elements for a while. The level increased, the more number of resistances given.",
-       "gives feeling of an item. or identify an item at level 25.",
-       "generate a ball centered on you which inflict monster with PSI damage. or inflict all monsters with PSI damage at level 25",
-       "removes fear and stun. gives heroism and speed. heals HP a little unless you already have heroism and temporal speed boost.",
-       "pulls a distant item close to you.",
-       "fires a ball which damages monsters and absorbs monsters' mind power. absorbing is takes more turns which from 0 to 1.5.",
-       "fires a beam of pure energy which penetrate the invulnerability barrier.",
-       "stops time. consumes all of your SP. The more consumes SP, the longer duration of spell.",
+       "Detects visible monsters in your vicinity and more and more. Detects traps and doors at level 5, invisible monsters at level 15, items at level 30. And magic mapping at level 20. Lights and know the whole level at level 45. Gives telepathy at level 25.",
+       "Fires a beam or ball which inflicts PSI damage.",
+       "Teleport short distance.",
+       "Teleport long distance.",
+       "Stuns, confuses or scares a monster. Or attempts to charm all monsters in sight at level 30.",
+       "Fires a ball which hurts monsters with telekinesis.",
+       "Gives stone skin and some resistance to elements for a while. The level increased, the more number of resistances given.",
+       "Gives feeling of an item. Or identify an item at level 25.",
+       "Generate a ball centered on you which inflict monster with PSI damage. Or inflict all monsters with PSI damage at level 25.",
+       "Removes fear and stun. Gives heroism and speed. Heals HP a little unless you already have heroism and temporal speed boost.",
+       "Pulls a distant item close to you.",
+       "Fires a ball which damages monsters and absorbs monsters' mind power. Absorbing is takes more turns which from 0 to 1.5.",
+       "Fires a beam of pure energy which penetrate the invulnerability barrier.",
+       "Stops time. Consumes all of your SP. The more consumes SP, the longer duration of spell.",
        "",
        "",
        "",
@@ -144,20 +144,20 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
        "",
 },
 {
-       "fires a very small energy ball.",
-       "lights up nearby area and the inside of a room permanently.",
-       "gives levitaion a while.",
-       "fires a short energy beam.",
-       "gives magic resistance for a while.",
-       "improves spirit energy power temporaly. Improved spirit energy will be more and more powerfull or have longer duration. Too many improving results in uncontrollable explosion of spirit energy.",
-       "gives aura which damages all monsters which attacked you for a while.",
-       "damages an adjacent monster, and blow it away.",
-       "fires a large energy ball.",
-       "dispels all magics which is effecting a monster.",
-       "summons ghosts.",
-       "generates a huge ball of frame which centered on you.",
-       "fires a long, powerful energy beam.",
-       "gives extremely fast speed.",
+       "Fires a very small energy ball.",
+       "Lights up nearby area and the inside of a room permanently.",
+       "Gives levitaion a while.",
+       "Fires a short energy beam.",
+       "Gives magic resistance for a while.",
+       "Improves spirit energy power temporaly. Improved spirit energy will be more and more powerfull or have longer duration. Too many improving results in uncontrollable explosion of spirit energy.",
+       "Gives aura which damages all monsters which attacked you for a while.",
+       "Damages an adjacent monster, and blow it away.",
+       "Fires a large energy ball.",
+       "Dispels all magics which is effecting a monster.",
+       "Summons ghosts.",
+       "Generates a huge ball of frame which centered on you.",
+       "Fires a long, powerful energy beam.",
+       "Gives extremely fast speed.",
        "",
        "",
        "",
@@ -167,11 +167,11 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
        "",
 },
 {
-       "detects all monsters except mindless in your vicinity.",
-       "attacks monster with your weapons normaly, then move through counter side of the monster.",
-       "sets off a trap, then destroy that trap.",
-       "shakes dungeon structure, and results in random swaping of floors and walls.",
-       "attacks all adjacent monsters.",
+       "Detects all monsters except mindless in your vicinity.",
+       "Attacks monster with your weapons normaly, then move through counter side of the monster.",
+       "Sets off a trap, then destroy that trap.",
+       "Shakes dungeon structure, and results in random swaping of floors and walls.",
+       "Attacks all adjacent monsters.",
        "",
        "",
        "",
@@ -190,50 +190,50 @@ static cptr mind_tips[5][MAX_MIND_POWERS] =
        "",
 },
 {
-       "detects visible monsters in your vicinity and more and more. detects invisible monsters at level 15. gives telepathy at level 25. Magic mapping at level 35. All of effects need 4 more levels unless on a mirror.",
-       "makes a mirror under you.",
-       "fires bolt of flash light. or fires beam of light on a mirror at level 10",
-       "teleport short distance.",
-       "lights up nearby area and the inside of a room permanently.",
-       "teleport long distance.",
-       "gives aura of shards of mirror for a while. It cause counter attack to monsters which attacks you.",
-       "attempts to teleport a monster away.",
-       "fires a ball of shards",
-       "generate balls which send monsters to sleep on all mirrors in the whole level.",
-       "fires a beam of mana. If the beam hit a mirror, it breaks that mirror and reflects toward another mirror.",
-       "eliminates a monster on a mirror from current dungeon level.",
-       "gives bonus to AC. gives reflection at level 32. gives magic resistance at level 40.",
-       "fires a powerful beam of mana. If the beam hit a mirror, it breaks that mirror and fires 8 beams of mana to 8 different directions from that point.",
-       "attempts to slow, stun, confuse, scare, freeze all monsters in sight. gets more power on a mirror.",
-       "recreates current dungeon level. can only be used on a mirror.",
-       "teleport to given location.",
-       "recalls player from dungeon to town, or from town to the deepest level of dungeon.",
-       "completely protects you from any attacks at one in two chance.",
-       "generates a magical triangle which damages all monsters in the area. The vertices of the triangle is you and two mirrors in sight. ",
-       "generates barrier which completly protect you from almost all damages. takes a few your turns when the barrier breaks or duration time is exceeded.",
+       "Detects visible monsters in your vicinity and more and more. Detects invisible monsters at level 15. Gives telepathy at level 25. Magic mapping at level 35. All of effects need 4 more levels unless on a mirror.",
+       "Makes a mirror under you.",
+       "Fires bolt of flash light. Or fires beam of light on a mirror at level 10.",
+       "Teleport short distance.",
+       "Lights up nearby area and the inside of a room permanently.",
+       "Teleport long distance.",
+       "Gives aura of shards of mirror for a while. It cause counter attack to monsters which attacks you.",
+       "Teleports all monsters on the line away unless resisted.",
+       "Fires a ball of shards.",
+       "Generate balls which send monsters to sleep on all mirrors in the whole level.",
+       "Fires a beam of mana. If the beam hit a mirror, it breaks that mirror and reflects toward another mirror.",
+       "Eliminates a monster on a mirror from current dungeon level.",
+       "Gives bonus to AC. Gives reflection at level 32. Gives magic resistance at level 40.",
+       "Fires a powerful beam of mana. If the beam hit a mirror, it breaks that mirror and fires 8 beams of mana to 8 different directions from that point.",
+       "Attempts to slow, stun, confuse, scare, freeze all monsters in sight. Gets more power on a mirror.",
+       "Recreates current dungeon level. Can only be used on a mirror.",
+       "Teleport to given location.",
+       "Recalls player from dungeon to town, or from town to the deepest level of dungeon.",
+       "Completely protects you from any attacks at one in two chance.",
+       "Generates a magical triangle which damages all monsters in the area. The vertices of the triangle is you and two mirrors in sight.",
+       "Generates barrier which completly protect you from almost all damages. Takes a few your turns when the barrier breaks or duration time is exceeded.",
 },
 
 {
-       "darken nearby area and inside of a room.",
-       "detects visible monsters in your vicinity and more and more. detects traps, doors and stairs at level 5, items at level 15. lights and know the whole level at level 45.",
-       "teleport short distance.",
-       "teleport as you recieve an attack. might be able to teleport just before recieveing damages at higher level.",
-       "teleport long distance.",
-       "attack and teleport in a time.",
-       "attempt to freeze a monster.",
-       "identifies an item.",
-       "gives levitation for a while.",
-       "generate a fire ball and teleport in a time. gives resistance to fire for a while. This resistance can be added to which from equipment for more powerful resistance.",
-       "steps close to a monster and attacks at a time.",
-       "shoots 8 iron Spikes in 8 random directions.",
-       "teleport a monster to a place adjacent to you.",
-       "releases a confusion ball which doesn't inflict any damage.",
-       "swaps positions of you and a monster.",
-       "sets a glyph under you. The glyph will explode when a monster moves on it.",
-       "become ethereal form which gives ability to pass walls, and gives resistance to acid for a while. This resistance can be added to which from equipment for more powerful resistance.",
-       "generates huge balls of poison, drain life and confusion, then teleport in a time.",
-       "fires some number of beams of fire, nether or plasma in random directions.",
-       "creates shadows of yourself which gives you abillity to completely evade any attacks at one in two chance for a while.",
+       "Darken nearby area and inside of a room.",
+       "Detects visible monsters in your vicinity and more and more. Detects traps, doors and stairs at level 5, items at level 15. Lights and know the whole level at level 45.",
+       "Teleport short distance.",
+       "Teleport as you recieve an attack. Might be able to teleport just before recieveing damages at higher level.",
+       "Teleport long distance.",
+       "Attack and teleport in a time.",
+       "Attempt to freeze a monster.",
+       "Identifies an item.",
+       "Gives levitation for a while.",
+       "Generate a fire ball and teleport in a time. Gives resistance to fire for a while. This resistance can be added to which from equipment for more powerful resistance.",
+       "Steps close to a monster and attacks at a time.",
+       "Shoots 8 iron Spikes in 8 random directions.",
+       "Teleport a monster to a place adjacent to you.",
+       "Releases a confusion ball which doesn't inflict any damage.",
+       "Swaps positions of you and a monster.",
+       "Sets a glyph under you. The glyph will explode when a monster moves on it.",
+       "Become ethereal form which gives ability to pass walls, and gives resistance to acid for a while. This resistance can be added to which from equipment for more powerful resistance.",
+       "Generates huge balls of poison, drain life and confusion, then teleport in a time.",
+       "Fires some number of beams of fire, nether or plasma in random directions.",
+       "Creates shadows of yourself which gives you abillity to completely evade any attacks at one in two chance for a while.",
        "",
 },
 };
index cb57e0b..2038b9c 100644 (file)
@@ -146,7 +146,8 @@ static void roff_aux(int r_idx, int mode)
 #endif
        int             msex = 0;
 
-       int speed = (ironman_nightmare) ? r_ptr->speed + 5 : r_ptr->speed;
+       bool nightmare = ironman_nightmare && !(mode & 0x02);
+       int speed = nightmare ? r_ptr->speed + 5 : r_ptr->speed;
 
        bool            breath = FALSE;
        bool            magic = FALSE;
@@ -791,7 +792,7 @@ if (flags3 & RF3_ORC)      hook_c_roff(TERM_UMBER, "
 #ifdef JP
 if (flags2 & RF2_HUMAN) hook_c_roff(TERM_L_WHITE, "¿Í´Ö");
 #else
-               if (flags2 & RF2_HUMAN) hook_c_roff(TERM_L_WHITE, " Human");
+               if (flags2 & RF2_HUMAN) hook_c_roff(TERM_L_WHITE, " human");
 #endif
 
 #ifdef JP
@@ -863,75 +864,67 @@ else                            hooked_roff("
        if ((flags2 & RF2_AURA_FIRE) && (flags2 & RF2_AURA_ELEC) && (flags3 & RF3_AURA_COLD))
        {
 #ifdef JP
-hook_c_roff(TERM_VIOLET, format("%^s¤Ï±ê¤Èɹ¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_VIOLET, format("%^s¤Ï±ê¤Èɹ¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
-               hook_c_roff(TERM_VIOLET, format("%^s is surrounded by flames and electricity.  ", wd_he[msex]));
+               hook_c_roff(TERM_VIOLET, format("%^s is surrounded by flames, ice and electricity.  ", wd_he[msex]));
 #endif
-
        }
        else if ((flags2 & RF2_AURA_FIRE) && (flags2 & RF2_AURA_ELEC))
        {
 #ifdef JP
-hook_c_roff(TERM_L_RED, format("%^s¤Ï±ê¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_L_RED, format("%^s¤Ï±ê¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
                hook_c_roff(TERM_L_RED, format("%^s is surrounded by flames and electricity.  ", wd_he[msex]));
 #endif
-
        }
        else if ((flags2 & RF2_AURA_FIRE) && (flags3 & RF3_AURA_COLD))
        {
 #ifdef JP
-hook_c_roff(TERM_BLUE, format("%^s¤Ï±ê¤Èɹ¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_BLUE, format("%^s¤Ï±ê¤Èɹ¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
-               hook_c_roff(TERM_BLUE, format("%^s is surrounded by flames and electricity.  ", wd_he[msex]));
+               hook_c_roff(TERM_BLUE, format("%^s is surrounded by flames and ice.  ", wd_he[msex]));
 #endif
-
        }
        else if ((flags3 & RF3_AURA_COLD) && (flags2 & RF2_AURA_ELEC))
        {
 #ifdef JP
-hook_c_roff(TERM_L_GREEN, format("%^s¤Ïɹ¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_L_GREEN, format("%^s¤Ïɹ¤È¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
                hook_c_roff(TERM_L_GREEN, format("%^s is surrounded by ice and electricity.  ", wd_he[msex]));
 #endif
-
        }
        else if (flags2 & RF2_AURA_FIRE)
        {
 #ifdef JP
-hook_c_roff(TERM_RED, format("%^s¤Ï±ê¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_RED, format("%^s¤Ï±ê¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
                hook_c_roff(TERM_RED, format("%^s is surrounded by flames.  ", wd_he[msex]));
 #endif
-
        }
        else if (flags3 & RF3_AURA_COLD)
        {
 #ifdef JP
-hook_c_roff(TERM_BLUE, format("%^s¤Ïɹ¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_BLUE, format("%^s¤Ïɹ¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
                hook_c_roff(TERM_BLUE, format("%^s is surrounded by ice.  ", wd_he[msex]));
 #endif
-
        }
        else if (flags2 & RF2_AURA_ELEC)
        {
 #ifdef JP
-hook_c_roff(TERM_L_BLUE, format("%^s¤Ï¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
+               hook_c_roff(TERM_L_BLUE, format("%^s¤Ï¥¹¥Ñ¡¼¥¯¤ËÊñ¤Þ¤ì¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
                hook_c_roff(TERM_L_BLUE, format("%^s is surrounded by electricity.  ", wd_he[msex]));
 #endif
-
        }
 
        if (flags2 & RF2_REFLECTING)
        {
 #ifdef JP
-hooked_roff(format("%^s¤ÏÌð¤Î¼öʸ¤òÄ·¤ÍÊÖ¤¹¡£", wd_he[msex]));
+               hooked_roff(format("%^s¤ÏÌð¤Î¼öʸ¤òÄ·¤ÍÊÖ¤¹¡£", wd_he[msex]));
 #else
                hooked_roff(format("%^s reflects bolt spells.  ", wd_he[msex]));
 #endif
-
        }
 
        /* Describe escorts */
@@ -1731,15 +1724,15 @@ if (flags6 & (RF6_S_UNIQUE))        {vp[vn] = "
                            wd_he[msex], r_ptr->ac));
 
                /* Maximized hitpoints */
-               if (flags1 & RF1_FORCE_MAXHP)
+               if ((flags1 & RF1_FORCE_MAXHP) || (r_ptr->hside == 1))
                {
+                       u32b hp = r_ptr->hdice * (nightmare ? 2 : 1) * r_ptr->hside;
 #ifdef JP
                        hooked_roff(format(" %d ¤ÎÂÎÎϤ¬¤¢¤ë¡£",
 #else
                        hooked_roff(format(" and a life rating of %d.  ",
 #endif
-
-                                   r_ptr->hdice * r_ptr->hside));
+                                   (s16b)MIN(30000, hp)));
                }
 
                /* Variable hitpoints */
@@ -1750,8 +1743,7 @@ if (flags6 & (RF6_S_UNIQUE))        {vp[vn] = "
 #else
                        hooked_roff(format(" and a life rating of %dd%d.  ",
 #endif
-
-                                   r_ptr->hdice, r_ptr->hside));
+                                   r_ptr->hdice * (nightmare ? 2 : 1), r_ptr->hside));
                }
        }
 
@@ -1870,7 +1862,7 @@ if (flags6 & (RF6_S_UNIQUE))        {vp[vn] = "
 #ifdef JP
                hooked_roff(format("%^s¤Ï¸÷¤Ã¤Æ¤¤¤ë¡£", wd_he[msex]));
 #else
-               hooked_roff(format("%^s illuminate the dungeon.  ", wd_he[msex]));
+               hooked_roff(format("%^s is shining.  ", wd_he[msex]));
 #endif
 
        }
@@ -3188,27 +3180,7 @@ void output_monster_spoiler(int r_idx, void (*roff_func)(byte attr, cptr str))
 }
 
 
-bool monster_quest(int r_idx)
-{
-       monster_race *r_ptr = &r_info[r_idx];
-
-       /* Random quests are in the dungeon */
-       if (r_ptr->flags8 & RF8_WILD_ONLY) return FALSE;
-
-       /* No random quests for aquatic monsters */
-       if (r_ptr->flags7 & RF7_AQUATIC) return FALSE;
-
-       /* No random quests for multiplying monsters */
-       if (r_ptr->flags2 & RF2_MULTIPLY) return FALSE;
-
-       /* No quests to kill friendly monsters */
-       if (r_ptr->flags7 & RF7_FRIENDLY) return FALSE;
-
-       return TRUE;
-}
-
-
-bool monster_dungeon(int r_idx)
+bool mon_hook_dungeon(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3224,7 +3196,7 @@ bool monster_dungeon(int r_idx)
 }
 
 
-bool monster_ocean(int r_idx)
+static bool mon_hook_ocean(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3235,7 +3207,7 @@ bool monster_ocean(int r_idx)
 }
 
 
-bool monster_shore(int r_idx)
+static bool mon_hook_shore(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3246,7 +3218,7 @@ bool monster_shore(int r_idx)
 }
 
 
-static bool monster_waste(int r_idx)
+static bool mon_hook_waste(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3257,7 +3229,7 @@ static bool monster_waste(int r_idx)
 }
 
 
-bool monster_town(int r_idx)
+static bool mon_hook_town(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3268,7 +3240,7 @@ bool monster_town(int r_idx)
 }
 
 
-bool monster_wood(int r_idx)
+static bool mon_hook_wood(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3279,7 +3251,7 @@ bool monster_wood(int r_idx)
 }
 
 
-bool monster_volcano(int r_idx)
+static bool mon_hook_volcano(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3290,7 +3262,7 @@ bool monster_volcano(int r_idx)
 }
 
 
-bool monster_mountain(int r_idx)
+static bool mon_hook_mountain(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3301,7 +3273,7 @@ bool monster_mountain(int r_idx)
 }
 
 
-bool monster_grass(int r_idx)
+static bool mon_hook_grass(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
@@ -3312,11 +3284,11 @@ bool monster_grass(int r_idx)
 }
 
 
-bool monster_deep_water(int r_idx)
+static bool mon_hook_deep_water(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
-       if (!monster_dungeon(r_idx)) return FALSE;
+       if (!mon_hook_dungeon(r_idx)) return FALSE;
 
        if (r_ptr->flags7 & RF7_AQUATIC)
                return TRUE;
@@ -3325,11 +3297,11 @@ bool monster_deep_water(int r_idx)
 }
 
 
-bool monster_shallow_water(int r_idx)
+static bool mon_hook_shallow_water(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
-       if (!monster_dungeon(r_idx)) return FALSE;
+       if (!mon_hook_dungeon(r_idx)) return FALSE;
 
        if (r_ptr->flags2 & RF2_AURA_FIRE)
                return FALSE;
@@ -3338,11 +3310,11 @@ bool monster_shallow_water(int r_idx)
 }
 
 
-bool monster_lava(int r_idx)
+static bool mon_hook_lava(int r_idx)
 {
        monster_race *r_ptr = &r_info[r_idx];
 
-       if (!monster_dungeon(r_idx)) return FALSE;
+       if (!mon_hook_dungeon(r_idx)) return FALSE;
 
        if (((r_ptr->flagsr & RFR_EFF_IM_FIRE_MASK) ||
             (r_ptr->flags7 & RF7_CAN_FLY)) &&
@@ -3353,6 +3325,18 @@ bool monster_lava(int r_idx)
 }
 
 
+static bool mon_hook_floor(int r_idx)
+{
+       monster_race *r_ptr = &r_info[r_idx];
+
+       if (!(r_ptr->flags7 & RF7_AQUATIC) ||
+           (r_ptr->flags7 & RF7_CAN_FLY))
+               return TRUE;
+       else
+               return FALSE;
+}
+
+
 monster_hook_type get_monster_hook(void)
 {
        if (!dun_level && !p_ptr->inside_quest)
@@ -3360,31 +3344,31 @@ monster_hook_type get_monster_hook(void)
                switch (wilderness[p_ptr->wilderness_y][p_ptr->wilderness_x].terrain)
                {
                case TERRAIN_TOWN:
-                       return (monster_hook_type)monster_town;
+                       return (monster_hook_type)mon_hook_town;
                case TERRAIN_DEEP_WATER:
-                       return (monster_hook_type)monster_ocean;
+                       return (monster_hook_type)mon_hook_ocean;
                case TERRAIN_SHALLOW_WATER:
                case TERRAIN_SWAMP:
-                       return (monster_hook_type)monster_shore;
+                       return (monster_hook_type)mon_hook_shore;
                case TERRAIN_DIRT:
                case TERRAIN_DESERT:
-                       return (monster_hook_type)monster_waste;
+                       return (monster_hook_type)mon_hook_waste;
                case TERRAIN_GRASS:
-                       return (monster_hook_type)monster_grass;
+                       return (monster_hook_type)mon_hook_grass;
                case TERRAIN_TREES:
-                       return (monster_hook_type)monster_wood;
+                       return (monster_hook_type)mon_hook_wood;
                case TERRAIN_SHALLOW_LAVA:
                case TERRAIN_DEEP_LAVA:
-                       return (monster_hook_type)monster_volcano;
+                       return (monster_hook_type)mon_hook_volcano;
                case TERRAIN_MOUNTAIN:
-                       return (monster_hook_type)monster_mountain;
+                       return (monster_hook_type)mon_hook_mountain;
                default:
-                       return (monster_hook_type)monster_dungeon;
+                       return (monster_hook_type)mon_hook_dungeon;
                }
        }
        else
        {
-               return (monster_hook_type)monster_dungeon;
+               return (monster_hook_type)mon_hook_dungeon;
        }
 }
 
@@ -3395,14 +3379,14 @@ monster_hook_type get_monster_hook2(int y, int x)
        switch (cave[y][x].feat)
        {
        case FEAT_SHAL_WATER:
-               return (monster_hook_type)monster_shallow_water;
+               return (monster_hook_type)mon_hook_shallow_water;
        case FEAT_DEEP_WATER:
-               return (monster_hook_type)monster_deep_water;
+               return (monster_hook_type)mon_hook_deep_water;
        case FEAT_DEEP_LAVA:
        case FEAT_SHAL_LAVA:
-               return (monster_hook_type)monster_lava;
+               return (monster_hook_type)mon_hook_lava;
        default:
-               return NULL;
+               return (monster_hook_type)mon_hook_floor;
        }
 }
 
index fbca473..04fde57 100644 (file)
@@ -265,7 +265,8 @@ void delete_monster_idx(int i)
        lite_spot(y, x);
 
        /* Update some things */
-       p_ptr->update |= (PU_MON_LITE);
+       if (r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+               p_ptr->update |= (PU_MON_LITE);
 }
 
 
@@ -1655,7 +1656,7 @@ void monster_desc(char *desc, monster_type *m_ptr, int mode)
        else
        {
                /* Tanuki? */
-               if (is_pet(m_ptr) && m_ptr->ap_r_idx != m_ptr->r_idx)
+               if (is_pet(m_ptr) && !is_original_ap(m_ptr))
                {
 #ifdef JP
                        char *t;
@@ -1697,14 +1698,23 @@ void monster_desc(char *desc, monster_type *m_ptr, int mode)
                                (void)sprintf(desc, "%s?", name);
 #endif
                        }
-                       else if ((cave[m_ptr->fy][m_ptr->fx].m_idx == p_ptr->riding) || !p_ptr->inside_battle)
-                               (void)strcpy(desc, name);
-                       else
+
+                       /* Inside monster arena, and it is not your mount */
+                       else if (p_ptr->inside_battle &&
+                                !(p_ptr->riding && (&m_list[p_ptr->riding] == m_ptr)))
+                       {
+                               /* It is a fake unique monster */
 #ifdef JP
                                (void)sprintf(desc, "%s¤â¤É¤­", name);
 #else
                                (void)sprintf(desc, "fake %s", name);
 #endif
+                       }
+
+                       else
+                       {
+                               (void)strcpy(desc, name);
+                       }
                }
 
                /* It could be an indefinite monster */
@@ -1753,7 +1763,7 @@ void monster_desc(char *desc, monster_type *m_ptr, int mode)
                        strcat(desc,buf);
                }
 
-               if (player_bold(m_ptr->fy, m_ptr->fx))
+               if (p_ptr->riding && (&m_list[p_ptr->riding] == m_ptr))
                {
 #ifdef JP
                        strcat(desc,"(¾èÇÏÃæ)");
@@ -1782,7 +1792,7 @@ void monster_desc(char *desc, monster_type *m_ptr, int mode)
                        }
                }
 
-               if ((mode & MD_IGNORE_HALLU) && m_ptr->ap_r_idx != m_ptr->r_idx)
+               if ((mode & MD_IGNORE_HALLU) && !is_original_ap(m_ptr))
                {
                        strcat(desc, format("(%s)", r_name + r_info[m_ptr->r_idx].name));
                }
@@ -2596,8 +2606,8 @@ void update_mon(int m_idx, bool full)
                        /* Hack -- Count "fresh" sightings */
                        if ((m_ptr->ap_r_idx == MON_KAGE) && (r_info[MON_KAGE].r_sights < MAX_SHORT))
                                r_info[MON_KAGE].r_sights++;
-                       else if (m_ptr->ap_r_idx == m_ptr->r_idx && 
-                                r_ptr->r_sights < MAX_SHORT) r_ptr->r_sights++;
+                       else if (is_original_ap(m_ptr) && (r_ptr->r_sights < MAX_SHORT))
+                               r_ptr->r_sights++;
 
                        /* Eldritch Horror */
                        if (r_ptr->flags2 & RF2_ELDRITCH_HORROR)
@@ -2773,6 +2783,7 @@ void choose_new_monster(int m_idx, bool born, int r_idx)
        monster_race *r_ptr;
        char old_m_name[80];
        bool old_unique = FALSE;
+       int old_r_idx = m_ptr->r_idx;
 
        if (r_info[m_ptr->r_idx].flags1 & RF1_UNIQUE)
                old_unique = TRUE;
@@ -2813,6 +2824,11 @@ void choose_new_monster(int m_idx, bool born, int r_idx)
        m_ptr->ap_r_idx = r_idx;
        update_mon(m_idx, FALSE);
        lite_spot(m_ptr->fy, m_ptr->fx);
+
+       if ((r_info[old_r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK)) ||
+           (r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK)))
+               p_ptr->update |= (PU_MON_LITE);
+
        if (born)
        {
                /* Sub-alignment of a chameleon */
@@ -2855,7 +2871,16 @@ void choose_new_monster(int m_idx, bool born, int r_idx)
        {
                m_ptr->max_maxhp = damroll(r_ptr->hdice, r_ptr->hside);
        }
+
+       /* Monsters have double hitpoints in Nightmare mode */
+       if (ironman_nightmare)
+       {
+               u32b hp = m_ptr->max_maxhp * 2L;
+               m_ptr->max_maxhp = (s16b)MIN(30000, hp);
+       }
+
        m_ptr->maxhp = (long)(m_ptr->maxhp * m_ptr->max_maxhp) / oldmaxhp;
+       if (m_ptr->maxhp < 1) m_ptr->maxhp = 1;
        m_ptr->hp = (long)(m_ptr->hp * m_ptr->max_maxhp) / oldmaxhp;
 }
 
@@ -2974,15 +2999,12 @@ bool place_monster_one(int who, int y, int x, int r_idx, u32b mode)
        /* Paranoia */
        if (!r_ptr->name) return (FALSE);
 
-       /* Nor on the Pattern */
-       if ((cave[y][x].feat >= FEAT_PATTERN_START)
-        && (cave[y][x].feat <= FEAT_PATTERN_XTRA2))
-               return (FALSE);
-
-       if (!(mode & PM_IGNORE_TERRAIN) &&
-           !monster_can_cross_terrain(cave[y][x].feat, r_ptr))
+       if (!(mode & PM_IGNORE_TERRAIN))
        {
-               return FALSE;
+               /* Nor on the Pattern */
+               if (pattern_tile(y, x)) return FALSE;
+
+               if (!monster_can_cross_terrain(cave[y][x].feat, r_ptr)) return FALSE;
        }
 
        if (!p_ptr->inside_battle)
@@ -3133,6 +3155,19 @@ msg_print("
        m_ptr->r_idx = r_idx;
        m_ptr->ap_r_idx = initial_r_appearance(r_idx);
 
+       /* No flags */
+       m_ptr->mflag = 0;
+       m_ptr->mflag2 = 0;
+
+       /* Hack -- Appearance transfer */
+       if ((mode & PM_MULTIPLY) && (who > 0) && !is_original_ap(&m_list[who]))
+       {
+               m_ptr->ap_r_idx = m_list[who].ap_r_idx;
+
+               /* Hack -- Shadower spawns Shadower */
+               if (m_list[who].mflag2 & MFLAG2_KAGE) m_ptr->mflag2 |= MFLAG2_KAGE;
+       }
+
        /* Sub-alignment of a monster */
        if ((who > 0) && !(r_ptr->flags3 & (RF3_EVIL | RF3_GOOD)))
                m_ptr->sub_align = m_list[who].sub_align;
@@ -3162,10 +3197,6 @@ msg_print("
 
        m_ptr->exp = 0;
 
-       /* No flags */
-       m_ptr->mflag = 0;
-       m_ptr->mflag2 = 0;
-
        if (r_ptr->flags7 & RF7_CHAMELEON)
        {
                choose_new_monster(c_ptr->m_idx, TRUE, 0);
@@ -3415,7 +3446,7 @@ msg_print("
 
 #define MON_SCAT_MAXD 10
 
-static bool mon_scatter(int *yp, int *xp, int y, int x, int max_dist)
+static bool mon_scatter(int r_idx, int *yp, int *xp, int y, int x, int max_dist)
 {
        int place_x[MON_SCAT_MAXD];
        int place_y[MON_SCAT_MAXD];
@@ -3430,6 +3461,7 @@ static bool mon_scatter(int *yp, int *xp, int y, int x, int max_dist)
                num[i] = 0;
 
        for (nx = x - max_dist; nx <= x + max_dist; nx++)
+       {
                for (ny = y - max_dist; ny <= y + max_dist; ny++)
                {
                        /* Ignore annoying locations */
@@ -3438,15 +3470,22 @@ static bool mon_scatter(int *yp, int *xp, int y, int x, int max_dist)
                        /* Require "line of sight" */
                        if (!los(y, x, ny, nx)) continue;
 
-                       /* Walls and Monsters block flow */
-                       if (!cave_empty_bold2(ny, nx)) continue;
-                       if (cave[ny][nx].m_idx) continue;
-                       if (player_bold(ny, nx)) continue;
+                       if (r_idx > 0)
+                       {
+                               monster_race *r_ptr = &r_info[r_idx];
 
-                       /* ... nor on the Pattern */
-                       if ((cave[ny][nx].feat >= FEAT_PATTERN_START) &&
-                           (cave[ny][nx].feat <= FEAT_PATTERN_XTRA2))
-                               continue;
+                               /* Require empty space (if not ghostly) */
+                               if (!monster_can_enter(ny, nx, r_ptr))
+                                       continue;
+                       }
+                       else
+                       {
+                               /* Walls and Monsters block flow */
+                               if (!cave_empty_bold2(ny, nx)) continue;
+                               
+                               /* ... nor on the Pattern */
+                               if (pattern_tile(ny, nx)) continue;
+                       }
 
                        i = distance(y, x, ny, nx);
 
@@ -3462,6 +3501,7 @@ static bool mon_scatter(int *yp, int *xp, int y, int x, int max_dist)
                                place_y[i] = ny;
                        }
                }
+       }
 
        i = 0;
        while (i < MON_SCAT_MAXD && 0 == num[i])
@@ -3590,7 +3630,7 @@ static bool place_monster_okay(int r_idx)
        monster_race *z_ptr = &r_info[r_idx];
 
        /* Hack - Escorts have to have the same dungeon flag */
-       if (monster_dungeon(place_monster_idx) != monster_dungeon(r_idx)) return (FALSE);
+       if (mon_hook_dungeon(place_monster_idx) != mon_hook_dungeon(r_idx)) return (FALSE);
 
        /* Require similar "race" */
        if (z_ptr->d_char != r_ptr->d_char) return (FALSE);
@@ -3800,7 +3840,7 @@ bool alloc_horde(int y, int x)
 /*
  * Put the Guardian
  */
-bool alloc_guardian(void)
+bool alloc_guardian(bool def_val)
 {
        int guardian = d_info[dungeon_type].final_guardian;
 
@@ -3827,9 +3867,11 @@ bool alloc_guardian(void)
                        /* One less try */
                        try--;
                }
+
+               return FALSE;
        }
 
-       return FALSE;
+       return def_val;
 }
 
 
@@ -3848,7 +3890,7 @@ bool alloc_monster(int dis, u32b mode)
        int         attempts_left = 10000;
 
        /* Put the Guardian */
-       if (alloc_guardian()) return TRUE;
+       if (alloc_guardian(FALSE)) return TRUE;
 
        /* Find a legal, distant, unoccupied, space */
        while (attempts_left--)
@@ -3927,7 +3969,7 @@ static bool summon_specific_okay(int r_idx)
        monster_race *r_ptr = &r_info[r_idx];
 
        /* Hack - Only summon dungeon monsters */
-       if (!monster_dungeon(r_idx)) return (FALSE);
+       if (!mon_hook_dungeon(r_idx)) return (FALSE);
 
        /* Hack -- identify the summoning monster */
        if (summon_specific_who > 0)
@@ -3998,7 +4040,7 @@ bool summon_specific(int who, int y1, int x1, int lev, int type, u32b mode)
 
        if (p_ptr->inside_arena) return (FALSE);
 
-       if (!mon_scatter(&y, &x, y1, x1, 2)) return FALSE;
+       if (!mon_scatter(0, &y, &x, y1, x1, 2)) return FALSE;
 
        /* Save the summoner */
        summon_specific_who = who;
@@ -4051,7 +4093,7 @@ bool summon_named_creature (int who, int oy, int ox, int r_idx, u32b mode)
 
        if (p_ptr->inside_arena) return FALSE;
 
-       if (!mon_scatter(&y, &x, oy, ox, 2)) return FALSE;
+       if (!mon_scatter(r_idx, &y, &x, oy, ox, 2)) return FALSE;
 
        /* Place it (allow groups) */
        return place_monster_aux(who, y, x, r_idx, (mode | PM_NO_KAGE));
@@ -4069,27 +4111,22 @@ bool multiply_monster(int m_idx, bool clone, u32b mode)
 
        int y, x;
 
-       if (!mon_scatter(&y, &x, m_ptr->fy, m_ptr->fx, 1))
+       if (!mon_scatter(m_ptr->r_idx, &y, &x, m_ptr->fy, m_ptr->fx, 1))
                return FALSE;
 
        if (m_ptr->mflag2 & MFLAG2_NOPET) mode |= PM_NO_PET;
 
        /* Create a new monster (awake, no groups) */
-       if (!place_monster_aux(m_idx, y, x, m_ptr->r_idx, (mode | PM_NO_KAGE)))
+       if (!place_monster_aux(m_idx, y, x, m_ptr->r_idx, (mode | PM_NO_KAGE | PM_MULTIPLY)))
                return FALSE;
 
-       if (clone)
+       /* Hack -- Transfer "clone" flag */
+       if (clone || (m_ptr->smart & SM_CLONED))
        {
                m_list[hack_m_idx_ii].smart |= SM_CLONED;
                m_list[hack_m_idx_ii].mflag2 |= MFLAG2_NOPET;
        }
 
-       /* Hack -- Shadower spawns Shadower */
-       if (m_ptr->mflag2 & MFLAG2_KAGE) m_list[hack_m_idx_ii].mflag2 |= MFLAG2_KAGE;
-
-       /* Hack -- Appearance transfer */
-       if (!is_original_ap(m_ptr)) m_list[hack_m_idx_ii].ap_r_idx = m_ptr->ap_r_idx;
-
        return TRUE;
 }
 
index ea7662e..173fa0a 100644 (file)
@@ -521,10 +521,21 @@ static void breath(int y, int x, int m_idx, int typ, int dam_hp, int rad, bool b
        /* Handle breath attacks */
        if (breath) rad = 0 - rad;
 
-       if (typ == GF_ROCKET) flg |= PROJECT_STOP;
-       if (typ == GF_MIND_BLAST || typ == GF_BRAIN_SMASH ||
-           typ == GF_CAUSE_1 || typ == GF_CAUSE_2 || typ == GF_CAUSE_3 ||
-           typ == GF_CAUSE_4 || typ == GF_HAND_DOOM) flg |= PROJECT_HIDE;
+       switch (typ)
+       {
+       case GF_ROCKET:
+               flg |= PROJECT_STOP;
+               break;
+       case GF_MIND_BLAST:
+       case GF_BRAIN_SMASH:
+       case GF_CAUSE_1:
+       case GF_CAUSE_2:
+       case GF_CAUSE_3:
+       case GF_CAUSE_4:
+       case GF_HAND_DOOM:
+               flg |= (PROJECT_HIDE | PROJECT_AIMED);
+               break;
+       }
 
        /* Target the player with a ball attack */
        (void)project(m_idx, rad, y, x, dam_hp, typ, flg, (learnable ? monspell : -1));
@@ -864,7 +875,7 @@ static bool dispel_check(int m_idx)
 
        if (r_ptr->flags4 & RF4_BR_FIRE)
        {
-               if (!(prace_is_(RACE_DEMON) && p_ptr->lev > 44))
+               if (!((p_ptr->prace == RACE_DEMON) && p_ptr->lev > 44))
                {
                        if (!p_ptr->immune_fire && (p_ptr->oppose_fire || music_singing(MUSIC_RESIST))) return (TRUE);
                        if (p_ptr->special_defense & DEFENSE_FIRE) return (TRUE);
@@ -3407,63 +3418,21 @@ msg_format("%^s
 #endif
 
                        teleport_away(m_idx, 10, FALSE);
-                       p_ptr->update |= (PU_MONSTERS | PU_MON_LITE);
+                       p_ptr->update |= (PU_MONSTERS);
                        break;
                }
 
                /* RF6_TPORT */
                case 160+5:
                {
-                       int i, oldfy, oldfx;
-                       u32b flgs[TR_FLAG_SIZE];
-                       object_type *o_ptr;
-
-                       oldfy = m_ptr->fy;
-                       oldfx = m_ptr->fx;
-
                        disturb(1, 0);
 #ifdef JP
-msg_format("%^s¤¬¥Æ¥ì¥Ý¡¼¥È¤·¤¿¡£", m_name);
+                       msg_format("%^s¤¬¥Æ¥ì¥Ý¡¼¥È¤·¤¿¡£", m_name);
 #else
                        msg_format("%^s teleports away.", m_name);
 #endif
 
-                       teleport_away(m_idx, MAX_SIGHT * 2 + 5, FALSE);
-
-                       if (los(py, px, oldfy, oldfx) && !world_monster)
-                       {
-                               for (i=INVEN_RARM;i<INVEN_TOTAL;i++)
-                               {
-                                       o_ptr = &inventory[i];
-                                       if(!cursed_p(o_ptr))
-                                       {
-                                               object_flags(o_ptr, flgs);
-
-                                               if((have_flag(flgs, TR_TELEPORT)) || (p_ptr->muta1 & MUT1_VTELEPORT) || (p_ptr->pclass == CLASS_IMITATOR))
-                                               {
-#ifdef JP
-                                                       if(get_check_strict("¤Ä¤¤¤Æ¤¤¤­¤Þ¤¹¤«¡©", CHECK_OKAY_CANCEL))
-#else
-                                                       if(get_check_strict("Do you follow it? ", CHECK_OKAY_CANCEL))
-#endif
-                                                       {
-                                                               if (one_in_(3))
-                                                               {
-                                                                       teleport_player(200);
-#ifdef JP
-                                                                       msg_print("¼ºÇÔ¡ª");
-#else
-                                                                       msg_print("Failed!");
-#endif
-                                                               }
-                                                               else teleport_player_to(m_ptr->fy, m_ptr->fx, TRUE);
-                                                               p_ptr->energy_need += ENERGY_NEED();
-                                                       }
-                                                       break;
-                                               }
-                                       }
-                               }
-                       }
+                       teleport_away_followable(m_idx);
                        break;
                }
 
@@ -3563,7 +3532,7 @@ msg_format("%^s
                                                msg_format("%^s suddenly go out of your sight!", m_name);
 #endif
                                                teleport_away(m_idx, 10, FALSE);
-                                               p_ptr->update |= (PU_MONSTERS | PU_MON_LITE);
+                                               p_ptr->update |= (PU_MONSTERS);
                                        }
                                        else
                                        {
@@ -3571,7 +3540,7 @@ msg_format("%^s
                                                bool fear; /* dummy */
 
 #ifdef JP
-                                               msg_format("%^s¤¬¤¢¤Ê¤¿¤òÄϤó¤Ç¶õÃ椫¤éÅꤲÍ¤¿¡£", m_name);
+                                               msg_format("%^s¤¬¤¢¤Ê¤¿¤òÄϤó¤Ç¶õÃ椫¤éÅꤲÍî¤Ȥ·¤¿¡£", m_name);
 #else
                                                msg_format("%^s holds you, and drops from the sky.", m_name);
 #endif
@@ -3659,7 +3628,7 @@ msg_format("%^s
 #endif
 
                        learn_spell(MS_TELE_AWAY);
-                       teleport_player(100);
+                       teleport_player_away(m_idx, 100);
                        break;
                }
 
@@ -4533,7 +4502,7 @@ msg_print("¿
                        p_ptr->mane_num++;
                        new_mane = TRUE;
 
-                       p_ptr->redraw |= (PR_MANE);
+                       p_ptr->redraw |= (PR_IMITATION);
                }
        }
 
index de4b4fc..3a86bca 100644 (file)
@@ -20,7 +20,7 @@
  */
 static void monst_breath_monst(int m_idx, int y, int x, int typ, int dam_hp, int rad, bool breath, int monspell, bool learnable)
 {
-       int flg = PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL | PROJECT_MONSTER;
+       int flg = PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL;
 
        monster_type *m_ptr = &m_list[m_idx];
        monster_race *r_ptr = &r_info[m_ptr->r_idx];
@@ -44,14 +44,14 @@ static void monst_breath_monst(int m_idx, int y, int x, int typ, int dam_hp, int
  */
 static void monst_bolt_monst(int m_idx, int y, int x, int typ, int dam_hp, int monspell, bool learnable)
 {
-       int flg = PROJECT_STOP | PROJECT_KILL | PROJECT_MONSTER | PROJECT_REFLECTABLE;
+       int flg = PROJECT_STOP | PROJECT_KILL | PROJECT_REFLECTABLE;
 
        (void)project(m_idx, 0, y, x, dam_hp, typ, flg, (learnable ? monspell : -1));
 }
 
 static void monst_beam_monst(int m_idx, int y, int x, int typ, int dam_hp, int monspell, bool learnable)
 {
-       int flg = PROJECT_BEAM | PROJECT_KILL | PROJECT_THRU | PROJECT_MONSTER;
+       int flg = PROJECT_BEAM | PROJECT_KILL | PROJECT_THRU;
 
        (void)project(m_idx, 0, y, x, dam_hp, typ, flg, (learnable ? monspell : -1));
 }
@@ -101,7 +101,11 @@ static bool breath_direct(int y1, int x1, int y2, int x2, int rad, bool disint_b
 {
        /* Must be the same as projectable() */
 
-       int i, y, x;
+       int i;
+
+       /* Initial grid */
+       int y = y1;
+       int x = x1;
 
        int grid_n = 0;
        u16b grid_g[512];
@@ -116,44 +120,87 @@ static bool breath_direct(int y1, int x1, int y2, int x2, int rad, bool disint_b
 
        /* Check the projection path */
        grid_n = project_path(grid_g, MAX_RANGE, y1, x1, y2, x2, disint_ball ? PROJECT_DISI : 0);
-       breath_shape(grid_g, grid_n, &grids, gx, gy, gm, &gm_rad, rad, y1, x1, y2, x2, disint_ball, FALSE);
 
-       for (i = 0; i < grids; i++)
+       /* Project along the path */
+       for (i = 0; i < grid_n; ++i)
        {
-               /* Extract the location */
-               y = gy[i];
-               x = gx[i];
+               int ny = GRID_Y(grid_g[i]);
+               int nx = GRID_X(grid_g[i]);
 
-               if (y == y2 && x == x2)
-                       hit2 = TRUE;
-               if (player_bold(y, x))
-                       hityou = TRUE;
+               if (disint_ball)
+               {
+                       /* Hack -- Balls explode before reaching walls */
+                       if (cave_stop_disintegration(ny, nx)) break;
+               }
+               else
+               {
+                       /* Hack -- Balls explode before reaching walls */
+                       if (!cave_floor_bold(ny, nx)) break;
+               }
+
+               /* Save the "blast epicenter" */
+               y = ny;
+               x = nx;
        }
-       if (!hit2)
-               return FALSE;
-       if (friend && hityou)
-               return FALSE;
+
+       grid_n = i;
+
+       if (!grid_n)
+       {
+               if (disint_ball)
+               {
+                       if (in_disintegration_range(y1, x1, y2, x2) && (distance(y1, x1, y2, x2) <= rad)) hit2 = TRUE;
+                       if (in_disintegration_range(y1, x1, py, px) && (distance(y1, x1, py, px) <= rad)) hityou = TRUE;
+               }
+               else
+               {
+                       if (los(y1, x1, y2, x2) && (distance(y1, x1, y2, x2) <= rad)) hit2 = TRUE;
+                       if (los(y1, x1, py, px) && (distance(y1, x1, py, px) <= rad)) hityou = TRUE;
+               }
+       }
+       else
+       {
+               breath_shape(grid_g, grid_n, &grids, gx, gy, gm, &gm_rad, rad, y1, x1, y, x, disint_ball, FALSE);
+
+               for (i = 0; i < grids; i++)
+               {
+                       /* Extract the location */
+                       y = gy[i];
+                       x = gx[i];
+
+                       if ((y == y2) && (x == x2)) hit2 = TRUE;
+                       if (player_bold(y, x)) hityou = TRUE;
+               }
+       }
+
+       if (!hit2) return FALSE;
+       if (friend && hityou) return FALSE;
+
        return TRUE;
 }
 
 /*
- * Get the actual center point of ball spells (originally from TOband)
+ * Get the actual center point of ball spells (rad > 1) (originally from TOband)
  */
 static void get_project_point(int sy, int sx, int *ty, int *tx, int flg)
 {
        u16b path_g[128];
-       int  path_n;
+       int  path_n, i;
 
        path_n = project_path(path_g, MAX_RANGE, sy, sx, *ty, *tx, flg);
 
-       if (path_n)
-       {
-               /* Use final point of projection */
-               *ty = GRID_Y(path_g[path_n - 1]);
-               *tx = GRID_X(path_g[path_n - 1]);
-       }
-       else
+       *ty = sy;
+       *tx = sx;
+
+       /* Project along the path */
+       for (i = 0; i < path_n; i++)
        {
+               sy = GRID_Y(path_g[i]);
+               sx = GRID_X(path_g[i]);
+
+               /* Hack -- Balls explode before reaching walls */
+               if (!cave_floor_bold(sy, sx)) break;
+
                *ty = sy;
                *tx = sx;
        }
@@ -2124,7 +2171,7 @@ bool monst_spell_monst(int m_idx)
                if (see_m)
                {
 #ifdef JP
-                       msg_format("%^s¤Ï%s¤ò¤¸¤Ã¤Èâˤó¤À", m_name, t_name);
+                       msg_format("%^s¤Ï%s¤ò¤¸¤Ã¤Èâˤó¤À¡£", m_name, t_name);
 #else
                        msg_format("%^s gazes intently at %s.", m_name, t_name);
 #endif
@@ -2186,7 +2233,7 @@ bool monst_spell_monst(int m_idx)
                if (see_m)
                {
 #ifdef JP
-                       msg_format("%^s¤Ï%s¤ò¤¸¤Ã¤Èâˤó¤À", m_name, t_name);
+                       msg_format("%^s¤Ï%s¤ò¤¸¤Ã¤Èâˤó¤À¡£", m_name, t_name);
 #else
                        msg_format("%^s gazes intently at %s.", m_name, t_name);
 #endif
@@ -3205,45 +3252,7 @@ bool monst_spell_monst(int m_idx)
 #endif
                }
 
-               teleport_away(m_idx, MAX_SIGHT * 2 + 5, FALSE);
-
-               if (los(py, px, m_ptr->fy, m_ptr->fx) && !world_monster && see_m)
-               {
-                       for (i = INVEN_RARM; i < INVEN_TOTAL; i++)
-                       {
-                               u32b flgs[TR_FLAG_SIZE];
-                               object_type *o_ptr = &inventory[i];
-
-                               if (cursed_p(o_ptr)) continue;
-
-                               object_flags(o_ptr, flgs);
-
-                               if((have_flag(flgs, TR_TELEPORT)) || (p_ptr->muta1 & MUT1_VTELEPORT) || (p_ptr->pclass == CLASS_IMITATOR))
-                               {
-#ifdef JP
-                                       cptr msg = "¤Ä¤¤¤Æ¤¤¤­¤Þ¤¹¤«¡©";
-#else
-                                       cptr msg = "Do you follow it? ";
-#endif
-
-                                       if(get_check_strict(msg, CHECK_OKAY_CANCEL))
-                                       {
-                                               if (one_in_(3))
-                                               {
-                                                       teleport_player(200);
-#ifdef JP
-                                                       msg_print("¼ºÇÔ¡ª");
-#else
-                                                       msg_print("Failed!");
-#endif
-                                               }
-                                               else teleport_player_to(m_ptr->fy, m_ptr->fx, TRUE);
-                                               p_ptr->energy_need = ENERGY_NEED();
-                                       }
-                                       break;
-                               }
-                       }
-               }
+               teleport_away_followable(m_idx);
                break;
 
        /* RF6_WORLD */
@@ -3279,7 +3288,7 @@ bool monst_spell_monst(int m_idx)
 #endif
                                        }
                                        teleport_away(m_idx, 10, FALSE);
-                                       p_ptr->update |= (PU_MONSTERS | PU_MON_LITE);
+                                       p_ptr->update |= (PU_MONSTERS);
                                }
                                else
                                {
@@ -3288,7 +3297,7 @@ bool monst_spell_monst(int m_idx)
                                                if (see_either)
                                                {
 #ifdef JP
-                                                       msg_format("%^s¤¬%s¤òÄϤó¤Ç¶õÃ椫¤éÅꤲÍ¤¿¡£", m_name, t_name);
+                                                       msg_format("%^s¤¬%s¤òÄϤó¤Ç¶õÃ椫¤éÅꤲÍî¤Ȥ·¤¿¡£", m_name, t_name);
 #else
                                                        msg_format("%^s holds %s, and drops from the sky.", m_name, t_name);
 #endif
@@ -3325,7 +3334,7 @@ bool monst_spell_monst(int m_idx)
                                                dam += damroll(6, 8);
                                        }
 
-                                       if (p_ptr->riding)
+                                       if (p_ptr->riding == t_idx)
                                        {
                                                int get_damage = 0;
 
@@ -3479,7 +3488,7 @@ bool monst_spell_monst(int m_idx)
 
                if (!resists_tele)
                {
-                       if (t_idx == p_ptr->riding) teleport_player(MAX_SIGHT * 2 + 5);
+                       if (t_idx == p_ptr->riding) teleport_player_away(m_idx, MAX_SIGHT * 2 + 5);
                        else teleport_away(t_idx, MAX_SIGHT * 2 + 5, FALSE);
                }
 
@@ -3579,7 +3588,7 @@ bool monst_spell_monst(int m_idx)
                        }
                }
 
-               (void)project(m_idx, 3, y, x, 0, GF_DARK_WEAK, PROJECT_GRID | PROJECT_KILL | PROJECT_MONSTER, MS_DARKNESS);
+               (void)project(m_idx, 3, y, x, 0, GF_DARK_WEAK, PROJECT_GRID | PROJECT_KILL, MS_DARKNESS);
 
                unlite_room(y, x);
 
@@ -4295,7 +4304,7 @@ bool monst_spell_monst(int m_idx)
                        p_ptr->mane_num++;
                        new_mane = TRUE;
 
-                       p_ptr->redraw |= (PR_MANE);
+                       p_ptr->redraw |= (PR_IMITATION);
                }
        }
 
index 406d33b..657ceed 100644 (file)
@@ -8,7 +8,7 @@
  * are included in all such copies.  Other copyrights may also apply.
  */
 
-/* Purpose: Mane code */
+/* Purpose: Imitation code */
 
 #include "angband.h"
 
@@ -544,15 +544,10 @@ put_str("MP 
                                        if (plev > spell.level) chance -= 3 * (plev - spell.level);
                                        else chance += (spell.level - plev);
 
-                                       chance += p_ptr->to_m_chance;
-
                                        /* Reduce failure rate by INT/WIS adjustment */
                                        chance -= 3 * (adj_mag_stat[p_ptr->stat_ind[A_INT]] - 1);
 
-                                       if (p_ptr->heavy_spell) chance += 20;
-                                       if(p_ptr->dec_mana && p_ptr->easy_spell) chance-=4;
-                                       else if (p_ptr->easy_spell) chance-=3;
-                                       else if (p_ptr->dec_mana) chance-=2;
+                                       chance = mod_spell_chance_1(chance);
 
                                        need_mana = mod_need_mana(monster_powers[spellnum[i]].smana, 0, REALM_NONE);
 
@@ -575,9 +570,7 @@ put_str("MP 
                                        /* Always a 5 percent chance of working */
                                        if (chance > 95) chance = 95;
 
-                                       if(p_ptr->dec_mana) chance--;
-                                       if (p_ptr->heavy_spell) chance += 5;
-                                       chance = MAX(chance,0);
+                                       chance = mod_spell_chance_2(chance);
 
                                        /* Get info */
                                        learned_info(comment, spellnum[i]);
@@ -1991,15 +1984,10 @@ if (!get_check("
        if (plev > spell.level) chance -= 3 * (plev - spell.level);
        else chance += (spell.level - plev);
 
-       chance += p_ptr->to_m_chance;
-
        /* Reduce failure rate by INT/WIS adjustment */
        chance -= 3 * (adj_mag_stat[p_ptr->stat_ind[A_INT]] - 1);
 
-       if (p_ptr->heavy_spell) chance += 20;
-       if(p_ptr->dec_mana && p_ptr->easy_spell) chance-=4;
-       else if (p_ptr->easy_spell) chance-=3;
-       else if (p_ptr->dec_mana) chance-=2;
+       chance = mod_spell_chance_1(chance);
 
        /* Not enough mana to cast */
        if (need_mana > p_ptr->csp)
@@ -2020,9 +2008,7 @@ if (!get_check("
        /* Always a 5 percent chance of working */
        if (chance > 95) chance = 95;
 
-       if(p_ptr->dec_mana) chance--;
-       if (p_ptr->heavy_spell) chance += 5;
-       chance = MAX(chance,0);
+       chance = mod_spell_chance_2(chance);
 
        /* Failed spell */
        if (randint0(100) < chance)
index d2360f6..3d237f0 100644 (file)
@@ -274,7 +274,7 @@ bool object_is_potion(object_type *o_ptr)
 bool object_is_shoukinkubi(object_type *o_ptr)
 {
        int i;
-       if (p_ptr->today_mon > 0 && o_ptr->pval == p_ptr->today_mon) return TRUE;
+       if (p_ptr->today_mon > 0 && streq(r_name + r_info[o_ptr->pval].name, r_name + r_info[today_mon].name)) return TRUE;
        if (o_ptr->pval == MON_TSUCHINOKO) return TRUE;
        for (i = 0; i < MAX_KUBI; i++)
                if (o_ptr->pval == kubi_r_idx[i]) break;
index 2ab40a4..f812866 100644 (file)
@@ -461,7 +461,7 @@ return "
                        case ACT_BA_COLD_1:
                        {
 #ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (48) : 400 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (48) : 400 ¥¿¡¼¥óËè";
 #else
                                return "ball of cold (48) every 400 turns";
 #endif
@@ -479,7 +479,7 @@ return "
                        case ACT_DRAIN_1:
                        {
 #ifdef JP
-return "¥Ò¥Ã¥È¥Ý¥¤¥ó¥ÈµÛ¼ý (100) : 100+d100 ¥¿¡¼¥óËè";
+return "À¸Ì¿Îϵۼý (100) : 100+d100 ¥¿¡¼¥óËè";
 #else
                                return "drain life (100) every 100+d100 turns";
 #endif
@@ -488,7 +488,7 @@ return "
                        case ACT_BA_COLD_2:
                        {
 #ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) : 300 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 300 ¥¿¡¼¥óËè";
 #else
                                return "ball of cold (100) every 300 turns";
 #endif
@@ -506,7 +506,7 @@ return "
                        case ACT_DRAIN_2:
                        {
 #ifdef JP
-return "¥Ò¥Ã¥È¥Ý¥¤¥ó¥ÈµÛ¼ý(120) : 400 ¥¿¡¼¥óËè";
+return "À¸Ì¿Îϵۼý(120) : 400 ¥¿¡¼¥óËè";
 #else
                                return "drain life (120) every 400 turns";
 #endif
@@ -542,7 +542,7 @@ return "
                        case ACT_BA_COLD_3:
                        {
 #ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (200) : 325+d325 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (200) : 325+d325 ¥¿¡¼¥óËè";
 #else
                                return "ball of cold (200) every 325+d325 turns";
 #endif
@@ -578,7 +578,7 @@ return "
                        case ACT_CALL_CHAOS:
                        {
 #ifdef JP
-return "call chaos : 350 ¥¿¡¼¥óËè"; /*nuke me*/
+return "º®ÆÙ¾¤Íè : 350 ¥¿¡¼¥óËè"; /*nuke me*/
 #else
                                return "call chaos every 350 turns";
 #endif
@@ -704,7 +704,7 @@ return "ưʪ̥λ : 300 
                        case ACT_CHARM_UNDEAD:
                        {
 #ifdef JP
-return "ÉԻཾ° : 333 ¥¿¡¼¥óËè";
+return "¥¢¥ó¥Ç¥Ã¥É½¾Â° : 333 ¥¿¡¼¥óËè";
 #else
                                return "enslave undead every 333 turns";
 #endif
@@ -749,7 +749,7 @@ return "ưʪ
                        case ACT_SUMMON_PHANTOM:
                        {
 #ifdef JP
-return "»È¤¤Î´­ : 200+d200 ¥¿¡¼¥óËè";
+return "¸¸Î´­ : 200+d200 ¥¿¡¼¥óËè";
 #else
                                return "summon phantasmal servant every 200+d200 turns";
 #endif
@@ -776,7 +776,7 @@ return "
                        case ACT_SUMMON_UNDEAD:
                        {
 #ifdef JP
-return "ÉԻྤ´­ : 666+d333 ¥¿¡¼¥óËè";
+return "¥¢¥ó¥Ç¥Ã¥É¾¤´­ : 666+d333 ¥¿¡¼¥óËè";
 #else
                                return "summon undead every 666+d333 turns";
 #endif
@@ -785,7 +785,7 @@ return "
                        case ACT_CURE_LW:
                        {
 #ifdef JP
-return "ͦµ¤²óÉü & 30 hp ²óÉü : 10 ¥¿¡¼¥óËè";
+return "¶²Éݽüµî & 30 hp ²óÉü : 10 ¥¿¡¼¥óËè";
 #else
                                return "remove fear & heal 30 hp every 10 turns";
 #endif
@@ -803,7 +803,7 @@ return "4d8 hp & 
                        case ACT_CURE_POISON:
                        {
 #ifdef JP
-return "ͦµ¤²óÉü/ÆǾä· : 5 ¥¿¡¼¥óËè";
+return "¶²Éݽüµî/ÆǾä· : 5 ¥¿¡¼¥óËè";
 #else
                                return "remove fear and cure poison every 5 turns";
 #endif
@@ -821,7 +821,7 @@ return "
                        case ACT_REST_ALL:
                        {
 #ifdef JP
-return "Á´¥¹¥Æ¡¼¥¿¥¹¤È·Ð¸³ÃͲóÉü : 750 ¥¿¡¼¥óËè";
+return "Á´¥¹¥Æ¡¼¥¿¥¹¤È·Ð¸³ÃÍÉü³è : 750 ¥¿¡¼¥óËè";
 #else
                                return "restore stats and life levels every 750 turns";
 #endif
@@ -848,9 +848,9 @@ return "1000 hp 
                        case ACT_ESP:
                        {
 #ifdef JP
-return "°ì»þŪ¤Ê ESP (´ü´Ö 25+d30) : 200 ¥¿¡¼¥óËè";
+return "¥Æ¥ì¥Ñ¥·¡¼ (´ü´Ö 25+d30) : 200 ¥¿¡¼¥óËè";
 #else
-                               return "temporary ESP (dur 25+d30) every 200 turns";
+                               return "telepathy (dur 25+d30) every 200 turns";
 #endif
 
                        }
@@ -875,7 +875,7 @@ return "
                        case ACT_RESIST_ALL:
                        {
 #ifdef JP
-return "±êÎä»ÀÅÅÆǤؤÎÂÑÀ­ (´ü´Ö 40+d40) : 200 ¥¿¡¼¥óËè";
+return "Á´ÂÑÀ­ (´ü´Ö 40+d40) : 200 ¥¿¡¼¥óËè";
 #else
                                return "resist elements (dur 40+d40) every 200 turns";
 #endif
@@ -902,16 +902,16 @@ return "
                        case ACT_WRAITH:
                        {
 #ifdef JP
-return "¥ì¥¤¥¹²½ (level/2 + d(level/2)) : 1000 ¥¿¡¼¥óËè";
+return "Í©Âβ½ (´ü´Ö level/2 + d(level/2)) : 1000 ¥¿¡¼¥óËè";
 #else
-                               return "wraith form (level/2 + d(level/2)) every 1000 turns";
+                               return "wraith form (dur level/2 + d(level/2)) every 1000 turns";
 #endif
 
                        }
                        case ACT_INVULN:
                        {
 #ifdef JP
-return "̵Ũ (´ü´Ö 8+d8) : 1000 ¥¿¡¼¥óËè";
+return "̵Ũ²½ (´ü´Ö 8+d8) : 1000 ¥¿¡¼¥óËè";
 #else
                                return "invulnerability (dur 8+d8) every 1000 turns";
 #endif
@@ -974,7 +974,7 @@ return "
                        case ACT_RUNE_EXPLO:
                        {
 #ifdef JP
-return "Çúȯ¥ë¡¼¥ó : 200 ¥¿¡¼¥óËè";
+return "Çúȯ¤Î¥ë¡¼¥ó : 200 ¥¿¡¼¥óËè";
 #else
                                return "explosive rune every 200 turns";
 #endif
@@ -1019,7 +1019,7 @@ return "
                        case ACT_RECHARGE:
                        {
 #ifdef JP
-return "ºÆ½¼Å¶ : 70 ¥¿¡¼¥óËè";
+return "ËâÎϽ¼Å¶ : 70 ¥¿¡¼¥óËè";
 #else
                                return "recharging every 70 turns";
 #endif
@@ -1260,9 +1260,9 @@ return "
                case ART_LOTHARANG:
                {
 #ifdef JP
-return "½ý¤Î¼£Ìþ(4d7) : 3+d3 ¥¿¡¼¥óËè";
+return "½ý¤Î¼£Ìþ(4d8) : 3+d3 ¥¿¡¼¥óËè";
 #else
-                       return "cure wounds (4d7) every 3+d3 turns";
+                       return "cure wounds (4d8) every 3+d3 turns";
 #endif
 
                }
@@ -1317,7 +1317,7 @@ return "
 #ifdef JP
 return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 200 ¥¿¡¼¥óËè";
 #else
-                       return "Frost ball (100) every 200 turns";
+                       return "frost ball (100) every 200 turns";
 #endif
 
                }
@@ -1399,7 +1399,7 @@ return "
 #ifdef JP
 return "¥¹¥ê¡¼¥×(II) : 55 ¥¿¡¼¥óËè";
 #else
-                       return "Sleep II every 55 turns";
+                       return "sleep II every 55 turns";
 #endif
 
                }
@@ -1710,15 +1710,15 @@ return "
 #ifdef JP
 return "ËâÎϽ¼Å¶ : 200 ¥¿¡¼¥óËè";
 #else
-                       return "Recharge item every 200 turns";
+                       return "recharge item every 200 turns";
 #endif
                }
                case ART_MURAMASA:
                {
 #ifdef JP
-return "ÏÓÎϤξ徺 : ³ÎΨ50%¤Ç²õ¤ì¤ë¡£";
+return "ÏÓÎϤξ徺 : ³ÎΨ50%¤Ç²õ¤ì¤ë";
 #else
-                       return "Increase STR (destroyed 50%)";
+                       return "increase STR (destroyed 50%)";
 #endif
                }
                case ART_FLY_STONE:
@@ -1870,7 +1870,7 @@ return "
 #ifdef JP
 return "*²ò¼ö*¤ÈÄ´ºº: ¤¤¤Ä¤Ç¤â";
 #else
-                       return "Dispel Curse and Probing every turn";
+                       return "dispel curse and probing every turn";
 #endif
 
                }
@@ -1879,7 +1879,7 @@ return "*
 #ifdef JP
 return "ËâÎÏÉü³è: 777 ¥¿¡¼¥óËè";
 #else
-                       return "Restore Mana every 777 turns";
+                       return "restore mana every 777 turns";
 #endif
 
                }
@@ -2032,7 +2032,7 @@ return "
 #endif
                        case EGO_RING_COLD_BALL:
 #ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) : 80+d80 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) : 80+d80 ¥¿¡¼¥óËè";
 #else
                                return "cold ball (100) every 80+d80 turns";
 #endif
@@ -2123,7 +2123,7 @@ return "
 
                        case SV_RING_ICE:
 #ifdef JP
-return "¥³¡¼¥ë¥É¡¦¥Ü¡¼¥ë (100) ¤ÈÎ䵤¤Ø¤ÎÂÑÀ­ : 50+d50 ¥¿¡¼¥óËè";
+return "¥¢¥¤¥¹¡¦¥Ü¡¼¥ë (100) ¤ÈÎ䵤¤Ø¤ÎÂÑÀ­ : 50+d50 ¥¿¡¼¥óËè";
 #else
                                return "ball of cold (100) and resist cold every 50+d50 turns";
 #endif
@@ -2378,7 +2378,7 @@ return "
 /*
  * Describe a "fully identified" item
  */
-bool screen_object(object_type *o_ptr, bool real)
+bool screen_object(object_type *o_ptr, u32b mode)
 {
        int                     i = 0, j, k;
 
@@ -2388,6 +2388,8 @@ bool screen_object(object_type *o_ptr, bool real)
        char o_name[MAX_NLEN];
        int wid, hgt;
 
+       int trivial_info = 0;
+
        /* Extract the flags */
        object_flags(o_ptr, flgs);
 
@@ -2396,12 +2398,18 @@ bool screen_object(object_type *o_ptr, bool real)
                char temp[70 * 20];
 
                roff_to_buf(o_ptr->name1 ? (a_text + a_info[o_ptr->name1].text) :
-                           (k_text + k_info[lookup_kind(o_ptr->tval, o_ptr->sval)].text),
+                           (k_text + k_info[o_ptr->k_idx].text),
                            77 - 15, temp, sizeof(temp));
                for (j = 0; temp[j]; j += 1 + strlen(&temp[j]))
                { info[i] = &temp[j]; i++;}
        }
 
+       if (TV_SHOT <= o_ptr->tval && o_ptr->tval <= TV_CARD)
+       {
+               /* Descriptions of a basic equipment is just a flavor */
+               trivial_info = i;
+       }
+
        /* Mega-Hack -- describe activation */
        if (have_flag(flgs, TR_ACTIVATE))
        {
@@ -2657,17 +2665,20 @@ info[i++] = "
                        info[i++] = "It is made for use while riding.";
 #endif
                else
+               {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï¾èÇÏÃæ¤Ç¤â»È¤¤¤ä¤¹¤¤¡£";
+                       info[i++] = "¤½¤ì¤Ï¾èÇÏÃæ¤Ç¤â»È¤¤¤ä¤¹¤¤¡£";
 #else
                        info[i++] = "It is suitable for use while riding.";
 #endif
-
+                       /* This information is not important enough */
+                       trivial_info++;
+               }
        }
        if (have_flag(flgs, TR_STR))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÏÓÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÏÓÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your strength.";
 #endif
@@ -2676,7 +2687,7 @@ info[i++] = "
        if (have_flag(flgs, TR_INT))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÃÎǽ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÃÎǽ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your intelligence.";
 #endif
@@ -2685,7 +2696,7 @@ info[i++] = "
        if (have_flag(flgs, TR_WIS))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï¸­¤µ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï¸­¤µ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your wisdom.";
 #endif
@@ -2694,7 +2705,7 @@ info[i++] = "
        if (have_flag(flgs, TR_DEX))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï´ïÍѤµ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï´ïÍѤµ¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your dexterity.";
 #endif
@@ -2703,7 +2714,7 @@ info[i++] = "
        if (have_flag(flgs, TR_CON))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÂѵ×ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÂѵ×ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your constitution.";
 #endif
@@ -2712,7 +2723,7 @@ info[i++] = "
        if (have_flag(flgs, TR_CHR))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÌ¥ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÌ¥ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your charisma.";
 #endif
@@ -2722,7 +2733,7 @@ info[i++] = "
        if (have_flag(flgs, TR_MAGIC_MASTERY))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏËâË¡Æ»¶ñ»ÈÍÑǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏËâË¡Æ»¶ñ»ÈÍÑǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your ability to use magic devices.";
 #endif
@@ -2731,7 +2742,7 @@ info[i++] = "
        if (have_flag(flgs, TR_STEALTH))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï±£Ì©¹ÔưǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï±£Ì©¹ÔưǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your stealth.";
 #endif
@@ -2740,7 +2751,7 @@ info[i++] = "
        if (have_flag(flgs, TR_SEARCH))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ïõº÷ǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ïõº÷ǽÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your searching.";
 #endif
@@ -2749,7 +2760,7 @@ info[i++] = "
        if (have_flag(flgs, TR_INFRA))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÀÖ³°Àþ»ëÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÀÖ³°Àþ»ëÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your infravision.";
 #endif
@@ -2758,7 +2769,7 @@ info[i++] = "
        if (have_flag(flgs, TR_TUNNEL))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏºÎ·¡Ç½ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏºÎ·¡Ç½ÎϤ˱ƶÁ¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your ability to tunnel.";
 #endif
@@ -2767,7 +2778,7 @@ info[i++] = "
        if (have_flag(flgs, TR_SPEED))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï¥¹¥Ô¡¼¥É¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤Ï¥¹¥Ô¡¼¥É¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your speed.";
 #endif
@@ -2776,7 +2787,7 @@ info[i++] = "
        if (have_flag(flgs, TR_BLOWS))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÂÇ·â²ó¿ô¤Ë±Æ¶Á¤òµÚ¤Ü¤¹";
+info[i++] = "¤½¤ì¤ÏÂÇ·â²ó¿ô¤Ë±Æ¶Á¤òµÚ¤Ü¤¹¡£";
 #else
                info[i++] = "It affects your attack speed.";
 #endif
@@ -2786,7 +2797,7 @@ info[i++] = "
        if (have_flag(flgs, TR_BRAND_ACID))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï»À¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤Ï»À¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
 #else
                info[i++] = "It does extra damage from acid.";
 #endif
@@ -2795,7 +2806,7 @@ info[i++] = "
        if (have_flag(flgs, TR_BRAND_ELEC))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÅÅ·â¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤ÏÅÅ·â¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
 #else
                info[i++] = "It does extra damage from electricity.";
 #endif
@@ -2804,7 +2815,7 @@ info[i++] = "
        if (have_flag(flgs, TR_BRAND_FIRE))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤Ï²Ð±ê¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤Ï²Ð±ê¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
 #else
                info[i++] = "It does extra damage from fire.";
 #endif
@@ -2813,7 +2824,7 @@ info[i++] = "
        if (have_flag(flgs, TR_BRAND_COLD))
        {
 #ifdef JP
-info[i++] = "¤½¤ì¤ÏÎ䵤¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë";
+info[i++] = "¤½¤ì¤ÏÎ䵤¤Ë¤è¤Ã¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£";
 #else
                info[i++] = "It does extra damage from frost.";
 #endif
@@ -3614,6 +3625,11 @@ info[i++] = "
                        info[i++] = "It is cursed.";
 #endif
 
+                       /*
+                        * It's a trivial infomation since there is
+                        * fake inscription {cursed}
+                        */
+                       trivial_info++;
                }
        }
 
@@ -3772,7 +3788,7 @@ info[i++] = "
        }
 
        /* Describe about this kind of object instead of THIS fake object */
-       if (!real)
+       if (mode & SCROBJ_FAKE_OBJECT)
        {
                switch (o_ptr->tval)
                {
@@ -3870,8 +3886,10 @@ info[i++] = "
                }
        }
 
-       /* No special effects */
-       if (!i) return (FALSE);
+       if (mode & SCROBJ_FORCE_DETAIL) trivial_info = 0;
+
+       /* No relevant informations */
+       if (i <= trivial_info) return (FALSE);
 
        /* Save the screen */
        screen_save();
@@ -3880,7 +3898,7 @@ info[i++] = "
        Term_get_size(&wid, &hgt);
 
        /* Display Item name */
-       if (real)
+       if (!(mode & SCROBJ_FAKE_OBJECT))
                object_desc(o_name, o_ptr, TRUE, 3);
        else
                object_desc_store(o_name, o_ptr, TRUE, 0);
@@ -4099,131 +4117,86 @@ cptr mention_use(int i)
        switch (i)
        {
 #ifdef JP
-case INVEN_RARM: p = p_ptr->ryoute ? " Î¾¼ê" : (left_hander ? " º¸¼ê" : " ±¦¼ê"); break;
+               case INVEN_RARM:  p = p_ptr->heavy_wield[0] ? "±¿ÈÂÃæ" : ((p_ptr->ryoute && p_ptr->migite) ? " Î¾¼ê" : (left_hander ? " º¸¼ê" : " ±¦¼ê")); break;
 #else
-               case INVEN_RARM: p = "Wielding"; break;
+               case INVEN_RARM:  p = p_ptr->heavy_wield[0] ? "Just lifting" : (p_ptr->migite ? "Wielding" : "On arm"); break;
 #endif
 
 #ifdef JP
-case INVEN_LARM:   p = (left_hander ? " ±¦¼ê" : " º¸¼ê"); break;
+               case INVEN_LARM:  p = p_ptr->heavy_wield[1] ? "±¿ÈÂÃæ" : (left_hander ? " ±¦¼ê" : " º¸¼ê"); break;
 #else
-               case INVEN_LARM:   p = "On arm"; break;
+               case INVEN_LARM:  p = p_ptr->heavy_wield[1] ? "Just lifting" : (p_ptr->hidarite ? "Wielding" : "On arm"); break;
 #endif
 
 #ifdef JP
-case INVEN_BOW:   p = "¼Í·âÍÑ"; break;
+               case INVEN_BOW:   p = (adj_str_hold[p_ptr->stat_ind[A_STR]] < inventory[i].weight / 10) ? "±¿ÈÂÃæ" : "¼Í·âÍÑ"; break;
 #else
-               case INVEN_BOW:   p = "Shooting"; break;
+               case INVEN_BOW:   p = (adj_str_hold[p_ptr->stat_ind[A_STR]] < inventory[i].weight / 10) ? "Just holding" : "Shooting"; break;
 #endif
 
 #ifdef JP
-case INVEN_LEFT:  p = (left_hander ? "±¦¼ê»Ø" : "º¸¼ê»Ø"); break;
+               case INVEN_RIGHT: p = (left_hander ? "º¸¼ê»Ø" : "±¦¼ê»Ø"); break;
 #else
-               case INVEN_LEFT:  p = "On left hand"; break;
+               case INVEN_RIGHT: p = (left_hander ? "On left hand" : "On right hand"); break;
 #endif
 
 #ifdef JP
-case INVEN_RIGHT: p = (left_hander ? "º¸¼ê»Ø" : "±¦¼ê»Ø"); break;
+               case INVEN_LEFT:  p = (left_hander ? "±¦¼ê»Ø" : "º¸¼ê»Ø"); break;
 #else
-               case INVEN_RIGHT: p = "On right hand"; break;
+               case INVEN_LEFT:  p = (left_hander ? "On right hand" : "On left hand"); break;
 #endif
 
 #ifdef JP
-case INVEN_NECK:  p = "  ¼ó"; break;
+               case INVEN_NECK:  p = "  ¼ó"; break;
 #else
                case INVEN_NECK:  p = "Around neck"; break;
 #endif
 
 #ifdef JP
-case INVEN_LITE:  p = " ¸÷¸»"; break;
+               case INVEN_LITE:  p = " ¸÷¸»"; break;
 #else
                case INVEN_LITE:  p = "Light source"; break;
 #endif
 
 #ifdef JP
-case INVEN_BODY:  p = "  ÂÎ"; break;
+               case INVEN_BODY:  p = "  ÂÎ"; break;
 #else
                case INVEN_BODY:  p = "On body"; break;
 #endif
 
 #ifdef JP
-case INVEN_OUTER: p = "ÂΤξå"; break;
+               case INVEN_OUTER: p = "ÂΤξå"; break;
 #else
                case INVEN_OUTER: p = "About body"; break;
 #endif
 
 #ifdef JP
-case INVEN_HEAD:  p = "  Ƭ"; break;
+               case INVEN_HEAD:  p = "  Ƭ"; break;
 #else
                case INVEN_HEAD:  p = "On head"; break;
 #endif
 
 #ifdef JP
-case INVEN_HANDS: p = "  ¼ê"; break;
+               case INVEN_HANDS: p = "  ¼ê"; break;
 #else
                case INVEN_HANDS: p = "On hands"; break;
 #endif
 
 #ifdef JP
-case INVEN_FEET:  p = "  ­"; break;
+               case INVEN_FEET:  p = "  ­"; break;
 #else
                case INVEN_FEET:  p = "On feet"; break;
 #endif
 
 #ifdef JP
-default:          p = "¥¶¥Ã¥¯"; break;
+               default:          p = "¥¶¥Ã¥¯"; break;
 #else
                default:          p = "In pack"; break;
 #endif
-
-       }
-
-       /* Hack -- Heavy weapon */
-       if (i == INVEN_RARM)
-       {
-               if (p_ptr->heavy_wield[0])
-               {
-#ifdef JP
-p = "±¿ÈÂÃæ";
-#else
-                       p = "Just lifting";
-#endif
-
-               }
-       }
-
-       /* Hack -- Heavy weapon */
-       if (i == INVEN_LARM)
-       {
-               if (p_ptr->heavy_wield[1])
-               {
-#ifdef JP
-p = "±¿ÈÂÃæ";
-#else
-                       p = "Just lifting";
-#endif
-
-               }
-       }
-
-       /* Hack -- Heavy bow */
-       if (i == INVEN_BOW)
-       {
-               object_type *o_ptr;
-               o_ptr = &inventory[i];
-               if (adj_str_hold[p_ptr->stat_ind[A_STR]] < o_ptr->weight / 10)
-               {
-#ifdef JP
-p = "±¿ÈÂÃæ";
-#else
-                       p = "Just holding";
-#endif
-
-               }
        }
 
        /* Return the result */
-       return (p);
+       return p;
 }
 
 
@@ -4238,118 +4211,82 @@ cptr describe_use(int i)
        switch (i)
        {
 #ifdef JP
-case INVEN_RARM: p = p_ptr->ryoute ? " Î¾¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : (left_hander ? " º¸¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : " ±¦¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë"); break;
+               case INVEN_RARM:  p = p_ptr->heavy_wield[0] ? "±¿ÈÂÃæ¤Î" : ((p_ptr->ryoute && p_ptr->migite) ? "ξ¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : (left_hander ? "º¸¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : "±¦¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë")); break;
 #else
-               case INVEN_RARM: p = "attacking monsters with"; break;
+               case INVEN_RARM:  p = p_ptr->heavy_wield[0] ? "just lifting" : (p_ptr->migite ? "attacking monsters with" : "wearing on your arm"); break;
 #endif
 
 #ifdef JP
-case INVEN_LARM:   p = (left_hander ? " ±¦¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : " º¸¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë"); break;
+               case INVEN_LARM:  p = p_ptr->heavy_wield[1] ? "±¿ÈÂÃæ¤Î" : (left_hander ? "±¦¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë" : "º¸¼ê¤ËÁõÈ÷¤·¤Æ¤¤¤ë"); break;
 #else
-               case INVEN_LARM:   p = "wearing on your arm"; break;
+               case INVEN_LARM:  p = p_ptr->heavy_wield[1] ? "just lifting" : (p_ptr->hidarite ? "attacking monsters with" : "wearing on your arm"); break;
 #endif
 
 #ifdef JP
-case INVEN_BOW:   p = "¼Í·âÍѤËÁõÈ÷¤·¤Æ¤¤¤ë"; break;
+               case INVEN_BOW:   p = (adj_str_hold[p_ptr->stat_ind[A_STR]] < inventory[i].weight / 10) ? "»ý¤Ä¤À¤±¤ÇÀº°ìÇÕ¤Î" : "¼Í·âÍѤËÁõÈ÷¤·¤Æ¤¤¤ë"; break;
 #else
-               case INVEN_BOW:   p = "shooting missiles with"; break;
+               case INVEN_BOW:   p = (adj_str_hold[p_ptr->stat_ind[A_STR]] < inventory[i].weight / 10) ? "just holding" : "shooting missiles with"; break;
 #endif
 
 #ifdef JP
-case INVEN_LEFT:  p = (left_hander ? "±¦¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë" : "º¸¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë"); break;
+               case INVEN_RIGHT: p = (left_hander ? "º¸¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë" : "±¦¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë"); break;
 #else
-               case INVEN_LEFT:  p = "wearing on your left hand"; break;
+               case INVEN_RIGHT: p = (left_hander ? "wearing on your left hand" : "wearing on your right hand"); break;
 #endif
 
 #ifdef JP
-case INVEN_RIGHT: p = (left_hander ? "º¸¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë" : "±¦¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë"); break;
+               case INVEN_LEFT:  p = (left_hander ? "±¦¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë" : "º¸¼ê¤Î»Ø¤Ë¤Ï¤á¤Æ¤¤¤ë"); break;
 #else
-               case INVEN_RIGHT: p = "wearing on your right hand"; break;
+               case INVEN_LEFT:  p = (left_hander ? "wearing on your right hand" : "wearing on your left hand"); break;
 #endif
 
 #ifdef JP
-case INVEN_NECK:  p = "¼ó¤Ë¤«¤±¤Æ¤¤¤ë"; break;
+               case INVEN_NECK:  p = "¼ó¤Ë¤«¤±¤Æ¤¤¤ë"; break;
 #else
                case INVEN_NECK:  p = "wearing around your neck"; break;
 #endif
 
 #ifdef JP
-case INVEN_LITE:  p = "¸÷¸»¤Ë¤·¤Æ¤¤¤ë"; break;
+               case INVEN_LITE:  p = "¸÷¸»¤Ë¤·¤Æ¤¤¤ë"; break;
 #else
                case INVEN_LITE:  p = "using to light the way"; break;
 #endif
 
 #ifdef JP
-case INVEN_BODY:  p = "ÂΤËÃå¤Æ¤¤¤ë"; break;
+               case INVEN_BODY:  p = "ÂΤËÃå¤Æ¤¤¤ë"; break;
 #else
                case INVEN_BODY:  p = "wearing on your body"; break;
 #endif
 
 #ifdef JP
-case INVEN_OUTER: p = "¿È¤Ë¤Þ¤È¤Ã¤Æ¤¤¤ë"; break;
+               case INVEN_OUTER: p = "¿È¤Ë¤Þ¤È¤Ã¤Æ¤¤¤ë"; break;
 #else
                case INVEN_OUTER: p = "wearing on your back"; break;
 #endif
 
 #ifdef JP
-case INVEN_HEAD:  p = "Ƭ¤Ë¤«¤Ö¤Ã¤Æ¤¤¤ë"; break;
+               case INVEN_HEAD:  p = "Ƭ¤Ë¤«¤Ö¤Ã¤Æ¤¤¤ë"; break;
 #else
                case INVEN_HEAD:  p = "wearing on your head"; break;
 #endif
 
 #ifdef JP
-case INVEN_HANDS: p = "¼ê¤Ë¤Ä¤±¤Æ¤¤¤ë"; break;
+               case INVEN_HANDS: p = "¼ê¤Ë¤Ä¤±¤Æ¤¤¤ë"; break;
 #else
                case INVEN_HANDS: p = "wearing on your hands"; break;
 #endif
 
 #ifdef JP
-case INVEN_FEET:  p = "­¤Ë¤Ï¤¤¤Æ¤¤¤ë"; break;
+               case INVEN_FEET:  p = "­¤Ë¤Ï¤¤¤Æ¤¤¤ë"; break;
 #else
                case INVEN_FEET:  p = "wearing on your feet"; break;
 #endif
 
 #ifdef JP
-default:          p = "¥¶¥Ã¥¯¤ËÆþ¤Ã¤Æ¤¤¤ë"; break;
+               default:          p = "¥¶¥Ã¥¯¤ËÆþ¤Ã¤Æ¤¤¤ë"; break;
 #else
                default:          p = "carrying in your pack"; break;
 #endif
-
-       }
-
-       /* Hack -- Heavy weapon */
-       if (i == INVEN_RARM)
-       {
-               object_type *o_ptr;
-               int hold = adj_str_hold[p_ptr->stat_ind[A_STR]];
-
-               if (p_ptr->ryoute) hold *= 2;
-               o_ptr = &inventory[i];
-               if (hold < o_ptr->weight / 10)
-               {
-#ifdef JP
-p = "±¿ÈÂÃæ¤Î";
-#else
-                       p = "just lifting";
-#endif
-
-               }
-       }
-
-       /* Hack -- Heavy bow */
-       if (i == INVEN_BOW)
-       {
-               object_type *o_ptr;
-               o_ptr = &inventory[i];
-               if (adj_str_hold[p_ptr->stat_ind[A_STR]] < o_ptr->weight / 10)
-               {
-#ifdef JP
-p = "»ý¤Ä¤À¤±¤ÇÀº°ìÇÕ¤Î";
-#else
-                       p = "just holding";
-#endif
-
-               }
        }
 
        /* Return the result */
@@ -4605,6 +4542,12 @@ void display_equip(void)
 }
 
 
+#ifdef JP
+#undef strchr
+#define strchr strchr_j
+#endif
+
+
 /*
  * Find the "first" inventory object with the given "tag".
  *
@@ -5355,6 +5298,8 @@ static bool get_item_allow(int item)
 
        object_type *o_ptr;
 
+       if (!command_cmd) return TRUE; /* command_cmd is no longer effective */
+
        /* Inventory */
        if (item >= 0)
        {
@@ -5520,13 +5465,18 @@ bool get_item(int *cp, cptr pmt, cptr str, int mode)
 
 #endif /* ALLOW_EASY_FLOOR -- TNB */
 
+       /* Extract args */
+       if (mode & (USE_EQUIP)) equip = TRUE;
+       if (mode & (USE_INVEN)) inven = TRUE;
+       if (mode & (USE_FLOOR)) floor = TRUE;
+
 #ifdef ALLOW_REPEAT
 
        /* Get the item index */
        if (repeat_pull(cp))
        {
                /* the_force */
-               if (*cp == INVEN_FORCE)
+               if (select_the_force && (*cp == INVEN_FORCE))
                {
                        item_tester_tval = 0;
                        item_tester_hook = NULL;
@@ -5535,7 +5485,7 @@ bool get_item(int *cp, cptr pmt, cptr str, int mode)
                }
 
                /* Floor item? */
-               else if (*cp < 0)
+               else if (floor && (*cp < 0))
                {
                        object_type *o_ptr;
 
@@ -5561,29 +5511,28 @@ bool get_item(int *cp, cptr pmt, cptr str, int mode)
                        }
                }
 
-               /* Verify the item */
-               else if (get_item_okay(*cp))
+               else if ((inven && (*cp >= 0) && (*cp < INVEN_PACK)) ||
+                        (equip && (*cp >= INVEN_RARM) && (*cp < INVEN_TOTAL)))
                {
-                       /* Forget the item_tester_tval restriction */
-                       item_tester_tval = 0;
+                       /* Verify the item */
+                       if (get_item_okay(*cp))
+                       {
+                               /* Forget the item_tester_tval restriction */
+                               item_tester_tval = 0;
 
-                       /* Forget the item_tester_hook restriction */
-                       item_tester_hook = NULL;
+                               /* Forget the item_tester_hook restriction */
+                               item_tester_hook = NULL;
 
-                       command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+                               command_cmd = 0; /* Hack -- command_cmd is no longer effective */
 
-                       /* Success */
-                       return (TRUE);
+                               /* Success */
+                               return (TRUE);
+                       }
                }
        }
 
 #endif /* ALLOW_REPEAT */
 
-       /* Extract args */
-       if (mode & (USE_EQUIP)) equip = TRUE;
-       if (mode & (USE_INVEN)) inven = TRUE;
-       if (mode & (USE_FLOOR)) floor = TRUE;
-
 
        /* Paranoia XXX XXX XXX */
        msg_print(NULL);
@@ -5772,22 +5721,20 @@ bool get_item(int *cp, cptr pmt, cptr str, int mode)
                {
                        /* Begin the prompt */
 #ifdef JP
-sprintf(out_val, "»ý¤Áʪ:");
+                       sprintf(out_val, "»ý¤Áʪ:");
 #else
                        sprintf(out_val, "Inven:");
 #endif
 
-
                        /* Some legal items */
                        if ((i1 <= i2) && !use_menu)
                        {
                                /* Build the prompt */
 #ifdef JP
-sprintf(tmp_val, "%c-%c,'(',')',",
+                               sprintf(tmp_val, "%c-%c,'(',')',",
 #else
                                sprintf(tmp_val, " %c-%c,'(',')',",
 #endif
-
                                        index_to_label(i1), index_to_label(i2));
 
                                /* Append */
@@ -5796,23 +5743,17 @@ sprintf(tmp_val, "%c-%c,'(',')',",
 
                        /* Indicate ability to "view" */
 #ifdef JP
-if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
+                       if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
 #else
                        if (!command_see && !use_menu) strcat(out_val, " * to see,");
 #endif
 
-
                        /* Append */
 #ifdef JP
-if (equip) strcat(out_val, format(" %s ÁõÈ÷ÉÊ,", use_menu ? "'4'or'6'" : "'/'"));
-else if (select_the_force)
-       strcat(out_val, " 'w'Îýµ¤½Ñ,");
+                       if (equip) strcat(out_val, format(" %s ÁõÈ÷ÉÊ,", use_menu ? "'4'or'6'" : "'/'"));
 #else
-if (equip) strcat(out_val, format(" %s for Equip,", use_menu ? "4 or 6" : "/"));
-else if (select_the_force)
-       strcat(out_val, " w for the Force,");
+                       if (equip) strcat(out_val, format(" %s for Equip,", use_menu ? "4 or 6" : "/"));
 #endif
-
                }
 
                /* Viewing equipment */
@@ -5820,22 +5761,20 @@ else if (select_the_force)
                {
                        /* Begin the prompt */
 #ifdef JP
-sprintf(out_val, "ÁõÈ÷ÉÊ:");
+                       sprintf(out_val, "ÁõÈ÷ÉÊ:");
 #else
                        sprintf(out_val, "Equip:");
 #endif
 
-
                        /* Some legal items */
                        if ((e1 <= e2) && !use_menu)
                        {
                                /* Build the prompt */
 #ifdef JP
-sprintf(tmp_val, "%c-%c,'(',')',",
+                               sprintf(tmp_val, "%c-%c,'(',')',",
 #else
                                sprintf(tmp_val, " %c-%c,'(',')',",
 #endif
-
                                        index_to_label(e1), index_to_label(e2));
 
                                /* Append */
@@ -5844,29 +5783,28 @@ sprintf(tmp_val, "%c-%c,'(',')',",
 
                        /* Indicate ability to "view" */
 #ifdef JP
-if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
+                       if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
 #else
                        if (!command_see) strcat(out_val, " * to see,");
 #endif
 
-
                        /* Append */
 #ifdef JP
-if (inven) strcat(out_val, format(" %s »ý¤Áʪ,", use_menu ? "'4'or'6'" : "'/'"));
+                       if (inven) strcat(out_val, format(" %s »ý¤Áʪ,", use_menu ? "'4'or'6'" : "'/'"));
 #else
-if (inven) strcat(out_val, format(" %s for Inven,", use_menu ? "4 or 6" : "'/'"));
+                       if (inven) strcat(out_val, format(" %s for Inven,", use_menu ? "4 or 6" : "'/'"));
 #endif
-
                }
 
                /* Indicate legality of the "floor" item */
 #ifdef JP
-if (allow_floor) strcat(out_val, " '-'¾²¾å,");
+               if (allow_floor) strcat(out_val, " '-'¾²¾å,");
+               if (select_the_force) strcat(out_val, " 'w'Îýµ¤½Ñ,");
 #else
                if (allow_floor) strcat(out_val, " - for floor,");
+               if (select_the_force) strcat(out_val, " w for the Force,");
 #endif
 
-
                /* Finish the prompt */
                strcat(out_val, " ESC");
 
@@ -5876,7 +5814,6 @@ if (allow_floor) strcat(out_val, " '-'
                /* Show the prompt */
                prt(tmp_val, 0, 0);
 
-
                /* Get a key */
                which = inkey();
 
@@ -6530,9 +6467,10 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode)
 
        bool oops = FALSE;
 
-       bool equip = FALSE;
-       bool inven = FALSE;
-       bool floor = FALSE;
+       /* Extract args */
+       bool equip = (mode & USE_EQUIP) ? TRUE : FALSE;
+       bool inven = (mode & USE_INVEN) ? TRUE : FALSE;
+       bool floor = (mode & USE_FLOOR) ? TRUE : FALSE;
 
        bool allow_equip = FALSE;
        bool allow_inven = FALSE;
@@ -6558,7 +6496,7 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode)
        if (repeat_pull(cp))
        {
                /* the_force */
-               if (*cp == INVEN_FORCE)
+               if (select_the_force && (*cp == INVEN_FORCE))
                {
                        item_tester_tval = 0;
                        item_tester_hook = NULL;
@@ -6567,7 +6505,7 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode)
                }
 
                /* Floor item? */
-               else if (*cp < 0)
+               else if (floor && (*cp < 0))
                {
                        object_type *o_ptr;
 
@@ -6593,29 +6531,28 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode)
                        }
                }
 
-               /* Verify the item */
-               else if (get_item_okay(*cp))
+               else if ((inven && (*cp >= 0) && (*cp < INVEN_PACK)) ||
+                        (equip && (*cp >= INVEN_RARM) && (*cp < INVEN_TOTAL)))
                {
-                       /* Forget the item_tester_tval restriction */
-                       item_tester_tval = 0;
+                       /* Verify the item */
+                       if (get_item_okay(*cp))
+                       {
+                               /* Forget the item_tester_tval restriction */
+                               item_tester_tval = 0;
 
-                       /* Forget the item_tester_hook restriction */
-                       item_tester_hook = NULL;
+                               /* Forget the item_tester_hook restriction */
+                               item_tester_hook = NULL;
 
-                       command_cmd = 0; /* Hack -- command_cmd is no longer effective */
+                               command_cmd = 0; /* Hack -- command_cmd is no longer effective */
 
-                       /* Success */
-                       return (TRUE);
+                               /* Success */
+                               return (TRUE);
+                       }
                }
        }
 
 #endif /* ALLOW_REPEAT */
 
-       /* Extract args */
-       if (mode & (USE_EQUIP)) equip = TRUE;
-       if (mode & (USE_INVEN)) inven = TRUE;
-       if (mode & (USE_FLOOR)) floor = TRUE;
-
 
        /* Paranoia XXX XXX XXX */
        msg_print(NULL);
@@ -6824,7 +6761,7 @@ bool get_item_floor(int *cp, cptr pmt, cptr str, int mode)
                {
                        /* Begin the prompt */
 #ifdef JP
-sprintf(out_val, "»ý¤Áʪ:");
+                       sprintf(out_val, "»ý¤Áʪ:");
 #else
                        sprintf(out_val, "Inven:");
 #endif
@@ -6833,11 +6770,10 @@ sprintf(out_val, "
                        {
                                /* Build the prompt */
 #ifdef JP
-sprintf(tmp_val, "%c-%c,'(',')',",
+                               sprintf(tmp_val, "%c-%c,'(',')',",
 #else
                                sprintf(tmp_val, " %c-%c,'(',')',",
 #endif
-
                                        index_to_label(i1), index_to_label(i2));
 
                                /* Append */
@@ -6846,38 +6782,30 @@ sprintf(tmp_val, "%c-%c,'(',')',",
 
                        /* Indicate ability to "view" */
 #ifdef JP
-if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
+                       if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
 #else
                        if (!command_see && !use_menu) strcat(out_val, " * to see,");
 #endif
 
-
                        /* Append */
-#ifdef JP
                        if (allow_equip)
                        {
+#ifdef JP
                                if (!use_menu)
                                        strcat(out_val, " '/' ÁõÈ÷ÉÊ,");
                                else if (allow_floor)
                                        strcat(out_val, " '6' ÁõÈ÷ÉÊ,");
                                else
                                        strcat(out_val, " '4'or'6' ÁõÈ÷ÉÊ,");
-                       }
-                       else if (select_the_force)
-                               strcat(out_val, " 'w'Îýµ¤½Ñ,");
 #else
-                       if (allow_equip)
-                       {
                                if (!use_menu)
                                        strcat(out_val, " / for Equip,");
                                else if (allow_floor)
                                        strcat(out_val, " 6 for Equip,");
                                else
                                        strcat(out_val, " 4 or 6 for Equip,");
-                       }
-                       else if (select_the_force)
-                               strcat(out_val, " w for the Force,");
 #endif
+                       }
 
                        /* Append */
                        if (allow_floor)
@@ -6898,7 +6826,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
                                        strcat(out_val, " 4 or 6 for floor,");
 #endif
                        }
-
                }
 
                /* Viewing equipment */
@@ -6906,21 +6833,19 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
                {
                        /* Begin the prompt */
 #ifdef JP
-sprintf(out_val, "ÁõÈ÷ÉÊ:");
+                       sprintf(out_val, "ÁõÈ÷ÉÊ:");
 #else
                        sprintf(out_val, "Equip:");
 #endif
 
-
                        if (!use_menu)
                        {
                                /* Build the prompt */
 #ifdef JP
-sprintf(tmp_val, "%c-%c,'(',')',",
+                               sprintf(tmp_val, "%c-%c,'(',')',",
 #else
                                sprintf(tmp_val, " %c-%c,'(',')',",
 #endif
-
                                        index_to_label(e1), index_to_label(e2));
 
                                /* Append */
@@ -6929,12 +6854,11 @@ sprintf(tmp_val, "%c-%c,'(',')',",
 
                        /* Indicate ability to "view" */
 #ifdef JP
-if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
+                       if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
 #else
                        if (!command_see && !use_menu) strcat(out_val, " * to see,");
 #endif
 
-
                        /* Append */
                        if (allow_inven)
                        {
@@ -6946,7 +6870,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
                                else
                                        strcat(out_val, " '4'or'6' »ý¤Áʪ,");
 #else
-
                                if (!use_menu)
                                        strcat(out_val, " / for Inven,");
                                else if (allow_floor)
@@ -6987,29 +6910,26 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
                        sprintf(out_val, "Floor:");
 #endif
 
-
                        if (!use_menu)
                        {
                                /* Build the prompt */
 #ifdef JP
-sprintf(tmp_val, "%c-%c,'(',')',", n1, n2);
+                               sprintf(tmp_val, "%c-%c,'(',')',", n1, n2);
 #else
                                sprintf(tmp_val, " %c-%c,'(',')',", n1, n2);
 #endif
 
-
                                /* Append */
                                strcat(out_val, tmp_val);
                        }
 
                        /* Indicate ability to "view" */
 #ifdef JP
-if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
+                       if (!command_see && !use_menu) strcat(out_val, " '*'°ìÍ÷,");
 #else
                        if (!command_see && !use_menu) strcat(out_val, " * to see,");
 #endif
 
-
                        if (use_menu)
                        {
                                if (allow_inven && allow_equip)
@@ -7019,7 +6939,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
 #else
                                        strcat(out_val, " 4 for Equip, 6 for Inven,");
 #endif
-
                                }
                                else if (allow_inven)
                                {
@@ -7028,7 +6947,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
 #else
                                        strcat(out_val, " 4 or 6 for Inven,");
 #endif
-
                                }
                                else if (allow_equip)
                                {
@@ -7037,7 +6955,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
 #else
                                        strcat(out_val, " 4 or 6 for Equip,");
 #endif
-
                                }
                        }
                        /* Append */
@@ -7048,7 +6965,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
 #else
                                strcat(out_val, " / for Inven,");
 #endif
-
                        }
                        else if (allow_equip)
                        {
@@ -7057,7 +6973,6 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
 #else
                                strcat(out_val, " / for Equip,");
 #endif
-
                        }
 
                        /* Append */
@@ -7071,6 +6986,13 @@ if (!command_see && !use_menu) strcat(out_val, " '*'
                        }
                }
 
+               /* Append */
+#ifdef JP
+               if (select_the_force) strcat(out_val, " 'w'Îýµ¤½Ñ,");
+#else
+               if (select_the_force) strcat(out_val, " w for the Force,");
+#endif
+
                /* Finish the prompt */
                strcat(out_val, " ESC");
 
index c907442..f0e716e 100644 (file)
@@ -1452,7 +1452,10 @@ s32b object_value(object_type *o_ptr)
 bool can_player_destroy_object(object_type *o_ptr)
 {
        /* Artifacts cannot be destroyed */
-       if (artifact_p(o_ptr) || o_ptr->art_name)
+       if (!artifact_p(o_ptr) && !o_ptr->art_name) return TRUE;
+
+       /* If object is unidentified, makes fake inscription */
+       if (!object_known_p(o_ptr))
        {
                byte feel = FEEL_SPECIAL;
 
@@ -1475,7 +1478,8 @@ bool can_player_destroy_object(object_type *o_ptr)
                return FALSE;
        }
 
-       return TRUE;
+       /* Identified artifact -- Nothing to do */
+       return FALSE;
 }
 
 
@@ -1678,6 +1682,7 @@ static int object_similar_part(object_type *o_ptr, object_type *j_ptr)
                case TV_RING:
                case TV_AMULET:
                case TV_LITE:
+               case TV_WHISTLE:
                {
                        /* Require full knowledge of both items */
                        if (!object_known_p(o_ptr) || !object_known_p(j_ptr)) return 0;
@@ -3979,6 +3984,9 @@ static void a_m_aux_4(object_type *o_ptr, int level, int power)
                                /* Ignore dead monsters */
                                if (!r_ptr->rarity) continue;
 
+                               /* Ignore uncommon monsters */
+                               if (r_ptr->rarity > 100) continue;
+
                                /* Prefer less out-of-depth monsters */
                                if (randint0(check)) continue;
 
@@ -5078,21 +5086,11 @@ s16b drop_near(object_type *j_ptr, int chance, int y, int x)
 
 
        /* Find a grid */
-       for (i = 0; !flag; i++)
+       for (i = 0; !flag && (i < 1000); i++)
        {
                /* Bounce around */
-               if (i < 1000)
-               {
-                       ty = rand_spread(by, 1);
-                       tx = rand_spread(bx, 1);
-               }
-
-               /* Random locations */
-               else
-               {
-                       ty = randint0(cur_hgt);
-                       tx = randint0(cur_wid);
-               }
+               ty = rand_spread(by, 1);
+               tx = rand_spread(bx, 1);
 
                /* Grid */
                c_ptr = &cave[ty][tx];
@@ -5116,6 +5114,93 @@ s16b drop_near(object_type *j_ptr, int chance, int y, int x)
        }
 
 
+       if (!flag)
+       {
+               int candidates = 0, pick;
+
+               for (ty = 1; ty < cur_hgt - 1; ty++)
+               {
+                       for (tx = 1; tx < cur_wid - 1; tx++)
+                       {
+                               /* Grid */
+                               c_ptr = &cave[ty][tx];
+
+                               /* A valid space found */
+                               if (((c_ptr->feat == FEAT_FLOOR) ||
+                                    (c_ptr->feat == FEAT_SHAL_WATER) ||
+                                    (c_ptr->feat == FEAT_GRASS) ||
+                                    (c_ptr->feat == FEAT_DIRT) ||
+                                    (c_ptr->feat == FEAT_SHAL_LAVA)) &&
+                                   cave_clean_bold(ty, ty))
+                                       candidates++;
+                       }
+               }
+
+               /* No valid place! */
+               if (!candidates)
+               {
+                       /* Message */
+#ifdef JP
+                       msg_format("%s¤Ï¾Ã¤¨¤¿¡£", o_name);
+#else
+                       msg_format("The %s disappear%s.", o_name, (plural ? "" : "s"));
+#endif
+
+                       /* Debug */
+#ifdef JP
+                       if (p_ptr->wizard) msg_print("(¾²¥¹¥Ú¡¼¥¹¤¬¤Ê¤¤)");
+#else
+                       if (p_ptr->wizard) msg_print("(no floor space)");
+#endif
+
+                       /* Mega-Hack -- preserve artifacts */
+                       if (preserve_mode)
+                       {
+                               /* Hack -- Preserve unknown artifacts */
+                               if (artifact_p(j_ptr) && !object_known_p(j_ptr))
+                               {
+                                       /* Mega-Hack -- Preserve the artifact */
+                                       a_info[j_ptr->name1].cur_num = 0;
+                               }
+                       }
+
+                       /* Failure */
+                       return 0;
+               }
+
+               /* Choose a random one */
+               pick = randint1(candidates);
+
+               for (ty = 1; ty < cur_hgt - 1; ty++)
+               {
+                       for (tx = 1; tx < cur_wid - 1; tx++)
+                       {
+                               /* Grid */
+                               c_ptr = &cave[ty][tx];
+
+                               /* A valid space found */
+                               if (((c_ptr->feat == FEAT_FLOOR) ||
+                                    (c_ptr->feat == FEAT_SHAL_WATER) ||
+                                    (c_ptr->feat == FEAT_GRASS) ||
+                                    (c_ptr->feat == FEAT_DIRT) ||
+                                    (c_ptr->feat == FEAT_SHAL_LAVA)) &&
+                                   cave_clean_bold(ty, ty))
+                               {
+                                       pick--;
+
+                                       /* Is this a picked one? */
+                                       if (!pick) break;
+                               }
+                       }
+
+                       if (!pick) break;
+               }
+
+               by = ty;
+               bx = tx;
+       }
+
+
        /* Grid */
        c_ptr = &cave[by][bx];
 
@@ -5911,7 +5996,8 @@ s16b inven_takeoff(int item, int amt)
        object_desc(o_name, q_ptr, TRUE, 3);
 
        /* Took off weapon */
-       if (item == INVEN_RARM)
+       if (((item == INVEN_RARM) || (item == INVEN_LARM)) &&
+           (o_ptr->tval >= TV_DIGGING) && (o_ptr->tval <= TV_SWORD))
        {
 #ifdef JP
                act = "¤òÁõÈ÷¤«¤é¤Ï¤º¤·¤¿";
@@ -7003,7 +7089,7 @@ static essence_type essence_info[] =
        {TR_MAGIC_MASTERY, "magic mastery", 4, TR_MAGIC_MASTERY, 20},
        {TR_STEALTH, "stealth", 4, TR_STEALTH, 40},
        {TR_SEARCH, "serching", 4, TR_SEARCH, 15},
-       {TR_INFRA, "inflavision", 4, TR_INFRA, 15},
+       {TR_INFRA, "infravision", 4, TR_INFRA, 15},
        {TR_TUNNEL, "digging", 4, TR_TUNNEL, 15},
        {TR_SPEED, "speed", 4, TR_SPEED, 12},
        {TR_BLOWS, "extra attack", 1, TR_BLOWS, 20},
@@ -7222,7 +7308,7 @@ static cptr essence_name[] =
        "",
        "stealth",
        "serching",
-       "inflavision",
+       "infravision",
        "digging",
        "speed",
        "extra atk",
@@ -8423,7 +8509,7 @@ void do_cmd_kaji(bool only_browse)
 #ifdef JP
                        msg_print("¤¦¤Þ¤¯¸«¤¨¤Ê¤¯¤Æºî¶È¤Ç¤­¤Ê¤¤¡ª");
 #else
-                       msg_print("You are hullcinating!");
+                       msg_print("You are hallucinating!");
 #endif
 
                        return;
index 611ae5e..415ea60 100644 (file)
@@ -459,7 +459,7 @@ static bool choose_kamae(void)
                        screen_load();
                        return FALSE;
                }
-               else if ((choice == 'a') || (choice == 'A') || (choice == ESCAPE))
+               else if ((choice == 'a') || (choice == 'A'))
                {
                        if (p_ptr->action == ACTION_KAMAE)
                        {
@@ -597,7 +597,7 @@ static bool choose_kata(void)
                        screen_load();
                        return FALSE;
                }
-               else if ((choice == 'a') || (choice == 'A') || (choice == ESCAPE))
+               else if ((choice == 'a') || (choice == 'A'))
                {
                        if (p_ptr->action == ACTION_KATA)
                        {
@@ -1001,10 +1001,8 @@ static bool cmd_racial_power_aux(s32b command)
 
                        if (command == -3)
                        {
-                               if (choose_kamae()) energy_use = 100;
-                               else energy_use = 0;
+                               if (!choose_kamae()) return FALSE;
                                p_ptr->update |= (PU_BONUS);
-                               p_ptr->redraw |= (PR_ARMOR);
                        }
                        else if (command == -4)
                        {
@@ -1185,10 +1183,8 @@ static bool cmd_racial_power_aux(s32b command)
 #endif
                                        return FALSE;
                                }
-                               if (choose_kata()) energy_use = 100;
-                               else energy_use = 0;
+                               if (!choose_kata()) return FALSE;
                                p_ptr->update |= (PU_BONUS);
-                               p_ptr->redraw |= (PR_ARMOR);
                        }
                        break;
                }
@@ -1282,19 +1278,8 @@ static bool cmd_racial_power_aux(s32b command)
                {
                        if (command == -3)
                        {
-                               int x, y;
-                               for (x = 0; x < cur_wid; x++)
-                               {
-                                       for (y = 0; y < cur_hgt; y++)
-                                       {
-                                               if (is_mirror_grid(&cave[y][x]))
-                                               {
-                                                       remove_mirror(y, x);
-                                                       project(0, 2, y, x, p_ptr->lev / 2 + 5, GF_SHARDS,
-                                                               (PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL | PROJECT_JUMP | PROJECT_NO_HANGEKI), -1);
-                                               }
-                                       }
-                               }
+                               /* Explode all mirrors */
+                               remove_all_mirrors(TRUE);
                        }
                        else if (command == -4)
                        {
@@ -1563,12 +1548,6 @@ static bool cmd_racial_power_aux(s32b command)
 
                case RACE_HALF_GIANT:
                        if (!get_aim_dir(&dir)) return FALSE;
-#ifdef JP
-                       msg_print("ÀФÎÊɤò᤭¤Ä¤±¤¿¡£");
-#else
-                       msg_print("You bash at a stone wall.");
-#endif
-
                        (void)wall_to_mud(dir);
                        break;
 
index f5a502e..3c0fa2a 100644 (file)
@@ -123,12 +123,23 @@ static int buf_sprintf(BUF *buf, const char *fmt, ...)
 
        if(!tmpbuf) return -1;
 
-#ifdef MAC_MPW
+#if ('\r' == 0x0a && '\n' == 0x0d)
        {
-               /* '\n' is 0x0D and '\r' is 0x0A in MPW. Swap back these. */
+               /*
+                * Originally '\r'= CR (= 0x0d) and '\n'= LF (= 0x0a)
+                * But for MPW (Macintosh Programers Workbench), these
+                * are reversed so that '\r'=LF and '\n'=CR unless the
+                * -noMapCR option is not defined.
+                *
+                * We need to swap back these here since the score
+                * dump text should be written using LF as the end of
+                * line.
+                */
                char *ptr;
                for (ptr = tmpbuf; *ptr; ptr++)
-                       if ('\n' == *ptr) *ptr = '\r';
+               {
+                       if (0x0d == *ptr) *ptr = 0x0a;
+               }
        }
 #endif
 
@@ -291,6 +302,9 @@ cptr make_screen_dump(void)
 
        if (old_use_graphics)
        {
+               /* Clear -more- prompt first */
+               msg_print(NULL);
+
                use_graphics = FALSE;
                reset_visuals();
 
index c5ae47c..d6801da 100644 (file)
@@ -50,6 +50,7 @@ static void place_locked_door(int y, int x)
        {
                set_cave_feat(y, x, FEAT_DOOR_HEAD+randint1(7));
                cave[y][x].info &= ~(CAVE_FLOOR);
+               delete_monster(y, x);
        }
 }
 
@@ -77,6 +78,7 @@ static void place_secret_door(int y, int x)
                }
 
                c_ptr->info &= ~(CAVE_FLOOR);
+               delete_monster(y, x);
        }
 }
 
@@ -1155,7 +1157,7 @@ static void build_type4(int by0, int bx0)
  * Line 3 -- forbid aquatic monsters
  */
 #define vault_monster_okay(I) \
-       (monster_dungeon(I) && \
+       (mon_hook_dungeon(I) && \
         !(r_info[I].flags1 & RF1_UNIQUE) && \
         !(r_info[I].flags7 & RF7_UNIQUE2) && \
         !(r_info[I].flagsr & RFR_RES_ALL) && \
index fb12f49..841e530 100644 (file)
@@ -566,6 +566,7 @@ static void wr_extra(void)
        wr_u32b(p_ptr->au);
 
        wr_u32b(p_ptr->max_exp);
+       wr_u32b(p_ptr->max_max_exp);
        wr_u32b(p_ptr->exp);
        wr_u16b(p_ptr->exp_frac);
        wr_s16b(p_ptr->lev);
@@ -612,10 +613,8 @@ static void wr_extra(void)
        wr_s16b(p_ptr->oldpx);
        wr_s16b(p_ptr->oldpy);
 
-       /* Save builing rewards */
-       wr_s16b(MAX_BACT);
-
-       for (i = 0; i < MAX_BACT; i++) wr_s16b(p_ptr->rewards[i]);
+       /* Was number of p_ptr->rewards[] */
+       wr_s16b(0);
 
        wr_s16b(p_ptr->mhp);
        wr_s16b(p_ptr->chp);
@@ -1236,8 +1235,22 @@ static bool wr_savefile_new(void)
 
        /* Space */
        wr_u32b(0L);
-       wr_u32b(0L);
+       wr_u16b(0);
+       wr_byte(0);
 
+#ifdef JP
+# ifdef EUC
+       /* EUC kanji code */
+       wr_byte(2);
+# endif
+# ifdef SJIS
+       /* SJIS kanji code */
+       wr_byte(3);
+# endif
+#else
+       /* ASCII */
+       wr_byte(1);
+#endif
 
        /* Write the RNG state */
        wr_randomizer();
@@ -2099,9 +2112,16 @@ bool save_floor(saved_floor_type *sf_ptr, u32b mode)
        /* New savefile */
        sprintf(floor_savefile, "%s.F%02d", savefile, (int)sf_ptr->savefile_id);
 
+       /* Grab permissions */
+       safe_setuid_grab();
+
        /* Remove it */
        fd_kill(floor_savefile);
 
+       /* Drop permissions */
+       safe_setuid_drop();
+
+
        /* Attempt to save the player */
 
        /* No file yet */
@@ -2110,18 +2130,30 @@ bool save_floor(saved_floor_type *sf_ptr, u32b mode)
        /* File type is "SAVE" */
        FILE_TYPE(FILE_TYPE_SAVE);
 
+       /* Grab permissions */
+       safe_setuid_grab();
+
        /* Create the savefile */
        fd = fd_make(floor_savefile, 0644);
 
+       /* Drop permissions */
+       safe_setuid_drop();
+
        /* File is okay */
        if (fd >= 0)
        {
                /* Close the "fd" */
                (void)fd_close(fd);
 
+               /* Grab permissions */
+               safe_setuid_grab();
+
                /* Open the savefile */
                fff = my_fopen(floor_savefile, "wb");
 
+               /* Drop permissions */
+               safe_setuid_drop();
+
                /* Successful open */
                if (fff)
                {
@@ -2133,7 +2165,16 @@ bool save_floor(saved_floor_type *sf_ptr, u32b mode)
                }
 
                /* Remove "broken" files */
-               if (!ok) (void)fd_kill(floor_savefile);
+               if (!ok)
+               {
+                       /* Grab permissions */
+                       safe_setuid_grab();
+
+                       (void)fd_kill(floor_savefile);
+
+                       /* Drop permissions */
+                       safe_setuid_drop();
+               }
        }
 
        if (!(mode & SLF_SECOND))
index 0479951..8b40f21 100644 (file)
@@ -893,12 +893,13 @@ void kingly(void)
 {
        int wid, hgt;
        int cx, cy;
+       bool seppuku = streq(p_ptr->died_from, "Seppuku");
 
        /* Hack -- retire in town */
        dun_level = 0;
 
        /* Fake death */
-       if (!streq(p_ptr->died_from, "Seppuku"))
+       if (!seppuku)
 #ifdef JP
                /* °úÂष¤¿¤È¤­¤Î¼±ÊÌʸ»ú */
                (void)strcpy(p_ptr->died_from, "ripe");
@@ -948,14 +949,18 @@ void kingly(void)
        put_str(format("All Hail the Mighty %s!", sp_ptr->winner), cy + 5, cx - 13);
 #endif
 
+       /* If player did Seppuku, that is already written in playrecord */
+       if (!seppuku)
+       {
 #ifdef JP
-       do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "¥À¥ó¥¸¥ç¥ó¤Îõº÷¤«¤é°úÂष¤¿¡£");
-       do_cmd_write_nikki(NIKKI_GAMESTART, 1, "-------- ¥²¡¼¥à¥ª¡¼¥Ð¡¼ --------");
+               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "¥À¥ó¥¸¥ç¥ó¤Îõº÷¤«¤é°úÂष¤¿¡£");
+               do_cmd_write_nikki(NIKKI_GAMESTART, 1, "-------- ¥²¡¼¥à¥ª¡¼¥Ð¡¼ --------");
 #else
-       do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "retire exploring dungeons.");
-       do_cmd_write_nikki(NIKKI_GAMESTART, 1, "--------   Game  Over   --------");
+               do_cmd_write_nikki(NIKKI_BUNSHOU, 0, "retired exploring dungeons.");
+               do_cmd_write_nikki(NIKKI_GAMESTART, 1, "--------   Game  Over   --------");
 #endif
-       do_cmd_write_nikki(NIKKI_BUNSHOU, 1, "\n\n\n\n");
+               do_cmd_write_nikki(NIKKI_BUNSHOU, 1, "\n\n\n\n");
+       }
 
        /* Flush input */
        flush();
index 528fbe7..b935af7 100644 (file)
@@ -813,14 +813,14 @@ msg_print("
 #endif
 
                                        obvious = TRUE;
+                               }
 
-                                       /* Visibility change */
-                                       if ((c_ptr->feat >= FEAT_DOOR_HEAD) &&
-                                                (c_ptr->feat <= FEAT_DOOR_TAIL))
-                                       {
-                                               /* Update some things */
-                                               p_ptr->update |= (PU_VIEW | PU_LITE | PU_MONSTERS | PU_MON_LITE);
-                                       }
+                               /* Visibility change */
+                               if ((c_ptr->feat >= FEAT_DOOR_HEAD) &&
+                                        (c_ptr->feat <= FEAT_DOOR_TAIL))
+                               {
+                                       /* Update some things */
+                                       p_ptr->update |= (PU_VIEW | PU_LITE | PU_MONSTERS | PU_MON_LITE);
                                }
 
                                /* Forget the door */
@@ -863,7 +863,7 @@ msg_print("
                                {
                                        /* Message */
 #ifdef JP
-msg_print("²¿¤«¤¬¤Ä¤Ã¤«¤¨¤Æ¥É¥¢¤¬³«¤«¤Ê¤¤¡£");
+                                       msg_print("¥É¥¢¤Ë²¿¤«¤¬¤Ä¤Ã¤«¤¨¤Æ³«¤«¤Ê¤¯¤Ê¤Ã¤¿¡£");
 #else
                                        msg_print("The door seems stuck.");
 #endif
@@ -1178,20 +1178,28 @@ msg_print("
                case GF_LITE:
                {
                        /* Turn on the light */
-                       if (!(d_info[dungeon_type].flags1 & DF1_DARKNESS)) c_ptr->info |= (CAVE_GLOW);
+                       if (!(d_info[dungeon_type].flags1 & DF1_DARKNESS))
+                       {
+                               c_ptr->info |= (CAVE_GLOW);
 
-                       /* Notice */
-                       note_spot(y, x);
+                               /* Notice */
+                               note_spot(y, x);
 
-                       /* Redraw */
-                       lite_spot(y, x);
+                               /* Redraw */
+                               lite_spot(y, x);
 
-                       /* Observe */
-                       if (player_can_see_bold(y, x)) obvious = TRUE;
+                               /* Observe */
+                               if (player_can_see_bold(y, x)) obvious = TRUE;
 
-                       /* Mega-Hack -- Update the monster in the affected grid */
-                       /* This allows "spear of light" (etc) to work "correctly" */
-                       if (c_ptr->m_idx) update_mon(c_ptr->m_idx, FALSE);
+                               /* Mega-Hack -- Update the monster in the affected grid */
+                               /* This allows "spear of light" (etc) to work "correctly" */
+                               if (c_ptr->m_idx) update_mon(c_ptr->m_idx, FALSE);
+
+                               if (p_ptr->special_defense & NINJA_S_STEALTH)
+                               {
+                                       if (player_bold(y, x)) set_superstealth(FALSE);
+                               }
+                       }
 
                        break;
                }
@@ -1237,7 +1245,7 @@ msg_print("
 #ifdef JP
                                msg_print("¶À¤¬³ä¤ì¤¿¡ª");
 #else
-                               msg_print("The mirror was chashed!");
+                               msg_print("The mirror was crashed!");
 #endif                         
                                remove_mirror(y,x);
                            project(0,2,y,x, p_ptr->lev /2 +5 ,GF_SHARDS,(PROJECT_GRID|PROJECT_ITEM|PROJECT_KILL|PROJECT_JUMP|PROJECT_NO_HANGEKI),-1);
@@ -1251,9 +1259,9 @@ msg_print("
 #ifdef JP
                                msg_print("¶À¤¬³ä¤ì¤¿¡ª");
 #else
-                               msg_print("The mirror was chashed!");
+                               msg_print("The mirror was crashed!");
 #endif                         
-                               cave_set_feat(y,x, FEAT_FLOOR);
+                               remove_mirror(y, x);
                        }
                        break;
                }
@@ -1606,7 +1614,7 @@ note_kill = "
 #ifdef JP
 note_kill = "À¸¤­Ê֤ä¿¡£";
 #else
-                                       note_kill = "rivived.";
+                                       note_kill = " revived.";
 #endif
                                                }
                                                else if (!note_kill)
@@ -3548,29 +3556,32 @@ msg_format("%^s
                        /* No overflow */
                        if (m_ptr->hp > m_ptr->maxhp) m_ptr->hp = m_ptr->maxhp;
 
-                       chg_virtue(V_VITALITY, 1);
-                       
-                       if (r_ptr->flags1 & RF1_UNIQUE)
-                               chg_virtue(V_INDIVIDUALISM, 1);
-       
-                       if (is_friendly(m_ptr))
-                               chg_virtue(V_HONOUR, 1);
-                       else if (!(r_ptr->flags3 & RF3_EVIL))
+                       if (!who)
                        {
-                               if (r_ptr->flags3 & RF3_GOOD)
-                                       chg_virtue(V_COMPASSION, 2);
-                               else
-                                       chg_virtue(V_COMPASSION, 1);
+                               chg_virtue(V_VITALITY, 1);
+
+                               if (r_ptr->flags1 & RF1_UNIQUE)
+                                       chg_virtue(V_INDIVIDUALISM, 1);
+
+                               if (is_friendly(m_ptr))
+                                       chg_virtue(V_HONOUR, 1);
+                               else if (!(r_ptr->flags3 & RF3_EVIL))
+                               {
+                                       if (r_ptr->flags3 & RF3_GOOD)
+                                               chg_virtue(V_COMPASSION, 2);
+                                       else
+                                               chg_virtue(V_COMPASSION, 1);
+                               }
+
+                               if (r_ptr->flags3 & RF3_ANIMAL)
+                                       chg_virtue(V_NATURE, 1);
                        }
 
                        if (m_ptr->r_idx == MON_LEPER)
                        {
                                heal_leper = TRUE;
-                               chg_virtue(V_COMPASSION, 5);
+                               if (!who) chg_virtue(V_COMPASSION, 5);
                        }
-       
-                       if (r_ptr->flags3 & RF3_ANIMAL)
-                               chg_virtue(V_NATURE, 1);
 
                        /* Redraw (later) if needed */
                        if (p_ptr->health_who == c_ptr->m_idx) p_ptr->redraw |= (PR_HEALTH);
@@ -5049,19 +5060,22 @@ note_dies = "
 
                        if ((r_ptr->flags4 & ~(RF4_NOMAGIC_MASK)) || (r_ptr->flags5 & ~(RF5_NOMAGIC_MASK)) || (r_ptr->flags6 & ~(RF6_NOMAGIC_MASK)))
                        {
-                               /* Message */
+                               if (!who)
+                               {
+                                       /* Message */
 #ifdef JP
-msg_format("%s¤«¤éÀº¿À¥¨¥Í¥ë¥®¡¼¤òµÛ¤¤¤È¤Ã¤¿¡£",m_name);
+                                       msg_format("%s¤«¤éÀº¿À¥¨¥Í¥ë¥®¡¼¤òµÛ¤¤¤È¤Ã¤¿¡£", m_name);
 #else
-                               msg_format("You draw psychic energy from %s.", m_name);
+                                       msg_format("You draw psychic energy from %s.", m_name);
 #endif
 
-                               (void)hp_player(dam);
+                                       (void)hp_player(dam);
+                               }
                        }
                        else
                        {
 #ifdef JP
-msg_format("%s¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£",m_name);
+                               msg_format("%s¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£", m_name);
 #else
                                msg_format("%s is unaffected.", m_name);
 #endif
@@ -5076,9 +5090,9 @@ msg_format("%s
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ò¤¸¤Ã¤Èâˤó¤À¡£",m_name);
+                       if (!who) msg_format("%s¤ò¤¸¤Ã¤Èâˤó¤À¡£", m_name);
 #else
-                       msg_format("You gaze intently at %s.", m_name);
+                       if (!who) msg_format("You gaze intently at %s.", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5104,7 +5118,7 @@ msg_format("%s
                                        if (seen && is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_NO_CONF);
                                }
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5113,8 +5127,8 @@ note = "
                        else
                        {
 #ifdef JP
-msg_format("%s¤ÏÀº¿À¹¶·â¤ò¿©¤é¤Ã¤¿¡£",m_name);
-note_dies = "¤ÎÀº¿À¤ÏÊø²õ¤·¡¢ÆùÂΤÏÈ´¤±³Ì¤È¤Ê¤Ã¤¿¡£";
+                               msg_format("%s¤ÏÀº¿À¹¶·â¤ò¿©¤é¤Ã¤¿¡£", m_name);
+                               note_dies = "¤ÎÀº¿À¤ÏÊø²õ¤·¡¢ÆùÂΤÏÈ´¤±³Ì¤È¤Ê¤Ã¤¿¡£";
 #else
                                msg_format("%^s is blasted by psionic energy.", m_name);
                                note_dies = " collapses, a mindless husk.";
@@ -5131,9 +5145,9 @@ note_dies = "
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ò¤¸¤Ã¤Èâˤó¤À¡£",m_name);
+                       if (!who) msg_format("%s¤ò¤¸¤Ã¤Èâˤó¤À¡£", m_name);
 #else
-                       msg_format("You gaze intently at %s.", m_name);
+                       if (!who) msg_format("You gaze intently at %s.", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5159,7 +5173,7 @@ msg_format("%s
                                        if (seen && is_original_ap(m_ptr)) r_ptr->r_flags3 |= (RF3_NO_CONF);
                                }
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5168,8 +5182,8 @@ note = "
                        else
                        {
 #ifdef JP
-msg_format("%s¤ÏÀº¿À¹¶·â¤ò¿©¤é¤Ã¤¿¡£",m_name);
-note_dies = "¤ÎÀº¿À¤ÏÊø²õ¤·¡¢ÆùÂΤÏÈ´¤±³Ì¤È¤Ê¤Ã¤¿¡£";
+                               msg_format("%s¤ÏÀº¿À¹¶·â¤ò¿©¤é¤Ã¤¿¡£", m_name);
+                               note_dies = "¤ÎÀº¿À¤ÏÊø²õ¤·¡¢ÆùÂΤÏÈ´¤±³Ì¤È¤Ê¤Ã¤¿¡£";
 #else
                                msg_format("%^s is blasted by psionic energy.", m_name);
                                note_dies = " collapses, a mindless husk.";
@@ -5190,9 +5204,9 @@ note_dies = "
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ò»Øº¹¤·¤Æ¼ö¤¤¤ò¤«¤±¤¿¡£",m_name);
+                       if (!who) msg_format("%s¤ò»Øº¹¤·¤Æ¼ö¤¤¤ò¤«¤±¤¿¡£", m_name);
 #else
-                       msg_format("You point at %s and curses.", m_name);
+                       if (!who) msg_format("You point at %s and curse.", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5210,9 +5224,8 @@ msg_format("%s
                        /* Attempt a saving throw */
                        if (randint0(100 + caster_lev) < (r_ptr->level + 35))
                        {
-
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5227,9 +5240,9 @@ note = "
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ò»Øº¹¤·¤Æ¶²¤í¤·¤²¤Ë¼ö¤¤¤ò¤«¤±¤¿¡£",m_name);
+                       if (!who) msg_format("%s¤ò»Øº¹¤·¤Æ¶²¤í¤·¤²¤Ë¼ö¤¤¤ò¤«¤±¤¿¡£", m_name);
 #else
-                       msg_format("You point at %s and curses horribly.", m_name);
+                       if (!who) msg_format("You point at %s and curse horribly.", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5247,9 +5260,8 @@ msg_format("%s
                        /* Attempt a saving throw */
                        if (randint0(100 + caster_lev) < (r_ptr->level + 35))
                        {
-
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5264,9 +5276,9 @@ note = "
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ò»Øº¹¤·¡¢¶²¤·¤²¤Ë¼öʸ¤ò¾§¤¨¤¿¡ª",m_name);
+                       if (!who) msg_format("%s¤ò»Øº¹¤·¡¢¶²¤í¤·¤²¤Ë¼öʸ¤ò¾§¤¨¤¿¡ª", m_name);
 #else
-                       msg_format("You point at %s, incanting terribly!", m_name);
+                       if (!who) msg_format("You point at %s, incanting terribly!", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5284,9 +5296,8 @@ msg_format("%s
                        /* Attempt a saving throw */
                        if (randint0(100 + caster_lev) < (r_ptr->level + 35))
                        {
-
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5301,9 +5312,9 @@ note = "
                        if (seen) obvious = TRUE;
                        /* Message */
 #ifdef JP
-msg_format("%s¤ÎÈ빦¤òÆͤ¤¤Æ¡¢¡Ö¤ªÁ°¤Ï´û¤Ë»à¤ó¤Ç¤¤¤ë¡×¤È¶«¤ó¤À¡£",m_name);
+                       if (!who) msg_format("%s¤ÎÈ빦¤òÆͤ¤¤Æ¡¢¡Ö¤ªÁ°¤Ï´û¤Ë»à¤ó¤Ç¤¤¤ë¡×¤È¶«¤ó¤À¡£", m_name);
 #else
-                       msg_format("You point at %s, screaming th word, 'DIE!'.", m_name);
+                       if (!who) msg_format("You point at %s, screaming the word, 'DIE!'.", m_name);
 #endif
 
                        if (r_ptr->flagsr & RFR_RES_ALL)
@@ -5319,11 +5330,10 @@ msg_format("%s
                        }
 
                        /* Attempt a saving throw */
-                       if (randint0(100 + caster_lev) < (r_ptr->level + 35))
+                       if ((randint0(100 + caster_lev) < (r_ptr->level + 35)) && ((who <= 0) || (m_list[who].r_idx != MON_KENSHIROU)))
                        {
-
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
 #else
                                note = "is unaffected!";
 #endif
@@ -5688,9 +5698,9 @@ note = "
                case GF_PHOTO:
                {
 #ifdef JP
-                       msg_format("%s¤ò¼Ì¿¿¤Ë»£¤Ã¤¿¡£",m_name);
+                       if (!who) msg_format("%s¤ò¼Ì¿¿¤Ë»£¤Ã¤¿¡£", m_name);
 #else
-                       msg_format("You take a photograph of %s.",m_name);
+                       if (!who) msg_format("You take a photograph of %s.", m_name);
 #endif
                        /* Hurt by light */
                        if (r_ptr->flags3 & (RF3_HURT_LITE))
@@ -5706,8 +5716,8 @@ note = "
 
                                /* Special effect */
 #ifdef JP
-note = "¤Ï¸÷¤Ë¿È¤ò¤¹¤¯¤á¤¿¡ª";
-note_dies = "¤Ï¸÷¤ò¼õ¤±¤Æ¤·¤Ü¤ó¤Ç¤·¤Þ¤Ã¤¿¡ª";
+                               note = "¤Ï¸÷¤Ë¿È¤ò¤¹¤¯¤á¤¿¡ª";
+                               note_dies = "¤Ï¸÷¤ò¼õ¤±¤Æ¤·¤Ü¤ó¤Ç¤·¤Þ¤Ã¤¿¡ª";
 #else
                                note = " cringes from the light!";
                                note_dies = " shrivels away in the light!";
@@ -5896,181 +5906,179 @@ note = "
                /* Extract method of death */
                note = note_dies;
        }
-
-       /* Mega-Hack -- Handle "polymorph" -- monsters get a saving throw */
-       else if (do_poly && (randint1(90) > r_ptr->level))
+       else
        {
-               if (polymorph_monster(y, x))
+               /* Sound and Impact breathers never stun */
+               if (do_stun &&
+                   !(r_ptr->flagsr & (RFR_RES_SOUN | RFR_RES_WALL)) &&
+                   !(r_ptr->flags3 & RF3_NO_STUN))
                {
                        /* Obvious */
                        if (seen) obvious = TRUE;
 
-                       /* Monster polymorphs */
+                       /* Get confused */
+                       if (m_ptr->stunned)
+                       {
 #ifdef JP
-                       note = "¤¬ÊѿȤ·¤¿¡ª";
+                               note = "¤Ï¤Ò¤É¤¯¤â¤¦¤í¤¦¤È¤·¤¿¡£";
 #else
-                       note = " changes!";
+                               note = " is more dazed.";
 #endif
 
+                               tmp = m_ptr->stunned + (do_stun / 2);
+                       }
+                       else
+                       {
+#ifdef JP
+                               note = "¤Ï¤â¤¦¤í¤¦¤È¤·¤¿¡£";
+#else
+                               note = " is dazed.";
+#endif
 
-                       /* Turn off the damage */
-                       dam = 0;
+                               tmp = do_stun;
+                       }
 
-                       /* Hack -- Get new monster */
-                       m_ptr = &m_list[c_ptr->m_idx];
+                       /* Apply stun */
+                       m_ptr->stunned = (tmp < 200) ? tmp : 200;
 
-                       /* Hack -- Get new race */
-                       r_ptr = &r_info[m_ptr->r_idx];
+                       /* Get angry */
+                       get_angry = TRUE;
                }
-               else
+
+               /* Confusion and Chaos breathers (and sleepers) never confuse */
+               if (do_conf &&
+                        !(r_ptr->flags3 & RF3_NO_CONF) &&
+                        !(r_ptr->flagsr & RFR_EFF_RES_CHAO_MASK))
                {
-                       /* No polymorph */
+                       /* Obvious */
+                       if (seen) obvious = TRUE;
+
+                       /* Already partially confused */
+                       if (m_ptr->confused)
+                       {
 #ifdef JP
-note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª";
+                               note = "¤Ï¤µ¤é¤Ëº®Í𤷤¿¤è¤¦¤À¡£";
 #else
-                       note = " is unaffected!";
+                               note = " looks more confused.";
 #endif
 
-               }
-       }
-
-       /* Handle "teleport" */
-       else if (do_dist)
-       {
-               /* Obvious */
-               if (seen) obvious = TRUE;
+                               tmp = m_ptr->confused + (do_conf / 2);
+                       }
 
-               /* Message */
+                       /* Was not confused */
+                       else
+                       {
 #ifdef JP
-               note = "¤¬¾Ã¤¨µî¤Ã¤¿¡ª";
+                               note = "¤Ïº®Í𤷤¿¤è¤¦¤À¡£";
 #else
-               note = " disappears!";
+                               note = " looks confused.";
 #endif
 
-               chg_virtue(V_VALOUR, -1);
+                               tmp = do_conf;
+                       }
 
-               /* Teleport */
-               teleport_away(c_ptr->m_idx, do_dist, (bool)(!who));
+                       /* Apply confusion */
+                       m_ptr->confused = (tmp < 200) ? tmp : 200;
 
-               /* Hack -- get new location */
-               y = m_ptr->fy;
-               x = m_ptr->fx;
+                       /* Get angry */
+                       get_angry = TRUE;
+               }
 
-               /* Hack -- get new grid */
-               c_ptr = &cave[y][x];
-       }
+               if (do_time)
+               {
+                       /* Obvious */
+                       if (seen) obvious = TRUE;
 
-       /* Sound and Impact resisters never stun */
-       else if (do_stun &&
-           !(r_ptr->flagsr & (RFR_RES_SOUN | RFR_RES_WALL)) &&
-           !(r_ptr->flags3 & RF3_NO_STUN))
-       {
-               /* Obvious */
-               if (seen) obvious = TRUE;
+                       if (do_time >= m_ptr->maxhp) do_time = m_ptr->maxhp - 1;
 
-               /* Get stunned */
-               if (m_ptr->stunned)
-               {
+                       if (do_time)
+                       {
 #ifdef JP
-                       note = "¤Ï¤Ò¤É¤¯¤â¤¦¤í¤¦¤È¤·¤¿¡£";
+                               note = "¤Ï¼å¤¯¤Ê¤Ã¤¿¤è¤¦¤À¡£";
 #else
-                       note = " is more dazed.";
+                               note = " seems weakened.";
 #endif
-
-                       tmp = m_ptr->stunned + (do_stun / 2);
+                               m_ptr->maxhp -= do_time;
+                               if ((m_ptr->hp - dam) > m_ptr->maxhp) dam = m_ptr->hp - m_ptr->maxhp;
+                       }
+                       get_angry = TRUE;
                }
-               else
+
+               /* Mega-Hack -- Handle "polymorph" -- monsters get a saving throw */
+               if (do_poly && (randint1(90) > r_ptr->level))
                {
+                       if (polymorph_monster(y, x))
+                       {
+                               /* Obvious */
+                               if (seen) obvious = TRUE;
+
+                               /* Monster polymorphs */
 #ifdef JP
-                       note = "¤Ï¤â¤¦¤í¤¦¤È¤·¤¿¡£";
+                               note = "¤¬ÊѿȤ·¤¿¡ª";
 #else
-                       note = " is dazed.";
+                               note = " changes!";
 #endif
 
-                       tmp = do_stun;
-               }
-
-               /* Apply stun */
-               m_ptr->stunned = (tmp < 200) ? tmp : 200;
-
-               /* Get angry */
-               get_angry = TRUE;
-       }
-
-       /* Confusion and Chaos resisters (and sleepers) never confuse */
-       else if (do_conf &&
-                !(r_ptr->flags3 & RF3_NO_CONF) &&
-                !(r_ptr->flagsr & RFR_EFF_RES_CHAO_MASK))
-       {
-               /* Obvious */
-               if (seen) obvious = TRUE;
-
-               /* Already partially confused */
-               if (m_ptr->confused)
-               {
+                               /* Turn off the damage */
+                               dam = 0;
+                       }
+                       else
+                       {
+                               /* No polymorph */
 #ifdef JP
-                       note = "¤Ï¤µ¤é¤Ëº®Í𤷤¿¤è¤¦¤À¡£";
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª";
 #else
-                       note = " looks more confused.";
+                               note = " is unaffected!";
 #endif
+                       }
 
-                       tmp = m_ptr->confused + (do_conf / 2);
+                       /* Hack -- Get new monster */
+                       m_ptr = &m_list[c_ptr->m_idx];
+
+                       /* Hack -- Get new race */
+                       r_ptr = &r_info[m_ptr->r_idx];
                }
 
-               /* Was not confused */
-               else
+               /* Handle "teleport" */
+               if (do_dist)
                {
+                       /* Obvious */
+                       if (seen) obvious = TRUE;
+
+                       /* Message */
 #ifdef JP
-                       note = "¤Ïº®Í𤷤¿¤è¤¦¤À¡£";
+                       note = "¤¬¾Ã¤¨µî¤Ã¤¿¡ª";
 #else
-                       note = " looks confused.";
+                       note = " disappears!";
 #endif
 
-                       tmp = do_conf;
-               }
+                       if (!who) chg_virtue(V_VALOUR, -1);
 
-               /* Apply confusion */
-               m_ptr->confused = (tmp < 200) ? tmp : 200;
+                       /* Teleport */
+                       teleport_away(c_ptr->m_idx, do_dist, (bool)(!who));
 
-               /* Get angry */
-               get_angry = TRUE;
-       }
-
-       else if (do_time)
-       {
-               /* Obvious */
-               if (seen) obvious = TRUE;
+                       /* Hack -- get new location */
+                       y = m_ptr->fy;
+                       x = m_ptr->fx;
 
-               if (do_time >= m_ptr->maxhp) do_time = m_ptr->maxhp - 1;
-
-               if (do_time)
-               {
-#ifdef JP
-                       note = "¤Ï¼å¤¯¤Ê¤Ã¤¿¤è¤¦¤À¡£";
-#else
-                       note = " seems weakened.";
-#endif
-                       m_ptr->maxhp -= do_time;
-                       if ((m_ptr->hp - dam) > m_ptr->maxhp) dam = m_ptr->hp - m_ptr->maxhp;
+                       /* Hack -- get new grid */
+                       c_ptr = &cave[y][x];
                }
-               get_angry = TRUE;
-       }
-
 
-       /* Fear */
-       if (do_fear)
-       {
-               /* Increase fear */
-               tmp = m_ptr->monfear + do_fear;
+               /* Fear */
+               if (do_fear)
+               {
+                       /* Increase fear */
+                       tmp = m_ptr->monfear + do_fear;
 
-               /* Set fear */
-               m_ptr->monfear = (tmp < 200) ? tmp : 200;
+                       /* Set fear */
+                       m_ptr->monfear = (tmp < 200) ? tmp : 200;
 
-               /* Get angry */
-               get_angry = TRUE;
+                       /* Get angry */
+                       get_angry = TRUE;
+               }
        }
 
-
        /* If another monster did the damage, hurt the monster by hand */
        if (who)
        {
@@ -6476,19 +6484,27 @@ static bool project_p(int who, cptr who_name, int r, int y, int x, int dam, int
 
 
                /* Choose 'new' target */
-               do
+               if (who > 0)
                {
-                       t_y = m_list[who].fy - 1 + randint1(3);
-                       t_x = m_list[who].fx - 1 + randint1(3);
-                       max_attempts--;
-               }
-               while (max_attempts && in_bounds2u(t_y, t_x) &&
-                    !(player_has_los_bold(t_y, t_x)));
+                       do
+                       {
+                               t_y = m_list[who].fy - 1 + randint1(3);
+                               t_x = m_list[who].fx - 1 + randint1(3);
+                               max_attempts--;
+                       }
+                       while (max_attempts && in_bounds2u(t_y, t_x) &&
+                            !(player_has_los_bold(t_y, t_x)));
 
-               if (max_attempts < 1)
+                       if (max_attempts < 1)
+                       {
+                               t_y = m_list[who].fy;
+                               t_x = m_list[who].fx;
+                       }
+               }
+               else
                {
-                       t_y = m_list[who].fy;
-                       t_x = m_list[who].fx;
+                       t_y = py - 1 + randint1(3);
+                       t_x = px - 1 + randint1(3);
                }
 
                project(0, 0, t_y, t_x, dam, typ, (PROJECT_STOP|PROJECT_KILL|PROJECT_REFLECTABLE), monspell);
@@ -6522,13 +6538,29 @@ static bool project_p(int who, cptr who_name, int r, int y, int x, int dam, int
                /* Get the monster's real name (gotten before polymorph!) */
                strcpy(killer, who_name);
        }
-       else if (who < 0)
+       else
        {
+               switch (who)
+               {
+               case PROJECT_WHO_UNCTRL_POWER:
 #ifdef JP
-               strcpy(killer, "æ«");
+                       strcpy(killer, "À©¸æ¤Ç¤­¤Ê¤¤ÎϤÎÈÅή");
 #else
-               strcpy(killer, "a trap");
+                       strcpy(killer, "uncontrollable power storm");
 #endif
+                       break;
+
+               default:
+#ifdef JP
+                       strcpy(killer, "æ«");
+#else
+                       strcpy(killer, "a trap");
+#endif
+                       break;
+               }
+
+               /* Paranoia */
+               strcpy(m_name, killer);
        }
 
        /* Analyze the damage */
@@ -6723,7 +6755,7 @@ if (fuzzy) msg_print("
                case GF_PLASMA:
                {
 #ifdef JP
-if (fuzzy) msg_print("²¿¤«¤È¤Æ¤âÇ®¤¤¤â¤Î¤Ç¤Ç¹¶·â¤µ¤ì¤¿¡ª");
+                       if (fuzzy) msg_print("²¿¤«¤È¤Æ¤âÇ®¤¤¤â¤Î¤Ç¹¶·â¤µ¤ì¤¿¡ª");
 #else
                        if (fuzzy) msg_print("You are hit by something *HOT*!");
 #endif
@@ -6933,7 +6965,7 @@ if (fuzzy) msg_print("
                case GF_DISENCHANT:
                {
 #ifdef JP
-if (fuzzy) msg_print("²¿¤«¤µ¤¨¤Ê¤¤¤â¤Î¤Ç¤Ç¹¶·â¤µ¤ì¤¿¡ª");
+                       if (fuzzy) msg_print("²¿¤«¤µ¤¨¤Ê¤¤¤â¤Î¤Ç¹¶·â¤µ¤ì¤¿¡ª");
 #else
                        if (fuzzy) msg_print("You are hit by something static!");
 #endif
@@ -7214,8 +7246,8 @@ msg_print("
                case GF_GRAVITY:
                {
 #ifdef JP
-if (fuzzy) msg_print("²¿¤«½Å¤¤¤â¤Î¤Ç¤Ç¹¶·â¤µ¤ì¤¿¡ª");
-msg_print("¼þÊդνÅÎϤ¬¤æ¤¬¤ó¤À¡£");
+                       if (fuzzy) msg_print("²¿¤«½Å¤¤¤â¤Î¤Ç¹¶·â¤µ¤ì¤¿¡ª");
+                       msg_print("¼þÊդνÅÎϤ¬¤æ¤¬¤ó¤À¡£");
 #else
                        if (fuzzy) msg_print("You are hit by something heavy!");
                        msg_print("Gravity warps around you.");
@@ -7657,7 +7689,7 @@ msg_print("
                }
        }
 
-       if (p_ptr->tim_eyeeye && get_damage > 0 && !p_ptr->is_dead)
+       if (p_ptr->tim_eyeeye && get_damage > 0 && !p_ptr->is_dead && (who > 0))
        {
 #ifdef JP
                msg_format("¹¶·â¤¬%s¼«¿È¤ò½ý¤Ä¤±¤¿¡ª", m_name);
@@ -7960,13 +7992,13 @@ static bool do_disintegration(int by, int bx, int y, int x)
 
        /* Disintegration balls explosions are stopped by perma-walls */
        if (!in_disintegration_range(by, bx, y, x)) return FALSE;
-                                               
-       /* Permanent walls and artifacts don't get effect */
-       /* But not protect monsters and other objects */
-       if (!cave_valid_bold(y, x)) return TRUE;
 
        /* Destroy mirror/glyph */
-       remove_mirror(y,x);
+       remove_mirror(y, x);
+
+       /* Permanent walls and artifacts don't get effect */
+       /* But not protect monsters and other objects */
+       if (cave_perma_bold(y, x)) return TRUE;
 
        feat = cave[y][x].feat;
 
@@ -7998,8 +8030,7 @@ void breath_shape(u16b *path_g, int dist, int *pgrids, byte *gx, byte *gy, byte
        int bdis = 0;
        int cdis;
        int path_n = 0;
-       int tdis = distance(y1, x1, y2, x2);
-       int mdis = tdis + rad;
+       int mdis = distance(y1, x1, y2, x2) + rad;
 
        while (bdis <= mdis)
        {
@@ -8681,7 +8712,7 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                }
 
                /* Only do visuals if requested */
-               if (!blind && !(flg & (PROJECT_HIDE)) && !(flg & PROJECT_FAST))
+               if (!blind && !(flg & (PROJECT_HIDE | PROJECT_FAST)))
                {
                        /* Only do visuals if the player can "see" the bolt */
                        if (panel_contains(y, x) && player_has_los_bold(y, x))
@@ -8733,14 +8764,16 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                }
        }
 
+       path_n = i;
+
        /* Save the "blast epicenter" */
        by = y;
        bx = x;
 
-       if (breath && (y1 == by) && (x1 == bx))
+       if (breath && !path_n)
        {
                breath = FALSE;
-               gm_rad = 1;
+               gm_rad = rad;
                if (!old_hide)
                {
                        flg &= ~(PROJECT_HIDE);
@@ -9033,9 +9066,8 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                                        }
 
                                        /* Reflected bolts randomly target either one */
-                                       flg &= ~(PROJECT_MONSTER | PROJECT_PLAYER);
-                                       if (one_in_(2)) flg |= PROJECT_MONSTER;
-                                       else flg |= PROJECT_PLAYER;
+                                       if (one_in_(2)) flg |= PROJECT_PLAYER;
+                                       else flg &= ~(PROJECT_PLAYER);
 
                                        /* The bolt is reflected */
                                        project(cave[y][x].m_idx, 0, t_y, t_x, dam, typ, flg, monspell);
@@ -9063,7 +9095,7 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                                /* Aimed on the player */
                                if (flg & PROJECT_PLAYER)
                                {
-                                       if (flg & (PROJECT_BEAM | PROJECT_REFLECTABLE))
+                                       if (flg & (PROJECT_BEAM | PROJECT_REFLECTABLE | PROJECT_AIMED))
                                        {
                                                /*
                                                 * A beam or bolt is well aimed
@@ -9084,8 +9116,9 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
 
                                /*
                                 * This grid is the original target.
+                                * Or aimed on your horse.
                                 */
-                               else if ((y == y2) || (x == x2))
+                               else if (((y == y2) && (x == x2)) || (flg & PROJECT_AIMED))
                                {
                                        /* Hit the mount with full damage */
                                }
@@ -9109,9 +9142,8 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                                        else
                                        {
                                                /* Hit the player later */
-                                               flg &= ~(PROJECT_MONSTER);
                                                flg |= PROJECT_PLAYER;
-                                                       
+
                                                /* Don't affect the mount */
                                                continue;
                                        }
@@ -9203,8 +9235,10 @@ bool project(int who, int rad, int y, int x, int dam, int typ, int flg, int mons
                                 *
                                 * But already choosen to hit the
                                 * mount at this point.
+                                *
+                                * Or aimed on your horse.
                                 */
-                               else if (flg & (PROJECT_BEAM | PROJECT_REFLECTABLE))
+                               else if (flg & (PROJECT_BEAM | PROJECT_REFLECTABLE | PROJECT_AIMED))
                                {
                                        /*
                                         * A beam or bolt is well aimed
index 42e8991..e2b71e5 100644 (file)
@@ -749,7 +749,7 @@ info[i++] = "
                        break;
                case CLASS_BEASTMASTER:
 #ifdef JP
-info[i++] = "¤¢¤Ê¤¿¤Ï1ɤ¤ÎÀ¸Ì¿¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤ò»ÙÇÛ¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£(¥ì¥Ù¥ë/4 MP)";
+info[i++] = "¤¢¤Ê¤¿¤Ï1ÂΤÎÀ¸Ì¿¤Î¤¢¤ë¥â¥ó¥¹¥¿¡¼¤ò»ÙÇÛ¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£(¥ì¥Ù¥ë/4 MP)";
 #else
                        info[i++] = "You can dominate a monster (cost level/4).";
 #endif
@@ -4765,7 +4765,7 @@ bool symbol_genocide(int power, int player_cast)
        int     msec = delay_factor * delay_factor * delay_factor;
 
        /* Prevent genocide in quest levels */
-       if (p_ptr->inside_quest && !random_quest_number(dun_level))
+       if ((p_ptr->inside_quest && !random_quest_number(dun_level)) || p_ptr->inside_arena || p_ptr->inside_battle)
        {
                return (FALSE);
        }
@@ -4903,7 +4903,7 @@ bool mass_genocide(int power, int player_cast)
 
 
        /* Prevent mass genocide in quest levels */
-       if (p_ptr->inside_quest && !random_quest_number(dun_level))
+       if ((p_ptr->inside_quest && !random_quest_number(dun_level)) || p_ptr->inside_arena || p_ptr->inside_battle)
        {
                return (FALSE);
        }
@@ -5034,7 +5034,7 @@ bool mass_genocide_undead(int power, int player_cast)
 
 
        /* Prevent mass genocide in quest levels */
-       if (p_ptr->inside_quest && !random_quest_number(dun_level))
+       if ((p_ptr->inside_quest && !random_quest_number(dun_level)) || p_ptr->inside_arena || p_ptr->inside_battle)
        {
                return (FALSE);
        }
@@ -5119,7 +5119,7 @@ msg_format("%^s
 #ifdef JP
 take_hit(DAMAGE_GENO, randint1(3), "¥¢¥ó¥Ç¥Ã¥É¾ÃÌǤμöʸ¤ò¾§¤¨¤¿ÈèÏ«", -1);
 #else
-                       take_hit(DAMAGE_GENO, randint1(3), "the strain of casting Mass Genocide", -1);
+                       take_hit(DAMAGE_GENO, randint1(3), "the strain of casting Annihilate Undead", -1);
 #endif
 
                }
@@ -5279,15 +5279,15 @@ sprintf(buf, "%s ... align:%s HP:%d/%d AC:%d speed:%s%d exp:", m_name, align, m_
                        /* Learn everything about this monster */
                        if (lore_do_probe(m_ptr->r_idx))
                        {
-#ifdef JP
-                               /* Note that we learnt some new flags  -Mogami- */
-                               msg_format("%s¤Ë¤Ä¤¤¤Æ¤µ¤é¤Ë¾Ü¤·¤¯¤Ê¤Ã¤¿µ¤¤¬¤¹¤ë¡£", m_name);
-#else
                                char buf[80];
 
                                /* Get base name of monster */
                                strcpy(buf, (r_name + r_ptr->name));
 
+#ifdef JP
+                               /* Note that we learnt some new flags  -Mogami- */
+                               msg_format("%s¤Ë¤Ä¤¤¤Æ¤µ¤é¤Ë¾Ü¤·¤¯¤Ê¤Ã¤¿µ¤¤¬¤¹¤ë¡£", buf);
+#else
                                /* Pluralize it */
                                plural_aux(buf);
 
@@ -5346,6 +5346,9 @@ bool destroy_area(int y1, int x1, int r, bool in_generate)
                return (FALSE);
        }
 
+       /* Lose monster light */
+       clear_mon_lite();
+
        /* Big area of affect */
        for (y = (y1 - r); y <= (y1 + r); y++)
        {
@@ -5372,7 +5375,7 @@ bool destroy_area(int y1, int x1, int r, bool in_generate)
                        if (!in_generate) /* Normal */
                        {
                                /* Lose unsafety and runes/mirrors */
-                               c_ptr->info &= ~(CAVE_UNSAFE | CAVE_OBJECT);
+                               c_ptr->info &= ~(CAVE_UNSAFE);
 
                                /* Hack -- Notice player affect */
                                if (player_bold(y, x))
@@ -5380,13 +5383,22 @@ bool destroy_area(int y1, int x1, int r, bool in_generate)
                                        /* Hurt the player later */
                                        flag = TRUE;
 
+                                       /* Process "re-glowing" */
+                                       if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
+
                                        /* Do not hurt this grid */
                                        continue;
                                }
                        }
 
                        /* Hack -- Skip the epicenter */
-                       if ((y == y1) && (x == x1)) continue;
+                       if ((y == y1) && (x == x1))
+                       {
+                               /* Process "re-glowing" */
+                               if (!in_generate && is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
+
+                               continue;
+                       }
 
                        if (c_ptr->m_idx)
                        {
@@ -5404,7 +5416,13 @@ bool destroy_area(int y1, int x1, int r, bool in_generate)
                                        m_ptr->hp = m_ptr->maxhp;
 
                                        /* Try to teleport away quest monsters */
-                                       if (!teleport_away(c_ptr->m_idx, (r * 2) + 1, TRUE)) continue;
+                                       if (!teleport_away(c_ptr->m_idx, (r * 2) + 1, TRUE))
+                                       {
+                                               /* Process "re-glowing" */
+                                               if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
+
+                                               continue;
+                                       }
                                }
                                else
                                {
@@ -5642,10 +5660,22 @@ bool earthquake(int cy, int cx, int r)
                        c_ptr->info &= ~(CAVE_GLOW | CAVE_MARK);
 
                        /* Skip the epicenter */
-                       if (!dx && !dy) continue;
+                       if (!dx && !dy)
+                       {
+                               /* Process "re-glowing" */
+                               if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
+
+                               continue;
+                       }
 
                        /* Skip most grids */
-                       if (randint0(100) < 85) continue;
+                       if (randint0(100) < 85)
+                       {
+                               /* Process "re-glowing" */
+                               if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
+
+                               continue;
+                       }
 
                        /* Damage this grid */
                        map[16+yy-cy][16+xx-cx] = TRUE;
@@ -5973,6 +6003,8 @@ msg_format("%^s
                }
        }
 
+       /* Lose monster light */
+       clear_mon_lite();
 
        /* Examine the quaked region */
        for (dy = -r; dy <= r; dy++)
@@ -6000,9 +6032,6 @@ msg_format("%^s
                                /* Delete objects */
                                delete_object(yy, xx);
 
-                               /* Clear mirror, runes flag */
-                               c_ptr->info &= ~CAVE_OBJECT;
-
                                /* Wall (or floor) type */
                                t = (floor ? randint0(100) : 200);
 
@@ -6109,7 +6138,7 @@ void discharge_minion(void)
                if (dam > 800) dam = 800;
                project(i, 2+(r_ptr->level/20), m_ptr->fy,
                        m_ptr->fx, dam, GF_PLASMA, 
-                       PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL | PROJECT_MONSTER, -1);
+                       PROJECT_STOP | PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL, -1);
                delete_monster_idx(i);
        }
 }
@@ -6427,6 +6456,11 @@ void lite_room(int y1, int x1)
 
        /* Now, lite them all up at once */
        cave_temp_room_lite();
+
+       if (p_ptr->special_defense & NINJA_S_STEALTH)
+       {
+               if (cave[py][px].info & CAVE_GLOW) set_superstealth(FALSE);
+       }
 }
 
 
@@ -6502,11 +6536,6 @@ msg_print("
        /* Lite up the room */
        lite_room(py, px);
 
-       if (p_ptr->special_defense & NINJA_S_STEALTH)
-       {
-               set_superstealth(FALSE);
-       }
-
        /* Assume seen */
        return (TRUE);
 }
@@ -6868,9 +6897,9 @@ bool project_hook(int typ, int dir, int dam, int flg)
 
 
 /*
- * Cast a bolt spell
- * Stop if we hit a monster, as a "bolt"
- * Affect monsters (not grids or objects)
+ * Cast a bolt spell.
+ * Stop if we hit a monster, as a "bolt".
+ * Affect monsters and grids (not objects).
  */
 bool fire_bolt(int typ, int dir, int dam)
 {
@@ -6880,9 +6909,9 @@ bool fire_bolt(int typ, int dir, int dam)
 
 
 /*
- * Cast a beam spell
- * Pass through monsters, as a "beam"
- * Affect monsters (not grids or objects)
+ * Cast a beam spell.
+ * Pass through monsters, as a "beam".
+ * Affect monsters, grids and objects.
  */
 bool fire_beam(int typ, int dir, int dam)
 {
@@ -7654,11 +7683,12 @@ void kawarimi(bool success)
 bool rush_attack(bool *mdeath)
 {
        int dir;
-       int tx, ty, nx, ny;
+       int tx, ty;
        int tm_idx = 0;
        u16b path_g[32];
        int path_n, i;
        bool tmp_mdeath = FALSE;
+       bool moved = FALSE;
 
        if (mdeath) *mdeath = FALSE;
 
@@ -7691,74 +7721,107 @@ bool rush_attack(bool *mdeath)
        /* Project along the path */
        for (i = 0; i < path_n; i++)
        {
-               ny = GRID_Y(path_g[i]);
-               nx = GRID_X(path_g[i]);
+               monster_type *m_ptr;
 
-               if (!cave_empty_bold(ny, nx) || !player_can_enter(cave[ny][nx].feat))
+               int ny = GRID_Y(path_g[i]);
+               int nx = GRID_X(path_g[i]);
+
+               if (cave_empty_bold(ny, nx) && player_can_enter(cave[ny][nx].feat))
                {
-                       if (cave[ny][nx].m_idx)
-                       {
-                               monster_type *m_ptr = &m_list[cave[ny][nx].m_idx];
+                       ty = ny;
+                       tx = nx;
 
-                               if (tm_idx != cave[ny][nx].m_idx)
-                               {
-#ifdef JP
-                                       msg_format("%s%s¤¬Î©¤Á¤Õ¤µ¤¬¤Ã¤Æ¤¤¤ë¡ª", tm_idx ? "Ê̤Î" : "",
-                                               m_ptr->ml ? "¥â¥ó¥¹¥¿¡¼" : "²¿¤«");
-#else
-                                       msg_format("There is %s in the way!", m_ptr->ml ? (tm_idx ? "another monster" : "a monster") :
-                                               "someone");
-#endif
-                               }
-                               else
-                               {
-                                       if (!player_bold(ty, tx))
-                                       {
-                                               /* Hold the monster name */
-                                               char m_name[80];
+                       /* Go to next grid */
+                       continue;
+               }
 
-                                               /* Get the monster name (BEFORE polymorphing) */
-                                               monster_desc(m_name, m_ptr, 0);
+               if (!cave[ny][nx].m_idx)
+               {
+                       if (tm_idx)
+                       {
 #ifdef JP
-                                               msg_format("ÁÇÁ᤯%s¤Î²û¤ËÆþ¤ê¹þ¤ó¤À¡ª", m_name);
+                               msg_print("¼ºÇÔ¡ª");
 #else
-                                               msg_format("You quickly jump in and attack %s!", m_name);
+                               msg_print("Failed!");
 #endif
-                                       }
-                               }
-
-                               tmp_mdeath = py_attack(ny, nx, HISSATSU_NYUSIN);
                        }
                        else
                        {
-                               if (tm_idx)
-                               {
 #ifdef JP
-                                       msg_print("¼ºÇÔ¡ª");
+                               msg_print("¤³¤³¤Ë¤ÏÆþ¿È¤Ç¤ÏÆþ¤ì¤Ê¤¤¡£");
 #else
-                                       msg_print("Failed!");
+                               msg_print("You can't move to that place.");
 #endif
-                               }
-                               else
-                               {
+                       }
+
+                       /* Exit loop */
+                       break;
+               }
+
+               /* Move player before updating the monster */
+               if (!player_bold(ty, tx)) teleport_player_to(ty, tx, FALSE);
+
+               /* Update the monster */
+               update_mon(cave[ny][nx].m_idx, TRUE);
+
+               /* Found a monster */
+               m_ptr = &m_list[cave[ny][nx].m_idx];
+
+               if (tm_idx != cave[ny][nx].m_idx)
+               {
 #ifdef JP
-                                       msg_print("¤³¤³¤Ë¤ÏÆþ¿È¤Ç¤ÏÆþ¤ì¤Ê¤¤¡£");
+                       msg_format("%s%s¤¬Î©¤Á¤Õ¤µ¤¬¤Ã¤Æ¤¤¤ë¡ª", tm_idx ? "Ê̤Î" : "",
+                                  m_ptr->ml ? "¥â¥ó¥¹¥¿¡¼" : "²¿¤«");
 #else
-                                       msg_print("You can't move to that place.");
+                       msg_format("There is %s in the way!", m_ptr->ml ? (tm_idx ? "another monster" : "a monster") : "someone");
 #endif
-                               }
-                       }
-                       break;
                }
-               else
+               else if (!player_bold(ty, tx))
                {
-                       ty = ny;
-                       tx = nx;
+                       /* Hold the monster name */
+                       char m_name[80];
+
+                       /* Get the monster name (BEFORE polymorphing) */
+                       monster_desc(m_name, m_ptr, 0);
+#ifdef JP
+                       msg_format("ÁÇÁ᤯%s¤Î²û¤ËÆþ¤ê¹þ¤ó¤À¡ª", m_name);
+#else
+                       msg_format("You quickly jump in and attack %s!", m_name);
+#endif
                }
+
+               if (!player_bold(ty, tx)) teleport_player_to(ty, tx, FALSE);
+               moved = TRUE;
+               tmp_mdeath = py_attack(ny, nx, HISSATSU_NYUSIN);
+
+               break;
        }
 
-       if (!player_bold(ty, tx)) teleport_player_to(ty, tx, FALSE);
+       if (!moved && !player_bold(ty, tx)) teleport_player_to(ty, tx, FALSE);
 
        if (mdeath) *mdeath = tmp_mdeath;
        return TRUE;
 }
+
+
+/*
+ * Remove all mirrors in this floor
+ */
+void remove_all_mirrors(bool explode)
+{
+       int x, y;
+
+       for (x = 0; x < cur_wid; x++)
+       {
+               for (y = 0; y < cur_hgt; y++)
+               {
+                       if (is_mirror_grid(&cave[y][x]))
+                       {
+                               remove_mirror(y, x);
+                               if (explode)
+                                       project(0, 2, y, x, p_ptr->lev / 2 + 5, GF_SHARDS,
+                                               (PROJECT_GRID | PROJECT_ITEM | PROJECT_KILL | PROJECT_JUMP | PROJECT_NO_HANGEKI), -1);
+                       }
+               }
+       }
+}
index 35f25b7..7955ece 100644 (file)
@@ -134,6 +134,9 @@ bool teleport_away(int m_idx, int dis, bool dec_valour)
        /* Redraw the new grid */
        lite_spot(ny, nx);
 
+       if (r_info[m_ptr->r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+               p_ptr->update |= (PU_MON_LITE);
+
        return (TRUE);
 }
 
@@ -245,7 +248,8 @@ void teleport_monster_to(int m_idx, int ty, int tx, int power)
        /* Redraw the new grid */
        lite_spot(ny, nx);
 
-       p_ptr->update |= (PU_MON_LITE);
+       if (r_info[m_ptr->r_idx].flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
+               p_ptr->update |= (PU_MON_LITE);
 }
 
 
@@ -262,30 +266,28 @@ void teleport_monster_to(int m_idx, int ty, int tx, int power)
  * we decrease the minimum acceptable distance to try to increase randomness.
  * -GJW
  */
-void teleport_player(int dis)
+static bool teleport_player_aux(int dis)
 {
        int d, i, min, ox, oy;
        int tries = 0;
 
-       int xx, yy;
-
        /* Initialize */
        int y = py;
        int x = px;
 
        bool look = TRUE;
 
-       if (p_ptr->wild_mode) return;
+       if (p_ptr->wild_mode) return FALSE;
 
        if (p_ptr->anti_tele)
        {
 #ifdef JP
-msg_print("ÉԻ׵ĤÊÎϤ¬¥Æ¥ì¥Ý¡¼¥È¤òËɤ¤¤À¡ª");
+               msg_print("ÉԻ׵ĤÊÎϤ¬¥Æ¥ì¥Ý¡¼¥È¤òËɤ¤¤À¡ª");
 #else
                msg_print("A mysterious force prevents you from teleporting!");
 #endif
 
-               return;
+               return FALSE;
        }
 
        if (dis > 200) dis = 200; /* To be on the safe side... */
@@ -337,9 +339,11 @@ msg_print("
                min = min / 2;
 
                /* Stop after MAX_TRIES tries */
-               if (tries > MAX_TRIES) return;
+               if (tries > MAX_TRIES) return FALSE;
        }
 
+       if (player_bold(y, x)) return FALSE;
+
        /* Sound */
        sound(SOUND_TELEPORT);
 
@@ -370,6 +374,39 @@ msg_print("
        /* Redraw the old spot */
        lite_spot(oy, ox);
 
+       forget_flow();
+
+       /* Redraw the new spot */
+       lite_spot(py, px);
+
+       /* Check for new panel (redraw map) */
+       verify_panel();
+
+       /* Update stuff */
+       p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MON_LITE);
+
+       /* Update the monsters */
+       p_ptr->update |= (PU_DISTANCE);
+
+       /* Window stuff */
+       p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
+
+       /* Handle stuff XXX XXX XXX */
+       handle_stuff();
+
+       return TRUE;
+}
+
+void teleport_player(int dis)
+{
+       int yy, xx;
+
+       /* Save the old location */
+       int oy = py;
+       int ox = px;
+
+       if (!teleport_player_aux(dis)) return;
+
        /* Monsters with teleport ability may follow the player */
        for (xx = -1; xx < 2; xx++)
        {
@@ -395,30 +432,47 @@ msg_print("
                        }
                }
        }
+}
 
-       forget_flow();
 
-       /* Redraw the new spot */
-       lite_spot(py, px);
+void teleport_player_away(int m_idx, int dis)
+{
+       int yy, xx;
 
-       /* Check for new panel (redraw map) */
-       verify_panel();
+       /* Save the old location */
+       int oy = py;
+       int ox = px;
 
-       /* Update stuff */
-       p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MON_LITE);
+       if (!teleport_player_aux(dis)) return;
 
-       /* Update the monsters */
-       p_ptr->update |= (PU_DISTANCE);
+       /* Monsters with teleport ability may follow the player */
+       for (xx = -1; xx < 2; xx++)
+       {
+               for (yy = -1; yy < 2; yy++)
+               {
+                       int tmp_m_idx = cave[oy+yy][ox+xx].m_idx;
 
-       /* Window stuff */
-       p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
+                       /* A monster except your mount or caster may follow */
+                       if (tmp_m_idx && (p_ptr->riding != tmp_m_idx) && (m_idx != tmp_m_idx))
+                       {
+                               monster_type *m_ptr = &m_list[tmp_m_idx];
+                               monster_race *r_ptr = &r_info[m_ptr->r_idx];
 
-       /* Handle stuff XXX XXX XXX */
-       handle_stuff();
+                               /*
+                                * The latter limitation is to avoid
+                                * totally unkillable suckers...
+                                */
+                               if ((r_ptr->flags6 & RF6_TPORT) &&
+                                   !(r_ptr->flagsr & RFR_RES_TELE))
+                               {
+                                       if (!m_ptr->csleep) teleport_monster_to(tmp_m_idx, py, px, r_ptr->level);
+                               }
+                       }
+               }
+       }
 }
 
 
-
 /*
  * Teleport player to a grid near the given location
  *
@@ -513,6 +567,66 @@ msg_print("
 }
 
 
+void teleport_away_followable(int m_idx)
+{
+       monster_type *m_ptr = &m_list[m_idx];
+       int          oldfy = m_ptr->fy;
+       int          oldfx = m_ptr->fx;
+       bool         old_ml = m_ptr->ml;
+       int          old_cdis = m_ptr->cdis;
+
+       teleport_away(m_idx, MAX_SIGHT * 2 + 5, FALSE);
+
+       if (old_ml && (old_cdis <= MAX_SIGHT) && !world_monster && los(py, px, oldfy, oldfx))
+       {
+               bool follow = FALSE;
+
+               if ((p_ptr->muta1 & MUT1_VTELEPORT) || (p_ptr->pclass == CLASS_IMITATOR)) follow = TRUE;
+               else
+               {
+                       u32b flgs[TR_FLAG_SIZE];
+                       object_type *o_ptr;
+                       int i;
+
+                       for (i = INVEN_RARM; i < INVEN_TOTAL; i++)
+                       {
+                               o_ptr = &inventory[i];
+                               if (o_ptr->k_idx && !cursed_p(o_ptr))
+                               {
+                                       object_flags(o_ptr, flgs);
+                                       if (have_flag(flgs, TR_TELEPORT))
+                                       {
+                                               follow = TRUE;
+                                               break;
+                                       }
+                               }
+                       }
+               }
+
+               if (follow)
+               {
+#ifdef JP
+                       if (get_check_strict("¤Ä¤¤¤Æ¤¤¤­¤Þ¤¹¤«¡©", CHECK_OKAY_CANCEL))
+#else
+                       if (get_check_strict("Do you follow it? ", CHECK_OKAY_CANCEL))
+#endif
+                       {
+                               if (one_in_(3))
+                               {
+                                       teleport_player(200);
+#ifdef JP
+                                       msg_print("¼ºÇÔ¡ª");
+#else
+                                       msg_print("Failed!");
+#endif
+                               }
+                               else teleport_player_to(m_ptr->fy, m_ptr->fx, TRUE);
+                               p_ptr->energy_need += ENERGY_NEED();
+                       }
+               }
+       }
+}
+
 
 /*
  * Teleport the player one level up or down (random when legal)
@@ -688,6 +802,14 @@ void teleport_level(int m_idx)
                /* Check for quest completion */
                check_quest_completion(m_ptr);
 
+               if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
+               {
+                       char m2_name[80];
+
+                       monster_desc(m2_name, m_ptr, MD_INDEF_VISIBLE);
+                       do_cmd_write_nikki(NIKKI_NAMED_PET, 8, m2_name);
+               }
+
                delete_monster_idx(m_idx);
        }
 
@@ -791,7 +913,7 @@ if (get_check("
 #endif
                {
                        max_dlv[dungeon_type] = dun_level;
-                       if (record_maxdeapth)
+                       if (record_maxdepth)
 #ifdef JP
                                do_cmd_write_nikki(NIKKI_TRUMP, dungeon_type, "µ¢´Ô¤Î¤È¤­¤Ë");
 #else
@@ -894,7 +1016,7 @@ sprintf(ppp, "
 
                max_dlv[select_dungeon] = dummy;
 
-               if (record_maxdeapth)
+               if (record_maxdepth)
 #ifdef JP
                        do_cmd_write_nikki(NIKKI_TRUMP, select_dungeon, "¥Õ¥í¥¢¡¦¥ê¥»¥Ã¥È¤Ç");
 #else
@@ -949,6 +1071,9 @@ bool apply_disenchant(int mode)
        /* No item, nothing happens */
        if (!o_ptr->k_idx) return (FALSE);
 
+       /* Disenchant equipments only -- No disenchant on monster ball */
+       if (o_ptr->tval < TV_BOW || TV_CARD < o_ptr->tval)
+               return FALSE;
 
        /* Nothing to disenchant */
        if ((o_ptr->to_h <= 0) && (o_ptr->to_d <= 0) && (o_ptr->to_a <= 0) && (o_ptr->pval <= 1))
@@ -1279,6 +1404,9 @@ act = "
 
                                o_ptr->name2 = EGO_SHARPNESS;
                                o_ptr->pval = m_bonus(5, dun_level) + 1;
+
+                               if ((o_ptr->sval == SV_HAYABUSA) && (o_ptr->pval > 2))
+                                       o_ptr->pval = 2;
                        }
                        else
                        {
@@ -1514,16 +1642,14 @@ static bool vanish_dungeon(void)
                        /* Lose room and vault */
                        c_ptr->info &= ~(CAVE_ROOM | CAVE_ICKY);
 
+                       m_ptr = &m_list[c_ptr->m_idx];
+
                        /* Awake monster */
-                       if (c_ptr->m_idx)
+                       if (c_ptr->m_idx && m_ptr->csleep)
                        {
-                               m_ptr = &m_list[c_ptr->m_idx];
-
                                /* Reset sleep counter */
                                m_ptr->csleep = 0;
 
-                               if (r_info[m_ptr->r_idx].flags7 & RF7_HAS_LD_MASK) p_ptr->update |= (PU_MON_LITE);
-
                                /* Notice the "waking up" */
                                if (m_ptr->ml)
                                {
@@ -3055,7 +3181,7 @@ s = "
        }
 
        /* Describe it fully */
-       (void)screen_object(o_ptr, TRUE);
+       (void)screen_object(o_ptr, 0L);
 
        /* Auto-inscription/destroy */
        idx = is_autopick(o_ptr);
@@ -4140,6 +4266,39 @@ int mod_need_mana(int need_mana, int spell, int realm)
 
 
 /*
+ * Modify spell fail rate
+ * Using p_ptr->to_m_chance, p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell
+ */
+int mod_spell_chance_1(int chance)
+{
+       chance += p_ptr->to_m_chance;
+
+       if (p_ptr->heavy_spell) chance += 20;
+
+       if (p_ptr->dec_mana && p_ptr->easy_spell) chance -= 4;
+       else if (p_ptr->easy_spell) chance -= 3;
+       else if (p_ptr->dec_mana) chance -= 2;
+
+       return chance;
+}
+
+
+/*
+ * Modify spell fail rate (as "suffix" process)
+ * Using p_ptr->dec_mana, p_ptr->easy_spell and p_ptr->heavy_spell
+ * Note: variable "chance" cannot be negative.
+ */
+int mod_spell_chance_2(int chance)
+{
+       if (p_ptr->dec_mana) chance--;
+
+       if (p_ptr->heavy_spell) chance += 5;
+
+       return MAX(chance, 0);
+}
+
+
+/*
  * Returns spell chance of failure for spell -RAK-
  */
 s16b spell_chance(int spell, int use_realm)
@@ -4186,7 +4345,6 @@ s16b spell_chance(int spell, int use_realm)
                chance += 5 * (need_mana - p_ptr->csp);
        }
 
-       chance += p_ptr->to_m_chance;
        if ((use_realm != p_ptr->realm1) && ((p_ptr->pclass == CLASS_MAGE) || (p_ptr->pclass == CLASS_PRIEST))) chance += 5;
 
        /* Extract the minimum failure rate */
@@ -4205,10 +4363,7 @@ s16b spell_chance(int spell, int use_realm)
        if (((p_ptr->pclass == CLASS_PRIEST) || (p_ptr->pclass == CLASS_SORCERER)) && p_ptr->icky_wield[0]) chance += 25;
        if (((p_ptr->pclass == CLASS_PRIEST) || (p_ptr->pclass == CLASS_SORCERER)) && p_ptr->icky_wield[1]) chance += 25;
 
-       if (p_ptr->heavy_spell) chance += 20;
-       if(p_ptr->dec_mana && p_ptr->easy_spell) chance-=4;
-       else if (p_ptr->easy_spell) chance-=3;
-       else if (p_ptr->dec_mana) chance-=2;
+       chance = mod_spell_chance_1(chance);
 
        if ((use_realm == REALM_NATURE) && ((p_ptr->align > 50) || (p_ptr->align < -50))) chance += penalty;
        if (((use_realm == REALM_LIFE) || (use_realm == REALM_CRUSADE)) && (p_ptr->align < -20)) chance += penalty;
@@ -4231,13 +4386,9 @@ s16b spell_chance(int spell, int use_realm)
                if (exp >= SPELL_EXP_EXPERT) chance--;
                if (exp >= SPELL_EXP_MASTER) chance--;
        }
-       if(p_ptr->dec_mana) chance--;
-       if (p_ptr->heavy_spell) chance += 5;
-
-       chance = MAX(chance,0);
 
        /* Return the chance */
-       return (chance);
+       return mod_spell_chance_2(chance);
 }
 
 
@@ -5783,12 +5934,9 @@ bool polymorph_monster(int y, int x)
 /*
  * Dimension Door
  */
-bool dimension_door(void)
+static bool dimension_door_aux(int x, int y)
 {
        int     plev = p_ptr->lev;
-       int     x = 0, y = 0;
-
-       if (!tgt_pt(&x, &y)) return FALSE;
 
        p_ptr->energy_need += (s16b)((s32b)(60 - plev) * ENERGY_NEED() / 100L);
 
@@ -5796,28 +5944,63 @@ bool dimension_door(void)
                (distance(y, x, py, px) > plev / 2 + 10) ||
                (!randint0(plev / 10 + 10)))
        {
-               if( p_ptr->pclass != CLASS_MIRROR_MASTER ){
+               p_ptr->energy_need += (s16b)((s32b)(60 - plev) * ENERGY_NEED() / 100L);
+               teleport_player((plev+2)*2);
+
+               /* Failed */
+               return FALSE;
+       }
+       else
+       {
+               teleport_player_to(y, x, TRUE);
+
+               /* Success */
+               return TRUE;
+       }
+}
+
+
+/*
+ * Dimension Door
+ */
+bool dimension_door(void)
+{
+       int x = 0, y = 0;
+
+       /* Rerutn FALSE if cancelled */
+       if (!tgt_pt(&x, &y)) return FALSE;
+
+       if (dimension_door_aux(x, y)) return TRUE;
+
 #ifdef JP
-                       msg_print("ÀºÎ¤«¤éʪ¼Á³¦¤ËÌá¤ë»þ¤¦¤Þ¤¯¤¤¤«¤Ê¤«¤Ã¤¿¡ª");
+       msg_print("ÀºÎ¤«¤éʪ¼Á³¦¤ËÌá¤ë»þ¤¦¤Þ¤¯¤¤¤«¤Ê¤«¤Ã¤¿¡ª");
 #else
-                       msg_print("You fail to exit the astral plane correctly!");
+       msg_print("You fail to exit the astral plane correctly!");
 #endif
-               }
-               else
-               {
+
+       return TRUE;
+}
+
+
+/*
+ * Mirror Master's Dimension Door
+ */
+bool mirror_tunnel(void)
+{
+       int x = 0, y = 0;
+
+       /* Rerutn FALSE if cancelled */
+       if (!tgt_pt(&x, &y)) return FALSE;
+
+       if (dimension_door_aux(x, y)) return TRUE;
+
 #ifdef JP
-                       msg_print("¶À¤ÎÀ¤³¦¤ò¤¦¤Þ¤¯Ä̤ì¤Ê¤«¤Ã¤¿¡ª");
+       msg_print("¶À¤ÎÀ¤³¦¤ò¤¦¤Þ¤¯Ä̤ì¤Ê¤«¤Ã¤¿¡ª");
 #else
-                       msg_print("You fail to exit the astral plane correctly!");
+       msg_print("You fail to pass the mirror plane correctly!");
 #endif
-               }
-               p_ptr->energy_need += (s16b)((s32b)(60 - plev) * ENERGY_NEED() / 100L);
-               teleport_player((plev+2)*2);
-       }
-       else
-               teleport_player_to(y, x, TRUE);
 
-       return (TRUE);
+       return TRUE;
 }
 
 
index 5beba9f..798a15a 100644 (file)
@@ -53,7 +53,7 @@ static cptr spell_tips[VALID_REALM][32] =
                "¥¢¥¤¥Æ¥à¤ò¼±Ê̤¹¤ë¡£",
                "¥â¥ó¥¹¥¿¡¼1ÂΤò¸ºÂ®¤µ¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤ò̲¤é¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
-               "¥â¥ó¥¹¥¿¡¼1ÂΤò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¥Ó¡¼¥à¤òÊü¤Ä¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "°ìÄê»þ´Ö¡¢²Ã®¤¹¤ë¡£",
                "¶á¤¯¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¡¢æ«¡¢Èâ¡¢³¬ÃÊ¡¢ºâÊõ¡¢¤½¤·¤Æ¥¢¥¤¥Æ¥à¤ò´¶ÃΤ¹¤ë¡£",
                "¥¢¥¤¥Æ¥à¤Î»ý¤ÄǽÎϤò´°Á´¤ËÃΤ롣",
@@ -81,7 +81,7 @@ static cptr spell_tips[VALID_REALM][32] =
                "¶á¤¯¤ÎÁ´¤Æ¤Î¸«¤¨¤ë¥â¥ó¥¹¥¿¡¼¤ò´¶ÃΤ¹¤ë¡£",
                "ÅÅ·â¤Îû¤¤¥Ó¡¼¥à¤òÊü¤Ä¡£",
                "¶á¤¯¤ÎÁ´¤Æ¤Î櫤ÈÈâ¤ò´¶ÃΤ¹¤ë¡£",
-               "ËþÊ¢¤Ë¤Ê¤ë¡£",
+               "¿©ÎÁ¤ò°ì¤Äºî¤ê½Ð¤¹¡£",
                "¸÷¸»¤¬¾È¤é¤·¤Æ¤¤¤ëÈϰϤ«Éô²°Á´ÂΤò±Êµ×¤ËÌÀ¤ë¤¯¤¹¤ë¡£",
                "ưʪ1ÂΤò̥λ¤¹¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "°ìÄê»þ´Ö¡¢Î䵤¡¢±ê¡¢ÅÅ·â¤ËÂФ¹¤ëÂÑÀ­¤òÆÀ¤ë¡£ÁõÈ÷¤Ë¤è¤ëÂÑÀ­¤ËÎßÀѤ¹¤ë¡£",
@@ -130,7 +130,7 @@ static cptr spell_tips[VALID_REALM][32] =
                "¼«Ê¬¤òÃæ¿´¤È¤·¤¿¹ì²»¤Îµå¤òȯÀ¸¤µ¤»¤ë¡£",
                "½ã¿è¤ÊËâÎϤΥӡ¼¥à¤òÊü¤Ä¡£",
                "±ê¤Îµå¤òÊü¤Ä¡£",
-               "¥â¥ó¥¹¥¿¡¼1ÂΤò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¥Ó¡¼¥à¤òÊü¤Ä¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "¼þÊդΥ¢¥¤¥Æ¥à¡¢¥â¥ó¥¹¥¿¡¼¡¢ÃÏ·Á¤òÇ˲õ¤¹¤ë¡£",
                "µðÂç¤Ê¥«¥ª¥¹¤Îµå¤òÊü¤Ä¡£",
 
@@ -198,7 +198,7 @@ static cptr spell_tips[VALID_REALM][32] =
                "ºÇ¿¼³¬¤òÊѹ¹¤¹¤ë¡£",
                "±óµ÷Î¥¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¤¹¤ë¡£",
                "°ìÄê»þ´Ö¡¢¥Æ¥ì¥Ñ¥·¡¼Ç½ÎϤòÆÀ¤ë¡£",
-               "¥â¥ó¥¹¥¿¡¼1ÂΤò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¥Ó¡¼¥à¤òÊü¤Ä¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "1ÂΤÎưʪ¤ò¾¤´­¤¹¤ë¡£",
 
                "¥¢¥¤¥Æ¥à¤ò¼«Ê¬¤Î­¸µ¤Ø°ÜÆ°¤µ¤»¤ë¡£",
@@ -256,11 +256,11 @@ static cptr spell_tips[VALID_REALM][32] =
                "ÊɤòÍϤ«¤·¤Æ¾²¤Ë¤¹¤ë¡£",
                "¸÷Àþ¤òÊü¤Ä¡£¸÷¤ê¤ò·ù¤¦¥â¥ó¥¹¥¿¡¼¤Ë¸ú²Ì¤¬¤¢¤ë¡£",
                "ËþÊ¢¤Ë¤¹¤ë¡£",
-               "°ìÄê»þ´Ö¡¢Æ©ÌÀ¤Ê¤â¤Î¤¬¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ë¡£",
 
+               "°ìÄê»þ´Ö¡¢Æ©ÌÀ¤Ê¤â¤Î¤¬¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ë¡£",
                "1ÂΤΥ¨¥ì¥á¥ó¥¿¥ë¤ò¾¤´­¤¹¤ë¡£",
                "½Ö»þ¤Ë¾å¤«²¼¤Î³¬¤Ë¥Æ¥ì¥Ý¡¼¥È¤¹¤ë¡£",
-               "¥â¥ó¥¹¥¿¡¼1ÂΤò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¥Ó¡¼¥à¤òÊü¤Ä¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "±ê¡¢ÅÅ·â¡¢Î䵤¡¢»À¤Î¤É¤ì¤«¤Îµå¤òÊü¤Ä¡£",
                "¶á¤¯¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¡¢æ«¡¢Èâ¡¢³¬ÃÊ¡¢ºâÊõ¡¢¤½¤·¤Æ¥¢¥¤¥Æ¥à¤ò´¶ÃΤ¹¤ë¡£",
                "ÃϾå¤Ë¤¤¤ë¤È¤­¤Ï¥À¥ó¥¸¥ç¥ó¤ÎºÇ¿¼³¬¤Ø¡¢¥À¥ó¥¸¥ç¥ó¤Ë¤¤¤ë¤È¤­¤ÏÃϾå¤Ø¤È°ÜÆ°¤¹¤ë¡£",
@@ -461,459 +461,458 @@ static cptr spell_tips[VALID_REALM][32] =
 static cptr spell_tips[VALID_REALM][32] =
 {
        {
-               "heals cut and HP a little.",
-               "gives bonus to hit and AC for few turns.",
-               "wounds a monster a little unless resisted.",
-               "lights up nearby area and the inside of a room permanently.",
-               "detects traps, doors, and stairs in your vicinity.",
-               "heals cut and HP more.",
-               "cure poison status.",
-               "satisfies hunger.",
-
-               "removes normal curses from equipped items.",
-               "wounds a monster unless resisted.",
-               "heals cut, stun and HP greatly.",
-               "gives resistance to fire and cold. These resistances can be added to which from equipment for more powerful resistances.",
-               "maps nearby area.",
-               "attempts to scare undead monsters in sight.",
-               "Much powerful healing magic. and heals cut and stun completely.",
-               "sets a glyph on the floor beneath you. Monsters cannot attack you if you are on a glyph, but can try to break glyph.", 
-
-               "removes normal and heavy curse from equipped items.",
-               "identifies an item.",
-               "damages all undead monsters in sight.",
-               "attempts to charm all monsters in sight.",
-               "wounds a monster critically unless resisted.",
-               "recalls player from dungeon to town, or from town to the deepest level of dungeon.",
-               "recreates current dungeon level.",
-               "creates glyphs in all adjacent squares and under you.",
-
-               "prevents any breeders on current level from breeding.",
-               "detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
-               "eliminates all nearby undead monsters, exhausting you.  Powerful or unique monsters may be able to resist.",
-               "maps and lights whole dungeon level. knows all objects location. and gives telepathy for a while.",
-               "restores all stats and experience.",
-               "The greatest healing magic. heals all HP, cut and stun.",
-               "*identifies* an item.",
-               "gives ultimate resistance, bonus to AC and speed."
+               "Heals cut and HP a little.",
+               "Gives bonus to hit and AC for a few turns.",
+               "Wounds a monster a little unless resisted.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Detects traps, doors, and stairs in your vicinity.",
+               "Heals cut and HP more.",
+               "Cure poison status.",
+               "Satisfies hunger.",
+
+               "Removes normal curses from equipped items.",
+               "Wounds a monster unless resisted.",
+               "Heals cut, stun and HP greatly.",
+               "Gives resistance to fire and cold. These resistances can be added to which from equipment for more powerful resistances.",
+               "Maps nearby area.",
+               "Attempts to scare undead monsters in sight.",
+               "Much powerful healing magic, and heals cut and stun completely.",
+               "Sets a glyph on the floor beneath you. Monsters cannot attack you if you are on a glyph, but can try to break glyph.",
+
+               "Removes normal and heavy curse from equipped items.",
+               "Identifies an item.",
+               "Damages all undead monsters in sight.",
+               "Attempts to charm all monsters in sight.",
+               "Wounds a monster critically unless resisted.",
+               "Recalls player from dungeon to town, or from town to the deepest level of dungeon.",
+               "Recreates current dungeon level.",
+               "Creates glyphs in all adjacent squares and under you.",
+
+               "Prevents any breeders on current level from breeding.",
+               "Detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
+               "Eliminates all nearby undead monsters, exhausting you.  Powerful or unique monsters may be able to resist.",
+               "Maps and lights whole dungeon level. Knows all objects location. And gives telepathy for a while.",
+               "Restores all stats and experience.",
+               "The greatest healing magic. Heals all HP, cut and stun.",
+               "*Identifies* an item.",
+               "Gives ultimate resistance, bonus to AC and speed."
        },
 
        {
-               "detects all monsters in your vicinity unless invisible.",
-               "teleport short distance.",
-               "detects traps, doors, and stairs in your vicinity.",
-               "lights up nearby area and the inside of a room permanently.",
-               "attempts to confuse a monster.",
-               "teleport long distance.",
-               "attempts to sleep a monster.",
+               "Detects all monsters in your vicinity unless invisible.",
+               "Teleport short distance.",
+               "Detects traps, doors, and stairs in your vicinity.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Attempts to confuse a monster.",
+               "Teleport long distance.",
+               "Attempts to sleep a monster.",
                "Recharges staffs, wands or rods.",
 
-               "maps nearby area.",
-               "identifies an item.",
-               "attempts to slow a monster.",
-               "attempts to sleep all monsters in sight.",
-               "attempts to teleport a monster away.",
-               "hastes you for a while.",
-               "detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
-               "*identifies* an item.",
-
-               "detects all treasures and items in your vicinity.",
-               "attempts to charm a monster.",
-               "gives telepathy for a while.",
-               "teleport to a town which you choose in a moment. can only be used outdoors.",
-               "gives you useful info regarding your current resistances, the powers of your weapon and maximum limits of your stats.",
-               "teleport to up or down stairs in a moment.",
-               "recalls player from dungeon to town, or from town to the deepest level of dungeon.",
-               "teleport to given location.",
-               "proves all monsters' alignment, HP, speed and their true character.",
-               "sets a glyph under you. The glyph will explode when a monster moves on it.",
-               "pulls a distant item close to you.",
-               "maps and lights whole dungeon level. knows all objects location. and gives telepathy for a while.",
-               "attempts to charm all monsters in sight.",
-               "turns an item into 1/3 of its value in gold.",
-               "teleports all monsters in sight away unless resisted.",
-               "generates barrier which completely protect you from almost all damages. takes a few your turns when the barrier breaks or duration time is exceeded.",
+               "Maps nearby area.",
+               "Identifies an item.",
+               "Attempts to slow a monster.",
+               "Attempts to sleep all monsters in sight.",
+               "Teleports all monsters on the line away unless resisted.",
+               "Hastes you for a while.",
+               "Detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
+               "*Identifies* an item.",
+
+               "Detects all treasures and items in your vicinity.",
+               "Attempts to charm a monster.",
+               "Gives telepathy for a while.",
+               "Teleport to a town which you choose in a moment. Can only be used outdoors.",
+               "Gives you useful info regarding your current resistances, the powers of your weapon and maximum limits of your stats.",
+               "Teleport to up or down stairs in a moment.",
+               "Recalls player from dungeon to town, or from town to the deepest level of dungeon.",
+               "Teleport to given location.",
+
+               "Proves all monsters' alignment, HP, speed and their true character.",
+               "Sets a glyph under you. The glyph will explode when a monster moves on it.",
+               "Pulls a distant item close to you.",
+               "Maps and lights whole dungeon level. Knows all objects location. And gives telepathy for a while.",
+               "Attempts to charm all monsters in sight.",
+               "Turns an item into 1/3 of its value in gold.",
+               "Teleports all monsters in sight away unless resisted.",
+               "Generates barrier which completely protect you from almost all damages. Takes a few your turns when the barrier breaks or duration time is exceeded.",
        },
 
        {
-               "detects all monsters in your vicinity unless invisible.",
-               "fires a short beam of lightning.",
-               "detects traps, doors, and stairs in your vicinity.",
-               "satisfies hunger.",
-               "lights up nearby area and the inside of a room permanently.",
-               "attempts to charm an animal.",
-               "gives resistance to fire, cold and electricity for a while. These resistances can be added to which from equipment for more powerful resistances.",
-               "heals all cut and poison status. heals HP a little.",
-
-               "turns one rock square to mud.",
-               "fires a bolt or beam of cold.",
-               "maps nearby area. detects all monsters, traps, doors and stairs.",
-               "fires a bolt or beam of fire.",
-               "fires a beam of light which damages to light-sensitive monsters.",
-               "attempts to slow all monsters in sight.",
-               "summons an animal.",
-               "heals HP greatly. and heals cut, stun and poison completely.",
-
-               "creates a stair which goes down or up.",
-               "gives bonus to AC for a while.",
-               "gives resistance to fire, cold, electricity, acid and poison for a while. These resistances can be added to which from equipment for more powerful resistances.",
-
-               "creates trees in all adjacent squares.",
-               "attempts to charm all animals in sight.",
-               "*identifies* an item.",
-               "creates granite walls in all adjacent squares.",
-               "makes an equipment acid-proof.",
-
-               "shakes dungeon structure, and results in random swapping of floors and walls.",
-               "attacks all adjacent monsters.",
-               "fires a huge ball of cold.",
-               "fires a huge electric ball.",
-               "fires a huge ball of water.",
-               "generates ball of light centered on you. maps and lights whole dungeon level. knows all objects location.",
-               "makes current weapon fire or frost branded.",
-               "damages all monsters in sight. makes quake. generates disintegration ball centered on you.",
+               "Detects all monsters in your vicinity unless invisible.",
+               "Fires a short beam of lightning.",
+               "Detects traps, doors, and stairs in your vicinity.",
+               "Produces a Ration of Food.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Attempts to charm an animal.",
+               "Gives resistance to fire, cold and electricity for a while. These resistances can be added to which from equipment for more powerful resistances.",
+               "Heals all cut and poison status. Heals HP a little.",
+
+               "Turns one rock square to mud.",
+               "Fires a bolt or beam of cold.",
+               "Maps nearby area. Detects all monsters, traps, doors and stairs.",
+               "Fires a bolt or beam of fire.",
+               "Fires a beam of light which damages to light-sensitive monsters.",
+               "Attempts to slow all monsters in sight.",
+               "Summons an animal.",
+               "Heals HP greatly. And heals cut, stun and poison completely.",
+
+               "Creates a stair which goes down or up.",
+               "Gives bonus to AC for a while.",
+               "Gives resistance to fire, cold, electricity, acid and poison for a while. These resistances can be added to which from equipment for more powerful resistances.",
+               "Creates trees in all adjacent squares.",
+               "Attempts to charm all animals in sight.",
+               "*Identifies* an item.",
+               "Creates granite walls in all adjacent squares.",
+               "Makes an equipment acid-proof.",
+
+               "Shakes dungeon structure, and results in random swapping of floors and walls.",
+               "Attacks all adjacent monsters.",
+               "Fires a huge ball of cold.",
+               "Fires a huge electric ball.",
+               "Fires a huge ball of water.",
+               "Generates ball of light centered on you. Maps and lights whole dungeon level. Knows all objects location.",
+               "Makes current weapon fire or frost branded.",
+               "Damages all monsters in sight. Makes quake. Generates disintegration ball centered on you.",
        },
 
        {
-               "fires a weak bolt of magic.",
-               "destroys all traps in adjacent squares.",
-               "lights up nearby area and the inside of a room permanently.",
-               "attempts to confuse the next monster that you hit.",
-               "fires a ball of magic.",
-               "fires a bolt or beam of fire.",
-               "fires a tiny ball of disintegration.",
-               "teleport long distance.",
-
-               "fires something with random effects.",
-               "fires a bolt or ball of chaos.",
-               "generates a ball of sound centered on you.",
-               "fires a beam of pure mana.",
-               "fires a ball of fire.",
-               "attempts to teleport a monster away.",
-               "destroy everything in nearby area.",
-               "fires a huge ball of chaos.",
-
-               "attempts to polymorph a monster.",
-               "fires lightning beams in all directions.",
+               "Fires a weak bolt of magic.",
+               "Destroys all traps in adjacent squares.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Attempts to confuse the next monster that you hit.",
+               "Fires a ball of magic.",
+               "Fires a bolt or beam of fire.",
+               "Fires a tiny ball of disintegration.",
+               "Teleport long distance.",
+
+               "Fires something with random effects.",
+               "Fires a bolt or ball of chaos.",
+               "Generates a ball of sound centered on you.",
+               "Fires a beam of pure mana.",
+               "Fires a ball of fire.",
+               "Teleports all monsters on the line away unless resisted.",
+               "Destroy everything in nearby area.",
+               "Fires a huge ball of chaos.",
+
+               "Attempts to polymorph a monster.",
+               "Fires lightning beams in all directions.",
                "Recharges staffs, wands or rods.",
-               "fires a huge ball of disintegration.",
-               "recreates current dungeon level.",
-               "fires a magic rocket.",
-               "makes current weapon a Chaotic weapon.",
-               "summons a demon.",
-
-               "fires a beam of gravity.",
-               "makes meteor balls fall down to nearby random locations.",
-               "generate a huge ball of fire centered on you.",
-               "generate random kind of balls or beams.",
-               "polymorphs yourself.",
-               "fires an extremely powerful huge ball of pure mana.",
-               "fires an extremely powerful ball of chaos.",
-               "fires rockets, mana balls and nuclear waste balls in all directions each unless you are not adjacent to any walls. Otherwise *destroys* huge area.",
+               "Fires a huge ball of disintegration.",
+               "Recreates current dungeon level.",
+               "Fires a magic rocket.",
+               "Makes current weapon a Chaotic weapon.",
+               "Summons a demon.",
+
+               "Fires a beam of gravity.",
+               "Makes meteor balls fall down to nearby random locations.",
+               "Generate a huge ball of fire centered on you.",
+               "Generate random kind of balls or beams.",
+               "Polymorphs yourself.",
+               "Fires an extremely powerful huge ball of pure mana.",
+               "Fires an extremely powerful ball of chaos.",
+               "Fires rockets, mana balls and nuclear waste balls in all directions each unless you are not adjacent to any walls. Otherwise *destroys* huge area.",
        },
 
        {
-               "detects all nonliving monsters in your vicinity.",
-               "fires a tiny ball of evil power which hurts good monsters greatly.",
-               "detects all evil monsters in your vicinity.",
-               "fires a ball of poison.",
-               "attempts to sleep a monster.",
-               "gives resistance to poison. This resistance can be added to which from equipment for more powerful resistance.",
-               "attempts to scare and stun a monster.",
-               "attempts to charm an undead monster.",
-
-               "fires a ball which damages living monsters.",
-               "fires a bolt or beam of nether.",
-               "generate a ball of poison centered on you.",
-               "attempts to vanish a monster.",
-               "makes current weapon poison branded.",
-               "absorbs some HP from a monster and gives them to you. You will also gain nutritional sustenance from this.",
-               "resurrects nearby corpse and skeletons. and makes these your pets.",
-               "eliminates an entire class of monster, exhausting you.  Powerful or unique monsters may resist.",
-
-               "gives bonus to hit and HP, immunity to fear for a while. but decreases AC.",
-               "causes random effects.",
-               "fires a bolt or beam of darkness.",
-               "gives another bonus to hit and HP, immunity to fear for a while. hastes you. but decreases AC.",
-               "makes current weapon Vampiric.",
-               "fires 3 bolts. Each of the bolts absorbs some HP from a monster and gives them to you.",
-               "damages all living monsters in sight.",
-               "fires a huge ball of darkness.",
-
-               "fires a beam of death.",
-               "summons an undead monster.",
-               "identifies an item. or *identifies* an item at higher level.",
-               "mimic a vampire for a while. loses abilities of original race and gets abilities as a vampire.",
-               "restore lost experience.",
-               "eliminates all nearby monsters, exhausting you.  Powerful or unique monsters may be able to resist.",
-               "fires a powerful ball of evil power. hurts good monsters greatly.",
-               "becomes wraith form which gives ability to pass walls and makes all damages half.",
+               "Detects all nonliving monsters in your vicinity.",
+               "Fires a tiny ball of evil power which hurts good monsters greatly.",
+               "Detects all evil monsters in your vicinity.",
+               "Fires a ball of poison.",
+               "Attempts to sleep a monster.",
+               "Gives resistance to poison. This resistance can be added to which from equipment for more powerful resistance.",
+               "Attempts to scare and stun a monster.",
+               "Attempts to charm an undead monster.",
+
+               "Fires a ball which damages living monsters.",
+               "Fires a bolt or beam of nether.",
+               "Generate a ball of poison centered on you.",
+               "Attempts to vanish a monster.",
+               "Makes current weapon poison branded.",
+               "Absorbs some HP from a monster and gives them to you. You will also gain nutritional sustenance from this.",
+               "Resurrects nearby corpse and skeletons. And makes these your pets.",
+               "Eliminates an entire class of monster, exhausting you.  Powerful or unique monsters may resist.",
+
+               "Gives bonus to hit and HP, immunity to fear for a while. But decreases AC.",
+               "Causes random effects.",
+               "Fires a bolt or beam of darkness.",
+               "Gives another bonus to hit and HP, immunity to fear for a while. Hastes you. But decreases AC.",
+               "Makes current weapon Vampiric.",
+               "Fires 3 bolts. Each of the bolts absorbs some HP from a monster and gives them to you.",
+               "Damages all living monsters in sight.",
+               "Fires a huge ball of darkness.",
+
+               "Fires a beam of death.",
+               "Summons an undead monster.",
+               "Identifies an item. Or *identifies* an item at higher level.",
+               "Mimic a vampire for a while. Loses abilities of original race and gets abilities as a vampire.",
+               "Restore lost experience.",
+               "Eliminates all nearby monsters, exhausting you.  Powerful or unique monsters may be able to resist.",
+               "Fires a powerful ball of evil power. Hurts good monsters greatly.",
+               "Becomes wraith form which gives ability to pass walls and makes all damages half.",
        },
 
        {
-               "teleport short distance.",
-               "summons a spider.",
-               "causes random effects.",
-               "resets the 'deepest' level for recall spell.",
-               "teleport long distance.",
-               "gives telepathy for a while.",
-               "attempts to teleport a monster away.",
-               "attempts to charm an animal.",
-
-               "pulls a distant item close to you.",
-               "summons monsters which explode by itself.",
-               "summons a ghost.",
-               "hastes a monster.",
-               "teleport to up or down stairs in a moment.",
-               "teleport to given location.",
-               "recalls player from dungeon to town, or from town to the deepest level of dungeon.",
-               "teleports all monsters in sight away unless resisted.",
-
-               "swap positions of you and a monster.",
-               "summons an undead monster.",
-               "summons a hydra.",
-               "summons some monsters.",
-               "summons a group of hounds.",
-               "makes current weapon a Trump weapon.",
-               "gives mutation which makes you teleport randomly or makes you able to teleport at will.",
-               "summons a cyber demon.",
-
-               "detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
-               "*identifies* an item.",
-               "heal a monster.",
-               "summons a dragon.",
-               "makes meteor balls fall down to nearby random locations.",
-               "summons a demon.",
-               "summons a greater undead.",
-               "summons an ancient dragon.",
+               "Teleport short distance.",
+               "Summons a spider.",
+               "Causes random effects.",
+               "Resets the 'deepest' level for recall spell.",
+               "Teleport long distance.",
+               "Gives telepathy for a while.",
+               "Teleports all monsters on the line away unless resisted.",
+               "Attempts to charm an animal.",
+
+               "Pulls a distant item close to you.",
+               "Summons monsters which explode by itself.",
+               "Summons a ghost.",
+               "Hastes a monster.",
+               "Teleport to up or down stairs in a moment.",
+               "Teleport to given location.",
+               "Recalls player from dungeon to town, or from town to the deepest level of dungeon.",
+               "Teleports all monsters in sight away unless resisted.",
+
+               "Swap positions of you and a monster.",
+               "Summons an undead monster.",
+               "Summons a hydra.",
+               "Summons some monsters.",
+               "Summons a group of hounds.",
+               "Makes current weapon a Trump weapon.",
+               "Gives mutation which makes you teleport randomly or makes you able to teleport at will.",
+               "Summons a cyber demon.",
+
+               "Detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
+               "*Identifies* an item.",
+               "Heal a monster.",
+               "Summons a dragon.",
+               "Makes meteor balls fall down to nearby random locations.",
+               "Summons a demon.",
+               "Summons a greater undead.",
+               "Summons an ancient dragon.",
        },
 
        {
-               "fires a bolt or beam of lightning.",
-               "locks a door.",
-               "detects all invisible monsters in your vicinity.",
-               "detects all monsters in your vicinity unless invisible.",
-               "teleport short distance.",
-               "lights up nearby area and the inside of a room permanently.",
-               "fires a beam which destroy traps and doors.",
-               "heals cut and HP a little.",
-
-               "detects traps, doors, and stairs in your vicinity.",
-               "adds more turns of light to a lantern or torch.",
-               "detects all treasures in your vicinity.",
-               "detects all magical items in your vicinity.",
-               "detects all items in your vicinity.",
-               "cures poison status.",
-               "gives resistance to cold. This resistance can be added to which from equipment for more powerful resistance.",
-               "gives resistance to fire. This resistance can be added to which from equipment for more powerful resistance.",
-
-               "gives resistance to electricity. This resistance can be added to which from equipment for more powerful resistance.",
-               "gives resistance to acid. This resistance can be added to which from equipment for more powerful resistance.",
-               "heals cut and HP more.",
-               "teleport long distance.",
-               "identifies an item.",
-               "turns one rock square to mud.",
-               "fires a beam of light which damages to light-sensitive monsters.",
-               "satisfies hunger.",
-               "gives see invisible for a while.",
-
-               "summons an elemental.",
-               "teleport to up or down stairs in a moment.",
-               "attempts to teleport a monster away.",
-               "fires a ball of some elements.",
-               "detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
-               "recalls player from dungeon to town, or from town to the deepest level of dungeon.",
-               "maps and lights whole dungeon level. knows all objects location. and gives telepathy for a while.",
+               "Fires a bolt or beam of lightning.",
+               "Locks a door.",
+               "Detects all invisible monsters in your vicinity.",
+               "Detects all monsters in your vicinity unless invisible.",
+               "Teleport short distance.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Fires a beam which destroy traps and doors.",
+               "Heals cut and HP a little.",
+
+               "Detects traps, doors, and stairs in your vicinity.",
+               "Adds more turns of light to a lantern or torch.",
+               "Detects all treasures in your vicinity.",
+               "Detects all magical items in your vicinity.",
+               "Detects all items in your vicinity.",
+               "Cures poison status.",
+               "Gives resistance to cold. This resistance can be added to which from equipment for more powerful resistance.",
+               "Gives resistance to fire. This resistance can be added to which from equipment for more powerful resistance.",
+
+               "Gives resistance to electricity. This resistance can be added to which from equipment for more powerful resistance.",
+               "Gives resistance to acid. This resistance can be added to which from equipment for more powerful resistance.",
+               "Heals cut and HP more.",
+               "Teleport long distance.",
+               "Identifies an item.",
+               "Turns one rock square to mud.",
+               "Fires a beam of light which damages to light-sensitive monsters.",
+               "Satisfies hunger.",
+
+               "Gives see invisible for a while.",
+               "Summons an elemental.",
+               "Teleport to up or down stairs in a moment.",
+               "Teleports all monsters on the line away unless resisted.",
+               "Fires a ball of some elements.",
+               "Detects all monsters, traps, doors, stairs, treasures and items in your vicinity.",
+               "Recalls player from dungeon to town, or from town to the deepest level of dungeon.",
+               "Maps and lights whole dungeon level. Knows all objects location. And gives telepathy for a while.",
        },
 
        {
-               "gives infravision for a while.",
-               "gives regeneration ability for a while.",
-               "satisfies hunger.",
-               "gives resistance to cold. This resistance can be added to which from equipment for more powerful resistance.",
-               "gives resistance to fire. This resistance can be added to which from equipment for more powerful resistance.",
-               "removes fear, and gives bonus to hit and 10 more HP for a while.",
-               "gives resistance to electricity. This resistance can be added to which from equipment for more powerful resistance.",
-               "gives resistance to acid. This resistance can be added to which from equipment for more powerful resistance.",
-
-               "gives see invisible for a while.",
-               "removes normal curses from equipped items.",
-               "gives resistance to poison. This resistance can be added to which from equipment for more powerful resistance.",
-               "gives bonus to hit and HP, immunity to fear for a while. but decreases AC.",
-               "gives you useful info regarding your current resistances, the powers of your weapon and maximum limits of your stats.",
-               "gives aura which protect you from evil monster's physical attack.",
-               "heals poison, stun, cut and hallucination completely.",
-               "makes current weapon some elemental branded.",
-
-               "gives telepathy for a while.",
-               "gives bonus to AC for a while.",
-               "gives resistance to fire, cold, electricity, acid and poison for a while. These resistances can be added to which from equipment for more powerful resistances.",
-               "hastes you for a while.",
-               "gives ability to pass walls for a while.",
-               "makes a shield a shield of reflection.",
-               "creates a golem.",
-               "gives resistance to magic, bonus to AC, resistance to confusion, blindness, reflection, free action and levitation for a while.",
-
-               "removes all magics completely from any weapon or armor.",
-               "removes normal and heavy curse from equipped items.",
-               "*identifies* an item.",
-               "attempts to increase +to-hit, +to-dam of a weapon.",
-               "attempts to increase +AC of an armor.",
-               "makes current weapon a random ego weapon.",
-               "gives mutation which makes you teleport randomly or makes you able to teleport at will.",
-               "gives an immunity to fire, cold, electricity or acid for a while.",
+               "Gives infravision for a while.",
+               "Gives regeneration ability for a while.",
+               "Satisfies hunger.",
+               "Gives resistance to cold. This resistance can be added to which from equipment for more powerful resistance.",
+               "Gives resistance to fire. This resistance can be added to which from equipment for more powerful resistance.",
+               "Removes fear, and gives bonus to hit and 10 more HP for a while.",
+               "Gives resistance to electricity. This resistance can be added to which from equipment for more powerful resistance.",
+               "Gives resistance to acid. This resistance can be added to which from equipment for more powerful resistance.",
+
+               "Gives see invisible for a while.",
+               "Removes normal curses from equipped items.",
+               "Gives resistance to poison. This resistance can be added to which from equipment for more powerful resistance.",
+               "Gives bonus to hit and HP, immunity to fear for a while. But decreases AC.",
+               "Gives you useful info regarding your current resistances, the powers of your weapon and maximum limits of your stats.",
+               "Gives aura which protect you from evil monster's physical attack.",
+               "Heals poison, stun, cut and hallucination completely.",
+               "Makes current weapon some elemental branded.",
+
+               "Gives telepathy for a while.",
+               "Gives bonus to AC for a while.",
+               "Gives resistance to fire, cold, electricity, acid and poison for a while. These resistances can be added to which from equipment for more powerful resistances.",
+               "Hastes you for a while.",
+               "Gives ability to pass walls for a while.",
+               "Makes a shield a shield of reflection.",
+               "Creates a golem.",
+               "Gives resistance to magic, bonus to AC, resistance to confusion, blindness, reflection, free action and levitation for a while.",
+
+               "Removes all magics completely from any weapon or armor.",
+               "Removes normal and heavy curse from equipped items.",
+               "*Identifies* an item.",
+               "Attempts to increase +to-hit, +to-dam of a weapon.",
+               "Attempts to increase +AC of an armor.",
+               "Makes current weapon a random ego weapon.",
+               "Gives mutation which makes you teleport randomly or makes you able to teleport at will.",
+               "Gives an immunity to fire, cold, electricity or acid for a while.",
        },
 
        {
-               "fires a weak bolt of magic.",
-               "detects all nonliving monsters in your vicinity.",
-               "gives bonus to hit and AC for few turns.",
-               "gives resistance to fire, cold and electricity for a while. These resistances can be added to which from equipment for more powerful resistances.",
-               "attempts to scare and stun a monster.",
-               "fires a bolt or beam of nether.",
-               "summons a manes.",
-               "fires a ball of evil power. hurts good monsters greatly.",
-
-               "attempts to charm a demon.",
-               "maps nearby area.",
-               "gives resistance to nether for a while.",
-               "fires a bolt or beam of plasma.",
-               "fires a ball of fire.",
-               "makes current weapon fire branded.",
-               "fires a huge ball of nether.",
-               "summons a demon.",
-
-               "gives telepathy for a while.",
-               "removes fear. gives resistance to fire and cold, and aura of fire. These resistances can be added to which from equipment for more powerful resistances.",
-               "generates a ball of fire centered on you which transforms floors to magma.",
-               "fires a ball of plasma.",
-               "mimic a demon for a while. loses abilities of original race and gets abilities as a demon.",
-               "damages all monsters in sight. hurts good monsters greatly.",
-               "fires a ball of nexus.",
-               "attempts to make a monster's HP almost half.",
-
-               "removes fear, and gives bonus to hit and 10 more HP for a while.",
-               "gives resistance to time for a while.",
-               "generate balls of chaos, confusion and charm centered on you.",
-               "makes all pets explode.",
-               "summons greater demon. it need to sacrifice a corpse of human ('p','h' or 't').",
-               "generate a huge ball of nether.",
-               "puts blood curse which damages and causes various effects on a monster. You also take damage.",
-               "mimic a demon lord for a while. loses abilities of original race and gets great abilities as a demon lord. Even hard walls can't stop your walking.",
+               "Fires a weak bolt of magic.",
+               "Detects all nonliving monsters in your vicinity.",
+               "Gives bonus to hit and AC for a few turns.",
+               "Gives resistance to fire, cold and electricity for a while. These resistances can be added to which from equipment for more powerful resistances.",
+               "Attempts to scare and stun a monster.",
+               "Fires a bolt or beam of nether.",
+               "Summons a manes.",
+               "Fires a ball of evil power. Hurts good monsters greatly.",
+
+               "Attempts to charm a demon.",
+               "Maps nearby area.",
+               "Gives resistance to nether for a while.",
+               "Fires a bolt or beam of plasma.",
+               "Fires a ball of fire.",
+               "Makes current weapon fire branded.",
+               "Fires a huge ball of nether.",
+               "Summons a demon.",
+
+               "Gives telepathy for a while.",
+               "Removes fear. Gives resistance to fire and cold, and aura of fire. These resistances can be added to which from equipment for more powerful resistances.",
+               "Generates a ball of fire centered on you which transforms floors to magma.",
+               "Fires a ball of plasma.",
+               "Mimic a demon for a while. Loses abilities of original race and gets abilities as a demon.",
+               "Damages all monsters in sight. Hurts good monsters greatly.",
+               "Fires a ball of nexus.",
+               "Attempts to make a monster's HP almost half.",
+
+               "Removes fear, and gives bonus to hit and 10 more HP for a while.",
+               "Gives resistance to time for a while.",
+               "Generate balls of chaos, confusion and charm centered on you.",
+               "Makes all pets explode.",
+               "Summons greater demon. It need to sacrifice a corpse of human ('p','h' or 't').",
+               "Generate a huge ball of nether.",
+               "Puts blood curse which damages and causes various effects on a monster. You also take damage.",
+               "Mimic a demon lord for a while. Loses abilities of original race and gets great abilities as a demon lord. Even hard walls can't stop your walking.",
        },
 
        {
-               "fires a bolt or beam of lightning.",
-               "detects all evil monsters in your vicinity.",
-               "removes fear.",
-               "attempts to scare a monster.",
-               "attempts to sleep monsters in the adjacent squares.",
-               "teleport medium distance.",
-               "fires many bolts of light near the target.",
-               "heals all cut, stun and poison status.",
+               "Fires a bolt or beam of lightning.",
+               "Detects all evil monsters in your vicinity.",
+               "Removes fear.",
+               "Attempts to scare a monster.",
+               "Attempts to sleep monsters in the adjacent squares.",
+               "Teleport medium distance.",
+               "Fires many bolts of light near the target.",
+               "Heals all cut, stun and poison status.",
                
-               "attempts to teleport an evil monster away.",
-               "fires a ball with holy power. hurts evil monsters greatly, but don't effect good monsters.",
-               "damages all undead and demons in sight, and scares all evil monsters in sight.",
-               "removes normal curses from equipped items.",
-               "gives see invisible for a while.",
-               "gives aura which protect you from evil monster's physical attack.",
-               "fires a powerful bolt of lightning.",
-               "damages all evil monsters in sight, heals HP somewhat, and completely heals poison, fear, stun and cut status.",
-
-               "fires a beam which destroy traps and doors.",
-               "attempts to paralyze an evil monster.",
-               "gives aura of holy power which injures evil monsters which attacked you for a while.",
-               "damages all undead and demons in sight.",
-               "damages all evil monsters in sight.",
-               "makes current weapon especially deadly against evil monsters.",
-               "fires a huge ball of powerful light.",
-               "summons an angel.",
-
-               "removes fear, and gives bonus to hit and 10 more HP for a while.",
-               "removes normal and heavy curse from equipped items.",
-               "teleports all evil monsters in sight away unless resisted.",
-               "destroy everything in nearby area.",
-               "gives special aura for a while. When you are attacked by a monster, the monster are injured with same amount of damage as you take.",
-               "drops many balls of disintegration near the target.",
-               "damages all adjacent monsters with holy power. Damages and attempt to slow, stun, confuse, scare and freeze all monsters in sight. And heals HP.",
-               "attempts to charm all good monsters in sight, and scare all non-charmed monsters, and summons great number of knights, and gives heroism, bless, speed and protection from evil.",
+               "Attempts to teleport an evil monster away.",
+               "Fires a ball with holy power. Hurts evil monsters greatly, but don't effect good monsters.",
+               "Damages all undead and demons in sight, and scares all evil monsters in sight.",
+               "Removes normal curses from equipped items.",
+               "Gives see invisible for a while.",
+               "Gives aura which protect you from evil monster's physical attack.",
+               "Fires a powerful bolt of lightning.",
+               "Damages all evil monsters in sight, heals HP somewhat, and completely heals poison, fear, stun and cut status.",
+
+               "Fires a beam which destroy traps and doors.",
+               "Attempts to paralyze an evil monster.",
+               "Gives aura of holy power which injures evil monsters which attacked you for a while.",
+               "Damages all undead and demons in sight.",
+               "Damages all evil monsters in sight.",
+               "Makes current weapon especially deadly against evil monsters.",
+               "Fires a huge ball of powerful light.",
+               "Summons an angel.",
+
+               "Removes fear, and gives bonus to hit and 10 more HP for a while.",
+               "Removes normal and heavy curse from equipped items.",
+               "Teleports all evil monsters in sight away unless resisted.",
+               "Destroy everything in nearby area.",
+               "Gives special aura for a while. When you are attacked by a monster, the monster are injured with same amount of damage as you take.",
+               "Drops many balls of disintegration near the target.",
+               "Damages all adjacent monsters with holy power. Damages and attempt to slow, stun, confuse, scare and freeze all monsters in sight. And heals HP.",
+               "Attempts to charm all good monsters in sight, and scare all non-charmed monsters, and summons great number of knights, and gives heroism, bless, speed and protection from evil.",
        },
 
        {
-               "attempts to slow all monsters in sight.",
-               "gives bonus to hit and AC for few turns.",
-               "fires a bolt of sound.",
-               "attempts to stun all monsters in sight.",
-               "heals HP a little.",
-               "lights up nearby area and the inside of a room permanently.",
-               "attempts to scare all monsters in sight.",
-               "removes fear, and gives bonus to hit and 10 more HP for a while.",
-               
-               "detects traps, doors and stairs in your vicinity. and detects all monsters at level 15, treasures and items at level 20. maps nearby area at level 25. lights and know the whole level at level 40. These effects occurs by turns while this song continues.",
-               "damages all monsters in sight with PSI damages.",
-               "identifies all items which are in the adjacent squares.",
-               "gives improved stealth.",
-               "attempts to confuse all monsters in sight.",
-               "damages all monsters in sight with booming sound.",
-               "resurrects nearby corpse and skeletons. and makes these your pets.",
-               "attempts to charm all monsters in sight.",
-
-               "turns all rocks in the adjacent squares to mud.",
-               "gives resistance to fire, cold, electricity, acid and poison. These resistances can be added to which from equipment for more powerful resistances.",
-               "hastes you.",
-               "teleports all nearby monsters away unless resisted.",
-               "damages all monsters in sight. hurts evil monsters greatly.",
-               "attempts to slow and sleep all monsters in sight.",
-               "fires a beam of sound.",
-               "recreates current dungeon level.",
-
-               "shakes dungeon structure, and results in random swapping of floors and walls.",
-               "attempts to freeze all monsters in sight.",
-               "sets a glyph on the floor beneath you. Monsters cannot attack you if you are on a glyph, but can try to break glyph", 
-               "hastes you. gives heroism. damages all monsters in sight.",
-               "Powerful healing song. also heals cut and stun completely.",
-               "restores all stats and experience.",
-               "fires an extremely powerful tiny ball of sound.",
-               "generates barrier which completely protect you from almost all damages. takes a few your turns when the barrier breaks.",
+               "Attempts to slow all monsters in sight.",
+               "Gives bonus to hit and AC for a few turns.",
+               "Fires a bolt of sound.",
+               "Attempts to stun all monsters in sight.",
+               "Heals HP a little.",
+               "Lights up nearby area and the inside of a room permanently.",
+               "Attempts to scare all monsters in sight.",
+               "Removes fear, and gives bonus to hit and 10 more HP for a while.",
+
+               "Detects traps, doors and stairs in your vicinity. And detects all monsters at level 15, treasures and items at level 20. Maps nearby area at level 25. Lights and know the whole level at level 40. These effects occurs by turns while this song continues.",
+               "Damages all monsters in sight with PSI damages.",
+               "Identifies all items which are in the adjacent squares.",
+               "Gives improved stealth.",
+               "Attempts to confuse all monsters in sight.",
+               "Damages all monsters in sight with booming sound.",
+               "Resurrects nearby corpse and skeletons. And makes these your pets.",
+               "Attempts to charm all monsters in sight.",
+
+               "Makes you be able to burrow into walls. Objects under your feet evaporate.",
+               "Gives resistance to fire, cold, electricity, acid and poison. These resistances can be added to which from equipment for more powerful resistances.",
+               "Hastes you.",
+               "Teleports all nearby monsters away unless resisted.",
+               "Damages all monsters in sight. Hurts evil monsters greatly.",
+               "Attempts to slow and sleep all monsters in sight.",
+               "Fires a beam of sound.",
+               "Recreates current dungeon level.",
+
+               "Shakes dungeon structure, and results in random swapping of floors and walls.",
+               "Attempts to freeze all monsters in sight.",
+               "Sets a glyph on the floor beneath you. Monsters cannot attack you if you are on a glyph, but can try to break glyph.",
+               "Hastes you. Gives heroism. Damages all monsters in sight.",
+               "Powerful healing song. Also heals cut and stun completely.",
+               "Restores all stats and experience.",
+               "Fires an extremely powerful tiny ball of sound.",
+               "Generates barrier which completely protect you from almost all damages. Takes a few your turns when the barrier breaks.",
        },
 
        {
-               "attacks a two squares distant monster.",
-               "attacks in 3 directions in one time.",
-               "throws current weapon. and it'll return to your hand unless failed.",
-               "attacks a monster with more damage unless it has resistance to fire.",
-               "detects all monsters except mindless in your vicinity.",
-               "attempts to stun a monster in the adjacent.",
-               "prepares to counterattack. when attack by a monster, strikes back using SP each time.",
-               "attacks monster with your weapons normally, then move through counter side of the monster.",
-
-               "attacks a monster with more damage unless it has resistance to poison.",
-               "attacks an evil unliving monster with great damage. No effect to other  monsters.",
-               "attacks an adjacent monster, and blow it away.",
-               "identifies a weapon or armor. or *identifies* these at level 45.",
-
-               "breaks rock. or greatly damage a monster made by rocks.",
-               "attacks a monster with increased number of attacks and more damage unless it has resistance to cold.",
-               "attempts to kill a monster instantly. If failed cause only 1HP of damage.",
-               "attempts to attack with critical hit. But this attack is easy to evade for a monster.",
-
-               "attacks with all of your power. but all damages you take will be doubled for one turn.",
-               "attacks a monster with more damage unless it has resistance to electricity.",
-               "steps close to a monster and attacks at a time.",
-               "attacks all adjacent monsters with power corresponding to your cut status. then increases your cut status. No effect to unliving monsters.",
-               "shakes dungeon structure, and results in random swapping of floors and walls.",
-               "fires a beam of shock wave.",
-               "damages all monsters in sight with sound. aggravate nearby monsters.",
-               "attacks with powerful 3 strikes.",
-
-               "attacks with vampiric strikes which absorbs HP from a monster and gives them to you. No effect to unliving monsters.",
-               "attempts to stun, confuse and sleep all waking monsters.",
-               "performs a series of rush attacks. The series continues while killing each monster in a time and SP remains.",
-               "runs toward given location while attacking all monsters on the path.",
+               "Attacks a two squares distant monster.",
+               "Attacks in 3 directions in one time.",
+               "Throws current weapon. And it'll return to your hand unless failed.",
+               "Attacks a monster with more damage unless it has resistance to fire.",
+               "Detects all monsters except mindless in your vicinity.",
+               "Attempts to stun a monster in the adjacent.",
+               "Prepares to counterattack. When attack by a monster, strikes back using SP each time.",
+               "Attacks monster with your weapons normally, then move through counter side of the monster.",
+
+               "Attacks a monster with more damage unless it has resistance to poison.",
+               "Attacks an evil unliving monster with great damage. No effect to other  monsters.",
+               "Attacks an adjacent monster, and blow it away.",
+               "Identifies a weapon or armor. Or *identifies* these at level 45.",
+               "Breaks rock. Or greatly damage a monster made by rocks.",
+               "Attacks a monster with increased number of attacks and more damage unless it has resistance to cold.",
+               "Attempts to kill a monster instantly. If failed cause only 1HP of damage.",
+               "Attempts to attack with critical hit. But this attack is easy to evade for a monster.",
+
+               "Attacks with all of your power. But all damages you take will be doubled for one turn.",
+               "Attacks a monster with more damage unless it has resistance to electricity.",
+               "Steps close to a monster and attacks at a time.",
+               "Attacks all adjacent monsters with power corresponding to your cut status. Then increases your cut status. No effect to unliving monsters.",
+               "Shakes dungeon structure, and results in random swapping of floors and walls.",
+               "Fires a beam of shock wave.",
+               "Damages all monsters in sight with sound. Aggravate nearby monsters.",
+               "Attacks with powerful 3 strikes.",
+
+               "Attacks with vampiric strikes which absorbs HP from a monster and gives them to you. No effect to unliving monsters.",
+               "Attempts to stun, confuse and sleep all waking monsters.",
+               "Performs a series of rush attacks. The series continues while killing each monster in a time and SP remains.",
+               "Runs toward given location while attacking all monsters on the path.",
                "double attacks at a time.",
-               "performs a powerful attack which even effect nearby monsters.",
-               "attacks a monster with extremely powerful damage. But you also takes some damages. hurts a undead monster greatly.",
+               "Performs a powerful attack which even effect nearby monsters.",
+               "Attacks a monster with extremely powerful damage. But you also takes some damages. Hurts a undead monster greatly.",
                "'Busido is found in death'"
        },
 };
index 7506c03..2c07633 100644 (file)
@@ -1036,6 +1036,7 @@ static void mass_produce(object_type *o_ptr)
                case TV_DIGGING:
                case TV_BOW:
                {
+                       if (o_ptr->art_name) break;
                        if (o_ptr->name2) break;
                        if (cost <= 10L) size += damroll(3, 5);
                        if (cost <= 100L) size += damroll(3, 5);
@@ -4078,7 +4079,7 @@ msg_format("%s
 
 
        /* Describe it fully */
-       if (!screen_object(o_ptr, TRUE))
+       if (!screen_object(o_ptr, SCROBJ_FORCE_DETAIL))
 #ifdef JP
 msg_print("ÆäËÊѤï¤Ã¤¿¤È¤³¤í¤Ï¤Ê¤¤¤è¤¦¤À¡£");
 #else
@@ -4284,7 +4285,16 @@ static void store_process_command(void)
                /* Browse a book */
                case 'b':
                {
-                       do_cmd_browse();
+                       if ( (p_ptr->pclass == CLASS_MINDCRAFTER) ||
+                            (p_ptr->pclass == CLASS_BERSERKER) ||
+                            (p_ptr->pclass == CLASS_NINJA) ||
+                            (p_ptr->pclass == CLASS_MIRROR_MASTER) 
+                            ) do_cmd_mind_browse();
+                       else if (p_ptr->pclass == CLASS_SMITH)
+                               do_cmd_kaji(TRUE);
+                       else if (p_ptr->pclass == CLASS_MAGIC_EATER)
+                               do_cmd_magic_eater(TRUE);
+                       else do_cmd_browse();
                        break;
                }
 
index fc1ef4f..a575fac 100644 (file)
@@ -1119,13 +1119,15 @@ byte adj_chr_chm[] =
  * Rogue         num = 5; mul = 3; div = MAX(40, weapon_weight);
  * Ranger        num = 5; mul = 4; div = MAX(70, weapon_weight);
  * Paladin       num = 5; mul = 4; div = MAX(70, weapon_weight);
- * Kaji          num = 5; mul = 5; div = MAX(150, weapon_weight);
+ * Weaponsmith   num = 5; mul = 5; div = MAX(150, weapon_weight);
  * Warrior-Mage  num = 5; mul = 3; div = MAX(70, weapon_weight);
  * Chaos Warrior num = 5; mul = 4; div = MAX(70, weapon_weight);
  * Monk          num = 5; mul = 3; div = MAX(60, weapon_weight);
  * Tourist       num = 4; mul = 3; div = MAX(100, weapon_weight);
  * Imitator      num = 5; mul = 4; div = MAX(70, weapon_weight);
  * Beastmaster   num = 5; mul = 3; div = MAX(70, weapon_weight);
+ * Cavalry(Ride) num = 5; mul = 4; div = MAX(70, weapon_weight);
+ * Cavalry(Walk) num = 5; mul = 3; div = MAX(100, weapon_weight);
  * Sorcerer      num = 1; mul = 1; div = MAX(1, weapon_weight);
  * Archer        num = 4; mul = 2; div = MAX(70, weapon_weight);
  * Magic eater   num = 4; mul = 2; div = MAX(70, weapon_weight);
@@ -4023,20 +4025,20 @@ s32b realm_choices1[MAX_CLASS] =
         CH_ARCANE | CH_ENCHANT | CH_DAEMON |
         CH_CRUSADE),                              /* High-Mage */
        (CH_ARCANE),                            /* Tourist */
-       (CH_NONE),                              /* Imitation */
+       (CH_NONE),                              /* Imitator */
        (CH_TRUMP),                             /* Beastmaster */
        (CH_NONE),                              /* Sorcerer */
        (CH_NONE),                              /* Archer */
        (CH_NONE),                              /* Magic eater */
-       (CH_MUSIC),                             /* Harper */
+       (CH_MUSIC),                             /* Bard */
        (CH_NONE),                              /* Red Mage */
        (CH_HISSATSU),                          /* Samurai */
        (CH_LIFE | CH_NATURE | CH_DEATH |
         CH_ENCHANT | CH_CRUSADE),                 /* ForceTrainer */
        (CH_NONE),                              /* Blue Mage */
-       (CH_NONE),                              /* Kihei */
+       (CH_NONE),                              /* Cavalry */
        (CH_NONE),                              /* Berserker */
-       (CH_NONE),                              /* Kaji */
+       (CH_NONE),                              /* Weaponsmith */
        (CH_NONE),                              /* Mirror-master */
        (CH_NONE),                              /* Ninja */
 };
@@ -4066,19 +4068,19 @@ s32b realm_choices2[MAX_CLASS] =
        (CH_NONE),                              /* Mindcrafter */
        (CH_NONE),                              /* High-Mage */
        (CH_NONE),                              /* Tourist */
-       (CH_NONE),                              /* Imitation */
+       (CH_NONE),                              /* Imitator */
        (CH_NONE),                              /* Beastmanster */
        (CH_NONE),                              /* Sorcerer */
        (CH_NONE),                              /* Archer */
        (CH_NONE),                              /* Magic eater */
-       (CH_NONE),                              /* Harper */
+       (CH_NONE),                              /* Bard */
        (CH_NONE),                              /* Red Mage */
        (CH_NONE),                              /* Samurai */
        (CH_NONE),                              /* ForceTrainer */
        (CH_NONE),                              /* Blue Mage */
-       (CH_NONE),                              /* Kihei */
+       (CH_NONE),                              /* Cavalry */
        (CH_NONE),                              /* Berserker */
-       (CH_NONE),                              /* Kaji */
+       (CH_NONE),                              /* Weaponsmith */
        (CH_NONE),                              /* Mirror-master */
        (CH_NONE),                              /* Ninja */
 };
@@ -5258,7 +5260,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "±Ñͺ",
                "Ã˼ß",
                "Çì¼ß",
-               "Îμç",
+               "·¯¼ç",
        },
 
        /* Mage */
@@ -5300,9 +5302,9 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "¥Ú¥Æ¥ó»Õ",                     /*ÇîÅÌ¡¢¥Ú¥Æ¥ó»Õ¡¢º¾µ½»Õ */
                "¥í¥¦¥·¡¼¥Õ",
                "¥Ï¥¤¥·¡¼¥Õ",
-               "¥Þ¥¹¥¿¡¼¥·¡¼¥Õ",
+               "¥Þ¥¹¥¿¡¼", /* "¥Þ¥¹¥¿¡¼¥·¡¼¥Õ", */
                "¥¢¥µ¥·¥ó",                                             /* °Å»¦¼Ô */
-               "¥®¥ë¥É¥Þ¥¹¥¿¡¼",
+               "ƬÎÎ", /*"¥®¥ë¥É¥Þ¥¹¥¿¡¼",*/
        },
 
        /* Rangers */
@@ -5330,7 +5332,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "½Åµ³»Î",
                "À»µ³»Î",
                "¾åµéÀ»µ³»Î",
-               "À»µ³»ÎĹ",
+               "À»µ³»ÎÃÄĹ",
        },
 
        /* Warrior-Mage */
@@ -5345,7 +5347,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "ËâÃ˼ß",
                /* "Ëâ¸ø¼ß", */
                "ÀïÆ®Ëâ½Ñ»Î",
-               "¥¦¥£¥¶¡¼¥É¥í¡¼¥É",
+               "Ãμ±¤Î¼é¸î¼Ô", /* "¥¦¥£¥¶¡¼¥É¥í¡¼¥É", */
        },
 
        /* Chaos Warrior */
@@ -5387,7 +5389,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "¥µ¥¤¥­¥Ã¥¯",
                "¥µ¥¤¥ª¥Ë¥Ã¥¯",
                "ĶǽÎϼÔ",
-               "¥Þ¥¤¥ó¥É¥Þ¥¹¥¿¡¼",
+               "Àº¿À¤Î»ÙÇÛ¼Ô", /* "¥Þ¥¤¥ó¥É¥Þ¥¹¥¿¡¼", */
        },
 
        /* High Mage; same as Mage */
@@ -5490,7 +5492,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "Á´¤Æ¤òÃΤë¼Ô",
        },
 
-       /* Harper */
+       /* Bard */
        {
                "¸«½¬¤¤",       /*"Apprentice"*/
                "ºî¶Ê²È",       /*"Songsmith"*/
@@ -5516,7 +5518,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "ËâÃ˼ß",
                /* "Ëâ¸ø¼ß", */
                "ÀïÆ®Ëâ½Ñ»Î",
-               "¥¦¥£¥¶¡¼¥É¥í¡¼¥É",
+               "Ãμ±¤Î¼é¸î¼Ô", /* "¥¦¥£¥¶¡¼¥É¥í¡¼¥É", */
        },
 
        /* Samurai */
@@ -5562,7 +5564,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "ÂçËâÆ»»Õ",
        },
 
-       /* Kihei */
+       /* Cavalry */
        {
                "¿·»²Ê¼",
                "ʼ»Î",
@@ -5590,7 +5592,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "Åܤê¤Î²½¿È",
        },
 
-       /* Kaji */
+       /* Weaponsmith */
        {
                "Ƽ¤òÃ䨤·¼Ô",
                "Å´¤òÃ䨤·¼Ô",
@@ -5851,7 +5853,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "Soldier",
                "Mercenary",
                "Veteran",
-               "Swordsman",
+               "Bowman",
                "Champion",
                "Hero",
                "Baron",
@@ -5873,7 +5875,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                "Almighty",
        },
 
-       /* Harper */
+       /* Bard */
        {
                "Apprentice",   /*"Apprentice"*/
                "Songsmith",    /*"Songsmith"*/
@@ -5971,7 +5973,7 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
                    "God of Rage",
        },
 
-       /* Kaji */
+       /* Weaponsmith */
        {
                "Copper smith",
                "Iron smith",
@@ -5988,14 +5990,14 @@ cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
        /* Mirror Master */
        {
                "Mirrorstarer",
-               "Mirrorpolisher",
+               "Mirrorcleaner",
                "Mirrormaker",
                "Mirrormagician",
-               "Guru of Mirror ",
+               "Mirror Guru",
                "Mirror Mage",
                "Mirror King",
-               "Mirror Emperror",
-               "Avatar of Mirror",
+               "Mirror Emperor",
+               "Mirror Avatar",
                "Ruffnor King",
        },
 
@@ -7462,11 +7464,11 @@ option_type option_info[] =
 #endif
 
 #ifdef JP
-       { &record_maxdeapth,            TRUE, 10, 4, 16,
-       "record_maxdeapth",             "ºÇ¿¼³¬¤ò¹¹¿·¤·¤¿¤È¤­¤Ëµ­Ï¿¤¹¤ë" },
+       { &record_maxdepth,             TRUE, 10, 4, 16,
+       "record_maxdepth",              "ºÇ¿¼³¬¤ò¹¹¿·¤·¤¿¤È¤­¤Ëµ­Ï¿¤¹¤ë" },
 #else
-       { &record_maxdeapth,            TRUE, 10, 4, 16,
-       "record_maxdeapth",             "Record movements to deepest level" },
+       { &record_maxdepth,             TRUE, 10, 4, 16,
+       "record_maxdepth" ,             "Record movements to deepest level" },
 #endif
 
 #ifdef JP
index 8396df1..17319b3 100644 (file)
@@ -990,6 +990,7 @@ struct player_type
 
        s32b au;                        /* Current Gold */
 
+       s32b max_max_exp;       /* Max max experience (only to calculate score) */
        s32b max_exp;           /* Max experience */
        s32b exp;                       /* Cur experience */
        u16b exp_frac;          /* Cur exp frac (times 2^16) */
@@ -1002,8 +1003,6 @@ struct player_type
        s16b inside_quest;              /* Inside quest level */
        bool inside_battle;             /* Is character inside tougijou? */
 
-       s16b rewards[MAX_BACT]; /* Status of rewards in town */
-
        s32b wilderness_x;      /* Coordinates in the wilderness */
        s32b wilderness_y;
        bool wild_mode;
index a051408..b9f8905 100644 (file)
@@ -261,6 +261,11 @@ errr path_parse(char *buf, int max, cptr file)
        /* Accept the filename */
        (void)strnfmt(buf, max, "%s", file);
 
+#if defined(MAC_MPW) && defined(CARBON)
+     /* Fix it according to the current operating system */
+    convert_pathname(buf);
+#endif /* MAC_MPW && CARBON */
+
        /* Success */
        return (0);
 }
@@ -362,7 +367,7 @@ FILE *my_fopen(cptr file, cptr mode)
        {
                /* setting file type/creator */
                tempfff = fopen(buf, mode);
-               fsetfileinfo(file, _fcreator, _ftype);
+               fsetfileinfo(buf, _fcreator, _ftype);
                fclose(tempfff);
        }
 #endif
@@ -445,6 +450,17 @@ errr my_fgets(FILE *fff, char *buf, huge n)
                /* Convert weirdness */
                for (s = tmp; *s; s++)
                {
+#if defined(MACINTOSH) || defined(MACH_O_CARBON)
+
+                       /*
+                        * Be nice to the Macintosh, where a file can have Mac or Unix
+                        * end of line, especially since the introduction of OS X.
+                        * MPW tools were also very tolerant to the Unix EOL.
+                        */
+                       if (*s == '\r') *s = '\n';
+
+#endif /* MACINTOSH || MACH_O_CARBON */
+
                        /* Handle newline */
                        if (*s == '\n')
                        {
@@ -687,15 +703,15 @@ int fd_make(cptr file, int mode)
 #else /* BEN_HACK */
 
 # if defined(MACINTOSH) && defined(MAC_MPW)
-
-       /* setting file type and creator -- AR */
        {
-               errr errr_tmp;
-               errr_tmp = open(buf, O_CREAT | O_EXCL | O_WRONLY | O_BINARY, mode);
-               fsetfileinfo(file, _fcreator, _ftype);
-               return(errr_tmp);
+               int fdes;
+               /* Create the file, fail if exists, write-only, binary */
+               fdes = open(buf, O_CREAT | O_EXCL | O_WRONLY | O_BINARY, mode);
+               /* Set creator and type if the file is successfully opened */
+               if (fdes >= 0) fsetfileinfo(buf, _fcreator, _ftype);
+               /* Return the descriptor */
+               return (fdes);
        }
-
 # else
        /* Create the file, fail if exists, write-only, binary */
        return (open(buf, O_CREAT | O_EXCL | O_WRONLY | O_BINARY, mode));
@@ -2176,6 +2192,22 @@ char inkey(void)
  */
 
 /*
+ * Initialize the quark array
+ */
+void quark_init(void)
+{
+       /* Quark variables */
+       C_MAKE(quark__str, QUARK_MAX, cptr);
+
+       /* Prepare first quark, which is used when quark_add() is failed */
+       quark__str[1] = string_make("");
+
+       /* There is one quark (+ NULL) */
+       quark__num = 2;
+}
+
+
+/*
  * Add a new "quark" to the set of quarks.
  */
 s16b quark_add(cptr str)
@@ -2189,8 +2221,8 @@ s16b quark_add(cptr str)
                if (streq(quark__str[i], str)) return (i);
        }
 
-       /* Paranoia -- Require room */
-       if (quark__num == QUARK_MAX) return (0);
+       /* Return "" when no room is available */
+       if (quark__num == QUARK_MAX) return 1;
 
        /* New maximal quark */
        quark__num = i + 1;
@@ -2210,8 +2242,8 @@ cptr quark_str(s16b i)
 {
        cptr q;
 
-       /* Verify */
-       if ((i < 0) || (i >= quark__num)) i = 0;
+       /* Return NULL for an invalid index */
+       if ((i < 1) || (i >= quark__num)) return NULL;
 
        /* Access the quark */
        q = quark__str[i];
@@ -3721,7 +3753,7 @@ menu_naiyou menu_info[10][10] =
                {"Items(other)", 4, FALSE},
                {"Equip", 5, FALSE},
                {"Door/Box", 6, FALSE},
-               {"Infomations", 7, FALSE},
+               {"Informations", 7, FALSE},
                {"Options", 8, FALSE},
                {"Other commands", 9, FALSE},
                {"", 0, FALSE},
@@ -3748,7 +3780,7 @@ menu_naiyou menu_info[10][10] =
                {"Target(*)", '*', TRUE},
                {"Dig(T/^t)", 'T', TRUE},
                {"Go up stairs(<)", '<', TRUE},
-               {"Go down staies(>)", '>', TRUE},
+               {"Go down stairs(>)", '>', TRUE},
                {"Command pets(p)", 'p', TRUE},
                {"Search mode ON/OFF(S/#)", 'S', TRUE}
        },
@@ -3813,7 +3845,7 @@ menu_naiyou menu_info[10][10] =
                {"Identify symbol(/)", '/', TRUE},
                {"Show prev messages(^p)", KTRL('P'), TRUE},
                {"Current time(^t/')", KTRL('T'), TRUE},
-               {"Various infomations(~)", '~', TRUE},
+               {"Various informations(~)", '~', TRUE},
                {"Play record menu(|)", '|', TRUE},
                {"", 0, FALSE}
        },
@@ -3863,9 +3895,13 @@ special_menu_naiyou special_menu_info[] =
 {
        {"ĶǽÎÏ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_MINDCRAFTER},
        {"¤â¤Î¤Þ¤Í/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_IMITATOR},
+       {"²Î/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_BARD},
        {"ɬ»¦µ»/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_SAMURAI},
        {"Îýµ¤½Ñ/ËâË¡/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_FORCETRAINER},
+       {"µ»/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_BERSERKER},
+       {"µ»½Ñ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_SMITH},
        {"¶ÀËâË¡/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_MIRROR_MASTER},
+       {"Ǧ½Ñ/ÆüìǽÎÏ", 0, 0, MENU_CLASS, CLASS_NINJA},
        {"¹­°è¥Þ¥Ã¥×(<)", 2, 6, MENU_WILD, FALSE},
        {"Ä̾ï¥Þ¥Ã¥×(>)", 2, 7, MENU_WILD, TRUE},
        {"", 0, 0, 0, 0},
@@ -3875,9 +3911,13 @@ special_menu_naiyou special_menu_info[] =
 {
        {"MindCraft/Special", 0, 0, MENU_CLASS, CLASS_MINDCRAFTER},
        {"Imitation/Special", 0, 0, MENU_CLASS, CLASS_IMITATOR},
+       {"Song/Special", 0, 0, MENU_CLASS, CLASS_BARD},
        {"Technique/Special", 0, 0, MENU_CLASS, CLASS_SAMURAI},
        {"Mind/Magic/Special", 0, 0, MENU_CLASS, CLASS_FORCETRAINER},
+       {"BrutalPower/Special", 0, 0, MENU_CLASS, CLASS_BERSERKER},
+       {"Technique/Special", 0, 0, MENU_CLASS, CLASS_SMITH},
        {"MirrorMagic/Special", 0, 0, MENU_CLASS, CLASS_MIRROR_MASTER},
+       {"Ninjutsu/Special", 0, 0, MENU_CLASS, CLASS_NINJA},
        {"Enter global map(<)", 2, 6, MENU_WILD, FALSE},
        {"Enter local map(>)", 2, 7, MENU_WILD, TRUE},
        {"", 0, 0, 0, 0},
@@ -4347,6 +4387,12 @@ prt(format("
        if (!caretcmd)
                caretcmd = command_cmd;
 #endif
+
+#ifdef JP
+#undef strchr
+#define strchr strchr_j
+#endif
+
        /* Hack -- Scan equipment */
        for (i = INVEN_RARM; i < INVEN_TOTAL; i++)
        {
index 3c7a861..bed7902 100644 (file)
@@ -119,7 +119,9 @@ s16b monster_level;         /* Current monster creation level */
 s16b base_level;        /* Base dungeon level */
 
 s32b turn;                             /* Current game turn */
+s32b turn_limit;               /* Limit of game turn */
 s32b dungeon_turn;                     /* Game turn in dungeon */
+s32b dungeon_turn_limit;       /* Limit of game turn in dungeon */
 s32b old_turn;                 /* Turn when level began (feelings) */
 s32b old_battle;
 
@@ -990,7 +992,7 @@ bool record_rand_art;
 bool record_destroy_uniq;
 bool record_fix_quest;
 bool record_rand_quest;
-bool record_maxdeapth;
+bool record_maxdepth;
 bool record_stair;
 bool record_buy;
 bool record_sell;
@@ -1123,7 +1125,7 @@ bool autochara;
 
 bool can_save = FALSE;        /* Game can be saved */
 
-bool world_monster;
+s16b world_monster;
 bool world_player;
 
 int cap_mon;
index 7da994e..7f10a5e 100644 (file)
@@ -525,20 +525,39 @@ static void generate_wilderness_area(int terrain, u32b seed, bool border, bool c
 
        if (!corner)
        {
+               /* Hack -- preserve four corners */
+               s16b north_west = cave[1][1].feat;
+               s16b south_west = cave[MAX_HGT - 2][1].feat;
+               s16b north_east = cave[1][MAX_WID - 2].feat;
+               s16b south_east = cave[MAX_HGT - 2][MAX_WID - 2].feat;
+
                /* x1, y1, x2, y2, num_depths, roughness */
                plasma_recursive(1, 1, MAX_WID-2, MAX_HGT-2, table_size-1, roughness);
-       }
 
-       /* Use the complex RNG */
-       Rand_quick = FALSE;
+               /* Hack -- copyback four corners */
+               cave[1][1].feat = north_west;
+               cave[MAX_HGT - 2][1].feat = south_west;
+               cave[1][MAX_WID - 2].feat = north_east;
+               cave[MAX_HGT - 2][MAX_WID - 2].feat = south_east;
 
-       for (y1 = 1; y1 < MAX_HGT-1; y1++)
-       {
-               for (x1 = 1; x1 < MAX_WID-1; x1++)
+               for (y1 = 1; y1 < MAX_HGT - 1; y1++)
                {
-                       cave[y1][x1].feat = terrain_table[terrain][cave[y1][x1].feat];
+                       for (x1 = 1; x1 < MAX_WID - 1; x1++)
+                       {
+                               cave[y1][x1].feat = terrain_table[terrain][cave[y1][x1].feat];
+                       }
                }
        }
+       else /* Hack -- only four corners */
+       {
+               cave[1][1].feat = terrain_table[terrain][cave[1][1].feat];
+               cave[MAX_HGT - 2][1].feat = terrain_table[terrain][cave[MAX_HGT - 2][1].feat];
+               cave[1][MAX_WID - 2].feat = terrain_table[terrain][cave[1][MAX_WID - 2].feat];
+               cave[MAX_HGT - 2][MAX_WID - 2].feat = terrain_table[terrain][cave[MAX_HGT - 2][MAX_WID - 2].feat];
+       }
+
+       /* Use the complex RNG */
+       Rand_quick = FALSE;
 }
 
 
@@ -1181,7 +1200,7 @@ bool change_wild_mode(void)
 #ifdef JP
                msg_print("¹ÓÌî¤Ê¤ó¤Æ¤Ê¤¤¡£");
 #else
-               msg_print("No global mal");
+               msg_print("No global map.");
 #endif
                return FALSE;
        }
index a717464..48e0ea4 100644 (file)
@@ -101,7 +101,7 @@ typedef struct
 static grouper group_item[] =
 {
 #ifdef JP
-{ TV_SHOT,          "¼Í·âʪ" },
+       { TV_SHOT,          "¼Í·âʪ" },
 #else
        { TV_SHOT,          "Ammo" },
 #endif
@@ -110,24 +110,23 @@ static grouper group_item[] =
        { TV_BOLT,          NULL },
 
 #ifdef JP
-{ TV_BOW,           "µÝ" },
+       { TV_BOW,           "µÝ" },
 #else
        { TV_BOW,           "Bows" },
 #endif
 
-
 #ifdef JP
-{ TV_SWORD,         "Éð´ï" },
+       { TV_DIGGING,       "Éð´ï" },
 #else
-       { TV_SWORD,         "Weapons" },
+       { TV_DIGGING,       "Weapons" },
 #endif
 
        { TV_POLEARM,       NULL },
        { TV_HAFTED,        NULL },
-       { TV_DIGGING,       NULL },
+       { TV_SWORD,         NULL },
 
 #ifdef JP
-{ TV_SOFT_ARMOR,    "Ëɶñ¡ÊÂΡË" },
+       { TV_SOFT_ARMOR,    "Ëɶñ (ÂÎ)" },
 #else
        { TV_SOFT_ARMOR,    "Armour (Body)" },
 #endif
@@ -136,61 +135,60 @@ static grouper group_item[] =
        { TV_DRAG_ARMOR,    NULL },
 
 #ifdef JP
-{ TV_CLOAK,         "Ëɶñ¡Ê¤½¤Î¾¡Ë" },
+       { TV_BOOTS,         "Ëɶñ (¤½¤Î¾)" },
 #else
-       { TV_CLOAK,         "Armour (Misc)" },
+       { TV_BOOTS,         "Armour (Misc)" },
 #endif
 
-       { TV_SHIELD,        NULL },
+       { TV_GLOVES,        NULL },
        { TV_HELM,          NULL },
        { TV_CROWN,         NULL },
-       { TV_GLOVES,        NULL },
-       { TV_BOOTS,         NULL },
+       { TV_SHIELD,        NULL },
+       { TV_CLOAK,         NULL },
 
 #ifdef JP
-{ TV_AMULET,        "¥¢¥ß¥å¥ì¥Ã¥È" },
-{ TV_RING,          "»ØÎØ" },
+       { TV_LITE,          "¸÷¸»" },
+       { TV_AMULET,        "¥¢¥ß¥å¥ì¥Ã¥È" },
+       { TV_RING,          "»ØÎØ" },
 #else
+       { TV_LITE,          "Light Sources" },
        { TV_AMULET,        "Amulets" },
        { TV_RING,          "Rings" },
 #endif
 
-
 #ifdef JP
-{ TV_SCROLL,        "´¬Êª" },
-{ TV_POTION,        "Ìô" },
-{ TV_FOOD,          "¿©ÎÁ" },
+       { TV_STAFF,         "¾ó" },
+       { TV_WAND,          "ËâË¡ËÀ" },
+       { TV_ROD,           "¥í¥Ã¥É" },
 #else
-       { TV_SCROLL,        "Scrolls" },
-       { TV_POTION,        "Potions" },
-       { TV_FOOD,          "Food" },
+       { TV_STAFF,         "Staffs" },
+       { TV_WAND,          "Wands" },
+       { TV_ROD,           "Rods" },
 #endif
 
-
 #ifdef JP
-{ TV_ROD,           "¥í¥Ã¥É" },
-{ TV_WAND,          "ËâË¡ËÀ" },
-{ TV_STAFF,         "¾ó" },
+       { TV_SCROLL,        "´¬Êª" },
+       { TV_POTION,        "Ìô" },
+       { TV_FOOD,          "¿©ÎÁ" },
 #else
-       { TV_ROD,           "Rods" },
-       { TV_WAND,          "Wands" },
-       { TV_STAFF,         "Staffs" },
+       { TV_SCROLL,        "Scrolls" },
+       { TV_POTION,        "Potions" },
+       { TV_FOOD,          "Food" },
 #endif
 
-
 #ifdef JP
-{ TV_LIFE_BOOK,     "ËâË¡½ñ¡ÊÀ¸Ì¿¡Ë" },
-{ TV_SORCERY_BOOK,  "ËâË¡½ñ¡ÊÀç½Ñ¡Ë" },
-{ TV_NATURE_BOOK,   "ËâË¡½ñ¡Ê¼«Á³¡Ë" },
-{ TV_CHAOS_BOOK,    "ËâË¡½ñ¡Ê¥«¥ª¥¹¡Ë" },
-{ TV_DEATH_BOOK,    "ËâË¡½ñ¡Ê°Å¹õ¡Ë" },
-{ TV_TRUMP_BOOK,    "ËâË¡½ñ¡Ê¥È¥é¥ó¥×¡Ë" },
-{ TV_ARCANE_BOOK,   "ËâË¡½ñ¡ÊÈë½Ñ¡Ë" },
-{ TV_ENCHANT_BOOK,  "ËâË¡½ñ¡Ê¾¢¡Ë" },
-{ TV_DAEMON_BOOK,   "ËâË¡½ñ¡Ê°­Ëâ¡Ë" },
-{ TV_CRUSADE_BOOK,     "ËâË¡½ñ¡ÊÇ˼١Ë" },
-{ TV_MUSIC_BOOK,    "²Î½¸" },
-{ TV_HISSATSU_BOOK, "Éð·Ý¤Î½ñ" },
+       { TV_LIFE_BOOK,     "ËâË¡½ñ (À¸Ì¿)" },
+       { TV_SORCERY_BOOK,  "ËâË¡½ñ (Àç½Ñ)" },
+       { TV_NATURE_BOOK,   "ËâË¡½ñ (¼«Á³)" },
+       { TV_CHAOS_BOOK,    "ËâË¡½ñ (¥«¥ª¥¹)" },
+       { TV_DEATH_BOOK,    "ËâË¡½ñ (°Å¹õ)" },
+       { TV_TRUMP_BOOK,    "ËâË¡½ñ (¥È¥é¥ó¥×)" },
+       { TV_ARCANE_BOOK,   "ËâË¡½ñ (Èë½Ñ)" },
+       { TV_ENCHANT_BOOK,  "ËâË¡½ñ (¾¢)" },
+       { TV_DAEMON_BOOK,   "ËâË¡½ñ (°­Ëâ)" },
+       { TV_CRUSADE_BOOK,  "ËâË¡½ñ (Ç˼Ù)" },
+       { TV_MUSIC_BOOK,    "²Î½¸" },
+       { TV_HISSATSU_BOOK, "Éð·Ý¤Î½ñ" },
 #else
        { TV_LIFE_BOOK,     "Books (Life)" },
        { TV_SORCERY_BOOK,  "Books (Sorcery)" },
@@ -201,56 +199,48 @@ static grouper group_item[] =
        { TV_ARCANE_BOOK,   "Books (Arcane)" },
        { TV_ENCHANT_BOOK,  "Books (Craft)" },
        { TV_DAEMON_BOOK,   "Books (Daemon)" },
-       { TV_CRUSADE_BOOK,     "Books (Crusade)" },
+       { TV_CRUSADE_BOOK,  "Books (Crusade)" },
        { TV_MUSIC_BOOK,    "Song Books" },
        { TV_HISSATSU_BOOK, "Books (Kendo)" },
 #endif
 
 #ifdef JP
-{ TV_PARCHMENT,    "ÍÓÈé»æ" },
+       { TV_WHISTLE,       "ū" },
+       { TV_CAPTURE,       "¥­¥ã¥×¥Á¥ã¡¼¡¦¥Ü¡¼¥ë" },
+       { TV_CARD,          "¥¨¥¯¥¹¥×¥ì¥¹¥«¡¼¥É" },
 #else
-{ TV_PARCHMENT,    "Parchment" },
+       { TV_WHISTLE,       "Whistle" },
+       { TV_CAPTURE,       "Capture Ball" },
+       { TV_CARD,          "Express Card" },
 #endif
 
 #ifdef JP
-{ TV_CHEST,         "Ȣ" },
+       { TV_CHEST,         "Ȣ" },
 #else
        { TV_CHEST,         "Chests" },
 #endif
 
 #ifdef JP
-{ TV_CAPTURE,         "¥­¥ã¥×¥Á¥ã¡¼¡¦¥Ü¡¼¥ë" },
-#else
-       { TV_CAPTURE,         "Capture Ball" },
-#endif
-
-#ifdef JP
-{ TV_CARD,         "¥¨¥¯¥¹¥×¥ì¥¹¥«¡¼¥É" },
+       { TV_FIGURINE,      "¿Í·Á" },
+       { TV_STATUE,        "Áü" },
+       { TV_CORPSE,        "»àÂÎ" },
 #else
-       { TV_CARD,         "Express Card" },
-#endif
-
        { TV_FIGURINE,      "Magical Figurines" },
        { TV_STATUE,        "Statues" },
        { TV_CORPSE,        "Corpses" },
-
-#ifdef JP
-{ TV_WHISTLE,         "ū" },
-#else
-       { TV_WHISTLE,         "Whistle" },
 #endif
 
 #ifdef JP
-{ TV_SPIKE,         "¤¯¤µ¤Ó" },
+       { TV_SKELETON,      "¤½¤Î¾" },
 #else
-       { TV_SPIKE,         "Spike" },
+       { TV_SKELETON,      "Misc" },
 #endif
 
-       { TV_LITE,          NULL },
-       { TV_FLASK,         NULL },
-       { TV_JUNK,          NULL },
        { TV_BOTTLE,        NULL },
-       { TV_SKELETON,      NULL },
+       { TV_JUNK,          NULL },
+       { TV_SPIKE,         NULL },
+       { TV_FLASK,         NULL },
+       { TV_PARCHMENT,     NULL },
 
        { 0, "" }
 };
@@ -354,7 +344,7 @@ static void kind_info(char *buf, char *dam, char *wgt, int *lev, s32b *val, int
  */
 static void spoil_obj_desc(cptr fname)
 {
-       int i, k, s, t, n = 0;
+       int i, k, s, t, n = 0, group_start = 0;
 
        u16b who[200];
 
@@ -398,54 +388,59 @@ static void spoil_obj_desc(cptr fname)
                /* Write out the group title */
                if (group_item[i].name)
                {
-                       /* Hack -- bubble-sort by cost and then level */
-                       for (s = 0; s < n - 1; s++)
+                       if (n)
                        {
-                               for (t = 0; t < n - 1; t++)
+                               /* Hack -- bubble-sort by cost and then level */
+                               for (s = 0; s < n - 1; s++)
                                {
-                                       int i1 = t;
-                                       int i2 = t + 1;
+                                       for (t = 0; t < n - 1; t++)
+                                       {
+                                               int i1 = t;
+                                               int i2 = t + 1;
 
-                                       int e1;
-                                       int e2;
+                                               int e1;
+                                               int e2;
 
-                                       s32b t1;
-                                       s32b t2;
+                                               s32b t1;
+                                               s32b t2;
 
-                                       kind_info(NULL, NULL, NULL, &e1, &t1, who[i1]);
-                                       kind_info(NULL, NULL, NULL, &e2, &t2, who[i2]);
+                                               kind_info(NULL, NULL, NULL, &e1, &t1, who[i1]);
+                                               kind_info(NULL, NULL, NULL, &e2, &t2, who[i2]);
 
-                                       if ((t1 > t2) || ((t1 == t2) && (e1 > e2)))
-                                       {
-                                               int tmp = who[i1];
-                                               who[i1] = who[i2];
-                                               who[i2] = tmp;
+                                               if ((t1 > t2) || ((t1 == t2) && (e1 > e2)))
+                                               {
+                                                       int tmp = who[i1];
+                                                       who[i1] = who[i2];
+                                                       who[i2] = tmp;
+                                               }
                                        }
                                }
-                       }
 
-                       /* Spoil each item */
-                       for (s = 0; s < n; s++)
-                       {
-                               int e;
-                               s32b v;
+                               fprintf(fff, "\n\n%s\n\n", group_item[group_start].name);
+
+                               /* Spoil each item */
+                               for (s = 0; s < n; s++)
+                               {
+                                       int e;
+                                       s32b v;
 
-                               /* Describe the kind */
-                               kind_info(buf, dam, wgt, &e, &v, who[s]);
+                                       /* Describe the kind */
+                                       kind_info(buf, dam, wgt, &e, &v, who[s]);
 
-                               /* Dump it */
-                               fprintf(fff, "     %-45s%8s%7s%5d%9ld\n",
-                                       buf, dam, wgt, e, (long)(v));
-                       }
+                                       /* Dump it */
+                                       fprintf(fff, "     %-45s%8s%7s%5d%9ld\n",
+                                               buf, dam, wgt, e, (long)(v));
+                               }
 
-                       /* Start a new set */
-                       n = 0;
+                               /* Start a new set */
+                               n = 0;
+                       }
 
                        /* Notice the end */
                        if (!group_item[i].tval) break;
 
                        /* Start a new set */
-                       fprintf(fff, "\n\n%s\n\n", group_item[i].name);
+                       group_start = i;
                }
 
                /* Acquire legal item types */
@@ -1858,8 +1853,11 @@ static void spoil_out(cptr str)
        /* Line buffer */
        static char roff_buf[256];
 
+       /* Delay buffer */
+       static char roff_waiting_buf[256];
+
 #ifdef JP
-       char iskanji2=0;
+       bool iskanji_flag = FALSE;
 #endif
        /* Current pointer into line roff_buf */
        static char *roff_p = roff_buf;
@@ -1867,17 +1865,28 @@ static void spoil_out(cptr str)
        /* Last space saved into roff_buf */
        static char *roff_s = NULL;
 
+       /* Mega-Hack -- Delayed output */
+       static bool waiting_output = FALSE;
+
        /* Special handling for "new sequence" */
        if (!str)
        {
+               if (waiting_output)
+               {
+                       fputs(roff_waiting_buf, fff);
+                       waiting_output = FALSE;
+               }
+
                if (roff_p != roff_buf) roff_p--;
                while (*roff_p == ' ' && roff_p != roff_buf) roff_p--;
+
                if (roff_p == roff_buf) fprintf(fff, "\n");
                else
                {
                        *(roff_p + 1) = '\0';
                        fprintf(fff, "%s\n\n", roff_buf);
                }
+
                roff_p = roff_buf;
                roff_s = NULL;
                roff_buf[0] = '\0';
@@ -1889,26 +1898,61 @@ static void spoil_out(cptr str)
        {
 #ifdef JP
                char cbak;
-               int k_flag = iskanji((unsigned char)(*str));
+               bool k_flag = iskanji((unsigned char)(*str));
 #endif
                char ch = *str;
-               int wrap = (ch == '\n');
+               bool wrap = (ch == '\n');
 
 #ifdef JP
-               if (!isprint(ch) && !k_flag && !iskanji2) ch = ' ';
-               if(k_flag && !iskanji2)iskanji2=1;else iskanji2=0;
+               if (!isprint(ch) && !k_flag && !iskanji_flag) ch = ' ';
+               iskanji_flag = k_flag && !iskanji_flag;
 #else
                if (!isprint(ch)) ch = ' ';
 #endif
 
+               if (waiting_output)
+               {
+                       fputs(roff_waiting_buf, fff);
+                       if (!wrap) fputc('\n', fff);
+                       waiting_output = FALSE;
+               }
+
+               if (!wrap)
+               {
+#ifdef JP
+                       if (roff_p >= roff_buf + (k_flag ? 74 : 75)) wrap = TRUE;
+                       else if ((ch == ' ') && (roff_p >= roff_buf + (k_flag ? 72 : 73))) wrap = TRUE;
+#else
+                       if (roff_p >= roff_buf + 75) wrap = TRUE;
+                       else if ((ch == ' ') && (roff_p >= roff_buf + 73)) wrap = TRUE;
+#endif
+
+                       if (wrap)
+                       {
 #ifdef JP
-               if ( roff_p >= roff_buf+( (k_flag) ? 74 : 75) ) wrap=1;
-               if ((ch == ' ') && (roff_p + 2 >= roff_buf + ((k_flag) ? 74 : 75))) wrap = 1;
+                               bool k_flag_local;
+                               bool iskanji_flag_local = FALSE;
+                               cptr tail = str + (k_flag ? 2 : 1);
 #else
-               if (roff_p >= roff_buf + 75) wrap = 1;
-               if ((ch == ' ') && (roff_p + 2 >= roff_buf + 75)) wrap = 1;
+                               cptr tail = str + 1;
 #endif
 
+                               for (; *tail; tail++)
+                               {
+                                       if (*tail == ' ') continue;
+
+#ifdef JP
+                                       k_flag_local = iskanji((unsigned char)(*tail));
+                                       if (isprint(*tail) || k_flag_local || iskanji_flag_local) break;
+                                       iskanji_flag_local = k_flag_local && !iskanji_flag_local;
+#else
+                                       if (isprint(*tail)) break;
+#endif
+                               }
+
+                               if (!*tail) waiting_output = TRUE;
+                       }
+               }
 
                /* Handle line-wrap */
                if (wrap)
@@ -1916,21 +1960,22 @@ static void spoil_out(cptr str)
                        *roff_p = '\0';
                        r = roff_p;
 #ifdef JP
-                               cbak=' ';
+                       cbak = ' ';
 #endif
                        if (roff_s && (ch != ' '))
                        {
 #ifdef JP
-                               cbak=*roff_s;
+                               cbak = *roff_s;
 #endif
                                *roff_s = '\0';
                                r = roff_s + 1;
                        }
-                       fprintf(fff, "%s\n", roff_buf);
+                       if (!waiting_output) fprintf(fff, "%s\n", roff_buf);
+                       else strcpy(roff_waiting_buf, roff_buf);
                        roff_s = NULL;
                        roff_p = roff_buf;
 #ifdef JP
-                       if(cbak != ' ') *roff_p++ = cbak; 
+                       if (cbak != ' ') *roff_p++ = cbak;
 #endif
                        while (*r) *roff_p++ = *r++;
                }
@@ -1939,16 +1984,18 @@ static void spoil_out(cptr str)
                if ((roff_p > roff_buf) || (ch != ' '))
                {
 #ifdef JP
-                 if( !k_flag ){
-                       if (ch == ' ' || ch == '(' ) roff_s = roff_p;
-                 }
-                 else{
-                   if( iskanji2 && 
-                       strncmp(str, "¡£", 2) != 0 && 
-                       strncmp(str, "¡¢", 2) != 0 &&
-                       strncmp(str, "¥£", 2) != 0 &&
-                       strncmp(str, "¡¼", 2) != 0) roff_s = roff_p;
-                 }
+                       if (!k_flag)
+                       {
+                               if ((ch == ' ') || (ch == '(')) roff_s = roff_p;
+                       }
+                       else
+                       {
+                               if (iskanji_flag &&
+                                   strncmp(str, "¡£", 2) != 0 &&
+                                   strncmp(str, "¡¢", 2) != 0 &&
+                                   strncmp(str, "¥£", 2) != 0 &&
+                                   strncmp(str, "¡¼", 2) != 0) roff_s = roff_p;
+                       }
 #else
                        if (ch == ' ') roff_s = roff_p;
 #endif
@@ -2039,11 +2086,14 @@ static void spoil_mon_info(cptr fname)
                flags1 = r_ptr->flags1;
 
                /* Prefix */
+               /*
                if (flags1 & (RF1_QUESTOR))
                {
                        spoil_out("[Q] ");
                }
-               else if (flags1 & (RF1_UNIQUE))
+               else
+               */
+               if (flags1 & (RF1_UNIQUE))
                {
                        spoil_out("[U] ");
                }
index f4cc1ee..dc6d8e2 100644 (file)
@@ -131,7 +131,7 @@ msg_print("
 static void wiz_create_named_art(int a_idx)
 {
        /* Create the artifact */
-       create_named_art(a_idx, py, px);
+       (void)create_named_art(a_idx, py, px);
 
        /* All done */
        msg_print("Allocated.");
@@ -1400,7 +1400,7 @@ static void wiz_create_item(void)
                        if (a_info[i].sval != k_info[k_idx].sval) continue;
 
                        /* Create this artifact */
-                       create_named_art(i, py, px);
+                       (void)create_named_art(i, py, px);
 
                        /* All done */
                        msg_print("Allocated(INSTA_ART).");
@@ -1600,28 +1600,7 @@ static void do_cmd_wiz_summon(int num)
  */
 static void do_cmd_wiz_named(int r_idx)
 {
-       int i, x, y;
-
-       /* Paranoia */
-       /* if (!r_idx) return; */
-
-       /* Prevent illegal monsters */
-       if (r_idx >= max_r_idx) return;
-
-       /* Try 10 times */
-       for (i = 0; i < 10; i++)
-       {
-               int d = 1;
-
-               /* Pick a location */
-               scatter(&y, &x, py, px, d, 0);
-
-               /* Require empty grids */
-               if (!cave_empty_bold(y, x)) continue;
-
-               /* Place it (allow groups) */
-               if (place_monster_aux(0, y, x, r_idx, (PM_ALLOW_SLEEP | PM_ALLOW_GROUP))) break;
-       }
+       (void)summon_named_creature(0, py, px, r_idx, (PM_ALLOW_SLEEP | PM_ALLOW_GROUP));
 }
 
 
@@ -1632,7 +1611,7 @@ static void do_cmd_wiz_named(int r_idx)
  */
 static void do_cmd_wiz_named_friendly(int r_idx)
 {
-       (void) summon_named_creature(0, py, px, r_idx, (PM_ALLOW_SLEEP | PM_ALLOW_GROUP | PM_FORCE_PET));
+       (void)summon_named_creature(0, py, px, r_idx, (PM_ALLOW_SLEEP | PM_ALLOW_GROUP | PM_FORCE_PET));
 }
 
 
@@ -1930,7 +1909,7 @@ void do_cmd_debug(void)
 
        /* Magic Mapping */
        case 'm':
-               map_area(DETECT_RAD_ALL);
+               map_area(DETECT_RAD_ALL * 3);
                break;
 
        /* Mutation */
index 326ba33..466e92d 100644 (file)
@@ -161,14 +161,14 @@ void prt_time(void)
        extract_day_hour_min(&day, &hour, &min);
 
        /* Dump the info itself */
-       c_put_str(TERM_WHITE, format(
 #ifdef JP
-               "%2dÆüÌÜ",
+       if (day < 1000) c_put_str(TERM_WHITE, format("%2dÆüÌÜ", day), ROW_DAY, COL_DAY);
+       else c_put_str(TERM_WHITE, "***ÆüÌÜ", ROW_DAY, COL_DAY);
 #else
-               "Day %-2d",
+       if (day < 1000) c_put_str(TERM_WHITE, format("Day%3d", day), ROW_DAY, COL_DAY);
+       else c_put_str(TERM_WHITE, "Day***", ROW_DAY, COL_DAY);
 #endif
-               day), ROW_DAY, COL_DAY);
-       
+
        c_put_str(TERM_WHITE, format("%2d:%02d", hour, min), ROW_DAY, COL_DAY+7);
 }
 
@@ -390,7 +390,7 @@ static struct {
 #else
 = {
        {TERM_YELLOW, "Ts", "Tsuyoshi"},
-       {TERM_VIOLET, "Hu", "Hullc"},
+       {TERM_VIOLET, "Ha", "Halluc"},
        {TERM_L_DARK, "Bl", "Blind"},
        {TERM_RED, "Pa", "Paralyzed"},
        {TERM_VIOLET, "Cf", "Confused"},
@@ -1323,7 +1323,7 @@ static void prt_study(void)
 }
 
 
-static void prt_mane(void)
+static void prt_imitation(void)
 {
        int wid, hgt, row_study, col_study;
 
@@ -1341,7 +1341,7 @@ static void prt_mane(void)
 #ifdef JP
                        c_put_str(attr, "¤Þ¤Í", row_study, col_study);
 #else
-                       c_put_str(attr, "Mane", row_study, col_study);
+                       c_put_str(attr, "Imit", row_study, col_study);
 #endif
                }
                else
@@ -1651,7 +1651,7 @@ static void prt_frame_extra(void)
        /* Study spells */
        prt_study();
 
-       prt_mane();
+       prt_imitation();
 
        prt_status();
 }
@@ -2901,6 +2901,13 @@ bool buki_motteruka(int i)
        return ((inventory[i].k_idx && inventory[i].tval >= TV_DIGGING && inventory[i].tval <= TV_SWORD) ? TRUE : FALSE);
 }
 
+
+#ifdef JP
+#undef strchr
+#define strchr strchr_j
+#endif
+
+
 /*
  * Calculate the players current "state", taking into account
  * not only race/class intrinsics, but also objects being worn
@@ -2925,22 +2932,6 @@ void calc_bonuses(void)
 {
        int             i, j, hold, neutral[2];
        int             new_speed;
-       bool old_telepathy;
-       bool old_esp_animal;
-       bool old_esp_undead;
-       bool old_esp_demon;
-       bool old_esp_orc;
-       bool old_esp_troll;
-       bool old_esp_giant;
-       bool old_esp_dragon;
-       bool old_esp_human;
-       bool old_esp_evil;
-       bool old_esp_good;
-       bool old_esp_nonliving;
-       bool old_esp_unique;
-       int             old_see_inv;
-       int             old_dis_ac;
-       int             old_dis_to_a;
        int             extra_blows[2];
        int             extra_shots;
        object_type     *o_ptr;
@@ -2956,27 +2947,26 @@ void calc_bonuses(void)
        s16b this_o_idx, next_o_idx = 0;
        player_race *tmp_rp_ptr;
 
-
        /* Save the old vision stuff */
-       old_telepathy = p_ptr->telepathy;
-       old_esp_animal = p_ptr->esp_animal;
-       old_esp_undead = p_ptr->esp_undead;
-       old_esp_demon = p_ptr->esp_demon;
-       old_esp_orc = p_ptr->esp_orc;
-       old_esp_troll = p_ptr->esp_troll;
-       old_esp_giant = p_ptr->esp_giant;
-       old_esp_dragon = p_ptr->esp_dragon;
-       old_esp_human = p_ptr->esp_human;
-       old_esp_evil = p_ptr->esp_evil;
-       old_esp_good = p_ptr->esp_good;
-       old_esp_nonliving = p_ptr->esp_nonliving;
-       old_esp_unique = p_ptr->esp_unique;
-
-       old_see_inv = p_ptr->see_inv;
+       bool old_telepathy = p_ptr->telepathy;
+       bool old_esp_animal = p_ptr->esp_animal;
+       bool old_esp_undead = p_ptr->esp_undead;
+       bool old_esp_demon = p_ptr->esp_demon;
+       bool old_esp_orc = p_ptr->esp_orc;
+       bool old_esp_troll = p_ptr->esp_troll;
+       bool old_esp_giant = p_ptr->esp_giant;
+       bool old_esp_dragon = p_ptr->esp_dragon;
+       bool old_esp_human = p_ptr->esp_human;
+       bool old_esp_evil = p_ptr->esp_evil;
+       bool old_esp_good = p_ptr->esp_good;
+       bool old_esp_nonliving = p_ptr->esp_nonliving;
+       bool old_esp_unique = p_ptr->esp_unique;
+       bool old_see_inv = p_ptr->see_inv;
+       bool old_mighty_throw = p_ptr->mighty_throw;
 
        /* Save the old armor class */
-       old_dis_ac = p_ptr->dis_ac;
-       old_dis_to_a = p_ptr->dis_to_a;
+       bool old_dis_ac = p_ptr->dis_ac;
+       bool old_dis_to_a = p_ptr->dis_to_a;
 
 
        /* Clear extra blows/shots */
@@ -4082,7 +4072,7 @@ void calc_bonuses(void)
                        p_ptr->to_h[0] += bonus_to_h;
                        p_ptr->to_d[0] += bonus_to_d;
 
-                       /* Apply the mental bonuses tp hit/damage, if known */
+                       /* Apply the mental bonuses to hit/damage, if known */
                        if (object_known_p(o_ptr))
                        {
                                p_ptr->dis_to_h[0] += bonus_to_h;
@@ -4091,6 +4081,12 @@ void calc_bonuses(void)
                }
        }
 
+       if (old_mighty_throw != p_ptr->mighty_throw)
+       {
+               /* Redraw average damege display of Shuriken */
+               p_ptr->window |= PW_INVEN;
+       }
+
        if (p_ptr->cursed & TRC_TELEPORT) p_ptr->cursed &= ~(TRC_TELEPORT_SELF);
 
        /* Monks get extra ac for armour _not worn_ */
@@ -4741,7 +4737,7 @@ void calc_bonuses(void)
                                case CLASS_BLUE_MAGE:
                                        num = 3; wgt = 100; mul = 2; break;
 
-                               /* Priest, Mindcrafter */
+                               /* Priest, Mindcrafter, Magic-Eater */
                                case CLASS_PRIEST:
                                case CLASS_MAGIC_EATER:
                                case CLASS_MINDCRAFTER:
@@ -4760,7 +4756,7 @@ void calc_bonuses(void)
                                case CLASS_SAMURAI:
                                        num = 5; wgt = 70; mul = 4; break;
 
-                               /* Kaji */
+                               /* Weaponsmith */
                                case CLASS_SMITH:
                                        num = 5; wgt = 150; mul = 5; break;
 
@@ -4789,6 +4785,7 @@ void calc_bonuses(void)
                                case CLASS_BEASTMASTER:
                                        num = 5; wgt = 70; mul = 3; break;
 
+                               /* Cavalry */
                                case CLASS_CAVALRY:
                                        if ((p_ptr->riding) && (have_flag(flgs, TR_RIDING))) {num = 5; wgt = 70; mul = 4;}
                                        else {num = 5; wgt = 100; mul = 3;}
@@ -4798,7 +4795,7 @@ void calc_bonuses(void)
                                case CLASS_SORCERER:
                                        num = 1; wgt = 1; mul = 1; break;
 
-                               /* Archer, Magic eater */
+                               /* Archer, Bard */
                                case CLASS_ARCHER:
                                case CLASS_BARD:
                                        num = 4; wgt = 70; mul = 2; break;
@@ -5805,7 +5802,7 @@ void redraw_stuff(void)
                p_ptr->redraw &= ~(PR_EXTRA);
                p_ptr->redraw &= ~(PR_CUT | PR_STUN);
                p_ptr->redraw &= ~(PR_HUNGER);
-               p_ptr->redraw &= ~(PR_STATE | PR_SPEED | PR_STUDY | PR_MANE | PR_STATUS);
+               p_ptr->redraw &= ~(PR_STATE | PR_SPEED | PR_STUDY | PR_IMITATION | PR_STATUS);
                prt_frame_extra();
        }
 
@@ -5841,10 +5838,10 @@ void redraw_stuff(void)
 
        if (p_ptr->pclass == CLASS_IMITATOR)
        {
-               if (p_ptr->redraw & (PR_MANE))
+               if (p_ptr->redraw & (PR_IMITATION))
                {
-                       p_ptr->redraw &= ~(PR_MANE);
-                       prt_mane();
+                       p_ptr->redraw &= ~(PR_IMITATION);
+                       prt_imitation();
                }
        }
        else if (p_ptr->redraw & (PR_STUDY))
index 3a6ed66..9cce438 100644 (file)
@@ -28,19 +28,20 @@ void check_experience(void)
 
        /* Hack -- lower limit */
        if (p_ptr->exp < 0) p_ptr->exp = 0;
-
-       /* Hack -- lower limit */
        if (p_ptr->max_exp < 0) p_ptr->max_exp = 0;
+       if (p_ptr->max_max_exp < 0) p_ptr->max_max_exp = 0;
 
        /* Hack -- upper limit */
        if (p_ptr->exp > PY_MAX_EXP) p_ptr->exp = PY_MAX_EXP;
-
-       /* Hack -- upper limit */
        if (p_ptr->max_exp > PY_MAX_EXP) p_ptr->max_exp = PY_MAX_EXP;
+       if (p_ptr->max_max_exp > PY_MAX_EXP) p_ptr->max_max_exp = PY_MAX_EXP;
 
        /* Hack -- maintain "max" experience */
        if (p_ptr->exp > p_ptr->max_exp) p_ptr->max_exp = p_ptr->exp;
 
+       /* Hack -- maintain "max max" experience */
+       if (p_ptr->max_exp > p_ptr->max_max_exp) p_ptr->max_max_exp = p_ptr->max_exp;
+
        /* Redraw experience */
        p_ptr->redraw |= (PR_EXP);
 
@@ -103,6 +104,7 @@ void check_experience(void)
 msg_format("¥ì¥Ù¥ë %d ¤Ë¤è¤¦¤³¤½¡£", p_ptr->lev);
 #else
                msg_format("Welcome to level %d.", p_ptr->lev);
+
 #endif
 
                /* Update some stuff */
@@ -112,7 +114,7 @@ msg_format("
                p_ptr->redraw |= (PR_LEV | PR_TITLE);
 
                /* Window stuff */
-               p_ptr->window |= (PW_PLAYER | PW_SPELL);
+               p_ptr->window |= (PW_PLAYER | PW_SPELL | PW_INVEN);
 
                /* HP¤ÈMP¤Î¾å¾ºÎ̤òɽ¼¨ */
                level_up = 1;
@@ -360,6 +362,24 @@ static bool kind_is_armor(int k_idx)
 
 
 /*
+ * Hack -- determine if a template is hafted weapon
+ */
+static bool kind_is_hafted(int k_idx)
+{
+       object_kind *k_ptr = &k_info[k_idx];
+
+       /* Analyze the item type */
+       if (k_ptr->tval == TV_HAFTED)
+       {
+               return (TRUE);
+       }
+
+       /* Assume not good */
+       return (FALSE);
+}
+
+
+/*
  * Check for "Quest" completion when a quest monster is killed or charmed.
  */
 void check_quest_completion(monster_type *m_ptr)
@@ -686,7 +706,7 @@ void monster_death(int m_idx, bool drop_item)
 
        bool do_gold = (!(r_ptr->flags1 & RF1_ONLY_ITEM));
        bool do_item = (!(r_ptr->flags1 & RF1_ONLY_GOLD));
-       bool cloned = FALSE;
+       bool cloned = (m_ptr->smart & SM_CLONED) ? TRUE : FALSE;
        int force_coin = get_coin_type(m_ptr->r_idx);
 
        object_type forge;
@@ -695,8 +715,8 @@ void monster_death(int m_idx, bool drop_item)
        bool drop_chosen_item = drop_item && !cloned && !p_ptr->inside_arena
                && !p_ptr->inside_battle && !is_pet(m_ptr);
 
-
-       if (world_monster) world_monster = FALSE;
+       /* The caster is dead? */
+       if (world_monster && world_monster == m_idx) world_monster = 0;
 
        /* Notice changes in view */
        if (r_ptr->flags7 & (RF7_LITE_MASK | RF7_DARK_MASK))
@@ -709,9 +729,6 @@ void monster_death(int m_idx, bool drop_item)
        y = m_ptr->fy;
        x = m_ptr->fx;
 
-       if (m_ptr->smart & SM_CLONED)
-               cloned = TRUE;
-
        if (record_named_pet && is_pet(m_ptr) && m_ptr->nickname)
        {
                char m_name[80];
@@ -808,9 +825,8 @@ msg_print("
 
        /* Drop a dead corpse? */
        if (one_in_(r_ptr->flags1 & RF1_UNIQUE ? 1 : 4) &&
-           ((r_ptr->flags9 & RF9_DROP_CORPSE) ||
-            (r_ptr->flags9 & RF9_DROP_SKELETON)) &&
-           !(p_ptr->inside_arena || p_ptr->inside_battle || (m_ptr->smart & SM_CLONED) || ((m_ptr->r_idx == today_mon) && is_pet(m_ptr))))
+           (r_ptr->flags9 & (RF9_DROP_CORPSE | RF9_DROP_SKELETON)) &&
+           !(p_ptr->inside_arena || p_ptr->inside_battle || cloned || ((m_ptr->r_idx == today_mon) && is_pet(m_ptr))))
        {
                /* Assume skeleton */
                bool corpse = FALSE;
@@ -821,7 +837,7 @@ msg_print("
                 */
                if (!(r_ptr->flags9 & RF9_DROP_SKELETON))
                        corpse = TRUE;
-               else if ((r_ptr->flags9 & RF9_DROP_CORPSE) && (r_ptr->flags1 && RF1_UNIQUE))
+               else if ((r_ptr->flags9 & RF9_DROP_CORPSE) && (r_ptr->flags1 & RF1_UNIQUE))
                        corpse = TRUE;
 
                /* Else, a corpse is more likely unless we did a "lot" of damage */
@@ -942,13 +958,13 @@ msg_print("
                {
                        if (!one_in_(7))
                        {
-                               int wy = py, wx = px;
+                               int wy = y, wx = x;
                                int attempts = 100;
                                bool pet = is_pet(m_ptr);
 
                                do
                                {
-                                       scatter(&wy, &wx, py, px, 20, 0);
+                                       scatter(&wy, &wx, y, x, 20, 0);
                                }
                                while (!(in_bounds(wy, wx) && cave_empty_bold2(wy, wx)) && --attempts);
 
@@ -987,6 +1003,7 @@ msg_print("
                if (p_ptr->pseikaku == SEIKAKU_NAMAKE)
                {
                        int a_idx = 0;
+                       artifact_type *a_ptr = NULL;
 
                        if (!drop_chosen_item) break;
 
@@ -1004,15 +1021,20 @@ msg_print("
                                        a_idx = ART_NAMAKE_ARMOR;
                                        break;
                                }
+
+                               a_ptr = &a_info[a_idx];
                        }
-                       while (a_info[a_idx].cur_num);
+                       while (a_ptr->cur_num);
 
-                       if (a_info[a_idx].cur_num == 0)
+                       /* Create the artifact */
+                       if (create_named_art(a_idx, y, x))
                        {
-                               /* Create the artifact */
-                               create_named_art(a_idx, y, x);
-                               a_info[a_idx].cur_num = 1;
+                               a_ptr->cur_num = 1;
+
+                               /* Hack -- Memorize location of artifact in saved floors */
+                               if (character_dungeon) a_ptr->floor_id = p_ptr->floor_id;
                        }
+                       else if (!preserve_mode) a_ptr->cur_num = 1;
                }
                break;
 
@@ -1067,7 +1089,7 @@ msg_print("
        case MON_A_GOLD:
        case MON_A_SILVER:
                if (drop_chosen_item && ((m_ptr->r_idx == MON_A_GOLD) ||
-                    ((m_ptr->r_idx == MON_A_SILVER) && !((r_ptr->r_pkills + 1) % 5))))
+                    ((m_ptr->r_idx == MON_A_SILVER) && (r_ptr->r_pkills % 5 == 0))))
                {
                        /* Get local object */
                        q_ptr = &forge;
@@ -1163,6 +1185,29 @@ msg_print("
                        }
                        break;
 
+               case '\\':
+                       if (dun_level > 4)
+                       {
+                               /* Get local object */
+                               q_ptr = &forge;
+
+                               /* Wipe the object */
+                               object_wipe(q_ptr);
+
+                               /* Activate restriction */
+                               get_obj_num_hook = kind_is_hafted;
+
+                               /* Prepare allocation table */
+                               get_obj_num_prep();
+
+                               /* Make a hafted weapon */
+                               make_object(q_ptr, mo_mode);
+
+                               /* Drop it in the dungeon */
+                               (void)drop_near(q_ptr, -1, y, x);
+                       }
+                       break;
+
                case '|':
                        if (m_ptr->r_idx != MON_STORMBRINGER)
                        {
@@ -1367,11 +1412,19 @@ msg_print("
 
                if ((a_idx > 0) && ((randint0(100) < chance) || p_ptr->wizard))
                {
-                       if (a_info[a_idx].cur_num == 0)
+                       artifact_type *a_ptr = &a_info[a_idx];
+
+                       if (!a_ptr->cur_num)
                        {
                                /* Create the artifact */
-                               create_named_art(a_idx, y, x);
-                               a_info[a_idx].cur_num = 1;
+                               if (create_named_art(a_idx, y, x))
+                               {
+                                       a_ptr->cur_num = 1;
+
+                                       /* Hack -- Memorize location of artifact in saved floors */
+                                       if (character_dungeon) a_ptr->floor_id = p_ptr->floor_id;
+                               }
+                               else if (!preserve_mode) a_ptr->cur_num = 1;
                        }
                }
 
@@ -1383,11 +1436,19 @@ msg_print("
                        if (d_info[dungeon_type].final_artifact)
                        {
                                int a_idx = d_info[dungeon_type].final_artifact;
-                               if (!a_info[a_idx].cur_num)
+                               artifact_type *a_ptr = &a_info[a_idx];
+
+                               if (!a_ptr->cur_num)
                                {
                                        /* Create the artifact */
-                                       create_named_art(a_idx, y, x);
-                                       a_info[a_idx].cur_num = 1;
+                                       if (create_named_art(a_idx, y, x))
+                                       {
+                                               a_ptr->cur_num = 1;
+
+                                               /* Hack -- Memorize location of artifact in saved floors */
+                                               if (character_dungeon) a_ptr->floor_id = p_ptr->floor_id;
+                                       }
+                                       else if (!preserve_mode) a_ptr->cur_num = 1;
 
                                        /* Prevent rewarding both artifact and "default" object */
                                        if (!d_info[dungeon_type].final_object) k_idx = 0;
@@ -1618,7 +1679,7 @@ static void get_exp_from_mon(int dam, monster_type *m_ptr)
                  m_exp_h += m_exp_l / 0x10000L;
                  m_exp_l %= 0x10000L;
 
-                 div *= r_ptr->hdice * (r_ptr->hside + 1);
+                 div *= r_ptr->hdice * (ironman_nightmare ? 2 : 1) * (r_ptr->hside + 1);
                }
                if (!dun_level && (!(r_ptr->flags8 & RF8_WILD_ONLY) || !(r_ptr->flags1 & RF1_UNIQUE))) div *= 5;
                div_h = div/0x10000L;
@@ -2004,9 +2065,9 @@ msg_format("%s
                        /* Special note at death */
                        if (explode)
 #ifdef JP
-msg_format("%s¤ÏÇúȯ¤·¤ÆÊ´¡¹¤Ë¤Ê¤Ã¤¿¡£", m_name);
+                               msg_format("%s¤ÏÇúȯ¤·¤ÆÊ´¡¹¤Ë¤Ê¤Ã¤¿¡£", m_name);
 #else
-                               msg_format("%s explodes into tiny shreds.", m_name);
+                               msg_format("%^s explodes into tiny shreds.", m_name);
 #endif
                        else
                        {
@@ -2274,12 +2335,6 @@ void redraw_window(void)
 {
        /* Only if the dungeon exists */
        if (!character_dungeon) return;
-       
-       /* Hack - Activate term zero for the redraw */
-       Term_activate(&term_screen[0]);
-       
-       /* Hack -- react to changes */
-       Term_xtra(TERM_XTRA_REACT, 0);
 
        /* Window stuff */
        p_ptr->window |= (PW_INVEN | PW_EQUIP | PW_SPELL | PW_PLAYER);
@@ -2292,9 +2347,6 @@ void redraw_window(void)
 
        /* Redraw */
        Term_redraw();
-
-       /* Refresh */
-       Term_fresh();
 }
 
 
@@ -3662,15 +3714,15 @@ static int target_set_aux(int y, int x, int mode, cptr info)
                /* Display a message */
                if (p_ptr->wizard)
 #ifdef JP
-                       sprintf(out_val, "%s%s%s%s[%s] %x %d %d %d %d (%d,%d)", s1, name, s2, s3, info, c_ptr->info, c_ptr->feat, c_ptr->dist, c_ptr->cost, c_ptr->when, x, y);
+                       sprintf(out_val, "%s%s%s%s[%s] %x %d %d %d %d (%d,%d)", s1, name, s2, s3, info, c_ptr->info, c_ptr->feat, c_ptr->dist, c_ptr->cost, c_ptr->when, y, x);
 #else
-               sprintf(out_val, "%s%s%s%s [%s] %x %d %d %d %d (%d,%d)", s1, s2, s3, name, info, c_ptr->info, c_ptr->feat, c_ptr->dist, c_ptr->cost, c_ptr->when, x, y);
+                       sprintf(out_val, "%s%s%s%s [%s] %x %d %d %d %d (%d,%d)", s1, s2, s3, name, info, c_ptr->info, c_ptr->feat, c_ptr->dist, c_ptr->cost, c_ptr->when, y, x);
 #endif
                else
 #ifdef JP
                        sprintf(out_val, "%s%s%s%s[%s]", s1, name, s2, s3, info);
 #else
-               sprintf(out_val, "%s%s%s%s [%s]", s1, s2, s3, name, info);
+                       sprintf(out_val, "%s%s%s%s [%s]", s1, s2, s3, name, info);
 #endif
 
                prt(out_val, 0, 0);
index 1278e17..1737f83 100644 (file)
 
 #endif /* USE_SPECIAL */
 
-/*
- * OPTION: Hack -- Macintosh stuff
- */
-#ifdef MACINTOSH
-
-/* Do not handle signals */
-# undef HANDLE_SIGNALS
-
-#endif
-
-
-/*
- * OPTION: Hack -- Windows stuff
- */
-#ifdef WINDOWS
-
-/* Do not handle signals */
-# undef HANDLE_SIGNALS
-
-#endif
-
 
 /*
  * OPTION: Hack -- EMX stuff
index 1ace876..6c5c5f6 100644 (file)
@@ -313,4 +313,53 @@ s16b maxroll(int num, int sides)
 }
 
 
+/*
+ * Extract a "random" number from 0 to m-1, using the "simple" RNG.
+ *
+ * This function should be used when generating random numbers in
+ * "external" program parts like the main-*.c files.  It preserves
+ * the current RNG state to prevent influences on game-play.
+ *
+ * Could also use rand() from <stdlib.h> directly. XXX XXX XXX
+ */
+u32b Rand_simple(u32b m)
+{
+       static bool initialized = FALSE;
+       static u32b simple_rand_value;
+       bool old_rand_quick;
+       u32b old_rand_value;
+       u32b result;
 
+
+       /* Save RNG state */
+       old_rand_quick = Rand_quick;
+       old_rand_value = Rand_value;
+
+       /* Use "simple" RNG */
+       Rand_quick = TRUE;
+
+       if (initialized)
+       {
+               /* Use stored seed */
+               Rand_value = simple_rand_value;
+       }
+       else
+       {
+               /* Initialize with new seed */
+               Rand_value = time(NULL);
+               initialized = TRUE;
+       }
+
+       /* Get a random number */
+       result = randint0(m);
+
+       /* Store the new seed */
+       simple_rand_value = Rand_value;
+
+       /* Restore RNG state */
+       Rand_quick = old_rand_quick;
+       Rand_value = old_rand_value;
+
+       /* Use the value */
+       return (result);
+}
index a276911..594c874 100644 (file)
@@ -96,6 +96,7 @@ extern s32b Rand_div(u32b m);
 extern s16b randnor(int mean, int stand);
 extern s16b damroll(int num, int sides);
 extern s16b maxroll(int num, int sides);
+extern u32b Rand_simple(u32b m);
 
 
 #endif
index 00e6318..b1c5ef9 100644 (file)
@@ -571,7 +571,12 @@ void Term_queue_char(int x, int y, byte a, char c)
        if (x < Term->x1[y]) Term->x1[y] = x;
        if (x > Term->x2[y]) Term->x2[y] = x;
 
+#ifdef JP
+       if (((scrn->a[y][x] & 0xf0) == 0xf0) ||
+           (scrn->a[y][x] & KANJI2))
+#else
        if ((scrn->a[y][x] & 0xf0) == 0xf0)
+#endif
                if ((x - 1) < Term->x1[y]) Term->x1[y]--;
 }