Commit fd2539943ba91286b2e86ba882f663bb43009112

Authored by zhangqijia
2 parents 49f617d9 d4749c28

Merge branch 'cn/develop' into cn/publish/zhaolu

src/ProtocolCode.lua
... ... @@ -67,8 +67,6 @@ actionCodes = {
67 67 Role_itemConvertDevilTicketRpc = 148, -- 兑换魔鬼训练营门票
68 68 Role_unRegisterRpc = 149, --注销账号
69 69 Role_searchAllRoleRpc = 150, --查询所有服的角色信息
70   - Role_takeTreasureRpc = 151, --抓取额外宝藏
71   - Role_treasureMapRpc = 152, --兑换宝藏图
72 70  
73 71 Adv_startAdvRpc = 151,
74 72 Adv_startHangRpc = 152,
... ... @@ -148,6 +146,8 @@ actionCodes = {
148 146 Hang_workBattleInfoRpc = 268,
149 147 Hang_getWorkRewardRpc = 269,
150 148 Hang_unlockChapterRpc = 270,
  149 + Hang_takeTreasureRpc = 271, --抓取额外宝藏
  150 + Hang_treasureMapRpc = 272, --兑换宝藏图
151 151  
152 152 Diner_updateProperty = 300,
153 153 Diner_addSellRpc = 301,
... ...
src/actions/HangAction.lua
... ... @@ -1196,4 +1196,42 @@ function _M.unlockChapterRpc(agent, data)
1196 1196 return true
1197 1197 end
1198 1198  
  1199 +
  1200 +function _M.takeTreasureRpc(agent, data)
  1201 + local role = agent.role
  1202 + local extraCount = role.dailyData:getProperty("treasureExtraCount") --每日发现额外宝藏使用次数(累计),隔天清零
  1203 + local mapCount = role.dailyData:getProperty("treasureMapCount")
  1204 + local baseExtra = role.dailyData:getProperty("treasureBaseExtra")
  1205 +
  1206 + if extraCount >= globalCsv.idle_treasure_extra_limie then return 1 end
  1207 + if mapCount <= 0 then return 2 end
  1208 +
  1209 + baseExtra = baseExtra + globalCsv.idle_treasure_base_extra
  1210 +
  1211 + local tmpTreasure, treasureListExtra = role.dailyData:getTreasureExtra(baseExtra)
  1212 + if not tmpTreasure then return 3 end
  1213 +
  1214 + role.dailyData:updateProperty({field = "treasureExtraCount", delta = 1})
  1215 + role.dailyData:updateProperty({field = "treasureBaseExtra", value = mapCount - 1})
  1216 + role.dailyData:updateProperty({field = "treasureBaseExtra", value = baseExtra})
  1217 +
  1218 + SendPacket(actionCodes.Hang_takeTreasureRpc, MsgPack.pack({treasureListExtra = treasureListExtra, treasure = tmpTreasure}))
  1219 + return true
  1220 +end
  1221 +
  1222 +function _M.treasureMapRpc(agent,data)
  1223 + local role = agent.role
  1224 + local msg = MsgPack.unpack(data)
  1225 + local count = msg.count or 1
  1226 + local cost ={[ItemId.Jade] = globalCsv.idle_treasure_buy * count}
  1227 + if not role:checkItemEnough(cost) then return 1 end
  1228 + if not role:costItems(cost, {log = {desc = "treasureMap", int1 = count}}) then return 2 end
  1229 + role.dailyData:updateProperty({field = "treasureMapCount", delta = 1*count})
  1230 +
  1231 + local treasureMapCount = role.dailyData:getProperty("treasureMapCount")
  1232 + SendPacket(actionCodes.Hang_treasureMapRpc, MsgPack.pack({mapCount = treasureMapCount}))
  1233 + return true
  1234 +end
  1235 +
  1236 +
1199 1237 return _M
... ...
src/actions/RoleAction.lua
... ... @@ -1909,40 +1909,4 @@ function _M.itemConvertDevilTicketRpc(agent, data)
1909 1909 return true
1910 1910 end
1911 1911  
1912   -function _M.takeTreasureRpc(agent, data)
1913   - local role = agent.role
1914   - local extraCount = role.dailyData:getProperty("treasureExtraCount") --每日发现额外宝藏使用次数(累计),隔天清零
1915   - local mapCount = role.dailyData:getProperty("treasureMapCount")
1916   - local baseExtra = role.dailyData:getProperty("treasureBaseExtra")
1917   -
1918   - if extraCount >= globalCsv.idle_treasure_extra_limie then return 1 end
1919   - if mapCount <= 0 then return 2 end
1920   -
1921   - baseExtra = baseExtra + globalCsv.idle_treasure_base_extra
1922   -
1923   - local tmpTreasure, treasureListExtra = role.dailyData:getTreasureExtra(baseExtra)
1924   - if not tmpTreasure then return 3 end
1925   -
1926   - role.dailyData:updateProperty({field = "treasureExtraCount", delta = 1})
1927   - role.dailyData:updateProperty({field = "treasureBaseExtra", value = mapCount - 1})
1928   - role.dailyData:updateProperty({field = "treasureBaseExtra", value = baseExtra})
1929   -
1930   - SendPacket(actionCodes.Role_takeTreasureRpc, MsgPack.pack({treasureListExtra = treasureListExtra, treasure = tmpTreasure}))
1931   - return true
1932   -end
1933   -
1934   -function _M.treasureMapRpc(agent,data)
1935   - local role = agent.role
1936   - local msg = MsgPack.unpack(data)
1937   - local count = msg.count or 1
1938   - local cost ={[ItemId.Jade] = globalCsv.idle_treasure_buy * count}
1939   - if not role:checkItemEnough(cost) then return 1 end
1940   - if not role:costItems(cost, {log = {desc = "treasureMap", int1 = count}}) then return 2 end
1941   - role.dailyData:updateProperty({field = "treasureMapCount", delta = 1*count})
1942   -
1943   - local treasureMapCount = role.dailyData:getProperty("treasureMapCount")
1944   - SendPacket(actionCodes.Role_treasureMapRpc, MsgPack.pack({mapCount = treasureMapCount}))
1945   - return true
1946   -end
1947   -
1948 1912 return _M
1949 1913 \ No newline at end of file
... ...
src/models/DailyPlugin.lua
... ... @@ -372,7 +372,7 @@ function DailyPlugin.bind(Daily)
372 372 end
373 373 end
374 374  
375   - if next(tmpTreasure) then
  375 + if not next(tmpTreasure) then
376 376 self:updateProperty({field = "treasureListExtra", value = treasureListExtra})
377 377 return nil
378 378 end
... ...