From 5991a76b1f726a25891e774ec0841d093b3a7191 Mon Sep 17 00:00:00 2001 From: Hourier <66951241+Hourier@users.noreply.github.com> Date: Sat, 16 Oct 2021 14:30:05 +0900 Subject: [PATCH] =?utf8?q?[Refactor]=20#1793=20=E3=82=A2=E3=83=93=E3=83=AA?= =?utf8?q?=E3=83=86=E3=82=A3=E3=82=B9=E3=82=B3=E3=82=A2=E3=81=AE=E3=82=A2?= =?utf8?q?=E3=83=83=E3=83=97=E3=83=87=E3=83=BC=E3=83=88=E5=87=A6=E7=90=86?= =?utf8?q?=E3=82=92update=5Fability=5Fscores()=20=E3=81=AB=E5=88=86?= =?utf8?q?=E9=9B=A2=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/player/player-status.cpp | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/src/player/player-status.cpp b/src/player/player-status.cpp index 0b04cfc57..5d5e05877 100644 --- a/src/player/player-status.cpp +++ b/src/player/player-status.cpp @@ -226,6 +226,29 @@ WEIGHT calc_inventory_weight(player_type *player_ptr) } return weight; } + +static void update_ability_scores(player_type *player_ptr) +{ + PlayerStrength player_str(player_ptr); + PlayerIntelligence player_int(player_ptr); + PlayerWisdom player_wis(player_ptr); + PlayerDexterity player_dex(player_ptr); + PlayerConstitution player_con(player_ptr); + PlayerCharisma player_chr(player_ptr); + player_ptr->stat_add[A_STR] = player_str.modification_value(); + player_ptr->stat_add[A_INT] = player_str.modification_value(); + player_ptr->stat_add[A_WIS] = player_wis.modification_value(); + player_ptr->stat_add[A_DEX] = player_dex.modification_value(); + player_ptr->stat_add[A_CON] = player_con.modification_value(); + player_ptr->stat_add[A_CHR] = player_chr.modification_value(); + player_str.update_value(); + player_int.update_value(); + player_wis.update_value(); + player_dex.update_value(); + player_con.update_value(); + player_chr.update_value(); +} + /*! * @brief プレイヤーの全ステータスを更新する / * Calculate the players current "state", taking into account @@ -322,20 +345,7 @@ static void update_bonuses(player_type *player_ptr) } } - player_ptr->stat_add[A_STR] = PlayerStrength(player_ptr).modification_value(); - player_ptr->stat_add[A_INT] = PlayerIntelligence(player_ptr).modification_value(); - player_ptr->stat_add[A_WIS] = PlayerWisdom(player_ptr).modification_value(); - player_ptr->stat_add[A_DEX] = PlayerDexterity(player_ptr).modification_value(); - player_ptr->stat_add[A_CON] = PlayerConstitution(player_ptr).modification_value(); - player_ptr->stat_add[A_CHR] = PlayerCharisma(player_ptr).modification_value(); - - PlayerStrength(player_ptr).update_value(); - PlayerIntelligence(player_ptr).update_value(); - PlayerWisdom(player_ptr).update_value(); - PlayerDexterity(player_ptr).update_value(); - PlayerConstitution(player_ptr).update_value(); - PlayerCharisma(player_ptr).update_value(); - + update_ability_scores(player_ptr); o_ptr = &player_ptr->inventory_list[INVEN_BOW]; if (o_ptr->k_idx) { player_ptr->tval_ammo = bow_tval_ammo(o_ptr); -- 2.11.0