Commit ab2eb90303d27daecf1ddcfcffcc19365a36d154
Merge branch 'tr/bugfix' into tr/develop
* tr/bugfix: 跨服竞技场 关卡boss活动扫荡累计伤害值不正确bug 抽卡up_pool判空 抽卡up失败走全随机,随机池把up角色剔除 心愿卡池根据心愿单英雄数量调整概率 铭文升级超过上限bug # Conflicts: # src/csvdata
Showing
6 changed files
with
21 additions
and
7 deletions
Show diff stats
src/actions/ActivityAction.lua
| ... | ... | @@ -542,7 +542,7 @@ function _M.startBattleRpc(agent, data) |
| 542 | 542 | bi["bossP"] = (bi["bossP"] or 0) + bi["maxP"] * count |
| 543 | 543 | end |
| 544 | 544 | |
| 545 | - bi["sum"] = bi["sum"] + bi["top"] | |
| 545 | + bi["sum"] = bi["sum"] + bi["top"] * count | |
| 546 | 546 | actData["ticket"] = ticket - num |
| 547 | 547 | actData[id] = bi |
| 548 | 548 | changeFlag = true | ... | ... |
src/actions/CarAction.lua
| ... | ... | @@ -124,8 +124,8 @@ function _M.runeUpRpc( agent, data ) |
| 124 | 124 | local runeData = runeSet[id] |
| 125 | 125 | if not runeData then return 5 end |
| 126 | 126 | |
| 127 | - local maxLv = #csvdb["rune_buildCsv"] | |
| 128 | - if level >= maxLv then return 6 end | |
| 127 | + --local maxLv = #csvdb["rune_buildCsv"] | |
| 128 | + if level >= runeData.lvLimit then return 6 end | |
| 129 | 129 | local lvData = csvdb["rune_buildCsv"][level] |
| 130 | 130 | local cost = lvData.cost:toNumMap() |
| 131 | 131 | if not role:checkItemEnough(cost) then | ... | ... |
src/actions/HeroAction.lua
| ... | ... | @@ -853,6 +853,10 @@ function _M.drawHeroRpc(agent, data) |
| 853 | 853 | elseif values[1] == HeroQuality.SSR then |
| 854 | 854 | weight = unitPool["up_ssr_weight"] |
| 855 | 855 | up_pool = unitPool["up_ssr_id"] |
| 856 | + if btype == 5 then | |
| 857 | + local wishPool = role:getProperty("wishPool") or {} | |
| 858 | + weight = weight * #wishPool | |
| 859 | + end | |
| 856 | 860 | end |
| 857 | 861 | --print(poolId, rand_v, weight, up_pool, values[1]) |
| 858 | 862 | if rand_v < weight and up_pool then |
| ... | ... | @@ -879,6 +883,15 @@ function _M.drawHeroRpc(agent, data) |
| 879 | 883 | if heroData[field] ~= values[idx] then ok = false break end |
| 880 | 884 | end |
| 881 | 885 | end |
| 886 | + -- 随机剔除up池中的角色 | |
| 887 | + if up_pool then | |
| 888 | + for k, v in ipairs(up_pool) do | |
| 889 | + if v == itemData.id then | |
| 890 | + ok = false | |
| 891 | + break | |
| 892 | + end | |
| 893 | + end | |
| 894 | + end | |
| 882 | 895 | if not ok then break end |
| 883 | 896 | if oneData[pool_str] > 0 then |
| 884 | 897 | resultPool[itemId] = {oneData[pool_str]} -- itemId, count, 概率 | ... | ... |
src/models/RoleLog.lua
src/models/RolePvp.lua
| ... | ... | @@ -521,7 +521,7 @@ function Role:changeCrossServerPvpSelfInfo(cType) |
| 521 | 521 | change[cType] = self:getProperty(cType) |
| 522 | 522 | elseif cType == "format" then |
| 523 | 523 | -- 是否过了时间 |
| 524 | - local crossTime = skynet.timex() - self:getTimeResetStartTime(TimeReset.PvpCross) | |
| 524 | + local crossTime = skynet.timex() - self:getTimeResetStartTime(TimeReset.PvpCross) + RESET_TIME * 3600 | |
| 525 | 525 | local aday = 3600 * 24 |
| 526 | 526 | local day = math.ceil(crossTime / aday) -- 当前是第几个比赛日 |
| 527 | 527 | local ctime = crossTime % aday -- 当前在本天 经过多少时间 |
| ... | ... | @@ -615,7 +615,7 @@ end |
| 615 | 615 | |
| 616 | 616 | function Role:setCrossServerPvpBet(idx) |
| 617 | 617 | if not self:isTimeResetOpen(TimeReset.PvpCross) then return false , 1 end |
| 618 | - local crossTime = skynet.timex() - self:getTimeResetStartTime(TimeReset.PvpCross) | |
| 618 | + local crossTime = skynet.timex() - self:getTimeResetStartTime(TimeReset.PvpCross) + RESET_TIME * 3600 | |
| 619 | 619 | local aday = 3600 * 24 |
| 620 | 620 | local day = math.ceil(crossTime / aday) -- 当前是第几个比赛日 |
| 621 | 621 | local ctime = crossTime % aday -- 当前在本天 经过多少时间 | ... | ... |
src/services/pvpd.lua
| ... | ... | @@ -84,7 +84,7 @@ function CMD.updateRoleInfo(change) |
| 84 | 84 | CMD.refreshRoleInfo(change) |
| 85 | 85 | local pvpd = cluster.query("center", "pvpd") |
| 86 | 86 | if pvpd then |
| 87 | - pcall(cluster.call, "center", pvpd, "updateRoleInfo", change) | |
| 87 | + pcall(cluster.send, "center", pvpd, "updateRoleInfo", change) | |
| 88 | 88 | end |
| 89 | 89 | end |
| 90 | 90 | |
| ... | ... | @@ -92,7 +92,7 @@ local function getDayAndTime() |
| 92 | 92 | local startTime = getStartTime() |
| 93 | 93 | local now = skynet.timex() |
| 94 | 94 | |
| 95 | - local crossTime = now - startTime | |
| 95 | + local crossTime = now - startTime + RESET_TIME * 3600 | |
| 96 | 96 | local aday = 3600 * 24 |
| 97 | 97 | local day = math.ceil(crossTime / aday) -- 当前是第几个比赛日 |
| 98 | 98 | local ctime = crossTime % aday -- 当前在本天 经过多少时间 | ... | ... |