ページ 11

ウェイトできない(プラグイン)

Posted: 2020年8月24日(月) 19:40
by すこし
プラグインの作り方について教えてください
コモンから関数を呼び出して、ウェイトを含む色んな処理をしたいのですが、ウェイトを入れるとエラーが出てしまいます
ウェイト以外の他のスクリプト($gameMessage.add("表示する文章")など)他の処理はきちんと動作しています


(function() {
Test_desu = function() {
this.wait(60);
}
})();

というtest.jsを作り、プラグイン管理のところから入れました
スクリプトでTest_desu();と入れると、
「this.wait is not a function」というエラーが出てしまいます
Test_desu();の直後にコマンドやスクリプトででウェイトを入れても動くので、コモンでのウェイトは問題ないです

プラグインの作り方やjavascriptは初心者で、探り探りやっています
作り方が間違っているかもしれません……
よろしくお願いします

Re: ウェイトできない(プラグイン)

Posted: 2020年8月24日(月) 21:31
by Plasma Dark
本来、プラグインを書くためにはjsの知識はもちろん、RPGツクールMV本体のコードやリファレンスを読んで理解しておく必要があります。

1. this とはいったい何者か

https://developer.mozilla.org/ja/docs/W ... ators/this

提示頂いたコードはstrictモードではないので、グローバルオブジェクトになってしまいますね。

2. イベントコマンドのウェイトを実行したときに呼び出されるコードはどこに書かれているか

rpg_object.js 内の Game_Interpreter クラスに、イベントコマンドの処理がまとまっています。
メソッド名は残念ですが、それぞれのメソッドにコメントで何の処理が書かれているか明示されているのですぐに見つかるかと思います。

そして、ここまで書いておいて何ですが、やりたいことは本当にプラグインやイベントコマンドのスクリプトで実現する必要があるかどうかもご検討ください。
イベントコマンドのウェイトで対応できるなら、スクリプトを書く必要は全くありません。

Re: ウェイトできない(プラグイン)

Posted: 2020年8月25日(火) 10:26
by すこし
すみませんでした・・・