Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # // <var_req>
- module DBZ
- module SkillLevel
- MAX_LEVEL = 10
- REQ_VAR = []
- # REQ_VAR[level] = [var_id, value]
- var = 1
- REQ_VAR[0] = [var, 0]
- REQ_VAR[1] = [var, 1]
- REQ_VAR[2] = [var, 5]
- REQ_VAR[3] = [var, 10]
- REQ_VAR[4] = [var, 15]
- REQ_VAr[5] = [var, 20]
- REQ_VAR[6] = [var, 30]
- REQ_VAR[7] = [var, 40]
- REQ_VAR[8] = [var, 50]
- REQ_VAR[9] = [var, 60]
- REQ_VAR[10] = [var, 70]
- end
- end
- class RPG::Skill
- def variable_req?
- @variable_req ||= self.note =~ /<VAR_REQ>/i
- return true #@variable_req
- end
- end
- class Game_Actor
- def skill_can_levelup?(skill_id)
- if $data_skills[skill_id].variable_req?
- lvl = [[(skill_level(skill_id)+1), DBZ::SkillLevel::MAX_LEVEL].min, 0].max
- req = DBZ::SkillLevel::REQ_VAR[lvl]
- return false unless $game_variables[req[0]] >= req[1]
- end
- return true
- end
- def level_up_skill(skill_id, free=true)
- @skill_lvls[skill_id] += 1
- unless free
- skp = DBZ::SkillLevel::SKP_REQ
- if DBZ::SkillLevel::SKP_CURVE > 0
- skp += (skill_level(skill_id)-1) * DBZ::SkillLevel::SKP_CURVE
- end
- @skp -= skp
- end
- unlock_skills
- end
- end
- class Scene_Skill
- def update_skill_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- return_scene
- elsif Input.trigger?(Input::R)
- Sound.play_cursor
- next_actor
- elsif Input.trigger?(Input::L)
- Sound.play_cursor
- prev_actor
- elsif Input.trigger?(Input::C)
- @skill = @skill_window.skill
- if @actor.skill_learn?(@skill)
- if @skill != nil
- @actor.last_skill_id = @skill.id
- end
- if @actor.skill_can_use?(@skill)
- Sound.play_decision
- determine_skill
- else
- Sound.play_buzzer
- end
- else
- Sound.play_buzzer
- end
- @actor.last_skill_id = nil
- elsif Input.trigger?(Input::X)
- skill_id = @skill_window.skill.id
- req = DBZ::SkillLevel::SKP_REQ
- req += (@actor.skill_level(skill_id)) * DBZ::SkillLevel::SKP_CURVE
- skill_points = @actor.skill_points >= req
- if @actor.skill_level(skill_id) < @actor.max_lvl(skill_id) and skill_points and @actor.skill_can_levelup?(skill_id)
- Sound.play_use_item
- unless @actor.skill_learn?($data_skills[skill_id])
- @actor.learn_skill(skill_id, false)
- @skill_window.index = @actor.skills.size-1
- else
- @actor.level_up_skill(skill_id, false)
- end
- @skp_window.refresh
- @skill_window.refresh
- else
- Sound.play_buzzer
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment