OSDN Git Service

ヌヒシル、ホ・ミ・ース、タオ&タクフソ、キ・ミ。シ・ク・逾ヒ。」
authorhoge <hoge@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sun, 26 May 2002 14:39:18 +0000 (14:39 +0000)
committerhoge <hoge@0568b783-4c39-0410-ac80-bf13821ea2a2>
Sun, 26 May 2002 14:39:18 +0000 (14:39 +0000)
16 files changed:
lib/edit/k_info_j.txt
lib/edit/m_info_j.txt
lib/pref/font-xxx.prf
lib/pref/spell-xx.prf
src/avatar.c
src/birth.c
src/cmd5.c
src/defines.h
src/externs.h
src/files.c
src/spells1.c
src/spells2.c
src/spells3.c
src/spellstips.h
src/tables.c
src/xtra1.c

index d28ad36..f5622e3 100644 (file)
@@ -5904,24 +5904,24 @@ A:40/4
 P:4:1d1:0:0:12
 F:STEALTH | IGNORE_FIRE
 
-N:654:[¤Û¤²1]
-E:[nanka1]
+N:654:[ÅÌÄïÆÉËÜ]
+E:[Rites of Initiation]
 G:?:W
 I:99:0:0
 W:10:0:30:100
 A:10/1
 P:0:1d1:0:0:0
 
-N:655:[¤Û¤²2]
-E:[nanka2]
+N:655:[Àï½Ñ»ØÆî]
+E:[Ways of War]
 G:?:W
 I:99:1:0
 W:20:0:30:1000
 A:20/1
 P:0:1d1:0:0:0
 
-N:656:[¤Û¤²3]
-E:[nanka3]
+N:656:[ÂàËâʧ¼Ù]
+E:[Exorcism and Dispelling]
 G:?:w
 I:99:2:0
 W:50:0:30:25000
@@ -5929,11 +5929,11 @@ A:50/1
 P:0:1d1:0:0:0
 F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
 
-N:657:[¤Û¤²4]
-E:[nanka4]
+N:657:[Å·¿ÀÅÜȳ]
+E:[Wrath of God]
 G:?:w
 I:99:3:0
-W:90:0:30:100000
-A:90/3
+W:95:0:30:100000
+A:95/3
 P:0:1d1:0:0:0
 F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
index 502dbdf..299994b 100644 (file)
@@ -67,7 +67,7 @@ T:35:35:70:75
 T:35:55:80:115
 T:39:40:80:125
 T:46:70:80:150
-T:9:9:50:40  #3
+T:9:15:50:40  #3
 T:25:25:50:50
 T:35:55:80:115
 T:42:100:80:225
@@ -359,17 +359,17 @@ T:49:80:85:250
 # Haja
 R:9:1
 T:1:1:20:4  #0
-T:1:1:15:4
-T:2:2:20:4
+T:2:1:15:4
 T:4:3:25:1
 T:6:4:30:2
 T:7:5:34:4
 T:9:7:30:2
 T:10:10:45:6
-T:15:11:55:4  #1
-T:17:15:55:10
+T:15:11:55:4
+T:17:15:55:10  #1
 T:18:16:60:10
-T:22:18:50:4
+T:20:18:50:4
+T:23:20:70:5
 T:26:24:50:7
 T:29:23:60:10
 T:34:32:85:15
@@ -421,7 +421,7 @@ T:25:20:70:120
 T:25:25:80:250
 T:39:32:95:200
 T:44:44:80:250
-T:5:5:50:80  #3
+T:5:9:50:80  #3
 T:15:14:50:100
 T:30:30:80:130
 T:35:70:90:250
@@ -714,16 +714,16 @@ T:50:80:85:250
 R:9:1
 T:1:1:20:4  #0
 T:1:1:10:4
-T:2:2:20:4
 T:3:2:25:1
 T:5:4:30:2
 T:6:5:34:4
 T:10:7:35:2
 T:12:12:50:6
-T:14:10:50:4  #1
-T:15:14:50:10
+T:14:10:50:4
+T:15:14:50:10  #1
 T:16:14:40:10
-T:21:18:50:4
+T:19:17:50:4
+T:21:19:70:4
 T:26:22:55:7
 T:29:23:60:10
 T:36:35:85:15
@@ -1263,17 +1263,17 @@ R:8:0
 # Haja
 R:9:1
 T:1:1:20:4  #0
-T:2:1:30:4
-T:3:3:35:4
+T:3:1:30:4
 T:5:4:35:4
-T:9:9:30:4
-T:10:10:50:4
+T:8:8:30:4
+T:9:9:50:4
 T:13:12:50:4
 T:15:14:55:4
-T:17:12:55:4  #1
-T:18:18:50:4
+T:17:12:55:4
+T:18:18:50:4  #1
 T:22:20:50:4
 T:24:20:55:4
+T:27:25:80:5
 T:29:28:65:4
 T:34:28:65:4
 T:43:43:85:5
@@ -1325,7 +1325,7 @@ T:38:38:70:75
 T:42:55:80:115
 T:45:45:80:125
 T:50:70:80:150
-T:10:10:50:40  #3
+T:10:18:50:40  #3
 T:28:28:50:50
 T:38:85:80:115
 T:45:90:80:225
@@ -1617,17 +1617,17 @@ T:50:80:85:250
 # Haja
 R:9:1
 T:2:1:20:4  #0
-T:3:2:30:4
-T:5:5:35:4
+T:4:2:30:4
 T:6:6:35:4
-T:10:10:30:4
+T:9:9:30:4
 T:12:12:50:4
 T:14:14:50:4
 T:15:14:55:4
-T:17:12:55:4  #1
-T:20:20:50:4
+T:17:12:55:4
+T:20:20:50:4  #1
 T:24:23:50:4
 T:26:25:55:4
+T:29:28:80:5
 T:31:30:65:4
 T:35:28:65:4
 T:42:38:85:5
@@ -1777,7 +1777,7 @@ T:38:35:70:75
 T:40:60:80:115
 T:45:45:80:125
 T:48:64:80:150
-T:10:10:50:40  #3
+T:10:18:50:40  #3
 T:25:25:50:50
 T:40:45:80:115
 T:44:84:80:225
@@ -1949,38 +1949,38 @@ N:10
 I:SORCERY:INT:0x05:0:1:430
 # Life
 R:0:1
-T:1:1:15:4  #0
-T:1:1:10:4
-T:1:2:20:4
-T:3:2:25:4
-T:4:4:30:2
-T:5:4:34:4
-T:7:6:30:2
-T:8:8:45:6
-T:10:8:45:4  #1
-T:11:11:45:10
-T:12:10:35:10
+T:1:1:20:4  #0
+T:2:2:25:4
+T:3:3:25:4
+T:4:4:25:4
+T:5:5:25:4
+T:6:5:30:4
+T:9:9:30:3
+T:12:10:35:3
+T:14:12:35:4  #1
+T:15:14:40:4
 T:15:15:40:4
-T:17:16:40:7
-T:20:18:60:10
-T:28:30:65:15
-T:36:32:95:20
-T:4:4:23:40  #2
-T:13:12:35:50
-T:15:13:55:70
-T:17:14:55:70
-T:25:20:70:120
-T:28:65:80:100
-T:36:38:60:100
-T:38:90:75:250
-T:8:8:50:40  #3
-T:25:25:75:250
-T:27:24:60:100
-T:28:19:70:150
-T:34:30:80:150
-T:39:55:80:200
-T:42:85:85:200
-T:45:90:75:250
+T:17:15:40:4
+T:19:17:40:4
+T:21:19:40:4
+T:25:25:45:5
+T:30:50:55:5
+T:20:20:40:75  #2
+T:24:24:60:150
+T:30:30:50:75
+T:31:30:50:75
+T:32:30:60:75
+T:33:40:60:115
+T:35:35:60:125
+T:40:70:70:150
+T:5:9:40:40  #3
+T:20:20:40:50
+T:30:50:60:115
+T:40:80:60:225
+T:42:75:60:115
+T:45:40:60:100
+T:47:90:70:250
+T:49:90:70:250
 
 # Sorcery
 R:1:1
@@ -2264,38 +2264,38 @@ T:46:70:75:250
 
 # Haja
 R:9:1
-T:1:1:20:4  #0
-T:2:2:25:4
-T:3:3:25:4
-T:4:4:25:4
-T:5:5:25:4
-T:6:5:30:4
-T:9:9:30:3
-T:12:10:35:3
-T:14:12:35:4  #1
-T:15:14:40:4
+T:1:1:15:4  #0
+T:1:1:10:4
+T:3:2:25:4
+T:4:4:30:2
+T:5:4:34:4
+T:7:6:30:2
+T:8:8:45:6
+T:10:8:45:4
+T:11:11:45:10  #1
+T:12:10:35:10
 T:15:15:40:4
