【サイトについて】
* RPGツクールMVを使った、ゲームを一層楽しくするためのアイディアや、豆知識、プラグインなどを紹介していきます。あくまで個人の考えに基づく記事ですので、参考程度にお読みいただければ幸いです。
<< ボス戦を盛り上げる5つのテクニック | main | 戦闘中、敵の前に立ちはだかる仲間の作り方 >>
スポンサーサイト
0

    一定期間更新がないため広告を表示しています

    | - | |- |
    戦闘中、上から助けに来る仲間の作り方
    0
      こんにちは。
      前回記事「ボス戦を盛り上げる5つのテクニック」の3番目「途中で仲間が駆け付ける」イベントについて。

      バトルイベント[メンバーの入れ替え]で仲間を追加する事で、
      戦闘途中で仲間が加入するイベントが作れます。

      ただサイドビューではこの時あまりにも普通に仲間がスタスタ右から走って来るので、
      「普通に走って来るなんて盛り上がらない! せめて忍者みたいに上から飛んで来いよ!」
      って思うのがRPG好きな方々の罵声だと思います。

      しかしツールだけでは無理なので、スクリプトをいじりましょうと私は前回書きました。
      「無理な事は全部スクリプト任せって言っておけばいいと思ってない?」
      「さじを投げたw どうせコトノハにはそんなことは出来ないんだろ?」
      などと思われていてもおかしくないので、

      実際に上から助けに来る仲間を作ってみましたよ。

      上から来るぞ
      (GIFアニメーション)

      ね。出来てるでしょう?
      それでは実際どこをどんな風にいじれば出来るか解説しましょうか。

      ツクールMVに含まれている幾つものJavascriptファイルの内、
      バトル上のキャラクターの動きを管理しているのは「rpg_sprites.js」です。

      870行目あたりをご覧ください。

      Sprite_Actor.prototype.startEntryMotion = function() {
          if (this._actor && this._actor.canMove()) {
              this.startMotion('walk');
              this.startMove(0, 0, 30);

          }

      ここです。
      ここは、各キャラをサイドビューの待機位置にスタンバる時の動きを命令するものです。
      this.startMotion('walk')で歩く時のグラフィックを指定して、
      this.startMoveで(X軸,Y軸,時間軸)でどこから来るかを指定します。
      今X=0,Y=0になっているので、
      「ああそうか、縦方向のY軸数値を変えれば上から助けに来る仲間が出来るんだな、よーし」
      と思っている方は、慌てずに最後まで聞いてください

      あくまでここの数値は「戦闘位置にスタンバる時の動きを命令するもの」。
      単にここの数値を変えるだけだと、
      戦闘開始した時にキャラクター全員がドカドカドカっと上から来てしまいます。

      とは言え戦闘開始時のキャラのスタンバイの動きも、戦闘中に新しいメンバーが加入した時の動きも、すべてここで管理しているので、「スタンバイ時」と「加入した時」で処理を分岐させるしかありません。

      特定のバトルで発生させたいだけなので、今回はバトルイベントにスイッチを使いましょう。



      助けに来る直前に1番スイッチをON、
      メンバーの投入が終わったら1番スイッチをOFFにしています。

      そしてさっきのスクリプトに戻ります。

      Sprite_Actor.prototype.startEntryMotion = function() {
          if (this._actor && this._actor.canMove()) {
              // スイッチ1番がONの時の動き 
              if ($gameSwitches.value(1)){
                  this.startMove(0, -240, 0);
              } else {
                  // それ以外の動き

                  this.startMotion('walk');
                  this.startMove(0, 0, 30);
              }

      ここに、
      スイッチが1番の時は、キャラは上から来るぞ。そうでない時は普通だぞ
      という命令を入れました。
      これで上からシュタッッっと駆け付けるカッコイイ仲間の出来上がりです。

      ここメンバーの入れ替え後にスイッチをOFFにするの忘れないでくださいね。
      でないとこの次の戦闘から全員上からスタンバイする事になります。

      いかがでしょうか?

      Javascriptの書き換えは自己責任です。半角スペースを全角スペースにするだけでエラーを起こす繊細な生き物なので、慣れていない方が書き換える際は必ずバックアップを取るなどご注意ください。

      おまけ:
      もっと調子に乗ると仲間と敵の間に割って入ってこんな真似が出来ます。
      FF5のギルガメッシュの様なシーンを作るには良いかも知れませんね。
      やり方は・・宿題にしましょう。


       
      | 戦闘 | 00:10 |- |
      スポンサーサイト
      0
        | - | 00:10 |- |
        PR