# ▽▽▽ XRXSv18. 特殊効果詰め合わせ UseItemVX ▽▽▽ # # publish 2010/ 3/15 # update  - /28 # #============================================================================== # アイテム効果 #============================================================================== module XRXSv18_ItemVX def item_test(user, item) result = super skill_learns = [] exp_gain = 0 note = item.note.dup note.gsub!(/\\skill\[([0-9]+?)\]/) do skill_learns.push($1.to_i) end note.gsub!(/\\exp\[([0-9]+?)\]/) do exp_gain += $1.to_i end new_class_id = self.class_id note.gsub!(/\\class\[([0-9]+?)\]/) do new_class_id = $1.to_i end result |= (new_class_id != self.class_id) result |= (exp_gain >= 1 and self.level < 99) for skill_id in skill_learns result |= !self.skill_learn?($data_skills[skill_id]) end return result end def item_effect(user, item) super return if @skipped or @missed or @evaded note = item.note.dup note.gsub!(/\\skill\[([0-9]+?)\]/) do self.learn_skill($1.to_i) end note.gsub!(/\\exp\[([0-9]+?)\]/) do self.gain_exp($1.to_i, false) end note.gsub!(/\\class\[([0-9]+?)\]/) do self.class_id = $1.to_i end end end class Game_Actor < Game_Battler include XRXSv18_ItemVX end #============================================================================== # スキル効果 #============================================================================== module XRXSv18_SkillVX def calc_mp_cost(skill) n = super if skill.note[/\\costmax\%/] n = n * self.maxmp / 100 end if skill.note[/\\cost\%/] n = n * self.mp / 100 end return n end end class Game_Actor < Game_Battler include XRXSv18_SkillVX end class Game_Enemy < Game_Battler include XRXSv18_SkillVX end