OSDN Git Service

[Fix] 青魔道師の一貫性のないラーニング判定を修正
authortaotao54321 <taotao54321@gmail.com>
Thu, 18 Feb 2021 16:21:00 +0000 (01:21 +0900)
committertaotao54321 <taotao54321@gmail.com>
Fri, 19 Feb 2021 15:06:20 +0000 (00:06 +0900)
commit3cbb31fd1f9aa9443067b2a4207aa6fe75d8ccd9
treec46fa9b933f573b93776f63eee9546d030a07a37
parente7684804b8d013e6f4c545c034c4552cca70bf00
[Fix] 青魔道師の一貫性のないラーニング判定を修正

例えばプラズマボルトで朦朧としたのにラーニングが成功したりしていた。
`learn_spell()` があちこちで呼ばれており、判定に一貫性がなくなっていた。

`learn_spell()` の呼び出しを `make_attack_spell()` 内に一本化して修正。
ただし、モンスター特技「暗闇」は特定条件下でライトエリアになる関係上、やむを得
ず特技処理内にラーニングも含めることとした。

また、従来のコードで曖昧だった仕様について以下のように定めた:

* ラーニングを行うためには、モンスターが特技を使う前の時点でプレイヤーがモンス
  ターを視認できていなければならない。
* 分身による回避はラーニングの可否に影響しない。
12 files changed:
src/blue-magic/blue-magic-checker.c
src/blue-magic/blue-magic-checker.h
src/effect/effect-player-curse.c
src/effect/effect-player-resist-hurt.c
src/effect/effect-player-spirit.c
src/mspell/mspell-attack.c
src/mspell/mspell-checker.c
src/mspell/mspell-dispel.c
src/mspell/mspell-floor.c
src/mspell/mspell-learn-checker.c
src/mspell/mspell-status.c
src/player/player-damage.c