命中精度



武器に命中精度を設定し、通常攻撃時の命中率を操作します。

変更点
2016:03:01
・エネミーの場合、武器がない考慮が漏れていたので修正
・外部フラグ追加
・基本命中精度取得の引数変更

2020:11:01
・他スクリプト併用時のアップデート反映

#==============================================================================
# ■ 命中精度 By 貪藻矢射妥←
# 
#   武器に命中精度を設定し、通常攻撃時の命中率を操作
# 
#==============================================================================
# 更新っぽいもの
# 
# 2016:03:01
# ・エネミーの場合、武器がない考慮が漏れていたので修正
# ・外部フラグ追加
# ・基本命中精度取得の引数変更
# 
# 2020:11:01
# ・他スクリプト併用時のアップデート反映

$OuterFlgs = {} if $OuterFlgs == nil
$OuterFlgs["Weapon_HitRate"] = true

module DIAMOND
  # 命中率(属性と数値)
  #            S          A          B          C          D
  HIT_RATES = [[55,  75], [56,  80], [57, 100], [58, 150], [59, 180]]
  
  # 命中率(Default)
  # 100固定を推奨
  DEFAULT_HITRATE = 100
  
  #--------------------------------------------------------------------------
  # ● 基本命中精度取得
  #     user : 使用者
  #     flg  : 武器依存かどうか
  #--------------------------------------------------------------------------
  def get_hitrate_base(user, flg = true)
    
    base_hitrate = DEFAULT_HITRATE
    
    if user.is_a?(Game_Actor)
      if flg
        weapon = $data_weapons[user.weapon_id]
        for i in 0...HIT_RATES.size
          if weapon != nil && weapon.element_set.include?(HIT_RATES[i][0])
            base_hitrate =  HIT_RATES[i][1]
          end
        end
      end
      return base_hitrate
    else # Game_Enemy
      return base_hitrate
    end
  end
end

class Game_Battler
  include DIAMOND
  include BM
  #--------------------------------------------------------------------------
  # ● 通常攻撃の効果適用
  #     attacker : 攻撃者 (バトラー)
  #--------------------------------------------------------------------------
  ★★★ 一撃必殺カスタマイズ 参照  ★★★
  
  #--------------------------------------------------------------------------
  # ● スキルの効果適用
  #     user  : スキルの使用者 (バトラー)
  #     skill : スキル
  #--------------------------------------------------------------------------
  ★★★ Surume_Hyper_Set 参照  ★★★
  
end
カスタマイズポイント 薄緑色の部分にて命中精度の属性IDとその命中精度のセットを記述します。 HIT_RATES = [[属性, 命中精度], ...] あとは武器にその属性を設定するだけです。 ※実は2つ以上の命中精度を設定してもエラーを返さないという・・・  (そのうち直します。)

戻る