OSDN Git Service
Habu [Tue, 12 Oct 2021 10:08:23 +0000 (19:08 +0900)]
Merge pull request #1770 from habu1010/feature/enum-range-class
[Feature] 列挙値の範囲を扱うクラス
Habu [Mon, 11 Oct 2021 22:20:30 +0000 (07:20 +0900)]
[Refactor] StoreSaleType の範囲に対する処理
汎用性に欠けるので StoreSaleType のイテレーション専用の関数群を削除し、
EnumRange クラスを代わりに使用する。
Habu [Mon, 11 Oct 2021 22:15:12 +0000 (07:15 +0900)]
[Feature] 列挙値の範囲を扱うクラス
Imprement #1769.
enum および enum class の列挙値の範囲を扱うクラス EnumRange を追加する。
Deskull [Mon, 11 Oct 2021 11:38:50 +0000 (20:38 +0900)]
Merge pull request #1760 from sikabane-works/feature/refactor-StoreSaleType
[Refactor] 店舗の種類を enum class StoreSaleType 型に変更しリファクタリング。
Deskull [Sun, 10 Oct 2021 07:03:43 +0000 (16:03 +0900)]
[Refactor] 店舗の種類を enum class StoreSaleType 型に変更しリファクタリング。
Hourier [Mon, 11 Oct 2021 09:46:42 +0000 (18:46 +0900)]
Merge pull request #1764 from Hourier/Move-Arena-Type
arena-type構造体をbuilding-type-definition.h から arena-info-table.h に移した
Hourier [Fri, 8 Oct 2021 22:05:37 +0000 (07:05 +0900)]
[Refactor] Moved the struct arena-type from building-type-definition.h to arena-info-table.cpp/h and changed the type of arena_info from array to std::vector
Hourier [Sun, 10 Oct 2021 11:48:58 +0000 (20:48 +0900)]
Merge pull request #1762 from Hourier/Reshape-Patron-List
Patronクラスのコンストラクタからp_ptrを外した
Hourier [Sun, 10 Oct 2021 11:30:50 +0000 (20:30 +0900)]
[Refactor] Patronクラスのコンストラクタからp_ptrを外した
Habu [Sun, 10 Oct 2021 11:27:08 +0000 (20:27 +0900)]
Merge pull request #1759 from habu1010/feature/refactor-rng
乱数生成に STL を使用する
Habu [Sun, 10 Oct 2021 02:04:15 +0000 (11:04 +0900)]
[Refactor] STL の正規分布アルゴリズムを使用する
従来のテーブルによる擬似正規分布生成から、STL の std::normal_distribution
を使用した生成に変更する。
Habu [Sun, 10 Oct 2021 00:58:04 +0000 (09:58 +0900)]
[Refactor] next_bool() を削除
one_in_(2) で十分なので不要。わざわざ別途用意する意義を感じない。
そもそも next_bool() が半々の確率で true / false が返される関数だとは
受け取りにくい。
Habu [Sat, 9 Oct 2021 23:38:41 +0000 (08:38 +0900)]
[Refactor] 一様分布乱数の生成を STL で行う
STL の <random> ヘッダで提供されるアルゴリズムを使用できるようにするため、
<random> ヘッダを使用するための Uniform Random Bit Generator の要件を満た
した Xoshiro128StarStar(xoshiro128** 乱数生成アルゴリズム) クラスを実装
する。
これまで一様分布乱数を取得するのに Rand_div() を使用していたが、代わりに
上記のクラスと std::uniform_int_distribution を使用するように変更する。
Deskull [Fri, 8 Oct 2021 14:07:11 +0000 (23:07 +0900)]
Merge pull request #1757 from sikabane-works/feature/delete-rd_unique_info
[Fix] 機能的に無意味と判断されたexe_reading_savefile()中のrd_unique_info()の呼び出しと関数そのものを削除
Hourier [Fri, 8 Oct 2021 13:54:05 +0000 (22:54 +0900)]
Merge pull request #1745 from Hourier/Make-SaveDataFlags-Enum-Class
セーブデータフラグ群をenum class として定義した
Deskull [Fri, 8 Oct 2021 13:29:27 +0000 (22:29 +0900)]
[Fix] 機能的に無意味と判断されたexe_reading_savefile()中のrd_unique_info()の呼び出しと関数そのものを削除
Hourier [Mon, 4 Oct 2021 11:45:40 +0000 (20:45 +0900)]
[Refactor] #1744 重複しているenum列挙子を削除した
Hourier [Mon, 4 Oct 2021 11:41:36 +0000 (20:41 +0900)]
[Refactor] #1744 savedata_item_flag_type とsavedata_monster_flag_type をenum classとして定義した
Hourier [Fri, 8 Oct 2021 11:27:53 +0000 (20:27 +0900)]
Merge pull request #1751 from Hourier/Change-Player-Race-Type-to-Pasacl-Case
player_race_type を PlayerRaceType に置換した
Habu [Fri, 8 Oct 2021 09:56:26 +0000 (18:56 +0900)]
Merge pull request #1742 from habu1010/feature/show-smith-activation-flag-in-character-info
[Fix] 発動を付与した鍛冶アイテムのフラグをキャラクタ情報に表示する
Hourier [Tue, 5 Oct 2021 13:01:08 +0000 (22:01 +0900)]
[Refactor] Changed player_race_type to Pascal case: PlayerRaceType
Hourier [Tue, 5 Oct 2021 11:34:32 +0000 (20:34 +0900)]
Merge pull request #1749 from Hourier/Improve-Boolean-Judgement
'? true : false' 形式の判定を適切に差し替えた
Hourier [Mon, 4 Oct 2021 13:50:46 +0000 (22:50 +0900)]
[Refactor] #1523 '? true : false' 形式の判定を適切に差し替えた
Hourier [Mon, 4 Oct 2021 10:41:48 +0000 (19:41 +0900)]
Merge pull request #1741 from Hourier/Improve-Random-Quest-Reward-Design
make_object() の引数rq_level をデフォルト引数にし、型もintからstd::optional<int>に変更した
Hourier [Mon, 4 Oct 2021 10:26:17 +0000 (19:26 +0900)]
[Refactor] #1737 Habu氏の指摘に対応した+微修正
Habu [Mon, 4 Oct 2021 10:04:07 +0000 (19:04 +0900)]
[Fix] 発動を付与した鍛冶アイテムのフラグをキャラクタ情報に表示する
Resolve #1740.
元々 object_flags_known では発動フラグの付加がわざわざ除かれていたので
それに倣っていたが、キャラクタ情報の発動フラグに表示されなくなるので
object_flags と同様に発動を付与した鍛冶アイテムには TR_ACTIVATE フラグを
付加するようにする。
Hourier [Mon, 4 Oct 2021 08:39:49 +0000 (17:39 +0900)]
[Refactor] #1737 make_object() の引数rq_level をデフォルト引数にし、型もintからstd::optional<int>に変更した
Deskull [Sun, 3 Oct 2021 14:26:39 +0000 (23:26 +0900)]
Merge pull request #1738 from sikabane-works/release/3.0.0Alpha40
[Release] 3.0.0Alpha40
Deskull [Sun, 3 Oct 2021 14:11:24 +0000 (23:11 +0900)]
[Release] 3.0.0Alpha40
Hourier [Sun, 3 Oct 2021 14:08:00 +0000 (23:08 +0900)]
Merge pull request #1736 from Hourier/Improve-Random-Quest-Reward-Quality
ランダムクエスト報酬を改善した
Hourier [Sun, 3 Oct 2021 07:08:46 +0000 (16:08 +0900)]
[Refactor] #1413 Added check_quality() into make_reward()
Hourier [Sun, 3 Oct 2021 06:03:36 +0000 (15:03 +0900)]
[Feature] #1413 Separated set_ammo_quantity() from make_object()
Hourier [Sun, 3 Oct 2021 05:57:22 +0000 (14:57 +0900)]
[Feature] #1413 Added get_base_floor() into make_object()
Hourier [Sun, 3 Oct 2021 13:50:37 +0000 (22:50 +0900)]
Merge pull request #1725 from Hourier/Divide-QuestCompletionChecker
QuestCompletionCheckerクラスの分割
Hourier [Sun, 3 Oct 2021 05:27:18 +0000 (14:27 +0900)]
[Refactor] #1717 Divided switch_completion()
Hourier [Sat, 2 Oct 2021 14:39:57 +0000 (23:39 +0900)]
[Refactor] #1717 Reshaped switch_completion()
Hourier [Sat, 2 Oct 2021 13:48:33 +0000 (22:48 +0900)]
[Refactor] #1717 Separated make_reward() from complete()
Hourier [Sat, 2 Oct 2021 13:37:02 +0000 (22:37 +0900)]
[Refactor] #1717 Separated make_stairs() from complete()
Hourier [Sat, 2 Oct 2021 12:42:10 +0000 (21:42 +0900)]
[Refactor] #1717 Separated switch_quest_process() from complete()
Hourier [Sat, 2 Oct 2021 12:34:35 +0000 (21:34 +0900)]
[Refactor] #1717 Defined q_ptr as private variable
Hourier [Sat, 2 Oct 2021 12:27:39 +0000 (21:27 +0900)]
[Refactor] #1717 Separated set_quest_idx() from complete()
Hourier [Sun, 3 Oct 2021 13:37:33 +0000 (22:37 +0900)]
Merge pull request #1735 from Hourier/Fix-Tower-Untaken
塔のクエストがクリア状態にならない不具合を解消した
Hourier [Sun, 3 Oct 2021 13:24:32 +0000 (22:24 +0900)]
[Fix] 塔のクエストがクリア状態にならない不具合を解消した
Hourier [Sun, 3 Oct 2021 10:36:54 +0000 (19:36 +0900)]
Merge pull request #1734 from Hourier/Fix-Ninja-Kawarimi
忍者の変わり身が意図せず発動する事象を修正した
Habu [Sun, 3 Oct 2021 10:32:33 +0000 (19:32 +0900)]
Merge pull request #1732 from habu1010/feature/fix-spell-hex-bug
呪術のおかしな挙動の修正
Deskull [Sun, 3 Oct 2021 10:26:26 +0000 (19:26 +0900)]
Merge pull request #1733 from sikabane-works/feature/change-icon2021
[Modify] Windows版アイコンを斑多氏案に変更。
Hourier [Sun, 3 Oct 2021 10:22:29 +0000 (19:22 +0900)]
[Fix] #1727 忍者の変わり身が意図せず発動する事象を修正した / Resolved the issue that the ninja's kawarimi was unintentionally triggered
Habu [Sun, 3 Oct 2021 10:15:57 +0000 (19:15 +0900)]
Merge pull request #1726 from habu1010/feature/ninja-class-specific-data
[Refactor] 忍者のデータを職業固有データに移動する
Deskull [Sun, 3 Oct 2021 10:11:26 +0000 (19:11 +0900)]
[Modify] Windows版アイコンを斑多氏案に変更。
Habu [Sun, 3 Oct 2021 09:49:27 +0000 (18:49 +0900)]
[Fix] 呪術の中断時に不要なメッセージが出る
詠唱中の呪術がなくなった時、「呪文の詠唱を中断しました。」の後に「呪文を
詠唱していません。」と不要なメッセージが出る。
これは本来呪文を詠唱していないときに詠唱をやめるレイシャルを使用した時の
メッセージだが、リファクタリングでコールチェーンが変わった結果表示される
ようになってしまっている。
呪文の詠唱を中断しました。の後には呪文を詠唱していません。は表示されない
ようにする。
Habu [Sun, 3 Oct 2021 09:45:51 +0000 (18:45 +0900)]
[Fix] 呪術の全復活で詠唱中断後に詠唱中の表示が残る
Fix #1708.
他に詠唱している呪文があるかどうかの判定が反転している。
正しい判定に修正して他に詠唱中の呪文がなければ ACTION_NONE をセットする
ようにする。
Habu [Sun, 3 Oct 2021 09:42:38 +0000 (18:42 +0900)]
Merge pull request #1730 from habu1010/feature/smith-act-stone-mud-essence-consumption
[Feature] 鍛冶で岩石溶解の発動付加のエッセンス消費量を増やす
Habu [Sun, 3 Oct 2021 09:40:07 +0000 (18:40 +0900)]
Merge pull request #1728 from habu1010/feature/fix-cheat-option-cursor-dont-move
[Fix] 詐欺オプションでカーソルが動かない
Habu [Sun, 3 Oct 2021 09:07:18 +0000 (18:07 +0900)]
[Fix] 詐欺オプションでカーソルが動かない
Fix #1702.
カーソルの位置を持つ変数の宣言位置がまずく毎回0になってしまっている。
ループの前に宣言するように修正する。
ついでに変化する事がない定数もループの外に出しておく。
Habu [Sun, 3 Oct 2021 08:56:12 +0000 (17:56 +0900)]
[Feature] 鍛冶で岩石溶解の発動付加のエッセンス消費量を増やす
適当に25にしていたが、消費量が少なすぎるという意見があった。
採掘+1あたり10を消費する事を考えると採掘+2.5相当で3ターン毎に岩石溶解が
発動できるのは確かにバランスが悪いと思われるので、エッセンス消費量を100
とする。
Habu [Sun, 3 Oct 2021 07:49:25 +0000 (16:49 +0900)]
[Refactor] 忍者のデータを職業固有データに移動する
忍者特有の超隠密・変わり身の発動中かどうかのフラグを忍者の職業固有データ
ninja_data_type を定義して移動させる。
早駆けについは player_type::action だけで制御できるようなのでそのままに
しておく。
また、超隠密状態を解除する処理 set_superstealth(player_ptr, false) を呼ぶ
時に事前に超隠密状態かどうかをチェックしているが、set_superstealthの内部
でも超隠密状態かどうかチェックされており、超隠密状態でなければ何も起きない
ので、呼ぶ前のチェックをすべて削除する。
Hourier [Sun, 3 Oct 2021 07:07:48 +0000 (16:07 +0900)]
Merge pull request #1712 from Hourier/Make-Quest-Completion-Checker-Class
quest-completion-checker.cpp/h をクラス化した
Hourier [Sat, 2 Oct 2021 23:29:59 +0000 (08:29 +0900)]
Merge pull request #1720 from backwardsEric/distcheck-monk-data-type
Include player-info/monk-data-type.h in the result of "make dist"
Eric Branlund [Sat, 2 Oct 2021 19:05:41 +0000 (12:05 -0700)]
Include player-info/monk-data-type.h in the result of "make dist". Resolves https://github.com/hengband/hengband/issues/1719 .
Hourier [Sat, 2 Oct 2021 15:20:39 +0000 (00:20 +0900)]
[Refactor] #1710 Changed macro definition values to constexpr values
Hourier [Sat, 2 Oct 2021 10:56:28 +0000 (19:56 +0900)]
[Refactor] #1710 Reshaped quest.h
Hourier [Sat, 2 Oct 2021 10:32:56 +0000 (19:32 +0900)]
[Refactor] #1710 Definitions QUEST_STATUS_* to enum class QuestKindType
Hourier [Sat, 2 Oct 2021 10:21:05 +0000 (19:21 +0900)]
[Refactor] #1710 Definitions QUEST_STATUS_* to enum class QuestStatusType
Hourier [Sat, 2 Oct 2021 10:09:50 +0000 (19:09 +0900)]
[Refactor] #1710 コンパイル警告を除去した (本件と無関係のものも含む。全て変数のナローイング警告)
Hourier [Sat, 2 Oct 2021 09:59:35 +0000 (18:59 +0900)]
[Refactor] #1710 Reshaped write-diary.cpp automatically
Hourier [Sat, 2 Oct 2021 09:58:41 +0000 (18:58 +0900)]
[Refactor] #1710 Included macro function is_fixed_quest_idx() to quest_type::is_fixed()
Hourier [Sat, 2 Oct 2021 09:44:25 +0000 (18:44 +0900)]
[Refactor] #1710 Reshaped QuestCompletionChecker
Hourier [Sat, 2 Oct 2021 09:15:59 +0000 (18:15 +0900)]
[Refacotor] #1710 Made QuestCompletionChecker class
Hourier [Sat, 2 Oct 2021 15:10:32 +0000 (00:10 +0900)]
Merge pull request #1709 from Hourier/Replace-RandomArtActType-Enum-Class
random-art-activation-type をenum classに置換した
Hourier [Sat, 2 Oct 2021 14:51:13 +0000 (23:51 +0900)]
[Fix] #1700 不要なメッセージを削除し、MAXの取り扱いを修正した
Hourier [Sat, 2 Oct 2021 13:20:18 +0000 (22:20 +0900)]
[Refactor] #1700 Habu氏の指摘に従って一部修正した
Hourier [Sat, 2 Oct 2021 11:19:34 +0000 (20:19 +0900)]
[Refactor] info-reader-util.h に定義されていたusing sviewはここでしか使っておらず省略の意義も薄いのでstd::string_viewに修正した
Hourier [Sat, 2 Oct 2021 07:42:00 +0000 (16:42 +0900)]
[Refactor] #1700 RandomArtActTypeのACT_* を*に変更した
Hourier [Sat, 2 Oct 2021 04:53:24 +0000 (13:53 +0900)]
[Refactor] #1700 Made RandomArtActType enum class
Habu [Sat, 2 Oct 2021 14:41:46 +0000 (23:41 +0900)]
Merge pull request #1718 from habu1010/feature/monk-class-specific-data
[Refactor] 修行僧の構えを職業固有データに移動する
Habu [Sat, 2 Oct 2021 14:25:14 +0000 (23:25 +0900)]
[Refactor] 侍の型に関するソースコード上の名称を統一
コード上の一貫性を考慮し、修行僧の構えに関する名称を、"kata" から
"samurai stance" に統一する。
Habu [Sat, 2 Oct 2021 14:10:25 +0000 (23:10 +0900)]
[Refactor] 修行僧の構えに関するソースコード上の名称を統一
コード上の一貫性を考慮し、修行僧の構えに関する名称を、"kamae" から
"monk stance" に統一する。
Habu [Sat, 2 Oct 2021 13:46:06 +0000 (22:46 +0900)]
[Refactor] 修行僧の構えを職業固有データに移動する
修行僧の職業固有データ monk_data_type を定義し、修行僧の構えの状態を
player_ptr::special_defence から samurai_data_type::kamae に移動する。
剣術家の型と同様に、get_kamae/set_kamae/kamae_is のヘルパ関数を使用する。
さらにこれも剣術家の型と同様に、構えで得られる特性フラグを PlayerClass::
form_tr_flags()で取得できるようにし、has_*() のような特性フラグにおける
構えのチェックをこの関数から得られる特性フラグのチェックに集約する。
Hourier [Sat, 2 Oct 2021 13:16:28 +0000 (22:16 +0900)]
Merge pull request #1715 from Hourier/Delete-Alloc-Entry-Definition
alloc-entry-definition.h を alloc-entries.h に吸収合併した
Hourier [Sat, 2 Oct 2021 11:44:32 +0000 (20:44 +0900)]
[Refactor] #1714 Unified alloc-entry-definition.h into alloc-entries.h
Habu [Sat, 2 Oct 2021 07:33:50 +0000 (16:33 +0900)]
Merge pull request #1707 from habu1010/feature/samurai-class-specific-data
[Refactor] 剣術家の型を職業固有データに移動する
Hourier [Sat, 2 Oct 2021 07:22:50 +0000 (16:22 +0900)]
Merge pull request #1698 from Hourier/Change-Activation-Info-Vector
activation_info を配列からvectorに差し替えた
Hourier [Sat, 2 Oct 2021 07:01:08 +0000 (16:01 +0900)]
[Fix] GCC環境でのコンパイルエラーを解消した
Hourier [Sat, 2 Oct 2021 05:25:56 +0000 (14:25 +0900)]
[Refactor] Habu氏の指摘に対応した
Hourier [Sat, 2 Oct 2021 00:00:35 +0000 (09:00 +0900)]
[Refactor] activation_infoが見つからなかった時にnullptrではなくnulloptを返すようにした
Hourier [Fri, 1 Oct 2021 23:34:36 +0000 (08:34 +0900)]
[Refactor] activation_info を配列からvectorに差し替えた
Habu [Sat, 2 Oct 2021 06:58:47 +0000 (15:58 +0900)]
[Refactor] 現在の剣術家の型を判定する関数
PlayerClass::get_kata() == SamuraiKata::XXX というパターンが多いので、
PlayerClass::kata_is() を実装し PlayerClass::kata_is(SamuraiKata::XXX)
という形で現在の型を判定できるようにする。
Habu [Sat, 2 Oct 2021 06:24:40 +0000 (15:24 +0900)]
[Refactor] 剣術家の型を職業固有データに移動する
剣術家の職業固有データ samurai_data_type を定義し、剣術家の型の状態を
player_ptr::special_defence から samurai_data_type::kata に移動する。
使用している箇所が多く毎回 get_specific_data を呼ぶのは煩わしいので、
以下のヘルパ関数を PlayerClass に用意する。
- get_kata: 現在構えている型を取得する
- set_kata: 指定した型で構える
- break_kata: 指定した型の構えをしている場合型を崩す
また、構えている型から得られる特性フラグを PlayerClass::form_tr_flags()
で取得できるようにし、has_*() のような特性フラグにおける型のチェックを
この関数から得られる特性フラグのチェックに集約する。
Habu [Sat, 2 Oct 2021 06:07:38 +0000 (15:07 +0900)]
Merge pull request #1705 from habu1010/feature/wiz-cmd-create-artifact-from-list
[Feature] デバッグコマンドの固定アーティファクト生成をリストで選択する
Deskull [Sat, 2 Oct 2021 05:01:38 +0000 (14:01 +0900)]
Merge pull request #1706 from sikabane-works/feature/delay-setting
[Feature] #83 ウェイト値をmsecで0から1000へ選択可能に。
Deskull [Sat, 2 Oct 2021 03:04:24 +0000 (12:04 +0900)]
[Feature] #83 ウェイト値をmsecで0から1000へ選択可能に。セーブデータ含めて型をbyteからint32_tへ。
Habu [Fri, 1 Oct 2021 18:43:13 +0000 (03:43 +0900)]
[Feature] デバッグコマンドの固定アーティファクト生成をリストで選択する
いちいち a_info.txt を見て固定アーティファクトのIDを調べるのがいいかげん
面倒くさくなった。
装備のカテゴリのリスト→アーティファクトのリストで選択できるようにする。
Hourier [Sat, 2 Oct 2021 02:05:29 +0000 (11:05 +0900)]
Merge pull request #1699 from Hourier/Fix-Kawarimi
忍者以外でも変わり身で攻撃を回避する場合がある不具合を解消した
Habu [Sat, 2 Oct 2021 01:54:55 +0000 (10:54 +0900)]
Merge pull request #1703 from habu1010/feature/refactor-wiz-spoiler-item-group-table
[Refactor] スポイラー出力に使用するアイテムのカテゴリ分けテーブル
Habu [Sat, 2 Oct 2021 01:40:47 +0000 (10:40 +0900)]
Merge pull request #1697 from habu1010/feature/refactor-int-char-converter
[Refactor] ASCII文字↔整数の変換マクロ群を関数化する
Habu [Sat, 2 Oct 2021 01:36:47 +0000 (10:36 +0900)]
[Refactor] スポイラー出力に使用するアイテムのカテゴリ分けテーブル
アイテムおよびアーティファクトのスポイラーファイル出力に使用するカテゴリ
分け用のテーブルが直感的でないので、テーブルの定義と関連するコードをカテ
ゴリ分けとして直感的になるようにリファクタリングする。
Hourier [Sat, 2 Oct 2021 00:04:19 +0000 (09:04 +0900)]
[Fix] 忍者以外でも変わり身で攻撃を回避する場合がある不具合を解消した / Resolved the issue that the attack was avoided by kawarimi when the class of the player was other than Ninja
Habu [Fri, 1 Oct 2021 16:02:07 +0000 (01:02 +0900)]
[Refactor] ASCII文字↔整数の変換マクロ群を関数化する
int-char-converter.h に定義されている、ASCII文字と整数の変換を行うマクロを
関数にする。
まずマクロは特別に理由がなければ使用を避けるべきであるという点と、I2A等は
マクロであるため値が int であり、例えば std::stringstream に << 演算子で
I2A(0) などをそのまま入れると "a" ではなく "97" になってしまうといった
問題が避けられる。
Hourier [Fri, 1 Oct 2021 14:48:45 +0000 (23:48 +0900)]
Merge pull request #1691 from Hourier/Remove-Unnecessary-Blind-Table
effect-player.cpp の整形
Hourier [Fri, 1 Oct 2021 14:35:20 +0000 (23:35 +0900)]
[Refactor] Habu氏の指摘に対応した