[解決済み]MAP上のイベントと、他のイベントの連動挙動

アバター
レティラナティス
記事: 66
登録日時: 2016年6月08日(水) 09:19
お住まい: すぎのこ村

[解決済み]MAP上のイベントと、他のイベントの連動挙動

投稿記事by レティラナティス » 2016年9月27日(火) 01:31

Aというイベントの向いている方向(正面)に複数のイベントを連結して表示したく、数十時間格闘しているのですが、上手くできません。(イベントが進行してきた跡なら簡単なのですが……。)

○やりたい事
イベントAの正面にイベントB.C.Dを配置し、プレイヤーのアクターがB.C.Dと重なると、移動速度が半減する実行内容を、『イベントからの接触』トリガーで実行させたい。
※プレイヤーのアクターと重ねるため、B.C.Dのプライオリティは『通常キャラの下』or『通常キャラの上』


○試みた例.1 Aの座標にB.C.Dを転送し、そこからAの向いている方向に移動させる。

01.『変数の操作』にて、AのX軸Y軸をそれぞれ格納
02.『イベントの位置設定』で、01で格納した座標にB.C.Dを転送
03.『条件分岐』にて、『Aの向いている方向』にB.C.Dを、『移動ルートの設定』で直接移動させる。
04.ウェイトで座標の変数を再取得するまでのクールタイムを設け、再度01に戻る。

結果……再度座標を取得し、B.C.Dが『転送されて座標へ移動』を繰り返すので、B.C.Dに画像をつけた際に荒ぶる。加えてプライオリティが『通常キャラの下』だと、移動が完了した後のB.C.Dを踏んだ場合は実行内容(移動速度半減)が発動するが、プレイヤーのアクターが既に存在している状態でB.C.Dが移動して重なった場合、実行内容が発動しない。
※Dのプライオリティを『通常のキャラと同じ』にすると、プレイヤーのアクターに接触した時点で内容が実行されるが、その場合画像がアクターに接触した時点で停止する上、Dが停止したセルに移動不能となる。(この移動不能セル化自体は、スイッチ1つを噛ませれば迂回回避できますが、再度座標を取得する際に実行内容の挙動がごっちゃになる場合があります)


○試みた例.2 B.C.D用の変数を用意し、Aの座標を代入した後に加算や減算をして、B.C.Dを指定座標に直接転送する。

01.『変数の操作』にて、AのX軸Y軸をそれぞれ格納
02.『変数の操作』にて、B.C.D用の変数にAの変数を代入する。
03.『条件分岐』にて、『Aが向いている方向』に対してB.C.Dの変数に+1や-1をする。
※例:Aが左を向いている場合、『変数:BのX軸』に-1、『変数:CのX軸』に-2
04.『イベントの位置設定』で、03で処理した座標にB.C.Dを転送する。

結果……指定座標に直接飛ばすため、B.C.Dが障害物や壁を貫通してしまう。そしてプライオリティの問題以前に、指定座標に既にプレイヤーのアクターが存在していた場合、イベントの実行内容が発動しない。


○試みた例.3 必要になるイベント数が肥大化するが、上記二つの例を融合させる。
A.B.C.Dの他にE.F.Gを用意し、こちらに実行内容を格納

01.『変数の操作』にて、AのX軸Y軸をそれぞれ格納
02.『イベントの位置設定』で、B.C.Dを01で格納した座標に転送
03.『条件分岐』にて、『Aの向いている方向』にB.C.Dを直接移動させる。
04.移動完了したB.C.Dの座標を、新たに用意した変数で取得して、『イベントの位置設定』でE.F.Gを、その新たに取得した変数の座標に転送する。
05.ウェイトで座標の変数を再取得するまでのクールタイムを設け、再度01に戻る。

結果……E.F.GがB.C.Dが存在する座標ではなく、なぜかAの座標に転送された。さらに例2同様、転送座標に既にアクターが存在していた場合、実行内容は発動しない。

__________

●以上の結果を踏まえ、解決したい問題

例1は、トリガー『通常キャラの下』では、既にプレイヤーのアクターが存在していた場合、重なっても発動しない。
さらに、Aが方向転換した際に、B.C.DがAの向いてない方向の座標に数フレーム残る。(これはB.C.Dを転送した後、直接移動させるというプロセスで数フレームを使用する為、4倍で移動させてもウェイトでクールタイムを設けないと、目的の座標に移動する前に01に戻って、再転送をされてしまう故です)

例2は、Aの正面に表示したいイベントが壁や障害物を貫通し、さらに指定座標に既にプレイヤーのアクターが存在していた場合は、イベントの実行内容が発動しない。