-T:17:15:40:4
-T:19:17:40:4
-T:21:19:40:4
-T:25:25:45:5
-T:30:50:55:5
-T:20:20:40:75  #2
-T:24:24:60:150
-T:30:30:50:75
-T:31:30:50:75
-T:32:30:60:75
-T:33:40:60:115
-T:35:35:60:125
-T:40:70:70:150
-T:5:5:40:40  #3
-T:20:20:40:50
-T:30:50:60:115
-T:40:80:60:225
-T:42:75:60:115
-T:45:40:60:100
-T:47:90:70:250
-T:49:90:70:250
+T:16:16:55:50
+T:17:16:40:7
+T:20:18:60:10
+T:28:30:65:15
+T:36:32:95:20
+T:4:4:23:40  #2
+T:13:12:35:50
+T:15:13:55:70
+T:17:14:55:70
+T:25:20:70:120
+T:28:65:80:100
+T:36:38:60:100
+T:38:90:75:250
+T:8:8:50:40  #3
+T:25:25:75:250
+T:27:24:60:100
+T:28:19:70:150
+T:34:30:80:150
+T:39:55:80:200
+T:42:85:85:200
+T:45:90:75:250
 
 
 ### Tourist ###
@@ -2493,7 +2493,7 @@ T:35:35:70:75
 T:35:55:80:115
 T:39:40:80:125
 T:46:70:80:150
-T:9:9:50:40  #3
+T:9:15:50:40  #3
 T:25:25:50:50
 T:35:55:80:115
 T:42:100:80:225
@@ -2785,17 +2785,17 @@ T:49:80:85:250
 # Haja
 R:9:1
 T:1:1:20:4  #0
-T:1:1:15:4
-T:2:2:20:4
+T:2:1:15:4
 T:4:3:25:1
 T:6:4:30:2
 T:7:5:34:4
 T:9:7:30:2
 T:10:10:45:6
-T:15:11:55:4  #1
-T:17:15:55:10
+T:15:11:55:4
+T:17:15:55:10  #1
 T:18:16:60:10
-T:22:18:50:4
+T:20:18:50:4
+T:23:20:70:5
 T:26:24:50:7
 T:29:23:60:10
 T:34:32:85:15
@@ -3241,15 +3241,15 @@ T:99:0:0:0
 R:9:1
 T:2:1:20:4  #0
 T:3:3:30:4
-T:5:5:35:4
 T:7:8:35:4
-T:13:12:40:4
+T:12:11:40:4
 T:16:16:55:4
 T:19:16:50:4
-T:24:23:55:6
-T:26:20:60:4  #1
-T:30:30:55:4
-T:34:30:50:4
+T:22:22:55:6
+T:25:19:60:4
+T:27:27:55:4  #1
+T:32:30:50:4
+T:34:30:80:4
 T:35:30:55:4
 T:37:37:70:4
 T:40:35:70:4
@@ -3336,7 +3336,7 @@ T:35:35:70:75
 T:35:55:80:115
 T:39:40:80:125
 T:46:64:80:150
-T:9:9:50:40  #3
+T:9:15:50:40  #3
 T:25:25:50:50
 T:35:45:80:115
 T:42:84:80:225
@@ -3468,17 +3468,17 @@ R:8:0
 # Haja
 R:9:1
 T:1:1:20:4  #0
-T:2:1:30:4
-T:3:3:35:4
+T:3:1:30:4
 T:5:4:35:4
-T:9:9:30:4
-T:10:10:50:4
+T:8:8:30:4
+T:9:9:50:4
 T:13:12:50:4
 T:15:14:55:4
-T:17:12:55:4  #1
-T:18:18:50:4
+T:17:12:55:4
+T:18:18:50:4  #1
 T:22:20:50:4
 T:24:20:55:4
+T:27:25:80:5
 T:29:28:65:4
 T:34:28:65:4
 T:43:43:85:5
@@ -3703,4 +3703,3 @@ R:8:0
 
 # Haja
 R:9:0
-
index 5cfdfd9..d2d021e 100644 (file)
@@ -404,7 +404,7 @@ E:77:0x0B
 E:80:0x0F
 
 # LIFE_BOOK
-E:90:0x01
+E:90:0x09
 
 # SORCERY_BOOK
 E:91:0x0E
@@ -422,7 +422,7 @@ E:94:0x08
 E:95:0x03
 
 # ARCANE_BOOK
-E:96:0x09
+E:96:0x02
 
 # ENCHANT_BOOK
 E:97:0x0B
@@ -430,7 +430,7 @@ E:97:0x0B
 # DAEMON_BOOK
 E:98:0x04
 
-# HAJA_BOOK
+# CRUSADE_BOOK
 E:99:0x01
 
 # MUSIC_BOOK
index 60ae8bb..9159f9c 100644 (file)
@@ -98,6 +98,9 @@ Z:GF_GENOCIDE:D
 Z:GF_PHOTO:wwwy
 Z:GF_CONTROL_DEMON:uug
 Z:GF_LAVA_FLOW:rR
-Z:GF_STAR_HEAL:rR
 Z:GF_SEEKER:y
 Z:GF_SUPER_RAY:y
+Z:GF_STAR_HEAL:rR
+Z:GF_WATER_FLOW:s
+Z:GF_STASIS_EVIL:B
+Z:GF_WOUNDS:wwwwgG
index cf97778..cca9ec3 100644 (file)
@@ -407,10 +407,10 @@ void get_virtues()
    {
     switch(p_ptr->realm1)
     {
-        case REALM_LIFE: /* nanka */
-         if (virtue_number(V_FAITH))
-          p_ptr->vir_types[i++] = V_VITALITY;
-         else p_ptr->vir_types[i++] = V_FAITH;
+        case REALM_LIFE:
+         if (virtue_number(V_VITALITY))
+          p_ptr->vir_types[i++] = V_TEMPERANCE;
+         else p_ptr->vir_types[i++] = V_VITALITY;
         break;
         case REALM_SORCERY:
          if (virtue_number(V_KNOWLEDGE))
@@ -445,10 +445,10 @@ void get_virtues()
           p_ptr->vir_types[i++] = V_FAITH;
          else p_ptr->vir_types[i++] = V_JUSTICE;
         break;
-        case REALM_HAJA: /* nanka */
-         if (virtue_number(V_FAITH))
-          p_ptr->vir_types[i++] = V_VITALITY;
-         else p_ptr->vir_types[i++] = V_FAITH;
+        case REALM_HAJA:
+         if (virtue_number(V_JUSTICE))
+          p_ptr->vir_types[i++] = V_HONOUR;
+         else p_ptr->vir_types[i++] = V_JUSTICE;
         break;
      };
     }
@@ -459,10 +459,10 @@ void get_virtues()
    {
     switch(p_ptr->realm2)
     {
-        case REALM_LIFE: /* nanka */
-         if (virtue_number(V_FAITH))
-          p_ptr->vir_types[i++] = V_VITALITY;
-         else p_ptr->vir_types[i++] = V_FAITH;
+        case REALM_LIFE:
+         if (virtue_number(V_VITALITY))
+          p_ptr->vir_types[i++] = V_TEMPERANCE;
+         else p_ptr->vir_types[i++] = V_VITALITY;
         break;
         case REALM_SORCERY:
          if (virtue_number(V_ENCHANT))
@@ -497,10 +497,10 @@ void get_virtues()
           p_ptr->vir_types[i++] = V_FAITH;
          else p_ptr->vir_types[i++] = V_JUSTICE;
         break;
-        case REALM_HAJA: /* nanka */
-         if (virtue_number(V_FAITH))
-          p_ptr->vir_types[i++] = V_VITALITY;
-         else p_ptr->vir_types[i++] = V_FAITH;
+        case REALM_HAJA:
+         if (virtue_number(V_JUSTICE))
+          p_ptr->vir_types[i++] = V_HONOUR;
+         else p_ptr->vir_types[i++] = V_JUSTICE;
         break;
      };
     }
