【別の手法で解決済】メニューのアクターステータスと、アイテム使用時の対象選択ウィンドウのステータス内容を別にしたい

nomaly
記事: 29
登録日時: 2018年9月26日(水) 21:51

【別の手法で解決済】メニューのアクターステータスと、アイテム使用時の対象選択ウィンドウのステータス内容を別にしたい

投稿記事by nomaly » 2020年1月25日(土) 11:57

こんにちは、いつもお世話になっております。

メニューを開いた時、アクターのステータスが表示されてるウィンドウの内容と、
アイテムを選び、対象アクターを選択するときのアクターのステータスが表示されてるウィンドウの内容を別のものにしたいです。

というのも、特に成長アイテムを使用する際、アクターの各パラメーターが分からないと不便だからです。

とりわけ私の作ってるゲームの場合、メニュー画面のレイアウトを
AltMenuScreen.js、AdjustPictureGraphical.js、FTKR_CustomSimpleActorStatus.js、FTKR_CSS_MenuStatus.js
といったプラグインによって変更していて(添付の画像は別プロジェクト)、
メニュー画面に攻撃力や防御力を表示するスペースがない(あっても煩雑になりますし)ので、
「アイテム対象選択ウィンドウ」の内容を完全に独立したものにしたいです。

コアスクリプトでいうと、rpg_windows.jsの↓の辺りが怪しいと思ったのですが、上手く独立はさせられませんでした。

コード: 全て選択

Window_Base.prototype.drawActorSimpleStatus = function(actor, x, y, width) {
    var lineHeight = this.lineHeight();
    var x2 = x + 180;
    var width2 = Math.min(200, width - 180 - this.textPadding());
    this.drawActorName(actor, x, y);
    this.drawActorLevel(actor, x, y + lineHeight * 1);
    this.drawActorIcons(actor, x, y + lineHeight * 2);
    this.drawActorClass(actor, x2, y);
    this.drawActorHp(actor, x2, y + lineHeight * 1, width2);
    this.drawActorMp(actor, x2, y + lineHeight * 2, width2);
};

コード: 全て選択

Window_MenuStatus.prototype.drawItem = function(index) {
    this.drawItemBackground(index);
    this.drawItemImage(index);
    this.drawItemStatus(index);
};

コード: 全て選択

Window_MenuStatus.prototype.drawItemStatus = function(index) {
    var actor = $gameParty.members()[index];
    var rect = this.itemRect(index);
    var x = rect.x + 162;
    var y = rect.y + rect.height / 2 - this.lineHeight() * 1.5;
    var width = rect.width - x - this.textPadding();
    this.drawActorSimpleStatus(actor, x, y, width);
};
添付ファイル
添付.png

nomaly
記事: 29
登録日時: 2018年9月26日(水) 21:51

Re: 【別の手法で解決済】メニューのアクターステータスと、アイテム使用時の対象選択ウィンドウのステータス内容を別にしたい

投稿記事by nomaly » 2020年1月25日(土) 19:00

メニュー内コモンイベントプラグイン MenuCommonEvent.js と、
動的文字列ピクチャ生成プラグイン DTextPicture.js (ともにトリアコンタンさんのプラグイン)
を使うことによって、アイテム画面に無理やりアクターのパラメーターを表示することで私の目的は達成しました。

“MV:質問” へ戻る