この例1と例2、どちらかで良いので問題を解決する方法をご存知の方がいらっしゃりましたら、ご教授をお願いします。
最後に編集したユーザー レティラナティス on 2016年10月05日(水) 23:12 [ 編集 1 回目 ]

アバター
ネコタ
記事: 173
登録日時: 2016年7月10日(日) 18:35
連絡を取る:

Re: MAP上のイベントと、他のイベントの連動挙動

投稿記事by ネコタ » 2016年9月30日(金) 23:46

こんばんは。

挙動内容としては、こういうことでよろしいでしょうか?

画像

・自立移動するイベントAの目の前に、常に3連結した火の玉が出現します。
・移動できないタイルの上には火の玉が表示されず、それよりも先には火の玉が表示されない。


画像

・連結された火の玉の上にアクターがいる場合、火の玉に書かれたイベント内容を実行する。
(今回の画像では、文章表示「OK」を表示させています)
猫民のんたんのアトリエ
http://nekotaminontan.blog.fc2.com/
アバター
レティラナティス
記事: 66
登録日時: 2016年6月08日(水) 09:19
お住まい: すぎのこ村

Re: MAP上のイベントと、他のイベントの連動挙動

投稿記事by レティラナティス » 2016年10月02日(日) 00:23

はい、そのとおりです。
アバター
ネコタ
記事: 173
登録日時: 2016年7月10日(日) 18:35
連絡を取る:

Re: MAP上のイベントと、他のイベントの連動挙動

投稿記事by ネコタ » 2016年10月02日(日) 07:46

サンプルとして、イベントの実行内容を添付しました。
参考にしてみてください。

【概要】
イベントX(EV001)には他のイベントABC(EV002,003,004)の挙動を記述し、イベントABCには並列処理でプレイヤーと位置が同じ場合に動くようにしています。この処理であれば、イベントからでもプレイヤーからでも接触時(マップ上の位置が重なったとき)にイベントが動きますが、「イベントからの接触」ではないので、もしかしたらご希望通りではないかもしれません。



<イベントX>
プライオリティ:通常キャラと同じ
トリガー:並列処理

<イベントXの実行内容>
◆注釈:常に3連結の火の玉を表示させるパターンです。
◆ループ
◆変数の操作:#0006 イベントの位置X = このイベントのマップX
◆変数の操作:#0007 イベントの位置Y = このイベントのマップY
◆条件分岐:このイベントが下を向いている
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが右を向いている
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが上を向いている
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが左を向いている
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆ラベル:処理終了
◆ウェイト:1フレーム

:以上繰り返し


※内容に「地形タグ取得」を入れていますが、例では、地形タグが「1」の座標には移動できないように処理しています。移動不可の箇所を地形タグ「1」にすれば、そこには移動されなくなります。



<イベントA>
出現条件:スイッチA(任意)
オプション:足踏みアニメ
プライオリティ:通常キャラの下
トリガー:並列処理

<イベントAの実行内容>
◆変数の操作:#0004 プレイヤーの位置X = プレイヤーのマップX
◆変数の操作:#0005 プレイヤーの位置Y = プレイヤーのマップY
◆変数の操作:#0148 Aの位置X = このイベントのマップX
◆変数の操作:#0149 Aの位置Y = このイベントのマップY
◆条件分岐:Aの位置X = プレイヤーの位置X
◆条件分岐:Aの位置Y = プレイヤーの位置Y
◆注釈:ここに仕様を書き込みます。
:  :▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
◆画面のフラッシュ:(255,51,51,170), 5フレーム
◆SEの演奏:Attack2 (90, 100, 0)
◆HPの増減:パーティ全体, - 5
◆ウェイト:5フレーム
◆注釈:▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

:分岐終了

:分岐終了


※例では、仕様を「接触時にダメージ処理」としています。注釈で囲った部分の中身を変更すれば、お好みの「接触時イベント」が作成できます。イベントB・Cは、これをコピペ複製して、出現条件のスイッチと、格納する変数を変えればOKです。
猫民のんたんのアトリエ
http://nekotaminontan.blog.fc2.com/
アバター
ネコタ
記事: 173
登録日時: 2016年7月10日(日) 18:35
連絡を取る:

Re: MAP上のイベントと、他のイベントの連動挙動

投稿記事by ネコタ » 2016年10月02日(日) 07:52

ついでに、試行1のようにイベントXから火の玉(任意の画像を付けたイベント)がせり出してくるようなパターンも作成しました。表現したい方を利用してください。


