OSDN Git Service

hengbandforosx/hengbandosx.git
2 weeks agoMerge pull request #4375 from habu1010/feature/refactor-check-realm-availability
Habu [Tue, 2 Jul 2024 13:23:19 +0000 (22:23 +0900)]
Merge pull request #4375 from habu1010/feature/refactor-check-realm-availability

[Refactor] 領域が有効か調べる判定

2 weeks agoMerge pull request #4336 from dis-/feature/load_ClassMagicDefinitions_by_magic_name
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から名称に変更する

2 weeks ago[Refactor] クラス魔法定義ファイルにspell_tagを使用する
dis [Tue, 2 Jul 2024 09:56:02 +0000 (18:56 +0900)]
[Refactor] クラス魔法定義ファイルにspell_tagを使用する

呪文タグを用いることで定義ファイルの可読性を向上させる。

2 weeks ago[Refactor] 領域が有効か調べる判定
Habu [Tue, 2 Jul 2024 12:08:27 +0000 (21:08 +0900)]
[Refactor] 領域が有効か調べる判定

現在 REALM_NONE との比較によって領域が有効(魔法なしではなくなんらかの
魔法領域を使用可能)であるかをチェックしている箇所を、PlayerRealm::Realm
クラスのメンバ関数 is_available() によってチェックするように変更する。

2 weeks agoMerge pull request #4373 from habu1010/feature/fix-spell-spoiler-output
Habu [Tue, 2 Jul 2024 11:46:20 +0000 (20:46 +0900)]
Merge pull request #4373 from habu1010/feature/fix-spell-spoiler-output

[Fix] スポイラーの魔法領域出力の内容がおかしい

2 weeks agoMerge pull request #4374 from dis-/feature/expand_SpellDefinitions
dis- [Tue, 2 Jul 2024 11:42:10 +0000 (20:42 +0900)]
Merge pull request #4374 from dis-/feature/expand_SpellDefinitions

呪文定義ファイルを歌/武芸/呪術を含む形に拡張する

2 weeks ago[Feature] 歌・武芸・呪術の情報のスポイラー出力に対応
Habu [Sun, 30 Jun 2024 15:54:15 +0000 (00:54 +0900)]
[Feature] 歌・武芸・呪術の情報のスポイラー出力に対応

2 weeks ago[Feature] 使用可能な領域のみスポイラーに出力する
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Feature] 使用可能な領域のみスポイラーに出力する

最初から魔法を使用できない職業を除き、使用不可能な領域も含めてすべての
領域の情報を出力してしまっているので、職業ごとに使用可能な領域の情報
のみを出力するようにする。

2 weeks ago[Fix] スポイラーの魔法領域出力の内容がおかしい
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Fix] スポイラーの魔法領域出力の内容がおかしい

off-by-oneエラーによりスポイラーの魔法領域出力の内容がおかしくなっている
ので、正しい内容が出力されるように修正する。

2 weeks ago[Refactor] 歌/武芸/呪術の呪文情報を外部ファイルから取得する
dis [Mon, 1 Jul 2024 07:46:20 +0000 (16:46 +0900)]
[Refactor] 歌/武芸/呪術の呪文情報を外部ファイルから取得する

該当の領域の呪文名と呪文説明文を外部ファイルから取得する。

2 weeks ago[Feature] SpellDefinitions.jsoncに歌/武芸/呪術を含める
dis [Mon, 1 Jul 2024 07:13:27 +0000 (16:13 +0900)]
[Feature] SpellDefinitions.jsoncに歌/武芸/呪術を含める

呪文定義ファイルを拡張して魔術領域以外の職業専門領域も扱うよう変更する。
合わせて読込部分を修正。

2 weeks ago[Feature] PlayerRealm: 職業を指定して魔法情報を取得
Habu [Sun, 30 Jun 2024 15:28:28 +0000 (00:28 +0900)]
[Feature] PlayerRealm: 職業を指定して魔法情報を取得

PlayerRealmクラスの静的メンバ関数 get_spell_info に、指定した職業の
テーブルから魔法情報を取得できるようにする引数を追加する。
引数を省略した場合はこれまで通り現在のプレイヤーの職業のテーブル
(グローバル変数mp_ptrが指している)から魔法情報を取得する。

