#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # ▼ Vampire State # Author: Kread-EX # # For Nessy. #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # Put <vampire: x%> in the state's notebox. #=========================================================================== # ■ RPG::State #=========================================================================== class RPG::State < RPG::BaseItem #-------------------------------------------------------------------------- # ● Determine if vampire #-------------------------------------------------------------------------- def vampire @vampire ||= @note.match(/<vampire:\s*(\d+)%>/i) {$1.to_i} @vampire end end #=========================================================================== # ■ Game_Battler #=========================================================================== class Game_Battler < Game_BattlerBase #-------------------------------------------------------------------------- # ● Calculate damage #-------------------------------------------------------------------------- alias_method(:krx_vs_gb_mdv, :make_damage_value) def make_damage_value(user, item) krx_vs_gb_mdv(user, item) vamp = user.states.select {|state| state.vampire != nil} if vamp && !vamp.empty? @result.hp_drain = (@result.hp_damage * vamp.first.vampire.fdiv(100)).round end end end