VX 스크립트

피격시 받은 대미지의 일정 퍼센티지만큼을 MP로 흡수하는 스테이트를 작성가능한 스크립트입니다.

MP로 흡수하는 수치만큼 HP대미지를 경감한다거나 하는 기능은 없습니다.

해당 기능이 필요하신 분은 리퀘스트 주시면 해당 사양이 실장된 스크립트를 따로 만들어드리겠습니다.

 

 

 

 

module DEST21C
  module Damage_MP_Absorb
    # 대미지 MP흡수로 사용할 스테이트ID
    DMA_ID = 21
    # 흡수율(%)
    DMA_Percent = 5
    # 스테이트ID2 및 흡수율 (DMA_ID가 nil이 아니라면 DMA_Percent도 nil이어선 안됨)
    DMA_ID2 = nil
    DMA_Percent2 = nil
  end
end

class Game_Battler
  alias DMA_make_attack_damage_value make_attack_damage_value
  def make_attack_damage_value(attacker)
    DMA_make_attack_damage_value(attacker)
    for state in self.states
      if state.id == DEST21C::Damage_MP_Absorb::DMA_ID and @hp_damage > 0
        @mp_damage -= @hp_damage * DEST21C::Damage_MP_Absorb::DMA_Percent / 100
      end
      unless DEST21C::Damage_MP_Absorb::DMA_ID2 == nil
        if state.id == DEST21C::Damage_MP_Absorb::DMA_ID2 and @hp_damage > 0
          @mp_damage -= @hp_damage * DEST21C::Damage_MP_Absorb::DMA_Percent2 / 100
        end
      end
    end
  end
  alias DMA_make_obj_damage_value make_obj_damage_value
  def make_obj_damage_value(user, obj)
    DMA_obj_attack_damage_value(attacker)
    for state in self.states
      if state.id == DEST21C::Damage_MP_Absorb::DMA_ID and @hp_damage > 0
        @mp_damage -= @hp_damage * DEST21C::Damage_MP_Absorb::DMA_Percent / 100
      end
      unless DEST21C::Damage_MP_Absorb::DMA_ID2 == nil
        if state.id == DEST21C::Damage_MP_Absorb::DMA_ID2 and @hp_damage > 0
          @mp_damage -= @hp_damage * DEST21C::Damage_MP_Absorb::DMA_Percent2 / 100
        end
      end
    end
  end
end

 

문제는 이것도 테스트 안해봤다는거

Comment '4'
  • ?
    달표범 2009.09.01 08:19

    저번에 올린 마나실드의 부분 버젼이군요!

  • ?
    Evangelista 2009.09.01 08:34

    마나쉴드는 MP가 까지면서 HP대미지를 MP가 대신받는 기능이고

    대미지MP흡수는 대미지의 일정 부분을 MP로 흡수해 MP가 회복되는 기능입니다.

  • ?
    Berylll 2009.10.18 13:59
    30번째 줄 오류나네요...
  • ?
    rpg xp admy 2011.07.04 22:35

    14번째 줄 오류입니다. ;;^^


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
137 Side View CBS 사이드뷰배틀 블리치버젼 13 RPGbooster 2008.10.11 5232
136 스킬장착 시스템 17 file RPGbooster 2008.10.11 3585
135 오버 드라이브 8/24 버젼 20 file RPGbooster 2008.10.11 2904
134 풍선대화 메세지시스템 32 file RPGbooster 2008.10.11 6126
133 Crissaegrim SBABS BETA 1.0 12 file 21stcentury 2008.10.08 2543
132 헬프윈도우 확장 13 file RPGbooster 2008.10.08 2872
131 몬스터 도감 [수정] 68 file RPGbooster 2008.10.08 6075
130 오디오 무작위 전투음악 12 file RPGbooster 2008.10.08 2335
129 이동속도의 한계를 없앤다 11 file RPGbooster 2008.10.08 2815
128 HUD 심플한 맵 이름 띄우기 53 file RPGbooster 2008.10.08 6862
127 스텟포인트 배분하기 88 file RPGbooster 2008.10.08 6637
126 움직이는커서 11 file RPGbooster 2008.10.08 5090
125 2 Players Engine 2인용하기 15 file RPGbooster 2008.10.08 4001
124 웨이포인트 9 file RPGbooster 2008.10.08 3415
123 ES Character Info 6 file RPGbooster 2008.10.08 1824
122 그래픽 3D그래픽 파티클엔진 45 file RPGbooster 2008.10.08 10130
121 메뉴 김태히님이 개조한 모그메뉴 스텟화면 43 file RPGbooster 2008.10.08 6360
120 미니맵 KGC 미니 맵 22 file RPGbooster 2008.10.08 4036
119 파티 대규모파티 KGC스크립 50 file RPGbooster 2008.10.08 6012
118 타이틀/게임오버 타이틀 로고 26 file RPGbooster 2008.10.08 4950
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Next
/ 32