2 weeks agoMerge pull request #4369 from habu1010/feature/refactor-get-realm-name
Habu [Sun, 30 Jun 2024 14:45:55 +0000 (23:45 +0900)]
Merge pull request #4369 from habu1010/feature/refactor-get-realm-name

[Refactor] 領域の名称の取得方法

2 weeks agoMerge pull request #4371 from hengband/release/3.0.1.16-Beta
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

2 weeks ago[Refactor] 領域の名称の取得方法
Habu [Sun, 30 Jun 2024 10:25:35 +0000 (19:25 +0900)]
[Refactor] 領域の名称の取得方法

領域の名称を realm_names 配列から直接取得するのをやめ、
PlayerRealmクラスのメンバ関数を使用して取得するように変更する。

2 weeks ago[Refactor] LocalizeStringをstructからclassに変更
Habu [Sun, 30 Jun 2024 12:07:32 +0000 (21:07 +0900)]
[Refactor] LocalizeStringをstructからclassに変更

2 weeks ago[Release] 3.0.1.16-Beta
Deskull [Sun, 30 Jun 2024 11:32:12 +0000 (20:32 +0900)]
[Release] 3.0.1.16-Beta

2 weeks agoMerge pull request #4368 from habu1010/feature/refactor-good-attribute-magic-check
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] 善良な魔法領域かどうかの判定

2 weeks ago[Refactor] 善良な魔法領域かどうかの判定
Habu [Sun, 30 Jun 2024 09:58:24 +0000 (18:58 +0900)]
[Refactor] 善良な魔法領域かどうかの判定

善良な魔法領域かどうかの判定を行うマクロ is_good_realm を廃止し、
PlayerRealmクラスのメンバ関数 is_good_attribute を代わりに使用する。

2 weeks agoMerge pull request #4364 from habu1010/feature/refactor-realm_choices
Habu [Sun, 30 Jun 2024 09:47:49 +0000 (18:47 +0900)]
Merge pull request #4364 from habu1010/feature/refactor-realm_choices

[Refactor] 魔法領域の選択候補の取得方法

2 weeks ago[Refactor] 魔法領域の選択候補の取得方法
Habu [Sun, 30 Jun 2024 07:19:51 +0000 (16:19 +0900)]
[Refactor] 魔法領域の選択候補の取得方法

魔法領域の選択候補の取得をグローバル配列変数 realm*_choices に直接
アクセスして取得する方法から、PlayerRealmクラスの静的メンバ関数
get_realm*_choices() で取得する方法に変更する。
また、選択候補の表現方法をこれまでのビット列からFlagGroupに変更する。

2 weeks ago[Fix] MAX_REALMの値
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に変更
する。

2 weeks agoMerge pull request #4365 from habu1010/feature/refactor-integrate-realm1-and-2
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 クラス

2 weeks agoMerge pull request #4362 from habu1010/feature/eliminate-rakubadam
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 を削除する

2 weeks ago[Feature] PlayerRealm::Realm クラス
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クラスの
オブジェクトを返すようにし、それを経由してアクセスするように変更する。

2 weeks agoMerge pull request #4363 from habu1010/feature/refactor-get_realm_book
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クラスのメンバ関数にする

2 weeks ago[Refactor] PlayerRealm::get_book
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 を返す
ようにする。

2 weeks ago[Refactor] get_realm*_book をPlayerRealmクラスのメンバ関数にする
Habu [Sat, 29 Jun 2024 15:09:03 +0000 (00:09 +0900)]
[Refactor] get_realm*_book をPlayerRealmクラスのメンバ関数にする

2 weeks ago[Refactor] rakubadam_p, rakubadam_m を削除
Habu [Sat, 29 Jun 2024 14:42:49 +0000 (23:42 +0900)]
[Refactor] rakubadam_p, rakubadam_m を削除

参照している箇所がなくなったので、グローバル変数 rakubadam_p、
rakubadam_m を削除する。

2 weeks ago[Feature] FallOffHorseEffectクラス
Habu [Sat, 29 Jun 2024 14:40:49 +0000 (23:40 +0900)]
[Feature] FallOffHorseEffectクラス

