OSDN Git Service

[Refactor] #38997 mind.c 内関数に player_type * 引数を追加. / Add player_type * argument to...
authordeskull <deskull@users.sourceforge.jp>
Sat, 4 Jan 2020 16:46:22 +0000 (01:46 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Sat, 4 Jan 2020 16:46:22 +0000 (01:46 +0900)
src/cmd/cmd-spell.c
src/core.c
src/mind.c
src/mind.h
src/spells3.c
src/store.c

index 0a88dd5..c45b741 100644 (file)
@@ -582,7 +582,7 @@ static void confirm_use_force(bool browse_only)
        /* Get the item index */
        if (repeat_pull(&code) && (code == INVEN_FORCE))
        {
-               browse_only ? do_cmd_mind_browse() : do_cmd_mind(p_ptr);
+               browse_only ? do_cmd_mind_browse(p_ptr) : do_cmd_mind(p_ptr);
                return;
        }
 
@@ -607,7 +607,7 @@ static void confirm_use_force(bool browse_only)
 
        if (which == 'w')
        {
-               browse_only ? do_cmd_mind_browse() : do_cmd_mind(p_ptr);
+               browse_only ? do_cmd_mind_browse(p_ptr) : do_cmd_mind(p_ptr);
        }
 }
 
@@ -673,7 +673,7 @@ void do_cmd_browse(player_type *caster_ptr)
        {
                if (item == INVEN_FORCE) /* the_force */
                {
-                       do_cmd_mind_browse();
+                       do_cmd_mind_browse(caster_ptr);
                        return;
                }
                return;
index 0fa4333..cc71f3d 100644 (file)
@@ -3834,7 +3834,7 @@ static void process_command(player_type *creature_ptr)
                             (creature_ptr->pclass == CLASS_BERSERKER) ||
                             (creature_ptr->pclass == CLASS_NINJA) ||
                             (creature_ptr->pclass == CLASS_MIRROR_MASTER) 
-                            ) do_cmd_mind_browse();
+                            ) do_cmd_mind_browse(creature_ptr);
                        else if (creature_ptr->pclass == CLASS_SMITH)
                                do_cmd_kaji(creature_ptr, TRUE);
                        else if (creature_ptr->pclass == CLASS_MAGIC_EATER)
index 4cb51ba..e382465 100644 (file)
@@ -557,9 +557,9 @@ static concptr const mind_tips[5][MAX_MIND_POWERS] =
  * @param power モンスター魔法のID
  * @return なし
  */
