【解決済み】特定アクターのスキルの消費HPや消費MP等を任意のタイミングで変数に格納したい

アバター
アーヴェル
記事: 27
登録日時: 2019年5月18日(土) 12:02

【解決済み】特定アクターのスキルの消費HPや消費MP等を任意のタイミングで変数に格納したい

投稿記事by アーヴェル » 2019年7月25日(木) 11:09

質問失礼いたします。
tomoaky様のTMskillCostEx 及び、TMCostShowを使わせていただいているのですが、
ターン開始時のタイミングで、特定アクター(変数で指定します)の特定のスキル(こちらも変数で指定します)の消費HP等を変数に格納することは可能でしょうか?

というのも、同じスキルでも割合HP消費のスキルはアクターのステータスによって消費が変わりますし、
消費MPに関してもそのキャラクターのMP消費率で変動します。
$dataSkills[n].mpCost
$dataSkills[n].tpCost
を用いることでそのスキルそのものの数値を取得できるのはわかるのですが、
そこから式を組んで一つ一つ計算するより、画像のような計算結果に数値が代入されているのであれば、
どうにかそれをスキル使用より前のタイミングで引っ張ってこれないかと考えました。
tomoaky様のプラグインにはスキル使用の直前に、行動者が決定したスキルの対応情報を特定変数に格納する機能はあるのですが、それを任意のタイミング、アクター、スキルで引き出したい・・・という事になります。

理由としては、稚拙ながらガンビットのような自動戦闘を組もうとしており、
条件分岐によって決定したスキルに対応したステートをターン開始時に付与、
フトコロ様のFTKR_AISkillEvaluateを用いて対応ステート付与によって評価値が最も高くなった
特定スキルを発動・・・という流れを組もうとした際に、条件分岐による可否決定で、
選択されたスキル毎にいちいち個別の計算式を書くのはあまりに非効率ではないか。と思った次第です。

当てずっぽうではありますが
Game_BattlerBase.prototype.skillMpCost = function(skill)
という記述を
$gameActors.actor(アクターID).skillMpCost = function(スキルID)

のように弄ってみたりもしたもののエラーで動かず。
よろしければ知恵をお貸し頂ければありがたく思います。

画像
最後に編集したユーザー アーヴェル on 2019年7月25日(木) 11:27 [ 編集 1 回目 ]

アバター
剣崎 宗二
記事: 424
登録日時: 2016年11月12日(土) 20:36
連絡を取る:

Re: 特定アクターのスキルの消費HPや消費MP等を任意のタイミングで変数に格納したい

投稿記事by 剣崎 宗二 » 2019年7月25日(木) 11:16

変数代入でスクリプト

コード: 全て選択

$gameActors.actor(アクターID).skillMpCost($dataSkills[スキルID])

ではダメだったのでしょうか?
----
-出先に居る場合回答が未テスト状態である事が多い為、テストは重々にお願いいたします。
アバター
アーヴェル
記事: 27
登録日時: 2019年5月18日(土) 12:02

Re: 特定アクターのスキルの消費HPや消費MP等を任意のタイミングで変数に格納したい

投稿記事by アーヴェル » 2019年7月25日(木) 11:26

剣崎 宗二様、ありがとうございます!

確認しました。まさしくこれでした!
昨日から悩んでいたのですがどうにも結果にたどり着けず、
教えていただいて解決に至ったわけですが、興奮が隠せません。

最大HPの変動及びMP消費率にもきっちり対応しており、望んだ結果であります。
これにて解決済みにさせていただきます。ご回答、どうもありがとうございました!

“MV:質問” へ戻る