다음 레벨까지의 경험치 강제조정

by 정의로운녀석 posted Jul 24, 2008
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
예전에 비밀소년님이 만들었던 경험치 조정입니다.
미완성이라, 제가 짜집기 식으로 마지막레벨때의 표시를 추가했습니다.



#=================================================
# ■ 경험치 직접 정하기  (RGSS2)
#-------------------------------------------------
#  Author: Bimilist(비밀소년) (Edit : Justeen)
#  Desc: 경험치를 직접 수작업으로 정함
#=================================================
class Game_Actor < Game_Battler
  def make_exp_list
    actor = $data_actors[@actor_id]
    @exp_list[1] = 0
    @exp_list[2] = 100
    @exp_list[3] = 300
    @exp_list[4] = 600
    @exp_list[5] = 1000
    @exp_list[6] = 1500
    @exp_list[7] = 2100
    @exp_list[8] = 2800
    @exp_list[9] = 3600
    @exp_list[10] = 5000
    @exp_list[11] = 5000.1
  end
  #--------------------------------------------------------------------------
  # ● 경험치의 문자열 취득
  #--------------------------------------------------------------------------
  def exp_s
        if exp == 5000 #최대 경험치값을 넣어주세요.
      return "Mastery  "
    else
      return @exp_list[@level+1] > 0 ? @exp : "-------"
    end
  end
  #--------------------------------------------------------------------------
  # ● 다음의 레벨의 경험치의 문자열 취득
  #--------------------------------------------------------------------------
  def next_exp_s
    if exp == 5000 #최대 경험치값을 넣어주세요.
    return "Mastery  "
  else
    return @exp_list[@level+1] > 0 ? @exp_list[@level+1] : "-------"
  end
end
  #--------------------------------------------------------------------------
  # ● 다음의 레벨까지의 경험치의 문자열 취득
  #--------------------------------------------------------------------------
  def next_rest_exp_s
    if exp == 5000 #최대 경험치값을 넣어주세요.
      return "Mastery  "
    else
      return @exp_list[@level+1] > 0 ?
      (@exp_list[@level+1] - @exp) : "-------"
    end
  end
end



어디까지나 기준은 제 게임인지라 직접 넣으려면 수정하셔야 할겁니다.

위 스크립트를 넣어주신후,

Game_Actor의 523번째줄에서  

@exp = [[exp, 9999999].min, 0].max

이런 스크립트가 있습니다.  최대 경험치량인데, 제 게임은 5000으로 되어있습니다. (경험치 5000까지)

581번째줄에서는

  def change_level(level, show)
    level = [[level, 99].min, 1].max
    change_exp(@exp_list[level], show)
  end

이런게 있는데, 제 게임에는 괄호안이 level, 10으로 되어있습니다. (레벨10까지)


이렇게 맞춰놓으면 경험치가 5000이 될때 레벨부분이 Mastery로 바뀌며 더이상 경험치가 늘어나질 않습니다.

5000부분과 레벨 10부분을 각각 자신의 게임에 맞게 수정하시고, 필요 경험치 레벨도 자신의 입맛대로 넣으면 됩니다.


원래 혼자서 맘대로 수정한거라 배포하기가 조금 부끄러웠지만, 최근 새롭게 시스템을 개정해볼까 해서 백업차 올립니다.