【解決済】フェードイン/アウト時間を変更したい

返信する
ksk
記事: 114
登録日時: 2020年11月15日(日) 19:05

【解決済】フェードイン/アウト時間を変更したい

投稿記事 by ksk »

いつもお世話になっております。

ツクールデフォルトのフェードイン・フェードアウトの暗転時間が短いと感じ、
下記スクリプトを使用してゆっくりフェードするよう調整しています。

コード: 全て選択

$gameScreen.startFadeOut(60)
this.wait(60)

コード: 全て選択

$gameScreen.startFadeIn(60)
this.wait(60)
しかしながら、作りかけの作品の全てのフェードイン/アウトを上記スクリプトに置き換えるのは手間で、
可能であればプラグインを使用しデフォルトのフェード時間を60フレームに変更したいと考えております。

ですが、コアスクリプトのどの記述がフェードに影響しているのか特定できませんでした。
どなたかお力添え頂けないでしょうか。
最後に編集したユーザー ksk [ 2022年2月13日(日) 06:58 ], 累計 2 回
アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: フェードイン/アウト時間を変更したい

投稿記事 by ムノクラ »

ksk さんが書きました:いつもお世話になっております。

ツクールデフォルトのフェードイン・フェードアウトの時間が短いと感じ、
下記スクリプトを使用してゆっくりフェードするよう調整しています。

コード: 全て選択

$gameScreen.startFadeOut(60)
this.wait(60)

コード: 全て選択

$gameScreen.startFadeIn(60)
this.wait(60)
しかしながら、作りかけの作品の全てのフェードイン/アウトを上記スクリプトに置き換えるのは手間で、
可能であればプラグインを使用しデフォルトのフェード時間を60フレームに変更したいと考えております。

ですが、コアスクリプトのどの記述がフェードに影響しているのか特定できませんでした。
どなたかお力添え頂けないでしょうか。
イベントコマンドのフェードイン・アウトの処理ですよね?
下記が該当すると予想します。
rpg_objects.js 内

コード: 全て選択

    // Fadeout Screen
    Game_Interpreter.prototype.command221 = function () {
        if (!$gameMessage.isBusy()) {
            $gameScreen.startFadeOut(this.fadeSpeed());
            this.wait(this.fadeSpeed());
            this._index++;
        }
        return false;
    };

    // Fadein Screen
    Game_Interpreter.prototype.command222 = function () {
        if (!$gameMessage.isBusy()) {
            $gameScreen.startFadeIn(this.fadeSpeed());
            this.wait(this.fadeSpeed());
            this._index++;
        }
        return false;
    };
この中の fadeSpeed() で時間を決めているようです。
下記を呼び出しているようですね。

コード: 全て選択

Game_Interpreter.prototype.fadeSpeed = function() {
    return 24;
};
下記をプラグインとして導入すれば、希望通りになると予想します。
下記はCC0とします。

コード: 全て選択

(() => {
    "use strict";

    // Fadeout Screen
    Game_Interpreter.prototype.command221 = function () {
        if (!$gameMessage.isBusy()) {
            $gameScreen.startFadeOut(60);
            this.wait(60);
            this._index++;
        }
        return false;
    };

    // Fadein Screen
    Game_Interpreter.prototype.command222 = function () {
        if (!$gameMessage.isBusy()) {
            $gameScreen.startFadeIn(60);
            this.wait(60);
            this._index++;
        }
        return false;
    };

})();
GREPを使えるようになると、調査速度が上がります。

参考
https://fungamemake.com/archives/12451
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
ksk
記事: 114
登録日時: 2020年11月15日(日) 19:05

Re: フェードイン/アウト時間を変更したい

投稿記事 by ksk »

さっそくの返信ありがとうございます。

記載いただいたコードをプラグインとして追加したところ、
希望していた通りの変更を加えることが出来ました。
本当にありがとうございました。
返信する

“MV:質問”に戻る