local ipairs = ipairs local table = table local math = math local redisproxy = redisproxy local MsgPack = MsgPack local _M = {} function _M.addSellRpc( agent, data ) local role = agent.role local msg = MsgPack.unpack(data) local slot = msg.slot if math.illegalNum(slot, 1, role.dinerData:getMaxSlots()) then return end if slot > role.dinerData:getMaxSlots() then return end local dish = msg.dish local dishSet = csvdb["diner_dishCsv"][dish] if not dishSet then return end local count = msg.count if math.illegalNum(count, 1, role.dinerData:getMaxDishs()) then return end end function _M.getSellRewardRpc( agent, data ) end function _M.levelUpRpc( agent, data ) local role = agent.role local msg = MsgPack.unpack(data) local index = msg.index local buildingData = csvdb["diner_buildingCsv"][index] if not buildingData then return end local buildL = role.dinerData:getProperty("buildL") local curLevel = buildL:getv(index, 1) if curLevel >= #buildingData then return end local cost = buildingData[curLevel].starCost:toNumMap() if not role:checkItemEnough(cost) then return end role:costItems(cost, {}) role.dinerData:updateProperty({field = "level", value = buildL:setv(index, curLevel + 1)}) SendPacket(actionCodes.Diner_levelUpRpc, '') return true end return _M