# # 連撃(RGSS2) #  (C)2007 TYPE74RX-T # #-------------------------------------------------------------------------- # ★ システムワードの登録:連撃 #-------------------------------------------------------------------------- module RPG class BaseItem alias rx_rgss2bo1_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, "連撃", true) @@rx_copy_str += rx_get_sys @note = @note.sub(rx_get_sys, "") @note = @note.sub("\r\n", "") @rx_sys_str = @@rx_copy_str # メソッドを呼び戻す rx_rgss2bo1_rx_extract_sys_str_from_note end end end #============================================================================== # ■ Scene_Battle #------------------------------------------------------------------------------ #  バトル画面の処理を行うクラスです。 #============================================================================== class Scene_Battle < Scene_Base #-------------------------------------------------------------------------- # ● 戦闘行動の実行 : 攻撃 #-------------------------------------------------------------------------- alias rx_rgss2bo1_execute_action_attack execute_action_attack def execute_action_attack # メソッドを呼び戻す rx_rgss2bo1_execute_action_attack # ★ 装備用システムワードに「連撃」が含まれていれば連撃回数を取得 rx_current_attacks = RX_T.get_numeric_of_system_word_in_equip(@active_battler.rx_sys_str, "連撃") if rx_current_attacks > 0 for i in 1...rx_current_attacks rx_execute_action_current_attack end end end #-------------------------------------------------------------------------- # ★ 戦闘行動の実行 : 連撃武器攻撃 #-------------------------------------------------------------------------- def rx_execute_action_current_attack targets = @active_battler.action.make_targets display_attack_animation(targets) wait(20) for target in targets target.attack_effect(@active_battler) display_action_effects(target) end end #-------------------------------------------------------------------------- # ● 戦闘行動の実行 : スキル #-------------------------------------------------------------------------- alias rx_rgss2bo1_execute_action_skill execute_action_skill def execute_action_skill skill = @active_battler.action.skill # メソッドを呼び戻す rx_rgss2bo1_execute_action_skill # ★ 装備用システムワードに「連撃」が含まれていれば連撃回数を取得 rx_current_attacks = RX_T.get_numeric_of_system_word_in_sys_str(skill, "連撃") if rx_current_attacks > 0 for i in 1...rx_current_attacks rx_execute_action_current_skill end end end #-------------------------------------------------------------------------- # ★ 戦闘行動の実行 : 連撃スキル #-------------------------------------------------------------------------- def rx_execute_action_current_skill skill = @active_battler.action.skill targets = @active_battler.action.make_targets display_animation(targets, skill.animation_id) $game_temp.common_event_id = skill.common_event_id for target in targets target.skill_effect(@active_battler, skill) display_action_effects(target, skill) end end #-------------------------------------------------------------------------- # ● 戦闘行動の実行 : アイテム #-------------------------------------------------------------------------- alias rx_rgss2bo1_execute_action_item execute_action_item def execute_action_item item = @active_battler.action.item # メソッドを呼び戻す rx_rgss2bo1_execute_action_item # ★ システムワードに「連撃」が含まれていれば連撃回数を取得 rx_current_attacks = RX_T.get_numeric_of_system_word_in_sys_str(item, "連撃") if rx_current_attacks > 0 for i in 1...rx_current_attacks rx_execute_action_current_item end end end #-------------------------------------------------------------------------- # ★ 戦闘行動の実行 : 連撃アイテム #-------------------------------------------------------------------------- def rx_execute_action_current_item item = @active_battler.action.item targets = @active_battler.action.make_targets display_animation(targets, item.animation_id) $game_temp.common_event_id = item.common_event_id for target in targets target.item_effect(@active_battler, item) display_action_effects(target, item) end end end