はじめて投稿いたします。
敵モンスターの変身機能について質問させてください。
現在下記の構想の元制作しています。
①モンスターA(例:ゾンビ)に炎スキルで攻撃する
②ゾンビが変身してモンスターB(例:スケルトン)になる
③スケルトンを炎スキルで倒すと「燃える骨」というアイテムが手に入り、氷スキルで倒すと「凍った骨」を手に入れる
③につきましては、やな様の下記リンク先プラグイン(条件付きドロップ - ConditionallyDrop.js)を導入したことで入手できるようになりました。
https://plugin.fungamemake.com/archives/2004
問題は①→②への移行についてなのですが、どのようにしたら良いのか分からず詰まってしまいました。
データベース→敵グループ→バトルイベントを変えれば機能するような気がするのですが、条件やスパンを含めてどのように設定したら宜しいでしょうか。
もしくは別の場所(スキルやコモンイベント等)を変える必要がありますでしょうか。
また、何かプラグインを導入した方が簡単に設定出来たりする場合は、そちらのプラグイン名かリンクをご教示いただけますと幸いです。
何卒宜しくお願いいたします。
【解決済み】ダメージを与えるスキル内容によって敵が変身する方法について
【解決済み】ダメージを与えるスキル内容によって敵が変身する方法について
最後に編集したユーザー 初心者MVツクラー [ 2025年4月29日(火) 15:51 ], 累計 1 回
-
- 記事: 715
- 登録日時: 2018年12月23日(日) 13:55
Re: ダメージを与えるスキル内容によって敵が変身する方法について
こんにちは。
とりあえず、思いついた方法でご提案します。
(ちょっと長いですが、ご容赦ください)
まず、フトコロ 様の FTKR_ExVariableChange プラグインをダウンロードして、導入します。
https://github.com/futokoro/RPGMaker/bl ... ange.ja.md
説明書のページに飛びますので、内容をよく読んでプラグインの内容や設定方法を把握しておいてください。
導入したら、
ゾンビをスケルトンに変身させるバトルイベントを発動させるためのスイッチを確保します。
適当な番号から、連続して 8 個分のスイッチを確保しておいてください。
8 個確保するのは、ゾンビが敵グループの何番目に登録されるかわからないためです。
敵グループには通常、最大 8 体までなので、8 個確保しています。
次に、
火属性の攻撃で変身させたいエネミーのメモ欄に、
以下の内容を記述してください。
説明書の内容を読んで把握していれば、なんとなくわかるかと思いますが、
上の内容の、s[b.index() + m] となっている部分は 変更するスイッチを指定する部分です。
[ ] の中に変更するスイッチIDを書きます。
b.index() は 攻撃を受けたエネミーが、敵グループの何番目に登録されているのかを取得します。
m は 変身イベント発動用のスイッチの先頭の番号に変換して下さい。
item.damage.elementId === n となっている部分は、
使用されたアイテム・スキルのダメージに設定された属性が 属性ID n 番の属性であるかどうか、
という条件式です。
n は調べたい属性のIDに変換してください。
(item.damage.elementId === -1 && a.attackElements().contains(n)) という部分の、
Item.damage.elemenId === -1 は、
スキル・アイテムのダメージの属性が通常攻撃であるかどうか
という条件式です。
a.attackElements.contains(n) は、
スキルの使用者の攻撃属性に属性ID n 番の属性が含まれるかどうか、
という条件式です。
n は調べたい属性のIDに変換してください。
2つを 'かつ' を表す '&&' という記号でつないでいるので、
使用されたアイテム・スキルの属性が通常攻撃、かつ、スキルの使用者の攻撃属性に属性ID n 番が含まれるかどうか、
という条件式になります。
更に、
1つ目の条件式と、2つ目の条件式を 'または' を表す ' || ' という記号でつないでいるので、
上で示した、被ダメージ時に実行する内容は、
使用されたアイテム・スキルのダメージ属性が ID n 番 もしくは スキル使用者の攻撃属性にID n 番が含まれるか、
という条件を判定し、その結果をスイッチID b.index() + m 番に代入する。
という内容になります。
上記ができたら、
条件をイベント発動用のスイッチ、スパンをバトルに設定したバトルイベント、
敵キャラが変身するイベントを作成してください。
以下は、
変数ID 1 ~ 8 を変身イベント用のスイッチとして確保している状態で、
スイッチID 1 が ON になった時のバトルイベントの設定例です。
(条件をスイッチにのみチェックを入れ ID 0001を指定、スパンをバトルにしたイベントです)
敵キャラの変身のインデックスや、スイッチのIDは、適切な番号に変更してください。
以上で、質問にある挙動が実現できるのではないかなと思います。
ご確認ください。
他にもやりようがあるとは思いますが、初心者MVツクラー さんが書きました:はじめて投稿いたします。
敵モンスターの変身機能について質問させてください。
現在下記の構想の元制作しています。
①モンスターA(例:ゾンビ)に炎スキルで攻撃する
②ゾンビが変身してモンスターB(例:スケルトン)になる
③スケルトンを炎スキルで倒すと「燃える骨」というアイテムが手に入り、氷スキルで倒すと「凍った骨」を手に入れる
③につきましては、やな様の下記リンク先プラグイン(条件付きドロップ - ConditionallyDrop.js)を導入したことで入手できるようになりました。
https://plugin.fungamemake.com/archives/2004
問題は①→②への移行についてなのですが、どのようにしたら良いのか分からず詰まってしまいました。
データベース→敵グループ→バトルイベントを変えれば機能するような気がするのですが、条件やスパンを含めてどのように設定したら宜しいでしょうか。
もしくは別の場所(スキルやコモンイベント等)を変える必要がありますでしょうか。
また、何かプラグインを導入した方が簡単に設定出来たりする場合は、そちらのプラグイン名かリンクをご教示いただけますと幸いです。
何卒宜しくお願いいたします。
とりあえず、思いついた方法でご提案します。
(ちょっと長いですが、ご容赦ください)
まず、フトコロ 様の FTKR_ExVariableChange プラグインをダウンロードして、導入します。
https://github.com/futokoro/RPGMaker/bl ... ange.ja.md
説明書のページに飛びますので、内容をよく読んでプラグインの内容や設定方法を把握しておいてください。
導入したら、
ゾンビをスケルトンに変身させるバトルイベントを発動させるためのスイッチを確保します。
適当な番号から、連続して 8 個分のスイッチを確保しておいてください。
8 個確保するのは、ゾンビが敵グループの何番目に登録されるかわからないためです。
敵グループには通常、最大 8 体までなので、8 個確保しています。
次に、
火属性の攻撃で変身させたいエネミーのメモ欄に、
以下の内容を記述してください。
コード: 全て選択
<EVC 被ダメージ時>
s[b.index() + m] = item.damage.elementId === n || (item.damage.elementId === -1 && a.attackElements().contains(n));
</EVC 被ダメージ時>
上の内容の、s[b.index() + m] となっている部分は 変更するスイッチを指定する部分です。
[ ] の中に変更するスイッチIDを書きます。
b.index() は 攻撃を受けたエネミーが、敵グループの何番目に登録されているのかを取得します。
m は 変身イベント発動用のスイッチの先頭の番号に変換して下さい。
item.damage.elementId === n となっている部分は、
使用されたアイテム・スキルのダメージに設定された属性が 属性ID n 番の属性であるかどうか、
という条件式です。
n は調べたい属性のIDに変換してください。
(item.damage.elementId === -1 && a.attackElements().contains(n)) という部分の、
Item.damage.elemenId === -1 は、
スキル・アイテムのダメージの属性が通常攻撃であるかどうか
という条件式です。
a.attackElements.contains(n) は、
スキルの使用者の攻撃属性に属性ID n 番の属性が含まれるかどうか、
という条件式です。
n は調べたい属性のIDに変換してください。
2つを 'かつ' を表す '&&' という記号でつないでいるので、
使用されたアイテム・スキルの属性が通常攻撃、かつ、スキルの使用者の攻撃属性に属性ID n 番が含まれるかどうか、
という条件式になります。
更に、
1つ目の条件式と、2つ目の条件式を 'または' を表す ' || ' という記号でつないでいるので、
上で示した、被ダメージ時に実行する内容は、
使用されたアイテム・スキルのダメージ属性が ID n 番 もしくは スキル使用者の攻撃属性にID n 番が含まれるか、
という条件を判定し、その結果をスイッチID b.index() + m 番に代入する。
という内容になります。
上記ができたら、
条件をイベント発動用のスイッチ、スパンをバトルに設定したバトルイベント、
敵キャラが変身するイベントを作成してください。
以下は、
変数ID 1 ~ 8 を変身イベント用のスイッチとして確保している状態で、
スイッチID 1 が ON になった時のバトルイベントの設定例です。
(条件をスイッチにのみチェックを入れ ID 0001を指定、スパンをバトルにしたイベントです)
コード: 全て選択
◆文章:なし, ウィンドウ, 下
: :火属性の攻撃を受けて、
: :ゾンビはスケルトンに変身した!
◆敵キャラの変身:#1 ゾンビ, スケルトン
◆スイッチの操作:#0001 = OFF
◆ウェイト:30フレーム
以上で、質問にある挙動が実現できるのではないかなと思います。
ご確認ください。
Re: ダメージを与えるスキル内容によって敵が変身する方法について
ecf5DTTzl6h6lJj02様
詳細な説明を記載いただき誠にありがとうございます。
こちらのやり方をまず試させていただきます(プラグイン設定の説明で難しい箇所がありましたらまた確認させて頂ければと思います)
つきましては、一旦こちらは解決済みとさせていただきます。
よろしくお願いいたします。
詳細な説明を記載いただき誠にありがとうございます。
こちらのやり方をまず試させていただきます(プラグイン設定の説明で難しい箇所がありましたらまた確認させて頂ければと思います)
つきましては、一旦こちらは解決済みとさせていただきます。
よろしくお願いいたします。