【プラグイン】フォロワーを操作

ツミオ

ユーザー
プラグイン名:OperateDearFollowers.js
概要:フォロワーを操作するプラグインです。
最新版:バージョン1.0.2(2017/09/09 公開)

【ダウンロード】
https://raw.githubusercontent.com/Tsumio/rmmv-plugins/master/plugins/OperateDearFollowers.js

【紹介動画】

【特徴】

・特定のスイッチをONにすると、フォロワーを操作できるようになります。
・スイッチをOFFにすると、フォロワーは自動で戻ってきます。


【使用方法】

プラグインの導入後、プラグインパラメーターを設定することによって使用できます。

【スクリプトコマンドでの操作】
フォロワーをスクリプトコマンドで操作するには、操作用のスイッチをONにしたあと、以下のような記述をします。
コード:
this.operateFollower(followerNumber, moveRoute);

followerNumberは0から始まります。
引数moveRouteには、forceMoveRouteメソッドに渡すオブジェクトと同じオブジェクトを渡せます。
moveRouteの詳細は、以下のサイトに詳しく載っています。
https://ameblo.jp/rpgmaker1892/entry-12113554385.html

例えば一番最初のフォロワーを右に一歩動かしたい場合、以下のように記述します。

コード:
var moveRoute = {
"list":[{"code":3},
],
"repeat":false,
"skippable":true,
"wait":true};
this.operateFollower(0, moveRoute);

【プラグインコマンド】
全てのプラグインコマンドは「ODF」から始まります
また、説明上では視認性のためにカギカッコを使用していますが、実際にプラグインコマンドに入力する際には
カギカッコの入力は不要です。

全てのプラグインコマンドは大文字と小文字を区別します。
各単語の間は半角スペースで区切ります(全角では認識しません)。
間違わないように気をつけてください。

「ODF processRouteEnd フォロワー番号」 : 移動終了。
「ODF moveDown フォロワー番号」 : 下に移動。
「ODF moveLeft フォロワー番号」 : 左に移動。
「ODF moveRight フォロワー番号」 : 右に移動。
「ODF moveUp フォロワー番号」 : 上に移動。
「ODF moveLowerLeft フォロワー番号」 : 左下に移動。
「ODF moveLowerRight フォロワー番号」 : 右下に移動。
「ODF moveUpperLeft フォロワー番号」 : 左上に移動。
「ODF moveUpperRight フォロワー番号」 : 右上に移動。
「ODF moveRandom フォロワー番号」 : ランダムに移動。
「ODF moveTowardPlayer フォロワー番号」 : プレイヤーに近づく。
「ODF moveAwayFromPlayer フォロワー番号」 : プレイヤーから遠ざかる。
「ODF moveForward フォロワー番号」 : 一歩前進。
「ODF moveBackward フォロワー番号」 : 一歩後退。
「ODF turnDown フォロワー番号」 : 下を向く。
「ODF turnLeft フォロワー番号」 : 左を向く。
「ODF turnRight フォロワー番号」 : 右を向く。
「ODF turnUp フォロワー番号」 : 上を向く。
「ODF turnRight90 フォロワー番号」 : 右に90度回転。
「ODF turnLeft90 フォロワー番号」 : 左に90度回転。
「ODF turn180 フォロワー番号」 : 180度回転。
「ODF turnRightOrLeft90 フォロワー番号」 : 右か左に90度回転。
「ODF turnRandom フォロワー番号」 : ランダムに方向回転
「ODF turnTowardPlayer フォロワー番号」 : プレイヤーの方を向く。
「ODF turnAwayFromPlayer フォロワー番号」 : プレイヤーの逆を向く。
「ODF setWalkAnimeOn フォロワー番号」 : 歩行アニメON。
「ODF setWalkAnimeOff フォロワー番号」 : 歩行アニメOFF。
「ODF setStepAnimeOn フォロワー番号」 : 足踏みアニメON。
「ODF setStepAnimeOff フォロワー番号」 : 足踏みアニメOFF。
「ODF setDirectionFixOn フォロワー番号」 : 向き固定ON。
「ODF setDirectionFixOff フォロワー番号」 : 向き固定OFF。
「ODF setThroughOn フォロワー番号」 : すり抜けON。
「ODF setThroughOff フォロワー番号」 : すり抜けOFF。
「ODF setTransparentOn フォロワー番号」 : 透明化ON。
「ODF setTransparentOff フォロワー番号」 : 透明化OFF。
「ODF jump フォロワー番号 オフセットX オフセットY」 : ジャンプ。
「ODF setImage フォロワー番号 イメージ名 イメージ番号」 : 画像の変更。
「ODF wait フォロワー番号 待機時間」 : ウェイト。
「ODF setMoveSpeed フォロワー番号 移動速度」 : 移動速度の変更。
「ODF setMoveFrequency フォロワー番号 移動頻度」 : 移動頻度の変更。
「ODF setOpacity フォロワー番号 不透明度」 : 不透明度の変更。
「ODF setBlendMode フォロワー番号 合成方法」 : 合成方法の変更。

【備考】
当プラグインを利用したことによるいかなる損害に対しても、制作者は一切の責任を負わないこととします。

【ライセンス(MITライセンス)】
  • 製作者: ツミオ
  • 非商用利用: 自由
  • 商用利用: 自由
  • 再配布: OK
  • 加工: OK
  • 加工後の再配布: OK
  • シリーズ: ツクールMV(他の用途で使用しても問題ありません)
バージョン情報
  • 1.0.2 2017/09/10 フォロワーの操作解除時、自動ですり抜けをONにするよう変更。
  • 1.0.1 2017/09/09 プラグインコマンドを追加。不具合の修正。
  • 1.0.0 2017/09/09 公開。
