【解決済み】YEP_PartySystemのデザインを変えたい

zen5656
記事: 25
登録日時: 2016年11月04日(金) 01:43

【解決済み】YEP_PartySystemのデザインを変えたい

投稿記事by zen5656 » 2017年3月14日(火) 19:05

こんばんは。お世話になっております。

YEP_PartySystemのデザインを写真のように変えたいです。
・左上、右下のウィンドウはもとの状態から変更ありません。
・右上にパーティ10人を2行に分けて表示。(これは自力でできました)
・左下に控えを含む全パーティをを5人ずつ複数行に分けて表示。(これも自力でできました)

ここからご教示願いたいのですが、
・決定ボタンを押しても反応がないが左下のリストに表示されている灰色文字キャラの表示方法
・灰色Aのキャラからいきなり改行して灰色Bのキャラを表示する方法(名前が空欄の選択不可能キャラを灰色Aの後に4人作ればできそうに思えますが)

以上2つが分からない状態です。伝わりづらい部分ありましたら申し訳ないです。
(もとのデザインにある、左下のリスト中の「Remove」も削除したいですが、恐らく自力でできると思います)

念のためYEP_PartySystemへのリンクを載せておきます。(もとのデザインは動画1分30秒あたりから見ることができます)
http://yanfly.moe/2015/11/20/yep-29-party-system/

追記:すみません。完成予定の写真では左上に「Remove」の項目がありますがこの項目は削除する予定です。なので絶対に10人固定の状態となります。
添付ファイル
ツクマテ.png
ツクマテ.png (35.52 KiB) 閲覧数: 3891 回
最後に編集したユーザー zen5656 on 2017年6月21日(水) 09:31 [ 編集 1 回目 ]

アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: YEP_PartySystemのデザインを変えたい

投稿記事by トリアコンタン » 2017年3月20日(月) 14:42

こんにちは。

自力で改造したコードもしくはプラグインをご提示いただくことは可能でしょうか?
改造した部分に関わる問題なので、改造内容が分かれば有用な助言ができるかもしれないです。
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
zen5656
記事: 25
登録日時: 2016年11月04日(金) 01:43

Re: YEP_PartySystemのデザインを変えたい

投稿記事by zen5656 » 2017年3月21日(火) 18:16

こんにちは。返信遅れて大変失礼しました。
プラグインコマンドの「LockActor」を使用すると左下のリストに表示はされるが、決定ボタンを押してもブザー音が鳴って入れ替えができないことを発見して灰色名前キャラや空欄のキャラを実現できるかもしれないと色々模索していました。

ご負担になるとは思いますが、コード全文を添付させていただきます。素人の自分なりにいじったプラグインなので非常に読みにくいとは思います(汗)
あれから少し前進しまして想定しているものにだいぶ近づいているつもりですが、キャラの詳細画面(「Window_PartyDetail」)に一人目のキャラが表示されない状態です。(「Window_PartySelect」選択時には表示されますが、「Window_PartyList」だと表示されません。もともとRemoveがあったせいなのでしょうか)

念のためザッとですが解説させていただきます。以下の2つのコードで行数を増やし

コード: 全て選択

Window_PartySelect.prototype.maxCols = function() {
    return $gameParty.maxBattleMembers() / 2;
};


コード: 全て選択

Window_PartyList.prototype.maxCols = function() {
    return 5;
};


以下の2つのコードで「Change」で並べ替えを行うたびに「LockActor」されたキャラを追加したり外したりしています。(Aのキャラを11番目以降に配置したのに、灰色Aがまだ存在するのを防ぎます。AのキャラのIDが10なら灰色AのキャラのIDは11のようになってます)

コード: 全て選択

Scene_Party.prototype.onPartyOk = function() {
    var symbol = this._commandWindow.currentSymbol();
    if (symbol === 'change') {
    var index1 = this._partyWindow._index;
    $gameVariables.setValue(95,index1);
    $gameVariables.setValue(94,$gameParty.members()[$gameVariables.value(95)].actorId());
      this._listWindow.activate()
    } else if (symbol === 'remove') {
      SoundManager.playEquip();
      var index = this._partyWindow._index;
      var actor = $gameActors.actor($gameParty._battleMembers[index]);
      $gameParty._battleMembers[index] = 0
      this.refreshWindows();
      this._partyWindow.activate();
    }
};


コード: 全て選択

Scene_Party.prototype.onListOk = function() {
    SoundManager.playEquip();
    if (this._listWindow.item() <= 0) {
      this.otherAction();
    } else {
      this.switchActors();
    }

    var index2 = this._listWindow._index;
    if (index2 <= 9 ) {
    } else {
    $gameVariables.setValue(93,index2);
    $gameVariables.setValue(92,$gameParty.members()[$gameVariables.value(93)].actorId());
    $gameParty.removeActor($gameVariables.value(94) + 1);
    $gameParty.addActor($gameVariables.value(92) + 1);
    }
    this.refreshWindows();
    this._partyWindow.activate();
};


