【解決済み】使用したスキルのIDを取得する方法
-
- 記事: 9
- 登録日時: 2019年3月31日(日) 03:16
【解決済み】使用したスキルのIDを取得する方法
こんばんは。
前から、プレイヤーや敵が使用したスキルのIDを取得しようと模索していたのですが
どうも私の力だけでは解決できそうになく質問させていただきました。
viewtopic.php?t=1687
こちらのトピックにプラグインによる解決法、スプリクトによる解決法の2つが提示されていましたが
プラグインを使用し、敵が使用したスキルIDを取得しようとすると
window.isDevToolsOpen is not a function
というエラーが起きてしまいます。
そのため、同トピックに投稿されていたスプリクトの
var skill = $gameParty.inBattle() ? BattleManager._subject.lastBattleSkill() : $gameParty.menuActor().lastMenuSkill();
if (skill) {
$gameVariables.setValue(20,skill.mpCost); //変数20番にセット
}
3行目の.mpcostを.idに変えて試してみましたが今度は
BattleManager._subjectlastBattleSkill is not a function
というエラーになってしまいました。
新規プロジェクトでも発生した現象ですのでプラグインの競合ではないと思います。
プラグイン、スプリクトを使用した際に発生したエラーのコンソール画面を添付いたします。
1つ目の画像がスプリクト使用時、2つ目の画像がプラグイン使用時です。
javaスプリクトについては全くの素人なので、私には何が原因なのか特定することができませんでした。
どうかご存知の方がいらっしゃいましたらご助力いただけると幸いです。
よろしくおねがいいたします。
前から、プレイヤーや敵が使用したスキルのIDを取得しようと模索していたのですが
どうも私の力だけでは解決できそうになく質問させていただきました。
viewtopic.php?t=1687
こちらのトピックにプラグインによる解決法、スプリクトによる解決法の2つが提示されていましたが
プラグインを使用し、敵が使用したスキルIDを取得しようとすると
window.isDevToolsOpen is not a function
というエラーが起きてしまいます。
そのため、同トピックに投稿されていたスプリクトの
var skill = $gameParty.inBattle() ? BattleManager._subject.lastBattleSkill() : $gameParty.menuActor().lastMenuSkill();
if (skill) {
$gameVariables.setValue(20,skill.mpCost); //変数20番にセット
}
3行目の.mpcostを.idに変えて試してみましたが今度は
BattleManager._subjectlastBattleSkill is not a function
というエラーになってしまいました。
新規プロジェクトでも発生した現象ですのでプラグインの競合ではないと思います。
プラグイン、スプリクトを使用した際に発生したエラーのコンソール画面を添付いたします。
1つ目の画像がスプリクト使用時、2つ目の画像がプラグイン使用時です。
javaスプリクトについては全くの素人なので、私には何が原因なのか特定することができませんでした。
どうかご存知の方がいらっしゃいましたらご助力いただけると幸いです。
よろしくおねがいいたします。
- 添付ファイル
-
- Developer.png (31.43 KiB) 閲覧された回数 9760 回
-
- Dev.png (31.34 KiB) 閲覧された回数 9760 回
最後に編集したユーザー yukkukomei [ 2019年4月06日(土) 22:53 ], 累計 1 回
Re: 使用したスキルのIDを取得する方法
こんにちわ。
とりあえずプラグインの該当エラーのみ修正してみました。 しかし、ここでエラーがでるということはプラグインコマンド実行でのエラーが発端となっています。
またエラーになりましたらお知らせください。
とりあえずプラグインの該当エラーのみ修正してみました。 しかし、ここでエラーがでるということはプラグインコマンド実行でのエラーが発端となっています。
またエラーになりましたらお知らせください。
--------------------------------------------------------------------------------------------------------------
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
-
- 記事: 9
- 登録日時: 2019年3月31日(日) 03:16
Re: 使用したスキルのIDを取得する方法
返信ありがとうございます。
プラグインを修正していただいた結果エラーで止まることはなくなりましたが
敵の行動、味方の行動1回づつエラーが発生しておりスキルIDは反映されませんでした。
またコンソール画面を添付いたします。
よろしくお願いいたします。
プラグインを修正していただいた結果エラーで止まることはなくなりましたが
敵の行動、味方の行動1回づつエラーが発生しておりスキルIDは反映されませんでした。
またコンソール画面を添付いたします。
よろしくお願いいたします。
Re: 使用したスキルのIDを取得する方法
こんばんわ、コンソール画像の添付ありがとうございます。
こちらの環境だと以下のようにスキルとコモンの設定をして、
バトル中にスキルを使用すると指定した変数にスキルIDが代入されています。 そちらではどのようにプラグインコマンドの呼び出しを行っていますでしょうか?
こちらの環境だと以下のようにスキルとコモンの設定をして、
バトル中にスキルを使用すると指定した変数にスキルIDが代入されています。 そちらではどのようにプラグインコマンドの呼び出しを行っていますでしょうか?
--------------------------------------------------------------------------------------------------------------
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
-
- 記事: 9
- 登録日時: 2019年3月31日(日) 03:16
Re: 使用したスキルのIDを取得する方法
こんばんは。返信ありがとうございます。
私も同じ方法でプラグインコマンドを呼び出していました。
なのでいくつか検証してみたところ、おそらくですがエラーが出る2つの原因を特定しました。
1つ目はスキルID1や2の攻撃や防御など、コマンドから発動するスキルからコモンイベントを呼び出そうとすると発生しました。
エラーの種類はすべて TypeError: Cannot read property 'id' of null でした。
2つ目はコモンイベントを設定したスキルを敵が使用するとスキルIDに関わらず発生しました。
エラーの種類はすべて TypeError: BattleManaer._subject.lastBattleSkill is not a function でした。
私はスキルID1の攻撃スキルにコモンイベントを設定していた為2つのエラーが同時に表示されたようです。
そちらの環境でも再現できますでしょうか?
改めてよろしくお願いいたします。
私も同じ方法でプラグインコマンドを呼び出していました。
なのでいくつか検証してみたところ、おそらくですがエラーが出る2つの原因を特定しました。
1つ目はスキルID1や2の攻撃や防御など、コマンドから発動するスキルからコモンイベントを呼び出そうとすると発生しました。
エラーの種類はすべて TypeError: Cannot read property 'id' of null でした。
2つ目はコモンイベントを設定したスキルを敵が使用するとスキルIDに関わらず発生しました。
エラーの種類はすべて TypeError: BattleManaer._subject.lastBattleSkill is not a function でした。
私はスキルID1の攻撃スキルにコモンイベントを設定していた為2つのエラーが同時に表示されたようです。
そちらの環境でも再現できますでしょうか?
改めてよろしくお願いいたします。
Re: 使用したスキルのIDを取得する方法
こんばんわ。
こちらでも同様の現象が発生するか確認してみました。
1つ目については確認できませんでしたが、2つ目については確認できました。
プラグインの仕様として、このプラグインコマンドは味方が使用したスキルでのみ正しく取得することができます。
(元のスレッドに「プレイヤーが使ったスキルID」という前提がありましたね)
なので、取り急ぎエネミーがスキルを使用した際にも変数にスキルIDが代入されるよう修正してみました。
こちらでも同様の現象が発生するか確認してみました。
1つ目については確認できませんでしたが、2つ目については確認できました。
プラグインの仕様として、このプラグインコマンドは味方が使用したスキルでのみ正しく取得することができます。
(元のスレッドに「プレイヤーが使ったスキルID」という前提がありましたね)
なので、取り急ぎエネミーがスキルを使用した際にも変数にスキルIDが代入されるよう修正してみました。
--------------------------------------------------------------------------------------------------------------
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
-
- 記事: 9
- 登録日時: 2019年3月31日(日) 03:16
Re: 使用したスキルのIDを取得する方法
こんにちは。修正ありがとうございます。
敵が使用したスキルは正しく変数に格納されました。
ただ、変わらずコマンドからスキルを使用すると Cannot read property 'id' of null が起きます。
これはスキルID1を"攻撃"から"ファイア"に変えても変わらず起こりました。
ツクールはSteam版、バージョンは最新です。
データベースの設定とコンソール画面を添付いたします。
新規プロジェクトを作成し、デフォルトのこうもり×2を相手に戦闘テストを行いました。
この通りに設定していただいても再現できないでしょうか?
何度も申し訳ありませんが、改めてよろしくおねがいいたします。
敵が使用したスキルは正しく変数に格納されました。
ただ、変わらずコマンドからスキルを使用すると Cannot read property 'id' of null が起きます。
これはスキルID1を"攻撃"から"ファイア"に変えても変わらず起こりました。
ツクールはSteam版、バージョンは最新です。
データベースの設定とコンソール画面を添付いたします。
新規プロジェクトを作成し、デフォルトのこうもり×2を相手に戦闘テストを行いました。
この通りに設定していただいても再現できないでしょうか?
何度も申し訳ありませんが、改めてよろしくおねがいいたします。
Re: 使用したスキルのIDを取得する方法
yukkukomei様
TkoolMV_PluginCommandBook.jsと
以下のトピックに貼ってあるプラグインを同時に導入することで
一部条件で選択したスキルを取得できないというトピック中の不具合がなくなると思います。
追記:プラグインの機能自体は単体でも動きますが変数代入のため。
viewtopic.php?f=5&p=27776#p27776
setLastBattleSkillはデフォルトでは戦闘中のスキルウインドウのスキル選択の際のみに
呼び出される使用のため、それ以外でのスキル選択に対応させる必要があるためです。
TkoolMV_PluginCommandBook.jsと
以下のトピックに貼ってあるプラグインを同時に導入することで
一部条件で選択したスキルを取得できないというトピック中の不具合がなくなると思います。
追記:プラグインの機能自体は単体でも動きますが変数代入のため。
viewtopic.php?f=5&p=27776#p27776
setLastBattleSkillはデフォルトでは戦闘中のスキルウインドウのスキル選択の際のみに
呼び出される使用のため、それ以外でのスキル選択に対応させる必要があるためです。
RPGで笑顔を・・・
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup
github
https://github.com/mattuup/RPGMakerMZ
-
- 記事: 9
- 登録日時: 2019年3月31日(日) 03:16
Re: 使用したスキルのIDを取得する方法
返信ありがとうございます。
そちらのプラグインを一緒に導入し、希望通りの動作ができました!
お二方ともありがとうございます!
そちらのプラグインを一緒に導入し、希望通りの動作ができました!
お二方ともありがとうございます!
Re: 【解決済み】使用したスキルのIDを取得する方法
まっつUP さん >
フォローありがとうございます。助かりました。
yukkukomei さん >
無事に解決されたようでなによりです。
コンソール画面を見ると余計なログが出ていましたので一応修正しました。
フォローありがとうございます。助かりました。
yukkukomei さん >
無事に解決されたようでなによりです。
コンソール画面を見ると余計なログが出ていましたので一応修正しました。
--------------------------------------------------------------------------------------------------------------
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--
[Twitter] https://twitter.com/mankind_games/
[GitHub] https://github.com/mankindGames/
[Blog] http://mankind-games.blogspot.jp/
--ゲーム作るよりシステム作って満足しちゃう人--