ページ 11

【解決】ループするマップでのイベント

Posted: 2017年11月13日(月) 01:46
by ミズオカ
横方向にスクロールするマップで3人の人物が歩きながら会話をする
というイベントを作りたいのですが、

「プレイヤー(繰り返す)
 移動速度3
 右に移動
 
 仲間A(繰り返す)
 右に移動

 仲間B(繰り返す)
 右に移動     」

というふうに、
アクターを先頭にして歩かせると後ろの仲間がミリ単位でじわじわ先頭に追いつき、
最終てきにアクターを追い越してしまいます。

どうにかなりませんでしょうか……。

Re: ループするマップでのイベント

Posted: 2017年11月13日(月) 04:17
by 佐伯緋文
普通キャラクターはミリ単位では移動しません。
それをミリ単位で移動、ということは、アナログムーブなど何かのプラグインで制御してませんか?
解決のためには、まず何のプラグインを使用しているのかわからないとどうにもなりません。

また、一応見当違いの回答かもしれませんがと前振りをした上で、以前アナログムーブを使っていて似たようなバグが出たことがある経験からお話させていただきますと、

私の場合
・画面上にあるイベントに画面移動やキャラクターの移動が引っかかる
・結果、画面移動が正常に動作しない&キャラクター移動が正常に動作しない
ということがあり、私はアナログムーブを放棄しました。

そこからの推測でしかありませんが、
・キャラクターの移動がドット単位で正常動作をしていない
・プレイヤ-はドット単位でズレがある正常でない動作をする
・残りのイベントはマス単位での正常な動作をする
・結果、移動距離にズレが生じて追い付き追い越す

ということが考えられます。
見当違いでしたら申し訳ありませんが、一度プラグインの動作を止めて検証してみることをお勧めします。

Re: ループするマップでのイベント

Posted: 2017年11月13日(月) 13:30
by ミズオカ
仰られた通り、プラグインを全てOFFにしてみましたが
解決しませんでした……。
もしかしたらそれ以外の要素が邪魔しているのでは、と思い
新規でゲームを作り、まっさらの状態でも試してみましたが、やはりダメです。

ルート設定自体が悪いのでしょうか……

Re: ループするマップでのイベント

Posted: 2017年11月13日(月) 13:36
by ミズオカ
というか今しがた発見したのですが、
アクターの「移動速度」を3にして「自動実行」を指示すると
なぜかアクターが動かない現象が起きてます(通常速度だと動きます)
プレイヤーが接触する設定にしないと動きません。
謎です………………

Re: ループするマップでのイベント

Posted: 2017年11月13日(月) 13:50
by ツミオ
こんにちは、ミズオカさん。
現象を確認しました。

これは自動実行中、プレイヤーに対して毎フレーム「移動ルートの設定でプレイヤーの速度を3に変更せよ」と命令しているために発生しているのではないかなと思いました。

したがって、例えば以下のようなイベントを組んでみてはいかがでしょうか。

【ページ1】
◆移動ルートの設定:プレイヤー (ウェイト)
:        :◇移動速度:3
◆セルフスイッチの操作:A = ON

【ページ2(セルフスイッチAをONが条件)】
◆移動ルートの設定:プレイヤー (繰り返す)
:        :◇右に移動
◆移動ルートの設定:Runner1 (繰り返す)
:        :◇右に移動
◆移動ルートの設定:Runner2 (繰り返す)
:        :◇右に移動

これでミリ単位でじわじわ追いつかれるという現象は発生しなくなりました。
ただ内部的な説明(毎フレーム~という話)は単なる僕の予想なので、間違っている可能性があることをご了承ください。

Re: ループするマップでのイベント

Posted: 2017年11月13日(月) 17:20
by ミズオカ
ありがとうございます!
ツミオさんの提示してくださったやり方で実行してみたところ、
見事、正確に動いてくれました!!
わかってみると案外単純なことだったんですね。
佐伯さんもご教授ありがとうございました!!