VX 스크립트

회피 명중 크리를  +  - 시키는 스테이트를 작성하는 스크립트 입니다.

사용법은  스테이트란의 메모장에

EVA+[#]

EVA-[#]

이런식으로 위에 [#] 이부분의 #에 숫자를 넣어주시면됩니다.

EVA+[10]이렇게 메모하면 회피가 10이 상승하는 스테이트를 작성할수 있습니다.

 

 

#==============================================================================
# ** EVA/HIT/CRI States
#------------------------------------------------------------------------------
# Author  : puppeto4 (puppeto5@hotmail.com)
# Version : 2.0 revision 3
# Date    : 25 / 06 / 2008
# Note    : Ougi Lied,Rolo Died;_;
# Email me for request and support  :)
#------------------------------------------------------------------------------
# Function : Enable you to create state that increase/decrease
#            character's evasion rate/hit rate/critical rate.
# Change Log :
#  version 1.5(28/06/2008)
#   - Added decrese evasion feature.
#  version 2.0(18/08/2008)
#   - Added increase/decrease hit & cri feature.
#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
#  This class handles actors. It's used within the Game_Actors class
# ($game_actors) and referenced by the Game_Party class ($game_party).
#==============================================================================

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Constants
  #--------------------------------------------------------------------------
  EVADE_TEXT  = "EVA+"
  DEVADE_TEXT = "EVA-"
  HIT_TEXT    = "HIT+"
  DEHIT_TEXT  = "HIT-"
  CRI_TEXT    = "CRI+"
  DECRI_TEXT  = "CRI-"
  #--------------------------------------------------------------------------
  # * Determine if hit bonus is included
  #--------------------------------------------------------------------------
  def extra_hit?
    states.each do |state|
      return true if state.note.include?(HIT_TEXT)
    end
    return false
  end
  #--------------------------------------------------------------------------
  # * Determine if hit bonus is included
  #--------------------------------------------------------------------------
  def reduce_hit?
    states.each do |state|
      return true if state.note.include?(DEHIT_TEXT)
    end
    return false
  end  
  #--------------------------------------------------------------------------
  # * Get Hit Rate
  #--------------------------------------------------------------------------
  alias puppet_extra_hit hit
  def hit
    if extra_hit?
      hit_bonus
    elsif reduce_hit?
      lower_hit
    else
      return puppet_extra_hit
    end
  end  
  #--------------------------------------------------------------------------
  # * Give Hit Bonus
  #--------------------------------------------------------------------------
  def hit_bonus
    states.each do |state|
      if state.note[/#{Regexp.quote HIT_TEXT}[(d+)]/].to_a[0]
        if two_swords_style
          n1 = weapons[0] == nil ? 95 : weapons[0].hit
          n2 = weapons[1] == nil ? 95 : weapons[1].hit
          n = [n1, n2].min + $1.to_i
        else
          n = weapons[0] == nil ? 95 + $1.to_i : weapons[0].hit + $1.to_i
        end
        return n
      end
    end      
  end  
  #--------------------------------------------------------------------------
  # * Reduce hit rate
  #--------------------------------------------------------------------------
  def lower_hit
    states.each do |state|
      if state.note[/#{Regexp.quote DEHIT_TEXT}[(d+)]/].to_a[0]
        if two_swords_style
          n1 = weapons[0] == nil ? 95 : weapons[0].hit
          n2 = weapons[1] == nil ? 95 : weapons[1].hit
          n = [n1, n2].min - $1.to_i
        else
          n = weapons[0] == nil ? 95 - $1.to_i : weapons[0].hit - $1.to_i
        end
        return n
      end
    end
  end    
  #--------------------------------------------------------------------------
  # * Determine if evade bonus is included
  #--------------------------------------------------------------------------
  def extra_evade?
    states.each do |state|
      return true if state.note.include?(EVADE_TEXT)
    end
    return false
  end
  #--------------------------------------------------------------------------
  # * Determine if evade bonus is included
  #--------------------------------------------------------------------------
  def reduce_evade?
    states.each do |state|
      return true if state.note.include?(DEVADE_TEXT)
    end
    return false
  end  
  #--------------------------------------------------------------------------
  # * Get Evasion Rate
  #--------------------------------------------------------------------------
  alias puppet_extra_eva eva
  def eva
    if extra_evade?
      evade_bonus
    elsif reduce_evade?
      lower_evade
    else
      return puppet_extra_eva
    end  
  end  
  #--------------------------------------------------------------------------
  # * Give Evasion Bonus
  #--------------------------------------------------------------------------
  def evade_bonus
    states.each do |state|
      if state.note[/#{Regexp.quote EVADE_TEXT}[(d+)]/].to_a[0]
        n = 5 + $1.to_i
        for item in armors.compact do n += item.eva end
        return n
      end
    end      
  end  
  #--------------------------------------------------------------------------
  # * Reduce evasion rate
  #--------------------------------------------------------------------------
  def lower_evade
    states.each do |state|
      if state.note[/#{Regexp.quote DEVADE_TEXT}[(d+)]/].to_a[0]
        n = 5 - $1.to_i
        for item in armors.compact do n += item.eva end
        return n
      end
    end
  end  
  #--------------------------------------------------------------------------
  # * Determine if cri bonus is included
  #--------------------------------------------------------------------------
  def extra_cri?
    states.each do |state|
      return true if state.note.include?(CRI_TEXT)
    end
    return false
  end
  #--------------------------------------------------------------------------
  # * Determine if cri bonus is included
  #--------------------------------------------------------------------------
  def reduce_cri?
    states.each do |state|
      return true if state.note.include?(DECRI_TEXT)
    end
    return false
  end  
  #--------------------------------------------------------------------------
  # * Get Cri Rate
  #--------------------------------------------------------------------------
  alias puppet_extra_cri cri
  def cri
    if extra_cri?
      cri_bonus
    elsif reduce_cri?
      lower_cri
    else
      return puppet_extra_cri
    end
  end  
  #--------------------------------------------------------------------------
  # * Give Cri Bonus
  #--------------------------------------------------------------------------
  def cri_bonus
    states.each do |state|
      if state.note[/#{Regexp.quote CRI_TEXT}[(d+)]/].to_a[0]
        n = 4
        n += $1.to_i
        n += 4 if actor.critical_bonus
        for weapon in weapons.compact
          n += 4 if weapon.critical_bonus
        end
        return n
      end
    end      
  end  
  #--------------------------------------------------------------------------
  # * Reduce cri rate
  #--------------------------------------------------------------------------
  def lower_cri
    states.each do |state|
      if state.note[/#{Regexp.quote DECRI_TEXT}[(d+)]/].to_a[0]
    n = 4
    n += 4 if actor.critical_bonus
    for weapon in weapons.compact
      n += 4 if weapon.critical_bonus
    end
    n -= $1.to_i
    return n
      end
    end
  end      
end
#==============================================================================
# ** End of EVA/HIT/CRI States : Script
#==============================================================================

Who's 카르와푸딩의아틀리에

profile

엘카르디아 제작자 (현재 MV로 리메이크중)

유튜브

https://www.youtube.com/channel/UCMwirNTR-pOEzJNB0jL3y_g

트위터

https://twitter.com/karsis98

블로그

https://blog.naver.com/karsis98

Comment '9'
  • ?
    라니엘 2009.08.19 13:08

    혹시 유즈미님의 몬스터도감에도~?!

     

  • ?
    뱅뱅이 2009.08.19 17:22

    잘쓸게요~

  • ?
    rlatpgh412 2009.08.26 14:43

    오호..

  • ?
    빙그리 2010.02.02 21:24

    잘쓰겠습니다

  • ?
    미니프레시 2011.05.21 13:24

    감사합니다

  • ?
    웃자 2011.07.30 12:26

    와우!

  • ?
    GTGs 2011.12.13 16:29

    이거 상태이상 메모장에 기입하는거죠?

    근데 회피력 올렸는데도 몬스터가 회피를 안함..

    어떤 상태에 저걸로 회피력 엄청올려놓고

    그 상태이상을 몬스터에게 적용했는데...

  • ?
    Maxim_Cool 2012.01.25 12:56

    감사합니다~

  • profile
    Lamancha 2012.07.20 19:56
    혹시 이거 저만 오류나는건가요? 상태 메모에다가 새로운 상태를만들어서 회피율을 높인다음 EVA+[10]
    스킬로 적용 시킨후 전투로 들어가면 맞을때 튕기는데 사용법이 틀린건가요?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5408
637 기타 Gamepad Extender VX 습작 2015.01.02 672
636 버그픽스 DerVVulfman's Tileset Reader VX Bug Fix 습작 2014.11.16 701
635 아이템 현재있는 파티원 선택 레벨업 아이템 만들기 1 file 싸패 2016.06.06 713
634 메뉴 Etude87_Ace_Style_Formation_Change ver.1.01 습작 2014.10.05 758
633 저장 세이브 파일 개수 16개로 늘리기 (기본 세이브 엔진용) 1 file Bunny_Boy 2015.09.07 817
632 ??? 1 Man... 2008.10.27 1020
631 버그픽스 Graphical Object Global Reference VX by Mithran Alkaid 2014.03.03 1027
630 키입력 No F1, F12 and Alt+Return (Kein F1, F12 und Alt+Eingabe) by cremno 습작 2013.04.19 1046
629 메시지 Etude87 Dialogue History Scene file 습작 2014.07.07 1069
628 ??(다 영어)여기서 부터 드레그만 빼고 Man... 2008.10.27 1078
627 메뉴 KGC - 커스텀 메뉴 커멘드 (번역) 1 듀란테 2015.07.27 1079
626 Scene_Credit script Plug & Play 1 Man... 2008.10.27 1085
625 Multi-threader snippet by Omegazion Man... 2008.10.28 1107
624 메뉴 MOG - Scroll Bar for VX file 습작 2014.07.06 1115
623 Screen Shortcut Script Man... 2008.10.27 1142
622 LevelMe v1.2 3 Man... 2008.10.27 1154
621 Screen Resolution 3 Man... 2008.10.28 1171
620 키입력 Key Simulator by Fantasist 습작 2013.05.01 1176
619 MAX Level Limitation System 3 Man... 2008.10.28 1198
618 Simple Fon Chage 3 Man... 2008.10.28 1212
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