【あんまり関係ないこと】
要望スレで見かけたので作ってみました。
今回のプラグインはlinq.jsを使っていません。そのまま入れるだけで動きます。
プラグインコマンドでも簡単な操作をできるようにする予定です。
他のプラグインであった機能ですが、イベントをフォロワーにする機能なんかも追加できたら面白いかなあと思いました。
 
最後に編集:

ツミオ

ユーザー
今日の今日であれですが、プラグインコマンドを大量に追加したのと、不具合を修正したので、ダウンロードした方はお手数ですが更新をお願いします。
プラグインコマンドは、要は「移動ルートの設定イベント」と同じです。

また、全てのプラグインコマンドの動作をチェックしたわけではありませんので、動かない等の不具合が見つかった場合はご報告ください。
直せそうなら対処します。
 

まっつUP

ユーザー
ツミオ様
プラグインを拝見させていただきました、とても使いやすいプラグインだと思います。
そして、ここで突然のお願いで恐れ入りますがツミオ様のプラグインの機能を
拡張するプラグインをつくったのですがこちらに貼ってもよろしいでしょうか。
(ツミオ様のプラグイン内のオリジナルのメソッドは使っていません。)
 

ツミオ

ユーザー
ツミオ様
プラグインを拝見させていただきました、とても使いやすいプラグインだと思います。
そして、ここで突然のお願いで恐れ入りますがツミオ様のプラグインの機能を
拡張するプラグインをつくったのですがこちらに貼ってもよろしいでしょうか。
(ツミオ様のプラグイン内のオリジナルのメソッドは使っていません。)

こんばんは、まっつUPさん。
機能の拡張ありがとうございます。
加工・再配布は問題ないです。
 

まっつUP

ユーザー
ツミオ様
ありがとうございます。
ツミオ様のプラグインと併用することで
さらにフォロワーの動きを拡張できるプラグインを作成いたしました。
(単体でも使用できますがプレイヤーの動きとの同期関係はこちらでは弄っていません。)
以下サンプルコードです。

コード:
◆場所移動:MAP001 (8,11) (向き: 上)
◆スイッチの操作:#0010 = ON
◆ウェイト:15フレーム
◆変数の操作:#0010 = 1
◆移動ルートの設定:プレイヤー (飛ばす)
:        :◇スクリプト:this.copyPlayerD();
:        :◇左に90度回転
:        :◇一歩前進
:        :◇スクリプト:this.copyPlayerD();
◆変数の操作:#0010 = 2
◆移動ルートの設定:プレイヤー (飛ばす)
:        :◇スクリプト:this.copyPlayerD();
:        :◇右に90度回転
:        :◇一歩前進
:        :◇スクリプト:this.copyPlayerD();
◆変数の操作:#0010 = 3
◆移動ルートの設定:プレイヤー (飛ばす)
:        :◇スクリプト:this.copyPlayerD();
:        :◇一歩後退
◆変数の操作:#0010 = 0
◆ウェイト:30フレーム
◆ループ
  ◆フキダシアイコンの表示:プレイヤー, 音符
  ◆移動ルートの設定:プレイヤー (飛ばす)
  :        :◇一歩前進
  :        :◇一歩前進
  :        :◇一歩前進
  :        :◇一歩前進
  :        :◇一歩前進
  ◆変数の操作:#0010 += 1
  ◆条件分岐:#0010 ≥ 4
    ◆スクリプト:this.setWaitMode('route')
    ◆ループの中断
    ◆
  :分岐終了
  ◆
:以上繰り返し
◆文章:なし, ウィンドウ, 下
:  :ほわ。
◆スイッチの操作:#0010 = OFF
 

Attachments

  • FollowerExpansion.js
    2.6 KB · 閲覧: 81

kokohiro

ユーザー
非常に使いやすくて重宝しているのですが、足踏みアニメや移動速度関連だけ反応しません。
何が原因なんでしょうか…
 

まっつUP

ユーザー
kokohiro様
拙作の方を単体導入でしたら、プレイヤーとフォロワーの同期がそのままなので
デフォルトの仕様で移動速度などのいくつかの設定がプレイヤーと揃えられてしまいます。
そのため、ツミオ様のプラグインを併用すれば解決する可能性があります。
もし透明度も先頭のキャラクターのものを変えないと機能しないようでしたら多分それです。
 

kokohiro

ユーザー
kokohiro様
拙作の方を単体導入でしたら、プレイヤーとフォロワーの同期がそのままなので
デフォルトの仕様で移動速度などのいくつかの設定がプレイヤーと揃えられてしまいます。
そのため、ツミオ様のプラグインを併用すれば解決する可能性があります。
もし透明度も先頭のキャラクターのものを変えないと機能しないようでしたら多分それです。

まっつんUPさん、それがツミオさんのプラグインを使用させていただいても反応しません…
ただ症状は仰られたように、透明度の変更も機能しない状態です。まっつUPさんの環境では足踏みのon off や透明度の変更も問題なく動作しますか?
 

まっつUP

ユーザー
両方のプラグインを導入して確認しました。
やはり、ツミオ様のプラグインを併用した上でプラグインパラメータに設定したスイッチを
オンにしてプレイヤーに追従しないようにしてから
足踏みアニメのon/offを実行する必要があります。
 

kokohiro

ユーザー
両方のプラグインを導入して確認しました。
やはり、ツミオ様のプラグインを併用した上でプラグインパラメータに設定したスイッチを
オンにしてプレイヤーに追従しないようにしてから
足踏みアニメのon/offを実行する必要があります。

スイッチのオン、オフのお話でようやく気付けました…根本的な問題としてプラグインパラメータに設定したスイッチと、オンにしたスイッチがずれてしまっていました。私の確認不足により、ご迷惑をおかけして申し訳ありません。
 
トップ