<イベントX>
自立移動タイプ:固定
プライオリティ:通常キャラと同じ
トリガー:並列処理

<イベントXの実行内容>
◆注釈:火の玉が固定砲台からせり出してくるパターンです。
◆ループ
◆変数の操作:#0006 イベントの位置X = このイベントのマップX
◆変数の操作:#0007 イベントの位置Y = このイベントのマップY
◆条件分岐:このイベントが下を向いている
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 下)
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV002 (飛ばす)
:        :◇一歩前進
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV003 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV004 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが右を向いている
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 右)
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV002 (飛ばす)
:        :◇一歩前進
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV003 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X += 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV004 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが上を向いている
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 上)
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV002 (飛ばす)
:        :◇一歩前進
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV003 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0007 イベントの位置Y -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV004 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆条件分岐:このイベントが左を向いている
◆イベントの位置設定:EV002, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆イベントの位置設定:EV003, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆イベントの位置設定:EV004, ({イベントの位置X},{イベントの位置Y}) (向き: 左)
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0074 A = OFF
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV002 (飛ばす)
:        :◇一歩前進
◆スイッチの操作:#0074 A = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0075 B = OFF
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV003 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0075 B = ON

:分岐終了
◆変数の操作:#0006 イベントの位置X -= 1
◆指定位置の情報取得:地形タグ, 地形タグ, ({イベントの位置X},{イベントの位置Y})
◆条件分岐:地形タグ = 1
◆スイッチの操作:#0076 C = OFF
◆ラベルジャンプ:処理終了

:それ以外のとき
◆移動ルートの設定:EV004 (飛ばす)
:        :◇一歩前進
:        :◇一歩前進
:        :◇一歩前進
◆スイッチの操作:#0076 C = ON

:分岐終了

:分岐終了
◆ラベル:処理終了
◆ウェイト:120フレーム

:以上繰り返し
猫民のんたんのアトリエ
http://nekotaminontan.blog.fc2.com/
アバター
レティラナティス
記事: 66
登録日時: 2016年6月08日(水) 09:19
お住まい: すぎのこ村

Re: MAP上のイベントと、他のイベントの連動挙動

投稿記事by レティラナティス » 2016年10月05日(水) 23:11

ネコタ様、返信がありがとうございます。
ここ数日画像を弄る時間も取れないくらい忙しく、反応が送れて申し訳ありません。

なるほど、地形タグで出現位置の制御、そして座標が重なった時に発動ですか……できるだけ単純構造に、を意識していたので気づきませんでした。ただ、最初の処理の段階や、ジャンプでイベントAを飛び越えた場合、前方に壁(地形タグの移動不能判定)があると、画像のように処理不足になるようです。

ネコタ様のアトリエも拝見しつつ、その点に気をつけて配置しようと思います。
添付ファイル
飛び越えた.png
飛び越えた.png (51.01 KiB) 閲覧数: 3584 回
アバター
ネコタ
記事: 173
登録日時: 2016年7月10日(日) 18:35
連絡を取る:

Re: [解決済み]MAP上のイベントと、他のイベントの連動挙動

投稿記事by ネコタ » 2016年10月06日(木) 13:56

こんにちは。

ジャンプでの処理も試してみましたが、予想通りの結果でした。


★光を持ってるキャラ(イベント、プレイヤー)がジャンプ処理を開始する前に、3連光イベントの移動処理が行われた場合:

3連光イベントがその場に残され、ジャンプ処理が行われた後、光が移動。


★光を持ってるキャラ(イベント、プレイヤー)がジャンプを開始した後に、3連光イベントの移動処理が行われた場合:

3連光イベントが着地点に移動した後に、プレイヤーが着地点に到着する。


★どちらも同時進行で行う場合:
結果的には、着地点の位置に3連光が移動する。見かけの移動順は、ウエイトタイムの短い方が先に移動する。



次に、プレイヤーがジャンプ(yepのスマートジャンププラグイン)で3連光に乗った場合ですが、着地点によって処理が行われるようです。見かけ上はまだジャンプ中でも、ジャンプ処理を開始した瞬間にはプレイヤーが着地点に居ることになるようですね。


光も一緒にジャンプさせたりする場合には、自立移動による処理ではなく、イベントの実行内容で同時にジャンプ処理をさせると、しっくりした動きになるかと思います。


3連光イベントは、1ページのみで管理し、出現条件をスイッチにする事で、スイッチと同時に画像と処理が開始されるようになります。(デフォルトでは、処理も画像も無い状態となります)
猫民のんたんのアトリエ
http://nekotaminontan.blog.fc2.com/

“MV:質問” へ戻る