OSDN Git Service

[Refactor] #37353 自己分析処理を selfinfo.c/h に分離。 / Separate self knoledge spells to selfin...
[hengband/hengband.git] / src / do-spell.c
index 03ec074..e4ddcf7 100644 (file)
@@ -7,6 +7,7 @@
  */
 
 #include "angband.h"
+#include "selfinfo.h"
 
 
 /*!
@@ -303,12 +304,12 @@ static void cast_wonder(int dir)
        else if (die < 71)
                fire_bolt_or_beam(beam_chance(), GF_FIRE, dir,
                                  damroll(8 + ((plev - 5) / 4), 8));
-       else if (die < 76) drain_life(dir, 75);
+       else if (die < 76) hypodynamic_bolt(dir, 75);
        else if (die < 81) fire_ball(GF_ELEC, dir, 30 + plev / 2, 2);
        else if (die < 86) fire_ball(GF_ACID, dir, 40 + plev, 2);
        else if (die < 91) fire_ball(GF_ICE, dir, 70 + plev, 3);
        else if (die < 96) fire_ball(GF_FIRE, dir, 80 + plev, 3);
-       else if (die < 101) drain_life(dir, 100 + plev);
+       else if (die < 101) hypodynamic_bolt(dir, 100 + plev);
        else if (die < 104)
        {
                earthquake(p_ptr->y, p_ptr->x, 12);
@@ -429,7 +430,7 @@ static void cast_invoke_spirits(int dir)
        }
        else if (die < 76)
        {
-               drain_life(dir, 75);
+               hypodynamic_bolt(dir, 75);
        }
        else if (die < 81)
        {
@@ -449,7 +450,7 @@ static void cast_invoke_spirits(int dir)
        }
        else if (die < 101)
        {
-               drain_life(dir, 100 + plev);
+               hypodynamic_bolt(dir, 100 + plev);
        }
        else if (die < 104)
        {
@@ -3519,8 +3520,8 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
        case 8:
                if (name) return _("エントロピーの球", "Orb of Entropy");
-               if (desc) return _("ç\94\9få\91½ã\81®ã\81\82ã\82\8bè\80\85ã\81«å\8a¹æ\9e\9cã\81®ã\81\82ã\82\8bç\90\83ã\82\92æ\94¾ã\81¤ã\80\82", "Fires a ball which damages living monsters.");
-    
+               if (desc) return _("ç\94\9få\91½ã\81®ã\81\82ã\82\8bè\80\85ã\81®HPã\81¨æ\9c\80大HPå\8f\8cæ\96¹ã\81«ã\83\80ã\83¡ã\83¼ã\82¸ã\82\92ä¸\8eã\81\88ã\82\8bå\8a¹æ\9e\9cã\81®ã\81\82ã\82\8bç\90\83ã\82\92æ\94¾ã\81¤ã\80\82", "Fires a ball which damages to both HP and MaxHP of living monsters.");
+
                {
                        int dice = 3;
                        int sides = 6;
@@ -3541,7 +3542,7 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
                        {
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               fire_ball(GF_OLD_DRAIN, dir, damroll(dice, sides) + base, rad);
+                               fire_ball(GF_HYPODYNAMIA, dir, damroll(dice, sides) + base, rad);
                        }
                }
                break;
@@ -3613,9 +3614,9 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
                break;
 
        case 13:
-               if (name) return _("å\90¸è¡\80ã\83\89ã\83¬ã\82¤ã\83³", "Vampiric Drain");
-               if (desc) return _("モンスター1体から生命力を吸いとる。吸いとった生命力によって満腹度が上がる。", 
-                       "Absorbs some HP from a monster and gives them to you. You will also gain nutritional sustenance from this.");
+               if (name) return _("å\90¸è¡\80ã\81®ç\9f¢", "Vampiric Bolt");
+               if (desc) return _("ã\83\9cã\83«ã\83\88ã\81«ã\82\88ã\82\8aã\83¢ã\83³ã\82¹ã\82¿ã\83¼1ä½\93ã\81\8bã\82\89ç\94\9få\91½å\8a\9bã\82\92å\90¸ã\81\84ã\81¨ã\82\8bã\80\82å\90¸ã\81\84ã\81¨ã\81£ã\81\9fç\94\9få\91½å\8a\9bã\81«ã\82\88ã\81£ã\81¦æº\80è\85¹åº¦ã\81\8cä¸\8aã\81\8cã\82\8bã\80\82", 
+                       "Absorbs some HP from a monster and gives them to you by bolt. You will also gain nutritional sustenance from this.");
     
                {
                        int dice = 1;
@@ -3630,7 +3631,7 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                                if (!get_aim_dir(&dir)) return NULL;
 
-                               if (drain_life(dir, dam))
+                               if (hypodynamic_bolt(dir, dam))
                                {
                                        chg_virtue(V_SACRIFICE, -1);
                                        chg_virtue(V_VITALITY, -1);
@@ -3775,10 +3776,9 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
                break;
 
        case 21:
-               if (name) return _("真・吸血", "Vampirism True");
-               if (desc) return _("モンスター1体から生命力を吸いとる。吸いとった生命力によって体力が回復する。", 
+               if (name) return _("吸血の連矢", "Vampiric Bolts");
+               if (desc) return _("3連射のボルトによりモンスター1体から生命力を吸いとる。吸いとった生命力によって体力が回復する。", 
                        "Fires 3 bolts. Each of the bolts absorbs some HP from a monster and gives them to you.");
-    
                {
                        HIT_POINT dam = 100;
 
@@ -3795,7 +3795,7 @@ static cptr do_death_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                                for (i = 0; i < 3; i++)
                                {
-                                       if (drain_life(dir, dam))
+                                       if (hypodynamic_bolt(dir, dam))
                                                hp_player(dam);
                                }
                        }
@@ -9130,14 +9130,14 @@ static cptr do_hex_spell(SPELL_IDX spell, BIT_FLAGS mode)
                break;
 
        case 11:
-               if (name) return _("吸血霧", "Vampiric mist");
-               if (desc) return _("視界内のモンスターに微弱量の生命力吸収のダメージを与える。与えたダメージの分、体力が回復する。", 
-                       "Deals few dameges of drain life to all monsters in your sight.");
+               if (name) return _("衰弱の霧", "Hypodynamic mist");
+               if (desc) return _("視界内のモンスターに微弱量の衰弱属性のダメージを与える。", 
+                       "Deals few damages of hypodynamia to all monsters in your sight.");
                power = (plev / 2) + 5;
                if (info) return info_damage(1, power, 0);
                if (cast || cont)
                {
-                       project_hack(GF_OLD_DRAIN, randint1(power));
+                       project_hack(GF_HYPODYNAMIA, randint1(power));
                }
                break;