OSDN Git Service
Hourier [Thu, 6 Oct 2022 09:24:54 +0000 (18:24 +0900)]
[Refactor] #2679 モンスターの速度をスポイルする処理を加速の正負にかかわらないよう統一した
Hourier [Tue, 4 Oct 2022 09:31:06 +0000 (18:31 +0900)]
[Refactor] #2679 プレイヤーの標準スピードである110を、STANDARD_SPEED に差し替えた
Hourier [Wed, 28 Sep 2022 08:51:28 +0000 (17:51 +0900)]
[Refactor] #2679 プレイヤー/モンスターの標準スピードである110を、gamevalue.h に「STANDARD_SPEED」として定義した
Hourier [Sun, 18 Sep 2022 10:56:17 +0000 (19:56 +0900)]
[Refactor] #2679 decide_mosnter_speed() をオブジェクトメソッド「monster_type::get_temporary_speed()」にした
Deskull [Tue, 27 Sep 2022 14:20:47 +0000 (23:20 +0900)]
Merge pull request #2673 from sikabane-works/release/3.0.0Alpha68
[Release] 3.0.0Alpha68
Deskull [Tue, 27 Sep 2022 14:01:22 +0000 (23:01 +0900)]
[Release] 3.0.0Alpha68
Habu [Tue, 27 Sep 2022 10:39:33 +0000 (19:39 +0900)]
Merge pull request #2671 from habu1010/feature/fix-crash-on-super-ray
[Fix] #2667 自身をターゲットにスーパーレイを打つとクラッシュする
Habu [Tue, 27 Sep 2022 10:39:24 +0000 (19:39 +0900)]
Merge pull request #2670 from habu1010/feature/fix-resist-blindness-condition
[Fix] 暗黒・盲目耐性なしで暗黒属性攻撃を受けても盲目にならない
Habu [Tue, 27 Sep 2022 10:39:12 +0000 (19:39 +0900)]
Merge pull request #2669 from habu1010/feature/fix-nullptr-reference
[Fix] モンスターが魔法を使用する時にクラッシュする
Habu [Tue, 27 Sep 2022 09:25:05 +0000 (18:25 +0900)]
[Fix] #2667 自身をターゲットにスーパーレイを打つとクラッシュする
自身をターゲットにしてスーパーレイを打つと魔法軌道の長さが 0 になるが、この時内部で保持
するサイズ 0 のコンテナに対し back() を取ってしまいクラッシュする。
長さが 0 の時はその後の処理を行わずリターンするようにする。
なお、この時何も起きずMPだけ消費することになるが、エンバグ前も同じ仕様である。
Deskull [Tue, 27 Sep 2022 04:06:35 +0000 (13:06 +0900)]
Merge pull request #2664 from sikabane-works/feture/fix-d_info_comment
Habu [Mon, 26 Sep 2022 14:14:16 +0000 (23:14 +0900)]
[Fix] 暗黒・盲目耐性なしで暗黒属性攻撃を受けても盲目にならない
リファクタリング時の真偽反転によるエンバグ。正しい真偽値に修正する。
Habu [Mon, 26 Sep 2022 13:54:49 +0000 (22:54 +0900)]
[Fix] モンスターが魔法を使用する時にクラッシュする
ms_ptr->t_ptr が適切な要素を指す前にその参照 t_ref を取得してしまっている。
ms_ptr->t_ptr が nullptr の場合、t_ref はヌル参照となりクラッシュする。
ms_ptr->t_ptr にアドレスが正しく代入された後に参照を取るように修正する。
Deskull [Sun, 25 Sep 2022 10:08:26 +0000 (19:08 +0900)]
[Fix] d_info.txtのWブロック表記解説がおかしかったので修正。
Hourier [Mon, 19 Sep 2022 12:47:45 +0000 (21:47 +0900)]
Merge pull request #2660 from Hourier/hotfix/Fix-ArtifactMap-None
アイテムから発動IDを取ろうとする処理で落ちることがある
Hourier [Mon, 19 Sep 2022 08:59:56 +0000 (17:59 +0900)]
[Hotfix] 3.0.0Alpha67
Hourier [Mon, 19 Sep 2022 01:56:34 +0000 (10:56 +0900)]
[Hotfix] a_info.at() がキー不存在例外を吐いてソフトウェアが落ちる事象を修正した
Hourier [Sun, 18 Sep 2022 13:42:13 +0000 (22:42 +0900)]
Merge pull request #2652 from Hourier/Enter-MonsterType-Functions
monster_type にオブジェクトメソッドを定義した
Deskull [Sun, 18 Sep 2022 13:41:29 +0000 (22:41 +0900)]
Merge pull request #2658 from sikabane-works/release/3.0.0Alpha66
Release/3.0.0 alpha66
Deskull [Sun, 18 Sep 2022 13:41:02 +0000 (22:41 +0900)]
Merge pull request #2657 from sikabane-works/release/3.0.0Alpha66
[Release] 3.0.0Alpha66
Deskull [Sun, 18 Sep 2022 13:28:13 +0000 (22:28 +0900)]
[Release] 3.0.0Alpha66
Hourier [Sat, 17 Sep 2022 08:44:34 +0000 (17:44 +0900)]
[Refactor] #2647 monster_invulner_remaining() をmonster_type::is_invulnerable() とmonster_type::get_remaining_invulnerability() に分離した
Hourier [Sat, 17 Sep 2022 08:24:43 +0000 (17:24 +0900)]
[Refactor] #2647 monster_fear_remaining() を monster_type::is_fearful() とmonster_type::get_remaining_fear() に分離した
Hourier [Sat, 17 Sep 2022 08:11:48 +0000 (17:11 +0900)]
[Refactor] #2647 monster_confused_remaining() を monster_type::is_confused() とmonster_type::get_remaining_confusion() に分離した
Hourier [Sat, 17 Sep 2022 07:59:45 +0000 (16:59 +0900)]
[Refactor] #2647 monster_stunned_remaining() を monster_type::is_stunned() とmonster_type::get_remaining_stun() に分離した
Hourier [Sat, 17 Sep 2022 07:43:46 +0000 (16:43 +0900)]
[Refactor] #2647 monster_slow_remaining() を monster_type::is_decelerated() とmonster_type::get_remaining_deceleration() に分離した
Hourier [Sat, 17 Sep 2022 07:33:18 +0000 (16:33 +0900)]
[Refactor] #2647 monster_fast_remaining() を monster_type::is_accelerated() とmonster_type::get_remaining_acceleration() に分離した
Hourier [Sat, 17 Sep 2022 07:19:01 +0000 (16:19 +0900)]
[Refactor] #2647 monster_csleep_remaining() を monster_type::is_asleep() とmonster_type::get_remaining_sleep() に分離した
Hourier [Sat, 17 Sep 2022 05:33:47 +0000 (14:33 +0900)]
[Refactor] #2647 real_r_ptr() をオブジェクトメソッド「monster_type::get_real_r_ref()」にした
Hourier [Sat, 17 Sep 2022 04:40:57 +0000 (13:40 +0900)]
[Refactor] #2647 set_pet_params() のシグネチャを差し替えた
Hourier [Sat, 17 Sep 2022 04:04:13 +0000 (13:04 +0900)]
[Refactor] #2647 get_real_r_idx() を整形した
Hourier [Sat, 17 Sep 2022 04:03:48 +0000 (13:03 +0900)]
[Refactor] #2647 real_r_idx() をオブジェクトメソッド「monster_type::get_real_r_idx()」にした
Hourier [Sat, 17 Sep 2022 03:58:12 +0000 (12:58 +0900)]
[Refactor] #2647 monster_is_valid() をオブジェクトメソッド「monster_type::is_valid()」にした
Hourier [Sat, 17 Sep 2022 03:32:41 +0000 (12:32 +0900)]
[Refactor] #2647 is_mimicry() をより汎用性高く再実装した
Hourier [Sat, 17 Sep 2022 03:32:03 +0000 (12:32 +0900)]
[Refactor] #2647 is_mimicry() をmonster_type のオブジェクトメソッドとして再定義した
Hourier [Sat, 17 Sep 2022 02:56:41 +0000 (11:56 +0900)]
[Refactor] #2647 is_original_ap() をmonster_type のオブジェクトメソッドとして再定義した
Hourier [Sat, 17 Sep 2022 02:39:21 +0000 (11:39 +0900)]
[Refactor] #2647 is_hostile() をmonster_type のオブジェクトメソッドとして再定義した
Hourier [Sat, 17 Sep 2022 02:13:39 +0000 (11:13 +0900)]
[Refactor] #2647 is_pet() をmonster_type のオブジェクトメソッドとして再定義した
Hourier [Sat, 17 Sep 2022 01:34:11 +0000 (10:34 +0900)]
[Refactor] #2647 is_friendly() をmonster_type のオブジェクトメソッドとして再定義した
Hourier [Sat, 17 Sep 2022 01:28:38 +0000 (10:28 +0900)]
[Refactor] #2647 monster-type-definition.cpp を定義した
Hourier [Sat, 17 Sep 2022 08:26:44 +0000 (17:26 +0900)]
Merge pull request #2646 from Hourier/Change-Strip-Name-Signature
strip_name() のシグネチャを変えた
Hourier [Fri, 16 Sep 2022 13:28:45 +0000 (22:28 +0900)]
[Refactor] #2645 display_object_list() を整形した
Hourier [Fri, 16 Sep 2022 13:25:11 +0000 (22:25 +0900)]
[Refactor] #2645 strip_name() の戻り値をvoid からstd::string に変更し、引数からchar* を消した
Hourier [Fri, 16 Sep 2022 13:05:04 +0000 (22:05 +0900)]
Merge pull request #2643 from Hourier/Prepare-ObjectKind-To-Class
object_kind 構造体をクラス化するための準備として、まずはヘッダ依存性を減らした
Hourier [Fri, 16 Sep 2022 12:51:33 +0000 (21:51 +0900)]
[Refactor] object_kind 構造体をクラス化するための準備として、まずはヘッダ依存性を減らした
Hourier [Fri, 16 Sep 2022 12:29:08 +0000 (21:29 +0900)]
Merge pull request #2639 from Hourier/Adjust-Dropping-Artifact-Procedure
固定アーティファクトドロップ処理の改善
Hourier [Fri, 16 Sep 2022 12:28:20 +0000 (21:28 +0900)]
Merge pull request #2641 from Hourier/Unite-Object-Symbol-Color
object_char() をObjectType::get_symbol() に、object_attr() をObjectType::get_color() に変えた
Hourier [Fri, 16 Sep 2022 11:40:49 +0000 (20:40 +0900)]
[Refactor] #2640 display_player_equippy() を整形した
Hourier [Fri, 16 Sep 2022 11:39:15 +0000 (20:39 +0900)]
[Refactor] #2640 get_color() とget_symbol() を整形した
Hourier [Fri, 16 Sep 2022 11:37:40 +0000 (20:37 +0900)]
[Refactor] #2640 object_char() をObjectType::get_symbol() に、object_attr() をObjectType::get_color() に変えた
Hourier [Fri, 16 Sep 2022 10:13:08 +0000 (19:13 +0900)]
[Refactor] #2635 drop_artifact_from_unique() で、forループ内のオブジェクト取得処理がコピーだったのを参照に変え、ウィザードモードならユニーク撃破時に必ずAフラグで定義された固定アーティファクトをドロップするように修正した
Hourier [Fri, 16 Sep 2022 10:11:37 +0000 (19:11 +0900)]
[Refactor] #2635 ユニーク撃破に伴う固定アーティファクトドロップと、ダンジョンの主撃破に伴う固定アーティファクトドロップ処理でアーティファクトIDが使い回されていた設計不良を解消した
Habu [Fri, 16 Sep 2022 10:05:22 +0000 (19:05 +0900)]
Merge pull request #2638 from habu1010/feature/refactor-map-bool-to-set
[Refactor] 既知のアーティファクト抽出処理
Habu [Fri, 16 Sep 2022 09:29:35 +0000 (18:29 +0900)]
[Refactor] 既知のアーティファクト抽出処理
std::map<T, bool> は std::set<T> で必要十分。
Habu [Wed, 14 Sep 2022 14:23:33 +0000 (23:23 +0900)]
Merge pull request #2636 from habu1010/feature/use-probability-table-for-amusemnet
[Refactor] 誰得の巻物で生成されるアイテム選択に ProbabilityTable クラスを使う
Habu [Wed, 14 Sep 2022 14:07:16 +0000 (23:07 +0900)]
[Refactor] 誰得の巻物で生成されるアイテム選択に ProbabilityTable クラスを使う
項目毎の選択確率に重み付けのあるランダム選択処理は ProbabilityTable クラスの機能その
ものなのでこれを使用して可読性を上げる。
また、amuse_info テーブルをコンパイル時定数にする。
Habu [Wed, 14 Sep 2022 13:43:37 +0000 (22:43 +0900)]
Merge pull request #2633 from habu1010/feature/fix-boomerang-from-inventory
[Fix] 必殺剣「ブーメラン」で何でも投げられてしまう
Habu [Wed, 14 Sep 2022 13:43:11 +0000 (22:43 +0900)]
Merge pull request #2632 from habu1010/feature/fix-unidentified-gloves-stacking
[Fix] #2509 未鑑定の篭手がまとまってしまう事がある
Hourier [Wed, 14 Sep 2022 13:26:06 +0000 (22:26 +0900)]
Merge pull request #2634 from Hourier/Enter-IsGenerate-True-In-CreateNamedArt
create_named_art() の中でArtifactType::is_generated をtrueにするよう設計を変えた
Hourier [Wed, 14 Sep 2022 12:38:21 +0000 (21:38 +0900)]
[Refactor] #2631 create_named_art() を呼んでいる関数群を整形した
Hourier [Wed, 14 Sep 2022 12:32:14 +0000 (21:32 +0900)]
[Refactor] #2631 固定アーティファクト保存モードがOFF、かつ固定アーティファクトの生成に失敗した時、生成済フラグが立って取得不可能になる仕様を撤廃した
Hourier [Wed, 14 Sep 2022 11:46:04 +0000 (20:46 +0900)]
[Refactor] #2631 create_named_art() の中でArtifactType::is_generated をtrueにするよう設計を変えた
Hourier [Tue, 13 Sep 2022 22:41:14 +0000 (07:41 +0900)]
Merge pull request #2626 from Hourier/Change-Artifact-Info-To-Map
a_info をvector からmap に差し替えた
Habu [Tue, 13 Sep 2022 15:38:32 +0000 (00:38 +0900)]
[Fix] 必殺剣「ブーメラン」で何でも投げられてしまう
バージョン 2.2.1r では必殺剣「ブーメラン」では投げるアイテムを装備中の武器しか選択でき
なかったが、リファクタリング時のロジック変更ミスにより全ての持ち物・装備から投げるアイ
テムを選択可能になってしまっていた。
これにより装備中の武器以外を選択すると配列外参照を引き起こし、異常なダメージを与えること
があるというバグの原因となっている。
2.2.1r の頃の以下の挙動に戻す。
- 両手にそれぞれ武器を持っている場合はどちらを投げるか選択する
- 片手にしか武器を持っていない場合は選択せずにその武器を投げる
なお、どちらの手にも武器を持っていない場合はそもそも必殺剣を発動することができない。
Habu [Tue, 13 Sep 2022 14:48:32 +0000 (23:48 +0900)]
[Fix] #2509 未鑑定の篭手がまとまってしまう事がある
2.2.1r のソースと見比べたところ、リファクタリングの過程で篭手の処理が分離された際に
どちらか一方でも未鑑定であればまとまらないようにする判定が失われてしまっていた。
他の装備品と同様にどちらか一方でも未鑑定であればまとまらないようにする処理を追加する。
Hourier [Tue, 13 Sep 2022 13:17:08 +0000 (22:17 +0900)]
[Refactor] #2617 Habu氏の助言に従い、イテレータを直接参照したりArtifactType 型の戻り値をvoidにしたりした
Habu [Tue, 13 Sep 2022 11:09:47 +0000 (20:09 +0900)]
Merge pull request #2630 from habu1010/feature/fix-wielding-hand-message
[Fix] #2535 武器を構えた手が誤って表示されることがある
Habu [Tue, 13 Sep 2022 08:57:47 +0000 (17:57 +0900)]
[Fix] #2535 武器を構えた手が誤って表示されることがある
二刀流からメインの武器を外してサブの武器をメインに持ち替える処理で、両手持ちできるか
どうかの判定を行うアイテムを参照するポインタ変数が誤っている。
正しく持ち替えた武器を指すポインタ変数を使用するよう修正する。
Habu [Tue, 13 Sep 2022 08:46:52 +0000 (17:46 +0900)]
Merge pull request #2629 from habu1010/feature/fix-torch-fuel-overflow
[Fix] #2577 松明の燃料残量が異様に大きな数値になる
Habu [Tue, 13 Sep 2022 08:38:18 +0000 (17:38 +0900)]
[Fix] #2577 松明の燃料残量が異様に大きな数値になる
松明を投げつけた時に燃料残量を減らす処理で負の値になってもそのままにしているのが原因。
負の値になったときは強制的に 0 にするよう修正する。
Hourier [Mon, 12 Sep 2022 12:41:26 +0000 (21:41 +0900)]
[Refactor] #2617 Habu氏の助言に従い、FixedArtifactId の最大値をrbegin() で取るようにした
Hourier [Sun, 11 Sep 2022 15:17:01 +0000 (00:17 +0900)]
[Refactor] #2617 固定アーティファクトのデバッグ生成が正常に動作するように設計を修正した
Hourier [Sun, 11 Sep 2022 15:16:29 +0000 (00:16 +0900)]
[Refactor] #2617 a_info.txt の読み込みルーチンを分かりやすく改善した
Hourier [Sun, 11 Sep 2022 14:27:29 +0000 (23:27 +0900)]
[Refactor] #2617 初期値だけのArtifactType * を削除した
Hourier [Sun, 11 Sep 2022 14:18:29 +0000 (23:18 +0900)]
[Refactor] #2617 a_info を、FixedArtifactType をキーとするmapに変更した
Hourier [Sun, 11 Sep 2022 11:25:26 +0000 (20:25 +0900)]
[Refactor] #2617 ArtifactType へのポインタを返す関数を、unique_ptr を返す関数に差し替えた
Hourier [Sun, 11 Sep 2022 08:41:16 +0000 (17:41 +0900)]
[Refactor] #2617 struct artifact_type をclass ArtifactType にリネームした
Hourier [Sun, 11 Sep 2022 09:44:43 +0000 (18:44 +0900)]
Merge pull request #2623 from Hourier/Remove-Unnecessary-Extern
cpp側に定義されたextern 宣言を削除した
Hourier [Fri, 9 Sep 2022 23:57:39 +0000 (08:57 +0900)]
[Refactor] cpp側に定義されたextern 宣言を削除した
Hourier [Sun, 11 Sep 2022 08:08:32 +0000 (17:08 +0900)]
Merge pull request #2615 from Hourier/Change-FixedArtifactId-Enum
enum fixed_artifact_type を enum class FixedArtifactId に変更した
Hourier [Sat, 10 Sep 2022 05:36:53 +0000 (14:36 +0900)]
[Refactor] #2610 ARTIFACT_IDX 型エイリアスを廃止した
Hourier [Sat, 10 Sep 2022 05:08:28 +0000 (14:08 +0900)]
[Refactor] #2610 artifact_type::idx の型をARTIFACT_IDX (short) からFixedArtifactType に変えた
Habu [Sat, 10 Sep 2022 09:22:54 +0000 (18:22 +0900)]
Merge pull request #2614 from habu1010/feature/fix-msvc-c4868-warning
[Fix] flag_insc_table のコンストラクタ引数 except_flag をconst参照にする
Habu [Sat, 10 Sep 2022 06:22:20 +0000 (15:22 +0900)]
[Fix] flag_insc_table のコンストラクタ引数 except_flag をconst参照にする
except_flag をコピー渡しすると MSVC の警告 C4868 にひっかかるため参照渡しにしておく。
Habu [Sat, 10 Sep 2022 01:09:23 +0000 (10:09 +0900)]
Merge pull request #2612 from habu1010/feature/refactor-flag-insc-table
特性表示記号テーブル定義のリファクタリング
Habu [Fri, 9 Sep 2022 13:32:14 +0000 (22:32 +0900)]
[Refactor] 特性表示記号テーブルに const を付ける
リードオンリーなテーブルであり、明らかに付けるべきものなので付けておく。
Habu [Fri, 9 Sep 2022 13:32:14 +0000 (22:32 +0900)]
[Refactor] 特性表示記号テーブルの例外フラグを std::optional にする
特性表示記号テーブルには、上位の特性を持っているときに下位の特性の表示を省略するのに
使用される例外フラグ(except_flag)メンバがあるが、例外フラグを持たない時を-1として
扱っており汚いので std::optional<tr_type> 型に変更し、例外フラグを持たない時は
std::nullopt を設定する。
また、except_flag のデフォルト引数を std::nullopt とするコンストラクタを追加して
例外フラグを持たない項目でいちいち std::nullopt を指定しなくてよいようにする。
Habu [Fri, 9 Sep 2022 13:32:14 +0000 (22:32 +0900)]
[Style] 特性表示記号テーブルを整列
1行に1項目ずつ記述したほうが明らかに見やすいのでそのように修正する。
Hourier [Fri, 9 Sep 2022 11:43:05 +0000 (20:43 +0900)]
Merge pull request #2611 from Hourier/Unite-Store-Owners
店主の日英情報を統合した
Hourier [Thu, 8 Sep 2022 11:29:59 +0000 (20:29 +0900)]
[Refactor] #2208 かつて静的配列 (std::array)だったと思われる痕跡を消し、現在の動的配列 (std::vector)に差し替えた
Hourier [Thu, 8 Sep 2022 11:23:55 +0000 (20:23 +0900)]
[Refactor] #2208 重複している店主を削除し、コメントアウトされていた店主を復活させた
Hourier [Thu, 8 Sep 2022 11:13:03 +0000 (20:13 +0900)]
[Refactor] #2208 書店の日英表記をまとめた
Hourier [Thu, 8 Sep 2022 11:09:40 +0000 (20:09 +0900)]
[Refactor] #2208 ブラックマーケットの日英表記をまとめた
Hourier [Thu, 8 Sep 2022 11:03:22 +0000 (20:03 +0900)]
[Refactor] #2208 魔道具屋の日英表記をまとめた
Hourier [Thu, 8 Sep 2022 10:49:31 +0000 (19:49 +0900)]
[Refactor] #2208 錬金術屋の日英表記をまとめた
Hourier [Thu, 8 Sep 2022 10:42:16 +0000 (19:42 +0900)]
[Refactor] #2208 寺院の日英表記をまとめた
Hourier [Wed, 7 Sep 2022 13:55:18 +0000 (22:55 +0900)]
[Refactor] #2208 武器屋の日英表記をまとめた
Hourier [Wed, 7 Sep 2022 13:46:46 +0000 (22:46 +0900)]
[Refactor] #2208 防具屋の日英表記をまとめた
Hourier [Mon, 5 Sep 2022 14:18:23 +0000 (23:18 +0900)]
[Refactor] #2208 雑貨屋の日英表記をまとめた
Hourier [Wed, 7 Sep 2022 13:26:45 +0000 (22:26 +0900)]
Merge pull request #2596 from Hourier/Make-Blindness-Class
PlayerType::blind フィールド変数をPlayerBlindness クラスでカプセル化した