index 6ca7a74..fe57e07 100644 (file)
@@ -1918,7 +1918,7 @@ static cptr realm_jouhou[VALID_REALM] =
 static char realm_subinfo[VALID_REALM][41] =
 {
 #ifdef JP
-"´¶ÃΤȲóÉü¤ËÍ¥¤ì¡¢¹¶·â¤â¤Ç¤­¤Þ¤¹",
+"´¶ÃΤȲóÉü¤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
 "¹¶·â¤Ï¤Ç¤­¤Þ¤»¤ó¤¬Èó¾ï¤ËÊØÍø¤Ç¤¹",
 "´¶ÃΤÈËɸæ¤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
 "Ç˲õŪ¤Ê¹¶·â¤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
@@ -1927,7 +1927,7 @@ static char realm_subinfo[VALID_REALM][41] =
 "¤ä¤ä¼å¤¤¤Ê¤¬¤é¤âÈó¾ï¤ËÊØÍø¤Ç¤¹",
 "ľÀÜÀïÆ®¤ÎÊä½õ¤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
 "¹¶·â¤ÈËɸæ¤ÎξÌ̤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
-"Ç˼Ù",/* nanka */
+"¼Ù°­¤Ê²øʪ¤ËÂФ¹¤ë¹¶·â¤ËÍ¥¤ì¤Æ¤¤¤Þ¤¹",
 "²Î¤Ç¤â²Î¤Ã¤Æ¤¤¤Þ¤·¤ç¤¦",
 "ÁÇľ¤ËÅá¤Ç¤â¿¶¤Ã¤Æ¤¤¤Þ¤·¤ç¤¦"
 #else
index c3a9f85..e8718af 100644 (file)
@@ -1045,31 +1045,32 @@ static bool cast_life_spell(int spell)
 
        switch (spell)
        {
-       case 0: /* Detect Evil */
-               (void)detect_monsters_evil(DETECT_RAD_DEFAULT);
-               break;
-       case 1: /* Cure Light Wounds */
+       case 0: /* Cure Light Wounds */
                (void)hp_player(damroll(2, 10));
                (void)set_cut(p_ptr->cut - 10);
                break;
-       case 2: /* Bless */
+       case 1: /* Bless */
                (void)set_blessed(randint1(12) + 12, FALSE);
                break;
-       case 3: /* Remove Fear */
-               (void)set_afraid(0);
+       case 2: /* Make Light Wounds */
+               if (!get_aim_dir(&dir)) return FALSE;
+               fire_ball_hide(GF_WOUNDS, dir, damroll(3 + ((plev - 1) / 5), 4), 0);
                break;
-       case 4: /* Call Light */
+       case 3: /* Call Light */
                (void)lite_area(damroll(2, (plev / 2)), (plev / 10) + 1);
                break;
-       case 5: /* Detect Traps + Secret Doors */
+       case 4: /* Detect Traps + Secret Doors */
                (void)detect_traps(DETECT_RAD_DEFAULT);
                (void)detect_doors(DETECT_RAD_DEFAULT);
                (void)detect_stairs(DETECT_RAD_DEFAULT);
                break;
-       case 6: /* Cure Medium Wounds */
+       case 5: /* Cure Medium Wounds */
                (void)hp_player(damroll(4, 10));
                (void)set_cut((p_ptr->cut / 2) - 20);
                break;
+       case 6: /* Cure Poison */
+               (void)set_poisoned(0);
+               break;
        case 7: /* Satisfy Hunger */
                (void)set_food(PY_FOOD_MAX - 1);
                break;
@@ -1083,30 +1084,24 @@ static bool cast_life_spell(int spell)
 #endif
                }
                break;
-       case 9: /* Cure Poison */
-               (void)set_poisoned(0);
+       case 9: /* Make Medium Wounds */
+               if (!get_aim_dir(&dir)) return FALSE;
+               fire_ball_hide(GF_WOUNDS, dir, damroll(8 + ((plev - 5) / 4), 8), 0);
                break;
        case 10: /* Cure Critical Wounds */
                (void)hp_player(damroll(8, 10));
                (void)set_stun(0);
                (void)set_cut(0);
                break;
-       case 11: /* Sense Unseen */
-               (void)set_tim_invis(randint1(24) + 24, FALSE);
+       case 11:
+               (void)set_oppose_cold(randint1(20) + 20, FALSE);
+               (void)set_oppose_fire(randint1(20) + 20, FALSE);
                break;
-       case 12: /* Holy Orb */
-               if (!get_aim_dir(&dir)) return FALSE;
-
-               fire_ball(GF_HOLY_FIRE, dir,
-                         (damroll(3, 6) + plev +
-                         (plev / ((p_ptr->pclass == CLASS_PRIEST ||
-                            p_ptr->pclass == CLASS_HIGH_MAGE ||
-                            p_ptr->pclass == CLASS_SORCERER) ? 2 : 4))),
-                         ((plev < 30) ? 2 : 3));
-
+       case 12:
+               map_area(DETECT_RAD_MAP);
                break;
-       case 13: /* Protection from Evil */
-               (void)set_protevil(randint1(25) + 3 * p_ptr->lev, FALSE);
+       case 13:
+               (void)turn_undead();
                break;
        case 14: /* Healing */
                (void)hp_player(300);
@@ -1116,12 +1111,7 @@ static bool cast_life_spell(int spell)
        case 15: /* Glyph of Warding */
                warding_glyph();
                break;
-       case 16: /* Exorcism */
-               (void)dispel_undead(randint1(plev));
-               (void)dispel_demons(randint1(plev));
-               (void)turn_evil(plev);
-               break;
-       case 17: /* Dispel Curse */
+       case 16: /* Dispel Curse */
                if (remove_all_curse())
                {
 #ifdef JP
@@ -1131,51 +1121,41 @@ static bool cast_life_spell(int spell)
 #endif
                }
                break;
-       case 18: /* Dispel Undead + Demons */
-               (void)dispel_undead(randint1(plev * 3));
-               (void)dispel_demons(randint1(plev * 3));
+       case 17: /* Perception */
+               return ident_spell(FALSE);
+       case 18: /* Dispel Undead */
+               (void)dispel_undead(randint1(plev * 5));
                break;
        case 19: /* 'Day of the Dove' */
                charm_monsters(plev * 2);
                break;
-       case 20: /* Dispel Evil */
-               (void)dispel_evil(randint1(plev * 4));
+       case 20: /* Make Critical Wounds */
+               if (!get_aim_dir(&dir)) return FALSE;
+               fire_ball_hide(GF_WOUNDS, dir, damroll(5+((plev - 5) / 3), 15), 0);
                break;
-       case 21: /* Banishment */
-               if (banish_evil(100))
-               {
-#ifdef JP
-msg_print("¿À¤Î¸æÎϤ¬¼Ù°­¤òÂǤÁʧ¤Ã¤¿¡ª");
-#else
-                       msg_print("The power of your god banishes evil!");
-#endif
-
-               }
+       case 21: /* Word of Recall */
+               if (!word_of_recall()) return FALSE;
                break;
-       case 22: /* Holy Word */
-               (void)dispel_evil(randint1(plev * 4));
-               (void)hp_player(1000);
-               (void)set_afraid(0);
-               (void)set_poisoned(0);
-               (void)set_stun(0);
-               (void)set_cut(0);
+       case 22: /* Alter Reality */
+               alter_reality();
                break;
        case 23: /* Warding True */
                warding_glyph();
                glyph_creation();
                break;
-       case 24: /* Heroism */
-               (void)set_hero(randint1(25) + 25, FALSE);
-               (void)hp_player(10);
-               (void)set_afraid(0);
+       case 24:
+               num_repro += MAX_REPRO;
                break;
-       case 25: /* Prayer */
-               (void)set_blessed(randint1(48) + 48, FALSE);
+       case 25: /* Detection True */
+               (void)detect_all(DETECT_RAD_DEFAULT);
                break;
-       case 26: /* Turn Undead */
+       case 26: /* Genocide Undead */
                (void)mass_genocide_undead(plev+50,TRUE);
                break;
-       case 27: /* Restoration */
+       case 27: /* Clairvoyance */
+               wiz_lite(FALSE, FALSE);
+               break;
+       case 28: /* Restoration */
                (void)do_res_stat(A_STR);
                (void)do_res_stat(A_INT);
                (void)do_res_stat(A_WIS);
@@ -1184,27 +1164,13 @@ msg_print("
                (void)do_res_stat(A_CHR);
                (void)restore_level();
                break;
-       case 28: /* Healing True */
+       case 29: /* Healing True */
                (void)hp_player(2000);
                (void)set_stun(0);
                (void)set_cut(0);
                break;
-       case 29: /* Holy Vision */
+       case 30: /* Holy Vision */
                return identify_fully(FALSE);
-       case 30: /* Divine Intervention */
-               project(0, 1, py, px, 500, GF_HOLY_FIRE, PROJECT_KILL, -1);
-               dispel_monsters(plev * 4);
-               slow_monsters();
-               stun_monsters(plev * 4);
-               confuse_monsters(plev * 4);
-               turn_monsters(plev * 4);
-               stasis_monsters(plev * 4);
-               summon_specific(-1, py, px, plev, SUMMON_ANGEL, (PM_ALLOW_GROUP | PM_FORCE_PET));
-               (void)set_hero(randint1(25) + 25, FALSE);
-               (void)hp_player(300);
-               (void)set_fast(randint1(20 + plev) + plev, FALSE);
-               (void)set_afraid(0);
-               break;
        case 31: /* Ultimate resistance */
        {
                int v = randint1(plev/2)+plev/2;
@@ -3993,42 +3959,39 @@ static bool cast_haja_spell(int spell)
        case 1:
                (void)detect_monsters_evil(DETECT_RAD_DEFAULT);
                break;
-       case 2: /* Bless */
-               (void)set_blessed(randint1(12) + 12, FALSE);
-               break;
-       case 3: /* Remove Fear */
+       case 2: /* Remove Fear */
                (void)set_afraid(0);
                break;
-       case 4:
+       case 3:
                if (!get_aim_dir(&dir)) return FALSE;
 
                (void)fear_monster(dir, plev);
                break;
-       case 5:
+       case 4:
                (void)sleep_monsters_touch();
                break;
-       case 6:
+       case 5:
                teleport_player(plev*3);
                break;
-       case 7:
+       case 6:
                if (!get_aim_dir(&dir)) return FALSE;
                fire_blast(GF_LITE, dir, 3+((plev-1)/8), 3, 10, 3);
                break;
-       case 8:
+       case 7:
                (void)set_cut(0);
                (void)set_poisoned(0);
                (void)set_stun(0);
                break;
-       case 9:
+       case 8:
                if (!get_aim_dir(&dir)) return FALSE;
                (void)fire_ball(GF_AWAY_EVIL, dir, MAX_SIGHT*5, 0);
                break;
-       case 10: /* Exorcism */
+       case 9: /* Exorcism */
                (void)dispel_undead(randint1(plev));
                (void)dispel_demons(randint1(plev));
                (void)turn_evil(plev);
                break;
-       case 11: /* Holy Orb */
+       case 10: /* Holy Orb */
                if (!get_aim_dir(&dir)) return FALSE;
 
                fire_ball(GF_HOLY_FIRE, dir,
@@ -4039,6 +4002,16 @@ static bool cast_haja_spell(int spell)
                          ((plev < 30) ? 2 : 3));
 
                break;
+       case 11: /* Remove Curse */
+               if (remove_curse())
+               {
+#ifdef JP
+                       msg_print("狼¤Ë¸«¼é¤é¤ì¤Æ¤¤¤ë¤è¤¦¤Êµ¤¤¬¤¹¤ë¡£");
+#else
+                       msg_print("You feel as if someone is watching over you.");
+#endif
+               }
+               break;
        case 12: /* Sense Unseen */
                (void)set_tim_invis(randint1(24) + 24, FALSE);
                break;
@@ -4062,15 +4035,9 @@ static bool cast_haja_spell(int spell)
 
                (void)destroy_door(dir);
                break;
-       case 17: /* Remove Curse */
-               if (remove_curse())
-               {
-#ifdef JP
-                       msg_print("狼¤Ë¸«¼é¤é¤ì¤Æ¤¤¤ë¤è¤¦¤Êµ¤¤¬¤¹¤ë¡£");
-#else
-                       msg_print("You feel as if someone is watching over you.");
-#endif
-               }
+       case 17:
+               if (!get_aim_dir(&dir)) return FALSE;
+               (void)stasis_evil(dir);
                break;
        case 18:
                set_tim_sh_holy(randint1(20)+20, FALSE);
@@ -4137,9 +4104,9 @@ msg_print("
                if (banish_evil(100))
                {
 #ifdef JP
-msg_print("¿À¤Î¸æÎϤ¬¼Ù°­¤òÂǤÁʧ¤Ã¤¿¡ª");
+msg_print("¿ÀÀ»¤ÊÎϤ¬¼Ù°­¤òÂǤÁʧ¤Ã¤¿¡ª");
 #else
-                       msg_print("The power of your god banishes evil!");
+                       msg_print("The power of your god banishes evil!"); /* nanka */
 #endif
 
                }
@@ -4153,39 +4120,55 @@ msg_print("
        case 29:
                {
                        int x, y, tx, ty;
+                       int nx, ny;
                        int dir, i;
                        int b = 10 + randint1(10);
+
                        if (!get_aim_dir(&dir)) return FALSE;
-                       tx = px;
-                       ty = py;
+
+                       /* Use the given direction */
+                       tx = px + 99 * ddx[dir];
+                       ty = py + 99 * ddy[dir];
 
                        /* Hack -- Use an actual "target" */
-                       if (dir != 5) {
-                               while(1)
-                               {
-                                       if (cave_stop_disintegration(ty + ddy[dir], tx + ddx[dir])) break;
-                                       tx += ddx[dir];
-                                       ty += ddy[dir];
-                                       if (!cave_floor_bold(ty,tx) || !player_has_los_bold(ty, tx) || cave[ty][tx].m_idx) break;
-                               }
-                       }
-                       else if (target_okay() && !cave_stop_disintegration(target_row, target_col) && in_disintegration_range(py, px, target_row, target_col))
+                       if ((dir == 5) && target_okay())
                        {
                                tx = target_col;
                                ty = target_row;
                        }
 
+                       x = px;
+                       y = py;
+
+                       while(1)
+                       {
+                               /* Hack -- Stop at the target */
+                               if ((y == ty) && (x == tx)) break;
+
+                               ny = y;
+                               nx = x;
+                               mmove2(&ny, &nx, py, px, ty, tx);
+
+                               /* Stopped by walls/doors */
+                               if (!cave_floor_bold(ny, nx)) break;
+
+                               /* Save the new location */
+                               x = nx;
+                               y = ny;
+                       }
+                       tx = x;
+                       ty = y;
 
                        for (i = 0; i < b; i++)
                        {
-                               int count = 20, d = 0;
+                               int count = randint1(2), d = 0;
 
                                while (count--)
                                {
                                        int dx, dy;
 
-                                       x = tx - 8 + randint0(17);
-                                       y = ty - 8 + randint0(17);
+                                       x = tx - 5 + randint0(11);
+                                       y = ty - 5 + randint0(11);
 
                                        if (!in_bounds(y,x) || cave_stop_disintegration(y,x) || !in_disintegration_range(ty, tx, y, x)) continue;
 
@@ -4904,10 +4887,10 @@ msg_format("%s
 
                sound(SOUND_FAIL);
 
-               if (realm == REALM_LIFE) /* nanka */
+               if (realm == REALM_LIFE)
                {
                        if (randint1(100) < chance)
-                               chg_virtue(V_FAITH, -1);
+                               chg_virtue(V_VITALITY, -1);
                }
                else if (realm == REALM_DEATH)
                {
@@ -4924,10 +4907,10 @@ msg_format("%s
                        if (randint1(100) < chance)
                                chg_virtue(V_JUSTICE, 1);
                }
-               if (realm == REALM_HAJA) /* nanka */
+               if (realm == REALM_HAJA)
                {
                        if (randint1(100) < chance)
-                               chg_virtue(V_FAITH, -1);
+                               chg_virtue(V_JUSTICE, -1);
                }
                else if (randint1(100) < chance)
                {
@@ -5059,12 +5042,12 @@ msg_print("An infernal sound echoed.");
                        /* Gain experience */
                        gain_exp(e * s_ptr->slevel);
 
-                       if (realm == REALM_LIFE) /* nanka */
+                       if (realm == REALM_LIFE)
                        {
-                               chg_virtue(V_FAITH, 1);
+                               chg_virtue(V_TEMPERANCE, 1);
                                chg_virtue(V_COMPASSION, 1);
                                chg_virtue(V_VITALITY, 1);
-                               chg_virtue(V_HONOUR, 1);
+                               chg_virtue(V_DILIGENCE, 1);
                        }
                        else if (realm == REALM_DEATH)
                        {
@@ -5080,11 +5063,11 @@ msg_print("An infernal sound echoed.");
                                chg_virtue(V_HONOUR, -1);
                                chg_virtue(V_TEMPERANCE, -1);
                        }
-                       else if (realm == REALM_HAJA) /* nanka */
+                       else if (realm == REALM_HAJA)
                        {
                                chg_virtue(V_FAITH, 1);
-                               chg_virtue(V_COMPASSION, 1);
-                               chg_virtue(V_VITALITY, 1);
+                               chg_virtue(V_JUSTICE, 1);
+                               chg_virtue(V_SACRIFICE, 1);
                                chg_virtue(V_HONOUR, 1);
                        }
                        else if (realm == REALM_NATURE)
@@ -5095,12 +5078,12 @@ msg_print("An infernal sound echoed.");
                        else
                                chg_virtue(V_KNOWLEDGE, 1);
                }
-               if (realm == REALM_LIFE) /* nanka */
+               if (realm == REALM_LIFE)
                {
-                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_FAITH, 1);
+                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_TEMPERANCE, 1);
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_COMPASSION, 1);
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_VITALITY, 1);
-                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_HONOUR, 1);
+                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_DILIGENCE, 1);
                }
                else if (realm == REALM_DEATH)
                {
@@ -5116,11 +5099,11 @@ msg_print("An infernal sound echoed.");
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_HONOUR, -1);
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_TEMPERANCE, -1);
                }
-               else if (realm == REALM_HAJA) /* nanka */
+               else if (realm == REALM_HAJA)
                {
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_FAITH, 1);
-                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_COMPASSION, 1);
-                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_VITALITY, 1);
+                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_JUSTICE, 1);
+                       if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_SACRIFICE, 1);
                        if (randint1(100 + p_ptr->lev) < shouhimana) chg_virtue(V_HONOUR, 1);
                }
                else if (realm == REALM_NATURE)
