ページ 11

【解決済み】メニュー画面とステータス画面のHPゲージのみを非表示にする方法

Posted: 2018年8月26日(日) 08:11
by 有楽亭
viewtopic.php?t=6106

上記の質問者様とは真逆に、HPゲージだけを消して数値のみを残したいのですが、
プラグインの非表示機能はなるべく使いたくないのです。
Windows.jsをどの行のどの文をコメントアウトすれば消すことが可能でしょうか?

ご指導ご鞭撻のほどをよろしくお願い申し上げます。

Re: メニュー画面とステータス画面のHPゲージのみを非表示にする方法

Posted: 2018年8月26日(日) 15:58
by フトコロ
こんにちは。

ステータスのHPゲージは、rpg_windows.jsで定義されている
Window_Base.prototype.drawActorHp
というメソッドです。

このメソッドの中の以下をコメントアウトすると、ゲージが非表示になります。

コード: 全て選択

Window_Base.prototype.drawActorHp = function(actor, x, y, width) {
    width = width || 186;
//    var color1 = this.hpGaugeColor1();
//    var color2 = this.hpGaugeColor2();
//    this.drawGauge(x, y, width, actor.hpRate(), color1, color2);//これがHPゲージを表示させる処理
    this.changeTextColor(this.systemColor());
    this.drawText(TextManager.hpA, x, y, 44);
    this.drawCurrentAndMax(actor.hp, actor.mhp, x, y, width,
                           this.hpColor(actor), this.normalColor());
};
ただし、このままだとすべてのシーンでのHPゲージが消えてしまいますので
戦闘シーンで表示させたい場合には、以下の処理をするとよいです。

コード: 全て選択

Window_Base.prototype.drawActorHp = function(actor, x, y, width) {
    width = width || 186;
    if ($gameParty.inBattle()) {//戦闘中だけゲージを表示させる
        var color1 = this.hpGaugeColor1();
        var color2 = this.hpGaugeColor2();
        this.drawGauge(x, y, width, actor.hpRate(), color1, color2);//これがHPゲージを表示させる処理
    }
    this.changeTextColor(this.systemColor());
    this.drawText(TextManager.hpA, x, y, 44);
    this.drawCurrentAndMax(actor.hp, actor.mhp, x, y, width,
                           this.hpColor(actor), this.normalColor());
};

Re: メニュー画面とステータス画面のHPゲージのみを非表示にする方法

Posted: 2018年8月27日(月) 07:03
by 有楽亭
ありがとうございます!試してみます!