イベントをプレイヤーの隣まで近付けてから別の処理を入れたい
Posted: 2021年9月10日(金) 01:08
「移動ルートの設定」でキャラAをプレイヤーの隣まで近付けた後、セルフスイッチをONにしてキャラAのイベントページを変更する処理をしたいのですが、キャラAがプレイヤーに近付いてる途中にセルフスイッチがONになってしまい別のイベントページが出現してしまいます
実現したい処理は以下の通りです
(1)キャラAは最初はランダム移動(キャラAがイベントページ1の状態である)
(2)プレイヤーが特定の位置(=イベント)に重なると、スイッチ[キャラAが近付いてくる]がONになり、それをトリガーとしてキャラAがイベントページ2の状態になり、キャラAがプレイヤーに近付く
(3)キャラAがプレイヤーの隣に辿り着いた後、キャラAのセルフスイッチAがONになりイベントページ3の状態になる
(4)イベントページ3の状態では、決定キーで話しかけるとキャラAがジャンプする
それに対して現状は、(2)の近付いてくる所まではちゃんと処理できているのですが、ここで「セルフスイッチA
をONにする」処理を入れるとキャラAがプレイヤーの隣に辿り着く前にキャラAのセルフスイッチAがONになってしまいキャラAがイベントページ3の状態になり、(イベントページ3では自律移動タイプが固定のため)移動が止まります
キャラAのイベントページ2の処理は以下のようにしています
◆条件分岐:スイッチ[0001:キャラAが近付いてくる]==ON
◆移動ルートの設定:このイベント
: :◇プレイヤーに近付く
: :◇プレイヤーの方を向く
◆セルフスイッチの操作:A=ON
◆
:分岐終了
◆
ですがこの処理だと、移動ルートの処理がすっ飛ばされて(実際には1フレーム単位で処理されているのでしょうけど)いきなりセルフスイッチAがONになってイベントページ3に変更されてしまいます
「セルフスイッチAのON」を置く場所が悪いのでしょうか
それともそれ以外に正しい方法があるのでしょうか
【ここから別の問題(これも困ってるので分かる方は是非回答お願いします)】
上記の処理から「セルフスイッチAをONにする」の項目を一旦外してキャラAがちゃんとプレイヤーの隣に近付く処理にした場合、どうも処理が繰り返し行われているようで、プレイヤーが上記の特定の位置(=イベント)から離れてスイッチ[キャラAが近付いてくる]をOFFにしてからもしばらく「近付いてくる」処理が行われてしまいます
(つまり特定の位置から離れた瞬間についてこないようにしたいのに、なぜか離れてからもしばらく付いて来ようとする。特定の位置から離れた時点で近付いてくる用のスイッチはちゃんとOFFになっているにも関わらず)
並列処理にしているのが原因かと思って自動実行にしたら今度はプレイヤーが動けなくなりますし、どうしたらいいか分かりません(自動実行も周期的に行われるとの事なので多分これも見当違いですが)
実現したい処理は以下の通りです
(1)キャラAは最初はランダム移動(キャラAがイベントページ1の状態である)
(2)プレイヤーが特定の位置(=イベント)に重なると、スイッチ[キャラAが近付いてくる]がONになり、それをトリガーとしてキャラAがイベントページ2の状態になり、キャラAがプレイヤーに近付く
(3)キャラAがプレイヤーの隣に辿り着いた後、キャラAのセルフスイッチAがONになりイベントページ3の状態になる
(4)イベントページ3の状態では、決定キーで話しかけるとキャラAがジャンプする
それに対して現状は、(2)の近付いてくる所まではちゃんと処理できているのですが、ここで「セルフスイッチA
をONにする」処理を入れるとキャラAがプレイヤーの隣に辿り着く前にキャラAのセルフスイッチAがONになってしまいキャラAがイベントページ3の状態になり、(イベントページ3では自律移動タイプが固定のため)移動が止まります
キャラAのイベントページ2の処理は以下のようにしています
◆条件分岐:スイッチ[0001:キャラAが近付いてくる]==ON
◆移動ルートの設定:このイベント
: :◇プレイヤーに近付く
: :◇プレイヤーの方を向く
◆セルフスイッチの操作:A=ON
◆
:分岐終了
◆
ですがこの処理だと、移動ルートの処理がすっ飛ばされて(実際には1フレーム単位で処理されているのでしょうけど)いきなりセルフスイッチAがONになってイベントページ3に変更されてしまいます
「セルフスイッチAのON」を置く場所が悪いのでしょうか
それともそれ以外に正しい方法があるのでしょうか
【ここから別の問題(これも困ってるので分かる方は是非回答お願いします)】
上記の処理から「セルフスイッチAをONにする」の項目を一旦外してキャラAがちゃんとプレイヤーの隣に近付く処理にした場合、どうも処理が繰り返し行われているようで、プレイヤーが上記の特定の位置(=イベント)から離れてスイッチ[キャラAが近付いてくる]をOFFにしてからもしばらく「近付いてくる」処理が行われてしまいます
(つまり特定の位置から離れた瞬間についてこないようにしたいのに、なぜか離れてからもしばらく付いて来ようとする。特定の位置から離れた時点で近付いてくる用のスイッチはちゃんとOFFになっているにも関わらず)
並列処理にしているのが原因かと思って自動実行にしたら今度はプレイヤーが動けなくなりますし、どうしたらいいか分かりません(自動実行も周期的に行われるとの事なので多分これも見当違いですが)