落馬に関する処理を行うFallOffHorseEffectクラスを実装し、project関数の
落馬処理をこのクラス経由で行うようにする。

2 weeks agoMerge pull request #4361 from habu1010/feature/player-realm-class
Habu [Sat, 29 Jun 2024 14:34:18 +0000 (23:34 +0900)]
Merge pull request #4361 from habu1010/feature/player-realm-class

PlayerRealmクラスを作り、魔法情報へのアクセスをカプセル化する

2 weeks ago[Refactor] 魔法情報取得関数の戻り値をポインタから参照に変更
Habu [Sat, 29 Jun 2024 12:47:23 +0000 (21:47 +0900)]
[Refactor] 魔法情報取得関数の戻り値をポインタから参照に変更

2 weeks ago[Refactor] mp_ptr->info,technic_infoへのアクセスをカプセル化
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 への
アクセスを行っている部分をカプセル化する。

2 weeks ago[Feature] PlayerRealmクラス
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() を実装する。

2 weeks agoMerge pull request #4360 from habu1010/feature/refactor-eliminate-hack_m_idx
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 を削除する

2 weeks agoMerge pull request #4328 from Slimebreath6078/feature/add_mika
火炎の飛竜 [Sat, 29 Jun 2024 12:31:18 +0000 (21:31 +0900)]
Merge pull request #4328 from Slimebreath6078/feature/add_mika

[Add] ユニーク・モンスター「聖園ミカ」を追加

2 weeks ago[Feature] EnumRangeクラスにメンバ関数containsを追加
Habu [Fri, 28 Jun 2024 12:45:51 +0000 (21:45 +0900)]
[Feature] EnumRangeクラスにメンバ関数containsを追加

EnumRange(およびEnumRangeInclusive)クラスに、引数で与えられた値が
範囲に含まれるかどうかを判定するメンバ関数 contains を追加する。

2 weeks ago[Feature] 領域の種別を判定するEnumRange定数を追加
Habu [Sat, 29 Jun 2024 12:26:04 +0000 (21:26 +0900)]
[Feature] 領域の種別を判定するEnumRange定数を追加

魔法書を使用する領域を表す列挙値のうち、通常の10種の魔法領域の範囲を表す
MAGIC_REALM_RANGEと、それ以外の領域(歌・剣術・呪術)の範囲を表す
TECHNIC_REALM_RANGEの定義を追加する。

2 weeks ago[Add] モンスター「聖園ミカ」追加
Slimebreath6078 [Thu, 20 Jun 2024 21:30:38 +0000 (06:30 +0900)]
[Add] モンスター「聖園ミカ」追加

2 weeks ago[Refactor] グローバル変数 hack_m_idx を削除
Habu [Sat, 29 Jun 2024 08:07:51 +0000 (17:07 +0900)]
[Refactor] グローバル変数 hack_m_idx を削除

参照している箇所が無くなったので、グローバル変数 hack_m_idx を削除する。

2 weeks ago[Refactor] set_monster_timewalk のシグネチャ
Habu [Sat, 29 Jun 2024 08:04:29 +0000 (17:04 +0900)]
[Refactor] set_monster_timewalk のシグネチャ

モンスターの時止停止スキルの処理を行う関数 set_monster_timewalk の
シグネチャを変更し、モンスターの種族IDではなくモンスターIDを引数で
受け取るようにする。
こうすることで、hack_m_idx への参照をなくすことができる。

2 weeks ago[Refactor] MonsterTemporaryFlagType::BORN の廃止
Habu [Sat, 29 Jun 2024 07:53:20 +0000 (16:53 +0900)]
[Refactor] MonsterTemporaryFlagType::BORN の廃止

MonsterTemporaryFlagType::BORN は、モンスター達の行動処理のループの
途中で生成されたモンスターが、そのループ内で即座に行動処理されないように
するための一時的なフラグである。
ループ処理を始める前に先に現時点で存在するモンスターをリストアップして
おき、それらに対してのみ処理を行えばフラグを削除することができるので
そのように修正する。

2 weeks agoMerge pull request #4358 from backwardsEric/english-minor-quest-text-changes
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

