ページ 11

装備画面のEquipSlotの位置調整

Posted: 2023年9月24日(日) 10:22
by RAPAGA
いつもお世話になっております。
装備画面のEquipSlotの位置を、添付の写真のように、全体的に中央に寄せたいと思っています。
(通常であれば、上寄せになっています)
Window_EquipSlotのどこかをいじれば良いのではと思っているのですが、どこを触ればよいかわかりませんでした。お手数ではございますがご教示いただけないでしょうか。
よろしくお願いします。

Re: 装備画面のEquipSlotの位置調整

Posted: 2023年9月24日(日) 12:14
by Plasma Dark
選択ウィンドウの選択肢の位置とサイズは、 Window_Selectable.prototype.itemRect によって定義されています。
Rectangle型を返すようになっているので、その中のY座標の結果を一律でいくらか足してあげれば、下に移動できます。

コード: 全て選択

(() => {
  'use strict';

  const _itemRect = Window_EquipSlot.prototype.itemRect;
  Window_EquipSlot.prototype.itemRect = function (index) {
    const rect = _itemRect.call(this, index);
    rect.y += 100;
    return rect;
  };
})();
下に移動するプラグインの例です。

雑に100ピクセルだけ移動していますが、中央寄せの計算をしたい場合は this.innerHeight, this.itemHeight(), this.maxItems() を使ってうまいことやる必要があります。
this.innerHeight は対象ウィンドウの内部の高さ、 this.itemHeight() は選択肢ひとつひとつの高さ、 this.maxItems() は選択肢の数です。

Re: 装備画面のEquipSlotの位置調整

Posted: 2023年9月24日(日) 18:43
by RAPAGA
Plasma Dark様、
ありがとうございます。
助かりました。
解決済みとさせていただきます。