Commit e1f521ec992e8bdba50d88b3d9dd03527b317bb8

Authored by zhouhaihai
2 parents fb891778 a5a2c706

Merge branch 'tr/bugfix-qa' into tr/develop

* tr/bugfix-qa:
  清空背包gm
  修复拾荒结算时,返还药剂错误导致药水被吞的bug
  进入拾荒自动补给药水,按当前等级下的携带最大数量计算
Showing 2 changed files with 27 additions and 7 deletions   Show diff stats
src/actions/GmAction.lua
... ... @@ -560,6 +560,26 @@ function _M.actbattle(role, pms)
560 560 return "成功"
561 561 end
562 562  
  563 +table.insert(helpDes, {"清空背包", "clearbag"})
  564 +function _M.clearbag(role, pms)
  565 + -- 装备
  566 + role:updateProperty({field="equips", value = {}})
  567 + -- 道具
  568 + local items = role:getProperty("items"):toNumMap()
  569 + for k, v in pairs(items) do
  570 + role:addItem({itemId = k, count = -v, log = {desc = "gm"}})
  571 + end
  572 +
  573 + -- 铭文
  574 + local uids = {}
  575 + for uid, _ in pairs(role.runeBag) do
  576 + table.insert(uids, uid)
  577 + end
  578 + role:delRunes(uids, {log = {desc = "gm"}})
  579 +
  580 + return "成功"
  581 +end
  582 +
563 583 function _M.helpRpc(agent, data)
564 584 SendPacket(actionCodes.Gm_helpRpc, MsgPack.pack({help = helpDes}))
565 585 return true
... ...
src/adv/Adv.lua
... ... @@ -869,14 +869,12 @@ function Adv:over(success, rewardRatio, overType)
869 869 local potionBag = self.owner:getProperty("potionBag")
870 870 for itemId, count in pairs(self.owner:getProperty("advItems"):toNumMap()) do
871 871 local itemCsv = csvdb["itemCsv"][itemId]
872   - if not itemCsv then
  872 + if advPotionCsv[itemId] then
  873 + potionBag[itemId] = (potionBag[itemId] or 0) + count
  874 + elseif not itemCsv then
873 875 print("ERROR: no itemId in ItemCsv : ", itemId)
874 876 elseif itemCsv.type ~= ItemType.AdvItem then
875   - if advPotionCsv[itemId] then
876   - potionBag[itemId] = (potionBag[itemId] or 0) + count
877   - else
878   - reward[itemId] = math.ceil(count * rewardRatio / 100)
879   - end
  877 + reward[itemId] = math.ceil(count * rewardRatio / 100)
880 878 end
881 879 end
882 880 reward = self.owner:award(reward, {log = {desc = "advOver", int1 = self.chapterId}})
... ... @@ -1185,10 +1183,12 @@ function Adv:supplyPotion()
1185 1183 local potionCsv = csvdb["adv_potionCsv"]
1186 1184 local potionBag = self.owner:getProperty("potionBag")
1187 1185 local advItems = self.owner:getProperty("advItems")
  1186 + local dishTree = self.owner.dinerData:getProperty("dishTree")
1188 1187 for potionId, set in pairs(potionCsv) do
1189 1188 local count = potionBag[potionId] or 0
1190 1189 if count > 0 then
1191   - local num = math.min(set[1].limit,count)
  1190 + local level = dishTree:getv(potionId,1)
  1191 + local num = math.min(set[level].limit,count)
1192 1192 advItems = advItems:setv(potionId,num)
1193 1193 potionBag[potionId] = num ~= count and (count - num) or nil
1194 1194 end
... ...