@@ -5171,16 +5154,16 @@ msg_print("
                /* Hack -- Bypass free action */
                (void)set_paralyzed(p_ptr->paralyzed + randint1(5 * oops + 1));
 
-               if (realm == REALM_LIFE) /* nanka */
-                       chg_virtue(V_FAITH, -10);
+               if (realm == REALM_LIFE)
+                       chg_virtue(V_VITALITY, -10);
                else if (realm == REALM_DEATH)
                        chg_virtue(V_UNLIFE, -10);
                else if (realm == REALM_DAEMON)
                        chg_virtue(V_JUSTICE, 10);
                else if (realm == REALM_NATURE)
                        chg_virtue(V_NATURE, -10);
-               else if (realm == REALM_HAJA) /* nanka */
-                       chg_virtue(V_FAITH, -10);
+               else if (realm == REALM_HAJA)
+                       chg_virtue(V_JUSTICE, -10);
                else
                        chg_virtue(V_KNOWLEDGE, -10);
 
index b1bcf3e..93b64bf 100644 (file)
 #define GF_STAR_HEAL 112
 #define GF_WATER_FLOW   113
 #define GF_CRUSADE     114
+#define GF_STASIS_EVIL 115
+#define GF_WOUNDS      116
 
-#define MAX_GF                         114
+#define MAX_GF                         116
 
 /*
  * Some things which induce learning
index efc920f..3d12ffc 100644 (file)
@@ -1006,6 +1006,7 @@ extern bool speed_monster(int dir);
 extern bool slow_monster(int dir);
 extern bool sleep_monster(int dir);
 extern bool stasis_monster(int dir);    /* Like sleep, affects undead as well */
+extern bool stasis_evil(int dir);    /* Like sleep, affects undead as well */
 extern bool confuse_monster(int dir, int plev);
 extern bool stun_monster(int dir, int plev);
 extern bool fear_monster(int dir, int plev);
index aa042b3..96f409f 100644 (file)
@@ -329,6 +329,8 @@ static named_num gf_desc[] =
        {"GF_STAR_HEAL",                GF_STAR_HEAL                    },
        {"GF_WATER_FLOW",               GF_WATER_FLOW                   },
        {"GF_CRUSADE",          GF_CRUSADE                      },
+       {"GF_STASIS_EVIL",                      GF_STASIS_EVIL          },
+       {"GF_WOUNDS",                   GF_WOUNDS               },
        {NULL,                                          0                                               }
 };
 
