女神転生Vの「リストア」の効果をツクールMZで作成したいです。
スマートに実装する良い方法はないでしょうか。
仕様は以下の通りです。
①直前のアクターNのスキルがクリティカルに当たった時、かつアクターNがスキル「リストア」を習得している場合、処理を開始
②アクターNのMPを10回復する
現状、リストア処理を記載したスクリプトをコモンイベントに作成して、全スキルで当該コモンイベントを発動するよう考えていますが、改修内容が多すぎるので、簡単に解決する方法を模索しています。
(私はスクリプトは多少使用しますが、プラグインは作成できません)
もっとよい方法がありましたら教えていただけないでしょうか。
よろしくお願いします。
【解決済】会心時にアクターのMPを回復させたい
【解決済】会心時にアクターのMPを回復させたい
最後に編集したユーザー deal [ 2024年7月13日(土) 00:40 ], 累計 1 回
Re: 会心時にアクターのMPを回復させたい
貴方が構想中の「全スキルで当該コモンイベントを発動する」方法が
ツクール的にはマストだと思います。
それ意外だと、戦闘計算式がんばるか、プラグインを作ってもらう
の2択しかないし
しかもスマートに、という条件なら、プラグインを作ってもらう、の一択でしょう。
まったくおススメはしませんが、もし戦闘計算式頑張るなら
情報を組み合わせて作ってみるといいかも。
枠が、長い式を書く前提にないので、読みにくいですけど。
情報まとめサイト
https://fungamemake.com/archives/12918
会心の一撃が出た時に分岐する計算式
https://forum.tkool.jp/index.php?threads/5154/
MPを回復する計算式
viewtopic.php?t=6188
RPGツクールMZ スクリプトリファレンスで、スキルを覚えてるか調べるスクリプトを探す
https://docs.google.com/spreadsheets/d/ ... =270496334
そうすると、大体こんな計算式ができあがりました。
if (b.result().critical && a.isLearnedSkill(スキルID)) {a.gainMp(10)}; a.atk * 4 - b.def * 2
もし、会心が出て、スキル使用者が指定したスキルIDのスキルを習得済みなら
MPを10回復して、相手にa.atk * 4 - b.def * 2の会心倍率でダメージを与える。
そうでなければ、a.atk * 4 - b.def * 2だけの通常ダメージを与える。
a.atk * 4 - b.def * 2 の部分がダメージ計算の部分で、スキルごとに変える場所。
まあ、結局全部のスキルの計算式を変更することになるから、その辺の手間は
コモンイベントを付与するだけよりずーっと面倒くさいし
ただMPが回復するだけじゃなく、アニメーションなどの演出も入れたいと思い始めたら
そう簡単にはいかないので、コモンイベント付与のみでやるのが拡張性も高いし
後で変更があっても対応しやすいと思う。
多少はスクリプトを使えるということですが、どの程度使っているのかなあ?
条件分岐用のスクリプトだけじゃなく
イベントコマンドをスクリプトで実行するなども使用していれば
かなりすっきり作ることが出来ると思います。
ツクールMZスクリプトリファレンスwiki
https://rpgmaker-script-wiki.xyz/mzscriptwiki.php
しかしある程度、もちゃっとしちゃうのはしょうがないんじゃないかなあと思います。
上記の戦闘式を使う場合は、修正が本当に大変なので
しっかりテストして、本当にこれでいいのかよく考えてから実装してね。
やっぱこうじゃないとか、もっといい方法が後から出てきたりして
戦闘計算式全部やり直しになって泣いても知らんよ?
興味本位で作っただけで、使えって意味で作ってないからね?
数個の特殊なスキルを作る場合には良いのですけれど、今回の場合は
全部を書き換えなきゃいけないので、非推奨です。
ながながと書きましたが
「全スキルで当該コモンイベントを発動する」のが
私としてはおススメです。
コモンイベントの内容をできるだけスマートに短くしたいなら
作りかけでもいいので実際のイベント内容を貼って、短くしたいって言えば
誰かがここはスクリプトで短くできるよとか、条件分岐をこっちに変えればいいよとかの
アドバイスをしてくれるかもしれません。
あなたにとっていい方法が見つかることを祈っています。
ツクール的にはマストだと思います。
それ意外だと、戦闘計算式がんばるか、プラグインを作ってもらう
の2択しかないし
しかもスマートに、という条件なら、プラグインを作ってもらう、の一択でしょう。
まったくおススメはしませんが、もし戦闘計算式頑張るなら
情報を組み合わせて作ってみるといいかも。
枠が、長い式を書く前提にないので、読みにくいですけど。
情報まとめサイト
https://fungamemake.com/archives/12918
会心の一撃が出た時に分岐する計算式
https://forum.tkool.jp/index.php?threads/5154/
MPを回復する計算式
viewtopic.php?t=6188
RPGツクールMZ スクリプトリファレンスで、スキルを覚えてるか調べるスクリプトを探す
https://docs.google.com/spreadsheets/d/ ... =270496334
そうすると、大体こんな計算式ができあがりました。
if (b.result().critical && a.isLearnedSkill(スキルID)) {a.gainMp(10)}; a.atk * 4 - b.def * 2
もし、会心が出て、スキル使用者が指定したスキルIDのスキルを習得済みなら
MPを10回復して、相手にa.atk * 4 - b.def * 2の会心倍率でダメージを与える。
そうでなければ、a.atk * 4 - b.def * 2だけの通常ダメージを与える。
a.atk * 4 - b.def * 2 の部分がダメージ計算の部分で、スキルごとに変える場所。
まあ、結局全部のスキルの計算式を変更することになるから、その辺の手間は
コモンイベントを付与するだけよりずーっと面倒くさいし
ただMPが回復するだけじゃなく、アニメーションなどの演出も入れたいと思い始めたら
そう簡単にはいかないので、コモンイベント付与のみでやるのが拡張性も高いし
後で変更があっても対応しやすいと思う。
多少はスクリプトを使えるということですが、どの程度使っているのかなあ?
条件分岐用のスクリプトだけじゃなく
イベントコマンドをスクリプトで実行するなども使用していれば
かなりすっきり作ることが出来ると思います。
ツクールMZスクリプトリファレンスwiki
https://rpgmaker-script-wiki.xyz/mzscriptwiki.php
しかしある程度、もちゃっとしちゃうのはしょうがないんじゃないかなあと思います。
上記の戦闘式を使う場合は、修正が本当に大変なので
しっかりテストして、本当にこれでいいのかよく考えてから実装してね。
やっぱこうじゃないとか、もっといい方法が後から出てきたりして
戦闘計算式全部やり直しになって泣いても知らんよ?
興味本位で作っただけで、使えって意味で作ってないからね?
数個の特殊なスキルを作る場合には良いのですけれど、今回の場合は
全部を書き換えなきゃいけないので、非推奨です。
ながながと書きましたが
「全スキルで当該コモンイベントを発動する」のが
私としてはおススメです。
コモンイベントの内容をできるだけスマートに短くしたいなら
作りかけでもいいので実際のイベント内容を貼って、短くしたいって言えば
誰かがここはスクリプトで短くできるよとか、条件分岐をこっちに変えればいいよとかの
アドバイスをしてくれるかもしれません。
あなたにとっていい方法が見つかることを祈っています。
Re: 会心時にアクターのMPを回復させたい
ゆわか様
非常に有益な情報を沢山連携していただきありがとうございました。
まだ具体的にどうしようなどは決められていないのですが、助かりました。
また、スマートに、という曖昧な表現で簡素に質問文を記載したこと、失礼しました。
非常に有益な情報を沢山連携していただきありがとうございました。
まだ具体的にどうしようなどは決められていないのですが、助かりました。
また、スマートに、という曖昧な表現で簡素に質問文を記載したこと、失礼しました。