【解決済】プレイヤーから離れていく挙動(ピクセル単位の移動)について

返信する
ふじうさ
記事: 54
登録日時: 2023年9月23日(土) 16:27

【解決済】プレイヤーから離れていく挙動(ピクセル単位の移動)について

投稿記事 by ふじうさ »

こんばんは、ふじうさです。
昨日、別件で質問した際に、
下記スクリプトを入力すれば、イベントがプレイヤーに近寄ってくる旨、ご教示いただきました。

this.dotMoveToPlayer();

その逆で、プレイヤーから離れていくスクリプトもあるのでしょうか。
「プレイヤーから遠ざかる」でもよいのですが、1マスごとの移動になるので、
こう、なんといいますか、挙動がカクカクしちゃうんですね。
ピクセル単位でスムーズに移動させる方法を探しています。

引き続きご教示くだされば幸いです。
よろしくお願いいたします。
最後に編集したユーザー ふじうさ [ 2025年6月28日(土) 23:12 ], 累計 1 回
ecf5DTTzl6h6lJj02
記事: 752
登録日時: 2018年12月23日(日) 13:55

Re: プレイヤーから離れていく挙動(ピクセル単位の移動)について

投稿記事 by ecf5DTTzl6h6lJj02 »

こんにちは。
ふじうさ さんが書きました: 2025年6月25日(水) 23:27 こんばんは、ふじうさです。
昨日、別件で質問した際に、
下記スクリプトを入力すれば、イベントがプレイヤーに近寄ってくる旨、ご教示いただきました。

this.dotMoveToPlayer();

その逆で、プレイヤーから離れていくスクリプトもあるのでしょうか。
「プレイヤーから遠ざかる」でもよいのですが、1マスごとの移動になるので、
こう、なんといいますか、挙動がカクカクしちゃうんですね。
ピクセル単位でスムーズに移動させる方法を探しています。

引き続きご教示くだされば幸いです。
よろしくお願いいたします。
ドット移動で、プレイヤーから遠ざかる動きをするものは用意されていないので、
こちらで、その動きを作る必要があります。

移動ルートのスクリプトで直接やることもできますが、
入力欄が狭く、見辛くなってしまうのもあるので、
プラグインを編集して、プレイヤーから遠ざかる関数(メソッド)を定義しておいて、
その関数を使って、自律移動のルートを設定するようにしたほうがいいかなと思います。

プラグインを JavaScript を編集できるソフトで開き、
以下の編集を行ってください。
プラグインを編集する前に、元のファイルはバックアップを取っておいてください。

  • 2381 行目から 2384 行目にかけて、dotMoveToPlayer というメソッドが定義されているので、
    次の行、2385行目あたりに以下のコードを挿入する。

    コード: 全て選択

        Game_Character.prototype.dotMoveAwayFromPlayer = function () {
            const deg = (this.calcDeg($gamePlayer) + 180) % 360;
            this.dotMoveByDeg(deg);
        };
    

上の編集ができたら、プレイヤーに向かって移動するときと同様に、
自律移動の移動ルートからスクリプトで、

コード: 全て選択

this.dotMoveAwayFromPlayer()
と入力してください。

プレイヤーに向かって移動する場合も同様ですが、
移動頻度を『最高』にしておかないと、結局動きがカクカクになる可能性が高いので、
お気をつけください。
ふじうさ
記事: 54
登録日時: 2023年9月23日(土) 16:27

Re: プレイヤーから離れていく挙動(ピクセル単位の移動)について

投稿記事 by ふじうさ »

お世話になります!
返信が遅くなりすみません。

先ほど検証してみたところ、無事に動作させることができました!
プラグインの中に、「離れる挙動」を定義しておくわけですね、なるほどです!
(認識が間違っているかもしれませんが)

これにて解決済とさせていただきます。
今回もありがとうございました!
返信する

“MZ:質問”に戻る