2 weeks agoMerge pull request #4354 from habu1010/feature/refactor-eliminate-hack_m_idx_ii
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 を削除する

2 weeks agoMake minor changes to the English text for two quests
Eric Branlund [Fri, 28 Jun 2024 22:05:10 +0000 (16:05 -0600)]
Make minor changes to the English text for two quests

3 weeks agoMerge pull request #4343 from habu1010/feature/fix-pref-parser
Habu [Fri, 28 Jun 2024 12:16:25 +0000 (21:16 +0900)]
Merge pull request #4343 from habu1010/feature/fix-pref-parser

[Fix] prefファイルのパースで空白があると正しく判定されない

3 weeks agoMerge pull request #4339 from habu1010/feature/refactor-mind-power-array
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にする

3 weeks agoMerge pull request #4335 from habu1010/feature/fix-element-spell-list-on-sub-window
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] 元素使いの呪文一覧をサブウィンドウに表示するとクラッシュ

3 weeks agoMerge pull request #4356 from backwardsEric/install-SpellDefinitions
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

3 weeks agoconfigure: 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 .

3 weeks agoMerge pull request #4352 from backwardsEric/english-death-message-space-after-monster
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

3 weeks ago[Refactor] グローバル変数 hack_m_idx_ii を削除する
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 は削除する。

3 weeks agoMerge pull request #4347 from habu1010/feature/refactor-eliminate-global-variable...
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 を削除する

3 weeks agoMerge pull request #4345 from habu1010/feature/refactor-eliminate-chameleon_change_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 を削除する

3 weeks agoMerge pull request #4353 from dis-/feature/add_SpellDefitinions.jsonc
dis- [Thu, 27 Jun 2024 13:41:03 +0000 (22:41 +0900)]
Merge pull request #4353 from dis-/feature/add_SpellDefitinions.jsonc

呪文情報を定義ファイルから取得する

3 weeks agoMerge pull request #4348 from habu1010/feature/refactor-stop-count-by-bool
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型を直接足し算でカウントするのをやめる

3 weeks ago[Refactor] SpellInfoListを使用してrealm-*を整理
dis [Thu, 27 Jun 2024 11:12:51 +0000 (20:12 +0900)]
[Refactor] SpellInfoListを使用してrealm-*を整理

呪文名と呪文説明のハードコードを解消する。

3 weeks ago[Fix] 呪文領域番号を1-originに合わせる
dis [Thu, 27 Jun 2024 10:22:46 +0000 (19:22 +0900)]
[Fix] 呪文領域番号を1-originに合わせる

呪文領域番号を0-originで使用している部分と1-originで使用している部分がある模様。
将来的には全てどちらかに統一するべきだが、今回は1-originで使用する箇所に合わせて変換する。

3 weeks ago[Refactor] 呪文情報を定義ファイルから取得する
dis [Mon, 24 Jun 2024 11:14:41 +0000 (20:14 +0900)]
[Refactor] 呪文情報を定義ファイルから取得する

呪文名、呪文番号、呪文説明文の情報を定義ファイルから取得する。
取得した情報をシングルトンのSpellInfoListに保存する。

3 weeks ago[Fix] prefファイルのパースで空白があると正しく判定されない
Habu [Wed, 26 Jun 2024 10:57:19 +0000 (19:57 +0900)]
[Fix] prefファイルのパースで空白があると正しく判定されない

188eb7e および 2c32946 で条件式から空文字列の判定を省略してしまった
ため、空白がある時に正しく処理されなくなっている。
元通り空文字列の判定を行うようにする。

3 weeks agoEnglish: add space after monster's name for some death/pain messages
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 .

3 weeks ago[Refactor] bool型を直接足し算でカウントするのをやめる
Habu [Wed, 26 Jun 2024 13:45:20 +0000 (22:45 +0900)]
[Refactor] bool型を直接足し算でカウントするのをやめる

関数がtrueを返した回数を、戻り値をそのまま足し算することによりカウント
しているが、true == 1, false == 0 となる事を前提とするのはCの言語仕様
への依存が強いので、三項演算子を用いてtrueなら1、falseなら0を明示的に
足すようにする。

