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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: 纯属小虫
打印 上一主题 下一主题

[讨论] 【关于物品排列】大家一般用什么方法整理items排序

[复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
7 小时
注册时间
2023-9-12
帖子
4
11
发表于 3 天前 | 只看该作者
灯笼菜刀王 发表于 2025-7-8 11:02
把脚本 163 行替换成这一句

谢谢大佬,不过我找deepseek解决了,他给的是这样的,不过你这个看起来更简单
  1. when 7  # 特殊物品分类
  2.       # 使用名称前缀识别特殊物品
  3.       special_prefix = "★"  # 自定义前缀符号
  4.       
  5.       # 检查物品
  6.       for i in 1...$data_items.size
  7.         item = $data_items[i]
  8.         if item && item.name.include?(special_prefix) && $game_party.item_number(i) > 0
  9.           @data.push(item)
  10.         end
  11.       end
  12.       
  13.       # 检查武器
  14.       for i in 1...$data_weapons.size
  15.         weapon = $data_weapons[i]
  16.         if weapon && weapon.name.include?(special_prefix) && $game_party.weapon_number(i) > 0
  17.           @data.push(weapon)
  18.         end
  19.       end
  20.       
  21.       # 检查防具
  22.       for i in 1...$data_armors.size
  23.         armor = $data_armors[i]
  24.         if armor && armor.name.include?(special_prefix) && $game_party.armor_number(i) > 0
  25.           @data.push(armor)
  26.         end
  27.       end
  28.     end
  29.     # 項目数が 0 でなければビットマップを作成し、全項目を描画
  30.     @item_max = @data.size
  31.     if @item_max > 0
  32.       self.contents = Bitmap.new(width - 32, row_max * 32)
  33.       self.contents.clear
  34.       for i in 0...@item_max
  35.         draw_item(i)
  36.       end
  37.     end
  38.   end

  39. 然后还有这一种

  40. class Harts_Window_ItemList < Window_Selectable
  41.   # 特殊物品ID列表 [类型, ID]
  42.   # 类型: 0=物品, 1=武器, 2=防具
  43.   SPECIAL_ITEMS = [
  44.     [0, 23],  # 物品ID 23
  45.     [0, 45],  # 物品ID 45
  46.     [1, 12],  # 武器ID 12
  47.     [2, 8]    # 防具ID 8
  48.   ]
  49.   
  50.   def set_item(command)
  51.     refresh
  52.     case command
  53.     # ... 其他分类保持不变 ...
  54.     when 7  # 特殊物品分类
  55.       SPECIAL_ITEMS.each do |type, id|
  56.         case type
  57.         when 0  # 物品
  58.           if $game_party.item_number(id) > 0
  59.             @data.push($data_items[id])
  60.           end
  61.         when 1  # 武器
  62.           if $game_party.weapon_number(id) > 0
  63.             @data.push($data_weapons[id])
  64.           end
  65.         when 2  # 防具
  66.           if $game_party.armor_number(id) > 0
  67.             @data.push($data_armors[id])
  68.           end
  69.         end
  70.       end
  71.     end
  72.     # ... 后续代码 ...
  73.   end
  74. end
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-11 21:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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