ページ 11

【解決済み】SVアクターの順番並び替え

Posted: 2017年10月07日(土) 14:47
by ネコムスメ
サイドビュー戦闘において、
主人公を一番手前に、そこからキャラ2、3、4という並び順にできるようなプラグインはありますか??




という順番で戦闘を行いたいのです。

どなたかご存知でしたら
よろしくお願いします。。。┏○ペコ

Re: SVアクターの順番並び替え

Posted: 2017年10月08日(日) 00:23
by フトコロ
プラグインというわけではないですが、
以下のスクリプトをコピーしてjsファイルを作成すると
似たようなことができます。

コード: 全て選択

(function() {
  Sprite_Actor.prototype.setActorHome = function(index) {
    this.setHome(696 - index * 32, 424 - index * 72);
  };
}());
デフォルトの表示設定から、先頭キャラの位置を画面右下に移して
そこから左上にずらして表示させているだけです。
そのため、キャラが被ると上のキャラが前に表示されておかしなことになりますので
デフォルトよりもキャラの上下の位置を離しています。

Re: SVアクターの順番並び替え

Posted: 2017年10月08日(日) 00:28
by ネコムスメ
>フトコロ 様

ご紹介頂いたところ申し訳ないです。。
キャラクター同士がかなり被る大きさの戦闘グラなので、そのスクリプトを使うのは控えさせていただきます、申し訳ないです。。

Re: SVアクターの順番並び替え

Posted: 2017年10月08日(日) 00:41
by フトコロ
それでしたら、こうすると良くなると思います。

コード: 全て選択

(function() {
  Spriteset_Battle.prototype.updateActors = function() {
      var members = $gameParty.battleMembers();
      for (var i = 0; i < this._actorSprites.length; i++) {
          this._actorSprites[i].setBattler(members[members.length - i - 1]);
      }
  };

  Sprite_Actor.prototype.setActorHome = function(index) {
    this.setHome(696 - index * 32, 424 - index * 48);
  };
}());
配置変更と合わせて、表示する順番を変えていますので
重なったときに、上のキャラが前になることは無いです。

あとは、キャラサイズに合わせて、32 や 48 の数字を調整してください。

Re: SVアクターの順番並び替え

Posted: 2017年10月11日(水) 10:52
by ネコムスメ
>フトコロ様

ああああああ気付くのが遅れてしまい申し訳ございません!!
まさにこれです!!ありがとうございます!!!
このトピックは解決済みとさせて頂きますありがとうございます大感謝です!!!!!!;;;;;;;;;