跨服排行,显示服务器名字

back_recharge
duhui 2021-07-28 17:51:23 +08:00
parent 44b3b2881f
commit 01ec371f1d
3 changed files with 29 additions and 10 deletions

View File

@ -39,7 +39,7 @@ public class CrossServiceLogic {
return CrossServiceLogic.Instance.instance;
}
public String findServerName(int serverId) throws UnknownHostException {
public String findServerName(int serverId) {
return CrossDeathPathLogic.getInstance().getServerName(serverId);
}
@ -143,11 +143,7 @@ public class CrossServiceLogic {
arenaOfPlayerManager.setGender(player.getSex());
arenaOfPlayerManager.setSkin(player.getUserSkin());
arenaOfPlayerManager.setUserMount(player.getUserMount());
try {
arenaOfPlayerManager.setServerName(CrossServiceLogic.getInstance().findServerName(GameApplication.serverId));
} catch (UnknownHostException e) {
e.printStackTrace();
}
arenaOfPlayerManager.setServerName(CrossServiceLogic.getInstance().findServerName(GameApplication.serverId));
return arenaOfPlayerManager;
}
private ArenaOfHeroManager buildArenaOfHeroManager(User user){
@ -197,4 +193,23 @@ public class CrossServiceLogic {
return arenaOfHero;
}
/**
* uid
* @param uid
* @return
*/
public String getServerNameByUId(int uid){
String name = "";
try {
ArenaOfUser query = query(uid);
if (query != null){
int serverId = query.getPlayerManager().getServerId();
return CrossDeathPathLogic.getInstance().getServerNameByDeathPath(serverId);
}
} catch (UnknownHostException e) {
LOGGER.error("===========获取跨服玩家信息报错======={}",e.getMessage());
}
return name;
}
}

View File

@ -1169,6 +1169,7 @@ public class HeroLogic{
}
if (teamId == GlobalsDef.FORMATION_NORMAL) {
Poster.getPoster().dispatchEvent(new UserMainTeamForceEvent(iSession.getUid()));
CrossServiceLogic.getInstance().dispose(user);
}
// 跨服 更新编队信息

View File

@ -3,6 +3,7 @@ package com.ljsd.jieling.logic.rank.rankImpl;
import com.ljsd.jieling.db.redis.RedisKey;
import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.logic.GlobleSystemLogic;
import com.ljsd.jieling.logic.activity.crossService.CrossServiceLogic;
import com.ljsd.jieling.logic.dao.UserManager;
import com.ljsd.jieling.logic.dao.root.User;
import com.ljsd.jieling.logic.rank.IRank;
@ -152,8 +153,10 @@ public abstract class AbstractRank implements IRank {
CommonProto.UserRank.Builder oneUserRank = getOneUserRank(everyUser, everyRankInfo);
builder.addRanks(oneUserRank);
}
public CommonProto.UserRank.Builder getOneUserRank(User everyUser,CommonProto.RankInfo.Builder everyRankInfo) throws Exception {
CommonProto.UserRank.Builder everyRank = CommonProto.UserRank.newBuilder()
private CommonProto.UserRank.Builder getOneUserRank(User everyUser,CommonProto.RankInfo.Builder everyRankInfo){
String serverName = CrossServiceLogic.getInstance().getServerNameByUId(everyUser.getId());
return CommonProto.UserRank.newBuilder()
.setUid(everyUser.getId())
.setUserName(everyUser.getPlayerInfoManager().getNickName())
.setHead(everyUser.getPlayerInfoManager().getHead())
@ -165,8 +168,8 @@ public abstract class AbstractRank implements IRank {
.setUserSkin(everyUser.getPlayerInfoManager().getUserSkin())
.setUserTitle(everyUser.getPlayerInfoManager().getUserTitle())
.setUserMount(everyUser.getPlayerInfoManager().getUserMount())
.setPracticeLevel(everyUser.getHeroManager().getPracticeLevel());
return everyRank;
.setPracticeLevel(everyUser.getHeroManager().getPracticeLevel())
.setServerName(serverName);
}
protected void getMyInfo(User user,String rkey,PlayerInfoProto.RankResponse.Builder allUserResponse){