设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2228|回复: 3
打印 上一主题 下一主题

[已经过期] 希望各位幫忙的問題 (連擊,任務,必定重擊和 能力值突破上限

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-11-16
帖子
6
跳转到指定楼层
1
发表于 2009-11-16 21:30:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

Lv1.梦旅人


梦石
0
星屑
89
在线时间
24 小时
注册时间
2006-5-27
帖子
11425

贵宾

2
发表于 2009-11-16 21:36:10 | 只看该作者
图片全部不可见,请使用论坛附件上传图片。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-11-16
帖子
6
3
 楼主| 发表于 2009-11-16 21:45:37 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-1-20
帖子
143
4
发表于 2009-11-19 12:09:41 | 只看该作者
本帖最后由 妮贝雅 于 2009-11-19 12:12 编辑

任务那个,在第二页最后加个把道具数存入人形数变量的事件试试。。。
测试的时候可以按F9看看是不是那个变量出问题了

限制解除
  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 限界突破 - KGC_LimitBreak ◆ VX ◆
  3. #_/    ◇ Last update : 2008/01/09 ◇
  4. #_/----------------------------------------------------------------------------
  5. #_/  ゲーム中の各種上限値を変更します。
  6. #_/============================================================================
  7. #_/  再定義が多いので、「素材」の最上部に導入してください。
  8. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

  9. #==============================================================================
  10. # ★ カスタマイズ項目 - Customize ★
  11. #==============================================================================

  12. module KGC
  13. module LimitBreak
  14.   # ◆ 能力値算出方式
  15.   #   0..データベース通り。
  16.   #      (100以降は計算式として PARAMETER_CALC_EXP を使用)
  17.   #
  18.   #   1..データベースを用いた2次関数。
  19.   #        a:レベル1の値  b:レベル2の値  c:レベル3の値  x:現レベル
  20.   #      として、
  21.   #        ax^2 + bx + c
  22.   #      を用いて能力値を算出。
  23.   #
  24.   #   2..データベースを用いた1次関数。
  25.   #        b:レベル2の値  c:レベル3の値  x:現レベル
  26.   #      として、
  27.   #        bx + c
  28.   #      を用いて能力値を算出。
  29.   #      (レベル 2 と 3 の値を使うのは、2次関数方式との使い分けを楽にするため)
  30.   PARAMETER_CALC_METHOD = 0

  31.   # ◆ レベル 100 以降の能力値計算式
  32.   #  PARAMETER_CALC_METHOD = 0 のときに使用します。
  33.   #  【 level..現レベル  param[x]..レベル x の能力値 】
  34.   #  この計算結果をレベル 99 の能力値に加算します。
  35.   PARAMETER_CALC_EXP = "(param[99] - param[98]) * (level - 99)"

  36.   # ◆ アクターのレベル上限
  37.   ACTOR_FINAL_LEVEL = []  # ← これは消さないこと!
  38.   # ここから下に、アクターごとの最終レベルを
  39.   #   ACTOR_FINAL_LEVEL[アクターID] = 最終レベル
  40.   # という形式で設定します。
  41.   # <例> ↓ アクター 1 の最終レベル 999
  42.   #ACTOR_FINAL_LEVEL[1] = 999

  43.   # ◆ アクターのレベル上限 (デフォルト)
  44.   #  上限を指定しなかった場合は、この値を最終レベルとして使用します。
  45.   ACTOR_FINAL_LEVEL_DEFAULT = 999
  46.   # ◆ アクターの経験値上限
  47.   ACTOR_EXP_LIMIT = 9999999

  48.   # ◆ アクターの MaxHP 上限
  49.   ACTOR_MAXHP_LIMIT     = 99999
  50.   # ◆ アクターの MaxMP 上限
  51.   ACTOR_MAXMP_LIMIT     = 9999
  52.   # ◆ アクターの攻撃力、防御力、精神力、敏捷性上限
  53.   ACTOR_PARAMETER_LIMIT = 9999

  54.   # ◆ エネミーの MaxHP 上限
  55.   ENEMY_MAXHP_LIMIT     = 99999999
  56.   # ◆ エネミーの MaxMP 上限
  57.   ENEMY_MAXMP_LIMIT     = 9999
  58.   # ◆ エネミーの攻撃力、防御力、精神力、敏捷性上限
  59.   ENEMY_PARAMETER_LIMIT = 9999

  60.   # ◆ エネミーの能力値補正
  61.   #  エネミーの各種能力値をデータベースの ○% にします。
  62.   #  データベース通りにする場合は 100 にしてください。
  63.   ENEMY_MAXHP_RATE = 100  # MaxHP
  64.   ENEMY_MAXMP_RATE = 100  # MaxMP
  65.   ENEMY_ATK_RATE   = 100  # 攻撃力
  66.   ENEMY_DEF_RATE   = 100  # 防御力
  67.   ENEMY_SPI_RATE   = 100  # 精神力
  68.   ENEMY_AGI_RATE   = 100  # 敏捷性

  69.   # ◆ 所持金上限
  70.   GOLD_LIMIT = 999999999

  71.   # ◆ アイテム所持数上限
  72.   ITEM_NUMBER_LIMIT = 100

  73.   module_function
  74.   #--------------------------------------------------------------------------
  75.   # ○ 敵能力値直接指定
  76.   #     ここで、敵の MaxHP などを直接指定することができます。
  77.   #     データベースに入りきらない数値を指定する場合に使用してください。
  78.   #--------------------------------------------------------------------------
  79.   def set_enemy_parameters
  80.     #  <例> ID:10 の敵の MaxHP を 2000000 にする場合
  81.     # $data_enemies[10].maxhp = 2000000
  82.     #  <例> ID:16 の敵の攻撃力を 5000 にする場合
  83.     # $data_enemies[16].atk = 5000
  84.     #  <例> ID:20 の敵の防御力を2倍にする場合
  85.     # $data_enemies[20].def *= 2
  86.   end
  87.   
  88.   #武器能力重设置,可突破数据库上限
  89.   def set_weapon_parameters
  90.    #  $data_weapons[1].atk = 1000

  91.   end

  92.   #防具能力重设置
  93.   def set_armor_parameters
  94.    #  $data_armors[1].def = 1000
  95.    
  96.   end

  97.   #道具能力重设置
  98.   def set_item_parameters
  99.    #  $data_items[1].name =""
  100.    
  101.   end

  102.   #技能重设置
  103.   def set_skill_parameters
  104.    #  $data_skills[1].name = ""

  105.   end

  106.   def set_state_parameters
  107.    #  $data_states[9].atk_rate = 500

  108.   end
  109.    
  110. end
  111. end

  112. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  113. $imported = {} if $imported == nil
  114. $imported["LimitBreak"] = true

  115. module KGC::LimitBreak
  116.   # 正規表現を定義
  117.   module Regexp
  118.     # ベースアイテム
  119.     module BaseItem
  120.       # 所持数上限
  121.       NUMBER_LIMIT = /<(?:NUMBER_LIMIT|所持数上限)[ ]*(\d+)>/i
  122.     end
  123.   end

  124.   module_function
  125.   #--------------------------------------------------------------------------
  126.   # ○ 敵の能力補正を適用
  127.   #--------------------------------------------------------------------------
  128.   def revise_enemy_parameters
  129.     (1...$data_enemies.size).each { |i|
  130.       enemy = $data_enemies[i]
  131.       enemy.maxhp = enemy.maxhp * ENEMY_MAXHP_RATE / 100
  132.       enemy.maxmp = enemy.maxmp * ENEMY_MAXMP_RATE / 100
  133.       enemy.atk = enemy.atk * ENEMY_ATK_RATE / 100
  134.       enemy.def = enemy.def * ENEMY_DEF_RATE / 100
  135.       enemy.spi = enemy.spi * ENEMY_SPI_RATE / 100
  136.       enemy.agi = enemy.agi * ENEMY_AGI_RATE / 100
  137.     }
  138.   end
  139. end

  140. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  141. #==============================================================================
  142. # ■ RPG::BaseItem
  143. #==============================================================================

  144. class RPG::BaseItem
  145.   #--------------------------------------------------------------------------
  146.   # ○ 限界突破のキャッシュ生成
  147.   #--------------------------------------------------------------------------
  148.   def create_limit_break_cache
  149.     @__number_limit = KGC::LimitBreak::ITEM_NUMBER_LIMIT

  150.     self.note.each_line { |line|
  151.       if line =~ KGC::LimitBreak::Regexp::BaseItem::NUMBER_LIMIT
  152.         # 所持数上限
  153.         @__number_limit = $1.to_i
  154.       end
  155.     }
  156.   end
  157.   #--------------------------------------------------------------------------
  158.   # ○ 所持数上限取得
  159.   #--------------------------------------------------------------------------
  160.   def number_limit
  161.     create_limit_break_cache if @__number_limit == nil
  162.     return @__number_limit
  163.   end
  164. end

  165. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  166. #==============================================================================
  167. # ■ Game_Battler
  168. #==============================================================================

  169. class Game_Battler
  170.   #--------------------------------------------------------------------------
  171.   # ● MaxHP の制限値取得
  172.   #--------------------------------------------------------------------------
  173.   def maxhp_limit
  174.     return KGC::LimitBreak::ENEMY_MAXHP_LIMIT
  175.   end
  176.   #--------------------------------------------------------------------------
  177.   # ○ MaxMP の制限値取得
  178.   #--------------------------------------------------------------------------
  179.   def maxmp_limit
  180.     return KGC::LimitBreak::ENEMY_MAXMP_LIMIT
  181.   end
  182.   #--------------------------------------------------------------------------
  183.   # ● MaxMP の取得
  184.   #--------------------------------------------------------------------------
  185.   def maxmp
  186.     return [[base_maxmp + @maxmp_plus, 0].max, maxmp_limit].min
  187.   end
  188.   #--------------------------------------------------------------------------
  189.   # ○ 各種パラメータの制限値取得
  190.   #--------------------------------------------------------------------------
  191.   def parameter_limit
  192.     return KGC::LimitBreak::ENEMY_PARAMETER_LIMIT
  193.   end
  194.   #--------------------------------------------------------------------------
  195.   # ● 攻撃力の取得
  196.   #--------------------------------------------------------------------------
  197.   def atk
  198.     n = [base_atk + @atk_plus, 1].max
  199.     states.each { |state| n *= state.atk_rate / 100.0 }
  200.     n = [[Integer(n), 1].max, parameter_limit].min
  201.     return n
  202.   end
  203.   #--------------------------------------------------------------------------
  204.   # ● 防御力の取得
  205.   #--------------------------------------------------------------------------
  206.   def def
  207.     n = [base_def + @def_plus, 1].max
  208.     states.each { |state| n *= state.def_rate / 100.0 }
  209.     n = [[Integer(n), 1].max, parameter_limit].min
  210.     return n
  211.   end
  212.   #--------------------------------------------------------------------------
  213.   # ● 精神力の取得
  214.   #--------------------------------------------------------------------------
  215.   def spi
  216.     n = [base_spi + @spi_plus, 1].max
  217.     states.each { |state| n *= state.spi_rate / 100.0 }
  218.     n = [[Integer(n), 1].max, parameter_limit].min
  219.     return n
  220.   end
  221.   #--------------------------------------------------------------------------
  222.   # ● 敏捷性の取得
  223.   #--------------------------------------------------------------------------
  224.   def agi
  225.     n = [base_agi + @agi_plus, 1].max
  226.     states.each { |state| n *= state.agi_rate / 100.0 }
  227.     n = [[Integer(n), 1].max, parameter_limit].min
  228.     return n
  229.   end
  230.   #--------------------------------------------------------------------------
  231.   # ● MaxHP の設定
  232.   #     new_maxhp : 新しい MaxHP
  233.   #--------------------------------------------------------------------------
  234.   def maxhp=(new_maxhp)
  235.     @maxhp_plus += new_maxhp - self.maxhp
  236.     @maxhp_plus = [[@maxhp_plus, -maxhp_limit].max, maxhp_limit].min
  237.     @hp = [@hp, self.maxhp].min
  238.   end
  239.   #--------------------------------------------------------------------------
  240.   # ● MaxMP の設定
  241.   #     new_maxmp : 新しい MaxMP
  242.   #--------------------------------------------------------------------------
  243.   def maxmp=(new_maxmp)
  244.     @maxmp_plus += new_maxmp - self.maxmp
  245.     @maxmp_plus = [[@maxmp_plus, -maxmp_limit].max, maxmp_limit].min
  246.     @mp = [@mp, self.maxmp].min
  247.   end
  248.   #--------------------------------------------------------------------------
  249.   # ● 攻撃力の設定
  250.   #     new_atk : 新しい攻撃力
  251.   #--------------------------------------------------------------------------
  252.   def atk=(new_atk)
  253.     @atk_plus += new_atk - self.atk
  254.     @atk_plus = [[@atk_plus, -parameter_limit].max, parameter_limit].min
  255.   end
  256.   #--------------------------------------------------------------------------
  257.   # ● 防御力の設定
  258.   #     new_def : 新しい防御力
  259.   #--------------------------------------------------------------------------
  260.   def def=(new_def)
  261.     @def_plus += new_def - self.def
  262.     @def_plus = [[@def_plus, -parameter_limit].max, parameter_limit].min
  263.   end
  264.   #--------------------------------------------------------------------------
  265.   # ● 精神力の設定
  266.   #     new_spi : 新しい精神力
  267.   #--------------------------------------------------------------------------
  268.   def spi=(new_spi)
  269.     @spi_plus += new_spi - self.spi
  270.     @spi_plus = [[@spi_plus, -parameter_limit].max, parameter_limit].min
  271.   end
  272.   #--------------------------------------------------------------------------
  273.   # ● 敏捷性の設定
  274.   #     agi : 新しい敏捷性
  275.   #--------------------------------------------------------------------------
  276.   def agi=(new_agi)
  277.     @agi_plus += new_agi - self.agi
  278.     @agi_plus = [[@agi_plus, -parameter_limit].max, parameter_limit].min
  279.   end
  280. end

  281. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  282. #==============================================================================
  283. # ■ Game_Actor
  284. #==============================================================================

  285. class Game_Actor < Game_Battler
  286.   #--------------------------------------------------------------------------
  287.   # ● 経験値計算
  288.   #--------------------------------------------------------------------------
  289.   def make_exp_list
  290.     @exp_list = Array.new(final_level + 2)
  291.     @exp_list[1] = @exp_list[final_level + 1] = 0
  292.     m = actor.exp_basis
  293.     n = 0.75 + actor.exp_inflation / 200.0
  294.     (2..final_level).each { |i|
  295.       @exp_list[i] = @exp_list[i-1] + Integer(m)
  296.       m *= 1 + n
  297.       n *= 0.9
  298.     }
  299.   end
  300.   #--------------------------------------------------------------------------
  301.   # ○ 最終レベルの取得
  302.   #--------------------------------------------------------------------------
  303.   def final_level
  304.     n = KGC::LimitBreak::ACTOR_FINAL_LEVEL[self.id]
  305.     return (n != nil ? n : KGC::LimitBreak::ACTOR_FINAL_LEVEL_DEFAULT)
  306.   end
  307.   #--------------------------------------------------------------------------
  308.   # ● MaxHP の制限値取得
  309.   #--------------------------------------------------------------------------
  310.   def maxhp_limit
  311.     return KGC::LimitBreak::ACTOR_MAXHP_LIMIT
  312.   end
  313.   #--------------------------------------------------------------------------
  314.   # ○ MaxMP の制限値取得
  315.   #--------------------------------------------------------------------------
  316.   def maxmp_limit
  317.     return KGC::LimitBreak::ACTOR_MAXMP_LIMIT
  318.   end
  319.   #--------------------------------------------------------------------------
  320.   # ○ 各種パラメータの制限値取得
  321.   #--------------------------------------------------------------------------
  322.   def parameter_limit
  323.     return KGC::LimitBreak::ACTOR_PARAMETER_LIMIT
  324.   end
  325.   #--------------------------------------------------------------------------
  326.   # ○ 経験値の制限値取得
  327.   #--------------------------------------------------------------------------
  328.   def exp_limit
  329.     return KGC::LimitBreak::ACTOR_EXP_LIMIT
  330.   end
  331.   #--------------------------------------------------------------------------
  332.   # ● 経験値の変更
  333.   #     exp  : 新しい経験値
  334.   #     show : レベルアップ表示フラグ
  335.   #--------------------------------------------------------------------------
  336.   def change_exp(exp, show)
  337.     last_level = @level
  338.     last_skills = skills
  339.     @exp = [[exp, exp_limit].min, 0].max
  340.     while @exp >= @exp_list[@level+1] && @exp_list[@level+1] > 0
  341.       level_up
  342.     end
  343.     while @exp < @exp_list[@level]
  344.       level_down
  345.     end
  346.     @hp = [@hp, maxhp].min
  347.     @mp = [@mp, maxmp].min
  348.     if show && @level > last_level
  349.       display_level_up(skills - last_skills)
  350.     end
  351.   end
  352.   #--------------------------------------------------------------------------
  353.   # ● レベルの変更
  354.   #     level : 新しいレベル
  355.   #     show  : レベルアップ表示フラグ
  356.   #--------------------------------------------------------------------------
  357.   def change_level(level, show)
  358.     level = [[level, final_level].min, 1].max
  359.     change_exp(@exp_list[level], show)
  360.   end
  361.   #--------------------------------------------------------------------------
  362.   # ○ 基本パラメータの取得
  363.   #--------------------------------------------------------------------------
  364.   def base_parameter(type)
  365.     case KGC::LimitBreak::PARAMETER_CALC_METHOD
  366.     when 0  # 数式定義
  367.       if @level >= 100
  368.         calc_text = KGC::LimitBreak::PARAMETER_CALC_EXP.dup
  369.         calc_text.gsub!(/level/i) { "@level" }
  370.         calc_text.gsub!(/param\[(\d+)\]/i) {
  371.           "actor.parameters[type, #{$1.to_i}]"
  372.         }
  373.         return actor.parameters[type, 99] + eval(calc_text)
  374.       end
  375.     when 1  # 二次関数
  376.       a = actor.parameters[type, 1]
  377.       b = actor.parameters[type, 2]
  378.       c = actor.parameters[type, 3]
  379.       return ((a * @level + b) * @level + c)
  380.     when 2  # 一次関数
  381.       b = actor.parameters[type, 2]
  382.       c = actor.parameters[type, 3]
  383.       return (b * @level + c)
  384.     end
  385.     return actor.parameters[type, @level]
  386.   end
  387.   #--------------------------------------------------------------------------
  388.   # ● 基本 MaxHP の取得
  389.   #--------------------------------------------------------------------------
  390.   def base_maxhp
  391.     return base_parameter(0)
  392.   end
  393.   #--------------------------------------------------------------------------
  394.   # ● 基本 MaxMP の取得
  395.   #--------------------------------------------------------------------------
  396.   def base_maxmp
  397.     return base_parameter(1)
  398.   end
  399.   #--------------------------------------------------------------------------
  400.   # ● 基本攻撃力の取得
  401.   #--------------------------------------------------------------------------
  402.   def base_atk
  403.     n = base_parameter(2)
  404.     equips.compact.each { |item| n += item.atk }
  405.     return n
  406.   end
  407.   #--------------------------------------------------------------------------
  408.   # ● 基本防御力の取得
  409.   #--------------------------------------------------------------------------
  410.   def base_def
  411.     n = base_parameter(3)
  412.     equips.compact.each { |item| n += item.def }
  413.     return n
  414.   end
  415.   #--------------------------------------------------------------------------
  416.   # ● 基本精神力の取得
  417.   #--------------------------------------------------------------------------
  418.   def base_spi
  419.     n = base_parameter(4)
  420.     equips.compact.each { |item| n += item.spi }
  421.     return n
  422.   end
  423.   #--------------------------------------------------------------------------
  424.   # ● 基本敏捷性の取得
  425.   #--------------------------------------------------------------------------
  426.   def base_agi
  427.     n = base_parameter(5)
  428.     equips.compact.each { |item| n += item.agi }
  429.     return n
  430.   end
  431. end

  432. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  433. #==============================================================================
  434. # ■ Game_Party
  435. #==============================================================================

  436. class Game_Party < Game_Unit
  437.   #--------------------------------------------------------------------------
  438.   # ○ 所持金の制限値取得
  439.   #--------------------------------------------------------------------------
  440.   def gold_limit
  441.     return KGC::LimitBreak::GOLD_LIMIT
  442.   end
  443.   #--------------------------------------------------------------------------
  444.   # ● ゴールドの増加 (減少)
  445.   #     n : 金額
  446.   #--------------------------------------------------------------------------
  447.   def gain_gold(n)
  448.     @gold = [[@gold + n, 0].max, gold_limit].min
  449.   end
  450.   #--------------------------------------------------------------------------
  451.   # ● アイテムの増加 (減少)
  452.   #     item          : アイテム
  453.   #     n             : 個数
  454.   #     include_equip : 装備品も含める
  455.   #--------------------------------------------------------------------------
  456.   def gain_item(item, n, include_equip = false)
  457.     number = item_number(item)
  458.     case item
  459.     when RPG::Item
  460.       @items[item.id] = [[number + n, 0].max, item.number_limit].min
  461.     when RPG::Weapon
  462.       @weapons[item.id] = [[number + n, 0].max, item.number_limit].min
  463.     when RPG::Armor
  464.       @armors[item.id] = [[number + n, 0].max, item.number_limit].min
  465.     end
  466.     n += number
  467.     if include_equip && n < 0
  468.       members.each { |actor|
  469.         while n < 0 && actor.equips.include?(item)
  470.           actor.discard_equip(item)
  471.           n += 1
  472.         end
  473.       }
  474.     end
  475.   end
  476. end

  477. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  478. #==============================================================================
  479. # ■ Window_ShopBuy
  480. #==============================================================================

  481. class Window_ShopBuy < Window_Selectable
  482.   #--------------------------------------------------------------------------
  483.   # ● 項目の描画
  484.   #     index : 項目番号
  485.   #--------------------------------------------------------------------------
  486.   def draw_item(index)
  487.     item = @data[index]
  488.     number = $game_party.item_number(item)
  489.     enabled = (item.price <= $game_party.gold && number < item.number_limit)
  490.     rect = item_rect(index)
  491.     self.contents.clear_rect(rect)
  492.     draw_item_name(item, rect.x, rect.y, enabled)
  493.     rect.width -= 4
  494.     self.contents.draw_text(rect, item.price, 2)
  495.   end
  496. end

  497. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  498. #==============================================================================
  499. # ■ Scene_Title
  500. #==============================================================================

  501. class Scene_Title < Scene_Base
  502.   #--------------------------------------------------------------------------
  503.   # ● データベースのロード
  504.   #--------------------------------------------------------------------------
  505.   alias load_database_KGC_LimitBreak load_database
  506.   def load_database
  507.     load_database_KGC_LimitBreak

  508.     set_enemy_parameters
  509.     set_weapon_parameters
  510.     set_armor_parameters
  511.     set_item_parameters
  512.     set_skill_parameters
  513.     set_state_parameters
  514.   end
  515.   #--------------------------------------------------------------------------
  516.   # ● 戦闘テスト用データベースのロード
  517.   #--------------------------------------------------------------------------
  518.   alias load_bt_database_KGC_LimitBreak load_bt_database
  519.   def load_bt_database
  520.     load_bt_database_KGC_LimitBreak

  521.     set_enemy_parameters
  522.     set_weapon_parameters
  523.     set_armor_parameters
  524.     set_item_parameters
  525.     set_skill_parameters
  526.     set_state_parameters
  527.   end
  528.   #--------------------------------------------------------------------------
  529.   # ○ エネミーの能力値を設定
  530.   #--------------------------------------------------------------------------
  531.   def set_enemy_parameters
  532.     KGC::LimitBreak.revise_enemy_parameters
  533.     KGC::LimitBreak.set_enemy_parameters
  534.   end
  535.   def set_weapon_parameters
  536.     KGC::LimitBreak.set_weapon_parameters
  537.   end
  538.   def set_armor_parameters
  539.     KGC::LimitBreak.set_armor_parameters
  540.   end
  541.   def set_item_parameters
  542.     KGC::LimitBreak.set_item_parameters
  543.   end
  544.   def set_skill_parameters
  545.     KGC::LimitBreak.set_skill_parameters
  546.   end
  547.   def set_state_parameters
  548.     KGC::LimitBreak.set_state_parameters
  549.   end
  550. end

  551. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  552. #==============================================================================
  553. # ■ Scene_File
  554. #==============================================================================

  555. class Scene_File < Scene_Base
  556.   #--------------------------------------------------------------------------
  557.   # ● セーブデータの読み込み
  558.   #     file : 読み込み用ファイルオブジェクト (オープン済み)
  559.   #--------------------------------------------------------------------------
  560.   alias read_save_data_KGC_LimitBreak read_save_data
  561.   def read_save_data(file)
  562.     read_save_data_KGC_LimitBreak(file)

  563.     (1...$data_actors.size).each { |i|
  564.       actor = $game_actors[i]
  565.       actor.make_exp_list
  566.       # レベル上限チェック
  567.       if actor.level > actor.final_level
  568.         while actor.level > actor.final_level
  569.           actor.level_down
  570.         end
  571.         # 減少した HP などを反映させるためのおまじない
  572.         actor.change_level(actor.final_level, false)
  573.       end
  574.     }
  575.   end
  576. end

  577. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  578. #==============================================================================
  579. # ■ Scene_Shop
  580. #==============================================================================

  581. class Scene_Shop < Scene_Base
  582.   #--------------------------------------------------------------------------
  583.   # ● 購入アイテム選択の更新
  584.   #--------------------------------------------------------------------------
  585.   def update_buy_selection
  586.     @status_window.item = @buy_window.item
  587.     if Input.trigger?(Input::B)
  588.       Sound.play_cancel
  589.       @command_window.active = true
  590.       @dummy_window.visible = true
  591.       @buy_window.active = false
  592.       @buy_window.visible = false
  593.       @status_window.visible = false
  594.       @status_window.item = nil
  595.       @help_window.set_text("")
  596.       return
  597.     end
  598.     if Input.trigger?(Input::C)
  599.       @item = @buy_window.item
  600.       number = $game_party.item_number(@item)
  601.       if @item == nil || @item.price > $game_party.gold ||
  602.           number == @item.number_limit
  603.         Sound.play_buzzer
  604.       else
  605.         Sound.play_decision
  606.         max = (@item.price == 0 ?
  607.           @item.number_limit : $game_party.gold / @item.price)
  608.         max = [max, @item.number_limit - number].min
  609.         @buy_window.active = false
  610.         @buy_window.visible = false
  611.         @number_window.set(@item, max, @item.price)
  612.         @number_window.active = true
  613.         @number_window.visible = true
  614.       end
  615.     end
  616.   end
  617. end
复制代码
神?何じゃそりゃ?食べていい?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-12 02:41

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表