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

Project1

 找回密码
 注册会员
搜索
查看: 282|回复: 8

[已经解决] 如何设置单个物品的持有上限

[复制链接]

Lv2.观梦者

梦石
0
星屑
803
在线时间
203 小时
注册时间
2017-2-18
帖子
90

开拓者

发表于 2019-1-28 22:15:36 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
设想让药品一类的物品只能持有一定数量,超过之后就不能在商店购买但是可以事件获取,翻了翻搜索似乎没有找到这样的脚本……

Lv5.捕梦者

梦石
10
星屑
20998
在线时间
1484 小时
注册时间
2010-11-14
帖子
3003
发表于 2019-1-29 02:01:21 | 显示全部楼层
本帖最后由 KB.Driver 于 2019-1-29 02:09 编辑
效果


RUBY 代码复制打印
  1. #==============================================================================
  2. # ■ RGSS2 - 物品上限修改 by Calendar99
  3. #------------------------------------------------------------------------------
  4. #  使用方法: 物品/武器/护甲备注中写<持有上限 n>,则持有上限为n
  5. #  例 <持有上限 10> <持有上限 = 10>
  6. #
  7. #  兼容性说明:脚本中覆盖定义较多,请尽量置于其他脚本上方
  8. #==============================================================================
  9.  
  10. module CLD99
  11.   module Item
  12.  
  13.     ALLOW_GAIN_BY_EVENT = true
  14.     # 是否允许通过事件强制获得超过上限的道具
  15.     # true 允许 false 禁止
  16.  
  17.     DEFAULT_MAX_LIMIT = 999
  18.     # 默认持有上限
  19.  
  20.     REG_MAX_LIMIT = /<持有上限[ :=]*(\d+)>/
  21.     # 自定义持有上限的正则表达式(没有脚本基础的不要动这个)
  22.  
  23.     #--------------------------------------------------------------------------
  24.     # ● 获取持有上限
  25.     #--------------------------------------------------------------------------
  26.     def self.max_limit(note)
  27.       if note =~ CLD99::Item::REG_MAX_LIMIT then $1.to_i
  28.       else CLD99::Item::DEFAULT_MAX_LIMIT end
  29.     end
  30.  
  31.   end  
  32. end
  33.  
  34. class RPG::Item
  35.   def max_limit;CLD99::Item.max_limit(self.note);end  
  36. end
  37.  
  38. class RPG::Weapon
  39.   def max_limit;CLD99::Item.max_limit(self.note);end  
  40. end
  41.  
  42. class RPG::Armor
  43.   def max_limit;CLD99::Item.max_limit(self.note);end  
  44. end
  45.  
  46. class Scene_Shop
  47.   #--------------------------------------------------------------------------
  48.   # ● [覆盖]更新买入选择
  49.   #--------------------------------------------------------------------------
  50.   def update_buy_selection
  51.     @status_window.item = @buy_window.item
  52.     if Input.trigger?(Input::B)
  53.       Sound.play_cancel
  54.       @command_window.active = true
  55.       @dummy_window.visible = true
  56.       @buy_window.active = false
  57.       @buy_window.visible = false
  58.       @status_window.visible = false
  59.       @status_window.item = nil
  60.       @help_window.set_text("")
  61.       return
  62.     end
  63.     if Input.trigger?(Input::C)
  64.       @item = @buy_window.item
  65.       number = $game_party.item_number(@item)
  66.       if @item == nil or @item.price > $game_party.gold or number >= @item.max_limit ##购买条件修正
  67.         Sound.play_buzzer
  68.       else
  69.         Sound.play_decision
  70.         max = @item.price == 0 ? @item.max_limit : $game_party.gold / @item.price ## 可购入数量修正
  71.         max = [max, @item.max_limit - number].min ## 可购入数量修正
  72.         @buy_window.active = false
  73.         @buy_window.visible = false
  74.         @number_window.set(@item, max, @item.price)
  75.         @number_window.active = true
  76.         @number_window.visible = true
  77.       end
  78.     end
  79.   end
  80. end
  81.  
  82. class Scene_Battle
  83.   #--------------------------------------------------------------------------
  84.   # ● [覆盖]显示所获得的掉落物品
  85.   #--------------------------------------------------------------------------
  86.   def display_drop_items
  87.     drop_items = $game_troop.make_drop_items
  88.     for item in drop_items
  89.       next if $game_party.item_number(item) >= item.max_limit ## 战斗掉落修正
  90.       $game_party.gain_item(item, 1)
  91.       text = sprintf(Vocab::ObtainItem, item.name)
  92.       $game_message.texts.push(text)
  93.     end
  94.     wait_for_message
  95.   end
  96. end
  97.  
  98. class Window_ShopBuy
  99.   #--------------------------------------------------------------------------
  100.   # ● [覆盖]绘制商品
  101.   #     index : 商品索引
  102.   #--------------------------------------------------------------------------
  103.   def draw_item(index)
  104.     item = @data[index]
  105.     number = $game_party.item_number(item)
  106.     enabled = (item.price <= $game_party.gold and number < item.max_limit) ## 绘制修正
  107.     rect = item_rect(index)
  108.     self.contents.clear_rect(rect)
  109.     draw_item_name(item, rect.x, rect.y, enabled)
  110.     rect.width -= 4
  111.     self.contents.draw_text(rect, item.price, 2)
  112.   end
  113. end
  114.  
  115. class Game_Party
  116.   #--------------------------------------------------------------------------
  117.   # ● [覆盖]获得/损失物品
  118.   #--------------------------------------------------------------------------
  119.   def gain_item(item, n, include_equip = false)
  120.     number = item_number(item)
  121.     case item
  122.     when RPG::Item
  123.       @items[item.id] = [[number + n, 0].max, item.max_limit].min ## 持有上限修正
  124.     when RPG::Weapon
  125.       @weapons[item.id] = [[number + n, 0].max, item.max_limit].min ## 持有上限修正
  126.     when RPG::Armor
  127.       @armors[item.id] = [[number + n, 0].max, item.max_limit].min ## 持有上限修正
  128.     end
  129.     n += number
  130.     if include_equip and n < 0
  131.       for actor in members
  132.         while n < 0 and actor.equips.include?(item)
  133.           actor.discard_equip(item)
  134.           n += 1
  135.         end
  136.       end
  137.     end
  138.   end
  139.   #--------------------------------------------------------------------------
  140.   # ● [别名修改]战斗测试队伍设置
  141.   #--------------------------------------------------------------------------
  142.   alias setup_battle_test_members_for_max_limit setup_battle_test_members
  143.   def setup_battle_test_members
  144.     setup_battle_test_members_for_max_limit
  145.     for i in 1...$data_items.size
  146.       if $data_items[i].battle_ok?
  147.         @items[i] = $data_items[i].max_limit unless $data_items[i].name.empty? ## 持有数修正
  148.       end
  149.     end
  150.   end
  151.  
  152.   unless CLD99::Item::ALLOW_GAIN_BY_EVENT # 不是必定运行
  153.     #--------------------------------------------------------------------------
  154.     # ● [别名修改]获得/损失物品
  155.     #--------------------------------------------------------------------------
  156.     alias :gain_item_for_limit :gain_item
  157.     def gain_item(item, n, include_equip = false)
  158.       return if n > 0 && item_number(item) >= item.max_limit ## 获取修正
  159.       gain_item_for_limit(item, n, include_equip)
  160.     end
  161.   end
  162. end


