Project1

标题: 关于物品分类脚本 [打印本页]

作者: 天涯孤客    时间: 2016-1-11 20: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  => "配方",
  23.       :shuju      => "数据",
  24.       :fc         => "房产",
  25.       :dd         => "测试",
  26.       #在这里继续添加...
  27.     } #  <- 别删
  28. end
  29. class Window_ItemList < Window_Selectable
  30.   #--------------------------------------------------------------------------
  31.   # ● 查询列表中是否含有此物品
  32.   #--------------------------------------------------------------------------
  33.   alias vip_include? include?
  34.   def include?(item)
  35.     if item && item.note =~ /<分类[:].*>/
  36.       note_include?(item)
  37.     else
  38.       vip_include?(item)
  39.     end
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 检查备注分类
  43.   #--------------------------------------------------------------------------
  44.   def note_include?(item)
  45.     item.note =~ /<分类[:]\s*#{VIPArcher::ITEM_CATEGORY[@category]}>/
  46.   end
  47. end
  48. class Window_ItemCategory < Window_HorzCommand
  49.   #--------------------------------------------------------------------------
  50.   # ● 生成指令列表
  51.   #--------------------------------------------------------------------------
  52.   def make_command_list
  53.     VIPArcher::ITEM_CATEGORY.each{|key, value| add_command(value,key)}
  54.   end
  55. end





为什么我第八个分类,看不见??

就是进入游戏,测试游戏后,,进入 物品栏,,第八个分类在屏幕外面。

@VIPArcher  
作者: VIPArcher    时间: 2016-1-11 21:21
噫,那你就设定一下一页显示多少列分类吧。例如这样
  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  => "配方",
  23.       :shuju      => "数据",
  24.       :fc         => "房产",
  25.       :dd         => "测试",
  26.       #在这里继续添加...
  27.     } #  <- 别删
  28. end
  29. class Window_ItemList < Window_Selectable
  30.   #--------------------------------------------------------------------------
  31.   # ● 查询列表中是否含有此物品
  32.   #--------------------------------------------------------------------------
  33.   alias vip_include? include?
  34.   def include?(item)
  35.     if item && item.note =~ /<分类[:].*>/
  36.       note_include?(item)
  37.     else
  38.       vip_include?(item)
  39.     end
  40.   end
  41.   #--------------------------------------------------------------------------
  42.   # ● 检查备注分类
  43.   #--------------------------------------------------------------------------
  44.   def note_include?(item)
  45.     item.note =~ /<分类[:]\s*#{VIPArcher::ITEM_CATEGORY[@category]}>/
  46.   end
  47. end
  48. class Window_ItemCategory < Window_HorzCommand
  49.   #--------------------------------------------------------------------------
  50.   # ● 生成指令列表
  51.   #--------------------------------------------------------------------------
  52.   def make_command_list
  53.     VIPArcher::ITEM_CATEGORY.each{|key, value| add_command(value,key)}
  54.   end
  55.   #--------------------------------------------------------------------------
  56.   # ● 获取列数
  57.   #--------------------------------------------------------------------------
  58.   def col_max; 5 end
  59. end
复制代码





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