diff --git a/src/actions/AdvAction.lua b/src/actions/AdvAction.lua index d4abe0b..de44044 100644 --- a/src/actions/AdvAction.lua +++ b/src/actions/AdvAction.lua @@ -337,7 +337,7 @@ function _M.workshopRpc(agent, data) role:costItems(cost) advWs[id] = (advWs[id] or 0) + count - role.dailyData:updateProperty({field = advWs, value = advWs}) + role.dailyData:updateProperty({field = "advWs", value = advWs}) local reward = role:award({[id] = count}) SendPacket(actionCodes.Adv_workshopRpc, MsgPack.pack({reward = reward})) return true diff --git a/src/adv/AdvTask.lua b/src/adv/AdvTask.lua index 2f98d24..d3e02f0 100644 --- a/src/adv/AdvTask.lua +++ b/src/adv/AdvTask.lua @@ -60,6 +60,7 @@ function AdvTask.bind(Adv) function Adv:initLayerTask() self.advTask = {} + self.advTaskChange = true if not next(self.advMTask) then self.advMTask = { id = 1, diff --git a/src/models/RolePlugin.lua b/src/models/RolePlugin.lua index 620d4a4..97e2f63 100644 --- a/src/models/RolePlugin.lua +++ b/src/models/RolePlugin.lua @@ -97,7 +97,7 @@ function RolePlugin.bind(Role) count = 0 end, [ItemType.FuncOpen] = function() - self:funcOpen(itemId) + self:funcOpen(itemId, count) end, } -- 对数量筛查 @@ -597,7 +597,8 @@ function RolePlugin.bind(Role) return self:getProperty("funcLv")[func] or 1 end - function Role:funcOpen(func) + function Role:funcOpen(func, count) + count = count or 1 if csvdb["itemCsv"][func] and csvdb["itemCsv"][func].type == ItemType.FuncOpen then local unlockData = csvdb["unlockCsv"][func] if TypeIsFunc[unlockData.type] then @@ -605,7 +606,7 @@ function RolePlugin.bind(Role) self:changeUpdates({{type = "funcOpen", field = unlockData.type, value = 1}}) else local oldV = self:getFuncLv(unlockData.type) - self:changeUpdates({{type = "funcLv", field = unlockData.type, value = oldV + 1}}) + self:changeUpdates({{type = "funcLv", field = unlockData.type, value = oldV + count}}) end else self:changeUpdates({{type = "funcOpen", field = func, value = 1}}) -- libgit2 0.21.2