自己临时写的,功能比较简陋。
新建工程测试通过,如果有问题请报告。
用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
803
在线时间
203 小时
注册时间
2017-2-18
帖子
90

开拓者

 楼主| 发表于 2019-1-31 22:29:18 | 显示全部楼层
KB.Driver 发表于 2019-1-29 02:01
#========================================================================== ...

有问题。
如果物品价格只有10,持有上限为10个,而玩家持有1000金币,依然可以在商店中把购买数量点到100,
然后买了以后物品只有10个,花的钱还是1000金币……也就是说如果目前物品的持有数没达到最大的上限,身上的钱又足以购买超过持有上限的数量,就会导致之前说的,类似于花了100个物品的钱却只买到10个物品的后果……

点评

提供一下相关脚本吧,也许可以改到兼容  发表于 2019-2-3 19:29
还是不行……  发表于 2019-2-3 13:28
额,用了FSL的商店拓展描绘……我把脚本放到下面试试  发表于 2019-2-3 13:25
我刚刚运行了一下没有发现类似的问题,是不是与其他脚本冲突了?有没有插入什么商店类的脚本?  发表于 2019-2-1 17:57
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
803
在线时间
203 小时
注册时间
2017-2-18
帖子
90

开拓者

 楼主| 发表于 2019-2-3 21:51:13 | 显示全部楼层