-void mindcraft_info(char *p, int use_mind, int power)
+void mindcraft_info(player_type *caster_ptr, char *p, int use_mind, int power)
 {
-       PLAYER_LEVEL plev = p_ptr->lev;
+       PLAYER_LEVEL plev = caster_ptr->lev;
 
        strcpy(p, "");
 
@@ -585,14 +585,14 @@ void mindcraft_info(char *p, int use_mind, int power)
 #endif
                case 11: sprintf(p, " %s%dd6", KWD_DAM, plev / 2);  break;
                case 12: sprintf(p, " %sd%d+%d", KWD_DAM, plev * 3, plev * 3); break;
-               case 13: sprintf(p, _(" 行動:%ld回", " %ld acts."), (long int)(p_ptr->csp + 100-p_ptr->energy_need - 50)/100); break;
+               case 13: sprintf(p, _(" 行動:%ld回", " %ld acts."), (long int)(caster_ptr->csp + 100-caster_ptr->energy_need - 50)/100); break;
                }
                break;
        case MIND_KI:
        {
                int boost = P_PTR_KI;
 
-               if (heavy_armor(p_ptr)) boost /= 2;
+               if (heavy_armor(caster_ptr)) boost /= 2;
 
                switch (power)
                {
@@ -930,7 +930,7 @@ static bool_hack get_mind_power(player_type *caster_ptr, SPELL_IDX *sn, bool onl
                                        }
 
                                        /* Get info */
-                                       mindcraft_info(comment, use_mind, i);
+                                       mindcraft_info(caster_ptr, comment, use_mind, i);
 
                                        if (use_menu)
                                        {
@@ -1245,7 +1245,7 @@ static bool cast_force_spell(player_type *caster_ptr, int spell)
                if (!target_set(TARGET_KILL)) return FALSE;
                m_idx = caster_ptr->current_floor_ptr->grid_array[target_row][target_col].m_idx;
                if (!m_idx) break;
-               if (!player_has_los_bold(p_ptr, target_row, target_col)) break;
+               if (!player_has_los_bold(caster_ptr, target_row, target_col)) break;
                if (!projectable(caster_ptr->current_floor_ptr, caster_ptr->y, caster_ptr->x, target_row, target_col)) break;
                dispel_monster_status(m_idx);
                break;
@@ -1646,7 +1646,7 @@ static bool cast_ninja_spell(player_type *caster_ptr, int spell)
                m_idx = caster_ptr->current_floor_ptr->grid_array[target_row][target_col].m_idx;
                if (!m_idx) break;
                if (m_idx == caster_ptr->riding) break;
-               if (!player_has_los_bold(p_ptr, target_row, target_col)) break;
+               if (!player_has_los_bold(caster_ptr, target_row, target_col)) break;
                if (!projectable(caster_ptr->current_floor_ptr, caster_ptr->y, caster_ptr->x, target_row, target_col)) break;
                m_ptr = &caster_ptr->current_floor_ptr->m_list[m_idx];
                monster_desc(m_name, m_ptr, 0);
@@ -1659,7 +1659,7 @@ static bool cast_ninja_spell(player_type *caster_ptr, int spell)
                        POSITION nx = GRID_X(path_g[i]);
                        grid_type *g_ptr = &caster_ptr->current_floor_ptr->grid_array[ny][nx];
 
-                       if (in_bounds(caster_ptr->current_floor_ptr, ny, nx) && cave_empty_bold(p_ptr->current_floor_ptr, ny, nx) &&
+                       if (in_bounds(caster_ptr->current_floor_ptr, ny, nx) && cave_empty_bold(caster_ptr->current_floor_ptr, ny, nx) &&
                            !(g_ptr->info & CAVE_OBJECT) &&
                                !pattern_tile(ny, nx))
                        {
@@ -2061,25 +2061,25 @@ void do_cmd_mind(player_type *caster_ptr)
  * @brief 現在プレイヤーが使用可能な特殊技能の一覧表示 /
  * @return なし
  */
-void do_cmd_mind_browse(void)
+void do_cmd_mind_browse(player_type *caster_ptr)
 {
        SPELL_IDX n = 0;
        int j, line;
        char temp[62*5];
        int use_mind = 0;
 
-       if (p_ptr->pclass == CLASS_MINDCRAFTER) use_mind = MIND_MINDCRAFTER;
-       else if (p_ptr->pclass == CLASS_FORCETRAINER) use_mind = MIND_KI;
-       else if (p_ptr->pclass == CLASS_BERSERKER) use_mind = MIND_BERSERKER;
-       else if (p_ptr->pclass == CLASS_NINJA) use_mind = MIND_NINJUTSU;
-       else if (p_ptr->pclass == CLASS_MIRROR_MASTER)
+       if (caster_ptr->pclass == CLASS_MINDCRAFTER) use_mind = MIND_MINDCRAFTER;
+       else if (caster_ptr->pclass == CLASS_FORCETRAINER) use_mind = MIND_KI;
+       else if (caster_ptr->pclass == CLASS_BERSERKER) use_mind = MIND_BERSERKER;
+       else if (caster_ptr->pclass == CLASS_NINJA) use_mind = MIND_NINJUTSU;
+       else if (caster_ptr->pclass == CLASS_MIRROR_MASTER)
          use_mind = MIND_MIRROR_MASTER;
 
        screen_save();
 
        while(1)
        {
-               if (!get_mind_power(p_ptr, &n, TRUE))
+               if (!get_mind_power(caster_ptr, &n, TRUE))
                {
                        screen_load();
                        return;
index 5eeab5a..0a73ba4 100644 (file)
@@ -26,7 +26,8 @@ struct mind_power
 
 /* mind.c */
 extern mind_power const mind_powers[5];
-extern void mindcraft_info(char *p, int use_mind, int power);
+extern void mindcraft_info(player_type *caster_ptr, char *p, int use_mind, int power);
 extern void do_cmd_mind(player_type *caster_ptr);
-extern void do_cmd_mind_browse(void);
+extern void do_cmd_mind_browse(player_type *caster_ptr);
+extern void do_cmd_mind_browse(player_type *caster_ptr);
 
index 2d2a9da..d2d2cda 100644 (file)
@@ -2272,7 +2272,7 @@ void display_spell_list(player_type *caster_ptr)
                        if (chance > 95) chance = 95;
 
                        /* Get info */
-                       mindcraft_info(comment, use_mind, i);
+                       mindcraft_info(caster_ptr, comment, use_mind, i);
 
                        /* Dump the spell */
                        sprintf(psi_desc, "  %c) %-30s%2d %4d %3d%%%s",
index 8497d48..96fa931 100644 (file)
@@ -5490,7 +5490,7 @@ static void store_process_command(player_type *client_ptr)
                             (client_ptr->pclass == CLASS_BERSERKER) ||
                             (client_ptr->pclass == CLASS_NINJA) ||
                             (client_ptr->pclass == CLASS_MIRROR_MASTER) 
-                            ) do_cmd_mind_browse();
+                            ) do_cmd_mind_browse(client_ptr);
                        else if (client_ptr->pclass == CLASS_SMITH)
                                do_cmd_kaji(client_ptr, TRUE);
                        else if (client_ptr->pclass == CLASS_MAGIC_EATER)