OSDN Git Service
Habu [Sat, 5 Mar 2022 06:07:15 +0000 (15:07 +0900)]
Merge pull request #2356 from habu1010/feature/monster-race-enum-class
[Refactor/WIP] モンスター種族IDをenum class化
Habu [Sat, 5 Mar 2022 05:34:49 +0000 (14:34 +0900)]
Merge pull request #2370 from habu1010/feature/fix-go-blind-despite-immunity-to-dark
[Fix] 暗黒免疫があるにも関わらず暗黒属性の攻撃で盲目になる
Habu [Sat, 5 Mar 2022 05:23:25 +0000 (14:23 +0900)]
[Fix] 暗黒免疫があるにも関わらず暗黒属性の攻撃で盲目になる
暗黒属性の攻撃を受けた時に、盲目効果を防げるかの判定で暗黒耐性のみを見ており暗黒免疫は
見ていないため、暗黒耐性がなく免疫のみを所持している時は盲目になってしまう。
暗黒免疫を持っているかどうかも判定に加えるようにする。
Habu [Sat, 5 Mar 2022 04:37:49 +0000 (13:37 +0900)]
[Fix] MonsterRaceId の基底型を int16_t にする
元々の型である MONRACE_IDX が int16_t であったため、それに合わせておく。
実際、デフォルトの基底型(int)だとサイズが違うため、思い出の表示順のソートで16bit型を
想定したポインタアクセスがなされた際にクラッシュを引き起こしてしまう。
Habu [Sat, 5 Mar 2022 04:30:13 +0000 (13:30 +0900)]
[Fix] MonsterRaceId へのCスタイルのキャストをやめてi2enumにする
"(MonsterRaceId)" で検索して見つかったCスタイルのキャストを
i2enum<MonsterRaceId>() に置き換える。
また、1箇所は元々 MonsterRaceId でキャスト不要だったのでキャストを削除する。
Habu [Thu, 3 Mar 2022 14:44:59 +0000 (23:44 +0900)]
[Refactor] 無作為にモンスターを選択する処理を関数にまとめる
実在するモンスター種族IDから無作為に1つ選択する処理を
MonsterRace::pick_one_at_random() 関数としてまとめる。対象は(実質NONEのような
使われ方をしている MonsterRaceId::PLAYER を除き)全てのモンスターで、レアリティは
関係なく全てのモンスターから等確率で選択する。
Habu [Thu, 3 Mar 2022 14:44:59 +0000 (23:44 +0900)]
[Refactor] MonsterRace クラスを導入
monster_race のデータに関連する処理を担う MonsterRace クラスを導入する。
まず is_valid() を実装し、有効なモンスターかどうかを調べる r_idx と
MonsterRaceId::PLAYER との比較を置き換える。
Habu [Thu, 3 Mar 2022 14:44:59 +0000 (23:44 +0900)]
[Refactor/WIP] モンスター種族IDをenum class化
火炎の飛竜 [Thu, 3 Mar 2022 14:37:36 +0000 (23:37 +0900)]
Merge pull request #2360 from Slimebreath6078/hotfix/breath_bug
プレイヤーのブレスが発動しないバグを修正(develop)
Slimebreath6078 [Thu, 3 Mar 2022 14:24:54 +0000 (23:24 +0900)]
[Release] 3.0.0Alpha55(Hotfix)
Slimebreath6078 [Wed, 2 Mar 2022 11:21:18 +0000 (20:21 +0900)]
[Fix] ブレスのルール変更の際に出たエンバグを修正
Hourier [Thu, 3 Mar 2022 12:09:50 +0000 (21:09 +0900)]
Merge pull request #2330 from Hourier/Refactor-Player-Status
プレイヤーのステータス補正に関するメソッド名と変数名を分かりやすく変更した
Hourier [Thu, 3 Mar 2022 11:38:34 +0000 (20:38 +0900)]
[Refactor] #2322 dis-氏のコメントに従い、仮コードでヘッダのインクルード位置が前後していたのをファイル上部に集約した
Hourier [Thu, 3 Mar 2022 11:26:39 +0000 (20:26 +0900)]
[Refactor] #2322 dis-氏のコメントに従い、player-status-base.h に定義された*_value() を*_bonus() に置換した
火炎の飛竜 [Wed, 2 Mar 2022 11:38:22 +0000 (20:38 +0900)]
Merge pull request #2346 from Slimebreath6078/feature/localize_some_var_in_project_func
project() 内の一部変数のスコープを処理内容に合わせた + ブレスのエンバグ修正
Slimebreath6078 [Wed, 2 Mar 2022 11:21:18 +0000 (20:21 +0900)]
[Fix] ブレスのルール変更の際に出たエンバグを修正
Hourier [Mon, 28 Feb 2022 10:27:15 +0000 (19:27 +0900)]
[Refactor] #2322 player-basic-statistics.h に定義された*_value() を*_bonus() に置換した
Hourier [Mon, 28 Feb 2022 09:20:32 +0000 (18:20 +0900)]
[Refactor] #2322 resultが最終的な速度なのか補正値なのか分からないので補正値であると理解できるbonusに置換した。equipment_flags() はflagsへ
Hourier [Mon, 28 Feb 2022 09:13:53 +0000 (18:13 +0900)]
[Refactor] #2322 空行調整
Habu [Wed, 2 Mar 2022 09:21:14 +0000 (18:21 +0900)]
Merge pull request #2351 from habu1010/feature/fix-drain-attack-monster-to-monster
[Fix] モンスター間の生命力吸収攻撃の挙動がおかしい
Habu [Tue, 1 Mar 2022 21:57:06 +0000 (06:57 +0900)]
[Fix] モンスター間の生命力吸収攻撃の挙動がおかしい
HP回復効果が有効かどうかのチェックで monster_living() 関数を呼んでいるが、この時本
来は「攻撃目標のモンスターの種族ID」を渡すべきところ、誤って「攻撃主のモンスターの現マ
ップに存在するモンスターリスト上の要素番号」を渡しておりダブルで間違っている。
正しいものを渡すように修正する。
Habu [Tue, 1 Mar 2022 21:37:39 +0000 (06:37 +0900)]
Merge pull request #2350 from backwardsEric/english-variadic-string
English: fix "cannot pass object of non-trivial type" error with clang
Eric Branlund [Tue, 1 Mar 2022 19:26:42 +0000 (12:26 -0700)]
English: fix "cannot pass object of non-trivial type" error with clang
Habu [Tue, 1 Mar 2022 15:02:08 +0000 (00:02 +0900)]
Merge pull request #2347 from habu1010/feature/add-rd-wr-bool
[Refactor] セーブファイルにbool値を読み書きする関数を追加する
Habu [Tue, 1 Mar 2022 14:50:13 +0000 (23:50 +0900)]
[Refactor] セーブファイルにbool値を読み書きする関数を追加する
セーブファイルにbool値を読み書きする関数 rd_bool / wr_bool を追加する。
現状bool値を rd_byte / wr_byte で読み書きしているものについてはすべて書き換えたが
旧式の方法が使えなくなったわけではないで今後bool値をセーブファイルに記録する時は各自
注意されたし。
Slimebreath6078 [Tue, 1 Mar 2022 14:02:58 +0000 (23:02 +0900)]
[Refactor] gm_rad と see_s_msg のスコープを狭めた
スーパーレイとシーカーレイの処理ではこの変数を使わない
それにも関わらず一番上にあるのはややこしいため位置だけ移した
Slimebreath6078 [Tue, 1 Mar 2022 13:51:06 +0000 (22:51 +0900)]
[Refactor] who_name のスコープを狭めた
もしかしたら悪手かもしれないが、使われているのが一行だけだったのでできるだけスコープが小さくなるようにした
Slimebreath6078 [Tue, 1 Mar 2022 13:39:18 +0000 (22:39 +0900)]
[Refactor] visual のスコープを切り分けた
Slimebreath6078 [Tue, 1 Mar 2022 13:34:46 +0000 (22:34 +0900)]
[Refactor] x, y_saver を削除
名前に反してそれぞれ x1 と y1 しか代入しておらずしかも2か所だけなため該当する変数に置き換えた
Slimebreath6078 [Tue, 1 Mar 2022 13:26:35 +0000 (22:26 +0900)]
[Refactor] jump のスコープ範囲を削減した
散りばめられている範囲が広いが、シーカーレイ以外は一行だけな上、PROJECT_JUMPを判定に使っているのはこの関数だけだったためany_bits()にした
Slimebreath6078 [Tue, 1 Mar 2022 13:06:09 +0000 (22:06 +0900)]
[Refactor] drawn のスコープを狭めた
Hourier [Tue, 1 Mar 2022 12:56:15 +0000 (21:56 +0900)]
Merge pull request #2294 from Hourier/Divide-Read-Execution
read-execution.cpp/h を分割した
Hourier [Tue, 1 Mar 2022 12:49:16 +0000 (21:49 +0900)]
[Refactor] #1636 Habu氏のコメントに従い、check_can_read() をcan_read() に簡略化し、can_read() とis_identified() にconstを付けた
Hourier [Sat, 26 Feb 2022 05:16:34 +0000 (14:16 +0900)]
[Refactor] #1636 使われていないヘッダを削除した
Hourier [Sat, 26 Feb 2022 05:07:51 +0000 (14:07 +0900)]
[Refactor] #1636 Separated gain_exp_from_item_use() from execute()
Hourier [Sat, 26 Feb 2022 05:04:53 +0000 (14:04 +0900)]
[Refactor #1636 Separated change_virtue_as_read() from execute()
Hourier [Sat, 26 Feb 2022 04:55:23 +0000 (13:55 +0900)]
[Refactor] #1636 アイテムを読んだ時の処理を巻物その他個別のクラスに分離した
Hourier [Sat, 26 Feb 2022 04:25:33 +0000 (13:25 +0900)]
[Refactor] #1636 ReadExecutorクラス群のコンストラクタとフィールド変数を整備した
Hourier [Sat, 26 Feb 2022 04:04:35 +0000 (13:04 +0900)]
[Refactor] #1636 Reshaped ObjectReadEntity::execute()
Hourier [Fri, 25 Feb 2022 23:31:44 +0000 (08:31 +0900)]
[Refactor] #1636 アイテムのread処理をファクトリパターンで分岐させるために必要なファイル群を追加した
Hourier [Fri, 25 Feb 2022 23:05:21 +0000 (08:05 +0900)]
[Refactor] #1636 Moved read-execution.cpp/h from object-use/ to object-use/read/
Habu [Tue, 1 Mar 2022 12:09:24 +0000 (21:09 +0900)]
Merge pull request #2342 from habu1010/feature/refactor-bounty
[Refactor] 賞金首情報の処理コードのリファクタリング
火炎の飛竜 [Tue, 1 Mar 2022 12:01:16 +0000 (21:01 +0900)]
Merge pull request #2343 from Slimebreath6078/feature/Localize_dist
project() の dist 変数のスコープを切り分けた
Habu [Tue, 1 Mar 2022 10:06:47 +0000 (19:06 +0900)]
[Refactor] 賞金首情報の処理のコード整理
MAX_BOUNTY を参照しないようにし、なるべく range-based for による処理を行う。
同時に、賞金首を決定する関数 determine_bounty_uniques をわかりやすいコードに書き直す。
Habu [Mon, 28 Feb 2022 17:53:45 +0000 (02:53 +0900)]
[Refactor] モンスター種族IDが賞金首かどうか調べる処理を関数化
Habu [Mon, 28 Feb 2022 15:23:27 +0000 (00:23 +0900)]
[Refactor] 賞金首情報のデータ構造
現在の賞金首情報のデータは、賞金首となるモンスター種族IDのリストのみを持っており、賞金
首の死体を渡すのを達成済みかどうかのフラグはID番号に10000足すことで表現している。
あまりにも分かりにくいので賞金首の対象モンスター種族IDと達成済みかどうかを表すフラグを
持つ bounty_type 構造体を定義し、その配列を持つようにデータ構造を変更する。
Slimebreath6078 [Tue, 1 Mar 2022 11:56:00 +0000 (20:56 +0900)]
[Refactor] dist_hack を削除
Slimebreath6078 [Tue, 1 Mar 2022 11:18:42 +0000 (20:18 +0900)]
[Refactor] dist のスコープを切り分けた
火炎の飛竜 [Tue, 1 Mar 2022 11:19:00 +0000 (20:19 +0900)]
Merge pull request #2340 from Slimebreath6078/feature/Localize_x_and_y_in_project_2
projectの temp_x, y を一意にし、 const化
Hourier [Tue, 1 Mar 2022 10:48:40 +0000 (19:48 +0900)]
Merge pull request #2336 from Hourier/Make-Fear-Class
プレイヤーの恐怖に関するパラメータをクラス化した
Slimebreath6078 [Tue, 1 Mar 2022 10:12:37 +0000 (19:12 +0900)]
[Refactor] temp_x, y を target_x, yに改名し、const化
Slimebreath6078 [Tue, 1 Mar 2022 10:12:06 +0000 (19:12 +0900)]
[Refactor] temp_x, y の役割を一意にする
Slimebreath6078 [Tue, 1 Mar 2022 10:00:32 +0000 (19:00 +0900)]
[Refactor] ox, oy関係を極力ローカル化
構造上完全にforスコープに収めることはできないが、できるだけスコープを狭めた
Slimebreath6078 [Tue, 1 Mar 2022 09:47:58 +0000 (18:47 +0900)]
[Refactor] temp_x, yの代入をローカル化
ox, oy関係は少し複雑なためこのコミットには含めない
Deskull [Mon, 28 Feb 2022 13:08:29 +0000 (22:08 +0900)]
Merge pull request #2334 from sikabane-works/release/3.0.0Alpha54
[Release] 3.0.0Alpha54(Hotfix)
Deskull [Mon, 28 Feb 2022 13:06:33 +0000 (22:06 +0900)]
Merge pull request #2335 from sikabane-works/release/3.0.0Alpha54
Release/3.0.0 alpha54
Hourier [Mon, 28 Feb 2022 13:00:09 +0000 (22:00 +0900)]
[Refactor] #2299 Renamed afraidness to fear
Hourier [Mon, 28 Feb 2022 12:59:12 +0000 (21:59 +0900)]
[Refactor] #2299 PlayerType::fearful を削除し、TimedEffects::Fear 側に処理を全て移した
Hourier [Sun, 27 Feb 2022 14:56:53 +0000 (23:56 +0900)]
[Refactor] #2299 PlayerFearクラスを定義した
Hourier [Sun, 27 Feb 2022 14:49:17 +0000 (23:49 +0900)]
[Refactor] #2299 リソースも含め、恐怖を意味する単語をafraidからfearfulに変えた / United the word 'afraid' to 'fearful' including every resource
Deskull [Mon, 28 Feb 2022 12:40:47 +0000 (21:40 +0900)]
[Release] 3.0.0Alpha54(Hotfix)
Hourier [Mon, 28 Feb 2022 12:30:39 +0000 (21:30 +0900)]
Merge pull request #2332 from Hourier/Fix-Change-Player-Symbol
自分のキャラ表示が @ ではなく別の文字に変わってしまう事象を解決した
Hourier [Mon, 28 Feb 2022 12:10:08 +0000 (21:10 +0900)]
[Fix] #2331 自分のキャラ表示が @ ではなく別の文字に変わってしまう事象を解決した
Hourier [Mon, 28 Feb 2022 11:33:56 +0000 (20:33 +0900)]
Merge pull request #2329 from Hourier/Fix-Compilation-Error
Windowsでコンパイルエラーが出る事象を修正した
Hourier [Mon, 28 Feb 2022 11:25:02 +0000 (20:25 +0900)]
[Fix] #2328 Windowsでコンパイルエラーが出る事象を修正した
Hourier [Mon, 28 Feb 2022 10:58:30 +0000 (19:58 +0900)]
Merge pull request #2327 from Hourier/Fix-Speed-Result
速度補正が正しく機能していない不具合を解消した
Habu [Mon, 28 Feb 2022 10:15:57 +0000 (19:15 +0900)]
Merge pull request #2321 from habu1010/feature/refactor-died-from-to-string
[Refactor] PlayerType::died_from を std::string 型にする
火炎の飛竜 [Mon, 28 Feb 2022 09:35:43 +0000 (18:35 +0900)]
Merge pull request #2324 from Slimebreath6078/feature/Fix_slay_judgement
スレイの対象が逆転してしまっているバグを修正した
Hourier [Mon, 28 Feb 2022 09:10:02 +0000 (18:10 +0900)]
[Fix] #2322 速度調整がマイナスにならない不具合を解消した
Slimebreath6078 [Mon, 28 Feb 2022 09:00:47 +0000 (18:00 +0900)]
[Fix] スレイの対象が逆転してしまっているバグを修正
Habu [Sun, 27 Feb 2022 15:53:39 +0000 (00:53 +0900)]
[Refactor] PlayerType::died_from を std::string 型にする
死因をすべて格納できるようにするため、PlayerType::died_from の型を char[160] から
std::string に変更する。
また、英語版において死亡を日記に記録する際に、死因と場所の表記順序が入れ替わっているので
合わせて修正する。
Habu [Sun, 27 Feb 2022 15:45:11 +0000 (00:45 +0900)]
[Feature] セーブデータへの文字列の読み書きを std::string に対応する
今後のリファクタリングに備え、セーブデータへの文字列読み書き関数 rd_string および
wr_string を std::string に対応する。
読み込みは文字列を格納する std::string オブジェクトへの参照と読み込む最大バイト数を
引数に取るオーバーロードを追加する。
書き込みは concptr ではなく std::string_view を受け取るように変更し、concptr・
std::string・std::string_view をすべて受け取れるようにする。
Hourier [Sun, 27 Feb 2022 14:38:03 +0000 (23:38 +0900)]
Merge pull request #2317 from Hourier/Make-Paralysis-Class
プレイヤーの麻痺に関するパラメータをクラス化した
Habu [Sun, 27 Feb 2022 14:34:18 +0000 (23:34 +0900)]
Merge pull request #2319 from habu1010/feature/explicitly-delete-savefilenotsupportedexception-default-ctor
[Fix] デフォルトコンストラクタを明示的に削除する
Habu [Sun, 27 Feb 2022 14:15:15 +0000 (23:15 +0900)]
[Fix] デフォルトコンストラクタを明示的に削除する
MSVC様がお怒りになるので
Hourier [Sun, 27 Feb 2022 12:43:08 +0000 (21:43 +0900)]
[Refactor] #2298 死因部分がsprintf() が使われていた上に日英で大きく分かれていたので、安全な形に変えつつ言語を統合した
火炎の飛竜 [Sun, 27 Feb 2022 14:01:43 +0000 (23:01 +0900)]
Merge pull request #2316 from Slimebreath6078/feature/weaken_mancubus
マンキュバスを弱体化した
Slimebreath6078 [Sun, 27 Feb 2022 12:00:31 +0000 (21:00 +0900)]
[Feature] マンキュバスの性能を調整
Hourier [Sun, 27 Feb 2022 12:08:42 +0000 (21:08 +0900)]
[Refactor] #2298 PlayerType::paralyzed を削除し、TimedEffects::Paralysis 側に処理を全て移した
火炎の飛竜 [Sun, 27 Feb 2022 11:55:22 +0000 (20:55 +0900)]
Merge pull request #2313 from Slimebreath6078/feature/remove_lyeh
クエスト「海底都市」と関連コードを完全に削除した
Hourier [Sun, 27 Feb 2022 11:30:59 +0000 (20:30 +0900)]
[Refactor] #2298 PlayerParalysisクラスを定義した
Slimebreath6078 [Sat, 26 Feb 2022 18:05:14 +0000 (03:05 +0900)]
[Feature] 海底都市があるデータは読み込まないようにした
海底都市を受領していたり海底都市内にいるデータはサポート対象外とし、読み込まずエラーを吐くようにした
Hourier [Sun, 27 Feb 2022 11:19:23 +0000 (20:19 +0900)]
Merge pull request #2302 from Hourier/Make-Hallucination-Class
幻覚に関するエンティティをPlayerHallucinationクラスにまとめた
Slimebreath6078 [Sat, 26 Feb 2022 17:39:39 +0000 (02:39 +0900)]
[Refactor] KILL_ANY_LEVELに関する処理を削除
海底都市のみが関わっているクリア条件、KILL_ANY_LEVELを削除した
Slimebreath6078 [Sat, 26 Feb 2022 12:11:16 +0000 (21:11 +0900)]
[Refactor] 海底都市関連のファイルを削除
Hourier [Sun, 27 Feb 2022 04:15:35 +0000 (13:15 +0900)]
[Refactor] #2302 Habu氏のコメントに従い、バッファオーバーランが起きないように、ペットへのコマンドを表す配列をconst char* からstd::string に変えた
Habu [Sun, 27 Feb 2022 10:35:27 +0000 (19:35 +0900)]
Merge pull request #2315 from habu1010/feature/use-inherit-ctor-for-custom-exception
[Refactor] 独自定義例外に継承コンストラクタを使用する
Habu [Sun, 27 Feb 2022 10:30:41 +0000 (19:30 +0900)]
[Refactor] 独自定義例外に継承コンストラクタを使用する
継承元の例外クラス (std::runtime_error等) のコンストラクタをすべて使えるようにする
ため、自作のコンストラクタではなく継承コンストラクタを使用する。
Habu [Sun, 27 Feb 2022 09:47:21 +0000 (18:47 +0900)]
Merge pull request #2310 from habu1010/feature/create-cache-for-ccache-workflow
[Feature] ccache のためにキャッシュを生成するワークフロー
火炎の飛竜 [Sun, 27 Feb 2022 07:55:10 +0000 (16:55 +0900)]
Merge pull request #2304 from Slimebreath6078/feature/fix_PR_2273
#2273 で出た別の修正点を施した
Hourier [Sat, 26 Feb 2022 14:34:47 +0000 (23:34 +0900)]
[Refactor] #2300 monster_gain_exp() のコンパイルサジェスチョンを解消し、ついでに幻覚時のメッセージを追加した
Hourier [Sat, 26 Feb 2022 14:16:13 +0000 (23:16 +0900)]
[Refactor] #2300 長過ぎるフォーマッタを変数で受けた
Hourier [Sat, 26 Feb 2022 14:09:50 +0000 (23:09 +0900)]
[Refactor] #2300 PlayerType::hallucinated を削除し、TimedEffects::Hallucination 側に処理を全て移した
Hourier [Sat, 26 Feb 2022 12:02:32 +0000 (21:02 +0900)]
[Refactor] #2300 PlayerHallucinationクラスを定義した
Hourier [Sun, 27 Feb 2022 07:12:44 +0000 (16:12 +0900)]
Merge pull request #2309 from Hourier/Fix-Pet-Attack
ペットを押し退けようとすると攻撃動作に入ってしまう事象を修正した
Habu [Sun, 27 Feb 2022 04:59:28 +0000 (13:59 +0900)]
[Feature] ccache のためにキャッシュを生成するワークフロー
Pull Request Status Check で行われるビルドテスト時に ccache によるコンパイル
キャッシュが初めから利用できるようにしやすくするため、develop ブランチにマージされた
時にビルドテストと同じビルドを実行してキャッシュを予め生成しておくようにする。
Hourier [Sun, 27 Feb 2022 03:52:34 +0000 (12:52 +0900)]
[Refactor] #2308 ペットを押し退けようとすると攻撃動作に入ってしまう事象を修正した
Hourier [Sun, 27 Feb 2022 00:02:18 +0000 (09:02 +0900)]
Merge pull request #2296 from Hourier/Rename-Monster-Attack-Types
monster-attack-types.cpp/h をmonster-attack-table.cpp/h に改名した
Habu [Sun, 27 Feb 2022 00:00:45 +0000 (09:00 +0900)]
Merge pull request #2307 from habu1010/feature/pr-status-check-rearrange
[Feature] PR ステータスチェックのワークフロー再構成
Habu [Sat, 26 Feb 2022 23:25:19 +0000 (08:25 +0900)]
[Feature] PR ステータスチェックのワークフロー再構成
詳細: Issue #2305