跨服排行战力展示
parent
5e2cadc2fe
commit
c256929f93
|
@ -162,7 +162,7 @@ public class GetWorldArenaChallengeRequestHandler extends BaseHandler<WorldProto
|
|||
ArenaOfUser arenaOfUser = CrossServiceLogic.getInstance().query(proto.getChallengeUid());
|
||||
teamInfo = FightUtil.makeCrossPersonData(arenaOfUser,proto.getTeamId());
|
||||
arenaEnemys =ArenaLogic.getInstance().getUserCrossArenaEnemy(crossGroup,arenaOfUser,proto.getChallengeRank(),false).build();
|
||||
defendForce = arenaOfUser.getHeroManager().getTotalForce();
|
||||
defendForce = arenaOfUser.getHeroManager().getTotalForceByTeam().get(proto.getTeamId());
|
||||
} else {
|
||||
//机器人
|
||||
|
||||
|
|
|
@ -145,6 +145,7 @@ public class CrossServiceLogic {
|
|||
arenaOfPlayerManager.setGender(player.getSex());
|
||||
arenaOfPlayerManager.setSkin(player.getUserSkin());
|
||||
arenaOfPlayerManager.setUserMount(player.getUserMount());
|
||||
arenaOfPlayerManager.setMaxFore(player.getMaxForce());
|
||||
arenaOfPlayerManager.setServerName(CrossServiceLogic.getInstance().findServerName(GameApplication.serverId));
|
||||
return arenaOfPlayerManager;
|
||||
}
|
||||
|
@ -177,9 +178,13 @@ public class CrossServiceLogic {
|
|||
jewels.put(v2,item);
|
||||
}));
|
||||
// 总战力
|
||||
int totalForce = HeroLogic.getInstance().calTeamTotalForce(user, GlobalsDef.WORLD_TEAM_ARENA_DEFENSE,false);
|
||||
ArenaOfHeroManager arenaOfHeroManager = new ArenaOfHeroManager(teams,heroes,jewels,totalForce);
|
||||
return arenaOfHeroManager;
|
||||
HashMap<Integer, Integer> 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<Integer,List<TeamPosHeroInfo>> teamMap){
|
||||
|
|
|
@ -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<deforce){
|
||||
|
|
|
@ -27,13 +27,16 @@ public class ArenaOfHeroManager {
|
|||
|
||||
private Map<String, PropertyItem> jewels = new HashMap<>();
|
||||
|
||||
private Map<Integer,Integer> totalForceByTeam = new HashMap<>();
|
||||
|
||||
private int totalForce;
|
||||
|
||||
|
||||
public ArenaOfHeroManager(Map<Integer, List<TeamPosHeroInfo>> teams, Map<String, ArenaOfHero> heros, Map<String, PropertyItem> jewels, int totalForce) {
|
||||
public ArenaOfHeroManager(Map<Integer, List<TeamPosHeroInfo>> teams, Map<String, ArenaOfHero> heros, Map<String, PropertyItem> jewels, Map<Integer,Integer> 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<Integer, Integer> getTotalForceByTeam() {
|
||||
return totalForceByTeam;
|
||||
}
|
||||
|
||||
public void setTotalForceByTeam(Map<Integer, Integer> totalForceByTeam) {
|
||||
this.totalForceByTeam = totalForceByTeam;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -682,7 +682,8 @@ public class PlayerLogic {
|
|||
for(Map.Entry<Integer,Pokemon> 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<Integer, PurpleMansionSeal> entry:query.getSeals().entrySet()){
|
||||
PurpleMansionSeal value = entry.getValue();
|
||||
ArenaOfHero arenaOfHero = query.getHeroManager().getHeros().get(value.getSubId());
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue