# ½ºÅ³ Á¦ÈÞ # # ¾Æ±ºÀÇ ½ºÅ³¿¡¼­ÀÇ °ø°ÝÀÌ Á¦ÈÞÇÏ°Ô µË´Ï´Ù. # Á¦ÈÞÇÏ´Â Á¶°ÇÀº ±âº»ÀûÀ¸·Î ÀÌÇÏ¿Í °°´Ù # ¡¤¾Æ±º°ú ¾Æ±ºÀÇ »çÀÌ¿¡ ÀûÀÇ ÇൿÀÌ ³¢Áö ¾Ê´Â´Ù. # ¡¤°°Àº ÀûÀ» Ÿ°ÙÀ¸·Î ÇÏ°í ÀÖ´Ù. # # Á¦ÈÞÇϸé(ÀÚ) , µ¥¹ÌÁö¿¡ º¸³Ê½º°¡ ´õÇØÁý´Ï´Ù. # µ¥¹ÌÁöÀÇ ¡¸COMBO_BONUS À¸·Î ¼³Á¤ÇÑ °ª ¡¿ Á¦ÈÞ È¸¼ö ¡¹(%) °¡ Ãß°¡µË´Ï´Ù. # Ãʱ⠻óÅ·Î4Á¦ÈÞÇØ µ¥¹ÌÁö°¡ ÀÏ·ü100À̶ó°í Çϸé(ÀÚ) , # 1Á¦ÈÞ´«ÀÌ25%º¸³Ê½º·Î125µ¥¹ÌÁö # 2Á¦ÈÞ´«ÀÌ50%º¸³Ê½º·Î150µ¥¹ÌÁö # 3Á¦ÈÞ´«ÀÌ75%º¸³Ê½º·Î175µ¥¹ÌÁö # 4Á¦ÈÞ´«ÀÌ100%º¸³Ê½º·Î200µ¥¹ÌÁö # ÇÕ°è650µ¥¹ÌÁöÀÔ´Ï´Ù. # # ±×¸®°í , ¼Ó¼º ¡¸Á¦ÈÞ ±ÝÁö¡¹°¡ ºÎ¿©µÈ ½ºÅ³Àº ¹®´ä ¹«¿ëÀ¸·Î Á¦ÈÞÇÏÁö ¾Ê½À´Ï´Ù. # µ¡ºÙ¿©¼­ , Á¦ÈÞÁß¿¡ ÀûÀº Á×Áö ¾Ê½À´Ï´Ù. Á¦ÈÞÀÇ ¸¶Áö¸·¿¡ Á×½À´Ï´Ù. # # # ¡ÛÁ¦ÈÞ È®·ü # Á¦ÈÞ È®·üÀº ÀüÁ¦ÈÞÀ²°ú ÈÄ Á¦ÈÞÀ²·Î °è»êµÇ°í ÀÖ½À´Ï´Ù. # ÀüÁ¦ÈÞÀ²Àº ÀüÀÇ ½ºÅ³°úÀÇ Á¦ÈÞÀ² , ÈÄ Á¦ÈÞÀ²Àº µÚÀÇ ½ºÅ³°úÀÇ Á¦ÈÞÀ²ÀÔ´Ï´Ù. # ½ºÅ³¿¡ ¼Ó¼º ¡¸ÀüÁ¦ÈÞÀ²+5%¡¹À̳ª ¡¸ ÈÄ Á¦ÈÞÀ²-10%¡¹À» ºÎ¿©Çϸé(ÀÚ) # ±× ÇÕ°è°¡ ±× ½ºÅ³ÀÇ Àü , ÈÄ Á¦ÈÞÀ²ÀÌ µË´Ï´Ù. # ¸¸¾à ¡¸ÀüÁ¦ÈÞÀ²+5%¡¹ ¡¸ÀüÁ¦ÈÞÀ²+20%¡¹ ¡¸ ÈÄ Á¦ÈÞÀ²-10%¡¹ÀÌ ºÎ¿©µÇ°í ÀÖÀ¸¸é(ÀÚ) # ÀüÁ¦ÈÞÀ²ÀÌ25% ÈÄ Á¦ÈÞÀ²ÀÌ-10% ÀÇ ½ºÅ³°ú ÇÏ°Ô µË´Ï´Ù. # Àü°ú´Â Á¦ÈÞÇϱ⠽±Áö¸¸ , µÚ¿Í´Â ¿¬°áµÇ±â ¾î·Æ´Ù°í ´À³¢°í±º¿ä. # # ½ÇÁ¦ÀÇ Á¦ÈÞ È®·üÀº # ¡¸±âº»Àü Á¦ÈÞÀ² + ÀÚ½ÅÀÌ »ç¿ëÇÏ´Â ½ºÅ³ÀÇ µÚ Á¦ÈÞÀ² + # ±âº» ÈÄ Á¦ÈÞÀ² + ´ÙÀ½ÀÇ ¾Æ±ºÀÌ »ç¿ëÇÏ´Â ½ºÅ³ÀÇ ÀüÁ¦ÈÞÀ²¡¹ # ÀÌ µË´Ï´Ù. # # Ãʱ⠻óÅ·Π´ÙÀ½ÀÇ ½ºÅ³À» ÀÌ Â÷·Ê·Î »ç¿ëÇß´Ù°í Çϸé(ÀÚ) # ½ºÅ³1 ÀüÁ¦ÈÞÀ²+10% ÈÄ Á¦ÈÞÀ²+10% # ½ºÅ³2 ÀüÁ¦ÈÞÀ²-5% ÈÄ Á¦ÈÞÀ²+5% # ½ºÅ³3 ÀüÁ¦ÈÞÀ²+25% ÈÄ Á¦ÈÞÀ²-10% # ½ºÅ³4 ÀüÁ¦ÈÞÀ²+5% ÈÄ Á¦ÈÞÀ²+15% # # ÃÖÃÊÀÇ Á¦ÈÞ ÆÇÁ¤(1-2Á¦ÈÞ´«)ÀÌ ½ºÅ³1ÀÇ µÚ+10%¿Í ½ºÅ³2ÀÇ Àü-5%¿¡ # °¢°¢ ±âº» Á¦ÈÞÀ²À» °¡»êÇØ # 15 + 10 + 15 + (-5) = 35% ·Î Á¦ÈÞ ¼º°øÀÔ´Ï´Ù. # ¸¸¾à ¼º°øÇϸé(ÀÚ) ´ÙÀ½ÀÇ Á¦ÈÞ ÆÇÁ¤À¸·Î ¿Å±é´Ï´Ù. # °¢°¢ # 2-3Á¦ÈÞ´« 15 + 5 + 15 + 25 = 60% # 3-4Á¦ÈÞ´« 15 + (-10) + 15 + 5 = 25% # ÀÌ µË´Ï´Ù. # # # Å×½ºÆ®¿ëÀÇ ±â´ÉÀ¸·Î¼­ ½ºÀ­Ä¡ÀÇ À̸§¿¡ ¡¸Å×½ºÆ®¿ë Àý´ë Á¦ÈÞ¡¹¶ó°í ºÙ¿© # ±× ½ºÀ­Ä¡°¡ON°¡ µÇ¾î ÀÖÀ¸¸é(ÀÚ) Àý´ë Á¦ÈÞÇÕ´Ï´Ù. # # 2005.2.8 °»½Å # µ¥¹ÌÁö ÀÏ°ý Ç¥½Ã¿¡ ´ëÀÀÇß½À´Ï´Ù. # º¯°æÁ¡ÀºGame_Battler±Ùó¿Íupdate_phase4_step5ÀÔ´Ï´Ù. # ÈÄ ´Â º¯°æÇÏÁö ¾Ê¾Ò½À´Ï´Ù. # SHOW_DAMAGE_LUMP(À»)¸¦ false ·Î Çϸé Åë»ó ±×´ë·ÎÀÇ µ¥¹ÌÁö Ç¥½Ã°¡ µË´Ï´Ù. # # 2005.3.14 °»½Å # »ç°¡ÇÁ·ÐƼ¾îdzÀÇ Á¦ÈÞ¸í Ç¥½Ã¿¡ ´ëÀÀÇß½À´Ï´Ù. # ¹®´ä ¹«¿ëÀ¸·Î À̸§ÀÇ ¹ÝÀ¸·Î ³ª´­ ¼ö ÀÖ½À´Ï´Ù. # Á¦ÈÞÀÇ ÃÖÈÄ´Â À̸§ÀÇ ÈĹÝÀ» »ç¿ëÇØ , # ±× ÀÌ¿Ü´Â À̸§ÀÇ Àü¹ÝÀ» »ç¿ëÇÕ´Ï´Ù. # ½º½º·Î ¿©·¯°¡Áö ¸¸Áö°í ½Í¾úÀ¸¸é # Scene_Battle °Í get_combo_skill_name À¸·Î # À̸§ÀÇ Àü¹Ý ÈĹÝÀ» ÃëµæÇÏ°í Àֱ⠶§¹®¿¡ °Å±â¸¦ Á¶Á¤ÇØ ÁÖ¼¼¿ä. # º¯°æÁ¡ # ¡¤start_phase4 °ú update_phase4_step6 ¿¡ @combo_name ÀÇ ÃʱâÈ­ 󸮸¦ Ãß°¡. # ¡¤make_skill_action_result ¿¡ ½ºÅ³ Á¦ÈÞ¸í Ç¥½Ã 󸮸¦ Ãß°¡. # ¡¤get_combo_skill_name À» ½Å¼³. # # 2005.3.19 ¹ö±× ¼öÁ¤ # Á¦ÈÞ ½ºÅ³ ÀÌ¿ÜÀÇ ½ºÅ³¸íÀÌ Á¦ÈÞ¸í¿¡ Â¥³Ö¾îÁö´Â ¹ö±×¸¦ ¼öÁ¤. # # 2005.3.24 ±â´É Ãß°¡ # ÁöÁ¤ÇÑ ¹®ÀÚ¼ö ÀÌÇÏÀÇ ½ºÅ³¸íÀº ±×´ë·Î Á¦ÈÞ¸í¿¡ Â¥³Ö¾îÁöµµ·Ï(µíÀÌ). # COMBO_NAME_SPLIT ±×¸®°í ÁöÁ¤ÇÏ°í ÀÖ½À´Ï´Ù. # (¿¹) # COMBO_NAME_SPLIT = 1 ·Î ÇßÀ» °æ¿ì. # ¡¸¶óÀÌÆ®¡¹´Â Åë»ó ´ë·Î ¡¸¶ó¡¹ ¡¸½Ç¡¹¿¡. # COMBO_NAME_SPLIT = 3 (À¸)·Î ÇßÀ» °æ¿ì. # ¡¸¶óÀÌÆ®¡¹´Â3¹®ÀÚ ÀÌÇÏÀ̹ǷΠ¡¸¶óÀÌÆ®¡¹ ¡¸¶óÀÌÆ®¡¹°¡ µË´Ï´Ù. module Combo_Skill_Config # Á¦ÈÞ¿¡ ÀÇÇÑ À§·Â º¸³Ê½º(%) COMBO_BONUS = 25 # Àüü °ø°ÝÀÇ Æí¼º ÃÖ´ëÄ¡ 0·Î Àüü °ø°ÝÀº ¹«È¿¿¡ ALL_ATTCK_SKILL_MAX = 1 # Á¦ÈÞ½ÃÀÇ ¾Ö´Ï¸ÞÀ̼ÇID COMBO_ANIME_ID = 100 # ±âº»Àü Á¦ÈÞÀ² BASE_BEFORE_REVISION = 15 # ±âº» ÈÄ Á¦ÈÞÀ² BASE_AFTER_REVISION = 15 # µ¥¹ÌÁö ÀÏ°ý Ç¥½ÃÇÏ´ÂÁö ¾î¶²Áö SHOW_DAMAGE_LUMP = true # »ç°¡ÇÁ·ÐƼ¾îdzÀÇ Á¦ÈÞ¸í Ç¥½Ã¸¦ ÇÏ´ÂÁö ¾î¶²Áö COMBO_NAME_SHOW = true # ½ºÅ³¸í ´Ü¶ô ÃÖ¼Ò ¹®ÀÚ¼ö # ÀÌ ¼ýÀÚ ÀÌÇÏÀÇ ¹®ÀÚ¼öÀÇ ½ºÅ³Àº ±×´ë·Î Á¦ÈÞ¿¡ Â¥³Ö¾îÁý´Ï´Ù. COMBO_NAME_SPLIT = 3 end class Scene_Battle include Combo_Skill_Config #-------------------------------------------------------------------------- # ¡Ü ¸ÞÀÎ ±¹¸é °³½Ã #-------------------------------------------------------------------------- alias scene_battle_skill_combo_start_phase4 start_phase4 def start_phase4 @combo_on = false @combo_bese_target = nil @combo_finish = false @combo_count = 0 @combo_name = "" scene_battle_skill_combo_start_phase4 end #-------------------------------------------------------------------------- # ¡Ü ÇÁ·¹ÀÓ °»½Å (¸ÞÀÎ ±¹¸é) #-------------------------------------------------------------------------- alias scene_battle_skill_combo_update_phase4 update_phase4 def update_phase4 if @combo_effect_start update_phase4_combo_effect return end scene_battle_skill_combo_update_phase4 end #-------------------------------------------------------------------------- # ¡Ü ÇÁ·¹ÀÓ °»½Å (¸ÞÀÎ ±¹¸é ½ºÅÜ 2 : ¾×¼Ç °³½Ã) #-------------------------------------------------------------------------- alias scene_battle_skill_combo_update_phase4_step2 update_phase4_step2 def update_phase4_step2 # °­Á¦ ¾×¼ÇÀÌ ¾Æ´Ï¸é unless @active_battler.current_action.forcing # Á¦¾àÀÌ [ÀûÀ» Åë»ó °ø°ÝÇÏ´Â] Àΰ¡ [¾Æ±ºÀ» Åë»ó °ø°ÝÇÏ´Â] ÀÇ °æ¿ì if @active_battler.restriction == 2 or @active_battler.restriction == 3 # ¾×¼Ç¿¡ °ø°ÝÀ» ¼³Á¤ @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 0 end # Á¦¾àÀ» [ÇൿÇÒ ¼ö ¾ø´Â] ÀÇ °æ¿ì if @active_battler.restriction == 4 # ¾×¼Ç °­Á¦ ´ë»óÀÇ ¹öƲ·¯¸¦ Ŭ¸®¾î $game_temp.forcing_battler = nil # ½ºÅÜ 1 ¿¡ ÀÌÇà @phase4_step = 1 return end end # Á¦ÈÞ ÆÇÁ¤ # ¹ÌÇൿ ¹öƲ·¯°¡0³ª¿ÀÁö ¾Ê°í , Á¦ÈÞÀÇ ÇÑÁß°£ÀÌ ¾Æ´Ï¸é Á¦ÈÞ ÆÇÁ¤ if @action_battlers.size != 0 and @combo_on == false # ÇൿÀÚ°¡ Á¦ÈÞ °¡´ÉÇÑ°¡ ÆÇÁ¤ if combo_ok?(@active_battler) @combo_skill = [] @combo_skill.push(@active_battler.current_action.skill_id) @combo_member = [] @combo_member.push(@active_battler) last_battler = @active_battler # °è¼ÓµÇ´Â µ¿·áÀÇ Á¦ÈÞ ÆÇÁ¤ for i in 0...@action_battlers.size next_battler = @action_battlers[i] break if combo_ok?(next_battler) == false break if combo_probability(last_battler, next_battler) == false next_battler.combo_number = i + 2 @combo_skill.push(next_battler.current_action.skill_id) @combo_member.push(next_battler) last_battler = @action_battlers[i] end @combo_max = @combo_member.size if @combo_max > 1 @combo_count = 0 @active_battler.combo_number = 1 @combo_on = true @combo_effect = true else @combo_bese_target = nil @combo_all_target_count = 0 @combo_on = false end end end if @combo_effect @combo_effect_start = true end scene_battle_skill_combo_update_phase4_step2 end #-------------------------------------------------------------------------- # ¡Ü ½ºÅ³ ¾×¼Ç °á°ú ÀÛ¼º #-------------------------------------------------------------------------- alias scene_battle_skill_combo_make_skill_action_result make_skill_action_result def make_skill_action_result scene_battle_skill_combo_make_skill_action_result # ÇൿÀÚÀÇ Á¦ÈÞ ³Ñ¹ö¸¦ ¼Ò°Å if @combo_on @active_battler.combo_number = nil @combo_count += 1 if @combo_count >= @combo_max @combo_finish = true end if COMBO_NAME_SHOW c_name = get_combo_skill_name(@skill) if @combo_finish @combo_name += c_name[1] @help_window.set_text(@combo_name, 1) @help_window.visible = true else @combo_name += c_name[0] @help_window.visible = false end end end end #-------------------------------------------------------------------------- # ¡Ü ÇÁ·¹ÀÓ °»½Å (Á¦ÈÞ È¿°ú Ç¥½Ã) #-------------------------------------------------------------------------- def update_phase4_combo_effect # ÇൿÃø ¾Ö´Ï¸ÞÀÌ¼Ç @active_battler.animation_id = COMBO_ANIME_ID @active_battler.animation_hit = true # ¾Ö´Ï¸ÞÀ̼ÇÀÇ ±æÀÌ¿¡ °ü°è¾øÀÌ , ÃÖÀú 8 ÇÁ·¹ÀÓ ±â´Ù¸®´Â @wait_count = 8 @combo_effect_start = false @phase4_step = 3 end #-------------------------------------------------------------------------- # ¡Ü ÇÁ·¹ÀÓ °»½Å (¸ÞÀÎ ±¹¸é ½ºÅÜ 5 : µ¥¹ÌÁö Ç¥½Ã) #-------------------------------------------------------------------------- alias scene_battle_skill_combo_update_phase4_step5 update_phase4_step5 def update_phase4_step5 scene_battle_skill_combo_update_phase4_step5 # Á¦ÈÞÀÇ ¸¶Áö¸· °æ¿ì if @combo_finish # Á¦ÈÞ½ÃÀÇ Ã³¸® »õ°íÀÇ ´ëó battler = [] battler += $game_troop.enemies battler += $game_party.actors for target in battler if target.exist? if SHOW_DAMAGE_LUMP if target.combo_total_damage != nil target.damage = target.combo_total_damage target.damage_pop = true target.combo_total_damage = nil end end if target.combo_dead target.hp = 0 target.combo_dead = false end end end end end #-------------------------------------------------------------------------- # ¡Ü ÇÁ·¹ÀÓ °»½Å (¸ÞÀÎ ±¹¸é ½ºÅÜ 6 : ¸®ÇÁ·¹½¬) #-------------------------------------------------------------------------- alias scene_battle_skill_combo_update_phase4_step6 update_phase4_step6 def update_phase4_step6 scene_battle_skill_combo_update_phase4_step6 if @combo_finish @combo_on = false @combo_bese_target = nil @combo_count = 0 @combo_finish = false @combo_effect = false @combo_name = "" end end #-------------------------------------------------------------------------- # ¡Ü Á¦ÈÞ ¹ßµ¿ ÆÇÁ¤ #-------------------------------------------------------------------------- def combo_ok?(actor) all_attck_skill_max = ALL_ATTCK_SKILL_MAX # ÇൿÀÚ°¡ ÀûÀ̶ó¸éfalseÀ» µ¹·ÁÁÖ´Â if actor.is_a?(Game_Enemy) return false end # ÇൿÀÚ°¡ ½ºÅ³ ÀÌ¿ÜÀÇ ÇൿÀ̶ó¸éfalseÀ» µ¹·ÁÁÖ´Â if actor.current_action.kind != 1 return false end # ÇൿÀÚ°¡ ½ºÅ³À» »ç¿ëÇÒ ¼ö ¾ø¾úÀ¸¸éfalseÀ» µ¹·ÁÁÖ´Â unless actor.skill_can_use?(actor.current_action.skill_id) return false end # ½ºÅ³À» Ãëµæ skill = $data_skills[actor.current_action.skill_id] # »ç¿ë ½ºÅ³ÀÌ Á¦ÈÞ ±ÝÁö ¼Ó¼ºÀ» °¡Áö°í ÀÖÀ¸¸é(ÀÚ)false¸¦ µ¹·ÁÁÖ´Â for i in skill.element_set if $data_system.elements[i] != nil if $data_system.elements[i] =~ /Á¦ÈÞ ±ÝÁö/ return false end end end # ±âº» Ÿ°ÙÀÌ Á¤ÇØÁ® ÀÖÁö ¾ÊÀº °æ¿ì if @combo_bese_target == nil @combo_all_target_count = 0 # Àüü °ø°ÝÀÇ °æ¿ì if skill.scope == 2 if @combo_all_target_count >= all_attck_skill_max return false end # ±âº» Ÿ°ÙÀ» Àüü(-1)·Î ¼³Á¤ @combo_bese_target = -1 @combo_all_target_count += 1 # ´Üü °ø°ÝÀÇ °æ¿ì else @combo_bese_target = actor.current_action.target_index end # ±âº» Ÿ°ÙÀÌ Á¤ÇØÁ® ÀÖ´Â °æ¿ì # ÃÖÃÊÀÇ °ø°ÝÀÌ Àüü °ø°ÝÀ̾ú´ø °æ¿ì elsif @combo_bese_target == -1 if skill.scope == 2 # 1Á¦ÈÞÁß¿¡ ±ÔÁ¤ ȸ¼ö ÀÌ»óÀÇ Àüü °ø°ÝÀº Â¥³ÖÀ» ¼ö ¾ø´Â if @combo_all_target_count >= all_attck_skill_max return false end @combo_all_target_count += 1 else @combo_bese_target = actor.current_action.target_index end else if skill.scope == 2 # 1Á¦ÈÞÁß¿¡ ±ÔÁ¤ ȸ¼ö ÀÌ»óÀÇ Àüü °ø°ÝÀº Â¥³ÖÀ» ¼ö ¾ø´Â if @combo_all_target_count >= all_attck_skill_max return false end @combo_all_target_count += 1 else # Ÿ°ÙÀÌ ±âº» Ÿ°Ù°ú ÇÔ²² È­µµ³ª if actor.current_action.target_index != @combo_bese_target return false end end end return true end #-------------------------------------------------------------------------- # ¡Ü Á¦ÈÞ È®·ü °è»ê #-------------------------------------------------------------------------- def combo_probability(last_battler, next_battler) s_num = $data_system.switches.index("Å×½ºÆ®¿ë Àý´ë Á¦ÈÞ") if s_num != nil return true if $game_switches[s_num] end last_skill = $data_skills[last_battler.current_action.skill_id] next_skill = $data_skills[next_battler.current_action.skill_id] last_n = skill_combo_after_revision(last_skill) last_n += actor_combo_after_revision(last_battler) next_n = skill_combo_before_revision(next_skill) next_n += actor_combo_before_revision(next_battler) n = last_n + next_n if (rand(100) < n) return true end return false end #-------------------------------------------------------------------------- # ¡Ü ¿¢ÅÍ ÀÇ ±âº» Á¦ÈÞ È®·ü º¸Á¤ Ãëµæ #-------------------------------------------------------------------------- def actor_combo_base_revision(actor) return 0 end #-------------------------------------------------------------------------- # ¡Ü ¿¢ÅÍ ÀÇ ¾Õ Á¦ÈÞ È®·ü º¸Á¤ Ãëµæ #-------------------------------------------------------------------------- def actor_combo_before_revision(actor) n = actor_combo_base_revision(actor) n += BASE_BEFORE_REVISION return n end #-------------------------------------------------------------------------- # ¡Ü ¿¢ÅÍ ÀÇ µÚ Á¦ÈÞ È®·ü º¸Á¤ Ãëµæ #-------------------------------------------------------------------------- def actor_combo_after_revision(actor) n = actor_combo_base_revision(actor) n += BASE_AFTER_REVISION return n end #-------------------------------------------------------------------------- # ¡Ü ½ºÅ³ ÀÇ ÀüÁ¦ÈÞ È®·ü º¸Á¤ Ãëµæ #-------------------------------------------------------------------------- def skill_combo_before_revision(skill) rate = 0 for i in skill.element_set if $data_system.elements[i] != nil if $data_system.elements[i] =~ /ÀüÁ¦ÈÞÀ²([+-]?[0-9]+)(%|%)/ rate += $1.to_i end end end return rate end #-------------------------------------------------------------------------- # ¡Ü ½ºÅ³ ÀÇ µÚ Á¦ÈÞ È®·ü º¸Á¤ Ãëµæ #-------------------------------------------------------------------------- def skill_combo_after_revision(skill) rate = 0 for i in skill.element_set if $data_system.elements[i] != nil if $data_system.elements[i] =~ /ÈÄ Á¦ÈÞÀ²([+-]?[0-9]+)(%|%)/ rate += $1.to_i end end end return rate end #-------------------------------------------------------------------------- # ¡Ü ½ºÅ³¸íÀ» Àü¹Ý ÈĹÝÀ¸·Î ³ª´©¾î ±× ¹è¿­À» µ¹·ÁÁÖ´Â #-------------------------------------------------------------------------- def get_combo_skill_name(skill) name = skill.name.split('') if name.size == 1 return [name[0], name[0]] elsif name.size <= COMBO_NAME_SPLIT tempname = name.join return [tempname, tempname] end num = name.size / 2 name1 = "" name2 = "" for i in 0...num name1 += name[i] end for i in num...name.size name2 += name[i] end return [name1, name2] end end class Game_Battler include Combo_Skill_Config attr_accessor :combo_number # Á¦ÈÞ ¹ßµ¿½ÃÀÇ Â÷·Ê attr_accessor :combo_dead # Á¦ÈÞ ¹ßµ¿½ÃÀÇ »ç¸Á Ç÷¡±× attr_accessor :combo_total_damage # Á¦ÈÞ ¹ßµ¿½ÃÀÇ ÃÑ µ¥¹ÌÁö #-------------------------------------------------------------------------- # ¡Ü ¿ÀºêÁ§Æ® ÃʱâÈ­ #-------------------------------------------------------------------------- alias game_battler_skill_combo_initialize initialize def initialize game_battler_skill_combo_initialize @combo_number = nil @combo_dead = false @combo_total_damage = nil end #-------------------------------------------------------------------------- # ¡Ü ½ºÅ³ÀÇ È¿°ú Àû¿ë # user : ½ºÅ³ÀÇ »ç¿ëÀÚ (¹öƲ·¯) # skill : ½ºÅ³ #-------------------------------------------------------------------------- alias game_battler_skill_combo_skill_effect skill_effect def skill_effect(user, skill) result = game_battler_skill_combo_skill_effect(user, skill) if user.combo_number != nil # Á¦ÈÞ º¸Á¤ if self.damage.is_a?(Numeric) combo_rate = user.combo_number * COMBO_BONUS damage = self.damage * combo_rate / 100 self.damage += damage self.hp -= damage if SHOW_DAMAGE_LUMP @combo_total_damage = 0 if @combo_total_damage == nil @combo_total_damage += self.damage self.damage = nil end end if self.dead? self.combo_dead = true self.hp = 1 end end return result end end = ¿©±â¼­ ã¾Æº¸¸é ¾Ö´Ï¸ÞÀÌµå ¼³Á¤Àִµ¥ ¿øÇϴ°ɷΠ°ñ¶ó¼­ÇØ!