3 weeks ago[Refactor] place_monster_idx, place_monster_m_idx を削除する
Habu [Wed, 26 Jun 2024 12:37:09 +0000 (21:37 +0900)]
[Refactor] place_monster_idx, place_monster_m_idx を削除する

3 weeks ago[Refactor] chameleon_change_m_idx を削除する
Habu [Wed, 26 Jun 2024 11:38:07 +0000 (20:38 +0900)]
[Refactor] chameleon_change_m_idx を削除する

3 weeks agoMerge pull request #4338 from tanguband/feature/demon-spell-change-book1
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冊目に追加する

3 weeks ago地獄の波動のレベルと難易度調整
tanguband [Tue, 25 Jun 2024 07:19:49 +0000 (16:19 +0900)]
地獄の波動のレベルと難易度調整

レンジャー、魔法戦士、混沌の戦士のみ地獄の波動のレベルと難易度を調整した

3 weeks agoMerge pull request #4334 from Slimebreath6078/feature/move_explosive_rune_method_to_M...
火炎の飛竜 [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] 爆発のルーンの作動処理をモジュールとして分割した

3 weeks ago[Refactor] mind_powers、mind_tips をstd::vectorにする
Habu [Sun, 23 Jun 2024 14:47:07 +0000 (23:47 +0900)]
[Refactor] mind_powers、mind_tips をstd::vectorにする

3 weeks ago[feature]悪魔領域魔法 士気高揚を1冊目に追加する
tanguband [Mon, 24 Jun 2024 05:50:21 +0000 (14:50 +0900)]
[feature]悪魔領域魔法 士気高揚を1冊目に追加する

resolve#4337

3 weeks ago[Refactor] メイン画面への元素魔法一覧表示
Habu [Sun, 23 Jun 2024 14:05:18 +0000 (23:05 +0900)]
[Refactor] メイン画面への元素魔法一覧表示

サブウィンドウに表示する内容とほぼ同様であるため、mコマンドを押した
ときのメイン画面への元素魔法一覧の表示を display_element_spell_list() を
用いて行うようにする。

3 weeks ago[Fix] 元素使いの呪文一覧をサブウィンドウに表示するとクラッシュ
Habu [Sun, 23 Jun 2024 14:02:16 +0000 (23:02 +0900)]
[Fix] 元素使いの呪文一覧をサブウィンドウに表示するとクラッシュ

mind_powers 配列には元素使いの呪文の情報は無いにも関わらずアクセス
しようとしているため、配列外アクセスを起こしている。
元素使い専用の呪文一覧表示関数 display_element_spell_list() を作成し、
それを用いてサブウィンドウへの呪文一覧表示を行うようにする。

3 weeks ago[Refactor] 爆発のルーンの作動処理をモジュール分割した
Slimebreath6078 [Sun, 23 Jun 2024 09:46:40 +0000 (18:46 +0900)]
[Refactor] 爆発のルーンの作動処理をモジュール分割した

3 weeks agoMerge pull request #4333 from tanguband/demon-spell-change
dis- [Sun, 23 Jun 2024 12:09:45 +0000 (21:09 +0900)]
Merge pull request #4333 from tanguband/demon-spell-change

[Feature] 悪魔領域の魔法強化案 #4331

3 weeks ago[Feature] 悪魔領域の魔法強化案 #4331
tanguband [Sun, 23 Jun 2024 07:42:17 +0000 (16:42 +0900)]
[Feature] 悪魔領域の魔法強化案 #4331

demon-spell-change

3 weeks agoMerge pull request #4323 from habu1010/feature/improve-enum-range
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クラスの改良

3 weeks agoMerge pull request #4320 from Slimebreath6078/feature/fix_lore_view_bug_of_angel
火炎の飛竜 [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] 思い出の文章で天使種族の表示が反映されていないバグを修正

3 weeks ago[Refactor] ランダムクエストのIDの範囲を定数で定義
Habu [Sat, 22 Jun 2024 04:29:35 +0000 (13:29 +0900)]
[Refactor] ランダムクエストのIDの範囲を定数で定義

ランダムクエストのIDの範囲の生成が複数箇所で個別に行われているので、
quest.h で定数として定義する。

