いつもお世話になっております。
トリアコンタン様が作成された『MaxTpExtend.js』最大TP拡張 プラグイン(MV版)について
質問させていただけますでしょうか。
DL元 ツクプラ様:https://plugin.fungamemake.com/archives/27197
現在、味方全員のTP最大値を0にしてくる敵を実装しようとしているのですが、
付与するステートに<最大TP:-100>と記載すると、ステートにかかった際に下記エラーが出てしまいます。
※新規プロジェクトでも確認してみましたが、同様のエラーが発生しました。
rpg_managers.js:1949 TypeError: Failed to execute 'createLinearGradient' on 'CanvasRenderingContext2D':
The provided double value is non-finite.
素人なりに調べてみたところ、どうやらゲージを描画するときの横幅が不正な値になっていることが
原因のようですが、最大値を0にしてしまう都合上、エラーが生じてしまうのは避けられないのでしょうか。
もし解決方法をご存知の方がおりましたら、ご教示いただけないでしょうか。
【解決済】MaxTpExtend.jsに関する質問
Re: MaxTpExtend.jsに関する質問
一応確認ですが「TP最大値を1にするステート」にする代案はナシですか?
Re: MaxTpExtend.jsに関する質問
全然ありだと考えてます。
TPを0にするのが難しい場合は最大TPを1にする方向で調整しようと思います。
が、やはり最大値を0にした状態でエラーが生じない方法があればそちらで実装したい考えもございます。
※以下、蛇足
実は、今回最大TPを0にする方法を質問をさせていただいた件ですが、
当初本当に実装したかった仕様は、特定のステート中TPが一切上昇しなくなる、というものでした。
『TPチャージ率』を0に設定すれば攻撃や被弾でのTP上昇はなくなりますが、
アイテムやスキルなどでTPを増加する効果を適用すると普通にTPが増えてしまい、
それならば最大TPの方を0にしてしまおう、と実装を目指した経緯がございます。
スレッドのタイトルとは別の質問となってしまい恐縮ですが、
もし『TP増加の効果でもTPが一切増えなくなるステートの実装方法』
をご教示いただけたらそちらでも代替できるかと思います。
解決策さえ分かれば、実装はどちらの方法でもいいと考えております。
引き続きどうぞよろしくお願い致します。
TPを0にするのが難しい場合は最大TPを1にする方向で調整しようと思います。
が、やはり最大値を0にした状態でエラーが生じない方法があればそちらで実装したい考えもございます。
※以下、蛇足
実は、今回最大TPを0にする方法を質問をさせていただいた件ですが、
当初本当に実装したかった仕様は、特定のステート中TPが一切上昇しなくなる、というものでした。
『TPチャージ率』を0に設定すれば攻撃や被弾でのTP上昇はなくなりますが、
アイテムやスキルなどでTPを増加する効果を適用すると普通にTPが増えてしまい、
それならば最大TPの方を0にしてしまおう、と実装を目指した経緯がございます。
スレッドのタイトルとは別の質問となってしまい恐縮ですが、
もし『TP増加の効果でもTPが一切増えなくなるステートの実装方法』
をご教示いただけたらそちらでも代替できるかと思います。
解決策さえ分かれば、実装はどちらの方法でもいいと考えております。
引き続きどうぞよろしくお願い致します。
Re: MaxTpExtend.jsに関する質問
TP増加無効はまた別のプラグインを作る必要が出てくるので、エラー対策のほうで。
MaxTpExtend.jsの105行目と106行目の間あたりにでも入れてみてください。
コード: 全て選択
let _Game_BattlerBase_tpRate = Game_BattlerBase.prototype.tpRate;
Game_BattlerBase.prototype.tpRate = function() {
return this.maxTp() > 0 ? _Game_BattlerBase_tpRate.call(this) : 0;
};
MaxTpExtend.jsの105行目と106行目の間あたりにでも入れてみてください。
Re: MaxTpExtend.jsに関する質問
ありがとうございます!
動作確認させていただきましたが、最大TPを0にしてもエラーが発生しなくなりました!
本スレッドは解決済とさせていただきます。
動作確認させていただきましたが、最大TPを0にしてもエラーが発生しなくなりました!
本スレッドは解決済とさせていただきます。