Skyrim:More Hotkeys Pleaseのスクリプト、MHP_PlayerScriptがエラーの原因のようなので修正

投稿者: | 2013/05/30

便利なホットキー拡張modのMore Hotkeys Pleaseですが、これのスクリプトが原因でエラーを出して落ちてしまうことがあるようです。

問題のスクリプトは、MHP_PlayerScriptのOnItemAdded。
プレイヤーにアイテムが追加されるたびに呼ばれる処理で、ポーションをホットキーに設定したときに使う、効果が強い順・弱い順のリストをいじっている部分のようです。

これが4重ループのヘビーな処理でして、短時間で何度も続けて呼び出されると、処理しきれずにエラーを出してしまうみたいです。
私の環境の場合食料(ポーション扱いらしい)を金庫などからE連打で大量に一気に移動すると、確実にエラーが出ます。

料理をする時にとても不便なので、同時処理数を5個までに制限するように修正してみました。
上限に達すると後続はばっさり無視してしまい、ポーションリストに影響が出る可能性がありますが、まぁそこはたいした問題ではないでしょう。

とりあえずまとめて移動してもエラーがでなくなったので、動作は期待どおりのようです。
対になるOnItemRemovedという処理もありますが、今のところそっちでエラーは出ないようなのでそのまま。
しばらくこれで使ってみます。