コード全文には改造した部分の適当ですがコメントを書いてますが、分かりづらい部分ありましたらなんなりとご指摘くださいm(_ _)m

追記:添付ファイルはアップした直後に気づいて直しましたが、すぐにDLされていた場合はお手数ですが再度DLください。不手際申し訳ないです。

以下細かい仕様ですが...実際のゲームでは拠点内に並べ替え開始用のキャラを配置し、話しかけると数十人の仲間を加えた後、すぐにプラグインコマンド「ChangePartyMax 10」と「OpenPartyMenu」を実行、プレイヤーがウィンドウを閉じるとリザーブメンバー(11人目以降)を全員外し「ChangePartyMax 5」を実行する予定です。(戦闘参加できるのは5人まで、「ChangePartyMax 10」を実行するのは10人目までのキャラ名が黄色表示になり人数を分かりやすくするためです。
ダンジョン内で並べ替えをしようとするとプラグインを入れていないデフォルトの並び替えのようになるようにしています。(拠点なのかダンジョンなのかをスイッチ21で判断しています)

また、添付ファイルのものはデザインを大雑把にしか決めてませんが、歩行グラフィックやLockアイコンは表示しないつもりです。(顔グラフィックや名前のみ)
添付ファイル
YEP_PartySystem.js
(60.54 KiB) ダウンロード数: 15 回
アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: YEP_PartySystemのデザインを変えたい

投稿記事by トリアコンタン » 2017年3月21日(火) 21:57

ではひとつずつ解決していきます。
まず、ロックされたアクターの文字色を灰色に変える方法です。
Window_PartyList.prototype.actorIsEnabledを以下のように書き換えます。

コード: 全て選択

Window_PartyList.prototype.actorIsEnabled = function(actor) {
    return actor.isAppeared() && !actor._locked;
};


また、詳細ウィンドウに一番目のアクターが表示されないのは、
Window_PartyList.prototype.createActorOrderの繰り返し処理のカウンタ変数の初期値が「1」に
なっているからです。
以下の通り「0」にすれば表示されるようになります。

コード: 全て選択

Window_PartyList.prototype.createActorOrder = function() {
    for (var i = 0; i < $gameParty._actors.length; ++i) {
      var actorId = $gameParty._actors[i];
      if ($gameActors.actor(actorId)) this._data.push(actorId);
    }
};


改行については、改行するための条件次第ですね。
あるいは、名前が空欄でロックされたアクターで埋めるのもひとつの方法です。
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
zen5656
記事: 25
登録日時: 2016年11月04日(金) 01:43

Re: YEP_PartySystemのデザインを変えたい

投稿記事by zen5656 » 2017年3月22日(水) 00:31

素早い返信ありがとうございます。
教えていただいた通りに修正しましたが、こちらの想定しているものにまた一歩近づきました。ありがとうございます!

改行に関しては名前が空欄のキャラクターを入れようと考えています。(改行箇所も一箇所だけなので)
厚かましくも本当に申し訳ないのですが、新しい疑問が出てきてしまいまして。もしよろしければこちらもご教示願いますm(_ _)m

・Window_PartyList.prototype.createActorOrderを教えていただいた通りにすると、1人目のキャラクターが出てきて詳細画面も表示されます。が、左下のウィンドウに一番最初の項目「Remove」が1つ残ったままになってしまいます。どうすれば「Remove」を削除できますか?(もとは「Remove」なのですが、正確には添付したプラグインでは1人目のキャラ名に変更しています。自分は「Remove」を無理やり1人目のキャラクター扱いにできないか改造してました)

・空欄キャラを選んでいる間は詳細画面が「Empty」などの表示にできますか?→少し粘ったら自力でできました!
アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: YEP_PartySystemのデザインを変えたい

投稿記事by トリアコンタン » 2017年3月22日(水) 22:53

こんにちは!
Window_PartyList.prototype.makeItemListの

コード: 全て選択

this._data = [0];


コード: 全て選択

this._data = [];

に変えればいけると思います。

コード: 全て選択

Window_PartyList.prototype.makeItemList = function() {
    this._data = [];
    this.createActorOrder();
    this._data.push(0);
};
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
zen5656
記事: 25
登録日時: 2016年11月04日(金) 01:43

Re: YEP_PartySystemのデザインを変えたい

投稿記事by zen5656 » 2017年3月22日(水) 23:31

こんにちは。
何から何までありがとうございます!想定している形で動いてくれました。ここまで来れば後はウィンドウ幅などの細かい調整だけで済みそうです。トリアコンタン様の製作されたプラグインはいくつか使わせていただいておりますし、本当に感謝の言葉もありませんm(_ _)m

あとはほぼ画像を製作していくだけで、ひとまずの目標である体験版の完成が達成できそうです。
至らぬ点も多くご迷惑をおかけしました。

“MV:質問” へ戻る