OSDN Git Service
Habu [Wed, 3 Jul 2024 14:14:36 +0000 (23:14 +0900)]
[Refactor] 本の領域が使用可能領域に合致するかの判定
ItemKindTypeからPlayerRealm::get_realm_of_bookを取得した結果がある
場合は、PlayerRealm::Realm::get_book の結果とItemKindTypeを比較する
のではなく、get_realm_of_bookを取得した結果をPlayerRealm::Realm::equals
でテストするようにする。
このほうがより直感的であり、処理速度もわずかに高速。
Habu [Wed, 3 Jul 2024 13:54:53 +0000 (22:54 +0900)]
[Refactor] 初期所持の魔法書の決定処理
PlayerTypeのデータメンバrealm1とrealm2から直接計算するのではなく、
PlayerRealmクラスのメンバ関数get_bookを使用するように変更する。
Habu [Wed, 3 Jul 2024 13:48:24 +0000 (22:48 +0900)]
[Refactor] 魔法書のItemKindTypeから領域を取得する処理
魔法書のItemKindTypeからどの領域かを取得するマクロtval2realmを廃止し、
PlayerRealmクラスの静的メンバ関数get_realm_of_bookで取得するようにする。
Habu [Wed, 3 Jul 2024 13:40:14 +0000 (22:40 +0900)]
Merge pull request #4383 from habu1010/feature/refactor-get-realm-explanation
[Refactor] 領域の説明の取得処理
Habu [Wed, 3 Jul 2024 13:10:59 +0000 (22:10 +0900)]
[Refactor] 領域の説明の取得処理
領域の説明の取得で、通常の魔法領域と歌・武芸・呪術が同じ配列上に詰めて
配置されているため technic2magic というマクロで無理やり要素番号を計算
して取得している。
これをやめ、まず魔法領域と歌・武芸・呪術で配列を分け、取得はPlayerRealm
クラスにget_explanationとget_subinfoを実装しこのメンバ関数によって行う
ように修正する。
Habu [Wed, 3 Jul 2024 12:46:06 +0000 (21:46 +0900)]
Merge pull request #4382 from habu1010/feature/encapsulate-spell-info-list
[Refactor] SpellInfoListクラスのカプセル化を促進
Habu [Wed, 3 Jul 2024 12:21:26 +0000 (21:21 +0900)]
[Refactor] SpellInfoListクラスのカプセル化を促進
SpellInfoListのデータメンバ spell_info のアクセルレベルをprivateにし、
get_spell_info メソッド経由で情報を取得するようにして実装のカプセル化を
促進する。
Habu [Wed, 3 Jul 2024 11:57:08 +0000 (20:57 +0900)]
Merge pull request #4381 from habu1010/feature/refactor-spell-name-get
[Refactor] 呪文の名称と説明文の取得処理
Habu [Wed, 3 Jul 2024 11:00:56 +0000 (20:00 +0900)]
[Refactor] 呪文の名称と説明文の取得処理
exe_spellの引数にSpellProcessTypeのNAMEとDESCRIPTIONを指定することにより
呪文の名称と説明文の取得を行うのをやめ、代わりにPlayerRealmクラスに
get_spell_nameとget_spell_descriptionを実装し、これを使用して取得する。
Habu [Wed, 3 Jul 2024 11:00:56 +0000 (20:00 +0900)]
[Refactor] PlayerRealmクラスの呪文IDの表記揺れを統一
呪文IDを示す引数名が num だったり spell_idx だったりしていてあまり
よろしくないので、spell_id に統一する。
dis- [Wed, 3 Jul 2024 10:58:53 +0000 (19:58 +0900)]
Merge pull request #4380 from dis-/feature/fix-spell-info
[Fix] 呪文情報のハードコードを解消する作業のミスを修正
Habu [Wed, 3 Jul 2024 10:57:06 +0000 (19:57 +0900)]
Merge pull request #4377 from habu1010/feature/reafctor-birth-realm-select
[Refactor] キャラメイク時の領域選択処理
dis [Wed, 3 Jul 2024 07:41:51 +0000 (16:41 +0900)]
[Fix] 呪文情報のハードコードを解消する作業のミスを修正
#4353 #4373 の作業漏れを解消する。
Habu [Tue, 2 Jul 2024 14:50:46 +0000 (23:50 +0900)]
[Refactor] キャラメイク時の領域選択処理
PlayerTypeクラスのrealm1とrealm2に対する直接アクセスを減らすため、
キャラメイク時の領域選択処理をリファクタリングする。
Habu [Tue, 2 Jul 2024 14:04:22 +0000 (23:04 +0900)]
Merge pull request #4376 from habu1010/feature/refactor-check-if-specified-realm
[Reafctor] 特定の領域かどうかを調べる判定
Habu [Tue, 2 Jul 2024 13:53:47 +0000 (22:53 +0900)]
[Refactor] PlayerRealm::Realmのメンバrealmに_を付ける
引数名とのバッティングを避けるため、データメンバ realm を realm_ に
改名する。
Habu [Tue, 2 Jul 2024 13:33:10 +0000 (22:33 +0900)]
[Reafctor] 特定の領域かどうかを調べる判定
PlayerRealm::Realmクラスにメンバ関数equalsを実装し、現在PlayerTypeの
データメンバrealm1およびrealm2との直接比較によって特定の領域であるかを
調べている箇所を置き換える。
また、呪術ハイメイジ専用処理で第1領域がREALM_HEXであるかどうかを調べて
いる箇所は特別に多いので、PlayerRealmクラスにメンバ関数is_realm_hexを
実装し、この関数によりチェックするようにする。
Habu [Tue, 2 Jul 2024 13:23:19 +0000 (22:23 +0900)]
Merge pull request #4375 from habu1010/feature/refactor-check-realm-availability
[Refactor] 領域が有効か調べる判定
dis- [Tue, 2 Jul 2024 13:18:56 +0000 (22:18 +0900)]
Merge pull request #4336 from dis-/feature/load_ClassMagicDefinitions_by_magic_name
[Refactor] ClassMagicDefinitionsの魔法読込をidから名称に変更する
dis [Tue, 2 Jul 2024 09:56:02 +0000 (18:56 +0900)]
[Refactor] クラス魔法定義ファイルにspell_tagを使用する
呪文タグを用いることで定義ファイルの可読性を向上させる。
Habu [Tue, 2 Jul 2024 12:08:27 +0000 (21:08 +0900)]
[Refactor] 領域が有効か調べる判定
現在 REALM_NONE との比較によって領域が有効(魔法なしではなくなんらかの
魔法領域を使用可能)であるかをチェックしている箇所を、PlayerRealm::Realm
クラスのメンバ関数 is_available() によってチェックするように変更する。
Habu [Tue, 2 Jul 2024 11:46:20 +0000 (20:46 +0900)]
Merge pull request #4373 from habu1010/feature/fix-spell-spoiler-output
[Fix] スポイラーの魔法領域出力の内容がおかしい
dis- [Tue, 2 Jul 2024 11:42:10 +0000 (20:42 +0900)]
Merge pull request #4374 from dis-/feature/expand_SpellDefinitions
呪文定義ファイルを歌/武芸/呪術を含む形に拡張する
Habu [Sun, 30 Jun 2024 15:54:15 +0000 (00:54 +0900)]
[Feature] 歌・武芸・呪術の情報のスポイラー出力に対応
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Feature] 使用可能な領域のみスポイラーに出力する
最初から魔法を使用できない職業を除き、使用不可能な領域も含めてすべての
領域の情報を出力してしまっているので、職業ごとに使用可能な領域の情報
のみを出力するようにする。
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Fix] スポイラーの魔法領域出力の内容がおかしい
off-by-oneエラーによりスポイラーの魔法領域出力の内容がおかしくなっている
ので、正しい内容が出力されるように修正する。
dis [Mon, 1 Jul 2024 07:46:20 +0000 (16:46 +0900)]
[Refactor] 歌/武芸/呪術の呪文情報を外部ファイルから取得する
該当の領域の呪文名と呪文説明文を外部ファイルから取得する。
dis [Mon, 1 Jul 2024 07:13:27 +0000 (16:13 +0900)]
[Feature] SpellDefinitions.jsoncに歌/武芸/呪術を含める
呪文定義ファイルを拡張して魔術領域以外の職業専門領域も扱うよう変更する。
合わせて読込部分を修正。
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Feature] PlayerRealm: 職業を指定して魔法情報を取得
PlayerRealmクラスの静的メンバ関数 get_spell_info に、指定した職業の
テーブルから魔法情報を取得できるようにする引数を追加する。
引数を省略した場合はこれまで通り現在のプレイヤーの職業のテーブル
(グローバル変数mp_ptrが指している)から魔法情報を取得する。
Habu [Sun, 30 Jun 2024 14:45:55 +0000 (23:45 +0900)]
Merge pull request #4369 from habu1010/feature/refactor-get-realm-name
[Refactor] 領域の名称の取得方法
Deskull [Sun, 30 Jun 2024 12:11:52 +0000 (21:11 +0900)]
Merge pull request #4371 from hengband/release/3.0.1.16-Beta
[Release] 3.0.1.16-Beta
Habu [Sun, 30 Jun 2024 10:25:35 +0000 (19:25 +0900)]
[Refactor] 領域の名称の取得方法
領域の名称を realm_names 配列から直接取得するのをやめ、
PlayerRealmクラスのメンバ関数を使用して取得するように変更する。
Habu [Sun, 30 Jun 2024 12:07:32 +0000 (21:07 +0900)]
[Refactor] LocalizeStringをstructからclassに変更
Deskull [Sun, 30 Jun 2024 11:32:12 +0000 (20:32 +0900)]
[Release] 3.0.1.16-Beta
Habu [Sun, 30 Jun 2024 10:21:12 +0000 (19:21 +0900)]
Merge pull request #4368 from habu1010/feature/refactor-good-attribute-magic-check
[Refactor] 善良な魔法領域かどうかの判定
Habu [Sun, 30 Jun 2024 09:58:24 +0000 (18:58 +0900)]
[Refactor] 善良な魔法領域かどうかの判定
善良な魔法領域かどうかの判定を行うマクロ is_good_realm を廃止し、
PlayerRealmクラスのメンバ関数 is_good_attribute を代わりに使用する。
Habu [Sun, 30 Jun 2024 09:47:49 +0000 (18:47 +0900)]
Merge pull request #4364 from habu1010/feature/refactor-realm_choices
[Refactor] 魔法領域の選択候補の取得方法
Habu [Sun, 30 Jun 2024 07:19:51 +0000 (16:19 +0900)]
[Refactor] 魔法領域の選択候補の取得方法
魔法領域の選択候補の取得をグローバル配列変数 realm*_choices に直接
アクセスして取得する方法から、PlayerRealmクラスの静的メンバ関数
get_realm*_choices() で取得する方法に変更する。
また、選択候補の表現方法をこれまでのビット列からFlagGroupに変更する。
Habu [Sun, 30 Jun 2024 08:23:27 +0000 (17:23 +0900)]
[Fix] MAX_REALMの値
他の列挙値で最大値を表すMAXは有効な最大値+1を表しているのに対し、
MAX_REALMは有効な最大値(REALM_HEX)とイコールであり、整合性が取れていない
ので、MAX_REALMを有効な最大値+1にするとともに、名称をREALM_MAXに変更
する。
Habu [Sun, 30 Jun 2024 07:11:34 +0000 (16:11 +0900)]
Merge pull request #4365 from habu1010/feature/refactor-integrate-realm1-and-2
[Feature] PlayerRealm::Realm クラス
Habu [Sun, 30 Jun 2024 07:10:57 +0000 (16:10 +0900)]
Merge pull request #4362 from habu1010/feature/eliminate-rakubadam
落馬ダメージ処理クラスを作成し、グローバル変数 rakubadam_p, rakubadam_m を削除する
Habu [Sat, 29 Jun 2024 18:40:58 +0000 (03:40 +0900)]
[Feature] PlayerRealm::Realm クラス
PlayerRealmクラスにメンバ関数に第1領域と第2領域用それぞれに
get_realm*_spell_info, get_realm*_book があるが、今後メンバ関数を追加
するごとに第1領域用と第2領域用が増えるのは好ましくない。
これを避けるため、PlayerRealmに領域ごとの処理をする内部クラスRealmを
実装し、上述のメンバ関数を内部クラスに移動する。
PlayerRealm::realm* により第1領域か第2領域のPlayerRealm::Realmクラスの
オブジェクトを返すようにし、それを経由してアクセスするように変更する。
Habu [Sat, 29 Jun 2024 16:06:35 +0000 (01:06 +0900)]
Merge pull request #4363 from habu1010/feature/refactor-get_realm_book
get_realm*_book をPlayerRealmクラスのメンバ関数にする
Habu [Sat, 29 Jun 2024 15:30:38 +0000 (00:30 +0900)]
[Refactor] PlayerRealm::get_book
魔法領域に対応する魔法書のItemKindTypeを返す関数 get_book は、魔法領域の
列挙値と魔法書の列挙値の並びが同じになっている事を前提としており
気持ちが悪いので、対応表を定数として定義してそこから算出するように
変更する。
また、元の魔法領域なしの場合に ItemKindType::LIFE_BOOK - 1 を返すという
仕様もおかしいので、魔法領域なしの場合は ItemKindType::NONE を返す
ようにする。
Habu [Sat, 29 Jun 2024 15:09:03 +0000 (00:09 +0900)]
[Refactor] get_realm*_book をPlayerRealmクラスのメンバ関数にする
Habu [Sat, 29 Jun 2024 14:42:49 +0000 (23:42 +0900)]
[Refactor] rakubadam_p, rakubadam_m を削除
参照している箇所がなくなったので、グローバル変数 rakubadam_p、
rakubadam_m を削除する。
Habu [Sat, 29 Jun 2024 14:40:49 +0000 (23:40 +0900)]
[Feature] FallOffHorseEffectクラス
落馬に関する処理を行うFallOffHorseEffectクラスを実装し、project関数の
落馬処理をこのクラス経由で行うようにする。
Habu [Sat, 29 Jun 2024 14:34:18 +0000 (23:34 +0900)]
Merge pull request #4361 from habu1010/feature/player-realm-class
PlayerRealmクラスを作り、魔法情報へのアクセスをカプセル化する
Habu [Sat, 29 Jun 2024 12:47:23 +0000 (21:47 +0900)]
[Refactor] 魔法情報取得関数の戻り値をポインタから参照に変更
Habu [Fri, 28 Jun 2024 12:30:18 +0000 (21:30 +0900)]
[Refactor] mp_ptr->info,technic_infoへのアクセスをカプセル化
PlayerRealmクラスの get_spell_info, get_1st_realm_spell_info,
get_2nd_realm_spell_info を用いて mp_ptr->info と technic_info への
アクセスを行っている部分をカプセル化する。
Habu [Fri, 28 Jun 2024 12:30:18 +0000 (21:30 +0900)]
[Feature] PlayerRealmクラス
PlayerRealmクラスを追加し、指定した領域・魔法IDの情報を得る
静的メンバ関数 get_spell_info() と、プレイヤーの第1領域・第2領域の
指定した魔法IDの情報を得るメンバ関数 get_1st_realm_spell_info()、
get_2nd_realm_spell_info() を実装する。
Habu [Sat, 29 Jun 2024 12:36:59 +0000 (21:36 +0900)]
Merge pull request #4360 from habu1010/feature/refactor-eliminate-hack_m_idx
グローバル変数 hack_m_idx を削除する
火炎の飛竜 [Sat, 29 Jun 2024 12:31:18 +0000 (21:31 +0900)]
Merge pull request #4328 from Slimebreath6078/feature/add_mika
[Add] ユニーク・モンスター「聖園ミカ」を追加
Habu [Fri, 28 Jun 2024 12:45:51 +0000 (21:45 +0900)]
[Feature] EnumRangeクラスにメンバ関数containsを追加
EnumRange(およびEnumRangeInclusive)クラスに、引数で与えられた値が
範囲に含まれるかどうかを判定するメンバ関数 contains を追加する。
Habu [Sat, 29 Jun 2024 12:26:04 +0000 (21:26 +0900)]
[Feature] 領域の種別を判定するEnumRange定数を追加
魔法書を使用する領域を表す列挙値のうち、通常の10種の魔法領域の範囲を表す
MAGIC_REALM_RANGEと、それ以外の領域(歌・剣術・呪術)の範囲を表す
TECHNIC_REALM_RANGEの定義を追加する。
Slimebreath6078 [Thu, 20 Jun 2024 21:30:38 +0000 (06:30 +0900)]
[Add] モンスター「聖園ミカ」追加
Habu [Sat, 29 Jun 2024 08:07:51 +0000 (17:07 +0900)]
[Refactor] グローバル変数 hack_m_idx を削除
参照している箇所が無くなったので、グローバル変数 hack_m_idx を削除する。
Habu [Sat, 29 Jun 2024 08:04:29 +0000 (17:04 +0900)]
[Refactor] set_monster_timewalk のシグネチャ
モンスターの時止停止スキルの処理を行う関数 set_monster_timewalk の
シグネチャを変更し、モンスターの種族IDではなくモンスターIDを引数で
受け取るようにする。
こうすることで、hack_m_idx への参照をなくすことができる。
Habu [Sat, 29 Jun 2024 07:53:20 +0000 (16:53 +0900)]
[Refactor] MonsterTemporaryFlagType::BORN の廃止
MonsterTemporaryFlagType::BORN は、モンスター達の行動処理のループの
途中で生成されたモンスターが、そのループ内で即座に行動処理されないように
するための一時的なフラグである。
ループ処理を始める前に先に現時点で存在するモンスターをリストアップして
おき、それらに対してのみ処理を行えばフラグを削除することができるので
そのように修正する。
dis- [Sat, 29 Jun 2024 09:17:41 +0000 (18:17 +0900)]
Merge pull request #4358 from backwardsEric/english-minor-quest-text-changes
Make minor changes to the English text for two quests
Habu [Sat, 29 Jun 2024 06:37:56 +0000 (15:37 +0900)]
Merge pull request #4354 from habu1010/feature/refactor-eliminate-hack_m_idx_ii
[Refactor] グローバル変数 hack_m_idx_ii を削除する
Eric Branlund [Fri, 28 Jun 2024 22:05:10 +0000 (16:05 -0600)]
Make minor changes to the English text for two quests
Habu [Fri, 28 Jun 2024 12:16:25 +0000 (21:16 +0900)]
Merge pull request #4343 from habu1010/feature/fix-pref-parser
[Fix] prefファイルのパースで空白があると正しく判定されない
Habu [Fri, 28 Jun 2024 12:16:04 +0000 (21:16 +0900)]
Merge pull request #4339 from habu1010/feature/refactor-mind-power-array
[Refactor] mind_powers、mind_tips をstd::vectorにする
Habu [Fri, 28 Jun 2024 12:15:36 +0000 (21:15 +0900)]
Merge pull request #4335 from habu1010/feature/fix-element-spell-list-on-sub-window
[Fix] 元素使いの呪文一覧をサブウィンドウに表示するとクラッシュ
dis- [Fri, 28 Jun 2024 06:09:31 +0000 (15:09 +0900)]
Merge pull request #4356 from backwardsEric/install-SpellDefinitions
configure: install lib/edit/SpellDefinitions.jsonc
Eric Branlund [Thu, 27 Jun 2024 21:23:22 +0000 (15:23 -0600)]
configure: install lib/edit/SpellDefinitions.jsonc
Resolves https://github.com/hengband/hengband/issues/4355 .
Habu [Thu, 27 Jun 2024 14:40:57 +0000 (23:40 +0900)]
Merge pull request #4352 from backwardsEric/english-death-message-space-after-monster
English: add space after monster's name for some death/pain messages
Habu [Thu, 27 Jun 2024 14:38:30 +0000 (23:38 +0900)]
[Refactor] グローバル変数 hack_m_idx_ii を削除する
グローバル変数 hack_m_idx_ii はモンスターの生成を行う関数によって生成
されたモンスターに、関数呼び出し直後にアクセスする用途で使用されている。
しかし、モンスター生成関数は集団生成などが発生すると内部でネストして
呼び出されることがあり、その中でさらに hack_m_idx_ii が上書きされて
しまう可能性があるため、hack_m_idx_ii が本当に想定している対象の
モンスターを指しているのか疑問が残る。
hack_m_idx_ii の使用箇所に関連するモンスター生成関数の戻り値を単純な
生成に成功したかを示すboolの代わりに成功した場合に生成したモンスターの
IDを std::optional<MONSTER_IDX> で返すようにし、それを使用して
モンスターにアクセスするように変更し、hack_m_idx_ii は削除する。
Habu [Thu, 27 Jun 2024 14:36:16 +0000 (23:36 +0900)]
Merge pull request #4347 from habu1010/feature/refactor-eliminate-global-variable-place_monster
[Refactor] place_monster_idx, place_monster_m_idx を削除する
Habu [Thu, 27 Jun 2024 14:21:13 +0000 (23:21 +0900)]
Merge pull request #4345 from habu1010/feature/refactor-eliminate-chameleon_change_m_idx
[Refactor] chameleon_change_m_idx を削除する
dis- [Thu, 27 Jun 2024 13:41:03 +0000 (22:41 +0900)]
Merge pull request #4353 from dis-/feature/add_SpellDefitinions.jsonc
呪文情報を定義ファイルから取得する
Habu [Thu, 27 Jun 2024 13:15:10 +0000 (22:15 +0900)]
Merge pull request #4348 from habu1010/feature/refactor-stop-count-by-bool
[Refactor] bool型を直接足し算でカウントするのをやめる
dis [Thu, 27 Jun 2024 11:12:51 +0000 (20:12 +0900)]
[Refactor] SpellInfoListを使用してrealm-*を整理
呪文名と呪文説明のハードコードを解消する。
dis [Thu, 27 Jun 2024 10:22:46 +0000 (19:22 +0900)]
[Fix] 呪文領域番号を1-originに合わせる
呪文領域番号を0-originで使用している部分と1-originで使用している部分がある模様。
将来的には全てどちらかに統一するべきだが、今回は1-originで使用する箇所に合わせて変換する。
dis [Mon, 24 Jun 2024 11:14:41 +0000 (20:14 +0900)]
[Refactor] 呪文情報を定義ファイルから取得する
呪文名、呪文番号、呪文説明文の情報を定義ファイルから取得する。
取得した情報をシングルトンのSpellInfoListに保存する。
Habu [Wed, 26 Jun 2024 10:57:19 +0000 (19:57 +0900)]
[Fix] prefファイルのパースで空白があると正しく判定されない
188eb7e および
2c32946 で条件式から空文字列の判定を省略してしまった
ため、空白がある時に正しく処理されなくなっている。
元通り空文字列の判定を行うようにする。
Eric Branlund [Thu, 27 Jun 2024 01:34:15 +0000 (19:34 -0600)]
English: add space after monster's name for some death/pain messages
Resolves https://github.com/hengband/hengband/issues/4351 .
Habu [Wed, 26 Jun 2024 13:45:20 +0000 (22:45 +0900)]
[Refactor] bool型を直接足し算でカウントするのをやめる
関数がtrueを返した回数を、戻り値をそのまま足し算することによりカウント
しているが、true == 1, false == 0 となる事を前提とするのはCの言語仕様
への依存が強いので、三項演算子を用いてtrueなら1、falseなら0を明示的に
足すようにする。
Habu [Wed, 26 Jun 2024 12:37:09 +0000 (21:37 +0900)]
[Refactor] place_monster_idx, place_monster_m_idx を削除する
Habu [Wed, 26 Jun 2024 11:38:07 +0000 (20:38 +0900)]
[Refactor] chameleon_change_m_idx を削除する
dis- [Tue, 25 Jun 2024 09:12:08 +0000 (18:12 +0900)]
Merge pull request #4338 from tanguband/feature/demon-spell-change-book1
[Feature] 悪魔領域魔法 士気高揚を1冊目に追加する
tanguband [Tue, 25 Jun 2024 07:19:49 +0000 (16:19 +0900)]
地獄の波動のレベルと難易度調整
レンジャー、魔法戦士、混沌の戦士のみ地獄の波動のレベルと難易度を調整した
火炎の飛竜 [Mon, 24 Jun 2024 13:42:14 +0000 (22:42 +0900)]
Merge pull request #4334 from Slimebreath6078/feature/move_explosive_rune_method_to_MonsterEntity
[Refactor] 爆発のルーンの作動処理をモジュールとして分割した
Habu [Sun, 23 Jun 2024 14:47:07 +0000 (23:47 +0900)]
[Refactor] mind_powers、mind_tips をstd::vectorにする
tanguband [Mon, 24 Jun 2024 05:50:21 +0000 (14:50 +0900)]
[feature]悪魔領域魔法 士気高揚を1冊目に追加する
resolve#4337
Habu [Sun, 23 Jun 2024 14:05:18 +0000 (23:05 +0900)]
[Refactor] メイン画面への元素魔法一覧表示
サブウィンドウに表示する内容とほぼ同様であるため、mコマンドを押した
ときのメイン画面への元素魔法一覧の表示を display_element_spell_list() を
用いて行うようにする。
Habu [Sun, 23 Jun 2024 14:02:16 +0000 (23:02 +0900)]
[Fix] 元素使いの呪文一覧をサブウィンドウに表示するとクラッシュ
mind_powers 配列には元素使いの呪文の情報は無いにも関わらずアクセス
しようとしているため、配列外アクセスを起こしている。
元素使い専用の呪文一覧表示関数 display_element_spell_list() を作成し、
それを用いてサブウィンドウへの呪文一覧表示を行うようにする。
Slimebreath6078 [Sun, 23 Jun 2024 09:46:40 +0000 (18:46 +0900)]
[Refactor] 爆発のルーンの作動処理をモジュール分割した
dis- [Sun, 23 Jun 2024 12:09:45 +0000 (21:09 +0900)]
Merge pull request #4333 from tanguband/demon-spell-change
[Feature] 悪魔領域の魔法強化案 #4331
tanguband [Sun, 23 Jun 2024 07:42:17 +0000 (16:42 +0900)]
[Feature] 悪魔領域の魔法強化案 #4331
demon-spell-change
Habu [Sun, 23 Jun 2024 08:46:13 +0000 (17:46 +0900)]
Merge pull request #4323 from habu1010/feature/improve-enum-range
[Feature/Refactor] EnumRangeクラスの改良
火炎の飛竜 [Sat, 22 Jun 2024 05:27:41 +0000 (14:27 +0900)]
Merge pull request #4320 from Slimebreath6078/feature/fix_lore_view_bug_of_angel
[Fix] 思い出の文章で天使種族の表示が反映されていないバグを修正
Habu [Sat, 22 Jun 2024 04:29:35 +0000 (13:29 +0900)]
[Refactor] ランダムクエストのIDの範囲を定数で定義
ランダムクエストのIDの範囲の生成が複数箇所で個別に行われているので、
quest.h で定数として定義する。
Habu [Sat, 22 Jun 2024 04:20:16 +0000 (13:20 +0900)]
[Feature] EnumRangeInclusive クラスの実装
半開区間と閉区間を区別して使用できるようにするため、既存の EnumRange
クラスは半開区間を扱うものとし、閉区間を扱う EnumRangeInclusive クラスを
追加する。
それに合わせて、既存の EnumRange の使用箇所を適切なクラスの使用と範囲の
指定を行うよう修正する。
Habu [Sat, 22 Jun 2024 04:05:46 +0000 (13:05 +0900)]
[Refactor] EnumRange::iterator の等値比較
デフォルト実装でよいのでそのようにする。
Habu [Sat, 22 Jun 2024 04:02:43 +0000 (13:02 +0900)]
[Feature] EnumRangeのコンテナクラスとしての互換性強化
EnumRangeクラスのコンテナクラスとしての互換性を高めるため、メンバ型
として value_type と const_iterator を定義する。
なお、EnumRangeクラスのオブジェクトは常にイミュータブルであるため、
const_iterator は iterator への型エイリアスとする。
Habu [Sat, 22 Jun 2024 04:00:00 +0000 (13:00 +0900)]
[Refactor] EnumRangeクラスの型制約にコンセプトを使用する
EnumRangeクラスのテンプレートパラメータの型をenumかenum classに制限する
ために static_assert を使用しているが、C++20ではコンセプトを使用する
べきなので、そのように修正する。
Habu [Fri, 21 Jun 2024 23:32:58 +0000 (08:32 +0900)]
Merge pull request #4319 from habu1010/feature/fix-wiz-liferate
[Fix] デバッグコマンドのライフレート変更のキー割り当て
Slimebreath6078 [Fri, 21 Jun 2024 21:53:49 +0000 (06:53 +0900)]
[Fix] 思い出の文章で天使種族の表示が反映されていないバグを修正