OSDN Git Service

hengband 1.0.8 fix2
authormogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sat, 12 Jan 2002 18:53:44 +0000 (18:53 +0000)
committermogami <mogami@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sat, 12 Jan 2002 18:53:44 +0000 (18:53 +0000)
49 files changed:
lib/edit/e_info_j.txt
lib/file/news.txt
lib/file/w_low_j.txt
lib/pref/pref-mac.prf
lib/pref/pref-win.prf
lib/pref/pref-x11.prf
src/artifact.c
src/birth.c
src/bldg.c
src/cave.c
src/chuukei.c
src/cmd1.c
src/cmd2.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/inet.c
src/init1.c
src/japanese.c
src/load.c
src/main-mac.c
src/main-win.c
src/main-x11.c
src/makefile.bcc
src/monster1.c
src/monster2.c
src/mutation.c
src/object1.c
src/object2.c
src/report.c
src/rooms.c
src/scores.c
src/spells1.c
src/spells2.c
src/spellstips.h
src/tables.c
src/util.c
src/variable.c
src/wild.c
src/wizard1.c
src/xtra1.c
src/xtra2.c
src/z-term.c

index cc6c286..014a7b8 100644 (file)
@@ -1179,13 +1179,13 @@ C:0:0:0:0
 F:RES_DARK
 
 N:179:ËâÆ»»Õ¤Î
-E:of Wizard
+E:of Wizardry
 X:26:10
 W:30:0:0:1500
 C:0:0:0:0
 
 N:180:µæ¶Ë̵Ũ¶ä²ÏºÇ¶¯¤Î
-E:of the Strongest in the Galaxy
+E:of the Mightiest in the Galaxy
 X:26:30
 W:100:0:0:50000
 C:0:0:15:0
index f8d441b..a40372a 100644 (file)
@@ -15,9 +15,8 @@
        ZAngband Jap ver.:    Mitsuhiro Itakera < m-itakura@geocities.co.jp >
 
 
-          Hengband: Mr.hoge (echizen @ s5.xrea.com) & Meny others
-                     http://echizen.s5.xrea.com/heng/
-
-           Hengband is running on UNIX/X11, Windows, Macintosh.
-   Please report bugs at BBS "http://echizen.s5.xrea.com/heng/eng-hengband/".
+           Hengband: Mr.Hoge (echizen @ s5.xrea.com) & Many others
+                       http://echizen.s5.xrea.com/heng/
 
+                 Send bug report to "echizen @ s5.xrea.com"
+                     or "mogami @ het.ph.tsukuba.ac.jp".
index 432198b..a07e82a 100644 (file)
@@ -126,7 +126,7 @@ N:11:BIAS_CHR
 ÁÇé¬é¯¤·¤¤
 
 N:*:Default
-40
+39
 ¡Ø¤­¤é¤á¤­´Ý¡Ù
 ¡Ø¥×¥ë¥È¥Ë¥¦¥à¡Ù
 ¡Ø¥ï¥ó¥À¡¼¥¹¥ï¥ó¥À¡¼¡Ù
index 9c616ab..6b6989d 100644 (file)
@@ -8,6 +8,66 @@
 #
 
 
+#
+# Macro Trigger configuration
+#
+# T:<trigger template>:<modifiers>:<modifier name1>:<modifier name2>:....
+# '&' in <trigger template> specifies location of modifier character.
+# '#' in <trigger template> specifies location of key code.
+#
+# If <trigger template> is null string, all trigger difinition will be cleared.
+
+T:&#:CSOX:control-:shift-:option-:command-
+
+# T:<trigger name>:<keycode>:<keycode with shiftkey>
+# '\' in <trigger name> is escape character.
+
+T:KP_Period:1
+T:KP_Star:3
+T:KP_Plus:5
+T:KP_Clear:7
+T:KP_Slash:11
+T:KP_Enter:12
+T:KP_Minus:14
+T:KP_Equal:17
+T:KP_0:18
+T:KP_1:19
+T:KP_2:20
+T:KP_3:21
+T:KP_4:22
+T:KP_5:23
+T:KP_6:24
+T:KP_7:25
+T:KP_8:27
+T:KP_9:28
+T:F5:32
+T:F6:33
+T:F7:34
+T:F3:35
+T:F8:36
+T:F10:37
+T:F11:39
+T:F13:41
+T:F14:43
+T:F9:45
+T:F12:47
+T:F15:49
+T:Help:50
+T:Home:51
+T:PgUp:52
+T:Del:53
+T:F4:54
+T:End:55
+T:F2:56
+T:PgDn:57
+T:F1:58
+T:Left:59
+T:Right:60
+T:Down:61
+T:Up:62
+
+
+
 ##### Simple Macros #####
 
 
index d4d9993..c8ef78d 100644 (file)
 
 
 #
+# Macro Trigger configuration
+#
+# T:<trigger template>:<modifiers>:<modifier name1>:<modifier name2>:....
+# '&' in <trigger template> specifies location of modifier character.
+# '#' in <trigger template> specifies location of key code.
+#
+# If <trigger template> is null string, all trigger difinition will be cleared.
+
+T:&x#:CSA:control-:shift-:alt-
+
+# T:<trigger name>:<keycode>:<keycode with shiftkey>
+# '\' in <trigger name> is escape character.
+
+# These keycodes are actually direct keyboard scan code taken from the 'dinput.h'.
+
+?:[EQU $KEYBOARD JAPAN]
+# For Japanese keyboard.
+T:-:0C
+T:^:0D
+T:@:1A
+T:[:1B
+T:;:27
+T:\::28
+T:]:2B
+T:,:33
+T:.:34
+T:\/:35
+T:_:73
+?:1
+
+?:[EQU $KEYBOARD 0]
+# For US keyboard.
+T:-:0C
+T:=:0D
+T:[:1A
+T:]:1B
+T:;:27
+T:\':28
+T:`:29
+T:\\:2B
+T:,:33
+T:.:34
+T:\/:35
+?:1
+
+############
+# Common keycodes (except NEC PC-98x1)
+
+?:[NOT [EQU $KEYBOARD NEC98]]
+T:1:02
+T:2:03
+T:3:04
+T:4:05
+T:5:06
+T:6:07
+T:7:08
+T:8:09
+T:9:0A
+T:0:0B
+T:Backspace:0E
+T:Q:10
+T:W:11
+T:E:12
+T:R:13
+T:T:14
+T:Y:15
+T:U:16
+T:I:17
+T:O:18
+T:P:19
+T:Enter:1C
+T:A:1E
+T:S:1F
+T:D:20
+T:F:21
+T:G:22
+T:H:23
+T:J:24
+T:K:25
+T:L:26
+T:Zenkaku_Hankaku:29
+T:Z:2C
+T:X:2D
+T:C:2E
+T:V:2F
+T:B:30
+T:N:31
+T:M:32
+T:Multiply:37
+T:CapsLock:3A
+T:F1:3B
+T:F2:3C
+T:F3:3D
+T:F4:3E
+T:F5:3F
+T:F6:40
+T:F7:41
+T:F8:42
+T:F9:43
+T:F10:44
+T:Numlock:45
+T:Scroll:46
+#T:KP_7:47
+T:Home:47
+#T:KP_8:48
+T:Up:48
+#T:KP_9:49
+T:Page_UP:49
+T:Subtract:4A
+#T:KP_4:4B
+T:Left:4B
+T:KP_5:4C
+#T:KP_6:4D
+T:Right:4D
+T:Add:4E
+#T:KP_1:4F
+T:End:4F
+#T:KP_2:50
+T:Down:50
+#T:KP_3:51
+T:Page_DOWN:51
+#T:KP_0:52
+T:Insert:52
+#T:Decimal:53
+T:Delete:53
+T:Oem_102:56
+T:F11:57
+T:F12:58
+T:Menu:5D
+T:F13:64
+T:F14:65
+T:F15:66
+T:Hiragana_Katakana:70
+T:Abnt_C1:73
+T:Henkan:79
+T:Muhenkan:7B
+T:Yen:7D
+T:Abnt_C2:7E
+T:KP_equals:8D
+T:Prevtrack:90
+T:Kanji:94
+T:Stop:95
+T:Ax:96
+T:Unlabeled:97
+T:Nexttrack:99
+T:KP_enter:9C
+T:Mute:A0
+T:Calculator:A1
+T:Playpause:A2
+T:Mediastop:A4
+T:Volumedown:AE
+T:Volumeup:B0
+T:Webhome:B2
+T:KP_comma:B3
+T:Divide:B5
+T:Sysrq:B7
+T:Pause:C5
+#T:Home:C7
+#T:Up:C8
+#T:Prior:C9
+#T:Left:CB
+#T:Right:CD
+#T:End:CF
+#T:Down:D0
+#T:Next:D1
+#T:Insert:D2
+#T:Delete:D3
+T:Lwin:DB
+T:Rwin:DC
+T:Apps:DD
+T:Power:DE
+T:Sleep:DF
+T:Wake:E3
+T:Websearch:E5
+T:Webfavorites:E6
+T:Webrefresh:E7
+T:Webstop:E8
+T:Webforward:E9
+T:Webback:EA
+T:Mycomputer:EB
+T:Mail:EC
+T:Mediaselect:ED
+?:1
+
+
+######################
+# For NEC PC-98x1
+
+?:[EQU $KEYBOARD NEC98]
+T:1:01
+T:2:02
+T:3:03
+T:4:04
+T:5:05
+T:6:06
+T:7:07
+T:8:08
+T:9:09
+T:0:0A
+T:-:0B
+T:^:0C
+T:Yen:0D
+T:Backspace:0E
+T:Q:10
+T:W:11
+T:E:12
+T:R:13
+T:T:14
+T:Y:15
+T:U:16
+T:I:17
+T:O:18
+T:P:19
+T:@:1a
+T:[:1b
+T:Enter:1C
+T:A:1D
+T:S:1E
+T:D:1F
+T:F:20
+T:G:21
+T:H:22
+T:J:23
+T:K:24
+T:L:25
+T:;:26
+T:\::27
+T:[:28
+T:Z:29
+T:X:2A
+T:C:2B
+T:V:2C
+T:B:2D
+T:N:2E
+T:M:2F
+T:,:30
+T:.:31
+T:\/:32
+T:_:33
+T:Henkan:35
+T:Page_down:36
+T:Page_up:37
+T:Insert:38
+T:Delete:39
+T:Up:3A
+T:Left:3B
+T:Right:3C
+T:Down:3D
+T:Home:3E
+T:End:3F
+T:Subtract:40
+T:Divide:41
+T:KP_7:42
+T:KP_8:43
+T:KP_9:44
+T:Multiply:45
+T:KP_4:46
+T:KP_5:47
+T:KP_6:48
+T:Add:49
+T:KP_1:4A
+T:KP_2:4B
+T:KP_3:4C
+T:Equal:4D
+T:KP_0:4E
+T:KP_comma:4F
+T:Decimal:50
+T:Muhenkan:51
+T:F11:52
+T:F12:53
+T:F13:54
+T:F14:55
+T:F15:56
+T:Pause:60
+T:F1:62
+T:F2:63
+T:F3:64
+T:F4:65
+T:F5:66
+T:F6:67
+T:F7:68
+T:F8:69
+T:F9:6A
+T:F10:6B
+T:CapsLock:71
+T:Hiragana_Katakana:72
+T:Menu:79
+
+?:[NOT [EQU $KEYBOARD NEC98]]
+
+
+#
 # Hack -- Some foreign keyboards have a special key on the keyboard, which
 # is used to generate the "<", ">", and "|" keys (alone, shifted, alt-ed).
 #
index f821a3c..5592cbf 100644 (file)
 #
 
 
+#
+# Macro Trigger configuration
+#
+# T:<trigger template>:<modifiers>:<modifier name1>:<modifier name2>:....
+# '&' in <trigger template> specifies location of modifier character.
+# '#' in <trigger template> specifies location of key code.
+#
+# If <trigger template> is null string, all trigger difinition will be cleared.
+
+T:&_#:NSOM:control-:shift-:alt-:mod2-
+
+# T:<trigger name>:<keycode>:<keycode with shiftkey>
+# '\' in <trigger name> is escape character.
+
+T:Clear:FF0B
+T:Pause:FF13
+T:Scroll_Lock:FF14
+T:Sys_Req:FF15
+T:Escape:FF1B
+T:Delete:FFFF
+T:Multi_key:FF20
+T:Codeinput:FF37
+T:SingleCandidate:FF3C
+T:MultipleCandidate:FF3D
+T:PreviousCandidate:FF3E
+T:Kanji:FF21
+T:Muhenkan:FF22
+T:Henkan_Mode:FF23
+T:Henkan:FF23
+T:Romaji:FF24
+T:Hiragana:FF25
+T:Katakana:FF26
+T:Hiragana_Katakana:FF27
+T:Zenkaku:FF28
+T:Hankaku:FF29
+T:Zenkaku_Hankaku:FF2A
+T:Touroku:FF2B
+T:Massyo:FF2C
+T:Kana_Lock:FF2D
+T:Kana_Shift:FF2E
+T:Eisu_Shift:FF2F
+T:Eisu_toggle:FF30
+T:Kanji_Bangou:FF37
+T:Zen_Koho:FF3D
+T:Mae_Koho:FF3E
+T:Home:FF50
+T:Left:FF51
+T:Up:FF52
+T:Right:FF53
+T:Down:FF54
+T:Page_Up:FF55
+T:Page_Down:FF56
+T:End:FF57
+T:Begin:FF58
+T:Select:FF60
+T:Print:FF61
+T:Execute:FF62
+T:Insert:FF63
+T:Undo:FF65
+T:Redo:FF66
+T:Menu:FF67
+T:Find:FF68
+T:Cancel:FF69
+T:Help:FF6A
+T:Break:FF6B
+T:Mode_switch:FF7E
+T:Num_Lock:FF7F
+T:KP_Space:FF80
+T:KP_Tab:FF89
+T:KP_Enter:FF8D
+T:KP_F1:FF91
+T:KP_F2:FF92
+T:KP_F3:FF93
+T:KP_F4:FF94
+T:KP_Home:FF95
+T:KP_Left:FF96
+T:KP_Up:FF97
+T:KP_Right:FF98
+T:KP_Down:FF99
+T:KP_Prior:FF9A
+T:KP_Page_Up:FF9A
+T:KP_Next:FF9B
+T:KP_Page_Down:FF9B
+T:KP_End:FF9C
+T:KP_Begin:FF9D
+T:KP_Insert:FF9E
+T:KP_Delete:FF9F
+T:KP_Equal:FFBD
+T:KP_Multiply:FFAA
+T:KP_Add:FFAB
+T:KP_Separator:FFAC
+T:KP_Subtract:FFAD
+T:KP_Decimal:FFAE
+T:KP_Divide:FFAF
+T:KP_0:FFB0
+T:KP_1:FFB1
+T:KP_2:FFB2
+T:KP_3:FFB3
+T:KP_4:FFB4
+T:KP_5:FFB5
+T:KP_6:FFB6
+T:KP_7:FFB7
+T:KP_8:FFB8
+T:KP_9:FFB9
+T:F1:FFBE
+T:F2:FFBF
+T:F3:FFC0
+T:F4:FFC1
+T:F5:FFC2
+T:F6:FFC3
+T:F7:FFC4
+T:F8:FFC5
+T:F9:FFC6
+T:F10:FFC7
+T:F11:FFC8
+T:F12:FFC9
+T:F13:FFCA
+T:F14:FFCB
+T:F15:FFCC
+T:F16:FFCD
+T:F17:FFCE
+T:F18:FFCF
+T:F19:FFD0
+T:F20:FFD1
+T:F21:FFD2
+T:F22:FFD3
+T:F23:FFD4
+T:F24:FFD5
+T:F25:FFD6
+T:F26:FFD7
+T:F27:FFD8
+T:F28:FFD9
+T:F29:FFDA
+T:F30:FFDB
+T:F31:FFDC
+T:F32:FFDD
+T:F33:FFDE
+T:F34:FFDF
+T:F35:FFE0
+
+T:\::3A:2A
+T:*:3A:2A
+T:;:3B:2B
+T:+:3B:2B
+T:,:2C:3C
+T:<:2C:3C
+T:-:2D:3D
+T:=:2D:3D
+T:.:2E:3E
+T:>:2E:3E
+T:\/:2F:3F
+T:?:2F:3F
+T:0:30:7E
+T:~:30:7E
+T:1:31:21
+T:!:31:21
+T:2:32:22
+T:":32:22
+T:3:33:23
+T:#:33:23
+T:4:34:24
+T:$:34:24
+T:5:35:25
+T:%:35:25
+T:6:36:26
+T:&:36:26
+T:7:37:27
+T:\':37:27
+T:8:38:28
+T:(:38:28
+T:9:39:29
+T:):39:29
+T:@:40:60
+T:`:40:60
+T:A:61:41
+T:B:62:42
+T:C:63:43
+T:D:64:44
+T:E:65:45
+T:F:66:46
+T:G:67:47
+T:H:68:48
+T:I:69:49
+T:J:6A:4A
+T:K:6B:4B
+T:L:6C:4C
+T:M:6D:4D
+T:N:6E:4E
+T:O:6F:4F
+T:P:70:50
+T:Q:71:51
+T:R:72:52
+T:S:73:53
+T:T:74:54
+T:U:75:55
+T:V:76:56
+T:W:77:57
+T:X:78:58
+T:Y:79:59
+T:Z:7A:5A
+T:[:5B:7B
+T:{:5B:7B
+T:\\:5C:5F
+T:_:5C:5F
+T:]:5D:7D
+T:}:5D:7D
+T:^:5E:7E
+T:~:5E:7E
+T:|:A5:7C
+
+
+
 
 # Keypad (0-9)
 