index 8a8124c..01dc435 100644 (file)
@@ -3687,6 +3687,52 @@ note = "
 
 
                /* Sleep (Use "dam" as "power") */
+               case GF_STASIS_EVIL:
+               {
+                       if (seen) obvious = TRUE;
+
+                       if (r_ptr->flags3 & (RF3_RES_ALL))
+                       {
+#ifdef JP
+                               note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª";
+#else
+                               note = " is immune.";
+#endif
+                               dam = 0;
+                               if (seen) r_ptr->r_flags3 |= (RF3_RES_ALL);
+                               break;
+                       }
+                       /* Attempt a saving throw */
+                       if ((r_ptr->flags1 & RF1_UNIQUE) ||
+                           !(r_ptr->flags3 & RF3_EVIL) ||
+                           (r_ptr->level > randint1((dam - 10) < 1 ? 1 : (dam - 10)) + 10))
+                       {
+#ifdef JP
+note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª";
+#else
+                               note = " is unaffected!";
+#endif
+
+                               obvious = FALSE;
+                       }
+                       else
+                       {
+                               /* Go to sleep (much) later */
+#ifdef JP
+note = "¤ÏÆ°¤±¤Ê¤¯¤Ê¤Ã¤¿¡ª";
+#else
+                               note = " is suspended!";
+#endif
+
+                               do_sleep = 500;
+                       }
+
+                       /* No "real" damage */
+                       dam = 0;
+                       break;
+               }
+
+               /* Sleep (Use "dam" as "power") */
                case GF_STASIS:
                {
                        if (seen) obvious = TRUE;
@@ -5729,6 +5775,36 @@ note = "
                        break;
                }
 
+               case GF_WOUNDS:
+               {
+                       if (seen) obvious = TRUE;
+
+                       if (r_ptr->flags3 & (RF3_RES_ALL))
+                       {
+#ifdef JP
+                               note = "¤Ë¤Ï´°Á´¤ÊÂÑÀ­¤¬¤¢¤ë¡ª";
+#else
+                               note = " is immune.";
+#endif
+                               skipped = TRUE;
+                               if (seen) r_ptr->r_flags3 |= (RF3_RES_ALL);
+                               break;
+                       }
+
+                       /* Attempt a saving throw */
+                       if (randint0(100 + dam) < (r_ptr->level + 50))
+                       {
+
+#ifdef JP
+note = "¤Ë¤Ï¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡£";
+#else
+                               note = "is unaffected!";
+#endif
+                               dam = 0;
+                       }
+                       break;
+               }
+
                /* Default */
                default:
                {
index 81e2023..6ad1b75 100644 (file)
@@ -6628,6 +6628,12 @@ bool stasis_monster(int dir)
 }
 
 
