[プレイヤーの方を向く」の一部制限

ふゆねこ
記事: 24
登録日時: 2021年1月10日(日) 12:36

[プレイヤーの方を向く」の一部制限

投稿記事by ふゆねこ » 2021年3月12日(金) 23:14

移動ルートの、[プレイヤーの方を向く」は
上下左右に向いてくれますが、
上下への向き変更を禁止し、左右への向き変更のみを行う方法はありませんでしょうか?

ゆわか
記事: 295
登録日時: 2015年11月10日(火) 20:08
連絡を取る:

Re: [プレイヤーの方を向く」の一部制限

投稿記事by ゆわか » 2021年4月13日(火) 14:16

例えば、通常ではイベントとY軸の数値が違うと上下を向くのでこれを禁止するなら
向きを変えたいイベントがEV009だとして、プレイヤーとイベントのY座標が同一の時だけ
プレイヤーの方向を向くようにイベントを組みます。

---------------------------
◆変数の操作:#0001 プレイヤーのY座標 = プレイヤーのマップY
◆変数の操作:#0002 イベントのY座標 = EV009のマップY
◆条件分岐:プレイヤーのY座標 = イベントのY座標
◆移動ルートの設定:EV009
:        :◇プレイヤーの方を向く

:分岐終了
---------------------------

自立移動に似せたい場合は、移動を制御する別のイベントを作って並列処理にすると良いです。
別のイベントを使わず
自立移動のカスタムで行う場合は、移動コマンドの「スクリプト」を使います。

---------------------------
◇スクリプト:$gameVariables.setValue(1,$gamePlayer.y)
◇スクリプト:$gameVariables.setValue(2,$gameMap.event(9).y)
◇スクリプト:if($gameVariables.value(1) == $gameVariables.value(2)){$gameMap.event(9).turnTowardPlayer()}
---------------------------
(3番目のスクリプトは2行に分かれて見えるかもしれませんが、1行分です)

斜め右下にいる時も右を向いてほしいとかは、プレイヤーの方を向くを使わず
例えば、y座標を比べるのではなく、x座標を比べてイベントより右にいたら右を向く
ようにすればいいかなと思います。

---------------------------
◆変数の操作:#0001 プレイヤーのX座標 = プレイヤーのマップX
◆変数の操作:#0002 イベントのX座標 = EV009のマップX
◆条件分岐:プレイヤーのX座標 > イベントのX座標
◆移動ルートの設定:EV009
:        :◇右を向く

:分岐終了
◆条件分岐:プレイヤーのX座標 < イベントのX座標
◆移動ルートの設定:EV009
:        :◇左を向く

:分岐終了
---------------------------


スクリプトは以下の情報を参考にさせていただきました。
ありがとうございました。
・RPGツクールMZ スクリプトリファレンス
https://docs.google.com/spreadsheets/d/ ... =270496334
・RPGツクールVXAce & MV & MZスクリプトwikiとプラグイン
http://rpgmaker-script-wiki.xyz/index.php
ふゆねこ
記事: 24
登録日時: 2021年1月10日(日) 12:36

Re: [プレイヤーの方を向く」の一部制限

投稿記事by ふゆねこ » 2021年4月21日(水) 22:56

ありがとうございます!!
スクリプトまで描いていただいて…!!

これからやってみます!

“MV:質問” へ戻る