查看: 98|回复: 0

[转载发布] 【非卖品在商店不显示】新研究:0价格物品不显示

[复制链接]
  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 37 天

    连续签到: 3 天

    [LV.5]常住居民I

    2028

    主题

    32

    回帖

    7260

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    0
    卡币
    5184
    OK点
    16
    积分
    7260
    发表于 同元一千年八月五日(秋) | 显示全部楼层 |阅读模式
    原脚本只能在非卖品的三个类别(道具、物品、防具)中写入对应的id编号才能实现在商店中不显示。
    这点对于制作中途才开始使用这个脚本的朋友没来说很辛苦,如果非卖品较多,输入id很容易遗漏,工作量也大。
    于是我在原脚本的基础上修改处了这个【买卖价格为0的物品不在商店中显示】的脚本。

    脚本内容:

    RUBY 代码
    1. #==============================================================================
    2. # 本脚本来自[url]www.66rpg.com[/url],转载和使用请保留此声明
    3. #==============================================================================
    4. # ■ Window_ShopSell
    5. #------------------------------------------------------------------------------
    6. #  商店画面、浏览显示可以卖掉的商品的窗口。
    7. #==============================================================================
    8. class Window_ShopSell < Window_Selectable
    9. #--------------------------------------------------------------------------
    10. # ● 初始化对像
    11. #--------------------------------------------------------------------------
    12.    def initialize
    13.      item=[]
    14.      @not_for_sell_item=[]
    15.      for i in1...$data_items.size
    16.      if$data_items[i].price==0
    17.        @not_for_sell_item=@not_for_sell_item+[i]
    18.      end
    19.    end
    20.      weapon=[]
    21.      @not_for_sell_weapon=[]
    22.      for i in1...$data_weapons.size
    23.      if$data_weapons[i].price==0
    24.        @not_for_sell_weapon=@not_for_sell_weapon+[i]
    25.      end
    26.    end
    27.      armor=[]
    28.      @not_for_sell_armor=[]
    29.      for i in1...$data_armors.size
    30.      if$data_armors[i].price==0
    31.        @not_for_sell_armor=@not_for_sell_armor+[i]
    32.      end
    33.    end
    34.   super(0, 128, 640, 352)
    35.   @column_max = 2
    36.   refresh
    37.   self.index = 0
    38. end
    39. #--------------------------------------------------------------------------
    40. # ● 刷新
    41. #--------------------------------------------------------------------------
    42. def refresh
    43.   ifself.contents != nil
    44.     self.contents.dispose
    45.     self.contents = nil
    46.   end
    47.   @data = []
    48.   for i in1...$data_items.size
    49.     if$game_party.item_number(i) > 0
    50.     @data.push($data_items[i])unless@not_for_sell_item.include?(i)
    51.     end
    52.   end
    53.   for i in1...$data_weapons.size
    54.     if$game_party.weapon_number(i) > 0
    55.     @data.push($data_weapons[i])unless@not_for_sell_weapon.include?(i)
    56.     end
    57.   end
    58.   for i in1...$data_armors.size
    59.     if$game_party.armor_number(i) > 0
    60.     @data.push($data_armors[i])unless@not_for_sell_armor.include?(i)
    61.     end
    62.   end
    63.   # 如果项目数不是 0 就生成位图、描绘全部项目
    64.   @item_max = @data.size
    65.   if@item_max > 0
    66.     self.contents = Bitmap.new(width - 32, row_max * 32)
    67.     for i in0...@item_max
    68.     draw_item(i)
    69.     end
    70.   end
    71. end
    72. end
    73. #==============================================================================
    74. # 本脚本来自[url]www.66rpg.com[/url],转载和使用请保留此声明
    75. #==============================================================================
    复制代码






                 本帖来自P1论坛作者Mr.Faint,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=375198  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    天天去同能,天天有童年!
    回复 论坛版权

    使用道具 举报

    ahome_bigavatar:guest
    ahome_bigavatar:welcomelogin
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2024-5-10 13:32 , Processed in 0.047514 second(s), 47 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

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