【解決済み】移動を反転させる方法

モピョニオン
記事: 51
登録日時: 2017年11月16日(木) 18:50

【解決済み】移動を反転させる方法

投稿記事by モピョニオン » 2020年10月11日(日) 16:18

お世話になります。

右を押したら左、上を押したら下に行くなど、プレイヤーの移動を反転させるステージが作りたくて自分なりにいろいろ調べた結果、
https://tm.lucky-duet.com/viewtopic.php?t=4952#p17854

この記事に行き着きました。

----------------------------------------------------------------------
1ページ目 自動実行
スクリプト:
Input.keyMapper[37] = 'right'
Input.keyMapper[38] = 'down'
Input.keyMapper[39] = 'left'
Input.keyMapper[40] = 'up'
Input.gamepadMapper[12] = 'down'
Input.gamepadMapper[13] = 'up'
Input.gamepadMapper[14] = 'right'
Input.gamepadMapper[15] = 'left'
スイッチの操作:#0001 鏡の部屋操作 = ON

2ページ目
出現条件:スイッチ0001 鏡の部屋操作
イベント内容空っぽ
----------------------------------------------------------------------


しかしこの方法だと1つ問題があり、その解決方法がわからないので投稿させていただきました。
それはこのイベントが実行されている間、移動のキー(この場合矢印キー)を押しっぱなしにしていると
その方向に移動し続けてしまいます。

例えばマップが切り替わったら自動実行でこのイベントが行われるようにしている場合、
マップが切り替わった瞬間にキーボードから指を離せば問題ないですが、
矢印キーの↓を押しっぱなしにしていた場合は、その後なにもしなくてもアクターが
下に移動し続けてしまうんです。

なにか対処法がわかる方がいましたらよろしくお願いします。
もしくは、他に移動を左右上下反転させる方法がありましたらご教示ください。
最後に編集したユーザー モピョニオン on 2020年10月12日(月) 20:24 [ 編集 1 回目 ]

sally
記事: 119
登録日時: 2019年8月06日(火) 05:11

Re: 移動を反転させる方法

投稿記事by sally » 2020年10月11日(日) 23:42

マップイベントで条件:自動実行にし、イベント内容を

◆条件分岐:ボタン[下]が押されている
◆移動ルートの設定:プレイヤー (飛ばす, ウェイト)
:        :◇上に移動

:分岐終了
◆条件分岐:ボタン[左]が押されている
◆移動ルートの設定:プレイヤー (飛ばす, ウェイト)
:        :◇右に移動

:分岐終了
◆条件分岐:ボタン[右]が押されている
◆移動ルートの設定:プレイヤー (飛ばす, ウェイト)
:        :◇左に移動

:分岐終了
◆条件分岐:ボタン[上]が押されている
◆移動ルートの設定:プレイヤー (飛ばす, ウェイト)
:        :◇下に移動

:分岐終了

とすることで、場所移動後にボタンを押しっぱなしにしても、反転移動することを確認しました。

ですが、自動実行の場合はプレイヤー操作の一切が無効になるため、
イベントで設定しない限りメニューを開く、話しかけるなどの処理ができなくなります。

もしくはこちらはテストしていませんが、
マンカインド さんの
▼プレイヤー移動禁止プラグイン
https://raw.githubusercontent.com/manki ... eForbid.js

を併用して、上記移動の部分を並列処理で作れば、移動のみが反転するようになるかと思います。
モピョニオン
記事: 51
登録日時: 2017年11月16日(木) 18:50

Re: 移動を反転させる方法

投稿記事by モピョニオン » 2020年10月12日(月) 20:23

>sally様

ありがとうございます!
教えていただいたプラグインと組み合わせることで移動の反転を実現することができました。
歩行アニメを行わなくなるためイベント実行中は足踏みアニメをオンにしたり、
動きがカクついて少し不自然ですが他に方法もなさそうなので解決済みとさせて頂きます。

非常に助かりました。

“MV:質問” へ戻る