index 3738d3a..f1ef0fb 100644 (file)
@@ -1706,7 +1706,7 @@ bool create_artifact(object_type *o_ptr, bool a_scroll)
                char dummy_name[80];
                strcpy(dummy_name, "");
                (void)identify_fully_aux(o_ptr);
-//             o_ptr->ident |= IDENT_STOREB; /* This will be used later on... */
+
 #ifdef JP
                if (!(get_string("¤³¤Î¥¢¡¼¥Æ¥£¥Õ¥¡¥¯¥È¤ò²¿¤È̾ÉÕ¤±¤Þ¤¹¤«¡©", dummy_name, 80)))
 #else
index 48ff14b..cfaed81 100644 (file)
@@ -2125,7 +2125,6 @@ sprintf(buf, "
 do_cmd_options_aux(6, "½é´ü¥ª¥×¥·¥ç¥ó((*)¤Ï¥¹¥³¥¢¤Ë±Æ¶Á)");
 #else
                        do_cmd_options_aux(6, "Startup Opts((*)s effect score)");
-//                     do_cmd_options_aux(6, "Startup Options");
 #endif
 
                        screen_load();
@@ -2161,7 +2160,7 @@ static bool get_player_realms(void)
        /* Select the first realm */
        while (1)
        {
-               unsigned char temp[80*8];
+               char temp[80*8];
                cptr t;
 
                 p_ptr->realm1 = REALM_NONE;
@@ -2218,7 +2217,7 @@ put_str("Magic       :", 6, 1);
                /* Select the second realm */
                while (1)
                {
-                       unsigned char temp[80*8];
+                       char temp[80*8];
                        cptr t;
 
                        count = 0;
@@ -2917,7 +2916,7 @@ static void get_history(void)
        while ((n > 0) && (s[n-1] == ' ')) s[--n] = '\0';
 
        {
-        unsigned char temp[64*4];
+        char temp[64*4];
         roff_to_buf(s, 60, temp);
         t = temp;
         for(i=0 ; i<4 ; i++){
@@ -3420,9 +3419,6 @@ void player_outfit(void)
                        object_aware(q_ptr);
                        object_known(q_ptr);
 
-                       /* These objects are "storebought" */
-//                     q_ptr->ident |= IDENT_STOREB;
-
 #ifdef USE_SCRIPT
                        q_ptr->python = object_create_callback(q_ptr);
 #endif /* USE_SCRIPT */
@@ -3460,9 +3456,6 @@ void player_outfit(void)
                object_aware(q_ptr);
                object_known(q_ptr);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
 #ifdef USE_SCRIPT
                q_ptr->python = object_create_callback(q_ptr);
 #endif /* USE_SCRIPT */
@@ -3494,9 +3487,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_ARROW, SV_AMMO_NORMAL));
                q_ptr->number = (byte)rand_range(15, 20);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3511,9 +3501,6 @@ void player_outfit(void)
                /* Hack -- Give the player some arrows */
                object_prep(q_ptr, lookup_kind(TV_BOW, SV_SHORT_BOW));
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3529,9 +3516,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_ARROW, SV_AMMO_NORMAL));
                q_ptr->number = (byte)rand_range(15, 20);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3548,9 +3532,6 @@ void player_outfit(void)
                q_ptr->number = 1;
                q_ptr->pval = (byte)rand_range(25, 30);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3568,9 +3549,6 @@ void player_outfit(void)
                        object_prep(q_ptr, lookup_kind(i, 0));
                        q_ptr->number = 1;
 
-                       /* These objects are "storebought" */
-//                     q_ptr->ident |= IDENT_STOREB;
-
                        object_aware(q_ptr);
                        object_known(q_ptr);
 
@@ -3589,9 +3567,6 @@ void player_outfit(void)
                        object_prep(q_ptr, lookup_kind(TV_SHOT, SV_AMMO_LIGHT));
                        q_ptr->number = (byte)rand_range(15, 20);
 
-                       /* These objects are "storebought" */
-//                     q_ptr->ident |= IDENT_STOREB;
-
                        object_aware(q_ptr);
                        object_known(q_ptr);
 
@@ -3605,9 +3580,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_FOOD, SV_FOOD_BISCUIT));
                q_ptr->number = (byte)rand_range(2, 4);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3620,9 +3592,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_FOOD, SV_FOOD_WAYBREAD));
                q_ptr->number = (byte)rand_range(2, 4);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3635,9 +3604,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_FOOD, SV_FOOD_JERKY));
                q_ptr->number = (byte)rand_range(1, 3);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3650,9 +3616,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_FOOD, SV_FOOD_PINT_OF_ALE));
                q_ptr->number = (byte)rand_range(2, 4);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3665,9 +3628,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_FOOD, SV_FOOD_PINT_OF_WINE));
                q_ptr->number = (byte)rand_range(2, 4);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3683,9 +3643,6 @@ void player_outfit(void)
                object_prep(q_ptr, lookup_kind(TV_SPIKE, 0));
                q_ptr->number = (byte)rand_range(15, 20);
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -3739,9 +3696,6 @@ void player_outfit(void)
                        q_ptr->name2 = EGO_BRAND_POIS;
                }
 
-               /* These objects are "storebought" */
-//             q_ptr->ident |= IDENT_STOREB;
-
                object_aware(q_ptr);
                object_known(q_ptr);
 