+bool stasis_evil(int dir)
+{
+       return (fire_ball_hide(GF_STASIS_EVIL, dir, p_ptr->lev*2, 0));
+}
+
+
 bool confuse_monster(int dir, int plev)
 {
        int flg = PROJECT_STOP | PROJECT_KILL;
index 37f9b19..bbc0c55 100644 (file)
@@ -4108,31 +4108,19 @@ static void spell_info(char *p, int spell, int realm)
        case 0: /* Life */
                switch (spell)
                {
-               case  1: sprintf(p, " %s2d10", s_heal); break;
-               case  2: sprintf(p, " %s12+d12", s_dur); break;
-               case  4: sprintf(p, " %s%d", s_dam, 10 + (plev / 2)); break;
-               case  6: sprintf(p, " %s4d10", s_heal); break;
+               case  0: sprintf(p, " %s2d10", s_heal); break;
+               case  1: sprintf(p, " %s12+d12", s_dur); break;
+               case  2: sprintf(p, " %s%dd4", s_dam, 3 + ((plev - 1) / 5)); break;
+               case  3: sprintf(p, " %s%d", s_dam, 10 + (plev / 2)); break;
+               case  5: sprintf(p, " %s4d10", s_heal); break;
+               case  9: sprintf(p, " %s%dd8", s_dam, 8 + ((plev - 1) / 5)); break;
                case 10: sprintf(p, " %s8d10", s_heal); break;
-               case 11: sprintf(p, " %s24+d24", s_dur); break;
-               case 12: sprintf(p, " %s3d6+%d", s_dam, orb); break;
-               case 13: sprintf(p, " %sd25+%d", s_dur, 3 * plev); break;
+               case 11: sprintf(p, " %s20+d20", s_dur); break;
                case 14: sprintf(p, " %s300", s_heal); break;
-               case 16: sprintf(p, " %sd%d", s_dam, plev); break;
-               case 18: sprintf(p, " %sd%d", s_dam, 3 * plev); break;
-               case 20: sprintf(p, " %sd%d", s_dam, 4 * plev); break;
-#ifdef JP
-               case 22: sprintf(p, " Â»:d%d/²ó:1000", 4 * plev); break;
-#else
-               case 22: sprintf(p, " d %d/h 1000", 4 * plev); break;
-#endif
-               case 24: sprintf(p, " %s25+d25", s_dur); break;
-               case 25: sprintf(p, " %s48+d48", s_dur); break;
-               case 28: sprintf(p, " %s2000", s_heal); break;
-#ifdef JP
-               case 30: sprintf(p, " ²ó300/»%d+250", plev * 4); break;
-#else
-               case 30: sprintf(p, " h300/d%d+250", plev * 4); break;
-#endif
+               case 18: sprintf(p, " %sd%d", s_dam, 5 * plev); break;
+               case 20: sprintf(p, " %s%dd15", s_dam, 5 + ((plev - 1) / 3)); break;
+               case 21: sprintf(p, " %s15+d21", s_delay); break;
+               case 29: sprintf(p, " %s2000", s_heal); break;
                case 31: sprintf(p, " %s%d+d%d", s_dur,(plev/2), (plev/2)); break;
                }
                break;
@@ -4348,14 +4336,14 @@ static void spell_info(char *p, int spell, int realm)
                switch (spell)
                {
                case  0: sprintf(p, " %s%dd4", s_dam, 3 + ((plev - 1) / 5)); break;
-               case  6: sprintf(p, " %s%d", s_range, plev*3); break;
+               case  5: sprintf(p, " %s%d", s_range, plev*3); break;
 #ifdef JP
-               case  7: sprintf(p, " %s³Æ%dd3", s_dam, 3+((plev-1)/8)); break;
+               case  6: sprintf(p, " %s³Æ%dd3", s_dam, 3+((plev-1)/8)); break;
 #else
-               case  7: sprintf(p, " %s%dd3 each", s_dam, 3+((plev-1)/8)); break;
+               case  6: sprintf(p, " %s%dd3 each", s_dam, 3+((plev-1)/8)); break;
 #endif
-               case 10: sprintf(p, " %sd%d", s_dam, plev); break;
-               case 11: sprintf(p, " %s3d6+%d", s_dam, orb); break;
+               case  9: sprintf(p, " %sd%d", s_dam, plev); break;
+               case 10: sprintf(p, " %s3d6+%d", s_dam, orb); break;
                case 12: sprintf(p, " %s24+d24", s_dur); break;
                case 13: sprintf(p, " %sd25+%d", s_dur, 3 * plev); break;
                case 14: sprintf(p, " %s%d", s_dam, plev*5); break;
@@ -4375,9 +4363,9 @@ static void spell_info(char *p, int spell, int realm)
                case 29: sprintf(p, " %s%d each", s_dam, plev*4); break;
 #endif
 #ifdef JP
-               case 30: sprintf(p, " ²ó100/»%d+250", plev * 4); break;
+               case 30: sprintf(p, " ²ó100/»%d+%d", plev * 4, plev*11/2); break;
 #else
-               case 30: sprintf(p, " h100/d%d+250", plev * 4); break;
+               case 30: sprintf(p, " h100/d%d+%d", plev * 4, plev*11/2); break;
 #endif
                }
                break;
index d3fdce1..72a1a71 100644 (file)
@@ -2,40 +2,40 @@
 static char *spell_tips[VALID_REALM][32] =
 {
        {
-               "¶á¤¯¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò´¶ÃΤ¹¤ë¡£",
                "²ø²æ¤ÈÂÎÎϤò¾¯¤·²óÉü¤µ¤»¤ë¡£",
                "°ìÄê»þ´Ö¡¢Ì¿ÃæΨ¤ÈAC¤Ë¥Ü¡¼¥Ê¥¹¤òÆÀ¤ë¡£",
-               "¶²Éݤò¼è¤ê½ü¤¯¡£",
+               "1ÂΤΥâ¥ó¥¹¥¿¡¼¤Ë¾®¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "¸÷¸»¤¬¾È¤é¤·¤Æ¤¤¤ëÈϰϤ«Éô²°Á´ÂΤò±Êµ×¤ËÌÀ¤ë¤¯¤¹¤ë¡£",
                "¶á¤¯¤ÎÁ´¤Æ¤Î櫤ÈÈâ¤È³¬Ãʤò´¶ÃΤ¹¤ë¡£",
                "²ø²æ¤ÈÂÎÎϤòÃæÄøÅÙ²óÉü¤µ¤»¤ë¡£",
+               "ÂÎÆâ¤ÎÆǤò¼è¤ê½ü¤¯¡£",
                "ËþÊ¢¤Ë¤¹¤ë¡£",
 
                "¥¢¥¤¥Æ¥à¤Ë¤«¤«¤Ã¤¿¼å¤¤¼ö¤¤¤ò²ò½ü¤¹¤ë¡£",
-               "ÂÎÆâ¤ÎÆǤò¼è¤ê½ü¤¯¡£",
+               "1ÂΤΥâ¥ó¥¹¥¿¡¼¤ËÃæ¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "ÂÎÎϤòÂçÉý¤Ë²óÉü¤µ¤»¡¢Éé½ý¤ÈÛ¯Û°¾õÂÖ¤âÁ´²÷¤¹¤ë¡£",
-               "°ìÄê»þ´Ö¡¢Æ©ÌÀ¤Ê¤â¤Î¤¬¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ë¡£",
-               "À»¤Ê¤ëÎϤò¤â¤ÄÊõ¼î¤òÊü¤Ä¡£¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ËÂФ·¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¤¬¡¢Á±Îɤʥâ¥ó¥¹¥¿¡¼¤Ë¤Ï¸ú²Ì¤¬¤Ê¤¤¡£",
-               "¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤Î¹¶·â¤òËɤ°¥Ð¥ê¥¢¤òÄ¥¤ë¡£",
+               "°ìÄê»þ´Ö¡¢²Ð±ê¤ÈÎ䵤¤ËÂФ¹¤ëÂÑÀ­¤òÆÀ¤ë¡£ÁõÈ÷¤Ë¤è¤ëÂÑÀ­¤ËÎßÀѤ¹¤ë¡£",
+               "¼þÊÕ¤ÎÃÏ·Á¤ò´¶ÃΤ¹¤ë¡£",
+               "»ë³¦Æâ¤Î¥¢¥ó¥Ç¥Ã¥É¤ò¶²Éݤµ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
                "¶Ë¤á¤Æ¶¯ÎϤʲóÉü¼öʸ¤Ç¡¢Éé½ý¤ÈÛ¯Û°¾õÂÖ¤âÁ´²÷¤¹¤ë¡£",
                "¼«Ê¬¤Î¤¤¤ë¾²¤Î¾å¤Ë¡¢¥â¥ó¥¹¥¿¡¼¤¬Ä̤êÈ´¤±¤¿¤ê¾¤´­¤µ¤ì¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¯¤Ê¤ë¥ë¡¼¥ó¤òÉÁ¤¯¡£",
 
-               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥¢¥ó¥Ç¥Ã¥ÉµÚ¤Ó°­Ëâ¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢»ë³¦Æâ¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò¶²Éݤµ¤»¤è¤¦¤È¤¹¤ë¡£",
                "¥¢¥¤¥Æ¥à¤Ë¤«¤«¤Ã¤¿¶¯ÎϤʼö¤¤¤ò²ò½ü¤¹¤ë¡£",
-               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥¢¥ó¥Ç¥Ã¥ÉµÚ¤Ó°­Ëâ¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
+               "¥¢¥¤¥Æ¥à¤ò¼±Ê̤¹¤ë¡£",
+               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥¢¥ó¥Ç¥Ã¥É¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
                "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤ò̥λ¤¹¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
-               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
-               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
-               "»ë³¦Æâ¤Î¼Ù°­¤Ê¸ºß¤ËÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢ÂÎÎϤò²óÉü¤·¡¢ÆÇ¡¢¶²ÉÝ¡¢Û¯Û°¾õÂÖ¡¢Éé½ý¤«¤éÁ´²÷¤¹¤ë¡£",
+               "1ÂΤΥâ¥ó¥¹¥¿¡¼¤ËÂç¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "ÃϾå¤Ë¤¤¤ë¤È¤­¤Ï¥À¥ó¥¸¥ç¥ó¤ÎºÇ¿¼³¬¤Ø¡¢¥À¥ó¥¸¥ç¥ó¤Ë¤¤¤ë¤È¤­¤ÏÃϾå¤Ø¤È°ÜÆ°¤¹¤ë¡£",
+               "¸½ºß¤Î³¬¤òºÆ¹½À®¤¹¤ë¡£",
                "¼«Ê¬¤Î¤¤¤ë¾²¤È¼þ°Ï8¥Þ¥¹¤Î¾²¤Î¾å¤Ë¡¢¥â¥ó¥¹¥¿¡¼¤¬Ä̤êÈ´¤±¤¿¤ê¾¤´­¤µ¤ì¤¿¤ê¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ê¤¯¤Ê¤ë¥ë¡¼¥ó¤òÉÁ¤¯¡£",
 
-               "°ìÄê»þ´Ö¡¢¥Ò¡¼¥í¡¼µ¤Ê¬¤Ë¤Ê¤ë¡£",
-               "Ĺ»þ´Ö¡¢Ì¿ÃæΨ¤ÈAC¤Ë¥Ü¡¼¥Ê¥¹¤òÆÀ¤ë¡£",
+               "¤³¤Î³¬¤ÎÁý¿£¤¹¤ë¥â¥ó¥¹¥¿¡¼¤¬Áý¿£¤Ç¤­¤Ê¤¯¤Ê¤ë¡£",
+               "¶á¤¯¤ÎÁ´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¡¢æ«¡¢Èâ¡¢³¬ÃÊ¡¢ºâÊõ¡¢¤½¤·¤Æ¥¢¥¤¥Æ¥à¤ò´¶ÃΤ¹¤ë¡£",
                "¼«Ê¬¤Î¼þ°Ï¤Ë¤¤¤ë¥¢¥ó¥Ç¥Ã¥É¤ò¸½ºß¤Î³¬¤«¤é¾Ã¤·µî¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¤½¤Î³¬Á´ÂΤò±Êµ×¤Ë¾È¤é¤·¡¢¥À¥ó¥¸¥ç¥óÆ⤹¤Ù¤Æ¤Î¥¢¥¤¥Æ¥à¤ò´¶ÃΤ¹¤ë¡£",
                "¤¹¤Ù¤Æ¤Î¥¹¥Æ¡¼¥¿¥¹¤È·Ð¸³Ãͤò²óÉü¤¹¤ë¡£",
                "ºÇ¶¯¤Î¼£Ìþ¤ÎËâË¡¤Ç¡¢Éé½ý¤ÈÛ¯Û°¾õÂÖ¤âÁ´²÷¤¹¤ë¡£",
                "¥¢¥¤¥Æ¥à¤Î»ý¤ÄǽÎϤò´°Á´¤ËÃΤ롣",
-               "ÎÙÀܤ¹¤ë¥â¥ó¥¹¥¿¡¼¤ËÀ»¤Ê¤ë¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢»ë³¦Æâ¤Î¥â¥ó¥¹¥¿¡¼¤Ë¥À¥á¡¼¥¸¡¢¸ºÂ®¡¢Û¯Û°¡¢º®Í𡢶²ÉÝ¡¢Ì²¤ê¤òÍ¿¤¨¤ë¡£¤µ¤é¤ËÅ·»È¤ò¾¤´­¤·¡¢ÂÎÎϤò²óÉü¤·¡¢¶²Éݤò¼è¤ê½ü¤­¡¢°ìÄê»þ´Ö¥Ò¡¼¥í¡¼µ¤Ê¬¤Ë¤Ê¤ê¡¢²Ã®¤¹¤ë¡£",
                "°ìÄê»þ´Ö¡¢¤¢¤é¤æ¤ëÂÑÀ­¤òÉÕ¤±¡¢AC¤ÈËâË¡ËɸæǽÎϤò¾å¾º¤µ¤»¤ë¡£"
        },
 
@@ -343,42 +343,42 @@ static char *spell_tips[VALID_REALM][32] =
                "°­Ëâ¤Î²¦¤ËÊѲ½¤¹¤ë¡£ÊѲ½¤·¤Æ¤¤¤ë´Ö¤ÏËÜÍè¤Î¼ï²¤ÎǽÎϤò¼º¤¤¡¢Âå¤ï¤ê¤Ë°­Ëâ¤Î²¦¤È¤·¤Æ¤ÎǽÎϤòÆÀ¡¢ÊɤòÇ˲õ¤·¤Ê¤¬¤éÊ⤯¡£",
        },
 
-       { /* nanka */
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
+       {
+               "ÅÅ·â¤Î¥Ü¥ë¥È¤â¤·¤¯¤Ï¥Ó¡¼¥à¤òÊü¤Ä¡£",
+               "¶á¤¯¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò´¶ÃΤ¹¤ë¡£",
+               "¶²Éݤò¼è¤ê½ü¤¯¡£",
+               "¥â¥ó¥¹¥¿¡¼1ÂΤò¶²Éݤµ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "ÎÙÀܤ·¤¿Á´¤Æ¤Î¥â¥ó¥¹¥¿¡¼¤ò̲¤é¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "Ãæµ÷Î¥¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¤¹¤ë¡£",
+               "¥¿¡¼¥²¥Ã¥ÈÉÕ¶á¤ËÁ®¸÷¤Î¥Ü¥ë¥È¤òÏ¢¼Í¤¹¤ë¡£",
+               "½ý¡¢ÆÇ¡¢Û¯Û°¤«¤éÁ´²÷¤¹¤ë¡£",
+
+               "¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼1ÂΤò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥¢¥ó¥Ç¥Ã¥ÉµÚ¤Ó°­Ëâ¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢¶²Éݤµ¤»¤ë¡£",
+               "À»¤Ê¤ëÎϤò¤â¤ÄÊõ¼î¤òÊü¤Ä¡£¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ËÂФ·¤ÆÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¤¬¡¢Á±Îɤʥâ¥ó¥¹¥¿¡¼¤Ë¤Ï¸ú²Ì¤¬¤Ê¤¤¡£",
+               "¥¢¥¤¥Æ¥à¤Ë¤«¤«¤Ã¤¿¼å¤¤¼ö¤¤¤ò²ò½ü¤¹¤ë¡£",
+               "°ìÄê»þ´Ö¡¢Æ©ÌÀ¤Ê¤â¤Î¤¬¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤ë¡£",
+               "¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤Î¹¶·â¤òËɤ°¥Ð¥ê¥¢¤òÄ¥¤ë¡£",
+               "¶¯ÎϤÊÅÅ·â¤Î¥Ü¥ë¥È¤òÊü¤Ä¡£",
+               "»ë³¦Æâ¤Î¼Ù°­¤Ê¸ºß¤ËÂ礭¤Ê¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢ÂÎÎϤò²óÉü¤·¡¢ÆÇ¡¢¶²ÉÝ¡¢Û¯Û°¾õÂÖ¡¢Éé½ý¤«¤éÁ´²÷¤¹¤ë¡£",
 
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
+               "°ìľÀþ¾å¤ÎÁ´¤Æ¤Î櫤ÈÈâ¤òÇ˲õ¤¹¤ë¡£",
+               "¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ÎÆ°¤­¤ò»ß¤á¤ë¡£",
+               "°ìÄê»þ´Ö¡¢¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò½ý¤Ä¤±¤ëÀ»¤Ê¤ë¥ª¡¼¥é¤òÆÀ¤ë¡£",
+               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¥¢¥ó¥Ç¥Ã¥ÉµÚ¤Ó°­Ëâ¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
+               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤Ë¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
+               "Ä̾ï¤ÎÉð´ï¤ËÌǼ٤ΰÀ­¤ò¤Ä¤±¤ë¡£",
+               "µðÂç¤ÊÁ®¸÷¤Îµå¤òÊü¤Ä¡£",
+               "Å·»È¤ò1Âξ¤´­¤¹¤ë¡£",
 
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
-               "",
+               "°ìÄê»þ´Ö¡¢¥Ò¡¼¥í¡¼µ¤Ê¬¤Ë¤Ê¤ë¡£",
+               "¥¢¥¤¥Æ¥à¤Ë¤«¤«¤Ã¤¿¶¯ÎϤʼö¤¤¤ò²ò½ü¤¹¤ë¡£",
+               "»ë³¦Æâ¤ÎÁ´¤Æ¤Î¼Ù°­¤Ê¥â¥ó¥¹¥¿¡¼¤ò¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤ë¡£Äñ¹³¤µ¤ì¤ë¤È̵¸ú¡£",
+               "¼þÊդΥ¢¥¤¥Æ¥à¡¢¥â¥ó¥¹¥¿¡¼¡¢ÃÏ·Á¤òÇ˲õ¤¹¤ë¡£",
+               "°ìÄê»þ´Ö¡¢¼«Ê¬¤¬¥À¥á¡¼¥¸¤ò¼õ¤±¤¿¤È¤­¤Ë¹¶·â¤ò¹Ô¤Ã¤¿¥â¥ó¥¹¥¿¡¼¤ËÂФ·¤ÆƱÅù¤Î¥À¥á¡¼¥¸¤òÍ¿¤¨¤ë¡£",
+               "¥¿¡¼¥²¥Ã¥È¤Î¼þ°Ï¤Ëʬ²ò¤Îµå¤ò¿¿ôÍî¤È¤¹¡£",
+               "ÎÙÀܤ¹¤ë¥â¥ó¥¹¥¿¡¼¤ËÀ»¤Ê¤ë¥À¥á¡¼¥¸¤òÍ¿¤¨¡¢»ë³¦Æâ¤Î¥â¥ó¥¹¥¿¡¼¤Ë¥À¥á¡¼¥¸¡¢¸ºÂ®¡¢Û¯Û°¡¢º®Í𡢶²ÉÝ¡¢Ì²¤ê¤òÍ¿¤¨¤ë¡£¤µ¤é¤ËÂÎÎϤò²óÉü¤¹¤ë¡£",
+               "»ë³¦Æâ¤ÎÁ±Îɤʥâ¥ó¥¹¥¿¡¼¤ò¥Ú¥Ã¥È¤Ë¤·¤è¤¦¤È¤·¡¢¤Ê¤é¤Ê¤«¤Ã¤¿¾ì¹çµÚ¤ÓÁ±ÎɤǤʤ¤¥â¥ó¥¹¥¿¡¼¤ò¶²Éݤµ¤»¤ë¡£¤µ¤é¤Ë¿¿ô¤Î²Ã®¤µ¤ì¤¿µ³»Î¤ò¾¤´­¤·¡¢¥Ò¡¼¥í¡¼¡¢½ËÊ¡¡¢²Ã®¡¢Âмٰ­·ë³¦¤òÆÀ¤ë¡£",
        },
 
        {
index 9fd7833..40a0bba 100644 (file)
@@ -4101,7 +4101,7 @@ cptr realm_names[]
        "Arcane",
        "Craft",
        "Daemon",
-       "nanka",
+       "Crusade",
        "unknown",
        "unknown",
        "unknown",
@@ -4121,41 +4121,41 @@ cptr spell_names[VALID_REALM][32] =
        /*** Life Spells ***/
        {
                /* Common Life Spellbooks */
-"¼Ù°­Â¸ºß´¶ÃÎ",
 "·Ú½ý¤Î¼£Ìþ",
 "½ËÊ¡",
-"¶²Éݽüµî",
+"·Ú½ý",
 "¸÷¤Î¾¤´­",
 "æ« & ±£¤·Èâ´¶ÃÎ",
 "½Å½ý¤Î¼£Ìþ",
+"²òÆÇ",
 "¶õÊ¢½¼Â­",
 
 "²ò¼ö",
-"²òÆÇ",
+"½Å½ý",
 "Ã×Ì¿½ý¤Î¼£Ìþ",
-"Æ©ÌÀ»ëǧ",
-"À»¤Ê¤ë¸÷µå",
-"Âмٰ­·ë³¦",
+"ÂÑÇ®ÂÑ´¨",
+"¼þÊÕ´¶ÃÎ",
+"¥Ñ¥Ë¥Ã¥¯¡¦¥¢¥ó¥Ç¥Ã¥É",
 "ÂÎÎϲóÉü",
 "·ë³¦¤ÎÌæ¾Ï",
 
                /* Rare Life Spellbooks */
-"°­Ëâʧ¤¤",
 "*²ò¼ö*",
-"¥¢¥ó¥Ç¥Ã¥É & °­ËâÂ໶",
+"´Õ¼±",
+"¥¢¥ó¥Ç¥Ã¥ÉÂ໶",
 "Æä¤Î¹ï",
-"¼Ù°­Â໶",
-"¼Ù°­ÄÉÊü",
-"À»¤Ê¤ë¸æ¸ÀÍÕ",
+"Ã×Ì¿½ý",
+"µ¢´Ô¤Î¾Û",
+"¿¿¼Â¤Îº×ÃÅ",
 "¿¿¡¦·ë³¦",
 
-"»Îµ¤¹âÍÈ",
-"µ§¤ê",
+"ÉÔÌÓ²½",
+"Á´´¶ÃÎ",
 "¥¢¥ó¥Ç¥Ã¥É¾ÃÌÇ",
+"ÀéΤ´ã",
 "Á´Éü³è",
 "*ÂÎÎϲóÉü*",
 "À»¤Ê¤ë¥Ó¥¸¥ç¥ó",
-"¿À°Ò",
 "µæ¶Ë¤ÎÂÑÀ­"
        },
 
@@ -4501,31 +4501,31 @@ cptr spell_names[VALID_REALM][32] =
 
        },
 
-       /*** nanka Spells ***/
+       /*** Crusade Spells ***/
 
        {
-               /* Common nanka Spellbooks */
+               /* Common Crusade Spellbooks */
 "ÅÅ·â",
 "¼Ù°­Â¸ºß´¶ÃÎ",
-"½ËÊ¡",
 "¶²Éݽüµî",
 "¥â¥ó¥¹¥¿¡¼¶²¹²",
 "À»°è",
 "Æþ¸ý",
 "¥¹¥¿¡¼¥À¥¹¥È",
-
 "¿ÈÂξô²½",
+
 "¼Ù°­Èô¤Ð¤·",
 "°­Ëâʧ¤¤",
 "À»¤Ê¤ë¸÷µå",
+"²ò¼ö",
 "Æ©ÌÀ»ëǧ",
 "Âмٰ­·ë³¦",
 "ºÛ¤­¤ÎÍë",
 "À»¤Ê¤ë¸æ¸ÀÍÕ",
 
-               /* Rare nanka Spellbooks */
+               /* Rare Crusade Spellbooks */
 "³«¤«¤ì¤¿Æ»",
-"²ò¼ö",
+"ÉõËâ",
 "À»¤Ê¤ë¥ª¡¼¥é",
 "¥¢¥ó¥Ç¥Ã¥É&°­ËâÂ໶",
 "¼Ù°­Â໶",
@@ -4636,7 +4636,7 @@ cptr spell_names[VALID_REALM][32] =
 
 cptr spell_names[VALID_REALM][32] =
 {
-       /*** Life Spells ***/
+       /*** Life Spells ***/ /* nanka */
        {
                /* Common Life Spellbooks */
                "Detect Evil",
@@ -5017,17 +5017,17 @@ cptr spell_names[VALID_REALM][32] =
                /* Common Crusade Spellbooks */
                "Zap",
                "Detect Evil",
-               "Bless",
                "Remove Fear",
                "Scare Monster",
                "Sanctuary",
                "Portal",
                "Star Dust",
-
                "Purify",
+
                "Scatter Evil",
                "Exorcism",
                "Holy Orb",
+               "Remove Curse",
                "Sense Unseen",
                "Protection from Evil",
                "Judgment Thunder",
@@ -5035,7 +5035,7 @@ cptr spell_names[VALID_REALM][32] =
 
                /* Rare Crusade Spellbooks */
                "Unbarring Ways",
-               "Remove Curse",
+               "nanka",
                "Holy Aura",
                "Dispel Undead & Demons",
                "Dispel Evil",
index f393d58..a9fa07d 100644 (file)
@@ -376,7 +376,7 @@ static struct {
        {TERM_L_BLUE, "²ó", "²óÉü"},
        {TERM_L_RED, "ÀÖ", "ÀÖ³°"},
        {TERM_UMBER, "±£", "±£Ì©"},
-       {TERM_YELLOW, "Ķ±£", "Ķ±£Ì©"},
+       {TERM_YELLOW, "±£", "Ķ±£Ì©"},
        {TERM_WHITE, "µ¢", "µ¢´Ô"},
        {0, NULL, NULL}
 };
@@ -5394,6 +5394,9 @@ msg_print("
                else if (p_ptr->vir_types[i] == V_JUSTICE) p_ptr->align += (p_ptr->virtues[i]*2);
                else if (p_ptr->vir_types[i] != V_CHANCE) p_ptr->align += p_ptr->virtues[i];
         }
+       if ((inventory[INVEN_RARM].name1 == ART_IRON_BALL) || (inventory[INVEN_LARM].name1 == ART_IRON_BALL)) p_ptr->align -= 1000;
+       if (prace_is_(RACE_ANGEL)) p_ptr->align += 200;
+       if ((prace_is_(RACE_DEMON)) || (p_ptr->mimic_form == MIMIC_DEMON_LORD) || (p_ptr->mimic_form == MIMIC_DEMON)) p_ptr->align -= 200;
        while (j)
        {
                j--;
@@ -5408,9 +5411,6 @@ msg_print("
                        if (p_ptr->align > 0) p_ptr->align = 0;
                }
        }
-       if ((inventory[INVEN_RARM].name1 == ART_IRON_BALL) || (inventory[INVEN_LARM].name1 == ART_IRON_BALL)) p_ptr->align -= 1000;
-       if (prace_is_(RACE_ANGEL)) p_ptr->align += 200;
-       if ((prace_is_(RACE_DEMON)) || (p_ptr->mimic_form == MIMIC_DEMON_LORD) || (p_ptr->mimic_form == MIMIC_DEMON)) p_ptr->align -= 200;
 
        have_dd_s = FALSE;
        have_dd_t = FALSE;