자유게시판

줄밑으부터 쭉 복사하세요 ㅋㅋㅋㅋㅋㅋ

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

#LV 한계 돌파
#
#처음에 거절하고 일어나시면 ,이 스크립트(script)를 사용한 것보다도
#자력으로 개조한 쪽이 ,다양 자유롭게 가능하다 하여 권장입니다.
#이기 때문에 ,참고 정도에 보여 줄 수 있는다면 좋을지도 모릅니다.
#( 물론,이것 단체라도 움직이?font color=FF001E style=background-color:FFF000;>돈?만들고 있으므로
#그대로 사용하고 받아도 상관하지 않습니다.)
#
#그대로 사용한 경우의 주의점으로서 ,
#지금까지의 스크립트(script)와 달리,기초로부터 있는 처리를 몇개인가 개서하고 입니다.
#병용이라든가 한 경우,가능한한 위의 쪽에 부착하면 그럭 저럭 되다,카모시れ 늘릴 수 없다.
#
#사용 방법
#먼저,데이터베이스(database)의 배우(actor) 설정으로 패러미터(parameter)의 설정을 합니다.
#각 패러미터(parameter)는 초기치 + 기본 치 * LV 로 산출됩니다.
#배우(actor)의 LV1의 때의 패러미터(parameter)의 값이 초기치
#LV2의 때의 값이 기본 값입니다.
#가사 HP의 초기치가 1500,기본치가 150과 자태라면,
#데이터베이스(database)의 배우(actor)의 패러미터(parameter) 설정으로
#LV1의 때의 HP가 1500,LV2의 때의 HP가 150으로 되?font color=FF001E style=background-color:FFF000;>돈?설정하십시오.
#
#패러미터(parameter)의 산출이 적당 지나기 때문에 ,각자 수정이 필요나와 .

  BASE_FINAL_LEVEL = 255   #상한 레벨(level)(그다지 큰 값을 설정한다면 항 합니다)
  MAXHP_LIMIT = 99999999    #HP 한계 치
  MAXSP_LIMIT = 99999999    #SP 한계 치
  STR_LIMIT   = 999999      #STR 한계 치
  DEX_LIMIT   = 999999      #DEX 한계 치
  AGI_LIMIT   = 999999      #AGI 한계 치
  INT_LIMIT   = 999999      #INT 한계 치

