【非卖品在商店不显示】新研究:0价格物品不显示
原脚本只能在非卖品的三个类别(道具、物品、防具)中写入对应的id编号才能实现在商店中不显示。这点对于制作中途才开始使用这个脚本的朋友没来说很辛苦,如果非卖品较多,输入id很容易遗漏,工作量也大。
于是我在原脚本的基础上修改处了这个【买卖价格为0的物品不在商店中显示】的脚本。
脚本内容:
RUBY 代码
#==============================================================================
# 本脚本来自www.66rpg.com,转载和使用请保留此声明
#==============================================================================
# ■ Window_ShopSell
#------------------------------------------------------------------------------
# 商店画面、浏览显示可以卖掉的商品的窗口。
#==============================================================================
class Window_ShopSell < Window_Selectable
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
item=[]
@not_for_sell_item=[]
for i in1...$data_items.size
if$data_items.price==0
@not_for_sell_item=@not_for_sell_item+
end
end
weapon=[]
@not_for_sell_weapon=[]
for i in1...$data_weapons.size
if$data_weapons.price==0
@not_for_sell_weapon=@not_for_sell_weapon+
end
end
armor=[]
@not_for_sell_armor=[]
for i in1...$data_armors.size
if$data_armors.price==0
@not_for_sell_armor=@not_for_sell_armor+
end
end
super(0, 128, 640, 352)
@column_max = 2
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
ifself.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in1...$data_items.size
if$game_party.item_number(i) > 0
@data.push($data_items)unless@not_for_sell_item.include?(i)
end
end
for i in1...$data_weapons.size
if$game_party.weapon_number(i) > 0
@data.push($data_weapons)unless@not_for_sell_weapon.include?(i)
end
end
for i in1...$data_armors.size
if$game_party.armor_number(i) > 0
@data.push($data_armors)unless@not_for_sell_armor.include?(i)
end
end
# 如果项目数不是 0 就生成位图、描绘全部项目
@item_max = @data.size
if@item_max > 0
self.contents = Bitmap.new(width - 32, row_max * 32)
for i in0...@item_max
draw_item(i)
end
end
end
end
#==============================================================================
# 本脚本来自www.66rpg.com,转载和使用请保留此声明
#==============================================================================
本帖来自P1论坛作者Mr.Faint,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=375198若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页:
[1]