Commit 1e2c53169cf317161a9655b97a4403fc66ce159f
1 parent
7fe1158c
fix: 修改昵称,餐厅/电波塔/拾荒排行榜对应用户昵称未修改的bug
【ID1232549】 【拂晓的拾荒团-国服】【餐厅】【当玩家修改名字后排行榜未能及时更新数据】
Showing
3 changed files
with
40 additions
and
0 deletions
Show diff stats
src/actions/RoleAction.lua
@@ -493,6 +493,10 @@ function _M.changeNameRpc(agent, data) | @@ -493,6 +493,10 @@ function _M.changeNameRpc(agent, data) | ||
493 | ["name"] = newName, | 493 | ["name"] = newName, |
494 | }) | 494 | }) |
495 | 495 | ||
496 | + role.dinerData:updateRankRoleName(newName) | ||
497 | + role:updateTowerRankName(newName) | ||
498 | + role:updateAdvRankName(newName) | ||
499 | + | ||
496 | role:changeCrossServerPvpSelfInfo("name") | 500 | role:changeCrossServerPvpSelfInfo("name") |
497 | role:checkTaskEnter("Rename", {}) | 501 | role:checkTaskEnter("Rename", {}) |
498 | SendPacket(actionCodes.Role_changeNameRpc, MsgPack.pack({result = 0})) | 502 | SendPacket(actionCodes.Role_changeNameRpc, MsgPack.pack({result = 0})) |
src/models/Diner.lua
@@ -394,6 +394,18 @@ function Diner:getPopularRank() | @@ -394,6 +394,18 @@ function Diner:getPopularRank() | ||
394 | return {list = list, rank = rank} | 394 | return {list = list, rank = rank} |
395 | end | 395 | end |
396 | 396 | ||
397 | +function Diner:updateRankRoleName(name) | ||
398 | + if name:len() <= 0 then return end | ||
399 | + | ||
400 | + local roleId = self.owner:getProperty("id") | ||
401 | + local redret = redisproxy:hget(RANK_DINER_INFO, roleId) | ||
402 | + if redret:len() > 0 then | ||
403 | + local player = MsgPack.unpack(redret) | ||
404 | + player.name = name | ||
405 | + redisproxy:hset(RANK_DINER_INFO, roleId, MsgPack.pack(player)) | ||
406 | + end | ||
407 | +end | ||
408 | + | ||
397 | function Diner:data() | 409 | function Diner:data() |
398 | local properties = { | 410 | local properties = { |
399 | "buildL", | 411 | "buildL", |
src/models/RolePlugin.lua
@@ -1697,6 +1697,30 @@ function RolePlugin.bind(Role) | @@ -1697,6 +1697,30 @@ function RolePlugin.bind(Role) | ||
1697 | end | 1697 | end |
1698 | end | 1698 | end |
1699 | 1699 | ||
1700 | + function Role:updateTowerRankName(name) | ||
1701 | + if name:len() <= 0 then return end | ||
1702 | + local roleId = self:getProperty("id") | ||
1703 | + for _, info in pairs(TowerRankInfo) do | ||
1704 | + local data = redisproxy:hget(info.rankInfo, roleId) | ||
1705 | + if data then | ||
1706 | + local player = MsgPack.unpack(data) | ||
1707 | + player.name = name | ||
1708 | + redisproxy:hset(info.rankInfo, roleId, MsgPack.pack(player)) | ||
1709 | + end | ||
1710 | + end | ||
1711 | + end | ||
1712 | + | ||
1713 | + function Role:updateAdvRankName(name) | ||
1714 | + if name:len() <= 0 then return end | ||
1715 | + local roleId = self:getProperty("id") | ||
1716 | + local data = redisproxy:hget(RANK_ADV_INFO, roleId) | ||
1717 | + if data then | ||
1718 | + local player = MsgPack.unpack(data) | ||
1719 | + player.name = name | ||
1720 | + redisproxy:hset(RANK_ADV_INFO, roleId, MsgPack.pack(player)) | ||
1721 | + end | ||
1722 | + end | ||
1723 | + | ||
1700 | function Role:addAdvLvExp(exp) | 1724 | function Role:addAdvLvExp(exp) |
1701 | local advL = self:getProperty("advL") | 1725 | local advL = self:getProperty("advL") |
1702 | local level = advL[1] | 1726 | local level = advL[1] |