@@ -4377,7 +4331,7 @@ do_cmd_options_aux(6, "
 
        while(1)
        {
-               unsigned char temp[80*9];
+               char temp[80*9];
                cptr t;
 
                /* Choose the players race */
@@ -4413,7 +4367,7 @@ do_cmd_options_aux(6, "
        /* Choose the players class */
        while(1)
        {
-               unsigned char temp[80*9];
+               char temp[80*9];
                cptr t;
 
                /* Choose the players race */
@@ -4448,7 +4402,7 @@ do_cmd_options_aux(6, "
        /* Choose the players seikaku */
        while(1)
        {
-               unsigned char temp[80*8];
+               char temp[80*8];
                cptr t;
 
                /* Choose the players race */
@@ -5367,7 +5321,7 @@ void player_birth(void)
 
 void dump_yourself(FILE *fff)
 {
-       unsigned char temp[80*8];
+       char temp[80*8];
        int i;
        cptr t;
 
index 6b2ef09..4ad04b6 100644 (file)
@@ -1342,7 +1342,7 @@ sprintf(tmp_str, "
                        prt(tmp_str, 21, 2);
 
                        /* Prevent savefile-scumming of the casino */
-//                     Rand_quick = TRUE;
+/*                     Rand_quick = TRUE; */
                        Rand_value = time(NULL);
 
                        do
@@ -1674,11 +1674,11 @@ 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 (!monster_dungeon(r_idx)) return FALSE; */
 
        /* Decline unique monsters */
-//     if (r_ptr->flags1 & (RF1_UNIQUE)) return (FALSE);
-//     if (r_ptr->flags7 & (RF7_UNIQUE_7)) return (FALSE);
+/*     if (r_ptr->flags1 & (RF1_UNIQUE)) return (FALSE); */
+/*     if (r_ptr->flags7 & (RF7_UNIQUE_7)) return (FALSE); */
 
        if (r_ptr->flags1 & (RF1_NEVER_MOVE)) return (FALSE);
        if (r_ptr->flags2 & (RF2_MULTIPLY)) return (FALSE);
@@ -2358,7 +2358,6 @@ static bool kankin(void)
                msg_print(NULL);
                return FALSE;
        }
-//     msg_print(NULL);
        return TRUE;
 }
 
@@ -2678,7 +2677,6 @@ msg_print("
                        msg_print("The barkeep gives you some gruel and a beer.");
 #endif
 
-//                     msg_print(NULL);
                        (void)set_food(PY_FOOD_MAX - 1);
                        break;
 
@@ -2701,7 +2699,6 @@ msg_print("
                                        msg_print("Sorry, but don't want anyone dying in here.");
 #endif
 
-//                                     return (FALSE);
                                }
                                else
                                {
@@ -2785,7 +2782,6 @@ msg_print("
 #endif
                                        }
 
-//                                     msg_print(NULL);
                                        p_ptr->leftbldg = TRUE;
                                }
                        }
@@ -2797,7 +2793,6 @@ msg_print("
                                msg_print("The rooms are available only at night.");
 #endif
 
-//                             msg_print(NULL);
                                return (FALSE);
                        }
                        break;
@@ -2812,7 +2807,6 @@ msg_print("
 #endif
 
                                        msg_format("%s", Rumor);
-//                             msg_print(NULL);
                                break;
                        }
        }
@@ -2833,7 +2827,6 @@ msg_format("
        msg_format("You collect %d gold pieces", i);
 #endif
 
-//     msg_print(NULL);
        p_ptr->au += i;
 }
 
@@ -2999,7 +2992,6 @@ msg_format("
                        msg_format("Your quest: kill %d %s", q_ptr->max_num, name);
 #endif
 
-//                     msg_print(NULL);
                }
                else
                {
@@ -3423,7 +3415,6 @@ msg_format("%s
                msg_format("You do not have the gold to improve %s!", tmp_str);
 #endif
 
-//             msg_print(NULL);
                return (FALSE);
        }
 
@@ -3491,8 +3482,6 @@ msg_format("
                msg_format("Improved %s for %d gold.", tmp_str, cost * o_ptr->number);
 #endif
 
-//             msg_print(NULL);
-
                /* Charge the money */
                p_ptr->au -= (cost * o_ptr->number);
 
@@ -3633,7 +3622,6 @@ msg_format("
                        msg_format("That doesn't need to be recharged.");
 #endif
 
-//                     msg_print(NULL);
                        return;
                }
        }
@@ -3674,7 +3662,6 @@ msg_print("
                        msg_print("This wand is already fully charged.");
 #endif
                }
-//             msg_print(NULL);
                return;
        }
        else if (o_ptr->tval == TV_STAFF && o_ptr->pval >= k_ptr->pval)
@@ -3695,7 +3682,6 @@ msg_print("
                        msg_print("This staff is already fully charged.");
 #endif
                }
-//             msg_print(NULL);
                return;
        }
 
@@ -3709,7 +3695,6 @@ msg_format("%s
                msg_format("You need %d gold to recharge %s!", price, tmp_str);
 #endif
 
-//             msg_print(NULL);
                return;
        }
 
@@ -3769,8 +3754,6 @@ msg_format("%s
        msg_format("%^s %s recharged for %d gold.", tmp_str, ((o_ptr->number > 1) ? "were" : "was"), price);
 #endif
 
-//     msg_print(NULL);
-
        /* Combine / Reorder the pack (later) */
        p_ptr->notice |= (PN_COMBINE | PN_REORDER);
 
@@ -4068,8 +4051,6 @@ msg_print("
 #else
                msg_print("You have no right to choose that!");
 #endif
-
-//             msg_print(NULL);
                return;
        }
 
@@ -4083,8 +4064,6 @@ msg_print("
 #else
                msg_print("You do not have the gold!");
 #endif
-
-//             msg_print(NULL);
                return;
        }
 
@@ -4211,8 +4190,6 @@ msg_print("
 #else
                                        msg_print("You just had your daily allowance!");
 #endif
-
-//                                     msg_print(NULL);
                                }
                                break;
                        case BACT_ENCHANT_ARROWS:
index 549d6bb..6bcd343 100644 (file)
@@ -2271,7 +2271,7 @@ static cptr simplify_list[][2] =
 
 static void display_shortened_item_name(object_type *o_ptr, int y)
 {
-       unsigned char buf[MAX_NLEN];
+       char buf[MAX_NLEN];
        char *c = buf;
        int len = 0;
 
@@ -2318,7 +2318,6 @@ static void display_shortened_item_name(object_type *o_ptr, int y)
                }
        }
        *c='\0';
-//     put_str(buf,y,0); 
        Term_putstr(0, y, 12, tval_to_attr[o_ptr->tval % 128], buf);
 }
 
@@ -2490,7 +2489,7 @@ void display_map(int *cy, int *cx)
                  display_shortened_item_name(autopick_obj, y);
 #else
          {
-                 unsigned char buf[13] = "\0";
+                 char buf[13] = "\0";
                  strncpy(buf,autopick_name[match_autopick],12);
                  buf[12] = '\0';
                  put_str(buf,y,0); 
index e1f217f..e5b5e67 100644 (file)
@@ -417,11 +417,11 @@ int connect_chuukei_server(char *prf_name)
                        
                        sndCall.addr.len        = sizeof(InetAddress);                          
                        sndCall.addr.buf        = (unsigned char*) &inAddr;
-                       sndCall.opt.buf         = nil;          // no connection options
+                       sndCall.opt.buf         = nil;        /* no connection options */
                        sndCall.opt.len         = 0;
-                       sndCall.udata.buf       = nil;          // no connection data
+                       sndCall.udata.buf       = nil;        /* no connection data */
                        sndCall.udata.len       = 0;
-                       sndCall.sequence        = 0;            // ignored by OTConnect
+                       sndCall.sequence        = 0;          /* ignored by OTConnect */
                        
                        err = OTConnect(ep, &sndCall, NULL);
                        
index 7743a65..144bcee 100644 (file)
@@ -802,7 +802,7 @@ bool can_player_destroy_object(object_type *o_ptr)
 int is_autopick(object_type *o_ptr)
 {
        int i;
-       unsigned char o_name[MAX_NLEN];
+       char o_name[MAX_NLEN];
        cptr str;
 #ifdef JP
        static char kanji_colon[] = "¡§";
@@ -4655,7 +4655,7 @@ msg_format("%s
 
                        energy_use = 0;
                        /* Hack -- Enter building */
-                       command_new = ']';
+                       command_new = 254;
                }
 
                /* Handle quest areas -KMW- */
@@ -4666,7 +4666,6 @@ msg_format("%s
 
                        energy_use = 0;
                        /* Hack -- Enter quest level */
-//                     command_new = '[';
                        command_new = 255;
                }
 
@@ -4781,7 +4780,7 @@ static int see_wall(int dir, int y, int x)
        if ((cave[y][x].feat >= FEAT_BLDG_HEAD) &&
            (cave[y][x].feat <= FEAT_BLDG_TAIL)) return (FALSE);
 
-//     if (cave[y][x].feat == FEAT_TREES) return (FALSE);
+/*     if (cave[y][x].feat == FEAT_TREES) return (FALSE); */
 
        /* Must be known to the player */
        if (!(cave[y][x].info & (CAVE_MARK))) return (FALSE);
@@ -5274,8 +5273,8 @@ static bool run_test(void)
                }
 
                /* Analyze unknown grids and floors */
-//             if (inv || cave_floor_bold(row, col) ||
-//                 (cave[row][col].feat == FEAT_TREES))
+/*             if (inv || cave_floor_bold(row, col) || */
+/*                 (cave[row][col].feat == FEAT_TREES)) */
                if (inv || cave_floor_bold(row, col))
                {
                        /* Looking for open area */
index 655ae0d..facb81c 100644 (file)
@@ -3140,7 +3140,7 @@ void do_cmd_stay(int pickup)
 
                energy_use = 0;
                /* Hack -- enter building */
-               command_new = ']';
+               command_new = 254;
        }
 
        /* Exit a quest if reach the quest exit */
index 6d8972a..f8c34db 100644 (file)
@@ -4599,7 +4599,7 @@ cptr inven_res_label =
 static void do_cmd_knowledge_inven_aux(FILE *fff, object_type *o_ptr, 
                                       int *j, byte tval, char *where)
 {
-  unsigned char o_name[MAX_NLEN];
+  char o_name[MAX_NLEN];
   u32b    f[3];
 
   if (!o_ptr->k_idx)return;
@@ -4823,7 +4823,7 @@ static void do_cmd_knowledge_inven(void)
        int i=0;
         int j=0;
 
-       unsigned char  where[32];
+       char  where[32];
 
        /* Open a new file */
        fff = my_fopen_temp(file_name, 1024);
@@ -5715,7 +5715,7 @@ static void do_cmd_knowledge_weapon_exp(void)
 #ifdef JP
        show_file(TRUE, file_name, "Éð´ï¤Î·Ð¸³ÃÍ", 0, 0);
 #else
-       show_file(TRUE, file_name, "Weapon Experiment", 0, 0);
+       show_file(TRUE, file_name, "Weapon Proficiency", 0, 0);
 #endif
 
 
@@ -5816,7 +5816,7 @@ static void do_cmd_knowledge_spell_exp(void)
 #ifdef JP
        show_file(TRUE, file_name, "ËâË¡¤Î·Ð¸³ÃÍ", 0, 0);
 #else
-       show_file(TRUE, file_name, "Spell Experiment", 0, 0);
+       show_file(TRUE, file_name, "Spell Proficiency", 0, 0);
 #endif
 
 
@@ -5838,7 +5838,7 @@ static void do_cmd_knowledge_skill_exp(void)
 #ifdef JP
        char skill_name[3][17]={"¥Þ¡¼¥·¥ã¥ë¥¢¡¼¥Ä", "ÆóÅáή          ", "¾èÇÏ            "};
 #else
-       char skill_name[3][20]={"martial arts    ", "dual wielding   ", "riding          "};
+       char skill_name[3][20]={"Martial Arts    ", "Dual Wielding   ", "Riding          "};
 #endif
 
        /* Open a new file */
@@ -5886,7 +5886,7 @@ static void do_cmd_knowledge_skill_exp(void)
 #ifdef JP
        show_file(TRUE, file_name, "µ»Ç½¤Î·Ð¸³ÃÍ", 0, 0);
 #else
-       show_file(TRUE, file_name, "Skill Experiment", 0, 0);
+       show_file(TRUE, file_name, "Miscellaneous Proficiency", 0, 0);
 #endif
 
 
@@ -6457,9 +6457,9 @@ void do_cmd_knowledge_virtues(void)
 #else
                if (p_ptr->align > 150) disp_align = "lawful";
                else if (p_ptr->align > 50) disp_align = "good";
-               else if (p_ptr->align > 10) disp_align = "nutral good";
-               else if (p_ptr->align > -11) disp_align = "nutral";
-               else if (p_ptr->align > -51) disp_align = "nutral evil";
+               else if (p_ptr->align > 10) disp_align = "neutral good";
+               else if (p_ptr->align > -11) disp_align = "neutral";
+               else if (p_ptr->align > -51) disp_align = "neutral evil";
                else if (p_ptr->align > -151) disp_align = "evil";
                else disp_align = "chaotic";
                fprintf(fff, "Your alighnment : %s\n", disp_align);
@@ -7129,9 +7129,9 @@ void do_cmd_knowledge(void)
                prt("(7) Display current pets", 10, 5);
                prt("(8) Display current quests", 11, 5);
                prt("(9) Display virtues", 12, 5);
-               prt("(a) Display weapon experiment", 13, 5);
-               prt("(b) Display spell experiment", 14, 5);
-               prt("(c) Display skill experiment", 15, 5);
+               prt("(a) Display weapon proficiency", 13, 5);
+               prt("(b) Display spell proficiency", 14, 5);
+               prt("(c) Display misc. proficiency", 15, 5);
                prt("(d) Display wanted monsters", 16, 5);
                prt("(e) Display home inventory", 17, 5);
                prt("(f) Display *identifyed* equip.", 18, 5);
index 64dcfef..58295b8 100644 (file)
@@ -68,7 +68,7 @@ static int get_spell(int *sn, cptr prompt, int sval, bool learned, int use_realm
        char        out_val[160];
        cptr        p;
 #ifdef JP
-        unsigned char jverb_buf[128];
+        char jverb_buf[128];
 #endif
        int menu_line = (use_menu ? 1 : 0);
 
@@ -1898,7 +1898,7 @@ msg_print("
 #ifdef JP
                if (!get_check("ÊѿȤ·¤Þ¤¹¡£¤è¤í¤·¤¤¤Ç¤¹¤«¡©")) return FALSE;
 #else
-               if (!get_check("You will polymorph yourself. Are you sure?")) return FALSE;
+               if (!get_check("You will polymorph yourself. Are you sure? ")) return FALSE;
 #endif
                do_poly_self();
                break;
index a171792..afa58be 100644 (file)
@@ -508,7 +508,7 @@ msg_print("
  */
 static bool item_tester_hook_eatable(object_type *o_ptr)
 {
-//     if ((o_ptr->tval==TV_FOOD) || ((o_ptr->tval==TV_CORPSE) && o_ptr->sval)) return (TRUE);
+/*     if ((o_ptr->tval==TV_FOOD) || ((o_ptr->tval==TV_CORPSE) && o_ptr->sval)) return (TRUE); */
        if (o_ptr->tval==TV_FOOD) return (TRUE);
 
        /* Assume not */
@@ -3040,7 +3040,6 @@ static int wand_effect(int sval, int dir, bool magic)
                        break;
                }
 
-//             case SV_WAND_ANNIHILATION:
                case SV_WAND_DISINTEGRATE:
                {
                        fire_ball(GF_DISINTEGRATE, dir, 200 + randint(p_ptr->lev * 2), 2);
@@ -5504,7 +5503,7 @@ msg_print("
 #ifdef JP
                                msg_print("¥¢¥ß¥å¥ì¥Ã¥È¤¬¿¼¤¤°Ç¤Ëʤ¤ï¤ì¤¿...");
 #else
-                               msg_print("nanka.");
+                               msg_print("Your amulet is coverd in pitch-darkness...");
 #endif
                                if (!get_aim_dir(&dir)) return;
                                fire_ball(GF_DARK, dir, 250, 4);
index 67fd9e3..9b7b14f 100644 (file)
 #define ROW_RACE                1
 #define COL_RACE                0       /* <race name> */
 
-//#define ROW_CLASS               2
-//#define COL_CLASS               0       /* <class name> */
+/*#define ROW_CLASS               2 */
+/*#define COL_CLASS               0 */      /* <class name> */
 
 #define ROW_TITLE               2
 #define COL_TITLE               0       /* <title> or <mode> */
 
-//#define ROW_SEIKAKU          4
-//#define COL_SEIKAKU          0       /* <seikaku> */
+/*#define ROW_SEIKAKU          4 */
+/*#define COL_SEIKAKU          0*/     /* <seikaku> */
 
 #define ROW_DAY                 21
 #define COL_DAY                 0       /* day */
@@ -4801,5 +4801,8 @@ extern int PlayerUID;
 #define HTTP_PROXY ""                   /* Default proxy url */
 #define HTTP_PROXY_PORT 0               /* Default proxy port */
 #define HTTP_TIMEOUT    20              /* Timeout length (second) */
-#define SCORE_SERVER "www.kmc.kyoto-u.ac.jp" /* Default score server url */
+#define SCORE_SERVER "www.kmc.gr.jp"    /* Default score server url */
 #define SCORE_PORT 80                   /* Default score server port */
+
+#define MAX_MACRO_MOD 12
+#define MAX_MACRO_TRIG 200
index a5463a1..4898a85 100644 (file)
@@ -2288,7 +2288,7 @@ msg_print("
        upkeep_factor = calculate_upkeep();
 
        /* Regenerate the mana */
-//     if (p_ptr->csp < p_ptr->msp)
+/*     if (p_ptr->csp < p_ptr->msp) */
        {
                if (upkeep_factor)
                {
@@ -3836,7 +3836,6 @@ msg_print("
                        /* Enter debug mode */
                        if (enter_debug_mode())
                        {
-//                             if (!p_ptr->wild_mode) do_cmd_debug();
                                do_cmd_debug();
                        }
                        break;
@@ -4030,14 +4029,13 @@ msg_print("
                }
 
                /* Enter building -KMW- */
-               case ']':
+               case 254:
                {
                        if (!p_ptr->wild_mode) do_cmd_bldg();
                        break;
                }
 
                /* Enter quest level -KMW- */
-//             case '[':
                case 255:
                {
                        if (!p_ptr->wild_mode) do_cmd_quest();
@@ -4073,8 +4071,6 @@ msg_print("
                                                {
                                                        p_ptr->oldpx = px;
                                                        p_ptr->oldpy = py;
-//                                                     py = p_ptr->wilderness_y;
-//                                                     px = p_ptr->wilderness_x;
                                                }
                                         }
                                 }
@@ -5210,7 +5206,7 @@ msg_format("%s(%c)
                        /* Place the cursor on the player */
                        move_cursor_relative(py, px);
 
-                       command_cmd = ']';
+                       command_cmd = 254;
 
                        /* Process the command */
                        process_command();
index f8b6472..8e3baf5 100644 (file)
@@ -4149,7 +4149,6 @@ bool hp_player(int num)
        /* Healing needed */
        if (p_ptr->chp < p_ptr->mhp)
        {
-//             chg_virtue(V_CHANCE, -1);
                if ((num > 0) && (p_ptr->chp < (p_ptr->mhp/3)))
                        chg_virtue(V_TEMPERANCE, 1);
                /* Gain hitpoints */
@@ -4732,8 +4731,6 @@ msg_print("
 
                do_cmd_rerate(FALSE);
 
-//             p_ptr->max_plv = p_ptr->lev;
-
                p_ptr->redraw |= (PR_BASIC);
 
                p_ptr->update |= (PU_BONUS);
index 8181f83..d2d1d3c 100644 (file)
  * Automatically generated "variable" declarations
  */
 
+extern int max_macrotrigger;
+extern char *macro_template;
+extern char *macro_modifier_chr;
+extern char *macro_modifier_name[MAX_MACRO_MOD];
+extern char *macro_trigger_name[MAX_MACRO_TRIG];
+extern char *macro_trigger_keycode[2][MAX_MACRO_TRIG];
+
+
 /* ÆüËܸìÈǵ¡Ç½ÄɲäǻȤ¦ */
 extern int level_up;
 
 extern int max_autopick;
-extern unsigned char *autopick_name[MAX_AUTOPICK];
-extern unsigned char *autopick_insc[MAX_AUTOPICK];
+extern char *autopick_name[MAX_AUTOPICK];
+extern char *autopick_insc[MAX_AUTOPICK];
 extern s16b autopick_action[MAX_AUTOPICK];
 
 /* tables.c */
@@ -441,6 +449,7 @@ extern dungeon_info_type *d_info;
 extern char *d_name;
 extern char *d_text;
 extern cptr ANGBAND_SYS;
+extern cptr ANGBAND_KEYBOARD;
 extern cptr ANGBAND_GRAF;
 extern cptr ANGBAND_DIR;
 extern cptr ANGBAND_DIR_APEX;
@@ -1479,7 +1488,6 @@ extern void dump_virtues(FILE * OutFile);
 
 #ifdef JP
 /* japanese.c */
-extern unsigned char *sindarin_to_kana(unsigned char *sindarin);
 extern void jverb1( const char *in , char *out);
 extern void jverb2( const char *in , char *out);
 extern void jverb3( const char *in , char *out);
index 866cbf4..49e575f 100644 (file)
@@ -393,7 +393,13 @@ static named_num gf_desc[] =
  *
  * Specify the set of colors to use when drawing a zapped spell
  *   Z:<type>:<str>
+ *
+ * Specify a macro trigger template and macro trigger names.
+ *   T:<template>:<modifier chr>:<modifier name1>:<modifier name2>:...
+ *   T:<trigger>:<keycode>:<shift-keycode>
+ *
  */
+
 errr process_pref_file_command(char *buf)
 {
        int i, j, n1, n2;
@@ -644,7 +650,95 @@ errr process_pref_file_command(char *buf)
                        }
                }
        }
+       /* set macro trigger names and a template */
+       /* Process "T:<trigger>:<keycode>:<shift-keycode>" */
+       /* Process "T:<template>:<modifier chr>:<modifier name>:..." */
+       else if (buf[0] == 'T')
+       {
+               int len, tok;
+               tok = tokenize(buf+2, 2+MAX_MACRO_MOD, zz, 0);
+               if (tok >= 4)
+               {
+                       int i;
+                       int num;
+
+                       if (macro_template != NULL)
+                       {
+                               free(macro_template);
+                               macro_template = NULL;
+                               for (i = 0; i < max_macrotrigger; i++)
+                                       free(macro_trigger_name[i]);
+                               max_macrotrigger = 0;
+                       }
+                       
+                       if (*zz[0] == '\0') return 0; /* clear template */
+                       num = strlen(zz[1]);
+                       if (2 + num != tok) return 1; /* error */
+
+                       len = strlen(zz[0])+1+num+1;
+                       for (i = 0; i < num; i++)
+                               len += strlen(zz[2+i])+1;
+                       macro_template = malloc(len);
+
+                       strcpy(macro_template, zz[0]);
+                       macro_modifier_chr =
+                               macro_template + strlen(macro_template) + 1;
+                       strcpy(macro_modifier_chr, zz[1]);
+                       macro_modifier_name[0] =
+                               macro_modifier_chr + strlen(macro_modifier_chr) + 1;
+                       for (i = 0; i < num; i++)
+                       {
+                               strcpy(macro_modifier_name[i], zz[2+i]);
+                               macro_modifier_name[i+1] = macro_modifier_name[i] + 
+                                       strlen(macro_modifier_name[i]) + 1;
+                       }
+               }
+               else if (tok >= 2)
+               {
+                       int m;
+                       char *t, *s;
+                       if (max_macrotrigger >= MAX_MACRO_TRIG)
+                       {
+#ifdef JP
+                               msg_print("¥Þ¥¯¥í¥È¥ê¥¬¡¼¤ÎÀßÄ꤬¿¤¹¤®¤Þ¤¹!");
+#else
+                               msg_print("Too many macro triggers!");
+#endif
+                               return 1;
+                       }
+                       m = max_macrotrigger;
+                       max_macrotrigger++;
+
+                       len = strlen(zz[0]) + 1 + strlen(zz[1]) + 1;
+                       if (tok == 3)
+                               len += strlen(zz[2]) + 1;
+                       macro_trigger_name[m] = malloc(len);
+
+                       t = macro_trigger_name[m];
+                       s = zz[0];
+                       while (*s)
+                       {
+                               if ('\\' == *s) s++;
+                               *t++ = *s++;
+                       }
+                       *t = '\0';
 
+                       macro_trigger_keycode[0][m] = macro_trigger_name[m] +
+                               strlen(macro_trigger_name[m]) + 1;
+                       strcpy(macro_trigger_keycode[0][m], zz[1]);
+                       if (tok == 3)
+                       {
+                               macro_trigger_keycode[1][m] = macro_trigger_keycode[0][m] +
+                                       strlen(macro_trigger_keycode[0][m]) + 1;
+                               strcpy(macro_trigger_keycode[1][m], zz[2]);
+                       }
+                       else
+                       {
+                               macro_trigger_keycode[1][m] = macro_trigger_keycode[0][m];
+                       }
+               }
+               return 0;
+       }
 
        /* Failure */
        return (1);
@@ -819,6 +913,11 @@ static cptr process_pref_file_expr(char **sp, char *fp)
                                v = ANGBAND_SYS;
                        }
 
+                        else if (streq(b+1, "KEYBOARD"))
+                        {
+                                v = ANGBAND_KEYBOARD;
+                        }
+
                        /* Graphics */
                        else if (streq(b+1, "GRAF"))
                        {
@@ -2824,7 +2923,7 @@ static void player_vuln_flags(u32b *f1, u32b *f2, u32b *f3)
  */
 static void display_player_flag_aux(int row, int col, char *header,
                                    int n, u32b flag1, u32b flag2,
-                                   s32b im_f[], s32b vul_f)
+                                   u32b im_f[], u32b vul_f)
 {
        int     i;
        u32b    f[3];
@@ -4562,9 +4661,9 @@ fprintf(fff, "\n\n  [
 #else
        if (p_ptr->align > 150) disp_align = "lawful";
        else if (p_ptr->align > 50) disp_align = "good";
-       else if (p_ptr->align > 10) disp_align = "nutral good";
-       else if (p_ptr->align > -11) disp_align = "nutral";
-       else if (p_ptr->align > -51) disp_align = "nutral evil";
+       else if (p_ptr->align > 10) disp_align = "neutral good";
+       else if (p_ptr->align > -11) disp_align = "neutral";
+       else if (p_ptr->align > -51) disp_align = "neutral evil";
        else if (p_ptr->align > -151) disp_align = "evil";
        else disp_align = "chaotic";
        fprintf(fff, "Your alighnment : %s\n", disp_align);
@@ -4604,7 +4703,7 @@ fprintf(fff, "  [ 
 #ifdef JP
                                strcpy(o_name, "(Éð´ï¤òξ¼ê»ý¤Á)");
 #else
-                               strcpy(o_name, "(wielding a weapon with two-handed.)");
+                               strcpy(o_name, "(wielding with two-hands)");
 #endif
                        fprintf(fff, "%c%s %s\n",
                                index_to_label(i), paren, o_name);
@@ -6511,7 +6610,7 @@ void close_game(void)
        char buf[1024];
        bool do_send = TRUE;
 
-//     cptr p = "[i:¥­¥ã¥é¥¯¥¿¤Î¾ðÊó, f:¥Õ¥¡¥¤¥ë½ñ¤­½Ð¤·, t:¥¹¥³¥¢, x:*´ÕÄê*, ESC:¥²¡¼¥à½ªÎ»]";
+/*     cptr p = "[i:¥­¥ã¥é¥¯¥¿¤Î¾ðÊó, f:¥Õ¥¡¥¤¥ë½ñ¤­½Ð¤·, t:¥¹¥³¥¢, x:*´ÕÄê*, ESC:¥²¡¼¥à½ªÎ»]"; */
 
        /* Handle stuff */
        handle_stuff();
@@ -6889,7 +6988,7 @@ errr process_pickpref_file(cptr name)
 {
        FILE *fp;
 
-       unsigned char buf[1024] , *s, *s2, isnew;
+       char buf[1024] , *s, *s2, isnew;
 
        int i;
 
@@ -6916,10 +7015,7 @@ errr process_pickpref_file(cptr name)
                num++;
 
                /* Skip "empty" lines */
-               if (buf[0]<32) continue;
-
-               /* Skip "blank" lines */
-               if (isspace(buf[0])) continue;
+               if (buf[0] == '\0') continue;
 
                /* Skip comments */
                if (buf[0] == '#') continue;
@@ -6958,7 +7054,19 @@ errr process_pickpref_file(cptr name)
                }
 
                 /* Nuke illegal char */
-                for(i=0 ; buf[i]>31 ; i++){/* Do nothing */} buf[i]=0;
+                for(i=0 ; buf[i]; i++)
+               {
+#ifdef JP
+                       if (iskanji(buf[i]))
+                       {
+                               i++;
+                               continue;
+                       }
+#endif
+                       if (isspace(buf[i]) && buf[i] != ' ')
+                               break;
+               }
+               buf[i]=0;
 
                 s = buf;
                 /* Skip '!','~' */
index 7f44990..1b74fbb 100644 (file)
@@ -1927,7 +1927,6 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode)
                        strcpy(temp, quark_str(o_ptr->art_name));
                        /* MEGA HACK by ita*/
                                 if ( strncmp( temp , "¡Ø" , 2 ) == 0 ) t=object_desc_str(t,  temp);else
-//                      if( strcmp(temp,"'Stormbringer'")==0 ) t=object_desc_str(t,"¡Ø¥¹¥È¡¼¥à¥Ö¥ê¥ó¥¬¡¼¡Ù");else
                         if( temp[0]=='\'' ) { itemp=strlen(temp);temp[itemp-1]=0; 
                         t=object_desc_str(t,"¡Ø");
                         t=object_desc_str(t,&temp[1]);
@@ -1969,7 +1968,7 @@ void object_desc(char *buf, object_type *o_ptr, int pref, int mode)
 #else
        if ((o_ptr->tval > TV_CAPTURE) && o_ptr->xtra3)
        {
-               t = object_desc_str(t,format(" of %s, the smith",player_name));
+               t = object_desc_str(t,format(" of %s the smith",player_name));
        }
 
        /* Hack -- Append "Artifact" or "Special" names */
index 038188d..6963e67 100644 (file)
@@ -441,11 +441,11 @@ static int connect_server(int timeout, const char *host, int port)
                        
                        sndCall.addr.len        = sizeof(InetAddress);                          
                        sndCall.addr.buf        = (unsigned char*) &inAddr;
-                       sndCall.opt.buf         = nil;          // no connection options
+                       sndCall.opt.buf         = nil;        /* no connection options */
                        sndCall.opt.len         = 0;
-                       sndCall.udata.buf       = nil;          // no connection data
+                       sndCall.udata.buf       = nil;        /* no connection data */
                        sndCall.udata.len       = 0;
-                       sndCall.sequence        = 0;            // ignored by OTConnect
+                       sndCall.sequence        = 0;          /* ignored by OTConnect */
                        
                        err = OTConnect(ep, &sndCall, NULL);
                        
index 17d2d59..d70503d 100644 (file)
@@ -7,7 +7,7 @@
 
 #ifdef JP
 #undef strchr
-char* _strchr(unsigned char* ptr, unsigned char ch)
+char* _strchr(char* ptr, char ch)
 {
   int k_flag = 0;
 
@@ -2965,7 +2965,7 @@ errr init_d_info_txt(FILE *fp, char *buf)
 
                        /* Scan for the values */
                        if (10 != sscanf(buf+2, "%d:%d:%d:%d:%d:%d:%d:%d:%x:%x",
-                                &min_lev, &max_lev, &min_plev, &mode, &min_alloc, &max_chance, &obj_good, &obj_great, &pit, &nest)) return (1);
+                                &min_lev, &max_lev, &min_plev, &mode, &min_alloc, &max_chance, &obj_good, &obj_great, (unsigned int *)&pit, (unsigned int *)&nest)) return (1);
 
                        /* Save the values */
                         d_ptr->mindepth = min_lev;
index a352a92..5c92d7a 100644 (file)
@@ -5,115 +5,6 @@
 
 #ifdef JP
 
-typedef struct sindarin2j sindarin2j;
-
-struct sindarin2j {
-  char *sindarin;
-  char *kana;
-};
-
-static const sindarin2j s2j_table[]= {
-{"mb","nb"},{"mp","np"},{"mv","nv"},{"mm","nm"},
-{"x","ks"},
-{"ar$","a-ru$"},{"ir$","ia$"},{"or$","o-ru$"},
-{"ra","¥é"},{"ri","¥ê"},{"ru","¥ë"},{"re","¥ì"},{"ro","¥í"},
-{"ir","ia"},{"ur","ua"},{"er","ea"},
-{"ar","a¥ë"},
-{"sha","¥·¥ã"},{"shi","¥·"},{"shu","¥·¥å"},{"she","¥·¥§"},{"sho","¥·¥ç"},
-{"tha","¥µ"},{"thi","¥·"},{"thu","¥¹"},{"the","¥»"},{"tho","¥½"},
-{"cha","¥Ï"},{"chi","¥Ò"},{"chu","¥Õ"},{"che","¥Ø"},{"cho","¥Û"},
-{"dha","¥¶"},{"dhi","¥¸"},{"dhu","¥º"},{"dhe","¥¼"},{"dho","¥¾"},
-{"ba","¥Ð"},{"bi","¥Ó"},{"bu","¥Ö"},{"be","¥Ù"},{"bo","¥Ü"},
-{"ca","¥«"},{"ci","¥­"},{"cu","¥¯"},{"ce","¥±"},{"co","¥³"},
-{"da","¥À"},{"di","¥Ç¥£"},{"du","¥É¥¥"},{"de","¥Ç"},{"do","¥É"},
-{"fa","¥Õ¥¡"},{"fi","¥Õ¥£"},{"fu","¥Õ"},{"fe","¥Õ¥§"},{"fo","¥Õ¥©"},
-{"ga","¥¬"},{"gi","¥®"},{"gu","¥°"},{"ge","¥²"},{"go","¥´"},
-{"ha","¥Ï"},{"hi","¥Ò"},{"hu","¥Õ"},{"he","¥Ø"},{"ho","¥Û"},
-{"ja","¥¸¥ã"},{"ji","¥¸"},{"ju","¥¸¥å"},{"je","¥¸¥§"},{"jo","¥¸¥ç"},
-{"ka","¥«"},{"ki","¥­"},{"ku","¥¯"},{"ke","¥±"},{"ko","¥³"},
-{"la","¥é"},{"li","¥ê"},{"lu","¥ë"},{"le","¥ì"},{"lo","¥í"},
-{"ma","¥Þ"},{"mi","¥ß"},{"mu","¥à"},{"me","¥á"},{"mo","¥â"},
-{"na","¥Ê"},{"ni","¥Ë"},{"nu","¥Ì"},{"ne","¥Í"},{"no","¥Î"},
-{"pa","¥Ñ"},{"pi","¥Ô"},{"pu","¥×"},{"pe","¥Ú"},{"po","¥Ý"},
-{"qu","¥¯"},
-{"sa","¥µ"},{"si","¥·"},{"su","¥¹"},{"se","¥»"},{"so","¥½"},
-{"ta","¥¿"},{"ti","¥Æ¥£"},{"tu","¥È¥¥"},{"te","¥Æ"},{"to","¥È"},
-{"va","¥ô¥¡"},{"vi","¥ô¥£"},{"vu","¥ô"},{"ve","¥ô¥§"},{"vo","¥ô¥©"},
-{"wa","¥ï"},{"wi","¥¦¥£"},{"wu","¥¦"},{"we","¥¦¥§"},{"wo","¥¦¥©"},
-{"ya","¥ä"},{"yu","¥æ"},{"yo","¥è"},
-{"za","¥¶"},{"zi","¥¸"},{"zu","¥º"},{"ze","¥¼"},{"zo","¥¾"},
-{"dh","¥º"},
-{"ch","¥Õ"},
-{"th","¥¹"},
-{"b","¥Ö"},
-{"c","¥¯"},
-{"d","¥É"},
-{"f","¥Õ"},
-{"g","¥°"},
-{"h","¥Õ"},
-{"j","¥¸¥å"},
-{"k","¥¯"},
-{"l","¥ë"},
-{"m","¥à"},
-{"n","¥ó"},
-{"p","¥×"},
-{"q","¥¯"},
-{"r","¥ë"},
-{"s","¥¹"},
-{"t","¥È"},
-{"v","¥ô"},
-{"w","¥¦"},
-{"y","¥¤"},
-{"a","¥¢"},
-{"i","¥¤"},
-{"u","¥¦"},
-{"e","¥¨"},
-{"o","¥ª"},
-{"-","¡¼"},
-{NULL,NULL}
-};
-
-unsigned char *sindarin_to_kana( unsigned char *sindarin ){
-static unsigned char buf1[256], buf2[256];
-int idx;
-
-sprintf(buf1,"%s$",sindarin);
-for(idx=0;buf1[idx];idx++) if( isupper(buf1[idx]))buf1[idx]=tolower(buf1[idx]);
-
-for(idx=0; s2j_table[idx].sindarin != NULL;idx++){
-  unsigned char *pat1 = s2j_table[idx].sindarin;
-  unsigned char *pat2 = s2j_table[idx].kana;
-  int len=strlen(pat1);
-  unsigned char *dest = buf2;
-  unsigned char *src = buf1;
-  for( ; *src ; ){
-    if( strncmp( src, pat1, len)==0 ){
-     strcpy( dest, pat2 );
-     src+=len;
-     dest+= strlen(pat2);
-    }
-    else
-      if( iskanji(*src) ){
-       *dest = *src;
-       dest++; src++;
-        *dest=*src;
-       dest++; src++;
-      }        
-      else{
-        *dest=*src;
-       dest++; src++;
-      }    
-  }  
-  *dest=0;
-  strcpy(buf1,buf2);
-}
-idx=0;
-while( buf1[idx] != '$' ) idx++;
-buf1[idx]=0;
-return(buf1);
-}
-
 /*ÆüËܸìÆ°»ì³èÍÑ (ÂǤġäÂǤäÆ,ÂǤÁ etc) */
 
 #define CMPTAIL(y) strncmp(&in[l-strlen(y)],y,strlen(y))
index fbfa071..e38c307 100644 (file)
@@ -283,7 +283,7 @@ static void rd_string(char *str, int max)
                                        tmp[i] = c1;
                        }
                        tmp[l] = 0;
-                       strcpy(str, tmp);
+                       strcpy(str, (char *)tmp);
                }
 #endif
 
@@ -1091,8 +1091,8 @@ static void rd_options(void)
        cheat_know = (c & 0x1000) ? TRUE : FALSE;
        cheat_live = (c & 0x2000) ? TRUE : FALSE;
 
-       rd_byte(&autosave_l);
-       rd_byte(&autosave_t);
+       rd_byte((byte *)&autosave_l);
+       rd_byte((byte *)&autosave_t);
        rd_s16b(&autosave_freq);
 
 
@@ -1649,8 +1649,8 @@ note(format("
                rd_byte(&tmp8u);
                if (tmp8u) p_ptr->action = ACTION_LEARN;
        }
-       rd_byte(&preserve_mode);
-       rd_byte(&wait_report_score);
+       rd_byte((byte *)&preserve_mode);
+       rd_byte((byte *)&wait_report_score);
 
        /* Future use */
        for (i = 0; i < 48; i++) rd_byte(&tmp8u);
@@ -2604,9 +2604,9 @@ note(format("
                }
 
                if (z_older_than(10, 3, 7)) p_ptr->wild_mode = FALSE;
-               else rd_byte(&p_ptr->wild_mode);
+               else rd_byte((byte *)&p_ptr->wild_mode);
                if (z_older_than(10, 3, 7)) ambush_flag = FALSE;
-               else rd_byte(&ambush_flag);
+               else rd_byte((byte *)&ambush_flag);
 
                /* Size of the wilderness */
                rd_s32b(&wild_x_size);
index 3c18975..cd41d93 100644 (file)
@@ -1165,8 +1165,8 @@ static OSErr XDDSWCreateGWorldFromPict(
        GDHandle saveGDevice;*/
        GWorldPtr tempGWorld;
        Rect pictRect;
-//     short depth;
-//     GDHandle theGDH;
+/*     short depth; */
+/*     GDHandle theGDH; */
        
        tempGWorld = NULL;
        
@@ -1174,10 +1174,10 @@ static OSErr XDDSWCreateGWorldFromPict(
        *pictGWorld = NULL;
 
        /* Get depth */
-//     depth = td->pixelDepth;
+/*     depth = td->pixelDepth; */
 
        /* Get GDH */
-//     theGDH = td->theGDH;
+/*     theGDH = td->theGDH; */
 
        /* Obtain size rectangle */
        pictRect.left = 0;
@@ -1198,19 +1198,19 @@ static OSErr XDDSWCreateGWorldFromPict(
        *pictGWorld = tempGWorld;
        
        /* Save GWorld */
-//     GetGWorld(&saveGWorld, &saveGDevice);
+/*     GetGWorld(&saveGWorld, &saveGDevice); */
 
        /* Activate */
-//     SetGWorld(tempGWorld, nil);
+/*     SetGWorld(tempGWorld, nil); */
 
        /* Dump the pict into the GWorld */
-//     (void)LockPixels(GetGWorldPixMap(tempGWorld));
-//     EraseRect(&pictRect);
-       //DrawPicture(pictH, &pictRect);
-//     UnlockPixels(GetGWorldPixMap(tempGWorld));
+/*     (void)LockPixels(GetGWorldPixMap(tempGWorld)); */
+/*     EraseRect(&pictRect); */
+/*     DrawPicture(pictH, &pictRect); */
+/*     UnlockPixels(GetGWorldPixMap(tempGWorld)); */
 
        /* Restore GWorld */
-//     SetGWorld(saveGWorld, saveGDevice);
+/*     SetGWorld(saveGWorld, saveGDevice); */
        
        return (0);
 }
@@ -1218,11 +1218,11 @@ static OSErr XDDSWCreateGWorldFromPict(
 
 static OSErr XDDSWUpDateGWorldFromPict( term_data *td )
 {
-//     GWorldPtr saveGWorld;
-//     GDHandle saveGDevice;
+/*     GWorldPtr saveGWorld; */
+/*     GDHandle saveGDevice; */
        Rect pictRect;
-//     short depth;
-//     GDHandle theGDH;
+/*     short depth; */
+/*     GDHandle theGDH; */
        
        GWorldFlags     errflag;
        
@@ -1231,10 +1231,10 @@ static OSErr XDDSWUpDateGWorldFromPict( term_data *td )
        if( td->bufferPort == NULL )
                return;
        /* Get depth */
-//     depth = td->pixelDepth;
+/*     depth = td->pixelDepth; */
 
        /* Get GDH */
-//     theGDH = td->theGDH;
+/*     theGDH = td->theGDH; */
        
        /* Obtain size rectangle */
        pictRect.top = 0;
@@ -1252,19 +1252,19 @@ static OSErr XDDSWUpDateGWorldFromPict( term_data *td )
        }
        
        /* Save GWorld */
-//     GetGWorld(&saveGWorld, &saveGDevice);
+/*     GetGWorld(&saveGWorld, &saveGDevice); */
 
        /* Activate */
-//     SetGWorld(td->bufferPort, nil);
+/*     SetGWorld(td->bufferPort, nil); */
 
        /* Dump the pict into the GWorld */
-//     (void)LockPixels(GetGWorldPixMap(td->bufferPort));
-//     EraseRect(&td->bufferPort->portRect);
+/*     (void)LockPixels(GetGWorldPixMap(td->bufferPort)); */
+/*     EraseRect(&td->bufferPort->portRect); */
        
-//     UnlockPixels(GetGWorldPixMap(td->bufferPort));
+/*     UnlockPixels(GetGWorldPixMap(td->bufferPort)); */
 
        /* Restore GWorld */
-//     SetGWorld(saveGWorld, saveGDevice);
+/*     SetGWorld(saveGWorld, saveGDevice); */
        
 }
 #endif
@@ -3396,7 +3396,7 @@ static void setup_menus(void)
        if (TRUE)
        {
                EnableItem(m, 7);
-//             EnableItem(m, 8);
+/*             EnableItem(m, 8); */
        }
 
 
@@ -4409,7 +4409,7 @@ static bool CheckEvents(bool wait)
                                setup_menus();
 
                                /* Mega-Hack -- allow easy exit if nothing to save */
-//                             if (!character_generated && (ch=='Q' || ch=='q')) ch = 'e';
+/*                             if (!character_generated && (ch=='Q' || ch=='q')) ch = 'e'; */
 
                                /* Run the Menu-Handler */
                                menu(MenuKey(ch));
index 61827c4..d875584 100644 (file)
@@ -580,7 +580,33 @@ static BYTE win_pal[256] =
  * Hack -- define which keys are "special"
  */
 static bool special_key[256];
+static bool ignore_key[256];
 
+#if 1
+/*
+ * Hack -- initialization list for "special_key"
+ */
+static byte special_key_list[] = {
+VK_CLEAR,VK_PAUSE,VK_CAPITAL,VK_KANA,VK_JUNJA,VK_FINAL,VK_KANJI,
+VK_CONVERT,VK_NONCONVERT,VK_ACCEPT,VK_MODECHANGE,
+VK_PRIOR,VK_NEXT,VK_END,VK_HOME,VK_LEFT,VK_UP,VK_RIGHT,VK_DOWN,
+VK_SELECT,VK_PRINT,VK_EXECUTE,VK_SNAPSHOT,VK_INSERT,VK_DELETE,
+VK_HELP,VK_APPS,
+VK_F1,VK_F2,VK_F3,VK_F4,VK_F5,VK_F6,VK_F7,VK_F8,VK_F9,VK_F10,
+VK_F11,VK_F12,VK_F13,VK_F14,VK_F15,VK_F16,VK_F17,VK_F18,VK_F19,VK_F20,
+VK_F21,VK_F22,VK_F23,VK_F24,VK_NUMLOCK,VK_SCROLL,
+VK_ATTN,VK_CRSEL,VK_EXSEL,VK_EREOF,VK_PLAY,VK_ZOOM,VK_NONAME,
+VK_PA1,0
+};
+
+static byte ignore_key_list[] = {
+VK_ESCAPE,VK_TAB,VK_SPACE,
+'F','W','O','H', /* these are menu characters.*/
+VK_SHIFT,VK_CONTROL,VK_MENU,VK_LWIN,VK_RWIN,
+VK_LSHIFT,VK_RSHIFT,VK_LCONTROL,VK_RCONTROL,VK_LMENU,VK_RMENU,0
+};
+
+#else
 /*
  * Hack -- initialization list for "special_key"
  *
@@ -660,6 +686,7 @@ static byte special_key_list[] =
 
        0
 };
+#endif
 
 /* bg */
 static void delete_bg()
@@ -3917,7 +3944,7 @@ LRESULT FAR PASCAL AngbandWndProc(HWND hWnd, UINT uMsg,
                        if (GetKeyState(VK_MENU)    & 0x8000) ma = TRUE;
 
                        /* Handle "special" keys */
-                       if (special_key[(byte)(wParam)])
+                       if (special_key[(byte)(wParam)] || (ma && !ignore_key[(byte)(wParam)]) )
                        {
                                /* Begin the macro trigger */
                                Term_keypress(31);
@@ -4259,7 +4286,7 @@ LRESULT FAR PASCAL AngbandListProc(HWND hWnd, UINT uMsg,
                        if (GetKeyState(VK_MENU)    & 0x8000) ma = TRUE;
 
                        /* Handle "special" keys */
-                       if (special_key[(byte)(wParam)])
+                       if (special_key[(byte)(wParam)] || (ma && !ignore_key[(byte)(wParam)]) )
                        {
                                /* Begin the macro trigger */
                                Term_keypress(31);
@@ -4794,6 +4821,11 @@ int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
        {
                special_key[special_key_list[i]] = TRUE;
        }
+       /* Initialize the keypress analyzer */
+       for (i = 0; ignore_key_list[i]; ++i)
+       {
+               ignore_key[ignore_key_list[i]] = TRUE;
+       }
 
        /* Determine if display is 16/256/true color */
        hdc = GetDC(NULL);
@@ -4832,6 +4864,27 @@ int FAR PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst,
        /* Set the system suffix */
        ANGBAND_SYS = "win";
 
+       /* Set the keyboard suffix */
+       if (7 != GetKeyboardType(0))
+               ANGBAND_KEYBOARD = "0";
+       else
+       {
+               /* Japanese keyboard */
+               switch (GetKeyboardType(1))
+               {
+               case 0x0D01: case 0x0D02:
+               case 0x0D03: case 0x0D04:
+               case 0x0D05: case 0x0D06:
+                       /* NEC PC-98x1 */
+                       ANGBAND_KEYBOARD = "NEC98";
+                       break;
+               default:
+                       /* PC/AT */
+                       ANGBAND_KEYBOARD = "JAPAN";
+               }
+       }
+
+
        /* Initialize */
        init_angband();
 
index 55d99eb..f3cea1b 100644 (file)
@@ -1956,7 +1956,7 @@ static errr CheckEvent(bool wait)
        XNextEvent(Metadpy->dpy, xev);
 
 #ifdef USE_XIM
-// #define DEBUG_EVENT
+/* #define DEBUG_EVENT */
 #ifdef DEBUG_EVENT
        {
                printf("event: type=%d", xev->type);
@@ -2202,7 +2202,7 @@ static errr CheckEvent(bool wait)
                        if(iwin->xic){
                                XUnsetICFocus(iwin->xic);
                        }
-                       // Focuswin = NULL;
+                       /* Focuswin = NULL;*/
                        break;
                }
 #endif
@@ -2993,7 +2993,7 @@ errr init_x11(int argc, char *argv[])
 #endif
        {
                char *current_locale = setlocale(LC_ALL, NULL);
-//             printf("set locale to \"%s\"\n", current_locale);
+/*             printf("set locale to \"%s\"\n", current_locale); */
                if(!strcmp(current_locale, "C")){
                        printf("WARNING: Locale is not supported. Non-english font may be displayed incorrectly.\n");
                }
@@ -3075,7 +3075,7 @@ errr init_x11(int argc, char *argv[])
                if(!p || !*p){
                        p = XSetLocaleModifiers("@im=");
                }
-//             printf("XMODIFIERS=\"%s\"\n", p);
+/*             printf("XMODIFIERS=\"%s\"\n", p); */
        }
        XRegisterIMInstantiateCallback(Metadpy->dpy, NULL, NULL, NULL, IMInstantiateCallback, NULL);
 #endif
index de080ea..d2fcf56 100644 (file)
@@ -96,7 +96,7 @@ $(EXE_FILE): $(OBJ) angband.res
        $(LINKER) -aa -x $(OBJ) c0w32.obj, $(EXE_FILE),, cw32.lib import32.lib,, angband.res
 
 angband.res: $(ANGBAND_RC)
-       $(RC) -r $(ANGBAND_RC)
+       $(RC) -r -foangband.res $(ANGBAND_RC)
 
 ########################### Implicit Rules ########################
 .c.obj:
index 89025f1..f33c6a5 100644 (file)
@@ -162,7 +162,7 @@ static void roff_aux(int r_idx, int remem)
                save_mem = *r_ptr;
 
                /* Hack -- Maximal kills */
-//             r_ptr->r_tkills = MAX_SHORT;
+/*             r_ptr->r_tkills = MAX_SHORT; */
 
                /* Hack -- Maximal info */
                r_ptr->r_wake = r_ptr->r_ignore = MAX_UCHAR;
index 160a543..a16acc7 100644 (file)
@@ -1314,7 +1314,7 @@ s16b get_mon_num(int level)
                        }
 
                        /* Some dungeon types restrict the possible monsters */
-//                     if(!restrict_monster_to_dungeon(r_ptr) && dun_level) continue;
+/*                     if(!restrict_monster_to_dungeon(r_ptr) && dun_level) continue; */
                }
 
                /* Accept */
@@ -2888,18 +2888,46 @@ bool place_monster_one(int y, int x, int r_idx, bool slp, bool friendly, bool pe
                if (r_ptr->flags1 & RF1_UNIQUE)
                {
                        if (r_ptr->level > p_ptr->lev + 30)
+#ifdef JP
                                color = "¹õ¤¯";
+#else
+                               color = "black";
+#endif
                        else if (r_ptr->level > p_ptr->lev + 15)
+#ifdef JP
                                color = "»ç¿§¤Ë";
+#else
+                               color = "perple";
+#endif
                        else if (r_ptr->level > p_ptr->lev + 5)
+#ifdef JP
                                color = "¥ë¥Ó¡¼¿§¤Ë";
+#else
+                               color = "deep red";
+#endif
                        else if (r_ptr->level > p_ptr->lev - 5)
+#ifdef JP
                                color = "ÀÖ¤¯";
+#else
+                               color = "red";
+#endif
                        else if (r_ptr->level > p_ptr->lev - 15)
+#ifdef JP
                                color = "¥Ô¥ó¥¯¿§¤Ë";
+#else
+                               color = "pink";
+#endif
                        else
+#ifdef JP
                                color = "Çò¤¯";
+#else
+                               color = "white";
+#endif
+#ifdef JP
                        msg_format("»ØÎؤÏ%s¸÷¤Ã¤¿¡£",color);
+#else
+                       msg_format("Your ring glows %s.",color);
+#endif
                }
        }
 
@@ -3244,7 +3272,7 @@ bool place_monster(int y, int x, bool slp, bool grp)
 bool alloc_horde(int y, int x)
 {
        monster_race *r_ptr = NULL;
-       int r_idx;
+       int r_idx = 0;
        int m_idx;
        int attempts = 1000;
        int cy = y;
index a34a8bf..402b83f 100644 (file)
@@ -3637,7 +3637,11 @@ msg_print("
                case MUT1_POLYMORPH:
                        if (racial_aux(18, 20, A_CON, 18))
                        {
+#ifdef JP
                                if (!get_check("ÊѿȤ·¤Þ¤¹¡£¤è¤í¤·¤¤¤Ç¤¹¤«¡©")) return;
+#else
+                               if (!get_check("You will polymorph your self. Are you sure? ")) return;
+#endif
                                do_poly_self();
                        }
                        break;
index 3f6eff4..0da9ad4 100644 (file)
@@ -4278,7 +4278,7 @@ void display_equip(void)
 #ifdef JP
                        strcpy(o_name, "(Éð´ï¤òξ¼ê»ý¤Á)");
 #else
-                       strcpy(o_name, "(wielding a weapon with two-handed.)");
+                       strcpy(o_name, "(wielding with two-hands)");
 #endif
                        attr = 1;
                }
@@ -4564,7 +4564,7 @@ int show_equip(int target_item)
 #ifdef JP
                        (void)strcpy(out_desc[k],"(Éð´ï¤òξ¼ê»ý¤Á)");
 #else
-                       (void)strcpy(out_desc[k],"(wielding a weapon with two-handed.)");
+                       (void)strcpy(out_desc[k],"(wielding with two-hands)");
 #endif
                        out_color[k] = 1;
                }
index 0109c9b..f724d3c 100644 (file)
@@ -7172,7 +7172,7 @@ static void drain_essence(void)
        int dec = 4;
        bool observe = FALSE;
        int old_ds, old_dd, old_to_h, old_to_d, old_ac, old_to_a, old_pval, old_name2;
-       s32b old_f1, old_f2, old_f3, new_f1, new_f2, new_f3;
+       u32b old_f1, old_f2, old_f3, new_f1, new_f2, new_f3;
        object_type *o_ptr;
        cptr            q, s;
        byte iy, ix, marked;
@@ -8126,7 +8126,7 @@ void erase_essence(void)
        cptr q, s;
        object_type *o_ptr;
        char o_name[MAX_NLEN];
-       s32b f1, f2, f3;
+       u32b f1, f2, f3;
 
        item_tester_hook = item_tester_hook_kaji;
 
index bd509e7..8175572 100644 (file)
@@ -33,7 +33,7 @@
 #endif
 
 /* for debug */
-//#define SCORE_PATH "http://www.kmc.gr.jp/~habu/local/scoretest/score.cgi"
+/*#define SCORE_PATH "http://www.kmc.gr.jp/~habu/local/scoretest/score.cgi" */
 
 /*
   simple buffer library
@@ -316,7 +316,7 @@ errr report_score(void)
   buf_sprintf(score, "realm1: %s\n", realm_names[p_ptr->realm1]);
   buf_sprintf(score, "realm2: %s\n", realm_names[p_ptr->realm2]);
   buf_sprintf(score, "killer: %s\n", died_from);
-  strftime(date, 9, "%y/%m/%d", localtime(&ct));
+  strftime(date, 9, "%Y/%m/%d", localtime(&ct));
   buf_sprintf(score, "date: %s\n", date);
   buf_sprintf(score, "-----charcter dump-----\n");
 
index 7b6b540..f4dfa6c 100644 (file)
@@ -3066,7 +3066,7 @@ static void cave_fill(byte y, byte x)
                        {
                                /* affect boundary */
                                cave[j][i].info |= CAVE_ICKY;
-//                             return;
+/*                             return; */
                        }
 
                        /* If within bounds */
index 3778f59..60c741a 100644 (file)
@@ -68,7 +68,7 @@ static int highscore_where(high_score *score)
                int old_score;
                if (highscore_read(&the_score)) return (i);
                old_score = atoi(the_score.pts);
-//             if (strcmp(the_score.pts, score->pts) < 0) return (i);
+/*             if (strcmp(the_score.pts, score->pts) < 0) return (i); */
                if (my_score > old_score) return (i);
        }
 
@@ -249,7 +249,7 @@ sprintf(tmp_val, "( %d 
 
                        /* Dump some info */
 #ifdef JP
-//sprintf(out_val, "%3d.%9s  %s%s%s¤È¤¤¤¦Ì¾¤Î%s¤Î%s (¥ì¥Ù¥ë %d)",
+/*sprintf(out_val, "%3d.%9s  %s%s%s¤È¤¤¤¦Ì¾¤Î%s¤Î%s (¥ì¥Ù¥ë %d)", */
                        sprintf(out_val, "%3d.%9s  %s%s%s - %s%s (¥ì¥Ù¥ë %d)",
                                place, the_score.pts,
                                seikaku_info[pa].title, (seikaku_info[pa].no ? "¤Î" : ""),
@@ -498,7 +498,7 @@ errr top_twenty(void)
        (void)sprintf(the_score.day, "%-.6s %-.2s", ctime(&ct) + 4, ctime(&ct) + 22);
 #else
        /* Save the date in standard form (8 chars) */
-//     (void)strftime(the_score.day, 9, "%m/%d/%y", localtime(&ct));
+/*     (void)strftime(the_score.day, 9, "%m/%d/%y", localtime(&ct)); */
        /* Save the date in standard encoded form (9 chars) */
        strftime(the_score.day, 10, "@%Y%m%d", localtime(&ct));
 #endif
index 69605fa..5a20f0d 100644 (file)
@@ -7646,7 +7646,7 @@ void breath_shape(u16b *path_g, int dist, int *pgrids, byte *gx, byte *gy, byte
                }
                
                /* Ripple outwards */
-//             mmove2(&by, &bx, y1, x1, y2, x2);
+/*             mmove2(&by, &bx, y1, x1, y2, x2); */
                
                by = GRID_Y(path_g[bdis]);
                bx = GRID_X(path_g[bdis]);
index a1545c5..843b15d 100644 (file)
@@ -119,9 +119,9 @@ sprintf(Dummy, "
 #else
        if (p_ptr->align > 150) disp_align = "lawful";
        else if (p_ptr->align > 50) disp_align = "good";
-       else if (p_ptr->align > 10) disp_align = "nutral good";
-       else if (p_ptr->align > -11) disp_align = "nutral";
-       else if (p_ptr->align > -51) disp_align = "nutral evil";
+       else if (p_ptr->align > 10) disp_align = "neutral good";
+       else if (p_ptr->align > -11) disp_align = "neutral";
+       else if (p_ptr->align > -51) disp_align = "neutral evil";
        else if (p_ptr->align > -151) disp_align = "evil";
        else disp_align = "chaotic";
        sprintf(Dummy, "Your alighnment : %s(%ld)", disp_align, p_ptr->align);
@@ -4353,7 +4353,7 @@ void aggravate_monsters(int who)
        for (i = 1; i < m_max; i++)
        {
                monster_type    *m_ptr = &m_list[i];
-//             monster_race    *r_ptr = &r_info[m_ptr->r_idx];
+/*             monster_race    *r_ptr = &r_info[m_ptr->r_idx]; */
 
                /* Paranoia -- Skip dead monsters */
                if (!m_ptr->r_idx) continue;
@@ -5530,7 +5530,7 @@ msg_format("%^s
                        c_ptr = &cave[yy][xx];
 
                        /* Paranoia -- never affect player */
-//                     if ((yy == py) && (xx == px)) continue;
+/*                     if ((yy == py) && (xx == px)) continue; */
 
                        /* Destroy location (if valid) */
                        if (cave_valid_bold(yy, xx))
@@ -5807,7 +5807,7 @@ static void cave_temp_room_aux(int y, int x)
        cave_type *c_ptr;
 
        /* Verify */
-//     if (!in_bounds(y, x)) return;
+/*     if (!in_bounds(y, x)) return; */
 
        /* Get the grid */
        c_ptr = &cave[y][x];
index aedf610..91cf1db 100644 (file)
@@ -689,7 +689,7 @@ static char *spell_tips[VALID_REALM][32] =
        },
 
        {
-               "gives improved infla-vision for a while.",
+               "gives infravision for a while.",
                "gives regeneration ability for a while.",
                "satisfis hunger.",
                "gives resistance to cold. This resistance can be added to which from equipment for more powerful resistance.",
index 23081b0..97ae174 100644 (file)
@@ -1211,13 +1211,13 @@ owner_type owners[MAX_STORES][MAX_OWNERS] =
 
 #ifdef JP
                 { "¥Õ¥ì¥ó¥É¥ê¡¼¤Ê¥Ó¥ë¥Ü",       200,    170,  108,   5,  15,  RACE_HOBBIT},
-//                { "²±É¼ԥ饹¥È¥ê¥ó",       200,    175,  108,   4,  12,  RACE_HUMAN}, 
+/*                { "²±É¼ԥ饹¥È¥ê¥ó",       200,    175,  108,   4,  12,  RACE_HUMAN},  */
                 { "²±É¼ԥê¥ó¥¹¥¦¥£¥ó¥É",       200,    175,  108,   4,  12,  RACE_HUMAN}, 
                 { "ÇؤÎÄ㤤¥µ¥ë¥¿¥ó",             300,    170,  107,   5,  15,  RACE_GNOME},
                 { "¥Ï¥ó¥µ¥à¤Ê¥é¥¤¥¢=¥¨¥ë",      300,    165,  107,   6,  18,  RACE_ELF},
 #else
                { "Bilbo the Friendly",         200,    170, 108,  5, 15, RACE_HOBBIT},
-//             { "Raistlin the Chicken",       200,    175, 108,  4, 12, RACE_HUMAN},
+/*             { "Raistlin the Chicken",       200,    175, 108,  4, 12, RACE_HUMAN}, */
                { "Rincewind the Chicken",       200,    175, 108,  4, 12, RACE_HUMAN},
                { "Sultan the Midget",          300,    170, 107,  5, 15, RACE_GNOME},
                { "Lyar-el the Comely",         300,    165, 107,  6, 18, RACE_ELF},
@@ -15682,7 +15682,6 @@ monster_power monster_powers[MAX_MONSPELLS] =
 { 48, 120,  90,    0,  50, A_INT,  "¥¢¥ó¥Ð¡¼¤Î²¦¤Î¾¤´­"        , "summon amberites"},
 { 50, 150,  95,    0,  50, A_INT,  "¥æ¥Ë¡¼¥¯¥â¥ó¥¹¥¿¡¼¤Î¾¤´­"  , "summon unique"},
 #else
-//...shouryaku.
 {  1,   1,  10,    0,  15, A_CON,  "shriek"},
 { 10,   4,  35,   89,  40, A_INT,  "XXX1"},
 { 40,  35,  85,    0,  40, A_INT,  "dispel magic"},
index 1c82122..bb97a6c 100644 (file)
@@ -979,6 +979,118 @@ static int dehex(char c)
 }
 
 
+static int my_stricmp(cptr a, cptr b)
+{
+       cptr s1, s2;
+       char z1, z2;
+
+       /* Scan the strings */
+       for (s1 = a, s2 = b; TRUE; s1++, s2++)
+       {
+               z1 = FORCEUPPER(*s1);
+               z2 = FORCEUPPER(*s2);
+               if (z1 < z2) return (-1);
+               if (z1 > z2) return (1);
+               if (!z1) return (0);
+       }
+}
+
+static int my_strnicmp(cptr a, cptr b, int n)
+{
+       cptr s1, s2;
+       char z1, z2;
+
+       /* Scan the strings */
+       for (s1 = a, s2 = b; n > 0; s1++, s2++, n--)
+       {
+               z1 = FORCEUPPER(*s1);
+               z2 = FORCEUPPER(*s2);
+               if (z1 < z2) return (-1);
+               if (z1 > z2) return (1);
+               if (!z1) return (0);
+       }
+       return 0;
+}
+
+
+static void trigger_text_to_ascii(char **bufptr, cptr *strptr)
+{
+       char *s = *bufptr;
+       cptr str = *strptr;
+       bool mod_status[MAX_MACRO_MOD];
+
+       int i, len = 0;
+       int shiftstatus = 0;
+       cptr key_code;
+
+       if (macro_template == NULL)
+               return;
+       
+       for (i = 0; macro_modifier_chr[i]; i++)
+               mod_status[i] = FALSE;
+       str++;
+
+       /* Examine modifier keys */
+       while (1)
+       {
+               for (i=0; macro_modifier_chr[i]; i++)
+               {
+                       len = strlen(macro_modifier_name[i]);
+                       
+                       if(!my_strnicmp(str, macro_modifier_name[i], len))
+                               break;
+               }
+               if (!macro_modifier_chr[i]) break;
+               str += len;
+               mod_status[i] = TRUE;
+               if ('S' == macro_modifier_chr[i])
+                       shiftstatus = 1;
+       }
+       for (i = 0; i < max_macrotrigger; i++)
+       {
+               len = strlen(macro_trigger_name[i]);
+               if (!my_strnicmp(str, macro_trigger_name[i], len) && ']' == str[len])
+               {
+                       /* a trigger name found */
+                       break;
+               }
+       }
+       if (i == max_macrotrigger)
+               return;
+       key_code = macro_trigger_keycode[shiftstatus][i];
+       str += len;
+
+       *s++ = (char)31;
+       for (i = 0; macro_template[i]; i++)
+       {
+               char ch = macro_template[i];
+               int j;
+
+               switch(ch)
+               {
+               case '&':
+                       for (j = 0; macro_modifier_chr[j]; j++) {
+                               if (mod_status[j])
+                                       *s++ = macro_modifier_chr[j];
+                       }
+                       break;
+               case '#':
+                       strcpy(s, key_code);
+                       s += strlen(key_code);
+                       break;
+               default:
+                       *s++ = ch;
+                       break;
+               }
+       }
+       *s++ = (char)13;
+
+       *bufptr = s;
+       *strptr = str; /* where **strptr == ']' */
+       return;
+}
+
+
 /*
  * Hack -- convert a printable string into real ascii
  *
@@ -999,6 +1111,13 @@ void text_to_ascii(char *buf, cptr str)
                        /* Skip the backslash */
                        str++;
 
+                        /* Macro Trigger */
+                       if (*str == '[')
+                       {
+                               trigger_text_to_ascii(&s, &str);
+                       }
+                       else
+
                        /* Hex-mode XXX */
                        if (*str == 'x')
                        {
@@ -1105,6 +1224,68 @@ void text_to_ascii(char *buf, cptr str)
 }
 
 
+bool trigger_ascii_to_text(char **bufptr, cptr *strptr)
+{
+       char *s = *bufptr;
+       cptr str = *strptr;
+       char key_code[100];
+       int i;
+       cptr tmp;
+
+       if (macro_template == NULL)
+               return FALSE;
+
+       *s++ = '\\';
+       *s++ = '[';
+
+       for (i = 0; macro_template[i]; i++)
+       {
+               int j;
+               char ch = macro_template[i];
+
+               switch(ch)
+               {
+               case '&':
+                       while ((tmp = strchr(macro_modifier_chr, *str)))
+                       {
+                               j = (int)(tmp - macro_modifier_chr);
+                               tmp = macro_modifier_name[j];
+                               while(*tmp) *s++ = *tmp++;
+                               str++;
+                       }
+                       break;
+               case '#':
+                       for (j = 0; *str && *str != (char)13; j++)
+                               key_code[j] = *str++;
+                       key_code[j] = '\0';
+                       break;
+               default:
+                       if (ch != *str) return FALSE;
+                       str++;
+               }
+       }
+       if (*str++ != (char)13) return FALSE;
+
+       for (i = 0; i < max_macrotrigger; i++)
+       {
+               if (!my_stricmp(key_code, macro_trigger_keycode[0][i])
+                   || !my_stricmp(key_code, macro_trigger_keycode[1][i]))
+                       break;
+       }
+       if (i == max_macrotrigger)
+               return FALSE;
+
+       tmp = macro_trigger_name[i];
+       while (*tmp) *s++ = *tmp++;
+
+       *s++ = ']';
+       
+       *bufptr = s;
+       *strptr = str;
+       return TRUE;
+}
+
+
 /*
  * Hack -- convert a string into a printable form
  */
@@ -1117,6 +1298,17 @@ void ascii_to_text(char *buf, cptr str)
        {
                byte i = (byte)(*str++);
 
+               /* Macro Trigger */
+               if (i == 31)
+               {
+                       if(!trigger_ascii_to_text(&s, &str))
+                       {
+                               *s++ = '^';
+                               *s++ = '_';
+                       }
+               }
+               else
+
                if (i == ESCAPE)
                {
                        *s++ = '\\';
@@ -1880,7 +2072,7 @@ char inkey(void)
 
 
                /* Treat back-quote as escape */
-//             if (ch == '`') ch = ESCAPE;
+/*             if (ch == '`') ch = ESCAPE; */
 
 
                /* End "macro trigger" */
@@ -3112,7 +3304,7 @@ bool get_check(cptr prompt)
        while (TRUE)
        {
                i = inkey();
-//             if (quick_messages) break;
+/*             if (quick_messages) break; */
                if (i == ESCAPE) break;
                if (strchr("YyNn", i)) break;
                bell();
@@ -3934,9 +4126,9 @@ prt(format("
                        {
                                /* Get a real command */
 #ifdef JP
-                               if (!get_com("¥³¥Þ¥ó¥É: ", &cmd, FALSE))
+                               if (!get_com("¥³¥Þ¥ó¥É: ", (char *)&cmd, FALSE))
 #else
-                               if (!get_com("Command: ", &cmd, FALSE))
+                               if (!get_com("Command: ", (char *)&cmd, FALSE))
 #endif
 
                                {
@@ -3955,9 +4147,9 @@ prt(format("
                {
                        /* Get a real command */
 #ifdef JP
-                       (void)get_com("¥³¥Þ¥ó¥É: ", &cmd, FALSE);
+                       (void)get_com("¥³¥Þ¥ó¥É: ", (char *)&cmd, FALSE);
 #else
-                       (void)get_com("Command: ", &cmd, FALSE);
+                       (void)get_com("Command: ", (char *)&cmd, FALSE);
 #endif
 
 
@@ -3971,9 +4163,9 @@ prt(format("
                {
                        /* Get a new command and controlify it */
 #ifdef JP
-                       if (get_com("CTRL: ", &cmd, FALSE)) cmd = KTRL(cmd);
+                       if (get_com("CTRL: ", (char *)&cmd, FALSE)) cmd = KTRL(cmd);
 #else
-                       if (get_com("Control: ", &cmd, FALSE)) cmd = KTRL(cmd);
+                       if (get_com("Control: ", (char *)&cmd, FALSE)) cmd = KTRL(cmd);
 #endif
 
                }
@@ -4557,7 +4749,7 @@ void roff_to_buf(cptr str, int maxlen, char *tbuf)
                        ch[0] = ' ';
 #endif
 
-               if (line_len >= maxlen || str[read_pt] == '\n')
+               if (line_len >= maxlen - 1 || str[read_pt] == '\n')
                {
                        int word_len;
 
@@ -4582,8 +4774,8 @@ void roff_to_buf(cptr str, int maxlen, char *tbuf)
                        word_punct = read_pt;
 #ifdef JP
                if (kanji &&
-                   strcmp(ch, "¡£") != 0 && strcmp(ch, "¡¢") != 0 &&
-                   strcmp(ch, "¥£") != 0 && strcmp(ch, "¡¼") != 0)
+                   strcmp((char *)ch, "¡£") != 0 && strcmp((char *)ch, "¡¢") != 0 &&
+                   strcmp((char *)ch, "¥£") != 0 && strcmp((char *)ch, "¡¼") != 0)
                        word_punct = read_pt;
 #endif
                tbuf[write_pt++] = ch[0];
index 1e67f68..2b29a10 100644 (file)
@@ -26,11 +26,18 @@ cptr copyright[5] =
 };
 
 
+int max_macrotrigger = 0;
+char *macro_template = NULL;
+char *macro_modifier_chr;
+char *macro_modifier_name[MAX_MACRO_MOD];
+char *macro_trigger_name[MAX_MACRO_TRIG];
+char *macro_trigger_keycode[2][MAX_MACRO_TRIG];
+
 /* ¥ì¥Ù¥ë¥¢¥Ã¥×¤Î»þ¤Ë¾å¾ºÎ̤òɽ¼¨¤¹¤ë¤Î¤Ë»È¤¦ */
 int level_up = 0;
 int max_autopick=0;
-unsigned char *autopick_name[MAX_AUTOPICK];
-unsigned char *autopick_insc[MAX_AUTOPICK];
+char *autopick_name[MAX_AUTOPICK];
+char *autopick_insc[MAX_AUTOPICK];
 s16b autopick_action[MAX_AUTOPICK];
 
 /*
@@ -826,6 +833,16 @@ char *d_text;
 cptr ANGBAND_SYS = "xxx";
 
 /*
+ * Hack -- The special Angband "Keyboard Suffix"
+ * This variable is used to choose an appropriate macro-trigger definition
+ */
+#ifdef JP
+cptr ANGBAND_KEYBOARD = "JAPAN";
+#else
+cptr ANGBAND_KEYBOARD = "0";
+#endif
+
+/*
  * Hack -- The special Angband "Graphics Suffix"
  * This variable is used to choose an appropriate "graf-xxx" file
  */
index dbcccf4..127c1bb 100644 (file)
@@ -845,7 +845,7 @@ void wilderness_gen(void)
 
        player_place(p_ptr->oldpy, p_ptr->oldpx);
        p_ptr->leftbldg = FALSE;
-       // p_ptr->leaving_dungeon = FALSE;
+       /* p_ptr->leaving_dungeon = FALSE;*/
 
        lim = (generate_encounter==TRUE)?40:MIN_M_ALLOC_TN;
 
index 044762e..8c190da 100644 (file)
@@ -809,7 +809,7 @@ static const flag_desc misc_flags3_desc[] =
        { TR3_TELEPATHY,          "¥Æ¥ì¥Ñ¥·¡¼" },
        { TR3_SLOW_DIGEST,        "Ãپò½" },
        { TR3_REGEN,              "µÞ®²óÉü" },
-//     { TR3_XTRA_MIGHT,         "¶¯Îϼͷâ" },
+/*     { TR3_XTRA_MIGHT,         "¶¯Îϼͷâ" }, */
        { TR3_XTRA_SHOTS,         "Äɲüͷâ" },        /* always +1? */
        { TR3_DRAIN_EXP,          "·Ð¸³Ã͵ۼý" },
        { TR3_AGGRAVATE,          "È¿´¶" },
@@ -826,7 +826,7 @@ static const flag_desc misc_flags3_desc[] =
        { TR3_TELEPATHY,          "ESP" },
        { TR3_SLOW_DIGEST,        "Slow Digestion" },
        { TR3_REGEN,              "Regeneration" },
-//     { TR3_XTRA_MIGHT,         "Extra Might" },
+/*     { TR3_XTRA_MIGHT,         "Extra Might" }, */
        { TR3_XTRA_SHOTS,         "+1 Extra Shot" },        /* always +1? */
        { TR3_DRAIN_EXP,          "Drains Experience" },
        { TR3_AGGRAVATE,          "Aggravates" },
@@ -1174,7 +1174,7 @@ static void analyze_misc_magic (object_type *o_ptr, cptr *misc_list)
         * being "lightly cursed".
         */
 
-//     if (cursed_p(o_ptr))
+/*     if (cursed_p(o_ptr)) */
        if (1)
        {
                if (f3 & TR3_TY_CURSE)
@@ -1201,7 +1201,7 @@ static void analyze_misc_magic (object_type *o_ptr, cptr *misc_list)
                        *misc_list++ = "Heavily Cursed";
 #endif
                }
-//             else
+/*             else */
                else if (f3 & TR3_CURSED)
                {
 #ifdef JP
@@ -1688,7 +1688,7 @@ static void spoil_mon_desc(cptr fname)
                if (r_ptr->flags7 & (RF7_KAGE)) continue;
 
                /* Get the "name" */
-//             if (r_ptr->flags1 & (RF1_QUESTOR))
+/*             if (r_ptr->flags1 & (RF1_QUESTOR)) */
                if (0)
                {
                        sprintf(nam, "[Q] %s", name);
index 38e79f3..7be3b77 100644 (file)
@@ -1012,7 +1012,7 @@ static void prt_hp(void)
        byte color;
   
        /* ¥¿¥¤¥È¥ë */
-//     put_str(" £È£Ð¡¦£Í£Ð", ROW_HPMP, COL_HPMP);
+/*     put_str(" £È£Ð¡¦£Í£Ð", ROW_HPMP, COL_HPMP); */
 
        put_str("HP", ROW_CURHP, COL_CURHP);
 
@@ -1059,7 +1059,7 @@ static void prt_sp(void)
        if (!mp_ptr->spell_book) return;
 
        /* ¥¿¥¤¥È¥ë */
-//     put_str(" £Í£Ð / ºÇÂç", ROW_MAXSP, COL_MAXSP);
+/*     put_str(" £Í£Ð / ºÇÂç", ROW_MAXSP, COL_MAXSP); */
 
 #ifdef JP
        put_str("MP", ROW_CURSP, COL_CURSP);
@@ -1804,8 +1804,8 @@ static void prt_frame_basic(void)
                prt_field(mimic_info[p_ptr->mimic_form].title, ROW_RACE, COL_RACE);
        else
                prt_field(rp_ptr->title, ROW_RACE, COL_RACE);
-//     prt_field(cp_ptr->title, ROW_CLASS, COL_CLASS);
-//     prt_field(ap_ptr->title, ROW_SEIKAKU, COL_SEIKAKU);
+/*     prt_field(cp_ptr->title, ROW_CLASS, COL_CLASS); */
+/*     prt_field(ap_ptr->title, ROW_SEIKAKU, COL_SEIKAKU); */
 
 
        /* Title */
@@ -2505,7 +2505,7 @@ static void calc_spells(void)
                        k++;
                }
                if (k>32) k = 32;
-               if ((p_ptr->new_spells > k) && (mp_ptr->spell_book == TV_LIFE_BOOK)) p_ptr->new_spells = k;
+               if ((p_ptr->new_spells > k) && ((mp_ptr->spell_book == TV_LIFE_BOOK) || (mp_ptr->spell_book == TV_HISSATSU_BOOK))) p_ptr->new_spells = k;
        }
 
        if (p_ptr->new_spells < 0) p_ptr->new_spells = 0;
@@ -5707,7 +5707,7 @@ void redraw_stuff(void)
        {
                p_ptr->redraw &= ~(PR_MISC);
                prt_field(rp_ptr->title, ROW_RACE, COL_RACE);
-//             prt_field(cp_ptr->title, ROW_CLASS, COL_CLASS);
+/*             prt_field(cp_ptr->title, ROW_CLASS, COL_CLASS); */
 
        }
 
index b5afbf7..990773e 100644 (file)
@@ -4078,7 +4078,7 @@ bool get_aim_dir(int *dp)
                /* Verify */
                if (!(*dp == 5 && !target_okay()))
                {
-//                     return (TRUE);
+/*                     return (TRUE); */
                        dir = *dp;
                }
        }
@@ -4190,7 +4190,7 @@ msg_print("
 
 #ifdef ALLOW_REPEAT /* TNB */
 
-//     repeat_push(dir);
+/*     repeat_push(dir); */
        repeat_push(command_dir);
 
 #endif /* ALLOW_REPEAT -- TNB */
@@ -4232,7 +4232,7 @@ bool get_rep_dir(int *dp, bool under)
        if (repeat_pull(dp))
        {
                dir = *dp;
-//             return (TRUE);
+/*             return (TRUE); */
        }
 
 #endif /* ALLOW_REPEAT -- TNB */
@@ -4345,7 +4345,7 @@ msg_format("You cannot control %s.", m_name);
 
 #ifdef ALLOW_REPEAT /* TNB */
 
-//     repeat_push(dir);
+/*     repeat_push(dir); */
        repeat_push(command_dir);
 
 #endif /* ALLOW_REPEAT -- TNB */
@@ -4370,7 +4370,7 @@ bool get_rep_dir2(int *dp)
        if (repeat_pull(dp))
        {
                dir = *dp;
-//             return (TRUE);
+/*             return (TRUE); */
        }
 
 #endif /* ALLOW_REPEAT -- TNB */
@@ -4432,7 +4432,7 @@ msg_print("
 
 #ifdef ALLOW_REPEAT /* TNB */
 
-//     repeat_push(dir);
+/*     repeat_push(dir); */
        repeat_push(command_dir);
 
 #endif /* ALLOW_REPEAT -- TNB */
index 88bbe5d..f276b0f 100644 (file)
@@ -683,7 +683,7 @@ void Term_queue_chars(int x, int y, int n, byte a, cptr s)
 
        byte *scr_aa = Term->scr->a[y];
 #ifdef JP
-        unsigned char *scr_cc = Term->scr->c[y];
+        unsigned char *scr_cc = (unsigned char *)Term->scr->c[y];
 
 #ifdef USE_TRANSPARENCY
        byte *scr_taa = Term->scr->ta[y];