トリアコンタン製NobelMashroomのウィンドウ表示の改良

トリアコンタン様のNobelMashroomでウィンドウを「暗くする」にしたときの
表示で上下の透明が気になったりすることはありませんか?

通常画面全体を「暗くする」のウィンドウ表示した場合、
初期状態では上下にグラデーションを設定しています。
このグラデーションをなくすには以下のコードを追加しましょう。

あくまで「暗くする」のときのみ反映されますので
ノベルウィンドウでなく通常サイズウィンドウでも「暗くする」
のときはウィンドウ上のみグラデーションにして
下はグラデなしになります。

ウィンドウが通常サイズで「暗くする」のときデフォルトの
上下グラデにはなりませんのでご注意ください。


// メッセージの背景が「暗くする」設定の場合のウィンドウの上下端グラデーションの処理
Window_Message.prototype.refreshDimmerBitmap = function() {
    if (this._dimmerSprite) {
        var bitmap = this._dimmerSprite.bitmap;
        var w = this.width;
        var h = this.height;
        var m = this.padding;
        var c1 = this.dimColor1();
        var c2 = this.dimColor2();
        bitmap.resize(w, h);
        if($gameSystem._messageViewType == 1){
            bitmap.fillRect(0, 0, w, h * 2, c1);
        }else{
            bitmap.gradientFillRect(0, 0, w, m, c2, c1, true);
            bitmap.fillRect(0, m, w, h * 2, c1);
        }
        this._dimmerSprite.setFrame(0, 0, w, h);
    }
};
// メッセージの背景が「暗くする」設定の場合の中心の色
Window_Message.prototype.dimColor1 = function() {
    return 'rgba(0, 0, 0, 0.2)'
};
// メッセージの背景が「暗くする」設定の場合の上下端の色
Window_Message.prototype.dimColor2 = function() {
    return 'rgba(0, 0, 0, 0)';
};

以下は行数を減らして2行で通常ウィンドウの「暗くする」にしたときの例


更に以下はノベルウィンドウ時の上下のグラデをなくした例

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索