实在是多谢了~
脚本渣表示心力交瘁……
  1. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  2. #_/    ◆ 简易商店拓展描绘脚本 - FSL_SHOP ◆ VX ◆
  3. #_/
  4. #_/    ◇ 许可协议 :FSL       ◇
  5. #_/    ◇ 项目分类 : 角色辅助  ◇
  6. #_/    ◇ 项目版本 : 1.5.903   ◇
  7. #_/    ◇ 建立日期 : 2010/8/26 ◇
  8. #_/    ◇ 最后更新 : 2010/9/03 ◇
  9. #_/----------------------------------------------------------------------------
  10. #_/  作者:wangswz DeathKing
  11. #_/  引用网址: http://bbs.66rpg.com/thread-154915-1-1.html
  12. #_/============================================================================
  13. #_/ 【基本机能】方便商店购物选择
  14. #_/  放在默认脚本之后,Main脚本之前,通过事件指令【商店处理】调用。
  15. #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
  16. #===============================================================================
  17. #-------------------------------------------------------------------------------
  18. # ▼ 通用配置模块
  19. #-------------------------------------------------------------------------------
  20. module FSL
  21.   module SHOP
  22.     # ◆ 无法装备的提示信息
  23.     Shop_help = "-无法装备-"
  24.    
  25.     # ◆ 无法使用的提示信息
  26.     Shop_help2 = "-无法使用-"
  27.    
  28.     # ◆ 设置atk def spi agi 上升 下降 相等时 图标显示 4个一组
  29.     Shop_icon = [
  30.     120,121,122,123,
  31.     124,125,126,127,
  32.       0,  0,  0,  0
  33.     ]
  34.   end
  35. end
  36. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  37. $imported = {} if $imported == nil
  38. $fscript = {} if $fscript == nil
  39. $fscript["FSL_SHOP"] = "1.5.903"
  40. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

  41. #==============================================================================
  42. # ■ Scene_Map
  43. #==============================================================================

  44. class Scene_Map < Scene_Base
  45.   #--------------------------------------------------------------------------
  46.   # ● ショップ画面への切り替え
  47.   #--------------------------------------------------------------------------
  48.   def call_shop
  49.     if $imported["ComposeItem"] == true && $game_switches[KGC::ComposeItem::COMPOSE_CALL_SWITCH]
  50.       # 合成画面に移行
  51.       $game_temp.next_scene = nil
  52.       $game_switches[KGC::ComposeItem::COMPOSE_CALL_SWITCH] = false
  53.       $scene = Scene_ComposeItem.new
  54.     else
  55.       $game_temp.next_scene = nil
  56.       $scene = Scene_Shop2.new
  57.     end
  58.   end
  59. end
  60. #==============================================================================
  61. # ■ Scene_Shop
  62. #------------------------------------------------------------------------------
  63. #  处理商店画面的类。
  64. #==============================================================================

  65. class Scene_Shop2 < Scene_Base
  66.   #--------------------------------------------------------------------------
  67.   # ● 开始处理
  68.   #--------------------------------------------------------------------------
  69.   def start
  70.     super
  71.     create_menu_background
  72.     create_command_window
  73.     create_command_window2
  74.     @help_window = Window_Help.new
  75.     @gold_window = Window_Gold.new(384, 56)
  76.     @dummy_window = Window_Base.new(0, 112, 544, 304)
  77.     @dummy_window2 = Window_Base.new(304, 112, 240, 304)
  78.     @dummy_window3 = Window_Base.new(0, 168, 304, 248)
  79.     @dummy_window2.visible = false
  80.     @dummy_window3.visible = false
  81.     @buy_window = Window_ShopBuy2.new(0, 168)
  82.     @buy_window.active = false
  83.     @buy_window.visible = false
  84.     @buy_window.help_window = @help_window
  85.     @sell_window = Window_ShopSell.new(0, 112, 544, 304)
  86.     @sell_window.active = false
  87.     @sell_window.visible = false
  88.     @sell_window.help_window = @help_window
  89.     @number_window = Window_ShopNumber.new(0, 112)
  90.     @number_window.active = false
  91.     @number_window.visible = false
  92.     @actor_index = 0
  93.     @status_window = Window_Shop_ActorStatus.new($game_party.members[@actor_index])
  94.     @status_window.visible = false
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   # ● 结束处理
  98.   #--------------------------------------------------------------------------
  99.   def terminate
  100.     super
  101.     dispose_menu_background
  102.     dispose_command_window
  103.     dispose_command_window2
  104.     @help_window.dispose
  105.     @gold_window.dispose
  106.     @dummy_window.dispose
  107.     @dummy_window2.dispose
  108.     @dummy_window3.dispose
  109.     @buy_window.dispose
  110.     @sell_window.dispose
  111.     @number_window.dispose
  112.     @status_window.dispose
  113.   end
  114.   #--------------------------------------------------------------------------
  115.   # ● 更新画面
  116.   #--------------------------------------------------------------------------
  117.   def update
  118.     super
  119.     update_menu_background
  120.     @help_window.update
  121.     @command_window.update
  122.     @command_window2.update
  123.     @gold_window.update
  124.     @dummy_window.update
  125.     @dummy_window2.update
  126.     @dummy_window3.update
  127.     @buy_window.update
  128.     @sell_window.update
  129.     @number_window.update
  130.     @status_window.update
  131.     if @command_window.active
  132.       update_command_selection
  133.     elsif @buy_window.active
  134.       update_buy_selection1
  135.     elsif @sell_window.active
  136.       update_sell_selection
  137.     elsif @number_window.active
  138.       update_number_input
  139.     elsif @command_window2.active
  140.       update_command_selection2
  141.     end
  142.   end
  143.   #--------------------------------------------------------------------------
  144.   # ● 生成命令窗口
  145.   #--------------------------------------------------------------------------
  146.   def create_command_window
  147.     s1 = Vocab::ShopBuy
  148.     s2 = Vocab::ShopSell
  149.     s3 = Vocab::ShopCancel
  150.     @command_window = Window_Command.new(384, [s1, s2, s3], 3)
  151.     @command_window.y = 56
  152.     if $game_temp.shop_purchase_only
  153.       @command_window.draw_item(1, false)
  154.     end
  155.   end
  156.   #--------------------------------------------------------------------------
  157.   # ● 释放命令窗口
  158.   #--------------------------------------------------------------------------
  159.   def dispose_command_window
  160.     @command_window.dispose
  161.   end
  162.   #--------------------------------------------------------------------------
  163.   # ● 更新命令窗口
  164.   #--------------------------------------------------------------------------
  165.   def update_command_selection
  166.     if Input.trigger?(Input::B)
  167.       Sound.play_cancel
  168.       $scene = Scene_Map.new
  169.     elsif Input.trigger?(Input::C)
  170.       case @command_window.index
  171.       when 0  # 买入
  172.         Sound.play_decision
  173.         @command_window.active = false
  174.         @dummy_window.visible = false
  175.         @dummy_window2.visible = true
  176.         @dummy_window3.visible = true
  177.         @command_window2.active = true
  178.         @command_window2.visible = true
  179.       when 1  # 卖出
  180.         if $game_temp.shop_purchase_only
  181.           Sound.play_buzzer
  182.         else
  183.           Sound.play_decision
  184.           @command_window.active = false
  185.           @dummy_window.visible = false
  186.           @sell_window.active = true
  187.           @sell_window.visible = true
  188.           @sell_window.refresh
  189.         end
  190.       when 2  # 离开
  191.         Sound.play_decision
  192.         $scene = Scene_Map.new
  193.       end
  194.     end
  195.   end
  196.   #--------------------------------------------------------------------------
  197.   # ● 生成二级命令窗口
  198.   #--------------------------------------------------------------------------
  199.   def create_command_window2
  200.     s1 = "物品"
  201.     s2 = "武器"
  202.     s3 = "防具"
  203.     @command_window2 = Window_Command.new(304, [s1, s2, s3], 3)
  204.     @command_window2.x = 0
  205.     @command_window2.y = 112
  206.     @command_window2.active = false
  207.     @command_window2.visible = false
  208.   end
  209.   #--------------------------------------------------------------------------
  210.   # ● 释放二级命令窗口
  211.   #--------------------------------------------------------------------------
  212.   def dispose_command_window2
  213.     @command_window2.dispose
  214.   end
  215.   #--------------------------------------------------------------------------
  216.   # ● 更新二级命令窗口
  217.   #--------------------------------------------------------------------------
  218.   def update_command_selection2
  219.     if Input.trigger?(Input::B)
  220.       Sound.play_cancel
  221.       @command_window.active = true
  222.       @command_window2.active = false
  223.       @command_window2.visible = false
  224.       @dummy_window.visible = true
  225.       @dummy_window2.visible = false
  226.       @dummy_window3.visible = false
  227.       @buy_window.active = false
  228.       @buy_window.visible = false
  229.       @status_window.visible = false
  230.       @status_window.item = nil
  231.       @help_window.set_text("")
  232.       return
  233.     elsif Input.trigger?(Input::C)
  234.       case @command_window2.index
  235.       when 0
  236.         Sound.play_decision
  237.         @command_window2.active = false
  238.         @buy_window.index = 0
  239.         @buy_window.active = true
  240.         @buy_window.visible = true
  241.         @buy_window.type = 0
  242.         @buy_window.refresh
  243.         @status_window.visible = true
  244.       when 1
  245.         Sound.play_decision
  246.         @command_window2.active = false
  247.         @buy_window.index = 0
  248.         @buy_window.active = true
  249.         @buy_window.visible = true
  250.         @buy_window.type = 1
  251.         @buy_window.refresh
  252.         @status_window.visible = true
  253.       when 2
  254.         Sound.play_decision
  255.         @command_window2.active = false
  256.         @buy_window.index = 0
  257.         @buy_window.active = true
  258.         @buy_window.visible = true
  259.         @buy_window.type = 2
  260.         @buy_window.refresh
  261.         @status_window.visible = true
  262.       end
  263.     end
  264.   end
  265.   #--------------------------------------------------------------------------
  266.   # ● 更新买入选择
  267.   #--------------------------------------------------------------------------
  268.   def update_buy_selection1
  269.     @status_window.item = @buy_window.item
  270.     if Input.trigger?(Input::B)
  271.       Sound.play_cancel
  272.       @command_window2.active = true
  273.       @buy_window.active = false
  274.       @buy_window.visible = false
  275.       @status_window.visible = false
  276.       @status_window.item = nil
  277.       @help_window.set_text("")
  278.       return
  279.     end
  280.     if Input.trigger?(Input::C)
  281.       @item = @buy_window.item
  282.       number = $game_party.item_number(@item)
  283.       if $imported["LimitBreak"] == true
  284.         if @item == nil || @item.price > $game_party.gold ||
  285.           number == @item.number_limit
  286.           Sound.play_buzzer
  287.         else
  288.           Sound.play_decision
  289.           max = (@item.price == 0 ?
  290.           @item.number_limit : $game_party.gold / @item.price)
  291.           max = [max, @item.number_limit - number].min
  292.           @buy_window.active = false
  293.           @buy_window.visible = false
  294.           @number_window.set(@item, max, @item.price)
  295.           @number_window.active = true
  296.           @number_window.visible = true
  297.         end
  298.       else
  299.         if @item == nil or @item.price > $game_party.gold or number == 99
  300.           Sound.play_buzzer
  301.         else
  302.           Sound.play_decision
  303.           max = @item.price == 0 ? 99 : $game_party.gold / @item.price
  304.           max = [max, 99 - number].min
  305.           @buy_window.active = false
  306.           @buy_window.visible = false
  307.           @number_window.set(@item, max, @item.price)
  308.           @number_window.active = true
  309.           @number_window.visible = true
  310.         end
  311.       end
  312.     end
  313.     if Input.trigger?(Input::RIGHT)
  314.       Sound.play_cursor
  315.       next_actor
  316.     elsif Input.trigger?(Input::LEFT)
  317.       Sound.play_cursor
  318.       prev_actor
  319.     end
  320.     if Input.trigger?(Input::X)
  321.       @buy_window.sort_item
  322.     end
  323.   end
  324.   #--------------------------------------------------------------------------
  325.   # ● 切换至下一角色画面
  326.   #--------------------------------------------------------------------------
  327.   def next_actor
  328.     @actor_index += 1
  329.     @actor_index %= $game_party.members.size
  330.     @status_window.actor = ($game_party.members[@actor_index])
  331.   end
  332.   #--------------------------------------------------------------------------
  333.   # ● 切换至上一角色画面
  334.   #--------------------------------------------------------------------------
  335.   def prev_actor
  336.     @actor_index += $game_party.members.size - 1
  337.     @actor_index %= $game_party.members.size
  338.     @status_window.actor = ($game_party.members[@actor_index])
  339.   end
  340.   #--------------------------------------------------------------------------
  341.   # ● 更新卖出选择
  342.   #--------------------------------------------------------------------------
  343.   def update_sell_selection
  344.     if Input.trigger?(Input::B)
  345.       Sound.play_cancel
  346.       @command_window.active = true
  347.       @dummy_window.visible = true
  348.       @sell_window.active = false
  349.       @sell_window.visible = false
  350.       @status_window.item = nil
  351.       @help_window.set_text("")
  352.     elsif Input.trigger?(Input::C)
  353.       @item = @sell_window.item
  354.       @status_window.item = @item
  355.       if @item == nil or @item.price == 0
  356.         Sound.play_buzzer
  357.       else
  358.         Sound.play_decision
  359.         max = $game_party.item_number(@item)
  360.         @sell_window.active = false
  361.         @sell_window.visible = false
  362.         @number_window.set(@item, max, @item.price / 2)
  363.         @number_window.active = true
  364.         @number_window.visible = true
  365.         @status_window.visible = true
  366.       end
  367.     end
  368.   end
  369.   #--------------------------------------------------------------------------
  370.   # ● 更新数值输入
  371.   #--------------------------------------------------------------------------
  372.   def update_number_input
  373.     if Input.trigger?(Input::B)
  374.       cancel_number_input
  375.     elsif Input.trigger?(Input::C)
  376.       decide_number_input
  377.     end
  378.   end
  379.   #--------------------------------------------------------------------------
  380.   # ● 取消数值输入
  381.   #--------------------------------------------------------------------------
  382.   def cancel_number_input
  383.     Sound.play_cancel
  384.     @number_window.active = false
  385.     @number_window.visible = false
  386.     case @command_window.index
  387.     when 0  # 买入
  388.       @buy_window.active = true
  389.       @buy_window.visible = true
  390.     when 1  # 卖出
  391.       @sell_window.active = true
  392.       @sell_window.visible = true
  393.       @status_window.visible = false
  394.     end
  395.   end
  396.   #--------------------------------------------------------------------------
  397.   # ● 确认数值输入
  398.   #--------------------------------------------------------------------------
  399.   def decide_number_input
  400.     Sound.play_shop
  401.     @number_window.active = false
  402.     @number_window.visible = false
  403.     case @command_window.index
  404.     when 0  # 买入
  405.       $game_party.lose_gold(@number_window.number * @item.price)
  406.       $game_party.gain_item(@item, @number_window.number)
  407.       @gold_window.refresh
  408.       @buy_window.refresh
  409.       @status_window.refresh
  410.       @buy_window.active = true
  411.       @buy_window.visible = true
  412.     when 1  # 卖出
  413.       $game_party.gain_gold(@number_window.number * (@item.price / 2))
  414.       $game_party.lose_item(@item, @number_window.number)
  415.       @gold_window.refresh
  416.       @sell_window.refresh
  417.       @status_window.refresh
  418.       @sell_window.active = true
  419.       @sell_window.visible = true
  420.       @status_window.visible = false
  421.     end
  422.   end
  423. end
  424. #==============================================================================
  425. # ■ Window_Shop_ActorStatus
  426. #------------------------------------------------------------------------------
  427. #  显示角色的状态窗口。
  428. #==============================================================================

  429. class Window_Shop_ActorStatus < Window_Base
  430.   #--------------------------------------------------------------------------
  431.   # ● 初始化对像
  432.   #     actor : 角色
  433.   #--------------------------------------------------------------------------
  434.   def initialize(actor, item = nil, sort = 0)
  435.     super(304, 112, 240, 304)
  436.     @item = item
  437.     @actor = actor
  438.     @sort = sort
  439.     refresh
  440.   end
  441.   #--------------------------------------------------------------------------
  442.   # ● 刷新
  443.   #--------------------------------------------------------------------------
  444.   def refresh
  445.     self.contents.clear
  446.     draw_Shopface(@actor.face_name, @actor.face_index, 84, 4)
  447.     draw_actor_name(@actor, 4, 0)
  448.     draw_actor_graphic(@actor, 192, 56)
  449.    
  450.     if @item != nil
  451.       draw_actor_parameter_change(@actor, 4, 96)
  452.       number = $game_party.item_number(@item)
  453.       self.contents.font.color = system_color
  454.       self.contents.draw_text(4, WLH * 10, 200, WLH, Vocab::Possession)
  455.       self.contents.font.color = normal_color
  456.       self.contents.draw_text(4, WLH * 10, 200, WLH, number, 2)
  457.       if @item.is_a?(RPG::Item) && @item.scope > 0
  458.         draw_item_parameter_change(4, 48)
  459.       elsif @item.is_a?(RPG::Item)
  460.         self.contents.font.color = system_color
  461.         self.contents.draw_text(0, y + 24, 200, WLH, FSL::SHOP::Shop_help2, 1)
  462.       end
  463.     end
  464.   end
  465.   #--------------------------------------------------------------------------
  466.   # ● 绘制物品效果
  467.   #     x     : 绘制点 X 座标
  468.   #     y     : 绘制点 Y 座标
  469.   #--------------------------------------------------------------------------
  470.   def draw_item_parameter_change(x, y)
  471.     if @item.scope > 6
  472.       draw_actor_hp(@actor, x, y)
  473.       draw_actor_mp(@actor, x, y + 24)
  474.       self.contents.font.color = system_color
  475.       self.contents.draw_text(x, y + WLH * 2, 200, WLH, "hp mp 回复值/率", 2)
  476.          
  477.       self.contents.font.color = hp_gauge_color1
  478.       self.contents.draw_text(x - 10, y + WLH * 3, 104, WLH, sprintf("%d", @item.hp_recovery), 2)
  479.       self.contents.draw_text(x, y + WLH * 4, 104, WLH, sprintf("%d", @item.hp_recovery_rate)+"%", 2)
  480.       
  481.       self.contents.font.color = mp_gauge_color1
  482.       self.contents.draw_text(x - 10, y + WLH * 3, 200, WLH, sprintf("%d", @item.mp_recovery), 2)
  483.       self.contents.draw_text(x, y + WLH * 4, 200, WLH, sprintf("%d", @item.mp_recovery_rate)+"%", 2)
  484.       
  485.       if @item.parameter_type > 0
  486.         self.contents.font.color = system_color
  487.         self.contents.draw_text(x, y + WLH * 7, 200, WLH, "增加能力")
  488.         self.contents.font.color = normal_color
  489.         case @item.parameter_type
  490.         when 1
  491.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "HP", 1)
  492.         when 2
  493.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "MP", 1)
  494.         when 3
  495.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "ATK", 1)
  496.         when 4
  497.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "DEF", 1)
  498.         when 5
  499.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "SPI", 1)
  500.         when 6
  501.           self.contents.draw_text(x, y + WLH * 7, 200, WLH, "AGI", 1)
  502.         end
  503.         self.contents.draw_text(x, y + WLH * 7, 200, WLH, sprintf("%d", @item.parameter_points), 2)
  504.       else
  505.         self.contents.font.color = text_color(7)
  506.         self.contents.draw_text(x, y + WLH * 7, 200, WLH, "增加能力")
  507.       end
  508.     else
  509.       self.contents.font.color = normal_color
  510.       draw_actor_parameter(@actor, x, y, 0)
  511.       draw_actor_parameter(@actor, x, y + 24, 2)
  512.       
  513.       self.contents.font.color = system_color
  514.       self.contents.draw_text(x, y + WLH * 2, 240, WLH, "伤害值 力量/精神影响")
  515.       
  516.       self.contents.font.color = normal_color
  517.       self.contents.draw_text(x, y + WLH * 3, 104, WLH, sprintf("%d", @item.base_damage))
  518.       
  519.       self.contents.font.color = hp_gauge_color1
  520.       self.contents.draw_text(x, y + WLH * 4, 104, WLH, sprintf("%d", @item.atk_f), 2)
  521.       
  522.       self.contents.font.color = mp_gauge_color1
  523.       self.contents.draw_text(x, y + WLH * 4, 200, WLH, sprintf("%d", @item.spi_f), 2)
  524.     end

  525.     self.contents.font.color = system_color
  526.     if @item.plus_state_set.size == 0
  527.       self.contents.font.color = text_color(7)
  528.     end
  529.     self.contents.draw_text(x, y + WLH * 5, 200, WLH, "增益")
  530.     self.contents.font.color = system_color
  531.     if @item.minus_state_set.size == 0
  532.       self.contents.font.color = text_color(7)
  533.     end
  534.     self.contents.draw_text(x, y + WLH * 6, 200, WLH, "削减")
  535.     m = 48
  536.     for i in @item.plus_state_set
  537.       draw_icon($data_states[i].icon_index, x + m, y + WLH * 5)
  538.       break if m == 168
  539.       m += 24
  540.     end
  541.     m = 48
  542.     for i in @item.minus_state_set
  543.       draw_icon($data_states[i].icon_index, x + m, y + WLH * 6)
  544.       break if m == 168
  545.       m += 24
  546.     end
  547.   end
  548.   #--------------------------------------------------------------------------
  549.   # ● 绘制角色当前装备和能力值
  550.   #     actor : 角色
  551.   #     x     : 绘制点 X 座标
  552.   #     y     : 绘制点 Y 座标
  553.   #--------------------------------------------------------------------------
  554.   def draw_actor_parameter_change(actor, x, y)
  555.     return if @item.is_a?(RPG::Item)
  556.     enabled = actor.equippable?(@item)
  557.     if @item.is_a?(RPG::Weapon)
  558.       item1 = weaker_weapon(actor)
  559.     elsif actor.two_swords_style and @item.kind == 0
  560.       item1 = nil
  561.     else
  562.       if $imported["EquipExtension"] == true
  563.         index = actor.equip_type.index(@item.kind)
  564.         item1 = (index != nil ? actor.equips[1 + index] : nil)
  565.       else
  566.         item1 = actor.equips[1 + @item.kind]
  567.       end
  568.     end
  569.    
  570.     if enabled
  571.       
  572.       atk1 = item1 == nil ? 0 : item1.atk
  573.       atk2 = @item == nil ? 0 : @item.atk
  574.       change = atk2 - atk1
  575.       shop_change(change)
  576.       if change > 0
  577.         draw_icon(FSL::SHOP::Shop_icon[0], 108, y + WLH)
  578.       elsif  change < 0
  579.         draw_icon(FSL::SHOP::Shop_icon[4], 108, y + WLH)
  580.       else
  581.         draw_icon(FSL::SHOP::Shop_icon[8], 108, y + WLH)
  582.       end
  583.       self.contents.draw_text(x, y + WLH, 200, WLH, sprintf("%d", atk2), 2)
  584.       
  585.       def1 = item1 == nil ? 0 : item1.def
  586.       def2 = @item == nil ? 0 : @item.def
  587.       change = def2 - def1
  588.       shop_change(change)
  589.       if change > 0
  590.         draw_icon(FSL::SHOP::Shop_icon[1], 108, y + WLH * 2)
  591.       elsif  change < 0
  592.         draw_icon(FSL::SHOP::Shop_icon[5], 108, y + WLH * 2)
  593.       else
  594.         draw_icon(FSL::SHOP::Shop_icon[9], 108, y + WLH)
  595.       end
  596.       self.contents.draw_text(x, y + WLH * 2, 200, WLH, sprintf("%d", def2), 2)
  597.       
  598.       spi1 = item1 == nil ? 0 : item1.spi
  599.       spi2 = @item == nil ? 0 : @item.spi
  600.       change = spi2 - spi1
  601.       shop_change(change)
  602.       if change > 0
  603.         draw_icon(FSL::SHOP::Shop_icon[2], 108, y + WLH * 3)
  604.       elsif  change < 0
  605.         draw_icon(FSL::SHOP::Shop_icon[6], 108, y + WLH * 3)
  606.       else
  607.         draw_icon(FSL::SHOP::Shop_icon[10], 108, y + WLH)
  608.       end
  609.       self.contents.draw_text(x, y + WLH * 3, 200, WLH, sprintf("%d", spi2), 2)
  610.       
  611.       agi1 = item1 == nil ? 0 : item1.agi
  612.       agi2 = @item == nil ? 0 : @item.agi
  613.       change = agi2 - agi1
  614.       shop_change(change)
  615.       if change > 0
  616.         draw_icon(FSL::SHOP::Shop_icon[3], 108, y + WLH * 4)
  617.       elsif  change < 0
  618.         draw_icon(FSL::SHOP::Shop_icon[7], 108, y + WLH * 4)
  619.       else
  620.         draw_icon(FSL::SHOP::Shop_icon[11], 108, y + WLH)
  621.       end
  622.       self.contents.draw_text(x, y + WLH * 4, 200, WLH, sprintf("%d", agi2), 2)
  623.       
  624.       self.contents.font.color = system_color
  625.       self.contents.draw_text(4, y - 32, 204, WLH, "当前装备")
  626.       
  627.       self.contents.draw_text(x + 32, y + WLH, 200, WLH, sprintf("%d", atk1))
  628.       self.contents.draw_text(x + 32, y + WLH * 2, 200, WLH, sprintf("%d", def1))
  629.       self.contents.draw_text(x + 32, y + WLH * 3, 200, WLH, sprintf("%d", spi1))
  630.       self.contents.draw_text(x + 32, y + WLH * 4, 200, WLH, sprintf("%d", agi1))
  631.       
  632.       self.contents.draw_text(0, y + WLH, 200, WLH, "ATK")
  633.       self.contents.draw_text(0, y + WLH * 2, 200, WLH, "DEF")
  634.       self.contents.draw_text(0, y + WLH * 3, 200, WLH, "SPI")
  635.       self.contents.draw_text(0, y + WLH * 4, 200, WLH, "AGI")
  636.       
  637.       if item1 != nil
  638.         self.contents.draw_text(24, y, 208, WLH, item1.name)
  639.         draw_icon(item1.icon_index, 0, y)
  640.       else
  641.         self.contents.draw_text(24, y, 208, WLH, "无")
  642.       end
  643.     else
  644.       self.contents.font.color = normal_color
  645.       self.contents.draw_text(0, y + 24, 200, WLH, FSL::SHOP::Shop_help, 1)
  646.     end
  647.   end
  648.   #--------------------------------------------------------------------------
  649.   # ● 判断数值颜色
  650.   #     change : 数值
  651.   #--------------------------------------------------------------------------
  652.   def shop_change(change)
  653.     if change == 0
  654.       self.contents.font.color = normal_color
  655.     else
  656.       self.contents.font.color = change>0 ? power_up_color : power_down_color
  657.     end
  658.   end
  659.   #--------------------------------------------------------------------------
  660.   # ● 获取双刀派角色所装备的武器中较弱的武器
  661.   #     actor : 角色
  662.   #--------------------------------------------------------------------------
  663.   def weaker_weapon(actor)
  664.     if actor.two_swords_style
  665.       weapon1 = actor.weapons[0]
  666.       weapon2 = actor.weapons[1]
  667.       if weapon1 == nil or weapon2 == nil
  668.         return nil
  669.       elsif weapon1.atk < weapon2.atk
  670.         return weapon1
  671.       else
  672.         return weapon2
  673.       end
  674.     else
  675.       return actor.weapons[0]
  676.     end
  677.   end
  678.   #--------------------------------------------------------------------------
  679.   # ● 设置角色
  680.   #     actor : 角色
  681.   #--------------------------------------------------------------------------
  682.   def actor=(actor)
  683.     if @actor != actor
  684.       @actor = actor
  685.       refresh
  686.     end
  687.   end
  688.   #--------------------------------------------------------------------------
  689.   # ● 设置物品
  690.   #     item : 新物品
  691.   #--------------------------------------------------------------------------
  692.   def item=(item)
  693.     if @item != item
  694.       @item = item
  695.       refresh
  696.     end
  697.   end
  698.   #--------------------------------------------------------------------------
  699.   # ● 绘制头像部分图
  700.   #     face_name  : 头像文件名
  701.   #     face_index : 头像号码
  702.   #     x     : 描画目标 X 坐标
  703.   #     y     : 描画目标 Y 坐标
  704.   #     size       : 显示大小
  705.   #--------------------------------------------------------------------------
  706.   def draw_Shopface(face_name, face_index, x, y, size = 96)
  707.     bitmap = Cache.face(face_name)
  708.     rect = Rect.new(0, 0, 0, 0)
  709.     rect.x = face_index % 4 * 96 + (96 - size) / 2
  710.     rect.y = face_index / 4 * 96 + (96 - size) / 2 + size / 4
  711.     rect.width = size
  712.     rect.height = size / 2
  713.     self.contents.blt(x, y, bitmap, rect)
  714.     bitmap.dispose
  715.   end
  716. end
  717. #==============================================================================
  718. # ■ Window_ShopBuy2
  719. #------------------------------------------------------------------------------
  720. #  商店画面、浏览显示可以购买的商品的窗口。
  721. #==============================================================================

  722. class Window_ShopBuy2 < Window_Selectable
  723.   #--------------------------------------------------------------------------
  724.   # ● 初始化对像
  725.   #     x      : 窗口 X 座标
  726.   #     y      : 窗口 Y 座标
  727.   #--------------------------------------------------------------------------
  728.   def initialize(x, y)
  729.     super(x, y, 304, 248)
  730.     @shop_goods = $game_temp.shop_goods
  731.     @type = 0
  732.     @sort = 0
  733.     refresh
  734.     self.index = 0
  735.   end
  736.   #--------------------------------------------------------------------------
  737.   # ● 商品类型
  738.   #--------------------------------------------------------------------------
  739.   def type=(type)
  740.     if @type != type
  741.       @type = type
  742.       refresh
  743.     end
  744.   end
  745.   #--------------------------------------------------------------------------
  746.   # ● 获取商品
  747.   #--------------------------------------------------------------------------
  748.   def item
  749.     if @type == 0
  750.       return @data1[self.index]
  751.     elsif @type == 1
  752.       return @data2[self.index]
  753.     else
  754.       return @data3[self.index]
  755.     end
  756.   end
  757.   #--------------------------------------------------------------------------
  758.   # ● 刷新
  759.   #--------------------------------------------------------------------------
  760.   def refresh
  761.     @data1 = []
  762.     @data2 = []
  763.     @data3 = []
  764.     for goods_item in @shop_goods
  765.       case goods_item[0]
  766.       when 0
  767.         item = $data_items[goods_item[1]]
  768.         if item != nil
  769.           @data1.push(item)
  770.         end
  771.       when 1
  772.         item = $data_weapons[goods_item[1]]
  773.         if item != nil
  774.           @data2.push(item)
  775.         end
  776.       when 2
  777.         item = $data_armors[goods_item[1]]
  778.         if item != nil
  779.           @data3.push(item)
  780.         end
  781.       end
  782.     end
  783.     for i in [email protected]
  784.       for j in [email protected]
  785.         if @data2[i].atk < @data2[j].atk
  786.           m = @data2[i]
  787.           @data2[i] = @data2[j]
  788.           @data2[j] = m
  789.         end
  790.       end
  791.     end
  792.     for i in [email protected]
  793.       for j in [email protected]
  794.         if @data3[i].atk < @data3[j].atk
  795.           m = @data3[i]
  796.           @data3[i] = @data3[j]
  797.           @data3[j] = m
  798.         end
  799.       end
  800.     end
  801.     @sort = 1
  802.     if    @type == 0
  803.       @item_max = @data1.size
  804.     elsif @type == 1
  805.       @item_max = @data2.size
  806.     else
  807.       @item_max = @data3.size
  808.     end
  809.    
  810.     create_contents
  811.     for i in [email protected]_max
  812.       draw_item1(i)
  813.     end
  814.   end
  815.   #--------------------------------------------------------------------------
  816.   # ● 绘制商品
  817.   #     index : 商品索引
  818.   #--------------------------------------------------------------------------
  819.   def draw_item1(index)
  820.     if    @type == 0
  821.       item = @data1[index]
  822.     elsif @type == 1
  823.       item = @data2[index]
  824.     else
  825.       item = @data3[index]
  826.     end
  827.     number = $game_party.item_number(item)
  828.     if $imported["LimitBreak"] == true
  829.       enabled = (item.price <= $game_party.gold && number < item.number_limit)
  830.     else
  831.       enabled = (item.price <= $game_party.gold and number < 99)
  832.     end
  833.     rect = item_rect(index)
  834.     self.contents.clear_rect(rect)
  835.     draw_item_name(item, rect.x, rect.y, enabled)
  836.     rect.width -= 4
  837.     self.contents.draw_text(rect, item.price, 2)
  838.   end
  839.   #--------------------------------------------------------------------------
  840.   # ● 顺位排序
  841.   #--------------------------------------------------------------------------
  842.   def sort_item
  843.     case @sort
  844.     when 0
  845.       for i in [email protected]
  846.         for j in [email protected]
  847.           if @data2[i].atk < @data2[j].atk
  848.             m = @data2[i]
  849.             @data2[i] = @data2[j]
  850.             @data2[j] = m
  851.           end
  852.         end
  853.       end
  854.       for i in [email protected]
  855.         for j in [email protected]
  856.           if @data3[i].atk < @data3[j].atk
  857.             m = @data3[i]
  858.             @data3[i] = @data3[j]
  859.             @data3[j] = m
  860.           end
  861.         end
  862.       end
  863.       @sort = 1
  864.     when 1
  865.       for i in [email protected]
  866.         for j in [email protected]
  867.           if @data2[i].def < @data2[j].def
  868.             m = @data2[i]
  869.             @data2[i] = @data2[j]
  870.             @data2[j] = m
  871.           end
  872.         end
  873.       end
  874.       for i in [email protected]
  875.         for j in [email protected]
  876.           if @data3[i].def < @data3[j].def
  877.             m = @data3[i]
  878.             @data3[i] = @data3[j]
  879.             @data3[j] = m
  880.           end
  881.         end
  882.       end
  883.       @sort = 2
  884.     when 2
  885.       for i in [email protected]
  886.         for j in [email protected]
  887.           if @data2[i].spi < @data2[j].spi
  888.             m = @data2[i]
  889.             @data2[i] = @data2[j]
  890.             @data2[j] = m
  891.           end
  892.         end
  893.       end
  894.       for i in [email protected]
  895.         for j in [email protected]
  896.           if @data3[i].spi < @data3[j].spi
  897.             m = @data3[i]
  898.             @data3[i] = @data3[j]
  899.             @data3[j] = m
  900.           end
  901.         end
  902.       end
  903.       @sort = 3
  904.     when 3
  905.       for i in [email protected]
  906.         for j in [email protected]
  907.           if @data2[i].agi < @data2[j].agi
  908.             m = @data2[i]
  909.             @data2[i] = @data2[j]
  910.             @data2[j] = m
  911.           end
  912.         end
  913.       end
  914.       for i in [email protected]
  915.         for j in [email protected]
  916.           if @data3[i].agi < @data3[j].agi
  917.             m = @data3[i]
  918.             @data3[i] = @data3[j]
  919.             @data3[j] = m
  920.           end
  921.         end
  922.       end
  923.       @sort = 0
  924.     end
  925.     if    @type == 0
  926.       @item_max = @data1.size
  927.     elsif @type == 1
  928.       @item_max = @data2.size
  929.     else
  930.       @item_max = @data3.size
  931.     end
  932.    
  933.     create_contents
  934.     for i in [email protected]_max
  935.       draw_item1(i)
  936.     end
  937.   end
  938.   #--------------------------------------------------------------------------
  939.   # ● 更新帮助窗口文字
  940.   #--------------------------------------------------------------------------
  941.   def update_help
  942.     @help_window.set_text(item == nil ? "" : item.description)
  943.   end
  944. end
