| 本帖最后由 jhhuang 于 2017-7-8 20:25 编辑 
 在物品备注里写上下面这句话:
 @actor_cost[1]
 代表只有1号角色可以使用,如果多个角色可使用写:
 @actor_cost[1,3,5,7]
 如果都没写,默认所有人可以使用
 如果没人能使用,可以写:
 @actor_cost[0]
 
 
 #encoding:utf-8#==============================================================================# ■ Window_BattleItem#------------------------------------------------------------------------------#  战斗画面中,选择“使用物品”的窗口。#============================================================================== class Window_BattleItem < Window_ItemList  #--------------------------------------------------------------------------  # ● 生成物品列表  #--------------------------------------------------------------------------  def make_item_list    @data = $game_party.all_items.select {|item| include?(item) and actor_cost?(item) }    @data.push(nil) if include?(nil)  end  #--------------------------------------------------------------------------  # ● 特定玩家判断  #--------------------------------------------------------------------------  def actor_cost?(item)    if item.note =~ /@actor_cost\[(.+?)\]/      return false unless $1.split(/,/).collect{|str|str.to_i}.include?(BattleManager.actor.id)    end    return true  endend
#encoding:utf-8 
#============================================================================== 
# ■ Window_BattleItem 
#------------------------------------------------------------------------------ 
#  战斗画面中,选择“使用物品”的窗口。 
#============================================================================== 
  
class Window_BattleItem < Window_ItemList 
  #-------------------------------------------------------------------------- 
  # ● 生成物品列表 
  #-------------------------------------------------------------------------- 
  def make_item_list 
    @data = $game_party.all_items.select {|item| include?(item) and actor_cost?(item) } 
    @data.push(nil) if include?(nil) 
  end 
  #-------------------------------------------------------------------------- 
  # ● 特定玩家判断 
  #-------------------------------------------------------------------------- 
  def actor_cost?(item) 
    if item.note =~ /@actor_cost\[(.+?)\]/ 
      return false unless $1.split(/,/).collect{|str|str.to_i}.include?(BattleManager.actor.id) 
    end 
    return true 
  end 
end 
 |