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 5453
257 전투 대미지 MP전환 스테이트 : 수정 => 마나쉴드 7 Evangelista 2009.08.29 2387
» 전투 대미지%MP흡수 스크립트 4 Evangelista 2009.08.31 2281
255 맵/타일 타일 바꾸기 13 file 허걱 2009.09.01 3689
254 상점 상점 할인 스크립트(변수를 이용한 물건 가격 조정) 9 달표범 2009.09.04 3188
253 기타 커스텀 페이지 스크립트 9 file 달표범 2009.09.07 3145
252 전투 반사 스테이트 -KGC 4 카르와푸딩의아틀리에 2009.09.12 2665
251 전투 사이드뷰배틀에서 찌르기 공격 가능하게 7 078656577er 2009.09.16 3225
250 메시지 얼굴표시 9 허걱 2009.09.23 5003
249 저장 오토세이브 VX 5 file 카르와푸딩의아틀리에 2009.10.05 4146
248 기타 KGC패시브 스크립트 30 카르와푸딩의아틀리에 2009.10.07 3555
247 맵/타일 새로운 월드맵 만들기 (로맨싱사가풍) 37 file 078656577er 2009.10.09 6153
246 전투 사이드뷰배틀에서 시각적으로 위치 지정하기 9 file 078656577er 2009.10.14 4914
245 기타 사이드뷰배틀에서 찌르기 공격 가능하게(Upgrade!) 6 078656577er 2009.10.15 2839
244 메시지 대화창효과 8 078656577er 2009.10.20 5978
243 전투 불사신(무적) 스크립트 9 file 미얼 2009.10.29 3200
242 상점 스킬합성 상점 스크립트 23 file 미얼 2009.10.29 4501
241 스킬 무기 업그레이드 시스템 27 file 담먹캐 2009.11.01 5761
240 전투 vampyr SBABS-Requiem ABS 9(액알) 101 file 담먹캐 2009.11.01 12010
239 메뉴 YERD - 시스템 옵션 5 file 훈덕 2009.11.08 3140
238 메뉴 YERD - 커먼 이벤트 메뉴 4 file 훈덕 2009.11.08 3853
Board Pagination Prev 1 ... 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ... 32 Next
/ 32