こんにちは。お世話になっております。
今回は戦闘中にアクターが変身スキルを使うと、別のアクターに変身する仕組みを作ろうとしたのですが、イベントでパーティーメンバーの入れ替えを行うとパーティーの並び順序が変わってしまい、イマイチ変身という感じが出せなく困っています。
パーティーの順番を保ったままn番目のアクターだけを入れ替えるということはできるでしょうか?ご教授お願いします。
【解決済み】アクターの入れ替え
【解決済み】アクターの入れ替え
最後に編集したユーザー yaiyai [ 2017年4月30日(日) 00:16 ], 累計 3 回
Re: アクターの入れ替え
こんにちは!
イベントコマンドのスクリプトから以下のように入力します。
「actorId」は新しく入れたいアクターのID
「index」はアクターの並び順です。(0が先頭)
また、マップ画面で同様のことを行いたい場合、追加で以下のコードが必要です。
イベントコマンドのスクリプトから以下のように入力します。
「actorId」は新しく入れたいアクターのID
「index」はアクターの並び順です。(0が先頭)
コード: 全て選択
var actorId = 6;
var index = 1;
if ($gameParty._actors.contains(actorId)) {
var oldIndex = $gameParty._actors.indexOf(actorId);
var oldActorId = $gameParty._actors[index];
$gameParty._actors[oldIndex] = oldActorId;
}
$gameParty._actors[index] = actorId;
コード: 全て選択
$gamePlayer.refresh();
$gameMap.requestRefresh();
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
Re: アクターの入れ替え
お早い返事ありがとうございます!大変助かりました。今後の製作に役立てます。
Re: アクターの入れ替え
何度もすみません。
スクリプトを試してみたのですが、前のアクターがステートにかかっていたり強化状態になっていた場合、効果はないのにアイコンだけがそのままウィンドウに残ってしまいます。これを解決するにはどうしたらよいでしょうか?
スクリプトを試してみたのですが、前のアクターがステートにかかっていたり強化状態になっていた場合、効果はないのにアイコンだけがそのままウィンドウに残ってしまいます。これを解決するにはどうしたらよいでしょうか?
Re: アクターの入れ替え
yaiyai様
お世話になります。
試していませんがスクリプトで
BattleManager.refreshStatus();
を実行するといくのでは?
お世話になります。
試していませんがスクリプトで
BattleManager.refreshStatus();
を実行するといくのでは?
RPGで笑顔を・・・
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
Re: アクターの入れ替え
こんにちは。
こちらで試してみたのですが、現象が再現できず入れ替え後にステートアイコンを含めてウィンドウの内容が更新されました。
何か別の条件があるか、他のプラグインとの競合かもしれません。
とはいえ、まっつUPさんの言うとおり以下のスクリプトでウィンドウを更新できるので
これでうまくと思います。
こちらで試してみたのですが、現象が再現できず入れ替え後にステートアイコンを含めてウィンドウの内容が更新されました。
何か別の条件があるか、他のプラグインとの競合かもしれません。
とはいえ、まっつUPさんの言うとおり以下のスクリプトでウィンドウを更新できるので
これでうまくと思います。
コード: 全て選択
BattleManager.refreshStatus();
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
Re: アクターの入れ替え
わざわざ確認までしていただきありがとうございます。
プラグインとの競合が原因だったのですが、教えていただいたスクリプトで解決しました。
それから別の話になってしまうのですが、入れ替えてからの戦闘のテンポを考えて、変身したターンから行動できるようにしようと
http://torigoya.hatenadiary.jp/entry/quick_skill_mv
こちらのプラグインを使わせていただこうと思ったのですが、
TypeError : Cannot read property 'setAttack' of undefined
TypeError : Cannot read property 'setSkill' of undefined
などのエラーが出てしまいます。
やはり、ターン開始時にセットできていないアクターを行動させることは難しいのでしょうか?
プラグインとの競合が原因だったのですが、教えていただいたスクリプトで解決しました。
それから別の話になってしまうのですが、入れ替えてからの戦闘のテンポを考えて、変身したターンから行動できるようにしようと
http://torigoya.hatenadiary.jp/entry/quick_skill_mv
こちらのプラグインを使わせていただこうと思ったのですが、
TypeError : Cannot read property 'setAttack' of undefined
TypeError : Cannot read property 'setSkill' of undefined
などのエラーが出てしまいます。
やはり、ターン開始時にセットできていないアクターを行動させることは難しいのでしょうか?
Re: アクターの入れ替え
なるほどです。競合等もあるので難しいですが、こちらの環境では元々のコードの一番下に以下のコードを追記したところ変身後のキャラクターで攻撃やスキルの使用ができました。
コード: 全て選択
$gameActors.actor(actorId).makeActions();
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30
[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
Re: アクターの入れ替え
何度も何度もありがとうございます。
おかげでまさに理想のものが出来上がりました。
また機会があればお願いいたします。
おかげでまさに理想のものが出来上がりました。
また機会があればお願いいたします。