【解決済】ループの回数スクリプトについて

たこやきボーイ
記事: 119
登録日時: 2017年3月13日(月) 09:29

【解決済】ループの回数スクリプトについて

投稿記事by たこやきボーイ » 2018年8月18日(土) 10:53

いつもお世話になっております。

ループ回数を決めるにはスクリプトをつかうのが良いと思い
調べていたのですが、
for(var i = 0; i <= 10; i++){
$gameMessage.add(i + "番目の繰り返し")
}
と書いてあり、なんとなく10回分繰り返されるんだなというのは理解しました。

しかし繰り返す内容の部分をスクリプトに記入することが出来ず
例えば下記のイベント内容を3回ループさせたい時にどのように記述
すればよいでしょうか?
ご教授よろしくお願いします。

★イベント実行内容★
ループ(3回実行したい)
変数1=乱数5~8
プラグインコマンド:チョメチョメ
ウェイト15
以上繰り返し
最後に編集したユーザー たこやきボーイ on 2018年8月19日(日) 00:41 [ 編集 1 回目 ]

アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: ループの回数スクリプトについて

投稿記事by しぐれん » 2018年8月18日(土) 11:44

wait挟むので無理ですね。
プラグインの処理の最中にwatiを挟む場合、forで回すことはできません。
現在、プラグイン依頼はお休み中です。
たこやきボーイ
記事: 119
登録日時: 2017年3月13日(月) 09:29

Re: ループの回数スクリプトについて

投稿記事by たこやきボーイ » 2018年8月18日(土) 11:56

しぐれんさん回答ありがとうございまっす!

ウェイトに壁があるとは知りませんでした・・・すみません。

ウェイトはそこまで重要ではなかったので、
もしウェイトなしで組める方法があれば教えて
いただけないでしょうか?
アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: ループの回数スクリプトについて

投稿記事by しぐれん » 2018年8月18日(土) 12:09

ウェイト無しであればこうですね。

コード: 全て選択

for(var i=0; i<8; ++i){
 this.pluginCommand("コマンドの名前",["引数1","引数2"]);
}



これでプラグインコマンドの関数を呼び出します。
おそらくこれで動くだろうという書き方ですので、テストはしていません。
現在、プラグイン依頼はお休み中です。
たこやきボーイ
記事: 119
登録日時: 2017年3月13日(月) 09:29

Re: ループの回数スクリプトについて

投稿記事by たこやきボーイ » 2018年8月18日(土) 13:13

しぐれんさん教えてくださってありがとうございます。

試してみたのですが
下記のように入してみたのですが
動かず、テストした瞬間エラーはでないですがが、画面が固まる状況で
タスクを閉じるでしか画面が閉じれない状況でした。
クォーテーションをシングルとダブルの両方ためしたけどやはり
同じ状況でした。どこにエラーがあるのだろうorz

実験1
for(var i=0; i<8; ++i){
this.pluginCommand("ERS_MAKE_TEMPLATE_RANDOM",['156','1','1','3','0','0']);
}
実験2
for(var i=0; i<8; ++i){
this.pluginCommand("ERS_MAKE_TEMPLATE_RANDOM",["156","1","1","3","0","0"]);
}

どちらも動かずでした。
プラグインはトリアコンタンさんのテンプレートプラグインのテンプレートマップにあるイベントを
イベント動的生成プラグインで呼び出すコマンドERS_MAKE_TEMPLATE_RANDOMです。
アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: ループの回数スクリプトについて

投稿記事by しぐれん » 2018年8月18日(土) 14:33

となるとプラグイン側の事情ですね。
やるとしたら、複数のモンスターを生成するコモンイベントを作って、それを呼び出す前に生成数を変数に入れる形がいいかもしれません。
現在、プラグイン依頼はお休み中です。
アバター
フトコロ
記事: 1029
登録日時: 2017年2月06日(月) 21:32

Re: ループの回数スクリプトについて

投稿記事by フトコロ » 2018年8月18日(土) 18:32

こんにちは。
スクリプトではないですが、こんな感じでループと条件分岐、ラベルジャンプを使って
イベントコマンドで組んでみてはどうでしょうかね。

コード: 全て選択

◆変数の操作:#0006 ループ回数 = 0
◆文章:なし, ウィンドウ, 下
:  :ループ開始するよ
◆ループ
  ◆条件分岐:ループ回数 ≥ 3
    ◆ラベルジャンプ:ループ終了
    ◆
  :分岐終了
  ◆注釈://この間に処理をいれる
  ◆文章:なし, ウィンドウ, 下
  :  :ループ\v[6]回目
  ◆ウェイト:60フレーム
  ◆文章:なし, ウィンドウ, 下
  :  :ウェイトもできるよ
  ◆変数の操作:#0006 ループ回数 += 1
  ◆
:以上繰り返し
◆ラベル:ループ終了
◆文章:なし, ウィンドウ, 下
:  :ループ終了したよ
---------------------------------------------------------------------------------------------------
プラグイン置き場(GitHub)
https://github.com/futokoro/RPGMaker/blob/master/README.md

検討中の内容は上記リンク先の「対応するかもしれないプラグインのメモ」を参照してください。
たこやきボーイ
記事: 119
登録日時: 2017年3月13日(月) 09:29

Re: ループの回数スクリプトについて

投稿記事by たこやきボーイ » 2018年8月19日(日) 00:40

しぐれんさんフトコロさん回答ありがとうございます。

フトコロさんのイベントでのループ回数を組める方法があるとは思いませんでした。
実際試してみたら回数分のループをすることが出来ました!

しかし、私の処理したい内容はどうやら難しいようです

変数1=乱数1から10
ERS_MAKE_TEMPLATE_RANDOM \V[1] 1 1 3 0 0

というテンプレートあるイベントを10個をランダムで呼ぶのですが、
呼び出しのタイムラグが発生しているのか、回数分発生しません。
実際入れたウェイトを無視したかのよなタイミングで(だいたい遅めのタイミング)で
イベントが呼び出されます。

のでちょっと別のイベントの組み方を考えようと思います。
ですがしぐれんさん、フトコロさん、回数制限ループの方法を教えていただきありがとうございました。
需要がおおそうなので他のイベントで使ってみたいと思います。

方法は理解できた為、問題は解決とさせていただきます。

“MV:質問” へ戻る