3 weeks ago[Feature] EnumRangeInclusive クラスの実装
Habu [Sat, 22 Jun 2024 04:20:16 +0000 (13:20 +0900)]
[Feature] EnumRangeInclusive クラスの実装

半開区間と閉区間を区別して使用できるようにするため、既存の EnumRange
クラスは半開区間を扱うものとし、閉区間を扱う EnumRangeInclusive クラスを
追加する。
それに合わせて、既存の EnumRange の使用箇所を適切なクラスの使用と範囲の
指定を行うよう修正する。

3 weeks ago[Refactor] EnumRange::iterator の等値比較
Habu [Sat, 22 Jun 2024 04:05:46 +0000 (13:05 +0900)]
[Refactor] EnumRange::iterator の等値比較

デフォルト実装でよいのでそのようにする。

3 weeks ago[Feature] EnumRangeのコンテナクラスとしての互換性強化
Habu [Sat, 22 Jun 2024 04:02:43 +0000 (13:02 +0900)]
[Feature] EnumRangeのコンテナクラスとしての互換性強化

EnumRangeクラスのコンテナクラスとしての互換性を高めるため、メンバ型
として value_type と const_iterator を定義する。
なお、EnumRangeクラスのオブジェクトは常にイミュータブルであるため、
const_iterator は iterator への型エイリアスとする。

3 weeks ago[Refactor] EnumRangeクラスの型制約にコンセプトを使用する
Habu [Sat, 22 Jun 2024 04:00:00 +0000 (13:00 +0900)]
[Refactor] EnumRangeクラスの型制約にコンセプトを使用する

EnumRangeクラスのテンプレートパラメータの型をenumかenum classに制限する
ために static_assert を使用しているが、C++20ではコンセプトを使用する
べきなので、そのように修正する。

3 weeks agoMerge pull request #4319 from habu1010/feature/fix-wiz-liferate
Habu [Fri, 21 Jun 2024 23:32:58 +0000 (08:32 +0900)]
Merge pull request #4319 from habu1010/feature/fix-wiz-liferate

[Fix] デバッグコマンドのライフレート変更のキー割り当て

3 weeks ago[Fix] 思い出の文章で天使種族の表示が反映されていないバグを修正
Slimebreath6078 [Fri, 21 Jun 2024 21:53:49 +0000 (06:53 +0900)]
[Fix] 思い出の文章で天使種族の表示が反映されていないバグを修正

3 weeks ago[Fix] デバッグコマンドのライフレート変更のキー割り当て
Habu [Fri, 21 Jun 2024 16:26:54 +0000 (01:26 +0900)]
[Fix] デバッグコマンドのライフレート変更のキー割り当て

デバッグコマンドのライフレート変更 `^A P l` が実際には l ではなく n に
割り当てられている。
表示どおり l に修正する。

4 weeks agoMerge pull request #4317 from Hourier/Change-Random-FunctionMarco-to-Template-2
Hourier [Fri, 21 Jun 2024 15:31:03 +0000 (00:31 +0900)]
Merge pull request #4317 from Hourier/Change-Random-FunctionMarco-to-Template-2

z-rand.h にある全てのマクロ変数をテンプレートに変えた

4 weeks agoMerge pull request #4318 from backwardsEric/make-dist-all-schema-files
Hourier [Fri, 21 Jun 2024 15:23:05 +0000 (00:23 +0900)]
Merge pull request #4318 from backwardsEric/make-dist-all-schema-files

Include all schema files in the archive generated by 'make dist'

4 weeks agoInclude all schema files in the archive generated by 'make dist'
Eric Branlund [Fri, 21 Jun 2024 15:05:45 +0000 (09:05 -0600)]
Include all schema files in the archive generated by 'make dist'

Resolves https://github.com/hengband/hengband/issues/4316 .

4 weeks ago[Refactor] #4315 RAND_DEG をdefine定数からコンパイル時定数に変えた
Hourier [Fri, 21 Jun 2024 15:01:25 +0000 (00:01 +0900)]
[Refactor] #4315 RAND_DEG をdefine定数からコンパイル時定数に変えた

