OSDN Git Service

[Fix] #38965 「気合いため」のための concentration() 関数抜け修正。 / Fix forgotten calling concentration().
[hengband/hengband.git] / src / realm-craft.c
index ef953a9..c6d68fa 100644 (file)
@@ -1,6 +1,10 @@
 #include "angband.h"
 #include "cmd-spell.h"
 #include "selfinfo.h"
+#include "projection.h"
+#include "spells-summon.h"
+#include "spells-status.h"
+#include "mutation.h"
 
 
 
@@ -10,7 +14,7 @@
 * @param mode 処理内容 (SPELL_NAME / SPELL_DESC / SPELL_INFO / SPELL_CAST)
 * @return SPELL_NAME / SPELL_DESC / SPELL_INFO 時には文字列ポインタを返す。SPELL_CAST時はNULL文字列を返す。
 */
-cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
+concptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
 {
        bool name = (mode == SPELL_NAME) ? TRUE : FALSE;
        bool desc = (mode == SPELL_DESC) ? TRUE : FALSE;
@@ -170,13 +174,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
                if (desc) return _("アイテムにかかった弱い呪いを解除する。", "Removes normal curses from equipped items.");
 
                {
-                       if (cast)
-                       {
-                               if (remove_curse())
-                               {
-                                       msg_print(_("誰かに見守られているような気がする。", "You feel as if someone is watching over you."));
-                               }
-                       }
+                       if (cast) (void)remove_curse();
                }
                break;
 
@@ -232,7 +230,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                {
                        int base = 3 * plev;
-                       int sides = 25;
+                       DICE_SID sides = 25;
 
                        if (info) return info_duration(base, sides);
 
@@ -278,7 +276,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                {
                        int base = 25;
-                       int sides = 30;
+                       DICE_SID sides = 30;
 
                        if (info) return info_duration(base, sides);
 
@@ -295,7 +293,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                {
                        int base = 30;
-                       int sides = 20;
+                       DICE_SID sides = 20;
 
                        if (info) return info_duration(base, sides);
 
@@ -333,7 +331,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
 
                {
                        int base = plev;
-                       int sides = 20 + plev;
+                       DICE_SID sides = 20 + plev;
 
                        if (info) return info_duration(base, sides);
 
@@ -379,7 +377,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
                {
                        if (cast)
                        {
-                               if (summon_specific(-1, p_ptr->y, p_ptr->x, plev, SUMMON_GOLEM, PM_FORCE_PET))
+                               if (summon_specific(-1, p_ptr->y, p_ptr->x, plev, SUMMON_GOLEM, PM_FORCE_PET, '\0'))
                                {
                                        msg_print(_("ゴーレムを作った。", "You make a golem."));
                                }
@@ -425,13 +423,7 @@ cptr do_craft_spell(SPELL_IDX spell, BIT_FLAGS mode)
                if (desc) return _("アイテムにかかった強力な呪いを解除する。", "Removes normal and heavy curse from equipped items.");
 
                {
-                       if (cast)
-                       {
-                               if (remove_all_curse())
-                               {
-                                       msg_print(_("誰かに見守られているような気がする。", "You feel as if someone is watching over you."));
-                               }
-                       }
+                       if (cast) (void)remove_all_curse();
                }
                break;