Project1

标题: 啊……认可错了……各种物品携带上限…… [打印本页]

作者: killuer    时间: 2008-4-27 23:59
标题: 啊……认可错了……各种物品携带上限……
真诚地道个歉……
刚才的帖子一下脑昏认可了……{/gg}
http://rpg.blue/web/htm/news683.htm
这个教程说的是物品携带总量的上限,我想问的是各个物品携带的分别上限。
例如说A不能超过20个但B能带30个…… [LINE]1,#dddddd[/LINE]此贴于 2008-5-5 9:24:34 被版主禾西提醒,请楼主看到后对本贴做出回应。 [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: IamI    时间: 2008-4-28 00:03
哈希表储存,然后判断,应该就是在party里动手脚吧……
作者: 禾西    时间: 2008-4-28 00:05
當中獎。
[LINE]1,#dddddd[/LINE]
可以在 Game_Party 的def gain_item 名下修改
比如這樣:
  def gain_item(item_id, n)
    return if item_id > 0
    case item_id
    when 6, 7, 8
      @items[item_id] = [[item_number(item_id) + n, 0].max, 20].min
    else
      @items[item_id] = [[item_number(item_id) + n, 0].max, 99].min
    end
  end

作者: havealook3    时间: 2008-4-28 00:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: IamI    时间: 2008-4-28 00:18
为什么最近总遇到各种RP问题……嗯,火星无罪……{/gg}
脚本:
class Game_Party
  $aaaaa_max_item_num = {1 => 30,2 => 40}
  alias old_gain_item gain_item
  #--------------------------------------------------------------------------
  # ● 增加物品 (减少)
  #     item_id : 物品 ID
  #     n       : 个数
  #--------------------------------------------------------------------------
  def gain_item(item_id, n)
    max_num = $aaaaa_max_item_num[item_id]
    if max_num != nil
      got = @items[item_id]
      if got == nil
        got = 0
      end
      if got + n > max_num
        @items[item_id] = max_num
        return
      end
    end
    old_gain_item(item_id, n)
  end
end

使用方法:懒得说了……反正就是{1 => 30,2 => 40}的含义为1号物品上限30,2号物品上限40
作者: killuer    时间: 2008-4-28 01:54
额……
按2楼禾西大大的改法,结果是什么道具都得不到……
按LS IamI大大的改法,运行时报最后一行santaxerror错误……
不知道是不是我没改对地方……{/gg}
作者: 禾西    时间: 2008-4-28 08:03
哦哦哦,禾西手殘寫錯語句……
def gain_item(item_id, n)
   return unless item_id > 0
   case item_id
   when 6, 7, 8
     @items[item_id] = [[item_number(item_id) + n, 0].max, 20].min
   else
     @items[item_id] = [[item_number(item_id) + n, 0].max, 99].min
   end
end

[LINE]1,#dddddd[/LINE]
已經不是第一次了 Orz [LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~




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