조회 수 312 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/    ◆마법 반사 - KGC_SkillReflection◆
#_/----------------------------------------------------------------------------
#_/  마법 반사 기능을 추가합니다.
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#==============================================================================
# ★ 커스터마이즈 항목 ★
#==============================================================================

module KGC
  # ◆반사시 애니메이션 ID
  REFLECTION_ANIM_ID = 101
  # ◆반사 스테이트명
  REFLECTION_STATE_NAME = "리후레크"
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

$imported = {} if $imported == nil
$imported["SkillReflection"] = true

if $game_special_states == nil
  $game_special_states = {}
  $data_states = load_data("Data/States.rxdata")
end
# 마법 반사용 스테이트 ID취득
state = $data_states.compact.find { |s| s.name == KGC::REFLECTION_STATE_NAME }
$game_special_states["reflection"] = (state != nil ? state.id : 0)

#==============================================================================
# ■ Game_Battler (분할 정의 2)
#==============================================================================

class Game_Battler
  #--------------------------------------------------------------------------
  # ● 반사 스테이트 판정
  #     skill : 처리 대상의 스킬
  #--------------------------------------------------------------------------
  def reflection?(skill)
    # 반사 스테이트 부가, 한편 스킬이 마법의 경우
    if @states.include?($game_special_states["reflection"]) &&
        skill.atk_f == 0 && skill.int_f > 0
      return true
    end
    return false
  end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Game_Battler (분할 정의 3)
#==============================================================================

class Game_Battler
  #--------------------------------------------------------------------------
  # ● 스킬의 효과 적용
  #     user  : 스킬의 사용자 (버틀러)
  #     skill : 스킬
  #--------------------------------------------------------------------------
  alias skill_effect_KGC_SkillReflection skill_effect
  def skill_effect(user, skill)
    # 반사할 수 있는 경우는 돌아온다
    return false if user != self && self.reflection?(skill)

    # 원래의 처리를 실행
    return skill_effect_KGC_SkillReflection(user, skill)
  end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Scene_Battle (분할 정의 4)
#==============================================================================

class Scene_Battle
  #--------------------------------------------------------------------------
  # ● 스킬 액션 결과 작성
  #--------------------------------------------------------------------------
  alias make_skill_action_result_KGC_SkillReflection make_skill_action_result
  def make_skill_action_result
    # 원래의 처리를 실행
    make_skill_action_result_KGC_SkillReflection

    # 리후레크 발동 플래그를 오프
    @skill_reflected = false
    # 원래의 발동자 데미지를 초기화
    user_damage = 0
    for target in @target_battlers
      # 리후레크 발동 판정
      if @skill != nil && target != @active_battler && target.reflection?(@skill)
        # 리후레크 발동 플래그를 온
        @skill_reflected = true
        # 발동자에게 뒤집는다
        @active_battler.skill_effect(@active_battler, @skill)
        # 데미지가 양쪽 모두 수치의 경우
        if user_damage.is_a?(Numeric) && @active_battler.damage.is_a?(Numeric)
          # 데미지를 가산
          user_damage += @active_battler.damage
        else
          # 그대로 설정
          user_damage = @active_battler.damage
        end
      end
    end
    # 최종적인 데미지를 적용
    @active_battler.damage = user_damage if @skill_reflected
  end
  #--------------------------------------------------------------------------
  # ● 프레임 갱신 (메인 국면 스텝 4 : 대상측 애니메이션)
  #--------------------------------------------------------------------------
  alias update_phase4_step4_KGC_SkillReflection update_phase4_step4
  def update_phase4_step4
    # 원래의 처리를 실행
    update_phase4_step4_KGC_SkillReflection

    # 리후레크가 발동했을 경우
    if @active_battler.current_action.kind == 1 && @skill_reflected
      # 대상측 애니메이션
      for target in @target_battlers
        # 대상의 리후레크가 발동했을 경우
        if target.reflection?(@skill)
          # 발동자에게 애니메이션을 돌려준다
          @active_battler.animation_id = @animation2_id
          @active_battler.animation_hit = (target.damage != "Miss")
          # 타겟트궸후레크 발동 애니메이션을 설정
          target.animation_id = KGC::REFLECTION_ANIM_ID
          target.animation_hit = true
        end
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● 프레임 갱신 (메인 국면 스텝 5 : 데미지 표시)
  #--------------------------------------------------------------------------
  alias update_phase4_step5_KGC_SkillReflection update_phase4_step5
  def update_phase4_step5
    # 원래의 처리를 실행
    update_phase4_step5_KGC_SkillReflection

    # 리후레크가 발동했을 경우
    if @skill_reflected
      # 발동자도 데미지 표시
      if @active_battler.damage != nil
        @active_battler.damage_pop = true
      end
      @skill_reflected = false
    end
  end
end


이 스크립트가 실행이 안되더군요.

이 스크립트를 어느 부위에 찔러 넣어야 실행 되고

리후레크를 마법의 거울로 바꾸려고 하는데
'타겟트궸후레크 발동 애니메이션을 설정'

라는 걸 어떻게 바꿔야 하는지도

알려주세요
?

  1. 쯔꾸르 mv 게임을 apk 파일로 변환했는데...

  2. 쯔꾸르 젖소이야기 결혼 방법좀 알려주세요...

  3. No Image 29Nov
    by game메이커xp
    2021/11/29 by game메이커xp
    Views 1258 

    apk포팅 승인 어케 하나요?

  4. No Image 15Jul
    by Neuromancer
    2021/07/15 by Neuromancer
    Views 1543 

    Yanfly님의 Action Sequence Pack 질문드립니다

  5. 싸게 MV 를 먼저? 아니면 돈을 더 들어서라도 MZ?

  6. RMMV - 스탯창과 대화창 변견 관련 질문입니다. (초보입니다 도움좀 주세요 ㅜㅜ)

  7. 아오오니를 하는 사람인데요 질문 두가지가 있어요

  8. No Image 07Dec
    by land_tnt
    2020/12/07 by land_tnt
    Views 1456 

    재밌는게임

  9. No Image 10Nov
    by 세종기항19
    2020/11/10 by 세종기항19
    Views 1685 

    c언어 질문

  10. 코딩 질문

  11. No Image 07Nov
    by 드래곤규
    2020/11/07 by 드래곤규
    Views 1402 

    혹시나 물어보는데

  12. No Image 09Sep
    by 이부닝
    2020/09/09 by 이부닝
    Views 1225 

    오픈보 게임 더블드래곤 리로디드 얼티네이트에 대해 궁금

  13. No Image 02Sep
    by 스트레이보우
    2020/09/02 by 스트레이보우
    Views 1007 

    상태이상 확률 결정

  14. No Image 23May
    by WOONAALAA
    2020/05/23 by WOONAALAA
    Views 963 

    다음 인디사이드 제작대회는 언제쯤 열릴까요?

  15. xp로 제작된 어플 실행자체가 안된다는 분이 있습니다.(제생각엔 apk로 변환하는 과정에서 버전자체가 낮은 것 같습니다)

  16. apk 포팅하는데 게임 이름이 필요합니다 뜨는데

  17. No Image 22Mar
    by 랖랖
    2020/03/22 by 랖랖
    Views 1780 

    쯔꾸르VX Ace렉먹음 도와주세요...

  18. 안녕하세요

  19. 포팅 중 '게임 이름이 필요합니다' 오류

  20. RPGMV 거리 추적

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 442 Next
/ 442


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)