【解決済】変数を利用した魔法反射をしたい

返信する
こーるす
記事: 2
登録日時: 2024年8月27日(火) 15:15

【解決済】変数を利用した魔法反射をしたい

投稿記事 by こーるす »

数ターンの間に敵キャラが受けたダメージを半減してアクター全員に反射させるという攻撃をしたいと考えています。

現在の作成段階では、
変数で敵キャラのHPを定数で入れてから敵キャラのHP-現在のHP、そして除法で2で割ったものを出しました。
バトルイベントで全員にその変数分HPダメージを与えるという形で攻撃をしようと思っているのですが、ゲームデータから敵キャラを選ぼうとすると#1 ?〜#8 ?とだけ表示されて-現在HPが反映されず、ダメージ量は最大HPの半分の数値になってしまいます。

説明がわかりにくくなってしまって申し訳ないです。
初心者なので根本から間違っていることがあるのかもしれないのですが、ご指摘や代替案などお願いいたします。
最後に編集したユーザー こーるす [ 2024年8月29日(木) 10:10 ], 累計 1 回
ecf5DTTzl6h6lJj02
記事: 752
登録日時: 2018年12月23日(日) 13:55

Re: 変数を利用した魔法反射をしたい

投稿記事 by ecf5DTTzl6h6lJj02 »

こんにちは。
こーるす さんが書きました: 数ターンの間に敵キャラが受けたダメージを半減してアクター全員に反射させるという攻撃をしたいと考えています。

現在の作成段階では、
変数で敵キャラのHPを定数で入れてから敵キャラのHP-現在のHP、そして除法で2で割ったものを出しました。
バトルイベントで全員にその変数分HPダメージを与えるという形で攻撃をしようと思っているのですが、ゲームデータから敵キャラを選ぼうとすると#1 ?〜#8 ?とだけ表示されて-現在HPが反映されず、ダメージ量は最大HPの半分の数値になってしまいます。

説明がわかりにくくなってしまって申し訳ないです。
初心者なので根本から間違っていることがあるのかもしれないのですが、ご指摘や代替案などお願いいたします。
何かステートを用意して、
そのステートがかかっている間、被ダメージを累積させ、
ステートが解除されるタイミングで、その累積した値の半分をダメージとしてアクター全体に与える

というイメージでよろしいでしょうか?

そうであれば、
フトコロ様の 特定条件で自動でスキルを発動させるプラグイン と 変数の操作を拡張するプラグイン を併用する
形での作成例をご提示したいと思います。
  1. 上記プラグインをダウンロードして、プロジェクトに導入してください。

    当的条件で自動でスキルを発動させるプラグイン(FTKR_AutoInvokeSkill.js)
    https://plugin.fungamemake.com/archives/1339

    変数の操作を拡張するプラグイン(FTKR_ExVariablesChange.js)
    https://plugin.fungamemake.com/archives/1316

    (どちらもツクプラの紹介ページに飛びます。)
  2. 累積ダメージをリセットするためのコモンイベントを作成します。
    累積ダメージを格納するための変数を用意し、
    コモンイベント内で、その変数を初期化(0 を代入)してください。
    また、ステートにかかっている状態で、再度ステートを付与するスキルを使用しないように設定するため、
    ステートにかかっているかの判定用スイッチを作成し、ON にしておきます。
  3. ダメージ累積を開始するためのステートを作成します。
    細かい部分は、あとで設定します。
  4. 先程作ったステートを付与するためのスキルを作成します。
    このイベントの使用効果として、累積ダメージをリセットするコモンイベントを呼びだすものを設定してください。
  5. ダメージ累積用のステートがついているときに、ダメージを受けたら、そのダメージ分、
    累積ダメージの変数を増加させるための設定をします。
    3. で作成したステートのメモ欄に、以下の記述を追加してください。

    コード: 全て選択

    <EVC 被ダメージ時>
    v[1. で設定したダメージ累計用の変数のID] += result.hpDamage;
    </EVC 被ダメージ時>
    
  6. 累積ダメージの半分を、アクター全体に与えるスキルを作成します。
    スキルのダメージ計算式を、

    コード: 全て選択

    v[1. で設定したダメージ累計用の変数のID] / 2
    に、分散度を 0 %、会心をなしに設定してください。
  7. ダメージ累積用のステートが解除されたときに、ダメージを与える用のスキルが呼び出されるように設定します。
    3. で作成したステートのメモ欄に、以下の記述を追加してください。

    コード: 全て選択

    <AIS_解除発動:6. で作成したスキルのID>
  8. エネミーの行動の設定をする
    ステート付与中に、再度ステート付与しないように設定してください。
    2. で設定したスイッチを利用して、
    スイッチがONの時は、他のスキルのレーティング(R)が 3 以上高いように設定すれば、
    使用しないようにできると思います。
以上で、ご希望されている攻撃を実現させられるのではないかと思います。

ご確認ください。
こーるす
記事: 2
登録日時: 2024年8月27日(火) 15:15

Re: 変数を利用した魔法反射をしたい

投稿記事 by こーるす »

ecf5DTTzl6h6lJj02様

ご提示ありがとうございます。
試したところ、無事やりたいことができました。

わかりやすいご説明ありがとうございました。
返信する

“MV:質問”に戻る