4 weeks ago[Refactor] #4315 one_in_(X) の関数マクロをテンプレートに変えた
Hourier [Fri, 21 Jun 2024 14:59:34 +0000 (23:59 +0900)]
[Refactor] #4315 one_in_(X) の関数マクロをテンプレートに変えた

4 weeks ago[Refactor] #4315 magik() をevaluate_percent() に変えた
Hourier [Fri, 21 Jun 2024 14:55:00 +0000 (23:55 +0900)]
[Refactor] #4315 magik() をevaluate_percent() に変えた

4 weeks ago[Refactor] #4315 'randint0(100) >= hoge' を'!magik(hoge)' or 'magik(100 - hoge)' に変えた
Hourier [Fri, 21 Jun 2024 14:41:58 +0000 (23:41 +0900)]
[Refactor] #4315 'randint0(100) >= hoge' を'!magik(hoge)' or 'magik(100 - hoge)' に変えた

後者はhogeがリテラルの数値だった場合のみ

4 weeks agoMerge pull request #4314 from habu1010/feature/enum-converter-use-concepts
Habu [Fri, 21 Jun 2024 14:59:46 +0000 (23:59 +0900)]
Merge pull request #4314 from habu1010/feature/enum-converter-use-concepts

[Refactor] enum-converter.hの各関数群にコンセプトを使用する

4 weeks ago[Refactor] enum-converter.hの各関数群にコンセプトを使用する
Habu [Fri, 21 Jun 2024 14:16:10 +0000 (23:16 +0900)]
[Refactor] enum-converter.hの各関数群にコンセプトを使用する

enum-converter.hの各関数群の実装時の言語標準バージョンはC++17だった
ため、テンプレートの型制約やオーバーロード解決に static_assert や
enable_if によるSFINAEを使用していた。
C++20ではこの目的にはコンセプトを使用するべきであるので、そのように
修正する。

4 weeks agoMerge pull request #4309 from Hourier/Change-Random-FunctionMarco-to-Template
Hourier [Fri, 21 Jun 2024 14:27:44 +0000 (23:27 +0900)]
Merge pull request #4309 from Hourier/Change-Random-FunctionMarco-to-Template

乱数関連の関数マクロを普通の関数に変えた その2

4 weeks ago[Refactor] #3974 randint0(100) < X をmagik(X) に変えた
Hourier [Fri, 21 Jun 2024 10:36:40 +0000 (19:36 +0900)]
[Refactor] #3974 randint0(100) < X をmagik(X) に変えた

引数が割り切れるものはone_in_(100/X) に差し替えた

4 weeks ago[Refactor] #3947 エルドリッチホラーのセービングスローをPlayerType::try_resist_eldritch_horror() にまとめた
Hourier [Fri, 21 Jun 2024 10:05:50 +0000 (19:05 +0900)]
[Refactor] #3947 エルドリッチホラーのセービングスローをPlayerType::try_resist_eldritch_horror() にまとめた

4 weeks ago[Refactor] inven_item_increase
Habu [Fri, 21 Jun 2024 14:16:10 +0000 (23:16 +0900)]
[Refactor] inven_item_increase

反対の手を算出するためにenumの足し算をするという小賢しいテクニックが
使用されており、可読性が低下しているので意図をそのまま表したコードに
修正する。

4 weeks agoMerge pull request #4313 from habu1010/feature/disable-pch-all-buildtest-ci
Habu [Fri, 21 Jun 2024 14:15:21 +0000 (23:15 +0900)]
Merge pull request #4313 from habu1010/feature/disable-pch-all-buildtest-ci

[Chore] プリコンパイルヘッダを使用しないようにする

4 weeks ago[Refactor] #3974 全く同じ式で表されているsaving_throw() とmagik() を後者に寄せた (命名は後で変える)
Hourier [Fri, 21 Jun 2024 09:44:01 +0000 (18:44 +0900)]
[Refactor] #3974 全く同じ式で表されているsaving_throw() とmagik() を後者に寄せた (命名は後で変える)

4 weeks ago[Refactor] #3974 rand_spread() をテンプレート化した
Hourier [Fri, 21 Jun 2024 09:39:33 +0000 (18:39 +0900)]
[Refactor] #3974 rand_spread() をテンプレート化した