class Game_Actor < Game_Battler
  def new_final_level
    lv = BASE_FINAL_LEVEL
    #이하 상한 LV 개별 지정 용
    #case self.id #엑터의 ID 번호에 따라 레벨 한계치를 각자 개별로 바꿔줄 수 있습니다.
    #when 1
    #  lv = 255
    #when 2
    #  lv = 999
    #when 8
    #  lv = 15600
    #end
    return lv
  end
  #--------------------------------------------------------------------------
  # ● EXP 계산
  #--------------------------------------------------------------------------
  def make_exp_list
    actor = $data_actors[@actor_id]
    @exp_list = Array.new(new_final_level + 2)
    @exp_list[1] = 0
    pow_i = 2.4 + actor.exp_inflation / 100.0
    for i in 2..new_final_level + 1
      if i > new_final_level
        @exp_list[i] = 0
      else
        n = actor.exp_basis * ((i + 3) ** pow_i) / (5 ** pow_i)
        @exp_list[i] = @exp_list[i-1] + Integer(n)
      end
    end
  end
  #--------------------------------------------------------------------------
  # ● MaxHP 의(것) 취득
  #--------------------------------------------------------------------------
  def maxhp
    n = [[base_maxhp + @maxhp_plus, 1].max, MAXHP_LIMIT].min
    for i in @states
      n *= $data_states[i].maxhp_rate / 100.0
    end
    n = [[Integer(n), 1].max, MAXHP_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● 기본 MaxHP 의(것) 취득
  #--------------------------------------------------------------------------
  def base_maxhp
    n = $data_actors[@actor_id].parameters[0, 1]
    n += $data_actors[@actor_id].parameters[0, 2] * @level
    return n
  end
  #--------------------------------------------------------------------------
  # ● 기본 MaxSP 의(것) 취득
  #--------------------------------------------------------------------------
  def base_maxsp
    n = $data_actors[@actor_id].parameters[1, 1]
    n += $data_actors[@actor_id].parameters[1, 2] * @level
    return n
  end
  #--------------------------------------------------------------------------
  # ● 기본 완력의 취득
  #--------------------------------------------------------------------------
  def base_str
    n = $data_actors[@actor_id].parameters[2, 1]
    n += $data_actors[@actor_id].parameters[2, 2] * @level
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    n += weapon != nil ? weapon.str_plus : 0
    n += armor1 != nil ? armor1.str_plus : 0
    n += armor2 != nil ? armor2.str_plus : 0
    n += armor3 != nil ? armor3.str_plus : 0
    n += armor4 != nil ? armor4.str_plus : 0
    return [[n, 1].max, STR_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 기본 손재주가 사노 취득
  #--------------------------------------------------------------------------
  def base_dex
    n = $data_actors[@actor_id].parameters[3, 1]
    n += $data_actors[@actor_id].parameters[3, 2] * @level
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    n += weapon != nil ? weapon.dex_plus : 0
    n += armor1 != nil ? armor1.dex_plus : 0
    n += armor2 != nil ? armor2.dex_plus : 0
    n += armor3 != nil ? armor3.dex_plus : 0
    n += armor4 != nil ? armor4.dex_plus : 0
    return [[n, 1].max, DEX_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 기본 신속함의 취득
  #--------------------------------------------------------------------------
  def base_agi
    n = $data_actors[@actor_id].parameters[4, 1]
    n += $data_actors[@actor_id].parameters[4, 2] * @level
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    n += weapon != nil ? weapon.agi_plus : 0
    n += armor1 != nil ? armor1.agi_plus : 0
    n += armor2 != nil ? armor2.agi_plus : 0
    n += armor3 != nil ? armor3.agi_plus : 0
    n += armor4 != nil ? armor4.agi_plus : 0
    return [[n, 1].max, AGI_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 기본 마력의 취득
  #--------------------------------------------------------------------------
  def base_int
    n = $data_actors[@actor_id].parameters[5, 1]
    n += $data_actors[@actor_id].parameters[5, 2] * @level
    weapon = $data_weapons[@weapon_id]
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    n += weapon != nil ? weapon.int_plus : 0
    n += armor1 != nil ? armor1.int_plus : 0
    n += armor2 != nil ? armor2.int_plus : 0
    n += armor3 != nil ? armor3.int_plus : 0
    n += armor4 != nil ? armor4.int_plus : 0
    return [[n, 1].max, INT_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● EXP 의(것) 변경
  #     exp : 새롭다 EXP
  #--------------------------------------------------------------------------
  def exp=(exp)
    # ★EXP의 상한 체크(check)를 해제
    @exp = [exp, 0].max
    # 레벨업(level up)
    while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
      @level += 1
      # 숙련(skill) 습득
      for j in $data_classes[@class_id].learnings
        if j.level == @level
          learn_skill(j.skill_id)
        end
      end
    end
    # 레벨(level) 다운(down)
    while @exp < @exp_list[@level]
      @level -= 1
    end
    # 현재의 HP 라고(와) SP 이(가) 최대치를 초과하고 있다면 수정
    @hp = [@hp, self.maxhp].min
    @sp = [@sp, self.maxsp].min
  end
  #--------------------------------------------------------------------------
  # ● 레벨(level)의 변경
  #     level : 새로운 레벨(level)
  #--------------------------------------------------------------------------
  def level=(level)
    # 상하한 체크(check)
    # ★LV 상한을 new_final_level로 체크(check)하?font color=FF001E style=background-color:FFF000;>돈?변경
    level = [[level, new_final_level].min, 1].max
    # EXP 을(를) 변경
    self.exp = @exp_list[level]
  end
end
 
 
class Game_Battler
  #--------------------------------------------------------------------------
  # ● MaxSP 의(것) 취득
  #--------------------------------------------------------------------------
  def maxsp
    n = [[base_maxsp + @maxsp_plus, 0].max, MAXSP_LIMIT].min
    for i in @states
      n *= $data_states[i].maxsp_rate / 100.0
    end
    n = [[Integer(n), 0].max, MAXSP_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● 완력의 취득
  #--------------------------------------------------------------------------
  def str
    n = [[base_str + @str_plus, 1].max, STR_LIMIT].min
    for i in @states
      n *= $data_states[i].str_rate / 100.0
    end
    n = [[Integer(n), 1].max, STR_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● 손재주가 사노 취득
  #--------------------------------------------------------------------------
  def dex
    n = [[base_dex + @dex_plus, 1].max, DEX_LIMIT].min
    for i in @states
      n *= $data_states[i].dex_rate / 100.0
    end
    n = [[Integer(n), 1].max, DEX_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● 신속함의 취득
  #--------------------------------------------------------------------------
  def agi
    n = [[base_agi + @agi_plus, 1].max, AGI_LIMIT].min
    for i in @states
      n *= $data_states[i].agi_rate / 100.0
    end
    n = [[Integer(n), 1].max, AGI_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● 마력의 취득
  #--------------------------------------------------------------------------
  def int
    n = [[base_int + @int_plus, 1].max, INT_LIMIT].min
    for i in @states
      n *= $data_states[i].int_rate / 100.0
    end
    n = [[Integer(n), 1].max, INT_LIMIT].min
    return n
  end
  #--------------------------------------------------------------------------
  # ● MaxHP 의(것) 설정
  #     maxhp : 새롭다 MaxHP
  #--------------------------------------------------------------------------
  def maxhp=(maxhp)
    @maxhp_plus += maxhp - self.maxhp
    @maxhp_plus = [[@maxhp_plus, -MAXHP_LIMIT].max, MAXHP_LIMIT].min
    @hp = [@hp, self.maxhp].min
  end
  #--------------------------------------------------------------------------
  # ● MaxSP 의(것) 설정
  #     maxsp : 새롭다 MaxSP
  #--------------------------------------------------------------------------
  def maxsp=(maxsp)
    @maxsp_plus += maxsp - self.maxsp
    @maxsp_plus = [[@maxsp_plus, -MAXSP_LIMIT].max, MAXSP_LIMIT].min
    @sp = [@sp, self.maxsp].min
  end
  #--------------------------------------------------------------------------
  # ● 완력의 설정
  #     str : 새로운 완력
  #--------------------------------------------------------------------------
  def str=(str)
    @str_plus += str - self.str
    @str_plus = [[@str_plus, -STR_LIMIT].max, STR_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 손재주가 사노 설정
  #     dex : 새로운 손재주가
  #--------------------------------------------------------------------------
  def dex=(dex)
    @dex_plus += dex - self.dex
    @dex_plus = [[@dex_plus, -DEX_LIMIT].max, DEX_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 신속함의 설정
  #     agi : 새로운 신속함
  #--------------------------------------------------------------------------
  def agi=(agi)
    @agi_plus += agi - self.agi
    @agi_plus = [[@agi_plus, -AGI_LIMIT].max, AGI_LIMIT].min
  end
  #--------------------------------------------------------------------------
  # ● 마력의 설정
  #     int : 새로운 마력
  #--------------------------------------------------------------------------
  def int=(int)
    @int_plus += int - self.int
    @int_plus = [[@int_plus, -INT_LIMIT].max, INT_LIMIT].min
  end
end

TAG •

Who's 양키

?
양 : 양치기가 말한다. 키 : 키가 큰 늑대다!! 양 : 양아치가 말한다. 키 : 키도 x만한 놈이!! 양 : 양키가 말한다. 키 : 키보드가 맛이갔어 ㅅㅂ!! Angel of Knight 리뉴얼中...

Comment '1'
  • ?
    용호작무 2009.12.22 07:56

    헤에, 이게 뭐시다냐~ @ㅁ@

     

    아무래도 스크립트는 GG.


List of Articles
분류 제목 글쓴이 날짜 조회 수
공지 아방스 게시물 · 댓글 작성 규칙 (최근 수정일 2015.11.25) 17 file 완폐남™ 2012.07.17 41261
잡담 아...이런... 스캐너..... 고래83 2009.12.22 1038
잡담 gud님 요청하신 자료요 1 양키 2009.12.21 906
잡담 그리스님 보세요 1 양키 2009.12.21 1016
잡담 ㅋㅋㅋ 요즘 너무 바쁘네요 ㅠ 6 양키 2009.12.21 1325
가입 처음뵙습니다. 1 오오카미 2009.12.20 1340
잡담 배틀러 대용 이미지 완성. Hentz 2009.12.20 1015
멀퓨에또다른매력 두번째 1 小子非 2009.12.20 1165
잡담 인터넷복구 129일만에 집에서 아방스의 공기를 마시다 1 ツッコミ 2009.12.20 995
잡담 네, 그렇습니다. 노가다는 귀찮습니다. < 4 아오키 2009.12.19 1517
잡담 퀴즈랄까 6 S4리그이상한원샷원킬 2009.12.19 993
잡담 전국 대학교 평가 2009년도. 6 코르뉴 2009.12.18 1723
잡담 효과음에 대해.... 1 미니어쳐 2009.12.18 972
잡담 만들고 있는 게임입니다. 느낌좀;ㅁ; 6 라피시스 2009.12.18 970
잡담 미국 판타지 얼음과 불의 노래, 사상 최고로 암울한 주인공 집안 4 달표범 2009.12.18 8023
잡담 빵상? 2 이프 2009.12.18 1158
잡담 쿨럭... =ㅅ=;; AGM 애니메이션 등록과정 강좌... GG 고래83 2009.12.17 1182
잡담 슬픈 전설.txt 8 달표범 2009.12.16 1150
잡담 흐허허허헣 2 S4리그이상한원샷원킬 2009.12.16 1028
잡담 와 1년만인가 Ainigom. 2009.12.15 907
잡담 우리 신입회원분들 인간적으로…! 6 Hentz 2009.12.15 970
목록
Board Pagination Prev 1 ... 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 ... 755 Next
/ 755