复制代码

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
20998
在线时间
1484 小时
注册时间
2010-11-14
帖子
3003
发表于 2019-2-3 22:29:09 | 显示全部楼层
黯淡的流星 发表于 2019-2-3 21:51
实在是多谢了~
脚本渣表示心力交瘁……

按照你的商店脚本,我的垃圾上限脚本,和下面这个脚本的顺序导入编辑器,测试通过。
请只限自己使用,之后出的其他问题概不负责。

RUBY 代码复制打印
  1. class Scene_Shop2
  2.   #--------------------------------------------------------------------------
  3.   # ● [覆盖]更新买入选择
  4.   #--------------------------------------------------------------------------
  5.   def update_buy_selection1
  6.     @status_window.item = @buy_window.item
  7.     if Input.trigger?(Input::B)
  8.       Sound.play_cancel
  9.       @command_window2.active = true
  10.       @buy_window.active = false
  11.       @buy_window.visible = false
  12.       @status_window.visible = false
  13.       @status_window.item = nil
  14.       @help_window.set_text("")
  15.       return
  16.     end
  17.     if Input.trigger?(Input::C)
  18.       @item = @buy_window.item
  19.       number = $game_party.item_number(@item)
  20.       if $imported["LimitBreak"] == true
  21.         if @item == nil || @item.price > $game_party.gold ||
  22.           number == @item.max_limit ## 可购入数量修正
  23.           Sound.play_buzzer
  24.         else
  25.           Sound.play_decision
  26.           #=========================================可购入数量修正===========
  27.           max = (@item.price == 0 ?
  28.           @item.max_limit : $game_party.gold / @item.price)
  29.           max = [max, @item.max_limit - number].min
  30.           #==================================================================
  31.           @buy_window.active = false
  32.           @buy_window.visible = false
  33.           @number_window.set(@item, max, @item.price)
  34.           @number_window.active = true
  35.           @number_window.visible = true
  36.         end
  37.       else
  38.         if @item == nil or @item.price > $game_party.gold ||
  39.           number >= @item.max_limit ## 可购入数量修正
  40.           Sound.play_buzzer
  41.         else
  42.           Sound.play_decision
  43.           #=========================================可购入数量修正===========
  44.           max = @item.price == 0 ? @item.max_limit : $game_party.gold / @item.price
  45.           max = [max, @item.max_limit - number].min
  46.           #==================================================================
  47.           @buy_window.active = false
  48.           @buy_window.visible = false
  49.           @number_window.set(@item, max, @item.price)
  50.           @number_window.active = true
  51.           @number_window.visible = true
  52.         end
  53.       end
  54.     end
  55.     if Input.trigger?(Input::RIGHT)
  56.       Sound.play_cursor
  57.       next_actor
  58.     elsif Input.trigger?(Input::LEFT)
  59.       Sound.play_cursor
  60.       prev_actor
  61.     end
  62.     if Input.trigger?(Input::X)
  63.       @buy_window.sort_item
  64.     end
  65.   end
  66. end
  67.  
  68. class Window_ShopBuy2
  69.   #--------------------------------------------------------------------------
  70.   # ● [覆盖]绘制商品
  71.   #--------------------------------------------------------------------------
  72.   def draw_item1(index)
  73.     if    @type == 0
  74.       item = @data1[index]
  75.     elsif @type == 1
  76.       item = @data2[index]
  77.     else
  78.       item = @data3[index]
  79.     end
  80.     number = $game_party.item_number(item)
  81.     if $imported["LimitBreak"] == true
  82.       enabled = (item.price <= $game_party.gold && number < item.max_limit)## 可购入数量修正
  83.     else
  84.       enabled = (item.price <= $game_party.gold && number < item.max_limit)## 可购入数量修正
  85.     end
  86.     rect = item_rect(index)
  87.     self.contents.clear_rect(rect)
  88.     draw_item_name(item, rect.x, rect.y, enabled)
  89.     rect.width -= 4
  90.     self.contents.draw_text(rect, item.price, 2)
  91.   end
  92. end

评分

参与人数 2星屑 +120 +1 收起 理由
正太君 + 120 认可答案
黯淡的流星 + 1 多谢……

查看全部评分

用头画头像,用脚写脚本
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2020-4-5 09:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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