Commit 9780751116fc0ae6d58aed8f0dc1cea359135308
1 parent
e24d1abd
增加日志
Showing
5 changed files
with
179 additions
and
3 deletions
Show diff stats
src/actions/AdvAction.lua
| ... | ... | @@ -439,6 +439,16 @@ function _M.finishTaskRpc(agent, data) |
| 439 | 439 | role:checkTaskEnter("AdvOverTask", {id = taskId}) |
| 440 | 440 | |
| 441 | 441 | adv:mylog({desc = "finishTask", int1 = taskId}) |
| 442 | + | |
| 443 | + role:log("mission_pick_achiev", { | |
| 444 | + mission_threadid = adv.chapterId, -- 大地图ID | |
| 445 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | |
| 446 | + mission_id = adv.level, -- 关卡ID | |
| 447 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 448 | + mission_pick_achiev_id = taskId, -- 任务ID | |
| 449 | + mission_pick_achiev_reward = reward, -- 任务奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | |
| 450 | + }) | |
| 451 | + | |
| 442 | 452 | |
| 443 | 453 | SendPacket(actionCodes.Adv_finishTaskRpc, MsgPack.pack(role:packReward(reward, change))) |
| 444 | 454 | return true |
| ... | ... | @@ -501,6 +511,15 @@ function _M.useItemRpc(agent, data) |
| 501 | 511 | adv:checkAchievement(adv.AchievType.UseItem, count, itemId) |
| 502 | 512 | adv:mylog({desc = "useItem", int1 = itemId, int2 = count}) |
| 503 | 513 | |
| 514 | + role:log("mission_pick_use", { | |
| 515 | + mission_threadid = adv.chapterId, -- 大地图ID | |
| 516 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | |
| 517 | + mission_id = adv.level, -- 关卡ID | |
| 518 | + item_id = itemId, -- 道具ID | |
| 519 | + mission_pick_use_num = count, -- 道具使用量 | |
| 520 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 521 | + }) | |
| 522 | + | |
| 504 | 523 | for i = 1, count do |
| 505 | 524 | adv:doActive(itemData.effect, target) -- target |
| 506 | 525 | end |
| ... | ... | @@ -587,6 +606,7 @@ function _M.wearArtifactRpc(agent, data) |
| 587 | 606 | |
| 588 | 607 | local status = adv:wearArtifact(slot, id) |
| 589 | 608 | if not status then return 3 end |
| 609 | + | |
| 590 | 610 | adv:saveDB() |
| 591 | 611 | |
| 592 | 612 | role:finishGuide(55) |
| ... | ... | @@ -612,7 +632,20 @@ function _M.upArtifactRpc(agent, data) |
| 612 | 632 | if not adv:cost(cost, {}, true) then return 4 end |
| 613 | 633 | |
| 614 | 634 | local status = adv:artifactLevelUp(id) |
| 615 | - if not status then return 5 end | |
| 635 | + if not status then | |
| 636 | + return 5 | |
| 637 | + else | |
| 638 | + role:log("mission_pick_reform", { | |
| 639 | + mission_threadid = adv.chapterId, -- 大地图ID | |
| 640 | + mission_threadname = (csvdb["adv_chapterCsv"][adv.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | |
| 641 | + mission_id = adv.level, -- 关卡ID | |
| 642 | + mission_pick_equip_id = id, -- 神器ID | |
| 643 | + mission_pick_reform_beflv = curLevel, -- 神器原等级 | |
| 644 | + mission_pick_reform_aftlv = curLevel + 1, -- 神器现等级 | |
| 645 | + mission_pick_reform_cost = cost[ItemId.AdvPoint], -- 消耗探险点数 | |
| 646 | + mission_sequenceid = adv.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 647 | + }) | |
| 648 | + end | |
| 616 | 649 | adv:cost(cost, {log = {desc = "upArtifact", int1 = id}}) |
| 617 | 650 | adv:backCost(cost) |
| 618 | 651 | if status == 1 then -- 现在穿着呢。更新下 |
| ... | ... | @@ -774,7 +807,7 @@ function _M.wheelSurfRpc(agent, data) |
| 774 | 807 | |
| 775 | 808 | if not role:checkItemEnough(costs) then return 5 end |
| 776 | 809 | role:costItems(costs, {log = {desc = "advWheelSurf", int1 = ptype}}) |
| 777 | - role:addAdvLvExp(costs[ItemId.OldCoin] or 0) | |
| 810 | + local oldLv, lv = role:addAdvLvExp(costs[ItemId.OldCoin] or 0) | |
| 778 | 811 | local advDrawB = role:getProperty("advDrawB") |
| 779 | 812 | advDrawB[ptype] = (advDrawB[ptype] or 0) + count |
| 780 | 813 | role:updateProperty({field = "advDrawB", value = advDrawB}) |
| ... | ... | @@ -793,6 +826,16 @@ function _M.wheelSurfRpc(agent, data) |
| 793 | 826 | role:checkTaskEnter("AdvDraw", {count = count, ptype = ptype}) |
| 794 | 827 | role:mylog("adv_action", {desc = "advWheelSurf", int1 = ptype, int2 = count}) |
| 795 | 828 | |
| 829 | + role:log("mission_pick_fund", { | |
| 830 | + item_id = ItemId.OldCoin, -- 资助花费道具ID | |
| 831 | + mission_pick_fund_amount = costs[ItemId.OldCoin], -- 资助花费道具数量 | |
| 832 | + mission_pick_fund_cnt = count, -- 资助花费道具次数,1或者10 | |
| 833 | + mission_pick_fund_reward = reward, -- 资助获得奖励,[{"id":100,"num":10},{"id":101,"num":20},{"id":102,"num":30}] | |
| 834 | + mission_pick_fund_stagereward = {}, -- 资助阶段奖励 | |
| 835 | + mission_pick_fund_beflv = oldLv, -- 资助前资助等级 | |
| 836 | + mission_pick_fund_aftlv = lv, -- 资助后资助等级 | |
| 837 | + }) | |
| 838 | + | |
| 796 | 839 | SendPacket(actionCodes.Adv_wheelSurfRpc, MsgPack.pack({reward = backReward})) |
| 797 | 840 | return true |
| 798 | 841 | end | ... | ... |
src/adv/Adv.lua
| ... | ... | @@ -51,6 +51,7 @@ function Adv:initByInfo(advInfo) |
| 51 | 51 | self.cacheUnlock = advInfo.cacheUnlock or {} |
| 52 | 52 | self.shopStatus = advInfo.shopStatus or {} |
| 53 | 53 | self.support = advInfo.support or {} |
| 54 | + self.logid = advInfo.logid or "auto" | |
| 54 | 55 | |
| 55 | 56 | self.maps = {} |
| 56 | 57 | for id, map in ipairs(advInfo.maps or {}) do |
| ... | ... | @@ -102,6 +103,7 @@ function Adv:initByChapter(params) |
| 102 | 103 | self.shopStatus = self.shopStatus or {} |
| 103 | 104 | self.support = self.support or {} |
| 104 | 105 | self.battle = nil -- 清掉 老的 battle |
| 106 | + self.logid = self.owner:getActionUcode() | |
| 105 | 107 | |
| 106 | 108 | if isEnter then -- 把 支援效果初始化为易用用的形式 |
| 107 | 109 | self:initSupport(support or {}) |
| ... | ... | @@ -206,6 +208,7 @@ function Adv:saveDB(notNotify) |
| 206 | 208 | advInfo.cacheUnlock = self.cacheUnlock |
| 207 | 209 | advInfo.shopStatus = self.shopStatus |
| 208 | 210 | advInfo.support = self.support |
| 211 | + advInfo.logid = self.logid | |
| 209 | 212 | advInfo.maps = {} |
| 210 | 213 | |
| 211 | 214 | self.battle:saveDB() |
| ... | ... | @@ -610,6 +613,15 @@ function Adv:wearArtifact(slot, id) |
| 610 | 613 | id = nil |
| 611 | 614 | end |
| 612 | 615 | self:mylog({desc = "wearArtifact", int1 = id}) |
| 616 | + self.owner:log("mission_pick_equip", { | |
| 617 | + mission_threadid = self.chapterId, -- 大地图ID | |
| 618 | + mission_threadname = (csvdb["adv_chapterCsv"][self.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | |
| 619 | + mission_id = self.level, -- 关卡ID | |
| 620 | + mission_pick_equip_type = 1, --神器操作类型:1:装备,2:卸下 | |
| 621 | + mission_pick_equip_id = id, --神器ID | |
| 622 | + mission_pick_equip_lv = advAFGet[id], --神器等级 | |
| 623 | + mission_sequenceid = self.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 624 | + }) | |
| 613 | 625 | |
| 614 | 626 | self.owner:changeUpdates({{type = "advAFWear", field = slot, value = id}}) |
| 615 | 627 | return true |
| ... | ... | @@ -670,7 +682,6 @@ function Adv:artifactLevelUp(id, level) |
| 670 | 682 | |
| 671 | 683 | self:mylog({desc = "artifactLevelUp", int1 = id, int2 = level}) |
| 672 | 684 | |
| 673 | - | |
| 674 | 685 | local status = 0 |
| 675 | 686 | if curWear[id] then -- 穿着呢 |
| 676 | 687 | local oldData = csvdb["adv_artifactCsv"][id][advAFGet[id]] |
| ... | ... | @@ -815,6 +826,49 @@ function Adv:over(success, rewardRatio, overType) |
| 815 | 826 | |
| 816 | 827 | self:mylog({desc = "over", short1 = success and 1 or 0, int1 = overType}) |
| 817 | 828 | |
| 829 | + | |
| 830 | + local team = self.owner:getProperty("advTeam") | |
| 831 | + local player = {} | |
| 832 | + local attrs = self.owner:getTeamBattleInfo(team).heros | |
| 833 | + for attrName, _ in pairs(AdvAttsEnum) do | |
| 834 | + for _, hero in pairs(attrs) do | |
| 835 | + player[attrName] = (player[attrName] or 0) + hero[attrName] | |
| 836 | + end | |
| 837 | + player[attrName] = player[attrName] * (globalCsv.adv_battle_attr_ratio[attrName] or 1) | |
| 838 | + end | |
| 839 | + | |
| 840 | + local battleV = 1 * player["hp"] | |
| 841 | + + 2 * player["atk"] | |
| 842 | + + 1.25 * player["def"] | |
| 843 | + + 0.226 * player["hit"] | |
| 844 | + + 0.26 * player["miss"] | |
| 845 | + | |
| 846 | + local heroList = {team.leader, team.leader2} | |
| 847 | + for _, hid in pairs(team.heros) do | |
| 848 | + if hid ~= team.leader and hid ~= team.leader2 then | |
| 849 | + heroList[#heroList + 1] = hid | |
| 850 | + end | |
| 851 | + end | |
| 852 | + | |
| 853 | + self.owner:log("mission_pick", { | |
| 854 | + mission_threadid = self.chapterId, -- 大地图ID | |
| 855 | + mission_threadname = (csvdb["adv_chapterCsv"][self.chapterId] or {})["chapter"] or "auto", -- 大地图名称 | |
| 856 | + mission_id = self.level, -- 关卡ID | |
| 857 | + mission_herolist = heroList, -- 英雄ID列表,[111, 222, 333, 444, 555] 前两个为队长、副队长 | |
| 858 | + mission_heroscore = battleV, -- 编队总评分 | |
| 859 | + mission_teamlv = 0, -- 编队等级 | |
| 860 | + mission_recscore = csvdb["adv_chapter_campsiteCsv"][self.chapterId][1].recommendValue, -- 关卡推荐评分 | |
| 861 | + mission_floor_bef = 0, -- 进入前关卡层数 | |
| 862 | + mission_floor_aft = self.level, -- 结束时关卡层数 | |
| 863 | + mission_team_status = {HP = team.player.hp, SP = team.player.sp}, -- 队伍状态,{"HP":100, "SP":100, "curse":7} | |
| 864 | + mission_result = success and 1 or (team.player.hp > 0 and 3 or 2), -- 战斗结果(0-无效,1-胜利,2-血量耗尽退出,3,主动退出) | |
| 865 | + mission_reward = reward, -- 获得奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | |
| 866 | + mission_integral_bef = 0, -- 进入前积分 | |
| 867 | + mission_integral_aft = score, -- 完成后积分 | |
| 868 | + mission_cleartype = 1, -- 1正常通关;2代理拾荒 | |
| 869 | + mission_sequenceid = self.logid, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 870 | + }) | |
| 871 | + | |
| 818 | 872 | local chapterId = self.chapterId |
| 819 | 873 | self:clear() |
| 820 | 874 | self.owner:checkTaskEnter("AdvScore", {score = score}) | ... | ... |
src/models/RoleLog.lua
| ... | ... | @@ -422,6 +422,79 @@ local MethodType = { |
| 422 | 422 | gift_name = true, -- 礼包名称 |
| 423 | 423 | gift_reason = true, -- 礼包发放原因,见发放原因枚举表 |
| 424 | 424 | }, |
| 425 | + | |
| 426 | + push_gift = { -- 礼包推送 | |
| 427 | + gift_id = true, --礼包ID | |
| 428 | + gift_name = true, --礼包名称 | |
| 429 | + }, | |
| 430 | + | |
| 431 | + mission_pick = { --拾荒玩法 | |
| 432 | + mission_threadid = true, -- 大地图ID | |
| 433 | + mission_threadname = true, -- 大地图名称 | |
| 434 | + mission_id = true, -- 关卡ID | |
| 435 | + mission_herolist = "json", -- 英雄ID列表,[111, 222, 333, 444, 555] 前两个为队长、副队长 | |
| 436 | + mission_heroscore = true, -- 编队总评分 | |
| 437 | + mission_teamlv = true, -- 编队等级 | |
| 438 | + mission_recscore = true, -- 关卡推荐评分 | |
| 439 | + mission_floor_bef = true, -- 进入前关卡层数 | |
| 440 | + mission_floor_aft = true, -- 结束时关卡层数 | |
| 441 | + mission_team_status = "json", -- 队伍状态,{"HP":100, "SP":100, "curse":7} | |
| 442 | + mission_result = true, -- 战斗结果(0-无效,1-胜利,2-血量耗尽退出,3,主动退出) | |
| 443 | + mission_reward = "json", -- 获得奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | |
| 444 | + mission_integral_bef = true, -- 进入前积分 | |
| 445 | + mission_integral_aft = true, -- 完成后积分 | |
| 446 | + mission_cleartype = true, -- 1正常通关;2代理拾荒 | |
| 447 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 448 | + }, | |
| 449 | + | |
| 450 | + mission_pick_achiev = { --拾荒任务 | |
| 451 | + mission_threadid = true, -- 大地图ID | |
| 452 | + mission_threadname = true, -- 大地图名称 | |
| 453 | + mission_id = true, -- 关卡ID | |
| 454 | + mission_pick_achiev_id = true, -- 任务ID | |
| 455 | + mission_pick_achiev_reward = "json", -- 任务奖励,[{"id":101,"num":10},{"id":102,"num":20},{"id":103,"num":30}] | |
| 456 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 457 | + }, | |
| 458 | + | |
| 459 | + mission_pick_equip = { -- 拾荒神器装备 | |
| 460 | + mission_threadid = true, --大地图ID | |
| 461 | + mission_threadname = true, --大地图名称 | |
| 462 | + mission_id = true, --关卡ID | |
| 463 | + mission_pick_equip_type = true, --神器操作类型:1:装备,2:卸下 | |
| 464 | + mission_pick_equip_id = true, --神器ID | |
| 465 | + mission_pick_equip_lv = true, --神器等级 | |
| 466 | + mission_sequenceid = true, --本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 467 | + }, | |
| 468 | + | |
| 469 | + mission_pick_reform = { --拾荒神器升级 | |
| 470 | + mission_threadid = true, -- 大地图ID | |
| 471 | + mission_threadname = true, -- 大地图名称 | |
| 472 | + mission_id = true, -- 关卡ID | |
| 473 | + mission_pick_equip_id = true, -- 神器ID | |
| 474 | + mission_pick_reform_beflv = true, -- 神器原等级 | |
| 475 | + mission_pick_reform_aftlv = true, -- 神器现等级 | |
| 476 | + mission_pick_reform_cost = true, -- 消耗探险点数 | |
| 477 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 478 | + }, | |
| 479 | + | |
| 480 | + mission_pick_use = { --拾荒任务道具使用 | |
| 481 | + mission_threadid = true, -- 大地图ID | |
| 482 | + mission_threadname = true, -- 大地图名称 | |
| 483 | + mission_id = true, -- 关卡ID | |
| 484 | + item_id = true, -- 道具ID | |
| 485 | + mission_pick_use_num = true, -- 道具使用量 | |
| 486 | + mission_sequenceid = true, -- 本次拾荒ID,用于关联一次拾荒产生多条不同类型的日志 | |
| 487 | + }, | |
| 488 | + | |
| 489 | + mission_pick_fund = { --拾荒资助 | |
| 490 | + item_id = true, -- 资助花费道具ID | |
| 491 | + mission_pick_fund_amount = true, -- 资助花费道具数量 | |
| 492 | + mission_pick_fund_cnt = true, -- 资助花费道具次数,1或者10 | |
| 493 | + mission_pick_fund_reward = "json", -- 资助获得奖励,[{"id":100,"num":10},{"id":101,"num":20},{"id":102,"num":30}] | |
| 494 | + mission_pick_fund_stagereward = "json", -- 资助阶段奖励 | |
| 495 | + mission_pick_fund_beflv = true, -- 资助前资助等级 | |
| 496 | + mission_pick_fund_aftlv = true, -- 资助后资助等级 | |
| 497 | + }, | |
| 425 | 498 | } |
| 426 | 499 | |
| 427 | 500 | local function printError(info) | ... | ... |
src/models/RolePlugin.lua
| ... | ... | @@ -1189,6 +1189,7 @@ function RolePlugin.bind(Role) |
| 1189 | 1189 | function Role:addAdvLvExp(exp) |
| 1190 | 1190 | local advL = self:getProperty("advL") |
| 1191 | 1191 | local level = advL[1] |
| 1192 | + local oldLevel = level | |
| 1192 | 1193 | local newExp = (advL[2] or 0) + exp |
| 1193 | 1194 | |
| 1194 | 1195 | if not csvdb["adv_level_fundCsv"][level + 1] then |
| ... | ... | @@ -1211,6 +1212,7 @@ function RolePlugin.bind(Role) |
| 1211 | 1212 | advL[1] = level |
| 1212 | 1213 | advL[2] = newExp |
| 1213 | 1214 | self:updateProperty({field = "advL", value = advL}) |
| 1215 | + return oldLevel, level | |
| 1214 | 1216 | end |
| 1215 | 1217 | |
| 1216 | 1218 | function Role:getAdvWheelSurfLv(ptype) | ... | ... |
src/models/Store.lua
| ... | ... | @@ -353,6 +353,10 @@ function Store:OnTriggerLimitTimePack(eventType, param) |
| 353 | 353 | local rechargeCfg = csvdb["shop_rechargeCsv"][config.packId] |
| 354 | 354 | if rechargeCfg then |
| 355 | 355 | limitPack[rechargeCfg.id] = {timeNow + rechargeCfg.time, config.id} |
| 356 | + self.owner:log("push_gift", { | |
| 357 | + gift_id = rechargeCfg.id, --礼包ID | |
| 358 | + gift_name = rechargeCfg.title, --礼包名称 | |
| 359 | + }) | |
| 356 | 360 | self:updateProperty({field = "limitTPack", value = limitPack}) |
| 357 | 361 | end |
| 358 | 362 | end | ... | ... |