| 
 
| 赞 | 0 |  
| VIP | 0 |  
| 好人卡 | 3 |  
| 积分 | 1 |  
| 经验 | 1416 |  
| 最后登录 | 2014-7-14 |  
| 在线时间 | 276 小时 |  
 Lv1.梦旅人 天才琪露诺 
	梦石0 星屑54 在线时间276 小时注册时间2013-6-24帖子1741 | 
| 这个可以复制了吧↑复制代码
class RPG::BaseItem
  def load
    return if self.is_a?(RPG::Skill)
    self.note.split(/[\r\n]+/).each { |line|
      if line =~ /\[(?:load|负重|負重) (\w+)\]/
        return $1.nil? ? 0 : $1.to_i
      end}
    return 0
  end
end
class Scene_Item < Scene_ItemBase
  alias load_start start
  alias load_terminate terminate
  alias load_update update
  def start
    load_start
    @load_window = Window_Base.new(392, 0, 152, 56)
    @load_window.viewport = @viewport
  end
  def terminate
    @load_window.dispose
    load_terminate
  end
  def update
    @load_window.update
    if @temp_load != $game_party.current_load
      @load_window.contents.clear
      @load_window.contents.draw_text(0, 0, 120, 24, "负重:#{$game_party.current_load}/#{$game_party.total_load}")
      @temp_load = $game_party.current_load
    end
    if Input.trigger?(Input::X)
      @item = @item_window.item
      $game_party.lose_item(@item, 1)
      @item_window.refresh
    end
    load_update
  end
end
class Scene_Shop < Scene_MenuBase
  alias load_start start
  alias load_terminate terminate
  alias load_update update
  def start
    load_start
    @load_window = Window_Base.new(392, 0, 152, 56)
    @load_window.viewport = @viewport
  end
  def terminate
    @load_window.dispose
    load_terminate
  end
  def update
    @load_window.update
    if @temp_load != $game_party.current_load
      @load_window.contents.clear
      @load_window.contents.draw_text(0, 0, 120, 24, "负重:#{$game_party.current_load}/#{$game_party.total_load}")
      @temp_load = $game_party.current_load
    end
    load_update
  end
end
class Game_Party < Game_Unit
  attr_reader :current_load
  alias load_initialize initialize
  alias load_gain_item gain_item
  def initialize
    load_initialize
    @current_load = 0
  end
  # 获取队伍最大负重
  def total_load
    party_load = 0
    #members.size.times do |i| 
    for i in 0...members.size
      actor = members[i]
      party_load += actor.load
    end
    return party_load
  end
  def gain_item(item, n, include_equip = false)
    return if item.nil?
    if ((item.load * n) + @current_load) > total_load
      $game_message.texts.push("靠!负重都不足了,你妹的怎么还不赶快清空物品!")
      $game_message.visible = true
      return 
    else
      @current_load += item.load * n
    end
    load_gain_item(item, n, include_equip)
  end
end
class Game_Actor < Game_Battler
  # 获取队员负重
  def load
    return (mhp + mmp) * [url=home.php?mod=space&uid=22147]@level[/url] / agi
  end
end
class Game_Interpreter
  alias load_command_126 command_126
  alias load_command_127 command_127
  alias load_command_128 command_128
  def command_126
    n = operate_value(@params[1], @params[2], @params[3])
    return command_115 if check_load(@params[0], 0, n)
    load_command_126
  end
  #--------------------------------------------------------------------------
  # ● 增減武器
  #--------------------------------------------------------------------------
  def command_127
    n = operate_value(@params[1], @params[2], @params[3])
    return command_115 if check_load(@params[0], 1, n)
    load_command_127
  end
  #--------------------------------------------------------------------------
  # ● 增減防具
  #--------------------------------------------------------------------------
  def command_128
    n = operate_value(@params[1], @params[2], @params[3])
    return command_115 if check_load(@params[0], 2, n)
    load_command_128
  end
  def check_load(item_id, type, n)
    case type
    when 0; item = $data_items[item_id]
    when 1; item = $data_weapons[item_id]
    when 2; item = $data_armors[item_id]
    end
    if (((item.load * n) + $game_party.current_load) > $game_party.total_load)
      $game_message.texts.push("靠!负重都不足了,你妹的怎么还不赶快清空物品!")
      $game_message.visible = true
      return true
    end
    return false
  end
end
 | 
 评分
查看全部评分
 |