Project1

标题: 物品分类如何融合仓库脚本,有请凌童鞋 [打印本页]

作者: 爆焰    时间: 2011-12-31 15:31
标题: 物品分类如何融合仓库脚本,有请凌童鞋
本帖最后由 爆焰 于 2012-1-2 18:56 编辑

dsu_plus_rewardpost_czw
作者: 凌童鞋    时间: 2011-12-31 15:43
本帖最后由 凌童鞋 于 2012-1-1 09:15 编辑

……你应该用@…而且你指明一个天天泡水的家伙来回答技术问题这算神马事啊!
算了,有空还是玩玩吧,看起来还蛮实用的…
http://rpg.blue/thread-217557-1-1.html
这货700多行代码,而且仓库系统是完全重写的……
作者: 爆焰    时间: 2012-1-2 16:27
凌童鞋 发表于 2011-12-31 15:43
……你应该用@…而且你指明一个天天泡水的家伙来回答技术问题这算神马事啊!
算了,有空还是玩玩吧,看起来 ...

谢谢,效果跟我想要的一样。只是还有一些问题,就是一按存入或者取出就已经自动选定了第一个物品。还有存入仓库后若物品超过99个,再取出来时居然可以取出超过99个的数量,到了身上就变成默认的99个。请问能不能再改改?我默认原先的是身上最多携带99个,请斧正。
作者: 凌童鞋    时间: 2012-1-2 16:52
替换对应部分
  1.   #--------------------------------------------------------------------------
  2.   # 更新物品窗口
  3.   #--------------------------------------------------------------------------
  4.   def update_item_window
  5.    if Input.trigger?(Input::B)
  6.      # 演奏取消 SE
  7.      $game_system.se_play($data_system.cancel_se)
  8.      @sorting_window.active = true
  9.      @item_window.active = false
  10.      @item_window.index = -1
  11.      @help_window.set_text("")
  12.      return
  13.    end
  14.    # 按下确定键
  15.    if Input.trigger?(Input::C)
  16.      # 获取物品数量
  17.        $game_system.se_play($data_system.decision_se)
  18.        if @item_window.item.is_a?(RPG::Item)
  19.            if @action_window.index == 0
  20.              i = $game_party.item_number(@item_window.item.id)
  21.            else
  22.              i = $game_party.get_warehouse(@item_window.item.id,"I")
  23.              c = 99 - $game_party.item_number(@item_window.item.id)
  24.              if c < i
  25.                i = c
  26.              end
  27.            end
  28.          elsif @item_window.item.is_a?(RPG::Weapon)
  29.            if @action_window.index == 0
  30.              i = $game_party.weapon_number(@item_window.item.id)
  31.            else
  32.              i = $game_party.get_warehouse(@item_window.item.id,"W")
  33.              c = 99 - $game_party.weapon_number(@item_window.item.id)
  34.              if c < i
  35.                i = c
  36.              end
  37.            end
  38.          else
  39.            if @action_window.index == 0
  40.              i = $game_party.armor_number(@item_window.item.id)
  41.            else
  42.              i = $game_party.get_warehouse(@item_window.item.id,"A")
  43.              c = 99 - $game_party.armor_number(@item_window.item.id)
  44.              if c < i
  45.                i = c
  46.              end
  47.            end
  48.         end
  49.      @number_window.set(@item_window.item, i)      
  50.      @number_window.active = true
  51.      @number_window.visible = true
  52.      @item_window.active = false
  53.    end
  54.    @item_window.update
  55.         if @action_window.index == 0
  56.           @item_window.set_item(@sorting_window.commands[@sorting_window.index])
  57.         elsif @action_window.index ==1
  58.           @item_window.set_item_w(@sorting_window.commands[@sorting_window.index])
  59.         end
  60.         
  61.   end
复制代码





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