40 lines
No EOL
1.8 KiB
Ruby
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 |