バグ: 同行NPCの所有召喚獣で敵を倒して発生した死亡イベント中に同行NPCを解除してシナリオ終了するとエラー
お疲れ様です。
恐れ入りますが、いや大変な中本当に恐れ入りますが、ご相談にあがりました。
生野菜サラダ様「宇宙よりの侵略者vs銀河の巨人」のシナリオ終了後にエラーになり調査をしたところ、表題に示した現象を確認しました。エラーログとサンプルシナリオを添付します。
Version : 5.1 (64-bit) / 2023-11-04 11:17:42
DateTime: 2023-11-22 21:32:44
Traceback (most recent call last):
File ".\cw\thread.py", line 981, in run
File ".\cw\thread.py", line 1034, in _run
File ".\cw\thread.py", line 1045, in main_loop
File ".\cw\eventhandler.py", line 131, in run
File ".\cw\eventhandler.py", line 857, in executing_event
File ".\cw\battle.py", line 109, in start
File ".\cw\battle.py", line 181, in run
File ".\cw\character.py", line 1152, in action
File ".\cw\character.py", line 1087, in use_card
File ".\cw\event.py", line 1468, in start
File ".\cw\event.py", line 908, in start
File ".\cw\event.py", line 1540, in end
File ".\cw\thread.py", line 4897, in clear_inusecardimg
ValueError: list.remove(x): x not in list
エラーになった行ではself.inusecards
が空であるにも関わらずremove
をした事により発生しています。アイテムカード等ではエラーにならないため、character.py
以下use_card
メソッドの957行目~991行目に何かがあるのか、それとも他の場所に問題があるのか考えが及びません。
恐れ入りますが、対処法をご教示いただけましたら幸甚です。
Comments (6)
-
repo owner -
repo owner 原因を特定できました。キャスト離脱コンテントで使用中カードが正しくクリアされておらず、キャストは存在しないのに使用中カードのみ残っているという状態になり、エラーを誘発していました。
修正できたと思います。
-
reporter 申し訳ございませんでした…何かご存知かなと思ってお尋ねでしましたが、先に対応されてしまいました。泥臭いprintfデバッグやってもよかったのでしょう。正しい動作を確認しました。ありがとうございました。
-
reporter 本件は解決済みにつきクローズ可である旨記載いたします。しかし口惜しい事に、僕の投稿であるにも関わらず解決ボタンが表示されていません……。
-
repo owner リポジトリオーナーがオープンしないといけないんでしょうか? 私の方でクローズしておきます。
-
repo owner - changed status to resolved
- Log in to comment
ご報告とサンプルシナリオありがとうございます。助かります。
時間のある時に見てみようと思いますが、とりあえずエラーが起きている箇所から言えるのは、画面に表示されているはずの使用中カードがイベント処理のどこかのタイミングで
cw.cwpy.inusecards
から消えているという事です。どこで消えたのかステップ実行しながら追っていけば原因を特定できそうな気がします。