Project1

标题: 【自定义物品分类】 [打印本页]

作者: VIPArcher    时间: 2014-10-16 17:26
标题: 【自定义物品分类】
RUBY 代码复制
  1. #==============================================================================
  2. # ■ 物品分类扩展
  3. # By :VIPArcher
  4. #  -- 本脚本来自 [url]https://rpg.blue[/url] 使用或转载请保留以上信息。
  5. #==============================================================================
  6. # 使用说明:
  7. #   在设定区设定好分类后在道具/武器/防具备注栏备注
  8. #   <分类:分类名称>
  9. #   即可把对应物品归到对应分类下,备注未填写分类的物品按默认分类归类
  10. #==============================================================================
  11. $VIPArcherScript ||= {};$VIPArcherScript[:item_category] = 20141017
  12. #==============================================================================
  13. # ● 设定区
  14. #==============================================================================
  15. module VIPArcher
  16.   ITEM_CATEGORY = { #  <- 别删
  17. #格式:分类标识符号 => "分类名称", 注:标识尽量独特不重复即可
  18.       :item       => "道具", #默认分类
  19.       :weapon     => "武器", #默认分类
  20.       :armor      => "护甲", #默认分类
  21.       :key_item   => "贵重", #默认分类
  22.       :viparcher  => "VIP"
  23.       #在这里继续添加...
  24.     } #  <- 别删
  25. end
  26. class Window_ItemList < Window_Selectable
  27.   #--------------------------------------------------------------------------
  28.   # ● 查询列表中是否含有此物品
  29.   #--------------------------------------------------------------------------
  30.   alias vip_include? include?
  31.   def include?(item)
  32.     if item && item.note =~ /<分类[:].*>/
  33.       note_include?(item)
  34.     else
  35.       vip_include?(item)
  36.     end
  37.   end
  38.   #--------------------------------------------------------------------------
  39.   # ● 检查备注分类
  40.   #--------------------------------------------------------------------------
  41.   def note_include?(item)
  42.     item.note =~ /<分类[:]\s*#{VIPArcher::ITEM_CATEGORY[@category]}>/
  43.   end
  44. end
  45. class Window_ItemCategory < Window_HorzCommand
  46.   #--------------------------------------------------------------------------
  47.   # ● 生成指令列表
  48.   #--------------------------------------------------------------------------
  49.   def make_command_list
  50.     VIPArcher::ITEM_CATEGORY.each{|key, value| add_command(value,key)}
  51.   end
  52. end





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1