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
517 메시지 어드밴스 텍스트 시스템 13 file 카르와푸딩의아틀리에 2009.06.30 4918
516 전투 사이드뷰배틀에서 시각적으로 위치 지정하기 9 file 078656577er 2009.10.14 4910
515 HUD 네비게이션 (나침반) 36 file 허걱 2009.08.25 4908
514 전투 전투 배경을 이미지로 설정하는 스크립트 20 file 아방스 2008.01.23 4893
513 메뉴 GuiRPG menu시스템 13 file 할렘 2009.02.07 4849
512 메뉴 캐릭터설명을 심플하게! 스크립트. 13 file 할렘 2009.02.03 4848
511 전투 VX에서 전투배경을 XP스타일로 나오게 하는 스크립트 7 아방스 2008.01.25 4844
510 타이틀/게임오버 타이틀에 스토리맵을 달자 26 file RPGbooster 2008.10.08 4829
509 기타 RPG 2000이나 RPG 2003처럼 전체화면으로 나오게 하는 스크립트(대박) 21 Man... 2008.10.28 4822
508 스킬 무기성장 랭크 시스템. 20 file 카르와푸딩의아틀리에 2009.07.08 4820
507 기타 rpg vx 렉 줄이는 스크립트 34 아방스 2008.03.09 4815
506 맵/타일 레이 월드맵 스크립트 14 file 카르와푸딩의아틀리에 2009.07.04 4813
505 기타 게임 해상도를 조절 하는 스크립트 19 아방스 2008.01.21 4780
504 HUD 맵 이름을 띠우는 스크립트 [메시지창] 24 아방스 2008.03.09 4748
503 타이틀/게임오버 타이틀 공지 37 file 허걱 2009.08.10 4748
502 미니맵 MiniMap 1.0 미니맵 스크립트. 39 아방스 2010.12.02 4740
501 이름입력 [rpg vx]한글 스크립트(저번 것보단 업그레이드 된 것입니다.^^) 17 file 레시온 2008.03.28 4736
500 케릭터 텍스트박스 18 file RPGbooster 2008.10.08 4709
499 메뉴 자작 메뉴 스크립트 for VX(L's Simple Custom Menu VX ver.) 5 Alkaid 2010.09.02 4705
498 ATB v1.0 배틀 시스템 + RPG Tankentai SBS v2.8 16 supergt 2008.10.11 4681
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 32 Next
/ 32