Commit 5c6f50cbebb7d73678e09c7f50defdbf187405a1

Authored by zhangqijia
1 parent 78065fee

fix: 额外宝藏,在宝藏列表并且未过期的宝藏,不会再随机(与每日宝藏逻辑不同)

Showing 1 changed file with 13 additions and 10 deletions   Show diff stats
src/models/DailyPlugin.lua
... ... @@ -20,7 +20,7 @@ function DailyPlugin.bind(Daily)
20 20 end
21 21  
22 22 --CD
23   - function Daily:checkTreasureExpired(treasureAttr, treasureList)
  23 + function Daily:checkTreasureExpired(treasureAttr, treasureList, isExtra)
24 24 local curInfo = treasureList[treasureAttr.id]
25 25 local now = skynet.timex()
26 26 if curInfo then
... ... @@ -41,6 +41,10 @@ function DailyPlugin.bind(Daily)
41 41 end
42 42 curInfo = clone(treasureAttr)
43 43 end
  44 + else
  45 + if isExtra then
  46 + curInfo = nil
  47 + end
44 48 end
45 49 else
46 50 curInfo = clone(treasureAttr)
... ... @@ -58,7 +62,6 @@ function DailyPlugin.bind(Daily)
58 62 --1. 正在挖宝,未挖到
59 63 --2. 已经挖到宝藏,但未领取
60 64 --3. 正在挂机
61   - local now = skynet.timex()
62 65 for _, curInfo in pairs(treasureList or {}) do
63 66 if (not curInfo["expire_time"] and curInfo["end_time"]) then
64 67 tmp_chapters[curInfo.chapter_id] = curInfo
... ... @@ -85,7 +88,7 @@ function DailyPlugin.bind(Daily)
85 88 return chapters
86 89 end
87 90  
88   - --额外宝藏
  91 + --绑定通关关卡 额外宝藏
89 92 function Daily:checkChaptersExtra(treasureList, treasureListOther)
90 93 local chapters = {}
91 94 local tmp_chapters = {}
... ... @@ -93,7 +96,6 @@ function DailyPlugin.bind(Daily)
93 96 --不可以绑定的关卡
94 97 --1. 未过期(未挖,在挖,未领)
95 98 --2. 正在挂机
96   - local now = skynet.timex()
97 99 for _, curInfo in pairs(treasureList or {}) do
98 100 if not curInfo["expire_time"] then
99 101 tmp_chapters[curInfo.chapter_id] = curInfo
... ... @@ -307,13 +309,14 @@ function DailyPlugin.bind(Daily)
307 309  
308 310 --宝藏图鉴
309 311 function Daily:getTreasureList()
310   - local tmpcsv = csvdb["idle_treasureCsv"]
311 312 local treasureList = self:getProperty("treasureList") or {} --挖宝列表 过期删除 领取奖励删除 跨天更新
312 313 local treasureListExtra = self:getProperty("treasureListExtra") or {} --额外宝藏列表 过期删除 领取奖励删除 跨天更新
  314 +
  315 + --获取宝藏列表(与额外宝藏逻辑不同) 进行随机获取宝藏
313 316 local tmpTreasure = {}
314 317 local treasureBase = globalCsv.idle_treasure_base + self.owner:getBnousTreasureBaseMaximum()
315   - for _, val in pairs(tmpcsv) do
316   - if self:checkUnlock(val) == true then
  318 + for _, val in pairs(csvdb["idle_treasureCsv"]) do
  319 + if self:checkUnlock(val) then
317 320 local treasure = self:checkTreasureExpired(val, treasureList)
318 321 if treasure then
319 322 table.insert(tmpTreasure, treasure)
... ... @@ -380,14 +383,14 @@ function DailyPlugin.bind(Daily)
380 383 end
381 384  
382 385 function Daily:getTreasureExtra(tmpBaseExtra)
383   - local tmpcsv = csvdb["idle_treasureCsv"]
384 386 local treasureList = self:getProperty("treasureList") or {} --挖宝列表 过期删除 领取奖励删除 跨天更新
385 387 local treasureListExtra = self:getProperty("treasureListExtra") or {} --额外宝藏 过期删除 领取奖励删除 跨天更新
386 388  
  389 + --获取宝藏列表(排除未过期的宝藏) 进行随机获取宝藏
387 390 local tmpTreasure = {}
388   - for _, val in pairs(tmpcsv) do
  391 + for _, val in pairs(csvdb["idle_treasureCsv"]) do
389 392 if self:checkUnlock(val) then
390   - local treasure = self:checkTreasureExpired(val, treasureListExtra)
  393 + local treasure = self:checkTreasureExpired(val, treasureListExtra, true)
391 394 if treasure then
392 395 table.insert(tmpTreasure, treasure)
393 396 end
... ...