Commit 7cd7fd530359f3fefcb722d53ff5e8435e3b0fcf
Merge branch 'tr/bugfix' into tr/bugfix-qa
# Conflicts: # src/csvdata
Showing
4 changed files
with
46 additions
and
9 deletions
Show diff stats
src/actions/GmAction.lua
... | ... | @@ -247,6 +247,7 @@ table.insert(helpDes, {"获得所有零件", "get", "RUNE"}) |
247 | 247 | table.insert(helpDes, {"获得所有碎片", "get", "FRAG"}) |
248 | 248 | table.insert(helpDes, {"获得所有食物", "get", "FOOD"}) |
249 | 249 | table.insert(helpDes, {"获得所有角色", "get", "HERO"}) |
250 | +table.insert(helpDes, {"获得满级满觉醒角色,满级满精进铭文", "get", "MAXHERO"}) | |
250 | 251 | function _M.get(role, pms) |
251 | 252 | if pms.pm1 == "ALL" then |
252 | 253 | local reward = {} |
... | ... | @@ -263,7 +264,7 @@ function _M.get(role, pms) |
263 | 264 | end |
264 | 265 | end |
265 | 266 | elseif pms.pm1 == "RUNE" then |
266 | - for itemId = 2000 , 3000 do | |
267 | + for itemId = 10000 , 20000 do | |
267 | 268 | if csvdb["itemCsv"][itemId] then |
268 | 269 | role:award({[itemId] = 1}, {log = {desc = "gm"}}) |
269 | 270 | end |
... | ... | @@ -286,6 +287,36 @@ function _M.get(role, pms) |
286 | 287 | role:award({[itemId] = 1}, {log = {desc = "gm"}}) |
287 | 288 | end |
288 | 289 | end |
290 | + elseif pms.pm1 == "MAXHERO" then | |
291 | + -- 给英雄 | |
292 | + for itemId = 400 , 700 do | |
293 | + if csvdb["itemCsv"][itemId] then | |
294 | + role:award({[itemId] = 1}, {log = {desc = "gm"}}) | |
295 | + end | |
296 | + end | |
297 | + -- 升满级 | |
298 | + for _, hero in ipairs(role.heros) do | |
299 | + hero:updateProperty({field = "level", value = 140}) | |
300 | + hero:updateProperty({field = "wakeL", value = #csvdb["unit_wakeCsv"]}) | |
301 | + end | |
302 | + | |
303 | + -- 添加铭文 | |
304 | + for itemId = 10000 , 20000 do | |
305 | + if csvdb["itemCsv"][itemId] then | |
306 | + role:award({[itemId] = 1}, {log = {desc = "gm"}}) | |
307 | + end | |
308 | + end | |
309 | + for _, rune in ipairs(role.runeBag) do | |
310 | + local typ = rune:getProperty("type") | |
311 | + local id = rune:getProperty("id") | |
312 | + | |
313 | + local runeSet = csvdb["runeCsv"][typ] | |
314 | + if not runeSet then break end | |
315 | + local runeData = runeSet[id] | |
316 | + if not runeData then break end | |
317 | + | |
318 | + rune:updateProperty({field = "level",value = runeData.lvLimit}) | |
319 | + end | |
289 | 320 | else |
290 | 321 | local itemId = tonum(pms.pm1) |
291 | 322 | if not csvdb["itemCsv"][itemId] then | ... | ... |
src/actions/RoleAction.lua
... | ... | @@ -157,6 +157,7 @@ function _M.loginRpc( agent, data ) |
157 | 157 | SERV_OPEN = redisproxy:hget("autoincrement_set", "server_start") |
158 | 158 | |
159 | 159 | role:changeStructVersion() -- 数据结构 版本更新 |
160 | + role:getAdvData(true) -- 清掉不合格的数据 | |
160 | 161 | role:advEndlessSeasonCheck(true) -- 冒险赛季更新检查 |
161 | 162 | |
162 | 163 | -- 跨天登陆事件 | ... | ... |
src/adv/Adv.lua
... | ... | @@ -20,8 +20,6 @@ function Adv:ctor(owner) |
20 | 20 | self.advTask = self.owner:getProperty("advTask") |
21 | 21 | self.advMTask = self.owner:getProperty("advMTask") |
22 | 22 | self.advTaskChange = false -- 任务改变才更新 |
23 | - | |
24 | - self:initByInfo(self.owner:getProperty("advInfo")) | |
25 | 23 | end |
26 | 24 | |
27 | 25 | function Adv:mylog(contents) |
... | ... | @@ -36,7 +34,8 @@ function Adv:mylog(contents) |
36 | 34 | end |
37 | 35 | |
38 | 36 | --初始化adv 信息 |
39 | -function Adv:initByInfo(advInfo) | |
37 | +function Adv:initByInfo() | |
38 | + local advInfo = self.owner:getProperty("advInfo") | |
40 | 39 | if not next(advInfo) then return end --还没有 开始新地图 |
41 | 40 | |
42 | 41 | self.chapterId = advInfo.chapterId |
... | ... | @@ -402,10 +401,9 @@ function Adv:isRunning() |
402 | 401 | return false |
403 | 402 | end |
404 | 403 | |
405 | --- 强制结束 | |
406 | -function Adv:forceOver(notNotify) | |
407 | - if self:isRunning() then | |
408 | - | |
404 | +-- 强制结束 逻辑和adv内部无关 | |
405 | +function Adv:forceOver(notNotify, force) | |
406 | + if self:isRunning() or force then | |
409 | 407 | local advTeam = self.owner:getProperty("advTeam") |
410 | 408 | advTeam.player = nil |
411 | 409 | ... | ... |
src/models/RolePlugin.lua
... | ... | @@ -838,9 +838,16 @@ function RolePlugin.bind(Role) |
838 | 838 | return runeSet |
839 | 839 | end |
840 | 840 | |
841 | - function Role:getAdvData() | |
841 | + function Role:getAdvData(notNotify) | |
842 | 842 | if not self.advData then |
843 | 843 | self.advData = require("adv.Adv").new(self) |
844 | + local status, err = pcall(function() | |
845 | + self.advData:initByInfo() | |
846 | + end) | |
847 | + if not status then | |
848 | + self.advData:forceOver(notNotify, true) | |
849 | + skynet.error("getAdvData error adv initByInfo " .. err) | |
850 | + end | |
844 | 851 | end |
845 | 852 | return self.advData |
846 | 853 | end | ... | ... |