rebf-gaiden/Scripts/_.58.rb
2025-04-26 17:06:34 -05:00

40 lines
No EOL
1.8 KiB
Ruby

#==============================================================================
# ■ RGSS3 簡易シーン終了時自動キャッシュ削除 Ver1.00 by 星潟
#------------------------------------------------------------------------------
# シーンの終了処理を行う際にキャッシュを削除する設定を行えます。
# これにより画像によって占められていたメモリを解放する事が出来ますが
# キャッシュを削除するとキャッシュ化していた画像の
# 再読み込みが必要になる為、結果的にプレイヤーのストレスを溜めかねません。
# 一長一短である事をご理解の上ご利用ください。
#==============================================================================
module CacheClear
#Scene_Baseから終了処理を継承しているシーンでは
#全てシーン終了処理時にキャッシュクリアを行うか。
#行う場合はtrue、行わない場合はfalse。
ALL = true
#ALLがfalseの場合のみ、対象となるシーンクラス名を個別指定。
#クラスの概念が分かる方向け。
#デフォルトはマップと戦闘のみ。
TGT = ["Scene_Map","Scene_Battle"]
end
class Scene_Base
#--------------------------------------------------------------------------
# 終了処理
#--------------------------------------------------------------------------
alias terminate_cache_clear terminate
def terminate
terminate_cache_clear
Cache.clear if cache_clear_flag
end
#--------------------------------------------------------------------------
# キャッシュクリア条件
#--------------------------------------------------------------------------
def cache_clear_flag
CacheClear::ALL or CacheClear::TGT.include?(self.class.name)
end
end