# # トランジションを使った敵キャラコラプス(RGSS2) #  (C)2009,2011 TYPE74RX-T # # ★ カスタマイズポイント:15~17行目 #============================================================================== # ★ RX_T #------------------------------------------------------------------------------ #  素材用汎用モジュールです。 #============================================================================== module RX_T TransitionFile = "RX_Collapse" # コラプス時に使用するトランジションファイル名 ColDulation = 140 # コラプスエフェクトの長さ。この数値が大きいほど長くなります。 RecognitionWord = "特殊コラプス" # 特殊コラプス敵判別用のシステムワード名 end #-------------------------------------------------------------------------- # ★ システムワードの登録:level #-------------------------------------------------------------------------- module RPG class Enemy alias rx_rgss2b22_rx_extract_sys_str_from_note rx_extract_sys_str_from_note def rx_extract_sys_str_from_note rx_get_sys = RX_T.get_system_word_in_note(@note, RX_T::RecognitionWord) unless rx_get_sys == "" @@rx_copy_str += rx_get_sys @note = @note.sub(rx_get_sys, "") @note = @note.sub("\r\n", "") end @rx_sys_str = @@rx_copy_str # メソッドを呼び戻す rx_rgss2b22_rx_extract_sys_str_from_note end end end #============================================================================== # ■ Game_Enemy #------------------------------------------------------------------------------ #  敵キャラを扱うクラスです。このクラスは Game_Troop クラス ($game_troop) の # 内部で使用されます。 #============================================================================== class Game_Enemy < Game_Battler #-------------------------------------------------------------------------- # ★ 特殊コラプスタイプの敵キャラであるか #-------------------------------------------------------------------------- def rx_special_collapse? return false if @enemy_id == nil return RX_T.check_system_word_in_sys_str($data_enemies[@enemy_id], RX_T::RecognitionWord) end #-------------------------------------------------------------------------- # ● コラプスの実行 #-------------------------------------------------------------------------- alias rxrgss2b22_perform_collapse perform_collapse def perform_collapse if $game_temp.in_battle and dead? and rx_special_collapse? @collapse = true return end # メソッドを呼び戻す rxrgss2b22_perform_collapse end end #============================================================================== # ■ Sprite_Battler #------------------------------------------------------------------------------ #  バトラー表示用のスプライトです。Game_Battler クラスのインスタンスを監視し、 # スプライトの状態を自動的に変化させます。 #============================================================================== class Sprite_Battler < Sprite_Base #-------------------------------------------------------------------------- # ● 新しいエフェクトの設定 #-------------------------------------------------------------------------- alias rx_rgss2b22_setup_new_effect setup_new_effect def setup_new_effect rx_boss_collapse = false # ★ 特殊コラプス判定初期化 # ★ 特殊コラプスの敵キャラならフラグを立てる unless @battler.actor? # アクターでない場合に処理 rx_boss_collapse = true if @battler.rx_special_collapse? end # ★ 特殊コラプスタイプの敵キャラなら if @battler.collapse and rx_boss_collapse @effect_type = COLLAPSE @effect_duration = 0 Graphics.freeze self.opacity = 0 @battler.collapse = false @battler_visible = false rx_filename = "Graphics/System/" + RX_T::TransitionFile Graphics.transition(RX_T::ColDulation, rx_filename, 80) end # メソッドを呼び戻す rx_rgss2b22_setup_new_effect end end