From c256929f931269dfefa6e8ca3355db98e44dcf00 Mon Sep 17 00:00:00 2001 From: duhui Date: Fri, 30 Jul 2021 17:16:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B7=A8=E6=9C=8D=E6=8E=92=E8=A1=8C=E6=88=98?= =?UTF-8?q?=E5=8A=9B=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gtw/GetWorldArenaChallengeRequestHandler.java | 2 +- .../activity/crossService/CrossServiceLogic.java | 11 ++++++++--- .../com/ljsd/jieling/logic/arena/ArenaLogic.java | 2 +- .../jieling/logic/dao/gm/ArenaOfHeroManager.java | 13 ++++++++++++- .../jieling/logic/dao/gm/ArenaOfPlayerManager.java | 9 +++++++++ .../com/ljsd/jieling/logic/player/PlayerLogic.java | 3 ++- .../jieling/logic/rank/rankImpl/AbstractRank.java | 3 +++ 7 files changed, 36 insertions(+), 7 deletions(-) diff --git a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaChallengeRequestHandler.java b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaChallengeRequestHandler.java index 1545edc78..e5ce7c999 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaChallengeRequestHandler.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/handler/gtw/GetWorldArenaChallengeRequestHandler.java @@ -162,7 +162,7 @@ public class GetWorldArenaChallengeRequestHandler extends BaseHandler map = new HashMap<>(); + teams.forEach((k,v)->{ + int totalForce = HeroLogic.getInstance().calTeamTotalForce(user,k,false); + map.put(k,totalForce); + }); + int force = HeroLogic.getInstance().calTeamTotalForce(user, GlobalsDef.WORLD_TEAM_ARENA_DEFENSE, false); + return new ArenaOfHeroManager(teams,heroes,jewels,map,force); } private ArenaOfHero buildArenaOfHero(User user,Hero hero, Map> teamMap){ diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java index b41d8d6ea..eb9d191e3 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/arena/ArenaLogic.java @@ -644,7 +644,7 @@ public class ArenaLogic { }else{ //跨服切磋 ArenaOfUser user = CrossServiceLogic.getInstance().query(challengeUid); - deforce= user.getHeroManager().getTotalForce(); + deforce= user.getHeroManager().getTotalForceByTeam().get(myteamId); deffightTeamInfo = FightUtil.makeCrossPersonData(user,myteamId); } if(myforce jewels = new HashMap<>(); + private Map totalForceByTeam = new HashMap<>(); + private int totalForce; - public ArenaOfHeroManager(Map> teams, Map heros, Map jewels, int totalForce) { + public ArenaOfHeroManager(Map> teams, Map heros, Map jewels, Map totalForceByTeam, int totalForce) { this.teams = teams; this.heros = heros; this.jewels = jewels; + this.totalForceByTeam = totalForceByTeam; this.totalForce = totalForce; } @@ -71,4 +74,12 @@ public class ArenaOfHeroManager { public void setTotalForce(int totalForce) { this.totalForce = totalForce; } + + public Map getTotalForceByTeam() { + return totalForceByTeam; + } + + public void setTotalForceByTeam(Map totalForceByTeam) { + this.totalForceByTeam = totalForceByTeam; + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/gm/ArenaOfPlayerManager.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/gm/ArenaOfPlayerManager.java index e53767e43..047a60e01 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/gm/ArenaOfPlayerManager.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/dao/gm/ArenaOfPlayerManager.java @@ -22,6 +22,7 @@ public class ArenaOfPlayerManager { private String serverName; private int gender; private int skin; + private int maxFore; public ArenaOfPlayerManager(int uId, int level, String name, int head, int headFrame, String guildName, int userTitle, int userMount, int practiceLevel, int serverId, String serverName,int gender,int skin) { @@ -154,4 +155,12 @@ public class ArenaOfPlayerManager { public void setSkin(int skin) { this.skin = skin; } + + public int getMaxFore() { + return maxFore; + } + + public void setMaxFore(int maxFore) { + this.maxFore = maxFore; + } } diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java index f0f2e5186..c3ee31c7f 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/player/PlayerLogic.java @@ -682,7 +682,8 @@ public class PlayerLogic { for(Map.Entry entry:query.getPokemons().entrySet()){ teamOneTeamInfo.addPokemonInfos(CBean2Proto.getSimpleTeamInfoByPokeMon(entry.getValue(), entry.getKey())); } - teamOneTeamInfo.setTotalForce(query.getHeroManager().getTotalForce()); + Integer integer = query.getHeroManager().getTotalForceByTeam().get(teamId); + teamOneTeamInfo.setTotalForce(integer); for(Map.Entry entry:query.getSeals().entrySet()){ PurpleMansionSeal value = entry.getValue(); ArenaOfHero arenaOfHero = query.getHeroManager().getHeros().get(value.getSubId()); diff --git a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/AbstractRank.java b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/AbstractRank.java index 7a5d054ae..c0c978f20 100644 --- a/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/AbstractRank.java +++ b/serverlogic/src/main/java/com/ljsd/jieling/logic/rank/rankImpl/AbstractRank.java @@ -274,7 +274,9 @@ public abstract class AbstractRank implements IRank { return CommonProto.UserRank.newBuilder() .setUid(query.getId()) .setLevel(query.getPlayerManager().getLevel()) + .setUserName(query.getPlayerManager().getName()) .setRankInfo(everyRankInfo) + .setForce(query.getPlayerManager().getMaxFore()) .setSex(query.getPlayerManager().getGender()) .setHead(query.getPlayerManager().getHead()) .setGuildName(query.getPlayerManager().getGuildName()) @@ -282,6 +284,7 @@ public abstract class AbstractRank implements IRank { .setUserMount(query.getPlayerManager().getUserMount()) .setUserSkin(query.getPlayerManager().getSkin()) .setUserTitle(query.getPlayerManager().getUserTitle()) + .setPracticeLevel(query.getPlayerManager().getPracticeLevel()) .setServerName(serverName); }